robertobucher / pysimCoder

Block diagram editor and real time code generator for Python
GNU General Public License v3.0
142 stars 31 forks source link

pysimCoder support for Silicon-Heaven infrastructure #44

Closed michallenc closed 6 months ago

michallenc commented 2 years ago

Silicon-Heaven (SHV) is an open source communication infrastructure that implements an open protocol for data serialization. Support of SHV in pysimCoder allows the runtime tuning of model parameters and runtime block diagram introspection. This issue is an introduction to upcoming commits bringing SHV support to pysimCoder mainline. The complete manual will be presented on pysimCoder wiki.

Code Generation process changes

The SHV support brings following major changes to code generation files:

ExtLibs

New folder ExtLibs was added to pysimCoder root directory. Additional external libraries are downloaded into this folder if required.

Template Makefile

LinuxRT and NuttX template makefiles were changed to include header files from SHV related external libraries if libraries are downloaded.

CodeGen/Common

SHV related code is located in new folder CodeGen/Common/shv. The source code consists of four files:

pyblock.h

Two additional structures added to pyblock.h for SHV support.

Documentation

Documentation describing pysimCoder setting for SHV support and compilation of required additional applications can be found on pysimCoder wiki.

Future Improvements

SHV can currently only read and write double parameters, integer parameters and lists are not supported.

CC @robertobucher @ppisa