organización y arquitectura de computadores

Post on 10-Aug-2015

26 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Organización y arquitectura de computadores

Ing. Carlos A. Arenas C.

• Atributos de un sistema que son visibles al programador

• Instrucciones, numero de bits, mecanismos E/S y técnicas de direccionamiento

Arquitectura

• Son las unidades funcionales y sus interconexiones

• Señales de control, interfaces computador periféricos, tecnología de memorias

Organización

Ejemplo

Sumar

Sumar

Multiplicar

Jerarquía

Un sistema jerárquico es un conjunto de subsistemas interrelacionados cada uno de los cuales, a su vez, se organiza en una estructura jerárquica hasta que se alcanza un nivel mas bajo del subsistema elemental.

De cada nivel al diseñador le importan la estructura y el funcionamiento

Estructura: El modo en que los componentes están interrelacionadosFuncionamiento: La operación de cada componente individual como parte de la estructura.

Funcionamiento

Las funciones básicas que un computador puede llevar a cabo son:

• Procesamiento de datos• Almacenamiento de datos• Transferencia de datos• Control

Estructura

Los cuatro componentes estructurales principales son:

CPU

MEM

CPU

E/S

BUS SIST

Registros ALU

Unidad de control

Bus interno

Unidad de control

REG

UNI CONT

ALU

BUS INT

Lógica secuencial

Memoria de control

Reg y deco de la unidad

central

La maquina de Von Neuman

La estructura general del computador IAS consta de:

• Una memoria principal que almacena tanto datos como instrucciones

• Una unidad lógico aritmética capaz de hacer operaciones con datos binarios

• Una unidad de control que interpreta las instrucciones en memoria y provoca su ejecución

• Un equipo de entrada salida dirigido por la unidad de control

Memoria principal

ALU

Unidad de control de programa

Equipos de E/S

Operación del IAS• La memoria del IAS consiste en 1000 posiciones de almacenamiento,

llamadas palabras de 40 dígitos cada una.

Segunda generación

Se caracterizo por el uso del transistor en reemplazo de los tubos de vacío aumentando la velocidad, mayor capacidad de memoria y de menor tamaño.

Tamaño de la memoria: creció de 2K a 32K palabrasTiempo de acceso a memoria: Cayó de 30 us a 1.4 usNúmero de códigos de operación: Creció de 24 a 185

Configuración del IBM 7094

Tercera generación

Esta se caracteriza por la implementación de los circuitos integrados

Ley de MooreEl número de transistores que se podían integrar en un solo chip se duplicaba cada año

• El precio de un chip ha permanecido prácticamente invariable a través de este periodo de rápido crecimiento en densidad.

• Ya que los elementos de la lógica y la memoria están más próximos en chips más densamente encapsulados, la longitud de las interconexiones eléctricas ha disminuido, incrementándose así la velocidad operativa.

• El computador es mas pequeño• Hay una reducción de las necesidades de potencia y refrigeración• Las interconexiones de CI son mucho mas fiables que las conexiones

soldadas.

El sistema 360

Fue la primera familia de computadores que se planeo. Los distintos modelos eran compatibles en el sentido de que un programa escrito para un modelo, tenia que ser capaz de ser ejecutado por otro modelo de la serie.

Las características de una familia son:• Conjunto de instrucciones similar o identico.• Sistemas operativos similares o identicos.• Velocidad creciente• Número creciente de puertos de E/S• Tamaño de memoria creciente• Coste creciente

Concepto de familia

Las diferencias se basan en tres factores:• Velocidad básica• Tamaño• Grado de simultaneidad

DEC PDP-8

Este computador era lo bastante pequeño para ser colocado en lo alto de una mesa de laboratorio. (minicomputador).

Estos utilizaban la estructura de bus llamado Omnibus. Este consiste en 96 hilos conductores separados, usados para control, direccionamiento y datos.

Memoria semiconductora

Las primeras memorias se hacían con anillos de material ferromagnético.

En 1970, Fairchild produjo la primera memoria semiconductora con relativa capacidad. Podía tener 256 bits de memoria.

Microprocesadores

El 4004 de Intel contenía todos los componentes de la CPU en un solo chip. Podía sumar dos números de 4 bits y multiplicar solo con sumas sucesivas.

El 8008 fue el primer microprocesador de ocho bits.

El 8080 fue el primer microprocesador de uso general. 8 Bits, mas instrucciones, mas rápido y alta capacidad de direccionamiento.

Microprocesadores

El 8086 fue un microprocesador de 16 bits.

El 80386 fue un microprocesador de 32 bits.

Velocidad del procesador

Entre las técnicas incorporadas a los procesadores de hoy en día están:

Predicción de ramificación: El procesador se anticipa al software y predice que ramas o grupos de instrucciones se van a procesar después con mayor probabilidad. Si el procesador acierta la mayoría de veces, puede precaptar las instrucciones correctas y almacenarlas para mantener al procesador ocupado.

Velocidad del procesador

Análisis del flujo de datos: El procesador analiza que instrucciones dependen de los resultados de otras instrucciones, o datos, para crear una organización optimizada de instrucciones.

Ejecución especulativa: Utilizando la predicción de ramificación y el análisis de flujo de datos, algunos procesadores ejecutan especulativamente instrucciones antes de que aparezcan en la ejecución del programa, manteniendo los resultados en posiciones temporales.

Equilibrio de prestacionesHay varias maneras en que se puede atacar este problema.

• Incrementar el numero de bits que se recuperan de una sola vez haciendo las DRAM mas anchas en lugar de menos profundas utilizando buses de datos mas anchos.

• Cambiar la interfaz DRAM para hacerla mas eficiente. Incluyendo una cache u otro esquema de almacenamiento temporal.

• Reducir la frecuencia del acceso a memoria incorporando, entre el procesador y la memoria principal una caches mas complejas y eficientes.

• Incrementar el ancho de banda entre el procesador y la memoria usando buses de mas alta velocidad.

Funcionamiento del computador

• La función básica de un computador es la ejecución de un programa.

• La ejecución del programa consiste en la repetición del proceso de captación de instrucción y ejecución de instrucción.

• El procesamiento que se requiere para una instrucción se llama CICLO DE INSTRUCCION

Ciclo de instrucción básico

Los ciclos de captación y ejecución

• El contador de programa PC sirve para seguir la pista de la instrucción que debe captarse a continuación.

• PC = PC + 1

Interrupciones

• Programa: Generadas por alguna condición que se produce como resultado de una instrucción. Desbordamiento aritmético, división por cero, ejecución de instrucción inexistente, acceder a espacio de memoria fuera del permitido

• Temporización: Generadas por un temporizador interno al procesador.

Interrupciones

• E/S: Generadas por un controlador de E/S, para indicar finalización sin problemas de una operación o para avisar ciertas condiciones de error.

• Fallo de hardware: Generadas por un fallo tal como la falta de potencia de alimentación o un error de paridad en la memoria.

Ejemplo

Supóngase que el procesador esta transfiriendo datos a una impresora utilizando el esquema del ciclo de la instrucción básico. ¿Que tarea hace el procesador después de cada operación de escritura?

Gestor de interrupciones

Es un programa diseñado para atender la interrupción presentada

Habilitación de la interrupción

Para permitir el uso de interrupciones, se añade un CICLO DE INTERRUPCION al ciclo de instrucción.

Funcionamiento de E/SDirect Memory Access (DMA)

Estructuras de interconexión

Memoria

Modulo E/S

Procesador

Tipos de transferencias

• Memoria a procesador: El procesador lee una instrucción o un dato desde la memoria

• Procesador a memoria: El procesador escribe un dato en la memoria

• E/S a procesador: EL procesador lee datos de un dispositivo de E/S a través de un modulo de E/S

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

• Memoria a E/S y viceversa: Intercambiar datos directamente con la memoria (DMA)

Interconexión con buses

Un bus es un camino de comunicación entre dos o mas dispositivos. Al bus se conectan varios dispositivos, y cualquier señal transmitida por uno de esos dispositivos esta disponible para que los otros dispositivos conectados al bus puedan acceder a ella.

Líneas de datos: Proporcionan un camino para transmitir datos entre los módulos del sistema.Anchura del bus de datos: entre 32 y cientos de líneas.Ejemplo: bus de 8 bits, instrucciones de 16 bits

Líneas de dirección: Se utilizan para designar la fuente o el destino del dato situado en el bus de datos.Anchura del bus de direcciones: Determina la máxima capacidad de memoria disponible.

También sirven para direccionar los puertos de E/SEjemplo: En un bus de 8 bits, la dirección 01111111 e inferiores referencian a posiciones dentro de un modulo de memoria

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

Señales de temporización: Indican la validez de los datos y direcciones.

Señales de ordenes: Especifican las operaciones a realizar.

• Escritura de memoria• Lectura de memoria• Escritura de E/S• Lectura de E/S• Transferencia reconocida• Petición de bus• Cesión de bus• Petición de interrupción• Interrupción reconocida• Reloj• Inicio

top related