El Control Miocroprogramado


Contenido:

La Memoria de Control

Transferencia Condicional

Mapeo de las Instrucciones

Diseño de la unidad de Control

Secuenciador de microporgrama

 

CONTROL MICROPROGRAMADO.

Memoria de control.

La función de la unidad de control en una computadora digital es iniciar secuencias de microoperaciones. Cuando la circuitería genera señales de control por medio de técnicas de diseño lógico convencional, se dice que la unidad de control es por circuitería. La microprogramación es la segunda alternativa para diseñar la unidad de control de una computadora digital.

La función de control que especifica una microoperación es una variable binaria. Cuando se halla en un estado binario se ejecuta la microoperación correspondiente. El estado activo de una variable de control puede ser el estado 1 o 0, según la aplicación.

La unidad de control inicia una serie de pasos secuenciales de microoperaciones. Durante cualquier momento, se van a iniciar ciertas microoperaciones, mientras otras quedan inactivas. Las variables de control pueden activarse en cualquier momento mediante una cadena de dígitos 1 y 0, que se denomina palabra de control.

Las palabras de control puede programarse para realizar diferentes operaciones sobre los componentes del sistema.

Una unidad de control cuyas variables se almacenan en la memoria se llaman unidad de control microprogramada. Cada palabra en la memoria de control contiene una microinstrucción.

La microinstrucción especifica una o mas microoperaciones para el sistema.

Una secuencia de microinstrucciones constituye un microprograma.

La memoria de control puede ser una memoria de sólo lectura (ROM). El contenido de las palabras en la ROM es fijo y no puede alterarse mediante la programación simple por que no es posible escribir en la ROM. Las palabras de la ROM se vuelven permanentes durante la producción de la unidad.

Una memoria que es parte de una unidad de control se denomina memoria de control. Esta unidad tendrá dos memorias separadas: una memoria principal y una memoria de control.

La memoria de control contiene un microprograma fijo que el usuario ocasional no puede alterar. Esta memoria es considerada como una ROM , dentro de la cual se almacena toda la información en forma permanente. El registro de direccionamiento de la memoria de control especifica la dirección de la microinstrucción y el registro de datos de control contiene la microinstrucción que se lee de la memoria. No hay que olvidar que una ROM opera como un circuito combinatorio, con el valor de la dirección como entrada y la palabra correspondiente como salida.

 

Secuencia de la Dirección.

Las microinstrucciones se almacenan en la memoria de control en grupos y cada grupo especifica una rutina. Cada instrucción de computadora tiene su propia rutina de microprograma en la memoria de control para generar las microoperaciones que ejecutan la instrucción. La circuitería que controla la secuencia de la dirección de la memoria de control debe poder secuenciar las microinstrucciones dentro de una rutina y poder transferir el control de programa de una a otra. Los pasos que debe seguir un control durante la ejecución de una instrucción de computadora son:

-Se carga una dirección inicial en el registro de dirección de control cuando se enciende la computadora

-La rutina de búsqueda puede secuenciarse al incrementar el registro de direccionamiento de control por medio del resto de sus microinstrucciones. Al final de la rutina de búsqueda, la instrucción esta en el registro de instrucción de la computadora.

-En seguida, la memoria de control recorre la rutina que determina la dirección efectiva del operando. Una instrucción de maquina puede tener bits que especifiquen diferentes modos de direccionamiento, como un direccionamiento indirecto y los registros índice. Puede lograrse una rutina de calculo de dirección efectiva en la memoria de control mediante una microinstrucción de brinco, la cual esta condicionada al estado de los bits de modo de la operación . cuando se termina la rutina de calculo de dirección efectiva, la dirección del operando está disponible en el registro de direccionamiento de la memoria.

-El siguiente paso es generar las microoperaciones que ejecutan la instrucción que se trajo de la memoria. Los pasos de la microoperación que se van a generar en los registros del procesador dependen de la parte del código de operación de la instrucción. Cada instrucción tiene su propia rutina de microprograma almacenada en una cierta posición de la memoria de control.

Las posibilidades de secuencia de dirección que se requieren en la memoria de control son:

1. Incrementar el registro de direccionamiento de control.

2. Transferencia de control del programa condicional o incondicional, dependiendo de las condiciones de los bits de estado.

3. Un proceso de mapeo de los bits de la instrucción a una dirección para una memoria de control.

4. Una opción para llamar y regresar solicitud de una subrutina y retorno.

Volver

 

Transferencia condicional.

La lógica de transferencia de control del programa o brinco proporciona posibilidades de toma de decisiones en la unidad de control. Las condiciones de estado son bits especiales del sistema que proporciona información de parámetros, como el acarreo de un sumador, el bit de signo de un numero, los bits de modo de una instrucción y las condiciones de estado de entrada o salida. Los bits de estado, junto con el campo en la microinstrucción que especifica una dirección de transferencia, controlan las decisiones de transferencia condicional que se generan en la lógica de transferencia de control.

Una instrucción de transferencia incondicional puede obtenerse al cargar al cargar la dirección de ramificación de la memoria de control en el registro de direccionamiento de control. Esto puede lograrse al fijar el valor de un bit de estado de entrada del multiplexor para que siempre sea igual a 1.

Volver

Mapeo de la instrucciones.

Existe un tipo especial de transferencia de control cuando una microinstrucción especifica un brinco a la primera palabra de la memoria de control donde se ubica una rutina de microprograma para una instrucción. Los bits de estado para este tipo de brinco son los que están en la parte del código de operación de la instrucción.

 

Subrutinas.

Las subrutinas son programas que utilizan otras rutinas para realizar una tarea particular. Puede llamarse una subrutina de cualquier punto desde el cuerpo principal del microprograma. Con frecuencia, muchos microprogramas contienen secciones de código idénticas. Puede ahorrarse microinstrucciones al emplearse subrutinas que utilizan secciones comunes de microcódigo.

Volver

Diseño de la unidad de control.

Los bits de la microinstrucción por lo general se dividen en campos, y cada campo define una función separada y distinta. Los diferentes campos que se encuentran en los formatos de instrucción proporcionan bits de control para iniciar microoperaciones en el sistema, bits especiales para especificar la manera en que se va a evaluar la siguiente instrucción y un campo de dirección para transferir el control del programa. Puede reducirse la cantidad de bits de control que inician microoperaciones al agrupar variables mutuamente exclusivas en campos y decodificar los bits k de cada campo para proporcionar 2k microoperaciones. Cada campo requiere de un decodificador para producir las señales de control correspondientes.

Volver

 

Secuenciador de microprograma.

Los componentes básicos de una unidad de control microprogramada es memoria y los circuitos que seleccionan la dirección siguiente. La parte de selección de dirección se llama secuenciador de microprograma. Puede construirse un secuenciador de microprograma con funciones digitales que se ajusten a una aplicación particular.

El propósito de un secuenciador de microprograma es presentar una dirección a la memoria de control con el fin de que pueda leerse y ejecutarse una microinstrucción. La lógica de la siguiente dirección del secuenciador determina la dirección fuente especifica que de va a cargar dentro de l registro de control de direcciones. La elección de la dirección fuente se guía mediante los bits de información de la dirección siguiente que recibe el secuenciador de la microinstrucción presente. Los secuenciadores comerciales incluyen dentro de la unidad una pila de registro interno que se usa para almacenamiento temporal de direcciones durante solicitudes de subrutina y una de microprograma. Algunos secuenciadores proporcionan un registro de salida que pueden funcionar como registro de dirección de la memoria de control.

Volver

Hosted by www.Geocities.ws

1