- ベストアンサー
グレイコードカウンタ
どんなときに使いますか?
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
グレイコードはカウントアップ、カウントダウンするときに必ず1ビットしか変化しません。 従ってカウンターをどの瞬間に読み込んでも高々1しか誤差が出ません。 つまり、読取誤差防止のために使用します。 普通のバイナリーカウンター(非同期型)だと例えば 01111111の次は 10000000で8ビット全部が反転します。 このときは読む微妙なタイミングによって00000000から10000000の範囲を取りうるので大きな誤差が出ます。
その他の回答 (3)
- electron11
- ベストアンサー率51% (92/178)
カウンターではありませんがグレイコードはアメリカでPCMの通信コードとして考えられ 日本でも同様な理由で交番二進符号として考えられました 理由は伝送途中でエラーが起こっても つまり1個反転しても真値からは大きく変化しないのです(誤りが起こる事を前提) ディジタル通信において音声であれば歪みが下がるのです ですからグレイコードで伝送すれば有利となります 世界に先がけて実用化したNTT初期のPCM24方式(市外局間用24チャンネル多重化装置)は これを使っていたかも知れません 現在も使っているかも知れませんが #2さんの言われるように超高速カウンターに使えば電源電流の変動も少なくなるでしょう ですから電源の応答も早いものでなくて良いですしEMIも少なく出来るのです 組み合わせ回路と組み合わせてもハザードは小さく出来るでしょう 私自身は使った事 ありませんが。
- takepon256
- ベストアンサー率41% (391/936)
>この回答があやしいです。 そう思うのは勝手ですが、事実です。 http://ja.wikipedia.org/wiki/%E3%82%AB%E3%82%A6%E3%83%B3%E3%82%BF_(%E9%9B%BB%E5%AD%90%E5%9B%9E%E8%B7%AF)#.E3.82.B0.E3.83.AC.E3.82.A4.E3.83.BB.E3.82.B3.E3.83.BC.E3.83.89.E3.83.BB.E3.82.AB.E3.82.A6.E3.83.B3.E3.82.BF 一度に変化するビットが少ないので、組み合わせ回路に入力したときなどにハザードが発生しません。 完全同期型の回路ではほとんど必要ありませんが、非常に高速クロックで動作させる必要がある回路やロジック数に限りがある回路ではよく使われます。 信号の変化率が少ないのでEMI的にも良いですね。
- SortaNerd
- ベストアンサー率43% (1185/2748)
>そもそもそんな設計ダメでしょう。 そんな設計しかできないときに使います。 そんな設計でない設計ができるなら普通の2進カウンターで十分です。
お礼
読む微妙なタイミングによって01111111から10000000の範囲を取りうる・・・そもそもそんな設計ダメでしょう。