Sei sulla pagina 1di 49

Introduccin

What is Computer Architecture


Computer Architecture = Instruction Set Architecture + Machine Organization

The Instruction Set: a Critical Interface

software

instruction set

hardware

Instruction Set Architecture


-- Organization of Programmable Storage

-- Data Types & Data Structures: Encodings & Representations


-- Instruction Set -- Instruction Formats -- Modes of Addressing and Accessing Data Items and Instructions -- Exceptional Conditions

Example ISAs (Instruction Set Architectures)


Digital Alpha (v1, v3) HP PA-RISC (v1.1, v2.0) Sun Sparc (v8, v9) SGI MIPS (MIPS I, II, III, IV, V) Intel (8086,80286,80386, 80486,Pentium, MMX, ...)

1992-97 1986-96 1987-95 1986-96 1978-96

Organization

Capabilities & Performance Characteristics of Principal Functional Units


(e.g.,

Registers, ALU, Shifters, Logic Units, ...)

Ways in which these components are interconnected Information flows between components Logic and means by which such information flow is controlled. Choreography of FUs to realize the ISA Register Transfer Level (RTL) Description

What is Computer Architecture?


Application Operating System

Compiler

Firmware

Instr. Set Proc. I/O system Datapath & Control Digital Design Circuit Design
Layout

Instruction Set Architecture

Coordination of many levels of abstraction Under a rapidly changing set of forces Design, Measurement, and Evaluation

Forces on Computer Architecture


Technology
Applications
Computer Architecture Programming Languages

Operating Systems

History

Levels of abstraction

An important concept in computer architecture is the use of various levels of abstractions. Each level of abstraction consists of
an

interface (outside view of what it does), and an implementation (inside view of how it works)
Implementation

Interface
A B 2 x 1 Mux S Y

A NAND NAND B S NAND Y

Levels of Representation
High Level Language Program Compiler Assembly Language Program Assembler Machine Language Program
0000 1010 1100 0101

temp = v[k]; v[k] = v[k+1]; v[k+1] = temp;

Compilation vs interpretation

lw $15, lw $16, sw $16, sw $15,


1001 1111 0110 1000 1100 0101 1010 0000

0($2) 4($2) 0($2) 4($2)


0110 1000 1111 1001 1010 0000 0101 1100 1111 1001 1000 0110 0101 1100 0000 1010 1000 0110 1001 1111

Machine Interpretation Control Signal Specification


ALUOP[0:3] <= InstReg[9:11] & MASK

xito de la computadoras
Compatibilidad hacia arriba. Independencia de niveles.

The Big Picture


Since

1946 all computers have had 5 main components


Processor Input Control Memory

Datapath

Output

Components of a Computer
The functions of the different computer components are
datapath

- performs arithmetic and logic operations

e.g., adders, multipliers, shifters

memory

- holds data and instructions

e.g., cache, main memory, disk

input

- sends data to the computer


- gets data from the computer - gives directions to the other components

e.g., keyboard, mouse

output

e.g., screen, sound card


e.g., bus controller, memory interface unit

control

Breve Historia

Dispositivos mecnicos para el control de operaciones complejas (1500).

Cilindros dentados (cajas de msica).

Blaise Pascal (1623-1662) Calculadora Mecnica. Clculo de impuestos. Charles Babbage (1791-1871) Abuelo de la computadora. Tablas matemticas para la navegacin y el trabajo cientfico.

Mquina para el clculo. Tena todos los elementos que se encuentran en las computadoras actuales.

Breve Historia

Charles Babbage (1791-1871) Abuelo de la computadora. Tablas matemticas para la navegacin y el trabajo cientfico.

Mquina para el clculo. Tena todos los elementos que se encuentran en las computadoras actuales.

Mquina Analtica (Babbage)

La guerra como catalizador del avance de la computacin

Enigma (Siemens A.G)

La guerra como catalizador del avance de la computacin

Inglaterra
Alan

Turing (1912-1954)

Colossus (Bletchley Park, Inglaterra).


Tubos al vaco almacenaban el contenido de una cinta. Una segunda cinta controlaba las operaciones. La programacin se realizaba en tableros de interconexin.

Mquina de Turing
Homnculo. Elementos

Conjunto finito de caracteres (I) Conjunto finito de estados (S) Funciones

IxS IxS IxS

I S {L,R,N}=D

TM para la verificacin de parntesis I = { ( , * , ) , ; , f , s , o , otros car.}


S={ D = { L, R, N }
S

( *

R R * L L N

* R L L f N N

s N L L o N N

) ;
o. c.

La guerra como catalizador del avance de la computacin

EUA
Prosper

Eckert, John Mauchly. Computadora para el clculo de trayectoria balsticas.


ENIAC (Electrical Numerical Integrator and Computer). 18,000 bulbos (Procesamiento). Interruptores y tableros de interconexin. (programacin). No exista el concepto de programa almacenado. Operable hasta 1946.

EDVAC
Eckert, Mauchly y John Von Neumann Computadora con programa almacenado.

Antiguos sistemas de computo en Mxico

Antiguos sistemas de computo en Mxico

Antiguos sistemas de computo en Mxico

Technology => dramatic change

Processor
logic

capacity: about 30% per year clock rate: about 20% per year

Memory
DRAM

capacity: about 60% per year (4x every 3 years) Memory speed: about 10% per year Cost per bit: improves about 25% per year

Disk
capacity:

about 60% per year

Growth of capacity per DRAM chip

Performance increase of workstations

Technoloy Trends

Growth in processor performance since the mid-1980s

Bandwith over Lattency


Bandwith is the total amount of work done in a given time.

Latency (time response): is the time between the start and the completion of an event.

Performance milestones over 20 to 25 years

Performance milestones over 20 to 25 years

Clasificacin de computadoras en base a su aplicacin.

Computadoras Personales.
Buen desempeo para un usuario y bajo costo. Utilizan software de terceros. Fundamental en el desarrollo de la tecnologa.

Servidores
Manejan grandes cargas de trabajo. (1 trabajo complejo o mltiples trabajos simples). Utilizan software de caractersticas muy especficas. Amplio rango costo- capacidad. (pequeo servido a supercomputadora).

Clasificacin de computadoras en base a su aplicacin.

Computadoras Embebidas
Amplio rango de aplicaciones y desempeo. Microprocesadores especficos. Diseadas para ejecutar una aplicacin o un conjunto de aplicaciones. Factores: desempeo, costo, consumo, potencia.

Sumary of the tree mainstream computing classes

Sales of procesors

Manufacturing Pentium 4 Chips

Microprocesor Wafer

Clean Room

Yellow Room

Pentium 4 Wafer

Dimetro: 200 mm 164 P4 al 100% rea: 250 mm^2 55 millones de transistores Tecnologa de 18 micrones.

Pentium 4

AMD Opteron

Dimetro: 300mm. 117 AMD Opteron. Tecnologa 90 nm.

Potencia

Potencia

P4 3.066GHz 82 W en un rea de 1 cm^2. Intel Itanuim 2 130 W. Factores de la potencia:


Nmero de transistores que son conmutados. Velocidad de conmutacin.

Sistemas para disipar la potencia


Ventilacin, refrigeracin. Ajustar el voltaje del procesador. Reducir la frecuencia de reloj.