ブール論理
ブール論理の雑多メモ
論理ゲートは回路の構成要素
ブール代数
ブール値を扱う
バイナリ値、2値とも呼ばれる
論理関数
ブール式
And、Or、Notの3つから構成される
x And yは(x*y)、x Or yは(x+y)、Not xは$ \overline xで表せる
正準表現
canonical representation
真理値表でブール関数の出力が1のものだけを使う
どんな複雑なブール関数でもAnd、Or、Notの組み合わせだけで表現できる
例えば本の例(p.3)では以下のようなもの
$ f(x, y, z) = \overline {x}y\overline{z} + x\overline{y}\overline{z} + xy\overline{z}
ゲート
ブール関数を実装するための物理デバイス
トランジスタをつなぎ合わせることで作る #??
基本ゲート
$ 2^{2^n}個ある
例
And, Or, Not
Nand (Not And)
XOR
数学における公理のようなもの
複合ゲート
基本ゲートの組み合わせ
複合ゲートも基本ゲートと同じくブール関数
組み合わせが複数あるものもある
コスト、スピード、単純性で判断する
HDL (Hardware Description Language)
ハードウェア記述言語
回路のアーキテクチャの設計、最適化を考える
header セクション
回路のインターフェースについて記述
回路名、入力ピン名、出力ピン名
parts セクション
下位レベルのパーツの名前や構成方法を記述する
マルチプレクサ
3入力のゲート
データビットという2つの入力、選択ビットという1の入力からなる
デマルチプレクサ
マルチプレクサの反対
多ビットの基本ゲート
バス
複数のビットからなる配列
例
32bitのコンピュータ
32bitのバス2つに対するゲートが必要
例えば32個のAndゲート
32個の異なるゲートの詰め合わせで1つのモジュールにできる
参考
『コンピュータシステムの理論と実装』