Document

第12回
順序回路の解析方法
順序回路から,以下を導き、解析を行えるようにする
タイムチャート
状態遷移関数・出力関数
状態遷移表
状態遷移図
瀬戸
1
次の順序回路は、どんな動作をするか?(復
習)
D-FFと,NOTゲートを組合せた回路
rst
01x
Q D
10x
clk
入力D、出力Qの向きが逆なので、注意!
rst: 同期リセット信号 (正論理)
2
タイミング図を描く
clk
rst
Q D
clk
rst
Q
不定 不定
0
1
0
1
D
不定 不定
1
0
1
0
0
1
2
3
リセット後の時刻 n
FFの出力状態 Qn
Q0=0 Q1=1 Q2=0 Q3=1
入力 Dn
D0=1 D1=0 D2=1 D3=0
clkの周波数を1/2にした信号を出力 (分周器と呼ばれる)
3
順序回路の3種類の表現
FFの状態 (つまりQの値)が、どのように変化するか表現
clk立上りで,次の状態に変化(遷移)
現在の状態
Qn
0
1
rst
Q D
clk
D=Q
次の状態
Qn+1(=Dn )
1
0
Q=0
clk↑
clk↑
Q=1
2. 状態遷移図
1. 状態遷移表
3. 状態遷移関数
Qn+1 = D = Qn
組合せ回路における、真理値表や論理関数の関係に相当
4
順序回路 の 基本構成
入力
a
b
組合せ 回路
出力
f
Q1 D
1
Q2 D
rst
clk
(共通)
2
D-FF の集まり (記憶を実現する)
出力fは、入力a, bだけでなく、FFの出力Q1, Q2にも依存
5
順序回路 の 状態 とは
a
b
f
01
rst
01
Q1 D1
Q2 D2
clk
D-FF の出力 Q1, Q2 の値を、 順序回路の 状態 と呼ぶ
(この例では、D-FFが2個あるので、状態数は最大22= 4 状態)
6
次の順序回路の動作を解析しよう
1入力 x, 1出力 f, 1個のFF (状態Q)
入力
出力
x
f
Q D
clk
7
状態遷移関数 と 出力関数
状態遷移 関数 D
各D-FFの状態 Qが、次のクロック↑で、どんな値になるかを表
す
D-FFの入力 D の論理式のこと
出力 関数 f
順序回路の出力が、どんな値になるかを表す
順序回路のポイント
x
f = xQ
Q D
clk
D=xQ + xQ
= x+Q
1. 状態遷移関数 D、
出力関数fはともに、
入力 x と状態 Q の
論理関数
2.回路から導ける
8
順序回路から、状態遷移表の導き方
出力関数f と 状態遷移関数D から、状態遷移表を作る (遷移=変化)
状態(Q),入力(x), 出力(f), 次状態(D) を回路からすべて探す
状態 Qと入力 xの全パターンを列挙 (この場合 4通り)
状態 Q,入力 xの各パターンに対し、出力 f と次状態 D を計算
状態遷移表
x
f = xQ
Q D
clk
D=xQ + xQ
= x+Q
現状態 現入力 現出力 次状態
Q
x
f
D
0
0
0
0
0
1
0
1
0
1
1
0
1
0
1
1
クロック↑で遷移
9
状態遷移表から,タイミング図が書ける
現状態 現入力 現出力 次状態
Q
x
f
D
0
0
0
0
0
1
0
1
1
0
0
1
1
1
1
0
D = xQ + xQ
=x+Q
f = xQ
clk
rst
x
Q
f
D
10
状態遷移表から,タイミング図が書ける
現状態 現入力 現出力 次状態
Q
x
f
D
0
0
0
0
0
1
0
1
1
0
0
1
1
1
1
0
D = xQ + xQ
=x+Q
f = xQ
clk
rst
x
0
1
0
1
0
0
Q
不定
0
1
1
0
0
f
D
0
0
0
1
0
0
不定
1
1
0
0
0
11
状態遷移図
状態遷移表を、視覚的に分かりやすく図示したもの
丸:
状態 (Qの値)
矢印: クロックの立上り(↑)による 状態変化 と、 出力値
ラベル: a/b (a: 現 入力 、b: 現 出力 )
矢印の元: 現 状態
矢印の先: 次 状態
現入力 現出力
rst
0/0
リセット直後の状態も明示
遷移先しか無い矢印(rst)
状態Q
0
現状態 現入力 現出力 次状態
Q
x
f
D
0
0
0
0
0
1
0
1
1
0
0
1
1
1
1
0
1/0
1/0
状態Q
1
0/0
12
状態遷移図 ⇔ 状態遷移表
状態遷移図 と 状態遷移表は、相互変換可能 (単純作業)
状態遷移表→状態遷移図
1. 状態のパターン数だけ、 丸 を書く
2. 表の各行を参考に、 矢印 を追加していく(ラベルも付ける)
rst
逆の変換も同様
現状態 現入力 現出力 次状態
Q
x
f
D
0
0
0
0
0
1
0
1
1
0
0
1
1
1
1
0
現入力x 現出力f
0/0
0
1/1
1/0
1
0/0
13
状態遷移図による機能の理解
(どんなときに出力がアクティブになるか?)
入力xが1回 1 になると、状態が0から1に移る
入力xが1回 1 になったことを、覚えている
入力xが2回 1 になると、f=1を出力し、状態0に戻る
rst
現入力x 現出力f
0/0
rst
0
1/1
1/0
1
0/0
clk
x
0
1
0
1
0
0
Q
不定
0
1
1
0
0
0
0
1
0
0
f
簡単な 自動販売機 (2枚のコイン投入で商品を出す)
14
まとめ
順序回路の機能表現方法
タイムチャート (動作の一例にすぎない)
状態遷移関数・出力関数
状態遷移表
状態遷移図
15