The EC16 is a 16-bit soft microprocessor for FPGAs written in VHDL.
- 16-bit data width
- 16-bit address space for external memory (code, data and I/O)
- 256 word internal memory (registers, stack, scratch pad memory)
- 50 instructions
- instruction length: mostly single word, only 4 instructions with two words
- speed: 18 one-cycle, 15 two-cycle, 9 three-cycle, 8 one/two-cycle (branch)
- 4 maskable prioritized interrupts
The EC16 is implemented as an open source Lattice Radiant Project EC16_on_ICE for the ICY40 board, running at 20 MHz and using only about 21% of the ICE40UP5K FPGAs logic resources while already including peripherals like COM-Port and I2C Master.
See the EC16 Wiki

