Bluepsec Examples
Cyan Processor
Introduction
This processor framework was created for a Masters course I initially taught in January 2010. The slides from the lecture introducing the design are provided. The name is not particularly imaginative and roughly follows the line of reasoning: "light Bluespec processor" → "light blue processor" → CyanProc.
There are a few things I found interesting when creating this design:
- Structures and enumerations really make the design easy to write and read.
- Single element FIFOs are used to provide pipeline latches removing the need to think about pipeline stalls.
- Reg(isters) are used extensively but there was no need to use any Wire/BypassWire/RWire/PulseWires.
- The static elaboration system is powerful enough to allow a two-pass embedded assembler to be written.