Building a Table for an On-Chip Boot Loader
10-30
10.9.3.1 Building the Boot Table
To build the boot table, follow these steps:
Step 1: Link the file. Each block of the boot table data corresponds to an
initialized section in the COFF file. Uninitialized sections are not con-
verted by the hex conversion utility (see Section 10.6,
The
SECTIONS Directive, on page 10-22).
When you select a section for placement in a boot-loader table, the
hex conversion utility places the section’s
load address in the des-
tination address field for the block in the boot table. The section
content is then treated as raw data for that block.
The hex conversion utility does not use the section run address.
When linking, you need not worry about the ROM address or the
construction of the boot table —the hex conversion utility handles
this.
Step 2: Identify the bootable sections. You can use the –boot option to tell
the hex conversion utility to configure all sections for boot loading.
Or, you can use a SECTIONS directive to select specific sections to
be configured (see Section 10.6,
The SECTIONS Directive, on page
10-22). Note that if you use a SECTIONS directive, the –boot option
is ignored.
Step 3: Set the ROM address of the boot table. Use the –bootorg option
to set the source address of the complete table. For example, if you
are using the ’C54x and booting from memory location 8000h,
specify –bootorg 8000h. The address field in the the hex conversion
utility output file will then start at 8000h.
If you use –bootorg SERIAL or –bootorg PARALLEL, or if you do not
use the –bootorg option at all, the utility places the table at the origin
of the first memory range in a ROMS directive. If you do not use a
ROMS directive, the table will start at the first section load address.
There is also a –bootpage option for starting the table somewhere
other than page 0.
Step 4: Set boot-loader-specific options. Set such options as entry point
and memory control registers as needed.
Step 5: Describe your system memory configuration. See Section 10.4,
Understanding Memory Widths, on page 10-9 and Section 10.5,
The ROMS Directive, on page 10-16 for details.
Summary of Contents for TMS320C54x
Page 38: ......
Page 39: ......
Page 40: ......
Page 41: ......
Page 42: ......
Page 43: ......
Page 44: ......
Page 45: ......
Page 46: ......
Page 47: ......
Page 48: ......
Page 49: ......
Page 50: ......
Page 51: ......
Page 52: ......
Page 53: ......
Page 54: ......
Page 55: ......
Page 56: ......
Page 57: ......
Page 58: ......
Page 59: ......
Page 60: ......
Page 61: ......
Page 62: ......
Page 276: ......
Page 277: ......
Page 278: ......
Page 279: ......
Page 280: ......
Page 281: ......
Page 282: ......
Page 283: ......
Page 284: ......
Page 285: ......
Page 286: ......
Page 287: ......
Page 288: ......
Page 289: ......
Page 290: ......
Page 291: ......
Page 292: ......
Page 293: ......
Page 294: ......
Page 295: ......
Page 296: ......
Page 297: ......
Page 298: ......
Page 299: ......
Page 300: ......
Page 301: ......
Page 302: ......