DSPRelated.com
Forums

5509A -Booting from a SPI Flash memory

Started by arav...@gmail.com December 1, 2009
I am using TMS320VC5509A processor. I am using a 4 Megabit(512K X 8 bit) Flash memory- M25P40- for a specific application in the same board.This Flash memory is SPI compatable. Is it possible to boot the processor from the same memory using the "Serial (SPI) EPROM Boot (24-bit address) via McBSP0" option?.

Regards
Aravind
Aravind-

> I am using TMS320VC5509A processor. I am using a 4 Megabit(512K X 8 bit)
> Flash memory- M25P40- for a specific
> application in the same board.This Flash memory is SPI compatable. Is it
> possible to boot the processor from the same
> memory using the "Serial (SPI) EPROM Boot (24-bit address) via McBSP0"
> option?.

In the 5509A bootloader doc:

http://focus.ti.com/lit/an/spra375f/spra375f.pdf

both 16-bit and 24-bit SPI EEPROM boot modes appear to be documented. As long as you use separate areas in the Flash
for boot code and for non-volatile storage, I think you should be Ok. Maybe set aside some number of sectors for boot
code, to make it easier to update the code.

-Jeff
Yes, the C5509A will issue a read from address 000000 of the Flash
using command 03.

The Bootloader format allows you to set a number of peripheral ports
and then read several blocks of data. The C5509A will be operating
at crystal speed, without any clock multiplier, and the McBSP0 port
will be operating with a CLKGDV of 243, so the read speed will be
rather slow unless you use the peripheral settings feature to alter
the clock speed. So, with a 12 MHz crystal, that would be under 50
kHz data clock.

Be sure to select the proper GPIO pins at boot time to choose between
16-bit address and 24-bit address, because if you don't match your
Flash, nothing much will happen.

Brian Willoughby
Sound Consulting
On Dec 1, 2009, at 02:58, a...@gmail.com wrote:

> I am using TMS320VC5509A processor. I am using a 4 Megabit(512K X
> 8 bit) Flash memory- M25P40- for a specific application in the same
> board.This Flash memory is SPI compatable. Is it possible to boot
> the processor from the same memory using the "Serial (SPI) EPROM
> Boot (24-bit address) via McBSP0" option?.
Hi,

I didn't use the C5509A but the C550.
The boot software of C5500 include SPI boot mode, but is not full compatible with flash SPI timing
so we used GPIO_3 pin to drive CS of Flash.

based on : Using TMS320C5509 Bootloader SPRA375A.pdf page 11

Flash
5509
Other

CE #
1
142
GPIO4

SO
2
135
DR0

WP #
3
---

10 kom => Vdd

Vss
4

SI
5
131
DX0

SCK
6
134
CLKX0

HOLD #
7
---

10k om =>Vdd

Vdd
8

GPIO 7 6 5 4 3 2 1 0

( BGA )
Flash #CE
Boot 0
Boot 3
Boot 2
Boot 1

6 141 C5509 pin number 142 143 9 10 12

serial EEPROM 24 bit address bootload 0 0 0 1
Jerzy

Aravind-

> I am using TMS320VC5509A processor. I am using a 4 Megabit(512K X 8 bit)
> Flash memory- M25P40- for a specific
> application in the same board.This Flash memory is SPI compatable. Is it
> possible to boot the processor from the same
> memory using the "Serial (SPI) EPROM Boot (24-bit address) via McBSP0"
> option?.

In the 5509A bootloader doc:

http://focus.ti.com/lit/an/spra375f/spra375f.pdf

both 16-bit and 24-bit SPI EEPROM boot modes appear to be documented. As long as you use separate areas in the Flash
for boot code and for non-volatile storage, I think you should be Ok. Maybe set aside some number of sectors for boot
code, to make it easier to update the code.

-Jeff
Hi,

There are two ways to speed up the boot loading.

One way is to write a small boot loader that loads quickly, using this
boot loader you can do some house keeping and then reassign the CLKGDV
and Multiplier and then load the main code with a home made boot loader.

The other way is to use the function built into the 5500's boot loader
where you can write specific memory locations, there is provision to
include a few memory writes, the bootloader documentation covers this
subject.

Sound Consulting wrote:
>
> Yes, the C5509A will issue a read from address 000000 of the Flash
> using command 03.
>
> The Bootloader format allows you to set a number of peripheral ports
> and then read several blocks of data. The C5509A will be operating
> at crystal speed, without any clock multiplier, and the McBSP0 port
> will be operating with a CLKGDV of 243, so the read speed will be
> rather slow unless you use the peripheral settings feature to alter
> the clock speed. So, with a 12 MHz crystal, that would be under 50
> kHz data clock.
>
> Be sure to select the proper GPIO pins at boot time to choose between
> 16-bit address and 24-bit address, because if you don't match your
> Flash, nothing much will happen.
>
> Brian Willoughby
> Sound Consulting
>
> On Dec 1, 2009, at 02:58, a...@gmail.com
> wrote:
>
> > I am using TMS320VC5509A processor. I am using a 4 Megabit(512K X
> > 8 bit) Flash memory- M25P40- for a specific application in the same
> > board.This Flash memory is SPI compatable. Is it possible to boot
> > the processor from the same memory using the "Serial (SPI) EPROM
> > Boot (24-bit address) via McBSP0" option?.