This frees developers to concentrate on the programming task at hand rather than the idiosyncrasies of a specific design language and architecture.
In order to facilitate a way to describe parallel behavior some of the communicating sequential processes (CSP) keywords are used, along with the general file structure of the Occam programming language.
A channel with actors in differing clock domains is automatically asynchronous due to the need for at least one element of storage to mitigate metastability.
A thread may simultaneously wait on multiple channels, synchronous or asynchronous, acting upon the first one available given a specified order of priority or optionally executing an alternate path if none is ready.
[1] For example: In addition to the effects the standard semantics of C have on the timing of the program, the following keywords[1] are reserved for describing the practicalities of the FPGA environment or for the language elements sourced from Occam: In Handel-C, assignment and the delay command take one cycle.
The technology developed at Oxford was spun off to mature as a cornerstone product for Embedded Solutions Limited (ESL) in 1996.