Está en la página 1de 9

DESCRIPCIÓN BREVE

EN ESTA PRACTICA
REALIZAMOS LA
PROGRAMACION EN
VHDL DE LOS TIPOS DE
MULTIVIBRADORES.

PEDRO IXCARET
RODRIGUEZ ALARCON
DISPOSITIVOS DIGITALES
ING. EDGARDO DE JESÚS CARRERA
AVENDAÑO

“MULTIVIBRADORES
BIESTABLES”
FLIP-FLOPS
MULTIVIBRADOR TIPO RS:

El flip-flop tiene dos entradas R (reset) y S (set), se encuentran a la izquierda del símbolo. Este
flip-flop tiene activas las entradas en el nivel BAJO, lo cual se indica por los circulitos de las
entradas R y S. Los flip-flop tienen dos salidas complementarias, que se denominan Q y 1, la
salida Q es la salida normal y 1 = 0. El flip-flop RS es un dispositivo asíncrono. No opera en
conjunción con un reloj o dispositivo de temporización. El flip-flop RS síncrono opera en
conjunción con un reloj, en otras palabras, opera sincronizadamente. Su símbolo lógico se
muestra a continuación. Es igual a un flip-flop RS añadiéndole una entrada de reloj.

Código del FF tipo RS:


library ieee;
use ieee. std_logic_1164.all;
use ieee. std_logic_arith.all;
use ieee. std_logic_unsigned.all;

entity rs is
PORT( R,S,CLK: in std_logic;
Q, QB: out std_logic);
end rs;

Architecture comportamiento of RS is
begin
PROCESS(CLK)
variable TMP: std_logic;
begin
if(CLK='1' and CLK'EVENT) then
if(R='0' and S='0')then
TMP:=TMP;
elsif(R='1' and S='1')then
TMP:=NOT TMP;
elsif(R='0' and S='1')then
TMP:='1';
elsif(R='1' and S='0')then
TMP:='0';
end if;
end if;
QB<= NOT TMP;
Q<= TMP;
end PROCESS;
end comportamiento;
Simulación del funcionamiento del FF RS:
Multivibrador tipo D:

A diferencia de los FF tipo J-K, el FF tipo "D" (Datos, Data) sólo cuneta con una entrada para
hacer el cambio de las salidas. A cada pulso del reloj (dependiendo si el FF utiliza una TPP o una
TPN) el estado presente en la entrada "D" será transferido a la salida Q y /Q.

Código del FF tipo D:

library ieee;
use ieee. std_logic_1164.all;
use ieee. std_logic_arith.all;
use ieee. std_logic_unsigned.all;

entity D is
PORT
(
D,CLK: in std_logic;
Q: out std_logic
);
end D;

architecture comportamiento of D is
begin
process(CLK)
begin
if(CLK='1' and CLK'EVENT) then
Q <= D;
end if;
end process;
end comportamiento;
Simulación del funcionamiento del FF D:

Multivibrador tipo T:

El flip flop T es un dispositivo biestable que permita de estado de sus salidas cada vez que
recibe un pulso de reloj. Para obtener un flip flop tipo T a partir de un J K se deben conectar las
entradas J y K a un nivel alto manteniendo las entradas preset y clear activas. El estado de la
salida cada vez que la señal de reloj (CLK) realiza una transición de alto bajo.
Código del FF tipo T:

library ieee;

use ieee. std_logic_1164.all;

use ieee. std_logic_arith.all;

use ieee. std_logic_unsigned.all;

entity T is

PORT( T,CLK: in std_logic;

Q, QB: out std_logic);

end T;

Architecture comportamiento of T is

begin

PROCESS(CLK)

variable TMP: std_logic;

begin

if(CLK='1' and CLK'EVENT) then

if(T='0')then

TMP:='0';

elsif(T='1')then

TMP:= not TMP;

end if;

end if;

QB<= not TMP;

Q<= TMP;

end PROCESS;

end comportamiento;

Simulación del funcionamiento del FF T:


Multivibrador tipo JK:

El Flip-Flop JK es un dispositivo secuencial que tiene 3 entradas (J, K, CLK (señal de reloj)) y 2
salidas (Q y Q). Las entradas J, K son entradas de control.
A este Flip Flop también se le llama Flip Flop universal debido a a partir de él, se pueden
obtener todos los otros tipos de Flip Flops.

Código del FF tipo JK:

library ieee;

use ieee. std_logic_1164.all;

use ieee. std_logic_arith.all;

use ieee. std_logic_unsigned.all;


entity JK is

PORT( J,K,CLK: in std_logic;

Q, QB: out std_logic);

end JK;

Architecture comportamiento of JK is

begin

PROCESS(CLK)

variable TMP: std_logic;

begin

if(CLK='1' and CLK'EVENT) then

if(J='0' and K='0')then

TMP:=TMP;

elsif(J='1' and K='1')then

TMP:= not TMP;

elsif(J='0' and K='1')then

TMP:='0';

elsif(J='1' AND K='0') THEN

TMP:='1';

end if;

end if;

QB<= not TMP;

Q<= TMP;

end PROCESS;

end comportamiento;

Simulación del funcionamiento del FF JK:

También podría gustarte