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

Fast shifter method and structure

Assignee: PERFORMANCE SEMICONDUCTOR Corp 610 WEDDELL DRIVE SUNNYVALE CA 94089 A CORP OF CA
•
Filing: 1986-09-19
•
Granted: 1990-02-27
•
Expires: 2006-09-19
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract Normalization and scaling operations are performed by the use of the fast shifter of a micrprocessor operating in response to the system clock, rather than in response to microinstructions. By local control of the fast shifter, multiple shift steps essential to normalization and scaling operations are performed at a much faster rate than possible in the prior art wherein each bit shift must be controlled by a single microinstruction, and without the heavy cost in integrated circuit chip area that a barrel shifter requires. When a scaling or normalization operation is to be performed, the system clock is gated to the fast shifter, thus allowing the shift operation to take place in response to the gated clock. Simultaneously, when the shifting operation is taking place, a WAIT signal is provided, telling the microprocessor to postpone action on the next microinstruction until the shifter operation has been completed. The fast shifter is capable of performing either single or double bit shifts to either the right or left, as desired. The fast shifter is also use to implement the parametric shift instructions in the microprocessor instruction set, providing a similar performance enhancement to these operations.

Inventors

  • 👤 Yeshayahu Mor
  • 👤 Yeshayahu Schatzberger
  • 👤 Leonardo Sandman

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-01 07:48
CPC Classifications
G; G06; G06F; G06F5/00; G06F5/01; G06F5/012

Claims Analysis

Total Claims: 25
Claim 1
Independent Claim 103 words
A method of normalizing a floating point number having an exponent and a mantissa comprising the steps of: (a) determining from the N most significant bits of the mantissa, where N is an integer less than a length of the mantissa and greater than 2, whether said floating point number is either normalized or requires from 1 to N-1 bit shifts; (b) performing said 1 to N-1 bit shifts of the mantissa in a single clock cycle (c) performing steps (a) and (b) until said floating point number is normalized; and counting the number of bit shifts performed in steps (b) and (c).
Claim 2
Independent Claim 103 words
A method of normalizing a floating point number having an exponent and a mantissa comprising the steps of: (a) determining from the N most significant bits of the mantissa, where N is an integer less than a length of the mantissa and greater than 2, whether said floating point number is either normalized or requires from 1 to N-1 bit shifts; (b) performing said 1 to N-1 bit shifts of the mantissa in a single clock cycle (c) performing steps (a) and (b) until said floating point number is normalized; and counting the number of bit shifts performed in steps (b) and (c).
Claim 3
Dependent Claim 31 words
The method as in claim 1 wherein said floating point number is stored in a shift means capable of performing from 1 to N-1 bit shifts in a single clock cycle.
Claim 4
Dependent Claim 22 words
The method as in claim 1 wherein M bit shifts, where O<M<P-1, are required where P is the length of the mantissa.
Claim 5
Dependent Claim 8 words
The method as in claim 1 wherein N=3.
Claim 6
Dependent Claim 27 words
The method as in claim 1 wherein the exponent of said floating point number is adjusted in an amount equal to the number of bit shifts performed.
Claim 7
Dependent Claim 26 words
The method of claim 1 wherein a WAIT signal is generated during normalization and said WAIT signal is disabled when said floating point number is normalized.
Claim 8
Dependent Claim 26 words
The method of claim 6 wherein said WAIT signal is used by a central processing unit to suspend operation until said floating point number is normalized.
Claim 9
Dependent Claim 19 words
The method as in claim 1, wherein steps a, b, and c are all performed in one shift register.
Claim 10
Dependent Claim 27 words
The method of claim 1 wherein the shift operation is performed in response to a clock signal which is disabled when said floating point number is normalized.
Claim 11
Dependent Claim 116 words
A structure for normalizing a floating point number having an exponent and a mantissa comprising: shifter means for storing said floating point number, capable of performing from 1 to N-1 bit shifts in a single clock cycle, where N is an integer less than a length of the mantissa and greater than 2; means for analyzing the N most significant bits of the mantissa of the floating point number and providing central signals to said shifter means to cause from 1 to N-1 bit shifts of the mantissa if said floating point number is not normalized; and a shift counter for counting the number of bit shifts performed during the normalization of said floating point number.
Claim 12
Dependent Claim 116 words
A structure for normalizing a floating point number having an exponent and a mantissa comprising: shifter means for storing said floating point number, capable of performing from 1 to N-1 bit shifts in a single clock cycle, where N is an integer less than a length of the mantissa and greater than 2; means for analyzing the N most significant bits of the mantissa of the floating point number and providing central signals to said shifter means to cause from 1 to N-1 bit shifts of the mantissa if said floating point number is not normalized; and a shift counter for counting the number of bit shifts performed during the normalization of said floating point number.
Claim 13
Dependent Claim 50 words
The structure of claim 10 wherein said means for analyzing provides said control signals indicating that M bit shifts, where O<M<P-1, are required when the M+1 most significant bits of the mantissa of said floating point number are identical to each other, where P is the length of the mantissa.
Claim 14
Dependent Claim 7 words
The structure of claim 10 wherein N=3.
Claim 15
Dependent Claim 25 words
The structure of claim 10 further comprising means for generating a WAIT signal during normalization which is disabled when said floating point number is normalized.
Claim 16
Dependent Claim 33 words
The structure of claim 13 further comprising a central processing unit, the operation of said central processing unit being suspended in response to said WAIT signal until said floating point number is normalized.
Claim 17
Dependent Claim 26 words
The structure of claim 16 wherein said sift means shifts in response to a clock signal which is disabled when said floating point number is normalized.
Claim 18
Independent Claim 60 words
A method of scaling a floating point number having an exponent and a mantissa comprising the steps of; determining the number of bit shifts required on the mantissa; performing a single bit shift on the mantissa if the number of bit shifts required is odd; and performing double bit shifts on the mantissa until no further bit shifts are required.
Claim 19
Independent Claim 60 words
A method of scaling a floating point number having an exponent and a mantissa comprising the steps of; determining the number of bit shifts required on the mantissa; performing a single bit shift on the mantissa if the number of bit shifts required is odd; and performing double bit shifts on the mantissa until no further bit shifts are required.
Claim 20
Dependent Claim 22 words
The method of claim 16 wherein each said single bit shift and double bit shift is performed in a single clock cycle.
Claim 21
Dependent Claim 22 words
The method as in claim 16, further comprising the step of counting the number of bit shifts performed in the other steps.
Claim 22
Dependent Claim 16 words
The method of claim 16, wherein all the steps are performed in a single processing step.
Claim 23
Dependent Claim 143 words
A structure for scaling a floating point number having an exponent and a mantissa comprising: shift means for performing one or two bit shifts on the mantissa of said floating point number; a scaling counter for storing the number of bit shifts required for scaling the number; means for providing a first control signal to said shift means in response to the least significant bit of said scaling counter, indicating that a single bit shift is required; means for disabling said scaling counter in response to said least significant bit of said scaling counter; means for resetting said least significant bit of said scaling counter when said single bit shift is performed; and means for causing said scaling counter to decrement its count by two and provide a count and signal to said shift means, indicating that a double bit shift is required.
Claim 24
Dependent Claim 143 words
A structure for scaling a floating point number having an exponent and a mantissa comprising: shift means for performing one or two bit shifts on the mantissa of said floating point number; a scaling counter for storing the number of bit shifts required for scaling the number; means for providing a first control signal to said shift means in response to the least significant bit of said scaling counter, indicating that a single bit shift is required; means for disabling said scaling counter in response to said least significant bit of said scaling counter; means for resetting said least significant bit of said scaling counter when said single bit shift is performed; and means for causing said scaling counter to decrement its count by two and provide a count and signal to said shift means, indicating that a double bit shift is required.
Claim 25
Dependent Claim 37 words
The structure as in claim 20 wherein said scaling counter comprises a single bit register for storing said least significant bit of said scaling counter and a counter for storing the remaining bits of said scaling counter.

References Cited (Backward Citations)

US3810115A Cited
GB1438307A Cited
US4208722A Cited
US4509144A Cited
US4472788A Cited
US4475173A Cited
US4639886A Cited
US4528640A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1993-02-26 1993-08-28 1994-02-27 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 1997-02-26 1997-08-28 1998-02-27 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2001-02-26 2001-08-28 2002-02-27 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag