Patents Examined by William M. Treat
-
Patent number: 7506137Abstract: Techniques for adding more complex instructions and their attendant multi-cycle execution units with a single instruction multiple data stream (SIMD) very long instruction word (VLIW) processing framework are described. In one aspect, an initiation mechanism also acts as a resynchronization mechanism to read the results of multi-cycle execution. This multi-purpose mechanism operates with a short instruction word (SIW) issue of the multi-cycle instruction, in a sequence processor (SP) alone, with a VLIW, and across all processing elements (PEs) individually or as an array of PEs. A number of advantageous floating point instructions are also described.Type: GrantFiled: July 16, 2007Date of Patent: March 17, 2009Assignee: Altera CorporationInventors: Gerald George Pechanek, David Strube, Edward A. Wolff, Edwin Franklin Barry, Grayson Morris, Carl Donald Busboom, Dale Edward Schneider
-
Patent number: 7506136Abstract: A controller for controlling a data processor having a plurality of processor arrays, each of which includes a plurality of processing elements, comprises a retrieval unit operable to retrieve a plurality of incoming instructions streams in parallel with one another, and a distribution unit operable to supply such incoming instruction streams to respective ones of the said plurality of processor arrays.Type: GrantFiled: January 10, 2007Date of Patent: March 17, 2009Assignee: Clearspeed Technology PLCInventors: Dave Stuttard, Dave Williams, Eamon O'Dea, Gordon Faulds, John Rhoades, Ken Cameron, Phil Atkin, Paul Winser, Russell David, Ray McConnell, Tim Day, Trey Greer
-
Patent number: 7496732Abstract: A method and apparatus for using result-speculative data under run-ahead speculative execution is disclosed. In one embodiment, the uncommitted target data from instructions being run-ahead executed may be saved into an advance data table. This advance data table may be indexed by the lines in the instruction buffer containing the instructions for run-ahead execution. When the instructions are re-executed subsequent to the run-ahead execution, valid target data may be retrieved from the advance data table and supplied as part of a zero-clock bypass to support parallel re-execution. This may achieve parallel execution of dependent instructions. In other embodiments, the advance data table may be content-addressable-memory searchable on target registers and supply target data to general speculative execution.Type: GrantFiled: December 17, 2003Date of Patent: February 24, 2009Assignee: Intel CorporationInventors: Sailesh Kottapalli, Richard W. Goe, Youngsoo Choi
-
Patent number: 7478226Abstract: A processing bypass directory system and method are disclosed. In one embodiment, a bypass directory tracking process includes setting bits in a bypass directory when a corresponding architectural register is written. The bits are selectively cleared in the bypass directory each cycle. The configuration of the bits is utilized to determine which stage of a bypass path processing information is at.Type: GrantFiled: September 29, 2006Date of Patent: January 13, 2009Assignee: Transmeta CorporationInventors: Alexander Klaiber, Guillermo Rozas
-
Patent number: 7478227Abstract: A reconfigurable processor comprising a configuration memory for storing a configuration bit for at least one loop configuration; a valid information memory for storing bit information indicating whether an operation in a loop is a delay operation; and at least one processing unit for determining whether an operation in a next cycle is the delay operation by referring to the bit information transmitted from the valid information memory, and selectively performing a change and an implementation of a configuration according to the configuration bit from the configuration memory based on the determined results.Type: GrantFiled: September 25, 2006Date of Patent: January 13, 2009Assignee: Samsung Electronics Co., Ltd.Inventors: Soo Jung Ryu, Jeong Wook Kim, Suk Jin Kim, Hong-Seok Kim
-
Patent number: 7475224Abstract: Embodiments of this invention relate to sharing resources on a semiconductor between multiple functional units to reduce the number of register rename mappers and particularly to providing a way to share a CAM mapper between two distinct physical register files. In one embodiment the physical register files correspond to architectural function units. In another embodiment the physical registers correspond to thread clusters.Type: GrantFiled: January 3, 2007Date of Patent: January 6, 2009Assignee: International Business Machines CorporationInventor: Michael Karl Gschwind
-
Patent number: 7457941Abstract: A vector processing system for executing vector instructions, each instruction defining multiple pairs of values, an operation to be executed on each of said value pairs and a scalar modifier, the vector processing system comprising a plurality of parallel processing units, each arranged to receive one of said pairs of values and to implement the defined operation on said value pair to generate a respective result; and a scalar result unit for receiving the results of the parallel processing units and for using said results in a manner defined by the scalar modifier to generate a single output value for said instruction.Type: GrantFiled: January 3, 2006Date of Patent: November 25, 2008Assignee: Broadcom CorporationInventors: Stephen Barlow, Neil Bailey, Timothy Ramsdale, David Plowman, Robert Swann
-
Patent number: 7454597Abstract: A processor core and method of executing instructions, both of which utilizes schedules, are presented. Each of the schedules includes a sequence of instructions, an address of a first of the instructions in the schedule, an order vector of an original order of the instructions in the schedule, a rename map of registers for each register in the schedule, and a list of register names used in the schedule. The schedule exploits instruction-level parallelism in executing out-of-order instructions. The processor core includes a schedule cache that is configured to store schedules, a shared cache configured to store both I-side and D-side cache data, and an execution resource for requesting a schedule to be executed from the schedule cache. The processor core further includes a scheduler disposed between the schedule cache and the cache.Type: GrantFiled: January 2, 2007Date of Patent: November 18, 2008Assignee: International Business Machines CorporationInventors: Krishnan K. Kailas, Ravi Nair, Sumedh W. Sathaye, Wolfram Sauer, John-David Wellman
-
Patent number: 7447887Abstract: To guarantee response time while strictly maintaining the priority specified by software, a processor (1) which is a multithread processor having a thread multiplexer (10), and an issue information buffer (ISINF). An instruction code, and issue information (isid) for instructions issued at and after the next operating cycle which is added to the instruction code, are supplied to the thread multiplexer. The issue information is valid from the second and subsequent instruction flows, and is saved temporarily in an issue information buffer. This issue information is for example the position of an operating cycle which can issue a high priority instruction, i.e., information showing a slot. The thread multiplexer issues a low priority instruction at another operating cycle at which a high priority instruction is not issued according to the issue information.Type: GrantFiled: July 7, 2006Date of Patent: November 4, 2008Assignee: Hitachi, Ltd.Inventor: Fumio Arakawa
-
Patent number: 7444501Abstract: An apparatus for recognizing a subroutine call is disclosed. The apparatus includes a circuit comprising a first input for receiving contents of a register, a second input for receiving a non-sequential change in program flow, and a third input for receiving the next sequential address after the non-sequential change in program flow. The circuit is configured to compare the next sequential address and the contents of the register to determine whether the non-sequential change in program flow is a subroutine call.Type: GrantFiled: November 28, 2006Date of Patent: October 28, 2008Assignee: QUALCOMM IncorporatedInventor: Michael William Morrow
-
Patent number: 7434898Abstract: A computer system that makes it difficult to analyze the content of a calculation. In the computer system, a power operation unit performs the following operations using the input data “a” and “b”: ga=ga mod n, gb=gb mod n. Next, in the computer system, a multiplication unit performs the following calculation using ga and gb: gab=ga×gb mod n. Next, in the computer system, a discrete logarithm calculation unit calculates ci mod pi?1 to satisfy gab=gci mod pi (i=1, 2, 3, . . . , k). Next, in the computer system, a CRT unit calculates “c” to satisfy ci=c mod pi?1 (i=1, 2, 3, . . . , k) using the Chinese remainder theorem CRT.Type: GrantFiled: March 22, 2005Date of Patent: October 14, 2008Assignee: Matsushita Electric Industrial Co., Ltd.Inventors: Yuichi Futa, Masami Yamamichi, legal representative, Satomi Yamamichi, legal representative, Keiko Yamamichi, legal representative, Motoji Ohmori, Hiroyuki Shizuya, Masahiro Mambo, Masato Yamamichi
-
Patent number: 7437534Abstract: A Very Long Instruction Word (VLIW) processor having a plurality of functional units includes a multi-ported register file that is divided into a plurality of separate register file segments, each of the register file segments being associated to one of the plurality of functional units. The register file segments are partitioned into local registers and global registers. The global registers are read and written by all functional units. The local registers are read and written only by a functional unit associated with a particular register file segment. The local registers and global registers are addressed using register addresses in an address space that is separately defined for a register file segment/functional unit pair. The global registers are addressed within a selected global register range using the same register addresses for the plurality of register file segment/functional unit pairs.Type: GrantFiled: September 19, 2006Date of Patent: October 14, 2008Assignee: Sun Microsystems, Inc.Inventors: Marc Tremblay, William N. Joy
-
Patent number: 7434039Abstract: A technique for enabling a computer processor to be capable of responding with comparable efficiency to both: (i) events whose handling is independent on the state of the software machine that responds to the events, and (ii) events whose handling is dependent on the state of the software machine that responds to the events. Each time a software state machine enters a state, one or more event control registers are programmed to direct the illustrative embodiment where to resume execution when each possible event occurs. This enables the illustrative embodiment to automatically branch to the code that is appropriate for the combination of the event and the state of the software machine.Type: GrantFiled: September 7, 2006Date of Patent: October 7, 2008Assignee: Freescale Semiconductor, Inc.Inventor: Michael Andrew Fischer
-
Patent number: 7430612Abstract: A computing apparatus capable of changing, adding, and deleting function without halting. Computing apparatus (100) includes a pointer storage section (101) storing the pointer specifying the execution section executing computation, a pointer management section (102) changing the pointer stored by the pointer storage section, a data storage section (103) storing the data used for execution of the execution section, and a execution instruction section (104) causing the execution section, specified by the pointer stored by the pointer storage section (101), to executed computation by using the data stored by the data storage section (103). According to this computing apparatus, the pointer management section (102) changes the pointer concurrent with re-reading, adding, or deleting of the execution section, thereby dynamically enabling change, addition, or deletion of function.Type: GrantFiled: December 15, 2003Date of Patent: September 30, 2008Assignee: Intec Netcore, Inc.Inventors: Ikuo Nakagawa, Kenichi Nagami
-
Patent number: 7412591Abstract: An apparatus for switchable conditional execution in a VLIW processor is provided, comprising one or more decoders, one or more ALU with control units, and a register file. The decoder loads and decodes instructions from a fetch unit for decoding and sending the decoded instructions to the ALU with control units for execution. The register file stores and forwards the results on result buses to the decoders. The execution of a VLIW instruction includes a fetch stage, a decode stage, plural execution stages and a write-back stage. The invention has the features of approximate ASIC timing by conditional write-back with the compiler support for the conditional write-back, condition resolved just before write-back, software selective conditional issue and conditional write-back modes, and without hardware interlock/dependence checking for the VLIW processor.Type: GrantFiled: June 18, 2005Date of Patent: August 12, 2008Assignee: Industrial Technology Research InstituteInventors: Yung-Cheng Ma, Tengh-Yih Wang, Hsien-Feng Kuo, Chi-Lung Wang
-
Patent number: 7404096Abstract: A microprocessor to reduce leakage power of execution units or reconfigurable cells, and method thereof are provided. The microprocessor may include a control unit for assigning an instruction, a plurality of execution units connected to the control unit, and a temperature sensor unit for acquiring temperature information of each of the plurality of execution units. The control unit may select one or more execution units according to the temperature information and assigns the instruction to one or more of the plurality of execution units.Type: GrantFiled: October 5, 2004Date of Patent: July 22, 2008Assignee: Samsung Electronics Co., LtdInventor: Sung-Woo Chung
-
Patent number: 7395414Abstract: A method and apparatus for steering instructions dynamically, at issue time, so as to maximize the efficiency of use of execution units being shared by multiple threads being processed by an SMT processor. Resource vectors are used at issue time to redirect instructions, from threads being processed simultaneously, to shared resources for which the multiple threads are competing. The existing resource vectors for instructions that are queued for issuance are analyzed and, where appropriate, dynamically recalculated and modified for maximum efficiency.Type: GrantFiled: February 11, 2005Date of Patent: July 1, 2008Assignee: International Business Machines CorporationInventors: Hung Q. Le, Dung Q. Nguyen, Brian W. Thompto, Raymond C. Yeung
-
Patent number: 7395415Abstract: A method and apparatus for providing a source operand for an instruction to be executed in a processor. Some embodiments may include a register file unit that has registers and a scheduler to schedule instructions. In some embodiments, the scheduler is to asynchronously receive an instruction and a source operand for that instruction, the source operand being received from the register file unit.Type: GrantFiled: September 30, 2004Date of Patent: July 1, 2008Assignee: Intel CorporationInventors: Gary Hammond, Carl Scafidi, John Crawford
-
Patent number: 7395409Abstract: A processing architecture includes a first CPU core portion coupled to a second embedded dynamic random access memory (DRAM) portion. These architectural components jointly implement a single processor and instruction set. Advantageously, the embedded logic on the DRAM chip implements the memory intensive processing tasks, thus reducing the amount of traffic that needs to be bussed back and forth between the CPU core and the embedded DRAM chips. The embedded DRAM logic monitors and manipulates the instruction stream into the CPU core. The architecture of the instruction set, data paths, addressing, control, caching, and interfaces are developed to allow the system to operate using a standard programming model. Specialized video and graphics processing systems are developed. Also, an extended very long instruction word (VLIW) architecture implemented as a primary VLIW processor coupled to an embedded DRAM VLIW extension processor efficiently deals with memory intensive tasks.Type: GrantFiled: July 2, 2004Date of Patent: July 1, 2008Assignee: Micron Technology, Inc.Inventor: Eric M. Dowling
-
Patent number: 7389408Abstract: An instruction stream having variable length instructions with embedded constants (e.g. immediate values and displacements) is translated into a stream of operations and a corresponding stream of bit fields, enabling advantageous compact storage of the embedded constants. The operations and the compact constants are optionally stored in entries in a trace cache and/or processed by execution pipelines. The compact constants are optionally formulated as a small constant field, a pointer, or both. The pointer of a particular one of the operations optionally references one of the bit fields within a window of the operations associated with the particular operation. A full-sized constant is constructed from one or more contiguous ones of the bit fields, starting with the referenced bit field, by unpacking and uncompressing information from the contiguous bit fields. An operation optionally includes a plurality of small constant fields and pointers to specify a respective plurality of constants.Type: GrantFiled: December 1, 2006Date of Patent: June 17, 2008Assignee: Sun Microsystems, Inc.Inventors: Christopher P. Nelson, John Gregory Favor