前回のチュートリアルでは、一般にインバータと呼ばれるデジタル Not Gate を見て、NOT ゲートの出力状態はその入力信号の補数、反対、または逆であることを確認しました。
しかし、デジタル電子回路では、論理ゲートを互いに分離したり、反転の必要なくリレー、ソレノイド、ランプなどの通常より高い負荷を駆動またはスイッチングさせたりする必要がある場合があります。
入力信号を反転または補完して出力する TTL 7404 のような単一入力単一出力インバータまたは NOT ゲートとは異なり、「バッファ」は反転または決定機能 (2 つ以上の入力を持つ論理ゲートなど) を実行せず、入力と正確に一致する出力を生成します。 言い換えれば、デジタル バッファーは、その出力状態が入力状態と等しいので、何もしません。
すると、デジタル バッファーは、入力がこのデバイスを通過してもその値が変化しないので、ブールのべき乗則を適用したべき乗ゲートと見なすことができます。 つまり、デジタルバッファは「非反転」デバイスであり、したがって、次のようなブール式が得られます。 Q = A.
Then we can define the logical operation of a single input digital buffer as being:
“Q is true, only when A is true”
In other words, the output ( Q ) state of a buffer is only true (logic “1”) when its input A is true, otherwise its output is false (logic “0”).
The Single Input Digital Buffer
Symbol | Truth Table | |
The Digital Buffer
|
A | Q |
0 | 0 | |
1 | 1 | |
Boolean Expression Q = A | Read as: A gives Q |
The Digital Buffer can also be made by connecting together two NOT gates as shown below. 1 つ目は入力信号 A を「反転」させ、2 つ目は元のレベルに「再反転」させ、入力の 2 重反転を実行します。
NOT ゲートを使用した二重反転
考えているかもしれませんが、それは、次のようなことです。 デジタルバッファは、入力信号を反転させたり、変化させたり、ANDゲートやORゲートのような論理的判断や演算を行わないのであれば、代わりにワイヤーを使用すれば良いのではないでしょうか。
デジタル バッファーは、他のゲートまたは回路ステージを互いに分離して、1 つの回路のインピーダンスが他の回路のインピーダンスに影響を与えるのを防ぐために使用できます。 また、デジタル バッファは、トランジスタ スイッチのような大電流負荷を駆動するために使用することもできます。 言い換えれば、バッファは高い「ファンアウト」能力を持っているので、デジタル信号の電力増幅に使用することができる。
デジタル バッファーのファンアウト例
バッファーは、(または任意のデジタル IC)出力ドライブ能力または入力信号の大きなパワーアンプを与える論理ゲート出力電流能力をファンアウト パラメーターと呼びます。
一般に、論理ゲートの出力は、他のゲートの入力に接続されています。 各入力は、状態を変更するためにゲート出力から一定量の電流を必要とするため、ゲートの接続を追加するごとにゲートの負荷が増加します。 つまり、ファンアウトとは、1つの論理ゲートのデジタル・バッファで同時に駆動できる並列負荷の数である。
デジタル バッファーが高いファンアウト定格 (電流ソース) を持つ場合、同様に高い「ファンイン」定格 (電流シンク) を持つ必要があります。 しかし、ゲートの伝搬遅延はファンインの関数として急速に悪化するので、ファンインが 4 より大きいゲートは避けるべきです。
それから、一緒に接続できる入力と出力の数には制限があり、ゲートを互いに切り離す必要があるアプリケーションでは、トライステート バッファまたはトライステート出力ドライバーを使用することができます。
トライステート
上に示した標準的なデジタル バッファーのほかに、必要に応じて出力を出力回路から「電子的に」切り離すことができる別のタイプのデジタル バッファー回路が存在します。
トライステート バッファは、外部の「コントロール」または「イネーブル」( EN ) 信号入力によって電子的に「オン」または「オフ」にできる出力を持つ入力制御スイッチと考えることができます。 この制御信号は、ロジック「0」またはロジック「1」タイプの信号であり、トライステート バッファーは、その出力が必要な出力を生成して正常に動作できる状態か、その出力がブロックまたは切断される別の状態になります。 1 つはデータ入力で、もう 1 つは図のようにイネーブルまたは制御入力です。
Tri-state Buffer Switch Equivalent
Tri-state Buffer Switch
第三の状態に作動されると、出力を無効にするか「OFF」にして、論理「ハイ」「ロー」でないオープン回路状態を作り出します。 その代わりに、非常に高いインピーダンスの出力状態、High-Z、またはより一般的なHi-Zが得られます。
この 3 番目の状態は、ロジック レベル「0」または「1」に等しくはありませんが、バッファの出力が回路の残りの部分から電気的に切り離された高インピーダンス状態であることに注意してください。 As a result, no current is drawn from the supply.
There are four different types of Tri-state Buffer, one set whose output is enabled or disabled by an “Active-HIGH” control signal producing an inverted or non-inverted output, and another set whose buffer output is controlled by an “Active-LOW” control signal producing an inverted or non-inverted output as shown below.
Active “HIGH” Tri-state Buffer
Symbol | Truth Table | ||
Tri-state Buffer
|
Enable | IN | OUT |
0 | 0 | Hi-Z | |
0 | 1 | Hi-Z | |
1 | 0 | 0 | |
1 | 1 | 1 | |
Read as Output = Input if Enable is equal to “1” |
An Active-high Tri-state Buffer such as the 74LS241 octal buffer, is activated when a logic level “1” is applied to its “enable” control line and the data passes through from its input to its output. When the enable control line is at logic level “0”, the buffer output is disabled and a high impedance condition, Hi-Z is present on the output.
An active-high tri-state buffer can also have an inverting output as well as its high impedance state creating an active-high tri-state inverting buffer as shown.
Active “HIGH” Inverting Tri-state Buffer
Symbol | Truth Table | ||
Inverting Tri-state Buffer
|
Enable | IN | OUT |
0 | 0 | Hi-Z | |
0 | 1 | Hi-Z | |
1 | 0 | 1 | |
1 | 1 | 0 | |
Read as Output = Inverted Input if Enable equals “1” |
The output of an active-high inverting tri-state buffer, such as the 74LS240 octal buffer, is activated when a logic level “1” is applied to its “enable” control line. The data at the input is passes through to the output but is inverted producing a complement of the input. When the enable line is LOW at logic level “0”, the buffer output is disabled and at a high impedance condition, Hi-Z.
The same two tri-state buffers can also be implemented with an active-low enable input as shown.
Active “LOW” Tri-state Buffer
Symbol | Truth Table | ||
Tri-state Buffer
|
Enable | IN | OUT |
0 | 0 | 0 | |
0 | 1 | 1 | |
1 | 0 | Hi-Z | |
1 | 1 | Hi-Z | |
Read as Output = Input if Enable is NOT equal to “1” |
An Active-low Tri-state Buffer is the opposite to the above, and is activated when a logic level “0” is applied to its “enable” control line. The data passes through from its input to its output. When the enable control line is at logic level “1”, the buffer output is disabled and a high impedance condition, Hi-Z is present on the output.
Active “LOW” Inverting Tri-state Buffer
Symbol | Truth Table | ||
Inverting Tri-state Buffer
|
Enable | IN | OUT |
0 | 0 | 1 | |
0 | 1 | 0 | |
1 | 0 | Hi-Z | |
1 | 1 | Hi-Z | |
Read as Output = Inverted Input if Enable is NOT equal to “1” |
An Active-Low Inverting Tri-state Buffer は、上記とは逆に、Enable 制御線にロジックレベル “0” を印加すると、出力がイネーブルまたはディスエーブルになります。 バッファがロジック “0 “で有効になると、出力はその入力の補数となる。
トリステートバッファー制御
バッファーは、デジタル回路内で電圧または電流増幅を提供でき、入力信号を反転させるためにも使用できることを上述してきました。
トライステート バッファは、複数のロジック デバイスをデータの損傷や損失なしに同じワイヤまたはバスに接続できるため、多くの電子回路やマイクロプロセッサ回路で使用されています。 たとえば、いくつかのメモリ、周辺機器、I/O、または CPU が接続されたデータ ラインまたはデータ バスがあるとします。 これらのデバイスはそれぞれ、この単一のデータ バスに同時にデータを送受信することができ、競合と呼ばれる現象が発生します。
競合は、複数のデバイスが一緒に接続され、あるデバイスは出力を高く、あるデバイスは低く駆動したい場合に発生します。 これらのデバイスが同時にデータを送信または受信し始めると、あるデバイスがバスに電源電圧であるロジック「1」を出力しているときに、別のデバイスがロジックレベル「0」またはグランドに設定され、ショート状態が発生し、デバイスが損傷したり、データが失われる可能性があります。
デジタル情報は、これらのデータ バスまたはデータ ハイウェイを介して、一度に 1 ビットずつシリアルに送信されるか、またはマイクロプロセッサのデータ バスのような並列形式で最大 8 本 (またはそれ以上) のワイヤを一緒に使用し、複数のトライステート バッファを破損したりデータを損失せずに同じデータ ハイウェイに接続できるようにすることが可能です。
トライステート バッファのデータ バス制御
その後、データ バスおよび互いにからデバイスと回路を分離するのにトライステート バッファが使用可能です。 複数のトライステート バッファーの出力が電気的に接続されている場合、デコーダを使用して、他のデバイスが高インピーダンス状態である間に、トライステート バッファーの 1 セットのみが一度にアクティブになるようにします。 以下に、4線式データバスに接続されたトライステート バッファーの例を示します。
Tri-state Buffer Control
Tri-state Buffer Control
この基本例では、バイナリ デコーダーを使って複数のトライ ステート バッファを個別または一緒にデータセットで制御できる方法を示しています。 デコーダーは、バイナリ入力に対応する適切な出力を選択し、1 つのデータ セットだけがロジック「1」またはロジック「0」の出力状態をバスに渡せるようにします。 このとき、同じバス ラインに接続されている他のすべてのトライステート出力は、ハイインピーダンス Hi-Z 状態になり、ディセーブルされます。
次に、データ セット「A」からのデータは、アクティブ HIGH 信号がイネーブル ライン ENA を介してトライステート バッファに適用されたときのみ、共通バスに転送できます。
同様に、データ セット「B」は、ENB を介してイネーブル信号が印加されたときのみ、バスにデータを渡します。
トライステート バッファを「バック トゥ バック」で接続して、1 つの「アクティブ ハイ バッファ」を並列に接続し、1 つの「アクティブ ロー バッファ」と逆に接続して、双方向バッファ回路と呼ばれるものを作成することも可能です。
ここで、「イネーブル」制御入力は、データを同じデータ バス ワイヤから「読み取り」、同じデータ バス ワイヤへ「送信」する方向制御信号のように動作します。
トライステート バッファは非反転デバイスで、イネーブル (EN) ピンが HIGH のときのみ出力 (入力と同じ) を与え、それ以外はバッファの出力はハイインピーダンス (Hi-Z) 状態になることを見てきました。
デジタル バッファーとトライステート バッファーはどちらも、リレー、ランプ、パワー トランジスターなど、従来の論理ゲートよりはるかに高い負荷を駆動する電圧または電流増幅に使用することができます。
いくつかのトライステート デバイスを一緒に接続すると、データ バスが作成され、一度に 1 つだけ選択される限り、問題がないことを見てきませんでした。 Tri-state buses allow several digital devices to input and output data on the same data bus by using I/O signals and address decoding.
Tri-state Buffers are available in integrated form as quad, hex or octal buffer/drivers in both uni-directional and bi-directional forms, with the more common being the TTL 74240, the TTL 74244 and the TTL 74245 as shown.
Commonly available Digital Buffer and Tri-state Buffer IC’s include:
TTL Logic Digital Buffers
- 74LS07 Hex Non-inverting Buffer
- 74LS17 Hex Buffer/Driver
- 74LS244 Octal Buffer/Line Driver
- 74LS245 Octal Bi-directional Buffer
CMOS Logic Digital Buffers
- CD4050 Hex Non-inverting Buffer
- CD4503 Hex Tri-state Buffer
- HEF40244 Tri-state Octal Buffer