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

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

ADSP-2106x/21160 Processor Booting<br />

Table 3-13. ADSP-2106x/21160 Processor <strong>Loader</strong> Block Tags<br />

Tag Number Block Type Tag Number Block Type<br />

0x0000 final init 0x000A zero pm48<br />

0x0001 zero dm16 0x000B init pm16<br />

0x0002 zero dm32 0x000C init pm32<br />

0x0003 zero dm40 0x000E init pm48<br />

0x0004 init dm16 0x000F zero dm64 (ADSP-21160 only)<br />

0x0005 init dm32 0x0010 init dm64 (ADSP-21160 only)<br />

0x0007 zero pm16 0x0011 zero pm64 (ADSP-21160 only)<br />

0x0008 zero pm32 0x0012 init pm64 (ADSP-21160 only)<br />

0x0009 zero pm40<br />

The kernel enables the boot port (external or link) to read the block<br />

header. After reading information from the block header, the kernel places<br />

the body of the block in the appropriate place in memory if the block has<br />

a block body, or initializes in the appropriate place with zero values in the<br />

memory if the block is a zero block.<br />

The final section, which is identified by a tag of 0x0, is called the final initialization<br />

section. This section has self-modifying code that, when<br />

executed, facilitates a DMA over the kernel, replacing it with user application<br />

code that actually belongs in that space at run time. The final<br />

initialization code also takes care of interrupts <strong>and</strong> returns the processor<br />

registers, such as SYSCON <strong>and</strong> DMAC or LCTL, to their default values.<br />

When the loader utility detects the final initialization tag, it reads the next<br />

48-bit word. This word indicates the instruction to load into the 48-bit Px<br />

register after the boot kernel finishes initializing memory.<br />

The boot kernel requires that the interrupt, external port (or link port<br />

address, depending on the boot mode) contains an RTI instruction. This<br />

RTI is inserted automatically by the loader utility to guarantee that the<br />

3-18 <strong>VisualDSP++</strong> <strong>4.5</strong> <strong>Loader</strong> <strong>and</strong> <strong>Utilities</strong> <strong>Manual</strong>

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

Saved successfully!

Ooh no, something went wrong!