Arquitectura y Ensamblaje de Computadores • Se puede definir la arquitectura de computadores como el estudio de la estructura, funcionamiento de las computadoras. • Este funcionamiento considera aspectos de hardware y el estrecho vinculo que existe con el software, especialmente, con los sistemas operativos. • Computador, dispositivo electrónico capaz de recibir un conjunto de instrucciones y ejecutarlas realizando cálculos sobre los datos numéricos, o bien compilando y correlacionando otros tipos de información.
Funcionamiento del Computador Todo PC funciona, desde un punto de vista llamado externo, con un esquema similar y muy simple a través de los periféricos de entrada (teclado, ratón, micrófono...) se introducen datos. Estos pasan a guardarse en los dispositivos correspondientes (memorias) y se incorporan a la unidad central donde se procesan. El resultado de tal procesamiento se envía a los periféricos de salida (monitor, impresora...) dando lugar a la salida de datos. Internamente, la transferencia de los datos desde los dispositivos de entrada llega a la unidad central de proceso a través de los denominados buses de datos. En el CPU se procesan y siguen el camino inverso al recorrido anteriormente: se guardan en la memoria y restantes unidades de almacenamiento y salen mediante los dispositivos de salida.
Generación de Computadores •
1ª generación: (1946-1955) Computadores basados en válvula de vacío que se programaron en lenguaje máquina o en lenguaje ensamblados.
•
2ª generación: (1953-1964) Computadores de transistores. Evolucionan los modos de direccionamiento y surgen los lenguajes de alto nivel.
•
3ª generación: (1964-1974) Computadores basados en circuitos integrados y con la posibilidad de trabajar en tiempo compartido.
•
4ª generación: (1974- ) Computadores Que integran toda la CPU en un solo circuito integrado (microprocesadores). Comienzan a proliferar las redes de computadores.
Generación de Microprocesadores Memory bus speed (MHz)
Internal clock speed (MHz)
4.77-8
4.77-8
None
4.77-8
4.77-8
16/24 bit
None
6-20
6-20
1985
32/32 bit
None
16-33
16-33
1988
16/32 bit
8
16-33
16-33
1989
32/32 bit
8
25-50
25-50
1989
32/32 bit
8
25-50
25-50
1992
32/32 bit
8
25-40
50-80
1994
32/32 bit
8+8
25-40
75-120
1979
Data/ Address bus width 8/20 bit
Level 1 Cache (KB) None
1978
16/20 bit
1982
Type/ Generation
Year
8088/ First 8086/ First 80286/ Second 80386DX/ Third 80386SX/ Third 80486DX/ Fourth 80486SX/ Fourth 80486DX2/ Fourth 80486DX4/ Fourth
Pentium/ Fifth
1993
64/32 bit
8+8
60-66
60-200
MMX/ Fifth
1997
64/32 bit
16+16
66
166-233
Pentium Pro/ Sixth
1995
64/36 bit
8+8
66
150-200
Pentium II/ Sixth
1997
64/36 bit
16+16
66
233-300
Pentium II/ Sixth
1998
64/36 bit
16+16
66/100
300-450
Pentium III/ Sixth
1999
64/36 bit
16+16
100
450-600
AMD Athlon/ Seventh
1999
64/36 bit
64+64
100-200+
500-600+
Evolución del Pentium
La Unidad Central de Proceso (CPU) •
La Unidad central de proceso o CPU, se puede definir como un circuito microscópico que interpreta y ejecuta instrucciones. La CPU se ocupa del control y el proceso de datos en los computadores. Habitualmente, la CPU es un microprocesador fabricado en un chip, un único trozo de silicio que contiene millones de componentes electrónicos.
•
El microprocesador de la CPU está formado por una unidad aritmético-lógica que realiza cálculos y comparaciones, y toma decisiones lógicas (determina si una afirmación es cierta o falsa mediante las reglas del álgebra de Boole); por una serie de registros donde se almacena información temporalmente, y por una unidad de control que interpreta y ejecuta las instrucciones.
•
Para aceptar órdenes del usuario, acceder a los datos y presentar los resultados, la CPU se comunica a través de un conjunto de circuitos o conexiones llamado bus.
•
El usuario lo hace a traves de alguna plataforma operativa (Windows, Linux)
Componentes Proceso
de
la
Unidad
Central
de
•
Unidad de control: controla el funcionamiento de la CPU y por tanto del computador.
•
Unidad aritmético-lógica (ALU): encargada de llevar a cabo las funciones de procesamiento de datos del computador.
•
Registros: proporcionan almacenamiento interno a la CPU.
•
Interconexiones CPU: Son mecanismos que proporcionan comunicación entre la unidad de control, la ALU y los registros.
La Velocidad del Procesador • • •
La velocidad de un procesador se mide en Megahertz y, mientras mayor es el número de megahertz con que trabaja el computador, tiene mayor velocidad de proceso. En realidad, los megahertz indican la velocidad del reloj interno que posee todo microprocesador. Este establece el número de pulsos que se efectúan en cada segundo. Cuanto mayor sea el número de pulsos, mayor será la velocidad del microprocesador.
¿ Como viaja la información ? Buses • •
La información viaja utilizando los buses que Son caminos de comunicación entre 2 o mas dispositivos Los buses "Son cada una de líneas metálicas de los circuitos impresos, por aquí circula todo tipo de información, que va de un dispositivo a otro".
Tipos de Buses Bus de Sistema (Procesador-Memoria) • • • • •
Corto y alta velocidad Solo necesita emparejar con la memoria Maximiza el ancho de banda procesador-memoria Conectado directamente al procesador Optimizado por transferencia de bloques de cache
Bus I/O (estándar industrial) • • •
Usualmente largo y lento Necesita empatar un amplio rango de dispositivos I/O Conectado al bus del procesador-memoria.
Características.
La capacidad de rendimiento de un BUS viene determinada por 3 parámetros: •
Ancho del BUS: numero de líneas en paralelos por las que se transmiten la info. Puede ser de 8-16-32-64 bits o incluso de 128 para las tarjetas de video.
•
Frecuencia del BUS: la frecuencia de reloj con el que el BUS trabaja (MHz).
•
Velocidad de transmisión del BUS: MB que se pueden transmitir por segundo.
Memoria Cache • •
•
El intercambio de datos entre la CPU y la memoria RAM es una de las tareas que se hacen con mayor frecuencia. Dado que la RAM es mucho más lenta que la CPU se ha incorporado a la CPU y a la Motherboard, un circuito de memoria Caché, la cuál es una memoria de alta velocidad. Esta es una de las cosas que mejora el desempeño del sistema en general. La memoria Caché es un circuito de memoria de alta velocidad en el que se almacenan bloques de instrucciones del programa en ejecución y un bloque de datos del conjunto de datos que se utilizó por ultima vez, de forma que la siguiente vez que se necesiten estos datos, se toman directamente de esta memoria.
Existen dos tipos: Cache de Primer Nivel (Level 1) • Ubicada dentro del procesador • Divida en dos partes. Para datos y para instrucciones • Utilizada unicamente por el procesador Cache de Segundo Nivel (Level 2) • Ubicada por fuera del procesador (en la placa madre) • Mantiene los ultimos datos utilizados y esta en contacto permanente con la memoria RAM. • Es de uso general para las diferentes aplicaciones (soiftware) que maneja el computador. Funcionamiento
•
•
• •
Cuando un programa está ejecutándose y la CPU necesita ir a traer datos (o más instrucciones) a la RAM, primero verifica que los datos estén en la memoria caché. Si no los encuentra en la caché, traerá una copia de esos datos de la RAM a la CPU y también realizará una copia en la memoria caché. La próxima vez que los necesita, los irá a buscar a la memoria caché, de donde los podrá extraer más rápidamente. El último bloque de datos leído desde la RAM también se copia en la memoria caché. Este bloque es, con mucha probabilidad, el mismo que se necesitará en la próxima lectura de datos.
Arquitectura Von Neumann La arquitectura Von Neumann se refiere a las arquitecturas de computadoras que utilizan el mismo dispositivo de almacenamiento tanto para las instrucciones como para los datos, los ordenadores con arquitectura Von Neumann constan de cinco partes: La unidad aritmético-lógica o ALU, la unidad de control, la memoria, un dispositivo de entrada/salida y el bus de datos que proporciona un medio de transporte de los datos entre las distintas partes.
Un ordenador con arquitectura Von Neumann realiza o emula los siguientes pasos secuencialmente: 1. Enciende el ordenador y Obtiene la siguiente instrucción desde la memoria en la dirección indicada por el contador de programa y la guarda en el registro de instrucción. 2. Aumenta el contador de programa en la longitud de la instrucción para apuntar a la siguiente. 3. Descodifica la instrucción mediante la unidad de control. Ésta se encarga de coordinar el resto de componentes del ordenador para realizar una función determinada.
4. Se ejecuta la instrucción. Ésta puede cambiar el valor del contador del programa, permitiendo así operaciones repetitivas. El contador puede cambiar también cuando se cumpla una cierta condición aritmética, haciendo que el ordenador pueda 'tomar decisiones', que pueden alcanzar cualquier grado de complejidad, mediante la aritmética y lógica anteriores. 5. Vuelve al paso 1. Hoy en día, la mayoría de ordenadores están basados en esta arquitectura, aunque pueden incluir otros dispositivos adicionales, (por ejemplo, para gestionar las interrupciones de dispositivos externos como ratón, teclado, etc).