Embedded Design Handbook

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

7.1.2.1.1. Accessing Multiple Nios® II Designs

You use the device and instance arguments from the command line to select the desired Nios® II core.

Program the FPGA device with a .sof file that contains a design with two Nios® II instances:
[]$ quartus_pgm -m jtag -c 1 -o "p;output_files/top.sof"
Use system console to decode the Nios® II instance to SLD node:
[]$ system-console --cli
 
% design_load ./output_files/top.sof
 
% get_service_paths processor
{/devices/1SX280LH(2|3)|1SX280LN2(|AS)|..@1#1-4#Stratix 10L SoC Dev Kit/(link)/JTAG/alt_sld_fab_0_alt_sld_fab_0_sldfabric.node_0/nios2_gen2_0.data_master} {/devices/1SX280LH(2|3)|1SX280LN2(|AS)|..@1#1-4#Stratix 10L SoC Dev Kit/(link)/JTAG/alt_sld_fab_0_alt_sld_fab_0_sldfabric.node_1/nios2_gen2_1.data_master}
Here, you can see that the two Nios® II cores enumerate to these SLD nodes:
nios2_gen2_0 = node_0
nios2_gen2_1 = node_1
Also, the two Nios® II cores on JTAG chain with jtagconfig:
[]$ jtagconfig -n
1) Stratix 10L SoC Dev Kit [1-4]
  C321D0DD   1SX280LH(2|3)/1SX280LN2(|AS)/..
    Design hash    BE8F2B069D867486EF17
    + Node 19104600  Nios II #0
    + Node 19104601  Nios II #1
    + Node 0C006E00  JTAG UART #0
    + Node 0C006E01  JTAG UART #1
Interact with Nios® II instance 0:
[]$ nios2-download -c 1 -d 1 -i 0 -s 0x81030 -I 0xdecadeca -t 0x0 --stop
Using cable "Stratix 10L SoC Dev Kit [1-4]", device 1, instance 0x00
Pausing target processor: OK
Reading System ID at address 0x00081030: verified
Leaving target processor paused
Interact with Nios® II instance 1:
[]$ nios2-download -c 1 -d 1 -i 1 -s 0x10 -I 0xcafec0de -t 0x0 --stop
Using cable "Stratix 10L SoC Dev Kit [1-4]", device 1, instance 0x01
Pausing target processor: OK
Reading System ID at address 0x00000010: verified
Leaving target processor paused