Cascade Filter in HDL Coder
2 views (last 30 days)
Show older comments
I am trying to make an interpolation filter of 256 Up sampling. But this is too big for the HDL coder to generate the code. To solve that problem i used one interpolation filter with 32 up sample and other one with 8 up sample. Then i cascaded the two filters to get the desired 256 up sampling. Now the problem starts with Restricted Fmax when i try to generate the HDL code for this model. When i generate HDL code for 32 up sample and 8 up sample separately without cascading them together both of them have a Fmax around 50 MHz. But when i cascade them and generate the HDL code for the model the Fmax comes down to 35 MHz. Whats is the reason behind this? Is there any optimization i can apply to increase the Fmax. I know clock optimization will increase the area, but that's now an concern right now.
Bharath Venkataraman on 19 Jul 2017
If you doing this with Filter Design HDL Coder, please look at the pipeline options for multiplier pipelining, as well as the option of "Add Pipeline Registers". That should increase your fmax.
Find more on Optimization in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!Start Hunting!