1.1.3  Gated D latch
Block Diagram and Characteristic table :
Working :
In the
above figure ,we have a Gated SR Latch implemented using NAND gates.NAND implementation is used because will take less number on transistors.
The D input is given to S and D_bar ( ie.,NOT D) is given to R.Here we will not have the problem of latch going to forbidden state (ie., S=1 and R=1)
because inputs to this latch is reversed (ie., in SR latch first input is R and second
is S but here it is reversed).
Lets Assume
some value for the output Q (ie., 0 here) and proceed with it working.
  Q='0'
, Clk='0' and D='x' :-         
  S'  = 
Clk (nand) S
  R'  = 
Clk (nand) R
  Q  =  Q_bar (nand) S'
  Q_bar =  Q (nand) R'
Q='0'
, Clk='1' and D='0/1' :-
  S' = 
Clk (nand) S
  R'= 
Clk (nand) R
  Q =  Q_bar (nand) S'
  Q_bar =  Q (nand) R'
  Q= '0' assumed
=> Q_bar='1'
Table :
Outputs for all combination of inputs and assumed values of Q.
VHDL Code :
 library IEEE;  
 use IEEE.STD_LOGIC_1164.ALL;  
   
 entity D_Latch is  
   GENERIC (DELAY : time :=2 ns);  
   Port ( Din : in STD_LOGIC;  
          clock : in STD_LOGIC;  
                 Q : out STD_LOGIC;  
       Q_n : out STD_LOGIC);  
 end D_Latch;  
   
 architecture D_Latch_arch of D_Latch is  
 signal Q_tmp:STD_LOGIC;  
 begin  
  PROCESS (Din,clock)  
  BEGIN   
   if (clock = '1') then  
        Q_tmp <= Din after DELAY;  
       end if;  
  END PROCESS;  
 Q <= Q_tmp;  
 Q_n <= NOT Q_tmp;  
 end D_Latch_arch;  
 Waveform :
 





 
No comments:
Post a Comment