piclist 2008\08\26\092938a >
Thread: embedded erlang ? language for distributed systems ?
picon face BY : Walter Banks email (remove spam text)

Peter wrote:

> Are there any real life cases of distributed programming languages or
> environments for small microcontrollers? I.e. high level language or environment
> that yields code for a set of microprocessors connected by a network? Embedded
> Erlang or something like that? The S/N factor on goopile is too low for any
> meaningful search there.


There are actually quite a few real life cases of distributed
programming languages for small microcontrollers.

The ISO/IEC 18037 description of named addresses
spaces can be extended to named processor spaces and
user defined processor space. Just like applications
communicate to user memory through user provided
software interfaces processor space requires application
definitions for inter processor execution flow control. This is
the approach that many consumer products use.

The approach we used in the automotive engine controllers
was to control the application build process with a single make
to create an application. The problem is more complex
than the consumer products. One layer had multiple
(usually 2) homogeneous event driven processors that were
coupled with a host CPU. We designed the make process
around the logical divisions in development teams. The code
for the event driven processors was compiled first distributing
their code among the processors and exporting the interface
protocols to code that was generated for the CPU.

This enforced the interface and protocols between different
versions of the event driven code and CPU. It also permitted
different releases of the event driven code and CPU code
to be built and still be compatible for software development
and testing. C is the implementation language for all of the
engine controller code.

Finally take a look at the IEC61139 and IEC61499 standards
for process control. The language design in these is inherently
multiprocessor.  IEC61131 is the fundamentals document of
supporting languages. IEC61499 is programming with function

Feel free to contact me off line.


Walter Banks
Byte Craft Limited
Tel. (519) 888-6911

<48B403EB.733712B0@bytecraft.com> 7bit

See also: techref.massmind.org/techref/language/index.htm?key=language

month overview.

new search...