fixed point divider help

Aug 27, 2003 0 Replies

Hello,



I have a large number division to perform and need to keep 2 to 3 digits of accuracy beyond the decimal point. The result will always be some fraction number between 1.000 and 192.000.



For example a typical set of division will be:


40189861/1947555 = 20.6360595721302 (need 20.636)


19399957/1948400 = 71.5458617327038 (need 71.546)


238466182/1947387 = 122.454438691436 (need 122.454)


337495643/1946746 = 173.363984310228 (need 173.364)


I have found in Simulink that this requires 31 bit for the numerator and 24 bits for the denominator. I also found that to keep the answer accurate to about 3 places requires a 46 bit number consisting of 8 bits for the integer portion and the remaining 38 bits to keep the 3 decimal place fractional portion. I tried using the pipelined divider core from Xilinx Core Generator but that only gives me an 8 bit integer with at most 32 bit fractional remainder. That does not cut it. What can I do? Any help is greatly appreciated.


Salman



"Even a smile is charity."


Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required