Designer | Originally Damjan Lampret, now the OpenRISC Community (Stafford Horne etc.) |
---|---|
Bits | 32-bit, 64-bit |
Introduced | 2000 |
Version | 1.4[1] |
Design | RISC |
Encoding | Fixed |
Endianness | Big; unimplemented stub for Little |
Page size | 8 KiB |
Extensions | ORFPX32/64,[2] ORVDX64[3] |
Open | Yes (LGPL / GPL), hence royalty free |
Registers | |
General-purpose | 16 or 32 |
Floating point | Optional |
OpenRISC is a project to develop a series of open-source hardware based central processing units (CPUs) on established reduced instruction set computer (RISC) principles. It includes an instruction set architecture (ISA) using an open-source license. It is the original flagship project of the OpenCores community.
The first (and as of 2019[update] only) architectural description is for the OpenRISC 1000 ("OR1k"), describing a family of 32-bit and 64-bit processors with optional floating-point arithmetic and vector processing support.[4]
The OpenRISC 1200 implementation of this specification was designed by Damjan Lampret in 2000, written in the Verilog hardware description language (HDL).[5]
The later mor1kx implementation, which has some advantages compared to the OR 1200,[6] was designed by Julius Baxter and is also written in Verilog.
Additionally software simulators exist,[7] which implement the OR1k specification.
The hardware design was released under the GNU Lesser General Public License (LGPL), while the models and firmware were released under the GNU General Public License (GPL).
A reference system on a chip (SoC) implementation based on the OpenRISC 1200 was developed, named the OpenRISC Reference Platform System-on-Chip (ORPSoC). Several groups have demonstrated ORPSoC and other OR1200 based designs running on field-programmable gate arrays (FPGAs),[8][9] and there have been several commercial derivatives produced.
Later SoC designs, also based on an OpenRisc 1000 CPU implementation, are minSoC, OpTiMSoC and MiSoC.[10]