SlideShare una empresa de Scribd logo
1 de 27
Descargar para leer sin conexión
東北大学 工学部 機械知能・航空工学科
2018年度 クラスC3 D1 D2 D3
情報科学基礎 I
大学院情報科学研究科
鏡 慎吾
http://www.ic.is.tohoku.ac.jp/~swk/lecture/
11. 順序回路の基礎
(教科書4章)
2鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1)
組合せ回路と順序回路
x1
x2
xn
y1
y2
ym
順序回路
状態 s1, s2, …, sp
順序回路: 出力は,現在までにどんな入力がどんな順序で与えら
れたかによって決まる
回路内に内部状態(記憶)が必要
組合せ回路
x1
x2
xn
y1
y2
ym
組合せ回路: 出力は,その時点の入力の組合せのみで決まる
3鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1)
復習: MIPSの構造
メモリ
32ビットALU
32x32ビット
レジスタ
PC
命令デコーダ
アドレス(32ビット)
データ(8, 16, 32ビット)
次PC計算
制御回路
mux
mux
演算選択
レ
ジ
ス
タ
選
択
• 記憶素子を含む回路はすべて順序回路
• 全体も大きな順序回路と言える
4鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1)
記憶の原理
high low highlow
2つの安定な物理状態を持つ系は,
1ビットの情報を記憶することができる
0 1
問題は,どのように状態を変化させるか
5鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1)
SR (Set-Reset) フリップフロップ (FF)
Q
Q S
RQ
Q
• NOT ゲートの代わりに NOR ゲートを使うと,入力 S, R を 1 に
することで信号のループを断ち切って Q を変えることができる
S R Q
0 0 保持
0 1 0
1 0 1
1 1 未定義 (この回路の場合は Q も Q も 1 になってしまう)
Q
Q
S
R
問題点: • S = R = 1 は入力禁止
• 非同期動作
=
6鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1)
非同期式順序回路
• 順序回路: 記憶回路と組合せ回路のネットワーク
• 非同期式: 状態変化がいつでも起き得る
→ 設計・動作保証が困難
記憶回路
組合せ回路
順序回路
A
B
C
D
7鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1)
同期式順序回路
A
B
C
D
クロック信号
• ある決まった瞬間にしか状態変化が起きないよう制限する
• 「ある決まった瞬間」はクロック信号により周期的に与える
(典型的には,周期的パルス信号の立ち上がり時刻)
8鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1)
同期式順序回路のタイミングチャート
クロック周期 [s] クロック周波数 (クロックレート)
= 1 / クロック周期 [Hz]
クロック信号
点線が
「ある決まった瞬間」
斜めは「状態変化の最中」
t
タイミングチャート: 横軸を時間,縦軸を信号レベルとしたグラフ
クロック周期は,状態変化にかかる時間より十分長く取る
状態 si
9鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1)
クロック入力付きFF
Q
Q
S
R
S
R
clk
Q
Q
S
R
D
clk
SRフリップフロップ (SRラッチ)
Dフリップフロップ (Dラッチ)
Q
Q
D
clk
Q
Q
S
R
clk=
=
• clk が 1 の間だけ状態変化が許される
• 入力信号が3本もあるのは冗長
• clk が 1 ののとき,入力 D を記憶する
• D は Delay または Data の意とされる
10鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1)
D-FF(Dラッチ)の動作
問題点: • クロック信号が1の間は,入力は出力に筒抜け
• クロック信号が 1 から 0 に遷移するときに状態確定
• 同期式回路に使おうとすると,「クロック信号が1の間」
の長さは,
• 長すぎてもダメ: 状態変化の結果が入力に影響してしまう
• 短すぎてもダメ: FF自体の動作が間に合わない
D
clk
Q
1
0
不定
入力
状態
例えば clk が(あまり「クロック」っぽくないが)以下のように動いたとすると
11鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1)
エッジトリガ FF
D Q
clk
• クロック信号の立上りの瞬間(直前)の値を
記憶する
• その瞬間以外に状態変化が起きることはな
く,信号が筒抜けになることもない
• エッジトリガ型と呼ぶ
• 対して,クロックが 1 か 0 かに応じて動作が変
わるものをレベルセンシティブ型と呼ぶ
D
Q
clk
入力
状態
山型はエッジトリガ入力の記号
Q
12鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1)
エッジトリガ D-FFの構成例 (マスタースレーブ型)
D Q
clk
Q
D Q
clk
Q
clk clk
D Q
後段のラッチは前の値を保持.
前段のラッチは開き,次に保持すること
になる情報を後段に素通しにしている
クロックが立ち上がると,前段のラッ
チが閉じてその瞬間の値を記憶し,
後段のラッチは開いて素通しになる
clk = 1 のとき:clk = 0 のとき:
Q
筒抜け 保持 筒抜け保持
13鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1)
非同期 レベルセンシティブクロック入力 エッジトリガクロック入力
SR
S Q
clk Q
D Q
clk Q
R
T Q
clk Q
J Q
clk QK
S Q
clk
Q
D Q
clk
Q
R
T Q
clk
Q
J Q
clk
QK
S Q
QR
T Q
Q
J Q
QK
D
T
JK
赤枠: この資料,青枠: 教科書
14鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1)
いろいろなフリップフロップと関連用語
• 前ページのものをすべてフリップフロップと呼ぶ流儀と,エッジ
トリガのものだけフリップフロップと呼び,非同期あるいはレベ
ルセンシティブなものはラッチと呼ぶ流儀がある
• 特定の構成方法のもののみをエッジトリガ型と呼び,マスター
スレーブ型とは区別する流儀もある
• レベルセンシティブクロック入力をクロックとは呼ばず,イネー
ブル信号と呼ぶ流儀もある
• T-FF は,入力 T が 1 になると Q が反転する (Toggle)
• JK-FF は, 両入力が 1 のときに Q が反転するように SR-FF
を改良したもの (J と K の由来は不明)
コンピュータの理解には,エッジトリガ型 D-FF だけでほぼOK.
以降,D-FF といったらこれを指す
15鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1)
イネーブルつきD-FF
D Q
en
clk
D Q
clk
en
1
0
clk
D
en
Q
• 毎クロック必ず記憶するのが便利とは限らない
• en = 1 であるようなクロック立上り時にだけ入力を記憶する
(あるクロック立上りで記憶するかどうかがその瞬間の en で決まる)
D Q
16鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1)
立上り・立下り時間を無視して描かれたチャートの解釈
clk
D
en
Q
• 上図のように描かれた場合「クロック立上りの瞬間の D や en
の値」はどこを見ればよいのか?
→ クロック立上りの直前を見る
• D も en も同じ clk に同期した回路から生成されていると考える(完全同
期式回路).したがって D や en の変化は clk の立上りに先立って起き
ることはない
17鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1)
レジスタ
D-FFを n 個並べる → n ビットレジスタ
clk
D
Q
clk
15 153 27 9
en
153 27
D Q
en
D Q
en
D Q
en
D Q
en
clk
en
D Q
X
複数ビットをまとめて
このように描く
不定をこのように描いて
済ますこともある
18鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1)
例: 同期2進カウンタ
+1
8-bit レジスタ
0
0 1 reset
clk
reset
count
count
1 2 30
クロックの立上りの瞬間に en が1だった回数を数える
clk en
en
X
19鏡 慎吾 (東北大学): 情報科学基礎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
20鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1)
例: シフトレジスタ
en
en
en
en
en
in out
FIFO (first-in first-out) の記憶回路(queue)として用いられる
21鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1)
レジスタ間遅延とクリティカルパス
A
B
C
D
A → B: 8 ns
B → B: 5 ns
B → C: 2.5 ns
B → D: 7 ns
D → B: 12.5 ns
クリティカルパスの遅延で
全体のクロック周波数の上限が決まる
1 / (12.5 x 10-9) = 80 MHz
• 同期式順序回路: レジスタ間を組合せ回路でつないだもの
• クリティカルパス: レジスタ間の遅延が最大であるような信号経路
クロック周波数を制限するもの
22鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1)
0 → 1
ゲート容量
ゲート遅延:
• トランジスタが流せる電流は有限
• したがって,ゲート容量を充電してト
ランジスタを反転させるには一定の
時間が必要
• 理想的には,トランジスタサイズの微
細化とともに小さくなる
配線遅延:
• そもそも光速は超えられない
(30万 [km/s] = 300 [mm/ns])
• 抵抗・容量・インダクタンスの影響
発熱:
• スイッチング = エネルギー消費
• 温度が上がりすぎると動作できない
プロセッサのクロック周波数の推移
23鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1)
year
clock frequency (MHz)
http://cpudb.stanford.edu/visualize/clock_frequency
24鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1)
練習問題(1)
2. 次のような入力を受け取るイネーブル付き D-FF の状態 Q は
どのような信号になるか? ただし Q の初期状態は 0 とする.
clk
D
en
1. 次のような入力を受け取る D-FF の状態(出力) Q はどのよう
な信号になるか? ただし Q の初期状態は 0 とする.
clk
D
25鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1)
解答例
clk
D
en
2.
Q
clk
D
1.
Q
26鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1)
練習問題(2)
8-bit
D-FF
8ビット減算器
8
a
b
a – b8-bit
D-FF
clk
8
in out
8
8 8
30
clk
in
out
15 12 20 32
1. 入力信号 in を10進数で表示した際の値が右のタイミングチャートのように変
化したとする.出力信号 out はどのように変化するか.ただし,値が不定であ
るときは × を記入すること.
2. 図中の8ビット減算器の代わりに8ビット加算器を置き,その直後に1ビット右
シフト回路を置いたとする.この改造によって,図の順序回路が計算するもの
は何から何に変化するか説明せよ.ただし,オーバフローは考慮しなくてよい.
(2012年度期末試験・改)
27鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1)
解答例
30
clk
in
out
15 12 20 32
X X -15 -3 8
b X X 30 15 12
a X 30 15 12 20
1.
2. 隣接時刻間の差分の代わりに,隣接時刻間の平均を計算することになる.

Más contenido relacionado

La actualidad más candente

kagami_comput2016_08
kagami_comput2016_08kagami_comput2016_08
kagami_comput2016_08swkagami
 
kagamicomput201712
kagamicomput201712kagamicomput201712
kagamicomput201712swkagami
 
kagami_comput2015_8
kagami_comput2015_8kagami_comput2015_8
kagami_comput2015_8swkagami
 
kagami_comput2016_07
kagami_comput2016_07kagami_comput2016_07
kagami_comput2016_07swkagami
 
kagami_comput2016_03
kagami_comput2016_03kagami_comput2016_03
kagami_comput2016_03swkagami
 
kagami_comput2016_02
kagami_comput2016_02kagami_comput2016_02
kagami_comput2016_02swkagami
 
kagami_comput2016_01
kagami_comput2016_01kagami_comput2016_01
kagami_comput2016_01swkagami
 
積分要素の応答性(MATLAB)
積分要素の応答性(MATLAB)積分要素の応答性(MATLAB)
積分要素の応答性(MATLAB)Tsuyoshi Horigome
 
kagami_comput2015_2
kagami_comput2015_2kagami_comput2015_2
kagami_comput2015_2swkagami
 
kagamicomput201802
kagamicomput201802kagamicomput201802
kagamicomput201802swkagami
 
Arithmer R3 Introduction
Arithmer R3 Introduction Arithmer R3 Introduction
Arithmer R3 Introduction Arithmer Inc.
 
kagami_comput2015_10
kagami_comput2015_10kagami_comput2015_10
kagami_comput2015_10swkagami
 
kagamicomput201710
kagamicomput201710kagamicomput201710
kagamicomput201710swkagami
 
kagami_comput2015_1
kagami_comput2015_1kagami_comput2015_1
kagami_comput2015_1swkagami
 
kagamicomput201808
kagamicomput201808kagamicomput201808
kagamicomput201808swkagami
 
kagami_comput2016_13
kagami_comput2016_13kagami_comput2016_13
kagami_comput2016_13swkagami
 
kagamicomput201701
kagamicomput201701kagamicomput201701
kagamicomput201701swkagami
 
kagamicomput201702
kagamicomput201702kagamicomput201702
kagamicomput201702swkagami
 
“Symbolic bounds analysis of pointers, array indices, and accessed memory reg...
“Symbolic bounds analysis of pointers, array indices, and accessed memory reg...“Symbolic bounds analysis of pointers, array indices, and accessed memory reg...
“Symbolic bounds analysis of pointers, array indices, and accessed memory reg...Masahiro Sakai
 
kagami_comput2016_06
kagami_comput2016_06kagami_comput2016_06
kagami_comput2016_06swkagami
 

La actualidad más candente (20)

kagami_comput2016_08
kagami_comput2016_08kagami_comput2016_08
kagami_comput2016_08
 
kagamicomput201712
kagamicomput201712kagamicomput201712
kagamicomput201712
 
kagami_comput2015_8
kagami_comput2015_8kagami_comput2015_8
kagami_comput2015_8
 
kagami_comput2016_07
kagami_comput2016_07kagami_comput2016_07
kagami_comput2016_07
 
kagami_comput2016_03
kagami_comput2016_03kagami_comput2016_03
kagami_comput2016_03
 
kagami_comput2016_02
kagami_comput2016_02kagami_comput2016_02
kagami_comput2016_02
 
kagami_comput2016_01
kagami_comput2016_01kagami_comput2016_01
kagami_comput2016_01
 
積分要素の応答性(MATLAB)
積分要素の応答性(MATLAB)積分要素の応答性(MATLAB)
積分要素の応答性(MATLAB)
 
kagami_comput2015_2
kagami_comput2015_2kagami_comput2015_2
kagami_comput2015_2
 
kagamicomput201802
kagamicomput201802kagamicomput201802
kagamicomput201802
 
Arithmer R3 Introduction
Arithmer R3 Introduction Arithmer R3 Introduction
Arithmer R3 Introduction
 
kagami_comput2015_10
kagami_comput2015_10kagami_comput2015_10
kagami_comput2015_10
 
kagamicomput201710
kagamicomput201710kagamicomput201710
kagamicomput201710
 
kagami_comput2015_1
kagami_comput2015_1kagami_comput2015_1
kagami_comput2015_1
 
kagamicomput201808
kagamicomput201808kagamicomput201808
kagamicomput201808
 
kagami_comput2016_13
kagami_comput2016_13kagami_comput2016_13
kagami_comput2016_13
 
kagamicomput201701
kagamicomput201701kagamicomput201701
kagamicomput201701
 
kagamicomput201702
kagamicomput201702kagamicomput201702
kagamicomput201702
 
“Symbolic bounds analysis of pointers, array indices, and accessed memory reg...
“Symbolic bounds analysis of pointers, array indices, and accessed memory reg...“Symbolic bounds analysis of pointers, array indices, and accessed memory reg...
“Symbolic bounds analysis of pointers, array indices, and accessed memory reg...
 
kagami_comput2016_06
kagami_comput2016_06kagami_comput2016_06
kagami_comput2016_06
 

Similar a kagamicomput201811

kagamicomput201812
kagamicomput201812kagamicomput201812
kagamicomput201812swkagami
 
kagami_comput2015_12
kagami_comput2015_12kagami_comput2015_12
kagami_comput2015_12swkagami
 
kagamicomput201814
kagamicomput201814kagamicomput201814
kagamicomput201814swkagami
 
katagaitaictf7_hw_ysk
katagaitaictf7_hw_yskkatagaitaictf7_hw_ysk
katagaitaictf7_hw_yskysk256
 
[Basic 2] 計算機の構成 / プログラム実行の仕組み
[Basic 2] 計算機の構成 / プログラム実行の仕組み[Basic 2] 計算機の構成 / プログラム実行の仕組み
[Basic 2] 計算機の構成 / プログラム実行の仕組みYuto Takei
 
kagamicomput201801
kagamicomput201801kagamicomput201801
kagamicomput201801swkagami
 

Similar a kagamicomput201811 (6)

kagamicomput201812
kagamicomput201812kagamicomput201812
kagamicomput201812
 
kagami_comput2015_12
kagami_comput2015_12kagami_comput2015_12
kagami_comput2015_12
 
kagamicomput201814
kagamicomput201814kagamicomput201814
kagamicomput201814
 
katagaitaictf7_hw_ysk
katagaitaictf7_hw_yskkatagaitaictf7_hw_ysk
katagaitaictf7_hw_ysk
 
[Basic 2] 計算機の構成 / プログラム実行の仕組み
[Basic 2] 計算機の構成 / プログラム実行の仕組み[Basic 2] 計算機の構成 / プログラム実行の仕組み
[Basic 2] 計算機の構成 / プログラム実行の仕組み
 
kagamicomput201801
kagamicomput201801kagamicomput201801
kagamicomput201801
 

Más de swkagami

kagamicomput201813
kagamicomput201813kagamicomput201813
kagamicomput201813swkagami
 
kagamicomput201809
kagamicomput201809kagamicomput201809
kagamicomput201809swkagami
 
kagamicomput201807
kagamicomput201807kagamicomput201807
kagamicomput201807swkagami
 
kagamicomput201806
kagamicomput201806kagamicomput201806
kagamicomput201806swkagami
 
kagamicomput201805
kagamicomput201805kagamicomput201805
kagamicomput201805swkagami
 
kagamicomput201804
kagamicomput201804kagamicomput201804
kagamicomput201804swkagami
 
kagamicomput201803
kagamicomput201803kagamicomput201803
kagamicomput201803swkagami
 
kagamicomput201714
kagamicomput201714kagamicomput201714
kagamicomput201714swkagami
 
kagamicomput201713
kagamicomput201713kagamicomput201713
kagamicomput201713swkagami
 
kagamicomput201709
kagamicomput201709kagamicomput201709
kagamicomput201709swkagami
 
kagamicomput201708
kagamicomput201708kagamicomput201708
kagamicomput201708swkagami
 
kagamicomput201707
kagamicomput201707kagamicomput201707
kagamicomput201707swkagami
 
kagamicomput201706
kagamicomput201706kagamicomput201706
kagamicomput201706swkagami
 
kagamicomput201705
kagamicomput201705kagamicomput201705
kagamicomput201705swkagami
 
kagamicomput201704
kagamicomput201704kagamicomput201704
kagamicomput201704swkagami
 
kagamicomput201703
kagamicomput201703kagamicomput201703
kagamicomput201703swkagami
 

Más de swkagami (16)

kagamicomput201813
kagamicomput201813kagamicomput201813
kagamicomput201813
 
kagamicomput201809
kagamicomput201809kagamicomput201809
kagamicomput201809
 
kagamicomput201807
kagamicomput201807kagamicomput201807
kagamicomput201807
 
kagamicomput201806
kagamicomput201806kagamicomput201806
kagamicomput201806
 
kagamicomput201805
kagamicomput201805kagamicomput201805
kagamicomput201805
 
kagamicomput201804
kagamicomput201804kagamicomput201804
kagamicomput201804
 
kagamicomput201803
kagamicomput201803kagamicomput201803
kagamicomput201803
 
kagamicomput201714
kagamicomput201714kagamicomput201714
kagamicomput201714
 
kagamicomput201713
kagamicomput201713kagamicomput201713
kagamicomput201713
 
kagamicomput201709
kagamicomput201709kagamicomput201709
kagamicomput201709
 
kagamicomput201708
kagamicomput201708kagamicomput201708
kagamicomput201708
 
kagamicomput201707
kagamicomput201707kagamicomput201707
kagamicomput201707
 
kagamicomput201706
kagamicomput201706kagamicomput201706
kagamicomput201706
 
kagamicomput201705
kagamicomput201705kagamicomput201705
kagamicomput201705
 
kagamicomput201704
kagamicomput201704kagamicomput201704
kagamicomput201704
 
kagamicomput201703
kagamicomput201703kagamicomput201703
kagamicomput201703
 

Último

業務で生成AIを活用したい人のための生成AI入門講座(社外公開版) 2024年4月作成
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版) 2024年4月作成業務で生成AIを活用したい人のための生成AI入門講座(社外公開版) 2024年4月作成
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版) 2024年4月作成Hiroshi Tomioka
 
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)Hiroki Ichikura
 
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineerYuki Kikuchi
 
クラウドネイティブなサーバー仮想化基盤 - 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
 
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~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...博三 太田
 
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)UEHARA, Tetsutaro
 
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案sugiuralab
 
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?akihisamiyanaga1
 

Último (9)

業務で生成AIを活用したい人のための生成AI入門講座(社外公開版) 2024年4月作成
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版) 2024年4月作成業務で生成AIを活用したい人のための生成AI入門講座(社外公開版) 2024年4月作成
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版) 2024年4月作成
 
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
 
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
 
クラウドネイティブなサーバー仮想化基盤 - 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
 
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~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...
 
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
 
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
 
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
 

kagamicomput201811

  • 1. 東北大学 工学部 機械知能・航空工学科 2018年度 クラスC3 D1 D2 D3 情報科学基礎 I 大学院情報科学研究科 鏡 慎吾 http://www.ic.is.tohoku.ac.jp/~swk/lecture/ 11. 順序回路の基礎 (教科書4章)
  • 2. 2鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1) 組合せ回路と順序回路 x1 x2 xn y1 y2 ym 順序回路 状態 s1, s2, …, sp 順序回路: 出力は,現在までにどんな入力がどんな順序で与えら れたかによって決まる 回路内に内部状態(記憶)が必要 組合せ回路 x1 x2 xn y1 y2 ym 組合せ回路: 出力は,その時点の入力の組合せのみで決まる
  • 3. 3鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1) 復習: MIPSの構造 メモリ 32ビットALU 32x32ビット レジスタ PC 命令デコーダ アドレス(32ビット) データ(8, 16, 32ビット) 次PC計算 制御回路 mux mux 演算選択 レ ジ ス タ 選 択 • 記憶素子を含む回路はすべて順序回路 • 全体も大きな順序回路と言える
  • 4. 4鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1) 記憶の原理 high low highlow 2つの安定な物理状態を持つ系は, 1ビットの情報を記憶することができる 0 1 問題は,どのように状態を変化させるか
  • 5. 5鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1) SR (Set-Reset) フリップフロップ (FF) Q Q S RQ Q • NOT ゲートの代わりに NOR ゲートを使うと,入力 S, R を 1 に することで信号のループを断ち切って Q を変えることができる S R Q 0 0 保持 0 1 0 1 0 1 1 1 未定義 (この回路の場合は Q も Q も 1 になってしまう) Q Q S R 問題点: • S = R = 1 は入力禁止 • 非同期動作 =
  • 6. 6鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1) 非同期式順序回路 • 順序回路: 記憶回路と組合せ回路のネットワーク • 非同期式: 状態変化がいつでも起き得る → 設計・動作保証が困難 記憶回路 組合せ回路 順序回路 A B C D
  • 7. 7鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1) 同期式順序回路 A B C D クロック信号 • ある決まった瞬間にしか状態変化が起きないよう制限する • 「ある決まった瞬間」はクロック信号により周期的に与える (典型的には,周期的パルス信号の立ち上がり時刻)
  • 8. 8鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1) 同期式順序回路のタイミングチャート クロック周期 [s] クロック周波数 (クロックレート) = 1 / クロック周期 [Hz] クロック信号 点線が 「ある決まった瞬間」 斜めは「状態変化の最中」 t タイミングチャート: 横軸を時間,縦軸を信号レベルとしたグラフ クロック周期は,状態変化にかかる時間より十分長く取る 状態 si
  • 9. 9鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1) クロック入力付きFF Q Q S R S R clk Q Q S R D clk SRフリップフロップ (SRラッチ) Dフリップフロップ (Dラッチ) Q Q D clk Q Q S R clk= = • clk が 1 の間だけ状態変化が許される • 入力信号が3本もあるのは冗長 • clk が 1 ののとき,入力 D を記憶する • D は Delay または Data の意とされる
  • 10. 10鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1) D-FF(Dラッチ)の動作 問題点: • クロック信号が1の間は,入力は出力に筒抜け • クロック信号が 1 から 0 に遷移するときに状態確定 • 同期式回路に使おうとすると,「クロック信号が1の間」 の長さは, • 長すぎてもダメ: 状態変化の結果が入力に影響してしまう • 短すぎてもダメ: FF自体の動作が間に合わない D clk Q 1 0 不定 入力 状態 例えば clk が(あまり「クロック」っぽくないが)以下のように動いたとすると
  • 11. 11鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1) エッジトリガ FF D Q clk • クロック信号の立上りの瞬間(直前)の値を 記憶する • その瞬間以外に状態変化が起きることはな く,信号が筒抜けになることもない • エッジトリガ型と呼ぶ • 対して,クロックが 1 か 0 かに応じて動作が変 わるものをレベルセンシティブ型と呼ぶ D Q clk 入力 状態 山型はエッジトリガ入力の記号 Q
  • 12. 12鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1) エッジトリガ D-FFの構成例 (マスタースレーブ型) D Q clk Q D Q clk Q clk clk D Q 後段のラッチは前の値を保持. 前段のラッチは開き,次に保持すること になる情報を後段に素通しにしている クロックが立ち上がると,前段のラッ チが閉じてその瞬間の値を記憶し, 後段のラッチは開いて素通しになる clk = 1 のとき:clk = 0 のとき: Q 筒抜け 保持 筒抜け保持
  • 13. 13鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1) 非同期 レベルセンシティブクロック入力 エッジトリガクロック入力 SR S Q clk Q D Q clk Q R T Q clk Q J Q clk QK S Q clk Q D Q clk Q R T Q clk Q J Q clk QK S Q QR T Q Q J Q QK D T JK 赤枠: この資料,青枠: 教科書
  • 14. 14鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1) いろいろなフリップフロップと関連用語 • 前ページのものをすべてフリップフロップと呼ぶ流儀と,エッジ トリガのものだけフリップフロップと呼び,非同期あるいはレベ ルセンシティブなものはラッチと呼ぶ流儀がある • 特定の構成方法のもののみをエッジトリガ型と呼び,マスター スレーブ型とは区別する流儀もある • レベルセンシティブクロック入力をクロックとは呼ばず,イネー ブル信号と呼ぶ流儀もある • T-FF は,入力 T が 1 になると Q が反転する (Toggle) • JK-FF は, 両入力が 1 のときに Q が反転するように SR-FF を改良したもの (J と K の由来は不明) コンピュータの理解には,エッジトリガ型 D-FF だけでほぼOK. 以降,D-FF といったらこれを指す
  • 15. 15鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1) イネーブルつきD-FF D Q en clk D Q clk en 1 0 clk D en Q • 毎クロック必ず記憶するのが便利とは限らない • en = 1 であるようなクロック立上り時にだけ入力を記憶する (あるクロック立上りで記憶するかどうかがその瞬間の en で決まる) D Q
  • 16. 16鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1) 立上り・立下り時間を無視して描かれたチャートの解釈 clk D en Q • 上図のように描かれた場合「クロック立上りの瞬間の D や en の値」はどこを見ればよいのか? → クロック立上りの直前を見る • D も en も同じ clk に同期した回路から生成されていると考える(完全同 期式回路).したがって D や en の変化は clk の立上りに先立って起き ることはない
  • 17. 17鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1) レジスタ D-FFを n 個並べる → n ビットレジスタ clk D Q clk 15 153 27 9 en 153 27 D Q en D Q en D Q en D Q en clk en D Q X 複数ビットをまとめて このように描く 不定をこのように描いて 済ますこともある
  • 18. 18鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1) 例: 同期2進カウンタ +1 8-bit レジスタ 0 0 1 reset clk reset count count 1 2 30 クロックの立上りの瞬間に en が1だった回数を数える clk en en X
  • 19. 19鏡 慎吾 (東北大学): 情報科学基礎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
  • 20. 20鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1) 例: シフトレジスタ en en en en en in out FIFO (first-in first-out) の記憶回路(queue)として用いられる
  • 21. 21鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1) レジスタ間遅延とクリティカルパス A B C D A → B: 8 ns B → B: 5 ns B → C: 2.5 ns B → D: 7 ns D → B: 12.5 ns クリティカルパスの遅延で 全体のクロック周波数の上限が決まる 1 / (12.5 x 10-9) = 80 MHz • 同期式順序回路: レジスタ間を組合せ回路でつないだもの • クリティカルパス: レジスタ間の遅延が最大であるような信号経路
  • 22. クロック周波数を制限するもの 22鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1) 0 → 1 ゲート容量 ゲート遅延: • トランジスタが流せる電流は有限 • したがって,ゲート容量を充電してト ランジスタを反転させるには一定の 時間が必要 • 理想的には,トランジスタサイズの微 細化とともに小さくなる 配線遅延: • そもそも光速は超えられない (30万 [km/s] = 300 [mm/ns]) • 抵抗・容量・インダクタンスの影響 発熱: • スイッチング = エネルギー消費 • 温度が上がりすぎると動作できない
  • 23. プロセッサのクロック周波数の推移 23鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1) year clock frequency (MHz) http://cpudb.stanford.edu/visualize/clock_frequency
  • 24. 24鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1) 練習問題(1) 2. 次のような入力を受け取るイネーブル付き D-FF の状態 Q は どのような信号になるか? ただし Q の初期状態は 0 とする. clk D en 1. 次のような入力を受け取る D-FF の状態(出力) Q はどのよう な信号になるか? ただし Q の初期状態は 0 とする. clk D
  • 25. 25鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1) 解答例 clk D en 2. Q clk D 1. Q
  • 26. 26鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1) 練習問題(2) 8-bit D-FF 8ビット減算器 8 a b a – b8-bit D-FF clk 8 in out 8 8 8 30 clk in out 15 12 20 32 1. 入力信号 in を10進数で表示した際の値が右のタイミングチャートのように変 化したとする.出力信号 out はどのように変化するか.ただし,値が不定であ るときは × を記入すること. 2. 図中の8ビット減算器の代わりに8ビット加算器を置き,その直後に1ビット右 シフト回路を置いたとする.この改造によって,図の順序回路が計算するもの は何から何に変化するか説明せよ.ただし,オーバフローは考慮しなくてよい. (2012年度期末試験・改)
  • 27. 27鏡 慎吾 (東北大学): 情報科学基礎I 2018 (1) 解答例 30 clk in out 15 12 20 32 X X -15 -3 8 b X X 30 15 12 a X 30 15 12 20 1. 2. 隣接時刻間の差分の代わりに,隣接時刻間の平均を計算することになる.