Who uses the ZPU?
Typical usage seems to be experienced engineers who have some very particular requirements that can only be
met using the ZPU due to technical or licensing issues.
Academic circles have found the ZPU appealing since the actual core is trivial and allows them to focus
on some other aspect of research or student exercises.
Open source projects and hobbyists also have found use for the ZPU.
Zylin soft CPU
- The ZPU is open source. Closed source implementations of HDL also available.
- FreeBSD license for HDL implementations--no hiccups when using in proprietary commercial products. Under the open source royalty free license, there are no limits on what type of technology (FPGA, anti-fuse, or ASIC) in which the ZPU can be implemented.
- GPL license for architecture, documentation and tools
- Completely FPGA brand and type neutral implementation
- 442 LUT @ 95 MHz after P&R with 32 bit datapath and 32kBytes BRAM(example using Xilinx part).
- Codesize 80% of ARM thumb
- GCC toolchain(GDB, newlib, libstdc++)
- Debugging via simulator or GDB stubs
- HDL simulation feedback to simulator for powerful profiling
capabilities
- eCos embedded operating system support. FreeRTOS port exists as well.
The philosophy behind the ZPU is that a soft-CPU's job is to take up as little FPGA resources
as possible and leave heavy-duty processing to the HDL paradigm. Using HDL directly will always be ten to one hundred times
faster than first reducing an FPGA to a soft-CPU and then trying recover the lost performance
and FPGA resources through a clever soft-CPU implementation.
Of course, if you consider FPGA resource use irrelevant, then you might be better off with a
Soft-CPU that takes ten to fifty times more FPGA real estate.