MATLAB Answers

Speedgoat IO601 block s-functions

4 ビュー (過去 30 日間)
Birdman 2017 年 10 月 13 日
コメント済み: Birdman 2017 年 10 月 18 日
When the code is generated from Speedgoat IO601 blocks, the generated code can not be inlined and from Configuration Parameters, Support non-inlined s-function check have to be made and this results in highly inefficient code. How those s-functions underlying those blocks can be inlined? Is there any other way beside inlining those s-functions and make the code more efficient?

  0 件のコメント



Diego Kuratli
Diego Kuratli 2017 年 10 月 17 日
The Support non-inlined s-function option appears for ERT-based targets. This is not related to the IO601 drivers, but generally to the Simulink Real-Time environment.
By default, SLRT uses Tunable parameters, as tuning parameters is one of the main purpose of real-time testing. You can optimize the generated code, by selectively inline parameters: Configuration Parameters -> Optimization -> Signals and Parameters.

  3 件のコメント

Birdman 2017 年 10 月 18 日
Thank you for your answer Diego, but what I'm talking about is a completely different thing. My concern is not about the tunable parameters. I had to select ERT-based targets since I will analyze the generated code in Polyspace(that is the only way). Since my model requires, I have IO601 I/O Driver blocks. Because of the reason that those driver blocks use a previously written S-function, in the generated code, the driver blocks use SimStruct data to call the output every single time and this results in a heavy code and I had to select the Support non-inlined s-function since otherwise, the code is not generated. As far as I know from MATLAB Documentation, those s-functions can be inlined by writing a simple tlc file. I would like to know if you have any experience with it or not.
Diego Kuratli
Diego Kuratli 2017 年 10 月 18 日
SLRT is not an ERT-based target. The slrtert.tlc system target file has been removed in recent MATLAB releases. Your concerns about the heavy generated code typically do not apply to the SLRT environment. I suggest you getting in touch with our technical support team for further discussing your specific requirements.
Birdman 2017 年 10 月 18 日
Thank you Diego. I think I got it at the moment.


その他の回答 (0 件)

Community Treasure Hunt

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

Start Hunting!

Translated by