8. 順序回路の実現 五島 正裕
順序回路の復習
組み合わせ回路 と 順序回路 組み合わせ回路 (combinational circuit) 無記憶 現在の入力 ⇒ 出力 ex) 0101…0…0 ⇒ 0 0101…1…0 ⇒ 0 順序回路 (sequential circuit) 記憶 入力の履歴 ⇒ 出力 0101…1…0 ⇒ 1
順序回路の例 Q 自動販売機 使える硬貨は100円のみ 200円の商品1種のみ 100円が 2個投入されると,商品を送り出す その順序機械: 入力 x:100円が投入されると,1サイクルの間だけ 1 出力 z:1 のとき,商品が送り出される
順序回路の例 x 1 z time clock x z
状態機械 (State Machine) の表現 time x 1 S S0 S1 z 0 / 0 1 / 0 S(t) S(t +1), z x = 0 x = 1 S0 S0, 0 S1, 0 S1 S0, 1 S0 S1 1 / 1 0 / 0 x / z 状態遷移図 (state diagram) 状態遷移表 (state transition table)
記憶素子の例 D-FF(フリップ・フロップ) データ入力: d データ出力: q 「d に入力した値が,次のサイクルに q から出力される」 clk
状態割り当て 状態 S0 と S1 (たとえば)D-FF 1個で表現 状態割り当て:D-FF の出力 q S0 : q = 0
次状態関数 と 出力関数 S(t) S(t+1), z x = 0 x = 1 S0 S0, 0 S1, 0 S1 S0, 1 q d 1 Q z x = 0 x = 1 1 S0 : q = 0 S1 : q = 1 状態遷移表 次状態関数 (next state function) の真理値表 出力関数 (output function) の真理値表
順序回路の構成 d q x z clock time q 1 x d z
記憶素子
記憶素子 の 原理 記憶 ループのある回路の安定状態 ループのある回路 安定 不安定(発振) 1 不安定(発振) 安定
記憶素子の基礎 フリップ・フロップ (flip-flop : FF) 論理ゲートで構成 2個の NOT からなるループ 2つの安定状態 1bit を記憶 1 1
記憶素子の基礎 SR-ラッチ (Set/Reset-latch) S でセット,R でリセット ※ 普通は,両方とも ON にはしない s’ q q’ q’ q r’ r -latch S R SR-latch
SR-ラッチ の動作 s s 1 r q q r 入力変化 入力変化 入力変化 安定状態 安定状態 状態遷移 状態遷移 状態遷移
SR-ラッチ の動作 s s 1 r q q r 入力変化 入力変化 入力変化 安定状態 安定状態 状態遷移 状態遷移 状態遷移
非同期式/同期式 順序回路 time 非同期式 (Asynchronous) 入力の変化 ⇒ 状態遷移 入力 クロック (clock) 入力の変化 time 入力 状態 time clock 入力 状態
非同期式/同期式 順序回路 非同期式 同期式 x 入力 組み合わせ 回路 出力 入力 組み合わせ 回路 出力 Y y 遅延要素 記憶素子 クロック 非同期式 同期式 y = f (x, Y) y = f (x, y) 記憶素子 ⊂ 非同期式回路
非同期式/同期式 順序回路 非同期式回路 設計がより難しい ex) 入力が同時に2つ変わると,実際上 設計不能 本質的に非同期的な部分には不可欠 同期式回路 設計がより容易 「非同期な部分を記憶素子部に閉じ込めた」
同期式順序回路の例 D clock 記憶素子: クロックが「入った」とき, 入力 ⇒ 出力
ポジティブ・エッジ・トリガ D-FF D Q time clock D Q
ポジティブ・エッジ・トリガ D-FF clock Q Q’ D
ポジティブ・エッジ・トリガ D-FF clock = 0 D Q D Q clock = 1
入力をサンプリングするタイミング (狭義の)FF クロックの立ち上がり(立ち下がり) エッジ・トリガ型 (edge-trigger) ポジティブ(ネガティブ)エッジ・トリガ マスタ―スレーブ構造 (master-slave)
入力をサンプリングするタイミング ラッチ (latch) 常時 ?? SR ラッチ クロックが 1(または 0)の間 レベル・センシティブ型 (level-sensitive)? D ラッチ 「危険」なので,あまり使わない
D-FF 以外の FF D-FF 以外の FF SR-FF (Set/Reset) S でセット,R でリセット T-FF (Toggle) JK-FF (??) J でセット,K でリセット,両方でトグル D-FF より高機能 バラ IC(ex. 74シリーズ)で作ったときは重要だったが… LSI ではそうでもない
今日のまとめ
今日のまとめ 順序回路 入力の履歴 同期式順序回路 組み合わせ回路 + 記憶素子 記憶素子 エッジ・トリガ D-FF が重要