How do i define an array as a HDL input?

6 vues (au cours des 30 derniers jours)
Eldin Ramic
Eldin Ramic le 31 Oct 2023
Commenté : Eldin Ramic le 9 Nov 2023
Hi,
I want to use an array as an input type in my HDL model, e.g [uint8; uint8], but the following error is generated:
Expression '[uint8; uint8]' for block 'xxx' returns an array of objects.
I cant find any documenation about using arrays as HDL inputs.
Thank you!

Réponse acceptée

Tom Richter
Tom Richter le 31 Oct 2023
Starting in R2022a, HDL Coder supports matrix types inputs and outputs at the DUT interface. This enhancement reduces the overhead of adding Reshape and Concatenate blocks inside the DUT and also improves readability of the generated HDL code.
I assume you talk about a Simulink model and with HDL model you mean a subsystem (DUT) which contains the algorithm for HDL code generation. With that you can e.g. use a constant block which outputs a matrix and use it as an input to the DUT. If the DUT is a model with imports and outposts you can define to port size (e.g [3, 2]) and the data type (e.g. uint8 or fixdt(1,8,4)). The data type is the same for all matrix entries.
Where did you try to include the [uint8, uint8] term?
More information here.
  1 commentaire
Eldin Ramic
Eldin Ramic le 9 Nov 2023
Thank you very much, this helped me.

Connectez-vous pour commenter.

Plus de réponses (1)

Kiran Kintali
Kiran Kintali le 1 Nov 2023
It would be helpful to share your model.
HDL Coder supports vector inputs at the DUT interface. Attached is an example of 40point FFT
You can find similar coding pattern with MATLAB to HDL and vector inputs here.
>> mlhdlc_demo_setup('fft')

Tags

Produits


Version

R2023a

Community Treasure Hunt

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

Start Hunting!

Translated by