Real-Time Workshop |
 |
Key Features
The general goal of the MathWorks tools, including Real-Time Workshop, is to enable you to accelerate your design process while reducing cost, decreasing time to market, and improving quality.

Traditional development practices tend to be very labor intensive. Poor tools often lead to a proliferation of ad hoc software projects that fail to deliver reusable code. With the MathWorks tools, you can focus energy on design and achieve better results in less time with fewer people.
Real-Time Workshop, along with other components of the MathWorks tools, provides
- A rapid and direct path from system design to implementation
- Seamless integration with MATLAB and Simulink
- A simple graphical user interface
- An open and extensible architecture
The following features of Real-Time Workshop enable you to reach the above goal:
- Code generator for Simulink models
- Generates optimized, customizable code. There are several styles of generated code, which can be classified as either embedded (production phase) or rapid prototyping.
- Supports all Simulink features, including 8, 16, and 32 bit integers and floating-point data types.
- Fixed-Point Blockset and Real-Time Workshop allow for scaling of integer words ranging from 2 to 128 bits. Code generation is limited by the implementation of
char
, short
, int
, and long in
embedded C compiler environments (usually 8, 16, and 32 bits).
- Generated code is processor independent. The generated code represents your model exactly. A separate run-time interface is used to execute this code. We provide several example run-time interfaces as well as production run-time interfaces.
- Supports any single or multitasking operating system. Also supports "bare-board" (no operating system) environments.
- The Target Language Compiler allows extensive customization of the generated code via TLC scripting.
- Enables custom code generation for S-functions (user-created blocks) using TLC files, enabling you to embed very efficient custom code into the model's generated code.
- Extensive model-based debugging support
- External mode enables you to examine what the generated code is doing by uploading data from your target to the graphical display elements in your model. There is no need to use a conventional C debugger to look at your generated code.
- External mode also enables you to tune the generated code via your Simulink model. When you change a parametric value of a block in your model, the new value is passed down to the generated code, running on your target, and the corresponding target memory location is updated. Again, there is no need to use an embedded compiler debugger to perform this type of operation. Your model is your debugger user interface.
- Integration with Simulink
- Code validation. You can generate code for your model and create a standalone executable that exercises the generated code and produces a MAT-file containing the execution results.
- Generated code contains system/block identification tags to help you identify the block, in your source model, that generated a given line of code. The MATLAB command
hilite_system
recognizes these tags and highlights the corresponding blocks in your model.
- Support for Simulink data objects lets you define how your signals and block parameters interface to the external world.
- Rapid simulations
- Real-Time Workshop supports several ways to speed up your simulations by creating optimized, model-specific executables.
- Target support
- Turnkey solutions for rapid prototyping substantially reduce design cycles, allowing for fast turnaround of design iterations.
- Bundled rapid prototyping example targets are provided.
- Add-on targets (Real-Time Windows Target and xPC Target) for PC-based hardware are available from The MathWorks. These targets enable you to turn a PC with fast, high-quality, low cost hardware into a rapid prototyping system.
- Supports a variety of third-party hardware and tools, with extensible device driver support.
- Extensible make process
- Allows for easy integration with any embedded compiler and linker.
- Provides for easy linkage with your hand-written supervisory or supporting code.
- Real-Time Workshop Embedded Coder
- Customizable, portable, and readable C code that is designed to be placed in a production embedded environment.
- More efficient code is created, because inlined S-functions are required and continuous time states are not allowed.
- Software-in-the-loop. With Real-Time Workshop Embedded Coder, you can generate code for your embedded application and bring it back into Simulink for verification via simulation.
- Web-viewable code generation report describes code modules, analyzes the generated code, and helps to identify code generation optimizations relevant to your program.
- Annotation of the generated code using the Description block property.
- Hooks for external parameter tuning and signal monitoring are provided enabling easy interfacing of the generated code in your real-time system.
| A Next-Generation Development Tool | | Benefits |  |