Why do we use fixed point representation?
2 views (last 30 days)
Show older comments
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
0 Comments
Answers (3)
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.
0 Comments
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
0 Comments
See Also
Categories
Find more on Fixed-Point Designer in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!