You may also want to check out Berkeley Design Technology's
home page, which has a number of articles on choosing DSP processors, as well as a
"Pocket Guide to DSP Processors and Cores"
in downloadable PostScript. Brief overviews of various DSP processors, cores, and
general-purpose processors can be found at
http://www.bdti.com/procsum/index.htm.
Here's a less ambitious chip breakdown by manufacturer:
While the above differences traditionally distinguish DSPs from
GPPs/MCUs, in practise it is not important what kind of processor you
choose. What is really important is to choose the processor that is best
suited for your application; if a GPP/MCU is better suited for your DSP
application than a DSP processor, the processor of choice is the
GPP/MCU. It is also worth noting that the difference between DSPs and
GPPs/MCUs is fading: many GPPs/MCUs now include DSP features, and DSPs
are increasingly adding microcontroller features.
[Ole Wolf,
wolf@bdti.com]
The number for the Analog Devices DSP BBS is (617) 461-4258 (300,
1200, 2400, 9600, 14400 bps), 8N1.
You can also find files on
Analog Devices' web
site, or at their FTP site at ftp://ftp.analog.com.
[Analog Devices DSP Applications, dsp_applications@analog.com]
Lots of Analog Devices, Inc. DSP software is available in their
application books like Digital Signal Processing Applications
Using the ADSP-2100 Family. These books are not free, but they're
not expensive either. There are some major applications like modems, LPC,
GSM codec, speech recognition, etc.
[George Biner, GBiner@bellind.com]
From Andrew Sterian, asterian@umich.edu: "My DSP56K
compiler, while not supported nor as well tested as Motorola's, implements fixed-point arithmetic rather than floating-point arithmetic. This may be suitable for some applications. The 5615 compiler also implements fixed-point arithmetic. To the best of my knowledge, Motorola does not have a C compiler for the 5615 family, although alternatives may exist. As of this writing (January 1997) I have not worked woth Motorola DSPs or compiler software for nearly 5 years so questions regarding my compilers may well be met with "Ummm... I have no idea."
Both compilers were posted to alt.sources so any Usenet site that archives this newsgroup will have a copy. I have also found the 5616 compiler at ftp://ftp.funet.fi/pub/ham/dsp/dsp56k-tools/gcc5616.tar.Z.
[Antti-Pekka Virtanen, antsu@utu.fi]
For the TMS320C54x and TMS320C6x, try
http://www.ti.com/sc/docs/dsps/tools/c54x/softsupp.htm and
http://www.ti.com/sc/docs/dsps/products/c6x/benchmk.htm, respectively.
TI's world-wide web site is
http://www.ti.com.
The TI DSP bulletin board is mirrored on ftp.ti.com, and on
mirriwinni.cse.rmit.edu.au.
The TI site is the official one, but has no user contributed software.
The file: ftp://mirriwinni.cse.rmit.edu.au/mirrors/tibbs/00readme (might be broken)
provides further guidance. Please restrict FTP session to outside
of 8 am to 6 pm local time (10 pm to 8 am GMT). [Brad Hards, bradh@gil.com.au]
{ If anyone knows of any other sources for TI DSP software, please
let us know at comp-dsp-faq@bdti.com. Thanks! }
[Dr. Michael P. Hayes, m.hayes@elec.canterbury.ac.nz]
Ted Rossin has written an assembler and linker for the TMS320C30.
In his words, "It is somewhat limited by the fact that it
can't handle expressions but it has worked fine for me over the
past few years. There is no manual because it is a clone of the
TI assembler and linker. However the linker command files use
a different (easier to use) syntax. It runs on HP-UX workstations,
Macs, IBM clones and believe it or not the Atari-ST (because I
developed the code on it)."
[Ted Rossin, rossin@fc.hp.com]
Dr. Michael P. Hayes has written a GNU-based assembler for the TMS320C30
and TMS320C40 families, available at http://www.elec.canterbury.ac.nz.
The current version patches against binutils-2.7. According to Michael
Hayes, the assembler syntax is compatible with the Texas Instruments
TMS320C30 assembler, although not all the Texas Instruments directives
are supported. The binutils include a linker (ld), archiver (ar),
disassembler (objdump), and other miscellaneous utilities. The object
format of the assembler is compatible with the COFF format used by the
Texas Instruments assembler. The assembler and other binary utilities
are freely redistributable under the terms of the GNU Public Licence.
[Dr. Michael P. Hayes, m.hayes@elec.canterbury.ac.nz]
A freely distributable instruction set architecture simulator is
available for the TMS320C30 DSP as part of the Web-Enabled Simulation
framework from UT Austin at http://anchovy.ece.utexas.edu/~arifler/wetics/.
We have released all of the source code, as well as prebuilt C30 simulators
for Windows '95/NT and Solaris 2.5 architectures.
The C30 simulator is bit-, cycle-, and instruction-accurate. The behavior
of the C30 simulator has been validated against a C30 DSK board. The C30
simulator correctly reports interlocking and pipeline flushes, so it provides
a convenient way to check C30 programs for these hidden delays. The C30
simulator is based on the C30 DSK tools by Keith Larson at Texas Instruments.
[Brian Evans, bevans@combo.ece.utexas.edu]
Herman Ten Brugge (haj.ten.brugge@net.hcc.nl) has also written a GNU
debugger (GDB) based simulator for the TMS320C30 and TMS320C40,
available via anonymous FTP at http://www.elec.canterbury.ac.nz/c4x.
This is freely redistributable under the terms of the GNU Public
Licence.
This simulator allows you to debug your programs without having to a
connect to a real C[34]x target system. It will also profile your
code showing you where the pipeline conflicts are occuring. You can
connect I/O ports to files (or TCP/IP sockets), trigger interrupts,
examine the cache etc. It will detect different threads of control
running and generate a profile summary for each thread, annotating
both the C code and assembler code with the number of executed cycles.
[Dr. Michael P. Hayes, m.hayes@elec.canterbury.ac.nz]
It is available from: ftp://mirriwinni.cse.rmit.edu.au/mirrors/tibbs/UserContributed.
Supports: Transtech, Hunt, and Traquair boards hosted by DOS,
SunOS, Linux (a PC unix)
Q3.1: What are the available DSP chips and chip architectures?
Updated 9/24/98Analog Devices:
Lucent Technologies (formerly AT&T Microelectronics):
Motorola:
Texas Instruments:
Q3.2: What is the difference between a DSP and a microprocessor?
Updated 9/24/98
Q3.3: Software for Analog Devices DSPs
Updated 8/16/99
Q3.3.2: Where can I get algorithms or libraries for Analog
Devices DSPs?
Q3.4: Software for Lucent Technologies (Formerly AT&T) DSPs
Q3.5: Software for Motorola DSPs
Q3.5.1: Where can I get a free assembler for the Motorola DSP56000?
Q3.5.2: Where can I get a free C compiler for the Motorola
DSP56000?
Q3.5.3 Where can I get a disassembler for the Motorola DSP56000?
Q3.5.4: Where can I get algorithms and libraries for Motorola
DSPs?
Q3.5.5: Where can I get NeXT-compatible Motorola DSP56001 code?
Q3.5.6: Where can I get emulators for the 68HC11 (6811) processor?
Q3.6: Software for Texas Instruments DSPs
Updated 9/13/99Q3.6.1: Where can I get free algorithms or libraries for TI DSPs?
Q3.6.2: Where can I get free development tools for TI DSPs?
Q3.6.3: Where can I get a free C compiler for the TI TMS320C3x/4x?
Q3.6.4: Where can I get a free assembler for the TI TMS320C3x/4x?
Q3.6.5: Where can I get a free simulator for the TI TMS320C3x/4x?
Q3.6.6: What is Tick? Where can I get it?