Skip to main content

Master Slave JK Flip Flop




library ieee;
use ieee.std_logic_1164.all;

entity master_slave_jk is
port(j,k,clk:in std_logic;q1,q1x,z1x:inout std_logic;
q2,q2x,z2x: inout std_logic);
end master_slave_jk;

architecture arc of master_slave_jk is
begin
process(clk)
begin

if clk='1' then

z1x<=(j and (not q2)) or ((not k)and q2);
q1<=z1x after 5 ns;
q1x<=not z1x after 5ns;

else

z2x<=(q1 and (not q2)) or ((not q1x)and q2);
q2<=z2x after 5 ns;
q2x<=not z2x after 5ns;

end if;
end process;
end arc;

Comments

  1. sir it will become much easier to understand the code if you could show the intermediate signals such as z1x,q1x etc in the circuit diagram.

    ReplyDelete
  2. give details as to what is z1, z2, q1, q2

    ReplyDelete

Post a Comment

Popular posts from this blog

VHDL code for Basic Gates

AND Gate library ieee; use ieee.std_logic_1164.all; entity and_gate is port (a,b : in std_logic ; c : out std_logic); end and_gate; architecture arc of and_gate is begin c OR Gate library ieee; use ieee.std_logic_1164.all; entity or_gate is port (a,b : in std_logic ; c : out std_logic); end or_gate; architecture arc of or_gate is begin c NOT Gate library ieee; use ieee.std_logic_1164.all; entity not_gate is port (a: in std_logic ; b : out std_logic); end not_gate; architecture arc of not_gate is begin b NAND Gate library ieee; use ieee.std_logic_1164.all; entity nand_gate is port (a,b : in std_logic ; c : out std_logic); end nand_gate; architecture arc of nand_gate is begin c NOR Gate library ieee; use ieee.std_logic_1164.all; entity nor_gate is port (a,b : in std_logic ; c : out std_logic); end nor_gate; architecture arc of nor_gate is begin c XOR Gate library ieee; use ieee.std_logic_1164.all; entity xor_gate is port (a,b : in std_logic ; c : out std_logic); end xor_gate; architectur...

VHDL code for JK Flip Flop

library ieee; use ieee.std_logic_1164.all; entity bejoy_jkff is port(j,k,clk:in std_logic;q,q1,z:inout std_logic); end bejoy_jkff; architecture arc of bejoy_jkff is begin process(clk) begin if clk='1' then z q q1 end if; end process; end arc;