RedBoot™ User's Guide: Document Version 1.9, February 2003 | ||
---|---|---|
Prev | Chapter 5. Installation and Testing | Next |
The Samsung CalmRISC32 evaluation platform consists of two boards connected by a ribbon cable. One board contains the CPU core and memory. The other board is called the MDSChip board and provides the host interface. The calmRISC32 is a harvard architecture with separate 32-bit program and data addresses. The instruction set provides no instruction for writing to program memory. The MDSChip board firmware (called CalmBreaker) provides a pseudo register interface so that code running on the core has access to a serial channel and a mechanism to write to program memory. The serial channel is fixed at 57600-8-N-1 by the firmware. The CalmBreaker firmware also provides a serial protocol which allows a host to download a program and to start or stop the core board.
Only a ROM startup RedBoot configuration is supported.
The calmRISC32 core is controlled through the MDSChip board. There is no non-volatile storage available for RedBoot, so RedBoot must be downloaded to the board on every power cycle. A small utility program is used to download S-record files to the eval board. Sources and build instructions for this utility are located in the RedBoot sources in:
.../packages/hal/calmrisc32/ceb/current/support |
To download the RedBoot image, first press the reset button on the MDSChip board. The green 'Run' LED on the core board should go off. Now, use the utility to download the RedBoot image with:
% calmbreaker -p /dev/term/b --reset --srec-code -f redboot.elf |
% calmbreaker -p /dev/term/b --run |
The MDSChip board uses a relatively slow microcontroller to provide the pseudo-register interface to the core board. This pseudo-register interface provides access to the serial channel and write access to program memory. Those interfaces are slow and the serial channel is easily overrun by a fast host. For this reason, GDB must be told to limit the size of code download packets to avoid serial overrun. This is done with the following GDB command:
(gdb) set download-write-size 25 |
The RedBoot image occupies program addresses 0x00000000 - 0x0000ffff and data addresses 0x00000000 - 0x0000ffff.
The instructions in Chapter 3 should be followed. The values for TARGET, ARCH_DIR and PLATFORM_DIR on this platform are “calm32_ceb”, “calmrisc32” and “ceb” respectively. Note that the configuration export files supplied in the hal/calmrisc32/ceb/VERSION/misc directory in the RedBoot source tree should be used.