DSPRelated.com
Forums

c672x bootloader + I2C EEPROM Secondary Bootloader

Started by sabapati June 4, 2008
1. The primary bootloader (in ROM of C672x) copies only 1024 bytes
from any chosen external source, i.e. I2C, SPI, Asynchronous..
Memories.
2. The secondary bootloader which should be within this 1024 bytes
should copy the rest of the code(application) to RAM and start
execution.
3. Supposing my application is small enough and can fit inside a 1MB
I2C EEPROM, where can i find a secondary bootloader code which can
copy the rest of application code in I2C EEPROM to RAM(which will fit
in 1024 bytes)
4. The C672X ROM has FastRTS(Math) & DSPLIB(DSP) Libraries inside and
application notes tell us how to use these ROM Libraries.
5. But they don't tell if we can use the I2C routines of the primary
Bootloader in the ROM, and use them in my Secondary Bootloader to
copy my Application Code(in I2C EEPROM) to RAM thus helping my
Secondary Bootloader to be within 1024 bytes

Can anybody help

rdgs

rsp
sabapati,

in general, reading from a I2C eeprom is performed exactly the same way as reading any other I2C bus.
start-send device code-stop-start-send address-stop-start-send read cmd-
stop-start-read a datum-stop

so to copy a 'file' from a I2C eeprom to RAM, just bury the above in a loop that reads the data from
successive addresses and saves the data in successive address in RAM, then jump to the start address
in RAM.

Note:
some I2C eeprom chips will auto increment the address, so the above sequence can be greatly
shortened to
start-send device code-stop-start-send address-stop-start-send sequential read cmd-stop-
start-read datum-read datum-read datum-
(until all data has been transfered)-stop

R. Williams

---------- Original Message -----------
From: "sabapati"
To: c...
Sent: Wed, 04 Jun 2008 06:31:41 -0000
Subject: [c6x] c672x bootloader + I2C EEPROM Secondary Bootloader

> 1. The primary bootloader (in ROM of C672x) copies only 1024 bytes
> from any chosen external source, i.e. I2C, SPI, Asynchronous..
> Memories.
> 2. The secondary bootloader which should be within this 1024 bytes
> should copy the rest of the code(application) to RAM and start
> execution.
> 3. Supposing my application is small enough and can fit inside a 1MB
> I2C EEPROM, where can i find a secondary bootloader code which can
> copy the rest of application code in I2C EEPROM to RAM(which will fit
> in 1024 bytes)
> 4. The C672X ROM has FastRTS(Math) & DSPLIB(DSP) Libraries inside and
> application notes tell us how to use these ROM Libraries.
> 5. But they don't tell if we can use the I2C routines of the primary
> Bootloader in the ROM, and use them in my Secondary Bootloader to
> copy my Application Code(in I2C EEPROM) to RAM thus helping my
> Secondary Bootloader to be within 1024 bytes
>
> Can anybody help
>
> rdgs
>
> rsp
------- End of Original Message -------