cómo se inicia la CPU mediante la ejecución almacenada en el chip de memoria flash de las placas base [cerrado]

0

Había leído que al inicio, el registro del contador del programa de la CPU se llena con F000.

Pensé que:

  • Los registros de PC contienen la siguiente dirección de instrucciones.
  • Esta dirección se envía al bus de direcciones y el valor se devuelve al bus de datos

¿El bus de direcciones solo se ocupa de la RAM? Obviamente el bios no está almacenado en ram.

Entonces, ¿CÓMO F000 dirige la ROM para iniciar la ejecución del BIOS?

    
pregunta user2192934

1 respuesta

1

Hay una respuesta bastante detallada en stackoverflow aquí .

La conclusión es que el hardware tiene que decodificar el espacio de direcciones de manera que la ROM del BIOS aparezca en la dirección apropiada.

Aquí, por ejemplo, está el mapa de memoria original de IBM PC de un libro en línea . Las cosas han cambiado desde entonces, pero esto debería darle una idea. La lógica de decodificación real es el equivalente de gates, probablemente implementado de alguna otra forma (solía ser PLD, pero probablemente un trabajo secundario de chips de soporte más complejos ahora).

    
respondido por el Spehro Pefhany

Lea otras preguntas en las etiquetas