45
4.4 Multivibrabadores CIRCUITO MULTIVIBRADORES Un multivibrador es un circuito que tiene dos estados independientes, uno con una salida alta y otro con una salida baja. Los dos estados de un circuito multivibrador se producen retroalimentando la salida a la entrada, haciendo por tanto que la salida quede afectada por sí misma. MULTIVIBRADORES ASTABLES Presentan dos estados semiestables. No requiere de una excitación externa para el cambio de estado En electrónica, un astable es un multivibrador que no tiene ningún estado estable, lo que significa que posee dos estados "cuasi-estables" entre los que conmuta, permaneciendo en cada uno de ellos un tiempo determinado. La frecuencia de

4.4 multivibradores

Embed Size (px)

Citation preview

Page 1: 4.4 multivibradores

4.4 Multivibrabadores

CIRCUITO MULTIVIBRADORES

Un multivibrador es un circuito que tiene dos estados

independientes, uno con una salida alta y otro con una

salida baja. Los dos estados de un circuito multivibrador se

producen retroalimentando la salida a la entrada, haciendo

por tanto que la salida quede afectada por sí misma.

MULTIVIBRADORES ASTABLES

Presentan dos estados semiestables. No requiere de

una excitación externa para el cambio de estado

En electrónica, un astable es un multivibrador que no

tiene ningún estado estable, lo que significa que posee dos

estados "cuasi-estables" entre los que conmuta,

permaneciendo en cada uno de ellos un tiempo

determinado. La frecuencia de conmutación depende, en

general, de la carga y descarga de condensadores.

Entre sus múltiples aplicaciones se cuentan la

generación de ondas periódicas (generador de reloj) y de

trenes de impulsos.

En la Figura 1 se muestra el esquema de un

multivibrador astable realizado con componentes discretos.

Page 2: 4.4 multivibradores

El funcionamiento de este circuito es el siguiente:

Al aplicar la tensión de alimentación (Vcc), los

dos transistores iniciaran la conducción, ya que sus bases

reciben un potencial positivo a través de las resistencias R-

2 y R-3, pero como los transistores no serán exactamente

idénticos, por el propio proceso de fabricación y el grado de

impurezas del material semiconductor, uno conducirá antes

o más rápido que el otro.

Supongamos que es TR-1 el que conduce primero. En

estas condiciones el voltaje en su colector estará próximo a

0 voltios, por lo que el C-1 comenzará a cargarse a través

de R-2. Cuando el voltaje en C-1 alcance los 0,6 V, TR-2

comenzará a conducir, pasando la salida a nivel bajo

(tensión próxima a 0V).

C-2, que se había cargado vía R-4 y unión base-

emisor de TR-1, se descargará ahora provocando el

Page 3: 4.4 multivibradores

bloqueo de TR-1.

C-2 comienza a cargarse vía R-3 y al alcanzar la tensión de

0,6 V provocará nuevamente la conducción de TR-1, la

descarga de C-1, el bloqueo de TR-2 y el pase a nivel alto

(tensión próxima a Vcc (+) de la salida Y).

A partir de aquí la secuencia se repite indefinidamente,

dependiendo los tiempos de conducción y bloqueo de cada

transistor de las relaciones R-2/C-1 y R-3/C-2. Estos

tiempos no son necesariamente iguales, por lo que pueden

obtenerse distintos ciclos de trabajo actuando sobre los

valores de dichos componentes.

MULTIVIBRADORES MONOESTABLES:

Presentan un estado estable y uno semiestable.

Requiere de una excitación externa para el cambio de

estado.

Un multivibrador monoestable, a veces es llamado

circuito de "un disparo" produce un solo pulso de una

duración fija después de recibir un pulso de disparo en la

entrada. Como implica su nombre, el multivibrador

monoestable solamente tiene un estado estable de salida

auto sustentado.

Page 4: 4.4 multivibradores

El otro estado de salida es introducido

momentáneamente mientras se produce el pulso, y

únicamente después que la señal de entrada haya sido

recibida. La duración del pulso de salida está determinada

únicamente por las características del multivibrador y no

está afectada por la duración del pulso de entrada.

Después de producir su pulso de salida, el multivibrador

monoestable se reinicia a si mismo y se prepara para

recibir otro disparo de entrada. Un multivibrador

monoestable se forma conectando dos compuertas NOR

con un circuito RC simple.

TIMER 555

El timer 555 es un circuito integrado, el cual es usado

como un multivibrador o controlador de voltaje oscilatorio.

Este circuito consiste básicamente en dos

comparadores, resistencia divisora de voltaje, un flip flop y

descarga al transmisor, estos dos estados dividen de

quien los pueda manejar un alto voltaje o bajo voltaje. El

estado de salida puede ser controlado por sus

propiedades en señal de entrada y reloj controlador de

los elementos que contienen a este.

SISTEMAS SECUENCIALES SÍNCRONOS

Page 5: 4.4 multivibradores

∙ Sistemas Secuenciales Síncronos, en los que su

comportamiento puede definirse en instantes de discretos

de tiempo, se necesita una sincronización de los elementos

del sistema mediante una señal de reloj, que no es más

que un tren de pulsos periódico. Las variables internas no

cambian hasta que no se llega un pulso del reloj..

El cambio de las variables internas se puede producir

de dos maneras en un sistema secuencial síncrono:

Por niveles, cuando permiten que las

variables de entrada actúen sobre el sistema en el

instante en el que la señal de reloj toma un

determinado nivel lógico (0 ó 1),

Por flancos, o cambios de nivel, cuando la

acción de las variables de entrada sobre el sistema se

produce cuando ocurre un flanco activo del reloj. Este

flanco activo puede ser de subida (cambio de 0 a 1) o

de bajada (cambio de 1 a 0).

El elemento de memoria básico de los circuitos

secuenciales síncronos es el biestable. Almacena el estado

0 ó el estado 1, y de ahí su nombre, tienen dos estados

estables de funcionamiento. También se les suele conocer

como FLIP-FLOPS.

ANÁLISIS DE CIRCUITOS SECUENCIALES

SÍNCRONOS

Page 6: 4.4 multivibradores

El análisis consiste en obtener una tabla de estados (o

tabla de transición) y/o un diagrama de flujo, de las

secuencias de tiempo de las entradas, salidas y estados

internos del sistema secuencial. También es posible

escribir expresiones booleanas que describan su

comportamiento.

La tabla consta de 4 secciones principales: entrada,

estado presente, estado futuro y salida. En la sección

estado presente se indica los estados de los FF antes de la

ocurrencia del pulso de reloj bajo las condiciones de

entrada indicadas. En la sección estado siguiente se

muestra el estado de los FF después del pulso. Y la

sección de salida muestra los valores de las variables de

salida durante el estado presente.

El comportamiento de los circuitos secuenciales se

determina de las entradas, las salidas y los estados delos

Flip-Flops. Ambas salidas y el estado siguiente son una

función de las entradas y del estado presente. El análisis

de los circuitos secuenciales consiste en obtener una tabla

o un diagrama de la secuencia de tiempos de las entradas,

salidas y estados internos. Es posible escribir expresiones

booleanas que describan el comportamiento de los circuitos

secuenciales. Sin embargo, estas expresiones deben incluir

la secuencia de tiempos necesaria directa o indirectamente.

Page 7: 4.4 multivibradores

Un diagrama lógico secuencial se reconoce como un

circuito si éste incluye Flip-Flops. Los FF pueden ser de

cualquier tipo y el diagrama lógico puede o no incluir

compuertas combinacionales. Muchos circuitos lógicos

contienen Flip-Flops y compuertas lógicas que se conectan

para realizar una operación específica. Con frecuencia se

usa una señal de reloj primaria para ocasionar que los

niveles lógicos del circuito pasen a través de una

determinada secuencia de estados. En términos generales,

los circuitos secuenciales se analizan siguiendo el

procedimiento que se describe a continuación

Pasos para el análisis

1. Examinar el diagrama del circuito y buscar

estructuras como contadores o registros de corrimiento

para su simplificación.

2. Determinar los niveles lógicos que estén presentes

en las entradas de cada Flip-Flop antes de la incidencia del

primer pulso del reloj.

3. Utilizar estos niveles para determinar la forma en

que cada multivibrador cambiará en respuesta al primer

pulso de reloj.

4. Repetir los pasos 2 y 3 para cada pulso sucesivo de

reloj.

Page 8: 4.4 multivibradores

DISEÑO DE CIRCUITOS SECUENCIALES

SÍNCRONOS CON F-F

Se pueden seguir una serie sencilla de pasos:

1. Se parte de las especificaciones de funcionamiento,

que puede incluir un diagrama de flujo.

2. Se obtiene la tabla de estados.

3. Se procede a la reducción del número de estados,

es opcional.

4. Se asignan valores binarios a cada estado de la

tabla y obtenemos una tabla

de transición.

5. Se determina el número de FF necesarios y se

asigna un símbolo a cada uno.

6. Se escoge el tipo de FF que va a utilizarse

7. Mediante la tabla de transición se derivan las

entradas de los biestable (tabla de excitación) y las salidas.

Éstas suelen ser funciones combinacionales.

8. Mediante algún método (Karnaugh, McCluskey ...)

se simplifican dichas funciones o se construyen usando

dispositivos MSI o PLDs.

9. Dibujar el diagrama lógico

Page 9: 4.4 multivibradores

Modelo de Moore.- Un modelo más completo de lo

que puede ser un circuito secuencial es el denominado

Modelo de Moore consiste en dos bloques (circuitos) de

lógica combinacional mas un bloque de memoria

La lógica de estado siguiente que define la

manera de generar las variables de estado a partir de

las entradas

La Lógica de salida que define la manera en

que se obtienen las salidas del circuito a partir de las

variables de estado

Este modelo tiene la particularidad de que las salidas

sólo son función de las variables de estado, es decir, del

estado presente. Por ello, cuando en un circuito, las salidas

solo dependen de las variables de estado, se les llama

Salidas tipo Moore.

Modelo de Mealy.- En un modelo más completo, las

salidas en instantes anteriores están expresadas por un

Page 10: 4.4 multivibradores

conjunto de variables de estado, de manera que las

salidas actuales dependen tanto de las entradas como de

las variables de estado las cuales son guardadas en

dispositivos de memoria. Este es el modelo más completo

de un circuito secuencial y se denomina Modelo de Mealy.

TABLA DE ESTADO O TABLA CARACTERÍSTICA

Esta es otra manera de organizar en forma de tabla el

comportamiento del circuito secuencial, Se trata

básicamente de la misma tabla de funcionamiento ya

descrita, salvo que ahora no se introduce ninguna variable

de manera que el estado presente (Qo) se trata como si

fuera otra entrada. Para el ejemplo del

FF-SR tendremos

Estado Estado

presente Q0

Entrada

s en Tn

S

R

Estado

siguiente Q*

A 0 0

0

0

A 0 0

1

0

A 0 1

0

1

A 0 1 No

Page 11: 4.4 multivibradores

1 valida

B 1 0

0

1

B 1 0

1

0

B 1 1

0

1

B 1 1

1

No

valida

DIAGRAMA DE ESTADO CLÁSICO

La misma información especificada por la tabla de

funcionamiento puede ser representada de varias maneras

diferentes, por ejemplo, el siguiente diagrama es una

alternativa gráfica que tiene la particularidad de enfatizar el

número y nombre de los estados del circuito, por ello se le

llama diagrama de estado o de estado clásico. Así, para el

FF-SR:

Un ejemplo de una tabla de transición de estados para

una máquina M junto con el correspondiente diagrama de

estados está dado abajo.

Page 12: 4.4 multivibradores

Tabla de Transición de

Estados

  Entrada

Estado

1 0

S1

S

1

S

2

S2

S

2

S

1

Page 13: 4.4 multivibradores

Obsérvese que el diagrama de estado clásico incluye

información separada de la siguiente manera:

- Nombres simbólicos dados a los estados (opcional)

- Nombres y valores que las variables de estado

toman en cada estado.

- Nombres y valores de las variables de entrada

- Transiciones posibles de un estado a otro y

condiciones (sobre las variables de entrada) para producir

dicha transición.

- En algunas variantes de diagrama de estado se

incluye también información sobre las variables de salida

que no se muestran en el ejemplo, dado que para el FF-SR

la variable de estado Q coincide con la variable de salida.

ECUACIONES DE ESTADOS

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

Page 14: 4.4 multivibradores

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, ó

Page 15: 4.4 multivibradores

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.

ECUACIONES DE ENTRADA DE LOS FLIPFLOP

ECUACIONES DE SALIDA DEL SISTEMA

TABLA DE EXCITACIÓN

La información que guarda el diagrama de estado

clásico se puede representar en forma de tabla colocando

todas las transiciones posibles de un estado a otro como

variables independientes de la tabla y las entradas como

variables dependientes, es decir, se genera un renglón de

la tabla por cada transición y anotando los valores

necesarios de las entradas para producir dicha transición.

Así, para el ejemplo del FF-SR se obtiene

Page 16: 4.4 multivibradores

Transacciones

posibles

Q0 Q*

Entradas que

producen la transacción

S R

0 0 0 *

0 1 1 0

1 0 0 1

1 1 0

DIAGRAMAS DE TIEMPO

Los diagramas de tiempo son representaciones

gráficas de la evolución de los valores que toman las

variables de interés en un circuito digital, de la manera

como se podrían ver en la pantalla de un osciloscopio.

Los diagramas de tiempo no son una herramienta

propia de los circuitos secuenciales, ya que estos también

son útiles para circuitos combinacionales como se ilustró en

los capítulos anteriores, sin embargo, en el caso de los

circuitos secuenciales, la información de tiempo es más

Page 17: 4.4 multivibradores

crucial por esto los diagramas de tiempo cobran una mayor

importancia que en el caso combinacional.

Es importante mencionar que estos diagramas no son

únicos para un circuito dado, de hecho, pueden poseer

información incompleta o en ocasiones redundante

ASIGNACION Y REDUCCCION DE ESTADOS

Estados equivalentes.

Dos máquinas secuenciales son equivalentes si la

relación entre la entrada y la salida son idénticas para

todas las posibles secuencias de entrada.

Un diseño en particular puede ser representado por

varios diagramas de estado equivalentes. Los costos de

implementación pueden ser diferentes; en general los

diagramas que tengan más estados requieren más

elementos de memoria y por lo tanto también necesitan

más redes combinacionales para determinar el próximo

estado.

Dos estados son equivalentes si no puede distinguirse

entre ellos. Esto implica que si se aplica cualquier

secuencia de entrada, a partir de esos estados, se

observan iguales secuencias de salida.

Page 18: 4.4 multivibradores

Puede determinarse, por inspección, que dos estados

son equivalentes si tienen iguales renglones en la matriz de

transiciones. Es decir, para iguales entradas van a iguales

estados próximos o futuros, con salidas iguales.

Uno de estos estados puede removerse sin alterar la

conducta de la máquina. Esto se logra modificando la tabla

de modo que no se invoque el estado eliminado sino a su

equivalente.

La reducción de estados puede disminuir el número de

flip-flops necesarios y a la vez puede introducir más estado

superfluos, lo cual simplifica el diseño combinacional para

determinar el próximo estado. Una lógica más simple

implica, en general, menor complejidad de conexiones y

menores tiempos de propagación.

Estrategias de asignación.

Si la codificación conduce a un mínimo número de flip-

flops las funciones combinacionales de próximo estado

resultan complejas. Esta asignación resulta adecuada

cuando la implementación se realiza mediante CPLD.

La codificación one-hot emplea un flip-flop por estado,

de este modo el diseño de las funciones combinacionales

de próximo estado resultan más sencillas. Esta forma de

codificación presenta ventajas cuando se implementa en

Page 19: 4.4 multivibradores

FPGA, dispositivos que tienen bastantes flip-flops y

generadores de funciones de ancho limitado. Por ejemplo

para tres estados, los códigos binarios serían: 001, 010,

100.

En la codificación de contadores, pueden asociarse

los estados a las salidas del dispositivo, haciendo

innecesarias las redes combinacionales de salida.

Debido a que no existen algoritmos polinomiales para

enfrentar este problema se han desarrollado algunas

heurísticas.

Reglas para la asignación de Estados.

La forma tradicional de enfrentar el problema de la

codificación binaria de estados es la aplicación de reglas

para efectuar la asignación. Estas reglas o heurísticas son

las siguientes:

Regla de Alta prioridad:

Estados que tienen iguales estados próximos, para

una entrada dada, se los debe asignar como lógicamente

adyacentes.

Fundamentación de la regla: Las funciones de Estado

Próximo pueden simplificarse al disminuir la distancia entre

Page 20: 4.4 multivibradores

Si y Sj. De este modo aumentan las adyacencias de los min

términos de los unos de S.

Regla de Prioridad Media:

Estados próximos de un estado presente, bajo

entradas lógicamente adyacentes (a distancia unitaria), se

los debe asignar como lógicamente adyacentes.

Fundamentación de la regla: Las funciones de Estado

Próximo pueden simplificarse al disminuir la distancia entre

Si y Sj. De este modo aumentan las adyacencias de los

mintérminos de los unos de Si y Sj.

Regla de Baja Prioridad:

Estados con la misma salida para una entrada dada,

se los debe asignar como lógicamente adyacentes.

Fundamentación de la regla: Las funciones de Salida

pueden simplificarse al disminuir la distancia entre Si y Sj.

De este modo aumentan las adyacencias de los

mintérminos de los unos de la salida.

http://prof.usb.ve/gsanchez/Curso_Elec3/

monoestables.html

Page 21: 4.4 multivibradores

http://www.usc.edu.co/laboratorios/files/ECUACIONES

%20DE%20ESTADO.pdf

http://www.lci.ulsa.mx/Material/ewb/pdf/ape.pdf

http://www2.elo.utfsm.cl/~lsb/elo211/clases/c12.pdf

http://emp.usb.ve/mrivas/tema_5a.pdf

http://www.ufps.edu.co/materias/uelectro/htdocs/

conte/vhdl/vhdl4.htm

http://sistemas.ing.ula.ve/~wladimir/SistemasLogicos/

SistemasLogicos13.pdf

http://bloganalisis1.files.wordpress.com/2011/01/

apuntesdsd10_mealy_moore.pdf

c.fie.umich.mx/~jrincon/apuntes%20circuitos

%20secuenciales.pdf

CIRCUITOS DE MEALY Y MOORE

Modelos/Maquinas/Autómatas

• Mealy: las salidas están en función de dos, el estado

presente y la entrada.

Page 22: 4.4 multivibradores

• Moore: Las salidas están en función del estado

presente solamente.

Mealy:

Dado el estado actual Q. Si llega un valor a la entrada

el circuito de lógica / combinacional

(L/C) calcula el estado siguiente y la salida.

Cuando llega un pulso de reloj, se captura el nuevo

estado.

Defecto: Con el pulso de reloj se captura el nuevo

estado y el L/C recalcula otro estado y una nueva salida

MOORE

Los estados de los circuitos son también las salidas

del mismo.

Es muy usado para generar secuencias de conteo ya

que requiere menos circuitos combinacionales.

En la máquina de Moore, la salida se toma

directamente del registro, por lo que no necesita logica

combinacional para sintetizar la salida.

Autómata Mealy/Moore

Page 23: 4.4 multivibradores

• El autómata hibrido Mealy/Moore modela un ente

que va de un estado actual Q a un estado siguiente Q+1.

• Se genera una salida Mealy debido a la transición

entre estados.

• Se genera una salida Moore debido al estado actual

del ente.

La señal de entrada se opera entre transciones de

reloj generándose:

– Tendencia a un nuevo estado

– La salida Mealy.

• Llega salida Mealy:

– Se captura nuevo estado

– Se calcula salida Moore

• Si la entrada oscila la señal oscila.

SISTEMAS SECUENCIALES ASÍNCRONOS,

Actúan de forma continua en el tiempo, un cambio de

las entradas provoca los cambios en las variables internas

sin esperar a la intervención de un reloj. Son sistemas más

difíciles de diseñar.

DISEÑO SECUENCIAL ASÍNCRONO (DSA)

Page 24: 4.4 multivibradores

Para diseñar un circuito secuencial asíncrono existe

una característica fundamental: Las entradas jamás pueden

ser simultáneas. Su estructura general se expresa a través

de este diagrama de bloques:

 

 

 

 

 

En este caso, se puede definir las señales presentes

como:

LCS: Lógica Combinacional de Salida

LCE: Lógica Combinacional de Excitación (Produce los

estados internos)

ES: Estado Siguiente

EP: Estado Presente

La construcción de un dispositivo de memoria se

puede realizar a través de RETROALIMENTACIÓN

DIRECTA o con LATCH (CERROJO). Con el primero se

tiene dos estados que corresponden a:

Page 25: 4.4 multivibradores

Zm = F(Xn, Yk)     ESTADO DE SALIDA  y,

Yk = G(Xn, Yk)    ESTADO  DE EXCITACIÓN

Un estado es la representación estable de un circuito

secuencial. La representación de un estado es la siguiente:

Aquí quedan definidas las partes que se incluyen en

un diagrama de estados. X1 y X2 son las entradas al

sistema, dependiendo de los valores que puedan tomar, se

cambiará de estado o permanecerá en el mismo. Q es la

salida del sistema, se puede dar en la transición o en en el

estado, según si la máquina de estado

es MEALY o MOORE respectivamente.

Para hacer un diseño de estas características se debe

tener en cuenta los siguientes pasos:

1. Condiciones del diseño

Page 26: 4.4 multivibradores

Establece cómo debe operar la máquina que se va

diseñar, el comportamiento de la(s) salida(s) según varíen

la(s) entrada(s). Puede valerse de un diagrama de tiempos.

Ejemplo:

Para un Flip Flop tipo D, las señales de entrada -

salida deben operar así:

Las entradas son Q y C, y la salida es Q. Q = D

cuando C pasa de 0 a 1

2. Diagrama de estados

Especifica gráficamente, con la representación

pactada para estados, el funcionamiento del diseño.

Para el ejemplo del FF tipo D, resultan 8 estados

relacionados así:

Page 27: 4.4 multivibradores

3. Matriz de Flujo Primitiva

. Matriz de Flujo Primitiva

Consiste en ubicar en las columnas las diferentes

combinaciones de las entradas y en las filas los estados.

En una fila sólo habrá un estado estable (un estado estable

es aquel en el cual una salida entra al mismo estado. Las

columnas pueden tener más de un estado pero sus salidas

deben ser complementarias.

Page 28: 4.4 multivibradores

4.

4.1 Simplificación de Tabla Primitiva

Los estados compatibles son aquellos en los que

todas las combinaciones de entrada van a los mismos

estados con idénticas salidas o a estados compatibles.

a y b = Sí son estados compatibles a y c = Sí son

estados compatibles

b y d = Sí son estados compatibles e y f = Sí son estados

compatibles

e y g = Sí son estados compatibles f y g = Sí son estados

compatibles

f y h = Sí son estados compatibles

4.2 Diagrama de Fusión

Uniendo los estados que son compatibles en un nuevo

gráfico, se determina el diagrama de fusión. Cuando se

forma un triángulo, se toma los tres estados y se les asigna

una nueva variable.

Page 29: 4.4 multivibradores

El triángulo formado por A B D se le asigna el

nombre i

El estado C pasa a ser j

El trángulo formado por E F G se le asigna el nombre k

El estado H pasa a ser l

4.3 Matriz de Fusión

Se repite el proceso de matriz para luego hacer una

conversión.

E

P\DC

0

0

0

1

1

1

1

0

ii

, 0

i

, 0

i

, 0

j

, _

ji

, _

-

---

k

, _

j

, 0

k l k k k

Page 30: 4.4 multivibradores

, _ , 1 , 1 , 1

ll

, 0

i

, _

-

------

k

, _

5. Conversión de las Variables de Estado a Binario

La conversión se realiza para crear un nuevo

diagrama de estados.

De aquí en adelante, se puede optar por dos

opciones: hacer el análisis para obtener la circuitería lógica

de manera física o hacer el diseño en VHDL. Pues, en este

caso, se optará por VHDL.

Este diseño podría ser de la siguiente manera

library ieee;

Page 31: 4.4 multivibradores

use ieee.std_logic_1164.all;

entity fftipod is

port (

D : in bit;

C : in bit;

Q : out bit

);

end fftipod;

architecture gabriel of fftipod is

type STATE_TYPE is (g0, g1, g2, g3);

signal state : STATE_TYPE;

begin

process

begin

case state is 

when g0=>

if ((D = '0' and C = '0') or (D = '0' and C = '1') or (D = '1' and

C = '1')) then

state <= g0; 

elsif (D = '1' and C = '0') then

Page 32: 4.4 multivibradores

state <= g1; 

end if;

when g1=>

if (D = '1' and C = '0') then

state <= g1; 

elsif (D = '0' and C = '0') then

state <= g0; 

elsif (D = '1' and C = '1') then

state <= g2; 

end if;

when g2=>

if ((D = '1' and C = '0') or (D = '1' and C = '1') or (D = '0' and

C = '1')) then

state <= g2; 

elsif (D = '0' and C = '0') then

state <= g3; 

end if;

when g3=>

if (D = '0' and C = '0') then

state <= g3; 

elsif (D = '0' and C = '1') then

state <= g0; 

Page 33: 4.4 multivibradores

elsif (D = '1' and C = '0') then

state <= g2; 

end if;

end case;

end process;

Q <= '0' when state = g0 or state = g1 else '1' when state =

g2 or state = g3;

end gabriel; >

Lo que da como resultado: