Example Direct Code Execution - Analog Devices ADSP-BF506F Hardware Reference Manual

Adsp-bf50x blackfin processor
Hide thumbs Also See for ADSP-BF506F:
Table of Contents

Advertisement

Programming Examples
void xor_initcode (ADI_BOOT_DATA *pBS)
{
pBS->pCallBackFunction = xor_callback;
}
Note that the callback routine is not volatile. It should not be overwritten
by subsequent boot blocks. It can, however, be overwritten after process-
ing the last block with
The checksum algorithm must be booted first and cannot protect itself.
Problems can be avoided by letting initcode and callback execute directly
from off-chip flash memory. The ADSP-BF50x processors provide a
CRC32 checksum algorithm in the on-chip L1 instruction ROM, that can
be used for booting under this scenario. For more information see
Checksum Calculation" on page

Example Direct Code Execution

This code example illustrates how to instruct the CCES or VisualDSP++
tools to generate a flash image that causes the boot kernel to start code
execution at flash address 0x2000 0020 rather than performing a regular
boot. See
"Direct Code Execution" on page
First, a 32-byte data block is defined in an assembly file that contains the
initial block.
.section bootblock;
.global _firstblock;
.var _firstblock[4] = 0xAD7BD006,
24-88
BFLAG_CALLBACK
24-33.
0x20000020,
0x00000010,
0x00000010;
ADSP-BF50x Blackfin Processor Hardware Reference
flag set.
24-22.
"CRC

Advertisement

Table of Contents
loading
Need help?

Need help?

Do you have a question about the ADSP-BF506F and is the answer not in the manual?

Questions and answers

This manual is also suitable for:

Adsp-bf504Adsp-bf504f

Table of Contents