Professional Documents
Culture Documents
Arquitectura Harvard
Permite palabras de diferente tamao: Programa 24 bits Datos 16 bits Mejora la eficiencia del conjunto de instrucciones Permite procesamiento mas rpido, el procesador puede buscar anticipadamente la prxima instruccin, mientras ejecuta la instruccin actual que accesa datos en la RAM.
Memoria de programa
PC de 24 bits, para direccionar hasta 4M x 24 palabras El espacio de memoria de programa contiene: Localidad de reset Tablas de vectores de interrupcin Memoria de programa de usuario EEPROM de datos Memoria de configuracin.
M.C. Ricardo Alvarez
Memoria de datos
Espacio de datos de 64Kbytes, y es tratado como un espacio lineal de datos para muchas instrucciones. Las instrucciones de multiplicacin de DSP dividen la memoria en dos bloques X, Y. Estas instrucciones DSP soportan lecturas duales de operandos. Cuando no se usan las instrucciones de DSP, la memoria es tratada como un solo bloque de memoria X
M.C. Ricardo Alvarez
Memoria de datos
Primeros 2KB SFRs Despus de los SFR hasta 8 KB RAM de datos, se puede dividir en los bloques X, Y para instrucciones DSP Los primeros 8 KB de datos (2k SFR+ 6k RAM), son conocidos como RAM cercana, accesible
M.C. Ricardo Alvarez
Modos de direccionamiento
Inherente (sin operandos) Relativo Literal Memoria directa Registro directo Registro indirecto Los seis modos de direccionamiento son soportados por cada instruccin.
Los registros de trabajo son usados ampliamente como apuntadores para los modos de direccionamiento indirecto
M.C. Ricardo Alvarez
El mapeo de memoria de programa, como si fuera memoria de datos, permite que cualquier instruccin tenga acceso a la memoria de programa como si fuera memoria de datos. Esta caracterstica es usada para tablas de bsqueda, especialmente para tablas de coeficientes de filtros, para algoritmos DSP.
M.C. Ricardo Alvarez
Divide Support
Mquina DSP
Multiplicador de punto fijo de 17 x17 bits de alta velocidad. ALU de 40 bits. Dos acumuladores saturados de 40 bits Corredor de barril bidireccional de 40 bits (capaz de recorrer hasta 15 bits a la derecha o 16 bits a la izquierda en un solo ciclo)
M.C. Ricardo Alvarez
Interrupciones
El dsPIC30F tiene un sistema priorizado de interrupciones. Cada fuente de interrupcin tiene su propio vector, y se le puede asignar dinmicamente uno de siete niveles de prioridad. La tabla de vectores de interrupciones (IVT) reside en la parte baja de la memoria de programa.
M.C. Ricardo Alvarez
Perifricos
Sensor Family
18-28 pines, ideal para soportar aplicaciones incrustadas de bajo costo. . 12-bit, 100-ksps A/D Converter . Timers, Input Capture, Output Compare . UART, SPI, I2C Serial Interfaces
Herramientas de desarrollo
El proceso de desarrollo se puede dividir en tres partes principalmente: a. b. c. Escribir el cdigo Corregir el cdigo Programar el dispositivo
Es una herramienta de depuracin efectiva en costo, que permite que se pueda probar el cdigo en la tarjeta de circuito. M.C. Ricardo Alvarez
MPLAB ICE 4000 In-Circuit Emulator, es una herramienta de depuracin completa, capaz de emular todos los miembros de la familia 30F a velocidad completa.
M.C. Ricardo Alvarez
Herramientas de programacin.
MPLAB PM3, puede programar todos los tipos de encapsulado y tiene mas memoria que el ICD2, ideal para programar en produccin. MPLAB ICD2, adems de ser un programador, es un depurador, ideal para probar y depurar cdigo.
M.C. Ricardo Alvarez
Formato general para instrucciones y directivas: [label:] instruction[operands] [; comment] [label:] directive[arguments] [; comment]
Ejemplo 1
/*Programa de ejemplo para realizar el encendido/apagado de dos leds conectados a RD0 y RD1. Autor: Ricardo Alvarez */ .title .equ .text .equ
M.C. Ricardo Alvarez
.global __reset
__reset:goto main:
main .org mov mov mov nop bclr bclr nop TRISD,#00 TRISD,#01 ;RD0 salida ;RD1 salida 100 #__SP_init,W15 #__SPLIM_init,W0 W0,SPLIM ;inicializa el SP
;************************************************
rtdo: resta: