Abstract
Synchronous hardware can be modelled as a mapping from input and state to output and a new state, such mappings are referred to as transition functions. It is natural to use a functional language to implement transition functions. The CaSH compiler is capable of translating transition functions to VHDL. Modelling hardware using multiple components is convenient. Components in CaSH can be considered as instantiations of functions. To avoid packing and unpacking state when composing components, functions are lifted to arrows. By using arrows the chance of making errors will decrease as it is not required to manually (un)pack the state. Furthermore, the Haskell do-syntax for arrows increases the readability of hardware designs. This is demonstrated using a realistic example of a circuit which consists of multiple components.
Original language | Undefined |
---|---|
Title of host publication | Preproceedings of the 22nd Symposium on Implementation and Application of Functional Languages (IFL 2010) |
Place of Publication | Utrecht |
Publisher | Utrecht University |
Pages | 107-119 |
Number of pages | 13 |
ISBN (Print) | 0924-3275 |
Publication status | Published - Aug 2010 |
Event | 22nd Symposium on Implementation and Application of Functional Languages, IFL 2010 - Alphen aan den Rijn, Netherlands Duration: 1 Sept 2010 → 3 Sept 2010 Conference number: 22 |
Publication series
Name | |
---|---|
Publisher | Utrecht University |
ISSN (Print) | 0924-3275 |
Conference
Conference | 22nd Symposium on Implementation and Application of Functional Languages, IFL 2010 |
---|---|
Abbreviated title | IFL |
Country/Territory | Netherlands |
City | Alphen aan den Rijn |
Period | 1/09/10 → 3/09/10 |
Keywords
- METIS-278694
- Haskell
- HDL
- Functional Languages
- EWI-19194
- State Hiding
- Hardware
- Hardware Description Language
- IR-78215