GeMRTOS: Multiprocessor RTOS – Reference Design

Step 5: Add the GeMRTOS Multiprocessor component

Next, the GeMRTOS Multiprocessor component must be added to the system, which can be configured with either a Nios II or a Nios V processor. To do this, navigate to Project GeMRTOS GeMRTOS Multiprocessor within the IP Catalog tab and click the Add button. Figure 9 shows the GeMRTOS parameter configuration panel, which appears when the GeMRTOS Multiprocessor component is added or selected in the System Component window. This panel allows for configuring several features of the final multiprocessor architecture.

Figure 9: GeMRTOS Multiprocessor parameter configuration.

Successfully adding and configuring the GeMRTOS Multiprocessor component in Intel’s Platform Designer is a critical step in designing a functional multiprocessor system. This step ensures that the GeMRTOS IP component is properly integrated with the selected processor (Nios II or Nios V), allowing for further configuration and refinement of the multiprocessor architecture. Ensuring each feature is correctly set at this stage will contribute to the system’s overall performance and functionality during implementation.

Configuring the GeMRTOS hardware parameters

When the GeMRTOS Multiprocessor component is added or double-clicked within Intel’s Platform Designer, the Parameters tab becomes accessible. This tab allows for the configuration of various hardware parameters critical to the GeMRTOS Multiprocessor component. The primary parameters available for configuration include the following:

  • Number of Processors: Specifies the number of processors to be included in the system. The GeMRTOS Multiprocessor component manages all internal configurations to accommodate the selected number of processors.
  • Processor Type: Determines the type of processor used in the system. GeMRTOS supports both Nios II and Nios V soft-processors in various versions, and the processor type can be easily selected from the available options.
  • Reset Vector Memory: Identifies the memory device that contains the reset vector for the multiprocessor system. The list of memory devices is populated based on the devices connected to the GeMRTOS Multiprocessor buses, and no devices will appear until the component is connected, similar to the behavior in uniprocessor systems using Nios II or Nios V processors.
  • Reset Vector Offset: Specifies the offset of the reset vector within the chosen reset vector memory device.
  • Exception Vector Memory (only for Nios II): Similar to Reset Vector Memory, but specifically for the exception vector. This parameter is only applicable to Nios II processors.
  • Exception Vector Offset (only for Nios II): Specifies the offset of the exception vector within the chosen exception vector memory device, applicable only to Nios II processors.
  • Instruction Cache Size: Defines the size of the instruction cache, applicable only to processors that support this feature.
  • Enable Pipeline in CPU (Nios V/m only): Indicates whether the pipeline stage is enabled when using the Nios V processor.
  • Independent External Processor Buses: Determines whether each processor has a separate external bus or if a single external bus is shared among all processors in the GeMRTOS Multiprocessor component. Independent external buses can be beneficial for shadowing external devices at the same memory map address for each processor, potentially improving performance in certain applications.
  • Include JTAG UART for STDIO: If enabled, a JTAG UART is included as the standard input/output (STDIO) interface for the system.
  • Include JTAG UART for STDERR: If enabled, a JTAG UART is included as the standard error (STDERR) interface for the system.
  • Include JTAG UART for Each Processor: If enabled, a JTAG UART is included for each processor, allowing all processors to access each JTAG UART, which can be useful for debugging purposes.
  • Enable HPS Internal Access: If enabled, an Avalon bridge is included to allow the HPS system to access the GeMRTOS Multiprocessor bus and all its internal devices.
  • Quartus Prime Project Name: Allows the selection of the Quartus Prime project available in the work directory. Setting this field configures the gemrtos_build script for easy building of the SOPC system.
  • Platform Designer Project Name: Allows the selection of the Intel’s Platform Designer project available in the work directory. Setting this field configures the gemrtos_build script for easy building of the SOPC system.

These parameters must be carefully configured to ensure the GeMRTOS Multiprocessor component operates as intended within the overall system design.