HDL Code Generation Error
조회 수: 24 (최근 30일)
이전 댓글 표시
How to solve this error?
Signals of type 'Double' will not generate synthesizable HDL. Consider enabling Native Floating-Point mode and retyping all 'Double' typed signals to 'Single' to generate synthesizable code
댓글 수: 0
채택된 답변
Kiran Kintali
2020년 10월 6일
편집: Stefanie Schwarz
2021년 10월 21일
See resolution in https://www.mathworks.com/matlabcentral/answers/606331
추가 답변 (1개)
stozaki
2020년 10월 6일
Hello kameshwar,
Which MATLAB version are you using?
The block type that supports code generation of double floating point data types depends on the MATLAB version. It looks like your model contains blocks that don't support HDL code generation for "double" data types.
Please see the release notes and support block table for details.
stozaki
댓글 수: 6
stozaki
2020년 10월 7일
편집: stozaki
2020년 10월 7일
Hi
Your model has some problems.
1. The Chart block cannot generate code from the model root level. Wrap in the subsystem.
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/373486/image.png)
2. The model configuration parameters are not settings for HDL code generation. Check the hdlsetup command for details.
3. The output of the Signal Generator is "double". Since the input data type of the Chart block is "Inherit: Same as Simulink",code cannot be generated because it is a double type. Use the Data Type Conversion block to set the Signal Generator output to boolean. In Chart's action language, immediate values (eg 1 and 0) are considered double type.
![your model](https://www.mathworks.com/matlabcentral/answers/uploaded_files/373491/your%20model.png)
![modified model](https://www.mathworks.com/matlabcentral/answers/uploaded_files/373496/modified%20model.png)
I have attached the modified model. In this model, if the subsystem is the target of code generation, code generation can be performed without error.
makehdl('Pattern_Detector_modified_19a/Subsystem');
stozaki
참고 항목
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!