Libre-SOC is a libre soft processor core originally written by Luke Leighton and other contributors, announced at the OpenPOWER Summit NA 2020.[2] It adheres to the Power ISA 3.0 instruction set and can be run on field-programmable gate array boards, currently booting MicroPython and other bare-metal applications.

Libre-SOC
LibreSOC prototype in 128-pin MQFP
General information
Launched2019-08-29[1]
Designed byLuke Leighton, Libre-SOC Team
Common manufacturer
Architecture and classification
ApplicationSoft core
Technology node180 nm
Instruction setPower ISA 3.0
ppc64le
ppc64be
Physical specifications
Cores
  • 1

The purpose of Libre-SOC is to be a system on a chip (SoC) with 3D and video capability built-in as part of the Power ISA, suitable for single-board computers, netbooks, IoT devices and other small form factors, while retaining a completely free and open design.[3]

History

edit

Libre-SOC began its life when Luke Leighton wanted there to be a completely free and libre system on a chip offering. He initially opted for a RISC-V base, but later switched to OpenPOWER when that seemed like a better fit for the project.[4][5] It is the second processor written from scratch using the OpenPOWER ISA 3.0, and the first libre core that is completely independent of IBM.

The project is mostly funded through NLnet grants.[6][7]

While being developed as a "soft core" Libre-SOC will be fabricated in 180 nm by TSMC's "Open MPW Shuttle Program" through Imec in 2021.[8] The finished ASIC was sent to Imec in July 2021.[9]

Design

edit

Libre-SOC is a 64-bit bi-endian scalar processor core, implementing a subset of the Power ISA 3.0 instruction set. It has 32× 64-bit general purpose registers. It uses Wishbone for the memory interface.

The Libre-SOC core will be a hybrid design, based around a precise-augmented version of the historic CDC 6600 microarchitecture,[10] merging traditional general purpose, vector and graphics computing into a single execution unit reducing complexity and size of the complete chip as well as simplifying 3D driver development.[11] This constitutes the need to add a small addition to the OpenPOWER instruction set architecture called "Simple-V".[12][13] SVP64, currently in draft,[14] extends OpenPOWER register files to 128, including CR fields, in order to cope with modern 3D and Video workloads, effectively making Libre-SOC a Vector processor.

Like Microwatt, the initial development was done in around three months, included the entire integer processing functionality of the instruction set; the bare minimum to make it compliant, with no memory management unit and no floating-point unit. Libre-SOC's rapid development is, like Microwatt, down to the significant use of software engineering practices including thousands of unit tests[15] and by Microwatt source code as a reference design.

Libre-SOC is unusual in that it is designed using nMigen, a Python-based hardware description language (HDL). Also, to retain full transparency associated with "libre", the ASIC layout[16] is performed with coriolis2, a VLSI toolchain developed and maintained by Sorbonne University's Laboratoire d'Informatique de Paris 6.

Hardware implementation

edit
 
LibreSOC samples in tray. Photograph taken at their archival place in LIP6/Jussieu in 2024.

While Libre-SOC is as developed as a libre software project, eventually the goal is to produce real "hard" hardware products as opposed to the "soft" synthesised versions that reflects the actual development.

The first hard version of the Libre-SOC is fabricated by TSMC on their 180 nm node. The chip comprises 130.000 logic gates, measures 5.5 × 5.9 mm2 and will be packaged in a 128 pin QFP package.[9]

See also

edit

References

edit
  1. ^ Williams, Chris (2019-08-29). "Get your royalty-free soft-core OpenPOWER processor core blueprints here. Extra, extra – read all about it". The Register.
  2. ^ OpenPOWER Summit NA 2020: The LibreSOC Initiative: a hybrid CPU/VPU/GPU
  3. ^ Libre-SOC Still Persevering To Be A Hybrid CPU/GPU That's 100% Open-Source
  4. ^ The Libre RISC-V Vulkan Accelerator Will Be Targeting 25 FPS @ 720p, 5~6 GFLOPs
  5. ^ LibreSOC Still Striving To Produce An Open-Source Hybrid CPU/GPU Built On OpenPOWER
  6. ^ The Libre-RISCV SoC
  7. ^ NLNet Grants approved, Power ISA under consideration
  8. ^ Libre-SOC 180nm ASIC plan
  9. ^ a b "Libre-SOC 180nm Power ISA ASIC Submitted to Imec for Fabrication". openpowerfoundation.org. Archived from the original on 8 July 2021. Retrieved 26 July 2023.
  10. ^ 6600 scoreboard architecture
  11. ^ XDC2020 Libre-SOC talk
  12. ^ Simple-V Vectorisation for the OpenPOWER ISA
  13. ^ The LibreSOC Project: Simple-V Vectorisation. Why we decided to invent a new Vector system on top of OpenPOWER
  14. ^ SVP64 Draft Specification
  15. ^ OpenPOWER ISA unit tests
  16. ^ Libre-SOC git repository for GDS-II layout
edit