25.12.2012 Views

VisualDSP++ 4.5 Loader and Utilities Manual - Analog Devices

VisualDSP++ 4.5 Loader and Utilities Manual - Analog Devices

VisualDSP++ 4.5 Loader and Utilities Manual - Analog Devices

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

<strong>Loader</strong>/Splitter for Blackfin Processors<br />

Refer to Figure 2-29 <strong>and</strong> Table 2-5 for the flag’s bit descriptions.<br />

Table 2-5. Flag Structure<br />

Bit Field Description<br />

Zero-fill block Indicates that the block is for a buffer filled with zeros. The body of a zero<br />

block is not included within the loader file. When the loader utility parses<br />

through the .dxe file <strong>and</strong> encounters a large buffer with zeros, it creates a<br />

zero-fill block to reduce .ldr file size <strong>and</strong> boot time. If this bit is set, there is<br />

no block body in the block.<br />

Ignore block Indicates that the block is not to be booted into memory; skips the block <strong>and</strong><br />

moves on to the next one. Currently is not implemented for application code.<br />

Initialization<br />

block<br />

Indicates that the block is to be executed before booting. The initialization<br />

block indicator allows the on-chip boot ROM to execute a number of instructions<br />

before booting the actual application code. When the on-chip boot ROM<br />

detects an init block, it boots the block into internal memory <strong>and</strong> makes a<br />

CALL to it (initialization code must have an RTS at the end).<br />

This option allows the user to run initialization code (such as SDRAM initialization)<br />

before the full boot sequence proceeds. Figure 2-30 <strong>and</strong> Figure 2-31<br />

illustrate the process. Initialization code can be included within the .ldr file<br />

by using the -init switch (see “-init filename.dxe” on page 2-67).<br />

See “Initialization Blocks” on page 2-36 for more information.<br />

Processor type Indicates the processor, either ADSP-BF531/BF532/BF538 or<br />

ADSP-BF533/BF534/BF536/BF537/BF539. After booting is complete, the<br />

on-chip boot ROM jumps to 0xFFA0 0000 for the<br />

ADSP-BF533/BF536/BF537/BF539 processor <strong>and</strong> to 0xFFA0 8000 for the<br />

ADSP-BF531/BF532/BF538 processor.<br />

Last block Indicates that the block is the last block to be booted into memory. After the<br />

last block, the processor jumps to the start of L1 memory for application code<br />

execution. When it jumps to L1 memory for code execution, the processor is<br />

still in supervisor mode <strong>and</strong> in the lowest priority interrupt (IVG15).<br />

Compressed<br />

block<br />

Indicates that the block contains compressed data. The compressed block can<br />

include a number of blocks compressed together to form a single compressed<br />

block.<br />

Note that the ADSP-BF534/BF536/BF537 processor can have a special<br />

last block if the boot mode is two-wire interface (TWI). The loader utility<br />

saves all the data from 0xFF903F00 to 0xFF903FFF <strong>and</strong> makes the last block<br />

<strong>VisualDSP++</strong> <strong>4.5</strong> <strong>Loader</strong> <strong>and</strong> <strong>Utilities</strong> <strong>Manual</strong> 2-35

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!