This document describes the process for generating the custom rv_core_ibex IP block for the Kelvin SoC.
The IP is generated using the ipgen.py script from the OpenTitan repository. This script takes an IP template and a configuration file as input and generates a concrete IP block in an output directory.
To generate the rv_core_ibex IP, run the following command from the root of the repository:
python3 opentitan/util/ipgen.py generate \ -C opentitan/hw/ip_templates/rv_core_ibex \ -c fpga/ip/kelvin_rv_core_ibex.ipconfig.hjson \ -o fpga/ip/rv_core_ibex \ --force
The ipgen.py script has several Python dependencies that must be installed:
hjsonmakosemantic_versiontabulatepycryptodomeThe script will generate the rv_core_ibex IP block in the fpga/ip/rv_core_ibex directory. This will include the .core file, the RTL files, and any other necessary files for the IP.