¿Espacio de direcciones grande y tamaño físico pequeño?

1

La hoja de datos de Intel D1000 MCU dice:

  

La MCU tiene 4 kB de flash de datos y 32 kB de código de flash. Código de flash   ocupa el rango de direcciones 0x2000 0000 a 0x3FFF FFFF y tiene aliased   en todo. Es accesible desde código de 128 bits y datos de 32 bits.   autobuses El flash de datos ocupa el rango de direcciones 0x4000 0000 a 0x5FFF   FFFF y tiene aliased en todo.

El tamaño del espacio de direcciones es:

  

0x2000 0000 ~ 0x3FFF FFFF = 512M Bytes

     

0x4000 0000 ~ 0x5FFF FFFF = 512M Bytes

  • Pero la hoja de datos dice que la MCU tiene solo 4kB de datos flash y 32kB código flash. ¿Por qué el espacio de direcciones es tan grande y el tamaño físico es tan pequeño? ¿Significa que solo se pueden usar los primeros 4kB o 32kB del espacio de direcciones grande?

  • ¿Y qué significa aliased ?

pregunta smwikipedia

2 respuestas

4

Otra palabra para "alias" es "duplicada". Se puede acceder a la misma ubicación de la memoria física en múltiples ubicaciones, todas separadas por 4K / 32K.

Básicamente, solo decodifican los 12 o 15 bits de dirección inferiores (y algunos de los mejores para la selección de chip).

En cuanto a por qué? Los registros de direcciones son de 32 bits, pero solo han proporcionado pequeños chips de almacenamiento.

    
respondido por el John Burger
0

No estoy familiarizado con este MCU, pero tal vez esté reservado para la asignación de memoria externa. También en algunas arquitecturas como ARM (por lo menos en la serie AVR como sé) hay una dirección de memoria única para todos los recuerdos y periféricos. .Entonces esta memoria única se usa para todos los periféricos, no solo para las memorias. A continuación se muestra la asignación de memoria de LPC81x cortex m0 de su hoja de datos:

    
respondido por el Mahmoud Hosseinipour

Lea otras preguntas en las etiquetas