Patents by Inventor Paul Gerard D'Arcy
Paul Gerard D'Arcy has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).
-
Patent number: 7360148Abstract: The present invention provides a reduction checksum generator for calculating a checksum value for a block of data. In one embodiment, the reduction checksum generator includes a reduction unit having a plurality of reduction stages and configured to pipeline a plurality of segments of the block of data through the plurality of reductions stages to reduce the plurality of segments to at least two segments. The reduction checksum generator also includes a checksum unit configured to generate a one's complement sum of the at least two segments and invert the one's complement sum to produce the checksum value. In addition, a method of calculating checksum value using reduction for a block of data and a parallel reduction checksum generator are also disclosed.Type: GrantFiled: July 15, 2003Date of Patent: April 15, 2008Assignee: Agere Systems Inc.Inventors: Paul Gerard D'Arcy, Jesse Thilo, Kent E. Wires
-
Patent number: 7089481Abstract: Techniques for performing substantially concurrent add-compare-select-add operations and substantially concurrent compare-select-add operations for use in turbo decoders are provided. In one aspect of the invention, a technique for processing data in accordance with a turbo decoder comprises the following steps. Data values of two sets of input data are respectively added to generate a set of sums. Substantially concurrent with the addition step, correction values are respectively added to the sums to generate a set of corrected sums. Substantially concurrent with the respective input data value and correction value addition steps, the sums are compared against one another, and an absolute value of a difference between the sums is compared against base and bound values. Then, one of the corrected sums is selected based on the comparison steps. Preferably, respective sub-steps within the input value addition step, the correction value addition step, and the comparison step are performed concurrently.Type: GrantFiled: July 22, 2002Date of Patent: August 8, 2006Assignee: Agere Systems Inc.Inventors: Paul Gerard D'Arcy, Rajan V. K. Pillai
-
Patent number: 7020830Abstract: Techniques are provided for the addition and comparison operations associated with a Viterbi decoding algorithm at substantially the same time. To this end, an operation of the type a±b>c±d (where a and b are to be added, c and d are to be added, and then the sums compared to determine the larger of the two sums) can be formulated, in accordance with the invention, into a±b?c?d>0 (where the addition of a and b and of c and d, and their comparison, are substantially concurrently performed). More specifically, in order to facilitate substantially concurrent addition and comparison operations in a Viterbi decoder, in one embodiment, the present invention performs multi-operand addition in a carry save form. With the results of addition represented in carry save form, the evaluation of comparator conditions is relatively straightforward.Type: GrantFiled: December 24, 2001Date of Patent: March 28, 2006Assignee: Agere Systems Inc.Inventors: Paul Gerard D'Arcy, Rajan V. K. Pillai
-
Patent number: 6859871Abstract: The invention provides techniques for reducing the power consumption of pipelined processors. In an illustrative embodiment, the invention evaluates the predicates of predicated instructions in a decode stage of a pipelined processor, and annuls instructions with false predicates before those instructions can be processed by subsequent stages, e.g, by execute and writeback stages. The predicate dependencies can be handled using, e.g., a virtual single-cycle execution technique which locks a predicate register while the register is in use by a given instruction, and then stalls subsequent instructions that depend on a value stored in the register until the register is unlocked. As another example, the predicate dependencies can be handled using a compiler-controlled dynamic dispatch (CCDD) technique, which identifies dependencies associated with a set of instructions during compilation of the instructions in a compiler.Type: GrantFiled: October 19, 1998Date of Patent: February 22, 2005Assignee: Agere Systems Inc.Inventors: Dean Batten, Paul Gerard D'Arcy, C. John Glossner, Sanjay Jinturkar, Jesse Thilo, Kent E. Wires
-
Publication number: 20040015773Abstract: Techniques for performing substantially concurrent add-compare-select-add operations and substantially concurrent compare-select-add operations for use in turbo decoders are provided. In one aspect of the invention, a technique for processing data in accordance with a turbo decoder comprises the following steps. Data values of two sets of input data are respectively added to generate a set of sums. Substantially concurrent with the addition step, correction values are respectively added to the sums to generate a set of corrected sums. Substantially concurrent with the respective input data value and correction value addition steps, the sums are compared against one another, and an absolute value of a difference between the sums is compared against base and bound values. Then, one of the corrected sums is selected based on the comparison steps. Preferably, respective sub-steps within the input value addition step, the correction value addition step, and the comparison step are performed concurrently.Type: ApplicationFiled: July 22, 2002Publication date: January 22, 2004Inventors: Paul Gerard D'Arcy, Rajan V.K. Pillai
-
Publication number: 20030120996Abstract: Techniques are provided for the addition and comparison operations associated with a Viterbi decoding algorithm at substantially the same time. To this end, an operation of the type a±b>c±d (where a and b are to be added, c and d are to be added, and then the sums compared to determine the larger of the two sums) can be formulated, in accordance with the invention, into a±b−c∓d>0 (where the addition of a and b and of c and d, and their comparison, are substantially concurrently performed). More specifically, in order to facilitate substantially concurrent addition and comparison operations in a Viterbi decoder, in one embodiment, the present invention performs multi-operand addition in a carry save form. With the results of addition represented in carry save form, the evaluation of comparator conditions is relatively straightforward.Type: ApplicationFiled: December 24, 2001Publication date: June 26, 2003Inventors: Paul Gerard D'Arcy, Rajan V.K. Pillai
-
Patent number: 6467082Abstract: A method for simulating a first processor (e.g., target processor) on a second processor (e.g., host processor) includes translating assembly language instructions associated with the first processor into ‘C’ language code. The ‘C’ language code is then compiled by a compiler program running on the second processor. The compiled code is then executed by the second processor to simulate the first processor. For example, the code may be checked to determine whether it is functionally correct and/or run-time statistics may be collected regarding the program associated with the first processor.Type: GrantFiled: December 2, 1998Date of Patent: October 15, 2002Assignee: Agere Systems Guardian Corp.Inventors: Paul Gerard D'Arcy, Pamela C. Deschler, Sanjay Jinturkar, Kamesh Peri, Ramesh V. Peri, David B. Whalley
-
Patent number: 6317821Abstract: A pipelined processor is configured to provide virtual single-cycle instruction execution using a register locking mechanism in conjunction with instruction stalling based on lock status. In an illustrative embodiment, a set of register locks is maintained in the form of a stored bit vector in which each bit indicates the current lock status of a corresponding register. A decode unit receives an instruction fetched from memory, and decodes the instruction to determine its source and destination registers. The instruction is stalled for at least one processor cycle if either its source register or destination register is already locked by another instruction. The stall continues until the source and destination registers of the instruction are both unlocked, i.e., no longer in use by other instructions.Type: GrantFiled: May 18, 1998Date of Patent: November 13, 2001Assignee: Lucent Technologies Inc.Inventors: Dean Batten, Paul Gerard D'Arcy, C. John Glossner, Sanjay Jinturkar, Jesse Thilo
-
Patent number: 6282585Abstract: The invention provides techniques for reducing the port pressure of a clustered processor. In an illustrative embodiment, the processor includes multiple clusters of execution units, with each of the clusters having a portion of a register file and a portion of a predicate file associated therewith, such that a given cluster is permitted to write to and read from its associated portions of the register and predicate files. A cooperative interconnection technique in accordance with the invention utilizes an inter-cluster move instruction specifying a source cluster and a destination cluster to copy a value from the source cluster to the destination cluster. The value is transmitted over a designated interconnect structure within the processor, and the inter-cluster move instruction is separated into two sub-instructions, one of which is executed by a unit in the source cluster, and another of which is executed by a unit in the destination cluster. These units may be, e.g.Type: GrantFiled: March 22, 1999Date of Patent: August 28, 2001Assignee: Agere Systems Guardian Corp.Inventors: Dean Batten, Paul Gerard D'Arcy, C. John Glossner, Sanjay Jinturkar, Kent E. Wires
-
Duplicator interconnection methods and apparatus for reducing port pressure in a clustered processor
Patent number: 6269437Abstract: The invention provides techniques for reducing the port pressure of a clustered processor. In an illustrative embodiment, the processor includes multiple clusters of execution units, with each of the clusters having a portion of a register file and a portion of a predicate file associated therewith, such that a given cluster is permitted to write to and read from its associated portions of the register and predicate files. A duplicator interconnection technique in accordance with the invention reduces port pressure by providing one or more global move units in the processor. A given global move unit uses an inter-cluster move instruction to copy a value from a portion of the register or predicate file associated with a source cluster to another portion of the register or predicate file associated with a destination cluster.Type: GrantFiled: March 22, 1999Date of Patent: July 31, 2001Assignee: Agere Systems Guardian Corp.Inventors: Dean Batten, Paul Gerard D'Arcy, C. John Glossner, Sanjay Jinturkar, Kent E. Wires -
Patent number: 6260189Abstract: The invention provides techniques for improving the performance of pipelined processors by eliminating unnecessary stalling of instructions. In an illustrative embodiment, a compiler is used to identify pipeline dependencies in a given set of instructions. The compiler then groups the set of instructions into a code block having a field which indicates the types of pipeline dependencies, if any, in the set of instructions. The field may indicate the types of pipeline dependencies by specifying which of a predetermined set of hazards arise in the plurality of instructions when executed on a given pipelined processor. For example, the field may indicate whether the code block includes any Read After Write (RAW) hazards, Write After Write (WAW) hazards or Write After Read (WAR) hazards. The code block may include one or more dynamic scheduling instructions, with each of the dynamic scheduling instructions including a set of instructions for execution in a multi-issue processor.Type: GrantFiled: September 14, 1998Date of Patent: July 10, 2001Assignee: Lucent Technologies Inc.Inventors: Dean Batten, Paul Gerard D'Arcy, C. John Glossner, Sanjay Jinturkar, Jesse Thilo, Stamatis Vassiliadis, Kent E. Wires
-
Patent number: 6256725Abstract: A processor is configured to include at least two architecturally-distinct storage spaces, such as, for example, a stack for storing control operands associated with one or more instructions, and a register file for storing computational operands associated with one or more instructions. The processor further includes a datapath which is at least partially shared by the stack and register file, a multiplexer operative to select an output of either the stack or the register file for application to an input of the shared datapath, and a demultiplexer operative to select an output of the shared datapath for application to an input of either the stack or the register file.Type: GrantFiled: December 4, 1998Date of Patent: July 3, 2001Assignee: Agere Systems Guardian Corp.Inventors: Dean Batten, Paul Gerard D'Arcy, C. John Glossner, Sanjay Jinturkar, Jesse Thilo, Kent E. Wires
-
Patent number: 6230251Abstract: The invention provides techniques for reducing the port pressure of a clustered processor. In an illustrative embodiment, the processor includes multiple clusters of execution units, with each of the clusters having a portion of a register file and a portion of a predicate file associated therewith, such that a given cluster is permitted to write to and read from its associated portions of the register and predicate files. A replication technique in accordance with the invention reduces port pressure by replicating, e.g., a register lock file and a predicate lock file of the processor for each of the clusters. The replicated files vary depending upon whether the technique is implemented with a write-only interconnection or a read-only interconnection.Type: GrantFiled: March 22, 1999Date of Patent: May 8, 2001Assignee: Agere Systems Guardian Corp.Inventors: Dean Batten, Paul Gerard D'Arcy, C. John Glossner, Sanjay Jinturkar, Kent E. Wires
-
Patent number: 6079010Abstract: A computer system supporting N different machine views, where N.gtoreq.2, includes a memory for storing instructions, a number of execution units for processing data based on execution controls, and N different decoders for generating the execution controls using instructions retrieved from the memory. Each of the N decoders is operative to decode retrieved instructions in accordance with one of the N machine views. A particular one of the N decoders to be used to decode a given retrieved instruction may be selected by a program running on the system. In one embodiment, the decoders for the N machine views are implemented as N separate decoders, and a multiplexer is used to select the output of one of the N decoders for connection to one or more of the execution units. In another embodiment, a set of reconfigurable hardware is dynamically reprogrammed to implement one or more of the N decoders as directed by the program running on the system.Type: GrantFiled: March 31, 1998Date of Patent: June 20, 2000Assignee: Lucent Technologies Inc.Inventors: Paul Gerard D'Arcy, Sanjay Jinturkar, C. John Glossner, Stamatis Vassiliadis