lunes, 2 de noviembre de 2020

flip flop

 retos de flip flop


flip flop tipo sr

Un circuito flip-flop se puede construir a partir de dos puertas NAND o dos puertas NOR. Estas chanclas se muestran en la figura. Cada flip-flop tiene dos salidas, Q y Q', y dos entradas, set y reset. Este tipo de flip-flop se conoce como una chancla SR.

library ieee;
use ieeestd_logic_1164.all;
use ieeestd_logic_arith.all;
use ieee. std_logic_unsigned.all;
 
entity SR_FF is
PORT( S,R,CLOCK: in std_logic;
Q, QBAR: out std_logic);
end SR_FF;
 
Architecture behavioral of SR_FF is
begin
PROCESS(CLOCK)
variable tmp: std_logic;
begin
if(CLOCK='1' and CLOCK'EVENT) then
if(S='0' and R='0')then
tmp:=tmp;
elsif(S='1' and R='1')then
tmp:='Z';
elsif(S='0' and R='1')then
tmp:='0';
else
tmp:='1';
end if;
end if;
Q <= tmp;
QBAR <= not tmp;
end PROCESS;
end behavioral;

se hace el diseño  del codigo para el sr flip flop  en el cual debemos declarar las entradas y salidas y la estructura del  código
 
 utilizando la tabla de verdad  para realizar las combinaciones 






D FlipFlop

La chancla D que se muestra en la figura es una modificación de la chancla SR cronometrada. La entrada D va directamente a la entrada S y el complemento de la entrada D va a la entrada R. La entrada D se muestrea durante la aparición de un pulso de reloj. Si es 1, la chancla se cambia al estado establecido (a menos que ya esté establecida). Si es 0, el flip-flop cambia al estado claro.

Código VHDL para D FlipFlop

library ieee;
use ieeestd_logic_1164.all;
use ieeestd_logic_arith.all;
use ieee. std_logic_unsigned.all;
 
entity D_FF is
PORT( D,CLOCK: in std_logic;
Q,QN: out std_logic);
end D_FF;
 
architecture behavioral of D_FF is
begin
process(CLOCK)
begin
if(CLOCK='1' and CLOCK'EVENT) then
Q <= D;
Q<= NOT D;
end if;
end process;
end behavioral;
se realiza el código donde  se debe estructurar el código y su funcionalidad 
se realiza la emulación



JK FlipFlop

Una chancla JK es un refinamiento de la chancla SR en el que el estado indeterminado del tipo SR se define en el tipo JK. Las entradas J y K se comportan como entradas S y R para establecer y borrar el flip-flop (tenga en cuenta que en una chancla JK, la letra J es para el conjunto y la letra K es para borrar).

Código VHDL para JK FlipFlop

library ieee;
use ieeestd_logic_1164.all;
use ieeestd_logic_arith.all;
use ieee. std_logic_unsigned.all;
 
entity JK_FF is
PORT( J,K,CLOCK: in std_logic;
Q, QB: out std_logic);
end JK_FF;
 
Architecture behavioral of JK_FF is
begin
PROCESS(CLOCK)
variable TMP: std_logic;
begin
if(CLOCK='1' and CLOCK'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';
else
TMP:='1';
end if;
end if;
Q<=TMP;
QB<=not TMP;
end PROCESS;
end behavioral;



T FlipFlop

El flip-flop T es una versión de entrada única de la chancla JK. Como se muestra en la figura, la chancla T se obtiene del tipo JK si ambas entradas están unidas entre sí. La salida del flip-flop T "alterna" con cada pulso de reloj.

VHDL Code for T FlipFlop

library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
 
entity T_FF is
port( T: in std_logic;
Clock: in std_logic;
Q,QN    out std_logic);
end T_FF;
 
architecture Behavioral of T_FF is
signal tmp: std_logic;
begin
process (Clock)
begin
if Clock'event and Clock='1' then
 
if T='0' then
tmp <= tmp;
elsif T='1' then
tmp <= not (tmp);
end if;
end if;
end process;
Q <= tmp;
 QN <= not tmp;

   
end Behavioral;







No hay comentarios:

Publicar un comentario

Contador de décadas:

Se comenzó este diseño mediante instanciacion de componentes para ello se crearon diversos elementos individuales los cuales fueron integrad...