P R O Y E C T O D E T I T U L A C I O N I Y II
/ T A R J E T A P A P A P R O C E S A M I E N T O
D I G I T A L D E S E R A L E S
R E S U M E N
A L U M N O :
PEREZ P E W T A MANLIEL
A S E S O R :
1' MEXlCO, D. F., FEBRERO DE 1937.. /
. . _ . A S
C O N T E N I D O
PAGINA
PRESENTACION ......................................... 1
INTRODUCCION .......................................... 3
PROCESAMIENTO DE SEYALES ............................. 3
APLICACIONES DE LOS DSPs ............................. 7
ORIGEN DEL DSP56001 ................................. 12
TARJETA PARA PROCESAMIENTO DIGITAL DE SERALES
- DESCRIPCION GENERAL ............ 17 - ETAPA INTERFACE A PC ........... 19 - ETAPA DE CONTROL ............... 23 - ETAPA DE MEHORIA ............... 26 - ETAPA DSP ...................... 30
IMPLEMENTACION ...................................... 44
LISTA DE COMPONENTES ................................ 44
RESULTADOS .......................................... 46
BIELIOGRAFIA ........................................ 49
DIAGRAMAS
D 1 . - INTERFACE A PC .................. 22 D 2 . - ETAPA CONTROL ................... 25 D 3 . - ETAPA DE MEMORIA ............... - 2 9
D 4 . - ETAPA DSP ....................... 43
P R E S E N T A C I O H
A continueclon me prarente un remumen
del trebejo realizado para llover a oabo
loe Proyectos de TltulaciCln I y I1
por el alumno Henuel P4rez Permltr
bajo le asesorfa d e l profesor Omer Anin A.
en la Univermidad Authnornm Metropolitana
Unidad Iztepalapei parr obtener el t i tulo
de Ingeniero en Electrblca
1
INTRODUCCION
En mete trabajo re praeente Ir implementaci& de una tarjeta para
procesamiento digital de meHalem da propbito general. L8 cual
tiene como objetivo servir de ncMulo de desarrollo para el estudio
del proc~eamimnto digital de sefieles.
La tarjeta puede mer instalada en una computadora perronal con bus
tipo ISA. Eete tipo de bu8 me encuentra en la mayoría de lam
computadoras percronales compatibles con IBH, lo cua l hace que la
tarjete pueda ser inrtalada mn aaeí cumlquier PC sin necesidad de
alguna adaptacih erpacial. All, esta tarjeta reprerenta un
recur80 accesible, tomando en cuenta que su finalidad es ser
empleada por eetudiantes de ingeniería en electrtmica intereEado8
en ~1 derrrrollo del proceramiento digital de mefieles.
La tarjeta omtA badladr en m1 procerador de propbito específico
DSP56001 de Notorola, e1 cual ee un procceador direffado
erpecialmente perra realizar tareae de proceramiento digital de
eef5alea. Con una arquitectura y un conjunto de instrucciones que
facilitan la implcmcntacion de circuitos cuya funcidn principal
Baa el procaramiento digital de reffaleer.
2
Proamramiento digitel de eefieles
El procesamiento digital da refialem, em el proceramiento
aritn+tico de ~ d S t ~ l m ~ d e tiempo real auertreadas a intervalos
regulares y digitelizedar, Ejemplo@ de procesamiento digital de
eer(eles ron los riguientes :
Filtrado de refiarles
Convolucldn, Ia cut41 em la mezcla de dos aefialer
Correlacibn, la cual er la conperacir5n de dota senalea
Rectificrcidn de una sofSal
Amplifioecih de una renal
Trensformacith de une seTIal
Todas eeee funoioncs han sido realizadas tradicionalmente usando
circuitos anal-icoe. St510 recientumente la tecnología he provisto
el poder de procesamiento neceeario para realizar digitalnente
eeae y otrae funciones urendo un DSP ( Digital Signal Processor).
La figura 1 es una descripcidn grgfice del procesmmiento
e n a l w i c o de seflales. El oirculto filtra una ereflal desde un eeneor
urando un amplificador operacional y controla un actuador con el
resultado. Puesto que el filtro ideal no BB poeible de disefiar, el
ingeniero debe disefiar el filtro para una respuerta aceptable,
conriderendo variacionee en temperatura, envejecimiento de los
componentes, variacionee de la fuente de poder, y preciaih de los
componentes. El circuito resultante trpicamente tiene baja
inmunidad al ruido, requiere ajustes y es dificil de modificar.
FILTRO ANALOGICO
X(t) Entrada del Sensor
Y(t) Salida al Actuador
CARACTERISTICAS DE FRECUENCIA
Ganancia Ganancia
FC Frecuencia
FILTRO IDEAL FILTRO REAL
Figura 1. - Procesamiento analegico de una selfal.
El circuito equivalente usando un DSP es mostrado en la figura 2 .
Esta aplicacion requiere un convertidor analdgico a digital
(AID) y un convertidor digital a analbgico (PIA) en adicien al
DSP. Aun con esas partes adicionales. la cantidad de componentes
puede ser mas bejo usando un DSP debido a la alta integraci5n
disponible con l o s componentes actuales.
4
El procesamiento en este circuito comienza por una limitacih en
bmnda de la entrada con un filtro anti-alCae, eliminando eef'iales
fuera de la banda que pueden ser enviadae al paea-banda debido al
proceso de muestreo. La sef'ial ee entonces muestreada, digitalizada
con un convertidor A/D, y entoncem enviada al DSP.
El filtro implementado por el DSP es estrictamente un problema de
software. El DSP puede iaplementar,directamente cualquier filtro
que pueda ser implamentado usando t4cnicas anal&icae. TambiCn,
pueden ser implenentedos fhcilmente filtros adaptivos usando DSP;
mientrae que, es06 filtro6 eon extremadamente dlffcilee de
implementar ueando tknicae analdgicae.
La malida del DSP es procesada por un convertidor digital a
analt5gico y es filtrada en un paso-bajo pare quitar los efectos de
la digitalizacidn. En reebmen, las ventajas de usar el DSP
incluyen lo siguiente :
- Heno= componentes
- Deerempef'io determinletico eetable - Amplio rango de aplicacih - Alta inmunidad al ruido y rechazo de fuente de poder - Puede eer construido con una auto-prueba
- Sin ajueteer de filtro
- Filtos con tolerancias mas cercanas - Filtros adaptivos implementados fAcilmente
FILTRO MUESTRE0 Y OPEHACION CONVERTIDOR FILTRO PASO CONVERSION DSP D / A FASO BAJO A I D BAJO
RESPUESTA v AL IMPULSO X ( t ) FINITO i - Y!t)
- e n t r a d a s a l i d a a n a l d g i c a a n a l 5 g i c a
g a n a n c i a
I
FILTRO I IDEAL
t f fe
FILTRO ANALOGICO
* f fc
FILTRO DIGITAL I :$ fC
f r e c u e n c i a
F i g u r a 2 . - P r o c e s a m i e n t o d i g i t a l d e u n a s e R a l .
E.
APLICACIONES DE LOS DSPs
Algunas aplicacionee fttiles del procesamiento digital de sePiales
eetan basades en la conbinacic5n de las operaciones de la tabla 1
y otras funciones. Las aplicaciones del procesemiento digital de
sefialers afectan casi todas las Areaer de la electrdnica porque
cualquier aplicacih para circuitom electrrjnicos analc5gicos puede
ser duplicada usando el procesamiento digital de 8efSales. Les
ventajas de hacerlo as1 se vuelven mas preciras conforme el
procesemiento digital de sePialer se vuelve m a S rhpido y con mAs
costo efectivo. Los DSPs tanbikn estan siendo usados como
procet3sadores matemdticoe de alta velocidad y en muchas
aplicaciones de computedorae meramente digitales. Algunas
aplicaciones tlpicas para los DSPm son prementedes en la siguiente
lista :
Telecomunicaciones :
- Generacidn de tonos
- Hultifrecuencia tono-duel (DTWF)
- Interface a euecriptores de linea
- Bocinas telefdnicae full-duplex
- Teleconferencias
- Correo de voz
- Wodulacidn por codificacicjn de pulsos diferencial adaptivo
- (ADPCH)
7
- Vocoder de rango medio
- Cancelacibn de ruido
- Repetidores
- Tranceivers para Red digital de servicios integradoa, (REDSI)
- Seguridad telefdnica
Comunicacidm de Datoe :
- Modernis de alte velocidad
- Hoderne de varias velocidades
- Facslmil de alta velocidad
Radio comunicacldn :
- Seguridad de comunicaciones
- Comunicacionee punto a punto
- Tranrnisir3n de camunicacionea
- Telefonla celular mc5vil
- Arregloa de proceeadoree
- Estacionee de trabajo
- Computedoras personales
- Aceleradores grAficos
8
Procesamiento de imagenes :
- Reconocimiento de patrones
- Reconocimiento optico de caractCree
- Restauracihn de ImAgenes
- Compresibn de imagenes
- Mejoramiento de imagenes
- Visibn de robote,
- Rotacidn en 3-D
- Ingenieria asistida por computadora
- Publicidad
- Animacidn
Instrumentacick :
- Analieis espectral
- Generacibn de formas de onda
- AnAlieis Treecendente
- Adquisicih de datos
Procesamiento de voz :
- Slntesis de VOZ
- Reconocimiento de Voz
9
- Correo de voz
- Vocoder
- Autorizacidn de voz
- Verificacidn de voz
Procesamiento de senales de audio :
- Radio digital Atl/FM
- Preamplificedor digital HI-FI
- Cancelacidn de ruido
- Slntesis musical
- Procesamiento musical
- Ecualizador achtico
Control de alta velocidad :
- Impresora laser
- Disco Duro
- Rob6t ica
- Controlador de motor
- Controlador de posicidn y rango
Andlieils de vibracidn :
- Hotores elktricors
- Hotoree de Jet
10
- Turblnae
Electrdníca HMica :
- Scanners
- Sonografoe
- Anilieis de rayo6 X
- Electrocerdiogramas
- Analísls de resonancia magn&tlca nuclear
Video digital :
- Televislbn Digital
- Monitoree de alta reeoluclrfrln
Procesamiento de radar y eonar :
- NavegaclCSn
- Oceanograf 1 a
- Locelizacidn autom&tica de vehfculos
- BOtequeda y rastreo
Procesamiento S~SIIIICO :
- Exploracibn petrolera
11
- Exploracih geol&gica
ORIGEN DEL DSPS6001
El DSPS6001 es un porcesador digital de senales (DSPe), CMOS,
programable por el usuario, estA optimizado para ejecutar
algoritmos de procesamiento digital de sesales en tan pocae,
operaciones como sea posible mientras mantiene un alto grado de
precieibn. La arquitectura ha sido disesada para maximlzinr la
entrega de dato8 en aplicaciones intensivas de datos para
procesamiento digital de eeKales. Eete diereffo ha reeultado en una
arquitectura de naturaleza dual, expandible, con eofisticados
perif&ricoe on-chip y entradas/salldas de propbsito general. La
arquitectura, perifCricor on-chip y el bajo consumo de potencie
d s l DSP56001 ha minimizado la complejidad, costo, y tiempo de
dierefFo necesario para sumar la potencia del procesamiento digital
de sesales a cualquier diseno.
Estando baeado en memoria de acceso aleatorio ( RAM 1, el DSP56001
e8 un procesador disefiada para cargar su programe deede una fuente
externa.
EL DSP56001 no fuC dlsel'ísdo para una eplicacidm en particular
sino que fu# dierefiedo para ejecutar rutinas de procesamiento
digital de sefieles, usada8 comunmente en un tiempo minimo para una
12
arquitectura de un Bnico multiplicador. Por ejemplo, la seccitjn
bicuadrdtica de respuesta al impulso infinito (IIR), de cuatro
coeficientes, de segundo orden tiene cuatro mirltiplos por cada
seccidn. Para ese algoritmo, el natnero tebrlco mínimo de
operaciones para una arquitectura de multiplicador irnico es cuatro
por seccih. La tabla 1 muestra una lirta de rutinas con el
nhero de ciclos de instruccidm que el DSP56001 utiliza comparado
al namero de mciltiplos en el algoritmo.
Tabla 1. Resumen de rutinas en ciclos de instruccidn
R U T I N A
MULTI PLI CACI ON REAL N WULTIPLOrS REALES ACTUALIZACION REAL CONVOLUCION DE N TERMINOS REALES CONVOLUCXON CONF'LEJA N TERMI- REALES MULTIPLICACION COWPLEJA N I(ULTIPLCX5 COMPLEJOS ACTUALI ZACI ON C W L E J A N ACTUALIZACIONES COMPLEJAS CONVOLUCION CQ)BLEJA N TEF&U?UAS SERIES EXWNENcrIALES DG N-ESIMO ORDEN FILTROS BICUADRATSCCS ORDEN 2 N BICUADRATICOS DE ORDEN 2 EN CASADA
1 N 1 N N 4 N 4
4N 4N w
4 4N
Esas rutinas y otras son usadas independientemente o en
combinacibn para implementar funciones. Las caracterlsticas de
esas funciones son controladas por los coheficientes de les
rutinaa ejecutadas. Algunas funcioneer, Crtiles utilizando esas y
otras rutinas, incluyen las siguientes:
Filtraje digital :
- Respuesta al ínpuleo finito (FIR)
- Reepuesta al lmpuleo infinito ( 3 : f R )
- Filtro6 igualados ( Correlatores )
- Transformadas de Hilbert
- Ventaneo
- Igualacibn de filtros edaptivo& '
I .
Proceeamiento do SeFialee : II
a -
- Compresldn t Codificecidn predictiva lineal de seEale6
de hable )
- Expaneibn
- Promediar
- Cdlculos de energía
- Procesamiento Homombrfico
- Convereidm de datos lineales a/.de ley-mu / ley-A
Procesamiento de Dato6 :
- Encripcl~n/scrambling
- Codificacih ( Cdigo de Trellis 1
- Decodificacidn ( Decodificecidn de Vitervi )
14
Hodulecibn :
- Amplitud
- Frecuencia
- Fase
Procesamiento Num&rico :
- CAlculo de funciones trascendentales, aritmCticas, de matriz,
- Vectorial y escalar. ( Sen(X), Exp(X) )
- Otres funciones no lineales
- Generacib de nirmeros pseudo-aSeetorios
AnAllsis espectral :
.. - Transformada rApida de Fourier (FFT)
- Transformeda Discre ta de Fourier (DTF)
- Transformadas seno/cos
- Modelado de movimiento promedio ( M A )
- Modelado Autoregresivo (AR)
- Modelado ARMA
Resirmen de caracterlsticas del DSP56001
El DSP56001 eis el primero dos miembros de la familia de DSPs de
Motorola de bajo consumo de energfa, HCMOS, de propdsito general.
EL DSP56001 contiene 512 palabras de velocidad completa, on-chip,
15
RAM de programa, dos ROWS de datoe programadas, y hardware
especial on-chip de bootstrap para permitir la carga conveniente
de programas de usuario en la RAM de programa.
El corezr5n del procesador consiste da tres unidades de ejecucidn
operando en paralelo : la unidad aritmCtlca y lJgica ( A L U ) , la AGU,
y el controlador de programa.
16
TARJETA PARA PROCESAMIENTO DIGITAL DE SERALES
Descripcidn general
La tarjeta para procesamiento digital de sef%kles, de propdsito
general, se ha disefíado con la intencidn de servir de mCldulo
de desarrollo para auxiliar en el estudio del procesamiento
digital de sefiales a alumnos de ingenieria en electrhnica
intereeados en este tema.
La tarjeta ere ha disefiado para instalarse en cuelquier computadora
personal compatible con IBM, la cuAl tenga un bus tipo ISA. Este
tipo de bus es el que predomina en las cotnputadorss personales
comerciales de marcas reconocidas y gen&ricae, Lo c u & l hace que
casi cualquier computadora personal pueda alojar a esta tarjeta,
lograndose as1 que la Tarjeta sea un recurso de facil utilizacidn
para cualquier estudiante del procesamiento digital de sePTales.
La tarjeta se divide en cuatro etapas principales : Interface a
PC, Control, Hernoria y DSP. La etapa llamada interfase a PC e6 la
encargada de llevar a cabo la comunicacidn entre le computadora,
host, y el procesador DSP. La etapa de control general todas lae
sefíales necesarias para controlar l o s di~tintos estados de
procesamiento del DSP, el manejo de memoria, y el manejo de la
interfarse a la PC. La etapa de memoria contiene la logica
necesaria para definir el espacio de memoria utilizado en esta
17
"
aplicacidn. Le etapa DSP comprende la ldglca neceserle para
habilitar correctamente al DSP.
A continuacih se da una descripcidm completa de cada una de estas
etapas.
18
ETAPA INTERFACE A PC
La tarjeta se ha disefiado para conectarse a una computadora
personal. Para conseguir esta coneccidn, la tarjeta consta de una
etapa llamada interfase a PC, encargada de interconectar la PC y
la tarjeta. Esta etapa permite el intercambio de llneas de control
y datos necesarias tanto para controlar a la tarjeta como para la
correcta ejecucidn de los programas, as1 como el intercambio de
datos durante la ejecucih de un programa. Estas sef'íales de
control y datos son enviadas deede/hacia la computadora personal
hacia/desde el DSP. Es decir, eeta etapa es controlada tanto por
la computadora host, como por el procesador de la tarjeta.
La etapa de interfase a PC vista deede la PC
La tarjeta es vista por la computadora personal como tres
direcciones coneecutivae de BU mapa de puertos de entradalsalida.
La seleccibn de estas direcciones ee determina por las entradas P6
y P7 de la unidad 9 de la etapa de interfese a PC, ver Diagrama 1.
Estas lineae de eelecci&n determinan la direccib m 8 8 baja del
grupo de l a s tres localidades sucesivas del mapa de puertos de
entrada/salida, necesaries para el manejo de la tarjeta de
procesamiento digital de sefiales. La seleccibn de estas
direcciones se muestra a continuacihn en la tabla 2.
19
LIHEAS DE SELECCIW IMICIAL
. . DI RECCI ON
w
PUERTO O O O
P 6
PUERTO 768 1 1
PUERTO 512 O 1
-. PUGRTO 225x5 1 O
J
Tabla 2.- Seleccihn de los puertos para el manejo de la tarjeta
Debido al software con el que se cuenta para trabajar con la
tarjeta, las direcciones utilizadas son l o s puertos 256, 257 y
258.
Las sefieles de control y los datos que envia la computadora hacia
la tarjeta se enrutan utilizando los ocho bits m88 bajos de su
bus de datos, los cuBles son dirigidos a uno de los tres puertos
selecionados como se indica en la tabla 3.
PUERTO SEN& DI RECCI ON I
Tabla 3.- Utllizacit5n de los puertos para
el manejo de le interfase a la PC.
20
La etapa de interfase a PC vista desde el DSP
El DSP trata a la interfase a la PC como una localidad de su mapa
de memoria, a saber la localidad DFFF de su memoria de datos Y. La
cual es acceeada a traves del puerto A , con la ayuda de la lbgica
para el mapeo de memoria.
El DSP utiliza l o s ocho bits mas bajos de su bus de datos para
transferencia de datos y l o s bits D8 a Dl1 y el bit Dl6 para
transferir seP5ales de control.
La implementacidn de &st8 etapa se puede ver en el Diagrama 1.
21
ETAPA DE CONTROL
Esta etapa es la encargada de generar las sef'iales necesarias para
controlar las distintas etapas de la tarjeta y asegurar el
funcionamiento adecuado de la misma.
La f u n c i h principal e5 determiner el estado de arranque del DSP.
Para esto genera las seKales MODA, MODB, y RESET; con estas tres
sef5ales se define el modo de operacid5n del DSP. Estos modos de
operacidn se encuentran sef5alados en la tabla 4.
C I I I I
Tabla 4.- nodo inicial de operacih
La tarjeta trabaja inicialmente en el Modo 2, Normal Expandido.
23
E s t a etapa d e c o n t r o l t a m b i & n g e n e r a sefiales q u e m a n e j a n l a
i n t e r f a s e c o n el f i n de i n t e r c a m b i a r i n f o r m a c i d n e n t r e el D S P y la
etapa de i n t e r f a e e .
Las sefiales d e e n t r a d a a &Sta etapa s o n g e n e r a d a s por software
d e s d e l a PC y l l e g a n hasta l a etapa d e c o n t r o l por medio d e l a
etapa de i n t e r f a s e . La eefial de reeet t a m b i e n se c o n t r o l a
e x t e r n a m e n t e , y &Sta a s u v e z d e t e r m i n a l a s sePTales MODA y MODB;
C s t a s s o n l a s u n i c a s s e f 3 e l e s d e le etapa d e c o n t r o l q u e se g e n e r a n
t a n t o por software d e s d e l a PC como por hardware por medio d e un
p u s h b u t t o n e n l a t a r j e t a .
E s t a e tapa se p u e d e o b s e r v a r e n e l Diagrama 2.
24
!
74EILS04 F- r'
m n "
t
I,
I
4 T
EN IADHIBRKI' DE UEUORIR
EN DIRGRCIHFI
S I N COtlECTFlR
DICICRFIHA 2. ETAPFl DE CONTROL
ETAPA DE MEMORIA
El DSP56001 tiene tres espacios de memoria : Datos X, Datos Y y
Programa. Los espacios de memoria son configurados por l o s bits de
control en el Registro Modo de Operacihn t OMR ). Los bits de
control HA y MB del regiero OMR controlan el mapeo de la memoria
de Programa y seleccionan la direccirjn del vector de Reset. El bit
DE en el OMR controla l o s mapas de memoria de Datos X y Datos Y y
habilitaldeshabilita las ROMs internas de datos X e Y. Una memoria
adicional en el DSP56001 es la Memoria de Bootstrap que se
traslapa con la memoria de programa en modo 1.
Requerimiento de memoria
Debido a que el bus de datos del DSP56001 es de 24 bits, ee
requiere hacer un arreglo con memorias comerciales d e 8 bits para
formar una memoria de 24 bits de datos.
La memoria ROM consta de tres memorias, 82S181A , de Signetics, de
1K X 8 bits para formar un arreglo de 1K X 24 bits.
26
Mapa de memoria
El DSP56001 distingue entre tres tipos de memoria : Hernoria de
Programa, Memoria de Datos X y Memoria de Datos Y.
Hemoria de Programa
La 13gice de direccionamiento asigna un espacio de 17K para la
memoria de programa. Teniendo 1K en ROM y 16K en RAM.
Memoria de datos X e Y
Tanto para la memoria de datos X como para la memoria de datos Y
se asignan 8 K de memoria RAM.
Direccionamiento
Los espacios de memoria de Programa, de Datos X y de Datos Y se
localizan en loe eepacios mostrados a continuacidn en la figura 3.
El vector de Reset se encuentra en la direccidn SE000.
27
PROGRAMA
F F F F
R O M
E O 0 0
3 F F F
R A M
0 0 0 0
DATOS X 1 DATOS Y
1 F F F
R A M
O 0 0 0
D F F F
PERIFEJUCOS
c o o 0
1 F F F
R A M
0 0 0 0
Figura 3.- Mapa de memoria
Observacidn :
La interfase a la PC es considerada como una
direccidn de la memoria de Datos Y , localizada
en el espacio designado para perifCricos externos.
Mapeo Flsico de RAM
Para mapear flsicamente les memorias de programa, de datos X y de
datos Y en la memoria R A M externa se utiliza el circuito mostrado
en el Diagrama 3.
ETAPA DSP
En esta etapa se encuentra el DSP56001. Aqul se llevan a cabo los
ajustes necesarios para asegurar el buen funcionamiento del
DSP56001. Pare comprender la necesidad de estos ajustes, veamos
primero una descripcibn de los 88 pines del DSP56001.
EL DSP56001
El DSP56001 estA disponible en un encapsulado de 88 pines, para
montarse en superficie o en un encapsulado de 100 pines de una
solo capa de metalizacidn-aluminio ( SLAM 1. Las sefiales de
entrada/salida estan organizadas en siete grupos funcionales :
1. Puerto A Buses de Datos y Direcciones
2. Puerto A Bus de Control
3. Control de Interrupciones y Modo
4. AlimentaciSn y Control
5. Interface Host o Puerto B de E/S
6. SCI o Puerto C de E/S
7. SS1 o Puerto C de E / S
30
BUS DE DATOS DEL m { HO-H7
DIRECCIONES A 0 - Al5 t"
DATOS W - D23 +"-----)
PS f"--. DS - m-
DE WR- CONTROL x#Y c-"
BWWT ___+
BG-S t-"
PUERTO B f P U U E E R R T T o O
~ ~~~
7
A B
Figura 4 . - Grupos Funcionales del DSP56001.
1 ) Puerto A Bus de Direcciones y de Datos
Direcciones ( A 0 - A 1 5 )
Estas lineas de salida de tres estados especiflcan la direccifin
para accesos a programa y memoria de datos externos. Para
31
minimizar la disipacibn de potencia, A 0 - A 1 5 no cambian de estado
cuando l o s espacios de memoria externa no estan siendo accesados.
Datos < DO - D23 )
Estos pines proveen un bus de datos bidireccional para accesos a
memoria de datos y programa externos. DO - D23 estan en estado de
alta impedancia cuando la seKal Bus Grant es activada.
2 ) Puerto A Bus de Control
Seleccibn de Memoria de Programa ( PS )
Esta salida tri-estado es activada solo cuando se hace refencia
a la memoria de programa externa. Como se indica en la tabla 5.
Seleccidn de Memoria de Datos ( DS )
Esta salida tri-estado es activada solo cuando se hace referencia
a la memoria de datos externa. Como se indica en la tabla 5.
Seleccidn X/Y ( X/Y )
Esta salida tri-estado selecciona al especia de memorie de datos
externa ( X o Y ) que se hace referencia por medio de DS. Como se
indica en la tabla 5.
32
1
O
- O
DS
1
O
O
1
1
O
1
X N REFERENCIA A MEMORIA EXTERNA I 1
1
SIN ACTIVIDAD
MEMORZA DE PROGRAMA EN EL BUS DE DATOS 1
MEMORfA DE DATOS Y EN EL BUS DE DATOS 0
MEMORIA DE DATOS X EN EL BUS DE DATOS
C SIN E X C E P C I O W
O BUSQUEDA DE EXCEPCION EXTERNA: VECTOR o VECTOR+l C UNZCAMEWTE MODO DEsARRoLLAw3
X RESERVADO
o WSERVAIX)
Tabla 5. SelecciSn de memoria externa de Datos y Programa
HabilitaciSn de lectura ( RD )
Esta salida tri-estado es activada para leer memoria externa
sobre el bus de datos ( D O - D 2 3 ).
HabilitaciSn de escritura ( WR )
Esta salida tri-estado es activada para escribir a memoria externa
sobre el bus de datos ( DO - D23 1.
33
Requerimiento de Bus/Espera C BR/ WT )
La entrada requerimiento del bus ( BR permite a otro dispositivo
tal como un procesador o controlador de DMA manejar el bus de
datos externo ( DO - D23 1 y el bus de direcciones externo C A 0 -
A15 ). Cuando el bit 7 del Registro de Modo de OperaciSn ( OMR )
esta borrado y BR es activado, el DSP56001 siempre liberara
DO-D23, AO-A15 y las llneas del bus de control PS, DS, X / Y , RD, y
W R ( esto es, el Puerto A ), poniendo esas lineas en el estado de
alta impedancia despues de que la ejecucihn de la instruccidn
actual ha sido completada.
Si el bit 7 del OMR est& activo, esta lfnea es una entrada que
permite que un dispositivo externo introduzca ciclos de espera
durante una operacihn del Puerto externo A mientras que WT este
activado.
Bus Grant/Bus Strobe ( BG/BS )
Si el bit 7 del OMR estA borrado, Csta salida se activa para
reconocer un requerimiento del bus externo despuCs que el Puerto A
ha sido liberado. Si el bit 7 del OMR esta activado, esta linea es
bus strobe y es activado cuando el DSP accesa el Puerto A.
34
3) Control de Interrupciones y Modo de operacibn
Seleccidn de Modo A / Requerimiento de Interrupcidn Externa A
( MODA/IRQA ) y Seleccibn de Modo B f Requerimiento de
Interrupcidn Externa B ( MODB/IRBB 1
Estas dos entradas tienen funciones duales :
1 ) Seleccionar el modo de operacibn inicial del DSP.
2 ) Recibir una solicitud de interrupcibn de una fuente externa.
MODA y MODB son leidos y retenidos internamente en el DSP cuando
el procesador sale del eBtado de reset. Despues de dejar el estado
de reset, los pines MODA y MODB cambian autom8ticamente a la
funcidn requerimiento de interrupcidn externa, IRQA e IRQB.
Despues de dejar el estado de reset, el modo de operacibn del DSP
puede ser cambiado por software. IRQA e IRQB pueden ser
programados a ser sensitivos a nivel o al flanco negativo. Cuando
se dispara por flanco, el disparo ocurre a un nivel de voltaje y
no esta directamente relacionado con tiempo de calda de la seaal
de interrupcidn, sin embargo, la probabilidad de ruido sabre IRQA
e IRQB, al haber interrupciones sucesivas aumenta al incrementar
el tiempo de calda de la seEal de interrupcibn.
35
Reset ( RESET )
Este pin de entrada Schmitt-trigger es usado para resetear el
DSP56001. Cuando RESET es activado, el DSP es reinicializado y
puesto en estado de reset. Cuando RESET es desactivado, el modo de
operaci- inicial del DSP es fijado desde los pines MODA y MODB.
Cuando sale de RESET, la desactivacittn ocurre a un nivel de
voltaje que no esta directamente relacionado al tiempo de subida
de la sef5al de RESET; sin embargo, la probabilidad de ruido sobre
la sePial de RESET al generar maltiples resets aumenta con el
tiempo de subida de la sesal de RESET.
4 ) Alimentaci&n y Reloj
Alimentacidn ( Vcc ), Tierra ( GND 1
Reloj Externo/Entrada de Cristal ( EXTAL )
EXTAL puede ser usado para interfasear la entrada del cristal
oscilador interno a un cristal externo o a un reloj externo.
36
Salida de Cristal ( XTAL )
Esta salida conecta la salida del oscilador de cristal interno. Si
un reloj externo es usado, XTAL no debe ser conectado.
5 ) Interface Host o Puerto B E/S
Bus de Datos del Host ( HO - H7 1
Este bus de datos bidireccional es usada para transferir datos
entre el procesador host y el DSP56001. Este bus es una entrada a
menos que sea habilitado por una lectura del procesador host y
estA en alta impedancia cuando HEN es deshabilitado. HO-H7 pueden
ser programado6 como lfneas paralelas de entradalsalida ( PBO -
PB7 ) cuando la interfase Host no estd siendo utilizada.
Direcciones del Host ( HA0 - HA2 )
Estas entradas proveen la selecci&n de direcciones para cada
registro de la interfase Host. H A 0 - HA2 pueden ser progremados
como lineas paralelas de entradalsalida de p r o p h i t o general
( PB8 - PBlO ) cuando la interfase Host no se utiliza.
Lectura/Escritura de Host t HR/W )
Esta entrada selecciona la direccibn de la transferencia de datos
para cada acceso al procesador host. HR/W puede ser programada
37
como una línea de entrada/salida de propdsito general ( PBll )
cuando la interfase Host no se utilice.
Habilitacidn del Host HEN )
Esta entrada habilita una transferencia de datos sobre el bus de
datos del host. Cuendo HEN es habilitado y HR/W estA en alto, HO -
H7 se vuelven salidas y el dato del DSP puede ser leido por el
procesador host. Cuando HEN es activado y HR/W estd en bajo, HO-H7
se vuelven entradas, y los datos del host son guardados dentro del
DSP. Cuando HEN es desactivado, el bus de datos del host estB en
tercer estado. Normalmente, una seEal de seleccidn de chip
derivada del decodificador de direcciones del host y un
habilitador de reloj son usados para generar HEN. HEN puede ser
programado como una línea de entrada/salida de propdsito general
( PB12 ) cuando la interfase Host no se utiliza.
Requerimiento del Host ( HREQ )
Esta seRal con salida de colector abierto es usada por la
interfase host del DSP56001 para solicitar servicio del procesador
host, controlador de DMA, o un simple controlador externo. HREQ
puede ser programado como una llnea de entradalsalida de propdsito
general ( no de colector abierto ) cuando la interfase host no sea
utilizada.
38
Reconocimiento del Ho6t ( HACK )
Esta entrada tiene dos funciones :
1 ) Proveer una sePia1 de reconocimiento de handshake para
transferencia de DMA
2) Recibir un reconocimiento de interrupcihn del Host
compatible con la familia de procesadores M68000.
HACK puede ser programada como una linea de entrada/salida de
proptjsito general ( PB14 ) cuando la interfase host no sea
utilizada.
6 ) Interfase de Comunicecidn Serial o Puerto C E/S
Recibir Dato ( RXD )
Esta entrada recibe datos seriales orientados a byte y transfiere
el dato a l registro de recepcitjn SCI. RXD puede ser programado
como una linea de entradalsalida de propdsito general cuando la
funcitjn SCI RXD no esta siendo usada.
Transmitir Dato ( TXD )
Esta salida transmite datos seriales desde el registro de
transmisibn S C I . TXD puede ser programada como una linea de
39
entrada/salida de prophsito general cuando la funcidn SCI TXD no
este siendo utilizada.
Reloj Serial SCI ( SCLK )
Este pin bidireccional provee un reloj de entrada o salida desde
el cuAl la velocidad del transmisor y / o receptor es derivada en el
modo asfncrono, desde el cual el dato es transferido en el modo
asincrono. SCLK puede ser programada como una seKal de
entrada/salida de propbsito general I PC2 ) cuando la funcidn SCI
SCLK no est& siendo utilizada.
7 ) Interfase Serial Sfncrona o Puerto C E/S
Control Serial Cero ( SCO )
Este pin bidireccionel es usado para control por la SSI, como una
bandera o receptor de reloj. SCO puede ser programado como una
lfnea de entradalsalida de propdsito general I PC3 ) cuando la
funcirjn SS1 SCO no estA siendo utilizada.
Control Serial Uno ( SC1 1
Este pin bidireccional es usado para control por la SSI, como una
bandera o sincronizacibn de frame. SC1 puede ser programado como
una linea de entradalsalida de propdsito general ( PC4 ) cuando la
40
funcibn SS1 SC1 no est& siendo usada.
Control Serial Dos ( SC2 )
Este pin bidireccional es usado como control por la SSI, como
sincronizaciem de frame unicamente. SC2 puede ser programada como
una linea de entradalsalida de propbsito general ( PC5 ) cuando la
funcidn SS1 SC2 no esth siendo usada.
Reloj Serial SS1 ( SCK )
Este pin bidireccional provee el reloj de velocidad de bit serial
para la SSI. SCK puede ser programado como una linea de
entradalsalida de propdsito general ( PC6 ) cuando SCK no esta
siendo usado.
Recepcibn de Datos SS1 < SRD
Esta entrada recibe datos seriales en el registro de recepcion de
la SSI. SRD puede ser programado como una llnea de entradalsalida
de propbsito general ( PC7 ) cuando SRD no est& siendo utilizado.
Transmisidn de Datos SS1 ( S T D )
Esta salida transmite datos seriales desde el registro de
transmisidn de la SSI. STD puede ser programedo como una linea de
41
entrada/salida de propbsito general ( PC8 1 cuando la funci3n SS1
STD no esta siendo usada.
UtilizaciSn de Grupos Funcionales
Para el disef'ío del circuito se utilizan l o s siguientes grupos
funcionales :
a) Puerto A Buses de DirecciSn y de Datos
b ) Puerto A Bus de Control
c) Control de Interrupciones y Modo
d) AlimentaciAn y Reloj
La utilizaciSn de los grupos funcionales anteriores se puede
apreciar en el Diagrama 4. Donde tambiCn se muestra el circuito de
reloj utilizado, disef'íado para entregar una seEal de 27 Mhz.
42
DATA VCC a m R vcc O23 022 02 1 DPO Dl9 o í e Dl7 Dl6 D LP
D 13
Dl1 Dl2
D 10 09
07 Da
06 D5
- "
~ 1 4 DSF
x n BR 0c I RQZI
RESET LOGIC vcc LOCIC GND LOGIC vcc LOCIC CND
c x 1 a
IROB
xraL
na
a2 FIl no
RDDR Gb- AOOR CUD
D1 ~- pm_m)
03 PB131 re2m
D2 O1
PB3J3
DO PWJM
PERIPmRICFK VCC ?b? lM
PERIPWERICFIL GND PB737 PI P8OdMO DS RD
P B S ~ l P B ~ O a2
P B l 3 M E Q PBl2JiEN
P014JCICU PCOJXD
PC2fCLK PCLTXD
PGa-!KiO
PCSSCZ PC4JCl
PCCJCK PC7JRD PC8910
LIR ? 8 i i d h l
OTACRAHA 4 . CTACA OS?
IMPLEMENTACION
Las etapas descritas anteriormente, se armaron siguiendo los
Diagramas 1 a 4; sobre una tablilla para wire-wrap. La tablilla
cuenta con un conector macho para el Bus tipo ISA, con lo cu31 la
tarjeta puede ser instalada dentro de una computadora personal que
cuente con una ranura de expancibn tipo ISA.
LISTA DE COMPONENTES
Para armar la tarjeta se ocuparon
u1
U2
u3
u4
u5
U6
u7
U 8
u9
u10
u11
u12
U13
DSY56001
SIN CONECTAR
74AS00
74ALS27
74AS32
74LS125
74ALS138
74ALS133
74ALS374
74ALS74
74ALS02
74ALS08
74ALS373
u34
u35
U36
u37
U38
u39
U40
RO
R1
R2
R 3
R4
R5
los siguientes componentes:
74ALS08
74LS26
74AS32
74ALSOEI
745260
74ALS04
LM555
1 M
4K7
5 K 6
2K7
1K
330
RN2
RN3
RN4
RN5
c10
c11
C14
C17
c4
Dl
D2
D3
D4
8X47K
8X47K
8x330
8x330
lOPF
lOpF
O. 47yF
1 CtF
O. l y F
1N914
1N914
1N914
1N914
44
U14
U15
U16
U17
U18
u19
u20
u21
u22
U23
u24
u25
U26
U27
U28
u29
u 30
U31
u32
u33
74ALS374
74ALS373
CY7C199
CY7C199
CY7C199
825181
825181
825181
74ALS575
74ALS575
74LSOO
74LS32
74LS04
74LS373
74LS373
74LS374
74LS32
74LS138
74LS688
SIN CONECTAR
€26
R7
R9
R10
R11
R13
R14
R 1 5
R16
R17
R10
R20
R21
R22
R23
R24
R2S
R26
R27
RN1
470K
47K
47K
4K7
4K7
4K7
10K
330
330
330
47K
2K7
1K
47K
47K
47K
330
330
lOOK
8X47K
V R 1 1NS237
Q1 2N3906
i22 2133904
Q3 2N3904
45
RESULTADOS
Una vez construida la tarjeta se procedi.) a probarla sin conseguir
que trabajara al 100 X , por lo que se procedib a probar cada
parte de la tarjeta por separado.
INTERFACE A LA PC
Se probd la entrada y salida de datos a traves de los tres puertos
que la conforman obteniendo resultados satisfactorios. Mas sen, se
leyCron y escribi&ron datos sobre el bus de datos que corresponde
al DSP, sin instalar el DSP, y se encontro que la interfase
trabaja bien.
CONTROL
Por medio de la interfase se aplicaron selyales de entrada al
circuito de control y se leyeron las salidas de la misma etapa;
observando que s u comportamiento ldgico corresponde al seKalado
por la configuracibn de sus componentes, s e g h e l Diagrama 2. Es
decir, la etapa de control funciona correctamente bajo este tipo
de prueba, sin embargo no fue posible probar su comportamiento
cuando las sef5ales cambian a la frecuencia de operacibn de la
tarjeta, esto puede ocultar algrln problema pues algunas seEales
46
utilizan los retardos introducidos por las compuertas logicas para
defasar algunas sesales respecto de otras. En particular, la sef5al
IRQA sigue a la seffal de RESET pero con un cierto retrazo para
poder determinar el modo de arranque del DSP al salir del estado
de RESET.
ETAPA DEL DSP
En la etapa del DSP no 6e encontraron problemas. Los voltajes de
polarizacibn y las resistencias de pull-up estan conectados
correctamente. La seKal de reloj se observo al osciloscopio
encontrando que es una sePTal aceptable como entrada de reloj al
DSP.
ETAPA DE MEMORIA
Despu&s de probar las etapas anteriores y comprobar que trabajaban
satisfactoriamente se aisld el prablema en la etapa de memoria, en
particular en la 13gica de mapeo de memoria. Lamentablemente Csta
etapa no pudo ser probada exaustivamente pues las seEales que
controlan Csta parte del circuito son generadas por el DSP y no se
cuenta con una manera de simular estas seKales por un medio
externo al DSP, por lo cual &Sta etapa quedo sin prohar
adecuadamente y se supone que es aqui donde esth el problema
47
que no permite el funcionamiento correcto de la tarjeta.
En todas las etapas se busco algan cable roto o falso contacto con
ayuda de un multimetro sin encontrar ninguno de los dos.
Asi, lo hico que queda por hacer es probar adecuadamente la etapa
de memoria para descartar cualquier error que pueda tener y una
vez corregido el problema, si se encuentra aquf, observar el
comportamiento global de la tarjeta esperando que funcione al 100%
B I B L I O G R A F I A
1) DSPS6000/DSP56001 Digital Signal Processor User’s Manual Motorola INC. 1590.
2 ) DSP56000ADS Reference Manual Motorola INC. 1991.
3 ) Interfacing to the IBM Personal Computer Lewis C. Eggbrecht SAMs Second Edition
4 ) CMOS Data Book Cypress Semiconductor
5 ) Linear and Interface Integrated Circuits Motorola INC. 1985.
6 ) Low-Power Schottky TTL Motorola Semicondustor Product INC. 1977.
4 9
Top Related