You are on page 1of 3

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

W0
W0-W3

Descripcin
Registros de trabajo por defecto (WREG)
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
W13
W14
W15

Offset de las instrucciones MAC.


Registro de POST-ESCRITURA del Acumulador.
Marco de la pila.
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
ADD
ADD

OPERANDOS

CLR

Acc,[Wx],WXD,[Wy],Wyd,AWB

ED
EDAC
LAC

Wm x Wm, Acc, Wx,Wy,Wxd


Wm x Wm, Acc, Wx, Wy, WXD
Ws,#SLIT4,Acc

MAC

Wm x Wn, Acc, [Wx], Wxd, [Wy],


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

MAC
MOVSAC

Acc
Ws,#SLIT4,Acc

NEG
SAC

Wm x Wn, Acc, [Wx], Wxd, [Wy],


Wyd, AWB
Wm x Wm, Acc, [Wx], Wxd, [Wy],
Wyd, AWB
Wm x Wn, Acc, [Wx], Wxd, [Wy],
Wyd
Wm x Wn, Acc, [Wx], Wxd, [Wy],
Wyd, AWB
Acc
Acc,#SLIT4,Wdo

SAC.R

Acc,#SLIT4,Wdo

SFTAC
SFTAC
SUB

Acc,#SLIT6
Acc,Wn
Acc

MPY
MPY
MPY.N
MSC

DESCRIPCION RESUMIDA
Suma Los Acumuladores
Suma Al Acumulador Un Valor Que Puede Ser
Desplazado
Borra Un Acumulador Con Opcin De
Prebsqueda De Operandos
Distancia Eucldea, Sin Acumulacin
Distancia Eucldea, Con Acumulacin
Carga En El Acumulador El Operando Fuente
Que Puede Desplazarse
Multiplica Y Acumula
Eleva Al Cuadrado Y Acumula
Prebsqueda De Operandos Y Almacena El
Acumulador
Multiplica Registros Con Opcion De
Prebusqueda De Operandos
Eleva Al Cuadrado Un Registro Con Opcion De
Prebusqueda De Operandos
Multiplica Un Registro Por Otro Negado Y Tiene
Opcin De Prebsqueda
Multiplica Dos Registros Y El Resultado Lo
Resta Del Acumulador
Halla El Complemento A 2 Del Acumulador
Almacena Un Acumulador Que Puede Ser
Desplazado Previamente
Almacena Un Acumulador Redondeado Que
Puede Ser Desplazado Previamente
Desplazamiento Aritmtico Del Acumulador
Desplazamiento Aritmtrico Del Acumulador
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

3.052 x 10-5

32

-2.147.483.648 HASTA
2.147.483.647
-549.755.813.888
HASTA 549.755.813.887

-1.0 HASTA (1-2-15)


FORMATO Q.15
-1.0 HASTA (1-2-31)
FORMATO Q.31
-256.0 HASTA (256-2-31)
FORMATO Q.31 CON 8
bits de guarda

40

4.657 x 10-10
4.657 x 10-10

You might also like