Está en la página 1de 18

Pgina1 de18 INTRODUCCINALOSDSP

FCEFyN UniversidadNacionaldeCordoba

CAPTULOI
INTRODUCCIN Los rpidos avances en la electrnica, particularmente en las tcnicas de fabricacin de circuitos integrados,hantenido,ysindudacontinuarnteniendo,ungranimpactoenlaindustriaylasociedad. Elrpidodesarrollodelatecnologadecircuitosintegrados,empezandoconlaintegracinagranescala (LSI,LargeScaleIntegration),yahoralaintegracinagranescala(VLSI,VeryLargeScaleIntegration)de circuitos electrnicos ha estimulado el desarrollo de computadores digitales ms potentes, pequeos, rpidosyeconmicos,utilizadosenhardwaredigitalesdepropsitogeneral.Estascaractersticas,han hechoposibleconstruirsistemasdigitalesaltamentesofisticados,capacesderealizarfuncionesytareas delprocesadodesealesdigitalesquenormalmenteerandemasiadodifcilesy/ocarasconcircuiterao sistemas de procesado de seales analgicas. De aqu, que muchas de las tareas del procesado de seales que convencionalmente se realizaban analgicamente, se realicen hoy mediante hardware digital,aunmenorcostoyamenudomsconfiable.LosSistemasDSPmodernossonapropiadospara su implementacin bajo el criterio VLSI. Las grandes inversiones necesarias para disear un nuevo circuito integrado slo pueden ser justificadas cuando el nmero de circuitos a fabricar es grande, o cuando los niveles necesarios de desempeo son tan altos que no pueden ser alcanzados con la tecnologaexistente.Amenudo,ambosargumentossonvlidos,particularmenteencomunicacionesy aplicacionesdirigidasalosconsumidores.Avancesenlatecnologadefabricacindecircuitosintegrados tambinabrennuevasreasdedesarrollobasadasenDSP,talescomosensoresinteligentes,visinde robotsyautomatizacin,mientrasentregalasbasesparacontinuarlosavancesenreastradicionales del procesamiento digital de seales, tales como msica, voz, radar, sonar, video, audio y comunicaciones.ElsiguientetextotienecomofinentregarunabreveintroduccinalossistemasDSPa travsdelapresentacindesusprincipalescaractersticas,aplicacionesyalgunosdatosdeintersen cuantoafabricantes,modelosyformasdeelegirlaplataformamsadecuada. PROCESADORESDIGITALESDESEALES DemanerahabitualseestaacostumbradoaescucharacercadelProcesamientoDigitaldeSealesoDSP porsussiglaseningles(DigitalSignalProcessing).Seentiendealprocesamientodigitaldeseales,como ladisciplinadentrodelreadelasmatemticas,quetienencomoobjetooperarotransformarseales digitales con el fin de entender o destacar la informacin implcita o explicita que estas poseen. Entendiendo como seal digital, a la evolucin temporal discreta de alguna magnitud fsica sensada, comoporejemplo:sealesderadar,msica,voz,sonar,vibraciones,temperatura,etc.

ProcesamientoDigitaldeSeales FCEFyN UNCINTRODUCCINALOSDSP

Pgina2 de18 INTRODUCCINALOSDSP Con el avance de la tecnologa, esta disciplina terica, fue materializndose en diferentes circuitos electrnicosquepermitierondesarrollaretapasdeprocesamientodigitaldeseal.Taldesarrollolleva contarconProcesadoresDigitalesdeSealoDSPporsussiglaseningles(DigitalSignalProcessor). UnDSPesunmicroprocesadorquepermiterealizarelprocesamientodigitaldesealapartirreglasbien definidas las cuales son introducidas al hardware a travs de un software especfico que puede o no manejar lenguajes tanto de alto como de bajo nivel. Una de las caractersticas que hacen nico a los DSP, es la posibilidad de realizar el procesamiento de las seales en tiempo real. Esta capacidad de procesamientoentiemporealhacealosDSPidealesparaaplicacionesquenotoleranningnretardo, como por ejemplo, las comunicaciones telefnicas por celular. Si esto no fuera posible de realizar, se tendraretardosquedaranlugarcortesoaconfusinalmomentodeentablarunacomunicacin. DEANLOGOADIGITAL LasaplicacionesclsicasdelosDSPtrabajansealesdelmundoreal,talescomosonidoyondasderadio queseoriginanenformaanalgica.Comosesabe,unasealanalgicaescontinuaeneltiempo;cambia suavementedesdeunestadoaotro.Loscomputadoresdigitales,porotrolado,manejanlainformacin discontinuamente, como una serie de nmeros binarios, por lo que se hace necesario como primera etapaenlamayoradelossistemasbasadosenDSP,transformarlassealesanalgicasendigitales.Esta transformacinlahacenlosConversoresAnalgicosDigitales(ADC,eningls).Unavezterminadala etapa de conversin analgica digital, los datos son entregados al DSP, el cual est ahora en condicionesdeprocesarlas.EventualmenteelDSPdeberdevolverlosdatosyaprocesadosparalocual es necesaria una etapafinal que transforme el formato digital a analgico. Por ejemplo, una seal de audio puede ser adquirida (ADC) y filtrada para eliminar en gran medida ruido, crujidos de esttica, amplificar ciertas frecuencias de inters, eliminar otras, etc. Luego de esto, la informacin puede ser devueltaatravsdeunaconversindigitalanalgica(DAC). EjemplosinteresantesdeaplicacionesenlascualesseutilizanDSP: Eliminarelecoenlaslneasdecomunicaciones. Lograrhacermsclarasaquellasimgenesobtenidasdelosequiposdediagnsticomdicopor imgenes. Cifrarconversacionesentelfonoscelularesparamantenerprivacidad. Analizardatosssmicosparadeterminarlosestratosquesubyacenenelsubsuelo. Ensuncleo,unDSPesaltamentenumricoyrepetitivo.Alavezquecadadatoestadisponible,ste debesermultiplicado,sumadoyademsdeesotransformadodeacuerdoafrmulascomplejas.Loque
FCEFyN UniversidadNacionaldeCordoba

ProcesamientoDigitaldeSeales FCEFyN UNCINTRODUCCINALOSDSP

Pgina3 de18 INTRODUCCINALOSDSP permiterealizartodoello,eslavelocidaddeldispositivo.LossistemasbasadosenDSPdebentrabajara tal velocidad, que sean capaces de realizar procesamiento en tiempo real, capturando y procesando informacin a la vez queel fenmeno transcurre oconuna tasa de retardo detiempoaceptable.Los conversoresanalgicosdigitalesdebenadquirirlainformacinlosuficientementeseguidocomopara captartodaslasfluctuacionesrelevantesdelasseales.SielADCesmuylentoseperderinformacin. PorotroladoelDSPtambindebetrabajarrpidoparanoperderlainformacinquelellegadesdeel ADCyademscumplirconeladecuadoprocesamientodelasseales.Porejemplo,unsistemaestereo maneja sonidos de hasta 20 KHz, por lo tanto el DSP deber ser capaz de procesar alrededor del centenardemillonesdeoperacionesporsegundo.Otrasseales,talescomotransmisionesporsatlite sondelordendelosGigahertzporloquerequierenunprocesamientodemayorvelocidad.EnlasFigura 1y2semuestraundiagramaenbloquesconceptualdeunsistemadeprocesamientodigitaldeseal queutilizaunDSP.
Interfaz de Usuario Display

FCEFyN UniversidadNacionaldeCordoba

Sensores Entradas Digitales Entradas Analgicas ADC

PROCE SADOR DIGITAL DE SEALES (DSP) DAC

Actuadores Salidas Digitales Salidas Analgicas

Figura1:Diagramadebloquesconceptualdeunsistemadigital.ADC:ConversorAnlogoDigital.DSP: DigitalSignalProcessor.DAC:ConversorDigitalAnlogo.
Entrada Analgica Filtro Anti-aliasing

CAD

DSP

CDA

HOST Programador

Filtro Anti-imagen

Salida Analgica

Figura2:EjemplodeaplicacindeunDSP.Lasealentranteentradirectamenteenunfiltroantialiasing paraevitarfrecuenciassuperioresalademuestreodelconversoranalgicodigital.Despussellevaa caboelprocesadodigitalenelmduloDSP,paradespusvolverseaconvertirenanalgicoalasalida. ProcesamientoDigitaldeSeales FCEFyN UNCINTRODUCCINALOSDSP

Pgina4 de18 INTRODUCCINALOSDSP UNDSPPARACADAAPLICACIN:FORMATOARITMETICOYANCHODEPALABRA UnadelascaractersticasmsimportantesquedeterminanlaidoneidaddeunDSPparaunaaplicacin dadaeseltipodeformatoynmerodebitsdelosdatosconquerealizalosclculosmatemticos.Con relacin al tipo de formato de datos, los DSP pueden operar con nmeros en coma fija o en coma flotante. AlgunosDSPslosoncapacesdeoperarconnmerosenteros,mientrasquelasaplicacionesescomn manejarnmerosfraccionarioscomoporejemploloscoeficientesdeunfiltro.Elformatodecomafija utilizaunarepresentacinsimilaraladeunnmeroentero,salvoqueseconsideralaexistenciadeun punto binario mediante el cual se escalan los valores enteros para de esta forma, obtener nmeros fraccionarios. Este factor de escala es igual a 2bp donde bp es la posicin del punto binario. El DSP realizalasoperacionesdesumaomultiplicacincomosisetratasedenmerosenteros,sinconsiderar estefactordeescala.Esresponsabilidaddelprogramadorinterpretarlaposicindelpuntobinario. Aldesplazarelpuntodecimalalaizquierda,utilizandomsbitsparalapartefraccionaria,laprecisin aumenta,perodisminuyeelmargendevaloresdelarepresentacin.Puestoqueeltamaodelapalabra de datos es fijo, la situacin del punto binario ser una situacin de compromiso entre la precisin a obteneryelmargendevaloresacubrir.Elprogramadordebeutilizarelmayornmerodebitsparala partefraccionaria(mximaprecisin)quepermitenrepresentartodoelrangodevaloresquetomauna variable. Siduranteelprocesamientounnmeroencomafijaaumentademasiadoparapoderserrepresentado con el nmero de bits disponibles para la parte entera, el programador debe realizar un escalado descendentedelnmeromedianteundesplazamientoaderechasperdiendolosbitsdemenorpesoy portantodisminuyendolaprecisin.Siporelcontrarioelnmeroencomafijadisminuyedemasiadoel nmerodebitsutilizadosenlapartefraccionariapuedeserinsuficiente.Elprogramadordeberealizar undesplazamientoaizquierdasparaaumentarlaprecisin. En ambos casos el programador debe tomar en consideracin como se ha ido desplazando el punto binariorestaurandotodoslosnmerosdecomafraccionariaaunamismaescalaenunaetapaposterior. Estoconviertelaprogramacindeaplicacionesenunatareamuytediosa. La utilizacin de rutinas en coma fija que emulan las operaciones en coma flotante (que permiten manejar cmodamente nmeros fraccionarios) es muy costosa en cuanto tiempo de ejecucin del cdigo,loquehaceimposiblesuusoenaplicacionesdetiemporeal. OtrosprocesadoresdisponendeunaCPUcapazdeoperardirectamenteconnmerosdecomaflotante. La aritmtica en coma flotante es un mecanismo ms flexible que la aritmtica en coma fija. Con la aritmtica en coma flotante, los diseadores de sistemas tienen acceso a un rango de valores mucho msamplioyaunamejorprecisin.Estofacilitalaprogramacinyaquenoesnecesariopreocuparsede
FCEFyN UniversidadNacionaldeCordoba

ProcesamientoDigitaldeSeales FCEFyN UNCINTRODUCCINALOSDSP

Pgina5 de18 INTRODUCCINALOSDSP la realizacin del escalado. Un nmero de coma flotante se representa mediante una mantisa y un exponentesiendosuvalor: valor=mantisa2exponente(1) La mantisa es un nmero fraccionario mientras que el exponente determina la posicin del punto binario.EnestosprocesadoreseselpropiohardwaredelaCPUelquerealizalosescaladosmencionados anteriormente, quedando reflejada la posicin del punto binario en el exponente. Esto facilita enormemente la programacin de las aplicaciones. En la Figura 3, se muestra un resumen, de las representacionesnumricasmscomunesenlosDSP.
Bit de Signo Parte entera Parte fraccionaria

FCEFyN UniversidadNacionaldeCordoba

b7 b6 b5 b4 b 3 b2 b 1 b0 0 1 0 1 0 0 1 1
27 26 64 25 + 24 16 23 + 22 21 20

b7 b6 b5 b4 b 3 b2 b1 b 0

0 1 0 1 0 0 1 1
24 23
8

2 + 1 = 83

22
+

21
2

20

2-1 2-2 2-3

bp = 3

0.25+0.125 = 10.375

(b)

(a)
mantisa

exponente

0
21

1 1 0 1 0 0 0 0
20

0 1 1 0
23
exponente

2 -1

2 -2

2 -3 2 -4

2 -5

2 -6

2 -7

22

21

20

Valor = mantisa . 2

(c)
DSP

Co ma Fija

Co ma Flotante

16 bit

20 bit

24 bit

32 bit

IEEE - 754

Otros

Figura3.RepresentacionesnumricascomunesenlosDSPcomerciales.a)Formatonmeroentero,b) Formatonmerocomafija,c)Formatonmerocomaflotante.

ProcesamientoDigitaldeSeales FCEFyN UNCINTRODUCCINALOSDSP

Pgina6 de18 INTRODUCCINALOSDSP Adems de la clasificacin que normalmente se realiza de un DSP en base al tipo de aritmtica que utilizan para realizar los clculos matemticos (coma fija y coma flotante), dentro de cada grupo se clasifican,segnlaanchuradesupalabradedatos. LosDSPdecomafijarequierenunhardwaremssimplequeladelosprocesadoresdecomaflotante. EstosetraduceenunareduccindelcosteunitariodelDSPhacindolosidneosparaaplicacionesde granconsumoquenorequieranunasprestacioneselevadas.EstasimplicidadenelDSPtambinreduce elconsumodeldispositivoysutamao,unaspectosumamenteinteresanteparaaplicacionesporttiles comoporejemplotelfonosmviles.LautilizacindeunDSPpocosofisticadapermiteliberarreadel chipparaincluirbancosdeinternosdememoriaRAMdemayortamaooinclusobancosdememoria EPROMoFLASH,dondegrabarelcdigodelaaplicacin.Adems,suelendisponerdeunconjuntode perifricos ms variado. De hecho los procesadores destinados a aplicaciones especficas como por ejemplocontroldemotores,sistemasdetratamientodevoz,etc.,sonprocesadoresdecomafija. La anchura de la palabra de datos puede ser segn los casos de 16, 24 o 32 bits. Esto tiene una importanterepercusinenelcoste,porqueinfluyepoderosamenteeneltamaodelcircuitointegrado yenelnmerodeterminalesdeldispositivo,ascomoeltamaodelosdispositivosdememoriaexterna conectados al mismo. Por lo tanto, los diseadores intentan utilizar el chip con el menor ancho de palabraquesuaplicacinpuedetolerar. LosDSPdecomaflotantesondispositivosdegamaalta,cuyaCPUdisponedehardwareespecficopara operarcondatosdecomaflotante.Laanchuradelapalabradedatossueleserde32bitssibieneluso de bits de guarda les permite operar en el interior de la CPU con datos de 40 bits. Esto no es impedimentoparaquepuedanoperartambincondatosencomafija.ElreaocupadadelCPUdeeste tipodeDSPesmayorqueenelcasodelosdecomafija.Porestemotivo,lavariedaddelosperifricos queintegranesmenor,tratndoseenlamayoradeloscasosdeperifricos(puertosserieyparalelo, DMA) utilizados en la comunicacin con elementos externos (conversores A/D y D/A). Dentro de este grupo de DSP, los ms sofisticados disponen de puertos de comunicacin que permiten facilitan el montajederedesdeDSPparaprocesamientoenparalelo. Cadatipodeprocesadoresidealparaunrangoespecficodeaplicaciones.Losprocesadoresde16bits decomafijasonadecuadosparasistemasdevoz,comotelfonos,yaquestostrabajanconelrango relativamenteestrechodelasfrecuenciasdelsonido.Lasaplicacionesestreodealtafidelidadtienenun rango de frecuencias ms amplio, de forma general, los requerimientos mnimos para este tipo de aplicaciones seran un ADC de 16 bits y un procesador de 24 bits de coma fija, de esta forma se proporciona un rango suficientemente amplio para obtener la seal de alta fidelidad y para poder manipularlosvaloresqueseobtienenalprocesarlaseal.Elprocesamientodeimgenes,grficosen 3D y simulaciones cientficas tiene un rango dinmico mucho ms amplio, por lo que precisa procesadoresDSPde32bitsconaritmticadecomaflotante..Lossiguientessonejemplosdelosusos deDSPenlaactualidad:
FCEFyN UniversidadNacionaldeCordoba

ProcesamientoDigitaldeSeales FCEFyN UNCINTRODUCCINALOSDSP

Pgina7 de18 INTRODUCCINALOSDSP WirelessLAN, ReconocimientodeVoz, Manejodeimgenesdigitales, Reproductoresdigitalesdeaudio, Telfonoscelulares, Modemsinalmbricos, Cmarasdigitales, Controldemotores, Manejodebombas,ventiladores,HVAC, Inversoresindustriales, AutomatizacinyControldesistemas, Transporte,etc. RANGODINAMICO Elrangodinmicoesunconceptopropiodelosprocesadores.Sedefinecomolarelacinexistenteentre elmximoymnimovalor(distintodecero)representables.Enunformatodecomaflotantesteviene determinadoporelnmerodenivelesdelexponente.SiexpresamosestarelacinendB: RD[dB]=6Nivelesdelexponente(2) Asparaelcasotpicodeunexponentede8bitselrangodinmicoesde1530.Enunformatoencoma fijaestedependedeltamaodepalabradedatossegnlarelacin: RD[dB]=6Tamaodepalabra(3) Elrangodinmicodelprocesadordebesersuperioraldelaaplicacin.Esteltimovienedeterminado por los conversores A/D y D/A utilizados. De esta forma se garantiza que los errores introducidos duranteelprocesamiento(debidosatruncamientos,redondeos,etc)quedanpordebajodelerrorque introducenlospropiosconversores.EnlaFigura4,semuestraungraficadelosvalorestpicosderango dinmico.
FCEFyN UniversidadNacionaldeCordoba

ProcesamientoDigitaldeSeales FCEFyN UNCINTRODUCCINALOSDSP

Pgina8 de18 INTRODUCCINALOSDSP


FCEFyN UniversidadNacionaldeCordoba

Rango Dinmico (dB)


1500

1500 dB

1000

500 192 dB
Coma flotante de 32/40 bits. Coma fija de 32 bits.

144 dB
Coma fija 24 bits.

96 dB
Coma fija 16 bits.

N bits

Figura4:ValorestpicosdeRangoDinmico CARACTERSTICASDEUNDSP Una de las ms importantes caractersticas de un DSP es su capacidad de realizar operaciones de multiplicacinyacumulacinoMAC(porsussiglaseninglesmultiplyaccumulateunit)enpocosciclos de reloj. No obstante para ello, es necesario que el dispositivo posea la caracterstica de manejar aplicacionescrticasentiemporeal.Estorequieredeunaarquitecturaquesoporteunflujodedatosa altavelocidadhaciaydesdelaunidaddeclculoymemoria.Estaejecucinamenudorequiereelusode unidades DMA (Direct Memory Acess) y unidades generadores de direcciones (AGU) que operan en paralelo con otras partes del chip. Los AGU realizan los clculos de direcciones, permitiendo al DSP buscar dos datos distintos para operar con ellos en pocos ciclos de reloj, de tal forma que es posible ejecutaralgoritmoscomplejosentiemporeal.EsimportanteparalosDSPtenerunmecanismoefectivo desaltoparalaejecucindeloopsyaqueelcdigogeneralmenteprogramadoesaltamenterepetitivo. La arquitectura permite realizar estos loops sin instrucciones adicionales ni demoras significativas en comparacinconotrostiposdeprocesadores. LosDSPdebenmanejarrangosdinmicosextendidosydeprecisinparaevitaroverflowyunderflowy para minimizar los errores de redondeo. Para acomodarse a esta capacidad, los DSP incluyen acumuladores dedicados con registros ms anchos que el tamao nominal de los datos para as conservar la precisin (por ejemplo, DSP de 16 bits poseen acumuladores de 32 bits para manejar el resultado de las multiplicaciones). Tambin deben soportar el manejo de buffers circulares para la ejecucindefuncionesalgortmicas,talescomofiltros.Enestostiposdebufferselpunterodelbufferse actualizaenparaleloconotrasfuncionesdelchipenpocosciclosdereloj. ProcesamientoDigitaldeSeales FCEFyN UNCINTRODUCCINALOSDSP

Pgina9 de18 INTRODUCCINALOSDSP Porotrolado,losDSPaligualquetodomicrocontrolador,seutilizansobretodoenaplicacionesdonde existenacontecimientosexternoslosquerequierendeladeteccinyelcontrol.Elambienteexternoes detectado por cualquiera de los dispositivos perifricos; puertos digitales I/O, pines dedicados a las interrupciones o las entradas analgicas. La fuente de seales para estos pines proviene de los interruptores, sensores analgicos y/o digitales, y de las seales de estado de otros sistemas. Cada entradarepresentaunpedazodeinformacinsobreelestadodeunciertoacontecimientoexterior.Las salidas se envan a actuadores, relays, motores o a otros dispositivos que controlen acontecimientos. EntreladeteccinyactuacinestelDSP,analizandolasentradasyelestadoactualdelsistema,para luegorealizarlaaccinqueselesprogram. UnDSPsepuedeprogramartantoenlenguajeensambladorcomoenlenguajeC.CadafamiliadeDSP tienesupropiolenguajeensambladorysuspropiasherramientassuministradasporelfabricante.Enlos ltimostiemposhayotrosfabricantesquedesarrollanplataformasespecialesquepermitenprogramara losDSPenentornosdealtonivelcomoporejemploMatlabyLabview. La organizacin del subsistema de memoria de un DSP puede tener un gran impacto en sus prestaciones. Como se ha mencionado anteriormente, la instruccin MAC, as como otras, son fundamentales en muchos de los algoritmos de procesado de seal. Una ejecucin rpida de la instruccinMACrequierequelalecturaenmemoriadelcdigodelainstruccinydesusdosoperandos se haga en un ciclo de instruccin. Existe una variedad de formas de hacerlo, utilizando memorias multipuertoparapermitirmltiplesaccesosamemoriaenunciclodeinstruccin,mediantememorias de datos e instrucciones separadas (arquitectura Harvard), y memorias caches de instrucciones para permitirelaccesoalamemoriaparalaobtencindedatosmientrasquelasinstruccionesseobtienen delacacheenlugardelamemoria.LaFigura5muestralasdiferenciasentrelaarquitecturaHarvardyla VonNeumann,estaltimautilizadaenlamayoradeprocesadoresdepropsitogeneral.
Dir D

FCEFyN UniversidadNacionaldeCordoba

Memoria de Programa y de Datos

PROCESADOR GENRICO

Dir = Direcciones D = Datos

Memoria de Programa

Dir D

PROCESADOR DSP

Dir D

Memoria de Datos

Figura5:TiposdearquitecturadememoriaentreunMicrocontrolador(arquitecturavonNeumann)yun DSP(arquitecturaHarvard).

ProcesamientoDigitaldeSeales FCEFyN UNCINTRODUCCINALOSDSP

Pgina10 de18 INTRODUCCINALOSDSP Otro punto importante a tener en cuenta es la cantidad de memoria que soporta el DSP, interna y externamente. Atendiendo a las caractersticas de la aplicacin, la mayora de los DSP de coma fija poseenmemoriasinternas,enelpropiochip,detamaopequeomedio,entre256y32kpalabras,yun bus externo de direcciones pequeo. As por ejemplo, la mayora de los DSP de coma fija de Analog Devices, Lucent Technologies, Freescale y Texas Instruments tienen buses de direcciones de 16 bits o menos,loquelimitalacantidaddememoriaexternadeaccesodirecto.Porelcontrario,lamayorade losDSPdecomaflotanteproporcionanpocaoningunamemoriainterna,perosecaracterizanportener busesdedireccionesexternosdegrantamao,parasoportarunagrancantidaddememoriaexterna. Porejemplo,elADSP21020deAnalogDevicesnotienememoriainternaperoposeeunbusexternode direcciones de 24 bits. De forma similar, el TMS320C30 de Texas Instruments posee 6k palabras de memoriainternaydosbusesexternosdedirecciones,unode24bitsyelotrode13bits.Adems,estos DSPposeenmemoriascacheparapermitirunusomseficientedememoriasexternaslentas. Cabedestacarqueenlaactualidadcadavezseempiezaadesarrollarmslatecnologamezcladaentre microprocesadoresyDSP.Diversassonlasrazonesparaqueseproduzcaestaintegracin,sinembargoa grosomodoesposibleidentificarunaenparticular.Losrequerimientosdecontrolentiemporealbajo condicionescadavezmsexigentesencuantoanecesidaddeclculohanllevadoalosfabricantesde microcontroladores (microchip, ST, etc.) a integrar a sus microprocesadores caractersticas de DSP (unidadesdeclculoparalelas,pipeling,etc.)yporelotroladolosfabricantesdeDSP(Texas,Freescale, AnalogDevice,etc.)aintegrarcaractersticasdemicrocontroladores(ConversoresA/D,puertosdigitales I/O,bloquesPWM). ComoresumensepuedeenunciarquelascaractersticasquehacenaunDSPson: ArquitecturadelncleodelDSP. o o EjecucinrpidadeoperacionesMAC. Modosdedireccionamientoespecializadosparamanejodebuffersatravsdeunidades AGU.
FCEFyN UniversidadNacionaldeCordoba

Juegodeinstrucciones. o ControleficientedebuclesparaalgoritmosDSPiterativoscomolOOPS.

Arquitecturadememoria. o Mltiplesaccesossimultneosamemoria.

PerifricosintegradoseinterfacesdeI/O. Graninteraccinconelmundoexterior.

ProcesamientoDigitaldeSeales FCEFyN UNCINTRODUCCINALOSDSP

Pgina11 de18 INTRODUCCINALOSDSP Deloexpuesto,acontinuacinenlaTabla1,sedetallanalgunasdelasoperacionesmscomunesenel mundo del procesamiento digital de seales, los algoritmos utilizados y el hardware necesario en las arquitecturasDSPparallevaracabodichasoperaciones. Tabla1:Necesidadesdelprocesamientodigitaldeseales,apartirdeconsideraqueyasehanadquirido lasmuestrasporconversinanalgico/digitalysehanalmacenadolasmuestrasx(n)enunbufferde memoria.
OPERACION Anlisisdelaseal
a)Valoresmx.ymn. b)Igualdad c)Valormedio
d)Potencia

FCEFyN UniversidadNacionaldeCordoba

ALGORITMO

RESULTADO

HARDWARENECESARIO

x(n) > x max x(x) < x min


x(n) = x ref x m = [x(1) + x(2) + ... + x(N)] / N

Valorpicoyvalle.Rango dinmico.Escalarlaseal Deteccindecero


Valormedio.Ajusterango dinmico

Comparador

Comparador
Acumulador.Divisor.Acceso secuencialdebufferen memoria

Px = [x(1) + x(2) + ... + x(N) ]

Potenciadelaseal Diferenciaentrevalores. Rangodinmico

Multiplicacinyacumulacin. Extraervalorabsoluto

e)Valorabsoluto

x(a) x(b)

x(a) x(b)

Tratamientodelaseal
a)Escaleo b)Decimacin c)Interpolacin
d)Saturacin e)AumentoPrecisin f)Redondeo g)Truncado h)Multiplicacin h)Convolucin y(n) = a x(n)
y(n) = x(an) ; a = 2, 3, 4, ...

Amplificacin.Atenuacin Disminucindelnro.de muestras


1

Multiplicador.Acceso secuencialde2buffers. Accesoabufferssalteandoa lugares


Intercalarvaloresenunbuffer Limiteenacumulador.

y(n) = x(an) ; a = 2 , 3 , 4

, ...

Aumentodelnro.de muestras Mantenersealenelrango dinmico Masbitsparaeldato Menosbitsparaeldato Menosbitsparaeldato Multiplicacindevectores

if x(n) > x sat then x(n) = x sat if x(n) < x sat then x(n) = x sat x 32 (n) = x 16 (n) x 16 (n) = x 32 (n) 0.5LSB x 16 (n) = x 32 (n) LSB
z(n) = x(n).y(n)

Agregarceros.Extensinde signo. Redondeodeacumulador Truncadodeacumulador Accesosimultneoa3buffers secuenciales.

z(n) =

x(m)y(m T)
m= 0

Filtrosdigitales

MAC.Accesosimultneoa2 bufferssecuenciales. Accesobitinverso.Multiplicar Acumular.

i)FFTeIFFT

x(2n), x(2n + 1) ,butterfly

Transformada t f

ProcesamientoDigitaldeSeales FCEFyN UNCINTRODUCCINALOSDSP

Pgina12 de18 INTRODUCCINALOSDSP VELOCIDADDELOSDSP La medida clave para saber si un DSP es o no apropiado para una aplicacin es su velocidad de ejecucin.Existenvariasformasparamedirlavelocidaddeunprocesador,aunquequizselparmetro msusualeseltiempodeciclodeinstruccin:tiemponecesarioparaejecutarlainstruccinmsrpida delprocesador.Suinversodivididoporunmillndalugaralavelocidaddelprocesadorenmillonesde instruccionesporsegundooMIPS.EnlaactualidadtodoslosDSPejecutanunainstruccinporciclode instruccin. Un problema que se presenta cuando se compararan los tiempos de ejecucin de instruccionesdevariosprocesadoresesquelacantidaddetrabajorealizadoporunainstruccinvara significativamente de un procesador a otro. Por ejemplo, algunos DSP disponen de desplazadotes combinatorios(barrelshifters)quepermitenhacerdesplazamientosdemltiplesbitsenlosdatoscon slo una instruccin, mientras que otros DSP requieren que el dato sea desplazado con repetidas instruccionesdedesplazamientodeunsolobit.Deformasimilar,algunosDSPpermitenelmovimiento de datos en paralelo (carga simultnea de datos mientras se ejecuta una instruccin) que no estn relacionadosconlainstruccinquelaALUestejecutando,perootrosDSPslosoportanmovimientos enparaleloqueestnrelacionadosconlosoperandosdelainstruccinqueestejecutandolaALU. ElparmetroMIPS,aligualqueMFLOPS,MOPS,MBPSyotros,semidendeformamuyprecisaaunque suvalornonecesariamentedicemuchodeloqueundeterminadoDSPescapazdehacer.Dichosvalores sirven para ubicar cada DSP en una categora amplia en cuanto a prestaciones pero uno se debera preguntarsisetratadevaloresdepicoosostenidos.Adems,tambinnosdeberamospreguntarcmo sevenafectadaslasprestacionesdelDSPcuandomuchosdelosdatosseencuentranfueradelchip,en lamemoriaexterna. Unasolucinaestosproblemasconsisteendecidirunaoperacinbsicayutilizarlacomoreferenciaal comparar distintos DSP. La operacin que suele tomarse como referencia es la MAC. Desafortunadamente,lostiemposdeejecucindelaMACproporcionan,aveces,pocainformacinpara poder diferenciar entredistintos DSP, yaque en la mayora deellos esta instruccin seejecuta en un solociclodeinstruccin,ycomosehamencionadoanteriormente,algunosDSPpuedenhacermucho msqueotrosenunasimpleinstruccinMAC.Adems,lostiemposdeejecucindelaMACnosuele reflejarlasprestacionesdeotrotipoimportantedeoperacionescomolosbuclesqueestnpresentesen todaslasaplicaciones. Unenfoquemuchomsgeneralconsisteendefinirunconjuntoalgoritmosofunciones,comounfiltro FIRoIIR,eimplementarloendistintosDSPydeestaformaverculdeellosproporcionaunasmejores prestaciones.Sinembargo,laimplementacindeestosalgoritmosparadistintosDSPpuederesultaruna tareaardua.Enestesentido,unabuenareferenciapuedenserlostestsqueefectalaBerkeleyDesign Technology, Inc., pionera en utilizar distintas porciones de algoritmos y funciones para medir las prestacionesdelosdiferentesDSP.
FCEFyN UniversidadNacionaldeCordoba

ProcesamientoDigitaldeSeales FCEFyN UNCINTRODUCCINALOSDSP

Pgina13 de18 INTRODUCCINALOSDSP VENTAJASYDESVENTAJASDELOSDSP LassiguientessonalgunasventajasinherentesalautilizacindesistemasdigitalesconDSP: La Tecnologa VLSI (Very Large Scale Integration) da la posibilidad de disear sistemas con la capacidad para ejecutar procesamiento en tiempo real de muchas de las seales de inters para aplicacionesencomunicaciones,control,procesamientodeimagen,multimedia,etc. Lossistemasdigitalessonmsconfiablesqueloscorrespondientessistemasanalgicos. Lossistemasdigitalesofrecenunamayorflexibilidadqueloscorrespondientessistemasanalgicos. Mayor precisin ymayorexactitudpuedenser obtenidas con sistemas digitales, comparado con los correspondientessistemasanalgicos. UnsistemaprogramablepermiteflexibilidadenlareconfiguracindeaplicacionesDSP. Latoleranciadeloscomponentesenunsistemaanalgicohacenqueestoseaunadificultadparael diseadoralcontrolarlaexactituddelasealdesalidaanloga.Porotrolado,laexactituddelasealde salidaparaunsistemadigitalespredecibleycontrolableporeltipodearitmticausadayelnmerode bitsusadoenlosclculos. Las seales digitales pueden ser almacenadas en un disco flexible, Disco Duro o CD ROM, sin la prdidadefidelidadmsallqueelintroducidoporelconversorAnalgicoDigital(ADC).stenoesel casoparalassealesanalgicas. A pesar de ellas existen algunos inconvenientes que debern ser tomados en cuenta al momento de escogerunaplataformaparaelprocesamientodesealesanalgicaspormediodigitales: La conversin de una seal analgica en digital, obtenida muestreando la seal y cuantificando las muestras,produceunadistorsinquenosimpidelareconstruccindelasealanalgicaoriginalensu realtotalidadapartirdemuestrascuantificadas. Existenefectosdebidosalaprecisinfinitaquedebenserconsideradosenelprocesadodigitaldelas muestrascuantificadas. Para muchas seales de gran ancho de banda, se requiere procesado en tiempo real. Para tales seales,elprocesadoanalgico,oinclusoptico,sonlasnicassolucionesvlidas.Sinembargo,cuando loscircuitosdigitalesexistenysondesuficientevelocidadsehacenpreferibles.
FCEFyN UniversidadNacionaldeCordoba

ProcesamientoDigitaldeSeales FCEFyN UNCINTRODUCCINALOSDSP

Pgina14 de18 INTRODUCCINALOSDSP FABRICANTESDEDSP ActualmenteelmercadosehaampliadoenormementeencuantoalaofertadeDSP.Existendiversos fabricantes,cadaunoconuntipoespecialyparticulardearquitectura,usoy/oaplicacin.Entrelosms conocidossedestacan:TexasInstruments,Freescale,AnalogDevices,HewletPackard,Cirrus,Creative, Microchip, Philips, Yamaha, Airelog Device, AT&T , SGSThomson. De todos ellos cabe mencionar las siguientesfamiliasdeDSP: TEXASINSTRUMENTS: o Familia DaVinci: Familia de DSP orientados al video digital, a la codificacin y decodificacindevideo. FamiliaOMAP:FamiliadeDSPaltorendimientoparaaplicacionesdeprocesamientode grancantidaddedatos,aplicacionesdemultimedia,aplicacionesparacomputadorasde sistemasoperativoLinuxoWindows. FamiliaTMS320C2000:FamiliadeDSPorientadaalcontroldigital. Familia TMS320C5000: Familia de DSP orientados a la industria de bajo consume, productos portatiles, reproductores de msica, telefona VoIP, equipos de libre mantenimiento,GPSyequiposdemedicina. FamiliaTMS320C6000: DSP de alto rendimiento TMS320C6414T/15T/16T y TMS320C645x: Familia de DSP de punto fijo orientados a la industria y a la optimizacin, transmisin, decodificacindevozyvideo. DSP de bajo costo TMS320C6410/12/13/18, TMS320C642x y TMS320C62x: Familia de DSP de alto rendimiento y bajo costo, utilizado en telecomunicacionesysistemasinalmbricos. DSP de punto flotante TMS320C67x y TMS320C672x: Familia de DSP con un poderosocompiladordeCyassembler,paralaoptimizacindeaplicacionesde audiodealtafidelidad. FREESCALE: o Familia StarCore (SC3400, MSC81xx, MSC711x): DSP de altas velocidades y mltiples ncleos,orientadosalatelefonaytelecomunicaciones.
FCEFyN UniversidadNacionaldeCordoba

o o

ProcesamientoDigitaldeSeales FCEFyN UNCINTRODUCCINALOSDSP

Pgina15 de18 INTRODUCCINALOSDSP o FamiliaSymphonyAudio(DSP563XX,DSP567XX):FamiliadeDSPde24bits,desimple ydoblencleo,orientadosalprocesamientodeaudio. Familias DSP56300: Familia de DSP de 24 bits, orientados a las transmisiones inalmbricas,telecomunicacionesyproductosmultimedia Familias56800/E(DSP568XX,DSP56F8XX,DSP56F8XXX):FamiliadeDSPde16bits,que combinanlapotenciadeprocesamientodeunDSPconlafuncionalidadylafacilidadde usodeunmicrocontroladorenunnicochip.Idealparaelcontrol.
FCEFyN UniversidadNacionaldeCordoba

ANALOGDEVICES: o FamiliasBlackfin:FamiliadeDSPembebidos16/32bits,idealparaaplicacionesdemulti formatodeaudio,vdeo,vozyprocesamientodeimgenes. Familias Sharc: Familia de DSP de punto flotante, originales por sus prestaciones de memoriayrendimientodeI/O.Presentavelocidadesde319MFLOPS/dlar,idealpara aplicacionesdeelevadorangodinmico. Familias TigerSharc: Familia de DSP de alto rendimiento, aplicados en la industria yenaplicacionesdemultiprocesamiento,conrendimientoporencimademilmillones deoperacionesporsegundodepuntoflotante. Familias ADSP21xx: Familia de DSP de alta velocidad (160MHz) y bajo consumo (184 microAmper). Ideales para el procesamiento de voz, reconocimiento de voz y aplicacionesdecontrolentiemporeal.

CONCLUSIN Los algoritmos de tratamiento digital de seal han sido los motivadores en el desarrollo de nuevas tecnologas que permitan implementarlos. Dicha evolucin tecnolgica dio lugar a los DSP como procesadores especficamente diseados para tales aplicaciones. El diseo especfico de un DSP determinaalgunosaspectosocaractersticascomoson:LaarquitecturadelncleodelDSPylamemoria, su juego de instrucciones, la integracin de perifricos que le permitan interactuar con el exterior, el formatoderepresentacinaritmticautilizadoylaanchuradelapalabradedatos. Dealgunosdelostemasexpuestos,surgenlossiguientespuntosdevistasalahoradehacerlaseleccin delDSPparanuestraaplicacin: Tipodearitmticautilizadayanchodepalabradedatos.

ProcesamientoDigitaldeSeales FCEFyN UNCINTRODUCCINALOSDSP

Pgina16 de18 INTRODUCCINALOSDSP Rangodinmico. Velocidad. o Valoresdepico: Comafija:MIPS. Comaflotante:MFLOPS. o Testdepruebas(benchmarks).


FCEFyN UniversidadNacionaldeCordoba

Memoriainterna. Soportemultiprocesador. Consumo. Coste. BIBLIOGRAFA JenniferEyreandJeffBier,2000.ChoosingaDSPProcessor.BerkeleyDesignTechnology,Inc. Jennifer EyreandJeff Bier, 2000. Evaluating DSP Processor Performance. Berkeley DesignTechnology, Inc. JenniferEyreandJeffBier,2000.TheEvolutionofDSPProcessors.BerkeleyDesignTechnology,Inc. JordiSalazar,2001.ProcesadoresDigitalesDeSeal(Dsp):ArquitecturasYCriteriosDeSeleccin.Dpto. IngenieraElectrnica.CentroDeSistemasYSensoresElectrnicos,UniversidadPolitcnicaDeCatalua. Rodrigo Huerta Corts, 2004. Laboratorio De Procesamiento Digital De Seales. Universidad Tcnica FedericoSantaMaraDepartamentoDeElectrnica. StevenW.Smith,1997.TheScientistandEngineer'sGuidetoDigitalSignalProcessing.ISBN09660176 33.

ProcesamientoDigitaldeSeales FCEFyN UNCINTRODUCCINALOSDSP

Pgina17 de18 INTRODUCCINALOSDSP GLOSARIODETRMINOS DSP:(DigitalSignalProcessor).Procesadordigitaldeseal. AGU:(AddressGenerationUnit).UnidaddeGeneracindeDirecciones. ALU: (Arithmetic/Logic Unit). Unidad aritmticolgica. Unidad de ejecucin en un procesador responsable de la aritmtica (sumar, restar, desplazar, etc.) y de la lgica (y, o, no, oexclusiva, etc.), entreregistrosespecficos. MAC: (multiplyaccumulate unit). Unidad de ejecucin en un DSP responsable de la realizacin de multiplicacionesyacumulaciones,entreregistrosespecficos. MIPS:(Millioninstructionspersecond).Nmerodeinstruccionesqueelprocesadorpuedeejecutarpor segundo.Laclaveestencuntopuedehacercadainstruccin.ElparmetroMFLOPSesnormalmente unamedidamsfiabledelasprestacionesdelprocesador. MOPS:(Millionoperationpersecond).Nmerototaldeoperacionesqueelprocesadorpuederealizar por segundo. Se incluye accesos DMA, transferencias de datos, operaciones de entrada salida. Este parmetro proporciona una idea aproximada de la capacidad de procesado y de entrada salida del procesador. MFLOPS:(Millionfloatingpointoperationspersecond).Nmerodemultiplicaciones,sumas,restas,etc. en coma flotante que el procesador puede realizar. Algunas veces este parmetro hace referencia a valoresdepicoenlugardevaloressostenidos. MBPS: (Megabytes per second). Proporciona una medida del rendimiento total de procesamiento de datos. MMACS:(Millionmultiplyaccumulatepersecond).Nmerodemultiplicacionesyacumulacionesqueel procesadorpuederealizarporsegundo. VLIW:(Verylonginstructionword).Formatomuylargodepalabradeinstruccin. FFT: (Fast Fourier Transform). Transformada de Fourier rpida. Mtodo computacional eficiente para estimarelespectrofrecuencialdeunaseal. FIR:(Finiteimpulseresponse).Respuestaimpulsionalfinita.Unacategoradefiltrosdigitales. IIR:(Infiniteimpulseresponse).Respuestaimpulsionalinfinita.Unacategoradefiltrosdigitales. PGA: (Pin grid array). Un tipo de encapsulado para circuitos integrados. Las conexiones externas se realizanconterminalesdeconexindispuestosenformadecuadrcula.
FCEFyN UniversidadNacionaldeCordoba

ProcesamientoDigitaldeSeales FCEFyN UNCINTRODUCCINALOSDSP

Pgina18 de18 INTRODUCCINALOSDSP PQFP:(Plasticquadflatpack).Untipodeencapsuladoparacircuitosintegrados. QFP: (Quad flat pack). Un tipo de encapsulado para circuitos integrados. Los circuitos integrados con esteencapsuladosontpicamentemsbaratosqueelmismocircuitoconencapsuladoPGA. TQFP: (Thin quad flat pack). Tipo de encapsulado similar, pero ms delgado, al PQFP. El encapsulado TQFPnormalmenteseutilizaensistemasporttilespequeos.
FCEFyN UniversidadNacionaldeCordoba

ProcesamientoDigitaldeSeales FCEFyN UNCINTRODUCCINALOSDSP

También podría gustarte