Teoria dsPIC

3
Las Memorias DSP Utilizan una arquitectura Harvard, mejorada la CPU soporta un potente repertorio de instrucciones, la mayoría de 24 bits de longitud y algunas que realizan operaciones específicas DSP. El direccionamiento de la memoria de programa corre a cargo del Contador de Programa que consta de 23 bits, valiendo siempre cero el de menos peso e ignorándose el de más peso, con lo que se puede direccionar un espacio máximo de 4 millones de palabras de instrucciones de 24 bits. Funciones concretas de los registros existentes en el banco Registros Descripción W0 Registros de trabajo por defecto (WREG) W0-W3 Registros usados para contener resultados de las operaciones DIV y MUL. W4-W7 Registros utilizados para guardar operandos de las instrucciones MAC. W8-W9 Registro usados para direccionar operandos de la instrucción MAC en el espacio X. W10-W11 Registro usados para direccionar operandos de la instrucción MAC en el espacio Y. W12 Offset de las instrucciones MAC. W13 Registro de POST-ESCRITURA del Acumulador. W14 Marco de la pila. W15 Puntero de la pila. Por defecto, la dirección de la cima de la pila será la 0x0800. Las Instrucciones del DSP DSP tiene 19 instrucciones de repertorio. Las entradas y salidas del motor DSP son de 16 bits, pero internamente opera con valores de 40 bits. Tanto para la familia dsPIC30F como para la dsPIC33F, hay un total de 19 instrucciones DSP y todas ellas ocupan una palabra de la memoria de programa y todas tardan en ejecutarse un ciclo de instrucción.

description

Análisis de la FFT los factores de giro.

Transcript of Teoria dsPIC

  • Las Memorias DSP

    Utilizan una arquitectura Harvard, mejorada la CPU soporta un potente

    repertorio de instrucciones, la mayora de 24 bits de longitud y algunas

    que realizan operaciones especficas DSP. El direccionamiento de la

    memoria de programa corre a cargo del Contador de Programa que

    consta de 23 bits, valiendo siempre cero el de menos peso e

    ignorndose el de ms peso, con lo que se puede direccionar un

    espacio mximo de 4 millones de palabras de instrucciones de 24 bits.

    Funciones concretas de los registros existentes en el banco

    Registros Descripcin

    W0 Registros de trabajo por defecto (WREG)

    W0-W3 Registros usados para contener resultados de las operaciones DIV y MUL.

    W4-W7 Registros utilizados para guardar operandos de las instrucciones MAC.

    W8-W9 Registro usados para direccionar operandos de la instruccin MAC en el espacio X.

    W10-W11 Registro usados para direccionar operandos de la instruccin MAC en el espacio Y.

    W12 Offset de las instrucciones MAC.

    W13 Registro de POST-ESCRITURA del Acumulador.

    W14 Marco de la pila.

    W15 Puntero de la pila. Por defecto, la direccin de la cima de la pila ser la 0x0800.

    Las Instrucciones del DSP

    DSP tiene 19 instrucciones de repertorio.

    Las entradas y salidas del motor DSP son de 16 bits, pero internamente opera con

    valores de 40 bits.

    Tanto para la familia dsPIC30F como para la dsPIC33F, hay un total de 19

    instrucciones DSP y todas ellas ocupan una palabra de la memoria de programa y

    todas tardan en ejecutarse un ciclo de instruccin.

  • La siguiente es una tabla con el resumen de las principales caractersticas de las

    19 instrucciones DSP.

    NEMNICO OPERANDOS DESCRIPCION RESUMIDA

    ADD Acc Suma Los Acumuladores

    ADD Ws,#SLIT4,Acc Suma Al Acumulador Un Valor Que Puede Ser Desplazado

    CLR Acc,[Wx],WXD,[Wy],Wyd,AWB Borra Un Acumulador Con Opcin De Prebsqueda De Operandos

    ED Wm x Wm, Acc, Wx,Wy,Wxd Distancia Eucldea, Sin Acumulacin

    EDAC Wm x Wm, Acc, Wx, Wy, WXD Distancia Eucldea, Con Acumulacin

    LAC Ws,#SLIT4,Acc Carga En El Acumulador El Operando Fuente Que Puede Desplazarse

    MAC Wm x Wn, Acc, [Wx], Wxd, [Wy], Wyd,AWB

    Multiplica Y Acumula

    MAC Wm x Wm, Acc, [Wx], Wxd, [Wy], Wyd,AWB

    Eleva Al Cuadrado Y Acumula

    MOVSAC Acc,[Wx],Wxd, [Wy],Wyd,AWB Prebsqueda De Operandos Y Almacena El Acumulador

    MPY Wm x Wn, Acc, [Wx], Wxd, [Wy], Wyd, AWB

    Multiplica Registros Con Opcion De Prebusqueda De Operandos

    MPY Wm x Wm, Acc, [Wx], Wxd, [Wy], Wyd, AWB

    Eleva Al Cuadrado Un Registro Con Opcion De Prebusqueda De Operandos

    MPY.N Wm x Wn, Acc, [Wx], Wxd, [Wy], Wyd

    Multiplica Un Registro Por Otro Negado Y Tiene Opcin De Prebsqueda

    MSC Wm x Wn, Acc, [Wx], Wxd, [Wy], Wyd, AWB

    Multiplica Dos Registros Y El Resultado Lo Resta Del Acumulador

    NEG Acc Halla El Complemento A 2 Del Acumulador

    SAC Acc,#SLIT4,Wdo Almacena Un Acumulador Que Puede Ser Desplazado Previamente

    SAC.R Acc,#SLIT4,Wdo Almacena Un Acumulador Redondeado Que Puede Ser Desplazado Previamente

    SFTAC Acc,#SLIT6 Desplazamiento Aritmtico Del Acumulador

    SFTAC Acc,Wn Desplazamiento Aritmtrico Del Acumulador

    SUB Acc Resta Los Dos Acumuladores

  • Multiplicador

    El multiplicador rpido de 17 x 17 bits es compartido por las instrucciones MCU y

    las DSP, siendo posible realizar multiplicaciones con signo y sin signo y generar

    resultados con nmeros enteros de 32 bits y con fraccionales tipo 1.31 (Q.31).

    El bit IF del registro CORCON establece si la operacin del multiplicador ser de

    tipo entero o fraccional en las instrucciones DSP: MAC, MSC, MPY, MPY.N, ED y

    EDAC.

    Sin embargo, el bit IF no interviene en las instrucciones MCU que usan el

    multiplicador (MUL, MUL.SS, MUL.UU, MUL.SU y MUL.US), las cuales siempres

    se realizan en modo entero.

    Tabla con los rangos en modo entero y fraccional de nmeros de 16, 32 y 40

    bits.

    Tamao Rango Modo Entero

    (-2N-1 a 2N-1-1)

    Rango Modo Fraccional (-2N-1 a 2N-1-1)

    RESOLUCION MODO

    FRACCIONAL

    16 -32.768 HASTA 32.767 -1.0 HASTA (1-2-15)

    FORMATO Q.15 3.052 x 10-5

    32 -2.147.483.648 HASTA 2.147.483.647

    -1.0 HASTA (1-2-31) FORMATO Q.31

    4.657 x 10-10

    40 -549.755.813.888 HASTA 549.755.813.887

    -256.0 HASTA (256-2-31) FORMATO Q.31 CON 8

    bits de guarda

    4.657 x 10-10