Integer/floating point divider and square root logic unit and associates methods
US-2017017467-A1 · Jan 19, 2017 · US
US11314482B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-11314482-B2 |
| Application number | US-201916684081-A |
| Country | US |
| Kind code | B2 |
| Filing date | Nov 14, 2019 |
| Priority date | Nov 14, 2019 |
| Publication date | Apr 26, 2022 |
| Grant date | Apr 26, 2022 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
Methods and systems for division operation are described. A processor can initialize an estimated quotient between the dividend and the divisor separately from a floating-point unit (FPU) pipeline. The processor can implement the FPU pipeline to execute a refinement process that can include at least a first iteration of operations and a second iteration of operations. The refinement process can include, in the first iteration of operations, generating a first unnormalized floating-point value using the initialized estimated quotient. The refinement process can include, in the second iteration of operations, generating a second unnormalized floating-point value using the first unnormalized floating-point value. The processor can determine a final quotient based on the second unnormalized floating-point value.
Opening claim text (preview).
What is claimed is: 1. A system comprising: a memory; a processor configured to be in communication with the memory, wherein: the processor comprises a circuit including logic gates, and a separate floating-point unit (FPU); the circuit of the processor is configured to initialize an estimated quotient between a dividend and a divisor; the FPU of the processor is configured to receive the estimated quotient from the circuit and execute a refinement process to refine the estimated quotient in a FPU pipeline, the FPU pipeline including at least a first iteration of operations and a second iteration of operations, the refinement process comprises: in the first iteration of operations, generating a first unnormalized floating-point value using the initialized estimated quotient; in the second iteration of operations, generating a second unnormalized floating-point value using the first unnormalized floating-point value; and the separate FPU of the processor is further configured to determine a final quotient between the dividend and the divisor based on the second unnormalized floating-point value. 2. The system of claim 1 , wherein the processor is configured to: input a sum component and a carry component of an estimated reciprocal of the divisor into a carry-save adder (CSA); perform Booth recoding on an output from the CSA, wherein the output is based on the sum component and the carry component; wherein the initialization of the estimated quotient is performed using the Booth recoded output, the dividend, and the divisor. 3. The system of claim 2 , wherein the processor is configured to multiply the Booth recoded output with the dividend to initialize the estimated quotient, and multiply the Booth recoded output with the divisor to initialize another estimated quotient. 4. The system of claim 1 , wherein the processor is configured to perform a fixed shift on the first unnormalized floating-point value to remove at least one leading zero among the first unnormalized floating-point value to generate the second unnormalized floating-point value. 5. The system of claim 4 , wherein a number of leading zeros to remove using the fixed shift is based on a division scheme being implemented by the processor. 6. The system of claim 1 , wherein the processor is configured to normalize the second unnormalized floating-point value. 7. The system of claim 1 , wherein the processor is configured to: add a first value to a final estimated quotient to generate a first final estimated quotient, the final estimated quotient being an normalized value of the second unnormalized floating-point value; add a second value to the final estimated quotient to generate a second final estimated quotient; determine a product between the first final estimated quotient and the divisor; compare the product with the dividend; based on a result of the comparison, select a value between the second final estimated quotient and a sum of the second final estimated quotient with an added rounding term; and round the selected value to determine the final quotient. 8. The system of claim 7 , wherein the processor is configured to select the first value and the second value based on a rounding scheme being implemented by the processor. 9. The system of claim 1 , wherein the FPU pipeline comprises at least a first iteration of operations and a second iteration of operations, and the refinement process comprises: in the first iteration of operations, generating a first unnormalized floating-point value using the initialized estimated quotient; in the second iteration of operations, generating a second unnormalized floating-point value using the first unnormalized floating-point value, wherein the outcome of the FPU pipeline is the second unnormalized floating-point value; the processor is configured to: normalize the second unnormalized floating-point value to generate a final estimated quotient; perform a back-multiplication check using a first copy of the final estimated quotient; round a second copy of the final estimated quotient based on a result of the back-multiplication check; and set the rounded result as the final quotient. 10. A computer-implemented method comprising: initializing, by a circuit integrated in a processor, an estimated quotient between a dividend and a divisor; receiving, by a separate floating-point unit (FPU) of the processor, the estimated quotient from the circuit; executing, by the separate floating-point unit (FPU) of the processor, a refinement process to refine the estimated quotient in FPU pipeline, the FPU pipeline including at least a first iteration of operations and a second iteration of operations, the refinement process comprises: in the first iteration of operations, generating, by the processor, a first unnormalized floating-point value using the initialized estimated quotient; in the second iteration of operations, generating, by the processor, a second unnormalized floating-point value using the first unnormalized floating-point value; and determining, by the separate FPU of the processor, a final quotient between the dividend and the divisor based on the second unnormalized floating-point value. 11. The computer-implemented method of claim 10 , further comprising: inputting, by the processor, a sum component and a carry component of an estimated reciprocal of the divisor into a carry-save adder (CSA); performing, by the processor, Booth recoding on an output from the CSA, wherein the output is based on the sum component and the carry component; wherein initializing the estimated quotient comprises using the Booth recoded output, the dividend, and the divisor. 12. The computer-implemented method of claim 11 , further comprising: multiplying, by the processor, the Booth recoded output with the dividend to initialize the estimated quotient; and multiplying, by the processor, the Booth recoded output with the divisor to initialize another estimated quotient. 13. The computer-implemented method of claim 10 , further comprising performing, by the processor, a fixed shift on the first unnormalized floating-point value to remove at least one leading zero among the first unnormalized floating-point value to generate the second unnormalized floating-point value. 14. The computer-implemented of claim 13 , wherein a number of leading zeros to remove using the fixed shift is based on a division scheme being implemented by the processor. 15. The computer-implemented method of claim 10 , further comprising normalizing, by the processor, the second unnormalized floating-point value. 16. The computer-implemented method of claim 10 , further comprising: adding, by the processor, a first value to a final estimated quotient to generate a first final estimated quotient, the final estimated quotient being a normalized value of the second unnormalized floating-point value; adding, by the processor, a second value to the final estimated quotient to generate a second final estimated quotient; determining, by the processor, a product between the first final estimated quotient and the divisor; comparing, by the processor, the product with the dividend; based on a result of the comparison, selecting, by the processor, a value between the second final estimated quotient and a sum of the second final estimated quotient with an added rounding term; and rounding, by the processor, the selected value to determine the final quotient. 17. The computer-implemented method of claim 16 , further comprising selecting, by the processor, the first v
Dividing · CPC title
Rounding · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.