Embedded Design Handbook

ID 683689
Date 8/28/2023
Public
Document Table of Contents

6.3.1.2. System Console

You can use the System Console to perform low–level debugging of a Platform Designer system. You access the System Console functionality in command line mode. You can work interactively or run a Tcl script. The System Console prints responses to your commands in the terminal window. To facilitate debugging with the System Console, you can include one of the four Platform Designer components with interfaces that the System Console can use to send commands and receive data.

Table 49.   Platform Designer Components for Communication with the System Console
Component Name Debugs Components with the Following Interface Types
Nios® II processor with JTAG debug enabled Components that include an Avalon® -MM slave interface. The JTAG debug module can also control the Nios® II processor for debug functionality, including starting, stopping, and stepping the processor.
JTAG to Avalon® master bridge Components that include an Avalon® -MM slave interface
Avalon® Streaming ( Avalon® -ST) JTAG Interface Components that include an Avalon® -ST interface
JTAG UART The JTAG UART is an Avalon® -MM slave device that can be used in conjunction with the System Console to send and receive byte streams.

The System Console can also send and receive byte streams from any SLD node, whether it is instantiated in a Platform Designer component provided by Intel, a custom component, or part of your Intel® Quartus® Prime project. However, this approach requires detailed knowledge of the JTAG commands.

The System Console allows you to perform any of the following tasks:

  • Access memory and peripherals
  • Start or stop a Nios® II processor
  • Access a Nios® II processor register set and step through software
  • Verify JTAG connectivity
  • Access the reset signal
  • Sample the system clock

Using the System Console you can test your own custom components in real hardware without creating a testbench or writing test code for the Nios® II processor. By coding a Tcl script to access a component with an Avalon® -MM slave port, you create a testbench that abstracts the Avalon® -MM master accesses to a higher level. You can use this strategy to quickly test components, I/O, or entire memory-mapped systems.

Embedded control systems typically include inputs such as sensors, outputs such as actuators, and a processor that determines the outputs based on input values. You can test your embedded control system in isolation by creating an additional system to exercise the embedded system in hardware. This approach allows you to perform automated testing of hardware-in-the-loop (HIL) by using the System Console to drive the inputs into the system and measure the outputs. This approach has the advantage of allowing you to test your embedded system without modifying the design. The figure below illustrates HIL testing using the System Console.

Figure 261. Hardware-in-the-Loop Testing Using the System Console

To learn more about the System Console refer to the System Console chapter of the Intel® Quartus® Prime Handbook Volume 3: Verification.