論理回路基礎 摂大・鹿間
論理回路基礎
(第14回)
特別講義: 論理回路シミュレータ
1. 論理回路の基本(復習) 2.シミュレータ(Multisim) 2.1 回路シミュレータの概要 2.2 設計実例: HA,FA,簡易電卓など 鹿間 信介 摂南大学 理工学部 電気電子工学科 摂大・鹿間 論理回路基礎論理回路基礎(論理回路Ⅰ)の期末試験
実施日: 8/5(金) 14:30 @1123教室(定規OK,参照ダメ) 成績評価: 中間50%,期末50% (出席率80%以上の学生が評価対象) 出題: 全範囲より出題,後半(8回~)がウエイト大 教科書+(中間+演習: 講義HP)を十分復習のこと 中間までの内容は「あたりまえ」にできるように!! 例: 論理式,カルノー図,主加法標準形 など 個別質問: 試験前日・当日はダメ (公平性確保) 原則月曜5限 (スチューデントアワー ) 論理回路基礎 摂大・鹿間1.論理回路の基本 (試験直前復習)
コンピュータ内の
一番細かな情報処理の仕組み
摂大・鹿間 論理回路基礎論理回路
論理回路は論理演算を行う回路 組合せ回路と順序回路に分かれる 組合せ回路: 入力順序によらず,入力の組合せで出力が決まる 単純な2値論理関数: 順序回路: 内部にメモリー(記憶回路)があり,状態を持っている メモリーの内容と入力信号で次の出力が決まる)
,
,
,
(
•
••
=
f
A
B
C
Y
摂大・鹿間 論理回路基礎
順序回路
イメージ図
入力
出力
メモリー
※ 順序回路ではメモリがあり状態を持つ
摂大・鹿間 論理回路基礎論理演算とは?
2値論理変数からなる世界
H/L,0/1など 2状態を0/1で表すと,2進数の取扱いに便利
2進数演算も論理演算と同様に扱われる 例: 半加算器(HA),全加算器(FA)
基本論理演算:
AND, OR, NOT
論理演算は,真理値表で表される
入力・出力の関係を”0”と”1”を使った表で定義 摂大・鹿間 論理回路基礎記号による表現
論理演算は論理式で表現できる
記号により回路図のように描ける
記号は論理演算の種類に応じて決められている 線でつないで論理回路を構成する 摂大・鹿間 論理回路基礎論理素子(=論理ゲート)の種類 (第8回)
A B Y AND Y = AB A B Y OR Y = A + B A Y NOT Y = A A B Y Y = AB NAND Y = A + B A B Y NOR A B Y XOR Y = A B A B Y XNOR Y = A B摂大・鹿間 論理回路基礎
真理値表(第
8回)
1 0 0 0 1 1 1 1 0 1 0 1 1 0 0 1 0 1 0 1 1 0 1 0 1 0 1 1 0 0 0 0 XNOR XOR NOR NAND OR AND B A 摂大・鹿間 論理回路基礎論理回路の合成
すべての論理回路は,
AND, OR, NOT素子の
組合せで合成できる
すべての論理回路は,
NAND素子
,または
NOR素子
の組合せで合成できる
摂大・鹿間 論理回路基礎AND⇔OR変換のまとめ(第10回)
論理機能,入出力論理の全 てを逆に変換 NANDもしくはNORで統一す る場合: 正論理出力を二重否定して 2段目の否定をNOTに変換 負論理入力をNOTに変換 NOTをNAND/NORで構成 摂大・鹿間 論理回路基礎NAND素子による合成(第10回)
• NANDゲートだけを使って他のすべての論理素子を構成できる NOT AND OR NOR摂大・鹿間 論理回路基礎
2進数の足し算 (第
12回)
方法
1桁ずつ下位の桁から足していく。
例
11
+10
101
2桁目: 1+1で,和が0,桁上がりが1 1桁目: 1+0を計算し,和が1,桁上がりが0 以上をまとめると答えは,(101)2 摂大・鹿間 論理回路基礎半加算器
半加算器
Half Adder ・・・HA
2進数の2つの入力(
A
,
B
)から加算結果を出力
出力は
S
(sum:和)と
C
o(carry:桁上がり)
A B Co SHA
摂大・鹿間 論理回路基礎全加算器
全加算器
Full Adder ・・・ FA
前の桁からの桁上がり
C
iを含む3つの入力の
和を求める
出力は
S
(sum:和)と
C
o(carry:桁上がり)
A Co SFA
B Ci 摂大・鹿間 論理回路基礎2進加算器 (第
12回)
4ビット2進加算器の例
FA FA FA HA 1ビット目 2ビット目 3ビット目 4ビット目 S0 S1 S2 S3 C3論理回路基礎 摂大・鹿間
2.シミュレータ (Multisim)
2.1 回路シミュレータの概要 2.2 簡易電卓向け論理回路の例 (a) 半加算器(HA)と全加算器(FA) (b) 10進入力と7セグメント表示 (c) 加算・減算回路と簡易電卓 摂大・鹿間 論理回路基礎2.1 回路シミュレータの概要
実回路の動作をコンピュータで模擬
回路の動作確認と理解:
実際の回路を作成する前に仮想の回路をシミュ レーションすることで,出力や動作原理を確認 各種パラメータの変更等:
回路の部品,回路定数等を簡単に変更できる 摂大・鹿間 論理回路基礎Multisimの特徴
SPICEベースの回路シミュレータ 直感的な操作による回路図入力 入力信号設定・変更が簡単 アナデジ混在回路でもOK 仮想計測器: 本物そっくり プリント基板設計ツールとの統合 論理回路のシミュレーション例*SPICE (Simulation Program with Integrated Circuit Emphasis, スパイス):
1973年にカリフォルニア大学バークレー校で,主にICの電子回路設計用に開発された 仮想計測器(オシロスコープ)の例 摂大・鹿間 論理回路基礎
2.2(a) 半加算器(HA)
A
B
C
oS
HA
)
(
A
B
B
A
B
A
S
=
+
=
⊕
AB
C
0=
0 1 1 1 1 0 0 1 1 0 1 0 0 0 0 0 S C0 B A HAの真理値表B
A
S
C
0摂大・鹿間 論理回路基礎
シミュレーション回路(
HA)
S: その桁の和 74LS86 (Quad-XOR) C: 桁上げ 74LS08 (Quad-AND) プルアップ抵抗+SW: A, B入力 SW-OFF: “1” SW-ON: “0” ランプ: 赤(1),白(0) U 1A 74LS86N U 2A 74LS08N VCC 5V J 1 キー = A J 2 キー = B R 1 10k Ω R 210k Ω S 2.5 V C 2.5 V A 2.5 V B 2.5 V <デモ画面 (EX1-0)> 摂大・鹿間 論理回路基礎全加算器(
FA)
a
c
bc
ab
c
o=
+
i+
i ic
b
a
s
=
⊕
⊕
ci b a co s FAの真理値表 1 1 1 1 1 0 1 1 0 1 1 1 1 0 0 0 1 0 1 0 1 0 1 0 b 0 1 0 1 0 0 1 1 0 0 1 0 0 0 0 0 ci co s aa
b
c
is
c
oFA
2段XOR 多数決 摂大・鹿間 論理回路基礎3入力ORの代替手段
3入力ORゲートはない 2入力NORで作成する 74LS02(QUAD-NOR )で構成可 ci b a co s ) (B C A+ + A+(B+C) C B A+ + A B C 摂大・鹿間 論理回路基礎 U 1A 74LS86N VCC 5V J 1 キー = A J 2 キー = B R 1 10k Ω R 210k Ω S 2.5 V C 2.5 V a 0 2.5 V b 0 2.5 V c 0 2.5 V R 3 10k Ω J 3 キー = C U 2A 74LS86N U 4A 74LS08N U 4B 74LS08N U 4C 74LS08N U 5A 74LS02N U 5B 74LS02N U 5C 74LS02N U 5D 74LS02N <デモ画面 (EX1-1)>シミュレーション回路(FA)
摂大・鹿間 論理回路基礎
全加算器(
FA)のモジュール化
階層化設計
よく使う回路を「部品」として登録 Multisumでは「階層ブロック」と呼ぶ 規模の大きい回路設計の効率アップに有効 実例
4ビット加算器 FAモジュール4個で設計する 摂大・鹿間 論理回路基礎モジュール化の実例(FA)
U 1A 74LS86N U 2A 74LS86N U 4A 74LS08N U 4B 74LS08N U 4C 74LS08N U 5A 74LS02N U 5B 74LS02N U 5C 74LS02N U 5D 74LS02N a b ci s c 入力/出力端にコネクタ を接続 「配置」⇒「コネクタ」⇒ 「HB/SCコネクタ」 回路データを保存 別回路での利用: 保存したモジュール を呼び出して配置 「配置」⇒「ファイル保存 済の階層ブロック」 U 1A 74LS86N U 2A 74LS86N U 4A 74LS08N U 4B 74LS08N U 4C 74LS08N U 5A 74LS02N U 5B 74LS02N U 5C 74LS02N U 5D 74LS02N 摂大・鹿間 論理回路基礎モジュールの利用イメージ
FAモジュール
(
3入力/2出力)
HAモジュール
(
2入力/2出力)
X1
Ex2-1_FA_Block
a a b b ci ci s s c cX2
Ex2-0_HA_Block
a0 a0 b0 b0 S S C C 摂大・鹿間 論理回路基礎4ビット加算器のシミュレーション回路
<デモ画面 (EX2-2)> プルアップ抵抗: Basicグループ ⇒RPACKファミリ ⇒ 「1X4SIP」 スイッチ: Baicグループ ⇒SWITCHファミリ ⇒DSWPK_4 X1 Ex2-1_FA_Block a a b b ci ci s s c c X2 Ex2-1_FA_Block a a b b ci ci s s c c X3 Ex2-1_FA_Block a a b b ci ci s s c c X4 Ex2-1_FA_Block a a b b ci ci s s c c X1 2.5 V X2 2.5 V X3 2.5 V X4 2.5 V X5 2.5 V R 1 1X4SIP 10k Ω 2 3 4 5 1 R 2 1X4SIP 10k Ω 2 3 4 5 1 J 1 J 2 VCC 5V摂大・鹿間 論理回路基礎
2.2(b) 10進入力と7セグメント表示
BCD⇒7セグメント: 基本ゲートで構成した例
BCDの4ビットをSWで設定 10進数で数値入力: MSIで構成した例
10進 ⇒ BCD(エンコード) BCD ⇒ 7セグメント表示(デコード)* MSI (Medium Scale Integration): 中規模集積回路。
半導体チップ上に 100~1000 個の素子を集積したもの。 論理回路基礎 摂大・鹿間 BCD⇒7セグメント デコーダ 基本ゲートで構成 (第11回演習) J 1 キー = B J 2 キー = C J 3 キー = D J 0 キー = A R 1 10k Ω VCC 5V VCC 5V U 6 A B C D E F G CA R 3 180 Ω RPACK 7 GN D VCC 5V D3 D2 D1 D0 BCD (ABCD)入力 7セグ(a-g) 出力 カルノー図で論理 式簡単化 (1010)~(1111) はdon’t care <デモ画面 (LC1_11)> 摂大・鹿間 論理回路基礎
10進数で数値入力する回路 (MSI使用)
U 1 74147N A9 B7 C6 D14 3 13 4 1 5 2 2 121 11 8 5 7 4 6 3 9 10 U 2 7447N A 7 B 1 C 2 D 6 OA 13 OD 10 OE 9 OF 15 OC 11 OB 12 OG 14 ~LT 3 ~RBI 5 ~BI/RBO 4 J 1 キー = 1 J 2 キー = 2 J 3 キー = 3 J 4 キー = 4 J 5 キー = 5 J 6 キー = 6 J 7 キー = 7 J 8 キー = 8 J 9 キー = 9 J 0 キー = 0 R 1 10k Ω VCC 5V U 3A 7404N U 3B 7404N U 3C 7404N U 3D 7404N U 3E 7404N U 4A 74LS21N U 5A 7408N VCC 5V R 2 1k Ω B0 2.5 V B1 B2 B4 B8 U 6 A B C D E F G CA R 3 180 Ω RPACK 7 GN D VCC 5V <デモ画面 (F8.3)> 10進数をSW入力 BCDエンコーダ 74147 7セグデコーダ 7447 論理回路基礎 摂大・鹿間2.2(c) 加算・減算回路と簡易電卓
4-bit加減算回路
7483(4-bit全加算器)を使用 10進入力簡易電卓
74181(4-bit ALU)を使用*ALU: Arithmetic and Logic Unit(算術論理演算ユニット)の略語。加算・減算 などの算術演算やAND,OR,NOTといった論理演算,比較演算などが実行可。 A B F D R ←ALUのシンボル図 A,B: 入力(オペランド) R:演算結果 F: 制御入力,D: 出力ステータス
摂大・鹿間 論理回路基礎