Estructura de Computadores I
Profesores
Patricia González Gómez (Coordinadora, Teoría)
Despacho D 1.13
Extensión 1363
[email protected]
Margarita Amor López (Problemas, Prácticas)
Despacho D 1.15
Extensión 1215
[email protected]
Diego Andrade Canosa (Prácticas)
Despacho D 0.03
Extensión 1298
[email protected]
Emilio José Padrón González (Prácticas)
Despacho S 0.2
Extensión 1205
[email protected]
Objetivos
El objetivo de esta asignatura es el estudio de la
arquitectura, organización, función y diseño del
procesador de un computador.
Temario
Introducción a los computadores
1.
2. El repertorio de instrucciones
3. Formatos de datos y aritmética de los computadores
4. El procesador: camino de datos y unidad de control
5.
6. Segmentación avanzada
Introducción a los procesadores segmentados
Prácticas
Introducción al hardware del PC
Introducción al lenguaje ensamblador
1.
2.
3. Codificación de las instrucciones
4. Llamadas a subrutinas
5. Operaciones aritméticas
6. Saltos
7. Manipulación de cadenas de caracteres
8. Ejecución monociclo/multiciclo
9. Operaciones en punto flotante
10. Introducción al procesador segmentado
11. Técnicas de procesamiento de saltos
12. Planificación dinámica
Simula3MS
http://simula3ms.des.udc.es/
Horario
Lunes
Martes
15:30
16:30
17:30
18:30
19:30 Prácticas
Miércoles Jueves
Teoría
Teoría
Problemas
Teoría
Viernes
Prácticas
Prácticas
Prácticas
Planificación
Lunes
Martes
Miércoles
Jueves
1
Viernes
2
5
12
6
Seminario PC
(grupos 1 y 2)
18:30 - Aula 2.3.
13
7
FESTIVO
14
Comienzan los
laboratorios
FESTIVO
19
26
20
27
21
28
8
Seminario PC
(grupos 3 y 4)
18:30 - Aula 2.3.
15
Seminario
Simula3MS
18:30 - Aula 2.3.
22
29
9
16
23
30
Bibliografía
• Patterson, D.A. y Hennessy, J.L. Estructura y diseño de
computadores: interficie circuteria/programación. Reverté. 2000.
Patterson, D.A. y Hennessy. J.L.. Computer organization and desing. Morgan Kaufmann
Publishers. 3Edición. 2005.
• Hennesy, J.L. y Patterson, D.A. Computer Architecture, A
Quantitative Approach. Morgan Kaufmann Publishers. 4Edición. 2007.
Hennesy, J.L. y Patterson, D.A. Computer Architecture, A Quantitative Approach. Morgan
Kaufmann Publishers. 3Edición. 2003.
Evaluación
• Parte de prácticas (20% nota final)
– Asistencia obligatoria al laboratorio
– Entrega de boletines a petición de los profesores de laboratorio
• Parte de teoría (80% nota final)
– Examen escrito
Tema 1.
Introducción a los computadores
Índice
•
Introducción
– Unidades funcionales básicas
– Organización estructural de un computador
– Evolución del software
– Evolución del hardware
• Perspectiva histórica
• Evaluación del rendimiento
– Medidas del rendimiento
– Programas de evaluación del rendimiento
– Ley de Amdahl
Unidades funcionales básicas
UNIDAD CENTRAL
DE PROCESO
CONTROL
A.L.U.
MEMORIA
ENTRADA /
SALIDA
Unidades funcionales básicas
La unidad central de
proceso y su disipador
Disquetera, unidad de
disco duro.
La memoria RAM de
los computadores PC-compatibles.
Conectores de los buses ISA, PCI y AGP
Unidades funcionales básicas
Conectores buses
Zocalo de la
CPU
Ranuras para
Instalar DIMM
(Dual Inline
Memory
Module)
Placa base
o placa madre
Procesador
Organización estructural de un computador
Evolución del software
HARDWARE
SOFTWARE
PARA EL SISTEMA
SOFTWARE
PARA LAS APLICACIONES
High-level
language
program
(in C)
Assembly
language
program
(for MIPS)
swap(int v[], int k)
{int temp;
temp = v[k];
v[k] = v[k+1];
v[k+1] = temp;
}
C compiler
swap:
muli $2, $5,4
add $2, $4,$2
lw $15, 0($2)
lw $16, 4($2)
sw $16, 0($2)
sw $15, 4($2)
jr $31
Assembler
Binary machine
language
program
(for MIPS)
00000000101000010000000000011000
00000000100011100001100000100001
10001100011000100000000000000000
10001100111100100000000000000100
10101100111100100000000000000000
10101100011000100000000000000100
00000011111000000000000000001000
Evolución del hardware
• La evolución de los computadores se ha caracterizado por:
– Aumento de la velocidad del procesador
– Disminución del tamaño de los componentes
– Aumento del tamaño de memoria
– Aumento de la capacidad de E/S y de su velocidad
RENDIMIENTO
COSTE
AÑO
1951
1965
1975
1995
TECNOLOGÍA
RELACIÓN RENDIMIENTO/UNIDAD DE COSTE
Válvula de
vacío
Transistor
Circuito
integrado
VLSI
1
35
900
24000000
Evolución del hardware
Ley de Moore
Evolución del hardware
Evolución de las memorias:
Evolución de la familia x86
Pentium 4
1400
Pentium III
80486Pentium
80386
80286
8080
4004
0,74
2
8
12
100
33
200
200
233
550
400
400
333
1971
1974
1979
1982
1985
1989
1993 1995
1997
1998
1998
1999
1999
2000
Año
1600
1400
1200
1000
800
600
400
200
0
)
z
H
M
(
i
d
a
d
c
o
e
V
l
Breve historia de los computadores
•
Antecedentes:
– Ábaco (3000 A.C.)
– Regla de cálculo (1630):
basado en logaritmos
•
– Telar Jaquard (1801)
• Primer programa almacenado (en tarjetas
metálicas)
ÁBACO
TELAR
REGLA DE CÁLCULO
Breve historia de los computadores
– Pascal: calculadora mecánica
– Babbage: máquina analítica
(relés)
(1642)
(1834)
• Generación cero (-1945)
– Computadoras mecánicas
• Almacenaba números
• Precisión de 6 dígitos
• Novedosa estructura:
– Memoria
– Unidad de computo
– Entrada/salida
– Calculadoras automáticas
(finales de los años 30)
RELE
ERA MECÁNICA
PASCALINA
MÁQUINA DE BABBAGE
Breve historia de los computadores
• Primera Generación (1945-1955)
– Los computadores usaban válvulas
de vacío
– ENIAC, primer ordenador
electrónico digital
• 30 toneladas, 140 Kw
• 6000 interruptores
– Sucesores:
• EDVAC (1945): programa
almacenado en memoria
IAS Machine (1946): máquina
de von Neumann
•
• UNIVAC (1951): primer
ordenador digital comercial
(¡¡48 unidades!!)
VÁLVULAS DE VACÍO
Eckert y Mauchly con el ENIAC
UNIVAC
Breve historia de los computadores
• Segunda Generación (1955-1965)
– Se inventa el transistor (1948):
primer paso auténtico hacia la
miniaturización
– TX0, primer computador
transistorizado
– DEC lanza el PDP-1 (1961)
• Comienza la industria de los
minicomputadores
– IBM saca la 7090 para cálculo
científico y la 1401 para
aplicaciones comerciales
– CDC 6600, primera máquina
paralela (1964)
• 10 veces más rápida que la
anterior
• Su diseñador: CRAY
TX0
IBM 1401
PDP-1
Breve historia de los computadores
• Tercera Generación (1960-1980)
– Se inventa el circuito integrado de
silicio
– Computadores más pequeños, más
rápidos y más baratos
– IBM S/360 (1964)
– DEC distribuye el PDP-8 por las
universidades
• Primer miniordenador comercial de
éxito inmediato
– Intel 4004 (1971)
• 2300 transistores
• 4bits
PRIMER CIRCUITO INTEGRADO
IBM S/360
Intel 4004
Breve historia de los computadores
• Cuarta Generación (1980 - )
– VLSI: Decenas y centenas de
millones de transistores en un chip
– Nace el microprocesador
• Unidad de control + ALU
– IBM PC
• Componentes estándares
• Arquitectura abierta
• Documentado
• Sin patentes
• Sistema operativo independiente
– En 1983 Compaq saca el primer IBM
clónico
– Caída de precios
PENTIUM 4
i386
Breve historia de los computadores
• Actualmente:
- Sistemas empotrados
- Grandes sistemas de computadores
- Múltiples procesadores
(Supercomputadores)
- Múltiples computadores (clusters,
grids).
La crisis del hardware
Procesadores multicore
GPU (Graphic Processing Unit)
Evaluación del rendimiento
Medidas del rendimiento
• Tiempo de reloj: incluye accesos a disco, a memoria, operaciones
E/S, etc.
• Tiempo de ejecución de CPU
TCPU = NI " CPI " T =
NI " CPI
F
CPI =
"
CPIiIi
NI
!
• Se puede aumentar el rendimiento:
– Aumentando la frecuencia de reloj
!
– Disminuyendo el número de ciclos por instrucción
– Disminuyendo el número de instrucciones para ejecutar un programa
Evaluación del rendimiento
• Métricas populares del rendimiento
– MIPS (millones de instrucciones por segundo)
MIPS=
NI
TCPU " 10
6
• Problemas:
– No se pueden comparar computadores con diferentes repertorios de
!
instrucciones
– Varía entre programas en el mismo computador
– Puede variar inversamente al rendimiento
Evaluación del rendimiento
• Métricas populares del rendimiento
– MFLOPS (millones de operaciones en punto flotante por
segundo)
MFLOPS=
FLOPs
TCPU " 10
6
• Problema:
!
– Es dependiente del programa
Evaluación del rendimiento
Evaluación del rendimiento
Evaluación del rendimiento
• Ley de Amdahl
La mejora obtenida en el rendimiento al utilizar algún modo de
ejecución rápido está limitada por la fracción de tiempo que se
puede utilizar ese modo más rápido
A =
Tantes
Tdespues
Tdespues =
Tafectado
Am
+ Tno _ afectado
!
!
A =
1
!
(1" Fm ) +
Fm
Am
Fm
Am
Fracción de tiempo afectado por la mejora
Factor de mejora en la parte alterada
!
!
Comentarios de: Estructura de Computadores I (0)
No hay comentarios