Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Inf60500 Arq Com Cap5.1 Arquitectura de La Cpu
Inf60500 Arq Com Cap5.1 Arquitectura de La Cpu
computadore s
De pto. de Informática y Computación
Prime r se me stre 20 19
M A
I0
u Y ALU Y
I1 x
B
S
F
Elementos Secuenciales
Clk
D Q
D
Clk Q
Elementos Secuenciales
Clk
D Q Write
Write
D
Clk
Q
Metodología del Reloj
E S
● Datapath
Incrementar en 4
para la siguiente
Registro instrucción
de 32 bit
Instrucciones Formato R (op $t1, $t2, $t3)
\ 32 \
32
\ 32
\ 32 \ Overflow ? Interrupciones
32
Banco de Registros:
Es una colección de registros, donde cualquiera de ellos puede leerse o escribirse especificando su número.
El banco de registros contiene el estado de los registros de la máquina.
Instrucciones “Load/Store” lw $t1, desp ($t2)
sw $t1, offset ($t2)
● Le e r ope randos de re gistros
Sólo re-enruta
las conexiones
Conexión bit de
signo extendido
Composición de los Elementos
Control
opcode ALUOp Operación funct Función 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
La Unidad de Control Principal (MCU)
● Se ñale s de control de rivadas de la instrucción
Load/
35 or 43 rs rt dirección
Store
31:26 25:21 20:16 15:0
Branch 4 rs rt dirección
31:26 25:21 20:16 15:0
Ejemplo: j dirección
Rendimiento del Camino de Datos
DataPath Performance
Problemas de Performance
○ Unidade s de me moria: 20 0 ps
○ ALU y sumadore s: 10 0 ps
○ “Re giste r file ” (le ctura o e scritura de re gistros): 50 ps
● Supongamos que los multiple xore s, unidad de control, acce so al PC,
e xte nsión de signo y cable s no produce n re tardo, son unidade s
suficie nte me nte rápidas para no influir sobre e l tie mpo total.
El picosegundo (del español pico, y éste del celtolatino beccus, pequeña cantidad excedente)
es la unidad de tiempo que equivale a la billonésima parte de un segundo, y se abrevia ps.
1 ps = 1 × 10–12 s.
Rendimiento de una Máquina “Single-Cycle”
● Sabe mos que Tie mpo e je cución CPU = Núme ro de instruccione s x CPI
x Tie mpo ciclo re loj
● Ne ce sitamos e ncontrar e l tie mpo ciclo re loj para cada imple me ntación
Clase Mem Lectura reg ALU Mem datos Escritura reg Total
Tipo R 200 50 100 0 50 400
lw 200 50 100 200 50 600
sw 200 50 100 200 550
Branch 200 50 100 0 350
Jump 200 200
Rendimiento de una Máquina “Single-Cycle”
● El ciclo re loj para una máquina “single -cycle ” e stá de te rminado por la
instrucción más larga (60 0 ps)
● Una máquina con ciclo variable te ndrá un ciclo que varía e ntre 20 0 ps
y 60 0 ps
● Su ciclo prome dio corre sponde a
● La máquina de ciclo variable tie ne un ciclo prome dio más corto por lo
Propue sta: Inve stigue n que suce de al imple me ntar punto flotante con
e sta máquina
Resumen Implementación de una Máquina “Single-
Cycle”
● Adicionalme nte al proble ma de re ndimie nto, cada unidad funcional
pue de se r utilizada sólo una ve z por ciclo
● De bido a e sto se de be n duplicar algunas unidade s lo que aume nta e l
costo de imple me ntación
● Para e vitar e stas dificultade s se utilizan imple me ntacione s con ciclos
más cortos y que re quie re n de múltiple s ciclos por instrucción
● Existe n otras imple me ntacione s más e ficie nte s como e l “pipe lining”
que supe rpone la e je cución de múltiple s instruccione s
Diagrama en Bloques Detallado Single Cycle o Ciclo Unico
Un esquema más eficiente (Pipeline o Segmentación)
● Una ve z guardada la ropa, pue de s come nzar una nue va tare a con
ropa sucia.
Pipeline
Pipeline
Tie mpo total instruccione s con pipe line = Tie mpo total instruccione s sin pipe line
Núme ro de e tapas de pipe line
En ge ne ral las e tapas no sie mpre e stán pe rfe ctame nte balance adas y e l
proce so de pipe line tambié n e ntre ga una sobre carga (de lays) por lo que
e l me joramie nto e s me nor a la proporción de la cantidad de e tapas de l
pipe line .
Rendimiento Single-Cylce vs Pipeline
En este ejemplo más realista vemos que no todas las etapas toman el
mismo tiempo, por lo tanto se van agregando tiempo muertos (hazard) y
sobre cargas, considerando ciclos de reloj iguales en cada operación