Application boot code, Flash hardware image catalog, Table 8–1 – Altera Embedded Systems Development Kit, Cyclone III Edition User Manual
Page 50

Altera Corporation
Development Board Version 1.0.
8–2
July 2010
Altera Embedded Systems Development Kit, Cyclone III Edition
Application Selector Details
Application Boot
Code
All applications which are loaded by the application selector must
contain a Nios II CPU whose reset address is set to CFI flash at offset 0x0.
For this reason, a generic bit of boot code is permanently programmed at
offset 0x0 in the CFI Flash as part of the factory recovery image. This boot
code is very small and only performs the following functions
■
Flushes the Nios II instruction cache
■
Flushes the Nios II instruction pipeline
■
Branches to offset 0x0240000
Offset 0x0240000 is where the application software image is located after
being loaded by the Application Selector, so when the FPGA is
reconfigured, the Nios II CPU executes this boot code, which branches to
the boot copier of the actual application software image, which then
copies the application to program memory, then runs the application.
1
The Application Selector relies on a feature of the configuration
controller in the MAXII device on the board. This feature allows
the Nios II CPU to issue a command to the configuration
controller telling it to reconfigure the FPGA from a specific
location in a parallel flash memory, such as the on-board CFI
flash. The way the Application Selector is able to reconfigure
itself with a new hardware image is by using Nios II to read the
hardware image from the SD Card, program it to some location
in CFI flash, then force the FPGA to reconfigure from that
location using the MAXII configuration controller.
Flash Hardware
Image Catalog
The CFI flash holds up to 10 of the most recently loaded application
hardware images to speed the load times of applications which are
loaded often. To keep track of which hardware images are stored in flash,
a flash image catalog is kept in CFI flash at offset 0x0020000. The
implementation details of this catalog are described in the Hardware
Image Caching section below.
Table 8–1. Memory Map of CFI Flash
Flash Size
Flash Contents
0x0000000 - 0x001FFFF
Application Boot Code
0x0020000 - 0x003FFFF
HW Image Catalog
0x0040000 - 0x00FFFFF
Unused
0x0100000 - 0x023FFFF
Selector SW Image
0x0240000 - 0x1BFFFFF
Application SW Image
0x1C00000 - 0x1FFFFFF
Reserved