QGen User Guide¶
- 1. Installation Instructions
- 2. QGen Code Generator
- 2.1. Using
qgenc
- 2.2. Prerequisites
- 2.3. Generating Code from the Simulink GUI
- 2.4. Generating Code from the MATLAB Command Line
- 2.5. Generating Code from the System Command Line
- 2.6. Errors and Warnings
- 2.7. User-specific Headers
- 2.8. Custom Data Types
- 2.9. Naming Convention
- 2.10. Customizing Arithmetic Functions
- 2.11. Customizing Block Implementations
- 2.1. Using
- 3. QGen Compatibility Checker
- 4. QGen Model Verifier
- 5. QGen Model Debugger
- 6. QGen Model Debugger: Step by Step Tutorial
- 7. Processor in the loop (PIL) with QGen
- 8. Using Legacy Code in Simulink and with QGen
- 9. QGen Constraints on Input Models
- 9.1. Simulink Version
- 9.2. Simulink Block Types and Constraints
- 9.3. Other Simulink Constraints
- 9.3.1. Model Configuration Parameters
- 9.3.2. Blocks Configuration
- 9.3.3. Signal Dimensions
- 9.3.4. Custom Data Types
- 9.3.5. Use of Callback Functions
- 9.3.6. Real-valued Computations Only
- 9.3.7. Bus Signals
- 9.3.8. Forwarding Tables in Libraries
- 9.3.9. MISRA Simulink Guidelines
- 9.3.10. Simulink Coder(TM) Parameters
- 9.4. MATLAB
- 9.5. Stateflow chart modelling rules
- 9.5.1. Event broadcast for local events shall not to be used
- 9.5.2. Input and output events of the chart shall have a “function call” trigger type
- 9.5.3. [REMOVED]
- 9.5.4. [REMOVED]
- 9.5.5. Transition actions shall not be used in graphical functions and pure flow-graph decompositions. Condition actions shall be used instead.
- 9.5.6. An OR decomposition must always have an unguarded default transition
- 9.5.7. [REMOVED]
- 9.5.8. Boxes shall only be used for grouping functions
- 9.5.9. Only bounded flow-graph loops should be used
- 9.5.10. The transition arc shall not leave its logical parent’s boundary
- 9.5.11. Super step semantics shall not be used
- 9.5.12. Variable-size arrays shall not be used
- 9.5.13. Only C action language shall be used
- 9.5.14. Moore charts shall not be used for breaking data loops
- 9.5.15. Truth tables shall not be used
- 9.5.16. Simulink functions shall not be used
- 9.5.17. History junctions shall not be used
- 9.5.18. [CHANGED] Absolute-time temporal logic shall not be used
- 9.5.19. Change detection functions shall not be used
- 9.5.20. ‘in <state>’ operator shall not be used
- 9.5.21. Data stores shall only be accessed through chart’s I/O
- 9.6. Target Languages
- 9.7. XMI Support
- 10. Reporting Suggestions and Bugs
- 11. Appendix A: Errors and warnings
Acknowledgments¶
QGen was developed with support from FUI Project P and EuroStars project Hi-MoCo (E6037, EU40149).