1

他の信号の処理から来る信号を clk 入力として使用するフリップフロップがあります。つまり、システムのクロックも入力も使用していないということです。したがって、私がするとき:

architecture sampler_a of sampler_e is
  signal S0_s   : std_logic := '0';  
begin
  -- In my block this is not only a not. I put this to simplify things.
  S0_s <= not(S0_i);                   
  S0_o <= S0_s;

  process(S0_i)
  begin
    --Also with rising edge does not work
    if (S0_s'event and S0_s= '1') then
        BitReady_o <= '1';
    end if;   
  end process;
end sampler_a;

BitReady はシミュレーション (modelsim) では変化しません。ここで std_logic の使用は間違っていますか? 私の回路は非同期で動作するため、クロック周期幅のパルスを生成したくないことに注意してください。

4

1 に答える 1

2

プロセスは にのみ影響をS0_i受けますが、イベントのテストのみが行われますS0_s(イベントと同じデルタ サイクルにあることはありませんS0_i)。したがって、プロセスは何もできません。

感度リストをに変更しS0_s、機能する必要がある場合。しかし、現在書かれているように、一度 にBitReady_oなると'1'二度と に戻す方法はありません'0'

于 2013-03-06T13:05:20.067 に答える