Z4800 Platform Documentation

Will Simoneau

The Z4800 platform is an open-source (mostly GPLv2) project consisting of a synthesizable soft-core CPU plus supporting hardware and software. The included reference designs allow construction of a complete FPGA computer complemented by a full-featured operating system capable of running many real-world programs. This platform can be used for many purposes, particularly benchmark studies; the processor core can be modified and has an extendable performance counter system.

The Z4800 CPU itself is a clean-room design capable of executing some binaries compiled for a variant of the MIPS® R4000™ processor. The main differences are that it does not implement the 64-bit or floating-point instructions, and that its native endianness is little-endian. Aside from these differences, most existing user-mode and kernel-mode software will work.

A fully functional Linux kernel is supported; source code for the modified kernel is included. These modifications are mostly to support the peripherals on the FPGA boards - the Z4800 CPU functions enough like an R4K that the existing Linux/mips R4K code can be used directly. SMP (multiprocessor) support is included.

To download the complete Z4800 source code, run the following commands:

git clone git://git.hangar16.net/z4800
git clone git://git.hangar16.net/z4800-kernel

Alternatively, gitweb access is available.

A paper about this project, An FPGA-based Multi-Core Platform for Testing and Analysis of Architectural Techniques, was written for and accepted to the 2012 IEEE International Symposium on Performance Analysis of Systems and Software.

To-Do List

In no particular order:

Legal Notice

MIPS and R4000 are trademarks or registered trademarks of MIPS Technologies, Inc. in the United States and other countries. The Z4800 project is neither licensed by nor endorsed in any way by MIPS Technologies, Inc. We only claim to have limited binary compatibility; we claim neither full compatibility nor full compliance with any MIPS® products and/or specifications.


The author of the Z4800 source code is Will Simoneau (simoneau@ele.uri.edu). He may be contacted for any technical questions. The ISPASS 2012 paper was co-authored with Resit Sendag (sendag@ele.uri.edu).

Will Simoneau 2012-03-31