Electronica Digital
Seccion SI
viernes, 6 de enero de 2017
EJERCICIOS DE CIRCUITOS SECUENCIALES
EJERCICIOS DE CIRCUITOS SECUENCIALES:
Las
siguientes ecuaciones describen completamente un circuito secuencial:
A(t+1)
= Bx´+ AB + Ax´
B(t+1)
= A´x + A´B + Bx
Y
= AB´x
1.
Diseñe el circuito secuencial utilizando flip-flops JK
2.
Encuentre la tabla de estados y el diagrama de estados del circuito.
3.
Monte el circuito en el laboratorio en el módulo DIGI-BOARD2 y compruebe la
operación del mismo.
Solución:
Las ecuaciones anteriores se refieren a un
circuito secuencial con dos flip-flops A y B, por lo que tendrá 4 estados: 00,
01, 10 y 11. Igualmente tiene una entrada x y una salida Y.
Por
comodidad encontraremos la ecuación característica de un flip-flop JK, esto es,
la ecuación que nos proporciona el estado siguiente del flip-flop cuando ocurra
un pulso de reloj en función de los valores presentes en sus entradas de
excitación J K y del estado presente en el mismo:
En
la figura 3 se muestra la tabla característica del flip-flop JK que define la
operación de este tipo de flip-flop. Q es el estado presente en el flip-flop y
Q(t+1) es el estado siguiente del mismo. Se debe observar que Q(t+1) y Q no son
dos variables distintas, es la misma variable, ambas denominaciones representan
la salida del flipflop pero en momentos del tiempo diferentes. Así, Q es el
valor de la salida del flipflop antes de que ocurra un pulso de reloj, y Q(t+1)
después de que ocurra el pulso. Evaluando esta tabla característica se puede
construir la tabla que se muestra en la figura 4 que nos da el estado siguiente
del flip-flop en función del estado presente, y de las entradas de excitación J
y K.
De
la tabla de la figura 4 se puede construir el mapa de Karnaugh de la figura 5
para encontrar Q(t+1) de forma simplificada como se muestra a continuación
Q(t+1) = JQ´+ K´Q…………….ecuación característica del flip-flop JK:
De
acuerdo a lo anterior podremos plantear las ecuaciones características de los
flipflops A y B de nuestro problema.
A(t+1)
= JA A´+ K´A A y B(t+1) = JBB´+ K´BB
Donde
JA y KA son las entradas J y K del flip-flop A, y JB y KB las correspondientes
al flip-flop B.
De
la ecuación de estado del flip-flop A se puede plantear lo siguiente. A(t+1) = Bx´+ AB + Ax´ = (A+A´)Bx´+ AB + Ax´= Bx´A´ +
(Bx´+ B + x´)A
Comparando
esta expresión con la ecuación característica del flip-flop A se obtienen las funciones
de las entradas de excitación de este flip-flop. JA = Bx´ y KA = (Bx´+ B +
x´)´= (B´+ x) B´x = B´B´x + B´x x= B´x ´B´x = B´x
Procediendo
de forma similar con el flip-flop B
se
encuentra: B(t+1) = A´x + A´B+ Bx = A´(B+B´)x + A´B + Bx = A´x B´ + (A´x + A´
+x) B
=
A´x B´+ (A´+ x) B
Por
tanto JB = A´x y KB = (A´+ x)´ = Ax´
De
las funciones encontradas de las entradas de excitación JK de los flip-flops A
y B conjuntamente con la función de la señal de salida Y se puede elaborar el
circuito secuencial que se muestra en la figura 6 formado por 2 flip-flops JK,
1 inversor y 5 compuertas AND.
Evaluando
las ecuaciones de estado del circuito secuencial se puede encontrar el estado
siguiente para cada estado presente y cada estado que tenga la señal de entrada
x. Similarmente, como la señal de salida Y = AB´x, esta señal sólo tendrá el
valor de 1 lógico cuando el circuito se encuentre en el estado 10 y la señal de
entrada x = 1.
Lo
anterior se resume en la tabla de estados que se muestra en la figura 7. Esta
tabla nos informa por ejemplo que si el circuito se encuentra en el estado 10,
si x=0 se queda en el estado 10, pero si x=1 pasa al estado 00 cuando ocurra un
pulso de reloj. Similarmente, la salida Y=0 en el estado 10 si x=0, pero en
este mismo estado 10 la salida Y=1 si x=1.
Observe
que a diferencia de un circuito combinacional, la salida puede tener diferentes
valores aún para el mismo valor de la señal de entrada:
De
la tabla de estados de la figura 7 puede ser fácilmente obtenido el diagrama de
estados que se muestra en la figura 8:
CIRCUITOS SECUENCIALES
CIRCUITOS SECUENCIALES
Los
sistemas digitales que introducen la dependencia temporal son conocidos como
sistemas secuenciales. Una definición más rigurosa de sistema secuencial puede
ser la siguiente:
Un
circuito de conmutación secuencial se define como un circuito bivaluado en el
cual, la salida en cualquier instante depende de las entradas en dicho instante
y de la historia pasada (o secuencia) de entradas.
Esta
definición implica una serie de características inherentes a estos sistemas.
Entre éstas podemos destacar las siguientes:
•
Poseen uno o más caminos de realimentación, es decir, una o más señales
internas o de salida se vuelven a introducir como señales de entradas. Gracias
a esta característica se garantiza la dependencia de la operación con la
secuencia anterior.
• Como es lógico, existe una dependencia
explícita del tiempo. Esta dependencia se produce en los lazos de
realimentación antes mencionados. En estos lazos es necesario distinguir entre
las salidas y las entradas realimentadas. Esta distinción se traducirá en un
retraso de ambas señales (en el caso más ideal), como se puede ver en la figura
1.2, el cual puede producirse mediante dos elementos:
• Elementos de retraso, ya sean explícitos o
implícitos debido al retraso de la lógica combinacional. Este retraso es fijo e
independiente de cualquier señal.
•
Elementos de memoria, que son dispositivos que almacena el valor de la entrada
en un instante determinado por una señal externa y lo mantiene hasta que dicha
señal ordene el almacenamiento de un nuevo valor. La diferencia de
comportamiento entre ambos elementos radica en que la salida del elemento de
retraso es una copia de la señal de entrada; mientras que el elemento de
memoria copia determinados instantes de la entrada (determinados por una señal
externa), y no la señal completa, el resto del tiempo la salida no cambia de
valor, como podemos apreciar en la figura 1.2.
Para
que me entiendan un poco de que les hablo les mostrare el siguiente ejemplo:
- - En este caso, podemos observar que la
salida del elemento de retraso es una copia de la señal de entrada retraso un
determinado tiempo; mientras que la salida del elemento de memoria copia los
valores de la entrada cuando la señal de control tiene una transición de
subida, por lo que la copia no es exacta, sino que sólo copia lo que interesa.
Por lo tanto, el modelo clásico de un sistema secuencial consta de un bloque
combinacional, que generará la función lógica que queramos realizar, y un grupo
de elementos de memoria con una serie de señales realimentadas, como se muestra
en la figura 1.3.
En
ella podemos distinguir tres tipos de señales: señales de entradas, señales de
salida y señales de estado. Las señales de entrada y salida tienen el mismo
significado que en los sistemas combinacionales. En cambio, las señales de
estado son aquellas que mantienen la información de la historia pasada del
sistema. Las señales de estado tienen dos versiones, según se consideren a la
salida o a la entrada del elemento de memoria:
• Si consideramos las señales de estado a la
salida de los elementos de memoria, o lo que es lo mismo, a la entrada del
bloque combinacional, se denominan señales de estado presente ya que nos indica
el estado en el que se encuentra el sistema para realizar una operación.
•
Si consideramos las señales de estado a la entrada de los elementos de memoria,
o lo que es lo mismo, a la salida del bloque combinacional, se denominan
señales del próximo estado ya que nos indican el estado al que llegará después
de que el bloque combinacional haya realizado la operación.
CLASIFICACIÓN DE LOS SISTEMAS SECUENCIALES:
Uno de los primeros problemas de los circuitos
secuenciales era determinar el momento en el que el próximo estado debía pasar
a estado presente, sin capturar situaciones no deseadas como pueden ser los
azares. Este problema es lo que se conoce como sincronización, cuyas soluciones
dieron lugar a una de la principales clasificaciones de los sistemas
secuenciales. Así podemos dividir los sistemas en dos categorías:
•
Sistemas asíncronos.- La sincronización depende exclusivamente de los retrasos
de la lógica combinacional, sin necesidad de ninguna señal externa al sistema.
•
Sistemas síncronos.- La sincronización depende exclusivamente de una señal
externa al sistema, conocida generalmente como señal de reloj. Esta señal de
reloj controlará el comportamiento de los elementos de memoria:
Las operaciones de un sistema asíncrono tienen
efecto, es decir, se almacena el próximo estado, en intervalos temporales
diferentes. Por lo tanto, su velocidad de operación será distinta para cada
secuencia de entradas. De esta forma se toma como el parámetro de la velocidad
de operación el valor medio de todas las velocidades. Así, la operación de un
sistema asíncrono se denomina operación del caso medio.
En
cambio, las operaciones de un sistema síncrono tienen efecto en el mismo
intervalo temporal, el dictaminado por el periodo de la señal de reloj. Por lo
tanto, su velocidad de operación será siempre la misma para todas las
secuencias de entrada. Esta velocidad debe ser tal que todas las operaciones
tengan el tiempo necesario para poder llevarse a cabo. Así, la velocidad de un
sistema síncrono (y por tanto la frecuencia de la señal de reloj asociada) debe
estar limitada por la operación más lenta. A este tipo de operaciones se le
suele denominar operación del caso peor.
Estos dos tipos de operaciones se muestran esquematizadas
en la figura 1.4. Ambos se pueden modelar de la misma forma, es decir, con una
lógica combinacional y realimentaciones a través de elementos de memoria. La
diferencia radica en el control de estos elementos: en el caso síncrono, los
elementos de memoria son controlados por una señal externa, que por lo general
es controlada directamente por el usuario; mientras que en el caso asíncrono,
esta señal de control no existe (por lo que el elemento de memoria se traduce
en un elemento de retraso) o en su defecto dicha señal es generada por el
propio circuito, luego el gobierno de las operaciones recaen completamente en
el propio circuito. Así podemos apreciar que el cambio de las señales de
próximo estado a estado presente se llevan a cabo mediante un mayor o menor
retraso en el caso asíncrono o cuando lo indique una señal externa en el caso síncrono.
EXISTEN DOS GRANDES TIPOS DE CIRCUITOS
SECUENCIALES:
a)
Maquina de Mealy. En este tipo de circuitos, las salidas dependen, en cada
instante de los valores de los elementos de memoria y de las entradas presentes
en ese instante. Aquí, para cada estado, podemos tener tantas salidas como
combinaciones tengarnos en las entradas.
b)
Maquina de Moore. Aquí las salidas en cada instante dependen exclusivamente de
los estados de los elementos de memoria, y no dependen directamente de las
entradas en ese instante. Los valores de las entradas, sirven para modificar
las diversas transiciones entre estados.
ECUACIONES BOOLEANAS O LLAMADAS TAMBIÉN FUNCIONES
BOOLEANAS:
Un tipo especial de funciones son las denominadas funciones
booleanas. Su especificidad se centra en el hecho que su dominio e imagen
se basan en el conjunto {0,1}. Su importancia radica en el hecho que son
imprescindibles en la era digital: forman parte del núcleo que permite
comprender, más allá de los requerimientos meramente tecnológicos, las bases de
la Informática.
La raíz de las funciones
booleanas está en la denominada álgebra booleana, o álgebra de Boole
(gran matemático del s. XIX que desarrollo este área). El álgebra de Boole
contiene las bases de la lógica binaria, en las que el 0 representa el valor
lógico "falso", y el 1 representa el valor lógico
"verdadero". Las variables lógicas, cuyos valores son los anteriores,
se combinan mediante los llamados conectores u operadores lógicos para
dar lugar a expresiones complejas; a partir de los valores iniciales de las
variables lógicas puede calcularse el valor de la expresión compleja, expresión
que se denomina función booleana.
Para
cualquier sistema algebraico existen una serie de postulados iniciales, de aquí
se pueden deducir reglas adicionales, teoremas y otras propiedades del sistema,
el álgebra booleana a menudo emplea los siguientes postulados:
•Cerrado. El sistema booleano se considera cerrado con respecto a un operador
binario si para cada par de valores booleanos se produce un solo resultado
booleano.
•Conmutativo. Se dice que un operador binario " º " es conmutativo si
A º B = B º A para todos los posibles valores de A y B.
•Asociativo. Se dice que un operador binario " º " es asociativo si
(A º B) º C = A º (B º C) para todos los valores booleanos A, B, y C.
•Distributivo. Dos operadores binarios " º " y " % " son
distributivos si A º (B % C) = (A º B) % (A º C) para todos los valores
booleanos A, B, y C.
•Identidad. Un valor booleano I se dice que es un elemento de identidad con
respecto a un operador binario " º " si A º I = A.
•Inverso. Un valor booleano I es un elemento inverso con respecto a un operador
booleano " º " si A º I = B, y B es diferente de A, es decir, B es el
valor opuesto de A.
ECUACIONES BOOLEANAS DE ESTADO:
Un circuito secuencial queda completamente
determinado si en cada estado presente en que se encuentre se conoce:
1.
Los valores de las señales de salida del circuito y
2.
El estado siguiente al cual pasa el circuito cuando ocurra un pulso de reloj.
Como
el estado del circuito secuencial es el conjunto de estados de los flip-flops
individuales, para conocer el estado siguiente del circuito se debe conocer el
estado siguiente de cada uno de los flip-flops.
Una ecuación de estado es una expresión
algebraica que proporciona el estado siguiente de un flip-flop particular en
función del estado presente en un circuito secuencial y de los valores que
tengan las señales de entrada al mismo.
El
lado izquierdo de la ecuación denota el estado siguiente y el lado derecho es
una función de Boole que evaluada produce el valor del estado siguiente del
flip-flop.
Por ejemplo, la ecuación de estado A(t+1) =
x´A´B + xA´B´ es la ecuación de estado del flip-flop A de un circuito
secuencial con dos flip-flops A y B y una sola señal de entrada: x.
La
ecuación anterior nos dice que el estado siguiente del flip-flop A, A(t+1), es
1 si:
1. el estado presente en el circuito es el
estado 01 y x=0, ó
2.
el estado presente en el circuito es el estado 00 y x=1. En cualquier otra
condición, el estado siguiente del flip-flop A será el estado 0.
De
la discusión anterior se desprende que para conocer el estado siguiente de un
circuito secuencial harán falta r ecuaciones de estado, donde r es el número de
flipflops de dicho circuito.
EJERCICIOS DE CIRCUITOS COMBINACIONALES
Ejercicios de circuitos combinacionales:
1- Diseñar un circuito combinacional cuya entrada sea un número menor o igual que 15 y cuya salida sea la parte entera de su raíz cuadrada debidamente codificada. Dicho circuito debe tener también una línea de salida que indique si el número introducido era o no cuadrado perfecto.
Solución:
1- Diseñar un circuito combinacional cuya entrada sea un número menor o igual que 15 y cuya salida sea la parte entera de su raíz cuadrada debidamente codificada. Dicho circuito debe tener también una línea de salida que indique si el número introducido era o no cuadrado perfecto.
Solución:
N1 =A + B
2- Diseñe un circuito combinacional que realice la suma aritmética de dos
números binarios, uno de un bit (A) y otro de dos bits (B1 B0), y cuyo resultado
también esté dado en binario (S1 S0).
Solución:
Las funciones canónicas serían:
Los mapas de Karnaugh serán:
Se pueden hacer tres bolsas de dos celdas con lo que la expresión quedará:
La expresión no se puede simplificar por Karnaugh, pero utilizando métodos
algebraicos se obtiene:
Al implementar el circuito combinacional quedará:
3- Del circuito siguiente obtener:
1) La ecuación de la salida en suma de productos
2) La tabla de verdad del circuito
3) Hacer el mapa de Karnaugh
4) Obtener a partir del mapa de Karnaugh la ecuación simplificada en suma de productos
(SOP) y productos de sumas (POS)
5) Dibujar el esquema en puertas de las ecuaciones en suma de productos y producto de
sumas simplificadas:
Solución:
1) Ecuación de la salida en suma de productos:
2) Tabla de verdad:
Una de las maneras de elaborar la tabla de
verdad es ir evaluando los valores a las salidas
de cada una de las puertas:
3) Mapa de Karnaugh:
4) Ecuaciones en SOP y POS:
5) Esquema de la ecuaciones en SOP y POS simplificadas:
CIRCUITOS COMBINACIONALES
CIRCUITOS DIGITAL O LÓGICO
En el presente contenido
hablaremos primero de lo que es un circuito digital o lógico, para que
puedan comprender que son Circuitos Combinacionales y Secuenciales.
Al hablar de circuito digital estamos en presencia de operaciones
binarias ya que es aquel que maneja la información
en forma binaria, es decir, con valores de "1"
y "0".
Estos dos niveles lógicos de voltaje fijos representan:
·
"1" nivel alto o "high".
·
"0" nivel bajo o "low".
Se llaman de esta forma todos los circuitos cuyos
componentes realizan operaciones binarias (que indican los operadores lógicos),
que están compuestos por elementos digitales como la compuerta AND (Y), compuerta OR (O), compuerta NOT (NO)
y otras combinaciones muy complejas de los circuitos antes mencionados.
Ahora si entrando en el tema que
nos interesa podemos decir que los Circuito combinacionales están formados por
funciones lógicas elementales ( AND, OR, NAND, NOR, etc. ), que tiene un
determinado número de entradas y salidas. Es un circuito cuya salida depende
solamente de la "combinación" de sus entradas en el momento que se
está realizando la medida en la salida.
Los circuitos de lógica
combinacional son hechos a partir de las compuertas básicas compuerta AND,
compuerta OR, compuerta NOT. También pueden ser construidos con compuertas
NAND, compuertas NOR, compuerta XOR, que son una combinación de las tres
compuertas básicas.
Los circuitos lógicos digitales
pueden ser de dos tipos:
1) combinacionales
y
2) secuenciales:
LOS CIRCUITOS COMBINACIONALES:
Son aquellos circuitos digitales con
varias entradas y varias salidas, en los cuales la relación entre cada salida y
las entradas puede ser expresada mediante una función lógica (expresiones
algebraicas, tablas de verdad, circuito con puertas lógicas, etc.), se
denominan circuitos combinacionales, es decir la Salida depende sólo de la
entrada, por ejemplo: sumador de dos operando. Estos circuitos se denominan
combinacionales porque para analizar su comportamiento deben ser tomadas en
cuenta todas las combinaciones posibles entre los valores que pueden adoptar
las entradas. Por ejemplo:
en un circuito AND de 2 entradas la
tabla de estados debe poseer 4 filas para representar las 4 combinaciones
posibles de los dos valores (0,1) que cada una de esas dos entradas podra
adoptar: 0 con 0, 0 con 1, 1 con 0, 1 con 1:
TIPOS CIRCUITOS COMBINACIONALES
Hay varios tipos de circuitos
combinacionales, atendiendo a su densidad de integración; esto es, a su número
de transistores o de puertas lógicas:
-Circuitos SSI: Son circuitos de baja
escala de integración, y contienen hasta 10 puertas lógicas o 100 transistores.
- Circuitos MSI: Son los de media escala de
integración, y contienen entre 10 y 100 puertas lógicas, o de 100 a 1.000
transistores.
Los
circuitos MSI se clasifican de la siguiente forma según la función que desempeñan
en los sistemas digitales:
1) DE
COMUNICACIÓN: Transmiten y modifican información.
a) Codificadores:
Con prioridad o sin prioridad.
b) Decodificadores:
Excitadores y no excitadores.
c) Multiplexores y demultiplexores.
2) ARITMÉTICOS:
Operan con los datos binarios que procesan.
a) Sumadores
y semisumadores.
b) Comparadores.
c) Restadores
- Circuitos LSI: Son circuitos de alta
escala de integración, y tienen entre 100 y 1.000 puertas lógicas, o de 1.000 a
10.000 transistores.
- Circuitos VLSI: Son los de más alta
escala de integración, y tienen más de 1.000 puertas lógicas o más de 10.000
transistores.
CLASIFICACIÓN
Entre los circuitos combinacionales
clásicos tenemos:
1) Lógicos:
a)
Generador/Detector de paridad
b)
Multiplexor y Demultiplexor
c)
Codificador y Decodificador
d)
Conversor de código
e)
Comparador
2) Aritméticos
a)
Sumador
3) Aritméticos
y lógicos
a)
Unidad aritmético lógica
Éstos circuitos están compuestos
únicamente por puertas lógicas interconectadas entre sí.
SIMBOLOGÍA DE CIRCUITOS
COMBINACIONALES
FUNCIONES LÓGICAS Y CIRCUITOS
COMBINACIONALES:
1. Compuertas Lógicas
El número total de posibles combinaciones de entradas binarias es
determinada con la siguiente fórmula: N =2n
Invertidor (NOT): Ejecuta la función lógica básica llamada inversión o
complementación. Su propósito es cambiar de un nivel
lógico a su nivel opuesto. En término de bits, cambia de 1 a 0 y de 0 a
1.
AND: Ejecuta la multiplicación
lógica, comúnmente llamada la función AND. La salida sólo es HIGH (1) cuando todas
las entradas son HIGH (1), de lo contrario la salida es LOW (0).
OR: Ejecuta la suma lógica, comúnmente llamada la función OR. La salida
es HIGH (1) si al menos una entrada es HIGH (1), de lo contrario es la salida
es LOW (0).
NAND: Es un elemento lógico muy popular porque se puede utilizar como
una función universal. La salida sólo es LOW (0) cuando todas las entradas son
HIGH (1), de lo contrario la salida es HIGH (1).
NOR: Al igual que el NAND, es de gran utilidad por su propiedad
universal. La salida es LOW (0) si al menos hay una entrada HIGH (1).
XOR: Tiene sólo dos entradas. La salida es HIGH (1) sólo cuando las
entradas tienen niveles opuestos, de lo contrario (entrada del mismo nivel) la
salida es LOW (0).
XNOR: Tiene sólo dos entradas. La salida es LOW (0) sólo cuando las
entradas tienen niveles opuestos, de lo contrario (entrada del mismo nivel) la
salida es HIGH (1).
Exor: Esta puerta lógica , la EXOR, nos da a la salida un 0 siempre que
sus entradas tengan igual valor . En el resto de los casos da 1 a la salida.
SIMBOLOGÍA
TRADICIONAL E INTERNACIONAL CORRESPONDIENTE A LAS PUERTAS LÓGICAS BÁSICAS:
2. Tablas de la Verdad:
Es un instrumento utilizado para
la simplificación de circuitos digitales a través de su ecuación
booleana. Todas las tablas de verdad funcionan de la misma manera sin importar
la cantidad de columnas que tenga y todas tienen siempre una columna
de salida (la última columna a la derecha) que representa el resultado de todas
las posibles combinaciones de las entradas.
El número total de columnas en
una tabla de verdad es la suma de las entradas que hay + 1 (la
columna de la salida). Les dare un ejemplo para que puedan comprender mejor de
que les hablo:
El número de filas de la tabla es
la cantidad de combinaciones que se pueden lograr con las entradas y
es igual a 2n, donde en el número de columnas no se toma en
cuenta la columna de salida.
Ejemplo: en la siguiente tabla de
verdad hay 3 columnas de entrada, entonces habrán: 23 = 8combinaciones (8 filas):
Un circuito con 3 interruptores de entrada (con estados
binarios “0” o “1”), tendrá 8 posibles combinaciones. Siendo el resultado (la
columna salida) determinado por el estado de los interruptores de entrada.
1.Diagramas:
- Diseño de Circuitos
- Minimización de ecuaciones:
(1) Algebra Booleana
(2) Mapas de Karnaugh
2. Funciones Lógicas:
Símbolo Lógico del Half Adder
Símbolo Lógico del Full Adder
Suscribirse a:
Entradas (Atom)