I would think, that a floating pt implementation  on a soft FPGA processor core with floating point would take less area that a purely FPGA fixed point HDL implementation. The reason is that the amount of work required to do (in terms of computations per cycle) does not really take advantage of the parallelism of an FPGA . and a basic soft core with an FPU can easily run fast enough on even the slowest FPGA fabric around....

However, I suspect that codec2 could easily work within small fractional integer space (32 to 40 bit) without changes, and not have any scaling issues and be completely scaling free in a 64 bit fractional integer space.

My usual rule - if it can be run in a high level language in software, then don't do it in fpga fabric as HDL  ... probably applies.

I'm currently implementing codec2  for RISC-V (F) in floating point. In many RISC-V implementations, there is  the facility to generate in the HDL custom instructions that can be inserted into the code which can provide , for example, vector speedups.

In my opinion, There's a good reason though not to go too far from 'reference C code' if possible, unless, for example there are struct power consumption limits----- as changes to the mainline become slower and more difficult to propagate into different platforms if someone needs to spend the time to (heavily) optimize.

If the use of fixed point requires regular scaling, it probably becomes a pain to be linked to the mainline reference code unless the scaling requirements are scripted and automatic.  This breathes light for me into thinking about a purely 64bit fractional ALU fractional implementation.

In the RISCV -custom instruction support , one could add fractional ALU instructions that MACRO out the std asm to hide the shifts from the programmer and compiler.


-glen

On 28/12/2023 7:36 am, Mooneer Salem wrote:
Hi Tomas,

Someone did a FPGA implementation a while back for a university project. That's the closest we've gotten to a fixed-point implementation. Right now, there are no plans to port it officially but this may be revisited later.

Thanks,

-Mooneer K6AQ



_______________________________________________
Freetel-codec2 mailing list
Freetel-codec2@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freetel-codec2

Reply via email to