Patents by Inventor Christopher Neal Hinds

Christopher Neal Hinds 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: 8015228
    Abstract: A data processing apparatus and method are provided for performing a reciprocal operation on an input value d to produce a result value X. The reciprocal operation involves iterative execution of a refinement step to converge on the result value, the refinement step performing the computation: Xi=Xi?1*M, where Xi is an estimate of the result value for the i-th iteration of the refinement step, and M is a value determined by a portion of the refinement step. The data processing apparatus comprises a register data store having a plurality of registers operable to store data, and processing logic operable to execute instructions to perform data processing operations on data held in the register data store.
    Type: Grant
    Filed: February 16, 2005
    Date of Patent: September 6, 2011
    Assignee: ARM Limited
    Inventors: David Raymond Lutz, Christopher Neal Hinds
  • Patent number: 8015231
    Abstract: A data processing apparatus and method includes multiplier logic operable to multiply the first and second n-bit significands to produce a pair of 2n-bit vectors. Half adder logic is arranged to produce a plurality of carry and sum bits representing a corresponding plurality of most significant bits of the pair of 2n-bit vectors. The first adder logic then performs a first sum operation with a first rounded result and a second adder logic performs a second sum operation with a second rounded result. The required n-bit result is then derived from either the first rounded result or the second rounded result. The data processing apparatus takes advantage of a property of the half adder form to enable a rounding increment value to be injected prior to performance of the first and second sum operations without requiring full adders to be used to inject the rounding increment value.
    Type: Grant
    Filed: November 30, 2004
    Date of Patent: September 6, 2011
    Assignee: ARM Limited
    Inventors: David Raymond Lutz, Christopher Neal Hinds
  • Patent number: 7945607
    Abstract: A data processing apparatus and method are provided for converting a number between fixed-point and floating-point representations. More particularly, the data processing apparatus comprises a data processing unit operable to execute instructions, with the data processing unit being responsive to a format conversion instruction to apply a format conversion operation to a number to perform a conversion between the fixed-point representation of the number and the floating-point representation of the number. Furthermore, a control field is provided which is arranged to provide a programmable value specifying a decimal point location within the fixed-point representation of the number, and the data processing unit is operable to reference the control field and to control the formal conversion operation in accordance with the programmable value.
    Type: Grant
    Filed: May 15, 2007
    Date of Patent: May 17, 2011
    Assignee: ARM Limited
    Inventor: Christopher Neal Hinds
  • Patent number: 7747667
    Abstract: A data processing apparatus and method generate an initial estimate of a result value that would be produced by performing a reciprocal operation on an input value. The input value and the result value are either fixed point values or floating point values. The data processing apparatus comprises processing logic for executing instructions to perform data processing operations on data, and a lookup table referenced by the processing logic during generation of the initial estimate of the result value. The processing logic is responsive to an estimate instruction to reference the lookup table to generate, dependent on a modified input value that is within a predetermined range of values, a table output value. For a particular modified input value, the same table output value is generated irrespective of whether the input value is a fixed point value or a floating point value. The initial estimate of the result value is then derivable from the table output value.
    Type: Grant
    Filed: February 16, 2005
    Date of Patent: June 29, 2010
    Assignee: ARM Limited
    Inventors: David Raymond Lutz, Christopher Neal Hinds, Dominic Hugo Symes, Simon Andrew Ford
  • Patent number: 7668892
    Abstract: A data processing apparatus and method are provided for normalizing a data value to produce a result value. The data processing apparatus includes prediction logic for generating a shift indication based on a prediction of the number of bit positions by which the data value needs to be shifted in order to normalize the data value. Further, normalizer logic is used to apply a shift operation to the data value based on the shift indication. In addition, correction logic is operable in parallel with the normalizer logic to determine from the data value and a least significant bit of the shift indication whether the shift indication has correctly predicted the number of bit positions by which the data value needs to be shifted in order to normalize the data value, or whether instead the prediction is incorrect, and to generate an output signal dependent on that determination.
    Type: Grant
    Filed: August 25, 2005
    Date of Patent: February 23, 2010
    Assignee: ARM Limited
    Inventors: David Raymond Lutz, Christopher Neal Hinds
  • Patent number: 7668896
    Abstract: The first and second n-bit significands are multiplied producing a pair of 2n-bit vectors, and half adder logic produces a corresponding plurality of carry and sum bits. A product exponent is checked for correspondence with a predetermined exponent value. A sum operation generates a first result equivalent to the addition of the pair of 2n-bit vectors. First adder logic uses corresponding m carry and sum bits, the least significant of them carry bits being replaced with the increment value prior to the first adder logic performing the first sum operation. Second adder logic performs a second sum operation and uses the corresponding m?1 carry and sum bits replacing the least significant m?1 carry bits with the rounding increment value prior to the second adder logic second sum operation. The n-bit result is derived from either the first rounded result, the second rounded result or a predetermined result value.
    Type: Grant
    Filed: March 17, 2005
    Date of Patent: February 23, 2010
    Assignee: ARM Limited
    Inventors: David Raymond Lutz, Christopher Neal Hinds
  • Patent number: 7640286
    Abstract: A data processing apparatus and method are provided for multiplying first and second n-bit significands of first and second floating point operands to produce an n-bit result. The data processing apparatus comprises multiplier logic for multiplying the first and second n-bit significands to produce a pair of 2n-bit vectors, and sum logic operable to perform a sum operation to add a first set of bits of each of the pair of 2n-bits vectors. Sticky determination logic is also provided for determining from a second set of bits of each of the pair of 2n-bit vectors a sticky value, and selector logic is then used to derive the n-bit result from the output of the sum logic with reference to the sticky value.
    Type: Grant
    Filed: March 11, 2005
    Date of Patent: December 29, 2009
    Assignee: ARM Limited
    Inventors: David Raymond Lutz, Christopher Neal Hinds
  • Patent number: 7599974
    Abstract: A data processing apparatus compares first and second floating point operands to produce a comparison result. For each floating point operand, a first component is derived from a predetermined number of MSBs of the fraction component which is less than the total number of bits constituting the fraction component. The sign and exponent components of the first and second floating point operands are compared to produce a plurality of signals. If possible, the comparison result is determined from the plurality of signals. For each floating point operand, a second component is derived from the bits of the fraction component of that floating point operand other than the predetermined number of MSBs. The second components of the first and second floating point operands to are compared produce a further signal. The comparison result is determined from the plurality of signals and the further signal.
    Type: Grant
    Filed: March 22, 2004
    Date of Patent: October 6, 2009
    Assignee: ARM Limited
    Inventors: Christopher Neal Hinds, David Raymond Lutz
  • Patent number: 7437400
    Abstract: A data processing apparatus and method are provided for adding n-bit significands of first and second floating point operands to produce an n-bit result. The data processing apparatus comprises determination logic for determining which of the first and second floating point operands is the larger operand. First adder logic is used, if predetermined criteria exists, to perform an addition of the n-bit significands of the first and second floating point operands to produce the sum value, whilst second adder logic is used, if the predetermined criteria does not exist, to perform that addition. Result logic can then derive the n-bit result from either an output of the first adder logic or an output of the second adder logic.
    Type: Grant
    Filed: March 14, 2005
    Date of Patent: October 14, 2008
    Assignee: ARM Limited
    Inventors: David Raymond Lutz, Christopher Neal Hinds
  • Patent number: 7433911
    Abstract: A data processing apparatus and method are provided for adding n-bit significands of first and second floating point operands to produce an n-bit result. The data processing apparatus comprises determination logic operable to determine the larger operand of the first and second operands, and alignment logic operable to align the n-bit significand of the smaller operand with the n-bit significand of the larger operand. First adder logic is then operable to perform a first sum operation in order to generate a first rounded result in non-redundant form equivalent to the addition of the aligned significands with a rounding increment injected at a first predetermined rounding position appropriate for a non-overflow condition, the first adder logic comprising a single level of adder logic.
    Type: Grant
    Filed: December 21, 2004
    Date of Patent: October 7, 2008
    Assignee: ARM Limited
    Inventors: David Raymond Lutz, Christopher Neal Hinds
  • Patent number: 7401107
    Abstract: A data processing apparatus and method are provided for converting an m-bit fixed point number to a rounded floating point number having an n-bit significand, where n is less than m. The data processing apparatus comprises determination logic for determining the bit location of the most significant bit of the value expressed within the m-bit fixed point number, and low order bit analysis logic for determining from a selected number of least significant bits of the m-bit fixed point number a rounding signal indicating whether a rounding increment is required in order to generate the n-bit significand. Generation logic is then arranged in response to the rounding signal to generate a rounding bit sequence appropriate having regard to the bit location determined by the determination logic. Adder logic then adds the rounding bit sequence to the m-bit fixed point number to generate an intermediate result, whereafter normalisation logic shifts the intermediate result to generate the n-bit significand.
    Type: Grant
    Filed: December 22, 2004
    Date of Patent: July 15, 2008
    Assignee: ARM Limited
    Inventors: David Raymond Lutz, Christopher Neal Hinds
  • Patent number: 7386580
    Abstract: A data processor computes an absolute difference between portions of first and second data elements. At least a part of the first and second data elements are compared to determine which data element is larger. A first comparison result value is produced if the first element is larger and a second comparison result value if the second element is larger. An absolute difference is computed between a portion of the first and second data elements. One of the portions is inverted and added to the other portion and to the comparison result to produce an intermediate result. An absolute difference is provided with improved speed either as the intermediate result or an inverted version of the intermediate result dependent on the comparison result.
    Type: Grant
    Filed: March 18, 2004
    Date of Patent: June 10, 2008
    Assignee: Arm Limited
    Inventors: David Raymond Lutz, Christopher Neal Hinds
  • Patent number: 7356553
    Abstract: The present invention provides a data processing apparatus and method for performing a data processing operation on first and second floating point data elements, the first floating point data element specifying a first exponent and the second floating point data element specifying a second exponent. The data processing apparatus comprises processing logic providing multiple processing paths which are selectable to perform the data processing operation, including a first processing path operable to perform the data processing operation if a predetermined alignment condition exists. Further, at least one detector logic unit is provided which is operable to receive both the first exponent and the second exponent and to detect the presence of the predetermined alignment condition.
    Type: Grant
    Filed: March 18, 2004
    Date of Patent: April 8, 2008
    Assignee: ARM Limited
    Inventors: David Raymond Lutz, Christopher Neal Hinds
  • Patent number: 7219215
    Abstract: A data processing apparatus and method are provided for moving data between registers and memory. The data processing apparatus comprises a register data store having a plurality of registers operable to store data elements. A processor is operable to perform in parallel a data processing operation on multiple data elements accessed in at least one of the registers. Access logic is operable in response to a single access instruction to move a plurality of data elements between specified registers and a continuous block of memory in which data elements are stored as an array of structures having a structure format, the structure format having a plurality of components. The single access instruction identifies the number of components in the structure format, and the access logic is further operable to rearrange the plurality of data elements as they are moved such that each specified register stores data elements of one component whilst in memory the data elements are stored as the array of structures.
    Type: Grant
    Filed: July 13, 2004
    Date of Patent: May 15, 2007
    Assignee: ARM Limited
    Inventors: Simon Andrew Ford, Dominic Hugo Symes, Andrew Christopher Rose, David Raymond Lutz, Christopher Neal Hinds
  • Patent number: 7219214
    Abstract: A data processing apparatus and method are provided for moving data between registers and memory. The data processing apparatus comprises a register data store having a plurality of registers operable to store data elements. A processor is operable to perform in parallel a data processing operation on multiple data elements occupying different lanes of parallel processing in at least one of the registers. Access logic is provided which is responsive to a single access instruction to move a plurality of data elements between a chosen one of the lanes in specified registers and a structure within memory having a structure format, the structure format having a plurality of components.
    Type: Grant
    Filed: July 13, 2004
    Date of Patent: May 15, 2007
    Assignee: ARM Limited
    Inventors: Simon Andrew Ford, Dominic Hugo Symes, Andrew Christopher Rose, David Raymond Lutz, Christopher Neal Hinds
  • Patent number: 7016930
    Abstract: The present invention provides an apparatus and method for performing an operation on an operand or operands in order to generate a result, in which the operation is implemented by iterative execution of a recurrence equation. In each iteration, execution of the recurrence equation causes a predetermined number of bits of the result and a residual to be generated, the residual generated in a previous iteration being used as an input for the current iteration, and in the first iteration the residual comprising the operand.
    Type: Grant
    Filed: October 25, 2002
    Date of Patent: March 21, 2006
    Assignee: ARM Limited
    Inventors: Christopher Neal Hinds, Neil Burgess
  • Patent number: 6842849
    Abstract: The present invention provides a system and method for locking source registers in a data processing apparatus. The data processing apparatus comprises a processing unit having a pipeline for executing a sequence of instructions, and a set of source registers for storing source data required by the processing unit when executing instructions in the sequence. A locking mechanism is then used to lock source registers dependent on configurable criteria, the configurable criteria being chosen to ensure that source registers still required for completing execution of an instruction in the pipeline are locked to prevent predetermined types of access by a subsequent instruction, the subsequent instruction only being able to enter the pipeline if the source registers relevant to that instruction can be accessed as required by the instruction. In accordance with the present invention, the processing unit has a first and second mode of operation.
    Type: Grant
    Filed: May 21, 2001
    Date of Patent: January 11, 2005
    Assignee: ARM Limited
    Inventors: Christopher Neal Hinds, Morgan Lee Reece
  • Publication number: 20040083255
    Abstract: The present invention provides an apparatus and method for performing an operation on an operand or operands in order to generate a result, in which the operation is implemented by iterative execution of a recurrence equation. In each iteration, execution of the recurrence equation causes a predetermined number of bits of the result and a residual to be generated, the residual generated in a previous iteration being used as an input for the current iteration, and in the first iteration the residual comprising the operand.
    Type: Application
    Filed: October 25, 2002
    Publication date: April 29, 2004
    Inventors: Christopher Neal Hinds, Neil Burgess
  • Patent number: 6701427
    Abstract: A data processing apparatus for processing floating point instructions is responsive to a floating point instruction to apply a floating point operation to a number of operands to produce a final result, result data being generated during a predetermined pipelined stage with further processing then being performed on the result data in one or more subsequent pipelined stages to generate the final result. Exception determination logic determines whether an exception may occur during application of the floating point operation to the operands, and to prevent the execution unit applying the floating point operation to those operands if it is determined that an exception may occur. The exception determination logic is arranged to use at least some of the predetermined control data to compensate for differences between the forwarded result data and the final result relevant when determining whether an exception may occur when processing the second floating point instruction.
    Type: Grant
    Filed: December 22, 1999
    Date of Patent: March 2, 2004
    Assignee: ARM Limited
    Inventors: Christopher Neal Hinds, Arun Kumar Varadarajan Rajagopal
  • Patent number: 6542916
    Abstract: A data processing apparatus and method is provided for applying a floating-point multiply-accumulate operation to first, second and third operands. The apparatus comprises a multiplier for multiplying the second and third operands and applying rounding to produce a rounded multiplication result, and an adder for adding the rounded multiplication result to the first operand to generate a final result and for applying rounding to generate a rounded final result. Further, control logic is provided which is responsive to a first single instruction to control the multiplier and adder to cause the rounded final result generated by the adder to be equivalent to the subtraction of the rounded multiplication result from the first operand.
    Type: Grant
    Filed: July 28, 1999
    Date of Patent: April 1, 2003
    Assignee: Arm Limited
    Inventors: Christopher Neal Hinds, David Vivian Jaggar, David James Seal