ANSI C code generation

"With models autocoded, artifacts become part of the overall requirements traceability matrix, enabling developers to trace the fulfillment of requirements through model, code, and tests in the overall software development process"

Automation World, David Greenfield

Control theory has historically been taught to engineers using block diagrams. Block diagram representations have a few key strengths including: 1) they indicate the signal flow path - thus are more informative, 2) they show how the system will be built in hardware, and 3) they are easier to code. With a block diagram, an engineer can understand a system at a glance vs. having to read through lines of code. 

In order to write embedded code that is performant, however, engineers have to code their algorithms in lower level languages such as C, C++ and C#. This is a skillset that is expensive to find among engineers and many companies have chosen to split the responsibilities into separate departments - the control system engineering and embedded software development. Those that haven’t risk compromising the quality of their code or taking on the responsibility of training their engineers with a new skill set, which takes time and money. 

There is an alternative that many companies have chosen to turn to. They automatically generate C, C++ or C# code from higher level languages that are more intuitive and natural to engineers.

40%

reduction in integration time

Why is automatic code generation important for systems design?

In many modern systems, like air taxis and self-driving cars, engineers aren’t simply adding one new component to an existing system. Instead, they are adding multiple new technologies that include never-been-done-before connectivity, perception and GNC implementations. All of this translates into orders of magnitude more complexity. More complexity means more iteration is needed to get it right. Companies looking to get an edge in their development are turning towards automation to maintain high levels of productivity. The benefits that accrue to the companies that use automatic code generation tools include:

  • Generation of production quality C code enables engineers to focus on their system’s design while automating the implementation of their work on production hardware
  • Code generation means the burdensome process of manual translation isn’t required. Therefore engineers don’t need to be skilled embedded developers to ensure compliance with standards like MISRA
  • Code generation enables full traceability from requirements to design to source code. The bidirectional connections are important for companies seeking to run Model Based Development (MBD) and helps streamline the creation of certification artifacts for standards such as DO178 and ISO26262

A shift is underway — are your auto code generation tools helping or hindering?

Collimator provides production ready automatic C code generation capabilities so you can focus on improving your system design

Unlock the full potential of your engineering team with powerful features

Design

Explore the vast number of possibilities, model to your desired complexity

Simulate

Move faster with speed and agility, get high fidelity insights earlier

Visualize

Analyze your results, increase confidence on your designs, iterate

Deploy

Automatically generate code and deploy code to your target hardware

Collaborate

Integrate your workflows and streamline
collaboration

Traditional Applications

Have to pay separately for code generation capabilities
Few engineers have the code generation toolkit, therefore most can’t deploy their changes directly
Traditional Applications UI
Collimator UI
Collimator Logo
Automatic code generation included with commercial license
Engineers have the freedom to test, iterate and deploy their changes onto hardware in real time

Traditional Applications

Traditional Applications
Have to pay separately for code generation capabilities
Few engineers have the code generation toolkit, therefore most can’t deploy their changes directly
Collimator Logo
Collimator UI
Automatic code generation included with commercial license
Engineers have the freedom to test, iterate and deploy their changes onto hardware in real time

Discover how the most innovative companies in the world are using Collimator today

See Collimator in action