49
ESTUDIO COMPARATIVO DE LOS DSP’s DEL MERCADO Alumno: Damián Martínez Muñoz Dpto. Ingeniería de Telecomunicación Universidad de Jaén

ESTUDIO COMPARATIVO DE LOS DSP’s DEL …damian/spstr/Estudio DSPs.pdf · mercado del audio profesional, siendo una solución intermedia entre los DSP’s de coma fija de 16 bits

  • Upload
    leminh

  • View
    219

  • Download
    0

Embed Size (px)

Citation preview

ESTUDIO COMPARATIVO DE LOS DSP’s DEL MERCADO

Alumno: Damián Martínez Muñoz Dpto. Ingeniería de Telecomunicación Universidad de Jaén

Ing. Telecomunicación Sistemas de Procesado de Señal en Tiempo Real

Damián Martínez Muñoz 2

INDICE 1.1 Introducción 3

1.2 Evolución Histórica 3 1.3 Arquitectura de los DSP’s 4 1.4 Clasificación de los DSP’s 4

2 DSP’s de Texas Instruments 7 2.1 Familia TMS320C1x 9 2.2 Familia TMS320C2x 12 2.3 Familia TMS320C2xx 15 2.4 Familia TMS320C3x 18 2.5 Familia TMS320C4x 20 2.6 Familia TMS320C5x 22 2.7 Familia TMS320C54x 24

2.8 Familia TMS320C8x 27 2.9 Familia TMS320AVxxx 30

3 DSP’s de Motorola 33 3.1 Familia DSP561xx 33 3.2 Familia DSP5600x 34 3.3 DSP96002 35 4 DSP’s de Analog Devices 37 4.1 Familia ADSP-2100 38 4.2 Familia ADSP-21cspxx 39

4.3 Familia ADSP-21020 40 4.4 Familia SHARC (ADSP-2106x) 41 ANEXO: Tablas comparativa 43 Bibliografía 49 Direcciones WEB de interés 49

Ing. Telecomunicación Sistemas de Procesado de Señal en Tiempo Real

Damián Martínez Muñoz 3

1.1 Introducción

En el presente trabajo se pretende hacer una descripción del mercado actual de Procesadores Digital de Señal (DSP). A pesar de que el número de fabricantes de DSP’s es cada vez más elevado, en este estudio sólo 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 DSP’s que ofrece cada fabricante, resaltando sus características 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 DSP’s 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 años. Las razones fundamentales de este desarrollo radica en la gran cantidad de memoria integrada en el mismo chip y el precio económico.

El trabajo concluye con una tabla en la que aparecen la mayor parte de los DSP’s del mercado agrupados por las características de precisión que ofrecen. En esta tabla no sólo aparecen los tres fabricantes anteriormente citados sino también el resto de fabricantes.

1.2 Evolución Histórica

La aparición de los DSP’s se produjo a mediados de la década de los 80 (año 1.984). El primer DSP que apareció en el mercado (TMS320C10 de Texas Instruments) entró a competir directamente con los Microcontroladores de 8-16 bits que había en el mercado. Otros dispositivos con los competían eran los Microprocesadores de propósito general.

Rápidamente los DSP’s fueron ganando la batalla a los competidores anteriormente enumerados. Esto condujo a la aparición de nuevos miembros, cada vez más potentes y baratos, en este nuevo segmento del mercado. Entre las razones de este éxito comercial de los DSP’s están:

• Elevada potencia de cálculo. • Emulación, simulación y ejecución en tiempo real. • Flexibilidad. • Fiabilidad. • Incremento del rendimiento del sistema. • Coste reducido del sistema.

En los últimos años hemos asistido a un crecimiento espectacular en el uso de los DSP’s, comenzando a ser utilizados en campos que hasta ahora casi no había entrado la electrónica (automoción, multimedia, entretenimiento, etc.). Así mismo, su aparición ha permitido que desarrollos que hasta entonces sólo se habían realizado a

Ing. Telecomunicación Sistemas de Procesado de Señal en Tiempo Real

Damián Martínez Muñoz 4

nivel de simulación, hayan podido ser realizados en tiempo real. El crecimiento en el mercado de los DSP’s triplica el que experimenta el resto del mercado electrónico.

En resumen, los DSP’s han facilitado la creciente digitalización de los más diferentes campos. Este desarrollo no tiene un final definido, apareciendo cada día nuevas aplicaciones en las que son usadas. Baste con echar una mirada a las revistas especializadas de Tratamiento Digital de la Señal para comprobar la anterior aseveración.

1.3 Arquitectura de los DSP’s

La arquitectura de los DSP’s ha sido pensada para poder realizar la operación MAC (multiplicación + suma con el acumulador) en el menor ciclo de instrucciones posible. Esta operación (MAC) es la base en el Tratamiento Digital de la Señal. Si pensamos en la implementación de un filtro digital tenemos que las operaciones básicas que tenemos que realizar son multiplicaciones y sumas.

y n a x n i b x n iii

N

ii

M

[ ] ( ) ( )= − + −= =∑ ∑

0 0

Para conseguir este resultado, la clásica arquitectura Von Neuman ha sido modificada. En la arquitectura Von Neuman existía 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 características básicas de los DSP’s es la existencia de varios bancos de memoria. Otro hecho diferencial es que se pretende que en un único ciclo de instrucción se pueda decodificar la instrucción, traer dos datos de memoria, realizar una operación MAC en la ALU y cargar la siguiente posición de memoria de programa. Para conseguir estos resultados se recurre, aparte de aumentar el número de bancos de memoria, a la existencia de varias unidades de proceso trabajando en paralelo.

1.4 Clasificación de los DSP’s

Los DSP’s pueden ser clasificados atendiendo a diferentes criterios. La clasificación más extendida es la que tiene en cuenta la precisión con que se realizan las operaciones. Atendiendo a este criterio tenemos la siguiente clasificación:

• DSP’s de coma fija: los datos se representan en formato de coma fija. Presentan el problema de la limitación del rango dinámico de los datos que pueden representar. Por contra, su precio es bastante más económico que los de coma flotante. El número de bits usados para representar los datos varía entre los DSP’s de 16 bits y los de 24 bits. Los primeros se aplican sobre todo en control, telecomunicaciones y codificación de voz. Los segundos tienen prácticamente totalmente copado el mercado del audio profesional, siendo una solución intermedia entre los DSP’s de coma fija de 16 bits y los de coma flotante de 32 bits.

• DSP’s de coma flotante: los datos son representados con formato de coma flotante. Su rango dinámico es mucho mayor que los de coma fija, aunque su precio es

Ing. Telecomunicación Sistemas de Procesado de Señal en Tiempo Real

Damián Martínez Muñoz 5

mayor. Hay unanimidad en el mercado en cuanto al número de bits usados para representar datos: 32 bits. Su juego de operaciones soportan también operaciones con datos en formato coma fija.

Los nuevos miembros de ambos tipos de DSP’s coinciden en que el juego de instrucciones tienden a parecerse a las de los lenguajes de alto nivel (lenguaje C sobre todo). Esto facilita el empleo de compiladores cruzados, de tal forma que facilita el proceso de programación de los DSP’s, sin tener un conocimiento de la arquitectura del DSP empleado.

Ing. Telecomunicación Sistemas de Procesado de Señal en Tiempo Real

Damián Martínez Muñoz 6

Texas Instruments

Ing. Telecomunicación Sistemas de Procesado de Señal en Tiempo Real

Damián Martínez Muñoz 7

2 DSP’s de Texas Instruments Texas Instruments engloba su conjunto de DSP’s mediante el prefijo TMS320.

Como ya se ha mencionado anteriormente, fue el primer fabricante de estos nuevos dispositivos allá por el año 1.984.

Sus productos están ampliamente consolidados en el mercado y ocupan una posición de privilegio respecto a sus competidores. Sin embargo, en algunos ámbitos de aplicación el mercado lo tienen copado otros fabricantes.

Las ventajas de los DSP’s de Texas respecto a los de la competencia son: • Gama de productos más amplia. • Líderes en soluciones de mercado. • Fabricación consolidada y compromiso de entrega. • Amplia variedad en opciones de encapsulado. • Mejor soporte técnico desde la aparición de la idea hasta la consecución del

producto. • Bajo coste en sistemas de desarrollo y módulos de evaluación. • Simuladores hardware fiables. • Existencia de compiladores cruzados para lenguajes de alto nivel. • Existencia de Debuggers. • Existencia de Emuladores en tiempo real. • Amplia librería de software para aplicaciones. • Servicio hotline de asistencia técnica, también accesible desde Internet • Para algunos de sus productos, hay otros posibles fabricantes por lo que la

dependencia tecnológica es menor.

La siguiente gráfica representa las diferentes generaciones de DSP’s que conforman la oferta de Texas Instruments.

Ing. Telecomunicación Sistemas de Procesado de Señal en Tiempo Real

Damián Martínez Muñoz 8

A continuación veremos una a una las diferentes familias que aparecen en esta gráfica.

‘C8x

‘C3x

‘C4x

‘C2x ‘C1x

‘C2xx

‘C5x

‘C54x

Multiprocesador DSP

32-bit Punto Flotante

16-bit Coma Fija

Generación

Rendimiento

320C10/C10-25 320C14/P14 320C/P/LC15 320C/LC16 320C/P/LC17 320C/P17-25 - Muy Bajo Coste - Periféricos - 6 MIPS

320C25/P25-40/-50 320C26 320C28/C28-50 320C203/-57/-80 320C209-/57 -12 MIPS

320C203/LC203-40/-57/-80 320C204-40/-57/-80 320C205-40/-57/-80 320F206-40/-57/-80 320LF207-40/-57/-80 320C209-40/-57 320C240-40 320F240-40

- Optimización Rendimiento / Coste 40 MIPS

320C50/C50-57/-80 320LC50 320C/BC51/51-57/-80 320C/BC52/52-57/-80 320LC52-57 320C/BC53/53-57/-80 320LC56/57 320BC57S

- Alto Rendimiento - Alta Integración. 40-50 MIPS

320AV310 320AV120 320AV220 320AV420

320C/LC/VC541 320C/LC/VC542 320LC543/VC543 320LC544/VC544 320LC545/VC545 320LC546/VC546 320LC548/VC548

- 100 MIPS

320C30/C30-27/-40/-50 320C/LC31 320C31-27/-40/-50/-60 320C32-40/-50

- Alto Rendimiento. - 60 MFLOPS

320C40-40/-50/-60 320C44-40/-50/-60

- Muy Alto Rendimiento- Procesamiento en Paralelo. - 60 MFLOPS

320C80/-40/-50

- Máximo Rendimiento - Aplicaciones Multimedia - 2 BOPS

‘AVxxx

Ing. Telecomunicación Sistemas de Procesado de Señal en Tiempo Real

Damián Martínez Muñoz 9

2.1 Familia TMS320C1X (coma fija) Fueron los primeros DSP’s que aparecieron en el mercado. Son DSP’s de coma

fija de 16 bits. Hay una gran cantidad de miembros en esta familia, diferenciándose principalmente en el encapsulado, velocidad y configuración de memoria interna.

Puntos destacados: • Diferentes configuraciones de Memoria RAM, ROM ó OTP PROM interna

para una mayor flexibilidad en el diseño. • En ella se encuentran muchos de los DSP’s más económicos del mercado. • Capacidad de integración a través de la librería cDSP. • Posibilidad de escoger entre 5 versiones (‘C10,’C14,’C15,’C16,’C17) para

optimizar los costes del sistema. Aplicaciones Fundamentales:

• Sistema antibloqueo de frenos (ABS). • Instrumentos musicales. • Medidores de energía. • Servomecanismos y control de motores. • Contestadores automáticos digitales.

Características : • 144 palabras de memoria RAM interna programable para el ‘C10, 256

palabras para el resto de dispositivos ‘C1x. • 1.5k palabras de programa en ROM en el ‘C10, 4k en el ‘C14,’C15,’C17 y

8k en el ‘C16. • Opciones con 4k palabras de memoria OTP de programa. • Posibilidad de direccionar hasta 64k palabras de datos externos en el ‘C16,

4k para los demás dispositivos. • Unidad aritmético-lógica de 32 bits. • 32 bits a la salida del multiplicador de la ALU (Dos entradas de 16 bits). • Multiplicación en un solo ciclo de instrucción. • Hasta 4 timers internos para el control de operaciones. • Hasta ocho niveles de anidamiento en la pila hardware • Dos registros auxiliares. • 4 canales de entrada y de salida en el ‘C 14,’C15 y ‘C17. • Registro de desplazamiento de 16 bit. • Estados de espera para comunicación con memorias/periféricos externos más

lentos.

Ing. Telecomunicación Sistemas de Procesado de Señal en Tiempo Real

Damián Martínez Muñoz 10

En la siguiente figura se desglosan los diferentes miembros que componen esta familia.

‘C15

‘C17 ‘C16

‘C14

‘C10

BAJO COSTE

FUNCIONES DE CONTROL

MÁS MEMORIA

NÚCLEO DE LA GAMA ‘C1x

FAMILIA TMS320C1x

APLICACIONES EN TELECOMUNICACIÓN

Ing. Telecomunicación Sistemas de Procesado de Señal en Tiempo Real

Damián Martínez Muñoz 11

Como muestra, en la siguiente figura se representa el diagrama de bloques del TMS320C15

2.2 Familia TMS320C2x

RAM de datos 256x16

ROM de programa

4kx16

Diagrama de bloques TMS320C15

A(11-0)

D(15-0)

Registro de desplazamiento de 16

bits

Registro T de 16bit Multiplicador16x16

Registro P de 32 bit ALU de 32 bits

2 registros auxiliares

Shift L(0,1,4)

Registro de estado

8 Puertos E/S 16 bits

Ing. Telecomunicación Sistemas de Procesado de Señal en Tiempo Real

Damián Martínez Muñoz 12

Conforma la segunda generación de DSP’s de Texas Instruments. Su arquitectura interna amplía las posibilidades que ofrecía la primera generación. Al igual que ésta, sus miembros son de coma fija de 16 bits. Puntos destacados:

• Diferentes configuraciones de memoria RAM, ROM ó OTP PROM interna para una mayor flexibilidad en el diseño.

• Un gran gama de herramientas de desarrollo de desarrollo desde $99, desde módulos de inicio hasta emuladores en tiempo real.

• Capacidad de integración a través del paquete cDSP. • Posibilidad de escoger entre 3 versiones (‘C25,’C26,’C28) para optimizar los

costes del sistema. Aplicaciones Fundamentales:

• Sistema de frenos antideslizamiento. • Servomecanismos y control de motores. • Control de robots. • Telecomunicaciones. • Sistemas de sonido, procesamiento de voz. • Aplicaciones de filtrado digital.

Características : • 544 palabras de memoria RAM interna de datos programable (incluida 256

de programa/datos). • 1568 palabras de memoria RAM configurable entre programa/datos en el

‘C26. • 4k palabras de ROM de programa interna para el ‘C25. • Opciones con 4k palabras de memoria interna OTP ROM de programa. • Capacidad de direccionamiento hasta un total de 128k palabras de memoria

de datos/programa externa. • ALU y acumulador de 32 bits. • Multiplicador paralelo de 16x16 bits con resultado de 32 bits. • Instrucciones de multiplicación/acumulación con un solo ciclo de

instrucción. • Mejora en las instrucciones repetitivas para conseguir un uso eficiente de la

memoria de programa e incrementar la velocidad de ejecución. • Instrucciones para desplazamiento de bloques de datos/programa para

facilitar la gestión de programa. • Timer interno para operaciones de control. • Hasta 8 registros auxiliares.

Ing. Telecomunicación Sistemas de Procesado de Señal en Tiempo Real

Damián Martínez Muñoz 13

En las dos siguientes figuras se representa el diagrama de bloques de esta familia de DSP’s.

ROM de Datos

B2 256x16

RAM D/P B1

256x16

ROM de Programa

B2 256x16

RAM de Datos

B0 256x16

Registro

de desplazamiento de 16 bits ( L)

ALU de 32 bits

Acumulador de 32 bits

ShiftL (0-7)

8 Registros Auxiliares

8 niveles de anidamiento pilaDos registros de estado

Contador de repetición

Registro T de 16 bits

CPU Puertos de

E/S (16x16)

Contador

Puerto serie

síncrono

A(15-0)

D(15-0)

Diagrama de bloques TMS320C2x

Ing. Telecomunicación Sistemas de Procesado de Señal en Tiempo Real

Damián Martínez Muñoz 14

MUXRegistro T (16)

Multiplicador (16x16)

Registro P (32)

Desplazamiento izquierda (0-16)

Unidad Aritmético Lógica (ALU)

C Registro Acumulador (32)

Desplazamiento Izquierda (0-7)

32

32

C

16

Despla- miento

izquierda

16 16

16

32

32

16

32 32

MUX

32

16 16

16

BUS DE PROGRAMA

32

Multiplicador/ALU TMS320C2x

Ing. Telecomunicación Sistemas de Procesado de Señal en Tiempo Real

Damián Martínez Muñoz 15

2.3 Familia TMS320C2xx Es también de coma fija de 16 bits e implementa diferentes mejoras a los de las

generaciones anteriores.

Puntos destacados:

• Potencia computacional desde 20 hasta 40 MIPS. • Precios a partir de $0.12 por MIPS. • Versiones de 3, 3.3 y 5V. • Consumo típico bajo:

1.9 mA/MIPS a 5V 1.1 mA/MIPS a 3 y 3.3V

• Encapsulado TQFP de 100 y 80 pines. • Código fuente compatible con las generaciones ‘C1x y ‘C2x. • Compatibilidad hacia arriba con la generación ‘C5x. • Posibilidad de integración usando la librería cDSP. • Posibilidad de emulación usando JTAG.

Aplicaciones Fundamentales:

• Aplicaciones telefónicas. • Terminales punto de venta. • Sistemas de seguridad. • Telecomunicaciones. • Redes de comunicaciones. • Servomecanismos y control de motores. • Detectores Radar. • Cámaras digitales. • Modems. • CD Roms.

Características : • 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 propósito 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. • El software permite generar estados de espera.

Ing. Telecomunicación Sistemas de Procesado de Señal en Tiempo Real

Damián Martínez Muñoz 16

Ordenador Industria Consumo Telefonía

‘ C54x Generación

‘ C5x Generación

‘ C2xx Generación

‘ C2x Generación

‘ C1x Generación

Los TMS320C2xx abrieron nuevas vías a otras generaciones de DSPs (coma fija) Hicieron posible que los procesadores DSPs

tuvieran nuevos campos de aplicación : ORDENADORES,INDUSTRIA,

CONSUMO Y TELEFONÍA

Ing. Telecomunicación Sistemas de Procesado de Señal en Tiempo Real

Damián Martínez Muñoz 17

FLASH 32Kx16

‘C24x 16Kx16

RAM (datos/Prog) doble-puerto

544x16

RAM(Datos/Prog) Acceso Simple

4Kx16

ROM 4Kx16

‘C24x 16Kx16

Control de Emulación

BUS DE DATOS/PROGRAMA B US

DE P E RI F E RI COS

PUERTO SERIE SINCRONO

PUERTO SERIE ASINCRONO

TEMPORIZADOR

ESTADOS DE ESPERA (SW)

PUERTOS DE E/S

10-Bits ADC1 10-bits ADC2

WATCHDOG TIMER

DETECTOR DE BAJO NIVEL

Registro de Desplazamiento

16 bits (L)

Registro T (16 b)

Multiplicador (16x16)

Desplazamiento (0,1,4-6)

ALU (16 bits)

ACUMULADOR (32 bits)

DESPLAZAMIENTO L (0-7)

8 REGISTROS AUXILIARES 8 NIVELES DE PILA (HW)

INSTRUCCIONES DE REPETICIÓN

2 REGISTROS DE ESTADO

FUENTE DE

ALIMENTACIÓN

D(15-0)

A(15-0)

DIAGRAMA DE BLOQUES ‘C2xx

Ing. Telecomunicación Sistemas de Procesado de Señal en Tiempo Real

Damián Martínez Muñoz 18

2.4 Familia TMS320C3x Es la primera generación de DSP’s de Texas Instruments de coma flotante. La

longitud de palabra es de 32 bit.

Puntos destacados: • Potencia de cálculo de hasta 60 MFLOPS (millones de operaciones en coma

flotante por segundo). • Alta eficiencia usando lenguaje C. • Gran espacio de direccionamiento: 16Mwords. • Gestión rápida de memoria con DMA interna.

Aplicaciones Fundamentales: • Audio digital. • Gráficos 3-D. • Impresoras láser, fotocopiadoras, escáners. • Escáners de código de barras. • Video conferencia. • Automatización industrial y robótica. • Correo de voz y Faxs. • Servomecanismos y control de motores. • Redes de comunicaciones.

Características : • Alta potencia de cálculo:

Ciclos de instrucción de 33-ns. 30 MIPS. 60 MFLOPS. 330 MOPS. Ancho de banda E/S de 120 Mbytes/second.

• CPU con arquitectura pipeline: Multiplicación paralela y operaciones aritmético/lógicas con números enteros o en coma flotante en un único chip. 8 registros con precisión extendida.

• Potente juego de instrucciones: Ejecución de instrucciónes en un sólo ciclo. Control de sistema y operaciones numéricas.

• Periféricos integrados: Controlador de DMA para E/S simultáneas y operaciones en la CPU.

Temporizadores. Puertos serie.

• Memoria: Paralelismo del bus para permitir desplazamiento rápido de datos.

Ing. Telecomunicación Sistemas de Procesado de Señal en Tiempo Real

Damián Martínez Muñoz 19

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 Datos32 bits(‘C30-C31)

8/16/32 bits(‘C32)

Acceso al programa 32 bits (‘C30-‘C31) 16/32 bits (‘C32)

CPU

Multiplicador de enteros y

coma flotante

ALU de enteros y

coma flotante

8 Registros de Precisión

8 Registros Auxiliares

12 Registros de Control

Generación Direcciónes 1

Generación Direcciónes 0

2 Modelos de muy Bajo Consumo(‘C31-‘C32)

C o n t r o l a d o r

Coprocesador DMA

DMA

Canal 0

DMA Canal 1

Timer 0

Timer 1

Puerto Serie 0

Puerto Serie 1(‘C30)

TCLK0

TCLK1

CLKX0 DX0 FSX0

CLKR0 DR0 FSR0

CLKX1 DX1 FSX1

CLKR1 DR1 FSR1

Reset Int3-0 Iack

XfI-0 H1

H1 Mcbl/Mp X2/Clkin Vdd ,Vss

Shz Emu6-0

X1

(3)-D(31-0)

(4)-A(23-0)

Diagrama de Bloques

‘C3x

Ing. Telecomunicación Sistemas de Procesado de Señal en Tiempo Real

Damián Martínez Muñoz 20

2.5 Familia TMS320C4x Es también de coma flotante de 32 bits. Está pensada sobre todo para el

procesamiento paralelo, por lo que cuenta con interfaz de comunicación muy rápidas.

Puntos destacados: • Hasta 60 MFLOPS. • Gran incremento de potencia de cálculo y de comunicaciones. • Capacidad de multiproceso. • Escalabilidad. • Tolerante a fallos.

Aplicaciones Fundamentales: • Comunicaciones de muy alta velocidad. • Realidad virtual, simuladores. • Procesamiento de rádar/sónar/imagen. • Gráficos 3-D. • Control de robots. • Reconocimiento de voz. • Infraestructura de telecomunicaciones.

Características : • 6 puertos de comunicaciónes para comunicación entre procesadores a alta

velocidad: Máxima velocidad de transferencia asíncrona de 32 Mbytes/s por cada puerto.

Comunicación directa de procesador-procesador sin circuitería adicional. • Coprocesador DMA con 6 canales para E/S simultáneas y operaciones de la

CPU. • Alta velocidad de la CPU del DSP capaz de 330 MOPS y 384 Mbytes/s:

Hasta 11 operaciones por ciclo de instrucción. Ciclos de instrucción de 33, 40 y 50 ns.

• Dos buses externos de direcciones y datos semejantes, permitiendo sistemas con memoria compartida y alta velocidad de transferencia de datos, transferencias en un único ciclo:

Velocidad de transferencia de datos por un puerto de hasta 120 Mbytes/s (‘C40-60).

Ing. Telecomunicación Sistemas de Procesado de Señal en Tiempo Real

Damián Martínez Muñoz 21

UNIDADES DE PROCESO:

Coprocesador DMA. CPU Alto Rendimiento.

ENTRADAS/SALIDAS: Coprocesador DMA. Puertos de

Comunicaciones. Buses locales y Globales

Ciclo de instrucción

25 ns

CPU 8OPS/Cycle 320 MOPS 2 Accesos de Datos 80 MOPS 1 Multiplicación FP 40 MOPS 1 Operación FP (ALU) 40 MOPS 1 Contador de bucle 40 MOPS 1 Búsqueda instrucción 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 Direcciónes 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.

Rendimiento del

TMS320C4x

Ing. Telecomunicación Sistemas de Procesado de Señal en Tiempo Real

Damián Martínez Muñoz 22

2.6 Familia TMS320C5x Vuelve a ser una familia de procesadores de coma fija de 16 bits.

Puntos destacados: • Potencia de cálculo de hasta 50 MIPS. • Precios de venta desde $0.30 por MIP. • Versiones de 3 y 5V. • Diferentes versiones de encapsulado: 100 pins TQFP/PQFP, 128 pins

TQFP, 132 pins PQFP y 144 pins TQFP. • Diferentes versiones de memoria RAM y ROM integradas. • Emulación JTAG • Compatible con ‘C1x, ‘C2x y ‘C2xx.

Aplicaciones Fundamentales: • Teléfonos inalámbricos y móviles. • Módems de alta velocidad. • Comunicaciones personales. • Sistemas de sonido y procesamiento de voz. • Impresoras láser, fotocopiadoras. • Otras aplicaciones de telecomunicación. • Multimedia. • Control de discos duros.

Características : • El ciclo de instrucción del DSP ‘C5x es de 20 ns. • Potencia de procesamiento de 50 MIPS. • Consumos a razón de 1.15mA/MIPS. • Disponibles diferentes configuraciones de memoria RAM y ROM interna. • Emulación on-chip, eliminando los retardos de propagación asociados a las

antiguas tecnologías de emulación. • Código fuente compatible con el ‘C1x, ‘C2x y ‘C2xx. • Proporciona un tratamiento de bit a alta velocidad sin tener que modificar los

bits de estado de la ALU ó registros. • Permite, sin lógica adicional, la conexión de memoria externa lenta y

dispositivos de entrada/salida, reduciendo costes. • Los 12 registros más fundamentales de la CPU están duplicados.

Ing. Telecomunicación Sistemas de Procesado de Señal en Tiempo Real

Damián Martínez Muñoz 23

RAM (Datos/Prog) 10Kx16 (‘C50),2Kx16 (‘C51)

1Kx16(‘C52),4Kx16(‘C53,C53S)7Kx16 (‘LC56,’LC57,’LC57S)

ROM 2Kx16 Boot (‘C50.’C57S)

8Kx16 prog.(‘C51),4Kx16 prog. (‘C52),16Kx16.(‘C53,’C53S),

32Kx16 (‘LC56,’LC57)

Control de Emulación

BUS DE DATOS/PROGRAMA B US

DEP E RI F E RI COS

PUERTO SERIE 1

PUERTO SERIE 2**

TIMERS

ESTADOS DE ESPERA (SW)

PUERTOS DE E/S

INTERFAZ DEL PUERTO HOST*

Registro de Desplazamiento

(Pre-Post)

Multiplicador (16x16)

Desplazamiento (ACC,PROD)

ALU (32 bits)

PPL PLU

DESPLAZAMIENTO (0-7)

8 REGISTROS AUXILIARES 8 NIVELES DE PILA (HW)

32 bits ACC & 32 bits ACC buffer

REGISTROS DE ESTADO

FUENTE DE

ALIMENTACIÓN

D(15-0)

A(15-0)

DIAGRAMA DE BLOQUES ‘C5x

* Disponible en ‘LC57 y ‘LC57S ** Un puerto serie en ‘C52, puertos serie con buffer en

‘LC56, ‘LC57 y ’LC57S

Ing. Telecomunicación Sistemas de Procesado de Señal en Tiempo Real

Damián Martínez Muñoz 24

2.7 Familia TMS320C54x También es de coma fija. Son más rápidos que la familia ‘C5x.

Puntos destacados: • Hasta 66 MIPS. • Operación Viterbi integrada. • Tres modos de bajo consumo. • Diferentes configuraciones de RAM y ROM internas. • Puerto serie con auto-buffer. • Interfaz puerto host. • Encapsulado ultra pequeño (100, 128 y 144 pins TQFPs).

Aplicaciones Fundamentales: • Comunicaciones digitales móviles. • Sistemas personales de comunicación. • Módems. • Telecomunicaciones avanzadas. • Comunicaciones digitales inalámbricas. • Envío de datos en sistemas móviles.

Características : • 66 MIPS. • Acelerador Viterbi integrado. • Opera a 2.7 y 5V. • Direcciones de 40 bits y dos acumuladores de 40 bits para la ejecución 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 más

avanzado del sector. • Modos de bajo consumo para aplicaciones en que se usan baterías.

Ing. Telecomunicación Sistemas de Procesado de Señal en Tiempo Real

Damián Martínez Muñoz 25

ROM(Datos/Prog)

RAM(Datos/Prog)

Control de Emulación

BUS DE DATOS/PROGRAMA B US

DEP E RI F E RI COS

PUERTO SERIE

PUERTO SERIE TDM

TIMER

GENERADOR DE RELOG(PLL)

GENERADOR SW DE ESTADOS DE ESPERA

PUERTO SERIE CON BUFFER

INTERFAZ DE PUERTO HOST

MAC 17x17 MPY RND SAT

SUMADOR 40 BIT

ALU ALU 40 BIT

OPERAC. CMPS CODIF. EXPONENCIAL

FUENTE DE

ALIMENTACIÓN

D(15-0)

A(15-0)

DIAGRAMA DE BLOQUES ‘C54x

DESPLAZAMIENTO 40 BITS ( 16 31)

ACUMULADORES 40 BITS ACC A 40 BITS ACC B

UNIDAD DE DIRECCIONAMIENTO 8 REGISTROS AUXILIARES

2 UNIDADES DE DIRECCIONAMIENTO

Ing. Telecomunicación Sistemas de Procesado de Señal en Tiempo Real

Damián Martínez Muñoz 26

Interfaz

de

AUDIO

Interfaz

RF

SPEAKER MICRO

SECCION ANALOGICA EN BB

SECCION DIGITAL EN BB

TMS320C54x DSP

Codif./Decodif de VOZ Corrección de Errores

Codif/Decodif de CANALEcualización

Demodulación Encriptación

Microcontrolador

INTERFAZ

HOMBRE/MAQUINA

TRANSMISIÓNy RECEPCIÓN

en RF

ANTENA

PANTALLA

TECLADO

TARJETA SIM

SOLUCIÓN PARA UN TELEFONO MOVIL DIGITAL

Ing. Telecomunicación Sistemas de Procesado de Señal en Tiempo Real

Damián Martínez Muñoz 27

2.8 Familia TMS320C8x Integra varias unidades de proceso en el mismo encapsulado. Estas unidades de

proceso son de coma fija de 16 bits.

Puntos destacados: • Arquitectura de ‘C8x :

Arquitectura MIMD (Múltiple instrucción - Múltiple 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 instrucción de 17, 20 y 25 ns.

• TMS320C80 : Controlador de vídeo. 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: • Vídeo conferencia. • Vídeo teléfonos. • Telecomunicaciones a alta velocidad. • Procesamiento de imagen y vídeo. • Estaciones de trabajo multimedia. • Aceleradores de gráficos 2-D y 3-D. • Realidad virtual. • Seguridad. • Sistemas de rádar y sónar.

Características : • Controlador inteligente de transferencia interno y memoria (SRAM). • Procesamiento paralelo múltiple de 32 bit. • La ALU de 32 bit puede ser configurada como 2 de 16 bits ó 4 de 8 bits para

proceso paralelo de datos con baja precisión. • Interfaz directa con DRAM, SRAM y VRAM. • Interfaz de bus externo dinámico de 8, 16, 32 y 64 bit.

Ing. Telecomunicación Sistemas de Procesado de Señal en Tiempo Real

Damián Martínez Muñoz 28

PALETA DE

PANTALLA

V R A M

D R A

M

TMS320C80

CHIP XDS

EN TARJETA

CONTROL

DE MEMORIA

PCI I/F

CODIFICADOR DE

AUDIO ( 16 Bits)

CAPTURA DE

VIDEO

TARJETA DE DESARROLLO DE SW

DEL TMS320C8x

Ing. Telecomunicación Sistemas de Procesado de Señal en Tiempo Real

Damián Martínez Muñoz 29

DSP AVANZADO G L I

DSP AVANZADOG L I

DSP AVANZADOG L I

DSP AVANZADOG L I

RISC MP

CONTROLADORES DE

VIDEO

FLU

CROSSBAR

50 Kbytes SRAM - TMS320C8044 Kbytes SRAM -TMS320C82

RE L OJ E S

CONTROLADOR DE

TRANSFERENCIA

32 32 64 32 32 64 32 32 64 32 32 64 64 32

64 64

CAPTURA VIDEO

Ing. Telecomunicación Sistemas de Procesado de Señal en Tiempo Real

Damián Martínez Muñoz 30

2.9 Familia TMS320AVxxx (DCP) Están orientados a una aplicación determinada. Está compuesta por varios

miembros.

Puntos destacados TMS320AV110 (Decodificador de audio MPEG): • Decodificador de audio ISO-MPEG en un único chip. • Decodifica los modos mono, estéreo, dual y joint stereo. • Soporta todas las frecuencias de muestreo y bit rates de MPEG, incluido el

formato libre. • Acepta entrada de datos a ráfagas hasta una velocidad de 15 Mbits/s. • Encapsulado pequeño de 120-pins plastic quad flat package (PQFP).

Puntos destacados TMS320AV120 (Decodificador de audio MPEG): • No requiere un microprocesador host para inicialización y operación. • Acepta SCR y PTS de audio y proporciona sincronización automática. • Proporciona información de estado al inicio de cada trama. • Encapsulado PLCC de 44 pins de bajo coste.

Puntos destacados TMS320AV220 (Decodificador de vídeo MPEG): • Interfaz directa con el decodificador de audio MPEG ‘AV110 y el

codificador NTSC ‘AV120. • Sistema decodificador integrado con buffer para entrada de audio. • Sincronización automática de audio y vídeo sin necesidad de lógica externa. • Soporta formatos de salida de vídeo NTSC y PAL. • Soporta resolución SIF y CCI R 601.

Puntos destacados TMS320AV420 (Codificador digital NTSC): • Codificador digital NTSC en un único chip. • Interpolación de línea vertical para MPEG-1 de vídeo. • Entrada : RGB, YUV 4:4:4 ó YUV 4:2:2. • Salida s-vídeo (C e Y). • Circuito interno para generación de señal de sincronismo. • Encapsulado 80 pins quad flat package.

Ing. Telecomunicación Sistemas de Procesado de Señal en Tiempo Real

Damián Martínez Muñoz 31

DECODIFICADOR DE AUDIO

MPEG ‘AV120

• Arquitectura matemáticamente modelada para minimi- zar el silicio usado y maximizar la calidad de audio.

• La calidad CD es mantenida sin ninguna cuantificación adicional.

• También puede ser usado como un decodificador de au- dio MPEG sin necesidad de un procesador host.

*Derivado del TMS320AV110 MPEG decodificador de Audio y optimizado para reducir el coste de las aplicaciones

de video CD.

Proporciona un coste bajo para la implementación de algoritmos de codificación

de audio MPEG ( Layers 1 y 2 )

DECODIFICADOR DE VIDEO

CD MPEG

‘AV220

• Integra decodificador de sistema MPEG1,buffer para audio y microcódigo interno.

• Sincronización de las salidas de audio y video sin un host externo.

• Integra funciones de control de Video CD (vista rápida, reverse , elección de pista ...).

• Proporciona una interfaz para decodificadores de CDROM SONY y SANYO.

• Verticalmente se interpolan las lineas para crear la imagen reduciendo el ruido

• Genera señales de sincronización para el decodificador de video ‘AV220.

• Soporte Overlays, proporcionando la capacidad de superponer textos y gráficos en la pantalla de vídeo.

Basado en el decodificador de video CL450 de C’Cube con características

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 señal

analógica NTSC para TV .

UN CHIPSET VERSATIL Y

OPTIMIZADO

CHIPSET VIDEO

CD

Ing. Telecomunicación Sistemas de Procesado de Señal en Tiempo Real

Damián Martínez Muñoz 32

MOTOROLA

Ing. Telecomunicación Sistemas de Procesado de Señal en Tiempo Real

Damián Martínez Muñoz 33

3 DSP’s de Motorola Motorola, aunque entró a competir en el mercado de los DSP’s 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 precisión ocupa un valor intermedio ocupa un valor intermedio entre la precisión que aporta la coma fija de 16 bits con la coma flotante de 32 bits. Este DSP desde su aparición tuvo una elevada aceptación sobre todo en lo que se refiere a aplicaciones con audio.

Actualmente la familia de DSP’s que Motorola ofrece son:

• Familia de coma fija de 16 bits (DSP561xx)

• Familia de coma fija de 24 bits (DSP5600x)

• Familia de coma flotante de 32 bits (DSP96002)

A continuación vamos a ver una a una estas familias de DSP’s.

3.1 Familia DSP561xx La arquitectura de los DSP561xx fueron está basada en la arquitectura del

DSP56000, añadiendo un codec para conversiones D/A y A/D con ancho de banda vocal para aplicaciones de telefonía móvil digital y comunicaciones de voz. El DSP561xx realiza en un ciclo de instrucción, dos ciclos de reloj, la operación de multiplicación-acumulación (MAC) y facilita la realización de sumas de productos y procesamiento de vectores. La unidad aritmético lógica (ALU) consta de dos acumuladores de 40 bits incluyendo 8 para extensión de signo, con 4 registros de entrada de 16 bits para conservar ciertas variables y coeficientes. Los registros de entrada, para una instrucción MAC deben cargarse al mismo tiempo que la instrucción MAC anterior. Se pueden cargar los registros de entrada a la operación MAC en paralelo con la operación MAC anterior. Cuando almacenamos el resultado en 16 bits de memoria, ocasionalmente el circuito limitador satura los valores del acumulador de 40 bits a +1.0 y -1.0 que son los valores más grandes que puede tomar. El DSP561xx tiene RAM de programa y memoria RAM de datos de doble puerto interna; cada una tiene su propio bus de direcciones y de datos. La RAM de datos de doble puerto permite al generador de direcciones entregar dos direcciones por ciclo, permitiendo dos lecturas o una lectura y una escritura. El generador de direcciones tiene 12 registros de 16 bits, tales como de direcciones de offset y de modificación, que permiten implementar diferentes tipos de direccionamiento. El centro del DSP561xx puede acceder a los registros generadores de direcciones a través de un bus global de datos que une a estos registros con la memoria externa, periféricos, y una unidad funcional para la manipulación de bits.

El bus externo de 16 bits del chip multiplexa entre 64 Kbytes de programa y momoria de datos. La CPU puede realizar un acceso a memoria externa en un sólo ciclo de instrucción. Cuando se usa una memoria lenta, el chip puede necesitar estados de espera, controlados mediante programación. Con un reloj externo a 60 MHz y un ciclo de instrucción básico a 30 MHz, un acceso desde memoria a la CPU debe tardar menos de 33 nanosegundos. El DSP561xx tiene dos buses de dirección de memoria de datos

Ing. Telecomunicación Sistemas de Procesado de Señal en Tiempo Real

Damián Martínez Muñoz 34

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 también 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 instrucción “do” son interrumpibles.

Soporte. Motorola vende el Sistema para Desarrollo de Aplicaciones con

operaciones de emulación in-circuit usando las características de emulación on-chip de los DSPs. El emulador on-chip permite puntos de ruptura fijos, ejecución paso a paso, y la lectura/modificación de memoria ó registros. Motorola proporciona un compilador de C Gnu, un debuger, un linkador/ensamblador y un simulador.

3.2 Familia DSP5600x Es un DSP de coma fija de 24 bits. Presenta tres bancos de memoria: uno de programa y dos de memoria de datos (X e Y). Como la mayoría de otros DSP’s, el DSP5600 tiene un bus de memoria externa versátil, capacidad de manipulación de bits y es posible ejecutar desde memoria externa usando un único ciclo de instrucción. El chip no tiene memoria ROM de programa interna, salvo un pequeño program de arranque en algunas versiones. Por contra, el DSP56000 puede acceder a memoria externa en cada ciclo de instrucción sin penalización temporal.

En el sentido tradicional, el DSP56000 es una maquina basada en acumulador debido a que las operaciones lógicas y matemáticas se hacen a través de un acumulador. Sin embargo, la arquitectura hace posible la manipulación de bits en registros y en memoria. Tiene una unidad MAC que opera usando un solo ciclo de instrucción; la unidad tiene dos acumuladores de 56 bits (8 bits para extensión de signo); dos conjuntos de registros de 24 bits abastecen la unidad. Antes de que se usen los datos debemos cargarlos dentro de los registros MAC. MAC sólo emplea un ciclo de instrucción (dos ciclos de reloj) para multiplicar y acumular. Otros registros son los registros de direccionamiento y control.

Como muchos otros DSP’s, el DSP56000 tiene dos generadores de direcciones similares que acceden a las memorias X e Y para los ciclos MAC. Cada generador de direcciones tiene una ULA de 16 bits y 4 conjuntos de 3 registros: 4 registros de puntero que llevan asociados, cada uno, registros de offset y de modificación. Los registros de modificación pueden especificar el tipo de operaciones aritméticas de dirección del registro, o pueden contener datos. Los registros de modificación soportan un buffer FIFO y direccionamiento bit reverse.

El procesador combina direccionamiento de 16 bits con palabras de 24, tiene tres pares de buses de datos y direcciones internos, que permiten acceder a la siguiente instrucción y 2 accesos de datos en un solo ciclo y, por lo tanto, evitar la necesidad de

Ing. Telecomunicación Sistemas de Procesado de Señal en Tiempo Real

Damián Martínez Muñoz 35

una memoria caché interna. Un cuarto bus , el bus global de datos, es un bus lógico simple de 24 bits que transfiere datos hacia y desde periféricos “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 operación 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 manipulación 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, comparación,

división, saltos si el bit está activo/inactivo, saltos incondicionales a subrutinas y movimiento de memoria de programa. Ejecuta operaciones lógicas sólo desde el bit 24 al 47 del acumulador; estos bits representan la parte más significativa de los datos.

Soporte. Motorola ofrece varias placas de evaluación del DSP5600x de bajo coste ;

también un sistema de desarrollo y aplicación a 40 MHz. Otras herramientas hardware también están disponibles. El DSP56000 usa una interfaz de debug propia, On Chip Emulator (OnCE), en lugar del interfaz estándar JTAG. Motorola aporta un compilador Gnu y un debugger, un ensamblador-linkador y un simulador. Otros fabricantes proporcionan paquetes de adquisición de datos y de diseño de filtros así como software OS.

3.3 DSP96002 El DSP96002 de Motorola es básicamente una extensión 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 múltiples. Estos buses incluyen un conjunto de buses de memoria X e Y y de programa. También incluye un bus de datos global para transferir direcciones y datos locales, y también un bus DMA que soporta dos canales DMA. El controlador DMA “on-chip” mueve datos sin interrumpir la ejecución de instrucciones en el DSP.

El DSP96002 tiene también 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 petición 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 programación casi idéntico 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.

Ing. Telecomunicación Sistemas de Procesado de Señal en Tiempo Real

Damián Martínez Muñoz 36

Al igual que el DSP56000, el 96002 tiene memoria RAM X e Y y bloques de ROM para proporcionar los coeficientes y variables de los cálculos de multiplicación-acumulación (MAC) para suma de productos. Las operaciones MAC toman los operandos de entrada de los registros de la ALU (como en el DSP56000)

La unidad de ejecución incluye un multiplicador separado y un sumador-restador que controla estas operaciones para los cálculos de FFT , una unidad lógica y un registro de desplazamiento. Estas unidades soportan operaciones con enteros y en coma flotante con exponentes de 11 bits y mantisas de 32. El DSP96002 cumple el estándar IEEE para representaciones de coma flotante de precisión doble y simple.

El DSP96002 tiene esencialmente la misma unidad de generación de direcciones que el anterior DSP56000. Esta unidad comprende dos generadores de direcciones que pueden operar a la vez. Cada generador tiene tres conjuntos de 4 registros de 32 bits: direcciones (punteros de dirección), desplazamiento (valores offset) y registros de modificación. Podemos cargar y acceder a estos registros mediante el bus de datos global. El DSP96002 tiene una arquitectura flexible. El DSP soporta una mezcla de espacios de memoria extendidos desde un espacio de direcciones único y unificado a otro con espacios de 32 bits separados para X e Y y memoria de programa.

Modos de direccionamiento. El DSP96002 soporta direccionamiento de registro directo, directo a memoria,

registro indirecto e inmediato. El generador de direcciones también soporta direccionamiento módulo (para buffers circulares) y bit reverse.

Instrucciones especiales. El DSP96002 soporta bucles hardware con bloques repeat, test y cambio de bit,

comparación de gráficos, llamadas condicionales a subrutinas y estados, conversiones de entero a coma flotante y viceversa. El DSP96002 no soporta instrucciones de ejecución condicionales.

Soporte. Módulo de desarrollo de aplicaciones para evaluaciones y debugging del

DSP96002. El módulo usa el soporte de emulación “on-chip” (ONCE) del procesador para establecer puntos de ruptura, ejecuciones paso a paso de la CPU y leer/modificar memoria o registros. No provee soporte JTAG. Podemos configurar el chip para que trabaje con RAM externa para desarrollo. Motorola proporciona un compilador C Gnu y herramientas, también un linkador/ensamblador, librerías y un simulador de comportamiento. Otras compañías ofrecen otras herramientas que incluyen compiladores ADA y C, sistemas de desarrollo para gráficos, software de diseño de filtros y tiempo real OS.

Ing. Telecomunicación Sistemas de Procesado de Señal en Tiempo Real

Damián Martínez Muñoz 37

ANALOG DEVICES

Ing. Telecomunicación Sistemas de Procesado de Señal en Tiempo Real

Damián Martínez Muñoz 38

4.1 Familia ADSP-2100 Los DSP’s de la familia ADSP-2100 proporcionan un juego de instrucciones que requieren

un único ciclo de instrucción cuando se implementan algoritmos de DSP.

El procesador puede realizar varias operaciones por ciclo. La unidad multiplicador-acumulador (MAC), la ALU y los registros de desplazamiento están separados pero no pueden trabajar en paralelo. Otros registros secundarios siguen cada ejecución de los registros de unidad, permitiendo un rápido cambio de contexto para el procesamiento de instrucciones.

Si necesitamos precisión extendida podemos usar el acumulador de 40 bits de la unidad MAC (incluidos los 8 bits para extensión de signo) como dos registros de 16 bits y uno de ocho, y copiar individualmente la información que contienen en otros registros. El registro de desplazamiento mueve una entrada de 16 bits a la izquierda o la derecha dentro de un registro de 32. El hardware también permite la detección de exponente y normalización de bloques en coma flotante para incrementar la precisión del DSP de 16 bits. Una aplicación usa el registro de desplazamiento para conversiones entre números en coma fija y en coma flotante.

Los miembros de la familia ADSP-2100 tienen generadores de direcciones X e Y y buses de datos y programa. Cuando en la ejecución utilizamos memoria interna, los buses facilitan los datos X e Y para cada ciclo de MAC. También podemos usar la memoria del programa como memoria de datos para almacenar constantes durante la realización de la instrucción MAC.

La memoria de programa de doble puerto permite dos accesos a memoria en un solo ciclo. Para accesos a la memoria externa, el ADSP-2100 tiene un generador de estados de espera programable desde 0 hasta 7 estados posibles.

Los diseñadores de Analog Devices optaron por una palabra de datos de 16 bits y una palabra de instrucción de 24. El tamaño de la palabra de instrucción permite al dispositivo usar más instrucciones complejas y ofrece mayor flexibilidad que la que da un código de operación de 16 bits. La diferencia entre el tamaño de la palabra de código y la palabra de datos requiere una arquitectura Harvard con dos espacios de memoria. Estas arquitecturas, con espacios de memoria separados, son frecuentes en la mayoría de los DSPs, permitiendo realizar instrucciones en paralelo con operaciones de ciclo único MAC. Para diseños con memoria externa, los diferentes anchos de memoria conllevan que si se distribuye la memoria de datos y de programa en tres chips de memoria de 8 bits de palabra perderemos uno de cada 3 bytes en el área de memoria de datos.

Modo de direccionamiento : Los ADSP-2100 permiten direccionamiento inmediato, directo, indirecto e indexado. Cada

generador de direcciones soporta como máximo 4 buffers circulares con 3 registros cada uno. Los registros definen el final, la longitud y las direcciones de acceso. Un generador de direcciones proporciona direccionamiento bit reverse sólo para datos.

Instrucciones especiales : El ADSP-2100 puede ejecutar condicionalmente la mayoría de las instrucciones. El

comando do-until establece una secuencia de instrucciones que pueden ser de longitud arbitraria. Debido a que el ADSP-2100 es un dispositivo ‘nonpipelinned’ no incurre en penalizaciones por ejecutar saltos y llamadas a subrutinas.

Soporte : Analog Devices proporciona un compilador ANSI C, un ensamblador, un linkador y un

simulador interactivo. Las tarjetas de evaluación están disponibles para la mayoría de los DSP’s de esta familia. Los emuladores en circuito están disponibles para el debug de tarjetas hardware.

Ing. Telecomunicación Sistemas de Procesado de Señal en Tiempo Real

Damián Martínez Muñoz 39

4.2 Familia ADSP-21cspxx

Analog Devices basa el ADSP-21cspxx de coma fija de 16 bits en los 21xx. Los 21cspxx pueden realizar un procesamiento de señal concurrente. Para facilitar su programación en C, el ADSP-21cspxx tiene un rango de direccionamiento de 16 M palabras y 48 registros de datos internos para el almacenamiento de las variables locales, computación y generación de direcciones de datos. Para el acceso múltiple de señales en tiempo real, 48 registros adicionales permiten al DSP conmutar tareas en un ciclo de reloj. Estos registros ocultos favorecen aplicaciones que ejecutan algoritmos con dos secuencias de datos diferentes.

El corazón de los ADSP-21cspxx es un direccionador-procesador-decodificador, que realiza todo el proceso en un solo ciclo, después de que la instrucción direccionada es cargada. Una unidad acumulador-multiplicador de 16x16 bits (MAC) utiliza dos acumuladores de 40 bits que reducen los problemas asociados a un acumulador único. El segundo acumulador tiene un registro de salida compartido con el registro de desplazamiento de 40 bits del DSP.

Aunque el ADSP-21cspxx tiene buses de datos de 16 bits, el dispositivo usa palabras de instrucción de 24. Este ancho de palabra permite soportar más operaciones por instrucciones y proporciona mayor flexibilidad en los mecanismos de direccionamiento. El DSP presenta una arquitectura von Neumann de bus doble. Los dos buses permiten obtener datos simultáneamente del espacio de memoria unificado del ADSP-21csp01.

Dos generadores de direcciones de datos (DAGs) soportan cada uno cuatro buffers circulares simultáneos. Los DAGs tienen registros base que permiten a un programador situar los buffers circulares en cualquier lugar de la memoria. Los DAGs pueden acceder como máximo a 16 M de palabras de memoria. Un generador de direcciones proporciona un direccionamiento de bit reverse para datos exclusivamente .

El ADSP-21csp01 contiene dos puertos serie bidireccionales que se pueden programar para obtener canales múltiples y para transferir datos a 25 Mbps. Un puerto DMA de 16 bits hace de interfaz del dispositivo con otros procesadores y buses del sistema. Un controlador DMA permite al dispositivo transferir datos hacia y desde cada puerto serie y también hacia y desde el puerto DMA sin interrumpir al procesador.

Modos de direccionamiento. El ADSP-21csp01 permite direccionamiento inmediato, con registro directo a memoria y

con registro indirecto.

Instrucciones especiales. Tienen un carácter más ortogonal que las del 21xx. El ADSP-21csp01 puede ejecutar condicionalmente más instrucciones. Un comando do-until establece una secuencia de instrucciones para cada operación.

Soporte. Las herramientas de desarrollo incluyen un linkador, un simulador y un compilador C integrado dentro de un entorno de diseño basado en Windows. La compañía también ofrece un emulador in-circuit, EZ-ICE, que usa el interfaz JTAG para monitorizar y controlar el procesador de la tarjeta en cuestión. Analog Devices también proporciona una librería en tiempo real DSP.

4.3 Familia ADSP-21020

Ing. Telecomunicación Sistemas de Procesado de Señal en Tiempo Real

Damián Martínez Muñoz 40

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 instrucción de 48 bits para codificar múltiples operaciones por instrucción. La instrucción más compleja puede ejecutar 3 cálculos, 2 desplazamientos de datos y la actualización de 2 punteros en un solo ciclo. Sin embargo, tenemos la desventaja de que las palabras de instrucción 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 instrucción 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 intrucción mediante la ejecución 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 diseño basado en acumulador. Las operaciones se centran en una matriz de 32x40 bits, 10 puertos de registro de fichero que soportan múltiples acumuladores y registros permitiendo más flexibilidad para la compilación en C y el ensamblado de programas. Los registros de datos soportan formatos de coma fija y coma flotante, dependiendo de cómo la instrucción haga referencia a ellos. El 21020 tiene 10 puertos con sólo 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 matemáticas tanto coma fija y coma flotante. Los acumuladores de 80 bits proporcionan 16 bits de cabecera para la expansión 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 sólo ciclo de reloj.

El registro de indicadores de la ALU retiene los resultados de 8 operaciones de comparación de la ALU. Los bits del registro de indicadores forman un registro de desplazamiento a la derecha. Cuando el procesador ejecuta una operación de comparación 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 simultáneos; cada conjunto de registros abarca el índice, modificación, base y longitud de los registros. Los bufferes circulares pueden residir en cualquier dirección de memoria y su longitud puede ser arbitraria y son esenciales para la gestión 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 mayoría de las instrucciones: la instrucción utiliza un test de condición preliminar y si ésta es positiva se ejecuta la instrucción.

Ing. Telecomunicación Sistemas de Procesado de Señal en Tiempo Real

Damián Martínez Muñoz 41

Modos de direccionamiento. Inmediato con 32 bits, indexado, de bit-reverse, módulo-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 división, llamadas a subrutinas condicionales, bucles de una única instrucción 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). También soporta formatos de coma fija, fraccionaria y entera (sin signo o en complemento a dos) de 32 bit. Son posibles 6 niveles de anidación de interrupciones.

Soporte. Analog Devices proporciona un conjunto de utilidades que incluyen un compilador de ANSI C, un compilador de C con extensiones numéricas C para cálculos matemáticos y aplicaciones en coma flotante, un debugger fuente, un linkador-ensamblador, un simulador, librerías de aplicaciones y un divisor PROM. Analog Devices ofrece un emulador en circuito de gran velocidad. También tiene licenciado el ADSP-21020 a Temics Semiconductors (SantaClara, CA).

4.4 Familia SHARC (ADSP-2106x) Además de las características de la arquitectura del ADSP-21020, el computador de arquitectura Super Harvard (SHARC) de coma fija y coma flotante, ó ADSP-2106x, integra una gran memoria on-chip y un controlador de E/S para descargar los procesos de E/S de datos. Los chips SHARC tienen dos puertos serie de alta velocidad y un puerto paralelo/host. Ambos hacen posible una interfaz directa a memoria externa, periféricos y procesador host, facilitando la interconexión de hasta 6 ADSP-2106x.

La CPU del ADSP-2106x trabaja usando memoria externa o interna del chip para una amplia gama de aplicaciones. Algunos chips SHARC contienen 512 Kbytes de memoria on-chip distribuidos en 2 bancos de memoria RAM de doble puerto. Ésta RAM permite accesos a memoria en un único ciclo de instrucción. Podemos usar esta memoria para almacenar una combinación de 16, 32 ó 40 bits de datos o instrucciones de 48 bits y realizar hasta 4 accesos por ciclo: memoria de programa para código de operación y datos, memoria de datos para los datos y una carga desde memoria externa usando el procesador de E/S del chip.

SHARC incluye un controlador de E/S que realiza transferencias en paralelo con la realización de operaciones en la CPU. El controlador de E/S descarga la lectura y escritura entre memoria interna y externa, pero aparecen retardos cuando los accesos se realizan a una misma dirección de memoria. El controlador administra 10 canales DMA, transfiriendo datos dentro de la memoria interna, dispositivos periféricos externos, y el host, 2 puertos serie y 6 puertos de enlace. Todas las operaciones DMA son transferencias de datos sin penalización en tiempo que generalmente no producen interrupción. El controlador de DMA nos permite el control dinámico del ancho del bus de memoria externa. Los puertos serie síncronos pueden transferir datos a velocidades de hasta 40 Mbps; los 6 puertos de comunicaciones pueden transferir datos tan rápido como un byte por ciclo de reloj. Con 6 enlaces operando simultáneamente la máxima transferencia es de 240 Mbytes por segundo.

La CPU, el controlador de E/S, y los periféricos interconectan y realizan transferencias flexibles y no intrusivas a través de una unidad de interconexión multibus. Para reducir el cuello de

Ing. Telecomunicación Sistemas de Procesado de Señal en Tiempo Real

Damián Martínez Muñoz 42

botella, la interconexión permite el desplazamiento ilimitado de datos e instrucciones desde memoria interna o externa , caché, y E/S desde periféricos de fuera o dentro del chip, en un solo ciclo.

SHARC proporciona 6 puertos de comunicación y conexión para formar array de multiprocesadores. Estos puertos captan datos a través del controlador de E/S y permiten crear mallas de procesadores DSP que pueden acceder a los espacios de memoria del resto (conexiones punto a punto entre los puertos del DSP definen cada procesador dentro de la malla). El controlador “on-chip” de E/S inicia, y responde a esos puertos. Las transferencias pasan a través de los puertos de E/S hacia y desde la memoria interna . El controlador de E/S descarga al procesador principal del DSP de realizar todas estas transferencias.

Un puerto en paralelo sirve como interfaz directa para la memoria externa, periféricos o un procesador host. Este bus puede ser compartido hasta un máximo de 6 chips ADSP-2106x. Los chips SHARC ofrecen un espacio de direccionamiento unificado usando un bus de direcciones único de 32 bits y un solo bus de datos de 32 ó 42 bits. Para relojes de 40 MHz., el chip permite usar una memoria con ciclo de acceso de 15 nseg. sin requerir estados de espera. La interfaz especial host soporta µPs de 16 y 32 bits, así como también buses de sistema, tanto ISA como PCI. SHARC trata este host como un dispositivo mapeado en memoria, con escrituras o lecturas directas a memoria interna.

Modos de direccionamiento. SHARC ofrece direccionamiento inmediato, indexado, de bit reverse, módulo circular, de registro directo e indirecto (se debe usar el direccionamiento indirecto para accesos a memoria externa).

Instrucciones especiales. SHARC permite manipulación de bit, iteraciones de división, llamadas a subrutinas condicionales, bucles con una única instrucción o bloque de instrucciones, comparaciones de coma fija y coma flotante y ejecuciones condicionales. SHARC soporta IEEE-754, coma flotante (23 bits de datos, ocho de exponente y un bit de signo) y el formato extendido IEEE de 40 bits para precisión adicional (32 bits de datos).

Soporte. Analog Devices ofrece un emulador basado en JTAG de gran rapidez que usa la capacidad de “debugging” incorporado en el ADSP-2106x. Trabaja bajo Microsoft Windows y soporta “debugging” para sistemas multiprocesador. La compañía también proporciona un Sistema de Desarrollo EZ-Lab, una tarjeta para PC con múltiples procesadores 2106x, así como un EZ-kit reducido con un compilador de C por $179. Otras compañías ofrecen productos tales como tarjetas multiprocesadores para PC, VME y OS. Analog Devices aporta un compilador de C basado en tecnología Gnu. Este compilador soporta C Numérico, que amplía la capacidad de procesamiento de matrices y vectores para procesamiento de señales. Otras herramientas incluyen un emsamblador-linkador, un simulador, librerías de aplicaciones, un divisor PROM y un debugger C a nivel fuente .

Ing. Telecomunicación Sistemas de Procesado de Señal en Tiempo Real

Damián Martínez Muñoz 43

ANEXO: Tablas Comparativas

Ing. Telecomunicación Sistemas de Procesado de Señal en Tiempo Real

Damián Martínez Muñoz 44

Dispositivos Aplicaciones Instrucciones/datos (bits)

Acumula-dor (bits)

Registro de desplazamiento

(bits)

Generador de

direcciones

Buses de datos

Soporte multiprocesa-

dor

Puerto de interfaz

host

Rango de direcciones externo

16 bit Coma fija 16 bit Coma fija Advances Risc Machines Picolo

Telefonía GSM, codificación de voz CELP G.729

32/16 48 32 Uno Uno Sí Sí 4 Kbytes

Analog Devices ADSP-2011

Módem, videoconferencia,

GSM, speaker de teléfono

24/16 40 32 Dos Dos No Paralelo 4 Mbytes

ADSP-21csp01 Estaciones base celulares, módem DSVD, mezcladores de

audio, cancelación de eco acústico

24/16 40 40 Dos Dos Sí 16 bit host 48 Mbytes puerto DMA

Array Microsystems A66xxx

Radar, sonar, procesamiento de imagen, electrónica médica

20/16 20 Ninguno Chip separado con 5

6 Sí Paralelo 256 kbytes

Atmel Lode

Codificación de voz, procesamiento celular de señales

32/16 40 40 2 2 No Opción del cliente

64 kbytes

DSP Group Pine DSPcore

Máquinas de teléfono-contestadores, módems de baja velocidad,

grabadoras de voz

16/16 36 No 2 2 Sí Opción del cliente

64kbytes (datos), 64kbytes (instrucciones)

Oak DSPcore Módems, DSVD, vídeo/audio conferencia, teléfonos celulares,

DVD, AC3

16/16 36 36 2 2 Sí Opción del cliente

64kbytes (datos), 64kbytes (instrucciones)

Hitachi SH-DSP

Telecomunicaciones móviles, imagen digital, multimedia, módems

32/32 40 40 2 3 No DMA, Hold/Hida

64Mbytes

Lucent Technologies DSP16xxx

Comunicación móvil, módems 16/16 36 36 2 2 No Serie 64k words

Motorola 568xxx

Mensajería digital, cableado/móviles, control digital

16/16 36 16 2 3 Sí No 128kbytes (datos), 1Mbyte (instrucciones)

DSP561xx Celular digital, comunicación de voz 16/16 40 Ninguno 2 2 No Paralelo 128kbytes (datos), 128kbytes (programa)

NEC µPD7701x

Móviles, multimedia, vídeo conferencia, fax/módem

32/16 40 40 2 2 Sí Paralelo y serie

96kbytes (datos), 96kbytes (instrucciones)

Oxford Micro Devices A236

Procesamiento de vídeo 32/(8 ó 16) 40 Ninguno 5 1 por procesador

Sí 100Mbyte/s DMA

16 Mbytes

SGS-Thomson D950-Core

Móviles, fax/módem 16/16 40 40 2 2 Sí Opción del cliente

256kbytes (datos), 128kbytes (programa)

Texas Insruments TMS320C1x

Control de motores 16/16 32 16 1 1 No Soporta para-lelo (algunas

versiones)

128kbytes

TMS320C2x Controladores de discos duros 16/16 32 16 1 1 Sí No 256kbytes

TMS320C2xx Telecomunicaciones, electrónica de consumición, sistemas de seguridad

16/16 32 16 1 2 Sí No 384kbytes

Ing. Telecomunicación Sistemas de Procesado de Señal en Tiempo Real

Damián Martínez Muñoz 45

Dispositivos Aplicaciones Instruccio-

nes /datos (bits)

Acumula-dor (bits)

Registro de desplazamien-

to (bits)

Generador de

direcciones

Buses de datos

Soporte multiprocesa-

dor

Puerto de interfaz

host

Rango de direcciones externo

TMS320C5x Multimedia, celulares/sin cable/módem, discos duros

16/16 32 16 1 2 Sí Paralelo 384 kbytes

TMS320C54x Comunicaciones con/sin cable, redes, multimedia

16/16 40 40 2 3 Sí Paralelo 384 kbytes

TMS320C6x Estaciones móviles, plataformas de telefonía multicanal

32/16 40 40 2 2 Sí Paralelo 8 Mbytes

TMS320C8x Vídeo conferencia, procesamiento digital, switching digital

64/16 32 32 2 por DSP 2 por procesador

Sí Vía Hold/HoldA handshake

4 Gbytes

Zilog Z893xx

Contestadores automáticos digitales, controladores de disco duro,

telefonía digital, lectores de cinta magnética, control de motores

16/16 24 Ninguno 2 2 No No 64 bytes (datos), 64 kbytes (programa)

Z894xx Móviles, compresión de datos, dispositivos de contestadores

automáticos digitales

16/16 40 32 2 4 No No 128 bytes (datos), 128 kbytes (programa)

20 y 24 bit Coma fija 20 y24 bit Coma fija Butterfly BDSP9124

Radar, imagen para aplicaciones médicas

8/24 (complex)

60 (dual)

Ninguno Chip separado 4 (complex)

Sí Paralelo Ilimitado

Motorola 5600x

Audio, control, módem 24/24 56 Ninguno 2 2 No Paralelo 256 kbytes (datos), 128 kbytes (programa)

563xx Móviles, multimedia, telecomunicaciones

24/24 56 56 2 3 Sí PCI-compatible

16 Mwords x 3

32 bit Coma flotante 32 bit Coma flotante Analog Devices ADSP-21020

Ultrasonidos para aplicaciones médicas, instrumentación de

precisión, gráficos 3D, radar, sonar

48/40 80 32 2 No No 4G words

ADSP-2106x Procesamiento de gráficos/vídeo/imagen, redes

digitales sin cable, antibloqueo, estaciones digitales celulares de

sistemas de frenado

48/40 80 32 2 3 Sí Paralelo 4G words

Motorola DSP96002

Imagen, comunicaciones, procesamiento de cadenas

32/32 96 Ninguno 2 2 Sí Paralelo (dos)

413x109

Texas Instruments TMS320C3x

Control, gráficos, imagen, audio, copiadoras, impresoras

32/32 40 32 2 2 Sí No 32 Mbytes

TMS320C4x Radar, sonar, imagen, gráficos 3D, infraestructura de telecomunicación, comunicaciones de alta velocidad,

aplicaciones de multiproceso

32/32 40 32 2 3 Sí No 4 Gbytes

Dispositivos Caché de instrucción

Niveles de pila hardware

Pila software

Looping hardware

Soporte JTAG

Fuentes de interrupciones

Retardo máximo de interrupción

FFT 256 puntos (ciclos)

Características especiales

Ing. Telecomunicación Sistemas de Procesado de Señal en Tiempo Real

Damián Martínez Muñoz 46

externas (ciclos)

16 bit Coma fija 16 bit Coma fija Advances Risc Machines Picolo

64x32 bit No Sí Sí Sí 2 20 Contactar con el vendedor

Permite trabajar con varios µP ARM, 4 acumuladores de 48 bit

Analog Devices ADSP-2011

Ninguno 16 No Sí No 4 5 11,920 Interfaz de memoria externa de datos y de programa es de 8 bits, 64 kwords SRAM

ADSP-21csp01 64 palabras 31 (caché selectiva de programa)

No counter stack

Sí Sí 4 5 11,915 Controlador de DMA de 8 canales, puertos serie multicanal, 96 registros con cambios de tarea un sólo ciclo, 2 puertos serie autobuffer/multicanal

Array Microsystems A66xxx

No Ninguno No No Sí Ninguno NA Contactar con el vendedor

Procesador de funciones específico para FFTs ; nivel comercial, industrial y militar

Atmel Lode

No 16 No Sí Sí 1 8 Contactar con el vendedor

Unidades MAC dobles, Galois, Aceleradores Viterbi

DSP Group Pine DSPcore

No 8 No Sí Emulación on-chip

2 2 19,424 Unidad de manipulación de bit, base ASIC, acelerador Viterbi

Oak DSPcore No Ninguno Sí Sí Emulación on-chip

3 2 16,528 Unidad de manipulación de bit, base ASIC, acelerador Viterbi

Hitachi SH-DSP

No No Sí Sí Sí 4 individuales, 16 codificación binaria

5 Contactar con el vendedor

µP RISC +DSP, interfaz EDO RAM, DMA, DLL

Lucent Technologies DSP16xxx

15x16 bit Ninguno Sí No Sí 2 De 6 a 7 21,293 Bajo consumo (0.7 mA/MIPS), incluye expansión de arquitectura con aceleradores

Motorola 568xxx

No Bucle do Sí Sí Sí 2 20 15,657 Instrucciones y arquitectura tipo µC, unidad MAC nonpipelined, 5 modos de bajo consumo

DSP561xx No 15 No Hardware con bucles

anidados

Propio 4 5 . 5 12,162 Contador, codec

NEC µPD7701x

No 15 No Sí Sí 4 4 10,888 8 registros/acumuladores de propósito general de 40 bits, conjunto de instrucciones en paralelo de un sólo ciclo, operación multifunción

Oxford Micro Devices A236

1 kbyte + 1 kbyte (datos)

Ninguno Sí No No 4 12 Contactar con el vendedor

4 DSPs en paralelo y un µP scalar de 24 bit, 3 puertos DMA para conexión de video, RS-232C, coprocesador integrado con estimación de movimiento

SGS-Thomson D950-Core

No Ninguno Sí Sí Sí 1 7 12,971 Diseño para aplicaciones dedicadas. Librería disponible para diseños ASIC

Texas Insruments TMS320C1x

No 4 (8 para el C16) No No No 2 7 Contactar con el vendedor

Unidad MAC de dos instrucciones

TMS320C2x No 8 No Sí No 3 8 Contactar con el vendedor

Instrucción Repeat, RAM/ROM extendida

Ing. Telecomunicación Sistemas de Procesado de Señal en Tiempo Real

Damián Martínez Muñoz 47

Dispositivos Caché de instrucción

Niveles de pila hardware

Pila software

Looping hardware

Soporte JTAG

Fuentes de interrupciones

externas

Retardo máximo de interrupción

(ciclos)

FFT 256 puntos (ciclos)

Características especiales

TMS320C2xx No 8 No No Sí 5 8 25,039 Memoria flash on-chip

TMS320C5x No 8 No Sí Sí 6 12 20,907 Unidad lógica en paralelo, amplia gama de RAM y ROM

TMS320C54x No Ninguno Sí Sí Sí 5 8 13,251 Gran cantidad de memoria RAM/ROM interna, acelerador Viterbi

TMS320C6x 8 kbytes Ninguno Sí Sí Sí 5 12 4227 DSP VLIW, 8 unidades funcionales en paralelo, 32 registros de 32 bit, compilador paralelo

TMS320C8x 2 kbytes Ninguno Sí Sí Sí 4 6 DSP 4881 4 DSPs y 1 µP RISC, 50 kbytes de SRAM, control de DRAM y vídeo, coprocesador DMA

Zilog Z893xx

No 6 No No No 3 4 Contactar con el vendedor

Interfaz codec, ADC, contador /temporizador ,PLL, SPI

Z894xx No No Sí Sí No 3 6 Contactar con el vendedor

Interfaz codec, temporizador/contador, bus de teleprograma/datos externo, direccionamiento lineal

20 y 24 bit Coma fija 20 y24 bit Coma fija Butterfly BDSP9124

Contactar con el vendedor

Opción del consumidor

Opción del consumidor

Sí No 1 NA Contactar con el vendedor

1k-point complex, FFT 24 bit en 65 ms, 26 instrucciones de alto nivel integradas

Motorola 5600x

No 15 No Bucles do anidados

Propio 3 5 8332 Emulación onchip, PLL, temporizador

563xx 3 kbytes 16 Sí Sí Sí 5 4.25 10,918 La pila utiliza automáticamente memoria externa cuando se desborda, DMA

32 bit Coma flotante 32 bit Coma flotante Analog Devices ADSP-21020

32x48 bit 20 No Sí Sí 5 5 6303 La memoria de programa almacena tanto datos como código, arquitectura Harvard off-chip, unidades de cálculo independientes en paralelo

ADSP-2106x 32x48 bits 30 No Sí Sí 4 5 6303 SRAM de doble puerto, 512 kbytes on-chip, 6 puertos de conexión, 2 serie, controlador E/S de 10 canales DMA

Motorola DSP96002

1024x32 bits 15 No Sí Propio 3 5 Contactar con el vendedor

2 interfaces host 32 bit, 2 puertos de memoria externa 32 bit, 2 canales DMA

Texas Instruments TMS320C3x

64x32 bits Ninguno Sí Sí Propio 4 8 12,410 Interfaz de memoria flexible (C32)

TMS320C4x 128x32 bits Ninguno Sí Sí Sí 4 8 11,884 Puertos de comunicación

Ing. Telecomunicación Sistemas de Procesado de Señal en Tiempo Real

Damián Martínez Muñoz 48

Atributos del procesador ADSP-21060 TMS320C40 DSP96002 i860

Tiempo de ejecución de instrucción

25 ns 40 ns 50 ns 20 ns

MIPS 40 25 20 50

Máximo MFLOPS 120 50 60 100

Espera de las instrucciones en coma flotante

25 ns 40 ns 50 ns 60 ns

RAM interna (32 bit words) 32 (16 principales) 8 8 30 Puertos serie 2 0 0 0

Ancho de banda DMA 240 MB/s 50 MB/s 80 MB/s 0

FFT, 1K complex 0.46 ms 1.54 ms 1.05 ms 0.76 ms

División, coma flotante 32 bit 150 ns, 6 ciclos 360, 9 ciclos 350 ns, 7 ciclos 440 ns, 22 ciclos

Tamaño encapsulamiento 1.59 in2 3.46 in2 3.46 in2 3.06 in2

Ejecución por pulgada cuadrada

74 MFLOPS/in2 14 MFLOPS/in2 17 MFLOPS/in2 33 MFLOPS/in2

Respuesta a interrupción 3 ciclos 4 ciclos 3 ciclos 22 ciclos

Comparación entre diferentes DSP’s de coma flotante

Fuente : Texas Instruments, Motorola, Intel Users Manuals & Datasheets y EDN Magazine

Ing. Telecomunicación Sistemas de Procesado de Señal en Tiempo Real

Damián Martínez Muñoz 49

Bibliografía • TMS320C1x User’s Guide. Texas Instruments. • TMS320C1x Product Bulletin. Texas Instruments. • TMS320C2x User’s Guide. Texas Instruments. • Apuntes del Seminario sobre DSP’s de Texas realizado por ADM. • Manual de Usuario de la familia DS56000. Motorola. • Manual de Usuario del DS56002. Motorola. • Número de Mayo-1997 de la revista EDN Europe.

Direcciones WEB de interés:

• Texas Instruments: http://www.ti.com • Motorola: http://www.motorola-dsp.com • Analog Devices: http://www.analog.com