Post on 03-Nov-2018
Elect. de potenciacon DSP
J. Restrepo - J. Viola
Procesadores
Unidad de
procesamiento (DSP)
1.1
Elect. de potencia
con DSPPrograma
Procesamiento Digital de Señales
(Introducción) 15 Julio 2014
J. Restrepo - J. Viola
Universidad Politécnica Salesiana
Elect. de potenciacon DSP
J. Restrepo - J. Viola
Procesadores
Unidad de
procesamiento (DSP)
1.2
Unidad de procesamiento
Procesamiento general
Las aplicaciones de los sistemas de procesamiento se pueden
subdividir en dos ramas genéricas:
Manipulación de datos tales como procesadores de
palabras y bases de datos.
Elect. de potenciacon DSP
J. Restrepo - J. Viola
Procesadores
Unidad de
procesamiento (DSP)
1.2
Unidad de procesamiento
Procesamiento general
Las aplicaciones de los sistemas de procesamiento se pueden
subdividir en dos ramas genéricas:
Manipulación de datos tales como procesadores de
palabras y bases de datos.
Cálculos matemáticos requerido en ciencia e ingeniería
(por ejemplo procesamiento digital de señales).
Elect. de potenciacon DSP
J. Restrepo - J. Viola
Procesadores
Unidad de
procesamiento (DSP)
1.3
Unidad de procesamiento
Procesamiento general
Algunos ejemplos que requieren un procesador de propósito
general son:
Manipulación de datos
Procesamiento de palabras
Manejo de bases de datos
Hojas de excel
Sistemas operativos
Movimiento de datos (A→B)
Comparaciones (if A+B then ...)
Tiempo de ejecución no es crítico ni predecible.
Elect. de potenciacon DSP
J. Restrepo - J. Viola
Procesadores
Unidad de
procesamiento (DSP)
1.4
Unidad de procesamiento
Computo matemático
Algunos ejemplos que requieren un procesador especializadoson:
Cálculos matemáticos
Procesamiento digital de señales
Control de movimiento
Simulaciones de ingeniería
Procesamiento de señales en tiempo real
Suma (C=A+B)
Multiplicación (C=A×B)
El tiempo de ejecución es crítico y debe ser predecible.
Elect. de potenciacon DSP
J. Restrepo - J. Viola
Procesadores
Unidad de
procesamiento (DSP)
1.5
Unidad de procesamiento
Microcontrolador, Microprocesador y Procesador Digital de
Señales (DSP)
Microcontroladores
Poseen los siguientes elementos básicos: CPU, RAM,
ROM, Interface serial/paralela, Temporizador, Circuitería
de interrupción.
Son adecuados para aplicaciones tanto domésticas como
control industrial de procesos.
La velocidad no es en general un requisito.
Poseen un conjunto compacto de instrucciones.
Ejemplo: 8051, 68HC11, PIC.
Elect. de potenciacon DSP
J. Restrepo - J. Viola
Procesadores
Unidad de
procesamiento (DSP)
1.6
Unidad de procesamiento
Microcontrolador, Microprocesador y Procesador Digital deSeñales (DSP)
Microprocesadores
En general la unidad central de procesamiento se
encapsula en un solo CHIP, requiriendo circuiteríaadicional para otras tareas.
Pueden ser (reduced instruction set computer) RISC o(complex instruction set computer) CISC .
Ejemplos: Serie Pentium, PowerPC, MIPS
Elect. de potenciacon DSP
J. Restrepo - J. Viola
Procesadores
Unidad de
procesamiento (DSP)
1.7
Unidad de procesamiento
Microcontrolador, Microprocesador y Procesador Digital deSeñales (DSP)
Procesador Digital de Señales (DSP)
Poseen los siguientes elementos básicos: RAM, ROM,Interface serial/paralela, Temporizador, Circuitería de
interrupción.
Unidad Central de Procesamiento (CPU) optimizadacálculos matemáticos rápidos y repetitivos, para
procesamiento en tiempo real.
Ejemplos: TI DSPs, Analog Devices DSPs.
Elect. de potenciacon DSP
J. Restrepo - J. Viola
Procesadores
Unidad de
procesamiento (DSP)
1.8
Unidad de procesamiento
Necesidades tí[icas en procesamiento digital de señales (DSP)
La operación más fundamental en procesamiento de señales
es la suma de productos,
y[n] = h[0]x[n]+ h[1]x[n− 1]+ . . .+ h[N]x[n−N]
Utilizado en:
Filtrado digital
Multiplicar coeficientes de filtro con muestras de datos
Sumar resultado al acumulador
Repetir N veces
Requisitos de DSP
Operación de multiplicar y acumular de alta velocidad
Precisión extendida del acumulador (para evitar saturación)
Capacidad de obtener dos elementos de forma simultanea.
Memoria circular (circular buffer)
Lazos en hardware
Elect. de potenciacon DSP
J. Restrepo - J. Viola
Procesadores
Unidad de
procesamiento (DSP)
1.9
Unidad de procesamiento
Operaciones en un ciclo de máquina del ADSP-21xx
Las operaciones que puede realizar un procesador en un ciclo
de máquina son,
Buscar un dato (muestra de dato) de memoria de datos
Buscar un coeficiente de memoria de programa
Ejecutar la operacion de multiplicar y acumular
Actualizar la posición de los apuntadores para la próximaoperación
Elect. de potenciacon DSP
J. Restrepo - J. Viola
Procesadores
Unidad de
procesamiento (DSP)
1.10
Unidad de procesamiento
Arquitectura de los procesadores
MEMORY:
Data and
InstructionsData Bus
Address Bus
CPU
PM Data Bus
PM Address Bus
DM Data Bus
DM Address BusPROGRAM
MEMORY:
Instructions
Only
CPU
DATA
MEMORY:
Data Only
PM Data Bus
PM Address Bus
DM Data Bus
DM Address BusPROGRAM
MEMORY:
Instructions
and Data
DATA
MEMORY:
Data OnlyInstruction
Cache
CPU
A:
VON NEUMANN
B:
HARVARD
C:
ADI MODIFIED
HARVARD
Elect. de potenciacon DSP
J. Restrepo - J. Viola
Procesadores
Unidad de
procesamiento (DSP)
1.11
Unidad de procesamiento
(Analog Devices) Sharc ADSP-21369 EZKit-Lite
Elect. de potenciacon DSP
J. Restrepo - J. Viola
Procesadores
Unidad de
procesamiento (DSP)
1.12
Unidad de procesamiento
(Analog Devices) Sharc ADSP-21369 EZKit-Lite
La tarjeta de desarrollo ADSP-21369 EZKit-Lite posee:
1M x 8-bit de memoria tipo FLASH. Permite almacenar
código específico del usuario y código de de inicio (boot
code) y permitir a la tarjeta operar de forma independiente.
Elect. de potenciacon DSP
J. Restrepo - J. Viola
Procesadores
Unidad de
procesamiento (DSP)
1.12
Unidad de procesamiento
(Analog Devices) Sharc ADSP-21369 EZKit-Lite
La tarjeta de desarrollo ADSP-21369 EZKit-Lite posee:
1M x 8-bit de memoria tipo FLASH. Permite almacenar
código específico del usuario y código de de inicio (boot
code) y permitir a la tarjeta operar de forma independiente.
1M x 32-bit x 4 bancos de SDRAM. Permite
almacenamiento de datos en memoria externa.
Elect. de potenciacon DSP
J. Restrepo - J. Viola
Procesadores
Unidad de
procesamiento (DSP)
1.12
Unidad de procesamiento
(Analog Devices) Sharc ADSP-21369 EZKit-Lite
La tarjeta de desarrollo ADSP-21369 EZKit-Lite posee:
1M x 8-bit de memoria tipo FLASH. Permite almacenar
código específico del usuario y código de de inicio (boot
code) y permitir a la tarjeta operar de forma independiente.
1M x 32-bit x 4 bancos de SDRAM. Permite
almacenamiento de datos en memoria externa.
512K x 8-bit SRAM.
Elect. de potenciacon DSP
J. Restrepo - J. Viola
Procesadores
Unidad de
procesamiento (DSP)
1.12
Unidad de procesamiento
(Analog Devices) Sharc ADSP-21369 EZKit-Lite
La tarjeta de desarrollo ADSP-21369 EZKit-Lite posee:
1M x 8-bit de memoria tipo FLASH. Permite almacenar
código específico del usuario y código de de inicio (boot
code) y permitir a la tarjeta operar de forma independiente.
1M x 32-bit x 4 bancos de SDRAM. Permite
almacenamiento de datos en memoria externa.
512K x 8-bit SRAM.
2 Mbit SPI de memoria FLASH. Permite almacenar códigoespecífico del usuario y código de inicio.
Elect. de potenciacon DSP
J. Restrepo - J. Viola
Procesadores
Unidad de
procesamiento (DSP)
1.12
Unidad de procesamiento
(Analog Devices) Sharc ADSP-21369 EZKit-Lite
La tarjeta de desarrollo ADSP-21369 EZKit-Lite posee:
1M x 8-bit de memoria tipo FLASH. Permite almacenar
código específico del usuario y código de de inicio (boot
code) y permitir a la tarjeta operar de forma independiente.
1M x 32-bit x 4 bancos de SDRAM. Permite
almacenamiento de datos en memoria externa.
512K x 8-bit SRAM.
2 Mbit SPI de memoria FLASH. Permite almacenar códigoespecífico del usuario y código de inicio.
Debugger a través de conexión USB.
Elect. de potenciacon DSP
J. Restrepo - J. Viola
Procesadores
Unidad de
procesamiento (DSP)
1.12
Unidad de procesamiento
(Analog Devices) Sharc ADSP-21369 EZKit-Lite
La tarjeta de desarrollo ADSP-21369 EZKit-Lite posee:
1M x 8-bit de memoria tipo FLASH. Permite almacenar
código específico del usuario y código de de inicio (boot
code) y permitir a la tarjeta operar de forma independiente.
1M x 32-bit x 4 bancos de SDRAM. Permite
almacenamiento de datos en memoria externa.
512K x 8-bit SRAM.
2 Mbit SPI de memoria FLASH. Permite almacenar códigoespecífico del usuario y código de inicio.
Debugger a través de conexión USB.
Programación a través del ambiente de desarrolloVisualDSP++.
Elect. de potenciacon DSP
J. Restrepo - J. Viola
Procesadores
Unidad de
procesamiento (DSP)
1.13
Unidad de procesamiento
Procesador ADSP-21369
El procesador ADSP-21369 tiene las siguientes
características:
400MHz Single Instruction Multiple Data (SIMD) SHARCCore, con una capacidad pico de 2.4 GFLOPS.
Elect. de potenciacon DSP
J. Restrepo - J. Viola
Procesadores
Unidad de
procesamiento (DSP)
1.13
Unidad de procesamiento
Procesador ADSP-21369
El procesador ADSP-21369 tiene las siguientes
características:
400MHz Single Instruction Multiple Data (SIMD) SHARCCore, con una capacidad pico de 2.4 GFLOPS.
2Mbits SRAM; 6 Mbits ROM definidaa por el usuario.
Elect. de potenciacon DSP
J. Restrepo - J. Viola
Procesadores
Unidad de
procesamiento (DSP)
1.13
Unidad de procesamiento
Procesador ADSP-21369
El procesador ADSP-21369 tiene las siguientes
características:
400MHz Single Instruction Multiple Data (SIMD) SHARCCore, con una capacidad pico de 2.4 GFLOPS.
2Mbits SRAM; 6 Mbits ROM definidaa por el usuario.
Interfaz de 32-bit a memoria externa.
Elect. de potenciacon DSP
J. Restrepo - J. Viola
Procesadores
Unidad de
procesamiento (DSP)
1.13
Unidad de procesamiento
Procesador ADSP-21369
El procesador ADSP-21369 tiene las siguientes
características:
400MHz Single Instruction Multiple Data (SIMD) SHARCCore, con una capacidad pico de 2.4 GFLOPS.
2Mbits SRAM; 6 Mbits ROM definidaa por el usuario.
Interfaz de 32-bit a memoria externa.
Digital Audio Interface (DAI) que permite acceso definidopor usuario a periféricos incluyendo.
1 8 puertos seriales (SPORTs)2 S/PDIF Tx/Rx3 8-channel asynchronous sample rate
Elect. de potenciacon DSP
J. Restrepo - J. Viola
Procesadores
Unidad de
procesamiento (DSP)
1.14
Unidad de procesamiento
Procesador ADSP-21369
El procesador ADSP-21369 tiene las siguientes
características:
Digital Peripheral Interface (DPI) que permite accesodefinido por usuario a periféricos incluyendo.
1 2 puertos SPI-compatibles.2 2 UARTs.3 3 temporizadores4 Una interfaz de dos hilos compatible con el estándar I2C.
Elect. de potenciacon DSP
J. Restrepo - J. Viola
Procesadores
Unidad de
procesamiento (DSP)
1.14
Unidad de procesamiento
Procesador ADSP-21369
El procesador ADSP-21369 tiene las siguientes
características:
Digital Peripheral Interface (DPI) que permite accesodefinido por usuario a periféricos incluyendo.
1 2 puertos SPI-compatibles.2 2 UARTs.3 3 temporizadores4 Una interfaz de dos hilos compatible con el estándar I2C.
16 canales de Modulación por Ancho de Pulso (PWM).
Elect. de potenciacon DSP
J. Restrepo - J. Viola
Procesadores
Unidad de
procesamiento (DSP)
1.14
Unidad de procesamiento
Procesador ADSP-21369
El procesador ADSP-21369 tiene las siguientes
características:
Digital Peripheral Interface (DPI) que permite accesodefinido por usuario a periféricos incluyendo.
1 2 puertos SPI-compatibles.2 2 UARTs.3 3 temporizadores4 Una interfaz de dos hilos compatible con el estándar I2C.
16 canales de Modulación por Ancho de Pulso (PWM).
34 canales DMA.
Elect. de potenciacon DSP
J. Restrepo - J. Viola
Procesadores
Unidad de
procesamiento (DSP)
1.15
Unidad de procesamiento
Procesador ADSP-21369
Elect. de potenciacon DSP
J. Restrepo - J. Viola
Procesadores
Unidad de
procesamiento (DSP)
1.16
Ambiente de programación
VisualDSP++
El ambiente principal de programación es el "Integrated
Development Environtment (IDE)". Este permite el desarrollo
de programas en lenguaje ensamblador, lenguaje C y C++.
Elect. de potenciacon DSP
J. Restrepo - J. Viola
Procesadores
Unidad de
procesamiento (DSP)
1.16
Ambiente de programación
VisualDSP++
El ambiente principal de programación es el "Integrated
Development Environtment (IDE)". Este permite el desarrollo
de programas en lenguaje ensamblador, lenguaje C y C++.
A continuación se describe el procedimiento requerido para
crear un proyecto básico. Para este propósito se deseaconstruir una señal sintética tipo seno, con una amplitud
unitaria, de dos ciclos completos y que tenga una longitud de
1000 puntos.
Elect. de potenciacon DSP
J. Restrepo - J. Viola
Procesadores
Unidad de
procesamiento (DSP)
1.16
Ambiente de programación
VisualDSP++
El ambiente principal de programación es el "Integrated
Development Environtment (IDE)". Este permite el desarrollo
de programas en lenguaje ensamblador, lenguaje C y C++.
A continuación se describe el procedimiento requerido para
crear un proyecto básico. Para este propósito se deseaconstruir una señal sintética tipo seno, con una amplitud
unitaria, de dos ciclos completos y que tenga una longitud de
1000 puntos.
Se hará la programación en lenguaje C, utilizando la biblioteca
de funciones matemáticas. El resultado se visualizaráutilizando la herramientas del "IDE" y finalmente los datos se
escribiran a disco, para ser leidos en MATLAB.
Elect. de potenciacon DSP
J. Restrepo - J. Viola
Procesadores
Unidad de
procesamiento (DSP)
1.17
Ambiente de programación
Pasos para crear un proyecto nuevo
Los pasos para crear un proyecto nuevo son los siguientes:
1 El proceso inicia seleccionando la creación del proyecto através del menú principal (File-> New -> Project). Esto
despliega un menú (Project Wizard).
Elect. de potenciacon DSP
J. Restrepo - J. Viola
Procesadores
Unidad de
procesamiento (DSP)
1.17
Ambiente de programación
Pasos para crear un proyecto nuevo
Los pasos para crear un proyecto nuevo son los siguientes:
1 El proceso inicia seleccionando la creación del proyecto através del menú principal (File-> New -> Project). Esto
despliega un menú (Project Wizard).
2 En el área "Directory" se selecciona el directorio base
donde residiran los programas fuente. En este caso
escribimos C:\tmp\
Elect. de potenciacon DSP
J. Restrepo - J. Viola
Procesadores
Unidad de
procesamiento (DSP)
1.17
Ambiente de programación
Pasos para crear un proyecto nuevo
Los pasos para crear un proyecto nuevo son los siguientes:
1 El proceso inicia seleccionando la creación del proyecto através del menú principal (File-> New -> Project). Esto
despliega un menú (Project Wizard).
2 En el área "Directory" se selecciona el directorio base
donde residiran los programas fuente. En este caso
escribimos C:\tmp\
3 En el área Name escribimos proyecto1
Elect. de potenciacon DSP
J. Restrepo - J. Viola
Procesadores
Unidad de
procesamiento (DSP)
1.17
Ambiente de programación
Pasos para crear un proyecto nuevo
Los pasos para crear un proyecto nuevo son los siguientes:
1 El proceso inicia seleccionando la creación del proyecto através del menú principal (File-> New -> Project). Esto
despliega un menú (Project Wizard).
2 En el área "Directory" se selecciona el directorio base
donde residiran los programas fuente. En este caso
escribimos C:\tmp\
3 En el área Name escribimos proyecto1
4 En el siguiente menú, en Processor family se seleccionaSHARC
Elect. de potenciacon DSP
J. Restrepo - J. Viola
Procesadores
Unidad de
procesamiento (DSP)
1.17
Ambiente de programación
Pasos para crear un proyecto nuevo
Los pasos para crear un proyecto nuevo son los siguientes:
1 El proceso inicia seleccionando la creación del proyecto através del menú principal (File-> New -> Project). Esto
despliega un menú (Project Wizard).
2 En el área "Directory" se selecciona el directorio base
donde residiran los programas fuente. En este caso
escribimos C:\tmp\
3 En el área Name escribimos proyecto1
4 En el siguiente menú, en Processor family se seleccionaSHARC
5 En Processor types seleccionamos ADSP-21369 ...
Elect. de potenciacon DSP
J. Restrepo - J. Viola
Procesadores
Unidad de
procesamiento (DSP)
1.17
Ambiente de programación
Pasos para crear un proyecto nuevo
Los pasos para crear un proyecto nuevo son los siguientes:
1 El proceso inicia seleccionando la creación del proyecto através del menú principal (File-> New -> Project). Esto
despliega un menú (Project Wizard).
2 En el área "Directory" se selecciona el directorio base
donde residiran los programas fuente. En este caso
escribimos C:\tmp\
3 En el área Name escribimos proyecto1
4 En el siguiente menú, en Processor family se seleccionaSHARC
5 En Processor types seleccionamos ADSP-21369 ...6 En la siguiente pantalla, Application settings,
seleccionamos,
Add template source code to the application
Select the desired source language for the template code: C
Select the project output type for your application:
Executable (.dxe)