チャウリング除去回路
チャウリングとは・・・スイッチを切り替えた際に接点で起きるバウリングのこと。1ms-10msの周期で変化する。
対策
先ほど勉強した,分周回路を使う。
33Mhzの場合,1秒のカウンタで25ビット必要。
1ms-10msなので,4ビットもあれば十分。
VHDLソース
process (clock)
begin
if clock'event and clock '1' then
counter <= counter+1;
end if
end process;
process(div_counter(div_bits-1)
begin
if div_counter(div_bits-1)'event and div_counter(div_bits-1)='1' then
switch_in_node <=sw_in;
end if
end process