SlideShare une entreprise Scribd logo
1  sur  23
Télécharger pour lire hors ligne
東北大学 工学部 機械知能・航空工学科
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.

Contenu connexe

Tendances

kagami_comput2015_11
kagami_comput2015_11kagami_comput2015_11
kagami_comput2015_11swkagami
 
kagamicomput201711
kagamicomput201711kagamicomput201711
kagamicomput201711swkagami
 
kagamicomput201712
kagamicomput201712kagamicomput201712
kagamicomput201712swkagami
 
kagamicomput201710
kagamicomput201710kagamicomput201710
kagamicomput201710swkagami
 
kagami_comput2015_8
kagami_comput2015_8kagami_comput2015_8
kagami_comput2015_8swkagami
 
kagami_comput2016_07
kagami_comput2016_07kagami_comput2016_07
kagami_comput2016_07swkagami
 
kagamicomput201709
kagamicomput201709kagamicomput201709
kagamicomput201709swkagami
 
kagamicomput201708
kagamicomput201708kagamicomput201708
kagamicomput201708swkagami
 
kagami_comput2015_12
kagami_comput2015_12kagami_comput2015_12
kagami_comput2015_12swkagami
 
kagami_comput2016_13
kagami_comput2016_13kagami_comput2016_13
kagami_comput2016_13swkagami
 
kagamicomput201808
kagamicomput201808kagamicomput201808
kagamicomput201808swkagami
 
kagami_comput2016_02
kagami_comput2016_02kagami_comput2016_02
kagami_comput2016_02swkagami
 
kagamicomput201809
kagamicomput201809kagamicomput201809
kagamicomput201809swkagami
 
kagami_comput2016_06
kagami_comput2016_06kagami_comput2016_06
kagami_comput2016_06swkagami
 
kagamicomput201704
kagamicomput201704kagamicomput201704
kagamicomput201704swkagami
 
kagami_comput2015_6
kagami_comput2015_6kagami_comput2015_6
kagami_comput2015_6swkagami
 
kagamicomput201706
kagamicomput201706kagamicomput201706
kagamicomput201706swkagami
 
kagamicomput201812
kagamicomput201812kagamicomput201812
kagamicomput201812swkagami
 

Tendances (20)

kagami_comput2015_11
kagami_comput2015_11kagami_comput2015_11
kagami_comput2015_11
 
kagamicomput201711
kagamicomput201711kagamicomput201711
kagamicomput201711
 
kagamicomput201712
kagamicomput201712kagamicomput201712
kagamicomput201712
 
kagamicomput201710
kagamicomput201710kagamicomput201710
kagamicomput201710
 
kagami_comput2015_8
kagami_comput2015_8kagami_comput2015_8
kagami_comput2015_8
 
kagami_comput2016_07
kagami_comput2016_07kagami_comput2016_07
kagami_comput2016_07
 
kagamicomput201709
kagamicomput201709kagamicomput201709
kagamicomput201709
 
kagamicomput201708
kagamicomput201708kagamicomput201708
kagamicomput201708
 
T69 episteme
T69 epistemeT69 episteme
T69 episteme
 
kagami_comput2015_12
kagami_comput2015_12kagami_comput2015_12
kagami_comput2015_12
 
kagami_comput2016_13
kagami_comput2016_13kagami_comput2016_13
kagami_comput2016_13
 
kagamicomput201808
kagamicomput201808kagamicomput201808
kagamicomput201808
 
katayama b
katayama bkatayama b
katayama b
 
kagami_comput2016_02
kagami_comput2016_02kagami_comput2016_02
kagami_comput2016_02
 
kagamicomput201809
kagamicomput201809kagamicomput201809
kagamicomput201809
 
kagami_comput2016_06
kagami_comput2016_06kagami_comput2016_06
kagami_comput2016_06
 
kagamicomput201704
kagamicomput201704kagamicomput201704
kagamicomput201704
 
kagami_comput2015_6
kagami_comput2015_6kagami_comput2015_6
kagami_comput2015_6
 
kagamicomput201706
kagamicomput201706kagamicomput201706
kagamicomput201706
 
kagamicomput201812
kagamicomput201812kagamicomput201812
kagamicomput201812
 

Similaire à kagamicomput201810

kagamicomput201814
kagamicomput201814kagamicomput201814
kagamicomput201814swkagami
 
[Basic 2] 計算機の構成 / プログラム実行の仕組み
[Basic 2] 計算機の構成 / プログラム実行の仕組み[Basic 2] 計算機の構成 / プログラム実行の仕組み
[Basic 2] 計算機の構成 / プログラム実行の仕組みYuto Takei
 
PILCO - 第一回高橋研究室モデルベース強化学習勉強会
PILCO - 第一回高橋研究室モデルベース強化学習勉強会PILCO - 第一回高橋研究室モデルベース強化学習勉強会
PILCO - 第一回高橋研究室モデルベース強化学習勉強会Shunichi Sekiguchi
 
kagamicomput201801
kagamicomput201801kagamicomput201801
kagamicomput201801swkagami
 
第3回システム系輪講会:IPDPS'17 の機械学習系論文
第3回システム系輪講会:IPDPS'17 の機械学習系論文第3回システム系輪講会:IPDPS'17 の機械学習系論文
第3回システム系輪講会:IPDPS'17 の機械学習系論文Junya Arai
 
2015年度GPGPU実践プログラミング 第10回 行列計算(行列-行列積の高度な最適化)
2015年度GPGPU実践プログラミング 第10回 行列計算(行列-行列積の高度な最適化)2015年度GPGPU実践プログラミング 第10回 行列計算(行列-行列積の高度な最適化)
2015年度GPGPU実践プログラミング 第10回 行列計算(行列-行列積の高度な最適化)智啓 出川
 
Get To The Point: Summarization with Pointer-Generator Networks_acl17_論文紹介
Get To The Point: Summarization with Pointer-Generator Networks_acl17_論文紹介Get To The Point: Summarization with Pointer-Generator Networks_acl17_論文紹介
Get To The Point: Summarization with Pointer-Generator Networks_acl17_論文紹介Masayoshi Kondo
 
点群深層学習 Meta-study
点群深層学習 Meta-study点群深層学習 Meta-study
点群深層学習 Meta-studyNaoya Chiba
 
画像局所特徴量と特定物体認識 - SIFTと最近のアプローチ -
画像局所特徴量と特定物体認識 - SIFTと最近のアプローチ -画像局所特徴量と特定物体認識 - SIFTと最近のアプローチ -
画像局所特徴量と特定物体認識 - SIFTと最近のアプローチ -MPRG_Chubu_University
 
第11回 配信講義 計算科学技術特論B(2022)
第11回 配信講義 計算科学技術特論B(2022)第11回 配信講義 計算科学技術特論B(2022)
第11回 配信講義 計算科学技術特論B(2022)RCCSRENKEI
 
kagami_comput2015_1
kagami_comput2015_1kagami_comput2015_1
kagami_comput2015_1swkagami
 
kagami_comput2016_01
kagami_comput2016_01kagami_comput2016_01
kagami_comput2016_01swkagami
 
スパースモデリングによる多次元信号・画像復元
スパースモデリングによる多次元信号・画像復元スパースモデリングによる多次元信号・画像復元
スパースモデリングによる多次元信号・画像復元Shogo Muramatsu
 
kagami_comput2015_2
kagami_comput2015_2kagami_comput2015_2
kagami_comput2015_2swkagami
 
数値計算結果のPythonによる後処理について(1次元データのピーク値およびその位置の推定)
数値計算結果のPythonによる後処理について(1次元データのピーク値およびその位置の推定)数値計算結果のPythonによる後処理について(1次元データのピーク値およびその位置の推定)
数値計算結果のPythonによる後処理について(1次元データのピーク値およびその位置の推定)智啓 出川
 
Deep learning実装の基礎と実践
Deep learning実装の基礎と実践Deep learning実装の基礎と実践
Deep learning実装の基礎と実践Seiya Tokui
 
Hough forestを用いた物体検出
Hough forestを用いた物体検出Hough forestを用いた物体検出
Hough forestを用いた物体検出MPRG_Chubu_University
 
200702material hirokawa
200702material hirokawa200702material hirokawa
200702material hirokawaRCCSRENKEI
 

Similaire à kagamicomput201810 (20)

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

Plus de swkagami

kagamicomput201813
kagamicomput201813kagamicomput201813
kagamicomput201813swkagami
 
kagamicomput201807
kagamicomput201807kagamicomput201807
kagamicomput201807swkagami
 
kagamicomput201806
kagamicomput201806kagamicomput201806
kagamicomput201806swkagami
 
kagamicomput201805
kagamicomput201805kagamicomput201805
kagamicomput201805swkagami
 
kagamicomput201804
kagamicomput201804kagamicomput201804
kagamicomput201804swkagami
 
kagamicomput201803
kagamicomput201803kagamicomput201803
kagamicomput201803swkagami
 
kagamicomput201802
kagamicomput201802kagamicomput201802
kagamicomput201802swkagami
 
kagamicomput201714
kagamicomput201714kagamicomput201714
kagamicomput201714swkagami
 
kagamicomput201713
kagamicomput201713kagamicomput201713
kagamicomput201713swkagami
 
kagamicomput201707
kagamicomput201707kagamicomput201707
kagamicomput201707swkagami
 
kagamicomput201705
kagamicomput201705kagamicomput201705
kagamicomput201705swkagami
 
kagamicomput201703
kagamicomput201703kagamicomput201703
kagamicomput201703swkagami
 
kagamicomput201702
kagamicomput201702kagamicomput201702
kagamicomput201702swkagami
 
kagamicomput201701
kagamicomput201701kagamicomput201701
kagamicomput201701swkagami
 

Plus de swkagami (14)

kagamicomput201813
kagamicomput201813kagamicomput201813
kagamicomput201813
 
kagamicomput201807
kagamicomput201807kagamicomput201807
kagamicomput201807
 
kagamicomput201806
kagamicomput201806kagamicomput201806
kagamicomput201806
 
kagamicomput201805
kagamicomput201805kagamicomput201805
kagamicomput201805
 
kagamicomput201804
kagamicomput201804kagamicomput201804
kagamicomput201804
 
kagamicomput201803
kagamicomput201803kagamicomput201803
kagamicomput201803
 
kagamicomput201802
kagamicomput201802kagamicomput201802
kagamicomput201802
 
kagamicomput201714
kagamicomput201714kagamicomput201714
kagamicomput201714
 
kagamicomput201713
kagamicomput201713kagamicomput201713
kagamicomput201713
 
kagamicomput201707
kagamicomput201707kagamicomput201707
kagamicomput201707
 
kagamicomput201705
kagamicomput201705kagamicomput201705
kagamicomput201705
 
kagamicomput201703
kagamicomput201703kagamicomput201703
kagamicomput201703
 
kagamicomput201702
kagamicomput201702kagamicomput201702
kagamicomput201702
 
kagamicomput201701
kagamicomput201701kagamicomput201701
kagamicomput201701
 

Dernier

デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)UEHARA, Tetsutaro
 
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...博三 太田
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)Hiroshi Tomioka
 
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineerYuki Kikuchi
 
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?akihisamiyanaga1
 
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfクラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfFumieNakayama
 
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案sugiuralab
 
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NTT DATA Technology & Innovation
 
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfAWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfFumieNakayama
 

Dernier (9)

デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
 
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
 
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
 
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
 
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfクラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
 
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
 
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
 
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfAWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
 

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.