Skip to content
Snippets Groups Projects
Commit fd88b428 authored by Michal Lenc's avatar Michal Lenc
Browse files

final typo


Signed-off-by: default avatarMichal Lenc <michallenc@seznam.cz>
parent 3516b6c8
No related branches found
No related tags found
No related merge requests found
No preview for this file type
......@@ -112,7 +112,7 @@ setting is opened by double left click on the block placed in a diagram window.
single right click on the block\cite{b4}.
\subsection{Code Generation}
Two equations, \eqref{ss-block-x} and \eqref{ss-block-y} representing its internal states and outputs, respectively, are used for the description of each
Two equations, \eqref{ss-block-x} and \eqref{ss-block-y} representing internal states and outputs, respectively, are used for the description of each
block in pysimCoder.
\begin{equation}
......@@ -133,7 +133,7 @@ are initialized during program start up and their specific functions are then ca
order based on blocks' dependencies on each other. Generation process needs to take care of this and find the right execution sequence\cite{b4}.
The generation process is shown in Fig.~\ref{codegen-diag}\cite{b4}.
The executable main function is generated from target operating system specific template. Compilation is controlled by Makefile genrated from the second target system
The executable main function is generated from target operating system specific template. Compilation is controlled by Makefile generated from the second target system
specific template.
\begin{figure}[htbp]
......@@ -147,7 +147,7 @@ The generated C code is subsequently compiled and linked with the block library
Since with this approach the block diagram is translated into a single C module, with all the various library function calls, the generated code can also be easily ported
to other environments. For example a STM32 Cube with FreeRTOS kernel\cite{b5}.
\subsection{Block Structure}
\subsection{Block Definition in Library}
PysimCoder has two blocks related folders in its structure, \textit{resources} and \textit{CodeGen}. The first mentioned folder provides blocks'
declaration in JSON format and Python part of the code while the latter contains Makefile templates and C parts of blocks' code for supported targets.
......@@ -162,8 +162,8 @@ initialization, output update, internal state update or termination can be found
\section{Runtime Monitoring and Tuning of Model Parameters}
The goal of runtime monitoring and tuning of model parameters is to allow the user to display and edit parameters, inputs and outputs of individual blocks.
Silicon Heaven infrastructure (also abbreviated as SHV) developed at Czech company Elektroline a.s was used to achieve this goal.
The infrastructure has been conceived in the compaty to provide communication backbone for their tramway yards control solutions in Australia, Belgium and
Silicon Heaven infrastructure (also abbreviated as SHV) developed at Czech company Elektroline a.s was used to achieve this goal \cite{shv}.
The infrastructure has been conceived in the company to provide communication backbone for their tramway yards control solutions in Australia, Belgium and
other countries around the globe\cite{b4}.
An open remote procedure call protocol (RPC) called ChainPack is implemented by SHV for data serialization. The serialization format combines the properties of
......@@ -207,7 +207,7 @@ only one or function or small number of functions if needed. This allows the bui
during the configuration. NuttX documentation mentions that the final executable can then be run on only 32 kB of total memory (code and data). However typical NuttX
build needs about at least 64 kB of memory\cite{b6}.
Most of the commonly used instruction set architecture (ISAs) are supported by NuttX. The most extended support is provided for ARM instruction set architecture (ISA)
Most of the commonly used instruction set architectures (ISAs) are supported by NuttX. The most extended support is provided for ARM instruction set architecture (ISA)
nowadays used in most of the microcontrollers for embedded systems\cite{b7}. Therefore versions of STM32 chips, microcontrollers from imxRT series, LPC series
or SAM series are supported as well as other ARM based microcontrollers. Other architectures like Xtensa with support for microcontrollers designed by Espressif
company, widely known Intel x86 ISA or open standard architecture RISC-V are also supported but so far not as widely as ARM\cite{b4}\cite{dion}.
......@@ -282,7 +282,7 @@ make SHV=1
The directory \textit{devices} contains blocks' source files written in C language and defining the functions of the pysimCoder's blocks. Parameter
\textit{SHV=1} of the last command ensures Silicon-Heaven libraries are compiled with pysimCoder's files. PysimCoder can be compiled without these libraries if
the command is not used. This can be used if the runtime parrameters access is not planned.
the command is not used. This can be used if the runtime parameter access is not planned.
PysimCoder can similarly be compiled for GNU/Linux in directory \textit{pysimCoder/CodeGen/Linux} as well. Of course there is no need to export and unzip any files
for GNU/Linux.
......@@ -483,6 +483,7 @@ Other pysimCoder related example are listed in \cite{b10}.
\bibitem{b3} The Apache Foundation. pysimCoder integration with NuttX . Available from https://nuttx.apache.org/docs/latest/guides/pysimcoder.html.
\bibitem{b4} Lenc, Michal. Open Rapid Control Prototyping and Real-Time Systems, CTU Prague, 2022.
\bibitem{b5} \url{https://www.enib.fr/~kerhoas/pmsm_cours_index.html}.
\bibitem{shv} \url{https://github.com/silicon-heaven}
\bibitem{b6} The Apache Foundation. About Apache NuttX . Available from http://nuttx.incubator.apache.org/docs/latest/introduction/about.html.
\bibitem{b7} Güven, Yılmaz, Ercan Coşgun, Sıtkı Kocaoğlu, Harun Gezici, and Eray Yilmazlar. Understanding the Concept of Microcontroller Based Systems To Choose
The Best Hardware For Applications. Research Inventy: International Journal of Engineering And Science. 12, 2017, Vol. 6, No. 9, pp. 38-44. ISSN 278-4721.
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment