Anda di halaman 1dari 63

ARQUITECTURA DE COMPUTADORAS ARC-115 INTRODUCCION

En nuestros tiempos uno de los principales avances mas sobresalientes del siglo XX es el microprocesador, su presencia a cambiado de manera drstica lo que percibimos del mundo. Ninguna otra invencion se ha diceminado tan rapido por todo el mundo o ha tocado tan profundamente tantos aspectos de la existencia humana.

CONTENIDO
1. Diferentes niveles en la arquitectura de un computador. Mquinas virtuales 2. Mquinas multinivel actuales. 3. Evolucin histrica de las mquinas multinivel. 4. Prestaciones

1. Diferentes niveles en la arquitectura de un computador


COMPUTADORA: Dispositivo digital de programa
almacenado, electronica y de proposito general Un computador digital es una mquina que puede resolver problemas ejecutando ciertas instrucciones. Un programa es una secuencia de instrucciones. Los circuitos electrnicos de cada computadora reconocen un conjunto limitado de instrucciones muy simples. Lenguaje mquina es el conjunto de instrucciones bsicas de una computadora.
3

TRADUCTORES
Utilizar lenguaje mquina es difcil y tedioso. Solucin:
sea L1 el lenguaje mquina y L2 un lenguaje ms fcil de utilizar
programa en L2 compilacin (compilador) interpretacin (intrprete) programa en L1
4

MQUINAS VIRTUALES
Se puede imaginar la existencia de una
mquina virtual cuyo lenguaje mquina es L2. Se pueden crear L3, L4... cada uno ms fcil . de utilizar. nivel n
Mn con Ln

.
M3 con L3

nivel 3 nivel 2 nivel 1


5

M2 con L2

M1 con L1

2. MQUINAS MULTINIVEL ACTUALES


nivel 5
Lenguajes de alto nivel

Traduccin (compilador) nivel 4


Lenguaje ensamblador

Traduccin(ensamblador) nivel 3
Sistema operativo

Interpretacin (sistema operativo) nivel 2


Mquina convencional

La mayora de las mquinas actuales constan de 6 niveles. Los microprogramas son directamente ejecutados por el hardware.

Interpretacin (microprograma) nivel 1


Microprogramacin

Ejecutados directamente nivel 0


Lgica digital

Nivel 0: nivel de lgica digital


Es el hardware de la mquina. El nivel inferior sera el nivel de dispositivo. En este nivel:
Puertas lgicas Circuitos integrados Circuitos combinacionales Circuitos aritmticos Relojes Memorias Microprocesadores Buses

Nivel 1: nivel de microprogramacin


Existe un programa llamado microprograma. La funcin del microprograma es interpretar
las instrucciones del nivel 2. En algunas mquinas no existe el nivel de microprogramacin.

Nivel 2: nivel de mquina convencional


Cada fabricante publica el Manual de
referencia del lenguaje mquina para cada uno de los computadores. Las instrucciones del nivel de mquina las interpreta el microprograma. En las mquinas en las que no existe el nivel de microprogramacin, las instrucciones del nivel de mquina son realizadas directamente por los circuitos electrnicos. 9

Nivel 3: nivel del sistema operativo


La mayora de las instrucciones de este nivel
estn tambin en el nivel 2 pero adems tiene un nuevo conjunto de instrucciones, una organizacin diferente de la memoria, posibilidad de ejecutar 2 o ms programas ... Las nuevas instrucciones las interpreta el sistema operativo. Las que son idnticas a las del nivel 2 las lleva a cabo el microprograma. 10

Nivel 4: nivel del lenguaje ensamblador


Los niveles 4 y superiores son utilizados por
los programadores de aplicaciones. Los niveles inferiores estn diseados para ejecutar los intrpretes y traductores de los niveles superiores y son escritos por los programadores de sistemas. El ensamblador es el programa que lleva a cabo la traduccin de un programa del nivel 4.
11

Nivel 5: nivel de lenguajes de alto nivel


Los lenguajes de alto nivel son ms fciles de
utilizar que los lenguajes de niveles inferiores. Son utilizados por los programadores de aplicaciones. Los traductores de programas en lenguaje de alto nivel pueden ser compiladores o intrpretes.
12

3. EVOLUCIN HISTRICA DE LAS MQUINAS MULTINIVEL


Historia de la arquitectura de computadoras
La arquitectura de los computadoras ha ido evolucionando a lo largo de la historia. Se divide la historia en distintas etapas llamadas generaciones.

13

Tecnologa:Computadores mecnicos o
Personas destacadas:

Generacin 0: 1642-1945

electromecnicos con muchas limitaciones.

Blaise Pascal construy en 1642 una mquina calculadora para sumar y restar. Charles Babbage construy en 1834 de propsito general (almacn, taller y seccin de E/S). Lady Ada Augusta Lovelace en 1843 sugiri la idea de manejar las tarjetas perforadas en la maquina de Babbge, y asi surgio la primera programadora de computadora Aiken construy la Mark I en 1944, inspirado en los 14 estudios de Babbage.

1 Generacin: 1945-1955 Tecnologa:


Vlvula electrnica de vaco.

Modelos:

ENIAC (1946): 18.000 vlvulas, 30 toneladas, 1400 m,


100 Kw, 5.000 sumas por segundo. EDSAC (1949): primer ordenador con programa almacenado. UNIVAC: primer ordenador comercial.

Personas destacadas:

Jonh Von Neumann establece un modelo de la

estructura de un ordenador (memoria,U.A.L., U. de control y U. de E/S). Crea la idea de computador con programa almacenado.
15

1 Generacin Modo de funcionamiento:

Se programa en lenguaje mquina, propio de

cada mquina y muy complicado. Se desconocen los leng. de programacin. No existe S.O. Se realiza el programa cableado, se solicita hora para la mquina, se inserta el panel de conexiones en el computador para ejecutar el programa. Se resolvan clculos numricos. A principios de los 50 se mejor el procedimiento con las tarjetas perforadas. 16

2 Generacin: 1955-1965
Tecnologa:
Transistor (Bardeen-Brattain, 1947). Ventajas: menor
espacio, menor consumo, ms barato y mayor fiabilidad. Esto hace disminuir el precio y tamao de los computadores.

Modelos:

PDP-1 de DIGITAL Lenguajes de alto nivel : FORTRAN, COBOL, ALGOL,

Modo de funcionamiento:

PL/1. Se escribe el programa en papel, se perfora en tarjetas, se lleva al operador, se recoge el listado de impresora. Sistema de procesamiento por lotes (con S.O.)
17

3 Generacin: 1965-1980
Tecnologa:
3000)

Circuitos integrados SSI (hasta 100) y MSI (100-

Modelos: IBM sistema 360 y PDP-8 (DIGITAL) Modo de funcionamiento:


Lenguajes de alto nivel BASIC y PASCAL S.O con multiprogramacin:
Divisin de la memoria. Procedimientos de spooling (operacin simultnea de perifricos conectados en lnea). Tiempo compartido. 18

4 Generacin: 1980-1990
Tecnologa:
30000)

Se integra la UCP en un slo chip: el microprocesador. Circuitos integrados LSI (3000-30000) y VLSI (ms de

Modelos: IBM PC (1981), IBM PC XT (1982), IBM PC AT Modo de funcionamiento:

(1984), IBM PS/2 (1987), VAX (DIGITAL,1980), CRAY X-MP (1983)

Software fcil de usar. Sistemas operativos MS-DOS, UNIX.. Sistemas operativos de red y sistemas operativos
distribuidos.
19

5 Generacin: 1990 en adelante Tecnologa:


Circuitos con ms de un milln de
componentes. Nuevas arquitecturas: paralelismo. Tecnologa ptica.

Modelos:

CONNECTION MACHINE, mquina masivamente


paralela.

Modo de funcionamiento:

Inteligencia artificial y sistemas expertos.


20

Evolucin de los niveles


Los primeros computadores digitales (aos 40) slo tenan
2 niveles (convencional y lgica digital). Los circuitos digitales eran voluminosos, poco confiables y difciles de construir. El nivel de microprogramacin se aadi para: simplificar la electrnica facilitar la escritura de compiladores ejecutar los programas ms rpidamente (ROM ms rpida que la RAM) en los 70 estaba plenamente difundido En los 50 aparecieron los ensambladores y compiladores. En los 60 aparece el sistema operativo.

21

Evolucin de los niveles


Cuanto ms complicado el lenguaje mquina, ms
grande, complicado y lento el microprograma (ya que necesitan procedimientos). La velocidad de la memoria RAM se aument con el avance de la tecnologa (memorias de semiconductores). Es difcil escribir, depurar y mantener el microcdigo. A principios de los 80 se elimina el nivel de microprogramacin para dar paso a las mquinas RISC.
22

PRESTACIONES

23

Estructura y funcionamiento

La estructura es el modo en que los componentes estn interrelacionados. El funcionamiento es la operacin de cada componente individual como parte de la estructura.

Funcionamiento

Las funciones del computador son: Procesamiento de datos Almacenamiento de datos Transferencia de datos Control

Estructura del nivel superior


Computador Secundarios
CPU Memoria principal

Computador

Sistemas de interconexin Entrada/ salida

Lneas de comunicacin

Estructura de la CPU
CPU
Computador
E/S Bus del sistema Memoria CPU

Registros

Unidad aritmticolgica

Interconexin interna de la CPU Unidad de control

Estructura de la unidad de control


Unidad de control
CPU
ALU Bus interno Registros Unidad de control

Lgica secuencial

Registros y decodificadores de la unidad de control

Memoria de control

EL CPU (Unidad Central de Proceso)


No se puede mostrar la imagen en este momento.

La Unidad central de proceso o CPU, se puede definir como un circuito microscpico que interpreta y ejecuta instrucciones. La CPU se ocupa del control y el proceso de datos en los ordenadores. Habitualmente, la CPU es un microprocesador fabricado en un chip, un nico trozo de silicio que contiene millones de componentes electrnicos.

EL CPU (Unidad Central de Proceso) El microprocesador de la CPU est formado por una unidad aritmtico-lgica que realiza clculos y comparaciones, y toma decisiones lgicas (determina si una afirmacin es cierta o falsa mediante las reglas del lgebra de Boole); por una serie de registros donde se almacena informacin temporalmente, y por una unidad de control que interpreta y ejecuta las instrucciones.

EL CPU (Unidad Central de Proceso)


Para aceptar rdenes del usuario, acceder a los datos y presentar los resultados, la CPU se comunica a travs de un conjunto de circuitos o conexiones llamado bus. El bus conecta la CPU a los dispositivos de almacenamiento (por ejemplo, un disco duro), los dispositivos de entrada (por ejemplo, un teclado o un mouse) y los dispositivos de salida (por ejemplo, un monitor o una impresora).
No se puede mostrar la imagen en este momento.

LA MEMORIA La memoria de un computador se puede definir como los circuitos que permiten almacenar y recuperar la informacin. En un sentido ms amplio, puede referirse tambin a sistemas externos de almacenamiento, como las unidades de disco o de cinta. Hoy en da se requiere cada vez ms memoria para poder utilizar complejos programas y para gestionar complejas redes de computadores.
D ir e c c io n e s C lu la s R W de m e m o r ia D a to s

LA MEMORIA Jerarqua de memoria En un ordenador hay una jerarqua de memorias atendiendo al tiempo de acceso y a la capacidad que normalmente son factores contrapuestos por razones econmicas y en muchos casos tambin fsicas. Comenzando desde el procesador al exterior, es decir en orden creciente de tiempo de acceso y capacidad, se puede establecer la siguiente jerarqua:

LA MEMORIA
Registros intermedios: Constituyen un paso intermedio entre el procesador y la memoria, tienen un tiempo de acceso muy breve y muy poca capacidad. Memorias cach: Son memorias de pequea capacidad. Normalmente una pequea fraccin de la memoria principal. y pequeo tiempo de acceso. Este nivel de memoria se coloca entre la CPU y la memoria central. Hace algunos aos este nivel era exclusivo de los ordenadores grandes pero actualmente todos los ordenadores lo incorporan.

LA MEMORIA
Dentro de la memoria cach puede haber, a su vez, dos niveles denominados cach on chip, memoria cach dentro del circuito integrado, y cach on board, memoria cach en la placa de circuito impreso pero fuera del circuito integrado, evidentemente, por razones fsicas, la primera es mucho ms rpida que la segunda. Existe tambin una tcnica, denominada Arquitectura Harvard, en cierto modo contrapuesta a la idea de Von Newmann, que utiliza memorias cach separadas para cdigo y datos.

LA MEMORIA Registros de procesador: Estos registros interaccionan continuamente con la CPU (porque forman parte de ella). Los registros tienen un tiempo de acceso muy pequeo y una capacidad mnima, normalmente igual a la palabra del procesador (1 a 8 bytes).
No se puede mostrar la imagen en este momento.

ENTRADA Y SALIDA Funciones que realiza Vamos a sealar las funciones que debe realizar un computador para ejecutar trabajos de entrada/salida: Direccionamiento o seleccin del dispositivo: que debe llevar a cabo la operacin de E/S. Transferencia de los datos: entre el procesador y el dispositivo (en uno u otro sentido). Sincronizacin y coordinacin de las operaciones.

ENTRADA Y SALIDA Definiremos una operacin de E/S como el conjunto de acciones necesarias para la transferencia de un conjunto de datos (es decir, una transferencia completa de datos). Para la realizacin de una operacin de E/S se deben efectuar las siguientes funciones: Recuento de las unidades de informacin transferidas (normalmente bytes) para reconocer el fin de operacin. Sincronizacin de velocidad entre la CPU y el perifrico.

ENTRADA Y SALIDA Deteccin de errores (e incluso correccin) mediante la utilizacin de los cdigos necesarios (bits de paridad, cdigos de redundancia cclica, etc.) Almacenamiento temporal de la informacin. Es ms eficiente utilizar un buffer temporal especfico para las operaciones de E/S que utilizan el rea de datos del programa. Conversin de cdigos, conversin serie/paralelo, etc.

ENTRADA Y SALIDA

BUSES DEL SISTEMA Funciones que realiza El bus se puede definir como un conjunto de lneas conductoras de hardware utilizadas para la transmisin de datos entre los componentes de un sistema informtico. Un bus es en esencia una ruta compartida que conecta diferentes partes del sistema, como el microprocesador, la controladora de unidad de disco, la memoria y los puertos de entrada/salida (E/S), para permitir la transmisin de informacin.

BUSES DEL SISTEMA En el bus se encuentran dos pistas separadas, el bus de datos y el bus de direcciones. La CPU escribe la direccin de la posicin deseada de la memoria en el bus de direcciones accediendo a la memoria, teniendo cada una de las lneas carcter binario.

BUSES DEL SISTEMA Evolucin de los Buses de Datos y de Direccin


PROCESADOR 8086 8088 80186 80188 80286 80386 SX 80386 DX 80486 DX 80486 SX PENTIUM PENTIUM PRO Bus de direcciones (bits) 20 20 20 20 24 32 32 32 32 32 32 Bus de datos (bits) 16 8 16 8 16 16 32 32 32 64 64

BUS DE DATOS
Transmite datos. Recuerde que a este nivel no existe diferencia alguna entre datos y instrucciones. La anchura del bus es un factor clave a la hora de determinar las prestaciones. 8, 16, 32, 64 bits.

BUS DE DIRECCION
Designa la fuente o destino del dato. Ejemplo: cuando el procesador desea leer una palabra (datos) de una determinada parte en la memoria. La anchura del bus determina la mxima capacidad de memoria posible en el sistema. Ejemplo: 8080 tiene un bus de direccin de 16 bits, lo que supone 64k de espacio para direcciones

Bus de control
Informacin sobre seales de control y sobre temporizacin:
Seal de escritura/lectura en memoria. Peticin de interrupcin. Seales de reloj.

Esquema de interconexin mediante un bus

CPU

Memoria

Memoria

E/S

E/S

Lneas de control Lneas de direccin Lneas de datos

Bus

Rojos y con ruedas?


Cmo son los buses?
Es un conjunto de conductores elctricos paralelos. Lneas de metal Estos conectores se graban en la placa madre.
Ejemplo: PCI

Varias tarjetas.

Problemas encontrados en el bus


Si se conecta un gran nmero de dispositivos al bus se producen:
Retardos de propagacin
Si el control del bus pasa de un dispositivo a otro, puede afectar sensiblemente a las prestaciones.

La mayora de los sistemas utilizan varios buses para solucionar estos problemas.

Arquitectura de bus tradicional


Bus local

Procesador

Cache

Controlador local de E/S Memoria principal


Bus del sistema

Red SCSI

Interfaz con el bus de expansin

Serie Modem

Bus de expansin

Arquitectura de altas prestaciones


Memoria principal

Bus local Procesador

Cache/adaptador

Bus del sistema

SCSI

FireWire

Grficos

Vdeo

LAN

Bus de alta velocidad

FAX

Interfaz con el bus de expansin

Serie Modem

Bus de expansin

Tipos de buses
Dedicados
Uso de lneas separadas para direcciones y para datos.

Multipleados
Uso de las mismas lneas. Lnea de control de direccin vlida o de datos vlida. Ventaja: uso de menos lneas. Desventajas:
Se necesita una circuitera ms compleja. Posible reduccin de las prestaciones.

Arbitraje del bus


El control del bus puede necesitar ms de un mdulo. Ejemplo: La CPU y el controlador DMA Slo una unidad puede transmitir a travs del bus, en un instantes dado. Los mtodos de arbitraje se pueden clasificar como centralizados o distribuidos.

Arbitraje centralizado
Un nico dispositivo hardware es responsable de asignar tiempos en el bus:
Controlador del bus rbitro

Puede estar en un mdulo separado o ser parte del procesador.

Arbitraje distribuido
Cada mdulo puede controlar el acceso al bus. Cada mdulo dispone de lgica para controlar el acceso.

Temporizacin
Forma de coordinar los eventos en el bus. Temporizacin sncrona
La presencia de un evento est determinada por un reloj. El bus incluye una lnea de reloj. Un nico intervalo a uno seguido de otro a cero se conoce como ciclo de bus. Todos los dispositivos del bus pueden leer la lnea de reloj. Suele sincronizar en el flanco de subida. La mayora de los eventos se prolongan durante un nico ciclo de reloj.

Temporizacin sncrona
Reloj

Inicio

Lectura

Lneas de direccin

Lneas de datos

Reconocimiento

Temporizacin asncrona

MSYN

SSYN

Lectura

Lneas de direccin

Lneas de datos

Bus PCI
Interconexin de componente perifrico. Intel cedi sus patentes al dominio pblico. 32 o 64 bits. 50 lneas.

Lneas de seal PCI obligatorias


Lneas del sistema
Incluyen reloj y registro.

Terminales de direcciones y datos


32 lneas multiplexadas para direcciones y datos. Lneas de interrupciones y lneas vlidas.

Terminales de control de la interfaz Terminales de arbitraje


Lneas no compartidas. Conexin directa al rbitro del bus PCI.

Terminales para seales de error

Lneas de seal PCI opcionales


Lneas de interrupcin
lnea no compartida.

Soporte de cache Extensin a bus de 64 bits


32 lneas adicionales. Lneas multiplexadas. 2 lneas para que los mdulos puedan usar una transferencia de 64 bits.

Lneas de test (JTAG/Boundary Scan)


Para la definicin de procedimientos de test.

rdenes del PCI


Transaccin entre un iniciador (maestro) y un objetivo. El maestro adquiere el control del bus. Determina el tipo de transaccin.
Ejemplo: lectura y escritura en E/S

Fase de direccionamiento. Una o ms fases de datos.