• ベストアンサー

同期回路と非同期回路の境界線は?

同期回路と非同期回路の境界はどこまででしょうか? 前段のフリップフロップの出力を後段のフリップフロップのクロックに使ったり、 途中で論理ゲートを使った場合などは、回路自体の遅延がありますよね? カウンタ回路などの場合、段数が多くなると遅延が累積して、非同期カウンタと変わらなくなってしまうように思えるんですが? また、そのような場合、最初のクロックのタイミングではカウンタの値を読み出せないと思いますが、、、、。基本のクロックを遅らせて使っては同期とは言えない気もします。 回路自体はシミュレーションで動けばOKなのですが、同期と非同期の境目が気になったものですから、、。もしかしたら何か大きな勘違いをしているかもしれないので、ご指摘をお願い致します。

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

  • ベストアンサー
回答No.3

>前段のフリップフロップの出力を後段のフリップフロップのクロックに使ったり、 このような回路はよく使用されています。(個人的には好きではありませんが・・・) ですが、非同期回路と呼ばずに(完全ではない)同期回路と呼んで設計してASICをつくっているのが現場の実態だと思います。 要はその結果を保証できれば同期でも非同期でも良いのではないかという考え方があります。 では何故「同期回路で設計すべき」と言うのでしょうか? これは現在の設計規模があまりにも大きくなり効率を望むため、かなりの部分を自動化する必要があるためです。自動化するのに同期回路は都合が良いのです。非同期回路のように一つ一つのF/Fの遅延をチェックする必要がないからです。 今はただの頑固親父に成り下がった私の元『上司』がよく言っていた言葉です。 ちょっと話がそれてしまったかも。。。 すみません。

takahiro25
質問者

お礼

ありがとうございました。僕の手元の参考書では、奇数カウンタなどのときにクロックとして前々段の出力を使ったものがあったので「なんじゃこりゃぁっ!!」って感じだったのですが、確かに結果が保証できれば良いのだと僕も思います。まあ、100MHzとかじゃないかぎり1段2段のゲート遅延くらい保証できますね。頭が堅かったようです。(^^;)

その他の回答 (2)

  • ymmasayan
  • ベストアンサー率30% (2593/8599)
回答No.2

No.1の回答者:punchan_jpさんのおっしゃるとおりです。 質問者の言われるような使い方では、段数を変えたり、素子を変えたりした途端に動かなくなってしまう事が考えられます。 つまり、一連の全てのフリップフロップには同一のクロックを供給する必要があります。 それぞれのフリップフロップの反転条件(あるいはセット・リセット条件)はゲートで構成します。前段のフリップフロップの出力は次段では絶対にクロックには使いません。 もう一つ重要なことは前段のFFの出力をゲート回路を使って、後段のFFに伝える場合、クロックが入った後の状態ではなくて、クロックが入る前の状態だということです。ここが同期回路のポイントだと思います。 あと一つ、ゲートを何段かかませると遅延が問題になり、対策としてゲートの組換えが必要になることもあります。

回答No.1

そういうクロックの使い方をするのは、同期式回路ではマナー違反ということ になります。書かれているように、いずれ遅延の影響が累積し、同期がとれな くなります。 で、何が同期式回路かというと、次のクロック信号が入るまでに、処理が終わっ ていると確信して言える回路だと思います。 非同期式回路というのは、逆に、いつ処理が終わっても、その結果をちゃんと 正しく認識できるという回路のことです。 上記のような、マナー違反の回路は、どちらであるとも言えない、危い回路で すね。

takahiro25
質問者

お礼

何を基準に評価するかということですね。参考になりました!

関連するQ&A