Procesadores de señales digitales (DSP)

Índice

What is Digital Signal Processor (DSP)

¿Qué es un procesador de señal digital?

Un procesador de señales digitales (DSP) es un microprocesador dedicado al procesamiento de señales digitales (normalmente en tiempo real). La arquitectura incluye CPU/ALU, memoria de programa, memoria de datos, etc. Sus tipos de arquitectura más comunes incluyen DSP mejorado, estructura VLIW, arquitectura superscalar y estructura híbrida SIMD. Su característica más destacada es su multiplicador de hardware interno dedicado y su estructura de bus Harvard, que puede procesar un gran número de señales digitales a gran velocidad.

¿Cómo funciona el DSP?

El DSP es un dispositivo que utiliza señales digitales para procesar grandes cantidades de información. Es decir, la información obtenida tras «digitalizar» la señal analógica en un momento específico. Para ser más concretos, consiste en «muestrear» en un momento específico y, a continuación, «cuantificar» la señal discreta muestreada para procesarla y convertirla en el número correspondiente, completando así el trabajo de digitalización.

Hay dos acciones que son cruciales para la digitalización: el «muestreo» y la «cuantificación», que discutiremos más adelante. Después de obtener la información digital, se pueden realizar las operaciones adecuadas para cumplir con nuestros requisitos de procesamiento de señales de audio.

Estructura DSP

Para lograr un procesamiento de señales digitales rápido y en tiempo real, el DSP adopta una arquitectura diferente a la de otros chips de microprocesamiento (CPU, etc.). Abandonó la arquitectura paralela von Norman y adoptó la arquitectura Harvard. Utilizamos dos diagramas esquemáticos para distinguir la estructura von Norman y la estructura Harvard.

Harvard Architecture
Arquitectura de Harvard (Crédito de la imagen: wikimedia)
Von Neumann Architecture
Arquitectura Von Neumann (Crédito de la imagen: Wikipedia)

Como se puede observar en los dos diagramas estructurales anteriores, la mayor diferencia entre la estructura Harvard y la estructura von Norman es si las unidades de almacenamiento están subdivididas. En la arquitectura Harvard, las instrucciones almacenan el programa y los datos se almacenan en diferentes espacios de memoria. La obtención de instrucciones y la ejecución de instrucciones pueden superponerse completamente, y cada memoria se direcciona y accede de forma independiente. También permite transferencias entre el espacio del programa y el espacio de datos, lo que aumenta la flexibilidad del dispositivo.

Por el contrario, en la estructura de von Neumann solo hay una unidad de almacenamiento, que contiene la dirección, las instrucciones, los datos y otra información. La dirección proporcionada por el contador de instrucciones se utiliza para distinguir si se trata de una instrucción, datos o una dirección. La velocidad y la eficiencia de lectura son relativamente bajas, lo que da lugar a un bajo rendimiento de datos.

Indicadores de funcionamiento del chip DSP

  • Funcionamiento de la cadena de montaje:

La canalización está relacionada con la estructura Harvard. Los chips DSP utilizan ampliamente las canalizaciones para reducir el tiempo de ejecución de las instrucciones, mejorando así la potencia de procesamiento del procesador. El procesador puede procesar de dos a cuatro instrucciones en paralelo, cada una de ellas en una etapa diferente de la canalización.

  • Multiplicador de hardware dedicado:

Cuanto mayor sea la velocidad de multiplicación, mayor será el rendimiento del procesador DSP. Gracias a un multiplicador de aplicaciones dedicado, la multiplicación se puede completar en un ciclo de instrucción.

  • Instrucciones DSP especiales:

Instrucciones DSP especiales Los chips DSP utilizan instrucciones especiales.

  • Ciclo de instrucción rápido:

El ciclo de instrucción rápido, la estructura Harvard, las operaciones en pipeline, los multiplicadores de hardware dedicados, las instrucciones DSP especiales y el diseño optimizado del circuito integrado pueden hacer que el ciclo de instrucción del chip DSP sea inferior a 200 ns.

Características del sistema DSP

El sistema de procesamiento de señales digitales se basa en el procesamiento de señales digitales y, por lo tanto, tiene todas las características del procesamiento digital:

La interfaz es cómoda.

Los sistemas DSP son compatibles con otros sistemas o dispositivos basados en tecnología digital moderna. Es mucho más fácil para estos sistemas interactuar para lograr ciertas funciones que para los sistemas analógicos interactuar con estos sistemas.

La programación es conveniente.

 El chip DSP programable del sistema DSP permite a los diseñadores modificar y actualizar el software de forma flexible y cómoda durante el proceso de desarrollo.

Buena estabilidad y durabilidad

El sistema DSP se basa en el procesamiento digital, se ve menos afectado por la temperatura ambiente y el ruido, y ofrece una gran fiabilidad.

Alta precisión

La precisión que se puede alcanzar con un sistema numérico de 16 bits.

Buena repetibilidad

El rendimiento de los sistemas analógicos se ve muy afectado por los cambios en el rendimiento de los parámetros de los componentes, mientras que los sistemas digitales básicamente no se ven afectados. Por lo tanto, los sistemas digitales son convenientes para las pruebas, la depuración y la producción en masa.

Fácil de integrar

Los componentes digitales del sistema DSP están altamente estandarizados y facilitan la integración a gran escala.

Historia de los chips DSP

El nacimiento de los chips DSP es una necesidad de los tiempos. Desde la década de 1960, con el rápido desarrollo de los ordenadores y la tecnología de la información, la tecnología de procesamiento de señales digitales ha surgido y se ha desarrollado rápidamente. Antes de la llegada de los chips DSP, el procesamiento de señales digitales solo podía realizarse mediante microprocesadores. Sin embargo, debido a la baja velocidad de procesamiento del microprocesador, este simplemente no puede satisfacer los requisitos de alta velocidad en tiempo real de la creciente cantidad de información.

En la década de 1970, la base teórica y algorítmica de los chips DSP había madurado. Pero en ese momento, el DSP solo permanecía en los libros de texto. Incluso los sistemas DSP desarrollados estaban compuestos por componentes discretos y sus campos de aplicación se limitaban a los sectores militar y aeroespacial.

En 1978, AMI lanzó el primer chip DSP de un solo chip del mundo, el S2811, pero no contaba con el multiplicador de hardware necesario para los chips DSP modernos.

En 1979, el dispositivo programable comercial 2920 lanzado por Intel Corporation de Estados Unidos supuso un hito importante en los chips DSP, pero aún no contaba con un multiplicador de hardware.

En 1980, el MPD7720 lanzado por la empresa japonesa NEC fue el primer chip DSP comercial con un multiplicador de hardware, por lo que se consideró el primer dispositivo DSP monolítico.

En 1982, nacieron el chip DSP de primera generación TMS32010 y su serie de productos. Este dispositivo DSP se fabrica utilizando tecnología NMOS de proceso micrométrico. Aunque su consumo de energía y su tamaño son ligeramente mayores, su velocidad de cálculo es decenas de veces superior a la de un microprocesador.

La llegada de los chips DSP supone un hito, que marca un gran paso adelante para los sistemas de aplicación DSP, desde los grandes sistemas hasta la miniaturización. A mediados de la década de 1980, con la aparición de los chips DSP basados en la tecnología CMOS, su capacidad de almacenamiento y velocidad de cálculo se duplicaron, convirtiéndose en la base de la tecnología de procesamiento de voz y procesamiento de imágenes por hardware.

A finales de la década de 1980, salió al mercado la tercera generación de chips DSP, se mejoró aún más la velocidad de cálculo y su ámbito de aplicación se amplió gradualmente a los campos de las comunicaciones y los ordenadores.

El DSP se desarrolló más rápidamente en la década de 1990, con la aparición sucesiva de los chips DSP de cuarta y quinta generación. En comparación con la cuarta generación, el sistema de quinta generación tiene un mayor grado de integración, ya que integra el núcleo DSP y los componentes periféricos en un solo chip.

Tras entrar en el siglo XXI, nació el chip DSP de sexta generación. Los chips de sexta generación superan ampliamente a los de quinta generación en términos de rendimiento. Al mismo tiempo, se han desarrollado muchas ramas personalizadas basadas en diferentes objetivos comerciales, y han comenzado a expandirse gradualmente a nuevas áreas.

Aplicaciones de los chips DSP

En la era digital actual, el DSP se ha convertido en un dispositivo básico en las comunicaciones, la informática, la electrónica de consumo y otros campos.

Campo de comunicación

La cantidad de información generada por la transmisión de datos multimedia es enorme. Los terminales de red multimedia necesitan analizar y procesar rápidamente la información adquirida durante todo el proceso. Por lo tanto, el DSP se utiliza en la codificación del habla, la compresión de imágenes y la reducción de la comunicación por voz. Hoy en día, el DSP produce efectos en tiempo real para los cálculos de decodificación del habla, y los requisitos del protocolo de diseño se han convertido en el estándar internacional más básico.

Control industrial

En el campo del control industrial, los robots industriales se utilizan ampliamente y los requisitos de rendimiento de los sistemas de control de robots son cada vez más exigentes. El sistema de control del robot generará una gran cantidad de datos y procesos de cálculo mientras completa una acción, por lo que se puede utilizar un DSP de alto rendimiento. Una vez aplicado el DSP al sistema de control del robot, se aprovechan al máximo sus características de velocidad de cálculo en tiempo real, de modo que el sistema robótico puede resolver rápidamente los problemas. A medida que aumenta la velocidad de los chips de señal digital DSP, es fácil formar una red de procesamiento paralelo en el sistema, lo que mejora considerablemente el sistema de control. El rendimiento ha permitido un mayor desarrollo del sistema robótico.

Instrumento

Los abundantes recursos integrados en el chip del DSP pueden simplificar enormemente el circuito de hardware de los instrumentos y hacer posible el diseño SOC de los mismos. La precisión y la velocidad de medición de los instrumentos son indicadores importantes. El uso de chips DSP para desarrollar productos puede mejorar considerablemente estos dos indicadores. Por ejemplo, el TMS320F2810 de TI cuenta con un eficiente núcleo de CPU de 32 bits, un convertidor A/D de 12 bits, una rica memoria en chip y un sistema de comandos flexible, lo que constituye una amplia plataforma para instrumentos de alta precisión. Los instrumentos de alta precisión se han convertido en una importante aplicación del DSP y se encuentran en un periodo de rápida difusión, lo que promoverá la innovación tecnológica en la industria.

Sector automovilístico

El creciente desarrollo de los sistemas electrónicos para automóviles, como la instalación de radares de infrarrojos y ondas milimétricas, requerirá el uso de DSP para su análisis. Hoy en día, hay cada vez más coches y los sistemas anticolisión se han convertido en un tema candente de investigación. Además, los datos de imagen capturados por la cámara deben ser procesados por el DSP antes de poder mostrarse en el sistema de conducción para que el conductor pueda consultarlos.

Campo militar

El bajo consumo energético, el tamaño reducido y la velocidad de respuesta en tiempo real del DSP son especialmente necesarios en armas y equipos. Por ejemplo, los misiles aire-aire aerotransportados están equipados con detectores infrarrojos y los correspondientes procesadores de señales DSP en un volumen limitado para completar el bloqueo y seguimiento automático de objetivos. Las miras visuales equipadas en aviones de combate avanzados y los instrumentos de baja luminosidad montados en cascos que lleva el personal de infantería requieren tecnología DSP para completar el filtrado y la mejora de imágenes y la búsqueda y captura inteligente de objetivos. La tecnología DSP también se utiliza en el procesamiento de señales digitales de radar, como el control automático de artillería, misiles de crucero, aviones de alerta temprana y antenas de matriz en fase.

DSP de punto fijo y DSP de punto flotante

En general, los procesadores DSP de punto fijo se caracterizan por su alta velocidad, bajo consumo energético y precio económico, mientras que los procesadores DSP de punto flotante ofrecen cálculos precisos, un amplio rango dinámico, alta velocidad, facilidad de programación, alto consumo energético y precio elevado.

Rango dinámico

Desde una perspectiva macro, el DSP de punto flotante tiene un rango dinámico mucho mayor que el DSP de punto fijo. En la aritmética de punto fijo, los programadores deben prestar siempre atención a la aparición de desbordamientos. Para evitarlos, deben seguir realizando escalados de desplazamiento o truncamientos. Lo primero consume mucho tiempo y espacio, mientras que lo segundo conlleva una pérdida de precisión. Por el contrario, el DSP de operación en coma flotante amplía el rango dinámico, mejora la precisión, ahorra tiempo de operación y espacio de almacenamiento, lo que reduce en gran medida las comprobaciones de escalado, desplazamiento y desbordamiento.

Hardware

Desde un punto de vista puramente técnico, la diferencia entre punto fijo y punto flotante radica principalmente en dos aspectos: el hardware y el software. La diferencia en el hardware proviene de: el procesador DSP de punto flotante tiene un multiplicador de punto flotante/entero, una unidad aritmética lógica (ALU) de entero/punto flotante, un registro adecuado para almacenar resultados de punto flotante de precisión extendida, etc.

software

Veamos las diferencias en el desarrollo de software. Incluye principalmente las características y precauciones de la programación DSP de punto flotante; operaciones de escalado, desplazamiento y detección de desbordamiento de DSP de punto fijo al realizar operaciones de punto flotante. Al comparar dos números de punto flotante, nunca utilice el operador «==» para determinar la igualdad. Incluso al comparar dos números idénticos, puede haber diferencias sutiles. Incluso definir exactamente 0 no es muy seguro. Aunque existe una representación de 0 en el lenguaje C, nunca escriba ese código (x==0), sino que debe escribir (fabs(x) < TINY), donde TINY se define como un valor muy pequeño, es decir, el error de redondeo del formato de coma flotante del procesador.

Suscríbete

Únete a nuestra lista de suscriptores para recibir actualizaciones mensuales del blog, noticias de tecnología y estudios de caso. Nunca enviaremos spam y puedes cancelar tu suscripción en cualquier momento.

Acerca del Autor

Picture of Aidan Taylor
Aidan Taylor

I am Aidan Taylor and I have over 10 years of experience in the field of PCB Reverse Engineering, PCB design and IC Unlock.

¿Necesitas ayuda?

Scroll al inicio

Cotización