Está en la página 1de 28

Sumario │

1
UNIDAD
DIDÁCTICA

INTRODUCCIÓN A
LA ARQUITECTURA
DE COMPUTADORES

OBJETIVOS DE LA UNIDAD

1. Conceptos básicos
2. Evolución de los computadores
3. Funcionamiento y estructura de los computadores
4. Clasificación de los computadores
5. Rendimiento de los computadores
6. Diseño de computadores
7. Tendencias en computación
8. Conclusiones

CONCEPTOS BÁSICOS A RETENER


ACTIVIDADES DE AUTOCOMPROBACIÓN
ACTIVIDADES DE REPASO
EJERCICIOS VOLUNTARIOS
REFERENCIAS BIBLIOGRÁFICAS

www.udima.es 9
"Todos los derechos reservados. Cualquier forma de reproducción, distribución, comunicación pública o transformación de esta Unidad sólo puede ser realizada con la autorización de la Universidad a
Distancia de Madrid, UDIMA, salvo excepción prevista por la ley. Diríjase a CEDRO (Centro Español de Derechos Reprográficos, www.cedro.org) si necesita fotocopiar o escanear algún fragmento de
esta obra (www.conlicencia.com; 91 702 19 70 / 93 272 04 47)".
│ Sumario

ARQUITECTURA DE COMPUTADORES Y SISTEMAS

 OBJETIVOS DE LA UNIDAD
La informática es una disciplina que estudia el tratamiento de información por medio
de sistemas denominados computadores.

En esta Unidad didáctica se dan unas definiciones y nociones generales sobre la ar-
quitectura de los computadores, que serán ampliadas a lo largo de la asignatura.

El objetivo principal de esta Unidad es que el alumno obtenga una visión panorá-
mica del contenido de esta asignatura, de forma tal que, cuando se adentre en sucesivas
Unidades, sepa enmarcar el sentido e importancia de cada una de ellas.

Las principales competencias que debe adquirir el alumno, tras la lectura y estudio
de esta Unidad didáctica, son las siguientes:

• Conocer el concepto de arquitectura de computadores.


• Conocer el origen de los computadores actuales y las tendencias futuras en
el campo de la computación.
• Conocer las diferentes partes que conforman un computador, la función de
cada una dentro del computador y su estructura interna.
• Conocer los diferentes tipos de arquitecturas existentes con relación a su
capacidad para explotar el paralelismo de las instrucciones y de los datos.
• Conocer los parámetros usados habitualmente para medir las prestaciones
de un computador.
• Conocer los aspectos que se han de tener en cuenta a la hora de diseñar una
arquitectura concreta.

10 www.udima.es
"Todos los derechos reservados. Cualquier forma de reproducción, distribución, comunicación pública o transformación de esta Unidad sólo puede ser realizada con la autorización de la Universidad a
Distancia de Madrid, UDIMA, salvo excepción prevista por la ley. Diríjase a CEDRO (Centro Español de Derechos Reprográficos, www.cedro.org) si necesita fotocopiar o escanear algún fragmento de
esta obra (www.conlicencia.com; 91 702 19 70 / 93 272 04 47)".
Sumario │

J. A. Lara Torralbo Introducción a la arquitectura de computadores

1. CONCEPTOS BÁSICOS

El objetivo de este primer epígrafe es definir algunos de los conceptos básicos re-
lacionados con la asignatura. En particular, se definirá el concepto de computador como
elemento principal de la informática.

La informática es un término que hace referencia al conjunto de conocimientos y


técnicas que permiten el tratamiento automático de la información por medio de compu-
tadores. La palabra informática, de hecho, proviene de la contracción de los vocablos
INFORmación y autoMÁTICA.

El elemento central de la informática es el computador, también denominado


computadora y, en España, Francia y países francófonos, inapropiadamente conocido
como ordenador. Se trata de una máquina que recibe una serie de datos de entrada y,
tras realizar con ellos una serie de operaciones aritméticas o lógicas, devuelve una sa-
lida. Todo ese proceso se realiza gracias a programas almacenados en el computador y
sin la intervención de ningún ser humano. La figura 1 representa el concepto de compu-
tador como caja negra.

Figura 1. Visión del computador como caja negra

Entradas
Salidas
(datos de entrada COMPUTADOR
(datos de salida)
e instrucciones)

Los datos a la entrada y salida de un computador se suelen codificar. Una codi-


ficación es una transformación que representa los elementos de un conjunto median-
te los de otro, de forma tal que a cada elemento del primer conjunto le corresponda un
elemento distinto del segundo. Dentro de un computador, la información se almacena
y se transfiere mediante un código que utiliza solo dos valores (un código binario) re-
presentados por 0 y 1. La unidad más elemental de información según esta codificación
es el bit, que se define como una posición o variable que toma el valor 0 o 1. Se trata

www.udima.es 11
"Todos los derechos reservados. Cualquier forma de reproducción, distribución, comunicación pública o transformación de esta Unidad sólo puede ser realizada con la autorización de la Universidad a
Distancia de Madrid, UDIMA, salvo excepción prevista por la ley. Diríjase a CEDRO (Centro Español de Derechos Reprográficos, www.cedro.org) si necesita fotocopiar o escanear algún fragmento de
esta obra (www.conlicencia.com; 91 702 19 70 / 93 272 04 47)".
│ Sumario

ARQUITECTURA DE COMPUTADORES Y SISTEMAS

de la unidad mínima con la que trata un computador. Los bits se agrupan en conjunto y
formar los bytes. Un byte es un conjunto de 8 bits. La capacidad de almacenamiento de
un computador o de cualquier otro soporte, tal como un disco o una cinta magnética, se
suele medir en bytes. Como el byte es una unidad relativamente pequeña, es usual utili-
zar los múltiplos que se incluyen, a modo de recordatorio, en la tabla 1. En general, una
«b» (minúscula) se utiliza para indicar bit, mientras que una «B» (mayúscula) se emplea
para referirse al término byte.

El concepto de arqui- Tabla 1. M


 últiplos y submúltiplos establecidos para medidas
tectura de computador fue por el sistema internacional
definido por primera vez
por Amdahl en el año 1964. Unidad
Equivalencia
de medida
Según esa definición, la ar-
quitectura de un compu- Byte 1 byte = 8 bits
tador es la estructura del
computador que un progra- Kilobyte 1 kilobyte = 210 bytes = 1.024 bytes
mador en lenguaje máquina
tiene que conocer para es- Megabyte 1 megabyte = 220 bytes = 1.024 kilobytes
cribir un programa correcto
Gigabyte 1 gigabyte = 230 bytes = 1.024 megabytes
en ese computador, inde-
pendientemente del tiempo. Terabyte 1 terabyte = 240 bytes = 1.024 gigabytes

El computador es uno Petabyte 1 petabyte = 250 bytes = 1.024 terabytes


de los sistemas más com-
plejos que existen. Dada su Exabyte 1 exabyte = 260 bytes = 1.024 petabytes
complejidad, resulta con-
veniente utilizar enfoques
basados en niveles jerár-
quicos, ya que resultan de gran utilidad a la hora de facilitar su comprensión. De forma
inmediata, un computador se podría descomponer en dos niveles básicos: software y
hardware. Realizando una división más detallada, se llegaría a una jerarquía como la que
aparece en la figura 2, en la que los niveles se ordenan de menor a mayor complejidad
empezando desde la base de la jerarquía.

El estudio de cada nivel se realiza considerando el computador en función de las


primitivas proporcionadas por el nivel inmediato inferior en la jerarquía. Por ejemplo,
para diseñar un sistema operativo se ha de tener en cuenta el computador en el nivel
de máquina convencional, sin necesidad de conocer niveles inferiores a este como, por
ejemplo, el nivel de micromáquina.

12 www.udima.es
"Todos los derechos reservados. Cualquier forma de reproducción, distribución, comunicación pública o transformación de esta Unidad sólo puede ser realizada con la autorización de la Universidad a
Distancia de Madrid, UDIMA, salvo excepción prevista por la ley. Diríjase a CEDRO (Centro Español de Derechos Reprográficos, www.cedro.org) si necesita fotocopiar o escanear algún fragmento de
esta obra (www.conlicencia.com; 91 702 19 70 / 93 272 04 47)".
Sumario │

J. A. Lara Torralbo Introducción a la arquitectura de computadores

Figura 2. Niveles conceptuales de descripción de un computador

Usuarios y aplicaciones

6. Máquina simbólica

Arquitectura 5. Máquina operativa

4. Máquina convencional

3. Micromáquina

2. Lógica digital Tecnología

1. Dispositivos y circuitos

Como se aprecia en la jerarquía, los niveles 1, 2 y 3 se corresponden con la tecno-


logía de computadores. Los avances en estos niveles son de gran importancia ya que
el rendimiento de los computadores depende de ellos. Este manual no abarca estos tres
primeros niveles, cuyo estudio se aborda en asignaturas propias de tecnología y estruc-
tura de computadores.

El nivel 4, lenguaje máquina, es el nivel más directamente relacionado con la ar-


quitectura del computador, ya que el diseño de un computador se realiza a partir de la

www.udima.es 13
"Todos los derechos reservados. Cualquier forma de reproducción, distribución, comunicación pública o transformación de esta Unidad sólo puede ser realizada con la autorización de la Universidad a
Distancia de Madrid, UDIMA, salvo excepción prevista por la ley. Diríjase a CEDRO (Centro Español de Derechos Reprográficos, www.cedro.org) si necesita fotocopiar o escanear algún fragmento de
esta obra (www.conlicencia.com; 91 702 19 70 / 93 272 04 47)".
│ Sumario

ARQUITECTURA DE COMPUTADORES Y SISTEMAS

especificación de las instrucciones del lenguaje máquina. Esto coincide con la definición
dada anteriormente, que supone que la arquitectura de un computador se refiere solo a
los atributos del sistema que son visibles para el programador en lenguaje máquina y no
abarca aspectos relacionados con la implementación de la arquitectura del mismo. Para
referirse a esos aspectos de implementación se utiliza el término «organización». La or-
ganización de un computador, por tanto, abarca las unidades funcionales que forman
parte del computador y la forma en la que están interconectadas. Este manual abarca
tanto la arquitectura como la organización de un computador.

El nivel 5, en el que se sitúa el sistema operativo, se considera como la frontera


entre el hardware y el software. El nivel 6, de máquina simbólica, es el nivel visible para
los programadores de aplicaciones con lenguajes de alto nivel y los usuarios, y está for-
mado por los procesadores de lenguajes. Aunque estos últimos niveles no se abordan
en este manual, ya que suelen ser estudiados en asignaturas específicas de sistemas ope-
rativos y procesadores de lenguajes, sí se realiza alguna mención a ellos en diferentes
epígrafes del manual.

2. EVOLUCIÓN DE LOS COMPUTADORES

Desde antiguo, el hombre ha tratado de idear máquinas y herramientas para auto-


matizar tareas en un intento de reducir al máximo su trabajo. Al principio, el hombre
utilizó los 10 dedos de las manos para contar (lo que dio lugar al sistema de numera-
ción decimal). Posteriormente, se utilizaron montones de piedras agrupadas para con-
tar. Esos métodos rudimentarios fueron evolucionando hasta la invención del ábaco,
que se considera la primera herramienta eficaz de cálculo. En 1615, John Napier ideó
las varillas de Napier, que permitían realizar multiplicaciones y divisiones. En torno a
1890 se concibió la idea de utilizar tarjetas perforadas para mecanizar el procesamien-
to de datos de los censos, que dio lugar a una máquina llamada «tabuladora» que ace-
leró notablemente el tiempo empleado para realizar el censo. En 1939, John Atanasoff
construyó un prototipo de computador digital electrónico que utilizaba aritmética binaria
con el objetivo de automatizar cálculos en el campo de la física. Aunque este computa-
dor (denominado ABC) nunca se implantaría, su desarrollo influyó notablemente en los
primeros computadores.

Desde 1946 la evolución de los computadores se agrupa en cuatro generaciones. En


la primera generación (1946-1954) los computadores electrónicos utilizaban tubos de
vacío (introducidos por J. A. Fleming en el año 1904); tenían tiempos de conmutación del

14 www.udima.es
"Todos los derechos reservados. Cualquier forma de reproducción, distribución, comunicación pública o transformación de esta Unidad sólo puede ser realizada con la autorización de la Universidad a
Distancia de Madrid, UDIMA, salvo excepción prevista por la ley. Diríjase a CEDRO (Centro Español de Derechos Reprográficos, www.cedro.org) si necesita fotocopiar o escanear algún fragmento de
esta obra (www.conlicencia.com; 91 702 19 70 / 93 272 04 47)".
Sumario │

J. A. Lara Torralbo Introducción a la arquitectura de computadores

orden de varios microsegundos. Los Figura 3. Computador ENIAC


tubos de vacío ocupaban gran volu-
men, necesitaban mucha energía y li-
beraban una gran cantidad de calor,
por lo que eran necesarias unas ins-
talaciones complejas con regulación
constante de temperatura y hume-
dad. Las memorias implementadas
con estos tubos de vacío eran muy
costosas, por lo que se pensó en otra
tecnología consistente en el recicla-
je de las señales por unas líneas de
retardo de mercurio. Posteriormen-
te se inventaron las memorias de
ferritas, más baratas, fiables y con un
mayor índice de densidad. El primer
computador electrónico de propósi- Fuente: http://www.computerhistory.org/
timeline/?category=cmptr.
to general no programable que fue
puesto en funcionamiento se deno-
minó ENIAC (electronic numerical
integrator and computer), mostrado
en la figura 3. Fue construido por Eckert y Mauchly en la Moore School of Engineering
de la Universidad de Pensilvania durante los años 1943 y 1946. Posteriormente, John von
Neumann contribuyó a la concepción de la primera arquitectura de computador con control
por medio de un programa almacenado, el EDVAC (electronic discrete variable automatic
computer), evolución del computador ENIAC.

Las sugerencias más relevantes de Von Neumann provenían de su conocimiento


sobre los trabajos de Turing, además de sus discusiones con Eckert y Mauchly. Alan
Turing es considerado como uno de los padres de la informática gracias a la propuesta
de la máquina Turing, un modelo computacional capaz de realizar lecturas y escrituras
automáticas sobre una entrada llamada cinta, generando una salida en la misma. Turing
demostró que esa máquina era capaz implementar cualquier problema matemático repre-
sentable mediante un algoritmo. La máquina Turing se puede considerar como precurso-
ra de la arquitectura Von Neumann en la que, análogamente, los programas informáticos
se ejecutan para resolver un determinado problema leyendo (y escribiendo), para ello,
datos almacenados en la memoria del computador.

La arquitectura Von Neumann es seguida hoy en día por la mayoría de los computa-
dores. Propone una diferenciación de las unidades funcionales del computador: entrada,

www.udima.es 15
"Todos los derechos reservados. Cualquier forma de reproducción, distribución, comunicación pública o transformación de esta Unidad sólo puede ser realizada con la autorización de la Universidad a
Distancia de Madrid, UDIMA, salvo excepción prevista por la ley. Diríjase a CEDRO (Centro Español de Derechos Reprográficos, www.cedro.org) si necesita fotocopiar o escanear algún fragmento de
esta obra (www.conlicencia.com; 91 702 19 70 / 93 272 04 47)".
│ Sumario

ARQUITECTURA DE COMPUTADORES Y SISTEMAS

salida, unidad aritmética, unidad de control


y memoria. Asimismo utiliza el concepto
de programa almacenado en la memoria así
como una representación binaria para la rea-
lización de operaciones aritméticas. Otra de
las características de esta arquitectura es la se-
cuenciación de las operaciones. Los compu-
tadores de la primera generación no tenían
sistema operativo y los programas eran eje-
cutados manualmente uno por uno. En los Alan Mathison Turing. Nació el 23 de junio
de 1912 en Londres.
primeros años de la primera generación, los
Es uno de los científicos británicos más rele-
computadores se programaban en lenguaje vantes. Además de un experto en el campo
máquina. No sería hasta 1950 cuando sur- de la computación, Turing fue matemático, ló-
gieran los primeros lenguajes simbólicos, gico, informático y criptógrafo.

gracias a los cuales las operaciones se po- Es considerado uno de los padres de la infor-
mática gracias a la propuesta de la máquina
dían representar por medio de nemónicos. Turing, un modelo computacional precursor
de los computadores actuales.
El desarrollo del transistor marca el Durante la Segunda Guerra Mundial colaboró
comienzo de la segunda generación de para descifrar los códigos nazis.

computadores (1955-1963). El transis- También se le considera uno de los primeros


científicos que planteó la posibilidad de que
tor además supone el comienzo de la era las máquinas pudieran poseer una inteligen-
electrónica basada en semiconductores. En cia no natural (inteligencia artificial): «Existirá
inteligencia artificial cuando no seamos ca-
torno a 1925, Lilienfeld sentó las bases de paces de distinguir entre un ser humano y un
estos dispositivos. En el año 1947, Bardeen, programa de computadora en una conversa-
ción a ciegas».
Brattain y Shockley, en los laboratorios de
Fue procesado por ser homosexual y se le
Bell Telephone, fabricaron el primer transis- dio a elegir entre la castración química o ir
tor (figura  4). Dos años después se inventa- a la cárcel. Eligió lo primero. En 1954, dos
ría su sucesor, el transistor de unión bipolar. años después de ser juzgado, se suicidó in-
giriendo cianuro.
Las memorias de núcleos de ferrita se exten-
dieron ampliamente, al igual que los discos Fuente: http://en.wikipedia.org/
wiki/Alan_Turing.
magnéticos, inventados en esta época. Estos
discos ocupaban muy poco espacio y permi-
tían almacenar una gran cantidad de infor-
mación al estar compuestos de varios platos
giratorios. El primer computador transistorizado, llamado TRADIC, fue construido en
los laboratorios de Bell Telephone en 1954. En torno a aquel año empezaron a prolife-
rar lenguajes de programación de alto nivel como, por ejemplo, FORTRAN (formula
translator), el primer lenguaje de programación de amplia difusión. En esta genera-
ción también surgieron lenguajes importantes como COBOL y LISP.

16 www.udima.es
"Todos los derechos reservados. Cualquier forma de reproducción, distribución, comunicación pública o transformación de esta Unidad sólo puede ser realizada con la autorización de la Universidad a
Distancia de Madrid, UDIMA, salvo excepción prevista por la ley. Diríjase a CEDRO (Centro Español de Derechos Reprográficos, www.cedro.org) si necesita fotocopiar o escanear algún fragmento de
esta obra (www.conlicencia.com; 91 702 19 70 / 93 272 04 47)".
Sumario │

J. A. Lara Torralbo Introducción a la arquitectura de computadores

El principal hito de la terce- Figura 4. Primer transistor punta-contacto desarrolla-


ra generación de computadores do por Bardeen, Brattain y Shockley
(1964-1970) fue la invención de los
circuitos integrados. Jack Kilby creó
en Texas Instruments el primer cir-
cuito, y probó que una resistencia
podía coexistir en la misma pieza se-
miconductora con un condensador.
El circuito consistía en una oblea
de germanio con cinco componen-
tes conectados por cables (figura 5).
Las tecnologías basadas en circuitos
integrados fueron empleadas en la
década de los sesenta y de los seten-
ta para construir computadores de
propósito general. Sin embargo, esta
tecnología tenía como inconvenien-
Fuente: http://www.computerhistory.org/
te que los procesadores tuvieran un timeline/?category=cmpnt.
consumo excesivo, un gran tamaño
y un precio muy alto. En esta época
las mejoras arquitectónicas consis- Figura 5. Circuito integrado de Kilby
tieron en buscar un aumento en la
velocidad del procesador al ampliar
enfoques como la segmentación, el
uso de múltiples registros o la me-
moria entrelazada. Con el tiempo se
fueron imponiendo las memorias ba-
sadas en circuitos integrados, lo que
hizo que las memorias de núcleos de
ferrita pasaran a un segundo plano.
En la tercera generación se comen-
zaron a construir grandes computa-
dores, que proporcionaban servicio a Fuente: http://www.computerhistory.org/
un gran número de terminales locales timeline/?category=cmpnt.

o remotos. La memoria virtual, téc-


nica que permitía al usuario disponer
de una capacidad de almacenamiento
mayor que la capacidad física real de la memoria principal, es otro de los grandes avan-
ces de la época. Igualmente proliferaron sistemas operativos que utilizaban técnicas tales

www.udima.es 17
"Todos los derechos reservados. Cualquier forma de reproducción, distribución, comunicación pública o transformación de esta Unidad sólo puede ser realizada con la autorización de la Universidad a
Distancia de Madrid, UDIMA, salvo excepción prevista por la ley. Diríjase a CEDRO (Centro Español de Derechos Reprográficos, www.cedro.org) si necesita fotocopiar o escanear algún fragmento de
esta obra (www.conlicencia.com; 91 702 19 70 / 93 272 04 47)".
│ Sumario

ARQUITECTURA DE COMPUTADORES Y SISTEMAS

como la multiprogramación, el multiprocesamiento, las secuencias múltiples, etc. En la


segunda mitad de la década de los sesenta surgieron nuevos lenguajes de programación
de alto nivel, entre los que cabe destacar BASIC y Pascal.

Figura 6. Diagrama de bloques del procesador Intel 4004

Fuente: http://en.wikipedia.org/wiki/Intel_4004.

En la cuarta generación de computadores (1971-...) aparece la filosofía de los sis-


temas abiertos: el usuario puede configurar su máquina a medida y elegir el software, las
impresoras, las unidades de disco, etc. de diferentes fabricantes. En 1969 la compañía Intel
fabricó el primer microprocesador, el Intel 4004 (comercializado en 1971), al que le siguieron
el 8008, el 8080 y 8085. La figura 6 muestra el diagrama de bloques del primer micropro-
cesador desarrollado por Intel. En 1970 Intel empieza a comercializar las primeras memo-
rias RAM dinámicas (DRAM); desde entonces ha conseguido un aumento de la capacidad
a un ritmo constante: la capacidad se multiplica por cuatro cada tres años. Posteriormente

18 www.udima.es
"Todos los derechos reservados. Cualquier forma de reproducción, distribución, comunicación pública o transformación de esta Unidad sólo puede ser realizada con la autorización de la Universidad a
Distancia de Madrid, UDIMA, salvo excepción prevista por la ley. Diríjase a CEDRO (Centro Español de Derechos Reprográficos, www.cedro.org) si necesita fotocopiar o escanear algún fragmento de
esta obra (www.conlicencia.com; 91 702 19 70 / 93 272 04 47)".
Sumario │

J. A. Lara Torralbo Introducción a la arquitectura de computadores

surgiría la tecnología de circuitos integrados CMOS, en la que se han basado los micropro-
cesadores desarrollados desde entonces. Una de las características principales de esta gene-
ración es la aparición de sistemas operativos estándar, no dependientes de los fabricantes de
hardware, y que, por tanto, pueden ser utilizados en diferentes modelos de computadores.
Cabe destacar el UNIX, el MS/DOS, el OS/2 y el Windows NT de Microsoft, además de
Linux, que apareció en el año 1991. En esta época surgieron los sistemas operativos en red
y los sistemas distribuidos. A principios de 1980 surgió el lenguaje C++, desarrollado por
B. Stroustrup en los laboratorios Bell. En 1991, Sun Microsystems creó Java, un lenguaje
inspirado en C++ y de gran repercusión para la programación orientada a objetos actual.
Este lenguaje se puede utilizar en cualquier computador que cuente con la máquina virtual
de Java (JVM, Java virtual machine).

3. FUNCIONAMIENTO Y ESTRUCTURA DE LOS COMPUTADORES

Los computadores son sistemas complejos estructurados en diferentes niveles jerár-


quicos. Para cada uno de los niveles, al diseñador de un computador le interesa conocer
su estructura (modo en que los componentes están interrelacionados) y su funcionamien-
to (la operación que cada componente realiza como parte del sistema).

Atendiendo a su funcionamiento se puede decir que un computador es capaz de rea-


lizar cuatro funciones básicas:

• Procesamiento de datos. El computador es capaz de realizar ciertas ope-


raciones aritméticas y lógicas con los datos que recibe.
• Almacenamiento de datos. El computador necesita almacenar los datos
con los que trata en dispositivos de almacenamiento temporal.
• Transferencia de datos. El computador se comunica con el exterior por medio
de una serie de dispositivos por medio de los cuales se reciben datos de entra-
da y se devuelven datos de salida tras realizar tareas de procesamiento.
• Control. Para que todas las funciones anteriores se desarrollen correcta-
mente debe haber una función de control por parte del computador.

La inmensa mayoría de arquitecturas de computadores actuales siguen el paradigma


de la arquitectura Von Neumann. Esta es la arquitectura más común actualmente y, por
tanto, será tomada como arquitectura de referencia en este manual. Según la arquitectura
Von Neumann, un computador es una máquina con la estructura que muestra la figura 7.

www.udima.es 19
"Todos los derechos reservados. Cualquier forma de reproducción, distribución, comunicación pública o transformación de esta Unidad sólo puede ser realizada con la autorización de la Universidad a
Distancia de Madrid, UDIMA, salvo excepción prevista por la ley. Diríjase a CEDRO (Centro Español de Derechos Reprográficos, www.cedro.org) si necesita fotocopiar o escanear algún fragmento de
esta obra (www.conlicencia.com; 91 702 19 70 / 93 272 04 47)".
│ Sumario

ARQUITECTURA DE COMPUTADORES Y SISTEMAS

Figura 7. Nivel superior de la estructura de un computador

Periféricos

Memoria
Entrada/salida
principal

Sistema de interconexión

CPU

COMPUTADOR

Los principales componentes de la arquitectura Von Neumann son:

• Unidad central de procesamiento (en inglés central processing unit, más


conocida como CPU o procesador). Es la parte del computador que con-
trola el funcionamiento del mismo y realiza las tareas de procesamiento de
los datos y las operaciones aritméticas y lógicas. Esta parte del computador
será estudiada en la Unidad didáctica 5.

20 www.udima.es
"Todos los derechos reservados. Cualquier forma de reproducción, distribución, comunicación pública o transformación de esta Unidad sólo puede ser realizada con la autorización de la Universidad a
Distancia de Madrid, UDIMA, salvo excepción prevista por la ley. Diríjase a CEDRO (Centro Español de Derechos Reprográficos, www.cedro.org) si necesita fotocopiar o escanear algún fragmento de
esta obra (www.conlicencia.com; 91 702 19 70 / 93 272 04 47)".
Sumario │

J. A. Lara Torralbo Introducción a la arquitectura de computadores

• Memoria principal. Encargada del almacenamiento de los datos y progra-


mas. La Unidad didáctica 3 de este manual se dedica al estudio de los dis-
positivos de almacenamiento de un computador.
• Entrada/salida. Se encarga de la transferencia de datos entre el computa-
dor y el mundo exterior.
• Sistema de interconexión. Permite la comunicación entre los diferentes
componentes del computador.

De los anteriores, el componente más interesante es el procesador, cuya estructura


se muestra en la figura 8. Los elementos que componen la estructura del procesador son:

• Registros. Pequeños dispositivos que permiten el almacenamiento interno


de datos en el procesador.
• Unidad aritmético-lógica (en inglés arithmetic logic unit, más conocida
como ALU). Encargada de la realización de las tareas de procesamiento
(operaciones aritméticas y lógicas) sobre los datos.
• Unidad de control. Parte del procesador encargada de controlar el funcio-
namiento de este.
• Interconexiones del procesador. Compuesto por un conjunto de mecanis-
mos que permiten la comunicación entre las diferentes partes del procesador.

A la hora de caracterizar los computadores con el fin de poder compararlos se sue-


len utilizar una serie de parámetros característicos entre los que destacan los siguientes:

• Ancho de palabra. Número de bits que maneja el computador en parale-


lo. Un ancho de palabra mayor representa una mayor potencia de cómputo.
Actualmente los computadores tienen anchos de palabra de 32 y 64 bits.
• Capacidad de la memoria RAM. Tamaño de la memoria principal del
computador. En los computadores comerciales la capacidad suele ser del
orden de varios gigabytes mientras que los supercomputadores pueden lle-
gar a los terabytes.
• Capacidad de la memoria auxiliar. Tamaño de los dispositivos periféri-
cos de almacenamiento del computador. En un computador personal, este
tamaño puede oscilar entre varios megabytes y muchos gigabytes.
• Ancho de banda. Caudal de información que un bus o unidad de entrada/
salida es capaz de transmitir, o el caudal de información que una unidad

www.udima.es 21
"Todos los derechos reservados. Cualquier forma de reproducción, distribución, comunicación pública o transformación de esta Unidad sólo puede ser realizada con la autorización de la Universidad a
Distancia de Madrid, UDIMA, salvo excepción prevista por la ley. Diríjase a CEDRO (Centro Español de Derechos Reprográficos, www.cedro.org) si necesita fotocopiar o escanear algún fragmento de
esta obra (www.conlicencia.com; 91 702 19 70 / 93 272 04 47)".
│ Sumario

ARQUITECTURA DE COMPUTADORES Y SISTEMAS

determinada puede tratar. Se suele expresar en kilobits/segundo (kb/s),


kilobytes/segundo (kB/s), megabits/segundo (Mb/s), megabytes/segundo
(MB/s), gigabits/segundo (Gb/s) o gigabytes/segundo (GB/s).
• MIPS. Millones de instrucciones que una máquina es capaz de ejecutar en
un segundo. Los computadores actuales pueden alcanzar varios miles de
MIPS.
• MFLOPS (mega float point per second). Millones de instrucciones en
coma flotante que una máquina es capaz de ejecutar en un segundo. Exis-
ten computadores actuales con valores del orden de hasta 109 MFLOPS.

Figura 8. Estructura del procesador

Registros ALU

Sistema de interconexión interno

UNIDAD DE
CONTROL

PROCESADOR

22 www.udima.es
"Todos los derechos reservados. Cualquier forma de reproducción, distribución, comunicación pública o transformación de esta Unidad sólo puede ser realizada con la autorización de la Universidad a
Distancia de Madrid, UDIMA, salvo excepción prevista por la ley. Diríjase a CEDRO (Centro Español de Derechos Reprográficos, www.cedro.org) si necesita fotocopiar o escanear algún fragmento de
esta obra (www.conlicencia.com; 91 702 19 70 / 93 272 04 47)".
Sumario │

J. A. Lara Torralbo Introducción a la arquitectura de computadores

4. CLASIFICACIÓN DE LOS COMPUTADORES

El objetivo de este epígrafe es presentar al estudiante la clasificación de computa-


dores realizada por Flynn (Flynn, 66). Esta taxonomía pretende agrupar los diferentes
tipos de computadores de forma que los computadores de cada grupo posean caracte-
rísticas similares entre sí. Con ello se consigue que, dada la clase de un determinado
computador, se conozcan automáticamente toda una serie de características comparti-
das con todos los computadores de su misma clase.

El aumento de prestaciones en los computadores ha sido posible en gran medida


gracias al aprovechamiento del paralelismo existente en las instrucciones, lo que permite
ejecutar varias instrucciones simultáneamente, y en los datos, lo que hace posible ejecu-
tar operaciones sobre conjuntos de operandos diferentes. Precisamente, la clasificación
realizada por Flynn (conocida como taxonomía de Flynn) divide los computadores de-
pendiendo de si estos son capaces de procesar un único flujo de instrucciones a la vez o
varios, y de si el computador puede actuar sobre un único flujo de datos simultáneamen-
te o varios, tal y como recoge la tabla 2.

De esta forma, los computadores se dividen en las siguientes clases:

• SISD (single instruction-single data). En un único procesador se ejecuta una


secuencia de instrucciones que operan con datos almacenados en una única
memoria. Los monoprocesadores pertenecen a esta categoría. Los procesa-
dores segmentados, que se estudiarán en la Unidad didáctica 6, además de
los procesadores superescalares y VLIW, que se abordarán en la Unidad
didáctica 7, son procesadores SISD.
• SIMD (single instruction-multiple data). Existe una máquina que controla
la ejecución simultánea de un determinado número de elementos de proce-
so, cada uno de los cuales tiene una memoria. En otras palabras, una misma
instrucción es ejecutada por cada procesador sobre un conjunto de datos
diferente. A esta clase pertenecen los computadores vectoriales, que se es-
tudiarán en la Unidad didáctica 8, y los procesadores matriciales.
• MISD (multiple instruction-single data). Se tiene una serie de procesado-
res, cada uno de los cuales ejecuta una secuencia de instrucciones diferen-
te sobre un mismo conjunto de datos. Este tipo de arquitectura no ha sido
implementado comercialmente.
• MIMD (multiple instruction-multiple data). Se tiene una serie de procesado-
res, cada uno de los cuales ejecuta una secuencia de instrucciones diferente
sobre conjuntos de datos distintos. Los multiprocesadores simétricos (SMP),

www.udima.es 23
"Todos los derechos reservados. Cualquier forma de reproducción, distribución, comunicación pública o transformación de esta Unidad sólo puede ser realizada con la autorización de la Universidad a
Distancia de Madrid, UDIMA, salvo excepción prevista por la ley. Diríjase a CEDRO (Centro Español de Derechos Reprográficos, www.cedro.org) si necesita fotocopiar o escanear algún fragmento de
esta obra (www.conlicencia.com; 91 702 19 70 / 93 272 04 47)".
│ Sumario

ARQUITECTURA DE COMPUTADORES Y SISTEMAS

los clusters y los sistemas de acceso no uniforme a memoria (NUMA) per-


tenecen a esta categoría. Algunas de estas organizaciones se verán en la
Unidad didáctica 9.

Tabla 2. Taxonomía de Flynn

Flujos de instrucciones

Uno (single) Varios (multiple)

Uno (single) SISD MISD


Flujos de datos
Varios (multiple) SIMD MIMD

La figura 9 muestra dónde encajan las arquitecturas de computadores mencionadas


dentro de los cuatro grupos de computadores definidos por Flynn.

Figura 9. Organizaciones de computadores

Taxonomía de computadores

SISD SIMD MISD MIMD

Monoprocesadores Procesadores Procesadores NUMA SMP Clusters


vectoriales matriciales

5. RENDIMIENTO DE LOS COMPUTADORES

A la hora de decantarse por un computador, obviamente las prestaciones son un


atributo que hay que tener muy en cuenta. Por tanto, contar con medidas estándares que
permitan medir las prestaciones de un computador resulta necesario y útil.

24 www.udima.es
"Todos los derechos reservados. Cualquier forma de reproducción, distribución, comunicación pública o transformación de esta Unidad sólo puede ser realizada con la autorización de la Universidad a
Distancia de Madrid, UDIMA, salvo excepción prevista por la ley. Diríjase a CEDRO (Centro Español de Derechos Reprográficos, www.cedro.org) si necesita fotocopiar o escanear algún fragmento de
esta obra (www.conlicencia.com; 91 702 19 70 / 93 272 04 47)".
Sumario │

J. A. Lara Torralbo Introducción a la arquitectura de computadores

Como se ha mencionado anteriormente, los computadores son sistemas comple-


jos. Medir las prestaciones de tales máquinas no se antoja una tarea sencilla. La prime-
ra cuestión que cabe plantearse es: ¿cuándo decimos que un computador tiene mejores
prestaciones que otro? La respuesta a esta cuestión no es trivial, ya que depende del pa-
rámetro que se tome en consideración para evaluar las prestaciones de un computador.

Normalmente, desde el punto de vista del usuario, el parámetro que más importa es
el tiempo de respuesta o tiempo de ejecución, que es el tiempo que tarda un computa-
dor en completar una tarea determinada. Desde el punto de vista de los directivos de los
centros de computación, el interés recae en la productividad o cantidad total de trabajo
completado en un periodo de tiempo.

Este manual se centrará en la visión del usuario, por lo que el tiempo de ejecución se
considera una medida fundamental de las prestaciones de un computador. En este caso,
las prestaciones de un computador se miden como la inversa del tiempo de ejecución.

En ocasiones es habitual que un computador no se dedique en exclusiva a resol-


ver una tarea. Este tipo de computador se llama de tiempo compartido. En este caso, se
considera como medida de las prestaciones el tiempo de CPU, que es el tiempo que el
computador ha dedicado a resolver una tarea concreta, independientemente del tiempo
empleado en otras tareas que se ejecutan simultáneamente.

Una alternativa al tiempo de ejecución son los MIPS (o en una unidad de orden
mayor los GIPS, miles de millones de instrucciones por segundo). Los computadores de-
dicados a tareas específicas en áreas técnicas o científicas suelen realizar, en su mayoría,
operaciones aritméticas con valores reales en coma flotante. En esos casos, se suelen uti-
lizar los MFLOPS (o en unidades de orden mayor, como los gigaflops, GFLOPS, miles
de millones de instrucciones de coma flotante por segundo; los teraflops, TFLOPS; los
petaflots, PFLOTS).

Los computadores trabajan a una frecuencia determinada que marca los instantes de
tiempo en los que ocurren sucesos en el hardware. Así pues, otros parámetros que pue-
den interesar, en especial a los diseñadores de computadores, son el número de ciclos
de reloj que consume una tarea y el periodo de reloj, que se define como la inversa de
la frecuencia del procesador.

Otro parámetro interesante para evaluar las prestaciones de un computador es el


CPI, o número de ciclos de reloj por instrucción, que se define como el número medio
de ciclos de reloj por instrucción que requiere un programa para su ejecución en un
computador. El CPI permite comparar dos arquitecturas diferentes utilizando un mismo
programa de prueba en ambas.

www.udima.es 25
"Todos los derechos reservados. Cualquier forma de reproducción, distribución, comunicación pública o transformación de esta Unidad sólo puede ser realizada con la autorización de la Universidad a
Distancia de Madrid, UDIMA, salvo excepción prevista por la ley. Diríjase a CEDRO (Centro Español de Derechos Reprográficos, www.cedro.org) si necesita fotocopiar o escanear algún fragmento de
esta obra (www.conlicencia.com; 91 702 19 70 / 93 272 04 47)".
│ Sumario

ARQUITECTURA DE COMPUTADORES Y SISTEMAS

Como se acaba de esbozar, a la hora de medir las prestaciones de varias arquitectu-


ras se suelen utilizar programas de prueba. Para que se puedan comparar dos arquitectu-
ras de manera científica, esos programas de prueba deberían poseer unas características
adecuadas y ser los mismos en ambos casos. Para ello se fundó SPEC (Standard Perfor-
mance Evaluation Cooperative), un consorcio de fabricantes, investigadores y consul-
tores de informática que definen conjuntos de programas de prueba para la evaluación
del rendimiento de los computadores.

Un último aspecto que hay que considerar en relación con las prestaciones de los
computadores es la medida de cómo mejora el rendimiento de un computador al intro-
ducir una mejora concreta. Para ello, se utiliza la ley de Amdahl, que mide el aumento
de prestaciones dependiendo de la cantidad en que se usa esa mejora.

Todos estos conceptos que se han esbozado en esta primera Unidad didáctica serán
abordados en profundidad en la Unidad 2. Además, el rendimiento de los computadores
es un aspecto del diseño de los computadores que estará presente a lo largo de todo el
manual. En particular se estudiarán los principales avances en el área que han contribui-
do a la mejora de prestaciones en los computadores, tales como la incorporación de la
memoria caché o el paralelismo en el procesamiento de instrucciones y/o datos.

6. DISEÑO DE COMPUTADORES

Una de las tareas más importantes de un arquitecto de computadores es ser capaz


de realizar el diseño de un computador. Para ello existen diferentes principios, de entre
los cuales destaca el basado en acelerar el caso común. Es decir, al realizar el diseño
de un computador se ha de favorecer el caso frecuente sobre el que se da en pocas oca-
siones. Por ejemplo, supóngase que el 90 % de las instrucciones que se espera ejecutar
en un determinado procesador de uso específico son de tipo aritmético y, en particu-
lar, la mayoría son operaciones de suma en coma flotante. En ese caso, se ha de dise-
ñar el computador pensando en optimizar la ejecución de las operaciones aritméticas
y, especialmente, la suma de dos operandos en coma flotante. Como se ha visto en el
epígrafe anterior, la ley de Amdahl se utiliza para cuantificar este criterio. De este y
otros criterios se hablará a lo largo del manual, en el que el aumento de prestaciones
es un elemento crucial.

El diseño de un computador involucra muchas y muy complejas tareas, tales como


la especificación del repertorio de instrucciones, la organización de la arquitectura, su

26 www.udima.es
"Todos los derechos reservados. Cualquier forma de reproducción, distribución, comunicación pública o transformación de esta Unidad sólo puede ser realizada con la autorización de la Universidad a
Distancia de Madrid, UDIMA, salvo excepción prevista por la ley. Diríjase a CEDRO (Centro Español de Derechos Reprográficos, www.cedro.org) si necesita fotocopiar o escanear algún fragmento de
esta obra (www.conlicencia.com; 91 702 19 70 / 93 272 04 47)".
Sumario │

J. A. Lara Torralbo Introducción a la arquitectura de computadores

diseño y su implementación, entre otras. De especial importancia es la elección del


repertorio de instrucciones para la arquitectura que se va a diseñar. En este sentido,
existen dos tendencias contrapuestas: elegir un repertorio con pocas instrucciones o
contar con un repertorio amplio de instrucciones. A los computadores que siguen la
primera aproximación se les denomina computadores RISC (reduced instruction set
computer) y los que se decantan por la segunda se conocen como computadores CISC
(complex instruction set computer). En la Unidad didáctica 4 se estudiarán en detalle
ambas alternativas.

Además de lo anterior, según Hennessy y Patterson (2007), a la hora de diseñar un


computador, el arquitecto de computadores ha de tener en cuenta los siguientes aspectos:

• Requerimientos funcionales. Cuando se concibe un computador, el dise-


ñador ha de tener en cuenta la funcionalidad que debe ofrecer y considerar
aspectos como el área de aplicación (dominios de propósito general o es-
pecífico), el nivel de compatibilidad con el software existente, los requisi-
tos que marca el sistema operativo (por ejemplo, el tamaño del espacio de
direcciones o el mecanismo de gestión de la memoria), así como los están-
dares que el computador va a implementar (estándares de representación
numérica en coma flotante, de dispositivos de comunicaciones, de buses de
entrada/salida, entre otros).
• Equilibrio software y hardware. En el diseño de una arquitectura es ne-
cesario definir qué funcionalidades se van a abordar por medio de software
y cuáles por medio de dispositivos hardware. Un ejemplo muy claro es la
unidad de control de la CPU, que puede ser cableada (hardware) o micro-
programada (software). Las soluciones software suelen ser más sencillas y
baratas que las hardware que, a su vez, suelen ofrecer mejores prestaciones
en términos de tiempo de ejecución.
• Diseño duradero. Cuando un arquitecto de computadores se enfrenta al
diseño de una nueva arquitectura, un aspecto fundamental que ha de consi-
derar es la durabilidad de esa arquitectura.
En la medida de lo posible, la arquitectura se ha de diseñar con el objetivo
de que perdure a las nuevas tendencias.

El objetivo principal de la asignatura es que el estudiante sea capaz de esbozar el


diseño de un computador tomando en consideración los aspectos de diseño introducidos
en este epígrafe, que serán ampliados a lo largo del manual.

www.udima.es 27
"Todos los derechos reservados. Cualquier forma de reproducción, distribución, comunicación pública o transformación de esta Unidad sólo puede ser realizada con la autorización de la Universidad a
Distancia de Madrid, UDIMA, salvo excepción prevista por la ley. Diríjase a CEDRO (Centro Español de Derechos Reprográficos, www.cedro.org) si necesita fotocopiar o escanear algún fragmento de
esta obra (www.conlicencia.com; 91 702 19 70 / 93 272 04 47)".
│ Sumario

ARQUITECTURA DE COMPUTADORES Y SISTEMAS

7. TENDENCIAS EN COMPUTACIÓN

El diseño de computadores es una disciplina que está claramente influenciada por


las demandas que en cada momento plantea el mercado y por la tecnología disponible en
ese momento. A lo largo de la historia la arquitectura de computadores ha demostrado
ser una disciplina que avanza de forma impredecible, a veces con logros inesperados y
de gran calado como, por ejemplo, los procesadores segmentados, los procesadores su-
perescalares, la memoria caché, los multiprocesadores, los clusters, etc.

Actualmente se trabaja buscando una mayor densidad de integración de componen-


tes en los circuitos integrados, una mayor frecuencia de reloj, un menor consumo de los
dispositivos que conforman el computador, etc.

Además de lo anterior, existen problemas abiertos y tendencias de entre las que


cabe destacar las siguientes:

• Desarrollo de compiladores cada vez más inteligentes.


• Automatización del proceso de paralelización.
• Nuevas tecnologías en los dispositivos de almacenamiento.
• Desarrollo de circuitos fácilmente reconfigurables.

En los últimos años se han producido importantes avances en el campo de la compu-


tación, hasta el punto de que están surgiendo nuevos paradigmas que podrían sustituir
al actual en un futuro no muy lejano. El que parece tomar ventaja es el paradigma de la
computación cuántica, que se basa en el uso de qubits (sistemas cuánticos con dos esta-
dos posibles representados, por ejemplo, mediante la polarización de un fotón: horizontal
y vertical) en lugar de bits, lo que da lugar a nuevas puertas lógicas que hacen posibles
nuevos algoritmos.

Otro paradigma de computación novedoso es la computación basada en ADN, que


consiste en el uso de moléculas de ADN en vez de procesadores tradicionales. Este para-
digma tiene como principal ventaja el gran paralelismo de las hebras de ADN, y permite
afrontar problemas de búsqueda inabordables con la tecnología actual. Este paradigma
únicamente se encuentra planteado a nivel teórico.

Todos estos avances y tendencias se tratarán con mayor profundidad en la Unidad


didáctica 10.

28 www.udima.es
"Todos los derechos reservados. Cualquier forma de reproducción, distribución, comunicación pública o transformación de esta Unidad sólo puede ser realizada con la autorización de la Universidad a
Distancia de Madrid, UDIMA, salvo excepción prevista por la ley. Diríjase a CEDRO (Centro Español de Derechos Reprográficos, www.cedro.org) si necesita fotocopiar o escanear algún fragmento de
esta obra (www.conlicencia.com; 91 702 19 70 / 93 272 04 47)".
Sumario │

J. A. Lara Torralbo Introducción a la arquitectura de computadores

8. CONCLUSIONES

En esta Unidad didáctica se ha presentado un conjunto de conceptos básicos sobre


arquitectura de computadores, imprescindibles para abordar los distintos temas que abar-
ca la asignatura.

Se ha definido con precisión el concepto de computador, como protagonista de la


informática, y de arquitectura de computadores, como la disciplina encargada del estudio
de la estructura del computador. Se ha establecido claramente el ámbito de la arquitec-
tura de computadores dentro de los diferentes niveles conceptuales de un computador.

Posteriormente se ha hecho un recorrido histórico para que el estudiante conoz-


ca el origen de los computadores y su evolución a lo largo de la reciente historia de la
computación. Se ha hecho especial hincapié en el origen de la arquitectura Von Neu-
mann, paradigma de computación seguido actualmente.

Se ha descrito el funcionamiento del computador así como su estructura, prestan-


do especial atención a los elementos de que consta y a la estructura interna de cada uno
de ellos.

Tras ello se ha hecho un breve recorrido por los diferentes tipos de computadores
existentes y se ha dado una taxonomía de los mismos. De igual modo se han esbozado
algunas ideas sobre la forma de evaluar y mejorar las prestaciones de los computadores.
También se han presentado algunos principios básicos que todo arquitecto de computa-
dores debe tener presente al diseñar un computador.

Por último, se ha realizado una pequeña introducción sobre las tendencias actua-
les en computación y se han presentado nuevos paradigmas, como la computación ba-
sada en ADN y la computación cuántica, que podría tener un papel protagonista en las
próximas décadas.

www.udima.es 29
"Todos los derechos reservados. Cualquier forma de reproducción, distribución, comunicación pública o transformación de esta Unidad sólo puede ser realizada con la autorización de la Universidad a
Distancia de Madrid, UDIMA, salvo excepción prevista por la ley. Diríjase a CEDRO (Centro Español de Derechos Reprográficos, www.cedro.org) si necesita fotocopiar o escanear algún fragmento de
esta obra (www.conlicencia.com; 91 702 19 70 / 93 272 04 47)".
│ Sumario

ARQUITECTURA DE COMPUTADORES Y SISTEMAS

 CONCEPTOS BÁSICOS A RETENER


• Un computador es una máquina capaz de realizar operaciones aritméticas
y lógicas sobre un conjunto de datos de entrada, que genera unos resultados
a la salida, gracias a la ejecución de programas y sin la intervención directa
de un ser humano. Se trata del elemento central de la informática.
• Usualmente se define a la arquitectura de un computador como la estruc-
tura del computador que un programador en lenguaje máquina tiene que
conocer para escribir un programa correcto en ese computador, indepen-
dientemente del tiempo. En este manual también se aborda la organización
del computador, que estudia las unidades funcionales que forman parte del
computador y la forma en la que están interconectadas.
• Desde que surgieron las primeras ideas en computación los computadores han
ido evolucionando a lo largo de cuatro generaciones caracterizadas por unos
avances e hitos importantes. En la primera generación surgió la arquitectura
Von Neumann, paradigma de computación que aún perdura en la actualidad.
No obstante, actualmente comienzan a surgir nuevos paradigmas de compu-
tación como, por ejemplo, la computación cuántica, que podrían jugar un
papel fundamental en el futuro de la informática a medio y largo plazo.
• Un computador es un dispositivo que tiene como funciones procesar, alma-
cenar y transferir datos, además de controlar el desarrollo de esas funciones
básicas. Para ello el computador cuenta con dispositivos como la CPU o el
procesador, la memoria principal, la entrada/salida y el sistema de inter-
conexión. El procesador es el elemento más importante del computador.
• Los computadores se clasifican en cuatro grandes grupos dependiendo del
número de flujos de instrucciones y de datos que sean capaces de procesar:
SISD (single instruction-single data), SIMD (single instruction-multiple
data), MIMD (multiple instruction-multiple data), MISD (multiple ins-
truction-single data).
• Uno de los aspectos más importantes de un computador es la forma de medir
sus prestaciones. Existen diversos indicadores para ello, tales como el tiem-
po de ejecución. A la hora de evaluar computadores se utilizan programas
de prueba propuestos por el consorcio SPEC.
• El diseño de una arquitectura es una tarea compleja en la que el arquitecto
de computadores ha de manejar aspectos como los requisitos funcionales,
la búsqueda del equilibrio entre el software y el hardware, y la búsqueda de
un diseño duradero.

30 www.udima.es
"Todos los derechos reservados. Cualquier forma de reproducción, distribución, comunicación pública o transformación de esta Unidad sólo puede ser realizada con la autorización de la Universidad a
Distancia de Madrid, UDIMA, salvo excepción prevista por la ley. Diríjase a CEDRO (Centro Español de Derechos Reprográficos, www.cedro.org) si necesita fotocopiar o escanear algún fragmento de
esta obra (www.conlicencia.com; 91 702 19 70 / 93 272 04 47)".
Sumario │

J. A. Lara Torralbo Introducción a la arquitectura de computadores

 ACTIVIDADES DE AUTOCOMPROBACIÓN
A partir del contenido de la presente Unidad didáctica, se propone la realización
de las siguientes actividades de autocomprobación por parte del alumno, como ejercicio
general de repaso y asimilación de la información básica proporcionada por el texto.

Enunciado 1

Indique la diferencia entre los conceptos de arquitectura de un computador y orga-


nización de un computador.

Enunciado 2

Indique la generación de computadores (primera, segunda, tercera o cuarta) en la


que se produjeron los siguientes hitos de interés:

a) Aparición del transistor.


b) Sistemas operativos independientes del fabricante.
c) Creación del computador ENIAC.
d) Invención de los circuitos integrados.

Enunciado 3

Enlace cada uno de los elementos de la parte izquierda de la tabla con su correspon-
diente descripción en la parte derecha:

Parte del computador Función

a) Procesador. a) Almacenamiento de información.

b) Memoria principal. b) Transferencia de datos hacia/desde el exterior.

c) Entrada/salida. c) Procesamiento de datos.

d) Sistema de interconexión. d) Comunicación interna del computador.

www.udima.es 31
"Todos los derechos reservados. Cualquier forma de reproducción, distribución, comunicación pública o transformación de esta Unidad sólo puede ser realizada con la autorización de la Universidad a
Distancia de Madrid, UDIMA, salvo excepción prevista por la ley. Diríjase a CEDRO (Centro Español de Derechos Reprográficos, www.cedro.org) si necesita fotocopiar o escanear algún fragmento de
esta obra (www.conlicencia.com; 91 702 19 70 / 93 272 04 47)".
│ Sumario

ARQUITECTURA DE COMPUTADORES Y SISTEMAS

Enunciado 4

Enlace cada uno de los elementos de la parte izquierda de la tabla con su correspon-
diente descripción en la parte derecha:

Parte del procesador Función

a) Unidad de control. a) Comunicación interna del procesador.

b) ALU. b) Almacenamiento interno de datos.

c) Registros. c) Procesamiento de datos.

d) Interconexiones. d) Gestión del funcionamiento del procesador.

Enunciado 5

Indique si las afirmaciones que se presentan a continuación son verdaderas o falsas.


En cualquier caso, justifique por qué:

a) Cuanto menor sea el tiempo de ejecución de un programa en un computa-


dor, menor será el rendimiento de dicho computador.
b) Si un computador A tiene un valor de MIPS de 5,1 y un computador B tiene
un valor de MIPS de 4,8, el computador A ofrece mejores prestaciones que
el computador B, en líneas generales (con un mismo repertorio de progra-
mas de prueba).
c) En general, cuanto mayor sea el CPI de un computador, mejores prestacio-
nes ofrecerá.

32 www.udima.es
"Todos los derechos reservados. Cualquier forma de reproducción, distribución, comunicación pública o transformación de esta Unidad sólo puede ser realizada con la autorización de la Universidad a
Distancia de Madrid, UDIMA, salvo excepción prevista por la ley. Diríjase a CEDRO (Centro Español de Derechos Reprográficos, www.cedro.org) si necesita fotocopiar o escanear algún fragmento de
esta obra (www.conlicencia.com; 91 702 19 70 / 93 272 04 47)".
Sumario │

J. A. Lara Torralbo Introducción a la arquitectura de computadores

Solución 1

El concepto de arquitectura de un computador hace referencia a la estructura del


computador que un programador en lenguaje máquina tiene que conocer para escribir
un programa correcto en ese computador. Por su parte, el término organización de un
computador se refiere a las unidades funcionales que forman parte del mismo y la forma
en la que están interconectadas.

Solución 2

a) Segunda generación.
b) Cuarta generación.
c) Primera generación.
d) Tercera generación.

Solución 3

a)-c), b)-a), c)-b), d)-d)

Solución 4

a)-d), b)-c), c)-b), d)-a)

Solución 5

a) Falso. Precisamente, un computador tendrá mayor rendimiento cuanto menor


sea el tiempo que tarda en completar una tarea.
b) Verdadero. En general, si un computador es capaz de ejecutar (con un mismo
repertorio de programas de prueba) una mayor cantidad de instrucciones
por segundo que otro, su rendimiento será mayor.
c) Falso. Si el CPI es mayor, indica que necesita más ciclos de media para
completar cada instrucción, lo cual implica más tiempo de ejecución y, por
tanto, menor rendimiento del computador.

www.udima.es 33
"Todos los derechos reservados. Cualquier forma de reproducción, distribución, comunicación pública o transformación de esta Unidad sólo puede ser realizada con la autorización de la Universidad a
Distancia de Madrid, UDIMA, salvo excepción prevista por la ley. Diríjase a CEDRO (Centro Español de Derechos Reprográficos, www.cedro.org) si necesita fotocopiar o escanear algún fragmento de
esta obra (www.conlicencia.com; 91 702 19 70 / 93 272 04 47)".
│ Sumario

ARQUITECTURA DE COMPUTADORES Y SISTEMAS

 ACTIVIDADES DE REPASO
1. Realice las siguientes transformaciones de medidas de capacidad siguiendo
las especificaciones del sistema internacional:

• Pasar a kilobytes:

‒ 2.345 bytes.
‒ 12.034 bytes.
‒ 456.032 bytes.

• Pasar a megabytes:

‒ 23.452.345 bytes.
‒ 7.986 kilobytes.
‒ 278.934 kilobytes.

• Pasar a gigabytes:

‒ 395.823.452.345 bytes.
‒ 39.862.345 kilobytes.
‒ 34.567 megabytes.

2. Haga una relación de los principales parámetros característicos de un


computador y dé una breve definición para cada uno de ellos.

3. ¿Cuáles son las funciones principales de un computador? ¿De qué partes se


compone para poder llevar a cabo esas funciones?

4. Determine, según se ha esbozado en esta Unidad didáctica, la importancia


de la máquina Turing y analice su aportación al campo de la arquitectura
de computadores.

5. Indique y defina los diferentes grupos de computadores según su capacidad


para explotar el paralelismo. A continuación indique a cuál de esos grupos
se corresponden las siguientes organizaciones de computadores:

34 www.udima.es
"Todos los derechos reservados. Cualquier forma de reproducción, distribución, comunicación pública o transformación de esta Unidad sólo puede ser realizada con la autorización de la Universidad a
Distancia de Madrid, UDIMA, salvo excepción prevista por la ley. Diríjase a CEDRO (Centro Español de Derechos Reprográficos, www.cedro.org) si necesita fotocopiar o escanear algún fragmento de
esta obra (www.conlicencia.com; 91 702 19 70 / 93 272 04 47)".
Sumario │

J. A. Lara Torralbo Introducción a la arquitectura de computadores

• Un computador vectorial.
• Un multiprocesador.
• Un monoprocesador.
• Un computador matricial.
• Un cluster de computadores.
• Un sistema NUMA.

 E
JERCICIOS VOLUNTARIOS

Tras el estudio de esta Unidad didáctica, el estudiante puede hacer, por su cuenta,
una serie de ejercicios voluntarios, como los siguientes:

1. Busque en internet el término «quinta generación de computadores» y rea-


lice una pequeña monografía sobre él.

2. Recopile información sobre la «batalla» entre computadores RISC y compu-


tadores CISC. Intente obtener las claves del éxito de cada tipo y formarse
una opinión sobre cuál de los dos enfoques dominará el futuro de la ar-
quitectura de computadores.

3. Profundice sobre el paradigma de la computación cuántica y analice sus


fundamentos tecnológicos y arquitectónicos. Recopile información sobre
las opiniones de los expertos acerca de este paradigma y su papel en el fu-
turo de la informática.

4. Visite el sitio web de SPEC (http://www.spec.org) y localice información


sobre CPU2006. Para ello se debe responder a las siguientes cuestiones:

• ¿Qué es SPEC?
• ¿Qué es un benchmark?
• ¿Qué mide SPEC CPU2006?
• ¿Cómo se ejecuta el benchmark en un computador? ¿Qué pasos hay
que seguir para ello?

www.udima.es 35
"Todos los derechos reservados. Cualquier forma de reproducción, distribución, comunicación pública o transformación de esta Unidad sólo puede ser realizada con la autorización de la Universidad a
Distancia de Madrid, UDIMA, salvo excepción prevista por la ley. Diríjase a CEDRO (Centro Español de Derechos Reprográficos, www.cedro.org) si necesita fotocopiar o escanear algún fragmento de
esta obra (www.conlicencia.com; 91 702 19 70 / 93 272 04 47)".
│ Sumario

ARQUITECTURA DE COMPUTADORES Y SISTEMAS

• ¿Qué máquina de referencia se usa en SPEC CPU2006?


• ¿Qué métricas emplea SPEC CPU2006? ¿Cuál se debería usar para
comparar el rendimiento de dos computadores?

5. Recopile información de cinco computadores comerciales e indique el valor


de sus parámetros característicos (si no es posible obtener el valor de todos
los parámetros, especifique el valor de alguno de ellos).

 REFERENCIAS BIBLIOGRÁFICAS
Básica

MIGUEL ANASAGASTI, P. de: Fundamentos de los computadores, 9.ª ed., Thomson, 2007.
PRIETO, A. y PRIETO, B.: Conceptos de informática, McGraw-Hill, 2005 (serie Shaum).
PRIETO, A.; LLORIS, A. y TORRES, J. C.: Introducción a la informática, 4.ª ed., McGraw-Hill, 2006.

En la red

http://en.wikipedia.org/wiki/Alan_Turing.
http://www.computerhistory.org.
http://www.intel.com/about/companyinfo/museum/exhibits/4004/.
http://www.spec.org/.

Avanzada

FLYNN, M. J.: «Very high-speed computing systems», en Proceedings of the IEEE, 54 (12), 1966,
págs. 1.901-1.909.
HENNESSY, J. L. y PATTERSON, D. A.: Computer architecture: a quantitative approach, 4.ª ed., Mor-
gan Kaufmann, 2007.
ORTEGA, J.; ANGUITA, M. y PRIETO, A.: Arquitectura de computadores, Thomson, 2005.
PATTERSON, D. A. y HENNESSY, J. L.: Estructura y diseño de computadores: la interfaz hardware/
software, 4.ª ed., Reverté, 2011.
STALLINGS, W.: Organización y arquitectura de computadores, 7.ª ed., Pearson Prentice Hall, 2007.

36 www.udima.es
"Todos los derechos reservados. Cualquier forma de reproducción, distribución, comunicación pública o transformación de esta Unidad sólo puede ser realizada con la autorización de la Universidad a
Distancia de Madrid, UDIMA, salvo excepción prevista por la ley. Diríjase a CEDRO (Centro Español de Derechos Reprográficos, www.cedro.org) si necesita fotocopiar o escanear algún fragmento de
esta obra (www.conlicencia.com; 91 702 19 70 / 93 272 04 47)".

También podría gustarte