東北大学 工学部 機械知能・航空工学科
2018年度 クラスC3 D1 D2 D3
情報科学基礎 I
大学院情報科学研究科
鏡 慎吾
http://www.ic.is.tohoku.ac.jp/~swk/lecture/
10. 組合せ回路
(教科書3.4~3.5節)
2鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1)
組合せ論理回路
x1
x2
xn
y1
y2
ym
yi = fi(x1, x2, …, xn), i = 1, 2, …, m
• ある時点での出力が,その時点の入力のみで決まる
(記憶を持たない)回路
• フィードバックが存在しない(入力→出力の方向にだけゲート
が接続されている)
• 原理的には,n 入力の論理関数が m 個並んでいるも
のだと考えればよい
組合せ論理回路
3鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1)
復習: MIPSの構造
メモリ
32ビットALU
32x32ビット
レジスタ
PC
命令デコーダ
アドレス(32ビット)
データ(8, 16, 32ビット)
次PC計算
制御回路
mux
mux
演算選択
レ
ジ
ス
タ
選
択
色つきの部分が組合せ回路
4鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1)
組合せ論理回路の構成方法
• 原理上は,必ず積和形回路で表すことができる,しかし
• nが大きい場合,簡単化の計算に膨大なコストがかかる
• それが最適とは限らない
• 算術論理演算のように入出力関係の規則性が高い場合は,そ
の規則性に注目して回路を組み立てる方がよい
•複数の回路を接続するための部品
•2進デコーダ,マルチプレクサ
•複数回路の接続例
•ALU,汎用レジスタ群
•各種演算回路
•算術演算,論理演算
5鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1)
2進デコーダ
• en = 0 のとき: 全出力を0とする
• en = 1 のとき: 入力を2進数 k と見なして,出力 yk を1,他を0とする
例: x1 = 1, x0 = 0 のとき,入力は2進数で「2」を表すので,y2 のみが1 となる
y3 y2 y1 y0
x0x1 en
2進デコーダ
• エンコード: 一般に,注目している量に適当な数値(符号)を与えること
• デコード: エンコードの逆
• この例では,「何番目の信号線か?」を2進数として符号化している
• en は enable の略で,活性化信号などと訳される
複数の出力信号のうち
(高々) 1 本を選んで 1 にする
6鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1)
2進デコーダの真理値表と回路図
…
x0 x1 x2 xn-1
y0
y1
y2
y2n-1
各 yi について真理値表を
書くと,1行だけ出力が1に
なるような表となる
x2 x1 x0
y7y6…y1y0
0 0 0 0000 0001
0 0 1 0000 0010
0 1 0 0000 0100
0 1 1 0000 1000
1 0 0 0001 0000
1 0 1 0010 0000
1 1 0 0100 0000
1 1 1 1000 0000
en
7鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1)
マルチプレクサ(セレクタ)
0
1
0
1
2
3
M
U
X
2
a0
a1
8
8
8
複数の入力信号のうち 1 本を出力側に通す選択回路
多ビットをまとめて選択するものも同様の記号で表す
• 短い斜線と数字は,複数ビットをまとめたこ
とを表示している
(自明な場合,興味のない場合は適宜省略)
• 記号の形状は,台形だったり楕円だったりと
いろいろな流儀がある
a0
a1
選択信号 s
s = i なら ai を選ぶ
a0
a1
s
a2
a3
s
8鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1)
マルチプレクサの真理値表と構成
M
U
X
2
a0
a1
選択信号 s
a0 a1 s mux2
0 0 0 0
0 0 1 0
0 1 0 0
0 1 1 1
1 0 0 1
1 0 1 0
1 1 0 1
1 1 1 1
2入力
M
U
X
2
a0
a1
M
U
X
2
a2
a3
M
U
X
2
s0 s1
4入力
M
U
X
4
9鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1)
復習: MIPSの構造
メモリ
32ビットALU
32x32ビット
レジスタ
PC
命令デコーダ
アドレス(32ビット)
データ(8, 16, 32ビット)
次PC計算
制御回路
mux
mux
演算選択
レ
ジ
ス
タ
選
択
10鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1)
32×32ビットレジスタ (1入力2出力)
en
en
en
32-bit レジスタ × 32個
(ここは組合せ回路ではない → 次回のテーマ)
en
mux
書き込みデータ
読み出し
レジスタ
番号(1)
読み出し
レジスタ
番号(2)
読み出し
データ(1)
読み出し
データ(2)
書き込み
イネーブル
mux
…
2進デコーダ
書き込みレジスタ番号
32
5
5 5
en
11鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1)
復習: MIPSの構造
メモリ
32ビットALU
32x32ビット
レジスタ
PC
命令デコーダ
アドレス(32ビット)
データ(8, 16, 32ビット)
次PC計算
制御回路
mux
mux
演算選択
レ
ジ
ス
タ
選
択
12鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1)
ALU (Arithmetic and Logic Unit) の構成例
32-bit and
32-bit or
32-bit nor
32-bit add
32-bit sub
a b
mux
y
…
32 32
32
32
32
32
32
32
y
32
32
32
演算選択信号 op
op
a
b
32-bit shift 32
13鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1)
半加算器 (half adder)
HA
a
b
s (sum)
c (carry)
a b s c
0 0 0 0
0 1 1 0
1 0 1 0
1 1 0 1
1
1
+) 1
0
a
b
c
s
a
b
c
s
14鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1)
全加算器 (full adder)
FA
a
b
s
coutcin
11
0
+) 1
0
a
b
cout
s
cin
前の位からの繰り上がりを考慮する.半加算器が2つ必要
HA
a
b
s
c
a
b
cin
HA
a
b
s
c
s
cout
15鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1)
n-ビット加算器
FA
s
cout
FA
s
cout
FA
s
cout
FA
s
cout
0
a0
b0
a1
b1
a2
b2
an-1
bn-1
c0
c1
c2
cn-1
cn-2
s0
s1
s2
リプルキャリー型加算器と呼ばれる
• nに比例して遅延が蓄積するため,
決して速い回路ではない
• より高速な(しかし回路規模の大き
い)加算回路も広く用いられている
(e.g. キャリー先読み型加算器)
sn-1
…
16鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1)
n-ビット減算器
0
a0
b0
a1
b1
a2
b2
an-1
bn-1
cn-1
s0
s1
s2
sn-1
n-bit
adder
…
1
a0
b0
a1
b1
a2
b2
an-1
bn-1
cn-1
s0
s1
s2
sn-1
n-bit
adder
…
入力を変えるだけで
減算器になる
a – b
= a + (– b)
(よって p.12 のように加算
器と減算器を独立して用意
する必要は普通はない)
17鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1)
バレルシフタ(ローテータ)
1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0
1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0
1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0
a7 a6 a5 a4 a3 a2 a1 a0
y7 y6 y5 y4 y3 y2 y1 y0
b0
b1
b2
1ビット右循環シフト
2ビット右循環シフト
4ビット右循環シフト
N ビット値 a を b ビット右循環シフトしたものを y として出力する組合せ回路
• b ビット左循環シフトは,N – b ビット右循環シフトと等価
• b ビット左シフトは,左循環シフト出力のLSB側 b ビットを 0 にする
• b ビット右シフトは,右循環シフト出力のMSB側 b ビットを 0 にする
18鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1)
ビットごと論理演算器
a0
b0
a1
b1
a2
b2
an-1
bn-1
y0
y1
y2
yn-1
…
a0
b0
a1
b1
a2
b2
an-1
bn-1
y0
y1
y2
yn-1
…
a0
b0
a1
b1
a2
b2
an-1
bn-1
y0
y1
y2
yn-1
…
y = a & b y = a | b y = a ^ b y = ~(a | b)
a0
b0
a1
b1
a2
b2
an-1
bn-1
y0
y1
y2
yn-1
…
19鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1)
復習: MIPSの構造
メモリ
32ビットALU
32x32ビット
レジスタ
PC
命令デコーダ
アドレス(32ビット)
データ(8, 16, 32ビット)
次PC計算
制御回路
mux
mux
演算選択
レ
ジ
ス
タ
選
択
20鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1)
参考: 命令デコーダと分岐ユニット
• 命令デコーダは,32ビットの命令を入力として,命令の解釈結
果を出力する組合せ回路である.出力信号は例えば:
• 命令種別(レジスタ演算,即値演算,ロード,ストア,分岐)
• レジスタ番号 rs
• レジスタ番号 rt
• レジスタ番号 rd
• 即値・オフセット
• オペコード
• ...
• 「次PC計算」部(分岐ユニットなどと呼ぶ)は,現在のPC値と2
つのレジスタ値を入力として,次のPCの値を出力する組合せ
回路である.内部では,分岐条件の判定と,分岐先アドレスの
計算を行う
• 構成例: 教科書付録E章
21鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1)
https://www.youtube.com/watch?v=Si6g1Nv7y1I
22鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1)
練習問題
1. 2入力マルチプレクサ m(a0, a1, s) を主加法標準形の論理式
で表せ.
2. m(a0, a1, s) のカルノー図をかき,できるだけ簡単な積和型
の論理式で表せ.またその論理回路図を示せ.
3. 全加算器の両出力 s(a, b, cin), cout(a, b, cin) のカルノー図を
かき,それぞれをできるだけ簡単な積和型の論理式で表せ.
23鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1)
解答例
s
a0
a1
m a0 a1
00 01 11 10
s 0 1 1
1 1 1
s a b
00 01 11 10
cin 0 1 1
1 1 1
cout a b
00 01 11 10
cin 0 1
1 1 1 1
(3入力 XOR)
(3入力多数決関数)
1.
2.
3.

More Related Content

PDF
kagami_comput2015_10
PDF
kagami_comput2016_10
PDF
kagami_comput2016_08
PDF
kagami_comput2016_11
PDF
kagami_comput2016_09
PDF
kagami_comput2016_12
PDF
kagami_comput2016_14
PDF
kagamicomput201811
kagami_comput2015_10
kagami_comput2016_10
kagami_comput2016_08
kagami_comput2016_11
kagami_comput2016_09
kagami_comput2016_12
kagami_comput2016_14
kagamicomput201811

What's hot (20)

PDF
kagami_comput2015_11
PDF
kagamicomput201711
PDF
kagamicomput201712
PDF
kagamicomput201710
PDF
kagami_comput2015_8
PDF
kagami_comput2016_07
PDF
kagamicomput201709
PDF
kagamicomput201708
PPTX
T69 episteme
PDF
kagami_comput2015_12
PDF
kagami_comput2016_13
PDF
kagamicomput201808
PDF
katayama b
PDF
kagami_comput2016_02
PDF
kagamicomput201809
PDF
kagami_comput2016_06
PDF
kagamicomput201704
PDF
kagami_comput2015_6
PDF
kagamicomput201706
PDF
kagamicomput201812
kagami_comput2015_11
kagamicomput201711
kagamicomput201712
kagamicomput201710
kagami_comput2015_8
kagami_comput2016_07
kagamicomput201709
kagamicomput201708
T69 episteme
kagami_comput2015_12
kagami_comput2016_13
kagamicomput201808
katayama b
kagami_comput2016_02
kagamicomput201809
kagami_comput2016_06
kagamicomput201704
kagami_comput2015_6
kagamicomput201706
kagamicomput201812
Ad

Similar to kagamicomput201810 (20)

PDF
kagamicomput201814
PDF
[Basic 2] 計算機の構成 / プログラム実行の仕組み
PPTX
PILCO - 第一回高橋研究室モデルベース強化学習勉強会
PDF
kagamicomput201801
PDF
第3回システム系輪講会:IPDPS'17 の機械学習系論文
PDF
2015年度GPGPU実践プログラミング 第10回 行列計算(行列-行列積の高度な最適化)
PDF
Get To The Point: Summarization with Pointer-Generator Networks_acl17_論文紹介
PDF
点群深層学習 Meta-study
PDF
画像局所特徴量と特定物体認識 - SIFTと最近のアプローチ -
PDF
bigdata2012ml okanohara
PDF
第11回 配信講義 計算科学技術特論B(2022)
PDF
kagami_comput2015_1
PDF
kagami_comput2016_01
PDF
スパースモデリングによる多次元信号・画像復元
PDF
kagami_comput2015_2
PDF
数値計算結果のPythonによる後処理について(1次元データのピーク値およびその位置の推定)
PDF
Deep learning実装の基礎と実践
PDF
Hough forestを用いた物体検出
PDF
CMSI計算科学技術特論A(14) 量子化学計算の大規模化1
PDF
200702material hirokawa
kagamicomput201814
[Basic 2] 計算機の構成 / プログラム実行の仕組み
PILCO - 第一回高橋研究室モデルベース強化学習勉強会
kagamicomput201801
第3回システム系輪講会:IPDPS'17 の機械学習系論文
2015年度GPGPU実践プログラミング 第10回 行列計算(行列-行列積の高度な最適化)
Get To The Point: Summarization with Pointer-Generator Networks_acl17_論文紹介
点群深層学習 Meta-study
画像局所特徴量と特定物体認識 - SIFTと最近のアプローチ -
bigdata2012ml okanohara
第11回 配信講義 計算科学技術特論B(2022)
kagami_comput2015_1
kagami_comput2016_01
スパースモデリングによる多次元信号・画像復元
kagami_comput2015_2
数値計算結果のPythonによる後処理について(1次元データのピーク値およびその位置の推定)
Deep learning実装の基礎と実践
Hough forestを用いた物体検出
CMSI計算科学技術特論A(14) 量子化学計算の大規模化1
200702material hirokawa
Ad

More from swkagami (14)

PDF
kagamicomput201813
PDF
kagamicomput201807
PDF
kagamicomput201806
PDF
kagamicomput201805
PDF
kagamicomput201804
PDF
kagamicomput201803
PDF
kagamicomput201802
PDF
kagamicomput201714
PDF
kagamicomput201713
PDF
kagamicomput201707
PDF
kagamicomput201705
PDF
kagamicomput201703
PDF
kagamicomput201702
PDF
kagamicomput201701
kagamicomput201813
kagamicomput201807
kagamicomput201806
kagamicomput201805
kagamicomput201804
kagamicomput201803
kagamicomput201802
kagamicomput201714
kagamicomput201713
kagamicomput201707
kagamicomput201705
kagamicomput201703
kagamicomput201702
kagamicomput201701

kagamicomput201810

  • 1. 東北大学 工学部 機械知能・航空工学科 2018年度 クラスC3 D1 D2 D3 情報科学基礎 I 大学院情報科学研究科 鏡 慎吾 http://www.ic.is.tohoku.ac.jp/~swk/lecture/ 10. 組合せ回路 (教科書3.4~3.5節)
  • 2. 2鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1) 組合せ論理回路 x1 x2 xn y1 y2 ym yi = fi(x1, x2, …, xn), i = 1, 2, …, m • ある時点での出力が,その時点の入力のみで決まる (記憶を持たない)回路 • フィードバックが存在しない(入力→出力の方向にだけゲート が接続されている) • 原理的には,n 入力の論理関数が m 個並んでいるも のだと考えればよい 組合せ論理回路
  • 3. 3鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1) 復習: MIPSの構造 メモリ 32ビットALU 32x32ビット レジスタ PC 命令デコーダ アドレス(32ビット) データ(8, 16, 32ビット) 次PC計算 制御回路 mux mux 演算選択 レ ジ ス タ 選 択 色つきの部分が組合せ回路
  • 4. 4鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1) 組合せ論理回路の構成方法 • 原理上は,必ず積和形回路で表すことができる,しかし • nが大きい場合,簡単化の計算に膨大なコストがかかる • それが最適とは限らない • 算術論理演算のように入出力関係の規則性が高い場合は,そ の規則性に注目して回路を組み立てる方がよい •複数の回路を接続するための部品 •2進デコーダ,マルチプレクサ •複数回路の接続例 •ALU,汎用レジスタ群 •各種演算回路 •算術演算,論理演算
  • 5. 5鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1) 2進デコーダ • en = 0 のとき: 全出力を0とする • en = 1 のとき: 入力を2進数 k と見なして,出力 yk を1,他を0とする 例: x1 = 1, x0 = 0 のとき,入力は2進数で「2」を表すので,y2 のみが1 となる y3 y2 y1 y0 x0x1 en 2進デコーダ • エンコード: 一般に,注目している量に適当な数値(符号)を与えること • デコード: エンコードの逆 • この例では,「何番目の信号線か?」を2進数として符号化している • en は enable の略で,活性化信号などと訳される 複数の出力信号のうち (高々) 1 本を選んで 1 にする
  • 6. 6鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1) 2進デコーダの真理値表と回路図 … x0 x1 x2 xn-1 y0 y1 y2 y2n-1 各 yi について真理値表を 書くと,1行だけ出力が1に なるような表となる x2 x1 x0 y7y6…y1y0 0 0 0 0000 0001 0 0 1 0000 0010 0 1 0 0000 0100 0 1 1 0000 1000 1 0 0 0001 0000 1 0 1 0010 0000 1 1 0 0100 0000 1 1 1 1000 0000 en
  • 7. 7鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1) マルチプレクサ(セレクタ) 0 1 0 1 2 3 M U X 2 a0 a1 8 8 8 複数の入力信号のうち 1 本を出力側に通す選択回路 多ビットをまとめて選択するものも同様の記号で表す • 短い斜線と数字は,複数ビットをまとめたこ とを表示している (自明な場合,興味のない場合は適宜省略) • 記号の形状は,台形だったり楕円だったりと いろいろな流儀がある a0 a1 選択信号 s s = i なら ai を選ぶ a0 a1 s a2 a3 s
  • 8. 8鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1) マルチプレクサの真理値表と構成 M U X 2 a0 a1 選択信号 s a0 a1 s mux2 0 0 0 0 0 0 1 0 0 1 0 0 0 1 1 1 1 0 0 1 1 0 1 0 1 1 0 1 1 1 1 1 2入力 M U X 2 a0 a1 M U X 2 a2 a3 M U X 2 s0 s1 4入力 M U X 4
  • 9. 9鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1) 復習: MIPSの構造 メモリ 32ビットALU 32x32ビット レジスタ PC 命令デコーダ アドレス(32ビット) データ(8, 16, 32ビット) 次PC計算 制御回路 mux mux 演算選択 レ ジ ス タ 選 択
  • 10. 10鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1) 32×32ビットレジスタ (1入力2出力) en en en 32-bit レジスタ × 32個 (ここは組合せ回路ではない → 次回のテーマ) en mux 書き込みデータ 読み出し レジスタ 番号(1) 読み出し レジスタ 番号(2) 読み出し データ(1) 読み出し データ(2) 書き込み イネーブル mux … 2進デコーダ 書き込みレジスタ番号 32 5 5 5 en
  • 11. 11鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1) 復習: MIPSの構造 メモリ 32ビットALU 32x32ビット レジスタ PC 命令デコーダ アドレス(32ビット) データ(8, 16, 32ビット) 次PC計算 制御回路 mux mux 演算選択 レ ジ ス タ 選 択
  • 12. 12鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1) ALU (Arithmetic and Logic Unit) の構成例 32-bit and 32-bit or 32-bit nor 32-bit add 32-bit sub a b mux y … 32 32 32 32 32 32 32 32 y 32 32 32 演算選択信号 op op a b 32-bit shift 32
  • 13. 13鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1) 半加算器 (half adder) HA a b s (sum) c (carry) a b s c 0 0 0 0 0 1 1 0 1 0 1 0 1 1 0 1 1 1 +) 1 0 a b c s a b c s
  • 14. 14鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1) 全加算器 (full adder) FA a b s coutcin 11 0 +) 1 0 a b cout s cin 前の位からの繰り上がりを考慮する.半加算器が2つ必要 HA a b s c a b cin HA a b s c s cout
  • 15. 15鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1) n-ビット加算器 FA s cout FA s cout FA s cout FA s cout 0 a0 b0 a1 b1 a2 b2 an-1 bn-1 c0 c1 c2 cn-1 cn-2 s0 s1 s2 リプルキャリー型加算器と呼ばれる • nに比例して遅延が蓄積するため, 決して速い回路ではない • より高速な(しかし回路規模の大き い)加算回路も広く用いられている (e.g. キャリー先読み型加算器) sn-1 …
  • 16. 16鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1) n-ビット減算器 0 a0 b0 a1 b1 a2 b2 an-1 bn-1 cn-1 s0 s1 s2 sn-1 n-bit adder … 1 a0 b0 a1 b1 a2 b2 an-1 bn-1 cn-1 s0 s1 s2 sn-1 n-bit adder … 入力を変えるだけで 減算器になる a – b = a + (– b) (よって p.12 のように加算 器と減算器を独立して用意 する必要は普通はない)
  • 17. 17鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1) バレルシフタ(ローテータ) 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 a7 a6 a5 a4 a3 a2 a1 a0 y7 y6 y5 y4 y3 y2 y1 y0 b0 b1 b2 1ビット右循環シフト 2ビット右循環シフト 4ビット右循環シフト N ビット値 a を b ビット右循環シフトしたものを y として出力する組合せ回路 • b ビット左循環シフトは,N – b ビット右循環シフトと等価 • b ビット左シフトは,左循環シフト出力のLSB側 b ビットを 0 にする • b ビット右シフトは,右循環シフト出力のMSB側 b ビットを 0 にする
  • 18. 18鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1) ビットごと論理演算器 a0 b0 a1 b1 a2 b2 an-1 bn-1 y0 y1 y2 yn-1 … a0 b0 a1 b1 a2 b2 an-1 bn-1 y0 y1 y2 yn-1 … a0 b0 a1 b1 a2 b2 an-1 bn-1 y0 y1 y2 yn-1 … y = a & b y = a | b y = a ^ b y = ~(a | b) a0 b0 a1 b1 a2 b2 an-1 bn-1 y0 y1 y2 yn-1 …
  • 19. 19鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1) 復習: MIPSの構造 メモリ 32ビットALU 32x32ビット レジスタ PC 命令デコーダ アドレス(32ビット) データ(8, 16, 32ビット) 次PC計算 制御回路 mux mux 演算選択 レ ジ ス タ 選 択
  • 20. 20鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1) 参考: 命令デコーダと分岐ユニット • 命令デコーダは,32ビットの命令を入力として,命令の解釈結 果を出力する組合せ回路である.出力信号は例えば: • 命令種別(レジスタ演算,即値演算,ロード,ストア,分岐) • レジスタ番号 rs • レジスタ番号 rt • レジスタ番号 rd • 即値・オフセット • オペコード • ... • 「次PC計算」部(分岐ユニットなどと呼ぶ)は,現在のPC値と2 つのレジスタ値を入力として,次のPCの値を出力する組合せ 回路である.内部では,分岐条件の判定と,分岐先アドレスの 計算を行う • 構成例: 教科書付録E章
  • 21. 21鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1) https://www.youtube.com/watch?v=Si6g1Nv7y1I
  • 22. 22鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1) 練習問題 1. 2入力マルチプレクサ m(a0, a1, s) を主加法標準形の論理式 で表せ. 2. m(a0, a1, s) のカルノー図をかき,できるだけ簡単な積和型 の論理式で表せ.またその論理回路図を示せ. 3. 全加算器の両出力 s(a, b, cin), cout(a, b, cin) のカルノー図を かき,それぞれをできるだけ簡単な積和型の論理式で表せ.
  • 23. 23鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1) 解答例 s a0 a1 m a0 a1 00 01 11 10 s 0 1 1 1 1 1 s a b 00 01 11 10 cin 0 1 1 1 1 1 cout a b 00 01 11 10 cin 0 1 1 1 1 1 (3入力 XOR) (3入力多数決関数) 1. 2. 3.