-¿Qué es un DSP? ¿Cuáles son sus aplicaciones y qué papel juega el DSP en cada una? Un procesador digital de señales o DSP (por sus siglas en inglés de digital signal processor) es un sistema basado en un microprocesador que posee un conjunto de instrucciones, un hardware y un software optimizados para aplicaciones que requieran operaciones numéricas a muy alta velocidad. Es especialmente útil para el procesado y representación de señales analógicas en tiempo real: en un sistema que trabaje de esta forma se reciben muestras, normalmente provenientes de un conversor analógico/digital (ADC). Se utilizan ampliamente en: -El procesamiento de señales de audio -Telecomunicaciones, comunicaciones mediante Módem ADSL y manejo en comunicaciones entre protocolos diferentes -Procesamiento de imágenes digitales -Radar, sonar -Sistemas de reconocimiento de voz -Dispositivos electrónicos de consumo comunes como teléfonos móviles, unidades de disco y productos de televisión de alta definición (HDTV). El objetivo de un DSP suele ser medir, filtrar o comprimir señales analógicas continuas del mundo real. Los DSP dedicados suelen tener una mejor eficiencia energética que la mayoría de los microprocesadores ya que estos no pueden mantenerse al día con dicho procesamiento de forma continua en tiempo real. Por lo que los DSP son más adecuados en dispositivos portátiles. figura 1. La entrada que recibe el DSP es una señal analógica recibida por cable, o por otro medio con lo que procede a: ● Convertir la señal analógica a digital para su posterior procesado ● Realizar el procesado matemático de la representación de la señal. ● Volver a convertir la señal obtenida de digital a análoga. ● Dar a la salida una señal analógica. De esta forma se obtiene un procesamiento en tiempo real de la representación matemática de la señal. -Enliste los antecedentes históricos y adelantos tecnológicos que hicieron posible al DSP. 1. 1694 Se diseña la primera calculadora mecánica por Leibnitz capaz de acumular el resultado, sumar, restar, multiplicar e incluso realizar raíces cuadradas; demostrando la ventaja del sistema binario sobre el decimal en la implementación de mecanismos capaces de procesar información. 2. 1821 El primer ordenador digital fue propuesto por Charles Babbage. El diseño fue empleado por los gobiernos británico y estadounidense ayudando a compilar tablas matemáticas. 3. 1854 George Boole comenzó a desarrollar el álgebra booleana la cuál es parte fundamental en el diseño de los sistemas digitales. 4. 1943 En plena Segunda Guerra Mundial, un coronel del ejército de los Estados Unidos solicitó una máquina calculadora para la artillería. El reto fue aceptado por la Universidad de Pensilvania presentando la ENIAC (Electrical Numerical Integrator And Calculator). Esta enorme construcción, instalada en una sala de 9×30 m, presentaba problemas tales como su falta de fiabilidad o una escasa capacidad de memoria y de funcionamiento, ya que únicamente podía funcionar unos dos minutos antes de que las válvulas se fundieran. 5. 1946 Von Neumann publica un artículo en el que plantea la primera arquitectura abierta de un sistema microprocesador y presentando el bosquejo del diseño de un nuevo ordenador, que recibiría el nombre de EDVAC (Electronic Discrete Variable Computer). Muchos de los sistemas microprocesadores actuales responden a la arquitectura propuesta por él. 6. 1947 John Bardeen, Walter Brattain y William Shockley inventan el elemento base de la electrónica, el transistor. La aplicación inicial que tuvo fue en la mejora de los sistemas analógicos ya existentes, cuyo principal inconveniente era el hecho de que cada circuito era diferente de los demás. 7. 1952 Grace M. Hopper desarrolló el primer compilador, un programa capaz de traducir instrucciones creadas por el usuario a código máquina 8. 1958 El ingeniero eléctrico Jack St. Clair Kilby, presentó la idea de integrar, en una única pastilla de germanio, un transistor junto a otros componentes: un circuito integrado monolítico, convirtiéndose en la base de compuertas AND, OR, etc, que sirvieron de dispositivos elementales en el diseño y realización del sistema microprocesador. 9. 1960 El Gobierno norteamericano se embarcó en dos proyectos: el misil balístico Minuteman y la misión Apollo. Ambos programas utilizan como componentes circuitos integrados monolíticos con lo que se logró aumentar su fiabilidad. 10. 1970 Gilbert Hyatt presenta la patente del microprocesador, un sistema integrado en un único chip digital con una pequeña CPU, memorias y periféricos que facilitan su comunicación con el exterior. 11. 1979 NEC introdujo el upd 7720, un procesador de 16 bits que tenía una memoria de programa de 512 palabras y una memoria de datos de 128+512. Este fue el primer procesador digital de señal integrado, capaz de ser utilizado en aplicaciones reales con ALUs de 16*16 de 32 – 16 bits. 12. 1980 Texas Instruments introduce el TMS32010 como competidor del procesador de NEC y acuña el término Digital Signal Processor (DSP) procesador digital de señales para referirse a este tipo específico de producto. 1973 El primer multiplicador integrado en un chip lo comercializa la compañía TRW, aunque a un excesivo coste. 1978 AMI anuncia el primer circuito integrado diseñado específicamente para el procesado de señales en tiempo real, el S2811, con capacidad para procesar datos de 12 bits. de un dispositivo capaz de procesar digitalmente señales analógicas). El Intel 2920 no disponía de multiplicador interno y era extremadamente lento en la realización de cualquier operación aritmética (ciclo máquina de 600 ns) para hacerlo útil en el procesamiento de señales de audio (el ámbito de aplicación que inicialmente estaba reservado a los DSP). 13.1980-200 En los siguientes veinte años se produjo el desarrollo de dispositivos mucho más rápidos, dispositivos de coma flotante, complejos ASICs y muchos más, basado sobre los principios del procesamiento digital de señales, pero no necesariamente situados dentro de la definición de DSP. 14. 1995 El 95% de las aplicaciones orientadas a hardware se desarrollaron utilizando procesadores digitales de señales. En esta época, solamente un número pequeño de empresas comenzaban a investigar la tecnología de FPGA. 15. Actualidad En la actualidad, los papeles han cambiado y existe una mayoría abrumadora de soluciones basadas en FPGAs. Esto se debe a que los nuevos dispositivos FPGA se están convirtiendo en dispositivos flexibles, integran “Funciones de Aplicación Específicas”, y cores programables, haciéndolos muy competitivos con respecto a otras soluciones. -Explique la arquitectura de hardware utilizada en los DSP y las razones de su implementación Los DSP a menudo usan arquitecturas de memoria especiales que pueden obtener múltiples datos o instrucciones al mismo tiempo. Implementan tecnología de compresión de datos, siendo la transformada de coseno discreta (DCT) una tecnología de compresión ampliamente utilizada en los DSP. Las arquitecturas convencionales de DSP permiten el acceso de memoria utilizando una arquitectura estilo Harvard, con los bloques de memoria físicamente separados para datos y programas. Abandonando así la arquitectura clásica de Von Neumann, en la que datos y programas están en la misma zona de memoria Cada uno de estos bloques de memoÑria se direcciona mediante buses separados (tanto de direcciones como de datos), e incluso es posible que la memoria de datos tenga distinta anchura de palabra que la memoria de programa. Sus elementos principales son un multiplicador, una unidad de lógica/aritmética (ALU), y un registro de la acumulación, permitiendo la creación de una unidad multiplicadora-acumuladora (MAC) que acepta dos operandos. Dependiendo del procesador, los operandos pueden ser de 16-48 bits y las palabras pueden estar en formato de punto fijo o punto flotante. Cualquiera que sea el ancho de palabra que ofrece el DSP, se ejecuta una instrucción por ciclo de reloj. Hablar de DSP obliga a hacer referencia a las nuevas arquitecturas VLIW (Very Long Instruction Word) que están siendo adoptadas por los DSP de alta prestación. Las Tecnologías de la Información y las Comunicaciones (TIC) demandan más recursos para poder procesar grandes volúmenes de datos. Hasta ahora, los avances en la capacidad de cómputo de los procesadores se han basado en el aumento de DSP, perspectiva la velocidad del reloj y en innovaciones en la planificación, por parte del hardware, de la ejecución de instrucciones. Este modelo actual presupone que cada nueva generación de procesadores es capaz de ejecutar más instrucciones y será difícil que las arquitecturas tradicionales continúen doblando prestaciones cada 12-18 meses sin que se emigre a nuevas tecnologías. El principio en el que se basa la arquitectura VLIW es la reducción de complejidad, hardware más sencillo y menor número de transistores, permitiendo incrementar la velocidad del reloj y al mismo tiempo reducir el consumo Las arquitecturas VLIW están estrechamente relacionadas con los procesadores superescalares. Ambos tratan de aumentar la velocidad computacional mediante paralelismo a nivel de instrucciones en el que se utilizan múltiples copias de algunas etapas de la “pipeline” o unidades de ejecución trabajando en paralelo. En una arquitectura VLIW, las instrucciones poseen un formato grande de palabra compuesto por múltiples instrucciones independientes que incluye un campo de control para cada una de las unidades de ejecución. El tamaño de la instrucción depende de dos factores: el número de unidades de ejecución disponibles y la longitud de código requerida para cada una de ellas. Una consecuencia de ello es que los buses internos de datos y de instrucciones son de mayor tamaño. Por otro lado, a diferencia de los procesadores superescalares en los que la planificación de las instrucciones para buscar el máximo paralelismo la realiza el propio procesador, en las arquitecturas VLIW esta tarea la realiza el compilador. Esta planificación es conocida como estática (“static scheduling”). Una ventaja inmediata de este tipo de planificación es que permite dedicar más tiempo a encontrar la mejor optimización, aunque esto hace que el compilador sea más complejo al agrupar de la mejor forma posible las instrucciones. Bibliografía Miranda Barrientos, C. (2011a). Miranda Barrientos, C. (2011). Programación de DSP a través de Herramientas disponibles en Matlab 7.0 / Simulink (Tesis). Universidad de Magallanes. Recuperado de http://www.umag.cl/biblioteca/tesis/miranda_barrientos_2011.pdf Barrero, F. & Toral, S. L. (s. f.). Introducción a los DSP. Conceptos básicos [Pdf]. En Procesadores digitales de señal de altas prestaciones de Texas Instruments. MC Graw Hill. Recuperado de https://www.mheducation.es/bcv/guide/capitulo/8448198344.pdf https://www.electronicasi.com/wp-content/uploads/2013/04/dspElectronica-avanzada .pdf (2013, 6 mayo). Digital Signal Processor. Recuperado 27 de noviembr de 2022, de https://www.electronicasi.com/wp-content/uploads/2013/04/dspElectronica-av anzada.pdf Salazar, J. (s. f.). Procesadores digitales de señal (DSP) Arquitecturas y criterios de selección. Recuperado 27 de noviembre de 2022, de https:///documents/4874468/19345367/ssee-da-t04-01.pdf/20ed49bb-90d7-4d 1b-a5d5-bc5cadc34fef