DSPRelated.com
Forums

When to bootup a DSP chip from an external processor

Started by Jaime A. Aranguren C., SanJaaC Electronics January 11, 2005
I'm curious:

Currently flash memories are goos means for booting up a DSP. They are
not too expensive, not too big, non-volatile and can be reprogrammed in
the field.

Booting from an external processor is also an option for most DSP
chips.

As a survey, when would you prefer booting a DSP from an external
processor, via Host Port Interface, or External Port, or whatever you
want to call it, instead of from external memory, flash for example?
Regards,

JaaC

Hello Jaime,

Most of my DSP boards use PCI or ISA interfaces, so the DSP's host port is 
directly availible to the PC. In a recent stand alone application, I let a 
Rabbit processor (provides TCP/IP and FTP interface) control the DSP via its 
host port. So my experience has been to let something else hold the code and 
boot the DSP. In this last app, I only had to program one set of flash rams 
for the entire project. This was convenient for in field updating.

Clay




"Jaime A. Aranguren C., SanJaaC Electronics" <jaime.aranguren@ieee.org> 
wrote in message 
news:1105459360.374118.10060@f14g2000cwb.googlegroups.com...
> I'm curious: > > Currently flash memories are goos means for booting up a DSP. They are > not too expensive, not too big, non-volatile and can be reprogrammed in > the field. > > Booting from an external processor is also an option for most DSP > chips. > > As a survey, when would you prefer booting a DSP from an external > processor, via Host Port Interface, or External Port, or whatever you > want to call it, instead of from external memory, flash for example? > Regards, > > JaaC >
In one satellite data terminal that I worked on we had one master
processor that had the flash memory to store the code for itself, two
FPGAs and the DSP.  The DSP was loaded over its SCI interface.  This
meant that there was only one large flash memory device saving on cost
(one big device was cheaper than 4 smaller parts) and board real
estate.

Ian

There's a couple situations I can think of where host booting is nice:

- When the host processor has extra flash available, host booting means
that only one flash IC has to be present on the board, since the DSP no
longer needs its own. Saves cost and board space, both sets of firmware
can be upgraded in one shot, and you're less likely to have a board
assembler, or your inventory staff, get two preprogrammed flash chips
mixed up. :)

- On-the-fly reconfigurability: Suppose you have a DSP which has to do
several different things overall, but only needs to do one thing at a
time. You can get a cheaper DSP which only has the code storage you need
for one task, and you can "reboot" it with new code whenever you need it
to do another. The Audio Precision on the desk next to me does this,
AFAIK - it loads in different DSP programs depending on the generation
or analysis that's being performed.

Hope this helps a little.

GM


Jaime A. Aranguren C., SanJaaC Electronics wrote:
> I'm curious: > > Currently flash memories are goos means for booting up a DSP. They are > not too expensive, not too big, non-volatile and can be reprogrammed in > the field. > > Booting from an external processor is also an option for most DSP > chips. > > As a survey, when would you prefer booting a DSP from an external > processor, via Host Port Interface, or External Port, or whatever you > want to call it, instead of from external memory, flash for example? > Regards, > > JaaC >
Jaime A. Aranguren C., SanJaaC Electronics wrote:
> I'm curious: > > Currently flash memories are goos means for booting up a DSP. They
are
> not too expensive, not too big, non-volatile and can be reprogrammed
in
> the field. > > Booting from an external processor is also an option for most DSP > chips. > > As a survey, when would you prefer booting a DSP from an external > processor, via Host Port Interface, or External Port, or whatever you > want to call it, instead of from external memory, flash for example?
Hi Jaime, where I work we manufacture stand-alone hardware boxes for digital audio processing. They usually contain a number of DSPs and a host processor. The host handles the front panel controls, graphics (LCD) and remote control. There is one flash chip from which the host boots. The DSP code is also stored there, and the host boots the DSPs through the external ports (that saves a seperate flash for the DSP). When no host is present (ie. a box with no external control or display) we use boot loading for the DSP from its own flash memory.
> Regards, > > JaaC
I was going to mention those exact two points (single flash and
reconfigurability), but Gary beat me too it.  So I guess I don't have too much
to add other than "I agree" and that the products I've worked on fit that
scenario exactly!

"Gary Marsh" <dont@spam.me.plz> wrote in message
news:y5TEd.69824$nN6.18406@edtnps84...
> There's a couple situations I can think of where host booting is nice: > > - When the host processor has extra flash available, host booting means > that only one flash IC has to be present on the board, since the DSP no > longer needs its own. Saves cost and board space, both sets of firmware > can be upgraded in one shot, and you're less likely to have a board > assembler, or your inventory staff, get two preprogrammed flash chips > mixed up. :) > > - On-the-fly reconfigurability: Suppose you have a DSP which has to do > several different things overall, but only needs to do one thing at a > time. You can get a cheaper DSP which only has the code storage you need > for one task, and you can "reboot" it with new code whenever you need it > to do another. The Audio Precision on the desk next to me does this, > AFAIK - it loads in different DSP programs depending on the generation > or analysis that's being performed.
"Jaime A. Aranguren C., SanJaaC Electronics" <jaime.aranguren@ieee.org> 
wrote in news:1105459360.374118.10060@f14g2000cwb.googlegroups.com:

> I'm curious: > > Currently flash memories are goos means for booting up a DSP. They are > not too expensive, not too big, non-volatile and can be reprogrammed in > the field. > > Booting from an external processor is also an option for most DSP > chips. > > As a survey, when would you prefer booting a DSP from an external > processor, via Host Port Interface, or External Port, or whatever you > want to call it, instead of from external memory, flash for example? > Regards, > > JaaC >
Most of our boards are designed for standalone operation. We provide upload capability to reprogram our boards via USB or RS-232 by writing to onboard flash. On one of our new designs, we also store FPGA configuration in the same flash. The biggest change in my DSP designs is that I almost always use SPI serial flash instead of the byte wide parallel flash. This saves board space and a eliminates a considerable number of traces. -- Al Clark Danville Signal Processing, Inc. -------------------------------------------------------------------- Purveyors of Fine DSP Hardware and other Cool Stuff Available at http://www.danvillesignal.com
Al Clark wrote:
> "Jaime A. Aranguren C., SanJaaC Electronics"
<jaime.aranguren@ieee.org>
> wrote in news:1105459360.374118.10060@f14g2000cwb.googlegroups.com: > > > I'm curious: > > > > Currently flash memories are goos means for booting up a DSP. They
are
> > not too expensive, not too big, non-volatile and can be
reprogrammed in
> > the field. > > > > Booting from an external processor is also an option for most DSP > > chips. > > > > As a survey, when would you prefer booting a DSP from an external > > processor, via Host Port Interface, or External Port, or whatever
you
> > want to call it, instead of from external memory, flash for
example?
> > Regards, > > > > JaaC > > > > Most of our boards are designed for standalone operation. We provide
upload
> capability to reprogram our boards via USB or RS-232 by writing to
onboard
> flash. On one of our new designs, we also store FPGA configuration in
the
> same flash. > > The biggest change in my DSP designs is that I almost always use SPI
serial
> flash instead of the byte wide parallel flash. This saves board space
and a
> eliminates a considerable number of traces. > > -- > Al Clark > Danville Signal Processing, Inc. > -------------------------------------------------------------------- > Purveyors of Fine DSP Hardware and other Cool Stuff > Available at http://www.danvillesignal.com
I think I have booted DSPs at least a half-dozen different ways, including having an 8051 act like a PROM. I like using the host port with the code stored elsewhere. Besides what others have said, here are a couple of advantages and disadvantages of host boot: 1. Host boot is generally slower than a parallel flash boot. Let's say you have to reboot between sending an RF burst and demodulating the response - fast boot required! 2. Host boot does not require DSP flash loader 3. Parallel boot cannot reach all internal addresses in some DSPs, for example TI '5416 upper 64k John
Jaime A. Aranguren C., SanJaaC Electronics wrote:
> As a survey, when would you prefer booting a DSP from an external > processor, via Host Port Interface, or External Port, or whatever you > want to call it, instead of from external memory, flash for example?
No one has mentioned it yet, but I think the best time to boot from the host is during software development. Another time I prefer to boot from the host is when I'm running code to test boot memory. (Especially the part of the test that makes sure erasure is working. ;-) -- Jim Thomas Principal Applications Engineer Bittware, Inc jthomas@bittware.com http://www.bittware.com (603) 226-0404 x536 Quidquid latine dictum sit, altum sonatur. Whatever is said in Latin sounds profound.
Jim Thomas <jthomas@bittware.com> wrote in 
news:10uad90hgaarq5d@corp.supernews.com:

> Jaime A. Aranguren C., SanJaaC Electronics wrote: >> As a survey, when would you prefer booting a DSP from an external >> processor, via Host Port Interface, or External Port, or whatever you >> want to call it, instead of from external memory, flash for example? > > No one has mentioned it yet, but I think the best time to boot from the > host is during software development. > > Another time I prefer to boot from the host is when I'm running code to > test boot memory. (Especially the part of the test that makes sure > erasure is working. ;-) >
I call that using my emulator.;-) -- Al Clark Danville Signal Processing, Inc. -------------------------------------------------------------------- Purveyors of Fine DSP Hardware and other Cool Stuff Available at http://www.danvillesignal.com