capítulo 3
DESCRIPTION
Capítulo 3. El procesador: la ruta de datos y el control (II Parte). Mejoramiento del rendimiento. Tiempo de ciclo arreglado Obviamente ineficiente Tiempo de ciclo variable Más rápido Temporización compleja Múltiples ciclos de reloj Quiebre de instrucciones en pasos de un ciclo - PowerPoint PPT PresentationTRANSCRIPT
Página 1
EL - 3310Diseño conSistemas Digitales
Ing. José Alberto Díaz
García
Escuela de Ingeniería ElectrónicaEl P
rocesad
or:
dato
s y
con
trol (I
I P
art
e)
Capítulo 3
El procesador: la ruta de datos y el control
(II Parte)
Página 2
EL - 3310Diseño conSistemas Digitales
Ing. José Alberto Díaz
García
Escuela de Ingeniería ElectrónicaEl P
rocesad
or:
dato
s y
con
trol (I
I P
art
e)
Mejoramiento del rendimiento• Tiempo de ciclo arreglado
– Obviamente ineficiente
• Tiempo de ciclo variable– Más rápido– Temporización compleja
• Múltiples ciclos de reloj– Quiebre de instrucciones en pasos de un ciclo– Balance de la cantidad de trabajo por realizar– Restricciones en cada ciclo por usar una
unidad funcional– Almacena valores al final de cada ciclo para
ser utilizado en otros ciclos.
Página 3
EL - 3310Diseño conSistemas Digitales
Ing. José Alberto Díaz
García
Escuela de Ingeniería ElectrónicaEl P
rocesad
or:
dato
s y
con
trol (I
I P
art
e)
Implementación de múltiples ciclos de reloj
• Registros se actualizan en cada ciclo– Datos– Salidas del archivo de registros– Salidas de la ALU– Instrucción se actualiza al final de la instrucción.
Página 4
EL - 3310Diseño conSistemas Digitales
Ing. José Alberto Díaz
García
Escuela de Ingeniería ElectrónicaEl P
rocesad
or:
dato
s y
con
trol (I
I P
art
e)
Ruta de datos• Utilice la ALU para
– Incrementar el PC– Saltos– Direcciones de memoria– Operaciones aritméticas
• Rutas de datos adicionales• Interpretación de IR depende del formato de las
instrucciones
Página 5
EL - 3310Diseño conSistemas Digitales
Ing. José Alberto Díaz
García
Escuela de Ingeniería ElectrónicaEl P
rocesad
or:
dato
s y
con
trol (I
I P
art
e)
Ruta de datos con señales de control
• Direcciones de memoria• R/W • Escritura en IR• Escritura en registro• Escritura en el registro destino• Escritura en el registro fuente de datos• Multiplexor de fuente de ALU• Control de ALU
Página 6
EL - 3310Diseño conSistemas Digitales
Ing. José Alberto Díaz
García
Escuela de Ingeniería ElectrónicaEl P
rocesad
or:
dato
s y
con
trol (I
I P
art
e)
Manejo del PC• La fuente del PC se selecciona por medio
de un multiplexor– Salida de la ALU después de PC + 4
(instrucción normal)– Salida de la ALU después de calcular una
dirección de salto condicional– Nueva dirección de una instrucción de salto
• Escritura del PC– Incondicional después de una instrucción
normal y salto.– Sobre escritura condicional si se realiza un
salto• PCWriteCond permite cargas condicionales• El bit de Zero de ALU decide si el PC se cargará
con la nueva dirección de salto.
Página 7
EL - 3310Diseño conSistemas Digitales
Ing. José Alberto Díaz
García
Escuela de Ingeniería ElectrónicaEl P
rocesad
or:
dato
s y
con
trol (I
I P
art
e)
Diseño de la multiciclo
• Se pueden reutilizar las unidades funcionales– La ALU se puede reutilizar para el cálculo de
direcciones y para incrementar el PC– La memoria se puede utilizar para almacenar
instrucciones y datos• Las señales de control no son determinadas
únicamente por la instrucción.• Se utiliza una máquina de estados finita (FSM)
para implementar el control.– No solamente el uso de lógica combinacional en el
diseño del sistema.– Ahora la unidad de control es secuencial por lo que
se requiere de una FSM
Página 8
EL - 3310Diseño conSistemas Digitales
Ing. José Alberto Díaz
García
Escuela de Ingeniería ElectrónicaEl P
rocesad
or:
dato
s y
con
trol (I
I P
art
e)
PC
MemoriaALURegistros
D
R1id
WRid
R2idIR
MDR
MAR
Componentes básicos
OUt
A
B
MUX
0
1
MUX
0
1
MUX
0
1
MUX
0
1
MUX
0
1
MUX
0
1
2
3
MUX0 1 2 3
4
Shift
Registros ExtraMultiplexores para enrutar
Conductores
Dirección de memoria Dirección de memoria Actualizar el PC Actualizar el PC Salida de memoria Salida de memoria Palabra de instrucciónPalabra de instrucciónSalida de registrosSalida de registros Salida de ALU Salida de ALU
Página 9
EL - 3310Diseño conSistemas Digitales
Ing. José Alberto Díaz
García
Escuela de Ingeniería ElectrónicaEl P
rocesad
or:
dato
s y
con
trol (I
I P
art
e)
Operación de búsqueda
PC
MemoriaALURegistros
D
R1id
WRid
R2idIR
MDR
MAR
MUX
0
1
MUX
0
1
OUt
MUX
0
1
MUX
0
1
A
B
MUX
0
1
MUX
0
1
2
3
MUX0 1 2 3
4
Shift
Ruta del PC a Memoria & ALU
0 0
1
Add 4
sume
Load PC 1Load IRcargue
cargue
Página 10
EL - 3310Diseño conSistemas Digitales
Ing. José Alberto Díaz
García
Escuela de Ingeniería ElectrónicaEl P
rocesad
or:
dato
s y
con
trol (I
I P
art
e)
Ruta de datos completa y su control
Página 11
EL - 3310Diseño conSistemas Digitales
Ing. José Alberto Díaz
García
Escuela de Ingeniería ElectrónicaEl P
rocesad
or:
dato
s y
con
trol (I
I P
art
e)
Página 12
EL - 3310Diseño conSistemas Digitales
Ing. José Alberto Díaz
García
Escuela de Ingeniería ElectrónicaEl P
rocesad
or:
dato
s y
con
trol (I
I P
art
e)
Página 13
EL - 3310Diseño conSistemas Digitales
Ing. José Alberto Díaz
García
Escuela de Ingeniería ElectrónicaEl P
rocesad
or:
dato
s y
con
trol (I
I P
art
e)
Quiebra de instrucciones• Moverse de un ciclo a multiciclo
– Identificar los pasos que tardan un ciclo– Misma distribución en el tiempo de ejecución– Por lo menos una operación para cada uno de
los módulos• ALU• Archivo de Registros• Memoria
• Nuevos registros si– La señal se genera en un ciclo y se utiliza en
otro.– Las entradas del bloque que genera la señal
puede cambiar en el segundo ciclo.
Página 14
EL - 3310Diseño conSistemas Digitales
Ing. José Alberto Díaz
García
Escuela de Ingeniería ElectrónicaEl P
rocesad
or:
dato
s y
con
trol (I
I P
art
e)
Los 5 pasos en la ejecución• Búsqueda de instrucción
– Mover la instrucción de la memoria de instrucción al registro de instrucción IR
• Decodificación de la instrucción y búsqueda de registro– Provee el contenido del registro a la
ALU
• Ejecución, cálculo de la dirección de memoria o salto
• Acceso a memoria o finalización de instrucciones tipo R
• Proceso de escritura.
Página 15
EL - 3310Diseño conSistemas Digitales
Ing. José Alberto Díaz
García
Escuela de Ingeniería ElectrónicaEl P
rocesad
or:
dato
s y
con
trol (I
I P
art
e)
• Utilice el PC para obtener la instrucción y colocarla en el registro de instrucción.– IR <=MEMORIA(PC)– SET Read Address Mux (IorD)– = 0 selecciona la instrucción– SET MemRead = 1
• Incremente el PC en cuatro 4 y coloque el resultado en el PC nuevamente.– PC <= PC+4– ALUSrcA = 0 obtenga el operando de IR– ALUSrcB = 01 obtenga el operando 4– ALUOp = 00 add
• Almacene el nuevo valor del PC en PC• Incrementar el PC y el acceso a la memoria de
instrucción pueden realizarse en paralelo.
Paso 1: Búsqueda de una instrucción
Página 16
EL - 3310Diseño conSistemas Digitales
Ing. José Alberto Díaz
García
Escuela de Ingeniería ElectrónicaEl P
rocesad
or:
dato
s y
con
trol (I
I P
art
e)
Ruta de datos: IR = Memory[PC], PC = PC + 4Control: IorD=0, MemRead=1, MemWr=0, IRwrite=1, ALUsrcA=0, etc
Página 17
EL - 3310Diseño conSistemas Digitales
Ing. José Alberto Díaz
García
Escuela de Ingeniería ElectrónicaEl P
rocesad
or:
dato
s y
con
trol (I
I P
art
e)
• Lee los registros rs y rt en caso de que se necesiten
A <= Reg[IR[25-21]] rsB <= Reg[IR[20-16]] rt
• Se calculan las direcciones de salto en caso de que se ejecute el salto.ALUOut <= PC + (sign-extend(IR[15-0]) << 2);Almacénelo en el registro ALUOutALUSrcb = 11ALUOp = 00 add
Paso 2: Decodificación de instrucción y búsqueda de
registro
Página 18
EL - 3310Diseño conSistemas Digitales
Ing. José Alberto Díaz
García
Escuela de Ingeniería ElectrónicaEl P
rocesad
or:
dato
s y
con
trol (I
I P
art
e)
A = Register[IR[25-21]]
B = Register[IR[20-16]]
ALUout = PC + (sign-extend (IR[15-0]) << 2)
Página 19
EL - 3310Diseño conSistemas Digitales
Ing. José Alberto Díaz
García
Escuela de Ingeniería ElectrónicaEl P
rocesad
or:
dato
s y
con
trol (I
I P
art
e)
• La cantidad de pasos dependen de la instrucción
• Selección realizada por interpretación de op + campo de la función en la instrucción
• La ALU realiza una de las tres funciones, basándose en el tipo de instrucciones.
• Calcula la dirección de memoriaALUOut <= A + sign-extend(IR[15-0])ALUSrcA = 1 obtiene el operando de AALUSrcB = 10 obtiene el operando de la unidad de
signo externoALUOp = 00 add
Paso 3: Ejecución, cálculo de dirección de memoria o de salto
Página 20
EL - 3310Diseño conSistemas Digitales
Ing. José Alberto Díaz
García
Escuela de Ingeniería ElectrónicaEl P
rocesad
or:
dato
s y
con
trol (I
I P
art
e)
Paso 3: Ejecución, cálculo de dirección de memoria o de salto
(continuación)• Instrucciones tipo R:
ALUOut <= A op B– ALUSrcA = 1 obtiene operando de A– ALUSrcb = 00 obtiene operando de B– ALUOp = 10 código de IR
• Instrucciones con salto:if (A==B) PC <= ALUOut;
– ALUSrcA = 1 obtiene operando de A– ALUSrcB = 00 obtiene operando de B– ALUOp = 01 sustracción– Escriba ALUOut en el registro PC
• Salto JUMP– PC<= {PC[31-28], (IR[25-0],2’b00)}
Página 21
EL - 3310Diseño conSistemas Digitales
Ing. José Alberto Díaz
García
Escuela de Ingeniería ElectrónicaEl P
rocesad
or:
dato
s y
con
trol (I
I P
art
e)
• En el ciclo 1, PC se incrementa en 4• En el ciclo 2, ALUout se pone para el salto condicional• En este ciclo, condicionalmente se pone el PC: if (A==B) PC=ALUout
A
B
ALUout
Página 22
EL - 3310Diseño conSistemas Digitales
Ing. José Alberto Díaz
García
Escuela de Ingeniería ElectrónicaEl P
rocesad
or:
dato
s y
con
trol (I
I P
art
e)
• Acceso a memoria– El control de la ALU debe
mantenerse estable– Ponga I o D = 1 direcciones de
la ALU•MDR <= Memoria [ALUOut] •Carga con memoria
– Ponga MemRead = 1•B => Memoria [ALUOut]•Almacena en memoria
– Ponga MemWrite = 1
Paso 4: Acceso a memoria o ejecución de instrucción tipo R
Página 23
EL - 3310Diseño conSistemas Digitales
Ing. José Alberto Díaz
García
Escuela de Ingeniería ElectrónicaEl P
rocesad
or:
dato
s y
con
trol (I
I P
art
e)
Paso 4: Acceso a memoria o ejecución de instrucción tipo R
• Finalización de instrucciones aritméticas o lógicas – Registro [IR[15-11]]<=ALUOut– Pone RegDst = 1 seleccionar el registro
de escritura– Pone RegWrite = 1 permite
operaciones de escritura– Pone MemToReg = 0 selecciona datos
en ALU– ALUOp, ALUSrcA, ALUSrcB = CONTANTE
Página 24
EL - 3310Diseño conSistemas Digitales
Ing. José Alberto Díaz
García
Escuela de Ingeniería ElectrónicaEl P
rocesad
or:
dato
s y
con
trol (I
I P
art
e)
Ciclo 3: ALUout = A op B Ciclo 4: Reg[IR[15-11]] = ALUout
B
A
Página 25
EL - 3310Diseño conSistemas Digitales
Ing. José Alberto Díaz
García
Escuela de Ingeniería ElectrónicaEl P
rocesad
or:
dato
s y
con
trol (I
I P
art
e)
Ciclo 3: ALUout = A op B Ciclo 4: Reg[IR[15-11]] = ALUout
B
AALUout
Página 26
EL - 3310Diseño conSistemas Digitales
Ing. José Alberto Díaz
García
Escuela de Ingeniería ElectrónicaEl P
rocesad
or:
dato
s y
con
trol (I
I P
art
e)
• Escribe datos de la memoria al registro– Reg[IR[20-16]]= MDR– Pone RegDst = 0 selecciona escritura
en RT como registro de dirección– Pone RegWrite = 1 permite
operaciones de escritura– Pone MenToReg = 1 selecciona la
memoria de datos– ALUOp, ALUSrcA, ALUSrcB = CONTANTE
Paso 5: Proceso de escritura
Página 27
EL - 3310Diseño conSistemas Digitales
Ing. José Alberto Díaz
García
Escuela de Ingeniería ElectrónicaEl P
rocesad
or:
dato
s y
con
trol (I
I P
art
e)
RESUMEN
Página 28
EL - 3310Diseño conSistemas Digitales
Ing. José Alberto Díaz
García
Escuela de Ingeniería ElectrónicaEl P
rocesad
or:
dato
s y
con
trol (I
I P
art
e)
SEÑALES DE CONTROL
Página 29
EL - 3310Diseño conSistemas Digitales
Ing. José Alberto Díaz
García
Escuela de Ingeniería ElectrónicaEl P
rocesad
or:
dato
s y
con
trol (I
I P
art
e)
CONTROLANDO EL PROCESADOR
• Secuencia de pasos es dependiente del tiempo (máquina de estados)
• Descripción de los métodos– Diagrama de estados– Microprogramación– VHDL– Programa– .......
• En este ejemplo utilizaremos diagramas de estado y microprogramación
Página 30
EL - 3310Diseño conSistemas Digitales
Ing. José Alberto Díaz
García
Escuela de Ingeniería ElectrónicaEl P
rocesad
or:
dato
s y
con
trol (I
I P
art
e)
Descomposición general• Parte común
– Búsqueda de instrucciones– Decodificación de las instrucciones/búsqueda de
registro
• Parte específica de la instrucción
Página 31
EL - 3310Diseño conSistemas Digitales
Ing. José Alberto Díaz
García
Escuela de Ingeniería ElectrónicaEl P
rocesad
or:
dato
s y
con
trol (I
I P
art
e)
Parte común• Búsqueda de instrucción• Descodificación de la
instrucción/búsqueda de registro
Página 32
EL - 3310Diseño conSistemas Digitales
Ing. José Alberto Díaz
García
Escuela de Ingeniería ElectrónicaEl P
rocesad
or:
dato
s y
con
trol (I
I P
art
e)
Acceso a Memoria• Cálculo de
dirección• Secuencia de
carga– Lectura de
memoria– Almacenamient
o en registro
• Acceso a memoria
• Escritura de secuencia de almacenamiento
Página 33
EL - 3310Diseño conSistemas Digitales
Ing. José Alberto Díaz
García
Escuela de Ingeniería ElectrónicaEl P
rocesad
or:
dato
s y
con
trol (I
I P
art
e)
Instrucción tipo R
• Ejecución de la instrucción
• Escribir el resultado final en el registro
Página 34
EL - 3310Diseño conSistemas Digitales
Ing. José Alberto Díaz
García
Escuela de Ingeniería ElectrónicaEl P
rocesad
or:
dato
s y
con
trol (I
I P
art
e)
Instrucción de salto
• Un solo estado
• El PC se debe cargar con la dirección de salto
• Obtener la próxima instrucción
Página 35
EL - 3310Diseño conSistemas Digitales
Ing. José Alberto Díaz
García
Escuela de Ingeniería ElectrónicaEl P
rocesad
or:
dato
s y
con
trol (I
I P
art
e)
Instrucción de salto (JUMP)
• Carga el PC con el nuevo valor
• Obtiene la próxima instrucción
Página 36
EL - 3310Diseño conSistemas Digitales
Ing. José Alberto Díaz
García
Escuela de Ingeniería ElectrónicaEl P
rocesad
or:
dato
s y
con
trol (I
I P
art
e)
Maquina de estados completa• Parte común• Parte
específica de la instrucción
Página 37
EL - 3310Diseño conSistemas Digitales
Ing. José Alberto Díaz
García
Escuela de Ingeniería ElectrónicaEl P
rocesad
or:
dato
s y
con
trol (I
I P
art
e)
Resumen de las señales de control
• Los datos en negro indican señales activas• Los datos en gris indican señales inactivas que deben
establecerse• Líneas indican condiciones no importa
Página 38
EL - 3310Diseño conSistemas Digitales
Ing. José Alberto Díaz
García
Escuela de Ingeniería ElectrónicaEl P
rocesad
or:
dato
s y
con
trol (I
I P
art
e)
Rendimiento • Mezcla de instrucciones y estados
• CPI
instrucción
largo prueba
cargas 5 22%almacenamient
o 4 11%
Tipo R 4 49%
salto 3 16%
Jump 3 2%
Página 39
EL - 3310Diseño conSistemas Digitales
Ing. José Alberto Díaz
García
Escuela de Ingeniería ElectrónicaEl P
rocesad
or:
dato
s y
con
trol (I
I P
art
e)
Posibilidades de implementación• Máquina
de Moore: las salidas dependen de la entradas y del estado
Página 40
EL - 3310Diseño conSistemas Digitales
Ing. José Alberto Díaz
García
Escuela de Ingeniería ElectrónicaEl P
rocesad
or:
dato
s y
con
trol (I
I P
art
e)
Para este ejemploPCWrite
PCWriteCond
IorD
MemtoReg
PCSource
ALUOp
ALUSrcB
ALUSrcA
RegWrite
RegDst
NS3NS2NS1NS0
Op5
Op4
Op3
Op2
Op1
Op0
S3
S2
S1
S0
State register
IRWrite
MemRead
MemWrite
Instruction registeropcode field
Outputs
Control logic
Inputs
Página 41
EL - 3310Diseño conSistemas Digitales
Ing. José Alberto Díaz
García
Escuela de Ingeniería ElectrónicaEl P
rocesad
or:
dato
s y
con
trol (I
I P
art
e)
Opciones para implementación
• ROM– Bits para direcciones: 10
• Registros de estado: 4 bits• Campo para código de operación: 6 bits
– Bits de salida: 17
• PLA– Calculo de las funciones de salida– Optimización – Mapear a la arquitectura PLA– Menos área– Rápida construcción
Página 42
EL - 3310Diseño conSistemas Digitales
Ing. José Alberto Díaz
García
Escuela de Ingeniería ElectrónicaEl P
rocesad
or:
dato
s y
con
trol (I
I P
art
e)
PLA
Página 43
EL - 3310Diseño conSistemas Digitales
Ing. José Alberto Díaz
García
Escuela de Ingeniería ElectrónicaEl P
rocesad
or:
dato
s y
con
trol (I
I P
art
e)
• Rompe la tabla en dos partes– 4 bits de estado para generar 16 salidas, 24X16
bits de ROM– 10 bits para definir los próximos 4 estados, 210X4
bits de ROM– Total: 4.3K bits de ROM
• PLA es más pequeño– Se pueden compartir términos– Solo se necesita de entradas que producen una
salida – Se puede contar con condiciones no importa
• El tamaño es – (#entradas´ #producto-términos) + (#salidas ´ #producto-términos)
para este ejemplo = (10x17)+(20x17) = 460 PLA celdas– Las celdas del PLA generalmente tienen el tamaño de una celda de
ROM
ROM vs PLA
Página 44
EL - 3310Diseño conSistemas Digitales
Ing. José Alberto Díaz
García
Escuela de Ingeniería ElectrónicaEl P
rocesad
or:
dato
s y
con
trol (I
I P
art
e)
MICROPROGRAMACION• Limitaciones en FSM basadas en los
diagramas de estado y su complejidad– MIPS: más de 100 instrucciones– Largo de las instrucciones: 1 – 20 ciclos– Numero de estados: gigantesco y creciente
• Otra alternativa: microprogramación– Implementación de instrucciones tipo MIPs se
puede realizar como una secuencia de simples instrucciones
– Diseñar un formato para las micro instrucciones
– Escribir el programa
Página 45
EL - 3310Diseño conSistemas Digitales
Ing. José Alberto Díaz
García
Escuela de Ingeniería ElectrónicaEl P
rocesad
or:
dato
s y
con
trol (I
I P
art
e)
Micro instrucciones• ¿Qué es lo que necesitamos?
– Señales de control para la ALU– Señales de control para el contador
de programa PC– Ruta de datos completa
• ¿Qué vamos a hacer?– Analizar que sucede en cada estado– Escribirlo en una tabla– Traducirlo a binario– Almacenarlo en una forma apropiada
Página 46
EL - 3310Diseño conSistemas Digitales
Ing. José Alberto Díaz
García
Escuela de Ingeniería ElectrónicaEl P
rocesad
or:
dato
s y
con
trol (I
I P
art
e)
Una simple implementación
Página 47
EL - 3310Diseño conSistemas Digitales
Ing. José Alberto Díaz
García
Escuela de Ingeniería ElectrónicaEl P
rocesad
or:
dato
s y
con
trol (I
I P
art
e)
Elementos • Almacenamiento del micro código (ROM
o PLA)– Salidas para el control de la ruta de datos– Secuencia para el control de salida
• Decodificador de salida (opcional)• Contador de microprograma/mux
– Reset– Incrementador – Nueva dirección
• Control de secuencia– Mux de control– Calculo de la próxima dirección
Página 48
EL - 3310Diseño conSistemas Digitales
Ing. José Alberto Díaz
García
Escuela de Ingeniería ElectrónicaEl P
rocesad
or:
dato
s y
con
trol (I
I P
art
e)
RUTA DE DATOS• Ruta de datos y control
Página 49
EL - 3310Diseño conSistemas Digitales
Ing. José Alberto Díaz
García
Escuela de Ingeniería ElectrónicaEl P
rocesad
or:
dato
s y
con
trol (I
I P
art
e)
Formato de las micro instrucciones• Mezcle las señales de acuerdo a la función• Las señales que nunca se utilizarán se
pueden compartir al mismo tiempo• Las señales deben ponerse
Página 50
EL - 3310Diseño conSistemas Digitales
Ing. José Alberto Díaz
García
Escuela de Ingeniería ElectrónicaEl P
rocesad
or:
dato
s y
con
trol (I
I P
art
e)
Microprograma • Implementación física: ROM o PLA• Cada microinstrucción tiene una
dirección• Secuencialmente ordenado• Cada paso de la secuencia es de un ciclo• Selección de la próxima instrucción
– Se incrementa la dirección (campo de secuencia = seq)
– Búsqueda: inicia la búsqueda de la próxima microinstrucción (campo de secuencia = fetch)
– Dispatch: salta a la próxima microinstrucción el número i indica la dirección en la tabla de dispatch.
Página 51
EL - 3310Diseño conSistemas Digitales
Ing. José Alberto Díaz
García
Escuela de Ingeniería ElectrónicaEl P
rocesad
or:
dato
s y
con
trol (I
I P
art
e)
Señales de control
Página 52
EL - 3310Diseño conSistemas Digitales
Ing. José Alberto Díaz
García
Escuela de Ingeniería ElectrónicaEl P
rocesad
or:
dato
s y
con
trol (I
I P
art
e)
Creación del microprograma• Inicio de cada instrucción
– Búsqueda de instrucción– Cálculo de próximo PC– Decodificación de la instrucción– Cálculo del próximo salto PC
• Espacios en blanco– Multiplexor: no importa– Las señales de control para el acceso a los
registros o generación de funciones: se ponen en cero
Página 53
EL - 3310Diseño conSistemas Digitales
Ing. José Alberto Díaz
García
Escuela de Ingeniería ElectrónicaEl P
rocesad
or:
dato
s y
con
trol (I
I P
art
e)
Secuencia de inicio
• Primera instrucción
• Segunda instrucción
Página 54
EL - 3310Diseño conSistemas Digitales
Ing. José Alberto Díaz
García
Escuela de Ingeniería ElectrónicaEl P
rocesad
or:
dato
s y
con
trol (I
I P
art
e)
Acceso a memoria
• Micro instrucciones
• Parte común
Página 55
EL - 3310Diseño conSistemas Digitales
Ing. José Alberto Díaz
García
Escuela de Ingeniería ElectrónicaEl P
rocesad
or:
dato
s y
con
trol (I
I P
art
e)
Acceso a memoria
• Cargue una palabra específica, 1
• Cargue una palabra específica, 2
• Almacene una palabra específica
Página 56
EL - 3310Diseño conSistemas Digitales
Ing. José Alberto Díaz
García
Escuela de Ingeniería ElectrónicaEl P
rocesad
or:
dato
s y
con
trol (I
I P
art
e)
Instrucciones con formato R
• Microinstrucción
• Operación
• Finalización de la operación
Página 57
EL - 3310Diseño conSistemas Digitales
Ing. José Alberto Díaz
García
Escuela de Ingeniería ElectrónicaEl P
rocesad
or:
dato
s y
con
trol (I
I P
art
e)
Salto y Jump• Salto
• Jump
Página 58
EL - 3310Diseño conSistemas Digitales
Ing. José Alberto Díaz
García
Escuela de Ingeniería ElectrónicaEl P
rocesad
or:
dato
s y
con
trol (I
I P
art
e)
Micro programa completo
Página 59
EL - 3310Diseño conSistemas Digitales
Ing. José Alberto Díaz
García
Escuela de Ingeniería ElectrónicaEl P
rocesad
or:
dato
s y
con
trol (I
I P
art
e)
Situaciones no implementadas• Interrupciones
– Solicitudes de periféricos de entrada salida
• Manejo de excepciones– Invocación del sistema operativo – Rebase aritmético– Instrucción indefinida– Errores en hardware
• Manejo de errores– Recuperación– Operación de abortar– Proceso de abortar– Reboot
Página 60
EL - 3310Diseño conSistemas Digitales
Ing. José Alberto Díaz
García
Escuela de Ingeniería ElectrónicaEl P
rocesad
or:
dato
s y
con
trol (I
I P
art
e)
Detección de excepciones• Instrucciones indefinidas
– Pruebe el valor en el campo del código de operación
– En todos los valores que no pertenecen a un valor válido genere una interrupción
• Rebase aritmético– Es detectado y generado por la ALU
• Acciones– Salve el PC en la instrucción (PC-4)en el
contador de programa de excepciones (EPC)– Continúe con OS con un código para el
manejo de errores– Retorne al código original en la próxima
instrucción para reiniciar.
Página 61
EL - 3310Diseño conSistemas Digitales
Ing. José Alberto Díaz
García
Escuela de Ingeniería ElectrónicaEl P
rocesad
or:
dato
s y
con
trol (I
I P
art
e)
Manejo de excepciones
• VERSION 1:– Utilice el registro de estado
• Simple punto de entrada• El sistema operativo (OS) analiza el
registro de estado
• VERSION 2:– Interrupciones vectorizadas
• Por cada interrupción se almacena un vector
• Cada vector de interrupciones tiene asociado un programa
Página 62
EL - 3310Diseño conSistemas Digitales
Ing. José Alberto Díaz
García
Escuela de Ingeniería ElectrónicaEl P
rocesad
or:
dato
s y
con
trol (I
I P
art
e)
Manejo de MIPS• REGISTROS
– Registros de causa de 32 bits• Bits individuales son utilizados para
codificar la causa, • Instrucciones indefinidas: bit 0 = 0• Rebase aritmético: bit 0 = 1
– EPC, 32 bits, se puede cargas desde la salida de la ALU
• SEÑALES DE CONTROL– CauseWrite– EPCWrite– Señales de 1 Bit IntCause– Direcciones de excepciones,
C0000000hex
Página 63
EL - 3310Diseño conSistemas Digitales
Ing. José Alberto Díaz
García
Escuela de Ingeniería ElectrónicaEl P
rocesad
or:
dato
s y
con
trol (I
I P
art
e)
Manejo de MIPS
• Extensión del Mux del PC– ALU– Saltos– Jumps– Excepciones
• Decremente el PC en 4 obtenga las direcciones de la instrucción que se ejecuta
Página 64
EL - 3310Diseño conSistemas Digitales
Ing. José Alberto Díaz
García
Escuela de Ingeniería ElectrónicaEl P
rocesad
or:
dato
s y
con
trol (I
I P
art
e)
Arquitectura extendida
Página 65
EL - 3310Diseño conSistemas Digitales
Ing. José Alberto Díaz
García
Escuela de Ingeniería ElectrónicaEl P
rocesad
or:
dato
s y
con
trol (I
I P
art
e)
Arquitectura extendida
• Registro de Causa
• Escritura de Causa
• EPC• EPCWrite• Extensión
PCSourse
Página 66
EL - 3310Diseño conSistemas Digitales
Ing. José Alberto Díaz
García
Escuela de Ingeniería ElectrónicaEl P
rocesad
or:
dato
s y
con
trol (I
I P
art
e)
Manejo de excepciones• Instrucción
indefinida > IntCause = 0 (estado 10)
• Rebase aritmético > IntCause= 1 (estado 11)
• Carga el EPC• Carga el PC
con el registro de interrupciones
Página 67
EL - 3310Diseño conSistemas Digitales
Ing. José Alberto Díaz
García
Escuela de Ingeniería ElectrónicaEl P
rocesad
or:
dato
s y
con
trol (I
I P
art
e)
Máquina de estados con excepciones
Página 68
EL - 3310Diseño conSistemas Digitales
Ing. José Alberto Díaz
García
Escuela de Ingeniería ElectrónicaEl P
rocesad
or:
dato
s y
con
trol (I
I P
art
e)
Opciones para implementación
Página 69
EL - 3310Diseño conSistemas Digitales
Ing. José Alberto Díaz
García
Escuela de Ingeniería ElectrónicaEl P
rocesad
or:
dato
s y
con
trol (I
I P
art
e)
FIN