You are on page 1of 10

UNIDAD 1.

- ARQUITECTURA DE CMPUTO

1.1 Modelos de arquitecturas de cmputo.


Se han diseado y construido cientos de tipos distintos de computadoras durante
la evolucin de la computadora digital moderna. Casi todos se han perdido en el
olvido, pero unos cuantos han tenido un impacto importante sobre las ideas
modernas.
La arquitectura de computadoras es el diseo conceptual y la estructura
operacional fundamental de un sistema de computadora, es decir, es un modelo y
una descripcin funcional de los requerimientos y las implementaciones de diseo
para varias partes de una computadora, tambin suele definirse como la forma de
seleccionar e interconectar componentes de hardware para crear computadoras
segn los requerimientos de funcionalidad, rendimiento y costo.
La siguiente tabla muestra algunos acontecimientos ms importantes de la
evolucin de las computadoras.
Ao
1834

Nombre
Mquina analtica

Hecho por
Babbage

1936

Z1

Zuse

1943
1944

COLOSSUS
Mark l

Gobierno ingls
Aiken

1946

ENIAC l

1949

EDSAC

Eckert/Mauchle
y
Wikes

1951

Whielwind l

M.I.T

1952

IAS

Von Newman

1960
1961
1962
1963

PDP-1
1401
7094
B5000

DEC
IBM
IBM
Burroughs

1964

360

IBM

1964

6600

CDC

Comentario
Primer intento por construir una
computadora digital
Primera mquina calculadora de
relevadores funcional
Primera computadora electrnica
Primera computadora
estadounidense de propsito
general
Inicia la historia moderna de la
computacin
Primera computadora de
programa almacenado
Primera computada de tiempo
lineal
Casi todas las mquinas actuales
emplean este diseo
Primera minicomputadora
Mquina pequea para negocios
Domin la computacin cientfica
Primera mquina diseada para
un lenguaje de alto nivel
Primera lnea de productos
diseada como familia
Primera supercomputadora
cientfica

1965

PDP-8

DEC

1970
1974

PDP-11
8080

DEC
Intel

1974

CRAY-1

Cray

1978

VAX

DEC

1981

IBM PC

IBM

1985
1987

MIPS
SPARC

MIPS
Sun

1990

RSC6000

IBM

Primera minicomputadora con


mercado masivo
Domin las minicomputadoras
Primera computadora de
propsito general de 8 bits en un
chip
Primera supercomputadora
vectorial
Primera superminicomputadora
de 32 bits
Inici la era de la computadora
personal moderna
Primera mquina RISC comercial
Primera estacin de trabajo RISC
basada en SPARC
Primera mquina superescalar

1.1.1 Clsicas
Estas arquitecturas se desarrollaron en las primeras computadoras
electromecnicas y de tubos de vaco. Aun son usadas en procesadores
empotrados de gama baja y son la base de la mayora de las arquitecturas
modernas.
Arquitectura Mauchley-Eckert (Jhon von Newman)
En 1943, Mauchley y su estudiante de posgrado, J. Presper Eckert, procedieron a
construir una computadora electrnica a la que llamaron ENIAC (Electronic
Numerical Integrador And Computer). ENIAC consiste en 18,000 bulbos y 1500
relevadores, pesaba 30 toneladas y concuma 140 KW de potencia. En trminos
de arquitectura, la mquina tena 20 registros, cada uno capaz de almacenar un
nmero decimal de 10 dgitos. ENIAC se programaba ajustando 6000 interruptores
de multiposicin y conectando numerosas bases con una verdadera maraa de
cables interconectores.
Von Newman se dio cuenta de que el programa poda representarse en forma
digital en la memoria de la computadora, junto con los datos. l percibi tambin
que la torpe aritmtica decimal en serie utilizada por ENIAC, en la que cada dgito
estaba representado por 10 bulbos poda ser sustituida por una aritmtica binaria.
El diseo bsico, que l describi por primera vez, ahora se conoce como
mquina de von Newman. Se us en EDSAC, la primera computadora de
programa almacenado, y sigue siendo la base de casi todas las computadoras
digitales aun ahora. La siguiente figura muestra la mquina de von Newman.

La mquina de von Newman tiene cinco partes bsicas: la memoria, la unidad


aritmtica lgica (ALU), la unidad de control y el equipo de entrada y salida. La
memoria constaba de 4096 palabras, cada una de las cuales contena 40 bits que
podan ser 0 o 1. Cada palabra contena dos instrucciones de 20 bits o bien un
entero con signo de 40 bits. Ocho bits de cada instruccin estaban dedicados a
indicar el tipo de instruccin, y 12 bits se dedicaban a especificar una de las 4096
palabras de memoria.
Dentro de la unidad de aritmtica lgica haba un registro interno especial de 40
bits llamado acumulador. Una instruccin tpica sumaba una palabra de la
memoria al acumulador o almacenaba el contenido del acumulador en la memoria.
Esta arquitectura consiste en una unidad central de proceso que se comunica a
travs de un solo bus con un banco de memoria en donde se almacenan tanto los
cdigos de instruccin del programa" como los datos que sern procesados por
este. La principal desventaja de esta arquitectura" es que el bus de datos y
direcciones nico se convierte en un cuello de botella por el cual debe pasar toda
la informacin que se lee de o se escribe a la memoria" obligando a que todos los
accesos a esta sean secuenciales.
Arquitectura Harvard
El trmino Arquitectura Harvard originalmente se refera a las arquitecturas de
computadoras que utilizaban dispositivos de almacenamiento fsicamente
separados para las instrucciones y para los datos (en oposicin a la Arquitectura
von Neumann). El trmino proviene de la computadora Harvard Mark I, que
almacenaba las instrucciones en cintas perforadas y los datos en interruptores.
Esta arquitectura surgi en la universidad del mismo nombre poco despus de que
la arquitectura, von Newman apareciera en la universidad de Princeton. Al igual
que en la arquitectura, von Newman el programa se almacena como un cdigo

numrico en la memoria pero no en el mismo espacio de memoria ni en el mismo


formato que los datos. Por ejemplo se pueden almacenar las instrucciones en
doce bits en la memoria de programa mientras los datos de almacenan en 4 bits
en una memoria aparte. En la siguiente figura se muestra la arquitectura Harvard.

Ambos buses son totalmente independientes lo que permite que la CPU pueda
acceder de forma independiente y simultnea a la memoria de datos y a la de
instrucciones. Como los buses son independientes stos pueden tener distintos
contenidos en la misma direccin y tambin distinta longitud. Tambin la longitud
de los datos y las instrucciones puede ser distinta, lo que optimiza el uso de la
memoria en general.
El hecho de tener un bus separado para el programa y otro para los datos permite
que se lea el cdigo de operacin de una instruccin, al mismo tiempo se lee de la
memoria de datos los operados de la instruccin previa. As se evita el problema
del cuello de botella de von Newman y se obtiene un mejor desempeo.
En la actualidad la mayora de los procesadores modernos se conectan al exterior
de manera similar a la arquitectura von Newman, con un banco de memoria
masivo nico, pero internamente incluyen varios niveles de memoria cach con
bancos separados en cach de programa y cach de datos, buscando un mejor
desempeo sin perder la versatilidad.

1.1.2 Segmentadas
Estas arquitecturas surgen por la necesidad de aumentar la velocidad de
procesamiento. En ellas, lo que se buscaba era mejorar el desempeo realizando
paralelamente varias etapas del ciclo de instruccin al mismo tiempo. Esto se
logra, debido a que el procesador se divide en varias unidades funcionales e
independientes las cuales se dividen entre ellas el procesamiento de las
instrucciones. Y entonces, ir transformando un flujo de datos en un proceso

comprendido por varias fases secuenciales, siendo la entrada de cada una de las
salidas de la anterior.
Supongamos que un procesador simple tiene un ciclo de instruccin sencillo
consistente solamente en una etapa de bsqueda del cdigo de instruccin y en
otra etapa de ejecucin de la instruccin. En un procesador sin segmentacin del
cauce, las dos etapas se realizaran de manera secuencial para cada una de las
instrucciones, como lo muestra la siguiente figura.

En un procesador con segmentacin del cause, cada una de estas etapas se


asigna a una unidad funcional diferente, la bsqueda a la unidad de bsqueda y la
ejecucin a la unidad de ejecucin. Estas unidades pueden trabajar en forma
paralela en instrucciones diferentes. Estas unidades se comunican por medio de
una cola de instrucciones en la que la unidad de bsqueda coloca los cdigos de
instruccin que ley para que la unidad de ejecucin los tome de la cola y los
ejecute. Esta cola se parece a un tubo donde las instrucciones entran por un
extremo y salen por el otro. De esta analoga proviene el nombre en ingls:
Pipelining o entubamiento.
En un procesador con segmentacin, la unidad de bsqueda comenzara
buscando el cdigo de la primera instruccin en el primer ciclo de reloj. Durante el
segundo ciclo de reloj, la unidad de bsqueda obtendra el cdigo de la instruccin
2, mientras que la unidad de ejecucin ejecuta la instruccin 1 y as
sucesivamente. La siguiente figura muestra este proceso.

Con la implementacin de este modelo se logr realizar ms procesos al mismo


tiempo, sin embargo, esto no fue sinnimo de rapidez.

Esto debido a que no todos los procesos se toman el mismo tiempo para
ejecutarse, lo que ocasiona una gran competencia respecto al uso de los recursos
del CPU.
Sin embargo, esta arquitectura es muy comn en el desarrollo de programas para
el intrprete de comandos, ya que se pueden concatenar comandos fcilmente
con tuberas (pipe).
Pipe-line
Consiste en la segmentacin del procesador, a lo que llamamos "pipe-line",
descomponindolo en etapas para poder procesar una instruccin diferente en
cada una de ellas y trabajar con varias a la vez. La arquitectura en pipeline
(basada en filtros) consiste en ir transformando un flujo de datos en un proceso
comprendido por varias fases secuenciales, siendo la entrada de cada una la
salida.
Es importante tener en cuenta que la arquitectura pipe-line se aplica en dos
lugares de la maquina: en la CPU y en la ALU.
Las pipe-lines, tienen diversas aplicaciones en informtica, tales como:
Pipe-lines grficos: por lo general encontrados en tarjetas grficas, consiste en
mltiples unidades aritmticas o CPUs completas, que implementan variados
escenarios de operaciones tpicas de renderizado. Ejemplo: clculos de luz y
colores, renderizado, proyeccin de perspectiva, etc...
Pipe-lines de software o tuberas: consiste en mltiples procesos ordenados de tal
forma que el flujo de salida de un proceso alimenta la entrada del siguiente
proceso. Ejemplo: los pipelines de Unix.

1.1.3 De Multiprocesamiento.
El uso de varios procesadores est motivado por consideraciones relativas a las
prestaciones y a la fiabilidad. Podemos clasificar dichos sistemas como sigue:

Multiprocesadores Dbilmente Acoplados: Consisten en un conjunto de


sistemas relativamente autnomos, en los que cada CPU dispone de su
propia memoria principal y sus canales de E/S. En este contexto se utiliza el
trmino multicomputador.
Procesadores de Uso Especfico: Tales como un procesador de E/S. En
este caso, hay un maestro, una CPU de uso general, y los procesadores de
uso especfico estn controlados por la CPU maestra a la que proporcionan
ciertos servicios.

Multiprocesadores Fuertemente Acoplados: Constituidos por un conjunto de


procesadores que comparten una memoria principal comn y estn bajo el
control de un mismo sistema operativo.
Procesadores Paralelos: Multiprocesadores fuertemente acoplados que
pueden cooperar en la ejecucin en paralelo de una tarea o un trabajo.

Caractersticas clave de un multiprocesador:


1. Posee dos o ms procesadores de uso general similares y de capacidades
comparables.
2. Todos los procesadores comparten el acceso a una memoria global
(comn). Tambin pueden utilizarse algunas memorias locales (privadas).
3. Todos los procesadores comparten el acceso a los dispositivos de E/S, bien
a travs de los mismos canales bien a travs de canales distintos que
proporcionan caminos de acceso los mismos dispositivos.
4. El sistema est controlado por un sistema operativo integrado que permite
la interaccin entre los procesadores y sus programas en los niveles de
trabajo, tarea, fichero, y datos elementales.
Organizacin
La siguiente figura describe en trminos generales la organizacin de un sistema
multiprocesador. Hay dos o ms CPUs. Cada CPU es autnoma, incluyendo una
unidad de control, una ALU, registros, y, posiblemente, cach. Cada CPU tiene
acceso a una memoria principal compartida y a dos dispositivos de E/S a travs de
algn mecanismo de interconexin. Los procesadores pueden comunicarse entre
s a travs de la memoria (mensaje e informacin de control almacenadas en
reas comunes para datos). Tambin es posible que las CPUs intercambien
seales directamente, como indican las lneas discontinuas. La memoria a
menudo se organiza de forma que sean posibles los accesos simultneos a
bloques de memoria separados.

1.2 Anlisis de los componentes.


1.2.1 CPU
La CPU (Unidad Central de Procesamiento, Central Processing Unit) es un circuito
microscpico que interpreta y ejecuta instrucciones. La CPU se ocupa del control y
el proceso de datos en las computadoras. Generalmente, la CPU es un
microprocesador fabricado en un chip, un nico trozo de silicio que contiene
millones de componentes electrnicos. Es el cerebro de la computadora. Los
componentes estn conectados por un bus, que es una coleccin de alambres
paralelos para transmitir direcciones, datos y seales de control. Los buses
pueden ser externos a la CPU, cuando la conectan a la memoria y a los
dispositivos de E/S, pero tambin internos. La siguiente figura muestra la conexin
del bus del sistema con la CPU.

Un microprocesador combinado con los mdulos de memoria y de interconexin


se llama microcomputador. La palabra micro se usa para indicar el pequeo
tamao fsico de los componentes integrantes. La segunda parte de la palabra en
microprocesador y microcomputador es lo que realmente los diferencia.

Procesador se usa para indicar aquella seccin del sistema, la cual ejecuta las
funciones bsicas para realizar instrucciones y procesar datos de la manera
especificada por el programa. Esta parte se llama usualmente el CPU. El trmino
microcomputador se usa para indicar un sistema de computador de pequeo
tamao consistente de tres unidades bsicas: CPU, memoria e interconexin de
entrada-salida. El microprocesador se encapsula comnmente en un CI y se llama
pastilla de microprocesador. Un microcomputador se refiere, en la mayora de los
casos, a una interconexin con componentes LSI. Por otra parte, algunas pastillas
microprocesadores incluyen dentro de la cpsula no solamente el CPU sino una
parte de la memoria. Tal componente LSI se llama algunas veces
microcomputador de una cpsula. En la siguiente figura se muestra los bloques
del sistema de microcomputador.

1.2.1.1

Arquitecturas

You might also like