2

立ち上がりエッジでビットをセットし、クロック信号の立ち下がりエッジでそのビットをリセットする方法は? どうすれば同じことを達成できるか知りたいです。条件によっては、立ち上がりエッジで設定し、立ち下がりエッジでリセットしたい。出力でクロックパルス自体を取得するようなものです。

2 つの異なるクロック パルスを実装しましたが、このような不具合が発生しています。

ここに画像の説明を入力

同じための私のコードはこれです

process(clk)
begin 
   if rising_edge(clk) then
      d0 <= new_data;
   end if;
end process;

process(clk)
begin 
   if falling_edge(clk) then
      d1 <= new_data;
   end if;
end process;

out <= d0 when clk = '1' else d1;

ここに画像の説明を入力

4

3 に答える 3

0

波形を確認したら、次の手順を実行して、グリッチのないパルス列を取得できます。

process(clk)
begin
    if falling_edge(clk) then
       if pass_next_clock = '1' then
          mask <= '1';
       else
          mask <= '0';
       end if;
    end if;
end process;

pulse <= clk and mask;

これには pass_next_clock と呼ばれる信号が必要です。この信号は、いずれかのクロック エッジに合わせて、次のクロック ハイ パルスを出力する必要があることを示します。

于 2013-09-06T22:40:04.753 に答える