“Conocimiento Programación>C /C + + Programming

¿Qué es un registro mapeado de memoria?

2015/8/17
Un registro de memoria mapeada (MMR) es un registro de hardware dentro de un sistema (como un microcontrolador o sistema integrado) al que se accede a través del espacio de direcciones de memoria del sistema. En lugar de tener una instrucción dedicada de entrada/salida (E/S) configurada para interactuar con estos registros, se tratan como si estuvieran ubicaciones dentro de la RAM del sistema u otra memoria.

Aquí hay un desglose de lo que eso significa:

* Registro de hardware: Un registro es una pequeña ubicación de almacenamiento dentro de un componente de hardware. Estos registros a menudo controlan el comportamiento de los periféricos (como temporizadores, UART, convertidores ADC, etc.) o mantienen información de estado sobre esos periféricos.

* Espacio de direcciones de memoria: Esta es la gama de direcciones que la CPU del sistema puede acceder a datos de lectura y escritura. Esto incluye RAM, ROM y otros dispositivos de memoria.

* Mapeada de memoria: El aspecto crucial es que las direcciones de estos registros se asignan a este mismo espacio de direcciones de memoria. Por lo tanto, la CPU puede leer o escribir en estos registros utilizando instrucciones de acceso de memoria estándar (como `Load` o 'Store`). Esto contrasta con los sistemas de E/S mapado, donde se utilizan instrucciones de E/S dedicadas.

Cómo funciona:

Cuando la CPU quiere interactuar con un periférico, simplemente usa una dirección de memoria correspondiente al registro mapeado de memoria de ese periférico. Escribir a esa dirección modifica el valor del registro y la lectura recupera el valor actual del registro. El hardware gestiona la interacción real con el periférico en función del acceso a la memoria.

Ventajas de los registros mapeados de memoria:

* Simplicidad: El uso de instrucciones de memoria estándar simplifica la programación. No se necesitan instrucciones especiales de E/S.

* Flexibilidad: Permite una integración más fácil de periféricos y una gestión de memoria más flexible.

* Uniformidad: Proporciona un espacio de direcciones unificada para la memoria y los periféricos, lo que hace que sea más simple administrar los recursos.

Desventajas de los registros mapeados de memoria:

* Consumo de espacio de dirección: Los registros consumen una parte del espacio de direcciones de memoria limitada del sistema.

* potencial para conflictos: Se necesita una planificación cuidadosa para evitar conflictos de abordajes entre la memoria y los periféricos.

En esencia, los registros mapeados de memoria proporcionan una forma limpia y eficiente de interactuar con los periféricos de hardware utilizando un modelo de acceso de memoria consistente, simplificando el diseño y la programación de sistemas integrados.

C /C + + Programming
Cómo escribir una declaración de caso en C + +
Cómo reducir la longitud de una cadena en C
Cómo moldeada Char internacional
Cómo agregar un DLL en Visual C
Cómo instalar vcvarsall.bat
Cómo escribir una línea de switches Combinación de teclas
Cómo hacer Parcelas en C + +
Cómo escribir un programa en C para imprimir una serie de Sines
Conocimiento de la computadora © http://www.ordenador.online