El Procesador Single-Cycle
Basado en el Capitulo 4 del texto: Computer Organization and Design, David Patterson y John Hennessy
Introduccin
Factores de performance de la CPU
Cantidad de Instrucciones
Determinado por el ISA y el compilador
CPI y tiempo del ciclo
Determinado por el hardware de la CPU
A
Y
B
Unidad Aritmtica/Lgica
Multiplexor Y = F(A, B)
Y = S ? I1 : I0
A
I0 M
u Y ALU Y
I1 x
B
S F
Semestre Otoo 2014 ECEE1012 Sistemas Digitales II
Elementos Secuenciales
Registro: almacena datos en un circuito
Utiliza una seal de reloj para determinar cundo
actualizar el valor almacenado
Activado por flanco (edge-triggered): se actualiza
cuando Clk cambia de 0 a 1
Clk
D Q
D
Clk
Q
D Q Write
Write D
Clk
Q
Datapath
Elementos que procesan datos y direcciones en la CPU
Registros, ALUs, muxs, memorias,
Corresponde a lo controlado en un diseo digital
Construiremos un datapath de MIPS
incrementalmente
Afinamiento del diseo global
Incrementar en 4
para la siguiente
Registro instruccin
de 32 bit
Slo re-enruta
las conexiones
Conexin bit de
signo extendido
Semestre Otoo 2014 ECEE1012 Sistemas Digitales II
Composicin de los Elementos
Como punto de partida el datapath ejecuta una
instruccin en un ciclo de reloj
Cada elemento del datapath puede realizar solamente
una funcin cada vez
Por lo tanto, se necesita separar la instruccin del dato
de memoria
Utilizar multiplexores donde se tengan fuentes de
datos alternativas para diferentes instrucciones
Control
opcode ALUOp Operacin funct Funcin ALU
ALU
lw 00 carga palabra XXXXXX suma 0010
sw 00 almacena palabra XXXXXX suma 0010
beq 01 salta si igual XXXXXX resta 0110
Tipo R 10 suma 100000 suma 0010
resta 100010 resta 0110
AND 100100 AND 0000
OR 100101 OR 0001
seteado en menor que 101010 seteado en menor que 0111
Load/
35 or 43 rs rt direccin
Store
31:26 25:21 20:16 15:0
Branch 4 rs rt direccin
31:26 25:21 20:16 15:0
Ejemplo: j direccin