Skip to content


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
LatticeMico32 soft processor
Verilog Assembly
branch: master

convert the latex documention to rst

This will ease editing the documentation. For now only a HTML output is

Signed-off-by: Michael Walle <>
latest commit 84b3e3ca0a
Michael Walle mwalle authored



LatticeMico32 is a soft processor originally developed by Lattice
Semiconductor [1]. It was released under an open IP core license.

This is a fork of the original sources distributed by Lattice. It includes
new features, bugfixes and support for other FPGA devices. All additional
features are BSD-licensed.

Please note that this is only the processor core, not a complete SoC.

Original Features

 * 32-bit RISC architecture
 * Six stage pipeline
 * Two Wishbone bus interfaces for instruction and data
 * 32 external interrupts
 * 32 general purpose registers
 * Instruction and data caches
 * Embedded instruction ROM and data RAM support

Added Features

 * MMU support
 * Non-privileged user-mode support
 * JTAG support for Xilinx Spartan-6 devices
 * Test bench (using Icarus Verilog [3])
 * Replaced device specific primitives with generic verilog modules
 * Unit tests shared with QEMU

Reference Manual

You can find the reference manual at [2].

Getting Started

This repository provides all you need to simulate programs with the system
test bench. Try it, by typing
  make sim_hello_world
in the test/ directory.

For an example of a larger project which uses this core, see MiSoC [4].


Something went wrong with that request. Please try again.