0% encontró este documento útil (0 votos)
370 vistas17 páginas

Diseño de Unidad de Control Microprogramada

El documento describe los conceptos básicos de la microprogramación para el diseño de la unidad de control de un procesador. Explica que la microprogramación permite representar la lógica de control como un programa almacenado en una memoria de control. Cada instrucción de este programa (microinstrucción) especifica las señales de control necesarias y la siguiente microinstrucción a ejecutar. De esta forma, la secuencia de microinstrucciones (microprograma) controla la ejecución de las instrucciones de nivel ISA.

Cargado por

Richard Campos
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PPT, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
370 vistas17 páginas

Diseño de Unidad de Control Microprogramada

El documento describe los conceptos básicos de la microprogramación para el diseño de la unidad de control de un procesador. Explica que la microprogramación permite representar la lógica de control como un programa almacenado en una memoria de control. Cada instrucción de este programa (microinstrucción) especifica las señales de control necesarias y la siguiente microinstrucción a ejecutar. De esta forma, la secuencia de microinstrucciones (microprograma) controla la ejecución de las instrucciones de nivel ISA.

Cargado por

Richard Campos
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PPT, PDF, TXT o lee en línea desde Scribd

Diseño de la Unidad de Control Multiciclo:

Microprogramación
• Concepto e Inicio
• Unidad de control
• Conceptos básicos
– Microinstrucciones: Definición y Formato
– Microprograma
– Memoria de control
– Funcionamiento de la Microprogramación
• Ventajas y desventajas del control microprogramado.

Estructura de Computadores (EUI: 2º Tema 4: Diseño del procesador (parte II) 1


ITIS)
Microprogramación: Inicio
• El concepto de microprogramación fue introducido por Maurice Wilkes en 1951, es
un método sistemático para diseñar la unidad de control de cualquier sistema digital.
– Después de construir el primer computador de programada almacenado (EDSAC), Wilkes trató de
buscar una mejor forma de diseñar la Unidad de Control cuando se dio cuenta de que la
unidad central de proceso de un ordenador podría estar controlada por un pequeño programa
altamente especializado y escrito en memoria ROM. Este concepto simplificó enormemente el
desarrollo de los procesadores.
– La solución que encontró fue convertir la Unidad de Control en un computador en miniatura,
que tiene una tabla para especificar el control del camino de datos, y una segunda tabla para
determinar el flujo de control a nivel de microinstrucción
Unidad de control (UC)
TAREAS DE LA U.C. µPROGRAMADA

− Secuenciamiento de las µI

− Ejecución de las µI

Elementos de la U.C. µprogramada

Tema 4: Diseño del procesador (parte II)


Funcionamiento de la unidad de control
microprogramada
Funcionamiento:
1.- La instrucción entra en IR y tras decodificarse
carga en RDC la dirección de la 1ª µI.
2.- RDC apunta a la mem. de ctrl. que saca el dato a
RMC
3.- RMC contiene 3 campos:
− Señales de ctrl. al bus del sistema.
− Señales de ctrl. internas a CPU
− Próxima dirección de µI
4.- El secuenciador carga la próxima instrucción en
RDC y continúa la secuencia.
Opciones:
− RDC ← RDC+1
− Bifurcación: RDC ← RMC [dirección]
− Bif. a siguiente instrucción:
RDC ← Función (IR[cod. Oper.])

4
Microoperaciones

• ● Por cada microoperación, la UC debe generar un conjunto


predefinido de señales de control.
• ● Las señales de control pueden valer 1 (activada) o 0
(desactivada).
• ● Cada microoperación puede representarse como un patrón
diferente de 1s y 0s.
• ● Este patrón se llama palabra de control (control word).
• ● Las microinstrucciones se organizan en una memoria.

Estructura de Computadores (EUI: 2º Tema 4: Diseño del procesador (parte II) 5


ITIS)
Conceptos básicos: Microinstrucciones

• Microinstrucción
– Especifica todas las señales de control del camino de datos más la
posibilidad de decidir condicionalmente qué microinstrucción se debe
ejecutar a continuación
– Cada palabra de la memoria de control es una microinstrucción.
– Formato de las microinstrucciones
• Señales de control: Señales para el camino de datos
• Condiciones: Bits que se pueden usar para seleccionar la condición
que se desea utilizar para, en función de si es cierta o no, ejecutar la
siguiente microinstrucción o saltar a otra.
• Siguiente instrucción: Campo que indica la siguiente instrucción a
ejecutar

Señales de control Condiciones Siguiente instrucción

Estructura de Computadores (EUI: 2º Tema 4: Diseño del procesador (parte II) 6


ITIS)
Conceptos básicos:
Formato de las microinstrucciones
• Microinstruciones HORIZONTALES y VERTICALES
– Clasificación en base al grado de codificación de los campos de la
microinstrucciones
• Microinstrucción horizontal: Campos no codificados. Las señales de control se
obtienen directamente de los bits de la microinstrucción.
– Pocas microinstrucciones y anchas.
• Microinstrucción vertical: Campos codificados. Para obtener las señales de
control necesitamos un decodificador.
– Muchas microinstrucciones y cortas.
• Diseños intermedios: Algunos campos muy codificados y otros no codificados
para proporcionar las señales de control directamente.

Microinstrucción horizontal Microinstrucción vertical


Bits de Dirección siguiente Dirección
Bits de
Señales de control siguiente
condición microinstrucción Código condición
microinstrucción

..al camino de
datos.. Decodificador
Señales de control
Estructura de Computadores (EUI: 2º Tema 4: Diseño del procesador (parte II) 7
ITIS)
Conceptos básicos:
Microprograma
• Microprograma
– Secuencia coherente de microinstrucciones cuya ejecución permite interpretar una
instrucción del nivel ISA (macroinstrucción)
– Ejecutar una microinstrucción  Leer una microinstrucción de la memoria
– Una vez diseñado el camino de datos y la memoria de microinstrucciones, el control
se convierte básicamente en una tarea de programación.
– Cambiando los microprogramas podemos ejecutar otros repertorios de instrucciones
(implementación de distintas arquitecturas).

Memoria de control

<- búsqueda
 Salto a ejecución

Salto a rutina según instrucción <- ejecución



<- ADD routine
 salto a búsqueda

<- OR routine
 salto a búsqueda

 <- otras
 Salto a búsqueda

Estructura de Computadores (EUI: 2º Tema 4: Diseño del procesador (parte II) 8


ITIS)
Conceptos básicos:
Memoria de control

• Memoria de control
– En esta memoria se guardan los microprogramas o conjuntos de
microinstrucciones a partir de los que se obtienen las señales de control
necesarias para la ejecución del repertorio de instrucciones del nivel ISA

– Normalmente se utiliza una ROM para esta memoria de control. Sin


embargo, se han desarrollado máquinas en las que el microprograma se
carga en memoria RAM -> permiten al usuario alterar su contenido

Estructura de Computadores (EUI: 2º Tema 4: Diseño del procesador (parte II) 9


ITIS)
  Codificación de la información de control:

•Sin codificación

             
Estructura de Computadores (EUI: 2º Tema 4: Diseño del procesador (parte II) 10
ITIS)
Funcionamiento
La lógica de secuenciamiento dispara una operación de lectura en la memoria de
control. 

Estructura de Computadores (EUI: 2º Tema 4: Diseño del procesador (parte II) 11


ITIS)
La palabra cuya dirección se especifica en el Control Address Register (CAR) se almacena
en el Control Buffer Register (CBR).

Estructura de Computadores (EUI: 2º Tema 4: Diseño del procesador (parte II) 12


ITIS)
El contenido del CBR genera señales de control e información sobre la próxima dirección.

Estructura de Computadores (EUI: 2º Tema 4: Diseño del procesador (parte II) 13


ITIS)
A partir de la información sobre la próxima instrucción del CBR y flags de la ALU, la lógica
de control carga la próxima dirección en el CAR.

Cargar la instrucción consecutiva (+1 al CAR)


Carga el campo de dirección del CBR en el CAR, basándose en la condición de salto de la
microinstrucción.
Carga el CAR en función de del opcode del IR.

Estructura de Computadores (EUI: 2º Tema 4: Diseño del procesador (parte II) 14


ITIS)
Estructura de Computadores (EUI: 2º Tema 4: Diseño del procesador (parte II) 15
ITIS)
Ventajas y desventajas del control
microprogramado
• Como las señales de control son almacenadas en una memoria las
unidades de control microprogramadas:
+ Son sistemáticas con un formato bien definido
+ Pueden ser fácilmente modificables durante el proceso de diseño
- Requieren más componentes para su implementación
- Tienden a ser más lentas que las unidades de control cableadas debido a
que tienen que realizar operaciones de lectura de una memoria para obtener
las señales de control

• Emulación
+ Podemos modificar el microprograma para que la unidad de control
interprete otro lenguaje máquina distinto (el de la máquina a emular) sin
necesidad de realizar modificaciones en el hardware de la unidad de control
-> sólo cambiamos el microprograma!

Estructura de Computadores (EUI: 2º Tema 4: Diseño del procesador (parte II) 16


ITIS)
GLOSARIO

Estructura de Computadores (EUI: 2º Tema 4: Diseño del procesador (parte II) 17


ITIS)

También podría gustarte