バイステーブルマルチバイブレータは2つの安定状態を持つため、接頭辞biが付きます。一方をセット、他方をリセットと呼びます。このデバイスの最も基本的な形がセット-リセット(S-R)ラッチです。 S-Rラッチを構築するには、2つのNORゲートを相互に出力を他方の入力にフィードバックするように配線し、古典的なクロスカップルトポロジを作ります: 出力Qと¬Qは相補的であることが期待されます。両入力SとRがハイになると、両出力が0に落ちます—これはラッチにとって無効または違法な状態です。対照的に、S=1, R=0でラッチを「セット」(Q=1, ¬Q=0)、S=0, R=1で「リセット」(Q=0, ¬Q
従来の組み合わせロジックでは、各入力組み合わせが一意で予測可能な出力を生成します。例えば、ORゲートは以下の真理値表に従います: 4つの可能な入力状態(0-0, 0-1, 1-0, 1-1)に対して、出力は常に明確です。単一ゲートであろうと多段カスケードであろうと、出力はゲートの真理値表によって完全に決定されます。 フィードバックを導入する—ゲート出力を自分の入力の1つに接続する—ことは、この決定論を破ります。フィードバックループを持つORゲートを考えます: 入力Aが論理1のとき、ORゲートは出力をハイに強制し、フィードバックがそれを
この実践例では、10進数を表す16ビット2進入力を受け取り、単一の2進-7セグメントエンコーダを用いてディスプレイを駆動する4桁7セグメントディスプレイの構築方法を示します。この設計は、組み合わせロジック、デマルチプレクシング、モジュール設計の力を示しています。 回路の全体アーキテクチャは以下の通り。数値用の16主入力、どの桁をアクティブにするか選択する2制御入力、4つの7セグメントディスプレイを駆動する28出力線を備えます。 選択された桁に対応する4ビットのみがエンコーダに転送され、残りビットはデマルチプレクサによってゼロに強制されるため、他の3桁はブランクのままです。 個々のコンポーネン
マルチプレクサ(通称MUX)は、セレクタ入力に基づいて複数入力信号のうち1つを単一出力ラインにルーティングするデジタル切り替えデバイスです。 マルチプレクサの標準回路図記号は以下: 以下は古典的2-1マルチプレクサの真理値表。セレクタビットはA(最上位)とD(最下位)、I_0とI_1は2データ入力。 I_1I_0AD出力 00000 00010 01000 01011 10001 10010 11001 11011 制御ロジックに1-2デコーダを使用すると、この真理値表の実装が簡素化されます。デコーダは適切なデータ入力パスをイネーブルする2つのセレクタ信号を生成します。 この
デマルチプレクサ(dmuxと略されることが多い)は、単一入力ラインを取り、選択入力に基づいて信号を複数出力ラインのいずれかに振り向ける基本的なデジタルロジックコンポーネントです。入力コードを1つのアクティブ出力にマッピングするデコーダとは異なり、デマルチプレクサは入力データを選択された出力チャネルに積極的にルーティングするため、複数デバイスへのデータ分配に不可欠です。 実践では、デマルチプレクサはメモリアドレスデコーディングからマイクロプロセッサのバス管理まで至る所で使用されます。その動作はシンプルながら強力で、業界標準の回路図記号(下図)は電気エンジニアに広く認識されています。 以下は古典
エンコーダとは? エンコーダは、入力信号セットを2進符号化出力に変換する組み合わせ回路です。デコーダの論理的逆です。実践では、入力セットを表現するために必要な信号数を削減し、下流処理を簡素化し、システム信頼性を向上させるために使用されます。 2-1ラインエンコーダ 概念説明のため、1-2デコーダを逆転させてシンプルな2-1ラインエンコーダの真理値表を導出します。デコーダ真理値表: D_1D_0A 010 101 この関係を反転させるとエンコーダ真理値表になります: D_1D_0A 00– 010 101 11– 両入力がアクティブ(最後の行)の場合、出力は未定義。多くのアプリケーション
デコーダは、2進コードを出力信号セットに変換するロジック回路です。エンコーダの逆演算を行いますが、デコーダは通常設計がシンプルで、2進ロジック回路学習の確かな基盤となります。 デコーダのタイプ ラインデコーダ 最も一般的なのはラインデコーダで、nビット2進アドレスを受け取り、2^n本の出力ラインのうち1本をアクティブにします。最も簡単な例は1-2ラインデコーダ。その真理値表は以下: A (アドレス)D_1D_0 001 110 ここで、D_0 = NOT A、D_1 = A。回路図は以下: 2-4ラインデコーダ 1-2デコーダを基に、2-4ラインデコーダはわずかに複雑。真理値表: A
2つ以上の2進数を加算する場合、単一のハーフアダーでは不十分です。従来のアプローチ(新しいビット幅ごとに真理値表を作成)は正確ですが遅いです。全加算器は、キャリーインという第3入力を扱うことで、設計を迅速かつ確実にスケールさせます。 2ビット加算を考えます: 11 + 11 ------- 110 中央列には3入力が必要:a, b, キャリーイン C_in。2入力アダーをビルディングブロックとして、和ビットとキャリーアウトを生成する3入力アダーを構築できます。 数学的に、Σ = a + b + C_in かつ Σ_1 = a + b ならば、Σ = Σ_1 + C_in。以下の画像はこの構成
デジタルエレクトロニクスにおいて、ハーフアダーは2つの1ビット2進数を加算する最もシンプルな組み合わせ回路です。低位和(Σ)と高位キャリーアウト(C_out)の2出力を生成します。このデバイスの理解は、CPU、DSP、デジタル信号プロセッサで使用される全加算器や2進加算器など、より複雑な算術ユニットの設計基礎となります。 以下は、全ての入力組み合わせに対する期待出力をまとめた真理値表です: ABΣC_out 0000 0110 1010 1101 表から明らかな論理関係は、和出力が2入力の排他的論理和(XOR)、キャリーアウト出力が入力の論理積(AND)であることです。これらの論理
「組み合わせ(combinational)」という用語は数学に由来し、組み合わせとは順序のない集合を指します。この文脈では、入力変化の順序が回路出力に影響しません。したがって、組み合わせロジック回路は、入力が適用される順序に関わらず同じ結果を出力します。 対照的に、入力遷移のタイミングに依存する回路は順序ロジック(sequential logic)と呼ばれます。章タイトルには「順序ロジック」という用語は登場しませんが、今後のセクションでこれらの概念を深く掘り下げます。 実世界のデジタル設計は両タイプのロジックを組み合わせます:順序要素が適切な順序付けと同期を保証し、組み合わせブロックが算術、論
組み合わせロジックが大規模になると、カルノー図のサイズも拡大します。5変数または6変数マップが適切な場合と、そのセルの解釈・グループ化方法を知ることは、FPGAおよびASIC設計でのロジック使用量を劇的に削減できます。 Altera(現Intel傘下)は数千の顧客設計を調査し、典型的なファンインサイズを分析しました。結果は2〜6入力でほぼフラットな分布で、5入力に明確なピークがありました。実践では、ほとんどの回路は6入力以内で、平均設計は5入力に快適に収まります。 Altera独自のデータ(顧客設計ライブラリから抽出)は、ヘテロジニアリティの価値を支持します。ロジックコーンを調べ、LUTベース
これまで、すべての入力組み合わせが完全に指定されたロジック簡略化問題を扱ってきました。例えば3変数真理値表は2^3 = 8エントリを持ち、対応するカルノー図は完全に埋められます。 しかし現実の多くのアプリケーションでは、すべての入力を定義する必要はありません。一部の組み合わせは決して発生せず、それらの「不可能」な状態の出力は無関係です。これらをドントケア条件と呼びます。 例えば、4ビットで符号化された2進化十進(BCD)数を扱う場合、有効コードは0000〜1001(十進0〜9)のみです。1010〜1111の6パターンは16進数A〜Fに対応し、決して使用されません。したがって、これら6パターンを
このセクションでは、カルノー図でミナ項とマックス項を列挙する際に一般的に使用される記法を明確にします。新しい理論はありませんが、簡潔で実用的なリファレンスを提供します。 ミナ項の用語 ギリシャ文字 Σ(シグマ)は和を、小文字「m」はミナ項を表します。合わせて Σ m は「ミナ項の和」を意味します。以下の例で形式を示します。 f(A,B,C,D) = Σ m(1, 2, 3, 4, 5, 7, 8, 9, 11, 12, 13, 15) または f(A,B,C,D) = Σ(m1,m2,m3,m4,m5,m7,m8,m9,m11,m12,m13,m15) 数値は以下のカルノー図のセルアドレスに対
デジタルロジック設計では、ゲート数削減と性能向上のためにブール式を簡略化することがよくあります。ほとんどの教科書は積和(SOP)解に焦点を当てますが、すべてのSOPには補完的な和積(POS)形式があり、特定のロジックファミリではより有利になることがあります。 ミナ項の理解 ミナ項は、単一の入力組み合わせで1、それ以外で0を出力するブール積です。カルノー図(Kマップ)や真理値表では、ミナ項はゼロに囲まれた単一の「1」として現れます。例えば、ミナ項 ABC はKマップセル 111 に対応し、ABC はセル 010 に対応します。 ミナ項をマッピングする手順: マッピングする積項を特定する。 その
グレイコード順序を理解すれば、3変数カルノー図を4変数に拡張するのは簡単です:3変数マップの列順序を4変数グリッドの左側にコピーします。下図を参照してください。 4変数Kマップの簡略化 以下の例は、代数だけでは面倒なブール式をカルノー図が如何に簡略化するかを示します。代数操作も可能ですが、Kマップは特に多くの簡略化が必要な場合に高速で視覚的なアプローチを提供します。 以下のブール式は7つの積項を含みます。これらはKマップ上に順次プロットされます:最初の項 ABCD は上段第3セル(A=0, B=0, C=1, D=1)を占めます。以降の項も同様に左
ブール代数でも論理式を迅速に簡略化できますが、実世界の問題ではより大きな真理値表を扱うことが多々あります。カルノー図は、複雑な論理関数を効率的に簡略化する視覚的で体系的なアプローチを提供します。 この記事では、主要な技法を説明するための人為的な例をいくつか紹介し、後の章で扱うより高度な組み合わせロジックシナリオへの準備をします。 カルノー図とグレイコード順序 カルノー図では慣例的なグレイコード配列を使用します: 上段ラベルに注目:00, 01, 11, 10。このグレイコード列は、隣接列(および行)間で1ビットのみが変化するため、1変数のみ異なるセルが隣接します。この隣接性が、共通因子を視覚
カルノー図の考案者 ベル研究所の通信エンジニア、モーリス・カルノーが1953年に電話交換回路のデジタルロジック設計中にカルノー図を考案しました。 なぜカルノー図を使うのか? カルノー図は、代数的操作よりも高速かつ直感的に複雑なブール関数を簡略化する視覚ツールです。冗長項をまとめることで、必要な論理ゲートと入力数を減らし、ハードウェア設計者に直接的なコスト削減をもたらします。 実務では、カルノー図の読み方を理解すれば、エンジニアはブール代数よりもカルノー図を簡略化に好んで使用します。 以下に、同じ2入力ロジック関数の5つの異なる表現を示します:リレーラダーダイヤグラム、ゲート回路図、真理値表、
図(a)のように、長方形の A宇宙 内の円 A から始め、ベン図をほぼカルノー図へと変形させます。 (b)と(c)で円 A を拡大し、(d)で長方形の A宇宙 に合わせ、(e)で A を長方形に変更します。A の外側に残ったものは A です。(f)で A に長方形を割り当てます。また、カルノー図では塗りつぶしを使用しません。ここまでで1変数カルノー図に似たものが得られますが、実用性は低いです。複数変数が必要です。 上図(a)は、先のベン図(AとAを示す)と同じですが、ラベル A と A が領域内ではなく図の上にあります。図(a-f)と
4番目の図は、集合Aが集合Bと部分的に重なっている様子を示します。まず、両集合の和集合を表す全斜線領域を考え、後で積集合を分離します。 左下では、赤の水平斜線がAを、青の垂直斜線がBを表します。 斜線スタイルに関係なく、すべての斜線領域を集約すると、AとBの包含的OR関数に対応する領域になります。ブール式は A + B です。 図では、45°の斜線帯が和集合を表します。この斜線領域の外側は補集合 (A + B)' です。 次に、AとBの積集合を調べます。左側の二重斜線ゾーンが排他的AND関数を表し、AB と表現されます。二重斜線領域の外側は (AB)' です。 Aの一部の要素
数学者はベン図を用いて、集合(オブジェクトの集まり)同士の論理的関係を示します。代数や他の数学の学習でベン図を見たことがあるかもしれません。重なり合う円と、集合の和集合と積集合を覚えているでしょう。 ベン図の重なり合う円を復習します。デジタルエレクトロニクスで用いられる用語に合わせ、和集合と積集合の代わりにORとANDという用語を採用します。 ベン図は、前章のブール代数からカルノー図への橋渡しをします。ブール代数で既に知っていることをベン図に関連付け、それからカルノー図へ移行します。 集合は、宇宙から選ばれたオブジェクトの集まりです。集合の要素は集合に含まれるオブジェクトです。集合の要素は通常
産業技術