Efabless Logo
FPGA Programming...
public project
MPW-6   

The Programming Management Unit will serve as a macro that can be placed near a FPGA to handle bitstream loading. While the primary functionality of the PMU is to load a bitstream into an FPGA Core it will also incorporate some hardware security and integrity features. This is in response to the need for OpenFPGA to be able to incclude some hardware security IPs to FPGA designs. As of today the primary objectives of the PMU is to accurately transfer bitstream data to the core and protect the IP that lies within a bitstream using AES. User authentication is performed with an SHA-256 core and on the fly decription of a bitstream is evaluated using AES-128 core. The PMU is capable of loading FPGAs with a configuration chain configuration protocol. This project will serve as a test implementation of the PMU where the user project wrapper includes both a PMU and a SOFA 2x2 FPGA generated using OpenFPGA, and several spy pads for testing post fabrication.  A link to both the PMU repo and SOFA repo can be found here: PMU: https://github.com/lnis-uofu/FPGA_Secured_Bitstream 2x2 FPGA: https://github.com/lnis-uofu/SOFA 

project layout image
project layout image
Layout Image
Owner
Allen Boston
Organization URL

https://github.com/lnis-uofu

Description

The Programming Management Unit will serve as a macro that can be placed near a FPGA to handle bitstream loading. While the primary functionality of the PMU is to load a bitstream into an FPGA Core it will also incorporate some hardware security and integrity features. This is in response to the need for OpenFPGA to be able to include some hardware security IPs into FPGA designs. As of today the primary objectives of the PMU is to accurately transfer bitstream data to the core and protect the IP that lies within a bitstream using AES. This design consists of an FSM to interpret the PMU encoding scheme, RSA and AES cores, and a 2x2 SOFA FPGA.

Version

V1

Category

processor

Process

sky130A