El Papel de la
Unidad de Control
La Unidad de Control es el bloque más complejo del
procesador. Su misión es la de gobernar las señales de control que regulan la
actuación del Camino de Datos en la ejecución de las instrucciones. Tiene que
interpretar o decodificar el código máquina de la instrucción en curso para
activar aquellas señales que sean precisas para el desarrollo de la misma
mediante los recursos existentes en el Camino de Datos del procesador.
·
Para realizar su función, consta de los
siguientes elementos:
· Registro de contador de programas (CP)
· Registro de Instrucciones (RI)
· Decodificador (D)
· Reloj (R)
· Generador de Señales o Secuenciador (S)
· Registro de contador de programas (CP).También denominado registro de control de Secuencia (RCS), contiene permanentemente
la dirección de memoria de la próxima instrucción a ejecutar. Si la instrucción
que se está ejecutando en un instante determinado es de salto o de ruptura de
secuencia, el RCS tomará la dirección de la instrucción que se tenga que
ejecutar a continuación; esta dirección la extraerá de la propia instrucción en
curso. El primer paso para la ejecución de una instrucción, consiste en ir a
buscarla en memoria, el CP indica cual es la dirección de memoria donde se
halla esa instrucción. Una vez obtenida y antes de continuar con los siguientes
pasos una señal de control incrementa el CP en una unidad, por lo cual los
programas deben estar escritos (cargados) en posiciones consecutivas de
memoria. El CP pasa la dirección al Registro de Direcciones
· Registro de Direcciones (RD). Contiene la dirección de memoria donde se
encuentra la próxima instrucción y esta comunicado con el Bus de
Direcciones. El tamaño de este registro determina el tamaño de la memoria que
puede direccionar.( Si es de 32 bits se puede direccionar 232=4.294.967296
(4 GB posiciones de memoria). Con la dirección de memoria, se transfiere a
través el Bus de Datos desde la memoria central al Registro de Datos en la UC
la instrucción correspondiente. Esta transferencia se realiza mediante señales
de control. Una vez que la instrucción se encuentra en la UCP, el código
de la instrucción pasa al registro de instrucciones.
· Registro de Instrucciones (RI).Contiene la instrucción que se está ejecutando
en cada momento. Esta instrucción llevará consigo el código de operación (CO),
acción de que se trata, y en su caso los operandos o las direcciones de memoria
de los mismos. Pasa el CO al decodificador.
· Decodificador (D). Se encarga de extraer y analizar el código de
operación de la instrucción en curso (que está en el RI) y dar las señales
necesarias al resto de los elementos para su ejecución por medio del Generador de Señales.
· Generador de Señales (GS). En este dispositivo se generan órdenes muy
elementales (microórdenes) que, sincronizadas por los impulsos del reloj, hacen
que se vaya ejecutando poco a poco la instrucción que está cargada en el RI.
· Reloj (R). Proporcionar una sucesión de impulsos eléctricos a intervalos constantes
(frecuencia constante), que marcan los instantes en que han de comenzar los
distintos pasos de que consta cada instrucción.
¿Cuáles son las
operaciones lógicas que realiza la UAL, y como se comparan números en un
computador por medio de ella?
La denominación “Lógica” de la UAL se debe a que también
efectúe operaciones lógicas, como la AND (^), OR ( ) y la negación (-). Los
valores “verdadero” y “falso” se representarían por 1 y 0.
La operación AND queda definida así: 0^0=0 0^1=0 1^0=0 1^1=1
Combinación que tenga 0 como ante último bit; si el resultado es cero implica que dicho bit es 0. Si el resultado es distinto de cero implica que ese bit vale 1 (respuesta si), con lo cual se debe incrementar en uno el contador de respuestas positivas citado.
La UAL es un simple circuito calculador, no tiene “inteligencia” de tipo deductivo como puede insinuar su denominación “lógica “.
Para comparar dos números A y B, a fin de saber si A es menor, igual o mayor que B, en la UAL se resta A-B.
En un conmutador para conocer, si un número binario es el 3192, es restarle 3192. Si el resultado es 0, será dicho número.
La operación AND queda definida así: 0^0=0 0^1=0 1^0=0 1^1=1
Combinación que tenga 0 como ante último bit; si el resultado es cero implica que dicho bit es 0. Si el resultado es distinto de cero implica que ese bit vale 1 (respuesta si), con lo cual se debe incrementar en uno el contador de respuestas positivas citado.
La UAL es un simple circuito calculador, no tiene “inteligencia” de tipo deductivo como puede insinuar su denominación “lógica “.
Para comparar dos números A y B, a fin de saber si A es menor, igual o mayor que B, en la UAL se resta A-B.
En un conmutador para conocer, si un número binario es el 3192, es restarle 3192. Si el resultado es 0, será dicho número.
Cuando nos presentan dos números escritos, basta con
observarlos para darnos cuenta en forma mecánica por los símbolos que los componen,
cual es el mayor. La UC no “sabe” que está operando números, ni el valor de una
combinación binaria.
El método usado en un computador para conocer, por ejemplo,
si un número binario es el 3192, es restarle 3192. Si el resultado es cero,
será dicho número, caso contrario no. La UAL tampoco determina como es A
respeto de B, solo efectúa A – B e
indica si el resultado fue cero o no.
Por lo tanto, la comparación es una operación aritmética de
resta, no lógica, siendo que las otras operaciones aritméticas que realiza la
Unidad Aritmética Lógica son la suma, la multiplicación y división de números
enteros y naturales.
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.
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.
¿Que son los
indicadores (“flags”) de resultado generados por la UAL, contenidos en el
Registro de Estado de la UCP?
Indicadores (flags)
Hay nueve indicadores
de un bit en este registro de 16 bits. Los cuatro bits más significativos están
indefinidos, mientras que hay tres bits con valores determinados: los bits 5 y
3 siempre valen cero y el bit 1 siempre vale uno (esto también ocurría en los
procesadores anteriores).
Registro de indicadores (16 bits)
Registro de indicadores (16 bits)
·
CF (Carry Flag, bit 0): Si
vale 1, indica que hubo "arrastre" (en caso de suma) hacia, o
"préstamo" (en caso de resta) desde el bit de orden más significativo
del resultado. Este indicador es usado por instrucciones que suman o restan
números que ocupan varios bytes. Las instrucciones de rotación pueden aislar un
bit de la memoria o de un registro poniéndolo en el CF.
·
PF (Parity Flag, bit 2): Si vale uno, el resultado tiene paridad par, es decir, un número par de bits a 1. Este indicador se puede utilizar para detectar errores en transmisiones.
PF (Parity Flag, bit 2): Si vale uno, el resultado tiene paridad par, es decir, un número par de bits a 1. Este indicador se puede utilizar para detectar errores en transmisiones.
·
AF (Auxiliary carry Flag, bit 4): Si vale 1, indica que hubo "arrastre" o "préstamo" del nibble (cuatro bits) menos significativo al nibble más significativo. Este indicador se usa con las instrucciones de ajuste decimal.
AF (Auxiliary carry Flag, bit 4): Si vale 1, indica que hubo "arrastre" o "préstamo" del nibble (cuatro bits) menos significativo al nibble más significativo. Este indicador se usa con las instrucciones de ajuste decimal.
·
ZF (Zero Flag, bit 6): Si este indicador vale 1, el resultado de la operación es cero.
ZF (Zero Flag, bit 6): Si este indicador vale 1, el resultado de la operación es cero.
·
SF (Sign Flag, bit 7): Refleja el bit más significativo del resultado. Como los números negativos se representan en la notación de complemento a dos, este bit representa el signo: 0 si es positivo, 1 si es negativo.
SF (Sign Flag, bit 7): Refleja el bit más significativo del resultado. Como los números negativos se representan en la notación de complemento a dos, este bit representa el signo: 0 si es positivo, 1 si es negativo.
·
TF (Trap Flag, bit 8): Si vale 1, el procesador está en modo paso a paso. En este modo, la CPU automáticamente genera una interrupción interna después de cada instrucción, permitiendo inspeccionar los resultados del programa a medida que se ejecuta instrucción por instrucción.
TF (Trap Flag, bit 8): Si vale 1, el procesador está en modo paso a paso. En este modo, la CPU automáticamente genera una interrupción interna después de cada instrucción, permitiendo inspeccionar los resultados del programa a medida que se ejecuta instrucción por instrucción.
·
IF (Interrupt Flag, bit 9): Si vale 1, la CPU reconoce pedidos de interrupción externas enmascarables (por el pin INTR). Si vale 0, no se reconocen tales interrupciones. Las interrupciones no enmascarables y las internas siempre se reconocen independientemente del valor de IF.
IF (Interrupt Flag, bit 9): Si vale 1, la CPU reconoce pedidos de interrupción externas enmascarables (por el pin INTR). Si vale 0, no se reconocen tales interrupciones. Las interrupciones no enmascarables y las internas siempre se reconocen independientemente del valor de IF.
·
DF (Direction Flag, bit 10): Si vale 1, las instrucciones con cadenas sufrirán "auto-decremento", esto es, se procesarán las cadenas desde las direcciones más altas de memoria hacia las más bajas. Si vale 0, habrá "auto-incremento", lo que quiere decir que las cadenas se procesarán de "izquierda a derecha". OF (Overflow flag, bit 11): Si vale 1, hubo un desborde en una operación aritmética con signo, esto es, un dígito significativo se perdió debido a que tamaño del resultado es mayor que el tamaño del destino.
DF (Direction Flag, bit 10): Si vale 1, las instrucciones con cadenas sufrirán "auto-decremento", esto es, se procesarán las cadenas desde las direcciones más altas de memoria hacia las más bajas. Si vale 0, habrá "auto-incremento", lo que quiere decir que las cadenas se procesarán de "izquierda a derecha". OF (Overflow flag, bit 11): Si vale 1, hubo un desborde en una operación aritmética con signo, esto es, un dígito significativo se perdió debido a que tamaño del resultado es mayor que el tamaño del destino.
¿En qué se diferencia
la UAL y el coprocesador matemático que opera con números reales representados en “punto flotante” y como
opera este?
Para operar en la UAL números fraccionarios, el programa que ordena lugar donde está la coma, y operar los números como si fueran enteros.
El coprocesador matemático (“copro”) es un microprocesador
dedicado entre otras funciones a realizar rápidamente operaciones con números
enteros y fraccionarios, encargándose sus circuitos de controlar a cada
instante el lugar donde debe ir la coma. También realiza operaciones
trigonométricas y logaritmética.
De esta forma no se pierde tiempo en la ejecución de instrucciones adicionales, que lleven la cuente de la ubicación de la coma, como se requiere si se usa la UAL.
Los números “reales”. Para que el coprocesador pueda operarlos deben estar codificados en “punto flotante”. El “copro” también se denomina “Unidad de Punto Flotante”, en realidad en el interior del computador se representa solo con números binarios, sin comas.
Existen instrucciones para cada tipo de número a procesar, cuyos códigos determinan, si la operación aritmética se realizara en la UAL o en el “copro”. El copro de una Pentium permite operar en doble precisión extendida con números de 80 bits, mientras que la UAL del mismo puede operar 2 números de 32 bits.
Las siglas 80x87 se refieren a copros de Intel.
Realizan las 4 operaciones aritméticas básicas, calculan raíz cuadrada, exponenciaciones, valor absoluto, logaritmos, funciones trigonométricas y trascendentales en general.
Procesan datos como números en FP (reales) de 32, 64, 80 bits, enteros de 16, 32 y 64 bits, y datos BCD de 18 dígitos decimales.
Las instrucciones para el Pentium y para el copro pueden ser ejecutadas por ambos en forma simultánea.
En el registro de Estado del “copro” informa entre otras, si un resultado no esta fuera de rango de representación, o si un operando esta mal representado.
Estos últimos permiten determinar si un numero es > = < que el de la cima top de la pila. Copro y Pentium se pueden comunicar a través de “ports” direccionales.
El copro solo puede acceder a memoria a través del 80x86 o Pentium. Para multimedia (MMXtm) se ejecutan en un coprocesador dedicado a MMX, puede existir para video, para entradas/salidas.
Un coprocesador es como una extensión de procesador central, que colabora con este trabajando paralelo y proporcionando registros extras.
De esta forma no se pierde tiempo en la ejecución de instrucciones adicionales, que lleven la cuente de la ubicación de la coma, como se requiere si se usa la UAL.
Los números “reales”. Para que el coprocesador pueda operarlos deben estar codificados en “punto flotante”. El “copro” también se denomina “Unidad de Punto Flotante”, en realidad en el interior del computador se representa solo con números binarios, sin comas.
Existen instrucciones para cada tipo de número a procesar, cuyos códigos determinan, si la operación aritmética se realizara en la UAL o en el “copro”. El copro de una Pentium permite operar en doble precisión extendida con números de 80 bits, mientras que la UAL del mismo puede operar 2 números de 32 bits.
Las siglas 80x87 se refieren a copros de Intel.
Realizan las 4 operaciones aritméticas básicas, calculan raíz cuadrada, exponenciaciones, valor absoluto, logaritmos, funciones trigonométricas y trascendentales en general.
Procesan datos como números en FP (reales) de 32, 64, 80 bits, enteros de 16, 32 y 64 bits, y datos BCD de 18 dígitos decimales.
Las instrucciones para el Pentium y para el copro pueden ser ejecutadas por ambos en forma simultánea.
En el registro de Estado del “copro” informa entre otras, si un resultado no esta fuera de rango de representación, o si un operando esta mal representado.
Estos últimos permiten determinar si un numero es > = < que el de la cima top de la pila. Copro y Pentium se pueden comunicar a través de “ports” direccionales.
El copro solo puede acceder a memoria a través del 80x86 o Pentium. Para multimedia (MMXtm) se ejecutan en un coprocesador dedicado a MMX, puede existir para video, para entradas/salidas.
Un coprocesador es como una extensión de procesador central, que colabora con este trabajando paralelo y proporcionando registros extras.
¿Qué son los MIPS y
las MFLOPS?
Millones de instrucciones por segundo MIPS.
Un Pentium actual de 1 GHz ejecuta hasta 3 instrucciones por ciclo, unos 3000 MIPS.
Los MFLOPS “megaFLOGS” son las millones de operaciones en punto flotantes por segundo que puede realizar un procesador, a diferencia de los MIPS los MFLOPS depende del procesador y del programa elegido.
Un Pentium actual de 1 GHz ejecuta hasta 3 instrucciones por ciclo, unos 3000 MIPS.
Los MFLOPS “megaFLOGS” son las millones de operaciones en punto flotantes por segundo que puede realizar un procesador, a diferencia de los MIPS los MFLOPS depende del procesador y del programa elegido.
MIPS es el acrónimo de "millones de
instrucciones por segundo".
Es una forma de medir la potencia de los procesadores. Sin embargo, esta medida
sólo es útil para comparar procesadores con el mismo juego de instrucciones
y usando benchmarks
que fueron compilados por el mismo compilador y con el mismo nivel de
optimización. Esto es debido a que la misma tarea puede necesitar un número de
instrucciones diferentes si los juegos de instrucciones también lo son; y por
motivos similares en las otras dos situaciones descritas. En las comparativas,
usualmente se representan los valores de pico, por lo que la medida no es del
todo realista. La forma en que funciona la memoria
que usa el procesador también es un factor clave para la potencia de un
procesador, algo que no suele considerarse en los cálculos con MIPS. Debido a
estos problemas, los investigadores han creado pruebas estandarizadas tales
como SpecInt
para medir el funcionamiento real, y las MIPS han caído en desuso.
El equivalente en la aritmética de punto flotante de los
MIPS es el flogs.
Muchos microprocesadores de 8 y 16 bits han sido medidos con
KIPS (kiloinstrucciones por
segundo), que equivale a 0'001 MIPS. El primer microprocesador de propósito
general, el Intel 8080 ejecutaba 640 KIPS. El Intel 8086 (16 bits), el primer
microprocesador usado en PC, 800 KIPS. El Pentium 4 llega aproximadamente a
1'700 MIPS.
Los PC actuales realizan un máximo de 18.000 millones de
operaciones lógicas por segundo. Si se ejecutan 6 instrucciones por ciclo y hay
3.000 millones de ciclos por segundo, se tienen 18.000 MIPS.
MFLOP (operaciones de punto flotante por segundo). Se usa
como una medida del rendimiento de una computadora, especialmente en cálculos
científicos que requieren un gran uso de operaciones de coma flotante.
Evolución en el tiempo de las instrucciones por
segundo
Procesador
|
IPS
|
Reloj
|
Año
|
640 KIPS
|
2 MHz
|
1974
|
|
800 KIPS
|
4'77 MHz
|
1974
|
|
1 MIPS
|
8 MHz
|
1979
|
|
54 MIPS
|
66 MHz
|
1992
|
|
35 MIPS
|
33 MHz
|
1994
|
|
35'9 MIPS
|
40 MHz
|
1996
|
|
40'04 MIPS
|
100 MHz
|
1996
|
|
525 MIPS
|
233 MHz
|
1997
|
|
400 MIPS
|
300 MHz
|
1998
|
|
80 MIPS
|
50 MHz
|
1999
|
|
¡Error!
Referencia de hipervínculo no válida.
|
32 MIPS
|
333MHZ
|
2002
|
9.726 MIPS
|
3'2 GHz
|
2003
|
|
2.000 MIPS
|
1 GHz
|
2005
|
|
6.400 MIPS
|
3'2 GHz
|
2005
|
|
8.400 MIPS
|
2'8 GHz
|
2005
|
|
12.000 MIPS
|
2'8 GHz
|
2005
|
|
18.500 MIPS
|
2'2 GHz
|
2005
|
|
18.900 MIPS
|
2'2 GHz
|
2005
|
|
25.150 MIPS
|
2'8 GHz
|
2005
|
|
Cell
(cada PPE)
|
6.400 MIPS
|
3'2 GHz
|
2006
|
Procesador Cell
de la PlayStation
3
|
21.800 MIPS
|
3'2 GHz
|
2006
|
22.150 MIPS
|
2'6 GHz
|
2006
|
|
24.300 MIPS
|
2'8 GHz
|
2006
|
|
27.100 MIPS
|
3'0 GHz
|
2006
|
La unidad de control es la parte del CPU que se encarga de
que las cosas sucedan, ya que emite señales de control externas al CPU para
producir el intercambio de datos con la memoria y los módulos de E/S. También
emite señales de control internas para transferir datos entre registros, hacer
que la ALU ejecute una función y otras operaciones internas. La entrada a la unidad
de control está compuesta por el registro de instrucción, los indicadores, y
señales de control.
Es el auténtico cerebro que controla y coordina el
funcionamiento de la computadora.
A raíz de la interpretación de las instrucciones que integran el programa esta unidad genera el conjunto de órdenes elementales necesarias para que se realice la tarea necesitada.
A raíz de la interpretación de las instrucciones que integran el programa esta unidad genera el conjunto de órdenes elementales necesarias para que se realice la tarea necesitada.
La responsabilidad principal de la unidad de control es hacer que se produzca una secuencia de operaciones elementales, llamadas micro operaciones, durante el desarrollo de un ciclo de instrucción.
La función principal de la unidad de control de la UCP es dirigir la secuencia de pasos de modo que la computadora lleve a cabo un ciclo completo de ejecución de una instrucción, y hacer esto con todas las instrucciones de que conste el programa.
A raíz de la interpretación de las instrucciones que integran el programa esta unidad genera el conjunto de órdenes elementales necesarias para que se realice la tarea necesitada.
Unidad
aritmético–lógica (UAL)
Esta unidad es la
encargada de realizar las operaciones elementales de tipo aritmético
(generalmente sumas o restas) y de tipo lógico (generalmente comparaciones
·
Para realizar su función, la unidad de control
consta de los siguientes elementos:
· Contador de programa. Contiene permanentemente la dirección de memoria de la siguiente instrucción a ejecutar. Al iniciar la ejecución de un programa toma la dirección de su primera instrucción. Incrementa su valor en uno, de forma automática, cada vez que se concluye una instrucción, salvo si la instrucción que se está ejecutando es de salto o de ruptura de secuencia, en cuyo caso el contador de programa tomará la dirección de la instrucción que se tenga que ejecutar a continuación; esta dirección está en la propia instrucción en curso.
· Registro de instrucción. Contiene la instrucción que se está ejecutando en cada momento. Esta instrucción llevará consigo el código de operación (un código que indica qué tipo de operación se va a realizar, por ejemplo una suma) y en su caso los operandos (datos sobre los que actúa la instrucción, por ejemplo los números a sumar) o las direcciones de memoria de estos operandos.
· Decodificador. Se encarga de extraer el código de operación de la instrucción en curso (que está en el registro de instrucción), lo analiza y emite las señales necesarias al resto de elementos para su ejecución a través del secuenciador.
· Reloj. Proporciona una sucesión de impulsos eléctricos o ciclos a intervalos constantes (frecuencia constante), que marcan los instantes en que han de comenzar los distintos pasos de que consta cada instrucción.
· Secuenciador. En este dispositivo se generan órdenes muy elementales (micro órdenes) que, sincronizadas por los impulsos de reloj, hacen que se vaya ejecutando poco a poco la instrucción que está cargada en el registro de instrucción.
La unidad de control realiza dos tareas básicas:
· Contador de programa. Contiene permanentemente la dirección de memoria de la siguiente instrucción a ejecutar. Al iniciar la ejecución de un programa toma la dirección de su primera instrucción. Incrementa su valor en uno, de forma automática, cada vez que se concluye una instrucción, salvo si la instrucción que se está ejecutando es de salto o de ruptura de secuencia, en cuyo caso el contador de programa tomará la dirección de la instrucción que se tenga que ejecutar a continuación; esta dirección está en la propia instrucción en curso.
· Registro de instrucción. Contiene la instrucción que se está ejecutando en cada momento. Esta instrucción llevará consigo el código de operación (un código que indica qué tipo de operación se va a realizar, por ejemplo una suma) y en su caso los operandos (datos sobre los que actúa la instrucción, por ejemplo los números a sumar) o las direcciones de memoria de estos operandos.
· Decodificador. Se encarga de extraer el código de operación de la instrucción en curso (que está en el registro de instrucción), lo analiza y emite las señales necesarias al resto de elementos para su ejecución a través del secuenciador.
· Reloj. Proporciona una sucesión de impulsos eléctricos o ciclos a intervalos constantes (frecuencia constante), que marcan los instantes en que han de comenzar los distintos pasos de que consta cada instrucción.
· Secuenciador. En este dispositivo se generan órdenes muy elementales (micro órdenes) que, sincronizadas por los impulsos de reloj, hacen que se vaya ejecutando poco a poco la instrucción que está cargada en el registro de instrucción.
La unidad de control realiza dos tareas básicas:
· Secuenciamiento. La unidad de
control hace que el CPU avance a través de una serie de micro operaciones en la
secuencia oportuna, basada en el programa que se está ejecutando.
· Ejecución. La unidad de control hace que se ejecute cada micro operación.
La clave de cómo funciona la unidad de control es mediante el uso de señales de control.
Señales de control
Las entradas son:
· Reloj. La unidad de control hace que se ejecute una micro operación (o un conjunto) en cada pulso de reloj.
· Registro de instrucción. Determina que micro operación se debe realizar.
· Indicadores. Usado para determinar el estado del CPU y el resultado de operaciones anteriores de la ALU.
· Señales de control del bus de control. Señales de control desde el bus del sistema.
Las salidas son:
· Señales de control internas del CPU.- Para transferir datos de un registro a otro y para activar funciones específicas de la ALU.
· Señales de control hacia el bus de control.- Señales de control de la memoria y señales de control de los módulos de E/S.
· Ejecución. La unidad de control hace que se ejecute cada micro operación.
La clave de cómo funciona la unidad de control es mediante el uso de señales de control.
Señales de control
Las entradas son:
· Reloj. La unidad de control hace que se ejecute una micro operación (o un conjunto) en cada pulso de reloj.
· Registro de instrucción. Determina que micro operación se debe realizar.
· Indicadores. Usado para determinar el estado del CPU y el resultado de operaciones anteriores de la ALU.
· Señales de control del bus de control. Señales de control desde el bus del sistema.
Las salidas son:
· Señales de control internas del CPU.- Para transferir datos de un registro a otro y para activar funciones específicas de la ALU.
· Señales de control hacia el bus de control.- Señales de control de la memoria y señales de control de los módulos de E/S.
Los pasos para ejecutar una instrucción cualquiera son los
siguientes:
1) Se extrae de la memoria principal la instrucción a ejecutar esa información es almacenada en el contador de instrucciones, la información que se almacena es la próxima instrucción a ejecutar en el registro de instrucción propiamente dicha. Este paso se llama ciclo de fetch en la literatura computacional (to fetch significa traer, ir por).
2) Una vez conocido el código de la operación la unidad de control ya sabe que circuitos de la UAL deben de intervenir pueden establecerse las conexiones eléctricas necesarias a través del secuenciador.
3) Extrae de la memoria principal los datos necesarios para ejecutar la instrucción en proceso.
4) Ordena la AUL que efectúa las operaciones el resultado de este es depositado en el acumulador de la AUL.
5) Si la instrucción ha proporcionado nuevos datos estos son almacenados en la memoria principal.
6) Incrementa en una unidad el contenido del contador de instrucciones a ejecutar.
La unidad de control ejecutara varias veces este ciclo de a una enorme velocidad.
Estas instrucciones no residen en memoria, ni fueron escritas por ningún programador, sino que la maquina las ejecuta directamente por medios electrónicos, y lo hará mientras esté funcionando (mientras este encendida) en una computadora es a razón de cientos de miles (o incluso millones) de veces por segundo.
1) Se extrae de la memoria principal la instrucción a ejecutar esa información es almacenada en el contador de instrucciones, la información que se almacena es la próxima instrucción a ejecutar en el registro de instrucción propiamente dicha. Este paso se llama ciclo de fetch en la literatura computacional (to fetch significa traer, ir por).
2) Una vez conocido el código de la operación la unidad de control ya sabe que circuitos de la UAL deben de intervenir pueden establecerse las conexiones eléctricas necesarias a través del secuenciador.
3) Extrae de la memoria principal los datos necesarios para ejecutar la instrucción en proceso.
4) Ordena la AUL que efectúa las operaciones el resultado de este es depositado en el acumulador de la AUL.
5) Si la instrucción ha proporcionado nuevos datos estos son almacenados en la memoria principal.
6) Incrementa en una unidad el contenido del contador de instrucciones a ejecutar.
La unidad de control ejecutara varias veces este ciclo de a una enorme velocidad.
Estas instrucciones no residen en memoria, ni fueron escritas por ningún programador, sino que la maquina las ejecuta directamente por medios electrónicos, y lo hará mientras esté funcionando (mientras este encendida) en una computadora es a razón de cientos de miles (o incluso millones) de veces por segundo.
Pasos para que UC no se equivoque con tantos números
contenidos en memoria (instrucciones, datos o direcciones)
El procesador no sabe qué información está tratando, pero el
orden la secuencia repetitiva que realiza ha sido perfectamente planeada para
que no existan problemas de interpretación al respecto.
Luego se suceden en orden los 4 pasos, lo primero que recibe la UCP de MP es el código de máquina de una instrucción, que ira al RI.
Un computador está pensado para que la UCP comience a operar leyendo de MP un número que debe ir al registro de instrucción RI por lo que dicho númeroserá interpretado como un código de una instrucción.
Después de sumar al IP la cantidad de bytes que tenía la instrucción ejecutada, IP contendrá la dirección de la próxima instrucción a ser ejecutada, con lo cual vuelve a empezar otro ciclo.
Las instrucciones deben estar escritas en posiciones sucesivas de memoria, y que los datos a operar por dichas instrucciones están en otra zona de memoria.
Los primero que llega es un código, el cual permite localizar otro número que será un dato, luego lo próximo será un código, etc…
Luego se suceden en orden los 4 pasos, lo primero que recibe la UCP de MP es el código de máquina de una instrucción, que ira al RI.
Un computador está pensado para que la UCP comience a operar leyendo de MP un número que debe ir al registro de instrucción RI por lo que dicho númeroserá interpretado como un código de una instrucción.
Después de sumar al IP la cantidad de bytes que tenía la instrucción ejecutada, IP contendrá la dirección de la próxima instrucción a ser ejecutada, con lo cual vuelve a empezar otro ciclo.
Las instrucciones deben estar escritas en posiciones sucesivas de memoria, y que los datos a operar por dichas instrucciones están en otra zona de memoria.
Los primero que llega es un código, el cual permite localizar otro número que será un dato, luego lo próximo será un código, etc…
Relación existente entre los movimientos durante la
ejecución de una instrucción y el reloj de sincronismo del procesador.
La ejecución de cada instrucción se realiza en sincronismo
con impulsos eléctricos que se suceden regularmente, a razón de millones de
ellos por segundo.
Se trata de una señal eléctrica que pasa cíclicamente por dos niveles denominados “ bajo” y “alto”, cada uno de una duración fija. Un ciclo o pulso se repite 50 millones de veces por segundo, por lo cual se tiene una frecuencia de repetición de 50 millones de HERTZ =50 MHZ.
Hablar de mega Hertz en lo mismo que hablar de millones de pulsos por segundo, y es lo mismo que decir millones de ciclos por segundo.
Una instrucción requiere para su ejecución varios pulsos reloj
Se trata de una señal eléctrica que pasa cíclicamente por dos niveles denominados “ bajo” y “alto”, cada uno de una duración fija. Un ciclo o pulso se repite 50 millones de veces por segundo, por lo cual se tiene una frecuencia de repetición de 50 millones de HERTZ =50 MHZ.
Hablar de mega Hertz en lo mismo que hablar de millones de pulsos por segundo, y es lo mismo que decir millones de ciclos por segundo.
Una instrucción requiere para su ejecución varios pulsos reloj
Forma en que UC pasa de movimiento a otro.
La unidad de control sigue la dirección de las posiciones en
memoria que contiene la instrucción que el computador va
a realizar en ese momento; recupera la información poniéndola en la ALU para la
operación que debe desarrollar. Transfiere luego el resultado a ubicaciones
apropiadas en la memoria. Una vez que ocurre lo anterior, la unidad de control
va a la siguiente instrucción (normalmente situada en la siguiente posición, a
menos que la instrucción sea una instrucción de salto, informando al ordenador
de que la próxima instrucción estará ubicada en otra posición de la memoria).
Los procesadores pueden constar de además de las anteriormente citadas, de otras unidades adicionales como la unidad de Coma Flotante.
Sebastián Cintes, Daiana Lis Gimenez 2 "B"
Los procesadores pueden constar de además de las anteriormente citadas, de otras unidades adicionales como la unidad de Coma Flotante.
Sebastián Cintes, Daiana Lis Gimenez 2 "B"
No hay comentarios:
Publicar un comentario