El procesador es todo un mundo en sí mismo; aunque los primeros eran comparativamente simples, actualmente han alcanzado una notable complejidad. En el presente capítulo dedicaremos algunos comentarios a su estructura lógica, mencionando de pasada que su tecnología física ha avanzado paralelamente con la de construcción de circuitos integrados, IC's, lo que a la postre ha significado unas dimensiones físicas cada vez más pequeñas y un menor consumo.
La evolución de ambos parámetros no solo ha permitido incrementar la densidad de integración, también la velocidad (frecuencia de funcionamiento). Si nos referimos a la familia Intel, de los 2.100 transistores del 4004 en 1970, que con solo 46 instrucciones funcionaba a unos 800 KHz, se pasó a los 29.000 transistores del 8086 en 1979 a 14 MHz; y en 1999 a los 8.200.000 transistores del Pentium III a 2 GHz. Nota: acabo de leer (Noviembre 2001) que Intel anuncia la nueva tecnología de 0.13 micras para su serie Pentium 4 (hasta ahora era de 0.18 micras), con la que se espera que a fines de 2002 se alcancen los 3 GHz. en estos procesadores. Un poco después (Enero 2002) leo que Intel espera alcanzar 1.2 THz en sus procesadores para el 2005 (escribo esto en un Pentium II a 200 MHz no demasiado antiguo).
En Abril del 2002 Intel anuncia el procesador Pentium 4 con tecnología CMOS de 0,16 micras a 2.4 GHz y mejoras en el proceso de fabricación que permiten su fabricación en obleas de 300 mm. Esta tecnología permite al fabricante proporcionar más de cinco veces el volumen de productos en una sola oblea en comparación con la del procesador Pentium 4 inicial.
En Junio del mismo año Intel desvela su nueva tecnología de fabricación de transistores "Tera-Herz", con la que pretende que en el 2005 pueda alcanzar los 10 GHz. Craig Barret, CEO [[[#[7]|7]]] de la compañía, afirma que en un futuro no lejano esperan conseguir 2.000 millones de transistores en un procesador a 30 GHz.
Actualmente se trabaja en el límite de la resolución óptica de los dispositivos utilizados en su construcción (se usan técnicas fotográficas con longitudes de onda cada vez menores para la luz utilizada), y debido a la altísima frecuencia de funcionamiento, los conductores internos funcionan más como guías de onda que como conductores eléctricos convencionales. Además, las dimensiones físicas del propio dispositivo están teóricamente limitadas si se desea que todos sus elementos funcionen según un mismo patrón de tiempo (cosa que es imprescindible). Para dar una idea de las formidables dificultades técnicas que han debido resolver los diseños actuales, considere que a la velocidad del Pentium III, las señales eléctricas solo recorren 15 centímetros en cada ciclo de reloj.
§2
Una de las primeras decisiones a la hora de diseñar un procesador es decidir cual será su juego de instrucciones. Este conjunto de instrucciones (órdenes) es el lenguaje que realmente entiende el procesador, y constituye lo que se conoce como lenguaje ensamblador o lenguaje-máquina [[[#[1]|1]]].
La decisión es trascendente, por dos razones. Primero: el juego de instrucciones decide el diseño físico del conjunto. Segundo: cualquier operación que deba ejecutarse con el procesador deberá poder ser descrita en términos de este "lenguaje" elemental (recuerde que los compiladores e intérpretes son en realidad traductores desde el lenguaje de alto nivel (fuente) a este lenguaje-máquina.
Sin entrar en detalles, podemos decir que frente a esta cuestión caben dos filosofías de diseño. La primera conduce a máquinas denominadas CISC ("Complex Instruction Set Computer"); las máquinas construidas según el otro criterio se denominan RISC ("Reduced Instruction Set Computer").
Como puede deducirse de sus propios nombres, las máquinas CISC utilizan instrucciones muy complejas, diríamos que muy descriptivas y específicas, lo que necesariamente se traduce en varias consecuencias:
El lenguaje debe contener un amplio surtido de ellas (una para cada circunstancia distinta).
Son instrucciones complejas, por tanto de ejecución lenta. La circuitería del procesador también es compleja.
Para un trabajo específico se requieren pocas instrucciones (siempre hay una que resuelve el problema).
Las máquinas RISC representan el enfoque opuesto. Utilizan instrucciones muy simples, que deben ser cuidadosamente escogidas, porque cualquier operación debe ser expresada como una secuencia de estas pocas instrucciones. Las consecuencias son justamente opuestas a las anteriores:
El lenguaje contiene un conjunto pequeño de instrucciones.
Las instrucciones son muy simples, por tanto de ejecución rápida. La circuitería es más simple que en los procesadores CISC.
Para cualquier operación se requieren varias instrucciones elementales.
Naturalmente cada criterio tiene sus pros y sus contra en lo que a rendimiento se refiere. En las máquinas CISC, lentitud de cada instrucción frente a poca cantidad de ellas; en las RISC, rapidez individual aunque hay que ejecutar un mayor número [[[#[2]|2]]].
§3 Componentes principales.
De forma esquemática podemos suponer que un procesador se compone de cinco elementos:
Memoria
Unidad Artimético-Lógica ALU ("Arithmetic and Logic Unit" )
Puesto que su conocimiento es esencial para la programación en ensamblador, nos detendremos brevemente la descripción de la arquitectura del 8088; además de ser el motor del primer PC, es uno de los primeros ejemplares de una prolífica saga que ha tenido una gran influencia en la informática actual. Además recordemos que incluso los modernos Pentium pueden emular el funcionamiento en modo real de sus ancestros.
En le se muestran sus elementos.
ORTEGA CASTILLO FERNANDO http://www.zator.com/Hardware/H3_2.htm
La Unidad Aritmético Lógica (UAL), o Arithmetic Logic Unit (ALU), es un circuito digital que calcula operaciones aritméticas (como adición, substracción, etc.) y operaciones lógicas (como OR, NOT, XOR, etc.), entre dos números.
Muchos tipos de circuitos electrónicos necesitan realizar algún tipo de operación aritmética, así que incluso el circuito dentro de un reloj digital tendrá una ALU minúscula que se mantiene sumando 1 al tiempo actual, y se mantiene comprobando si debe activar el pitido del temporizador, etc…
Por mucho, los más complejos circuitos electrónicos son los que están construidos dentro de los chips de microprocesadores modernos como el Pentium. Por lo tanto, estos procesadores tienen dentro de ellos un ALU muy complejo y poderoso. De hecho, un microprocesador moderno (y los mainframes) pueden tener múltiples núcleos, cada núcleo con múltiples unidades de ejecución, cada una de ellas con múltiples ALU.
Muchos otros circuitos pueden contener en el interior ALU: GPU como los que están en las tarjetas gráficas N Vidia**?** y ATI, FPU como el viejo coprocesador numérico 80387, y procesadores digitales de señales como los que se encuentran en tarjetas de sonido Sound Blaster, lectoras de CD y las TV de alta definición. Todos éstos tienen adentro varias ALU poderosas y complejas.
4.1 Arquitectura del ALU Unidad aritmética lógica
Es en donde se realizan las operaciones aritméticas y lógicas, para ello se apoya usando el registro acumulador, los registros generales y también un registro flag.
Los registros flag sirven para indicar el estado del procesador después de realizar una operación de cálculo. Los registros son flip flop que registran las características del resultado arrojado por una instrucción.
Dependiendo de los fabricantes los flags pueden ser muy diversos pero hay algunos que en general se encuentran en casi todos los procesadores: · Flag de signo: indica si el resultado de la última operación fue positiva o negativa. · Flag de cero: indica si el resultado de la última operación fue cero o distinto de cero. · Flag de overflow: indica si el resultado fue mayor que la capacidad de representación del acumulador · Flag de underflow: cuando el resultado es menor a la mínima capacidad de representación del acumulador. · Etc.
Operaciones aritméticas y lógicas
Las operaciones aritméticas y lógicas se realizan siempre sobre algún registro y tienen como pivote el registro acumulador: · Sobre el acumulador, solamente · Entre el acumulador y algún registro · Entre el acumulador y una dirección de memoria · Entre el acumulador y un dato inmediato.
El resultado de las operaciones es almacenado en el acumulador.
Algunas operaciones aritméticas lógicas típicas: · Sumas · Restas · Complementación · Desplazamiento a la izquierda (multiplicado por 2) · Desplazamiento a la derecha (dividido por 2) · Incrementar o decremento en 1 el acumulador · OR, AND, OR-EX, etc, entre un par de registros.
Las operaciones de multiplicación y división no son efectuadas por la alu y se implementan en software que comanda la ALU o hardware, especial, que realiza estas funciones.
Registros de trabajo
Se usan para almacenar datos empleados en la ejecución de las instrucciones, es muy importante su velocidad de respuesta. Unidad de control
Realiza funciones organizativas a partir de un mecanismo de relojería con el cual se sincroniza y secuencian los tiempos y los momentos en que los distintos elementos, que constituyen la estructura del procesador, deban participar en la ejecución de una instrucción.
Un ciclo de reloj es la unidad de tiempo para la ejecución de las operaciones dentro del procesador. Las operaciones se realizan dentro del ciclo de reloj o en múltiplos, enteros, de ciclos de reloj.
Cada ciclo de reloj está dividido en diferentes tiempos, o fases, los cuales indican el momento en que se efectúan las micro-operaciones , dentro de cada ciclo.
Una micro operación corresponde a acciones como: desplazamiento de un registro, transferencia de un registro a un bus, complementar un registro, etc.
La unidad de control comanda el registro que contiene la direccion de la instrucción que se está ejecutando o de la próxima instrucción a ejecutar, esto depende del estado de avance en el tiempo de ejecución de la instrucción.
El registro de dirección de instrucción y la memoria stack están relacionados ya que esta contiene las direcciones de retorno de las rutinas del programa.
El registro de direcciones requiere de un procesamiento aritmético de direcciones de acuerdo al largo, en bytes, de la instrucción en ejecución.
La unidad de control dispone del registro de instrucción que almacena la instrucción que se está efectuando, es decir una vez finalizado el fetch.
La instrucción está compuesta de dos partes: · El código de operación el llamado acode, con el cual se alimenta al decodificador de instrucción · Una dirección que se puede almacenar en algún registro de direcciones
La unidad de control contiene toda la circuitería necesaria para efectuar las microoperacioens ordenadas de acuerdo a la naturaleza de la instrucción a ejecutar. REFERENCIAS: http://html.rincondelvago.com/arquitectura-de-computadoras_2.html ANTONIO PALOMINO GONZALEZ 7221 R
ARQUITECTURA DEL ALU En computación, la Unidad Lógica Aritmética (ULA), o Arithmetic Logic Unit (ALU), es un circuito digital que calcula operaciones aritméticas (como suma, resta, multiplicación, etc.) y operaciones lógicas (como igual a, menor que, mayor que, etc.), entre dos números.
Muchos tipos de circuitos electrónicos necesitan realizar algún tipo de operación aritmética, así que incluso el circuito dentro de un reloj digital tendrá una ALU minúscula que se mantiene sumando 1 al tiempo actual, y se mantiene comprobando si debe activar el pitido del temporizador, etc.
Por mucho, los más complejos circuitos electrónicos son los que están construidos dentro de los chips de microprocesadores modernos como el Intel Core Duo. Por lo tanto, estos procesadores tienen dentro de ellos un ALU muy complejo y poderoso. De hecho, un microprocesador moderno (y los mainframes) pueden tener múltiples núcleos, cada núcleo con múltiples unidades de ejecución, cada una de ellas con múltiples ALU.
Muchos otros circuitos pueden contener en el interior ALU: GPU como los que están en las tarjetas gráficasNVIDIA y ATI, FPU como el viejo coprocesador numérico 80387, y procesadores digitales de señales como los que se encuentran en tarjetas de sonido Sound Blaster, lectoras de CD y las TV de alta definición. Todos éstos tienen adentro varias ALU poderosas y complejas. HISTORIA John Presper Eckert y John William Mauchly idearon el concepto de la ALU en 1945 que fue injustamente acreditado al matemático John von Neumann al publicarse el informe en el que von Neumann recopilaba los trabajos para un nuevo computador llamado EDVAC (Electronic Discrete Variable Automatic Computer) (Computador Automático Variable Discreto Electrónico). Más adelante, en 1946, trabajó con sus colegas diseñando un computador para el Princeton Institute of Advanced Studies (IAS) (Instituto de Princeton de Estudios Avanzados). El IAS computer se convirtió en el prototipo para muchos computadores posteriores. En la propuesta, von Neumann describió lo que el equipo creyó sería necesario en su máquina, para incluir una ALU.
Von Neumann explicó que una ALU es una necesidad para una computadora porque está garantizado que una computadora tendrá que computar operaciones matemáticas básicas, incluyendo adición, sustracción, multiplicación, y división.[1] Por lo tanto, creyó que era "razonable que (la computadora) debe contener los órganos especializados para estas operaciones".[1]
JOSE ISACC SIERRA JUAREZ
La Unidad Aritmético Lógica, o simplemente ALU (por Arithmetic Logic Unit) es una de las unidades que conforman la Unidad Central de Procesos (CPU) mediante la cual se pueden realizar un conjunto de operaciones aritméticas básicas (resta, suma, división y multiplicación) y de operaciones lógicas (OR, NOT, AND, etc.).
Los circuitos mediante los que la ALU ejecuta dichas operaciones pueden ser desde muy simples a muy complejos. Entre estos últimos se encuentran, por ejemplo, los de los chips de los microprocesadores. En general, la mayoría de las acciones de una computadora se realizan a través de una ALU. Y en dichos circuitos se encuentras diversos componentes que permiten que la ALU pueda efectuar las operaciones.
Entre estos componentes se encuentra el dispositivo de adición, con el que realiza las operaciones aritméticas; los registros, que contienen a los operandos (proporcionados por la Unidad de Control y que son en los que se realizará la operación), a los resultados parciales y a los resultados finales y por último, los dispositivos de control de cálculo, que dirige y controla las operaciones.
La Unidad de Control es la que le envía a la ALU las órdenes que debe realizar y la que se encarga de transportar los resultados obtenidos. De esta manera, vemos como la Unidad de Control le envía las acciones a realizar, la ALU procesa los datos y sus resultados quedan en el registro de salida de la ALU, desde donde serán transportados por otros mecanismos.
Definición y significado de ALU Articulos Relacionados
-DispositivosDispositivos Son estructuras sólidas, electrónicas y mecanicas las cuales son diseñadas para un uso especifico, estos se conectan entre sí para crear una conexión en común y obtener los resultados...
-Drag & DropDrag & Drop Operación de pinchar y arrastrar que facilita la utilización del ratón para realizar operaciones de forma más sencilla y rápida. ...
-JumpersJumpers Son unos pequeños interruptores que están en los circuitos impresos de las placas y tarjetas y en los discos y CD-ROMs. Gracias a ellos, se pueden configurar determinados aspectos...
-DTPDTP (Desktop Publishing). Con el incremento de la potencia de los ordenadores de sobremesa y la mejora de los programas de software, pudo plantearse la posibilidad de realizar tareas de...
-PeriféricoLos periféricos de una computadora son aquellas partes de hardware que se encuentran tanto dentro como fuera de una caja o gabinete, encargándose de almacenar información a modo de memoria...
Definición y significado de ALU
Unidad aritmético lógica
Un típico símbolo esquemático para una ALU: A y B son operandos; R es la salida; F es la entrada de la unidad de control; D es un estado de la salida.
En computación, la Unidad Lógica Aritmética (ULA), o Arithmetic Logic Unit (ALU), es un circuito digitalque calcula operaciones aritméticas (como suma, resta, multiplicación, etc.) y operaciones lógicas (como igual a, menor que, mayor que, etc.), entre dos números.
Muchos tipos de circuitos electrónicos necesitan realizar algún tipo de operación aritmética, así que incluso el circuito dentro de un reloj digital tendrá una ALU minúscula que se mantiene sumando 1 al tiempo actual, y se mantiene comprobando si debe activar el pitido del temporizador, etc.
Por mucho, los más complejos circuitos electrónicos son los que están construidos dentro de los chips de microprocesadoresmodernos como el Intel Core Duo. Por lo tanto, estos procesadores tienen dentro de ellos un ALU muy complejo y poderoso. De hecho, un microprocesador moderno (y los mainframes) pueden tener múltiples núcleos, cada núcleo con múltiples unidades de ejecución, cada una de ellas con múltiples ALU.
Muchos otros circuitos pueden contener en el interior ALU: GPUcomo los que están en las tarjetas gráficasNVIDIAy ATI, FPUcomo el viejo coprocesadornumérico 80387, y procesadores digitales de señalescomo los que se encuentran en tarjetas de sonido Sound Blaster, lectoras de CD y las TV de alta definición. Todos éstos tienen adentro varias ALU poderosas y complejas.
John Presper Eckerty John William Mauchlyidearon el concepto de la ALU en 1945que fue injustamente acreditado al matemático John von Neumannal publicarse el informe en el que von Neumann recopilaba los trabajos para un nuevo computador llamado EDVAC(Electronic Discrete Variable Automatic Computer) (Computador Automático Variable Discreto Electrónico). Más adelante, en 1946, trabajó con sus colegas diseñando un computador para el Princeton Institute of Advanced Studies (IAS) (Instituto de Princeton de Estudios Avanzados). El IAS computerse convirtió en el prototipo para muchos computadores posteriores. En la propuesta, von Neumann describió lo que el equipo creyó sería necesario en su máquina, para incluir una ALU.
Von Neumann explicó que una ALU es una necesidad para una computadora porque está garantizado que una computadora tendrá que computar operaciones matemáticas básicas, incluyendo adición, sustracción, multiplicación, y división.[1]Por lo tanto, creyó que era "razonable que (la computadora) debe contener los órganos especializados para estas operaciones".[1]
Sistemas numéricos
Una ALU debe procesar números usando el mismo formato que el resto del circuito digital. Para los procesadores modernos, este formato casi siempre es la representación de número binariode complemento a dos. Las primeras computadoras usaron una amplia variedad de sistemas de numeración, incluyendo complemento a uno, formato signo-magnitud, e incluso verdaderos sistemas decimales, con diez tubos por dígito.
Las ALUs para cada uno de estos sistemas numéricostenían diferentes diseños, y esto influenció la preferencia actual por el complemento a dos, debido a que ésta es la representación que hace más fácil, para el circuito electrónico de la ALU, calcular adiciones y sustracciones, etc.
Introducción práctica
Una ALU simple de 2 bits que hace operaciones de AND, OR, XOR y adición (haga click en la imagen para una explicación).
La ALU se compone básicamente de: Circuito Operacional, Registros de Entradas, Registro Acumuladory un Registro de Estados, conjunto de registros que hacen posible la realización de cada una de las operaciones.
La mayoría de las acciones de la computadora son realizadas por la ALU. La ALU toma datos de los registros del procesador. Estos datos son procesados y los resultados de esta operación se almacenan en los registros de salida de la ALU. Otros mecanismos mueven datos entre estos registros y la memoria.[2]
Una unidad de controlcontrola a la ALU, al ajustar los circuitos que le dicen a la ALU qué operaciones realizar.
Operaciones simples
La mayoría de las ALU pueden realizar las siguientes operaciones:
Operaciones 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.
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) un ALU suficientemente poderoso para hacerlo rápido, pero no tan complejo para llegar a ser prohibitivo. Imagine que usted necesita calcular, digamos, la raíz cuadrada de un número; el ingeniero digital examinará las opciones siguientes para implementar esta operación:
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.
Diseñar una ALU compleja que calcule la raíz cuadrada con varios pasos (como el algoritmo que aprendimos en la escuela). Esto es llamado cálculo interactivo, y generalmente confía en el control de una unidad de control compleja con microcódigo incorporado.
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.
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.
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 realizadado por bibliotecas de software.
Las opciones arriba 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 poderosos como el Pentium IVy el AMD64implementan 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.
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 controlindicando 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 acarreoentrante o saliente, overflow, división por cero, etc.[2]
ALU vs. FPU
Una unidad de punto flotante, Floating Point Unit (FPU), también realiza operaciones aritméticas entre dos valores, pero lo hace para números en representación de punto flotante, que es mucho más complicada que la representación de complemento a dosusada en una típica ALU. Para hacer estos cálculos, una FPU tiene incorporados varios circuitos complejos, no 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 punto flotante, números complejosRUZ IBAÑEZ , etc., reciben generalmente un nombre más ilustre.
POST DE LA CRUZ IBAÑEZ MOISES ARQUITECTURA COMPUTACIONAL
Acerca de arquitectura de computadores
Una característica fundamental de una maquina digital, es que esta necesita una excitación para ejecutar una serie de pasos predeterminados, tiene una función especifica.
En un computador, la respuesta se puede programar, esto es, explora algunas instrucciones y datos (programa) y de acuerdo a esto (ejecuta). Su función es flexible y depende del programa almacenado en memoria.
De la diversidad de computadores que existe se distinguen algunos bloques funcionales típicos.
Se estudiaran algunos de estos bloques para entender como se construye una estructura flexible como una computadora.
Estructura funcional
En la figura se muestra una estructura típica de un computador clásico del tipo V. Neumann. El concepto de computador de programa almacenado se establece con el proyecto EDVAC (Electronic Discrete Variable Automatic Computer), 1945 (John Von Neumann, J. Presper Ecker, John Mauchly
El avance tecnológico, particularmente el desarrollo de tecnología de compuertas con control de impedancia, 3er. estado, ha modificado la estructura centralizada por un esquema mas distribuido.
Es importante resaltar que en todas estas representaciones se puede constatar que todos los computadores tienen la misma forma de operar. Una diferencia es la incorporación de buses en las arquitecturas actuales, lo que ha permitido el desarrollo de cada unidad funcional por separado.
Algunos de los elementos funcionales:
Unidades de entrada y salida
Unidad de memoria
Unidad aritmética lógica
Unidad de control
Buses: dirección, dato, control, I/O
Estos elementos se articulan de acuerdo a las características de los procesadores. Se presenta un diagrama de bloques de una estructura genérica de un procesador en que aparecen representados los distintos elementos que lo constituyen. Esta dividido en una sección de datos y una de control. La estructura de los buses se considera que es de tipo multiplexado entre memoria e I/O.
La sección de datos: registros de dirección, contador de programa, ALU, registros varios.
La sección de control provee decodificación de instrucción e información de tiempo (sincronismo) al resto de los elementos del procesador. Mantencion de información de estatus del interior y fuera del chip.
El procesador manipula, fundamentalmente, tres tipos de datos:
Instrucciones: secuencias de bit que son decodificadas por el procesador. Están almacenadas en la memoria RAM o ROM y son extraidas en forma secuencial y llevadas al registro de instrucción del procesador, de acuerdo al flujo del programa.
Direcciones: o en dispositivos I/O en que se almacenan elementos de información.
ubicaciones en memoria
Datos o operandos: información que será operada por el procesador y que puede tener una representación numérica, lógica o alfanumérica (string). Unidad aritmetica logica
Es en donde se relizan las operaciones aritmeticas y logicas, para ello se apoya usando el registro acumulador, los registros generales y tambien un registro flag.
Los registros flag sirven para indicar el estado del procesador despues de realizar una operacion de calculo. Los registros son flip flop que registran las caracteristicas del resultado arrojado por una instruccion.
Dependiendo de los fabricantes los flags pueden ser muy diversos pero hay algunos que en general se encuentran en casi todos los procesadores:
Flag de signo: indica si el resultado de la ultima operacion fue positiva o negativa.
Flag de cero: indica si el resultado de la ultima operacion fue cero o distinto de cero.
Flag de overflow: indica si el resultado fue mayor que la capacidad de representacion del acumulador
Flag de underflow: cuando el resultado es menor a la minima capacidad de representacion del acumulador.
Etc.
Operaciones aritmeticas y logicas
Las operaciones aritmeticas y logicas se realizan siempre sobre algun registro y tienen como pivote el registro acumulador:
Sobre el acumulador, solamente
Entre el acumulador y algun registro
Entre el acumilador y una direccion de memoria
Entre el acumulador y un dato inmediato.
El resultado de las operaciones es almacenado en el acumulador.
Algunas operaciones aritmaticas logicas tipicas:
Sumas
Restas
Complemetacion
Despalazamiento a la izquierda (multiplicado por 2)
Despalzamiento a la derecha (dividido por 2)
Incremetar o decrementar en 1 el acumulador
OR, AND, OR-EX, etc, entre un par de registros.
Las operaciones de multiplicacion y division no son efectuadas por la alu y se implementan en software que comanadan la ALU o hardware, especial, que realiza estas funciones.
Registros de trabajo
Se usan para almacenar datos empleados en la ejecucion de las instrucciones, es muy importante su velocidad de respuesta. Unidad de control
Realiza funciones organizativas a partir de un mecanismo de relojeria con el cual se sincroniza y secuencian los tiempos y los momentos en que los distintos elementos, que constituyen la estructura del procesador, deban participar en la ejecucion de una instruccion.
Un ciclo de reloj es la unidad de tiempo para la ejecucion de las operaciones dentro del procesador. Las operaciones se realizan dentro del ciclo de reloj o en multiplos, enteros, de ciclos de reloj.
Cada ciclo de reloj esta dividido en diferentes tiempos, o fases, los cuales indican el momento en que se efectuan las micro-operaciones , dentro de cada ciclo.
Una micro operacion corresponde a acciones como: desplazamiento de un registro, transferencia de un registro a un bus, complementar un registro, etc.
La unidad de control comanda el registro que contiene la direccion de la instruccion que se esta ejecutando o de la proxima instruccion a ejecutar, esto depende del estado de avance en el tiempo de ejecucion de la instruccion.
El registro de direccion de instruccion y la memoria stack estan relacionados ya que esta contiene las direcciones de retorno de las rutinas del programa.
El registro de direcciones requiere de un procesamiento aritmetico de direcciones de acuerdo al largo, en bytes, de la instruccion en ejecucion.
La unidad de control dispone del registro de instruccion que almacena la instruccion que se esta efectuando, es decir una vez finalizado el fetch.
La instruccion esta compuesta de dos partes:
El codigo de operacion el llamado opcode, con el cual se alimenta al decodificador de instruccion
Una direccion que se puede almacenar en algun registro de direcciones
La unidad de control contiene toda la circuiteria necesaria para efectuar las microoperacioens oredenadas de acuerdo a la naturaleza de la instruccion a ejecutar. Unidad de memoria
Corresponde a un conjunto de registros direccionables a traves del bus de direcciones.
Cada registro de memoria esta constituido por un determinado numero de unidades basicas, bit, que constituyen la celda de memoria. El tamaño de la celda es constante para un procesador determinado.
Los tamaños tipicos son 4, 8, 16, 32 y mas bits por celda.
La memoria tiene dos usos principales:
Almacenar programas
Almacenar datos o resultados.
El almacenamiento de programas esta asociado a la naturaleza de los mismos. Si son de uso permanente se almacenan en memoria ROM (read only memory), caso de los programas BIOS (basic input output system).
Si son de uso esporadico y afectos a cambios se almacenan RAM (ramdom access memory) caso de los programas de aplicacion.
Las memorias del tipo ROM corresponden a tecnologia de memorias, electronicas, de estado solida no volatil, esto significa que no requieren de energia para mantener los valores que almacenan.
Las memorias RAM necesitan energia para mantener la informacion almacenada, se reconocen dos grandes familias:
Las SRAM o ram estaticas, rapidas, caras, de alto consumo utiles como memorias cache L2
Las DRAM o ram dinamicas, lentas, baratas, de bajo consumo se usan como memoria principal
Operacion de la memoria
La forma de trabajo de un ciclo de memoria con el envio de una direccion por el BUS de DIRECCION, AB (address bus), dicha direccion se almacena en un registro de direcciones de memoria, MAR (memory address register)
La operacion de memoria puede ser de lectura o escrtura.
Lectura: el contenido de la celda direccionada por el MAR se transfiere a un registro de datos de memoria MDR (memory data register) el que transfiere su contenido al bus de datos DB (data bus), de alli al registro del procesador que corresponda.
Escritura: una vez seleccionado el MAR , se transfiere el contenido del DB al MDR, desde donde se lleva a la celda seleccionada, completando el proceso de escritura.
Papel del bus de control: a traves de este bus, la unidad de control activa el MAR el MDR y los demas registros involucrados en los procesos de lectura-escritura. Sincroniza el momento en que se activan AB y DB, esto corresponde a un conjunto de microoperraciones necesarias para producir una lectura o escritura en memoria. Unidad entrada y salida
Dado que la CPU trabaja a velocidades mucho mayor que los equipos perifericos (nsg. v/s msg) se requiere una unidad que se encargue de organizar cual de los perifericos conectados sera habilitado para intercambiar informacion con el procesador.
La unidad de entrada/salida puede ser un multiplexor/demultiplexor, a traves del selector de puertas se direcciona cual de los equipos debe conectarse, la señal de control establece la modalidad de comunicacion I/O, la informacion se transfiere al I/O data desde donde se traslada al DB.
Existen diversas modalidades de organizacion para transferir informacion:
Tiempo: sincronico o asincronico
Datos: secuenciales, paralelos
Coneccion directa al DB, se elimina el I/O data
Coneccion directa a memoria, DMA (Data Memory Access), permite coneccion entre procesadores y entre unidades controladoras rapidas, interfases de discos, etc.
Diagramas de bloques de procesadores:
Intel 8080
Intel 8086
Intel 80486
Intel pentium
Hewett Packart PA
SUN Spark
Digital Apha
Procesador Intel 8080, bus de datos 8 bits, bus de direcciones 16 bits
Procesador Intel 486
Intel pentium
Esquema del procesador Hewlett Packard, precision Architecture, SFU (special funtions units), TLB (translation lookaside buffer).
Diagrama de Ultra SPARC -I
Procesador Alpha de Digtal Equiipment Corp.
3
1
Son un conjunto de circuitos encargados de la conexión entre el procesador y los demás dispositivos. Básicamente se los puede dividir en dos:
*
Bus de Sistema.Conecta la CPU con la RAM Los hay de 133, 266, 333, 400, 533, 800 Mhz.
*
Bus de I/O. Conecta la CPU con todos los demás componentes excepto la RAM BUSES de I/O
*
ISA (Industries Standard Architecture)
*
ISA 8. 8 BITS.
*
ISA 16. 16 BITS, 8Mhz, 8Mb/Seg.
*
PCI (Peripheral Component Interconnect)
*
PCI 32. 32 BITS, 33 Mhz, 132 Mb/seg.
*
PCI X. 64 BITS, 133 Mhz, 1Gb/seg.
*
AGP (Accelerated Graphics Port)
*
AGP 1x. 32 BITs, 66 Mhz, 266 Mb/seg.
*
AGP 2x. 32 BITs, 66 Mhz, 533 Mb/seg.
*
AGP 4x. 32 BITs, 66 Mhz, 1066 Mb/seg. CPU Central Processor Unit
*
Es el cerebro del computador, donde se ejecutan las instrucciones de los programas y se lleva el control del funcionamiento de los demás componentes de un computador.
*
Está compuesto por:
*
Registros (Registers)
*
Unidad de Control (CU)
*
Unidad Aritmético Lógica (ALU) Registros
*
un registro es una memoria de alta velocidad y poca capacidad, integrada en el microprocesador, que permite guardar y acceder a valores muy usados, generalmente en operaciones matemáticas. Unidad de Control
*
El microprocesador es el cerebro de la computadora. Es la pieza encargada de realizar todas las operaciones y cálculos que permiten al ordenador ejecutar los programas.
*
La unidad de control es el cerebro del microprocesador. Es la encargada de activar o desactivar los diversos componentes del microprocesador en función de la instrucción que el microprocesador esté ejecutando y en función también de la etapa de dicha instrucción que se esté ejecutando. Unidad Aritmético Lógica
*
Se denomina Unidad Aritmético-Lógica (UAL) o ALU (Arithmetic and logical unit) a la unidad incluida en la CPU encargada de realizar operaciones aritméticas y lógicas sobre operandos que provienen de la memoria principal y que pueden estar almacenados de forma temporal en algunos registros de la propia unidad.
*
Físicamente, la ALU es parte de la altamente integrada lógica-electrónica del microprocesador principal de cualquier computadora. Ciclo de ejecución
*
El microprocesador secciona en varias fases de ejecución la realización de cada instrucción:
*
Fetch, lectura de la instrucción desde la memoria principal,
*
Descodificación, determinar que instrucción es y que se debe hacer,
*
Fetch de los datos necesarios para la realización de la operación,
*
Ejecución,
*
Escritura de los resultados en la memoria principal, Frecuencia de reloj
*
La frecuencia de reloj indica la velocidad a la que un computador realiza sus operaciones más básicas, como sumar dos números o transferir el valor de un registro a otro. Se mide en ciclos por segundo (hercios).
*
Los diferentes circuitos integrados de un computador pueden funcionar a diferentes frecuencias de reloj, por lo que cuando se usa el término frecuencia de reloj aplicado a un ordenador, suele sobreentenderse que se refiere la velocidad de funcionamiento del procesador principal. Hercio
*
El hercio es la unidad de frecuencia, Proviene del apellido del físico alemán Heinrich Rudolf Hertz, descubridor de la transmisión de las ondas electromagnéticas. Su símbolo es Hz
*
Un hercio representa un ciclo por cada segundo, entendiendo ciclo como la repetición de un evento. En física, el hercio se aplica a la medición de la cantidad de veces por segundo que se repite una onda
Es la parte del hardware que retiene durante cierto período de tiempo información que necesita el sistema para funcionar correctamente.
*
En un computadorla memoria generalmente toma las formas de:
*
Disco duro: el cual almacena los archivos y programas del usuario. Mantiene la información incluso si el ordenador es apagado, y tiene una gran capacidad de almacenamiento.
*
Memoria RAM: usada para almacenar cosas tales como programas e información de manera temporal mientras el ordenador está siendo utilizado. Esto se hace porque este tipo de memoria es rápida, y es útil para acceder a datos sin tener que leerlos de un soporte de almacenamiento más lento, como un disco duro.
*
Memoria caché: es generalmente encontrada en los microprocesadores, discos duros u otros aparatos, es una pequeña cantidad de memoria de muy alta velocidad dedicada a que partes importantes del ordenador puedan trabajar a la máxima velocidad sin necesidad de pedir información constantemente a partes más lentas del resto del sistema. Clasificación de las memorias
*
Según su localización:
*
Caché
*
Principal o interna
*
Secundaria o periférica
*
Según la tecnología empleada:
*
Memoria semiconductora
*
Memoria magnética
*
Memoria óptica
*
Volátil / No volátil
*
Según el tipo de escritura:
*
RAM
*
ROM
*
PROM
*
EPROM
*
EEPROM
*
FLASH Memoria Caché
*
Esta memoria se sitúa entre el microprocesador y la memoria RAM y se utiliza para almacenar datos que se utilizan frecuentemente. Es de acceso aleatorio y funciona de una manera similar a como lo hace la memoria principal (RAM), aunque es mucho más rápida.
*
Existen dos tipos de memoria caché cuyo funcionamiento es análogo:
*
L1 o interna (situada dentro del propio procesador y por tanto de acceso aún más rápido y aún más cara). La caché de primer nivel contiene muy pocos kilobytes (unos 32 ó 64 Kb).
*
L2 o externa (situada entre el procesador y la RAM). Los tamaños típicos de la memoria caché L2 oscilan en la actualidad entre 256 kb y 2 Mb. Memoria Principal
*
Son circuitos integrados capaces de almacenar información digital, a los que tiene acceso el microprocesador. Poseen una menor capacidad de almacenamiento que la memoria secundaria, pero una velocidad millones de veces superior. Son utilizados dos tipos de estos dispositivos:
*
Memorias tipo ROM (Read Only Memory) "Memoria de solo lectura" que almacenan códigos de programa grabados en fábrica, a veces protegidos por derechos de autor. El CI donde se almacena el BIOS del ordenador, es una memoria ROM. Memorias tipo RAM (Random Access Memory) "Memoria de acceso aleatorio", almacena datos que pueden ser escritos y borrados atendiendo a los procesos de computación. "Aleatorio" indica que sus localidades pueden ser accedidas directamente, dando rapidez a los procesos; a diferencia de las memorias secuenciales que para llegar a una posición, hay que pasar antes por las posiciones previas Memoria Secundaria
*
La memoria secundaria es un conjunto de dispositivos periféricos para el almacenamiento masivo de datos, con mayor capacidad que la memoria principal, pero más lenta que ésta.
*
El diskette, el disco duro, las unidades ópticas, las unidades de memoria flash y los discos Zip, pertenecen a esta categoría.
*
Soportes de memoria secundaria:
*
CD, CD-R, CD-RW
*
DVD, DVD-/+R, DVD-/+RW
*
Diskette
*
Disco duro
*
Cinta magnética
*
Memoria flash Memoria Volátil, No Volátil
*
La memoria volátil es aquella cuya información se pierde al interrumpirse el flujo de corriente eléctrica, comúnmente conocida como memoria RAM. Aunque este último nombre no le es el mas apropiado ya que hoy en día todas las memorias, sean volátiles o no como por ejemplo discos duros, diskettes y demás dispositivos de almacenamiento disponen de un sistema de acceso al dato aleatorio, ya que en caso de disponer de un sistema de acceso secuencial este tardaría mucho. Memoria Volátil, No Volátil
*
La Memoria No volátil es aquella cuyo contenido no se pierde al interrumpirse el flujo eléctrico que la alimenta. Dispositivos de esta categoría son:
ROM Memoria de solo lectura y que conserva intacta la información almacenada, incluso en el caso de interrupción de corriente. La ROM suele almacenar la configuración del sistema o el programa de arranque del computador. Ej. SuperNintendo, MegaDrive, GameBoy
*
PROM Es una memoria digital donde el valor de cada bit depende del estado de un fusible (o antifusible), que puede ser quemado una sola vez. Por esto la memoria puede ser programada (pueden ser escritos los datos) una sola vez a través de un dispositivo especial, un programador PROM. Estas memorias son utilizadas para grabar datos permanentes en cantidades menores a las ROMs, o cuando los datos deben cambiar en muchos o todos los casos. Según el tipo de escritura
*
EPROMEstá programada por un dispositivo electrónico que proporciona voltajes superiores a los normalmente utilizados en los circuitos electrónicos. Una vez programada, una EPROM puede ser borrada solamente mediante exposición a una fuerte luz ultravioleta. Las EPROMs son fácilmente reconocibles por una ventana transparente en la parte alta del encapsulado, a través de la cual se puede ver el chip de silicio y que admite la luz ultravioleta durante el borrado.
*
EEPROM Es un tipo de memoria ROM que puede ser programado, borrado y reprogramado eléctricamente, a diferencia de la EPROM que ha de borrarse mediante rayos ultravioletas. Aunque una EEPROM puede ser leída un número ilimitado de veces, sólo puede ser borrada y reprogramada entre 100.000 y 1.000.000 de veces
*
Según el tipo de escrituraFLASH La Memoria flash es una forma evolucionada de la memoria EEPROM que permite que múltiples posiciones de memoria sean escritas o borradas en una misma operación de programación mediante impulsos eléctricos, frente a las anteriores que sólo permite escribir o borrar una única celda cada vez. Por ello, flash permite funcionar a velocidades muy superiores cuando los sistemas emplean lectura y escritura en diferentes puntos de esta memoria al mismo tiempo. Actualmente los hay de: 128, 256, 512 Mb, 1, 2, 4, 8, 16 Gb Memoria Flash
*
Entre los años 1994 y 1998, se desarrollaron los principales tipos de memoria que conocemos hoy, como la Smart Media o la Compact Flash. La tecnología pronto planteó aplicaciones en otros campos. Los formatos mas conocidos son:
ARQUITECTURA DE LA ALU
Arquitectura
§1 Sinopsis
El procesador es todo un mundo en sí mismo; aunque los primeros eran comparativamente simples, actualmente han alcanzado una notable complejidad. En el presente capítulo dedicaremos algunos comentarios a su estructura lógica, mencionando de pasada que su tecnología física ha avanzado paralelamente con la de construcción de circuitos integrados, IC's, lo que a la postre ha significado unas dimensiones físicas cada vez más pequeñas y un menor consumo.La evolución de ambos parámetros no solo ha permitido incrementar la densidad de integración, también la velocidad (frecuencia de funcionamiento). Si nos referimos a la familia Intel, de los 2.100 transistores del 4004 en 1970, que con solo 46 instrucciones funcionaba a unos 800 KHz, se pasó a los 29.000 transistores del 8086 en 1979 a 14 MHz; y en 1999 a los 8.200.000 transistores del Pentium III a 2 GHz.
Nota: acabo de leer (Noviembre 2001) que Intel anuncia la nueva tecnología de 0.13 micras para su serie Pentium 4 (hasta ahora era de 0.18 micras), con la que se espera que a fines de 2002 se alcancen los 3 GHz. en estos procesadores. Un poco después (Enero 2002) leo que Intel espera alcanzar 1.2 THz en sus procesadores para el 2005 (escribo esto en un Pentium II a 200 MHz no demasiado antiguo).
En Abril del 2002 Intel anuncia el procesador Pentium 4 con tecnología CMOS de 0,16 micras a 2.4 GHz y mejoras en el proceso de fabricación que permiten su fabricación en obleas de 300 mm. Esta tecnología permite al fabricante proporcionar más de cinco veces el volumen de productos en una sola oblea en comparación con la del procesador Pentium 4 inicial.
En Junio del mismo año Intel desvela su nueva tecnología de fabricación de transistores "Tera-Herz", con la que pretende que en el 2005 pueda alcanzar los 10 GHz. Craig Barret, CEO [[[#[7]|7]]] de la compañía, afirma que en un futuro no lejano esperan conseguir 2.000 millones de transistores en un procesador a 30 GHz.
Actualmente se trabaja en el límite de la resolución óptica de los dispositivos utilizados en su construcción (se usan técnicas fotográficas con longitudes de onda cada vez menores para la luz utilizada), y debido a la altísima frecuencia de funcionamiento, los conductores internos funcionan más como guías de onda que como conductores eléctricos convencionales. Además, las dimensiones físicas del propio dispositivo están teóricamente limitadas si se desea que todos sus elementos funcionen según un mismo patrón de tiempo (cosa que es imprescindible). Para dar una idea de las formidables dificultades técnicas que han debido resolver los diseños actuales, considere que a la velocidad del Pentium III, las señales eléctricas solo recorren 15 centímetros en cada ciclo de reloj.
§2
Una de las primeras decisiones a la hora de diseñar un procesador es decidir cual será su juego de instrucciones. Este conjunto de instrucciones (órdenes) es el lenguaje que realmente entiende el procesador, y constituye lo que se conoce como lenguaje ensamblador o lenguaje-máquina [[[#[1]|1]]].La decisión es trascendente, por dos razones. Primero: el juego de instrucciones decide el diseño físico del conjunto. Segundo: cualquier operación que deba ejecutarse con el procesador deberá poder ser descrita en términos de este "lenguaje" elemental (recuerde que los compiladores e intérpretes son en realidad traductores desde el lenguaje de alto nivel (fuente) a este lenguaje-máquina.
Sin entrar en detalles, podemos decir que frente a esta cuestión caben dos filosofías de diseño. La primera conduce a máquinas denominadas CISC ("Complex Instruction Set Computer"); las máquinas construidas según el otro criterio se denominan RISC ("Reduced Instruction Set Computer").
Como puede deducirse de sus propios nombres, las máquinas CISC utilizan instrucciones muy complejas, diríamos que muy descriptivas y específicas, lo que necesariamente se traduce en varias consecuencias:
- El lenguaje debe contener un amplio surtido de ellas (una para cada circunstancia distinta).
- Son instrucciones complejas, por tanto de ejecución lenta. La circuitería del procesador también es compleja.
- Para un trabajo específico se requieren pocas instrucciones (siempre hay una que resuelve el problema).
Las máquinas RISC representan el enfoque opuesto. Utilizan instrucciones muy simples, que deben ser cuidadosamente escogidas, porque cualquier operación debe ser expresada como una secuencia de estas pocas instrucciones. Las consecuencias son justamente opuestas a las anteriores:- El lenguaje contiene un conjunto pequeño de instrucciones.
- Las instrucciones son muy simples, por tanto de ejecución rápida. La circuitería es más simple que en los procesadores CISC.
- Para cualquier operación se requieren varias instrucciones elementales.
Naturalmente cada criterio tiene sus pros y sus contra en lo que a rendimiento se refiere. En las máquinas CISC, lentitud de cada instrucción frente a poca cantidad de ellas; en las RISC, rapidez individual aunque hay que ejecutar un mayor número [[[#[2]|2]]].§3 Componentes principales.
De forma esquemática podemos suponer que un procesador se compone de cinco elementos:- Memoria

- Unidad Artimético-Lógica ALU ("Arithmetic and Logic Unit"
) - Unidad de Control CU ("Control Unit"
) - Bus interno

- Conexiones con el exterior (
3.2.1)
Puesto que su conocimiento es esencial para la programación en ensamblador, nos detendremos brevemente la descripción de la arquitectura del 8088; además de ser el motor del primer PC, es uno de los primeros ejemplares de una prolífica saga que ha tenido una gran influencia en la informática actual. Además recordemos que incluso los modernos Pentium pueden emular el funcionamiento en modo real de sus ancestros.En le se muestran sus elementos.
ORTEGA CASTILLO FERNANDO
http://www.zator.com/Hardware/H3_2.htm
La Unidad Aritmético Lógica (UAL), o Arithmetic Logic Unit (ALU), es un circuito digital que calcula operaciones aritméticas (como adición, substracción, etc.) y operaciones lógicas (como OR, NOT, XOR, etc.), entre dos números.
Muchos tipos de circuitos electrónicos necesitan realizar algún tipo de operación aritmética, así que incluso el circuito dentro de un reloj digital tendrá una ALU minúscula que se mantiene sumando 1 al tiempo actual, y se mantiene comprobando si debe activar el pitido del temporizador, etc…
Por mucho, los más complejos circuitos electrónicos son los que están construidos dentro de los chips de microprocesadores modernos como el Pentium. Por lo tanto, estos procesadores tienen dentro de ellos un ALU muy complejo y poderoso. De hecho, un microprocesador moderno (y los mainframes) pueden tener múltiples núcleos, cada núcleo con múltiples unidades de ejecución, cada una de ellas con múltiples ALU.
Muchos otros circuitos pueden contener en el interior ALU: GPU como los que están en las tarjetas gráficas N Vidia**?** y ATI, FPU como el viejo coprocesador numérico 80387, y procesadores digitales de señales como los que se encuentran en tarjetas de sonido Sound Blaster, lectoras de CD y las TV de alta definición. Todos éstos tienen adentro varias ALU poderosas y complejas.
Por :herrera gutierrez Jessica
bibliografia:http://www.mitecnologico.com/Main/ArquitecturaDelAlu
4.1 Arquitectura del ALU
Unidad aritmética lógica
Es en donde se realizan las operaciones aritméticas y lógicas, para ello se apoya usando el registro acumulador, los registros generales y también un registro flag.
Los registros flag sirven para indicar el estado del procesador después de realizar una operación de cálculo. Los registros son flip flop que registran las características del resultado arrojado por una instrucción.
Dependiendo de los fabricantes los flags pueden ser muy diversos pero hay algunos que en general se encuentran en casi todos los procesadores:
· Flag de signo: indica si el resultado de la última operación fue positiva o negativa.
· Flag de cero: indica si el resultado de la última operación fue cero o distinto de cero.
· Flag de overflow: indica si el resultado fue mayor que la capacidad de representación del acumulador
· Flag de underflow: cuando el resultado es menor a la mínima capacidad de representación del acumulador.
· Etc.
Operaciones aritméticas y lógicas
Las operaciones aritméticas y lógicas se realizan siempre sobre algún registro y tienen como pivote el registro acumulador:
· Sobre el acumulador, solamente
· Entre el acumulador y algún registro
· Entre el acumulador y una dirección de memoria
· Entre el acumulador y un dato inmediato.
El resultado de las operaciones es almacenado en el acumulador.
Algunas operaciones aritméticas lógicas típicas:
· Sumas
· Restas
· Complementación
· Desplazamiento a la izquierda (multiplicado por 2)
· Desplazamiento a la derecha (dividido por 2)
· Incrementar o decremento en 1 el acumulador
· OR, AND, OR-EX, etc, entre un par de registros.
Las operaciones de multiplicación y división no son efectuadas por la alu y se implementan en software que comanda la ALU o hardware, especial, que realiza estas funciones.
Registros de trabajo
Se usan para almacenar datos empleados en la ejecución de las instrucciones, es muy importante su velocidad de respuesta.
Unidad de control
Realiza funciones organizativas a partir de un mecanismo de relojería con el cual se sincroniza y secuencian los tiempos y los momentos en que los distintos elementos, que constituyen la estructura del procesador, deban participar en la ejecución de una instrucción.
Un ciclo de reloj es la unidad de tiempo para la ejecución de las operaciones dentro del procesador. Las operaciones se realizan dentro del ciclo de reloj o en múltiplos, enteros, de ciclos de reloj.
Cada ciclo de reloj está dividido en diferentes tiempos, o fases, los cuales indican el momento en que se efectúan las micro-operaciones , dentro de cada ciclo.
Una micro operación corresponde a acciones como: desplazamiento de un registro, transferencia de un registro a un bus, complementar un registro, etc.
La unidad de control comanda el registro que contiene la direccion de la instrucción que se está ejecutando o de la próxima instrucción a ejecutar, esto depende del estado de avance en el tiempo de ejecución de la instrucción.
El registro de dirección de instrucción y la memoria stack están relacionados ya que esta contiene las direcciones de retorno de las rutinas del programa.
El registro de direcciones requiere de un procesamiento aritmético de direcciones de acuerdo al largo, en bytes, de la instrucción en ejecución.
La unidad de control dispone del registro de instrucción que almacena la instrucción que se está efectuando, es decir una vez finalizado el fetch.
La instrucción está compuesta de dos partes:
· El código de operación el llamado acode, con el cual se alimenta al decodificador de instrucción
· Una dirección que se puede almacenar en algún registro de direcciones
La unidad de control contiene toda la circuitería necesaria para efectuar las microoperacioens ordenadas de acuerdo a la naturaleza de la instrucción a ejecutar.
REFERENCIAS:
http://html.rincondelvago.com/arquitectura-de-computadoras_2.html
ANTONIO PALOMINO GONZALEZ 7221
R
ARQUITECTURA DEL ALU
En computación, la Unidad Lógica Aritmética (ULA), o Arithmetic Logic Unit (ALU), es un circuito digital que calcula operaciones aritméticas (como suma, resta, multiplicación, etc.) y operaciones lógicas (como igual a, menor que, mayor que, etc.), entre dos números.
Muchos tipos de circuitos electrónicos necesitan realizar algún tipo de operación aritmética, así que incluso el circuito dentro de un reloj digital tendrá una ALU minúscula que se mantiene sumando 1 al tiempo actual, y se mantiene comprobando si debe activar el pitido del temporizador, etc.
Por mucho, los más complejos circuitos electrónicos son los que están construidos dentro de los chips de microprocesadores modernos como el Intel Core Duo. Por lo tanto, estos procesadores tienen dentro de ellos un ALU muy complejo y poderoso. De hecho, un microprocesador moderno (y los mainframes) pueden tener múltiples núcleos, cada núcleo con múltiples unidades de ejecución, cada una de ellas con múltiples ALU.
Muchos otros circuitos pueden contener en el interior ALU: GPU como los que están en las tarjetas gráficas NVIDIA y ATI, FPU como el viejo coprocesador numérico 80387, y procesadores digitales de señales como los que se encuentran en tarjetas de sonido Sound Blaster, lectoras de CD y las TV de alta definición. Todos éstos tienen adentro varias ALU poderosas y complejas.
HISTORIA
John Presper Eckert y John William Mauchly idearon el concepto de la ALU en 1945 que fue injustamente acreditado al matemático John von Neumann al publicarse el informe en el que von Neumann recopilaba los trabajos para un nuevo computador llamado EDVAC (Electronic Discrete Variable Automatic Computer) (Computador Automático Variable Discreto Electrónico). Más adelante, en 1946, trabajó con sus colegas diseñando un computador para el Princeton Institute of Advanced Studies (IAS) (Instituto de Princeton de Estudios Avanzados). El IAS computer se convirtió en el prototipo para muchos computadores posteriores. En la propuesta, von Neumann describió lo que el equipo creyó sería necesario en su máquina, para incluir una ALU.
Von Neumann explicó que una ALU es una necesidad para una computadora porque está garantizado que una computadora tendrá que computar operaciones matemáticas básicas, incluyendo adición, sustracción, multiplicación, y división.[1] Por lo tanto, creyó que era "razonable que (la computadora) debe contener los órganos especializados para estas operaciones".[1]
JOSE ISACC SIERRA JUAREZ
REFERENCIAS
es.wikipedia.org/wiki/Unidad_aritmético_lógica
Los circuitos mediante los que la ALU ejecuta dichas operaciones pueden ser desde muy simples a muy complejos. Entre estos últimos se encuentran, por ejemplo, los de los chips de los microprocesadores. En general, la mayoría de las acciones de una computadora se realizan a través de una ALU. Y en dichos circuitos se encuentras diversos componentes que permiten que la ALU pueda efectuar las operaciones.
Entre estos componentes se encuentra el dispositivo de adición, con el que realiza las operaciones aritméticas; los registros, que contienen a los operandos (proporcionados por la Unidad de Control y que son en los que se realizará la operación), a los resultados parciales y a los resultados finales y por último, los dispositivos de control de cálculo, que dirige y controla las operaciones.
La Unidad de Control es la que le envía a la ALU las órdenes que debe realizar y la que se encarga de transportar los resultados obtenidos. De esta manera, vemos como la Unidad de Control le envía las acciones a realizar, la ALU procesa los datos y sus resultados quedan en el registro de salida de la ALU, desde donde serán transportados por otros mecanismos.
Definición y significado de ALU
Articulos Relacionados
-DispositivosDispositivos Son estructuras sólidas, electrónicas y mecanicas las cuales son diseñadas para un uso especifico, estos se conectan entre sí para crear una conexión en común y obtener los resultados...
-Drag & DropDrag & Drop Operación de pinchar y arrastrar que facilita la utilización del ratón para realizar operaciones de forma más sencilla y rápida. ...
-JumpersJumpers Son unos pequeños interruptores que están en los circuitos impresos de las placas y tarjetas y en los discos y CD-ROMs. Gracias a ellos, se pueden configurar determinados aspectos...
-DTPDTP (Desktop Publishing). Con el incremento de la potencia de los ordenadores de sobremesa y la mejora de los programas de software, pudo plantearse la posibilidad de realizar tareas de...
-PeriféricoLos periféricos de una computadora son aquellas partes de hardware que se encuentran tanto dentro como fuera de una caja o gabinete, encargándose de almacenar información a modo de memoria...
Unidad aritmético lógica
Un típico símbolo esquemático para una ALU: A y B son operandos; R es la salida; F es la entrada de la unidad de control; D es un estado de la salida.
En computación, la Unidad Lógica Aritmética (ULA), o Arithmetic Logic Unit (ALU), es un circuito digitalque calcula operaciones aritméticas (como suma, resta, multiplicación, etc.) y operaciones lógicas (como igual a, menor que, mayor que, etc.), entre dos números.
Muchos tipos de circuitos electrónicos necesitan realizar algún tipo de operación aritmética, así que incluso el circuito dentro de un reloj digital tendrá una ALU minúscula que se mantiene sumando 1 al tiempo actual, y se mantiene comprobando si debe activar el pitido del temporizador, etc.
Por mucho, los más complejos circuitos electrónicos son los que están construidos dentro de los chips de microprocesadoresmodernos como el Intel Core Duo. Por lo tanto, estos procesadores tienen dentro de ellos un ALU muy complejo y poderoso. De hecho, un microprocesador moderno (y los mainframes) pueden tener múltiples núcleos, cada núcleo con múltiples unidades de ejecución, cada una de ellas con múltiples ALU.
Muchos otros circuitos pueden contener en el interior ALU: GPUcomo los que están en las tarjetas gráficas NVIDIAy ATI, FPUcomo el viejo coprocesadornumérico 80387, y procesadores digitales de señalescomo los que se encuentran en tarjetas de sonido Sound Blaster, lectoras de CD y las TV de alta definición. Todos éstos tienen adentro varias ALU poderosas y complejas.
Contenido
[ocultar]Historia: Propuesta de Eckert-Mauchly
John Presper Eckerty John William Mauchlyidearon el concepto de la ALU en 1945que fue injustamente acreditado al matemático John von Neumannal publicarse el informe en el que von Neumann recopilaba los trabajos para un nuevo computador llamado EDVAC(Electronic Discrete Variable Automatic Computer) (Computador Automático Variable Discreto Electrónico). Más adelante, en 1946, trabajó con sus colegas diseñando un computador para el Princeton Institute of Advanced Studies (IAS) (Instituto de Princeton de Estudios Avanzados). El IAS computerse convirtió en el prototipo para muchos computadores posteriores. En la propuesta, von Neumann describió lo que el equipo creyó sería necesario en su máquina, para incluir una ALU.Von Neumann explicó que una ALU es una necesidad para una computadora porque está garantizado que una computadora tendrá que computar operaciones matemáticas básicas, incluyendo adición, sustracción, multiplicación, y división.[1]Por lo tanto, creyó que era "razonable que (la computadora) debe contener los órganos especializados para estas operaciones".[1]
Sistemas numéricos
Una ALU debe procesar números usando el mismo formato que el resto del circuito digital. Para los procesadores modernos, este formato casi siempre es la representación de número binariode complemento a dos. Las primeras computadoras usaron una amplia variedad de sistemas de numeración, incluyendo complemento a uno, formato signo-magnitud, e incluso verdaderos sistemas decimales, con diez tubos por dígito.Las ALUs para cada uno de estos sistemas numéricostenían diferentes diseños, y esto influenció la preferencia actual por el complemento a dos, debido a que ésta es la representación que hace más fácil, para el circuito electrónico de la ALU, calcular adiciones y sustracciones, etc.
Introducción práctica
Una ALU simple de 2 bits que hace operaciones de AND, OR, XOR y adición (haga click en la imagen para una explicación).
La ALU se compone básicamente de: Circuito Operacional, Registros de Entradas, Registro Acumuladory un Registro de Estados, conjunto de registros que hacen posible la realización de cada una de las operaciones.
La mayoría de las acciones de la computadora son realizadas por la ALU. La ALU toma datos de los registros del procesador. Estos datos son procesados y los resultados de esta operación se almacenan en los registros de salida de la ALU. Otros mecanismos mueven datos entre estos registros y la memoria.[2]
Una unidad de controlcontrola a la ALU, al ajustar los circuitos que le dicen a la ALU qué operaciones realizar.
Operaciones simples
La mayoría de las ALU pueden realizar las siguientes operaciones: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) un ALU suficientemente poderoso para hacerlo rápido, pero no tan complejo para llegar a ser prohibitivo. Imagine que usted necesita calcular, digamos, la raíz cuadrada de un número; el ingeniero digital examinará las opciones siguientes para implementar esta operación:
- 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.
- Diseñar una ALU compleja que calcule la raíz cuadrada con varios pasos (como el algoritmo que aprendimos en la escuela). Esto es llamado cálculo interactivo, y generalmente confía en el control de una unidad de control compleja con microcódigo incorporado.
- 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.
- 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.
- 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 realizadado por bibliotecas de software.
Las opciones arriba 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 poderosos como el Pentium IVy el AMD64implementan 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.
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 controlindicando 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 acarreoentrante o saliente, overflow, división por cero, etc.[2]
ALU vs. FPU
Una unidad de punto flotante, Floating Point Unit (FPU), también realiza operaciones aritméticas entre dos valores, pero lo hace para números en representación de punto flotante, que es mucho más complicada que la representación de complemento a dosusada en una típica ALU. Para hacer estos cálculos, una FPU tiene incorporados varios circuitos complejos, no 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 punto flotante, números complejosRUZ IBAÑEZ , etc., reciben generalmente un nombre más ilustre.
POST
DE LA CRUZ IBAÑEZ MOISES
ARQUITECTURA COMPUTACIONAL
Acerca de arquitectura de computadores
Una característica fundamental de una maquina digital, es que esta necesita una excitación para ejecutar una serie de pasos predeterminados, tiene una función especifica.
En un computador, la respuesta se puede programar, esto es, explora algunas instrucciones y datos (programa) y de acuerdo a esto (ejecuta). Su función es flexible y depende del programa almacenado en memoria.
De la diversidad de computadores que existe se distinguen algunos bloques funcionales típicos.
Se estudiaran algunos de estos bloques para entender como se construye una estructura flexible como una computadora.
Estructura funcional
En la figura se muestra una estructura típica de un computador clásico del tipo V. Neumann. El concepto de computador de programa almacenado se establece con el proyecto EDVAC (Electronic Discrete Variable Automatic Computer), 1945 (John Von Neumann, J. Presper Ecker, John Mauchly
El avance tecnológico, particularmente el desarrollo de tecnología de compuertas con control de impedancia, 3er. estado, ha modificado la estructura centralizada por un esquema mas distribuido.
Es importante resaltar que en todas estas representaciones se puede constatar que todos los computadores tienen la misma forma de operar. Una diferencia es la incorporación de buses en las arquitecturas actuales, lo que ha permitido el desarrollo de cada unidad funcional por separado.
Algunos de los elementos funcionales:
Unidades de entrada y salida
Unidad de memoria
Unidad aritmética lógica
Unidad de control
Buses: dirección, dato, control, I/O
Estos elementos se articulan de acuerdo a las características de los procesadores. Se presenta un diagrama de bloques de una estructura genérica de un procesador en que aparecen representados los distintos elementos que lo constituyen. Esta dividido en una sección de datos y una de control. La estructura de los buses se considera que es de tipo multiplexado entre memoria e I/O.
La sección de datos: registros de dirección, contador de programa, ALU, registros varios.
La sección de control provee decodificación de instrucción e información de tiempo (sincronismo) al resto de los elementos del procesador. Mantencion de información de estatus del interior y fuera del chip.
El procesador manipula, fundamentalmente, tres tipos de datos:
Instrucciones: secuencias de bit que son decodificadas por el procesador. Están almacenadas en la memoria RAM o ROM y son extraidas en forma secuencial y llevadas al registro de instrucción del procesador, de acuerdo al flujo del programa.
Direcciones: o en dispositivos I/O en que se almacenan elementos de información.
ubicaciones en memoria
Datos o operandos: información que será operada por el procesador y que puede tener una representación numérica, lógica o alfanumérica (string).
Unidad aritmetica logica
Es en donde se relizan las operaciones aritmeticas y logicas, para ello se apoya usando el registro acumulador, los registros generales y tambien un registro flag.
Los registros flag sirven para indicar el estado del procesador despues de realizar una operacion de calculo. Los registros son flip flop que registran las caracteristicas del resultado arrojado por una instruccion.
Dependiendo de los fabricantes los flags pueden ser muy diversos pero hay algunos que en general se encuentran en casi todos los procesadores:
- Flag de signo: indica si el resultado de la ultima operacion fue positiva o negativa.
- Flag de cero: indica si el resultado de la ultima operacion fue cero o distinto de cero.
- Flag de overflow: indica si el resultado fue mayor que la capacidad de representacion del acumulador
- Flag de underflow: cuando el resultado es menor a la minima capacidad de representacion del acumulador.
- Etc.
Operaciones aritmeticas y logicasLas operaciones aritmeticas y logicas se realizan siempre sobre algun registro y tienen como pivote el registro acumulador:
- Sobre el acumulador, solamente
- Entre el acumulador y algun registro
- Entre el acumilador y una direccion de memoria
- Entre el acumulador y un dato inmediato.
El resultado de las operaciones es almacenado en el acumulador.Algunas operaciones aritmaticas logicas tipicas:
- Sumas
- Restas
- Complemetacion
- Despalazamiento a la izquierda (multiplicado por 2)
- Despalzamiento a la derecha (dividido por 2)
- Incremetar o decrementar en 1 el acumulador
- OR, AND, OR-EX, etc, entre un par de registros.
Las operaciones de multiplicacion y division no son efectuadas por la alu y se implementan en software que comanadan la ALU o hardware, especial, que realiza estas funciones.Registros de trabajo
Se usan para almacenar datos empleados en la ejecucion de las instrucciones, es muy importante su velocidad de respuesta.
Unidad de control
Realiza funciones organizativas a partir de un mecanismo de relojeria con el cual se sincroniza y secuencian los tiempos y los momentos en que los distintos elementos, que constituyen la estructura del procesador, deban participar en la ejecucion de una instruccion.
Un ciclo de reloj es la unidad de tiempo para la ejecucion de las operaciones dentro del procesador. Las operaciones se realizan dentro del ciclo de reloj o en multiplos, enteros, de ciclos de reloj.
Cada ciclo de reloj esta dividido en diferentes tiempos, o fases, los cuales indican el momento en que se efectuan las micro-operaciones , dentro de cada ciclo.
Una micro operacion corresponde a acciones como: desplazamiento de un registro, transferencia de un registro a un bus, complementar un registro, etc.
La unidad de control comanda el registro que contiene la direccion de la instruccion que se esta ejecutando o de la proxima instruccion a ejecutar, esto depende del estado de avance en el tiempo de ejecucion de la instruccion.
El registro de direccion de instruccion y la memoria stack estan relacionados ya que esta contiene las direcciones de retorno de las rutinas del programa.
El registro de direcciones requiere de un procesamiento aritmetico de direcciones de acuerdo al largo, en bytes, de la instruccion en ejecucion.
La unidad de control dispone del registro de instruccion que almacena la instruccion que se esta efectuando, es decir una vez finalizado el fetch.
La instruccion esta compuesta de dos partes:
- El codigo de operacion el llamado opcode, con el cual se alimenta al decodificador de instruccion
- Una direccion que se puede almacenar en algun registro de direcciones
La unidad de control contiene toda la circuiteria necesaria para efectuar las microoperacioens oredenadas de acuerdo a la naturaleza de la instruccion a ejecutar.Unidad de memoria
Corresponde a un conjunto de registros direccionables a traves del bus de direcciones.
Cada registro de memoria esta constituido por un determinado numero de unidades basicas, bit, que constituyen la celda de memoria. El tamaño de la celda es constante para un procesador determinado.
Los tamaños tipicos son 4, 8, 16, 32 y mas bits por celda.
La memoria tiene dos usos principales:
- Almacenar programas
- Almacenar datos o resultados.
El almacenamiento de programas esta asociado a la naturaleza de los mismos. Si son de uso permanente se almacenan en memoria ROM (read only memory), caso de los programas BIOS (basic input output system).Si son de uso esporadico y afectos a cambios se almacenan RAM (ramdom access memory) caso de los programas de aplicacion.
Las memorias del tipo ROM corresponden a tecnologia de memorias, electronicas, de estado solida no volatil, esto significa que no requieren de energia para mantener los valores que almacenan.
Las memorias RAM necesitan energia para mantener la informacion almacenada, se reconocen dos grandes familias:
- Las SRAM o ram estaticas, rapidas, caras, de alto consumo utiles como memorias cache L2
- Las DRAM o ram dinamicas, lentas, baratas, de bajo consumo se usan como memoria principal
Operacion de la memoriaLa forma de trabajo de un ciclo de memoria con el envio de una direccion por el BUS de DIRECCION, AB (address bus), dicha direccion se almacena en un registro de direcciones de memoria, MAR (memory address register)
La operacion de memoria puede ser de lectura o escrtura.
Lectura: el contenido de la celda direccionada por el MAR se transfiere a un registro de datos de memoria MDR (memory data register) el que transfiere su contenido al bus de datos DB (data bus), de alli al registro del procesador que corresponda.
Escritura: una vez seleccionado el MAR , se transfiere el contenido del DB al MDR, desde donde se lleva a la celda seleccionada, completando el proceso de escritura.
Papel del bus de control: a traves de este bus, la unidad de control activa el MAR el MDR y los demas registros involucrados en los procesos de lectura-escritura. Sincroniza el momento en que se activan AB y DB, esto corresponde a un conjunto de microoperraciones necesarias para producir una lectura o escritura en memoria.
Unidad entrada y salida
Dado que la CPU trabaja a velocidades mucho mayor que los equipos perifericos (nsg. v/s msg) se requiere una unidad que se encargue de organizar cual de los perifericos conectados sera habilitado para intercambiar informacion con el procesador.
La unidad de entrada/salida puede ser un multiplexor/demultiplexor, a traves del selector de puertas se direcciona cual de los equipos debe conectarse, la señal de control establece la modalidad de comunicacion I/O, la informacion se transfiere al I/O data desde donde se traslada al DB.
Existen diversas modalidades de organizacion para transferir informacion:
- Tiempo: sincronico o asincronico
- Datos: secuenciales, paralelos
- Coneccion directa al DB, se elimina el I/O data
- Coneccion directa a memoria, DMA (Data Memory Access), permite coneccion entre procesadores y entre unidades controladoras rapidas, interfases de discos, etc.
Diagramas de bloques de procesadores:- Intel 8080
- Intel 8086
- Intel 80486
- Intel pentium
- Hewett Packart PA
- SUN Spark
- Digital Apha
Procesador Intel 8080, bus de datos 8 bits, bus de direcciones 16 bitsProcesador Intel 486
Intel pentium
Esquema del procesador Hewlett Packard, precision Architecture, SFU (special funtions units), TLB (translation lookaside buffer).
Diagrama de Ultra SPARC -I
Procesador Alpha de Digtal Equiipment Corp.
3
1
POST Bautista Mata Jonathan Adrian
http://html.rincondelvago.com/arquitectura-de-computadoras_2.html
Los buses
Los hay de 133, 266, 333, 400, 533, 800 Mhz.
BUSES de I/O
CPU Central Processor Unit
Registros
Unidad de Control
Unidad Aritmético Lógica
Ciclo de ejecución
Frecuencia de reloj
Hercio
Memoria
Clasificación de las memorias
Memoria Caché
Memoria Principal
Memorias tipo RAM (Random Access Memory) "Memoria de acceso aleatorio", almacena datos que pueden ser escritos y borrados atendiendo a los procesos de computación. "Aleatorio" indica que sus localidades pueden ser accedidas directamente, dando rapidez a los procesos; a diferencia de las memorias secuenciales que para llegar a una posición, hay que pasar antes por las posiciones previas
Memoria Secundaria
Memoria Volátil, No Volátil
Memoria Volátil, No Volátil
Según el tipo de escritura
Ej. SuperNintendo, MegaDrive, GameBoy
Según el tipo de escritura
Memoria Flash
ARENAS QUIJANO ITZEL "DARK"