organizacion del computador

65
Organización del computador El computador como sistema y sus estructuras de interconexión

Upload: g-hoyos-a

Post on 03-Jul-2015

565 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Organizacion del Computador

Organización del computador

El computador como sistema y sus estructuras de interconexión

Page 2: Organizacion del Computador

Funciones de un computador

Procesamiento de Datos

Almacenamiento de Datos

Transferencia de datos entre el computador y el exterior

Control de las anteriores operaciones

Page 3: Organizacion del Computador

Componentes Principales

Procesador

• Controla el funcionamiento del computador y procesa datos

Subsistema de memoria

• Almacena Datos

Subsistema E/S

• Transfiere datos entre el computador y el entorno externo

Subsistema de interconexión

• Proporciona un medio de comunicación entre el procesador, la memoria y la E/S.

Page 4: Organizacion del Computador

Dificultades en el Estudio del computador

Existe gran variedad de subsistemas

Computadores personales

Workstation Supercomputadores

Page 5: Organizacion del Computador

Dificultades en el Estudio del computador

Procesador

Las frecuencias de funcionamiento aumenta 20%

anual

La potencia de cálculo aumenta

50% anual

Memoria

La capacidad de almacenamiento

aumenta 60% anual

Velocidad de transferencia aumenta 10%

anual

Coste por bit disminuye 25%

anual

Discos

Capacidad de almacenamiento

aumenta 60% anual

Es un campo extremadamente cambiante

Page 6: Organizacion del Computador

Niveles de descripción

Page 7: Organizacion del Computador

Niveles de descripción de un computador

Page 8: Organizacion del Computador

Arquitectura de computadores

Tiene en cuenta los siguientes elementos

Conjunto de registros visibles al programador

Conjunto de instrucciones de

máquina o ensamblador

Tipos básicos de datos soportados

por las instrucciones de

máquina

Modos de direccionamiento

Mecanismos de E/S

Page 9: Organizacion del Computador

Arquitectura Von Newman

A Von Newman se le acredita el desarrollo de la idea de controlar las operaciones de hardware a través del uso de señales de control

Page 10: Organizacion del Computador

Arquitectura Von Newman

• Para modificar como se ejecutaba el computo las primeras máquinas debían ser re-configuradas físicamente

Primeras máquinas

• Acumular la secuencia de manipulación de las señales de control requeridas para ejecutar una tarea-Programación Software

Von Newman

• Base de casi todos los computadores desde la primera generación

Arquitectura Von Newman

Page 11: Organizacion del Computador

Arquitectura Von Newman

• Datos e instrucciones (secuencias de control) estan almacenadas una memoria WR

• La ejecución ocurre en un recorrido secuencial donde las instrucciones son leídas de la memoria una a una

Características

Page 12: Organizacion del Computador

Arquitectura Von Newman

• Esquema

Page 13: Organizacion del Computador

Arquitectura Von Newman

Modulos Básicos

CPU

Realiza ejecución de instrucciones

Unidad de memoria

Almacena instrucciones y

datos

Unidad de E/S

Transfiere información entre el computador y

los periféricos

Page 14: Organizacion del Computador

Arquitectura Von Newman

Instrucciones Codificadas

Interprete de Instrucciones(UC)

ALUDatos Resultados

Page 15: Organizacion del Computador

Arquitectura Von Newman

Ejecución de Instrucciones sigue un grupo de ciclos

Determinar la dirección de la

proxima instrucción

Llamar la instruccion de

la memoria

Decodificar la instrucción

para determinar lo

que se va a desarrollar

Obtener la dirección de

las operaciones necesarias y llamar a los operandos

Ejecutar la operación con los operandos

Guardar el resultado

Estar en alerta y pendiente

de las posibles interrupciones

Page 16: Organizacion del Computador

Concepto de Programa

Se pueden interconectar diversos componentes lógicos para realizar una determinada función. El programa resultante es HW y se le denomina HARDWIRED PROGRAM (programa cableado)

En HW de uso general, realiza distintas funciones según las señales de control aplicadas.

En un nuevo caso, se pueden generar nuevos programas proporcionando nuevas señales de control.

Page 17: Organizacion del Computador

Programa

Es una secuencia de pasos

En cada paso, se realiza una operación aritmética o lógica.

Para cada paso, se requiere un conjunto de señales de control

Solución: Asociar un código específico a cada posible conjunto de señales de control, y agregar hw que interprete cada instrucción y genere las señales de control

Page 18: Organizacion del Computador

Componentes

La CPU: Compuesta de un intérprete de instrucciones (UC) y un módulo de uso general para las funciones aritméticas y lógicas.

Los datos e instrucciones deben ingresarse al sistema. Se requiere algún tipo de módulo de entrada y un módulo de salida para mostrar resultados.

Se requiere almacenar datos e instrucciones: Memoria.

Page 19: Organizacion del Computador

Componentes: Esquema de dos niveles

Page 20: Organizacion del Computador

Ciclos de Captación y Ejecución

Busca la siguiente

instrucción

Ejecuta la instrucción

Inicio Parada

Retoma ciclo

Ejecuta ciclo

Page 21: Organizacion del Computador

Ciclo de Captación

El PC posee la dirección de la próxima

instrucción a ejecutar

Procesador mueve la instrucción apuntada

por IR)

Incrementa el PC

Se interpreta la instrucción y se envían las órdenes de control.

Page 22: Organizacion del Computador

Ciclo de Ejecución

Procesador - memoria

•Transferencia de datos entre la CPU y la memoria

E/S procesador

•Transferencia entre CPU y módulo de E/S

Procesamiento

•Operaciones aritméticas y lógicas

Control

•Alteración de secuencia de control (Ej. Salto)

Page 23: Organizacion del Computador

Ejemplo de Ejecución del Programa

Ejemplo

• CPU con un solo acumulador A (16 bits)

• Suma (940)+(941)

Lenguaje simbolico Binario

Mov A, 940 1940 (H)

Add A, 941 5941 (H)

Mov 941, A 2941 (H)

Page 24: Organizacion del Computador

Interrupciones

Mecanismo por el cual los módulos pueden “interrumpir” el procesamiento normal de la CPU.

En el mismo Programa

• División por cero

• Resultado de la ejecución de una instrucción (overflow)

Temporización

• Rebose

E/S:

• Controlador de E/S (dato en memoria)

Supervisión de HardWare.

Page 25: Organizacion del Computador

Flujo de Control de Programa

Page 26: Organizacion del Computador

Ciclo de Interrupción

Procesador consulta interrupciones pendientes

Si no hay, continua la ejecución próxima instrucción

Si hay:

•Se suspende ejecución del programa actual

•Guarda el contexto (valores de registros, etc.)

•Ejecuta la rutina de atención de interrupción.

•Al terminar, retorna los valores de contexto

•continua la ejecución del programa.

Page 27: Organizacion del Computador

Transferencia de Control debido a una interrupción

Page 28: Organizacion del Computador

Interrupciones Múltiples

• Se ignoran nuevas interrupciones mientras se está atendiendo una

• Al terminar la interrupción, se detecta si hay pendientes.

• Las interrupciones se atienden en forma secuencial

Inhabilitar interrupciones (disable interrupt)

Page 29: Organizacion del Computador

Interrupciones Múltiples

Page 30: Organizacion del Computador

Interrupciones Múltiples

• Interrupciones pueden ser interrumpidas por otras de mayor prioridad

• Al terminar la de mayor prioridad, se continua ejecutando la anterior.

Prioridades

Page 31: Organizacion del Computador

Interrupciones Múltiples

Page 32: Organizacion del Computador

Secuencia temporal de múltiples interrupciones

Page 33: Organizacion del Computador

Estructura de Interconexión

Conjunto de líneas que conectan los diversos módulos

Page 34: Organizacion del Computador

Estructura de Interconexión

Memoria: N palabras de una misma longitud, cada una con una dirección única

•Señales control read y write

•La posición de memoria se especifica mediante una dirección.

Page 35: Organizacion del Computador

Estructura de Interconexión

Modulo E/S: funcionalmente similar a memoria

• Operaciones leer y escribir.

• Cada módulo puede controlar varios dispositivos

• Cada módulo identificado por un número (puerto)

• Líneas externas de datos externas E/S

• Un módulo puede enviar señales de interrupción

Page 36: Organizacion del Computador

Estructura de Interconexión

Procesador: lee instrucciones y datos

• Escribe datos procesados

• Utiliza señales para controlar el funcionamiento del sistema

• Recibe señales de interrupción

Page 37: Organizacion del Computador

Estructura de Interconexión

Page 38: Organizacion del Computador

Tipos de Transferencia

Memoria a procesador: Lectura de datos o instrucción desde memoria

Procesador a memoria: Procesador escribe un dato a memoria

E/S procesador: Procesador lee datos desde un dispositivo de E/S a través de un módulo.

Procesador a E/S: Procesador envía datos al dispositivo de E/S

Memoria a E/S y viceversa: Usando acceso directo a memoria (DMA)

Page 39: Organizacion del Computador

Buses

Camino de comunicación entre dos o más dispositivos.

• Varios dispositivos conectados, las señales transmitidas por uno de los dispositivos está disponible para los otros dispositivos Conectados al bus

Medio de transmisión compartido

Page 40: Organizacion del Computador

Buses

Varios caminos (o líneas), cada una capaz de transmitir un bits c/u

En un período de tiempo se pueden enviar un conjunto de bits.

•P.E.: Se puede enviar 8 bits (1 bytes) por 8 líneas.

Se pueden utilizar varias líneas para transmitir varios bits en forma simultanea (paralelo).

El bus que conecta los componentes principales del computador se denomina bus del sistema.

Page 41: Organizacion del Computador

Elementos de interconexión

Estructura de un bus:

•Líneas de datos

•Líneas de dirección

•Líneas de control

Page 42: Organizacion del Computador

Esquema de Interconexión mediante bus

CPU Memoria I/O

Control

Dirección

Datos

Page 43: Organizacion del Computador

Bus de Datos

Permite transmitir datos entre módulos

Llevan datos y también comandos para los dispositivos de entrada / salida.

La cantidad de líneas se denomina “anchura del bus de datos”, generalmente 8,16 0 32.

La anchura determina la cantidad de bits máximo que pueden transmitirse simultáneamente.

Si anchura es menor a la cantidad de bits de las instrucciones, se requerirá acceder a la memoria mas de un vez por cada ciclo de instrucción.

Page 44: Organizacion del Computador

Bus de Dirección

Permiten identificar el origen o destino del dato situado en el bus de datos.

La anchura del bus de direcciones determina la capacidad máxima de memoria del sistema.

Llevan direcciones de memoria en acceso a memoria, o permiten seleccionar un dispositivo conectado al bus.

Page 45: Organizacion del Computador

Bus de Control

Se utilizan para controlar el acceso y el uso de las líneas de datos y de direcciones.

Transmiten órdenes como información de temporalización entre módulos del sistema

Temporalización indican la validez de los datos y la direcciones.

Las señales de órdenes especifican las operaciones a realizar.

•Arbitraje del bus

•Sincronización de las comunicaciones

•Reloj del sistema

Son señales de control de acceso y uso del bus.

Page 46: Organizacion del Computador

Tipos de señales de Control

Write: Escritura. Indicará una escritura tanto en memoria como en un dispositivo e/s

Read: Lectura. Indicará una lectura tanto en memoria como en un dispositivo e/s

(Estas señales pueden venir fundidas en una, necesitándose sólo una señal para saber si en cada acceso del bus se lee o escribe. También pueden venir separadas las señales para acceder a memoria y e/s:

• MemRead

• MemWrite

• I/Oread

• I/Owrite)

BusRequest: Señal de solicitud de uso del bus.

BusGrant Señal que indica que se cede el bus a un dispositivo o que el bus está ocupado

InterruptRequest: Señal de solicitud de interrupción a un dispositivo

InterrruptAcknowledge: Señal de reconocimiento de que se ha producido una interrupción

Ack: Señal de reconocimiento de transferencia de datos, o de cesión del uso del bus, etc

Clock: Señal de reloj del bus (en buses síncronos)

Reset: Señal que llama al reinicio de todos los dispositivos.

Page 47: Organizacion del Computador

Protocolos de uso del bus

• Obtener el uso del bus

• Transferir la información mediante las líneas de control y dirección apropiadas.

Si un módulo desea enviar un dato a otro módulo, debe:

Page 48: Organizacion del Computador

Protocolos de uso del bus:

Son necesarios para

sincronizar la comunicación entre

dispositivos con diferentes características

de transmisión.

arbitrar la lucha que pueden emprender

varios dispositivos por acceder al uso del bus.

Dos tipos de dispositivos:

Maestros: pueden iniciar una transacción de bus

(también pueden actuar como esclavos)

Esclavos: se activan cuando reciben una

petición del bus.

Page 49: Organizacion del Computador

Jerarquías de los Buses

•Mayor retardo de propagación

•Tiempo de coordinación en el uso del bus

•Cuello de botella si las peticiones de transferencias acumuladas se aproximan a la capacidad del bus.

•Se puede resolver si se aumenta la velocidad del bus y el ancho de éste.

Si se conecta un gran número de dispositivos al bus, las prestaciones pueden disminuir

•Bus local: Conecta al procesador con la caché y con algún dispositivo E/S muy rápido.

•Bus del sistema: Conecta al procesador (a través de la cache) con la memoria del sistema y con un segundo nivel de dispositivos de velocidad media.

•Bus de expansión: Se conecta al bus del sistema y hace de interfaz entre este y los dispositivos más lentos

Es común que los computadores utilicen varios buses, normalmente organizados en forma jerárquica

Page 50: Organizacion del Computador

Arquitectura de Bus Tradicional

Page 51: Organizacion del Computador

Arquitectura de Altas Prestaciones

Page 52: Organizacion del Computador

Tipos de Buses

• Líneas asignadas a una función (datos, dirección o control) o a un subconjunto de componentes.

Dedicado:

• Uso de las mismas líneas para distintas funciones. Por ejemplo, usar líneas para envío de datos y direcciones, mediante señales de control se interpretan de una u otra forma.

• Multiplexión de división en el tiempo (TDM)

• Ventaja: Menos líneas.

• Desventaja: Mayor circuitería.

• Dedicación física: Varios buses, cada uno conecta sólo un subconjunto de módulos

Multiplexado:

Page 53: Organizacion del Computador

Método de Arbitraje

• Método que permita dar el uso del bus a un dispositivo cuando varios lo han solicitado.

Quien utiliza el bus en un determinado instante?

• Existe un controlador del bus encargado de esta sincronización

• Daisy Chain: La línea de cesión encadena a los dispositivos por orden de prioridad.

• Arbitraje paralelo: El controlador decide directamente a qué dispositivo le cede el bus

• Solamente un dispositivo de HW (controlador del bus), se encarga de asignar los tiempos en el bus

• Puede ser un módulo independiente o parte de la CPU

Centralizado:

• No existe un controlador central

• Cada módulo dispone de lógica para controlar el acceso, y en forma conjunta comparten el bus

• La relación entre los dispositivos determina la política de acceso

• Autoselección: Los dispositivos, observando alguna información, decide si toman el bus o espera una nueva contienda.

• Selección por conflictos: Los dispositivos usan el bus y determinan si existen o no colisiones.

Distribuido

Page 54: Organizacion del Computador

Temporización

En que forma se coordinan los

eventos en el bus.Síncrona:

Un reloj determina la presencia de eventos en el bus

Línea de reloj, envía señales periódicas (ciclos de reloj). Entre

una señal y otra, existe un intervalo de tiempo (time slot)

Todos los eventos comienzan el principio del time slot

Asíncrona

Los eventos ocurren como consecuencia de un evento

previo.

Page 55: Organizacion del Computador

Anchura del bus

Cuanto más ancho es el bus de datos, mayor cantidad de datos se transmiten por vez

Cuanto más ancho es el bus de direcciones, mayor es el rango de posiciones al que se puede hacer referencia.

Page 56: Organizacion del Computador

Tipos de transferencia de Datos

• maestro a esclavo

Transferencia Escritura

• esclavo a maestro

Trasferencia Lectura

Page 57: Organizacion del Computador

PC buses

• Primer Arquitectura de sistema de bus abierto para PC

• Ancho de banda de 8 bits trabajando a la frecuencia de reloj del procesador 8086 (síncrono) pero obsoleto con el 8088 que trabajaba con 16 bits

XT

Page 58: Organizacion del Computador

PC buses

•Asíncrono

•No solo se amplio el bus de datos sino también el bus de direcciones

• Es un bus de 16 bits y con un ancho de banda máximo de 16 Mbytes/seg.

AT-ISA (Industrial Standard Architecture)

Page 59: Organizacion del Computador

PC buses

BUS EISA (Extended ISA):

• Bus abierto

• Permite multiples procesos, integra en el sistema varios buses cada uno con su procesador, pero solo es usado por UNIX y Windows NT

• En una máquina EISA, puede haber al mismo tiempo hasta 6 buses principales con diferentes procesadores centrales y con sus correspondientes tarjetas auxiliares.

• En este bus hay un chip que se encarga de controlar el tráfico de datos señalando prioridades para cada posible punto de colisión o bloqueo mediante las reglas de control de la especificación EISA. Este chip actúa en la CU como un controlador del tráfico de datos.

• El mismo apareció con los equipos AT como un primer paso de avance hacia transferencia de datos a más alta velocidad y con un ancho de bus mayor, en competencia con el bus MCA lanzado por IBM en sus equipos para los mismos objetivos. Físicamente es dificil de distinguir de un conector ISA, pero sus características y gestión son diferentes.

• Ancho de bus: 32 bits Ancho de banda máximo teórico de 33 Mbytes/seg si bien en la práctica no superaban los 20 Mb/seg.

• No pudo superar al bus ISA porque aumentaba el costo $$ casi en un 50%

Page 60: Organizacion del Computador

PC buses

MCA BUS:

• Este bus está prácticamente limitado al universo IBM y en el "mundo PC" de hoy en día es muy raro encontrar el mismo fuera de dicho contexto de viejos equipos IBM.

• Bus de un ancho máximo de 32 bits y un ancho de banda máximo teórico de 40 Mbytes/seg.

• Físicamente incompatible con otro tipo de placas.

• Pero lo que es más importante el novedoso diseño de bus de IBM incluyó un circuito de control especial a Cargo del bus, que le permitía operar independientemente de la velocidad e incluso del tipo del microprocesador del sistema

Page 61: Organizacion del Computador

PC buses

• Al contrario que con el EISA, MCA y PCI, el bus VL no sustituye al bus ISA sino que lo complementa. (se acopla directamente en la CPU)

• Un PC con bus VL dispone para ello de un bus ISA y de las correspondientes ranuras para tarjetas de ampliación. En un Pc con Bus VL puede haber una, dos e incluso tres ranuras de expansión

• El VL es una expansión homogeneizada de bus local, que funciona a 32 bits, pero que pude realizar operaciones a 16 bits.

• VESA presentó la primera versión del estándar VL-BUS en agosto de 1992. La aceptación por parte del mercado fue inmediata. La velocidad con este tipo de buses depende del número de conectores, cuanto más hay mayor es la velocidad. La mejor combinación de rendimiento y funciones se da a 33 Mhz.

• Años más tarde se creó la versión 2.0 Este bus funcionaba a 64 bits y además mantenía toda la compatibilidad con el VL-BUS. Constaba hasta de 3 ranuras a 40 Mhz y dos a 50 Mhz.

LOCAL BUS

Page 62: Organizacion del Computador

PC buses

PCI BUS (Interconexión de componentes periféricos):

• El más popular de los buses

• Ancho de 32 bits o de 64 bits

• Es independiente de la CPU, ya que entre la CPU yel bus PCI se instalará siempre un controlador debus PCI. El bus PCI no depende del reloj de laCPU, porque está separado de ella por elcontrolador del bus.

Page 63: Organizacion del Computador

PC buses

RANURA AGP:

• Este tipo de ranura es una ranura especializada para tarjetas de video tipo AGP.

• Ancho de bus de 32 bits

• Ancho de banda desde los 133 Mb/seg para los primeros modelos hasta los 2 Gb/seg en las últimas versiones.

• Si bien esta ranura fue bastante popular está siendo abandonada por los principales fabricantes de placas de video y placas aceleradoras de video, los cuales se están volcando al bus PCI-X.

Page 64: Organizacion del Computador

PC buses

PCI-e (PCI Express)

• De mas popularidad en las motherboardsmodernas.

• El bus PCI-e (no debe ser confundido con elPCI-X, el cual es en cierto modo una evolucióndel PCI de 64 bits, que sigue operando enbase a la idea de una transmisión en"paralelo" de "palabras" de 64 bits)

Page 65: Organizacion del Computador

PC buses

RANURA MRS:

• Es similar geométricamente a un slot PCI-e, el mismo puede inducir a algún usuario a pensar que su motherboard tiene ranuras PCI-e y no es asi.

• Esta ranura conocida como MRS ó AMR ó AMRS (Audio/Módem Riser Slot) es una ranura específica que fue incluida en algunas generaciones de motherboards como una conexión especial para conectar ciertos módems o placas de sonido "bobas" que utilizaban para el procesamiento propio de sus funciones el procesador del sistema en el cual estaban alojadas