Patent US3344228A successfully refreshed from Google Patents.
← Back to Patent Explorer
US5021985A Expired / Lapsed US ⏱️ 0.0 years remaining

Variable latency method and apparatus for floating-point coprocessor

Assignee: Weitek Corp
•
Filing: 1990-01-19
•
Granted: 1991-06-04
•
Expires: 2010-01-19
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A programmable latency (a programmable number of clock cycles) needed for an operation completion. The required latency for a pipe is determined from a formula including the system clock cycle time which the unit will be specified to operate under. The latency is preprogrammed by setting the count of a timer accordingly to provide at least the minimum number of clock cycles necessary to cover the time required to do the computation. Separate timers are independently set for arithmetic logic unit (ALU) operations, multiply operations, logical operations and divide and square root operations.

Inventors

  • 👤 Larry Hu
  • 👤 Ting Chuk
  • 👤 John McLeod
  • 👤 Mark Birman
  • 👤 Allen Samuels
  • 👤 George K. Chu

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-23 18:14
CPC Classifications
G; G06; G06F; G06F9/00; G06F9/06; G06F9/30; G06F9/38; G06F9/3877; G06F9/3836; G06F9/3867; G06F9/3869; G06F9/3871

Claims Analysis

Total Claims: 18
Claim 1
Independent Claim 90 words
An apparatus for performing arithmetic operations on supplied operands and using a clock, comprising: arithmetic logic means for performing an arithmetic operation on said operands upon receipt of a provided start signal; counter means for producing a done signal a predetermined number of cycles of said clock after said start signal; and programmable means, coupled to an input of said counter means, for varying said number of cycles of said clock required to produce said done signal, such that a latency between said start and done signals can be controlled.
Claim 2
Independent Claim 90 words
An apparatus for performing arithmetic operations on supplied operands and using a clock, comprising: arithmetic logic means for performing an arithmetic operation on said operands upon receipt of a provided start signal; counter means for producing a done signal a predetermined number of cycles of said clock after said start signal; and programmable means, coupled to an input of said counter means, for varying said number of cycles of said clock required to produce said done signal, such that a latency between said start and done signals can be controlled.
Claim 3
Dependent Claim 105 words
The apparatus of claim 1 further comprising: a second arithmetic logic means, including a multiplier, for performing multiply operations on said operands upon receipt of a provided multiplier start signal; second counter means for producing a multiply done signal a predetermined number of cycles of said clock after said multiplier start signal; and second programmable means, coupled to an input of said second counter means, for varying said number of cycles of said clock required to produce said multiply done signal, such that a latency between said multiplier start signal and said multiply done signals can be minimized for varying cycle times of said clock.
Claim 4
Independent Claim 119 words
An apparatus for performing arithmetic operations on supplied operands and using a clock, comprising: arithmetic logic means for performing an arithmetic operation on said operands upon receipt of a provided start signal; counter means for producing a done signal a predetermined number of cycles of said clock after said start signal; programmable means, coupled to an input of said counter means, for varying said number of cycles of said clock required to produce said done signal, such that a latency between said start and done signals can be controlled; means for selecting a variable number of clock cycles for divide iterations; and means coupled to said means for selecting, for providing a divide clock to said arithmetic logic means.
Claim 5
Independent Claim 119 words
An apparatus for performing arithmetic operations on supplied operands and using a clock, comprising: arithmetic logic means for performing an arithmetic operation on said operands upon receipt of a provided start signal; counter means for producing a done signal a predetermined number of cycles of said clock after said start signal; programmable means, coupled to an input of said counter means, for varying said number of cycles of said clock required to produce said done signal, such that a latency between said start and done signals can be controlled; means for selecting a variable number of clock cycles for divide iterations; and means coupled to said means for selecting, for providing a divide clock to said arithmetic logic means.
Claim 6
Independent Claim 136 words
An apparatus for performing arithmetic operations on supplied operands and using a clock, comprising: arithmetic logic means for performing an arithmetic operation on said operands upon receipt of a provided start signal; programmable means for varying a number of cycles of said clock required to produce a done signal, such that a latency between said start and done signal can be varied; a counter coupled to said programmable means for starting at a count set by said programmable means; logic means, coupled to an output of said counter, for producing a completion signal when said counter output is equal to a predetermined value; and a storage element coupled to an output of said logic means for producing said done signal at its output upon a next clock cycle after said logic means receives said predetermined value.
Claim 7
Independent Claim 136 words
An apparatus for performing arithmetic operations on supplied operands and using a clock, comprising: arithmetic logic means for performing an arithmetic operation on said operands upon receipt of a provided start signal; programmable means for varying a number of cycles of said clock required to produce a done signal, such that a latency between said start and done signal can be varied; a counter coupled to said programmable means for starting at a count set by said programmable means; logic means, coupled to an output of said counter, for producing a completion signal when said counter output is equal to a predetermined value; and a storage element coupled to an output of said logic means for producing said done signal at its output upon a next clock cycle after said logic means receives said predetermined value.
Claim 8
Dependent Claim 41 words
The apparatus of claim 4 wherein said counter means further comprises second logic means, coupled between said programmable means and said counter, for decoding an output of said programmable means and for preventing a zero value being presented to said counter.
Claim 9
Dependent Claim 22 words
The apparatus of claim 4 wherein said logic means includes means for inhibiting said completion signal while said start signal is received.
Claim 10
Independent Claim 97 words
An apparatus for performing arithmetic operations on supplied operands and using a clock, comprising: arithmetic logic means for performing an arithmetic operation on said operands upon receipt of a provided start signal; counter means for producing a done signal a predetermined number of cycles of said clock after said start signal; and input bonding pads of a chip containing said apparatus coupled to an input of said counter means, for varying said number of cycles of said clock required to produce said done signal, such that a latency between said start and done signals can be controlled.
Claim 11
Independent Claim 97 words
An apparatus for performing arithmetic operations on supplied operands and using a clock, comprising: arithmetic logic means for performing an arithmetic operation on said operands upon receipt of a provided start signal; counter means for producing a done signal a predetermined number of cycles of said clock after said start signal; and input bonding pads of a chip containing said apparatus coupled to an input of said counter means, for varying said number of cycles of said clock required to produce said done signal, such that a latency between said start and done signals can be controlled.
Claim 12
Dependent Claim 24 words
The apparatus of claim 7 wherein some of said input bonding pads are coupled to a voltage reference through a resistor on said chip.
Claim 13
Dependent Claim 26 words
The apparatus of claim 7 wherein some of said input bonding pads are coupled to a voltage reference via bonding wires connected to package bonding fingers.
Claim 14
Dependent Claim 18 words
The apparatus of claim 7 wherein some of said input bonding pads are coupled to an input pin.
Claim 15
Dependent Claim 222 words
A coprocessor for performing arithmetic operations on supplied operands and using a clock, comprising: first arithmetic logic means for performing an arithmetic operation on said operands upon receipt of a provided arithmetic start signal; first counter means for producing an arithmetic done signal a predetermined number of cycles of said clock after said arithmetic start signal; first programmable means, coupled to an input of said first counter means, for varying said number of cycles of said clock required to produce said arithmetic done signal, such that a latency between said arithmetic start and arithmetic done signals can be controlled; a second arithmetic logic means, including a multiplier, for performing multiply operations on said operands upon receipt of a provided multiplier start signal; second counter means for producing a multiply done signal a predetermined number of cycles of said clock after said multiplier start signal; second programmable means, coupled to an input of said second counter means, for varying said number of cycles of said clock required to produce said multiply done signal, such that a latency between said multiplier start signal and said multiply done signals can be controlled; third programmable means for selecting a variable number of cycles for divide iterations; and means, coupled to said third programmable means, for providing a divide clock to one of said arithmetic logic means.
Claim 16
Dependent Claim 222 words
A coprocessor for performing arithmetic operations on supplied operands and using a clock, comprising: first arithmetic logic means for performing an arithmetic operation on said operands upon receipt of a provided arithmetic start signal; first counter means for producing an arithmetic done signal a predetermined number of cycles of said clock after said arithmetic start signal; first programmable means, coupled to an input of said first counter means, for varying said number of cycles of said clock required to produce said arithmetic done signal, such that a latency between said arithmetic start and arithmetic done signals can be controlled; a second arithmetic logic means, including a multiplier, for performing multiply operations on said operands upon receipt of a provided multiplier start signal; second counter means for producing a multiply done signal a predetermined number of cycles of said clock after said multiplier start signal; second programmable means, coupled to an input of said second counter means, for varying said number of cycles of said clock required to produce said multiply done signal, such that a latency between said multiplier start signal and said multiply done signals can be controlled; third programmable means for selecting a variable number of cycles for divide iterations; and means, coupled to said third programmable means, for providing a divide clock to one of said arithmetic logic means.
Claim 17
Dependent Claim 406 words
A coprocessor for performing arithmetic operations on supplied operands and using a clock, comprising: first arithmetic logic means for performing an arithmetic operation on said operands upon receipt of a provided arithmetic start signal; first counting means for producing an arithmetic done signal a predetermined number of cycles of said clock after said arithmetic start signal, said first counting means including a first counter having an input for receiving a first starting count, first logic means, coupled to an output of said first counter, for producing a completion signal when said first counter output is equal to a first predetermined value, and a first register coupled to an output of said first logic means for producing said arithmetic done signal at its output upon a next clock cycle after said first logic means receives said first predetermined value; first programmable means, coupled to said input of said first counting means, for providing said first starting count to control said number of cycles of said clock required to produce said arithmetic done signal, such that a latency between said arithmetic start and arithmetic done signals can be controlled based on the cycle time of said clock; a second arithmetic logic means, including a multiplier, for performing multiply operations on said operands upon receipt of a provided multiplier start signal; second counting means for producing a multiply done signal a predetermined number of cycles of said clock after said multiplier start signal, said second counting means including a second counter having an input for receiving a second starting count, second logic means, coupled to an output of said second counter, for producing a second completion signal when said second counter output is equal to a second predetermined value, and a second register coupled to an output of said second logic means for producing said multiply done signal at its output upon a next clock cycle after said second logic means receives said second predetermined value; second programmable means, coupled to said input of said second counter, for providing said second starting count to control said number of cycles of said clock required to produce said multiply done signal, such that a latency between said multiplier start signal and said multiply done signals can be controlled; third programmable means for selecting a variable number of cycles for divide iterations; and means, coupled to said third programmable means, for providing a divide clock to one of said arithmetic logic means.
Claim 18
Dependent Claim 406 words
A coprocessor for performing arithmetic operations on supplied operands and using a clock, comprising: first arithmetic logic means for performing an arithmetic operation on said operands upon receipt of a provided arithmetic start signal; first counting means for producing an arithmetic done signal a predetermined number of cycles of said clock after said arithmetic start signal, said first counting means including a first counter having an input for receiving a first starting count, first logic means, coupled to an output of said first counter, for producing a completion signal when said first counter output is equal to a first predetermined value, and a first register coupled to an output of said first logic means for producing said arithmetic done signal at its output upon a next clock cycle after said first logic means receives said first predetermined value; first programmable means, coupled to said input of said first counting means, for providing said first starting count to control said number of cycles of said clock required to produce said arithmetic done signal, such that a latency between said arithmetic start and arithmetic done signals can be controlled based on the cycle time of said clock; a second arithmetic logic means, including a multiplier, for performing multiply operations on said operands upon receipt of a provided multiplier start signal; second counting means for producing a multiply done signal a predetermined number of cycles of said clock after said multiplier start signal, said second counting means including a second counter having an input for receiving a second starting count, second logic means, coupled to an output of said second counter, for producing a second completion signal when said second counter output is equal to a second predetermined value, and a second register coupled to an output of said second logic means for producing said multiply done signal at its output upon a next clock cycle after said second logic means receives said second predetermined value; second programmable means, coupled to said input of said second counter, for providing said second starting count to control said number of cycles of said clock required to produce said multiply done signal, such that a latency between said multiplier start signal and said multiply done signals can be controlled; third programmable means for selecting a variable number of cycles for divide iterations; and means, coupled to said third programmable means, for providing a divide clock to one of said arithmetic logic means.

References Cited (Backward Citations)

US4612628A Cited
US4901267A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1994-06-03 1994-12-03 1995-06-04 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 1998-06-03 1998-12-03 1999-06-04 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2002-06-03 2002-12-03 2003-06-04 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag