前回は、バッファ回路、スリーステート・バッファ回路、シュミット・トリガ回路についてご説明しました。これらのデジタル回路に共通しているのは、純粋な論理回路では不要な回路であり、半導体トランジスタ回路(トランジスタ回路)には必要とされる回路だということです。そこで今回は、論理回路と実際のデジタル回路(トランジスタ回路)の違いを解説します。
純粋な論理回路は、論理演算だけで結果を求めます。そこにあるのは「真」あるいは「偽」と呼ばれる論理値であり、抽象的な概念です。概念ですから、実現手段は問いません。水や油などの液体を使った回路でも良いですし、空気や窒素などの気体を使った回路でも良いのです。ただし実際には、半導体トランジスタが最も高速かつ低コストで論理回路を実現できますので、世の中に広く普及しています。
抽象的な概念であることを言い換えると、実現手段による制約から逃れているということです。現実の回路ではなく、理想的な回路「理想回路」と捉えると分かりやすいでしょう。
理想回路では、例えば以下のような現実にはありえない状況を仮定しています。
(1)論理値の変化(遷移)に要する時間はゼロ
(2)論理値の伝送に要する時間はゼロ
(3)論理値以外の中間的な値は存在しない
(1)の「論理値の変化(遷移)に要する時間はゼロ」とは、現実のデジタルICではスイッチング時間、すなわちトランジスタがオン状態からオフ状態(あるいはその逆)へと移行する時間がゼロ、という意味です。もちろん、現実にはそのようなトランジスタを実現することは不可能です。
(2)の「論理値の伝送に要する時間はゼロ」とは、現実の回路では配線やケーブルなどを信号が伝搬する時間(遅延時間)がゼロ、という意味です。もちろんこれも、現実にはありえません。
(3)の「論理値以外の中間的な値は存在しない」とは、2値論理であれば「真」(あるいは「高」、「1」)と、「偽」(あるいは「低」、「0」)しか存在しない、という意味です。これは、現実の回路でも成立するように見えるかもしれません。しかし実際のデジタル回路設計ではしばしば、中間的な値を取り扱う必要があります。これについては後半でご説明します。
論理回路をトランジスタ回路で実現する場合、まず問題となるのが「遅延時間」です。論理回路では前述の仮定により、入力と出力のタイミングに差がありません。入力と出力は同時に現れるのです。しかし現実の回路では、入力と出力の間に時間差が存在します。出力は必ず、入力よりも遅れて現れます。この時間差が遅延時間です。
NANDやNORなどの論理ゲートに信号を入力し、信号が出力されるまでの時間差を「伝搬遅延時間」あるいは「入出力伝搬遅延時間」などと呼びます。伝搬遅延時間は、スイッチング時間と配線遅延時間に分けられます。
それから論理ゲートの出力から次段の論理ゲートの入力まで、配線を信号が伝わる時間も配線遅延時間となります。論理回路の動作周波数が低い場合には、配線遅延時間はゼロとみなせますが、動作周波数が高くなると、配線遅延時間をゼロではなく、有限の値として設計で考慮する必要が出てきます。
次に問題となるのが、配線抵抗による電圧の低下です。トランジスタ回路では電源電圧と接地電圧によって論理値の「高」あるいは「低」を決めています。普通は、信号電圧が電源電圧付近なのが「高」、信号電圧が接地電圧付近なのが「低」です。
信号を伝える配線は、理想回路では「抵抗ゼロ」なので論理値「高」の信号を伝送しても電圧に変化はありません。しかし実際の配線には抵抗が存在するので、配線が長くなるにつれて論理値「高」の信号電圧は低下していきます。電圧の低下量は、配線を流れる電流と配線抵抗の積です。つまり、電流が高く、抵抗が高いと、電圧が大きく低下します。電圧値が一定の値よりも低くなると、論理ゲートの入力側では論理値を「高」ではなく、「低」であると見なすようになってしまいます(誤入力)。これを避けるためには、配線を太く、短くすることが望ましいのですが、シリコン中の配線をあまり太くするとシリコンダイ面積の増加、すなわち製造コストの増加を招きます。
デジタルICでは、トランジスタをスイッチとして扱います。しかし現実には、トランジスタは寄生素子と呼ばれるスイッチ以外の回路素子を含んでいます。寄生素子には寄生抵抗、寄生インダクタンス、寄生容量があります。
デジタルICで一般的なトランジスタはMOS FETです。MOS FETでしばしば問題となる寄生素子は、寄生容量です。寄生容量はスイッチング時間を増やしたり、信号波形を歪ませたりします。寄生抵抗や寄生インダクタンス、寄生容量は、働きとしてはそれぞれ、抵抗、インダクタンス、コンデンサと同じです。こういった素子が存在する回路のふるまいは、例えばこちらをご参照ください。
デジタルICの中には、8本/16本/32本/64本といった数多くの出力データを備えるものがあります。CMOS回路の出力データが同時に反転すると、例えば64本ものCMOS回路に同時に電流が流れることになります。CMOS出力1本の電流が少なくても、その64倍の電流となれば、かなり大きな量となります。
ここで問題となるのが、デジタルICの電源配線と接地配線です。当然ですが、電源配線と接地配線にも抵抗があります(通常は無視できるほど小さな抵抗値です)。ここで64本の出力が一斉にスイッチングすると、1本のスイッチングの64倍もの電流がいっぺんに流れます。電源から電流を取り出すようにトランジスタがスイッチングした場合は、電源電圧の降下が64倍になります。接地に電流を流すようにトランジスタがスイッチングした場合は、接地電圧の上昇が64倍になります。このため1本のスイッチングでは無視できた電圧変動(および配線抵抗)が64本のスイッチングでは無視できないどころか、大きさによっては誤動作の原因となることすらあります。
この現象は「同時スイッチング雑音(SSN)」と呼ばれています。高速で出力本数の多い(あるいはビット幅の広い)デジタル回路の設計を困難にする、主要な要因の1つです。
Copyright © ITmedia, Inc. All Rights Reserved.
提供:日本テキサス・インスツルメンツ株式会社
アイティメディア営業企画/制作:EDN Japan 編集部/掲載内容有効期限:2013年3月31日
宮崎 仁のQ&Aでよく分かるマイコン基礎の基礎:
第24回 割り込みっていろいろあるのですか?どんな種類があるか教えてください。
今回は、外部割り込み、内部割り込み、ソフトウェア割り込みについて詳しく解説しています
●全文を読む
電源IC選択のヒント集
電源IC 使用時の注意点をわかりやすく説明しているほか、使用時に発生する可能性のあるさまざまなトラブルとその対処法についても紹介しています。ぜひご利用ください。ダウンロードには myTI アカウントが必要です。
●Part 1をダウンロード
●Part 2をダウンロード
アナログ回路設計式一覧ポケット・ガイド
日本語版 PDF
英語版で高い評価を受けてきたポケット・ガイドの日本語版が完成しました。基板レベルやシステム・レベルの回路設計でよく使われるアナログ設計式を紹介しています。ダウンロードには myTI アカウントが必要です。
●ダウンロード