Cascade Filter in HDL Coder

1 visualización (últimos 30 días)
shauk
shauk el 19 de Jul. de 2017
Respondida: shauk el 20 de Jul. de 2017
Hallo
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.

Respuestas (2)

Bharath Venkataraman
Bharath Venkataraman el 19 de Jul. de 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.

shauk
shauk el 20 de Jul. de 2017
I am using the interpolation filter block from simulink hdl coder library. I have matlab 2014b. I use a serial partition for my filter, and then add pipelines using the HDL block properties option. Any suggestions on how to properly pipeline to get increased Fmax

Categorías

Más información sobre Optimization en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by