Está en la página 1de 10

República Bolivariana de Venezuela

Ministerio del Poder Popular para la Defensa


Universidad Nacional Experimental Politécnica de la Fuerza Armada Nacional
Bolivariana
UNEFANB – Extensión Guacara
Guacara, Edo. Carabobo

Diseño de Lógica de
Control

Prof: MSc. Francisco Mesa Integrante: Omer Primera


Asignatura: Arquitectura del Computador C.I: 28.456.174
Carrera: Ing. De Sistemas

Guacara, julio 2020.


Introducción.

El proceso del diseño lógico es una tarea compleja. Muchas instalaciones desarrollan
varias técnicas de diseño de computador automatizado para facilitar el proceso de diseño.
Sin embargo las especificaciones para el sistema y el desarrollo de procedimiento de datos
no pueden ser automatizados y requieren un razonamiento mental del diseñador humano.

La parte de mayor desafío y creatividad del diseño es el establecimiento de objetivos de


diseño y formulación de algoritmos y procedimientos para lograr los objetivos enunciados.
Esta tarea requiere una cantidad considerable de experiencia e ingenuidad por parte del
diseñador.

Un algoritmo es un procedimiento para obtener una solución al problema. Un algoritmo


diseñado es un procedimiento para configurar el problema con una pieza dada de equipo. El
desarrollo del algoritmo diseñado no puede comenzar hasta que el diseñador esté seguro de
dos cosas.

Primero, el problema entre manos debe comprenderse completamente. Segundo, se debe


asumir una configuración inicial del equipo para conformar el procedimiento.

A partir del enunciado del problema y de la disponibilidad de equipo se busca una


solución y se forma un algoritmo. El algoritmo se enuncia mediante un número finito de
pasos de procedimientos bien definidos.

El diseño de la lógica de control no puede separarse del desarrollo del algoritmo para
resolver un problema de diseño. Sin embargo, la lógica de control se relaciona directamente
a la parte del procesador de datos del sistema que éste controla.
Organización de Control.

El principal objetivo del diseño de lógica de control debe ser el desarrollo de un circuito
que configure la secuencia de control deseada de una manera lógica y directa. El esfuerzo
de minimizar el número de circuitos tendería a producir una configuración irregular, lo cual
haría difícil para cualquier persona diferente al diseñador, el reconocimiento de la
secuencia de eventos por los cuales pasa el control.

Como consecuencia podría ser difícil dar servicio y mantener el equipo cuando está en
operación. Debido a estas razones, los diseñadores con experiencia lógica, usan métodos
para el diseño de lógica de control que pueden ser considerados como una extensión del
método lógico secuencial clásico combinado con el método de trasferencia entre registros.
Dichos métodos, son los siguientes:

1. Método de un flip-flop por estado.

2. Método del registro de secuencia y el decodificador.

3. Control PLA.

4. Control del microprograma.

Una vez que se haya establecido la secuencia de control se puede diseñar el sistema
secuencial que configura las operaciones de control. Como el control es un circuito
secuencial, éste se puede diseñar por el procedimiento lógico secuencial. Sin embargo, este
método es poco práctico en la mayoría de los casos debido al gran número de estados que el
circuito de control puede tener.

Los métodos de diseño que usan estados y tablas de excitación pueden usarse en teoría,
pero en la práctica son engorrosos y difíciles de manejar. Además, los circuitos de control
obtenidos por este método requieren por lo general un número excesivo de flip-flops y
compuertas, lo cual implica el uso de compuertas SSI. Este tipo de configuración es
ineficiente con respecto al número de CI que se usan y al número de alambres que deben
ser interconectados.

1. Método de un flip-flop Por Estado.

Este método usa un flip-flop por estado en el circuito secuencial de control. Solamente
se pone a uno un flip-flop en un tiempo dado, los demás se ponen a cero. Se hace
programar un solo bit de un flip-flop a otro bajo el control de la lógica de decisión. En tal
arreglo cada flip-flop representa un estado y se activa solamente cuando el bit de control se
transfiere a éste.

Es obvio que este método no usa un número mínimo de flip-flops para el circuito
secuencial. De hecho, éste usa un número máximo de flip-flops. Por ejemplo un circuito
secuencial con 12 estados requiere un mínimo de cuatro flip-flops. Aun por medio de este
método el circuito de control usa 12 flip-flops para cada estado.

La ventaja de un flip-flop por método de estado es la simplicidad con la cual se diseña.


Este tipo de controlador puede diseñarse por inspección a partir de un diagrama de estado
que describe la secuencia de control. A primera vista, parece que este método aumentará el
costo del sistema ya que se necesita un mayor número de flip-flops, pero, este método
ofrece otras ventajas que no son aparentes a primera vista.

Por ejemplo, éste ofrece un ahorro de esfuerzos en el diseño, un aumento en la


simplicidad operacional y una disminución potencial en los circuitos combinacionales
requeridos para configurar el circuito secuencial completo.

2. Método del Registro de Secuencia y el Decodificador.

Este método usa un registro para darle secuencia a los estados de control. El registro se
decodifica para suministrar una salida por cada estado. El circuito tendrá 2n estados y el
decodificador 2n salidas, p ra n flip-flops en el registro de secuencia. Por ejemplo, un
registro de 4 bits puede estar en cualquiera de los 16 estados. Un decodificador de 4 x 16
tendrá 16 salidas, una para cada estado del registro. Tanto el registro de secuencia como el
decodificador son componentes MSI.

Control de Componentes Alambrados.

Para realizar el alambrado es necesario elaborar un diseño lógico de control, el cual se


lleva a cabo mediante 5 pasos:

a. Enunciar el Problema: En ejercicios donde se deben resolver algoritmos para la


adición y sustracción de los números binarios de punto fijo se toman en cuenta
cuando los números negativos están en la forma de signo-complemento de 2.

b. Una Configuración Inicial del Equipo: Es necesaria para poder formular el


algoritmo diseñado en términos del método de transferencia entre registros.
c. El Algoritmo: Se formula por medio del flujo grama que especifica la secuencia de
microoperaciones del sistema. Una vez que se tenga la lista de microoperaciones se
pueden seleccionar funciones digitales necesarias para su configuración. En esencia,
esto suministra la parte procesadora de datos del sistema.

d. Parte de Procesador: Se diseña para darle secuencia a las microoperaciones


requeridas por el mismo.

e. La Lógica de Control: Se deduce mediante un control de componentes alambrados


por el método de un flip-flop por estado.

Control del Microprograma.

Las variables de control que inician microoperaciones se almacenan en la memoria. La


memoria de control es comúnmente una ROM ya que la secuencia de control es permanente
y no necesita alteración. Las variables de control almacenadas en la memoria son leídas una
a una para iniciar la secuencia de microoperaciones del sistema.

El control a base de componentes conectados será reemplazado por un control de micro


programas. La inspección del diagrama de estado revela que secuencia de direcciones de
control de microprograma debe tener las siguientes cualidades:

 Provisión para la carga de una dirección.

 Provisión para sucesión de consecuencia de direcciones.

 Provisión para escoger entre dos direcciones como una función de los valores
presentes de las variables de condición S y E.

El propósito de la unidad de control es iniciar una serie de pasos secuenciales de


microoperaciones. Durante cualquier tiempo dado se deben iniciar ciertas operaciones
mientras que otras permanecen latentes. Así, las variables de control en un tiempo dado
pueden ser representadas por una cadena de 1 o 0 llamada palabra de control. Como tales,
dichas palabras de control pueden ser programadas para iniciar los diferentes componentes
en el sistema de una manera organizada. Una unidad de control cuyas variables de control
se almacenan en una memoria, se llaman unidad de control microprogramada. Cada palabra
de control de memoria se llama microinstrucción y una secuencia de microinstrucciones se
llama microprograma. Como poco, se necesitan las alteraciones del microprograma., la
memoria de control puede ser una ROM. El uso del microprograma comprende la ubicación
de todas las variables de control en palabras de la ROM para usarlas por medio de las
unidades de control a través de operaciones sucesivas de lecturas. El contenido de la
palabra en la ROM en una dirección dada, específica las microoperaciones del sistema.

Un desarrollo más avanzado, conocido como microprogramación dinámico permite


cargar inicialmente un microprograma a partir de una consola de computador o de una
memoria auxiliar tal como un disco magnético. Las unidades de control que usan
microprogramación dinámica emplean una memoria de control en la cual se puede escribir
(WCM = Writeble control memory). Este tipo de memoria puede ser usada para escribir (o
cambiar el microprograma) pero se usa mayormente para lectura. Una ROM, un PLA o un
WCM cuando se usan en una unidad de control se los trata cómo memoria de control.

La palabra leída de una memoria de control representa una microinstrucción. La


microinstrucción específica una o más microoperaciones para los componentes del sistema.
Una vez que se ejecutan las operaciones, la unidad de control debe determinar la siguiente
dirección. La ubicación de la siguiente microinstrucción podría ser la siguiente en
secuencia o podría ser ubicada en otro lugar en la memoria de control. Por esta razón es
necesario usar algunos bits de la microinstrucción para controlar la generación de la
dirección para la siguiente microinstrucción. La siguiente dirección puede ser también una
función de las condiciones de entrada externas. Mientras se ejecutan las microoperaciones,
la siguiente dirección es computada en el circuito generador de la siguiente dirección y
luego transferida (con el siguiente pulso de reloj) al registro de control de direcciones para
leer la siguiente microinstrucción.

Control de la Unidad Procesadora.

Se debe hacer provisión para incluir todas las variables de control posibles en el sistema
y no solamente para controlar un ALU. El multiplexor y los bits seleccionados deben
incluir todos los demás bits de condición posibles que se quieran comprobar en el sistema.
Se debe tener una provisión para aceptar una dirección externa para iniciar muchas
operaciones en vez de dos operaciones solamente tales como suma y sustracción.

Para construir microprogramas correctos es necesario especificar exactamente como el


bit de condición es afectado por cada microoperación en el procesador. Los bits S (signo) y
Z- (cero) están afectados por todas las operaciones. Los bits C (arrastre) y V
(sobrecapacidad) no cambian después de las siguientes operaciones del ALU:

 Las cuatro operaciones OR, AND, OR-exclusiva y complemento.

 Las operaciones de incremento y decremento.


Para las demás operaciones, el bit de arrastre del ALU va al bit C del registro de
condición. El bit C se afecta también después de un desplazamiento circular con operación
de arrastre.

Control a Base de Componentes Conectados.

Consiste en el desarrollo de un algoritmo aritmético y de un método diferente para


diseñar la lógica de control. En este método se desarrolla en primer plano un algoritmo,
diseñado conjuntamente con la configuración de los materiales (Componentes) que
conforma la parte procesadora del sistema.

Para diseñar el control de este sistema se necesita diseñar un diagrama de estado y


dotarlo con las salidas de control específicas.

El control puede diseñarse usando un procedimiento clásico lógico secuencial. Este


procedimiento requiere una tabla de estado con ocho estados, cuatro entradas y nueve
salidas. El circuito secuencial que se va a deducir de cada estado no será fácil de obtener
debido a la gran cantidad de variables. El circuito obtenido, usando este método, puede
tener un número mínimo de compuertas, pero tendrá un patrón irregular y será muy difícil
de analizar en el caso de que ocurra una falla. Estas dificultades son eliminadas si se diseña
el control por el método de un flip-flop por estado.

Una organización del control que use un flip-flop por estado tiene la característica
conveniente de que el circuito puede deducirse directamente del diagrama de estado por
inspección.

Control PLA.

El PLA es un componente LSI que puede configurar cualquier circuito combinacional


complejo. Es esencialmente similar al registro de secuencia y al método del decodificador
excepto que todos los circuitos combinacionales se configuran con un PLA, incluyendo el
decodificador y la lógica de decisión

El control del PLA es esencialmente similar al registro de secuencia y al método del


decodificador excepto que todos los circuitos combinacionales se configuran con un PLA,
incluyendo el decodificador y la lógica de decisión. Es posible reducir el número de CI y el
número de alambres de interconexión, usando un PLA para el circuito combinacional.
Secuenciador de Microprograma.

Es un circuito lógico sencillo que permite realizar la ejecución en secuencia de un


conjunto de instrucciones muy elementales llamadas microinstrucciones (no confundir con
las instrucciones propias del lenguaje máquina). Cada microinstrucción contiene las señales
de control que se enviarán a la UP, junto a una serie de bits que permitirán seguir el
secuenciamiento. Es decir, Es el centro neurálgico de gestión, control y planificación del
microprocesador, por tanto su función es fundamental para el desarrollo de cualquier
instrucción software.

Una unidad de control de microprograma debe visualizarse como compuesta de dos


partes: la memoria de control que almacena las microinstrucciones y los circuitos asociados
que controlan la generación de la siguiente dirección.

La parte de generación de dirección se llama algunas veces secuenciador de


microprograma en vista de que da la secuencia de las microinstrucciones en la memoria de
control. Un secuenciador de microprograma puede construirse con circuitos MSI para
adaptarse a una aplicación particular. Sin embargo, de la misma manera que se encuentran
disponibles en CI las unidades procesadoras para propósitos generales, se encuentran los CI
para los secuenciadores para propósitos generales adecuados para la construcción de las
unidades de c-control del microprograma. Para garantizar un amplio rango de aceptabilidad
un secuenciador de CI debe suministrar una organización interna que pueda adaptarse a un
amplio rango de aplicaciones.

Un secuenciador de microprograma unido a la memoria de control inspecciona ciertos


bits de la microinstrucción, de los cuales se determina la siguiente dirección para el control
de la memoria. Un secuenciador típico presenta las siguientes características de
secuencimiento de direcciones:

1. Incrementa la dirección presente para la memoria de control.

2. Se ramifica a una dirección como se especifica en el campo de dirección de la


microinstrucción.

3. Se ramifica a una dirección dada, si el bit de condición especificado es igual a 1.

4. Trasfiere el control a una nueva dirección de la manera especificada por una fuente
externa.

5. Tiene la facilidad para hacer subrutinas con llamadas y retornos.


Conclusión.

Se concluye qué, el diseño de control de un sistema digital es un proceso para deducir


los circuitos digitales que realizan datos de procesamientos y de circuitos digitales que
suministran señales de control. La temporización de todos los registros en un sistema digital
sincrónico se controla por medio de un generador de pulsos de reloj maestros. Estos pulsos
se aplican a todos los flip-flops y los registros en el sistema. Los pulsos continuos de reloj
no cambian el estado de un registro a no ser que el registro se habilite por la señal de
control.

La parte del procesador de datos puede ser una unidad procesadora de propósito general.
El control inicia todas las microoperaciones en el procesamiento de datos. La lógica de
control que genera las señales da secuencia a las microoperaciones. El diseño de un sistema
digital que requiere una secuencia de control comienza con la suposición de la
disponibilidad de variables de tiempo. Se diseña cada variable en la secuencia por medio de
un estado y luego se forma un diagrama de estado.

Al mismo tiempo con el desarrollo de secuencia de control se hace una lista de


microoperaciones que se van a iniciar, para cada estado de control. La secuencia de control
y las relaciones de transferencia entre registros puede deducirse directamente de la
especificación en palabras del problema. Un diagrama de tiempo clarifica la secuencia de
tiempo entre las diferentes señales de control del sistema. En un circuito secuencial con
reloj, los pulsos de reloj sincronizan todas las operaciones incluyendo señales de transición
en las variables de control.
Bibliografía.

Lógica digital y diseño de computadores – M. Morris Mano.

También podría gustarte