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
2.3.1. Design Directory Structure
The Drive-on-Chip with Functional Safety Design example for Agilex 7 Devices has the following directory structure.
Figure 4. Design Directory Structure

Directory | Description |
---|---|
gui | Contains all the source files to run the GUI for the design. |
hps_software | Contains the HPS safety unction application and meta-safedriveonchip layer for the YOCTO build. |
images | Contains the files to run the application agilex7_dk_si_agf014ea.hps.jic (for QSPI flash) and other relevant collaterals (top.core.rbf, top.sof, u-boot-spl-dtb.hex) |
non_qpds_ip | Contains the source code (RTL) of the design’s custom IP that is not part of Quartus Prime. Includes the DSP Builder-generated motor model, FOC, and safety IP and motor control IP and subsystems. |
quartus | Contains the base files for the Quartus Project including the top.qpf, top.qsf. |
rtl | Contains the sources files to build the project. |
software | Contains all the files for building the application for the Nios V/g drive-on-chip. The binary is in /dniosv_subsystem/build/bin as app.elf. However this file is already in the RAM blocks as mem_init/dniosv_subsystem_cpu_ram_cpu_ram.hex |