es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

¿Por qué la memoria de acceso aleatorio estática (SRAM) no requiere un controlador de memoria?

He estado estudiando los bootloader, y hay una explicación en la mayoría de las fuentes de que el código ROM está en la mayoría de los chips que indican al chip a dónde ir después de encenderse, y luego el código ROM carga un pequeño fragmento de código en la SRAM.

Mi pregunta es: ¿por qué la DRAM requiere un controlador para funcionar, pero la SRAM no? ¿Quién controla la SRAM o cómo se controla?
Además, ¿qué sucede después de que el sistema ha terminado con la SRAM y las cosas se ejecutan en la DRAM?

Todavía no sé si tiene sentido o no, pero sería mejor si pudieras responder desde la perspectiva de u-boot y Linux.

Tags:  , , ,

Answer

  1. Avatar for davy.ai

    Q: Mi pregunta es por qué la DRAM requiere un controlador para funcionar, pero ¿por qué la SRAM no lo requiere? ¿Quién controla la SRAM? ¿O cómo se controla?

    La SRAM (Memoria de Acceso Aleatorio Estática) es diferente de la DRAM (Memoria de Acceso Aleatorio Dinámica) en el sentido de que no requiere un circuito de refresco, lo que significa que no necesita ser refrescada constantemente para mantener los datos almacenados en ella. La SRAM está compuesta por biestables, que almacenan datos y pueden mantener su estado siempre y cuando se mantenga el suministro de energía. Por lo tanto, no requiere un controlador para mantener los datos y se puede acceder a ella a una velocidad más rápida en comparación con la DRAM.

    La SRAM en un sistema generalmente se utiliza para almacenar información crítica como el cargador de arranque, U-boot y otro código del sistema que necesita ser accedido rápidamente. El código de inicio en la ROM carga un fragmento pequeño de código en la SRAM, que luego ejecuta el código de inicialización, incluida la inicialización del controlador DDR, la configuración de las variables de entorno y carga el cargador de arranque, como U-boot.

    Q: ¿Qué sucede después de que el sistema haya terminado con la SRAM y se estén ejecutando las cosas desde la DRAM?

    Una vez que el sistema ha terminado de cargar el cargador de arranque y el código de inicialización en la SRAM, se configura el controlador DDR y el sistema se inicia desde la DRAM. La DRAM actúa como la memoria principal del sistema y almacena el código y los datos necesarios para ejecutar el sistema. Después del inicio, el cargador de arranque, como U-boot, en la SRAM transfiere el control al kernel de Linux, que se hace cargo del sistema y continúa ejecutándose desde la DRAM.

    En resumen, la SRAM se utiliza para almacenar y ejecutar el código inicial necesario para que el sistema se inicie, mientras que la DRAM se utiliza como memoria principal para que el sistema ejecute el kernel de Linux y otras aplicaciones.

Comments are closed.