This is a comparison between an AVR softcore and the picorv32 when used in
a real application. The numbers are for the entire application, not for the cores in isolation.
Only minimal changes were made to the HDL and firmware code to adapt to the new core (the
peripherals were updated to handle a 32-bit bus, and the interrupt handling was adapted to
picorv32, otherwise the code is identical) and the same optimization flags (-Os -mrelax
)
were used with both cores.
The following were the relevant design constraints:
- Synthetizable on an iCE40 HX8K
- fCPU = 17 MHz