non so se qualcuno ci ha già pensato, comunque nell architecture dell entity FFRS ho descritto il comportamento del dispositivo così:
architecture BEHAV of FFRS is
begin
process(clk)
begin
if(clk'event and clk='1' and r='0' and s='0')
if(q = 0)
q <= 0;
nq <= 1;
elsif(q = 1)
q <= 1;
nq <= 0;
end if;
elsif(clk'event and clk='1' and r='0' and s='1')
if(q = 0)
q <= 1;
nq <= 0;
elsif(q = 1)
q <= 1;
nq <= 0;
end if;
elsif(clk'event and clk='1' and r='1' and s='0')
if(q = 0)
q <= 0;
nq <= 1;
elsif(q = 1)
q <= 0;
nq <= 1;
end if;
end if;
end process;
end BEHAV;
in pratica a seconda di come sono i segnali R e S, controllo lo stato della macchina e di conseguenza cambio le uscite, che ne dite?