mexlco, d. f., febrero de - 148.206.53.84148.206.53.84/tesiuami/uam5664.pdf · con una arquitectura...

51
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 RESUMEN A L U M N O : PEREZ PEWTA MANLIEL A S E S O R : 1' MEXlCO, D. F., FEBRERO DE 1937.. / .._.AS

Upload: duongtram

Post on 09-Jul-2018

212 views

Category:

Documents


0 download

TRANSCRIPT

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

r p-

x o w

< < < < < c < <

D I R 6 R R W 1. INTERFRCE FI PC

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.

i -

?4QLS3'

OIACRAUA 3 . EtRPA DE MEMORIA

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