GeMRTOS: Multiprocessor RTOS – Reference Design

Alternative 1: Building the application with the gemrtos_build script.

To simplify the software building flow, the GeMRTOS Multiprocessor component generates the gemrtos_build script (.sh for Nios II processors and .bat for Nios V processors). This script automates the essential steps for building a GeMRTOS application, reducing the complexity of manual configuration and improving efficiency, especially for those new to GeMRTOS and Intel’s design flow. The script should be executed from the command line of the Nios II or Nios V Command Shell within the <Quartus_Prime_project_folder> directory. For Nios II, the command is:

<Quartus_Prime_project_folder>/bash gemrtos_build.sh

For Nios V, the command is:

<Quartus_Prime_project_folder>/gemrtos_build.bat

The gemrtos_build script performs several key operations, configured with parameters from the GeMRTOS Multiprocessor component’s parameter panel:

  • Platform Designer Project Name: Specifies the Platform Designer project file (.qsys) located in the Quartus Prime project’s main directory (<Quartus_Prime_project_folder>).
  • Quartus Prime Project Name: Identifies the Quartus Prime project where the Platform Designer project, containing the GeMRTOS IP component, is instantiated.
  • Application Project Name: Determines the name of the application executed by the GeMRTOS multiprocessor. By default, the hellogemrtos project is created in the <Quartus_Prime_project_folder> /software subdirectory.
  • BSP Project Name: Defines the name of the Board Support Package (BSP) associated with the application, stored in the <Quartus_Prime_project_folder> /software /hellogemrtos_bsp subdirectory.

The execution of the gemrtos_build script involves the following steps:

  1. Generate the Intel’s Platform Designer system.
  2. Compile the Quartus Prime project, creating the <quartus_project_name>.sof file.
  3. Generate the BSP settings file (.bsp) and BSP project directory.
  4. Set up the software directory and, if absent, include the hellogemrtos.c template file.
  5. Compile both BSP and application projects, producing the hellogemrtos.elf file.
  6. Transfer the .sof file to the FPGA using the Quartus Prime Programmer tool.
  7. Open terminals to connect with the system’s JTAG UARTs.
  8. Download and initiate execution of the hellogemrtos.elf on the target hardware.

Upon completion, the multiprocessor application will begin executing on the GeMRTOS Multiprocessor system, with system and task messages displayed in the connected terminals.