Version control, Reprogramming the firmware and boot code – Sundance SMT335 User Manual
Page 13

Version 3.0
Page 13 of 34
SMT335 User Manual
The ROM holds boot code for the C6000, configuration data for the FPGA, and
optional user-defined code.
A software protection algorithm is in place to prevent programs accidentally altering
the ROM’s contents. Please contact Sundance for further information about re-
programming this device [Error! Reference source not found.Error! Reference
source not found.Error! Reference source not found.Error! Reference source
not found.].
Version control
Revision numbers for both the boot code and FPGA firmware are stored in the Flash
ROM during programming as zero-terminated ASCII strings. These revision numbers
are located using byte offsets from the base of the Flash ROM (0x01400000). The
offsets are held as 4-byte words at the end of the ROM: 0x015FFFF8 for the FPGA
firmware offset and 0x0147FFFC for the boot code offset.
The distribution disk contains a program,
read_version_335.out
, in the directory
Reprogramming\version_control
. You can load and run this program from
code composer to display both the FPGA and boot code version numbers.
Reprogramming the firmware and boot code
The
Reprogramming\flash
directory of the distribution disk contains a utility that
will run under code composer and program the flash ROM. The utility is called
pflashx_y_z.out
, where
x_y_z
is the FPGA version number.
You load the utility with the code composer “Load Program” option from the “File”
menu. Once the program has loaded, you should select “Run” from the “Debug”
menu. The reprogramming process takes a minute or so and should display “Flash
programming complete” when it has finished. After the program has run you should
“Halt” the processor from the “Debug” menu and select “Run Free”. To confirm that
the programming has been successful you should use the Sundance Server to reset
the board and execute one of the supplied test programs.
A detailed description of the reprogramming process is available as an Application
Note [Error! Reference source not found.], which will also help you to develop your
own core in the FPGA.