3. Unidades funcionales de una Computadora

Anuncio
3. Unidades funcionales de una Computadora
3.1 Computadora (UNLP)
Una Computadora es una máquina digital y sincrónica, con cierta capacidad de cálculo
numérico y lógico, controlada por un programa almacenado, y con posibilidad de comunicación con
el mundo exterior.
¿Qué significa esto?
Es digital porque dentro de la computadora las señales eléctricas que se manejan y la
información que se procesa se representa en forma discreta, por medio de valores binarios (0 y 1).
Además se afirma que es sincrónica, es decir que realiza las operaciones coordinada por un
reloj central que envía pulsos de sincronismo a todos los elementos que componen la computadora.
Esto significa que todas las operaciones internas se realizan en instantes de tiempo predefinidos y
coordinados con el reloj.
Internamente posee una capacidad de cálculo numérico y lógico, en un subsistema conocido
como unidad aritmético-lógica (UAL). Normalmente las operaciones que pueden realizarse en ella
son muy simples (suma, disyunción, conjunción, comparaciones).
El hecho de que sea controlada por programas es quizás el punto más importante que
diferencia a una computadora de una calculadora. Significa que internamente se tienen órdenes o
instrucciones almacenadas, que la computadora podrá leer, interpretar y ejecutar ordenadamente.
Además, está comunicada con el mundo real, que es analógico. Esto significa que puede
realizar operaciones de entrada y salida con el mundo real, a través de dispositivos periféricos (por
ejemplo el teclado o mouse para entrada de información, y pantalla como salida)
La computadora es una máquina que cambia información de una forma a otra: recibe
información (entrada), la transforma, y proporciona información (salida). Esta información puede
presentarse de muchas formas, lo que convierte a la computadora en una máquina sumamente
versátil, que es capaz desde liquidar impuestos hasta guiar el recorrido de una nave espacial. En
cada caso las entradas y salidas son totalmente distintas, y en esto radica lo sorprendente de poder
usar una computadora para ambas actividades.
Esta versatilidad está dada en que la máquina está controlada por un programa, que
establece las instrucciones que le indican a las partes físicas qué deben hacer para transformar los
datos de entrada en la salida requerida. El programa controla todo el proceso, del principio al fin:
podemos modificar su funcionamiento con solo cambiar el programa.
3.2 Máquina de Von Neumann
En el año 1946, John Louis Von Neumann -junto a otros colaboradores- escribió un artículo
de investigación titulado "First Draft of a Report of the EDVAC". En el mencionado documento se
expresaban algunas ideas acerca de como debía operar una computadora. A tales conceptos,
derivados del artículo, se los conoce con el nombre de Máquina o Arquitectura de Von Neumann;
y han brindado las bases para la construcción y el desarrollo de computadoras hasta los días
actuales.
Hasta antes de Von Neumann la programación de una computadora consistía directamente
en la reordenación física de sus componentes. La arquitectura Von Neumann se fundamenta en el
concepto de programa almacenado; donde de forma revolucionaria, plantea que las instrucciones
y los datos tenían que almacenarse juntos en un medio común y uniforme -denominado
memoria-, en vez de estar separados. Así las instrucciones y los datos podían leerse y escribirse
bajo el control del programa. Nótese que un elemento de memoria o celda tiene una calidad ambigua
con respecto a su interpretación -es instrucción o dato-; esta ambigüedad se resuelve al momento de
la ejecución del programa almacenado, debido a que él mismo determinará qué celdas contienen
datos y cuales instrucciones.
Un segundo concepto, introducido por Von Neumann, es la ruptura de secuencia. Se dotó a
la computadora de una instrucción denominada "salto condicional", donde según el resultado de una
operación, se ejecutaría la siguiente instrucción u otra.
Junto con la arquitectura se definió el ciclo de trabajo de una computadora (conjunto de
pasos a realizar para ejecutar una instrucción de programa), que en su forma simple consta de las
siguientes operaciones:
Mientras haya instrucciones {
Tomar de la memoria la siguiente instrucción.
Decodificar la instrucción.
Tomar de la memoria él o los operandos asociados.
Ejecutar la operación.
Almacenar en memoria los resultados.
}
A la computadora debe considerársela como una máquina procesadora de información capaz
de transformar un programa escrito en un lenguaje de alto nivel -generalmente expresado en
lenguaje natural- en un programa en lenguaje que el hardware pueda decodificar y ejecutar. La tarea
de conversión de lenguaje de alto nivel a lenguaje de máquina la debe realizar un programa
denominado compilador.
En principio el hardware de un sistema se puede estructurar en tres partes claramente
diferenciadas: la Unidad Central de Proceso (CPU o UCP), la memoria principal, y los
dispositivos de entrada/salida. Todos estos elementos están conectados entre sí por los buses de
comunicaciones. La unidad de entrada es el dispositivo por donde se introducen en la computadora
los datos y las instrucciones. La unidad de salida de datos es un dispositivo donde se obtienen los
resultados de los programas ejecutados en la computadora.
Una forma alternativa de ver la computadora se presenta en el siguiente gráfico. Se han
agregado los buses de comunicaciones que permiten solicitar, almacenar datos y controlar los
dispositivos. Nótese el sentido del flujo de información sobre los buses.
Bus Control
Bus de datos
Bus de direcciones
UCP
Memoria
de
trabajo
Unidad
Central
de
Proceso
PeriféricoPeriférico
de
de
E/S
E/S
A mayor detalle, la máquina propuesta por Von Neumann consiste de los siguientes
elementos:
 una memoria principal
 una Unidad Central de Proceso (UCP o CPU que contiene:
(b1) una Unidad Aritmético Lógica (UAL) , cuya finalidad es ejecutar todas las operaciones
aritméticas y lógicas,
(b2) una Unidad de Control (UC) , cuya función básica es la de gerenciar el ciclo de trabajo
descripto anteriormente.
(b3) un conjunto de registros
 líneas de transferencia (buses) de datos, direcciones de memoria y control
 dispositivos de entrada/salida
La UAL y la UC conforman al procesador o microprocesador.
3.2.1 Memoria principal
La memoria es el componente responsable por el almacenamiento de los datos e
instrucciones que componen un programa. Se trata de un conjunto finito de celdas del
mismo tamaño, cada una identificada con una dirección, que pueden almacenar datos o
instrucciones de programa
A la memoria de trabajo, donde es posible leer y escribir, se la conoce con el nombre
de memoria de acceso aleatorio (RAM). Su nombre deriva de que es posible acceder
directamente a cualquier lugar de ella. Existe un segundo tipo de memoria, de solo lectura,
denominada ROM; sobre la cual los fabricantes graban programas y datos básicos para el
funcionamiento de la computadora.
Sobre la celda, unidad básica de toda memoria, se pueden realizar dos tipos de
operaciones: lectura y escritura. Donde lectura significa que el procesador recupere el valor v
almacenado en una celda n, y escritura significa que el procesador solicite la grabación de un
valor v sobre una celda de dirección n.
A los efectos de poder realizar estas operaciones, una memoria posee el auxilio de dos
registros (unidades de almacenamiento similares a una celda) a saber:
registro de direcciones y
registro de datos.
Para ejecutar una operación de lectura se carga el registro de direcciones con la
dirección de la celda a leer, y luego de la recuperación se tiene copiado el contenido de la
celda sobre el registro de datos. Para realizar una escritura se realiza el camino inverso, es
decir se instancia el registro de datos con el nuevo valor a almacenar, y se almacena en el
registro de direcciones la dirección de la celda que contendrá tal valor.
La cantidad de celdas de una memoria (capacidad de almacenamiento) está limitada
por dos cuestiones:
La tecnología utilizada para la fabricación del componente.

La capacidad del registro de direcciones (su tamaño). A más bits permitirá direccionar
sobre una cantidad mayor de celdas.
A
33
alfa
0
1
Registro de direcciones
12
2
3
..
-4
455
print
jmp
E
F
10
11
-55
Bus de
datos
Bus de
direcciones

Registro de datos
Al procesador
Al procesador
Esquema de una memoria principal
La unidad básica de almacenamiento en una memoria es un bit. Una celda de una
memoria puede almacenar n bits. Por ejemplo si se tuvieran celdas de longitud de dos bits se
podrían almacenar uno de cuatro valores diferentes, con celdas de longitud de tres bits 1 de 8
valores diferentes, y así con celdas de c bits se podría almacenar 1 de 2^c valores diferentes.
De forma estándar una celda de tamaño mínimo está compuesta por 1 byte (8 bits) y
se puede almacenar 1 de 2^8 valores diferentes. Por ejemplo si en un modelo de
computadora se dispusiese de un registro de direcciones de 4 bits se podrían direcciones
como máximo 2^4 (16) celdas de memoria de 1 byte cada una, y 16 bytes sería la capacidad
de almacenamiento en memoria principal.
La longitud (en bits) del registro de datos define el tamaño de la palabra de memoria.
Una palabra consiste en la cantidad de bits que se consigue copiar entre procesador y
memoria en una única operación de lectura o escritura. Normalmente la palabra es múltiplo de
1 byte.
La longitud (en bits) del registro de direcciones define la cantidad máxima de celdas de
memoria direccionables (alcanzables). Por ejemplo, con un registro de direcciones de 16 bits
y un registro de datos de 32 bits se tiene:
Cantidad de celdas direccionables = 65.536 (2^16)
Tamaño de la memoria = 65.536 celdas * (4 bytes) = 262.144 bytes
o 256 KB
Si bien se describió la memoria principal (por su importancia dentro del esquema de
Von Neumann) no es el único tipo de memoria existente en una computadora moderna. La
necesidad de obtener una capacidad de almacenamiento permanente y de optimizar
determinados procesos hace que los fabricantes desarrollen diferentes tipos de memorias,
con diferentes tecnologías y capacidades específicas.
Por ejemplo, existen memorias de almacenamiento permanente (generalmente
conocidas como memorias secundarias que permiten “guardar” los datos y los programas aún
luego de finalizada una sesión de trabajo y apagada la computadora. Actualmente, esta tarea
la cumplen dispositivos denominados discos rígidos y son el complemente necesario de la
memoria principal ya que permiten almacenar grandes volúmenes de datos que se utilizan en
la computadora en diferentes momentos.
La siguiente tabla muestra distintos tipos de memorias existentes en una computadora
y sus características:
Tipo de memoria
Tecnología
Cache
Semiconductor
RAM
Memoria principal Semiconductor
RAM
Disco magnético Disco rígido
Tamaño
128-512 KB
Tiempo de acceso
10 nseg
4-512 MB
50 nseg
Gigabyte
10 mseg
10 Mbyte/seg
Disco óptico
Cinta magnético
CD-ROM
Gigabyte
Cinta
Gigabyte
300 mseg
600 KB/seg
Seg
200 KB/seg
Parámetros típicos de una memoria
Registros
CPU
Cache
Memoria principal
Cache de disco
Disco Magnético
Disco óptico
Cinta Magnética
Jerarquía de las memorias
3.2.2 Unidad Central de Proceso
La CPU o UCP contiene los siguientes tres módulos:



la memoria
la unidad aritmética y lógica
y la unidad de control
La UAL y la UC conforman al procesador o microprocesador.
3.2.2.1 Unidad Aritmético y Lógica
La unidad aritmética y lógica es el componente encargado de realizar las
operaciones tanto aritméticas (suma, resta, multiplicación, división) como lógicas (and,
or, not) derivadas de la ejecución de un programa y es dirigida por la Unidad de
Control.
Dispone de un conjunto de registros internos que la auxilian en la tarea de
cálculo. Tales registros se utilizan a los efectos de traer datos de memoria y almacenar
temporalmente resultados para luego copiarlos a memoria. Como ejemplo, para
ejecutar una operación en una UAL primero se cargan los registros OP1 y OP2 con los
operandos pertinentes a la operación a realizar (normalmente se copian desde la
memoria central), luego se selecciona la operación y finalmente es resultado es
depositado en el registro ACC.
En resumen, la UAL comprende:
Varios registros de memoria llamados acumuladores, donde se almacenan
los resultados parciales de las operaciones .
Circuitos dedicados a la suma, resta, multiplicación, división, comparación y
testeo.
3.2.2.2 Unidad de Control
Componente que controla el ciclo de procesamiento, coordinando todas las
actividades de la computadora. Cada vez que se requiere ejecución de una instrucción,
la UC reconoce la misma, carga los operandos, ejecuta la instrucción y almacena los
resultados. Posee, de forma embutida o empotrada, el conjunto de instrucciones
primitivas (microinstrucciones) que el procesador es capaz de interpretar y ejecutar
(que normalmente es bastante reducido).
Las instrucciones primitivas (también denominadas de máquina) puede ser
clasificadas en tres grupos:

Transferencia de datos: Son instrucciones que se refieren a la
transferencia de datos entre memoria central y los registros del
procesador. Ejemplos: LOAD, STORE.

Aritméticas y lógicas: Son aquellas instrucciones relacionadas con las
operaciones aritméticas y lógicas. La unidad de control utiliza la UAL para
su realización. Ejemplos: ADD, SUM, INC SUB, MUL, DIC.

Instrucciones de control: Son las utilizadas para controlar la ejecución de
un programa y la transferencia de datos, instrucciones y resultados.
Ejemplos: JUMP, JUMPIFZERO, JUMPIFNOTZERO, HALT.
La unidad de control, en su forma más simplificada, se auxilia de dos
registros: el registro de instrucciones y el registro contador de instrucciones (PC).

El registro de instrucciones o contador de programa (IR), que contiene el
código de la próxima instrucción a ejecutarse.

El registro contador de instrucción (PC), que contiene la dirección de
memoria principal de la siguiente instrucción a ser ejecutada.
A los efectos de comunicarse con los demás componentes la UC posee
dos registros a saber:

El registro de dirección de memoria (MAR) que contiene la dirección de la
posición de memoria a ser leída o escrita.

El registro de datos de memoria (MDR) que contiene el dato a ser leído o
escrito en memoria de trabajo.
Una operación de lectura y de escritura sobre memoria principal puede
ser descripta en base a los siguientes pasos:
Operación de lectura de una celda de memoria principal:
1. Cargar el registro de direcciones con la dirección de la celda a leer.
2. Activar la operación de lectura, el valor de la celda referenciada por el
registro de direcciones se copiará en el registro de datos.
Operación de escritura en memoria principal:
1. Cargar el registro de datos con el valor a almacenar.
2. Cargar el registro de direcciones con la dirección de la celda donde se
grabará el dato.
3. Activar la operación de escritura
La sincronización entre las etapas que componen el ciclo es realizada
por un reloj común a todos los componentes.
3.2.3 Líneas de comunicación - Buses
Los periféricos de entrada/salida representan a los dispositivos que permiten la
comunicación con el exterior (Ej, módulo controlador de teclado, vídeo, reproducción de
sonido, etc). A los efectos de interconectar todos los módulos se implementa un cableado
denominado sistema de bus.
Un sistema de bus está compuesto por el conjunto de caminos compartidos que
permiten la interconexión de los distintos componentes: UCP, memoria y periféricos de
entrada/salida. Un bus está formado por un conjunto de líneas eléctricas que permiten la
transmisión de datos en paralelo.
Hay tres tipos de buses:

de datos: por donde, de forma bidireccional, fluyen los datos entre las distintas
partes de la computadora.

de direcciones, por donde viajan las direcciones de memoria sobre las cuales se
quiere leer o escribir.

de control, por donde viajan señales que controlan el acceso y el uso a los buses de
datos y de direcciones. Señales de control pueden ser: escribir en memoria, leer de
memoria, escribir o leer en un dispositivo de entrada/salida, etc.
3.2.4 Dispositivos de entrada/salida
Las operaciones de entrada/salida son las encargadas de controlar y realizar el
intercambio de información entre la computadora y el mundo exterior.
Existen una gran variedad de dispositivos de entrada/salida, con características
muy diferentes a las de la CPU. La velocidad de transmisión de los periféricos es
mucho menor que la velocidad de operación de una CPU, los periféricos poseen
velocidades muy diferentes entre sí.
Los periféricos son los dispositivos que hacen posible el intercambio de
información entre la computadora y el mundo exterior. Se clasifican en:

Unidades de entrada

Unidades de salida

Unidades de Entrada/Salida
3.2.4.1 Periféricos de entrada:
Son los encargados de introducir los datos y los programas desde el exterior a la
memoria principal para que puedan ser utilizados por la computadora. Transforman los
datos introducidos en códigos binarios que pueden ser entendidos y procesados por la
computadora.
Ejemplos:
1.
2.
3.
4.
5.
Teclado. Es similar al teclado de una máquina de escribir y cuenta además con
algunas teclas de controles y funciones.
Mouse. Es un dispositivo que al ser desplazado sobre una superficie permite
mover el cursor por la pantalla. Existen los de sistema mecánico y de sistema
óptico.
Sensores. Este tipo de periféricos incluye a las pantallas táctiles, capaces de
seleccionar distintas opciones reconociendo el tacto sobre distintas zonas de la
pantalla. También podemos encontrar otro tipo de sensores como el lápiz óptico,
que cuando se posa en la pantalla reconoce la posición que ocupa mediante una
medición de la luminosidad que recibe, la tableta gráfica, similar a una pizarra
provista de un lápiz (los trazos sobre la tableta aparecen en la pantalla del
computador), etc.
Escáner. Permite digitalizar imágenes planas (fotografías o texto) y archivarlas.
Otros: lector de tarjetas magnéticas, lector de marcas ópticas, joystick,
reconocedor de voz, cámara de video, pantalla sensible al tacto, etc.
3.2.4.2 Periféricos de salida:
Son los encargados proporcionar al exterior los datos de salida o resultados de
los procesos que se realizan en la computadora.
Ejemplos:
1.
2.
3.
Pantalla o monitor. Es el principal instrumento de comunicación entre la
computadora y el usuario. Su constitución física es similar a la del tubo de
imagen de un televisor.
Plotter. Permite realizar gráficos de alta precisión como mapas o diseños
técnicos.
Impresora. Su misión es proporcionar copias impresas en papel de la
información guardada en la computadora. Hay diversos tipos de impresoraa,
entre los que destacan las impresoras de matriz de puntos, de chorro de tinta y
las impresoras láser.
3.2.4.3 Periféricos de entrada/salida:
A través de ellos se intercambia información con la CPU en ambos sentidos. Un
subconjunto importante de estos corresponde a los dispositivos de almacenamiento.
Ejemplos:
1.
2.
Modem. Es un dispositivo que permite la comunicación de una computadora con
otra a través de la línea telefónica (red conmutada) o a través de líneas
destinadas en forma exclusiva (líneas punto a punto). Para ello convierte los
datos binarios en señales moduladas de baja frecuencia. Su nombre procede de
su doble función: MOdulador, DEModulador. Su velocidad se mide en baudios,
que equivalen aproximadamente a bits por segundo, al incluir las necesarias
señales de control.
De almacenamiento: Disquetera, discos rígidos, discos ópticos, unidades de
cinta. Los periféricos de almacenamiento son también conocidos como memorias
secundarias y memorias auxiliares. La mayoría de estos dispositivos almacenan
la información de forma magnética. El primero de todos los dispositivos de
almacenamiento magnético fue la unidad (lectora y grabadora) de cinta
magnética, y posteriormente se desarrollaron las unidades de discos fijos o
discos duros y las unidades de discos flexibles. En una cinta magnética el acceso
a la información es secuencial (tenemos que hacer correr la cinta hasta que
aparezca la información que buscamos); esto hace que sea un medio muy lento.
Generalmente las cintas magnéticas, debido a su gran capacidad, se utilizan
para hacer periódicamente copias de seguridad (backup) de la información
almacenada en los discos duros del computador. Los discos magnéticos reciben
este nombre porque su superficie es magnética y son dispositivos de acceso
directo, esto es, no tenemos que recorrer toda la información que hay delante de
la que necesitamos. Los discos magnéticos necesitan organizarse lógicamente
para poder albergar información de un modo ordenado; dar formato a un disco
magnético es dotarlo de la organización lógica necesaria. La información se
almacena siguiendo círculos concéntricos llamados pistas que a su vez se
dividen en sectores. Para indicar una dirección se especifica la pista y el sector
donde comienza la información.
Entre los distintos tipos de disco destacan los discos duros (hard disk),
que disponen de una gran capacidad de almacenamiento. Suelen ser fijos (no se
pueden extraer del computador) y suelen contener el sistema operativo y los
programas de uso más común. Los discos flexibles o diskettes, son extraíbles y
por eso pueden ser usados para transferir información de una computadora a
otra. Estos discos tienen una capacidad mucho menor que un disco duro y el
tiempo de acceso a la información almacenada es bastante grande.
Asimismo podemos distinguir entre periféricos locales y periféricos remotos, según su
conexión a la computadora. Un periférico local, como el mouse, se encuentra cerca de la CPU
conectado mediante cables que hacen las veces de prolongador de los buses de la
computadora. Para un periférico remoto, como una impresora láser, la conexión se realiza a
través de una red de comunicaciones.
Descargar