AN 999: Drive-on-Chip with Functional Safety Design Example: Agilex™ 7 Devices
ID
823627
Date
7/04/2024
Public
1. About the Drive-on-Chip with Functional Safety Design Example for Agilex™ 7 Devices
2. Getting Started
3. Rebuilding the Drive-on-Chip Design
4. Functional Description of the Drive-On-Chip with Functional Safety Design Example for Agilex 7 Devices
5. HPS Channel Safety Software
6. Drive-on-Chip Design Recommendations and Disclaimers
7. Document Revision History for AN 999: Drive-on-Chip with Functional Safety Design Example for Agilex 7 Devices
2.1. Software Requirements for the Drive-On-Chip with Functional Safety Design Example for Agilex 7 Devices
2.2. Hardware Requirements for the Safe Drive-On-Chip with Functional Safety Design Example for Agilex 7 Devices
2.3. Downloading and Installing the Design
2.4. Installing Python
2.5. Creating an SD Card Image
2.6. Setting Up your Development Board for the Drive-On-Chip with Functional Safety Design Example for Agilex 7 Devices
2.7. Debugging and Monitoring the Drive-On-Chip with Functional Safety Design Example for Agilex 7 Devices with Python GUI
2.8. Looking into the Drive-On-Chip Output
3.1. Generating the Platform Designer System
3.2. Generating and Building the NiosV/g BSP for the Drive-On-Chip Design Example
3.3. Compiling the Hardware in the Intel Quartus Prime Software
3.4. Modifying the Motor Control Software Application
3.5. Generating .jic and .rbf files After Hardware Modifications
3.6. Recreate an SD Card Image
3.7. Modifying the HPS Safety Function Application
3.5. Generating .jic and .rbf files After Hardware Modifications
In the Drive-on-Chip with Functional Safety Design Example for Agilex™ 7 Devices the HPS configures the FPGA during during boot-up flow (HPS first flow). To recreate the design, you must generate a .rbf and .jic files after Quartus compilation from the .sof file.
If you want to modify the hardware design in the FPGA, generate a new .rbf. If the hardware modification includes changes in the HPS configuration in Platform Designer, regenerate a new .jic file. You can build them with the steps in the GSRD or the steps in Building Bootloader for Agilex 7.
- Compile the hardware design using Quartus Prime Pro and get the top.sof file.
- In Building Bootloader for Agilex7, follow the steps in the Build U-Boot section. You need the file in u-boot-socfapga/spl/u-boot-spl-dtb.hex for the next step.
- Generate the QSPI image (.jic) and the FPGA image (.rbf)
>> ~/intelFPGA_pro/23.3/nios2eds/nios2_command_shell.sh \ quartus_pfg -c \ top.sof \ agilex7_dk_si_agf014ea.jic \ -o device=MT25QU128 \ -o flash_loader=AGFB014R24B2E2V \ -o hps_path=u-boot-socfpga/spl/u-boot-spl-dtb.hex \ -o mode=ASX4 \ -o hps=1
The resulting .jic file allows you to program the QSPI image. - Rename the .rbf file to agilex7_dk_si_agf014ea.core.rbf and replace into the right location during the Yocto build, refer to Rebuilding Yocto with Provided Meta Layer
Related Information