Delay balancing unsuccessful. Cause: Non-discrete rates cannot be handled by delay balancing. Offending block: sqrt_to_hdl

19 次查看(过去 30 天)
Hello,
I am getting this error when generating Verilog at the HDL Coder:
Error:
For the block 'sqrt_to_hdl_coder/Sqrt'
Delay balancing unsuccessful. Cause:
Non-discrete rates cannot be handled by delay balancing. Offending block: sqrt_to_hdl_coder/Sqrt
This error occurs when I try to convert the entire schema into Verilog (Generate HDL Code). Previously there were errors related to the data type, I fixed this by setting a "fixed-point" in the input and output settings, and also setting restrictions (min and maximum).

采纳的回答

Tom Richter
Tom Richter 2024-6-28
Hi Andrew,
You can only generate HDL code from discrete models. That means, you need to set a sample time. Seeing your model you use an ODE solver and even a veriable step one. Even though HDL Coder allows these solver settings the system you generate code for must be discrete. Please have a look here and also follow the HDL Tutorial.
Best regards,
Tom

更多回答(0 个)

产品


版本

R2024a

Community Treasure Hunt

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

Start Hunting!

Translated by