As of today the primary objectives of the PMU are to accurately transfer FPGA bitstream data to the core and protect the IP the lies within a bitstream using AES as well as authenticating the bitstream data and user via SHA. The PMU is capable of on the fly use of both AES and SHA algorithms when transfering data from a host PC to FPGA core. This project will serve as a test implementation of the PMU where the user project wrapper includes the PMU version 3, SOFA 2x2 FPGA generated using OpenFPGA, and AES/SHA cores from secworks.
Git repositories for all macros are given below.
PMU: https://github.com/lnis-uofu/FPGA_Secured_Bitstream
JTAG: https://github.com/freecores/jtag
AES: https://github.com/secworks/aes
SHA: https://github.com/secworks/sha256
User project wrapper includes the PMU version 3, SOFA 2x2 FPGA generated using OpenFPGA, and AES/SHA cores. RTL to GDS flow was completed using SiliconCompilers open source framework which provides a python API to compile source code into silicon.
3
sky130A