El principal inconveniente del circuito combinacional es decir, no utiliza memoria para guardar el estado actual y el anterior. Por lo tanto, el estado anterior de entrada no tiene ningún efecto sobre el estado actual del circuito. Considerando que, el circuito secuencial tiene memoria, por lo que la salida puede variar según la entrada. Este tipo de circuitos utiliza entrada, salida, reloj y un elemento de memoria previos. Aquí los elementos de memoria pueden ser pestillos o flip-flops. Los circuitos secuenciales se diseñan mediante varios métodos, como el uso de ROM y volteretas, PLA, CPLD (dispositivo lógico programable complejo) , FPGA (matriz de puerta programable en campo) . En este artículo, analizaremos solo cómo diseñar un circuito secuencial utilizando PLA.
El diagrama de bloques del circuito secuencial como se muestra a continuación:
Diagrama de bloques del circuito secuencial
Diseño de circuito secuencial usando PLA
Circuitos secuenciales se puede realizar utilizando PLA (matrices lógicas programables) y flip-flops. En este diseño, la asignación de estado puede ser importante porque el uso de una buena asignación de estado puede reducir el número requerido de términos de producto y, por lo tanto, reducir el tamaño requerido del PLA. Un término de producto definido como la conjunción de literales, donde cada literal es una variable o su negación.
Pues consideremos el diseño como un conversor de código. La tabla de estado que se muestra a continuación en la tabla se puede realizar utilizando un PLA y tres chancletas como se muestra a continuación en la figura. Esta configuración de circuito es muy similar al diseño basado en flip-flop de ROM, excepto que la ROM se reemplaza por el PLA de tamaño adecuado. La asignación de estado conduce a la tabla de verdad que se muestra a continuación. Esta tabla podría almacenarse en un PLA con cuatro entradas, 13 términos de producto y cuatro salidas, pero esto ofrecería un tamaño reducido en comparación con la ROM de 16 palabras.
X Q1 Q2 Q3 | Con D1 D2 D3 |
0 0 0 0 0 0 0 1 0 0 1 0 0 0 1 1 0 1 0 0 0 1 0 1 0 1 1 0 0 1 1 1 1 0 0 0 1 0 0 1 1 0 1 0 1 0 1 1 1 1 0 0 1 1 0 1 1 1 1 0 1 1 1 1 | 1 0 0 1 1 0 1 1 0 1 0 0 0 1 0 1 1 1 0 1 0 0 0 0 1 0 0 0 X X X X 0 0 1 0 0 1 0 0 1 1 0 0 1 1 0 1 0 1 1 0 1 0 0 0 X X X X X X X X |
Tabla: Tabla de la verdad
REGALO EXPRESAR
| PRÓXIMO ESTADO X= 0 1 | REGALO SALIDA (Z) |
A | ANTES DE CRISTO | 1 0 |
B C | D E Y E | 1 0 0 1 |
D ES | S.S H M | 0 1 1 0 |
H METRO | A A A – | 0 1 1 – |
Tabla: Tabla de estado
Diseño de circuitos secuenciales usando PLA
Ecuaciones de entrada y salida derivadas del mapa de Karnaugh
Aquí, como hay siete estados, se requieren tres flip-flops D. Por lo tanto, se requiere un circuito PLA con 4 entradas y 4 salidas. Si se considera la asignación de estado del convertidor de código, la ecuación de salida resultante y las ecuaciones de entrada del flip-flop D derivadas de Karnaugh se pueden escribir con las siguientes ecuaciones
D1 = Q1 + = Q2 '
D2 = Q2 + = Q2 '
D3 = Q3 + = Q1 Q2 Q3 = X ”Q1 Q3” = X Q1 ”Q2”
Z = X ”Q3” + X Q3
X Q1 Q2 Q3 | Con D1 D2 D3 |
– – 0 – – 1 – – – 1 1 1 0 1 – 0 1 0 0 – 0 – – 0 1 – – 1
| 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 1 0 0 0 1 1 0 0 0 1 0 0 0
|
La tabla PLA que corresponde a estas ecuaciones se da en la tabla anterior. Esta tabla se puede realizar utilizando PLA con cuatro entradas, siete términos de producto y cuatro salidas. Para verificar inicialmente el funcionamiento del diseño anterior, suponga que X = 0 y Q1Q2Q3 = 000. Esto selecciona las filas - - 0- y 0 - - -0 en la tabla, por lo que Z = 0 y D1D2D3 = 100. Después del borde del reloj activo, Q1Q2Q3 = 100. Si la siguiente entrada es X = 1, entonces se seleccionan las filas - - 0 - y - 1- -, por lo que Z = 0 y D1D2D3 = 110. Después del borde del reloj activo, Q1Q2Q3 = 110.
Matriz lógica programable (PLA)
La matriz lógica programable es un dispositivo lógico programable. Generalmente se usa para implementar circuitos lógicos combinacionales. El PLA tiene un conjunto de planos Y programables (matriz Y), que se vinculan a un conjunto de planos O programables (matriz O), que luego se pueden complementar provisionalmente para producir una salida. Este diseño permite sintetizar una gran cantidad de funciones lógicas en el suma de productos (SOP) formas canónicas. A continuación se muestra un diagrama de bloques simple de un PLA.
Diagrama de bloques de un PLA
La principal diferencia entre PLA y PAL (lógica de matriz programable) es,
PLA: Ambos Y plano y OR plano son programables.
PAL: Solo el plano AND es programable, mientras que el plano OR es fijo.
Para una mejor comprensión de PLA, aquí estamos considerando el siguiente ejemplo.
Intentemos implementar estas funciones f1 y f2 se dan como
Las entradas x1, x2, x3 y sus respectivas señales complementadas son dadas al plano AND programable, allí obtendremos salidas del plano AND como P1, P2, P3 llamados minitérminos. Luego, estas señales se envían al plano OR programable para producir la función de salida requerida f1 y f2 (suma de productos). La siguiente figura describe la implementación del PLA a nivel de puerta para una funcionalidad determinada.
Implementación del PLA
Se trata de diseñar circuitos secuenciales utilizando PLA. Consideramos que la información proporcionada en este artículo es útil para comprender mejor este concepto. Además, cualquier consulta sobre este artículo o cualquier ayuda en implementación de proyectos eléctricos y electrónicos , puede acercarse a nosotros comentando en la sección de comentarios a continuación. Aquí hay una pregunta para ti, ¿Qué se entiende por circuito secuencial?