Professional Documents
Culture Documents
Unidad: I Semana: 1
ARQUITECTURA DE COMPUTADORAS
Tema 1: Introduccin a
Arquitectura de Computadores
Programa de Teora
1.
2.
3.
4.
5.
6.
7.
Introduccin.
Lenguaje Mquina.
Lenguaje Ensamblador.
Ruta de Datos y Unidad de Control.
Unidad Aritmtico-Lgica (ALU).
Sistema de Entrada-Salida.
Memoria.
Contenido
Qu es un computador?
Descripcin funcional:
Arquitectura de von Neumann
Orgenes y evolucin histrica.
Parmetros caractersticos de un computador.
Qu es un computador?
Concepto de computador
Ruta de datos
Unidad de Control
FSM + Datapath
Ruta de datos
Unidad de control
Estructura de un computador
Procesador
Unidad
de Control
Salida
Memoria
Ruta de datos
Unidad
AritmticoLgica
Entrada
Computador
Ruta de datos
Unidades funcionales
Unidades de interconexin
Unidad de Control
Contador de programa
Registro de instruccin
Secuenciador
Secuenciador
Captacin de la instruccin
Decodificacin de la instruccin
Ejecucin de la instruccin
Captura de operandos
Operacin
Escritura de resultados
Ejemplo de procesador
Necesidad de cmputo
Antecedentes histricos
baco
El baco
La pascalina
La mquina de
calcular de Leibniz
La era moderna
Computadores mecnicos
Charles Babbage:
Charles Babbage
Mquina de diferencias
Charles Babbage
Ada
Lovelace
Mquina analtica
Clasificadora de Hllerith
Computadores electromecnicos
Electromecnicos: Mark I
Computadores electrnicos
1 generacin: Vlvula de vaco
John Mauchly
John P. Eckert
Computadores electrnicos
2 generacin: El transistor
El transistor: 2 generacin
Shockley
Bardain
Brattain
Circuito integrado:
3 generacin
Jack Kilby
El microprocesador (4004)
4 generacin?
El Microprocesador
Parmetros caractersticos
Tamao de palabra
Frecuencia de reloj
Medidas de rendimiento
MIPS, MFLOPS
Pruebas sintticas: SPECint, SPECfp
Conceptos importantes
Estructura de un computador
Descomposicin funcional
Fundamentos de la ejecucin de un programa
Evolucin tecnolgica
Parmetros caractersticos y evaluacin del
rendimiento
Objetivos
Arquitecturas
von Neumann
Otras
Unidad Central de Procesamiento (CPU)
R.Mitnik
Responsabilidades
Requisitos
Partes de una CPU
ALU
Control & Decode
Registros
Electrnica y buses
35
ndice
Captulo 3 : Arquitecturas
3. Arquitecturas
3.1 von Neumann
3.2 Harvard
3.3 Otras (Multiprocesador, Sistemas distribuidos)
R.Mitnik
36
Introduccin
Arquitectura de Computadores
Corresponde a la estructura, organizacin, e interconexin de las
diversas partes de un computador
Cantidad de instrucciones
Tamao de las instrucciones
Maneras de acceder a memoria
Organizacin funcional
R.Mitnik
37
Registros
Interconexin entre los componentes
Mecansmos de Entrada/Salida (I/O)
Jerarquas de memoria
Introduccin
R.Mitnik
38
ndice
Captulo 3 : Arquitecturas
3.1 von Neumann
3.2 Harvard
3.3 Otras (Multiprocesador, Sistemas distribuidos)
R.Mitnik
39
Introduccin
John von Neumann (se pronuncia fon
noiman)
(28 de diciembre de 1903 - 8 de febrero de 1957)
R.Mitnik
40
Introduccin
Trabaj con Eckert y Mauchly en la
Universidad de Pennsylvania, donde
public un artculo acerca del
almacenamiento de programas.
El concepto de programa almacenado
permiti la lectura de un programa
directamente desde la memoria del
computador, as como la ejecucin de
las instrucciones del mismo sin
necesidad de un medio externo
(cinta).
(Tomado de Wikipedia: John von Neumann)
R.Mitnik
41
Memoria
CPU
Input/Output
R.Mitnik
42
Data Bus
Control
Memoria
CPU
I/O
Control
Address Bus
R.Mitnik
43
ndice
3.1 von Neumann
3.2 Harvard
3.3 Otras (Multiprocesador, Sistemas distribuidos)
R.Mitnik
44
Arquitectura Harvard
Utiliza 2 memorias independientes
Datos
Instrucciones
R.Mitnik
45
Arquitectura Harvard
Ventajas de la arquitectura Harvard
Instrucciones y datos de distinto largo
Memorias de distinto tamao
bits de direccionamiento distintos
R.Mitnik
46
Ms simple arquitectnicamente
Un solo tipo de instrucciones para acceder a memoria
Un solo bus de datos y de direcciones
Una misma forma de acceso a datos e instrucciones
Mayor flexibilidad
til para el sistema operativo
Paginacin a disco
Cdigo automodificante
47
ndice
3.1 von Neumann
3.2 Harvard
3.3 Otras (Multiprocesador, Sistemas distribuidos)
R.Mitnik
48
Multiprocesador
Procesador
Procesador
Procesador
Procesador
Memoria
local *
Memoria
local
Memoria
local
Memoria
local
Memoria Principal
I/O
* Memoria Local: mantiene una copia local de una porcin de la memoria principal
R.Mitnik
49
Multiprocesador
Ventajas
Procesamiento paralelo
Cercana entre CPUs
permite altas tasas de
transferencia de datos
Desventajas
No todo es paralelizable
R.Mitnik
50
Sistemas distribuidos
Captulo 3 : Arquitecturas
Procesador
Procesador
Memoria
Memoria
I/O
Procesador
Memoria
I/O
I/O
Red de interconexin
R.Mitnik
Arquitectura de Computadores
51
Sistemas distribuidos
Red de interconexin
R.Mitnik
52
Sistemas distribuidos
Ventajas
Procesamiento paralelo
Facilidad de incorporar y quitar
nodos del sistema
Desventajas
R.Mitnik
No todo es paralelizable
Overhead en la transferencia de datos es considerablemente
mayor
Problemas de coherencia de memorias
53
ndice
4.Unidad de Central de Procesamiento (CPU)
4.1 Partes de la CPU.
4.2 Ciclo de la Instruccin.
4.3 Conjunto de Instrucciones y tipos de
funcionalidad.
4.4 Diseo de una CPU bsica.
4.5 CISC/RISC.
4.6 Modos de direccionamiento.
4.7 Instrucciones en lenguaje de mquina.
4.8 Subrutinas y Manejo de Stack.
4.9 Interrupciones de software y hadware.
R.Mitnik
54
Introduccin
55
ndice
Captulo 4 : Unidad de Procesamiento Central (CPU)
56
Partes de la CPU
Captulo 4 : Unidad de Procesamiento Central (CPU)
Responsabilidades
Ejecutar Operaciones y Algoritmos
Controlar Flujo del Programa
Controlar Circuitos Internos
R.Mitnik
57
Partes de la CPU
Memoria
1101110111
Load (7h)
01 1100011001
00
Requisitos:
Procesar
instruccin
Leer datos
Almacenar
Temporalmente los
datos
ALU FPU
Almacenar
Resultados
R.Mitnik
ALU
9
02
1110001010
03
1110000000
04
0110011000
05
0000011000
06
0001111000
07
0000000100
08
1111000000
09
0000000101
0A 0000000000
0000001001
58
Partes de la CPU
Control de Flujo
R.Mitnik
Instruction Pointer
Mecanismos de Salto
GOTO(08h)
1110000000
04
0110011000
05
0000011000
06
0001111000
07
0000000100
08
1111000000
09
0000000101
01
ALU
Requisitos
03
00
02
Memoria
1101110111
LOAD (07h)
1100011001
ADD(09h)
1110001010
MOVE(0Ah)
4
5
0A 0000000000
0000001001
59
Partes de la CPU
Circuitos internos
Requisitos
Buses internos.
Seales de control.
ALU (funcin)
Mux
Registros (Load,etc)
Contador (Inc,
Load,etc)
R.Mitnik
contador
00000000
Ej.
implementaci
n
memoria
00
LOAD (07h)
01
ADD(09h)
02
MOVE(0Ah)
03
GOTO(08h)
04
0110011000
05
0000011000
06
0001111000
07
0000000100
08
1111000000
09
0000000101
0A
0000000000
m
u
x
registro
0001111000
A
L
U
60
Partes de la CPU
Control & Decode procesa las
instrucciones.
ROM
Espacio de Direccionamiento determina
cantidad de instrucciones
Las salidas son seales de control para
ejecutar una instruccin.
Control & Decode
Instruccin
de k bits
R.Mitnik
2k palabras
n bits por palabra
n seales de
control para
la instruccin
61
Partes de la CPU
Registros de la CPU
R.Mitnik
62
Registros de la CPU
Un procesador incluye:
registros visibles para el usuario
registros de control/estado.
Registros Visibles.
R.Mitnik
Registros de la CPU
Cuntos registros de propsito general?
ptimo entre 8 y 32
R.Mitnik
64
Registros de la CPU
De cuntos bits deben ser los registros?
R.Mitnik
65
Registros de la CPU
Registros Control/Estado.
R.Mitnik
66
Registros de la CPU
Registros Control/Estado.
R.Mitnik
Registros de la CPU
Registros Control/Estado.
R.Mitnik
68
Partes de la CPU
Ej.
Implementaci
n modificado
contador
00000000
memoria
00
LOAD (07)
01
ADD(09)
02
GOTO(0A)
03
1110000000
04
0110011000
05
0000011000
06
0001111000
07
0000000100
08
1111000000
09
0000000101
0A
0000000000
m
u
x
0001111000
A
L
U
IR
R.Mitnik
registro
Control &
Decode
Seales de
Control
69
Partes de la CPU
Partes de la CPU.
R.Mitnik
Registros
Program Counter
Instruction Register
Uso general
ALU
FPU
Control & Decode
Buses
Circuitera
70
Resumen
Resumen
Distintas arquitecturas
Partes de la CPU y sus funciones
Registros
Visibles
Control/Estado
ALU, FPU
Control & Decode
Decodificacin de instrucciones
Seales de control
Buses Internos
Circuitera
R.Mitnik
71
GRACIAS