CERN Opens Colibri VHDL Library With 100+ Reusable FPGA Components


CERN has opened colibri, a reusable FPGA library containing more than 100 RTL components written in VHDL-2008. The library is vendor-independent, includes self-checking testbenches, adds formal-verification harnesses where practical, and is released under the CERN Open Hardware Licence Version 2 — Weakly Reciprocal (CERN-OHL-W-2.0).

The project grew from work started about four years ago inside CERN to reduce duplicated gateware and make FPGA designs easier to move between projects and vendor platforms. CERN's Experimental Physics department says colibri is already used in more than 10 projects, including deployments outside CERN.

For FPGA teams, the practical value is a maintained set of common building blocks that can be reused without tying the surrounding design to one FPGA vendor's primitives.

What colibri provides

CERN describes three design principles for the library: open source, vendor independence and verification. Its VHDL-2008 components cover common functions from memories such as FIFOs and RAMs through more advanced data manipulation.

Each component has a self-checking testbench. CERN also supplies formal-verification harnesses where possible, giving projects another way to validate reusable logic beyond simulation of selected inputs.

The first production adoption came from the LHCb Experiment Data Acquisition team for an upcoming upgrade. The library is now used by more than 10 projects, and CERN says it remains actively maintained with new components being added.

Why vendor-independent RTL matters

FPGA projects frequently accumulate device-family primitives and vendor-specific infrastructure around otherwise reusable logic. That can increase the work required to evaluate a design on another FPGA family or migrate a project when hardware requirements change.

Colibri's pure VHDL-2008 approach is intended to keep common RTL portable across tool and device environments. Teams can still use vendor-specific blocks where an implementation needs them while keeping routine infrastructure in a reusable library.

This is particularly useful for organisations that maintain several FPGA designs over long hardware lifecycles. A shared FIFO, memory or data-manipulation block can be tested and maintained once, then integrated into multiple projects instead of being independently recreated.

Verification is part of the library design

Reusable RTL is most valuable when its behaviour can be checked consistently. Colibri pairs its components with self-checking testbenches and adds formal verification for applicable modules.

That structure makes the library useful beyond CERN's own experiments. An engineering team can inspect the RTL and its verification assets together before deciding whether a component fits a design, then integrate the same tests into its own development workflow.

CERN says development was supported by the EP R&D programme under WP 9.3, Gateware Portability Frameworks. The public release also opens the project to external use and contributions.

License and adoption considerations

Colibri uses CERN-OHL-W-2.0, the weakly reciprocal variant of CERN's open-hardware licence. Teams considering the library for commercial or mixed-source hardware should review the licence text for the obligations that apply to their distribution and modification model.

The library is best viewed as reusable FPGA infrastructure. Its strongest fit is for teams that want portable VHDL building blocks with verification assets and an upstream project that is already being exercised across multiple CERN-related designs.

Sources