• ベストアンサー

非同期回路によるハザードの消し方

非同期式回路にてハザードが出てしまうのは知っていますが、ハザードが出てしまった場合、ハザードをなんとかして消す方法は無いものでしょうか。 ハザードが出る前に予防するのではなく、ハザードが既にでてしまった状態での対処方法が知りたいです。 お願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • Qwerty-36
  • ベストアンサー率25% (58/226)
回答No.2

さて、74HC00(2入力NAND 4個入り)で遊びましょうか。 ハザード(0→1→0)の出た信号をAとします。 これを2つの入力をショートしたNAND回路2段で遅延させ、これを信号Bとします。 この信号Aと信号BをNAND回路のそれぞれの入力に入れます。 このNAND回路の出力を、最後に残ったNAND回路で反転します。 信号Bを作るNAND回路2段をシュミットインバータ2段に変更し、その間に可変抵抗を入れ、可変抵抗と2段目のシュミットインバータの間とGNDの間にコンデンサを入れます。 信号が1→0→1の場合は、NANDをNORに変更しましょう。 ハザードが出ることが判っているんであれば、この回路も理解できるでしょう。 ただし、現在の設計では絶対に使ってはいけない技術です。

tadasisan
質問者

お礼

ご指摘有難う御座います。 とても勉強になりました。現在は使ってはいけない技術かもしれないですが、試してみたいと思います。

その他の回答 (1)

  • xcrOSgS2wY
  • ベストアンサー率50% (1006/1985)
回答No.1

基本は2つです。 1. CR等でダンプして潰す。 2. 適当な間隔でサンプリングして消す。 前者は、ダンプした受け側をシュミットトリガにしておかないと、新たなノイズパルスの発生源になってしまいます。 後者は、絶対ハザードが出ない(収まっている)ことが設計上分かっているタイミングでサンプリングしないと意味がありません。そうでないと、スパイク的なハザードはきえますが、クロック間隔分の「幅広いパルス」に化けてしまいます。

tadasisan
質問者

お礼

ご指摘ありがとうございます 早速試してみたいと思います。

関連するQ&A