Specifications

Altera Corporation 1–25
October 2007
Nios II Hardware Development Tutorial Creating the Example Design
4. Click Finish. You return to the SOPC Builder System Contents tab,
and an instance of the PIO named pio now appears in the table of
available components.
5. Right-click pio and click Rename.
6. Type led_pio and press Enter.
1 Nios II software uses this name to access the component. You
must name the PIO led_pio, or else tutorial programs written
for this Nios II system will fail to work in later steps.
f For further details on the PIO, see the PIO Core chapter of the Quartus II
Handbook Volume 5: Embedded Peripherals.
Specify Base Addresses and Interrupt Request Priorities
At this point, you have added all the necessary hardware components to
the system. Now you must specify how the components interact to form
a system. In this section, you assign base addresses for each slave
component, and assign interrupt request (IRQ) priorities for the JTAG
UART and the timer.
SOPC Builder provides the Auto-Assign Base Addresses command
which makes assigning component base addresses easy. For many
systems, including this example design, Auto-Assign Base Addresses is
adequate. However, you can adjust the base addresses to suit your needs.
Below are some guidelines for assigning base addresses:
Nios II processor cores can address a 31-bit address span. You must
assign base address between 0x00000000 and 0x7FFFFFFF.
Nios II programs use symbolic constants to refer to addresses. Do not
worry about choosing address values that are easy to remember.
Address values that differentiate components with only a one-bit
address difference produce more efficient hardware. Do not worry
about compacting all base addresses into the smallest possible
address range, because this can create less efficient hardware.
SOPC Builder does not attempt to align separate memory
components in a contiguous memory range. For example, if you
want an on-chip RAM and an off-chip RAM to be addressable as one
contiguous memory range, you must explicitly assign base
addresses.
SOPC Builder also provides an Auto-Assign IRQs command which
connects IRQ signals to produce valid hardware results. However,
assigning IRQs effectively requires an understanding of how software