Microprogramacion
LECCIÓN 1 INTRODUCCIÓN AL CONTROL MICROPROGRAMADO
Departamento de Informática. Curso 2005-2006
1
TÉRMINOS DE USO FRECUENTE
Palabra de control : Es una palabra binaria cuyos bits indican los valores de las señales de control de la máquina. También recibe el nombre de microinstrucción Microprograma: Recibe este nombre la secuencia de palabras de control necesariaspara ejecutar una instrucción. Memoria de control: Es una memoria especial que almacena los microprogramas.
Departamento de Informática. Curso 2005-2006 2
MODELO DE WILKES
Departamento de Informática. Curso 2005-2006
3
CODIFICACIÓN DE LAS MICROINSTRUCCIONES
Codificación 1 bit- 1 señal de control: Es la que hemos estudiado en el apartado anterior. Codificación por campos: Consisteen agrupar las señales de control que no se puedan activar simultáneamente, cada uno de estos grupos se codifican de modo que la palabra de control consta de varios campos, en cada uno de los cuales se codifican señales del mismo tipo.. Codificación tipo instrucción: Consiste en que el formato de microinstrucción sea similar al formato de instrucción en lenguaje máquina con un código de operacióny dirección del operando
Departamento de Informática. Curso 2005-2006 4
SECUENCIAMIENTO
Secuenciamiento explícito: Es el usado por el modelo de Wilkes, cada microinstrucción contiene un campo con la dirección de la siguiente microinstrucción. Secuenciamiento implícito: A semejanza del comportamiento de un programa ordinario, lo normal es que la microinstrucción siguiente esté situadafísicamente a continuación de la que se está ejecutando. en este modelo se necesita la presencia de un contador de microprograma que se vaya incrementando con la ejecución de cada microinstrucción.
Departamento de Informática. Curso 2005-2006 5
OBTENCIÓN DE LA DIRECCIÓN INICIAL
Departamento de Informática. Curso 2005-2006
6
OBTENCIÓN DE LA DIRECCIÓN INICIAL
Tabla de saltos: Otrométodo a utilizar es generar un microsalto en el microprograma de forma que sumando el código de operación a una dirección dada se obtiene la dirección de los distintos microprogramas. Memoria de traslación: Un método adicional consiste en el uso de una memoria ROM que tomando como entrada el código de operación nos dé como salida la dirección de cada microprograma.
Departamento de Informática. Curso2005-2006 7
HARDWARE DE LA UNIDAD DE CONTROL MICROPROGRAMADA
Memoria de control : contiene los microprogramas Contador de microprograma: Es el registro de dirección de memoria correspondiente a la memoria de control Registro de Microinstrucción: contiene la microinstrucción que se está ejecutando, equivale al registro buffer de memoria. Circuito para la toma de decisiones: es un multiplexorque en función del código que suministra el campo de bifurcaciones de la microinstrucción en curso y de las condiciones externas decide cuál es la entrada siguiente al contador de microprograma
Departamento de Informática. Curso 2005-2006 8
DISEÑO DE UN MULTIPLICADOR MICROPROGRAMADO
Departamento de Informática. Curso 2005-2006
9
PROGRAMA DE CONTROL
0 1 2 3 4 5 6 7 8 9 10 11 12A← 0 , B← Inbus , L← 4 Q[4:1] ← Inbus , Q[0]← 0 Bucle: Si Q[1:0] = 01 saltar a Suma; Si Q[1:0] = 10 saltar a Resta; Saltar a Desplaza ; Suma: A← A+ B ; Saltar a Desplaza ; Resta: A← A- B ; Desplaza: ASR(A&Q) , L← L- 1 ; Si L0 saltar a Bucle; Outbus ← A ; Ourbus ← Q[4:1] ; Alto: Saltar a Alto;
Departamento de Informática. Curso 2005-2006 10
SEÑALES DE CONTROL
C0 C1 C2 C3 C4 C5 C6 C7 C8 C9= = = = = = = = = =
A← 0 ; B← Inbus ; L← 4 ; Q[4:1]← Inbus ; F=L+R ; A← F ; ASR(A&Q) ; L← L -1 ; Outbus← A ; Outbus← Q[4:1] ;
Departamento de Informática. Curso 2005-2006 11
SALTOS EN EL MICROPROGRAMA
La memoria de control tiene 13 palabras, luego necesita un campo de dirección de salto de 4 bits. Los saltos presentan 5 casos posibles:
000 001 010 011 100 no saltar saltar si...
Regístrate para leer el documento completo.