2. INTRODUCCION
Un Ordenador procesa o elabora los datos que se le
suministran, puede por ejemplo realizar el promedio de unos
datos introducidos previamente, realizar una gráfica con esos
datos o suministrar un listado ordenado de mayor a menor de
dichos datos.
Para realizar estos procesos, el ordenador debe disponer de
recursos para almacenar la información mientras ésta es
elaborada, memoria, y asimismo de los dispositivos que
permitan tanto su introducción, como ofrecerla, ya elaborada,
a los usuarios. Estos últimos dispositivos reciben el nombre
de periféricos.
3. Permiten la introducción de
información en el ordenador,
existen dos tipos de
dispositivos, aquellos que
convierten los datos en un
formato capaz de ser
interpretado por el
ordenador como el teclado y
los que permiten su entrada
directa como el escáner,
lectores de tarjetas o
códigos de barras o la
pantalla táctil.
Unidad de Entrada
Dispositivos donde se
almacenan los datos y los
programas para procesarlos.
Existen dos tipos: Memoria
Principal, constituida por
circuitos integrados y que a su
vez se subdivide en RAM y ROM;
y la Memoria Secundaria, donde
se almacenan otros datos que no
tienen cabida en la principal, la
constituyen los Discos duros
(HD), CD-ROM, disquetes (FD),
Unidades de cinta
01 02
Unidad de
ALMACENAMIENTO
03
Unidad
Aritmético/Lógica
Es la parte encargada de
procesar los datos, se
conoce también como ALU
(Arithmetic-Logic Unit).
Las operaciones que realiza
son de tipo aritmético:
suma, resta, multiplicación y
división; y de tipo lógico:
igual, mayor que o menor
que.
ESQUEMA DE UN ORDENADOR
4. Dirige la ejecución del
programa y controla tanto el
movimiento entre memoria y
ALU, como las señales que
circulan entre la CPU y los
Periféricos.
Unidad de CONTROL
Presentan al usuario los datos ya
elaborados que se encuentran en
la memoria del ordenador, los
más habituales son la pantalla y
la impresora.
04 05
Unidad de SALIDA
06
CPU
La Unidad de Control con la
Unidad Aritmético/Lógica y
la Memoria Principal forman
la Unidad Central de
Procesos (CPU), es decir el
Ordenador.
ESQUEMA DE UN ORDENADOR
5. UNIDAD ARITMETICA-LOGICA
La Unidad aritmético-lógica (ALU por sus siglas en inglés:
Arithmetic Logic Unit) es un contador digital capaz de
realizar las operaciones aritméticas y lógicas entre los datos
de un circuito; suma, resta, multiplica y divide, así como
establece comparaciones lógicas a través de los
condicionales lógicos “si”, “no”, y, “o”. Desde los circuitos
más simples, como relojes y calculadoras, hasta complejos
circuitos, como los microchips actuales, todos incluyen al
menos una Unidad aritmético-lógica, que varía su poder y
complejidad según su finalidad.
6. Las computadoras más modernas, que incluyen procesadores de
múltiples núcleos, incorporan a su vez múltiples dispositivos ALU, con
una diagramación compleja y potente. Pero yendo a los orígenes, fue el
matemático húngaro-estadounidense John von Neumann quien, en el
año 1945, a través de un informe fundacional sobre el desarrollo del
Computador Automático Variable Discreto Electrónico (EDVAC, por sus
siglas en inglés), propuso la idea de la ALU, explicando que es un
requisito indispensable para cualquier computadora el poder efectuar
operaciones matemáticas básicas. En la actualidad, las operaciones
que realiza una ALU entre los distintos datos, que deben ser iguales a
los que emplea el circuito digital, es la representación del número
binario de complemento a dos.
¿ SABIAS QUE ?
7. Operaciones en la ALU
Operaciones aritméticas
de números enteros
(adición, sustracción, y a
veces multiplicación y div
isión, aunque esto es
más complejo)
Operación lógica de
bits (AND, NOT, OR,
XOR, XNOR)
Con respecto a cualquier microprocesador, las instrucciones involucran operaciones sobre un
operando, o entre dos de ellos, estando uno de los mismos almacenado en el registro acumulador
que es el registro de trabajo de cualquier ALU, por lo que en algunos casos suele denominarse
registro W. El tipo de operaciones que puede realizar una ALU, pueden resumirse así:
Operación de desplazamiento de bits (Desplazan o
rotan una palabra en un número específico de bits
hacia la izquierda o la derecha, con o sin extensión de
signo). Los desplazamientos pueden ser interpretados
como multiplicaciones o divisiones por 2
8. DESPLAZAMIENTOS LOGICOS
- Independientemente del sistema de representación de los operandos se introducen
ceros por la derecha o por la izquierda según se trate de un desplazamiento a la
izquierda o a la derecha, respectivamente.
- El bit o los bits que salen suelen copiarse en el indicador de acarreo (el último que ha
salido es el que queda).
10. Las operaciones lógicas realizan la operación sobre cada uno
de los bits del operando o de los operandos
11. DESPLAZAMIENTOS ARITMETICOS
- Equivalen a multiplicaciones y divisiones por dos, según sean hacia la izquierda o a la
derecha, respectivamente.
- El sistema de representación de los operandos debe tenerse en cuenta si los
operandos tienen signo.
- El bit o los bits que salen suelen copiarse en el indicador de acarreo (el último que ha
salido es el que queda)
12.
13. DESPLAZAMIENTOS CIRCULARES
– Los bits que salen por un extremo entran por el otro.
– El bit o los bits que salen suelen copiarse en el indicador de acarreo (el último que ha
salido es el que queda)
14.
15. ENTRADAS Y SALIDAS
Las entradas a la ALU son los datos en los que
se harán las operaciones (llamados operandos)
y un código desde la unidad de control indicando
qué operación realizar. Su salida es el resultado
del cómputo de la operación.
En muchos diseños la ALU también toma o
genera como entradas o salidas un conjunto de
códigos de condición desde o hacia un registro
de estado. Estos códigos son usados para
indicar casos como acarreo entrante o saliente,
overflow, división por cero, etc.
16. ALU vs. FPU
Una unidad de coma flotante, Floating Point Unit (FPU),
también realiza operaciones aritméticas entre dos valores,
pero lo hace para números en representación de coma
flotante, que es mucho más complicada que la
representación de complemento a dos usada comúnmente
en una ALU. Para hacer estos cálculos, una FPU tiene
incorporados varios circuitos complejos, incluyendo
algunas ALU internas.
Generalmente los ingenieros llaman ALU al circuito que
realiza operaciones aritméticas en formatos de número
entero (como complemento a dos y BCD), mientras que los
circuitos que calculan en formatos más complejos como
coma flotante, números complejos, etc., reciben
generalmente un nombre más específico, como FPU.
17. OPERACIONES COMPLEJAS
Un ingeniero puede diseñar una ALU para calcular cualquier operación, sin importar
lo compleja que sea; el problema es que cuanto más compleja sea la operación,
tanto más costosa será la ALU, más espacio usará en el procesador, y más energía
disipará, etc.
Por lo tanto, los ingenieros siempre calculan un compromiso, para proporcionar al
procesador (u otros circuitos) una ALU suficientemente potente para calcular rápido,
pero no de una complejidad de tal calibre que haga una ALU económicamente
prohibitiva.
18. OPERACIONES COMPLEJAS
Imagina que necesitas calcular, digamos, la raíz cuadrada de un número; el ingeniero digital examinará las opciones siguientes
para implementar esta operación:
1. Diseñar una ALU muy compleja que calcule la raíz cuadrada de cualquier número en un solo paso. Esto es llamado cálculo
en un solo ciclo de reloj.
2. Diseñar una ALU compleja que calcule la raíz cuadrada con varios pasos (como el algoritmo que algunos hemos aprendido
en la escuela). Esto es llamado cálculo iterativo, y generalmente confía en el control de una unidad de control compleja
con microcódigo incorporado.
3. Diseñar una ALU simple en el procesador, y vender un procesador separado, especializado y costoso, que el cliente pueda
instalar adicional al procesador, y que implementa una de las opciones de arriba. Esto es llamado coprocesador o unidad de
coma flotante.
4. Emular la existencia del coprocesador, es decir, siempre que un programa intente realizar el cálculo de la raíz cuadrada,
hacer que el procesador compruebe si hay presente un coprocesador y usarlo si lo hay; si no hay uno, interrumpir el proceso
del programa e invocar al sistema operativo para realizar el cálculo de la raíz cuadrada por medio de un cierto algoritmo
de software. Esto es llamado emulación por software.
5. Decir a los programadores que no existe el coprocesador y no hay emulación, así que tendrán que escribir sus propios
algoritmos para calcular raíces cuadradas por software. Esto es realizado por bibliotecas de software.
Las opciones superiores van de la más rápida y más costosa a la más lenta y económica. Por lo tanto, mientras que incluso la
computadora más simple puede calcular la fórmula más complicada, las computadoras más simples generalmente tomarán un
tiempo largo porque varios de los pasos para calcular la fórmula implicarán las opciones #3, #4 y #5 de arriba.
Los procesadores complejos como el Pentium IV y el AMD Athlon 64 implementan la opción #1 para las operaciones más
complejas y la más lenta #2 para las operaciones extremadamente complejas. Eso es posible por la capacidad de construir ALU
muy complejas en estos procesadores.
19. CONCLUSION
Con las nuevas generaciones de procesadores, de chips de muy pocos nanómetros, la ALUs, a
pesar de haber aumentado su complejidad interna se pueden colocar en más sitios. De esta
forma, con una ALU o incluso varias por cada núcleo y con un buen control de los buses de
datos, el aumento en el procesado de instrucciones por ciclo es muy significativo. Mucho más
si añadimos las que se pueden encontrar en periféricos dedicados como las tarjetas gráficas
con GPU (Graphics Processing Unit). Estas unidades de procesamiento gráfico pueden
descargar al procesador de la CPU de un gran número de tareas, inicialmente dedicadas a la
simulación y tratamiento de imágenes pero cada vez más variadas. Dejando libre al
procesador para gestionar tareas más propias del manejo del sistema.
Las arquitecturas de los procesadores de nuevas generaciones están muy optimizados para
conseguir unos rendimientos y velocidades espectaculares. Pero a la vez que los elementos
hardware evolucionan, los software también. Multiplicando el número de instrucciones en las
cola de los procesos. Esto crea la sensación de que los sistemas de una nueva generación no
mejoran la anterior pero es una apreciación que no es real.