DSPRelated.com
Forums

Primary bootloader and POST???

Started by comm...@yahoo.com October 23, 2007
Hello, i am student of final year at UET lahore. my final year project is to write a primary bootloading routine for dsp c6713 board that checks devices and initializes memory and other devices(Power on self test).
i am currently in a great confusion about what actually is primary bootloader?? i can't just differentiate between primary and secondary bootloaders. can anyone please guide me in this respect. i shall be greatly thankful to you.
regards
Tahir
Hello Tahir,

On 10/22/07, c...@yahoo.com wrote:
> Hello, i am student of final year at UET lahore. my final year project is to write a primary bootloading routine for dsp c6713 board that checks devices and initializes memory and other devices(Power on self test).
> i am currently in a great confusion about what actually is primary bootloader?? i can't just differentiate between primary and secondary bootloaders. can anyone please guide me in this respect. i shall be greatly thankful to you.
I will try to express the boot loader information for your environment.
The terms 'primary bootloader' and 'hardware boot loader' are the
same. When a 6713 is configured for 'ROM boot' and a hardware reset
is applied, the DSP internal hardware state machine enables CE1 and
copies the first 1024 bytes [0x400] in that address space to internal
memory beginning at address 0. At the end of the transfer, the DSP
begins executing at address 0. These 1024 bytes are the primary boot
loader. If your entire program fits within these 1024 bytes, you are
finished or, if you want to execute from ROM, you can branch to and
address in ROM that contains the remainder of your program. If you
require the faster execution of internal RAM, you must have code
within your primary boot loader to copy your ROM code into RAM. The
process of getting the remainder [or the next chunk] of code into RAM
is often referred to as the secondary boot loader. If the additional
code that was loaded was still not the 'real application' and had to
be retrieved from a network or disk drive, it would be referred to as
the tertiary [third level] loader.

I hope that this gets you started.

mikedunn
> regards
> Tahir
>
Hi Tahir,

Do you understand bootloader? The Bootloader is the code that initializes and test the system and allow the transfer of application code from an external source into internal or external program memory.

In some cases, you may want to boot through a peripheral which is not supported by the available boot modes of the processor and the primary Bootloader. For example, you may want to do an Ethernet boot via an EMAC peripheral. First, an Ethernet Bootloader is loaded and then it executes, causing the rest of the application to be loaded via the EMAC peripheral.

Alternatively, there may be a need to customize the functionality provided by the on-chip ROM Bootloader. This can be accomplished
using a Second Stage Bootloader, which can be loaded via any of the supported bootmodes. In both the cases above, we needed the 2nd level/secondary bootloader.

I havent worked on DSP 6713, but have worked on 6455/6482. They have on-chip bootloader, which we can call as primary bootloader. This bootloader initializes the DSP and some of its on-chip peripherals. Since we wanted more from our bootloader, we wrote a secondary bootloader, which can test DSP's memory and its on-chip peripherals. We used to load the second-level bootloader through a host processor using one of DSP's peripheral.

I hope the idea of seconday bootloader is clear now. If still it is unclear, you are welcome to ask again.

- Aradhana
----- Original Message ----
From: "c...@yahoo.com"
To: c...
Sent: Tuesday, October 23, 2007 10:18:29 AM
Subject: [c6x] Primary bootloader and POST???
Hello, i am student of final year at UET lahore. my final year project is to write a primary bootloading routine for dsp c6713 board that checks devices and initializes memory and other devices(Power on self test).
i am currently in a great confusion about what actually is primary bootloader?? i can't just differentiate between primary and secondary bootloaders. can anyone please guide me in this respect. i shall be greatly thankful to you.
regards
Tahir

__________________________________________________