SlideShare a Scribd company logo
1 of 21
Download to read offline
東北大学 工学部 機械知能・航空工学科
2017年度 5セメスター・クラスC3 D1 D2 D3
計算機工学
大学院情報科学研究科
鏡 慎吾
http://www.ic.is.tohoku.ac.jp/~swk/lecture/
12. 順序回路の設計と応用
(教科書5章)
2( ): 2017 (12)鏡 慎吾 東北大学 計算機工学
順序回路の設計
• 組合せ論理回路の設計法の分類
• 構造や規則性に着目した手設計(先人の知恵を使う)
• 入力・出力の関係に基づく自動合成(カルノー図など)
• 順序回路の設計法の分類
• 構造や規則性に着目した手設計(前回の各例)
• 入力・出力・状態の関係に基づく自動合成(今回)
3( ): 2017 (12)鏡 慎吾 東北大学 計算機工学
同期式順序回路の入力・出力・状態の関係
x1
x2
xn
y1
y2
ym
q1
q2
qp
組合せ回路
yj(t) = gj(q1(t), q2(t), …, qp(t), x1(t), x2(t), …, xn(t))
j = 1, 2, …, m
qi(t+1) = fi(q1(t), q2(t), …, qp(t), x1(t), x2(t), …, xn(t))
i = 1, 2, …, p
p ビットレジスタ
q1qp q1
next qp
nextq2 q2
next
fi: 状態遷移関数
gi: 出力関数
4( ): 2017 (12)鏡 慎吾 東北大学 計算機工学
有限状態機械
• 取り得る状態の数が有限であるようなシステム
• すべての状態を列挙して,どんな入力のときにどの状態からど
の状態に遷移するのか,そのとき何が出力されるのかを考え
尽くすことができる
• 設計手順
• 入力・出力・状態の関係を状態遷移図で表す
• 入力・出力・状態に2進符号を割り当てる
• 状態遷移表・出力表を作成する
• 論理回路に置き換える(必要ならば簡単化する)
5( ): 2017 (12)鏡 慎吾 東北大学 計算機工学
例1: 自動販売機
• 100円硬貨だけを受け付ける
• 投入金額が300円に達すると品物が出てくる
• 投入済金額を返却するボタンがある(硬貨投入と同時には押せない)
入力: { なし, 100円硬貨, 返却ボタン}
出力: { なし, 品物, 投入金額返却 }
状態: { 0円投入済,100円投入済, 200円投入済 }
6( ): 2017 (12)鏡 慎吾 東北大学 計算機工学
例1: 状態遷移図
0円
投入済
100円
投入済
200円
投入済
100円 / なし 100円 / なし
0円 / なし0円 / なし 0円 / なし
ボタン / なし
ボタン / 返却
ボタン / 返却
100円 / 品物
• 状態を円(ノード)で表す
状態名を記入する
• 状態遷移を矢印(アーク)で表す
入力 / 出力 を付記する
7( ): 2017 (12)鏡 慎吾 東北大学 計算機工学
例: 状態・入力・出力の符号化
入力: { なし, 100円硬貨, 返却ボタン }
00 01 11 = x1 x2
出力: { なし, 品物, 投入金額返却 }
00 01 11 = z1 z2
状態: { 0円投入済,100円投入済, 200円投入済 }
00 01 11 = y1 y2
00 01 11
01 / 00 01 / 00
00 / 0000 / 00 00 / 00
11 / 00
11 / 11
11 / 11
01 / 01
8( ): 2017 (12)鏡 慎吾 東北大学 計算機工学
例1: 状態遷移表・出力表
y1 y2 x1 x2 Y1 Y2 z1 z2
0 0 0 0 0 0 0 0
0 0 0 1 0 1 0 0
0 0 1 0 * * * *
0 0 1 1 0 0 0 0
0 1 0 0 0 1 0 0
0 1 0 1 1 1 0 0
0 1 1 0 * * * *
0 1 1 1 0 0 1 1
1 0 0 0 * * * *
1 0 0 1 * * * *
1 0 1 0 * * * *
1 0 1 1 * * * *
1 1 0 0 1 1 0 0
1 1 0 1 0 0 0 1
1 1 1 0 * * * *
1 1 1 1 0 0 1 1
入力×状態
→ 状態遷移先
の表を状態遷移表,
入力×状態
→ 出力
の表を出力表と呼ぶ.
両方合わせて状態
遷移表と呼ぶことも
多い.
次時刻の状態
9( ): 2017 (12)鏡 慎吾 東北大学 計算機工学
例1: カルノー図による簡単化
Y1
x1 x2
00 01 11 10
y1y2 00 0 0 0 *
01 0 1 0 *
11 1 0 0 *
10 * * * *
Y2
x1 x2
00 01 11 10
y1y2 00 0 1 0 *
01 1 1 0 *
11 1 0 0 *
10 * * * *
z1
x1 x2
00 01 11 10
y1y2 00 0 0 0 *
01 0 0 1 *
11 0 0 1 *
10 * * * *
z2
x1 x2
00 01 11 10
y1y2 00 0 0 0 *
01 0 0 1 *
11 0 1 1 *
10 * * * *
10( ): 2017 (12)鏡 慎吾 東北大学 計算機工学
例1: 回路図
DQ
DQ
y2y1 Y1 Y2
x2x1
z2
z1
11( ): 2017 (12)鏡 慎吾 東北大学 計算機工学
復習: MIPSの構造
メモリ
32ビットALU
32x32ビット
レジスタ
PC
命令デコーダ
アドレス(32ビット)
データ(8, 16, 32ビット)
次PC計算
制御回路
mux
mux
演算選択
レ
ジ
ス
タ
選
択
12( ): 2017 (12)鏡 慎吾 東北大学 計算機工学
例2: 簡易版MIPSの制御回路(付録E章)
ALU
PC
命令
デコーダ
制御回路
汎用
レジスタ
w_en
rs
rt
rw
s
t
w
+4
命令メモリ
addr
inst
en
GPRenPCen
IF ID EX
op
nPC
offset
分岐先計算
分岐
判定
0
1
is_branch
13( ): 2017 (12)鏡 慎吾 東北大学 計算機工学
例2: 定義
演算命令と分岐命令だけの簡略版MIPSの制御回路を設計する
入力: 命令デコードの結果生成される is_branch 信号
(分岐命令なら1,演算命令なら0)
出力: イネーブル信号 PCen, GPRen
状態:
• IF (Instruction Fetch): 命令読出し,後続命令アドレス計算
• ID (Instruction Decode): 命令デコード,レジスタ読出,分岐判定
• EX (EXecution): 演算実行,レジスタ書き込み
14( ): 2017 (12)鏡 慎吾 東北大学 計算機工学
例2: 状態遷移図
IF ID EX
is_branch = *
/ (PCen, GPRen)
= (0, 0)
is_branch = 1
/ (PCen, GPRen) = (1, 0)
is_branch = *
/ (PCen, GPRen) = (1, 1)
is_branch = 0
/ (PCen, GPRen)
= (0, 0)
「入力 = *」は,入力が1の場合も0の場合も出力・遷移先状態が同じことを表
すとする
15( ): 2017 (12)鏡 慎吾 東北大学 計算機工学
例2: 状態遷移表・出力表
Q1 Q0 is_branch Q1' Q0' PCen GPRen
0 0 0 0 1 0 0
0 0 1 0 1 0 0
0 1 0 1 0 0 0
0 1 1 0 0 1 0
1 0 0 0 0 1 1
1 0 1 0 0 1 1
1 1 0 * * * *
1 1 1 * * * *
符号割り当て:
IF: Q1Q0 = 00
ID: Q1Q0 = 01
EX: Q1Q0 = 10
16( ): 2017 (12)鏡 慎吾 東北大学 計算機工学
例2: カルノー図による簡単化
Q1' Q1 Q0
00 01 11 10
is_branch 0 0 1 * 0
1 0 0 * 0
Q0' Q1 Q0
00 01 11 10
is_branch 0 1 0 * 0
1 1 0 * 0
PCen Q1 Q0
00 01 11 10
is_branch 0 0 0 * 1
1 0 1 * 1
GPRen Q1 Q0
00 01 11 10
is_branch 0 0 0 * 1
1 0 0 * 1
17( ): 2017 (12)鏡 慎吾 東北大学 計算機工学
例題 (おまけ)
ある人が狼,羊,牧草とともに旅をしていたところ,川にさしかかった.小さな舟
を漕いで渡るしかない.舟には,漕ぎ手である人のほか,狼,羊,牧草のいず
れか高々1つしか乗せるスペースがない.ただし,人がいないと狼は羊を食べ
てしまい,また羊は牧草を食べてしまう.人,狼,羊,牧草すべて無事に川を渡
るにはどうすればよいか.
(1) こちらの岸と向こう岸に存在し得る人,狼,羊,牧草の組合せを列挙せよ.
これが有限状態機械の状態となる.(渡っている途中の状況は,状態とし
なくてよい.理由を考えよ)
(2) 状態遷移図を作成せよ.ただし入力,出力を考える必要はない.状態に2
進符号を割り当てる必要もない.(ある状態からはどの状態に遷移し得る
かのみを考慮する)
(3) 状態遷移図をもとに,最短で向こう岸に渡るための手順を示せ.答えは一
つとは限らない.(ヒント: 初期状態から順に,あるいは最終状態から逆に
たどるとよい.あるいは状態遷移図を整理しながら考えてもよい)
18( ): 2017 (12)鏡 慎吾 東北大学 計算機工学
例題(おまけ) 解答例
状態 こちら岸 向こう岸
A 人狼羊草 – φ
(B 狼羊草 - 人)
C 人羊草 - 狼
D 人狼草 - 羊
E 人狼羊 - 草
(F 羊草 - 人狼)
G 狼草 - 人羊
(H 狼羊 - 人草)
(I 人草 - 狼羊)
J 人羊 - 狼草
(K 人狼 - 羊草)
(L 人 - 狼羊草)
M 狼 - 人羊草
N 羊 - 人狼草
O 草 - 人狼羊
P φ - 人狼羊草
A
G
J
N
P
D
M O
E C
最短経路は二つ
19( ): 2017 (12)鏡 慎吾 東北大学 計算機工学
参考
• 今回学んだ Mealy 型の有限状態機械のほかに,出力が状
態にだけ依存する(入力に直接依存しない) Moore 型の有
限状態機械がある.
• Moore 型も Mealy 型も表現能力は同じである.ただし,
Moore 型は入力が出力に反映されるのに1時刻以上か
かる.
• 入力が出力に直接影響するのが好ましくない場合は
Moore 型で設計する必要がある.
• 今回は,状態遷移図から安直に回路を生成した,実際は
• より状態数の少ない有限状態機械で表せるかも知れない
• 符号の割り当て方によって,回路がもっと簡単になるかも
知れない
などといったことも考える必要がある.
20( ): 2017 (12)鏡 慎吾 東北大学 計算機工学
練習問題
論理値の系列(例えば 0100110101...) を入力として受け取って,
「0011」という系列が現れたとき初めて1を出力し,それ以外では0
を出力する順序回路を設計せよ.
入力を x,状態を y1y2 (次時刻の状態を Y1Y2),出力を z とする.
00 01 10 11
21( ): 2017 (12)鏡 慎吾 東北大学 計算機工学
解答例
Y2
Y1

More Related Content

What's hot (20)

kagami_comput2016_07
kagami_comput2016_07kagami_comput2016_07
kagami_comput2016_07
 
kagami_comput2015_8
kagami_comput2015_8kagami_comput2015_8
kagami_comput2015_8
 
kagami_comput2016_14
kagami_comput2016_14kagami_comput2016_14
kagami_comput2016_14
 
kagamicomput201706
kagamicomput201706kagamicomput201706
kagamicomput201706
 
kagamicomput201704
kagamicomput201704kagamicomput201704
kagamicomput201704
 
kagamicomput201710
kagamicomput201710kagamicomput201710
kagamicomput201710
 
kagamicomput201809
kagamicomput201809kagamicomput201809
kagamicomput201809
 
kagamicomput201707
kagamicomput201707kagamicomput201707
kagamicomput201707
 
kagami_comput2016_02
kagami_comput2016_02kagami_comput2016_02
kagami_comput2016_02
 
OpenGLと行列
OpenGLと行列OpenGLと行列
OpenGLと行列
 
kagami_comput2015_6
kagami_comput2015_6kagami_comput2015_6
kagami_comput2015_6
 
kagami_comput2016_06
kagami_comput2016_06kagami_comput2016_06
kagami_comput2016_06
 
Za atsu-20170328
Za atsu-20170328Za atsu-20170328
Za atsu-20170328
 
kagami_comput2015_11
kagami_comput2015_11kagami_comput2015_11
kagami_comput2015_11
 
積分要素の応答性(MATLAB)
積分要素の応答性(MATLAB)積分要素の応答性(MATLAB)
積分要素の応答性(MATLAB)
 
kagami_comput2016_03
kagami_comput2016_03kagami_comput2016_03
kagami_comput2016_03
 
Binary indexed tree
Binary indexed treeBinary indexed tree
Binary indexed tree
 
Quantum computer adder
Quantum computer adderQuantum computer adder
Quantum computer adder
 
kagamicomput201811
kagamicomput201811kagamicomput201811
kagamicomput201811
 
CG2013 06
CG2013 06CG2013 06
CG2013 06
 

Similar to kagamicomput201712

kagami_comput2015_12
kagami_comput2015_12kagami_comput2015_12
kagami_comput2015_12swkagami
 
kagamicomput201812
kagamicomput201812kagamicomput201812
kagamicomput201812swkagami
 
20200605 oki lecture4
20200605 oki lecture420200605 oki lecture4
20200605 oki lecture4Takuya Oki
 
スパースモデリングによる多次元信号・画像復元
スパースモデリングによる多次元信号・画像復元スパースモデリングによる多次元信号・画像復元
スパースモデリングによる多次元信号・画像復元Shogo Muramatsu
 
kagamicomput201810
kagamicomput201810kagamicomput201810
kagamicomput201810swkagami
 
20200605 oki lecture3
20200605 oki lecture320200605 oki lecture3
20200605 oki lecture3Takuya Oki
 
kagami_comput2015_10
kagami_comput2015_10kagami_comput2015_10
kagami_comput2015_10swkagami
 
有機ソフトクリスタルの弾性・光応答機構の解明
有機ソフトクリスタルの弾性・光応答機構の解明有機ソフトクリスタルの弾性・光応答機構の解明
有機ソフトクリスタルの弾性・光応答機構の解明Michio Katouda
 
有機ソフトクリスタルの弾性・光応答機構の解明
有機ソフトクリスタルの弾性・光応答機構の解明有機ソフトクリスタルの弾性・光応答機構の解明
有機ソフトクリスタルの弾性・光応答機構の解明Michio Katouda
 
2022年度秋学期 応用数学(解析) 第13回 複素関数論ダイジェスト(2) 孤立特異点と留数 (2022. 12. 22)
2022年度秋学期 応用数学(解析) 第13回 複素関数論ダイジェスト(2) 孤立特異点と留数 (2022. 12. 22) 2022年度秋学期 応用数学(解析) 第13回 複素関数論ダイジェスト(2) 孤立特異点と留数 (2022. 12. 22)
2022年度秋学期 応用数学(解析) 第13回 複素関数論ダイジェスト(2) 孤立特異点と留数 (2022. 12. 22) Akira Asano
 
Kantocv 2-1-calibration publish
Kantocv 2-1-calibration publishKantocv 2-1-calibration publish
Kantocv 2-1-calibration publishtomoaki0705
 
[Basic 2] 計算機の構成 / プログラム実行の仕組み
[Basic 2] 計算機の構成 / プログラム実行の仕組み[Basic 2] 計算機の構成 / プログラム実行の仕組み
[Basic 2] 計算機の構成 / プログラム実行の仕組みYuto Takei
 

Similar to kagamicomput201712 (13)

kagami_comput2015_12
kagami_comput2015_12kagami_comput2015_12
kagami_comput2015_12
 
kagamicomput201812
kagamicomput201812kagamicomput201812
kagamicomput201812
 
20200605 oki lecture4
20200605 oki lecture420200605 oki lecture4
20200605 oki lecture4
 
スパースモデリングによる多次元信号・画像復元
スパースモデリングによる多次元信号・画像復元スパースモデリングによる多次元信号・画像復元
スパースモデリングによる多次元信号・画像復元
 
kagamicomput201810
kagamicomput201810kagamicomput201810
kagamicomput201810
 
20200605 oki lecture3
20200605 oki lecture320200605 oki lecture3
20200605 oki lecture3
 
kagami_comput2015_10
kagami_comput2015_10kagami_comput2015_10
kagami_comput2015_10
 
有機ソフトクリスタルの弾性・光応答機構の解明
有機ソフトクリスタルの弾性・光応答機構の解明有機ソフトクリスタルの弾性・光応答機構の解明
有機ソフトクリスタルの弾性・光応答機構の解明
 
有機ソフトクリスタルの弾性・光応答機構の解明
有機ソフトクリスタルの弾性・光応答機構の解明有機ソフトクリスタルの弾性・光応答機構の解明
有機ソフトクリスタルの弾性・光応答機構の解明
 
論理回路2017 no.6
論理回路2017 no.6論理回路2017 no.6
論理回路2017 no.6
 
2022年度秋学期 応用数学(解析) 第13回 複素関数論ダイジェスト(2) 孤立特異点と留数 (2022. 12. 22)
2022年度秋学期 応用数学(解析) 第13回 複素関数論ダイジェスト(2) 孤立特異点と留数 (2022. 12. 22) 2022年度秋学期 応用数学(解析) 第13回 複素関数論ダイジェスト(2) 孤立特異点と留数 (2022. 12. 22)
2022年度秋学期 応用数学(解析) 第13回 複素関数論ダイジェスト(2) 孤立特異点と留数 (2022. 12. 22)
 
Kantocv 2-1-calibration publish
Kantocv 2-1-calibration publishKantocv 2-1-calibration publish
Kantocv 2-1-calibration publish
 
[Basic 2] 計算機の構成 / プログラム実行の仕組み
[Basic 2] 計算機の構成 / プログラム実行の仕組み[Basic 2] 計算機の構成 / プログラム実行の仕組み
[Basic 2] 計算機の構成 / プログラム実行の仕組み
 

More from swkagami

kagamicomput201814
kagamicomput201814kagamicomput201814
kagamicomput201814swkagami
 
kagamicomput201813
kagamicomput201813kagamicomput201813
kagamicomput201813swkagami
 
kagamicomput201808
kagamicomput201808kagamicomput201808
kagamicomput201808swkagami
 
kagamicomput201807
kagamicomput201807kagamicomput201807
kagamicomput201807swkagami
 
kagamicomput201806
kagamicomput201806kagamicomput201806
kagamicomput201806swkagami
 
kagamicomput201805
kagamicomput201805kagamicomput201805
kagamicomput201805swkagami
 
kagamicomput201804
kagamicomput201804kagamicomput201804
kagamicomput201804swkagami
 
kagamicomput201803
kagamicomput201803kagamicomput201803
kagamicomput201803swkagami
 
kagamicomput201802
kagamicomput201802kagamicomput201802
kagamicomput201802swkagami
 
kagamicomput201801
kagamicomput201801kagamicomput201801
kagamicomput201801swkagami
 
kagamicomput201714
kagamicomput201714kagamicomput201714
kagamicomput201714swkagami
 
kagamicomput201713
kagamicomput201713kagamicomput201713
kagamicomput201713swkagami
 
kagamicomput201705
kagamicomput201705kagamicomput201705
kagamicomput201705swkagami
 
kagamicomput201703
kagamicomput201703kagamicomput201703
kagamicomput201703swkagami
 
kagamicomput201702
kagamicomput201702kagamicomput201702
kagamicomput201702swkagami
 
kagamicomput201701
kagamicomput201701kagamicomput201701
kagamicomput201701swkagami
 
kagami_comput2016_13
kagami_comput2016_13kagami_comput2016_13
kagami_comput2016_13swkagami
 

More from swkagami (17)

kagamicomput201814
kagamicomput201814kagamicomput201814
kagamicomput201814
 
kagamicomput201813
kagamicomput201813kagamicomput201813
kagamicomput201813
 
kagamicomput201808
kagamicomput201808kagamicomput201808
kagamicomput201808
 
kagamicomput201807
kagamicomput201807kagamicomput201807
kagamicomput201807
 
kagamicomput201806
kagamicomput201806kagamicomput201806
kagamicomput201806
 
kagamicomput201805
kagamicomput201805kagamicomput201805
kagamicomput201805
 
kagamicomput201804
kagamicomput201804kagamicomput201804
kagamicomput201804
 
kagamicomput201803
kagamicomput201803kagamicomput201803
kagamicomput201803
 
kagamicomput201802
kagamicomput201802kagamicomput201802
kagamicomput201802
 
kagamicomput201801
kagamicomput201801kagamicomput201801
kagamicomput201801
 
kagamicomput201714
kagamicomput201714kagamicomput201714
kagamicomput201714
 
kagamicomput201713
kagamicomput201713kagamicomput201713
kagamicomput201713
 
kagamicomput201705
kagamicomput201705kagamicomput201705
kagamicomput201705
 
kagamicomput201703
kagamicomput201703kagamicomput201703
kagamicomput201703
 
kagamicomput201702
kagamicomput201702kagamicomput201702
kagamicomput201702
 
kagamicomput201701
kagamicomput201701kagamicomput201701
kagamicomput201701
 
kagami_comput2016_13
kagami_comput2016_13kagami_comput2016_13
kagami_comput2016_13
 

Recently uploaded

論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...Toru Tamaki
 
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Yuma Ohgami
 
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineerYuki Kikuchi
 
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~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...博三 太田
 
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdfTSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdftaisei2219
 
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfクラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfFumieNakayama
 
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfAWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfFumieNakayama
 
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)UEHARA, Tetsutaro
 
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)Hiroki Ichikura
 
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する       2024/04/19 の勉強会で発表されたものですSOPを理解する       2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものですiPride Co., Ltd.
 
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A surveyToru Tamaki
 
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案sugiuralab
 
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?akihisamiyanaga1
 
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNetToru Tamaki
 

Recently uploaded (14)

論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
 
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
 
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
 
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~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...
 
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdfTSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdf
 
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfクラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
 
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfAWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
 
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
 
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
 
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する       2024/04/19 の勉強会で発表されたものですSOPを理解する       2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものです
 
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey
 
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
 
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
 
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet
 

kagamicomput201712

  • 1. 東北大学 工学部 機械知能・航空工学科 2017年度 5セメスター・クラスC3 D1 D2 D3 計算機工学 大学院情報科学研究科 鏡 慎吾 http://www.ic.is.tohoku.ac.jp/~swk/lecture/ 12. 順序回路の設計と応用 (教科書5章)
  • 2. 2( ): 2017 (12)鏡 慎吾 東北大学 計算機工学 順序回路の設計 • 組合せ論理回路の設計法の分類 • 構造や規則性に着目した手設計(先人の知恵を使う) • 入力・出力の関係に基づく自動合成(カルノー図など) • 順序回路の設計法の分類 • 構造や規則性に着目した手設計(前回の各例) • 入力・出力・状態の関係に基づく自動合成(今回)
  • 3. 3( ): 2017 (12)鏡 慎吾 東北大学 計算機工学 同期式順序回路の入力・出力・状態の関係 x1 x2 xn y1 y2 ym q1 q2 qp 組合せ回路 yj(t) = gj(q1(t), q2(t), …, qp(t), x1(t), x2(t), …, xn(t)) j = 1, 2, …, m qi(t+1) = fi(q1(t), q2(t), …, qp(t), x1(t), x2(t), …, xn(t)) i = 1, 2, …, p p ビットレジスタ q1qp q1 next qp nextq2 q2 next fi: 状態遷移関数 gi: 出力関数
  • 4. 4( ): 2017 (12)鏡 慎吾 東北大学 計算機工学 有限状態機械 • 取り得る状態の数が有限であるようなシステム • すべての状態を列挙して,どんな入力のときにどの状態からど の状態に遷移するのか,そのとき何が出力されるのかを考え 尽くすことができる • 設計手順 • 入力・出力・状態の関係を状態遷移図で表す • 入力・出力・状態に2進符号を割り当てる • 状態遷移表・出力表を作成する • 論理回路に置き換える(必要ならば簡単化する)
  • 5. 5( ): 2017 (12)鏡 慎吾 東北大学 計算機工学 例1: 自動販売機 • 100円硬貨だけを受け付ける • 投入金額が300円に達すると品物が出てくる • 投入済金額を返却するボタンがある(硬貨投入と同時には押せない) 入力: { なし, 100円硬貨, 返却ボタン} 出力: { なし, 品物, 投入金額返却 } 状態: { 0円投入済,100円投入済, 200円投入済 }
  • 6. 6( ): 2017 (12)鏡 慎吾 東北大学 計算機工学 例1: 状態遷移図 0円 投入済 100円 投入済 200円 投入済 100円 / なし 100円 / なし 0円 / なし0円 / なし 0円 / なし ボタン / なし ボタン / 返却 ボタン / 返却 100円 / 品物 • 状態を円(ノード)で表す 状態名を記入する • 状態遷移を矢印(アーク)で表す 入力 / 出力 を付記する
  • 7. 7( ): 2017 (12)鏡 慎吾 東北大学 計算機工学 例: 状態・入力・出力の符号化 入力: { なし, 100円硬貨, 返却ボタン } 00 01 11 = x1 x2 出力: { なし, 品物, 投入金額返却 } 00 01 11 = z1 z2 状態: { 0円投入済,100円投入済, 200円投入済 } 00 01 11 = y1 y2 00 01 11 01 / 00 01 / 00 00 / 0000 / 00 00 / 00 11 / 00 11 / 11 11 / 11 01 / 01
  • 8. 8( ): 2017 (12)鏡 慎吾 東北大学 計算機工学 例1: 状態遷移表・出力表 y1 y2 x1 x2 Y1 Y2 z1 z2 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 0 0 0 1 0 * * * * 0 0 1 1 0 0 0 0 0 1 0 0 0 1 0 0 0 1 0 1 1 1 0 0 0 1 1 0 * * * * 0 1 1 1 0 0 1 1 1 0 0 0 * * * * 1 0 0 1 * * * * 1 0 1 0 * * * * 1 0 1 1 * * * * 1 1 0 0 1 1 0 0 1 1 0 1 0 0 0 1 1 1 1 0 * * * * 1 1 1 1 0 0 1 1 入力×状態 → 状態遷移先 の表を状態遷移表, 入力×状態 → 出力 の表を出力表と呼ぶ. 両方合わせて状態 遷移表と呼ぶことも 多い. 次時刻の状態
  • 9. 9( ): 2017 (12)鏡 慎吾 東北大学 計算機工学 例1: カルノー図による簡単化 Y1 x1 x2 00 01 11 10 y1y2 00 0 0 0 * 01 0 1 0 * 11 1 0 0 * 10 * * * * Y2 x1 x2 00 01 11 10 y1y2 00 0 1 0 * 01 1 1 0 * 11 1 0 0 * 10 * * * * z1 x1 x2 00 01 11 10 y1y2 00 0 0 0 * 01 0 0 1 * 11 0 0 1 * 10 * * * * z2 x1 x2 00 01 11 10 y1y2 00 0 0 0 * 01 0 0 1 * 11 0 1 1 * 10 * * * *
  • 10. 10( ): 2017 (12)鏡 慎吾 東北大学 計算機工学 例1: 回路図 DQ DQ y2y1 Y1 Y2 x2x1 z2 z1
  • 11. 11( ): 2017 (12)鏡 慎吾 東北大学 計算機工学 復習: MIPSの構造 メモリ 32ビットALU 32x32ビット レジスタ PC 命令デコーダ アドレス(32ビット) データ(8, 16, 32ビット) 次PC計算 制御回路 mux mux 演算選択 レ ジ ス タ 選 択
  • 12. 12( ): 2017 (12)鏡 慎吾 東北大学 計算機工学 例2: 簡易版MIPSの制御回路(付録E章) ALU PC 命令 デコーダ 制御回路 汎用 レジスタ w_en rs rt rw s t w +4 命令メモリ addr inst en GPRenPCen IF ID EX op nPC offset 分岐先計算 分岐 判定 0 1 is_branch
  • 13. 13( ): 2017 (12)鏡 慎吾 東北大学 計算機工学 例2: 定義 演算命令と分岐命令だけの簡略版MIPSの制御回路を設計する 入力: 命令デコードの結果生成される is_branch 信号 (分岐命令なら1,演算命令なら0) 出力: イネーブル信号 PCen, GPRen 状態: • IF (Instruction Fetch): 命令読出し,後続命令アドレス計算 • ID (Instruction Decode): 命令デコード,レジスタ読出,分岐判定 • EX (EXecution): 演算実行,レジスタ書き込み
  • 14. 14( ): 2017 (12)鏡 慎吾 東北大学 計算機工学 例2: 状態遷移図 IF ID EX is_branch = * / (PCen, GPRen) = (0, 0) is_branch = 1 / (PCen, GPRen) = (1, 0) is_branch = * / (PCen, GPRen) = (1, 1) is_branch = 0 / (PCen, GPRen) = (0, 0) 「入力 = *」は,入力が1の場合も0の場合も出力・遷移先状態が同じことを表 すとする
  • 15. 15( ): 2017 (12)鏡 慎吾 東北大学 計算機工学 例2: 状態遷移表・出力表 Q1 Q0 is_branch Q1' Q0' PCen GPRen 0 0 0 0 1 0 0 0 0 1 0 1 0 0 0 1 0 1 0 0 0 0 1 1 0 0 1 0 1 0 0 0 0 1 1 1 0 1 0 0 1 1 1 1 0 * * * * 1 1 1 * * * * 符号割り当て: IF: Q1Q0 = 00 ID: Q1Q0 = 01 EX: Q1Q0 = 10
  • 16. 16( ): 2017 (12)鏡 慎吾 東北大学 計算機工学 例2: カルノー図による簡単化 Q1' Q1 Q0 00 01 11 10 is_branch 0 0 1 * 0 1 0 0 * 0 Q0' Q1 Q0 00 01 11 10 is_branch 0 1 0 * 0 1 1 0 * 0 PCen Q1 Q0 00 01 11 10 is_branch 0 0 0 * 1 1 0 1 * 1 GPRen Q1 Q0 00 01 11 10 is_branch 0 0 0 * 1 1 0 0 * 1
  • 17. 17( ): 2017 (12)鏡 慎吾 東北大学 計算機工学 例題 (おまけ) ある人が狼,羊,牧草とともに旅をしていたところ,川にさしかかった.小さな舟 を漕いで渡るしかない.舟には,漕ぎ手である人のほか,狼,羊,牧草のいず れか高々1つしか乗せるスペースがない.ただし,人がいないと狼は羊を食べ てしまい,また羊は牧草を食べてしまう.人,狼,羊,牧草すべて無事に川を渡 るにはどうすればよいか. (1) こちらの岸と向こう岸に存在し得る人,狼,羊,牧草の組合せを列挙せよ. これが有限状態機械の状態となる.(渡っている途中の状況は,状態とし なくてよい.理由を考えよ) (2) 状態遷移図を作成せよ.ただし入力,出力を考える必要はない.状態に2 進符号を割り当てる必要もない.(ある状態からはどの状態に遷移し得る かのみを考慮する) (3) 状態遷移図をもとに,最短で向こう岸に渡るための手順を示せ.答えは一 つとは限らない.(ヒント: 初期状態から順に,あるいは最終状態から逆に たどるとよい.あるいは状態遷移図を整理しながら考えてもよい)
  • 18. 18( ): 2017 (12)鏡 慎吾 東北大学 計算機工学 例題(おまけ) 解答例 状態 こちら岸 向こう岸 A 人狼羊草 – φ (B 狼羊草 - 人) C 人羊草 - 狼 D 人狼草 - 羊 E 人狼羊 - 草 (F 羊草 - 人狼) G 狼草 - 人羊 (H 狼羊 - 人草) (I 人草 - 狼羊) J 人羊 - 狼草 (K 人狼 - 羊草) (L 人 - 狼羊草) M 狼 - 人羊草 N 羊 - 人狼草 O 草 - 人狼羊 P φ - 人狼羊草 A G J N P D M O E C 最短経路は二つ
  • 19. 19( ): 2017 (12)鏡 慎吾 東北大学 計算機工学 参考 • 今回学んだ Mealy 型の有限状態機械のほかに,出力が状 態にだけ依存する(入力に直接依存しない) Moore 型の有 限状態機械がある. • Moore 型も Mealy 型も表現能力は同じである.ただし, Moore 型は入力が出力に反映されるのに1時刻以上か かる. • 入力が出力に直接影響するのが好ましくない場合は Moore 型で設計する必要がある. • 今回は,状態遷移図から安直に回路を生成した,実際は • より状態数の少ない有限状態機械で表せるかも知れない • 符号の割り当て方によって,回路がもっと簡単になるかも 知れない などといったことも考える必要がある.
  • 20. 20( ): 2017 (12)鏡 慎吾 東北大学 計算機工学 練習問題 論理値の系列(例えば 0100110101...) を入力として受け取って, 「0011」という系列が現れたとき初めて1を出力し,それ以外では0 を出力する順序回路を設計せよ. 入力を x,状態を y1y2 (次時刻の状態を Y1Y2),出力を z とする. 00 01 10 11
  • 21. 21( ): 2017 (12)鏡 慎吾 東北大学 計算機工学 解答例 Y2 Y1