Why do we use fixed point representation?

1 view (last 30 days)
Krishnakumar
Krishnakumar on 7 Jan 2014
Answered: Ryan Johnson on 8 Jan 2014
Hi
I would like to know why dont we use double precision floating point data type as such for simulink models to be exported to FPGA ? Is it because that FPGA do not support huge memory storage for double precision? Also please add some information about why do we decide to use 16 wordlength fixed point representation in most cases.
Krishnakumar

Answers (3)

Ryan Johnson
Ryan Johnson on 7 Jan 2014
Floating point math is typically expensive in terms of FPGA resources. FPGA primitive DSP elements are typically designed for 16-18 bit integer formats. You can build something which uses floating point, but it will require many more primitive elements (DSP blocks, LUTs, etc) to perform your operations.

Ryan Johnson
Ryan Johnson on 8 Jan 2014
Sure, you can do double precision floating point math in most FPGAs these days, but at the cost of resources. It's all a trade off analysis. Do you want the highest throughput? Use fixed point. Do you need high dynamic range and precision? Use floating point. I've done designs which use both in different areas.
I guess I'd say that fixed point is still "preferred", as it's natively supported by primitives, but it comes down to what's right for the job.
Ryan

Krishnakumar
Krishnakumar on 8 Jan 2014
Sir,
Thank you so much for your answer . But I would like to clear that if any of FPGA support double precision data. And also if still we will prefer fixed point representation due to the speed it offers in computing.
Krishnakumar

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!