entity DFF_SYNCH_RS is
  port (D, C, R, S : in BIT;
             Q, QB : out BIT);
end DFF_SYNCH_RS;

architecture DFF_SYNCH_RS of DFF_SYNCH_RS is
begin
   process (C)
   begin
      if (C = '1' and C'EVENT) then
         if (S = '1') then
            Q <= '1';
            QB <= '0';
         elsif (R = '1') then
            Q <= '0';
            QB <= '1';
         else 
            Q <= D;
            QB <= not D;
         end if;
      end if;
   end process;
end DFF_SYNCH_RS;
