Effacer les filtres
Effacer les filtres

found unsupported dynamic matrix type at output port 0

7 vues (au cours des 30 derniers jours)
Amruta  Radder
Amruta Radder le 29 Mar 2016
Commenté : Amruta Radder le 30 Mar 2016
Hi, I am working on Laplace transfer function i.e y=sum(sin(t_rad).*exp(-s*t_rad).*0.1); where i need to convert the function into HDL code.
Error i am getting is " found unsupported dynamic matrix type at output port 0" & output y is 1*N matrix. What is the solution to avoid this error?.

Réponse acceptée

Tim McBrayer
Tim McBrayer le 29 Mar 2016
HDL Coder does not support dynamic matrices at any point. The matrix in question may not be your final output, but some intermediate temporary value inside your complicated expression.
I would try converting your code to a much simpler form with explicitly typed and sized variables for each operation. This may expose or even eliminate the dynamic matrix.
You can convert:
y=sum(sin(t_rad).*exp(-s*t_rad).*0.1)
to this style:
t1 = -s * t_rad;
t2 = exp(t1);
t3 = t2 .* 0.1;
and so on. If you are in the fixed point domain already, you can apply explicit types and sizing at each step.
  4 commentaires
Walter Roberson
Walter Roberson le 30 Mar 2016
Use Fixed Point Designer and configure the rounding mode to "Simplest"; see http://www.mathworks.com/help/dsp/ug/concepts-and-terminology.html
Amruta  Radder
Amruta Radder le 30 Mar 2016
Yes, I have tried all options for rounding mode by selecting floor and zeros but still i am struck with same error i.e. Found unsupported division expression for HDL code generation; Signed input data type is not supported for division with Floor RoundMode. For expression a2=cos(imag(a1))+1j.*sin(imag(a1)); i am getting the above error. According to my knowledge i feel that i have to use cordicsin and cordiccos function instead of cos and sin because output is in complex form. Is it the right way of using? if so suggest me how to use cordicsin function.

Connectez-vous pour commenter.

Plus de réponses (0)

Produits

Community Treasure Hunt

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

Start Hunting!

Translated by