Вы находитесь на странице: 1из 11

ORGANIZACIN DE LA MEMORIA

DE DATOS
ING. HCTOR ALEJANDRO BELTRN TORRES
AGENDA
INTRODUCCIN
MAPA DE MEMORIA DE DATOS
ACCESO A BANCO
CMO FUNCIONA EL ACCESO A BANCO?
ACCESO DIRECTO - BSR (BANK SELECT REGISTER)
MAPA DE ACCESO DIRECTO
DIRECCIONAMIENTO INDIRECTO
INTRODUCCIN
LA MEMORIA DE DATOS ESTA IMPLEMENTADA COMO UNA RAM ESTTICA DONDE
CADA CELDA DE MEMORIA CUENTA CON UNA DIRECCIN DE 12 BITS.
LA MEMORIA DE DATOS EST DIVIDIDA EN 16 BANCOS DE 256 BYTES (0 A 255).
PARA SELECCIONAR EL BANCO QUE SER ACCEDIDO SE UTILIZA EL BSR (BANK SELECT
REGISTER).
LA MEMORIA DE DATOS CONTIENE REGISTROS DE FUNCIN ESPECFICA (SFRS) Y
REGISTROS DE PROPSITO GENERAL (GPRS).
LOS SFRS SON USADOS PARA CONTROLAR Y VERIFICAR EL ESTADO DEL MCU AS
COMO DEL FUNCIONAMIENTO DE LOS PERIFRICOS.
INTRODUCCIN
LOS SFRS INICIAN EN LA LTIMA POSICIN DEL BANCO 15 HACIA ABAJO (4095
HASTA 3968).
LOS GPRS SON USADOS PARA ALMACENAR DATOS DE LA APLICACIN.
LOS GPRS INICIAN EN LA PRIMERA POSICIN DEL BANCO 0 HACIA ARRIBA (0 HASTA
1535).
LA MEMORIA ENTERA PUEDE SER ACCEDIDA DIRECTAMENTE A TRAVS DEL BSR (BANK
SELECT REGISTER) E INDIRECTAMENTE UTILIZANDO FSRN (FILE SELECT REGISTER).
EL ACCESO A BANCO SE UTILIZA PARA ACCEDER FCILMENTE TANTO A GPRS COMO
A SFRS.
LA INSTRUCCIN MOVFF ES DE 2 PALABRAS (32 BITS) Y 2 CICLOS DE MQUINA QUE
MUEVE EL VALOR DE UN REGISTRO A OTRO.
MAPA DE MEMORIA
DE DATOS
ACCESO A BANCO
EL ACCESO A BANCO ES UNA MEJORA ARQUITECTNICA TIL PARA LA OPTIMIZACIN DE
CDIGO.
ESTA REGIN DE MEMORIA DE DATOS PUEDE SER USADA PARA:
VALORES DE CLCULO INTERMEDIO.
VARIABLES LOCALES DE SUBRUTINAS.
RPIDO GUARDADO/CAMBIO DE VARIABLES.
VARIABLES COMUNES.
RPIDA EVALUACIN O CONTROL DE SFRS (SIN BANQUEAR).

EL ACCESO A BANCO ES COMPRENDIDO POR LOS 128 BYTES DE MAYOR PESO EN EL BANCO 15 Y
LOS 128 BYTES DE MENOR PESO EN EL BANCO 0, ESTAS 2 SECCIONES SE DENOMINAN ACCESO A
RAM ALTA Y ACCESO A RAM BAJA RESPECTIVAMENTE.
CMO FUNCIONA EL ACCESO A BANCO?
EL ACCESO A BANCO SE BASA EN TOMAR LOS
128 BITS DE MENOR PESO DEL BANCO 0 Y LOS
128 BITS DE MAYOR DEL BANCO 15 Y LOS UNE
FORMANDO UN BANCO COMPLETO DE 255
BYTES (ACCESO A BANCO).
CUANDO A=0 (OPERANDO DE LAS
INSTRUCCIONES) EL BSR (BANK SELECT
REGISTER) ES IGNORADO Y EL COMPILADOR SE
DIRIGE DIRECTAMENTE A ESTE ACCESO A
BANCO DE LO CONTRARIO, SI A=1 SE UTILIZA
EL BSR PARA PARA SELECCIONAR EL BANCO
DONDE LA INSTRUCCIN SE VA A EJECUTAR.
ACCESO DIRECTO - BSR (BANK SELECT
REGISTER)
EL REGISTRO BSR SE UTILIZA PARA HACER ACCESO DIRECTO A LA MEMORIA RAM, CON L SE
SELECCIONA CUALQUIERA DE LOS 16 BANCOS EN LOS QUE ESTA DIVIDIDA.
LOS 4 BITS DE MENOR PESO (BSR<3:0>) CONTIENEN LOS 4 BITS MS ALTOS DE LOS 12 BITS
DE DIRECCIN DE LA RAM, LOS BITS BSR<7:4> NO ESTN IMPLEMENTADOS Y UNA LECTURA
DAR COMO RESULTADO UN 0.
LA INSTRUCCIN DADA POR EL FABRICANTE PARA ESCRIBIR ESTE REGISTRO ES MOVLB, SI EL
BANCO SELECCIONADO NO EST IMPLEMENTADO FSICAMENTE CUALQUIER LECTURA DAR
COMO RESULTADO UN 0 Y LA ESCRITURA SER IGNORADA.
LA INSTRUCCIN MOVFF IGNORA EL DIRECCIONAMIENTO DEL BSR PUESTO QUE LOS 12 BITS
DE DIRECCIN DE CADA REGISTRO ESTN EMBEBIDOS EN LA INSTRUCCIN.
ACCESO DIRECTO
DIRECCIONAMIENTO INDIRECTO
ES UN TIPO DE ACCESO A LA MEMORIA DE DATOS RAM DONDE SE UTILIZAN LOS REGISTROS DE
FUNCIN ESPECFICA FSRN (FILE SELECT REGISTER) COMO PUNTEROS A LA POSICIN DE MEMORIA
QUE SER ESCRITA O LEDA.
ESTE DIRECCIONAMIENTO ES TIL PARA TABLAS DE DATOS Y PILAS POR SOFTWARE.
EXISTEN 3 PUNTEROS DISPONIBLES QUE PUEDEN DIRECCIONAR LOS 4096 BYTES DE LA MEMORIA
RAM.
ESTOS PUNTEROS TIENEN UN ANCHO DE PALABRA DE 12 BITS LOS CUALES SON GUARDADOS EN 2
REGISTROS DE 8 BITS DE LA SIGUIENTE MANERA:
FSR0: COMPUESTO DE FSR0H:FSR0L
FSR1: COMPUESTO DE FSR1H:FSR1L
FSR2: COMPUESTO DE FSR2H:FSR2L
DIRECCIONAMIENTO INDIRECTO
ADICIONAL A ESTOS PUNTEROS EXISTEN 5 REGISTROS ASOCIADOS A CADA PUNTERO, ESTOS
REGISTROS NO ESTN IMPLEMENTADOS FSICAMENTE Y UNA LECTURA O ESCRITURA DE ESTOS
EFECTUARA UNA LECTURA O ESCRITURA EN LA POSICIN DE LA RAM A LA CUAL EST APUNTANDO
EL PUNTERO ASOCIADO.
LA DIFERENCIA ENTRE LOS REGISTROS ASOCIADOS DE CADA PUNTERO RADICA EN LA ACCIN QUE
EJECUTAN SOBRE EL PUNTERO, ESTOS REGISTROS ASOCIADOS SON:
NO HACE NADA AL PUNTERO DESPUS DE UN ACCESO INDIRECTO INDFN
DECREMENTA EL PUNTERO DESPUS DE UN ACCESO INDIRECTO POSTDECN
INCREMENTA EL PUNTERO DESPUS DE UN ACCESO INDIRECTO POSTINCN
INCREMENTA EL PUNTERO ANTES DE UN ACCESO INDIRECTO PREINCN
REALIZA UN ACCESO INDIRECTO A LA POSICIN DE MEMORIA APUNTADA POR EL PUNTERO MS EL
VALOR QUE HAYA EN EL WREG, NO MODIFICA EL VALOR DEL PUNTERO NI DEL WREG DESPUS DE UN
ACCESO INDIRECTO - PLUSWN

Вам также может понравиться