Can the HDL FFT be made to process a vector that is greater than 64?

4 ビュー (過去 30 日間)
denkvakva
denkvakva 2023 年 6 月 8 日
I have the HDL coder FFT block and I want to send it twice the max vector size (i.e. 128 instead of 64). Is there an already established way to complete this so I don't have to reinvent the wheel?
  3 件のコメント
denkvakva
denkvakva 2023 年 6 月 15 日
Yes, the goal is 128 samples per clock cycle while not changing the clock speed.
Bharath Venkataraman
Bharath Venkataraman 2023 年 6 月 19 日
I suggest reaching out to MathWorks support with this question.

サインインしてコメントする。

回答 (1 件)

Sahas Marwah
Sahas Marwah 2023 年 6 月 13 日
Assuming that, you are using the HDL coder FFT block in Simulink and need the input vector size to be twice the maximum which is 64.
There are a few indirect ways you can do this:
1. One way is to split the input vector into multiple smaller vectors that can be processed separately by multiple FFT blocks. This can be achieved using MATLAB functions such as reshape, or mat2cell. You can then combine the outputs of each FFT block to generate the final output.
2. Use a streaming interface for the FFT block, which allows you to process large input vectors in smaller chunks. This can be done by setting the 'Streaming Architecture' parameter of the FFT block to 'On', which enables the use of serial or streaming interfaces for the block.
You can visit these documentation pages for more help on the above steps:

カテゴリ

Help Center および File ExchangeHDL Code Generation についてさらに検索

製品


リリース

R2022a

Community Treasure Hunt

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

Start Hunting!

Translated by