hdl code generation to come across check block compatibility error. How can I fix?

조회 수: 19 (최근 30일)
mohsen salehi
mohsen salehi 2017년 5월 20일
댓글: aijaz 2023년 10월 17일
Hello, I'm now using HDL coder to generate VHDL code from my model named simple_timer_model. And then program it to the target device(Xilinx Zedboard). I encontered some errors and warnings in the stage 2.3 check Block Comatibility of HDL workflow adviser. Here is the list of the Warnings:
Error: Unhandled mixed double, single, and non-real datatypes at ports of block.
Error: Cannot find the implementation for block 'hdlcoder_sobel_video/Behavior Model Result'. To continue code generation, and avoid this error, you may choose to 'Comment out' this block.
Error: Matrices are not supported.
Error: Matrices are not supported at Simulink block interfaces.
  댓글 수: 1
aijaz
aijaz 2023년 10월 17일
PID_controller12/controller/SumErrorMixed double, single, half, and non-real datatypes at ports of block is not allowed.
this is the same issue which i am facing now a days i am just trying to resolve this issue but i am unable to resolve.

댓글을 달려면 로그인하십시오.

답변 (2개)

Walter Roberson
Walter Roberson 2017년 5월 20일
"Error: Unhandled mixed double, single, and non-real datatypes at ports of block."
In at least one block, you have are doing arithmetic between a double() and a single() value, or you are doing arithmetic between a non-complex value and a complex value. If you are doing arithmetic between a single() and a double(), you need to use single() or double() to convert the other signal to the one you want to do the arithmetic in. If you are doing arithmetic between a non-complex value and a complex value, you need to either complex() the non-complex value or you need to real() or imag() or abs() the complex value. This presumes you are using a MATLAB Function block, or a math function block; otherwise you might need to use https://www.mathworks.com/help/simulink/slref/datatypeconversion.html
"Error: Matrices are not supported.
Error: Matrices are not supported at Simulink block interfaces."

Bharath Venkataraman
Bharath Venkataraman 2017년 5월 20일
편집: Walter Roberson 2017년 5월 20일
I assume you are trying to run this example ?
You may be trying to generate HDL code for the entire model. Please generate HDL code for just the top-level subsystem (Pixel Stream HDL Model). To do this, you can either click on the subsystem and type makehdl on the command line or right-click on the subsystem and choose the option to generate HDL code.
  댓글 수: 1
Walter Roberson
Walter Roberson 2017년 5월 20일
That would appear to be potentially useful information, but it seems a bit implausible to be the situation for a model named "simple_timer_model"

댓글을 달려면 로그인하십시오.

카테고리

Help CenterFile Exchange에서 Model Compatibility에 대해 자세히 알아보기

제품

Community Treasure Hunt

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

Start Hunting!

Translated by