HDL Coder errors don't make sense

1 view (last 30 days)
SAI GAUTHAM P
SAI GAUTHAM P on 15 Mar 2016
Edited: Tim McBrayer on 15 Mar 2016
I get the following HDL coder errors when I try to convert the attached be_alam.m. I have attached the function and the test bench. Please help.
Errors:
be_alam_fixpt:48 Error Found unsupported dynamic matrix type at output port: 0, name 'o1r', in the file/function be_alam_fixpt.
be_alam_fixpt:0 Error MATLAB HDL Coder failed in the code generation phase. See HDL Coder conformance report.

Answers (1)

Tim McBrayer
Tim McBrayer on 15 Mar 2016
Edited: Tim McBrayer on 15 Mar 2016
I believe your problem is your call to 'find' around like 50 of be_alam.m. 'find' returns a variable size vector as its result. This will be the proximate cause of the "dynamic matrix type". HDL Coder needs all variables to have a fixed size at all times.
I think you will have to implement the 'find' functionality explicitly, returning a single value.
min_dis = min(dis);
for ii = 1:numel(dis)
if dis(ii) == min_dis
n = ii;
end
end

Categories

Find more on Code Generation in Help Center and File Exchange

Products

Community Treasure Hunt

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

Start Hunting!