630 likes | 1.03k Views
論理回路. 第 14 回 非同期式順序回路 http://www.info.kindai.ac.jp/LC 38 号館 4 階 N-411 内線 5459 takasi-i@info.kindai.ac.jp. 最適な順序回路の設計. 組み合わせ回路の最小化 カルノー図 ,QM 法 状態数の最小化 状態遷移表の分割 , 状態併合表 各状態の FF への割り当て 割り当て方により必要な回路の数が変わる. 0/0. 1/0. 0/0. 1/0. 1/1. 0/0. 1/1. 0/0. 例題 3.9 状態の割り当て. q 1. q 2. q 4.
E N D
論理回路 第14回 非同期式順序回路 http://www.info.kindai.ac.jp/LC 38号館4階N-411 内線5459 takasi-i@info.kindai.ac.jp
最適な順序回路の設計 • 組み合わせ回路の最小化 • カルノー図,QM法 • 状態数の最小化 • 状態遷移表の分割,状態併合表 • 各状態のFFへの割り当て • 割り当て方により必要な回路の数が変わる
0/0 1/0 0/0 1/0 1/1 0/0 1/1 0/0 例題3.9 状態の割り当て q1 q2 q4 q3 割り当てA : q1=00, q2=01, q3=11, q4=10 割り当てB : q1=00, q2=11, q3=01, q4=10
00 01 0 0 00 01 11 00 0 0 11 00 11 10 0 1 11 10 00 11 0 1 00 11 割り当てAの拡大入力表
1 1 1 1 1 1 1 1 1 1 入力条件式,出力関数 D1 D0 O
D0 D1 Q0 Q1 Q0 Q1 CK CK 回路図 NOT回路 1個 AND回路 3個 OR回路 2個 I O クロック
00 11 0 0 00 11 01 00 0 0 01 00 01 10 0 1 01 10 00 01 0 1 00 01 割り当てBの拡大入力表
1 1 1 1 1 1 1 1 入力条件式,出力関数 D1 D0 O
D0 D1 Q0 Q1 Q0 Q1 CK CK 回路図 NOT回路 1個 AND回路 5個 (うち3入力AND2個) OR回路 2個 I O クロック
D0 D1 Q0 Q1 Q0 Q1 CK CK 回路図 AND回路 2個 XOR回路 2個 I O クロック
割り当て方による回路数の差 • 割り当てA • NOT1,AND3,OR2 : 計6個 • 割り当てB • NOT1,AND5(内3入力AND2),OR2 : 計8個 • AND2,XOR2 : 計4個 • 一般的にXOR回路は大きなサイズになる 割り当てAの方が小さなサイズになる DFF以外のFFを使った場合も同様
0/0 1/0 0/0 1/0 1/1 0/0 1/1 0/0 問題 状態の割り当て • 下表の状態遷移に対し、q1=00, q2=01, q3=10, q4=11を割り当てたときの必要な回路数を求めよ。 q1 q2 q4 q3
遅延 遅延 同期式と非同期式 • 非同期式順序回路 • 入力が変化すると(遅延後)即座に回路が動作 • 同期式順序回路 • クロックに同期して回路が動作 クロック時以外は出力に影響無し X X Y Y X +Y X +Y クロック
同期式と非同期式の長所と短所 • 非同期式 • 入力が変化すれば出力も変化 • 長所:反応が早い • 短所:タイミングをうまく取らないと動作不安定 • 同期式 • 入力変化後、クロック信号で出力変化 • 長所:動作が安定し易い • 短所:クロックを待つ分反応が遅れる
非同期式順序回路の不安定性 • 発振 • 出力が安定せず 0 と 1 とを繰り返す • ハザード • 遅延時間の差により一瞬不正な値が出る • 競合 • 2つ以上の状態変数が同時に変化する
不安定な状態 • TFFへの1入力 • 同期式 : クロックが入るたびに値反転 • 非同期式 : 短い間隔で値反転 T T Q Q Q Q 発振 クロ ック
なので Yは常に 0のはず ハザード X Y X NOTの遅延時間分の 1出力が出る X Y NOTの遅延 ANDの遅延
種々のハザード • 静的ハザード • 出力が変化するべきでないときに発生 • 動的ハザード • 出力が変化する途中で発生 動的ハザード 静的0ハザード 静的1ハザード
X Y ハザードの解消 X Y バッファを挿入して AND回路への 入力遅延を揃える バッファの遅延=NOT回路の遅延 ならこれでOK しかし現実の回路では 遅延を完全に揃えることは不可能
01 10 11 競合(race) • 2つ以上の状態変数が同時に変化する • 例 : 00から11への変化 • 両者が同時に 11 になる • 一瞬 01 になりその後 11 になる • 一瞬 10 になりその後 11 になる 00
01 10 11 際どい競合(Critical race) • 状態変化のタイミングにより遷移・出力が変わってしまうような競合 00 遷移00→11 遷移00→01→11 遷移00→10→11 で結果が変わってしまう
SRFF S Q R Q TFFにおける競合 TFF SRFFを用いたTFF T 初期値 : Q=0, T=0 (S,R =0) T=1 に変化すると、S=1,R=0 になるはず…
SRFF S Q R Q Q TFF T T S これで問題無し? R しかし T =1 が 長時間続くと… Q
SRFF S Q R Q Q TFF T T T =1 が続くと発振 (0と1の繰り返し) S R S,R の変化に 時間差があると? Q S,R が同時に変化
Q Q Rが一瞬先に変化 一瞬11に T 不正な値 S R 0→1→不正な値 Q Sが一瞬先に変化 一瞬00に 一瞬11に T 不正な値 S R 0→1→0→不正な値 Q
クロック速度の不整合 • 同期式でも、クロックが合わないと不安定に 速過ぎるクロック 遅過ぎるクロック T T S S R R Q Q Q Q クロ ック クロ ック 2クロックにつき1回の動作 クロックが1の間発振
D4 D1 D3 D2 Q1 Q3 Q2 Q4 CK CK CK CK 同期式FFでの競合 • 同期式でもクロックが合わないと競合発生 例 : シフタ D クロ ック Q1 Q2 Q3 Q4 この回路へのクロックが遅いと?
シフタの正常な動作 入力 D 出力 Q1 出力 Q2 出力 Q3 クロック Q1の値が 1 クロック遅れでQ2に伝播
速過ぎるクロックに対するシフタの動作 入力 D 出力 Q1 出力 Q2 出力 Q3 クロック Q1の値が 2 クロック遅れでQ2に伝播
遅過ぎるクロックに対するシフタの動作 入力 D 出力 Q1 出力 Q2 出力 Q3 クロック Q1の値が同クロック中にQ2に伝播
競合の回避 • マスタースレーヴFF • FFを2段階にする • エッジトリガFF • クロック信号の変化時のみ状態を変化させる
JM QM JS QS Q KM QM CK KS QS CK マスタースレーヴフリップフロップ • マスター(master)FF • CK=1で動作 • スレーヴ(slave)FF • CK=0で動作, マスターFFの値をコピー マスターFF スレーヴFF J Q K クロック マスタースレーヴJKFF
QM=KS QS クロック1で QM,QMが動作 クロック0で QS,QSが動作 マスタースレーヴJKFFの動作 JM KM QM=JS QS クロ ック
マスターFF スレーヴFF マスタースレーヴJKFFの構成 MSJKFF J Q + クロック Q + K
J Q K Q CK マスタースレーヴJKFF マスタースレーヴFFの特徴 • 長所 • 競合を回避できる • 短所 • クロックパルスの幅分の遅延が生じる クロック0で出力が変化することを示す
DM QM DS QS Q QM QS CK CK 問題 マスタースレーヴFFの設計 • DFF2個を用いてMSDFFを設計せよ D Q クロック
(注意): この部分教科書には無い エッジトリガフリップフロップ • クロックパルスの立ち上がりで出力変化 T Q Q クロ ック クロック 0→1 時のみ 出力が変化する
J J Q Q K K Q Q CK CK ポジティヴ エッジトリガ JKFF ネガティヴ エッジトリガ JKFF (注意): この部分教科書には無い ポジティヴエッジトリガとネガティヴエッジトリガ • ポジティヴ(立ち上り)エッジトリガ • クロック 0→1 時に出力変化 • ネガティヴ(立ち下り)エッジトリガ • クロック 1→0 時に出力変化 クロ ック クロ ック
(注意): この部分教科書には無い ポジティヴエッジトリガJKFFの構成 PETJKFF J Q + クロック Q + K エッジトリガ回路
0/0 0/1 0/0 q0 q1 q2 q3 0/1 (注意): この部分教科書には無い 非同期式順序回路の解析 • 同期式回路 • 1クロックにつき動作1回 • 非同期式回路 • 安定状態になるまで遷移し続ける 過渡状態 安定状態 同期式 : 0 入力で q1へ遷移, 出力 0 非同期式 : 0 入力で q3まで遷移, 出力 1
S0 Q0 S1 Q1 0 0 0 0 1 0 R0 Q0 R1 Q1 1 0 0 1 1 0 0 0 0 0 1 0 1 0 0 1 1 1 (注意): この部分教科書には無い 例題 非同期式順序回路の状態遷移 O I
(注意): この部分教科書には無い フロー表 安定状態は I=0, Q=00 と I=1, Q=11 のみ
0 0 1 0 1 0 1 1 (注意): この部分教科書には無い フロー図 00 01 10 11
0/0 1/1 0/0 1/1 (注意): この部分教科書には無い 状態遷移表,状態遷移図 00 11
問題 非同期式順序回路の状態遷移 • 下表で表される非同期式順序回路の フロー表、フロー図を描け。 また、状態遷移表、状態遷移図を描け
S Q R Q 0 1 0 1 例題 非同期式順序回路の状態遷移 I O 0 0 1 0
0 0 1 1 フロー表,フロー図 0 1 I =0 のとき Q =0 で安定 I =1 のときは安定しない(発振)
S Q R Q 問題 : 非同期式順序回路の状態遷移 • 下図の回路のフロー図を描け O I
T1 T3 T0 T2 Q3 Q0 Q2 Q1 ck3 ck1 ck2 ck0 非同期式2n進カウンタ • 同期していないフリップフロップの集まり • 入力が1になった数を計測する SW 1 1 Q出力が次の クロック入力に Q0 Q1 Q2 Q3
遅延 遅延*3 遅延*2 遅延*4 非同期式2n進カウンタの動作 入力 SW 出力 Q0 出力 Q1 出力 Q2 出力 Q3