Microprogramacion
Microprogramacion
Microprogramacion
Microprogramacin
Introduccin
Conceptos bsicos
Microinstrucciones: Definicin y Formato
Microprograma
Memoria de control
Funcionamiento de la Microprogramacin
Ventajas y desventajas del control microprogramado.
Microprogramacin aplicada a MIPS
Formato de las microinstrucciones
Seales de control de cada campo y valores asociados
Microprograma
Secuenciador del microprograma
Resumen
PC 0
0
M Ins tru ctio n Read
M
u A d dr e ss [2 5 2 1 ] r eg ister 1
u
x Read
A x
Ins tru ctio n Read da ta 1 Z e ro
1 M e m o ry
[2 0 1 6 ] r eg ister 2 1
ALU ALU
M e m D a ta 0 R e g is te rs A LU O u t
Ins tru ctio n M W rite Read r es ult
[1 5 0 ] r eg ister B
da ta 2 0
In stru ctio n u
W rite x
In stru c tio n [1 5 1 1]
W rite 4 1 M
da ta 1 u
re g is ter d a ta 2 x
In s tru ctio n 0 3
[1 5 0 ] M
u
x
M e m o ry 1
d a ta 16 32 ALU
S ig n S h ift
r eg is ter c o ntro l
ex ten d le ft 2
In stru ctio n [5 0 ]
M e m to R e g A L U S r cB A L U O p
Op[5 0]
ejecutar) es externa.
Se implementa con un contador y lgica Instruction register
opcode field
adicional dando lugar a un secuenciador Secuenciador
externo. externo
Microinstruccin
Especifica todas las seales de control del camino de datos ms la
posibilidad de decidir condicionalmente qu microinstruccin se debe
ejecutar a continuacin
Cada palabra de la memoria de control es una microinstruccin.
Formato de las microinstrucciones
Seales de control: Seales para el camino de datos
Condiciones: Bits que se pueden usar para seleccionar la condicin
que se desea utilizar para, en funcin de si es cierta o no, ejecutar la
siguiente microinstruccin o saltar a otra.
Siguiente instruccin: Campo que indica la siguiente instruccin a
ejecutar
..al camino de
datos.. Decodificador
Seales de control
Estructura de Computadores (EUI: 2 Tema 4: Diseo del procesador (parte II) 7
ITIS)
Conceptos bsicos:
Microprograma
Microprograma
Secuencia coherente de microinstrucciones cuya ejecucin permite interpretar una
instruccin del nivel ISA (macroinstruccin)
Ejecutar una microinstruccin Leer una microinstruccin de la memoria
Una vez diseado el camino de datos y la memoria de microinstrucciones, el control
se convierte bsicamente en una tarea de programacin.
Cambiando los microprogramas podemos ejecutar otros repertorios de instrucciones
(implementacin de distintas arquitecturas).
Memoria de control
<- bsqueda
Salto a ejecucin
Memoria de control
En esta memoria se guardan los microprogramas o conjuntos de
microinstrucciones a partir de los que se obtienen las seales de control
necesarias para la ejecucin del repertorio de instrucciones del nivel ISA
Emulacin
Podemos modificar el microprograma para que la unidad de control
interprete otro lenguaje mquina distinto (el de la mquina a emular) sin
necesidad de realizar modificaciones en el hardware de la unidad de control
-> slo cambiamos el microprograma!
Op4
Op2
Op1
Op0
S3
S2
S1
S0
Op[5 0]
Instruction register State register
opcode field
Instruction register
opcode field
PCWriteCond
MemToReg
PCSource1
PCSource0
ALUSrcB1
ALUSrcB0
MemRead
MemWrite
RegWrite
AddrCtl1
AddrCtl0
PCWrite
AluSrcA
IRWrite
RegDst
Aluop1
Aluop0
IorD
18 seales de control ->
Adder
Mux AddrCtl
3 2 1 0