You are on page 1of 33

Repaso de Arquitectura y

Organizacin
Criterios de clasificacin

William Stallings, Organizacin y Arquitectura de Computadores


Andrew S. Tanenbaum, Organizacin de Computadoras
Linda Null y Julia Lobur, Computer Organization and Architecture

John Hennessy David Patterson


Arquitectura de Computadores Un enfoque cuantitativo
(1a edicin, captulos 3, 4 y 5) (4th ed, ch 1 & ap. B)
Arquitectura de Computadoras
Introduccin
COMPUTADORA
Dispositivo electrnico, digital y programable, utilizado para el
procesamiento y/o manipulacin de informacin.

Representacin digital de la informacin. Sistemas numricos posicionales


en base 2. Operaciones aritmticas implementadas con lgica. Otros tipos
de informacin.
El programa almacenado. Arquitectura de von Neumann. Tipos de
instrucciones.
Organizacin mnima. Datapath (REG y ALU) + UC. Buses.
Programas y algoritmos. Re-programabilidad vs. sistemas dedicados.
Hardware vs. software.
El ciclo de instruccin. Interrupciones.
La jerarqua de memoria. Localidad. Caches.
Programacin de alto nivel y sistemas operativos. 2
Arquitectura de Computadoras
Arquitecturas de 8/16 bits

4004 (4-bit 640B) 1971


8008 (8-bit 16KB) 1972
8080 (8-bit 64KB) 1972 6800 (8-bit 64KB) 1973
8086 (16-bit 16MB) 1978 68000 (16/32-bit 16MB) 1979
8088 (8/16-bit) 1980 68008 (8/16-bit) 1982

IBM PC Apple II/Mac Personal Computer

3
Arquitectura de Computadoras
Bibliografa bsica

Stallings Tanenbaum Null


Introduccin 12 1 1
Nmeros A AB 2
Sistemasdigitales 8 3 3
VonNeumannybuses 3 23 4
Repertoriodeinstrucciones 910 45 5
Memoria 45 2 6
Entrada/salida 6 2 7
Sistemasoperativos 7 6 8
ArquitecturaII 1116 8 910

4
Arquitectura de Computadoras
Definicin H-P
Diseode
computadoras
LGICA (Software?)

ISA (INSTRUCTION SET ARCHITECTURE): Diseo a nivel del
lenguaje de mquina, visible para el programador o compilador.
Repertorio de instrucciones, registros, tipo y tamao de operandos,
modos de direccionamiento.

IMPLEMENTACIN (Hardware?)

ORGANIZACIN: Estructura del bus, diseo CPU, sistema de
memoria, ciclo de instruccin.

TECNOLOGA: Diseo lgico, integracin, encapsulado, potencia.

La arquitectura de computadoras, como otras arquitecturas, es el arte de


determinar las necesidades del usuario de una estructura y luego
disearla para satisfacer dichas necesidades tan eficientemente como sea
posible dentro de ciertas limitaciones econmicas y tecnolgicas.
Frederick P. Brooks, IBM, 1962.
5
Arquitectura de Computadoras
Ejemplos Intel

Dos procesadores con idntica ISA pero diferente ORG: Celeron y


Celeron D.

Dos procesadores con idnticas ISA y ORG, pero diferente tecnologa:


Celeron 1GHz y Celeron 2.8GHz.

Dos procesadores con diferentes ISA, ORG y Tecnologa: Celeron e


Itanium.

ERROR COMN
Suponer que dos procesadores con idntica ISA
se pueden comparar por su reloj

OTROS EJEMPLOS
Computadora ptica (cambiando Tec puedo mantener la ISA y ORG)
Computadora analgica (cambia ORG)
Computadora vectorial (cambia ISA y ORG) 6
Arquitectura de Computadoras
Historia
Despus de 30 aos de existencia de las computadoras y 10 de los
microprocesadores [Null, Cap 1], se produce un renacimiento de la
Arquitectura en la dcada del 80, principalmente por dos motivos:

LENGUAJES DE ALTO NIVEL: Desaparece la programacin en


assembler, por lo tanto no es necesaria la compatibilidad de cdigo
objeto.
SISTEMAS OPERATIVOS: Se reducen el costo y el riesgo de lanzar
al mercado una nueva arquitectura.

Nacimiento de las nuevas Arquitecturas RISC:

ILP (pipeline + superescalares)


CACHE

Crecimiento sostenido durante 20 aos (ley de Moore)


7
Nmero de transistores por integrado.
Duplicacadadosaos,crecimientoexponencialsostenido.
8
Capacidad de los discos rgidos para PC (en GB)
Crecimientoexponencialsostenido.

9
Performance relativa a VAX-11 (1978)
Crecimientoexponencialsostenido(19862002),luegodesaceleracin.
Elaumentodelnmerodetransistoresnorepercutedirectamenteenlaperformance.
DependedelosavancesenARQUITECTURA,tantoenhardwarecomoensoftware. 10
Arquitectura de Computadoras
Clasificacin segn la aplicacin
Por qu existen arquitecturas tan diferentes? Cul es mejor? Equivalente
con la industria automotriz.

Diseo de alto rendimiento


SERVERS ($5K) [cmputo masivo, grficos]
Availability, reliability, scalability, throughput.
Diseo de bajo costo
EMBEDDED SYSTEMS ($50) [consolas, switches]
Minimizacin de memoria y potencia.
Diseo costo/rendimiento
DESKTOP ($500) [debe incluir sw!]

Marketing vs. rendimiento, informacin incompleta o vaga,


medidas inapropiadas, recurrir a la popularidad.

11
Arquitectura de Computadoras
Clasificacin a nivel lenguaje de
mquina (ISA)
1. Clase: Nmero y almacenamiento de operandos. Adems de
memoria, dnde? Utilizacin de registros.

2. Direccionamiento de memoria. Byte ordering (endianness).


Alineacin.

3. Modos de direccionamiento. Cantidad. Puede cualquiera de los


operandos estar en memoria?
ORTOGONALIDAD
4. Tipo y tamao de los operandos. Todos los modos de direccionamiento y
todos los tipos de datos disponibles
5. Tipos y variedad de operaciones. para todas las instrucciones.
Gran ventaja para los compiladores.
6. Control de flujo.

7. Codificacin del repertorio de instrucciones.


12
8. Interrupciones y modos privilegiados (user, supervisor,protected).
Clasificacin a nivel lenguaje de mquina

Almacenamiento de operandos

Add A,B,C

13
TAXONOMA DE PATTERSON: PILA, ACC, R-M, R-R, M-M
Clasificacin a nivel lenguaje de mquina

Nmero de operandos

14
15
EJEMPLO: Velocidad vs. Densidad de cdigo

Analizaremoselimpactodedosproblemasdiferentes:

M3=M1+M2 Suma de dos enteros

Bn=(An+An1)/2 Filtro en punto fijo

Sobretresarquitecturasdiferentes:

MM Arquitectura Memoria-Memoria

RM Arquitectura Registro-Memoria

RR Arquitectura Registro-Registro

16
M3=M1+M2

MM
ADDM1,M2,M3 9c FDCO1TR1C02TR2ECO3TR3=9c

RM
LOADR1,M1 (4c) LOAD:FDCOTR=4c
13c
ADDR1,M2 (5c) ADD:FDCOTRE=5c

STORER1,M3 (4c)

RR
LOADR1,M1 (4c)
15c LOAD:FDCOTR=4c
LOADR2,M2 (4c)
ADD:FDE=3c
ADDR1,R2,R3 (3c)
STORER3,M3 (4c)

17
M3=M1+M2 Bn=(An+An1)/2

MM MM
ADDM1,M2,M3 ADDAn,An1,Bn
9c 18c
DIVBn,#2,Bn
FDCO1TR1C02TR2ECO3TR3=9c

RM RM
LOADR1,M1 (4c) LOADR1,An1 (4c)
13c 18c
ADDR1,M2 (5c) ADDR1,An (5c)
STORER1,M3 (4c) DIVR1,#2 (5c)
STORER1,Bn (4c)
LOAD:FDCOTR=4c
ADD:FDCOTRE=5c

RR RR
LOADR1,M1 (4c) LOADR1,An (4c)
15c 17c
LOADR2,M2 (4c) ADDR1,R2,R3 (3c)
ADDR1,R2,R3 (3c) DIVR3,#2,R3 (3c)
STORER3,M3 (4c) STORER3,Bn (4c)
LOAD:FDCOTR=4c ADDR1,#0,R2 (3c)
18
ADD:FDE=3c
M3=M1+M2 Bn=(An+An1)/2

MM MM
ADDM1,M2,M3 ADDAn,An1,Bn
9c 18c
1 DIVBn,#2,Bn
1
FDCO1TR1C02TR2ECO3TR3=9c

RM RM
LOADR1,M1 (4c) LOADR1,An1 (4c)
13c 18c
ADDR1,M2 (5c) ADDR1,An (5c)
STORER1,M3 (4c) DIVR1,#2 (5c)
3
STORER1,Bn (4c)
LOAD:FDCOTR=4c 2
ADD:FDCOTRE=5c

RR RR
LOADR1,M1 (4c) LOADR1,An (4c)
15c 17c
LOADR2,M2 (4c) ADDR1,R2,R3 (3c)
ADDR1,R2,R3 (3c) DIVR3,#2,R3 (3c)
4 STORER3,M3 (4c) STORER3,Bn (4c) 2.5
LOAD:FDCOTR=4c ADDR1,#0,R2 (3c)
19
ADD:FDE=3c
Clasificacin a nivel lenguaje de mquina

Modos de direccionamiento

20
Clasificacin a nivel lenguaje de mquina

Repertorio de instrucciones

Todas las arquitecturas disponen de un repertorio


compuesto al menos por las tres primeras categoras.

21
Clasificacin a nivel lenguaje de mquina

Tipo y tamao de operandos


Arquitecturas con operandos de 8, 16, 32 o
64 bits.

Operandos enteros y/o punto flotante
(simple y doble precisin).

RISC vs CISC
(largo fijo vs.
variable)

CODIFICACIN DEL SET DE INSTRUCCIONES


Tamao de los programas
Implementacin del procesador (ORG+TECH)
22
Arquitectura de Computadoras
Clasificacin segn la organizacin

Estructura interna de la CPU


La unidad de control (microprogramada vs. cableada)
El camino de los datos (Datapath = Registros + ALU)
El ciclo de instruccin, segmentacin
Escalaridad
Cache de datos e instrucciones
CPI, latencia
Productividad (throughput)

23
Clasificacin segn la organizacin

CU & Datapath

24
Clasificacin segn la organizacin

Registros
Para llevar a cabo el ciclo de instruccin (CAPTACION-
DECODIFICACION-EJECUCION-INTERRUPCION) la CPU necesita
registros de almacenamiento temporario.
Registros visibles

a) Usos generales: pueden utilizarse en cualquier operacin.


b) Uso especfico: para datos o direcciones (ej. puntero de
segmento).
Registros de control

PC (puntero), IR (instruccin), MAR (direccin) y MBR (datos)


Registros de estado

PSW (program status word)

25
Clasificacin segn la organizacin

El ciclo de instruccin

CAPTACION DE
MEMORIA F
LA INSTRUCCION

UC DECODIFICACION D

CALCULO DIR
ALU
DEL OPERANDO
CO

MEMORIA CAPTACION DEL FO


OPERANDO

EJECUCION DE
ALU
LA INSTRUCCION E

26
Arquitectura de Computadoras
TECNOLOGA
Tecnologas que condiciona el diseo de la ISA:

Circuitos integrados (densidad de transistores 55%/ao)

DRAM semiconductora (densidad celdas 40-60%/ao)

Discos magnticos (capacidad 100%/ao)

Networking (ancho de banda 100%/ao)

La ISA debe sobrevivir a lo largo de ciclos de 5 aos (2 de


diseo + 3-2 de produccin).

27
Tecnologa
INTEGRACIN
Tecnologa del proceso CMOS ( celda DRAM, expected
average half-pitch of a memory cell)

180nm 1999/2000 PII


130nm 2000/2001
90nm 2002/2003
65nm Actual PIV,Core (gate35nm)
45nm 2008? Gatemetlico
...
16nm 2018? LIMITE?
gatede5nm,tunneling

Un elemento ms pequeo implica mayor cantidad de


transistores disponibles, conmutacin ms rpida, menor
energa y menor temperatura. 28
Tecnologa
INTEGRACIN (cont)
Lmites al tamao del intregrado:
Potencia (max ~70W)
Yield del waffer (cuntos fallan)
Encapsulado (nmero de patas)

Condiciona la cantidad disponible de


transistores. Compromiso entre:
CU (cantidad de instrucciones y modos
de direccionamiento)
Registros (cantidad y tamao)
ALU (funcionalidad, fp?)
CACHE

29
Arquitectura de Computadoras
RESMEN

SW DISEO DEL REPERTORIO


DE INSTRUCCIONES (ISA)
Arquitectura
de
computadoras
HW
Implementacin

ORGANIZACION TECNOLOGIA

30
PRCTICA DE REPASO
Arquitecturas conocidas

31
32
Consolas de juego
4taGeneracin 5taGeneracin 6taGeneracin 7maGeneracin
Ao 1990 1995 2000 2005
Bits 16b 32b 64b 128b
SegaGnesis SegaSaturn SegaDreamcast
SEGA
Motorola68000 HitachiSupeHRISC HitachiSuperHRISC
SuperNintendo Nintendo64 NintendoGamecube NintendoWii
NINTENDO
WDCW65C816 MIPSR4200 POWERGekko POWERBroadway
PlayStation PlayStationII PlayStationIII
SONY
MIPS3000 EmotionEng.(MIPS) POWERCell
Xbox Xbox360
MICROSOFT
PentiumIII POWERXenon
Soporte Cartridge CD DVD Bluray
Conectividad Ethernet WiFi
Equiv PII/PowerPC PIII/PIV/AMDK7 Core/ADM64

33