Error while converting a sine pwm block in simulink to verilog code using HDL coder.

2 次查看(过去 30 天)
I have simulated a sine pwm block in simulink. It is working perfectly and I want to convert it into verilog code using HDL workflow Adviser. The following error message came:
Failed: Running Check Block Compatibility failed.
Warning: Cannot find the implementation for block 'pwm1703/Subsystem/Sine Wave'.
I have used the sine wave block from source library in the simulink. I have used sine sawtooth (signal generator) compare method to generate the sine pwm.
Any idea what is going wrong?

采纳的回答

Tim McBrayer
Tim McBrayer 2013-3-21
The sine wave block is not supported by HDL Coder. You can see all the blocks supported by HDL Coder by running the MATLAB command 'hdllib'.
That said, there are two supported methods for computing the sine in HDL Coder. The first is to use the Simulink->Math Operations->Trigonometric Function block. This block will compute the sine using a CORDIC algorithm. You can control the number of iterations, which allows you to choose between size/speed and accuracy.
The other way of implementing the sine function in HDL Coder is to use a lookup table containing the precomputed sine wave of desired resolution and scaling. You can save chip area by having your table represent only one quadrant, and mapping this as appropriate.

更多回答(0 个)

社区

更多回答在  Power Electronics Control

类别

Help CenterFile Exchange 中查找有关 HDL Coder 的更多信息

产品

Community Treasure Hunt

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

Start Hunting!

Translated by