Background
The ZCU104 board is a combination of FPGA and an ARM-based MPSoC. The FPGA part of ZCU104 is tightly bonded to the MPSoC making many of the peripherals on ZCU104 usable only via ARM core. This feature gives an advantage when we are using both MPSoC and FPGA parts, but it turns into a disadvantage when we want to use just the PL (stand-alone PL logic) part of ZCU104 without any intervention of MPSoC. Because of this reason, most of the important peripherals on ZCU104 become inaccessible to the stand-alone PL logic. Booting a custom processor on the PL part is one such application.
Our Use case and application
For our application, we needed a RISC-V based custom SoC in the PL part, that too stand- alone, with no usage of ARM-based MPSoC.
The SoC contains several other modules like the DLA, I2C, UART, SPI peripherals as required for the application.