Académique Documents
Professionnel Documents
Culture Documents
Las 8 salidas de este decodificador se representan mediante smbolos D0 a D7. El numero decimal
en el subndice es equivalente al valor binario del cdigo de operacin correspondiente, el bit 15
de la instruccin se transfiere a un flip-flop representado por el smbolo I. los bits de 0 al 11 se
aplican en las compuertas lgicas de control. El contador secuencial de 4 bits puede contar en
binario del 0 al 15. Las salidas del contador se decodifican en 16 seales de temporizacin de T0 a
T15.
Despus se derivara la lgica interna de las compuertas de control, cuando se considere en detalle
el diseo de la computadora.
El contador secuencial SC puede incrementarse o limpiarse en forma sncrona. De vez en cuando el
contador se borra a 0, haciendo que la siguiente seal de temporizacin activa T0.
especifica una transferencia del contenido de PC a AR, si esta ctiva la seal de temporizacin T0.
T0 est activa durante todo un intervalo de ciclo de reloj.
El contenido de PC se coloca dentro del bus (con S2S1S0=010) y se habilita la entrada LD (cargar)
de AR. La transferencia real no ocurre hasta el final del ciclo de reloj, cuando el reloj llega a una
transicin positiva.
Esta misma transicin de reloj positiva incrementa el contador secuencial SC de 0000 a 0001. El
siguiente ciclo de reloj tiene a T1 activo y T0 inactivo.
5-5 Ciclo De Instruccin
Un programa residente en la unidad de memoria de la computadora est formado por una
secuencia de instrucciones. El programa se ejecuta en la computadora recorriendo un ciclo y cada
instruccin se divide en una secuencia de subciclos o fases. Cada ciclo de instruccin consiste en
las siguientes fases:
1.- buscar una instruccin de la memoria.
2.- decodificar la instruccin.
3.- leer la direccin efectiva de la memoria si la instruccin tiene una direccin indirecta.
4.-ejecutar la instruccin.
Cuando termina el paso 4, el control regresa al paso 1 para buscar, decodificar y ejecutar la
siguiente instruccin.
Este proceso continua en forma indefinida a menos que se encuentre una instruccin HALT (alto).
Bsqueda y decodificacin
El contador de programa PC est cargado con la direccin de la primera instruccin del programa.
El contador secuencial SC se borra a 0, proporcionando una seal de temporizacin codificada T0.
Despus de cada pulso de reloj, SC se incrementa en uno, para que las seales de temporizacin
recorran una secuencia T0, T1, T2 y as sucesivamente. Las microoperaciones para las fases de
bsqueda y decodificacin pueden especificarse mediante los siguientes enunciados de
transferencia de registro.
La figura 5-8 muestra cmo se implantan los primeros dos enunciados de trasferencia de registro
en el canal del sistema del bus. Con el fin de proporcionar la trayectoria de datos para la
trasferencia del PC a AR, se debe aplicar una seal de temporizacin T0 para obtener la siguiente
conexin:
1.- colocar el contenido del PC dentro del bus al hacer que las entradas de seleccin de bus S2S1S0
sean iguales a 010.
2.- Transferir el contenido del bus a AR al habilitar la entrada LD de AR.
La siguiente transicin de reloj inicia la transferencia de PC a AR porque T0= 1. Para cumplir el
segundo enunciado.
Es necesario usar la seal de temporizacin T1 con el fin de proporcionar las conexiones siguientes
en el canal del sistema de bus.
1.- habilitar la entrada de lectura de la memoria.
2.- colocar el contenido de la memoria dentro del bus al hacer S2S1S0=111.
3.- transferir el contenido del bus a IR al habilitar la entrada LD de IR.
4.- incrementar PC al habilitar la entrada INR de PC.
La siguiente transicin de reloj inicia las operaciones de leer e incrementar porque T1=1.
Duplica la parte del canal del sistema de bus y muestra cmo estn conectadas T0 y T1 a las
entradas de control de los registros, la memoria y las entradas de seleccin del bus.
Determinacin del tipo de instruccin
La seal de temporizacin que esta despus de la decodificacin es T3, durante el tiempo T3, la
unidad de control determina el tipo de instruccin que se acaba de leer de la memoria.
El diagrama de flujo presenta una configuracin inicial para el ciclo de instruccin y muestra como
el control determina el tipo de instruccin despus de la decodificacin. Los tres tipos de
instruccin disponibles de que se dispone en la computadora estn en la figura 5-5.
La salida del decodificador D7 es igual a 1 si el cdigo de operacin es igual a binario 111.
La microoperaciones para la condicin de direccionamiento indirecto se puede representar
mediante el enunciado de transferencia de registros
de AR, para recibir la direccin indirecta que reside en los 12 bits menos significativos de la palabra
de memoria.
Los tres tipos de instrucciones se subdividen en 4 trayectorias separadas. La operacin
seleccionada se activa con la transicin de reloj asociada con la seal temporizacin T3. Puede
representarse como.
El contador secuencial SC debe incrementarse cuando D7T3 = 1, para que pueda continuarse la
ejecucin de la instruccin de referencia a memoria con la variable de temporizacin T4. Puede
ejecutarse una instruccin de referencia a registro de entrada-salida mediante el reloj asociado
con la seal de temporizacin T3. Se borra SC a 0 y el control regresa a la fase de bsqueda con
T0=1.
El contador secuencial SC se incrementa o se borra a 0 con cada transicin de reloj positiva.
Si SC se incrementa, no escribiremos el enunciado SCSC+1, pero estar implcito que el control
pasa a la siguiente seal de temporizacin en secuencia.
Cuando se va a borrar SC, incluiremos el enunciado SC0.
Instrucciones de referencia a registros.
El control reconoce las instrucciones de referencia a registros cuando D7= 1 e I=0. Estas
instrucciones utilizan los bits del 0 al 11 del cdigo de instruccin para especificar una de las 12
instrucciones. Estos 12 bits estn disponibles en IR (0-11).
Estas se ejecutan con la transicin de reloj asociada con la variable de temporizacin T3.
Cada funcin de control necesita la relacin booleana DIT3, la cual, por conveniencia,
representamos con el smbolo r. la funcin de control se distingue por unos de los bits en IR (0-11).
Al asignar el smbolo B, al bit i de IR , todas las funciones de control se pueden representar con
sencillez mediante rB1.
Se usan las dos seales de temporizacin, T4 y T5, con el decodificador de operacin D1 en lugar
de D0, el cual se utiliz para la instruccin AND. Despus de que se busca la instruccin en la
memoria y se decodifica, solo estar activa una salida del decodificador de operacin y esa salida
determina la secuencia de microoperaciones que sigue el control durante la ejecucin de la
instruccin de referencia a memoria.
IDA: Cargar a AC
Transfiere la palabra de memoria especificada por la direccin efectiva a AC. Las microoperaciones
necesarias para ejecutar esta instruccin son:
Se considera que la instruccin BSA est en la memoria en la direccin 20. El bit I es 0 y la parte de
la direccin de la instruccin tiene el equivalente binario de 135. Despus de las fases de
bsqueda y decodificacin PC contiene 21, que es la direccin de la siguiente instruccin en el
programa (denominada direccin de retorno). AR contiene la direccin efectiva 135 en la figura a).
la instruccin BSA ejecuta la siguiente operacin numrica:
El siguiente ciclo de la instruccin encuentra PC con el valor 21, por lo que el control sigue
ejecutando la instruccin en la direccin de retorno.
No es posible ejecutar la operacin de la instruccin BSA en un ciclo de reloj cuando se utiliza el
bus del sistema de la computadora bsica. Para usar en forma adecuada la memoria y el bus, la
instruccin BSA debe ejecutarse con una secuencia de dos microoperaciones.
La seal de temporizacin T4 inicia una operacin de escribir en memoria, coloca el contenido del
PC dentro del bus, y habilita la entrada INR de AR. La operacin de escribir en memoria se
completa y AR se incrementa cuando ocurre la siguiente transicin de reloj.
El bus utiliza en T5 para transferir el contenido de AR a PC.
ISZ: INCREMENTA Y BRINCA SI ES CERO
Incrementa la palabra especificada por la direccin efectiva y, si el valor incrementado es igual a 0,
pc se incrementa en 1. El programador por lo general almacena un numero negativo (en
complemento a 2) en la palabra de memoria. Cuando este valor negativo se incrementa una y otra
vez en 1, eventualmente alcanza el valor de cero. PC se incrementa en uno para saltar la siguiente
instruccin en el programa.
Como no es posible incrementar una palabra dentro de la memoria, es necesario leer la palabra
dentro de DR, incrementa DR y almacenar otra vez la palabra en la memoria. Esto se hace con la
siguiente secuencia de microoperaciones:
Muestra todas las microoperaciones, para la ejecucin de las siete instrucciones de referencia a
memoria. Las funciones de control se indican en la parte superior de cada bloque. Las
microoperaciones que se ejecutan durante los tiempos T4, T5 o T6 dependen del valor del cdigo
de la operacin. Esto se indica en el diagrama de flujo mediante 6 trayectorias diferentes, una de
las cuales toma el control despus de que se decodifica la instruccin. En cada caso, el contador
secuencial SC se borra a 0 con la ltima seal de temporizacin.
Esto provoca una transferencia de control a la seal de temporizacin T0 para que comience el
siguiente ciclo de instruccin.
5-7 Entrada-salida e interrupcin
Configuracin de entrada-salida
La terminal enva y recibe informacin serial. Cada entidad tiene 8 bits de un cdigo alfanumrico.
La informacin serial del teclado se cambi dentro del registro de entrada INPR. La informacin
serial para la impresora se almacena en el registro de salida OUTR. Estos dos registros comunican
en forma serial con una interfaz de comunicacin y con el AC en paralelo.
La interfaz que transmite recibe informacin serial del teclado y la transmite a INPR. La interfaz
que recibe acepta informacin de OUTR y la enva en forma serial a la impresora.
INPR consta de 8 bits y contiene informacin de entrada alfanumrica. La bandera de entrada de 1
bit FGI es un flip-flop de control. El bit de la bandera se activa en 1 cuando hay disponible
informacin nueva en el dispositivo de entrada y se desactiva a 0 cuando la computadora acepta
informacin. El proceso de transferencia de informacin es al principio, la bandera de entrada FGI
se desactiva a 0.
Cuando se oprime en el teclado, se ejecuta un corrimiento sobre un cdigo alfanumrico de 8 bits
dentro de INPR y la bandera de entrada FGI se inicia en 1.
Mientras la bandera este en 1 no puede cambiarse la informacin en INPR al oprimir otra tecla. La
computadora comprueba el bit de la bandera; si es 1, la informacin de INPR se transfiere en
paralelo dentro de AC y FGI se reinicia a 0.
Una vez que se desactiva la bandera puede introducirse informacin nueva dentro de INPR al
oprimir otra tecla.
El registro de salida OUTR funciona en forma similar pero la direccin del flujo de informacin
nueva dentro de INPR al oprimir otra tecla.
El registro de salida OUTR funciona en forma similar pero la direccin del flujo de informacin
esta invertida. Al principio la bandera de salida FGO se activa en 1. La computadora comprueba el
bit de la bandera; si es 1, la informacin de AC se transfiere en paralelo a OUTR y FGO se desactiva
Ocurre una
interrupcin y R se inicia en 1 mientras el control est ejecutando la instruccin en la direccin
255. La direccin de retorno 256 est en PC. El programador ha colocado previamente un
programa de servicio entrada-salida en la memoria comenzando en la direccin.
1.- a) cuando el control alcanza la seal de temporizacin y encuentra que R=1, procede con el
ciclo de interrupcin. El contenido del PC (256) se almacena en la localidad de memoria 0, PC se
inicia en 1, y R se reinicia a 0. Al comienzo del siguiente ciclo de instruccin, la instruccin que se
lee de la memoria est en la direccin 1 porque este es el contenido de PC. La instruccin de
brinco en la direccin 1 hace que el programa se transfiera al programa de servicio de entradasalida en la direccin 1120. Este programa comprueba las banderas, determina cual bandera esta
en 1 y despus transfiere la informacin de entrada o salida. Se ejecuta la instruccin 10N para
activar IEN en 1, y el programa regresa a la posicin en la cual fue interrumpido.
b) la instruccin que regresa a la computadora al lugar original en el programa principal es una
instruccin de brinco indirecto, con una parte de direccin 0.
Ciclo de interrupcin
Se inicia despus de la ltima fase de ejecucin si el flip-flop R de interrupcin es =1. Este flip-flop
se activa en 1 si IEN =1 y si FGI o FGO son iguales a 1. La condicin para activar el flip-flop R en 1
puede expresarse:
El smbolo + entre FGI y FGO en la funcin de control representa una funcin OR lgica. A esto se
aplica la funcin AND con IEN y T0T1T2.
Aplicaremos la funcin AND con R a las tres seales de temporizacin para que las fases de
bsqueda y de decodificacin se reconozcan de las tres funciones de control RT0, RT1 y RT2. La
ranzn para hacer esto es que el tiempo en que se ejecuta la instruccin y SC se borra a 0, el
control recorre una fase de bsqueda solo si R=0.
Si R=1, el control recorrer un ciclo de instruccin.
El ciclo de interrupcin almacena la direccin de retorno (disponible en PC) dentro de la posicin
de memoria 0, modifica a la posicin de memoria 1, y desactiva IEN, R y SC a 0. Esto se hace: