Vous êtes sur la page 1sur 7

08/11/2020 VHDL Code for Flipflop - D,JK,SR,T

Distributeurs | Mon compte | Se connecter support@allaboutfpga.com | + 91-9789377039

 Menu 

Code VHDL pour Flip op - D, JK, SR, T


26 juillet 2014 par shahul akthar

Toutes les bascules peuvent être divisées en quatre types de base: SR, JK, D et T. Elles

di èrent par le nombre d'entrées et par la réponse invoquée par la valeur di érente des

signaux d'entrée.

SR FlipFlop
Table des matières 
Un circuit à bascule peut être construit à partir de deux SR FlipFlop

portes NAND ou de deux portes NOR. Ces bascules sont Code VHDL pour SR FlipFlop

illustrées à la gure. Chaque bascule a deux sorties, Q et Q D FlipFlop


', et deux entrées, positionnées et réinitialisées. Ce type de Code VHDL pour D FlipFlop
 JK FlipFlop
bascule est appelé bascule SR.

Code VHDL pour JK FlipFlop

https://allaboutfpga.com/vhdl-code-flipflop-d-t-jk-sr/ 1/13
08/11/2020 VHDL Code for Flipflop - D,JK,SR,T

T FlipFlop

Code VHDL pour T FlipFlop

Table de vérité SR Flip op

Code VHDL pour SR FlipFlop


library ieee;
use ieee. std_logic_1164.all;
use ieee. std_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;

https://allaboutfpga.com/vhdl-code-flipflop-d-t-jk-sr/ 2/13
08/11/2020 VHDL Code for Flipflop - D,JK,SR,T

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;

D FlipFlop

La bascule D représentée sur la gure est une modi cation de la bascule SR cadencée.

L'entrée D va directement dans l'entrée S et le complément de l'entrée D va vers l'entrée R.

L'entrée D est échantillonnée lors de l'apparition d'une impulsion d'horloge. S'il est égal à 1,

la bascule est commutée à l'état dé ni (sauf si elle a déjà été activée). S'il vaut 0, la bascule

passe à l'état clair.

D Table de vérité Flip op


https://allaboutfpga.com/vhdl-code-flipflop-d-t-jk-sr/ 3/13
08/11/2020 VHDL Code for Flipflop - D,JK,SR,T

Code VHDL pour D FlipFlop


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

entity D_FF is
PORT( D,CLOCK: in std_logic;
Q: 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;
end if;
end process;
end behavioral;

JK FlipFlop

Une bascule JK est un ra nement de la bascule SR en ce que l'état indéterminé du type SR

est dé ni dans le type JK. Les entrées J et K se comportent comme les entrées S et R pour

régler et e acer la bascule (notez que dans une bascule JK, la lettre J est pour set et la

lettre K pour clear).


https://allaboutfpga.com/vhdl-code-flipflop-d-t-jk-sr/ 4/13
08/11/2020 VHDL Code for Flipflop - D,JK,SR,T

Table de vérité JK Flip op

Code VHDL pour JK FlipFlop


library ieee;
use ieee. std_logic_1164.all;
use ieee. std_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)
https://allaboutfpga.com/vhdl-code-flipflop-d-t-jk-sr/ 5/13
08/11/2020 VHDL Code for Flipflop - D,JK,SR,T

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;
Q <=not TMP;
end PROCESS;
end behavioral;

T FlipFlop

La bascule T est une version à entrée unique de la bascule JK. Comme le montre la gure, la

bascule T est obtenue à partir du type JK si les deux entrées sont liées ensemble. La sortie

de la bascule T «bascule» à chaque impulsion d'horloge.

Table de vérité T Flip op


https://allaboutfpga.com/vhdl-code-flipflop-d-t-jk-sr/ 6/13
08/11/2020 VHDL Code for Flipflop - D,JK,SR,T

Code VHDL pour T FlipFlop


library IEEE;
use IEEE.STD_LOGIC_1164.ALL;

entity T_FF is
port( T: in std_logic;
Clock: in std_logic;
Q: 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;
end Behavioral;

Partagez ceci:

    

en relation

Code VHDL pour compteur

binaire 4 bits

13 février 2014

Dans "VHDL"


 Code VHDL pour compteur en Code VHDL pour additionneur /

anneau 4 bits et compteur soustracteur 4 bits

https://allaboutfpga.com/vhdl-code-flipflop-d-t-jk-sr/ 7/13