Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Jdusjallaestudio DSPs
Jdusjallaestudio DSPs
Ing. Telecomunicacin
INDICE
1.1 Introduccin
12
15
18
20
22
24
27
30
3 DSPs de Motorola
33
33
34
3.3 DSP96002
35
37
38
39
40
41
43
Bibliografa
49
49
Ing. Telecomunicacin
1.1 Introduccin
En el presente trabajo se pretende hacer una descripcin del mercado actual de
Procesadores Digital de Seal (DSP). A pesar de que el nmero de fabricantes de DSPs
es cada vez ms elevado, en este estudio slo nos vamos a centrar en los tres principales
fabricantes: Texas Instruments, Motorola y Analog Devices.
Primero se har un estudio pormenorizado de las diferentes familias de DSPs
que ofrece cada fabricante, resaltando sus caractersticas diferenciales de unas respecto
a las otras.
El primer fabricante en ser abordado es Texas Instruments. Este lugar es de
justicia ya que fueron los pioneros en esta nueva clase de dispositivos.
El segundo fabricante estudiado es Motorola. Aunque se sum al mercado de
DSPs con cierto retraso, ha conseguido ocupar un lugar destacado dentro de un
mercado tan competitivo.
El tercer y ltimo fabricante estudiado es Analog Devices. Este fabricante es uno
de los que ha experimentado un mayor incremento de cuota de mercado en los ltimos
aos. Las razones fundamentales de este desarrollo radica en la gran cantidad de
memoria integrada en el mismo chip y el precio econmico.
El trabajo concluye con una tabla en la que aparecen la mayor parte de los
DSPs del mercado agrupados por las caractersticas de precisin que ofrecen. En esta
tabla no slo aparecen los tres fabricantes anteriormente citados sino tambin el resto de
fabricantes.
Ing. Telecomunicacin
i=0
i=0
y[n] = a i x (n i ) + bi x (n i )
Para conseguir este resultado, la clsica arquitectura Von Neuman ha sido
modificada. En la arquitectura Von Neuman exista un nico banco de memoria en el
que se encontraba tanto la memoria de programa como los datos. En la arquitectura
Harvard, se diferencian la memoria de programa de la de datos..
Por tanto, una de las caractersticas bsicas de los DSPs es la existencia de
varios bancos de memoria. Otro hecho diferencial es que se pretende que en un nico
ciclo de instruccin se pueda decodificar la instruccin, traer dos datos de memoria,
realizar una operacin MAC en la ALU y cargar la siguiente posicin de memoria de
programa. Para conseguir estos resultados se recurre, aparte de aumentar el nmero de
bancos de memoria, a la existencia de varias unidades de proceso trabajando en
paralelo.
DSPs de coma fija: los datos se representan en formato de coma fija. Presentan el
problema de la limitacin del rango dinmico de los datos que pueden representar.
Por contra, su precio es bastante ms econmico que los de coma flotante. El
nmero de bits usados para representar los datos vara entre los DSPs de 16 bits y
los de 24 bits. Los primeros se aplican sobre todo en control, telecomunicaciones y
codificacin de voz. Los segundos tienen prcticamente totalmente copado el
mercado del audio profesional, siendo una solucin intermedia entre los DSPs de
coma fija de 16 bits y los de coma flotante de 32 bits.
DSPs de coma flotante: los datos son representados con formato de coma flotante.
Su rango dinmico es mucho mayor que los de coma fija, aunque su precio es
Ing. Telecomunicacin
Ing. Telecomunicacin
Texas Instruments
Ing. Telecomunicacin
Ing. Telecomunicacin
C8x
Rendimiento
320C80/-40/-50
Multiprocesador
DSP
- Mximo Rendimiento
- Aplicaciones Multimedia
- 2 BOPS
C4x
C3x
320C30/C30-27/-40/-50
320C/LC31
320C31-27/-40/-50/-60
320C32-40/-50
320C40-40/-50/-60
320C44-40/-50/-60
- Muy Alto Rendimiento
- Procesamiento en
Paralelo.
- 60 MFLOPS
32-bit
Punto Flotante
C54x
320C/LC/VC541
320C/LC/VC542
- Alto Rendimiento.
320LC543/VC543
C5x
- 60 MFLOPS
320LC544/VC544
320LC545/VC545
C2xx
320C50/C50-57/-80 320LC546/VC546
320LC50
320LC548/VC548
C2x
320C/BC51/51-57/-80
320C203/LC203-40/-57/-80 320C/BC52/52-57/-80
C1x
320C204-40/-57/-80
320LC52-57
320C25/P25-40/-50
320C205-40/-57/-80
320C10/C10-25 320C26
320C/BC53/53-57/-80
320F206-40/-57/-80
320C14/P14
320LC56/57
320C28/C28-50
- 100 MIPS
320LF207-40/-57/-80
320C/P/LC15 320C203/-57/-80
320BC57S
AVxxx
320C209-40/-57
320C/LC16
320C209-/57
- Alto Rendimiento
320C240-40
320C/P/LC17
320AV310
- Alta Integracin.
-12 MIPS
320F240-40
320C/P17-25
40-50 MIPS
320AV120
- Muy Bajo Coste
320AV220
Optimizacin
- Perifricos
Rendimiento / Coste
320AV420
- 6 MIPS
16-bit
Coma Fija
40 MIPS
Generacin
A continuacin veremos una a una las diferentes familias que aparecen en esta
grfica.
Ing. Telecomunicacin
Puntos destacados:
Aplicaciones Fundamentales:
Caractersticas :
Ing. Telecomunicacin
APLICACIONES EN
TELECOMUNICACIN
C17
C16
C14
MS MEMORIA
FUNCIONES DE
CONTROL
C15
NCLEO DE LA
GAMA C1x
C10
BAJO COSTE
FAMILIA TMS320C1x
10
Ing. Telecomunicacin
RAM de datos
256x16
ROM de
programa
4kx16
A(11-0)
D(15-0)
Registro T de 16bit
Registro de
desplazamiento de 16 Multiplicador16x16
bits
Registro P de 32 bit
8 Puertos
E/S 16 bits
ALU de 32 bits
Shift L(0,1,4)
2 registros auxiliares
Registro de estado
Diagrama de bloques
TMS320C15
2.2 Familia TMS320C2x
11
Ing. Telecomunicacin
Puntos destacados:
Aplicaciones Fundamentales:
Caractersticas :
12
Ing. Telecomunicacin
RAM
de Datos
B0
256x16
RAM
D/P
B1
256x16
ROM
de Datos
B2
256x16
ROM
de Programa
B2
256x16
A(15-0)
D(15-0)
CPU
Registro
de
desplazamiento
de 16 bits
( L)
Puertos de
E/S (16x16)
Registro
T
de 16 bits
ALU de 32 bits
Acumulador de 32 bits
ShiftL
(0-7)
8 Registros Auxiliares
8 niveles de anidamiento pila
Dos registros de estado
Contador de repeticin
Contador
Puerto
serie
sncrono
Diagrama de bloques
TMS320C2x
Damin Martnez Muoz
13
Ing. Telecomunicacin
Multiplicador/ALU TMS320C2x
BUS DE PROGRAMA
16
16
16
Desplamiento
izquierda
16
Registro T (16)
16
MUX
16
Multiplicador (16x16)
32
Registro P (32)
32
Desplazamiento
izquierda (0-16)
32
32
MUX
32
32
CC
16
14
Ing. Telecomunicacin
Puntos destacados:
Aplicaciones Fundamentales:
Aplicaciones telefnicas.
Terminales punto de venta.
Sistemas de seguridad.
Telecomunicaciones.
Redes de comunicaciones.
Servomecanismos y control de motores.
Detectores Radar.
Cmaras digitales.
Modems.
CD Roms.
Caractersticas :
Hasta 4.5k de memoria RAM de datos/programa interna.
En algunas versiones hasta 32k palabras de memoria flash interna
(F206/F207).
16 pines de E/S de propsito general.
ALU/acumulador de 32 bits.
Multiplicador paralelo de 16x16 bits con resultado de 32 bits.
Arquitectura optimizada para permitir que las instrucciones repetitivas se
ejecuten de forma eficiente.
Timer interno de 16 bits.
Registro de desplazamiento de 16 bits.
8 niveles de anidamiento en la pila.
Existe modo de bajo consumo.
15
Ing. Telecomunicacin
C54x
Generacin
C5x
Generacin
C2xx
Generacin
C2x
Generacin
Ordenador
Industria
Consumo
Telefona
C1x
Generacin
16
Ing. Telecomunicacin
FLASH
32Kx16
C24x 16Kx16
RAM (datos/Prog)
doble-puerto
544x16
RAM(Datos/Prog)
Acceso Simple
4Kx16
ROM
4Kx16
C24x 16Kx16
Control
de Emulacin
D(15-0)
A(15-0)
BUS DE DATOS/PROGRAMA
Registro de
Desplazamiento
16 bits (L)
Registro T (16 b)
Multiplicador (16x16)
Desplazamiento (0,1,4-6)
FUENTE
DE
ALIMENTACIN
DESPLAZAMIENTO L (0-7)
8 REGISTROS AUXILIARES
8 NIVELES DE PILA (HW)
INSTRUCCIONES DE REPETICIN
2 REGISTROS DE ESTADO
DIAGRAMA DE BLOQUES
C2xx
Damin Martnez Muoz
B
U
S
DE
P
E
R
I
F
E
R
I
C
O
S
10-bits ADC2
Ing. Telecomunicacin
Puntos destacados:
Aplicaciones Fundamentales:
Audio digital.
Grficos 3-D.
Impresoras lser, fotocopiadoras, escners.
Escners de cdigo de barras.
Video conferencia.
Automatizacin industrial y robtica.
Correo de voz y Faxs.
Servomecanismos y control de motores.
Redes de comunicaciones.
Caractersticas :
18
Ing. Telecomunicacin
CACHE
64x32
RAM
(Doble puerto)
1Kx32
256x32(C32)
RAM
(Doble puerto)
1Kx32
512x32(C32)
ROM
4Kx32 (C30)
Boot (C31/C32)
Puerto Principal
Interfaz de Memoria
Acceso de Datos
32 bits(C30-C31)
8/16/32 bits(C32)
Acceso al programa
32 bits (C30-C31)
(3)-D(31-0)
(4)-A(23-0)
Reset
Int3-0
Iack
XfI-0
H1
H1
Mcbl/Mp
X2/Clkin
Vdd ,Vss
Shz
Emu6-0
X1
C
o
n
t
r
o
l
a
d
o
r
CPU
Multiplicador
de enteros y
coma flotante
ALU
de enteros y
coma flotante
8 Registros de Precisin
Coprocesador
DMA
DMA
Canal 0
TCLK0
Timer 0
TCLK1
Timer 1
CLKX0
DX0
FSX0
CLKR0
DR0
FSR0
8 Registros Auxiliares
Generacin
Direccines 0
Generacin
Direccines 1
DMA
Canal 1
Puerto Serie 0
12 Registros de Control
2 Modelos de muy Bajo Consumo
(C31-C32)
CLKX1
DX1
FSX1
CLKR1
DR1
FSR1
19
Ing. Telecomunicacin
Puntos destacados:
Hasta 60 MFLOPS.
Gran incremento de potencia de clculo y de comunicaciones.
Capacidad de multiproceso.
Escalabilidad.
Tolerante a fallos.
Aplicaciones Fundamentales:
Caractersticas :
20
Ing. Telecomunicacin
UNIDADES DE PROCESO:
Coprocesador DMA.
CPU Alto Rendimiento.
Rendimiento
del
TMS320C4x
Ciclo de instruccin
25 ns
CPU 8OPS/Cycle
320 MOPS
2 Accesos de Datos
80 MOPS
1 Multiplicacin FP
40 MOPS
1 Operacin FP (ALU)
40 MOPS
1 Contador de bucle
40 MOPS
1 Bsqueda instruccin
40 MOPS
2 Registros de Direcciones 40 MOPS
Coprocesador DMA
3 OPS/Ciclo
120 MOPS
1 Acceso de Datos
40 MOPS
1 Incremento del Contador
de Transferencias
40 MOPS
1 Registro de Direccines 40 MOPS
TOTAL MOPS =
440 MOPS
TRANSFERENCIA DE DATOS
Puerto Global
160 Mbytes/sec.
Puerto Local
160 Mbytes/sec.
6 Puertos de
Comunicaciones
192 Mbytes/sec.
TOTAL E/S =
512 Mbytes/sec.
21
Ing. Telecomunicacin
Puntos destacados:
Aplicaciones Fundamentales:
Caractersticas :
22
Ing. Telecomunicacin
RAM (Datos/Prog)
ROM
Control
de Emulacin
D(15-0)
A(15-0)
BUS DE DATOS/PROGRAMA
Registro de
Desplazamiento
(Pre-Post)
Multiplicador (16x16)
Desplazamiento
(ACC,PROD)
ALU (32 bits)
FUENTE
DE
ALIMENTACIN
PPL
PLU
DESPLAZAMIENTO (0-7)
8 REGISTROS AUXILIARES
8 NIVELES DE PILA (HW)
32 bits ACC & 32 bits ACC buffer
REGISTROS DE ESTADO
DIAGRAMA DE BLOQUES
C5x
Damin Martnez Muoz
B
U
S
DE
P
E
R
I
F
E
R
I
C
O
S
PUERTO SERIE 1
PUERTO SERIE 2**
TIMERS
ESTADOS DE ESPERA (SW)
PUERTOS DE E/S
INTERFAZ DEL PUERTO
HOST*
23
Ing. Telecomunicacin
Puntos destacados:
Hasta 66 MIPS.
Operacin Viterbi integrada.
Tres modos de bajo consumo.
Diferentes configuraciones de RAM y ROM internas.
Puerto serie con auto-buffer.
Interfaz puerto host.
Encapsulado ultra pequeo (100, 128 y 144 pins TQFPs).
Aplicaciones Fundamentales:
Caractersticas :
66 MIPS.
Acelerador Viterbi integrado.
Opera a 2.7 y 5V.
Direcciones de 40 bits y dos acumuladores de 40 bits para la ejecucin de
operaciones en paralelo.
ALU de 40 bits configurable como dos de 16 con capacidad de realizar dos
operaciones en un nico ciclo.
Multiplicador 17x17 que permite las operaciones con enteros con y sin
signo.
4 buses internos y dos generadores de direcciones que permiten realizar
diferentes operaciones y facilitan el acceso a memoria.
8 registros auxiliares.
Dispone como herramienta del compilador de c para DSP de coma fija ms
avanzado del sector.
Modos de bajo consumo para aplicaciones en que se usan bateras.
24
Ing. Telecomunicacin
ROM(Datos/Prog)
RAM(Datos/Prog)
Control de Emulacin
D(15-0)
A(15-0)
FUENTE
DE
ALIMENTACIN
BUS DE DATOS/PROGRAMA
MAC
17x17 MPY
RND SAT
SUMADOR 40 BIT
ALU
ALU 40 BIT
OPERAC. CMPS
CODIF. EXPONENCIAL
DESPLAZAMIENTO
40 BITS
( 16 31)
ACUMULADORES
40 BITS ACC A
40 BITS ACC B
UNIDAD DE DIRECCIONAMIENTO
8 REGISTROS AUXILIARES
2 UNIDADES DE DIRECCIONAMIENTO
DIAGRAMA DE BLOQUES
C54x
Damin Martnez Muoz
B
U
S
DE
P
E
R
I
F
E
R
I
C
O
S
PUERTO SERIE
PUERTO SERIE TDM
TIMER
GENERADOR DE RELOG(PLL)
GENERADOR SW DE
ESTADOS DE ESPERA
INTERFAZ DE PUERTO HOST
25
Ing. Telecomunicacin
SECCION ANALOGICA EN BB
SECCION DIGITAL EN BB
Interfaz
de
AUDIO
Interfaz
TMS320C54x
DSP
RF
Codif./Decodif de VOZ
Correccin de Errores
Codif/Decodif de CANAL
Ecualizacin
Demodulacin
Encriptacin
Microcontrolador
INTERFAZ
HOMBRE/MAQUINA
ANTENA
TRANSMISIN
y RECEPCIN
en RF
SPEAKER MICRO
PANTALLA
TECLADO
TARJETA SIM
SOLUCIN PARA UN
TELEFONO MOVIL DIGITAL
26
Ing. Telecomunicacin
Puntos destacados:
Arquitectura de C8x :
Arquitectura MIMD (Mltiple instruccin - Mltiple dato) totalmente
programable.
Instrucciones avanzadas de DSP.
Procesador principal RISC de 32 bit.
Controlador de transferencia.
Velocidad de transferencia de hasta 400 Mbytes/sec.
Capacidad de direccionamiento hasta 4 Gbytes.
Ciclos de instruccin de 17, 20 y 25 ns.
TMS320C80 :
Controlador de vdeo.
4 DSPs trabajando en paralelo.
50 kbytes de RAM interna.
2 BOPS.
Encapsulados 305 pins PGA, 352 BGA.
TMS320C82 :
2 DSPs trabajando en paralelo.
44 kbytes de RAM interna.
1.5 BOPS.
Encapsulado 352 BGA.
Aplicaciones Fundamentales:
Vdeo conferencia.
Vdeo telfonos.
Telecomunicaciones a alta velocidad.
Procesamiento de imagen y vdeo.
Estaciones de trabajo multimedia.
Aceleradores de grficos 2-D y 3-D.
Realidad virtual.
Seguridad.
Sistemas de rdar y snar.
Caractersticas :
27
Ing. Telecomunicacin
PALETA
DE
PANTALLA
V
R
A
M
D
R
A
M
TMS320C80
CAPTURA
DE
VIDEO
CONTROL
CODIFICADOR
DE
AUDIO
( 16 Bits)
DE
MEMORIA
PCI I/F
CHIP XDS
EN TARJETA
TARJETA DE
DESARROLLO DE SW
DEL TMS320C8x
28
Ing. Telecomunicacin
DSP
AVANZADO
G
L
I
DSP
AVANZADO
G
L
I
DSP
AVANZADO
G
L
I
DSP
AVANZADO
G
L
I
RISC
MP
64
32
32
64
32
32
64
32
32
64
32
32
FLU
CONTROLADORES
DE
VIDEO
CAPTURA
VIDEO
32
64
64
CROSSBAR
50 Kbytes SRAM - TMS320C80
44 Kbytes SRAM -TMS320C82
R
E
L
O
J
E
S
64
CONTROLADOR
DE
TRANSFERENCIA
29
Ing. Telecomunicacin
30
Ing. Telecomunicacin
DECODIFICADOR
DE AUDIO
MPEG
AV120
Proporciona un coste bajo para la
implementacin de algoritmos de codificacin
de audio MPEG ( Layers 1 y 2 )
DECODIFICADOR
DE VIDEO
CD
MPEG
AV220
Basado en el decodificador de video
CL450 de CCube con caractersticas
especificas para Video CD integradas .
DECODIFICADOR
DE VIDEO
CD
MPEG
AV220
Convierte las secuencias de bits de salida ,
RGB or YUV del AV220 a una seal
analgica NTSC para TV .
Damin Martnez Muoz
CHIPSET
VIDEO
CD
UN CHIPSET
VERSATIL Y
OPTIMIZADO
31
Ing. Telecomunicacin
MOTOROLA
32
Ing. Telecomunicacin
3 DSPs de Motorola
Motorola, aunque entr a competir en el mercado de los DSPs relativamente
tarde (1987), ha conseguido tener un peso relativamente importante en este mercado. El
primer DSP que sac a mercado (DSP56000/56001) era de coma fija pero de 24 bits.
Este valor de precisin ocupa un valor intermedio ocupa un valor intermedio entre la
precisin que aporta la coma fija de 16 bits con la coma flotante de 32 bits. Este DSP
desde su aparicin tuvo una elevada aceptacin sobre todo en lo que se refiere a
aplicaciones con audio.
Actualmente la familia de DSPs que Motorola ofrece son:
33
Ing. Telecomunicacin
que acceden a la memoria de datos RAM X, y a la memoria externa para los valores de
la memoria Y.
Modos de direccionamiento.
El DSP561xx soporta direccionamiento directo, indirecto (postincremento
/decremento por 1 u offset e indexado con offset) y direccionamiento inmediato. El
generador de direcciones tambin soporta direccionamiento circular y bit reverse (til
para hacer la FFT).
Instrucciones especiales.
El DSP561xx proporciona instrucciones para realizar bucles tales como do y
repeat; solamente los bloques que se repiten usando la instruccin do son
interrumpibles.
Soporte.
Motorola vende el Sistema para Desarrollo de Aplicaciones con
operaciones de emulacin in-circuit usando las caractersticas de emulacin on-chip de
los DSPs. El emulador on-chip permite puntos de ruptura fijos, ejecucin paso a paso, y
la lectura/modificacin de memoria registros. Motorola proporciona un compilador de
C Gnu, un debuger, un linkador/ensamblador y un simulador.
34
Ing. Telecomunicacin
una memoria cach interna. Un cuarto bus , el bus global de datos, es un bus lgico
simple de 24 bits que transfiere datos hacia y desde perifricos on-chip. Podemos
cambiar cualquiera de las posiciones de memoria internas y externas de 16 bits y los
buses de datos de 24. Cuando el DSP56000 almacena valores de 56 bits en registros de
memoria de 24 podemos desplegar una operacin de desplazamiento de un bit y saturar
el valor a 1.0. A diferencia de otros DSPs, las memorias X e Y del DSP56000 tienen
sus propios espacios de memoria, los cuales incluyen RAM on-chip y ROM para las
direcciones superiores. Una unidad de intercambio de bus interno gestiona las
transferencias entre los buses internos y el nico bus externo. La unidad de
manipulacin de bits ejecuta operaciones de bits en posiciones de memoria y registros
de datos, de control y de direcciones.
Modos de direccionamiento.
El 56000 soporta direccionamiento directo a registro, directo a memoria,
indirecto a registro, inmediato, y bit reverse.
Instrucciones especiales.
El 56000 ejecuta bloques do/end-do, manipulaciones de bit, comparacin,
divisin, saltos si el bit est activo/inactivo, saltos incondicionales a subrutinas y
movimiento de memoria de programa. Ejecuta operaciones lgicas slo desde el bit 24
al 47 del acumulador; estos bits representan la parte ms significativa de los datos.
Soporte.
Motorola ofrece varias placas de evaluacin del DSP5600x de bajo coste ;
tambin un sistema de desarrollo y aplicacin a 40 MHz. Otras herramientas hardware
tambin estn disponibles. El DSP56000 usa una interfaz de debug propia, On Chip
Emulator (OnCE), en lugar del interfaz estndar JTAG. Motorola aporta un compilador
Gnu y un debugger, un ensamblador-linkador y un simulador. Otros fabricantes
proporcionan paquetes de adquisicin de datos y de diseo de filtros as como software
OS.
3.3 DSP96002
El DSP96002 de Motorola es bsicamente una extensin a 32 bits en coma
flotante del DSP56000 de coma fija de 24 bits. El 96002 tiene 5 buses internos para
acelerar el procesamiento de operaciones mltiples. Estos buses incluyen un conjunto
de buses de memoria X e Y y de programa. Tambin incluye un bus de datos global
para transferir direcciones y datos locales, y tambin un bus DMA que soporta dos
canales DMA. El controlador DMA on-chip mueve datos sin interrumpir la ejecucin
de instrucciones en el DSP.
El DSP96002 tiene tambin dos interfaces de bus externos de 32 bits con soporte
de modo paginado DRAM. Estas interfaces externas tienen capacidad multimaster
incorporada. Otros DSPs 96002 o un procesador host puede realizar una peticin del
bus y controlar el bus y usarlo para acceder a la memoria externa compartida o a la
memoria interna del 96002.
El DSP96002 de Motorola presenta un modelo de programacin casi idntico al
del anterior procesador DSP56000 de coma fija de 24 bits. Los ingenieros de Motorola
ampliaron el conjunto de instrucciones con instrucciones de coma flotante y extendieron
los registros incluyendo los de direccionamiento desde 16 a 32 bits.
35
Ing. Telecomunicacin
36
Ing. Telecomunicacin
ANALOG DEVICES
37
Ing. Telecomunicacin
38
Ing. Telecomunicacin
39
Ing. Telecomunicacin
El ADSP-21020 proporciona los cimientos para el SHARC DSP de Analog Devices. Como
los anteriores DSPs de Analog, el ASDP-21020 utiliza palabras de instruccin de 48 bits para
codificar mltiples operaciones por instruccin. La instruccin ms compleja puede ejecutar 3
clculos, 2 desplazamientos de datos y la actualizacin de 2 punteros en un solo ciclo. Sin embargo,
tenemos la desventaja de que las palabras de instruccin extensas aumentan el coste del sistema; el
21020 necesita acceder a memorias externas dobles. La arquitectura Harvard del chip soporta 2
generadores de direcciones de datos (DAGs) y 2 buses externos con estados de espera
programables: un bus de instruccin de 48 bits y otro de datos de 40 bits con 24 y 32 bits de
direccionamiento respectivamente.
El 21020 carece de memoria de programa y de datos on-chip. Sin embargo, la CPU lleva a
cabo instrucciones de acumular-multiplicar (MAC) en un nico ciclo de intruccin mediante la
ejecucin de instrucciones posicionadas en la memoria cach on-chip de 32 palabras del 21020 y
obteniendo los coeficientes y los datos desde memoria externa.
A diferencia de los DSPs anteriores, el ADSP-21020 no es un diseo basado en acumulador.
Las operaciones se centran en una matriz de 32x40 bits, 10 puertos de registro de fichero que
soportan mltiples acumuladores y registros permitiendo ms flexibilidad para la compilacin en C
y el ensamblado de programas. Los registros de datos soportan formatos de coma fija y coma
flotante, dependiendo de cmo la instruccin haga referencia a ellos. El 21020 tiene 10 puertos con
slo 9 activos en un ciclo, que enlazan las tres unidades computacionales DSP y los buses de datos
y de programa al fichero de registro. Para un mayor cambio de contexto, el DSP oculta ste fichero
de registro y todos los registros DAG.
Las tres unidades computacionales del ADSP-21020 comprenden un multiplicador de coma
flotante con dos acumuladores de coma fija; un registro de desplazamiento de 32 bits; y una ALU
que ejecuta operaciones matemticas tanto coma fija y coma flotante. Los acumuladores de 80 bits
proporcionan 16 bits de cabecera para la expansin de bit, que es especialmente til para largas
cadenas MAC. Las tres unidades pueden operar en paralelo, cada una con entradas y salidas al
fichero de registro. Las operaciones son concurrentes, a menos que se produzca un conflicto como
cuando dos unidades acceden al mismo registro. Cada unidad funcional trabaja en un slo ciclo de
reloj.
El registro de indicadores de la ALU retiene los resultados de 8 operaciones de comparacin
de la ALU. Los bits del registro de indicadores forman un registro de desplazamiento a la derecha.
Cuando el procesador ejecuta una operacin de comparacin de la ALU, estos bits se desplazan
hacia el menos significativo.
Los dos DAGs del 21020 acceden a las zonas de datos X e Y. Cada generador de
direcciones posee 8 conjuntos de registros que soportan 16 bufferes circulares simultneos; cada
conjunto de registros abarca el ndice, modificacin, base y longitud de los registros. Los bufferes
circulares pueden residir en cualquier direccin de memoria y su longitud puede ser arbitraria y son
esenciales para la gestin de lineas de retardo y de datos en transformadas en el dominio del tiempo
y la frecuencia.
El 21020 minimiza el uso de los estados de programa ofreciendo ejecuciones condicionales
de la mayora de las instrucciones: la instruccin utiliza un test de condicin preliminar y si sta es
positiva se ejecuta la instruccin.
40
Ing. Telecomunicacin
Modos de direccionamiento.
Inmediato con 32 bits, indexado, de bit-reverse, mdulo-circular, por registro directo y
direccionamiento indirecto. Sin embargo, debemos usar direccionamiento indirecto para acceder a
memoria externa.
Instrucciones especiales.
El 21020 desarrolla manipulaciones de bit, iteraciones de divisin, llamadas a subrutinas
condicionales, bucles de una nica instruccin o un bloque de instrucciones, comparaciones en
coma fija y coma flotante y ejecuciones condicionales. El ADSP-21020 soporta la IEEE-754 de
coma flotante (23 bits de datos, 8 de exponente y uno de signo). Tambin soporta formatos de coma
fija, fraccionaria y entera (sin signo o en complemento a dos) de 32 bit. Son posibles 6 niveles de
anidacin de interrupciones.
Soporte.
Analog Devices proporciona un conjunto de utilidades que incluyen un compilador de ANSI
C, un compilador de C con extensiones numricas C para clculos matemticos y aplicaciones en
coma flotante, un debugger fuente, un linkador-ensamblador, un simulador, libreras de
aplicaciones y un divisor PROM. Analog Devices ofrece un emulador en circuito de gran velocidad.
Tambin tiene licenciado el ADSP-21020 a Temics Semiconductors (SantaClara, CA).
41
Ing. Telecomunicacin
42
Ing. Telecomunicacin
ANEXO:
Tablas Comparativas
43
Ing. Telecomunicacin
Dispositivos
Aplicaciones
Instrucciones
/datos (bits)
Acumulador (bits)
Registro de
desplazamiento
(bits)
Generador
de
direcciones
Buses de
datos
Puerto de
interfaz
host
Rango de direcciones
externo
Telefona GSM,
codificacin de voz CELP G.729
32/16
48
32
Uno
Uno
4 Kbytes
Mdem,
videoconferencia,
GSM, speaker de telfono
Estaciones base celulares,
mdem DSVD, mezcladores de
audio,
cancelacin de eco acstico
Radar, sonar, procesamiento de
imagen, electrnica mdica
24/16
40
32
Dos
Dos
No
Paralelo
4 Mbytes
24/16
40
40
Dos
Dos
16 bit host
20/16
20
Ninguno
Chip separado
con 5
Paralelo
256 kbytes
32/16
40
40
No
64 kbytes
16/16
36
No
Opcin del
cliente
Opcin del
cliente
64kbytes (datos),
64kbytes (instrucciones)
16/16
36
36
Opcin del
cliente
64kbytes (datos),
64kbytes (instrucciones)
32/32
40
40
No
64Mbytes
16/16
36
36
No
DMA,
Hold/Hida
Serie
16/16
36
16
No
16/16
40
Ninguno
No
Paralelo
32/16
40
40
32/(8 16)
40
Ninguno
1 por
procesador
Paralelo y
serie
100Mbyte/s
DMA
Mviles, fax/mdem
16/16
40
40
Control de motores
16/16
32
16
No
TMS320C2x
16/16
32
16
TMS320C2xx
Telecomunicaciones, electrnica de
consumicin, sistemas de seguridad
16/16
32
16
Soporte
multiprocesador
Picolo
Analog Devices
ADSP-2011
ADSP-21csp01
Array Microsystems
A66xxx
Atmel
Lode
DSP Group
Pine DSPcore
Oak DSPcore
Hitachi
SH-DSP
Lucent Technologies
Codificacin de voz,
procesamiento celular de seales
Mquinas de telfono-contestadores,
mdems de baja velocidad,
grabadoras de voz
Mdems, DSVD, vdeo/audio
conferencia, telfonos celulares,
DVD, AC3
Telecomunicaciones mviles, imagen
digital, multimedia, mdems
Comunicacin mvil, mdems
64k words
DSP16xxx
Motorola
568xxx
DSP561xx
NEC
PD7701x
Oxford Micro
Devices
128kbytes (datos),
1Mbyte (instrucciones)
128kbytes (datos),
128kbytes (programa)
96kbytes (datos),
96kbytes (instrucciones)
16 Mbytes
A236
SGS-Thomson
256kbytes (datos),
128kbytes (programa)
128kbytes
Opcin del
cliente
Soporta paralelo (algunas
versiones)
No
No
384kbytes
D950-Core
Texas Insruments
TMS320C1x
256kbytes
44
Ing. Telecomunicacin
Dispositivos
Aplicaciones
Instrucciones
/datos (bits)
Acumulador (bits)
Registro de
desplazamiento (bits)
Generador
de
direcciones
Buses de
datos
Soporte
multiprocesador
Puerto de
interfaz
host
Rango de direcciones
externo
TMS320C5x
Multimedia, celulares/sin
cable/mdem, discos duros
Comunicaciones con/sin cable, redes,
multimedia
Estaciones mviles, plataformas de
telefona multicanal
Vdeo conferencia, procesamiento
digital, switching digital
16/16
32
16
Paralelo
384 kbytes
16/16
40
40
Paralelo
384 kbytes
32/16
40
40
Paralelo
8 Mbytes
64/16
32
32
2 por DSP
2 por
procesador
4 Gbytes
16/16
24
Ninguno
No
Va
Hold/HoldA
handshake
No
16/16
40
32
No
No
8/24
(complex)
24/24
60
(dual)
56
Ninguno
Chip separado
Paralelo
Ilimitado
Ninguno
4
(complex)
2
No
Paralelo
Mviles, multimedia,
telecomunicaciones
24/24
56
56
PCIcompatible
48/40
80
32
48/40
80
32
32/32
96
Ninguno
32/32
40
32/32
40
TMS320C54x
TMS320C6x
TMS320C8x
Zilog
Z893xx
Z894xx
Motorola
5600x
563xx
Motorola
DSP96002
Texas Instruments
TMS320C3x
TMS320C4x
Dispositivos
Cach de
instruccin
Niveles de pila
hardware
64 bytes (datos),
64 kbytes (programa)
Pila
software
Looping
hardware
Soporte
JTAG
No
No
4G words
Paralelo
4G words
413x109
32
Paralelo
(dos)
No
32 Mbytes
32
No
4 Gbytes
Fuentes de
interrupciones
Retardo mximo
de interrupcin
Caractersticas especiales
45
Ing. Telecomunicacin
(ciclos)
64x32 bit
No
20
Contactar con el
vendedor
Ninguno
16
No
No
11,920
64 palabras
31 (cach
selectiva de
programa)
No
counter stack
11,915
No
Ninguno
No
No
Ninguno
NA
Contactar con el
vendedor
No
16
No
Contactar con el
vendedor
DSP Group
No
No
Emulacin onchip
19,424
Pine DSPcore
Oak DSPcore
No
Ninguno
Emulacin onchip
16,528
Hitachi
No
No
4 individuales, 16
codificacin binaria
Contactar con el
vendedor
15x16 bit
Ninguno
No
De 6 a 7
21,293
No
Bucle do
20
15,657
DSP561xx
No
15
No
Propio
5.5
12,162
NEC
No
15
No
Hardware con
bucles
anidados
S
10,888
1 kbyte +
1 kbyte (datos)
Ninguno
No
No
12
Contactar con el
vendedor
No
Ninguno
12,971
Texas Insruments
No
4 (8 para el C16)
No
No
No
TMS320C1x
TMS320C2x
No
No
No
Contactar con el
vendedor
Contactar con el
vendedor
Advances Risc
Machines
Picolo
Analog Devices
ADSP-2011
ADSP-21csp01
Array Microsystems
A66xxx
Atmel
Lode
SH-DSP
Lucent Technologies
DSP16xxx
Motorola
568xxx
PD7701x
SGS-Thomson
D950-Core
8 registros/acumuladores de propsito
general de 40 bits, conjunto de
instrucciones en paralelo de un slo ciclo,
operacin multifuncin
4 DSPs en paralelo y un P scalar de 24
bit, 3 puertos DMA para conexin de
video,
RS-232C, coprocesador integrado con
estimacin de movimiento
Diseo para aplicaciones dedicadas.
Librera disponible para diseos ASIC
46
Ing. Telecomunicacin
Dispositivos
Cach de
instruccin
Niveles de pila
hardware
Pila
software
Looping
hardware
Soporte
JTAG
Fuentes de
interrupciones
externas
Retardo mximo
de interrupcin
(ciclos)
TMS320C2xx
No
No
No
25,039
TMS320C5x
No
No
12
20,907
TMS320C54x
No
Ninguno
13,251
TMS320C6x
8 kbytes
Ninguno
12
4227
TMS320C8x
2 kbytes
Ninguno
6 DSP
4881
Zilog
No
No
No
No
Z893xx
Z894xx
Contactar con el
vendedor
No
No
No
Contactar con el
vendedor
Opcin del
consumidor
Opcin del
consumidor
No
NA
BDSP9124
Contactar con el
vendedor
Contactar con el
vendedor
Motorola
Butterfly
Caractersticas especiales
No
15
No
Bucles do
anidados
Propio
8332
5600x
563xx
3 kbytes
16
4.25
10,918
Analog Devices
32x48 bit
20
No
6303
32x48 bits
30
No
6303
1024x32 bits
15
No
Propio
Contactar con el
vendedor
Texas Instruments
64x32 bits
Ninguno
Propio
12,410
TMS320C3x
TMS320C4x
128x32 bits
Ninguno
11,884
Puertos de comunicacin
ADSP-21020
ADSP-2106x
Motorola
DSP96002
47
Ing. Telecomunicacin
TMS320C40
DSP96002
i860
25 ns
40 ns
50 ns
20 ns
40
25
20
50
120
50
60
100
25 ns
40 ns
50 ns
60 ns
32 (16 principales)
30
240 MB/s
50 MB/s
80 MB/s
0.46 ms
1.54 ms
1.05 ms
0.76 ms
360, 9 ciclos
Tamao encapsulamiento
1.59 in2
3.46 in2
3.46 in2
3.06 in2
74 MFLOPS/in2
14 MFLOPS/in2
17 MFLOPS/in2
33 MFLOPS/in2
3 ciclos
4 ciclos
3 ciclos
22 ciclos
Fuente : Texas Instruments, Motorola, Intel Users Manuals & Datasheets y EDN Magazine
Damin Martnez Muoz
48
Ing. Telecomunicacin
Bibliografa
49