Está en la página 1de 11

Componentes de un computador

Casi todas las computadoras se han basado en el modelo diseado por


John von Neumann en el Instituto de Estudios Avanzados de Princeton.
Tal diseo se conoce como arquitectura de von Neumann y se basa en
tres conceptos claves:
o 1. Datos e instrucciones almacenados en una sola memoria de
lectura-escritura.
o 2. Los contenidos de esta memoria se direccionan indicando su
posicin, sin considerar el tipo de dato contenido en la misma.
o 3. La ejecucin se produce siguiendo una secuencia de instruccin
tras instruccin (a no ser que dicha secuencia se modifique
explcitamente).
Surge el concepto de programa almacenado.
Memoria principal almacena datos e instrucciones.
La ALU (Unidad Aritmtico Lgica) opera con datos en formato binario.
La UC (Unidad de Control) interpreta las instrucciones de la memoria y
las ejecuta.
Un equipo de E/S (Entradas/Salidas) dirigido por la UC.
Surge el computador IAS que es un prototipo para toda una serie de
computadoras de uso general (1952).

Detalles del computador IAS

1,000 posiciones de memoria de 40 bits o palabra c/u.


o Formato de nmero en binario
o 2 Instrucciones 20 bits c/u
Conjuntos de registros (storage in CPU):
o Registro temporal de memoria (MBR) contiene o recibe una
palabra procedente de la memoria.
o Registro de direccin de memoria (MAR) especifica la direccin de
la palabra que ser escrita o leda en MBR.
o Registro de Instruccin (IR) contiene los 8 bits del cdigo de
operacin de la instruccin a ejecutar.
o Registro temporal de instruccin (IBR) contiene la instruccin de la
parte derecha de una palabra en memoria.
o Contador de Programa (PC) contiene la direccin de la prxima
pareja de instrucciones que van a ser captadas de la memoria.
o Acumulador (AC) y Multiplicador Cociente (MQ) se emplean para
almacenar operandos y resultados de operaciones de la ALU.
La computadora IAS tena un total de 21 instrucciones, agrupadas de la
siguiente manera:
o Transferencia de datos: transferir datos entre la memoria y los
registros de la ALU o entre dos registros de la ALU.
o Salto incondicional: normalmente la UC ejecuta instrucciones
secuencialmente en la memoria. Las instrucciones de salto
pueden cambiar esta secuencialidad y facilitar tambin las
operaciones repetitivas.

o
o

Aritmtica: operaciones realizadas por la ALU.


Modificacin de direcciones: permite a la ALU realizar
operaciones con las direcciones e insertarlas en instrucciones
almacenadas en la memoria. Lo anterior permite flexibilidad en el
direccionamiento de un programa.

Componentes de una computadora:

De la computadora IAS surge el concepto de programa cableado es


decir, un hardware especfico para una tarea particular.
Si se deseaba realizar un clculo concreto, se utilizaba una configuracin
de componentes lgicos diseados especficamente para dicho clculo.
La otra alternativa que surgi posteriormente fue construir una
configuracin de uso general de funciones lgicas y aritmticas.
El hardware realizaba funciones diferentes segn las seales de control
aplicadas.
Con el hardware de uso general, el sistema acepta datos y seales de
control, y produce resultados
En lugar de reconfigurar el hardware para cada nuevo programa, el
programador simplemente necesitaba proporcionar un nuevo conjunto
de seales de control.
Las seales de control se suministraban desde el programa asociando un
cdigo especfico para cada posible conjunto de seales de control.
Luego se aada un hardware de uso general para generar las seales de
control a partir del cdigo.
Nace un nuevo mtodo denominado software (secuencia de cdigos o
instrucciones).
Programacin software
o Para cada operacin se provee de un nico cdigo (ADD, MOVE)
o Una porcin del hardware (UC) acepta el cdigo y genera las
seales de control.

Funcionamiento de una computadora

La funcin bsica que realiza una computadora es la ejecucin de un


programa, constituido por un conjunto de instrucciones almacenadas en
la memoria.
El procesador lee (capta) la instruccin de memoria, y la ejecuta.
La ejecucin a su vez puede estar compuesta por un cierto nmero de
pasos.
El procesamiento que requiere una instruccin se denomina ciclo de
instruccin.
Ciclo de instruccin bsico, compuesto por dos pasos (ciclo de captacin
y ciclo de ejecucin):
o CPU capta (fetch)
o CPU ejecuta (execute)
La ejecucin del programa se para, slo si se desconecta la mquina, si
se produce un error o si se ejecuta una instruccin que lo detiene.

Ciclo de Captacin:

El PC contiene la direccin de la prxima instruccin a ejecutar.


El procesador capta la instruccin desde la memoria en la direccin
indicada por el PC.
Se incrementa en 1 el PC (a no ser que se indique otro valor)
La instruccin captada se almacena en el IR (registro de instrucciones).
El procesador interpreta la instruccin y lleva a cabo la accin requerida.

Ciclo de Ejecucin:

La ejecucin de una instruccin puede implicar una combinacin de las


siguientes acciones:
o Procesador-memoria: transferir datos desde la CPU a la memoria,
o desde la memoria a la CPU.
o Procesador E/S: transferir datos a o desde el exterior mediante la
transferencia entre la CPU y un mdulo de E/S.
o Procesamiento de datos: la CPU debe realizar alguna operacin
aritmtica o lgica con los datos.
o Control: alteracin de la secuencia de ejecucin, ej. JUMP

Ejecucin del Programa:

Con un conjunto de instrucciones ms complejos se hubieran necesitado


menos ciclos (ej. ADD B,A)
Los procesadores modernos incluyen instrucciones que contienen ms
de una direccin.
As el ciclo de ejecucin de un instruccin particular puede ocasionar
ms de una referencia a memoria.
Los estados de la parte superior del diagrama, ocasionan intercambios
entre la CPU y la memoria o un mdulo de E/S.
Los estados de la parte inferior del diagrama, slo ocasionan
operaciones internas a la CPU.
Obsrvese adems que se considera en el diagrama la posibilidad de
que una instruccin necesite mltiples operandos y de lugar a mltiples
resultados.
Adems de que se puede especificar una instruccin que realice
operacin con un vector (matriz unidimensional) de nmeros o con una
cadena (matriz unidimensional) de caracteres.

Interrupciones:

Prcticamente todas las computadoras contienen un mecanismo


mediante el cual otros mdulos (E/S, memoria) pueden interrumpir el
procesamiento normal de la CPU.
o Interrupciones generadas por programa: Ej. overflow
(desbordamiento aritmtico, divisin por cero, instruccin inexistente,
etc.

Interrupciones generadas por tiempo: Generadas por un temporizador


interno al procesador.
o Interrupciones generadas por E/S: Generadas por un controlador E/S,
para indicar la finalizacin de una operacin o para indicar
condiciones de error.
o Interrupciones generadas por fallo de hardware: Generadas por un
fallo tal como la falta de potencia de alimentacin o un error de
paridad en la memoria.
Las interrupciones proporcionan una forma de mejorar la eficiencia del
procesador.
Debido a que la mayora de los dispositivos externos son mucho ms
lentos que el procesador, con las interrupciones podemos lograr que el
procesador se ocupe en otras tareas y no quede a la espera de las
respuestas procedentes de los dispositivos externos que le generan un
considerable tiempo muerto.
Para permitir el uso de interrupciones se aade un ciclo de interrupcin
al ciclo de instruccin.
El procesador comprueba si se ha generado alguna interrupcin.
Si no hay seales de interrupcin pendientes, el procesador contina con
el ciclo de captacin y accede a la siguiente instruccin del programa en
curso.
Si hay alguna interrupcin pendiente:
o Suspende la ejecucin del programa y guarda su contexto
(almacena el contenido actual del PC y cualquier otro dato
relacionado con la actividad en curso)
o Carga el PC con la direccin de comienzo de una rutina de gestin
de interrupciones.
Luego el procesador prosigue con el ciclo de captacin y accede a la
primera instruccin del programa de gestin de interrupciones.
Generalmente el programa de gestin de interrupciones forma parte del
Sistema Operativo.
Atiende al programa de gestin de interrupciones y luego contina con
el ciclo de instrucciones del programa principal.
Lo anterior se repite por cada interrupcin que reciba el procesador.
o

Interrupciones mltiples:

Qu hacer si el procesador est atendiendo una interrupcin y en ese


momento surge otra(s) llamada(s) a interrupcin(es)?
Interrupcin inhabilitada: Cuando surge una interrupcin, el procesador
para atenderla ignora a las dems interrupciones desactivndolas. Luego
que termina de atender a la interrupcin el procesador comprueba si se
produjo alguna otra adicional y procede a atenderla. El ciclo anterior se
repite.
Interrupcin por prioridades: Alternativa que consiste en definir
prioridades para las interrupciones y permitir que una interrupcin de

prioridad ms alta pueda interrumpir a un gestor de interrupcin de


prioridad menor.
Estructura de interconexin:

Computador: red de mdulos elementales (procesador, memoria, E/S)


enlazados entre s mediante una estructura de interconexin.
El diseo de la estructura de interconexin depender de los
intercambios que deban producirse entre los mdulos.
Se tendr diferentes tipos de conexiones para los diferentes mdulos
o Memoria
N palabras de igual longitud con direcciones que van desde
la 0 a la N-1.
Recibe y enva datos.
Recibe direcciones.
Recibe seales de control: Lectura, Escritura y Reloj o
tiempo
o Mdulos E/S
Similar a la memoria desde el punto de vista de la
computadora.
Lectura y escritura.
Un mdulo puede controlar ms de un dispositivo externo
mediante sus puertos.
Cada puerto (interface) con una direccin.
Lneas externas para la entrada salida de datos de un
dispositivo externo.
Puede enviar seales de interrupcin al procesador.
o Procesador
Lee instrucciones y datos.
Enva datos procesados.
Utiliza seales de control.
Recibe interrupciones.
La estructura de interconexin debe dar cobertura a los siguientes tipos
de transferencias:
o Memoria a procesador: el procesador lee una instruccin o un dato
desde la memoria.
o Procesador a memoria: el procesador escribe un dato en la
memoria.
o E/S a procesador: el procesador lee datos de un dispositivo de E/S
a travs de un mdulo de E/S.
o Procesador a E/S: el procesador enva datos al dispositivo de E/S.
o Memoria a E/S y viceversa: en estos dos casos, un mdulo de E/S
puede intercambiar datos directamente con la memoria, sin que
tengan que pasar a travs del procesador, utilizando el acceso
directo a memoria (DMA =Direct Memory Access).

Interconexin con buses:

Camino de interconexin entre dos dispositivos.


Medio compartido.
Usualmente broadcast.
Seales disponibles para todos los dispositivos conectados al bus.
Solo un dispositivo puede transmitir a la vez con xito.
Formado por varias lneas o caminos de comunicacin.
Buses paralelos, varias lneas para transmitir datos binarios.
Ej. dato de 8 bits en bus de 8 lneas.
A cada lnea (o conjunto) se le asigna una funcin en particular.
Se pueden clasificar en tres grupos funcionales:
o Lneas de control, de direccin y de datos; tambin pueden existir
lneas de alimentacin para suministrar energa a los mdulos
conectados a los buses.

Bus de datos:

Camino para los datos (o instrucciones).


Su anchura determina cuantos bits se pueden transferir al mismo tiempo
(8, 16, 32, 64 bits).
Su anchura es un factor clave para determinar su performance:
o Si es de 8 bits y las instrucciones son de 16 bits entonces el
procesador debe acceder dos veces al mdulo de memoria por
cada instruccin.

Bus de direcciones:

Se utilizan para designar la fuente o el destino del dato (o la instruccin)


situado en el bus de datos.
o Ej., si el procesador desea leer una palabra (dato o instruccin)
situado en la memoria (o en un mdulo de E/S) situar la direccin
de la palabra en el bus de direcciones.
Su anchura determina la mxima capacidad de memoria posible del
sistema.
Ej. en el procesador 8080 su bus era de 16 bits, lo que permita
direccionar hasta 64k (64* 103= 64,000 posiciones) de memoria.
Tambin se utiliza para direccionar los puertos de los mdulos de E/S.
Direcciones inferiores para memoria y altas para puertos.

Bus de control:

Controla el acceso a las lneas de datos y de direcciones.


Transmiten tanto rdenes como seales de temporizacin o
sincronizacin entre los mdulos del sistema.
Las seales de temporizacin indican la validez de los datos y las
direcciones.
Las seales de rdenes indican la operacin a realizar.
Lneas de control tpicas:
o Memory write: dato del bus se escribe en la posicin direccionada.

o
o
o
o
o
o
o
o
o
o

Memory read: dato de la posicin direccionada se sita en el bus.


I/O write: dato del bus se transfiere al puerto de E/S direccionado.
I/O read: dato del puerto de E/S direccionado se sita en el bus.
Transfer ACK (transferencia reconocida): dato aceptado o situado
en el bus.
Bus request (peticin del bus): indica que un mdulo necesita
disponer del control del bus.
Bus grant (cesin del bus): indica que se cede el control del bus a
un mdulo que lo haba solicitado.
Interrupt request (peticin de interrupcin): indica si hay una
interrupcin pendiente.
Interrupt Ack (interrupcin reconocida): seala que la interrupcin
pendiente se ha aceptado.
Clock: sincroniza operaciones.
Reset: coloca los mdulos conectados al bus en su estado inicial

Funcionamiento del bus:

Para enviar un dato:


o 1. Obtener el uso del bus.
o 2. Transferir el dato a travs del bus.
Para pedir un dato:
o 1. Obtener el uso del bus.
o 2. Transferir la peticin al otro mdulo mediante las lneas de
control y direccin.
o 3. Esperar al que el segundo mdulo enve el dato.

Problemas para un bus:

A mayor cantidad de dispositivos conectados, mayor retardo de


propagacin.
Si el control del bus pasa de un dispositivo a otro, aumentan los retardos
de propagacin y las prestaciones disminuyen.
Cuello de botella a medida que las peticiones del bus se acercan a la
capacidad del bus.
Solucin: utilizar varios buses organizados jerrquicamente con
diferentes capacidades.

Tipos de buses:

Dedicado: est permanentemente asignado a una funcin1 o a un


subconjunto fsico de componentes2.
o Ej. dedicacin funcional1: lneas separadas para direcciones y
para datos.
o Ej. subconjunto fsico de componentes2: bus de E/S para
interconectar todos los mdulos E/S. Lo anterior, eleva el
rendimiento del sistema debido a que existe menos conflicto por
el acceso al bus. Desventaja, incremento del tamao y costo del
sistema.

Multiplexado: se utilizan las mismas lneas para transmitir diferentes


tipos de informacin, como por ejemplo datos y direcciones.
o Con una lnea de control de Direccin Vlida situamos al comienzo
de la transferencia de datos, la direccin se sita en el bus y se
activa la lnea de control.
o Luego cada mdulo tiene un tiempo para copiar la direccin y
determinar si l es el mdulo direccionado.
o Despus la direccin se quita del bus, y se utilizan las mismas
lneas para transferir el dato (lectura o escritura).
o Lo anterior se conoce como multiplexado por tiempo.
o Multiplexacin en las redes de cmputo: Es el proceso por medio
del cual mltiples canales de datos se combinan para viajar por un
mismo medio fsico.

Mtodos de arbitraje de buses:

Centralizado: un nico dispositivo de hardware, denominado controlador


de bus o rbitro es el responsable de asignar tiempos al bus.
o El rbitro puede ser un dispositivo separado o estar integrado al
procesador.
Distribuido: no existe un controlador central, cada mdulo dispone de
lgica para controlar el acceso, y los mdulos actan conjuntamente
para compartir el bus.
o En ambos mtodos de arbitraje se designa un dispositivo, el
procesador o un mdulo de E/S, como maestro del bus.
o El maestro podra iniciar la transferencia de datos (lectura o
escritura) con otro dispositivo, que acta como esclavo.

Temporizacin de buses: (Hace referencia a la forma en que se coordinan los


eventos en el bus.)

Sncrona: en esta los eventos estn coordinados por un reloj. El bus


incluye una lnea de reloj a travs de la que se transmite una secuencia
de 1s y 0s.
o Un ciclo de reloj es cuando tengo un nico intervalo de 1 seguido
a 0, tambin se conoce como ciclo de bus y define un intervalo de
tiempo unidad (o time slot).
o Todos los dispositivos pueden leer la lnea de reloj, y todos los
eventos comienzan al principio del ciclo de reloj.
Asncrona: la presencia de un evento es en el bus es consecuencia y
depende de que se produzca un evento previo.
o Es ms difcil de implementar y comprobar que la sncrona.
o Es ms flexible que la sncrona ya que los dispositivos no deben
utilizar una misma frecuencia de reloj para sincronizar sus
operaciones.
o Pueden compartir el bus dispositivos lentos con dispositivos
rpidos, utilizando tanto las tecnologas ms antiguas como las
ms recientes.

Anchura del bus:

La anchura del bus de datos afecta a las prestaciones del sistema.


Cuanto ms ancho es el bus de datos, mayor cantidad de datos se
transmiten a la vez.
La anchura del bus de direcciones afecta la capacidad del sistema.
Cuanto ms ancho es el bus de direcciones, mayor es el rango de
posiciones de memoria a las que puedo hacer referencia.

Tipos de transferencia de datos de bus:

Lectura /escritura no multiplexada: dato y direccin enviados por el


mdulo maestro en el mismo ciclo sobre lneas de bus distintas.
Escritura multiplexada: direccin primer ciclo, dato segundo ciclo.
Lectura modificacin escritura: lectura seguida inmediatamente de una
escritura en la misma direccin.

El bus PCI:( Peripheral Componet Interconnect, interconexin de componente


perifrico)

es un bus muy popular, de ancho de banda elevado, independiente del


procesador.
Est diseado para permitir una cierta variedad de configuraciones
basadas en sistemas monoprocesador y sistemas multiprocesador
o Proporciona un conjunto de funciones de uso general
o Las direcciones y datos estn multiplexadas en el tiempo
o El esquema de arbitraje empleado es centralizado
o Utiliza temporizacin sncrona
El diseo del bus PCI se ha realizado especficamente para ajustarse a
los requisitos de E/S de los sistemas actuales.
Podemos distinguir tres ventajas del bus PCI:
o Es econmico: se implementa con muy pocos circuitos
o Es flexible: permite que otros buses se conecten a l
o Es rpido: comparado con otras especificaciones comunes de bus,
proporciona un mejor rendimiento para los subsistemas de E/S de
alta velocidad.
Las especificaciones del bus PCI son de dominio pblico.
Son respetadas por un amplio abanico de fabricantes de procesadores y
perifricos, por lo que los productos de diferentes compaas son
compatibles.
La asociacin PCI SIG (Special Interest Group) contina el desarrollo de
las especificaciones y vela por que se mantenga la compatibilidad.
El resultado ha sido que el bus PCI no solo est ampliamente adoptado
en la actualidad sino que su uso se sigue extendiendo.
Un dispositivo integra el controlador de memoria y el adaptador al bus
PCI:
o Proporciona el acoplamiento al procesador (buffer temporal).

Asla la capacidad de E/S del procesador de la velocidad real del


bus, lo que posibilita transmitir datos a alta velocidad.
Se pueden conectar una o varias configuraciones PCI al bus del sistema
por medio de adaptadores
o Al bus del sistema slo se conectan las unidades
procesador/cach, la memoria principal y los adaptadores.
o Los adaptadores mantienen la independencia procesador-PCI.
El estndar actual permite configurar el bus PCI como un bus de 32 o
64 bits.
o La especificacin tambin define 51 seales opcionales que se
dividen en los siguientes grupos funcionales:
Terminales de interrupcin: no son lneas compartidas
cada dispositivo tiene sus propias lneas para generar
peticiones a un controlador de interrupciones
Terminales de soporte de cach: necesarios para permitir
memorias cach en el bus asociadas a un procesador o a
otro dispositivo
Terminales de ampliacin a bus de 64 bits:
o 32 lneas para direcciones y datos multiplexadas en el tiempo
que se pueden combinar con las obligatorias para tener un total
de 64.
o Lneas adicionales para interpretar y validar las direcciones y
datos, as como para permitir que dos dispositivos acuerden el uso
de los 64 bits
Terminales de test: siguen estndar IEEE para procedimientos de test.
La actividad del bus consiste en transferencias entre dispositivos
conectados al bus:
o El dispositivo que inicia la transferencia es el maestro.
o Cuando el maestro adquiere el control del bus determina el tipo
de transferencia que se realizar (lneas C/BE).
El bus PCI utiliza un esquema de arbitraje centralizado sncrono en el que
cada maestro tiene una nica seal de peticin (REQ) y cesin (GNT) del
bus.
Estas lneas se conectan a un rbitro central, lo que permite que los
dispositivos accedan al bus tras un simple intercambio de seales de
peticin y cesin.
La especificacin del bus PCI no indica un algoritmo particular de
arbitraje
o El rbitro puede utilizar cualquier esquema de prioridad
o Primero en llegar, primero en servirse
o Rotatorio (round robin)
o El maestro establece, para cada transferencia que desee realizar,
si tras la fase de direccin sigue una o ms fases de datos
consecutivas.
o

También podría gustarte