Upload
others
View
2
Download
0
Embed Size (px)
Citation preview
組み合わせ回路と順序回路
2種類の論理回路
組み合わせ回路(Combinatorial Circuit):メモリを持たない回路.現在の入力から,出力が一意に決まる回路.マルチプレクサ,加算回
路など.
順序回路(Sequential Circuit):メモリを持つ回路.現在の入力と過去の状態から,出力が決まる回路.フリップフロップ,レジスタ,
カウンタなど.
荒木 徹 (電子情報理工学科) 論理設計第 12 回 2019 年度 3 / 21
同期式順序回路とは
同期式順序回路
フリップフロップはクロックの立ち上がりで状態を変化させる
すべてのフリップフロップが,クロックに合わせて同時に状態を変
化させるようにして設計した順序回路を同期式順序回路という.
今日の目標
D-FFを使ったカウンタの作成方法を理解する
4進カウンタ
8進カウンタ
10進カウンタ
荒木 徹 (電子情報理工学科) 論理設計第 12 回 2019 年度 4 / 21
カウンタ
カウンタ
クロック信号を,決められた順序で計数する回路をカウンタという.
決められた順序が 0 → 1 → · · · → n − 1 → 0 → . . . であるカウンタをn進カウンタという.
n進カウンタで,計数している値を2進数で出力するものを,バイナリカウンタという.
さきほどのページの回路は4進バイナリカウンタである.
クロック信号が一つ入力されるたびに,出力が 00 → 01 → 10 → 11と変化している.
荒木 徹 (電子情報理工学科) 論理設計第 12 回 2019 年度 7 / 21
カウンタ(順序回路)の構造
カウンタの構成
カウンタ(順序回路)は
現在の状態を記憶するための,いくつかのフリップフロップと
現在の状態から次の状態を計算するための組合せ回路
から構成される.
荒木 徹 (電子情報理工学科) 論理設計第 12 回 2019 年度 8 / 21
4進バイナリカウンタの遷移表
フリップフロップの数を決める
メモリが 2ビット必要なので,2個の Dフリップフロップを使う
それぞれ D-FFの入力を D1,D0,出力をQ1,Q0とする.
状態遷移表を作る
フリップフロップが記憶している現在の状態と,クロックの入力後に変
化する次の状態を表にする.
現状態 次状態
Q1 Q0 Q+1 Q+
0
0 0 0 10 1 1 01 0 1 11 1 0 0
荒木 徹 (電子情報理工学科) 論理設計第 12 回 2019 年度 10 / 21
組合せ回路を作成する
現状態 次状態
Q1 Q0 Q+1 Q+
0
D1 D0
0 0 0 10 1 1 01 0 1 11 1 0 0
D-FFへの入力D1,D0を計算する式を求める
遷移表を「現在の状態Q1,Q0を入力,D1,D0を出力」とする真理値表と
みなして,D1,D0を論理式で表す.
D1 = Q1 ⊕ Q0
D0 = Q0
荒木 徹 (電子情報理工学科) 論理設計第 12 回 2019 年度 11 / 21
3ビットバイナリカウンタ(8進カウンタ)
8進カウンタを作る
3個の D-FFを使って,8進カウンタを作る.
0 → 1 → 2 → · · · → 7 → 0 → · · ·状態の変化は 000 → 001 → 010 → · · · → 111 → 000 → · · ·
荒木 徹 (電子情報理工学科) 論理設計第 12 回 2019 年度 12 / 21
遷移表を作る
現状態 次状態
Q2 Q1 Q0 Q+2 Q+
1 Q+0
D2 D1 D0
0 0 0 0 0 10 0 1 0 1 00 1 0 0 1 10 1 1 1 0 01 0 0 1 0 11 0 1 1 1 01 1 0 1 1 11 1 1 0 0 0
荒木 徹 (電子情報理工学科) 論理設計第 12 回 2019 年度 13 / 21
組合せ回路の設計
FFへの入力をQ2,Q1,Q0から計算する
遷移表の D2,D1,D0を出力,Q2,Q1,Q0と入力とみなして,次の状態を
計算するための論理式を作る
荒木 徹 (電子情報理工学科) 論理設計第 12 回 2019 年度 14 / 21
n進バイナリカウンタの設計
10進カウンタを作る
4個の D-FFを使って,10進カウンタを作成する.
0 → 1 → 2 → · · · → 9 → 0 → · · ·10~15は,カウンタの状態として現れないことに注意する
荒木 徹 (電子情報理工学科) 論理設計第 12 回 2019 年度 16 / 21
遷移表を作る
現状態 次状態
Q3 Q2 Q1 Q0 Q+3 Q+
2 Q+1 Q+
0
D3 D2 D1 D0
0 0 0 0 0 0 0 10 0 0 1 0 0 1 00 0 1 0 0 0 1 10 0 1 1 0 1 0 00 1 0 0 0 1 0 10 1 0 1 0 1 1 00 1 1 0 0 1 1 10 1 1 1 1 0 0 01 0 0 0 1 0 0 11 0 0 1 0 0 0 0
荒木 徹 (電子情報理工学科) 論理設計第 12 回 2019 年度 17 / 21
組合せ回路を作る
FFへの入力をQ2,Q1,Q0から計算する
遷移表の D3,D2,D1,D0を出力,Q3,Q2,Q1,Q0と入力とみなして,次の
状態を計算するための論理式を作る
荒木 徹 (電子情報理工学科) 論理設計第 12 回 2019 年度 18 / 21
D3 = Q3Q0 + Q2Q1Q0
D2 = Q2Q1 + Q2Q0 + Q2Q1Q0
D1 = Q1Q0 + Q3Q1Q0
D0 = Q0
確認
上記の式に,具体的な値を代入して,実際に D3D2D1D0が望んだ値に
なっているかどうか確かめよ.
回路図
自分で描いてみよう
荒木 徹 (電子情報理工学科) 論理設計第 12 回 2019 年度 20 / 21