クロック信号(CK)に同期して動作する順序回路
![]() |
|
|||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 記号 | 特性表 | |||||||||||||||||||||||||||||||||
| ネガティブエッジ型JKフリップフロップ | ||||||||||||||||||||||||||||||||||
|
JKフリップフロップの状態遷移図
|
|||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
|
|||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
このJKフリップフロップの特性は次の表にまとめることができる.
| 入力 | 状態の変化 | J | K | Qn → Qn+1 |
|---|---|---|
| 0 | × | 0 → 0 |
| 1 | × | 0 → 1 |
| × | 0 | 1 → 1 |
| × | 1 | 1 → 0 |
| Q: 0 → 0 | Q = 0 の状態で, J = 0 を入力するとセットされない |
|---|---|
| Q: 0 → 1 | Q = 0 の状態で, J = 1 を入力するとセットされる |
| Q: 1 → 1 | Q = 1 の状態で, K = 0 を入力するとリセットされない |
| Q: 1 → 0 | Q = 1 の状態で, K = 1 を入力するとリセットされる |
これを実現するには,少なくとも3つの状態を持つ順序回路が必要に鳴る.
ここでは,2つのJKフリップフロップを使用する.
フリップフロップ FF0, FF1の各出力を Q1, Q0と表し,
(Q1, Q0) = (0, 0), (0, 1), (1, 0)
の3つの状態を利用する.
| (Q1, Q0)の状態 | クロック信号の立ち下がり前後での状態の変化 | 各J, K端子への入力 | ||||||
|---|---|---|---|---|---|---|---|---|
| n | Q1n | Q0n | Q1n → Q1n+1 | Q0n → Q0n+1 | J1 | K1 | J0 | K0 |
| 0 | 0 | 0 | 0 → 0 (hole) | 0 → 1 (set) | 0 | × | 1 | × |
| (Q1, Q0)の状態 | クロック信号の立ち下がり前後での状態の変化 | 各J, K端子への入力 | ||||||
|---|---|---|---|---|---|---|---|---|
| n | Q1n | Q0n | Q1n → Q1n+1 | Q0n → Q0n+1 | J1 | K1 | J0 | K0 |
| 0 | 0 | 0 | 0 → 0 (hold) | 0 → 1 (set) | 0 | × | 1 | × |
| 1 | 0 | 1 | 0 → 1 (set) | 1 → 0 (reset) | 1 | × | × | 1 |
| 2 | 1 | 0 | 1 → 0 (reset) | 0 → 0 (hold) | × | 1 | 0 | × |
|
|
||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
J1 = Q0, K1 = Q0
|
|
||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
J0 = Q1, K0 = Q1
J0 = K0 = Q1, J1 = Q0, K1 = Q0
が得られる.
この式に従って結線した回路図を以下に示す.

| n | 0 | 1 | 2 | 3 | 4 | 5 | 6 |
|---|---|---|---|---|---|---|---|
| 2進表現 | 0000 | 0001 | 0010 | 0011 | 0100 | 0101 | 0110 |
各フリップフロップに要求される状態の変化を下表に示す.
| n | フリップフロップの状態 | n+1 | n+1 での状態 | 状態の変化 | ||||||
|---|---|---|---|---|---|---|---|---|---|---|
| Q2n | Q1n | Q0n | Q2n+1 | Q1n+1 | Q0n+1 | Q2n → Q2n+1 | Q1n → Q1n+1 | Q0n → Q0n+1 | ||
| 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 → 0 | 0 → 0 | 0 → 1 |
| 1 | 0 | 0 | 1 | 2 | 0 | 1 | 0 | 0 → 0 | 0 → 1 | 1 → 0 |
| 2 | 0 | 1 | 0 | 3 | 0 | 1 | 1 | 0 → 0 | 1 → 1 | 0 → 1 |
| 3 | 0 | 1 | 1 | 4 | 1 | 0 | 0 | 0 → 1 | 1 → 0 | 1 → 0 |
| 4 | 1 | 0 | 0 | 5 | 1 | 0 | 1 | 1 → 1 | 0 → 0 | 0 → 1 |
| 5 | 1 | 0 | 1 | 6 | 1 | 1 | 0 | 1 → 1 | 0 → 1 | 1 → 0 |
| 6 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 1 → 0 | 1 → 0 | 0 → 0 |
| n | フリップフロップの状態 | 状態の変化と (J, K)への入力値 | |||||||
|---|---|---|---|---|---|---|---|---|---|
| Q2n | Q1n | Q0n | Q2n → Q2n+1 | (J2, K2) | Q1n → Q1n+1 | (J1, K1) | Q0n → Q0n+1 | (J0>, K0) | |
| 0 | 0 | 0 | 0 | 0 → 0 | (0, ×) | 0 → 0 | (0, ×) | 0 → 1 | (1, ×) |
| 1 | 0 | 0 | 1 | 0 → 0 | (0, ×) | 0 → 1 | (1, ×) | 1 → 0 | (×, 1) |
| 2 | 0 | 1 | 0 | 0 → 0 | (0, ×) | 1 → 1 | (×, 0) | 0 → 1 | (1, ×) |
| 3 | 0 | 1 | 1 | 0 → 1 | (1, ×) | 1 → 0 | (×, 1) | 1 → 0 | (×, 1) |
| 4 | 1 | 0 | 0 | 1 → 1 | (×, 0) | 0 → 0 | (0, ×) | 0 → 1 | (1, ×) |
| 5 | 1 | 0 | 1 | 1 → 1 | (×, 0) | 0 → 1 | (1, ×) | 1 → 0 | (×, 1) |
| 6 | 1 | 1 | 0 | 1 → 0 | (×, 1) | 1 → 0 | (×, 1) | 0 → 0 | (0, ×) |
上の表から,Q2n, Q1n,
Q0
Q2n
Q1n
Q0n
J2
0 0 0 0
0 0 1 0
0 1 0 0
0 1 1 1
1 0 0 ×
1 0 1 ×
1 1 0 ×
Q2n
Q1n
Q0n
K2
0 0 0 ×
0 0 1 ×
0 1 0 ×
0 1 1 ×
1 0 0 0
1 0 1 0
1 1 0 1
カルノー図を利用して,J2 (K2) を Q2, Q1, Q0 の論理式で表すことができる.
(J2, K2)の場合と同様に
7進カウンタの状態の変化と J, K への入力の表から,
Q2n, Q1n,
Q0
Q2n
Q1n
Q0n
J1
K1
0 0 0 0 ×
0 0 1 1 ×
0 1 0 × 0
0 1 1 × 1
1 0 0 0 ×
1 0 1 1 ×
1 1 0 × 1
カルノー図を利用して,J1, K1 を Q2, Q1, Q0 の論理式で表す.
同様に,
7進カウンタの状態の変化と J, K への入力の表から,
Q2n, Q1n,
Q0
Q2n
Q1n
Q0n
J0
K0
0 0 0 1 ×
0 0 1 × 1
0 1 0 1 ×
0 1 1 × 1
1 0 0 1 ×
1 0 1 × 1
1 1 0 0 ×
カルノー図を利用して,J0, K0 を Q2, Q1, Q0 の論理式で表す.

| n | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
|---|---|---|---|---|---|---|---|---|---|---|---|
| 2進表現 | 0000 | 0001 | 0010 | 0011 | 0100 | 0101 | 0110 | 0111 | 1000 | 1001 | 1010 |
各フリップフロップに要求される状態の変化を下表に示す.
| n | フリップフロップの状態 | n+1 | n+1 での状態 | 状態の変化 | |||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Q3n | Q2n | Q1n | Q0n | Q3n+1 | Q2n+1 | Q1n+1 | Q0n+1 | Q3n → Q3n+1 | Q2n → Q2n+1 | Q1n → Q1n+1 | Q0n → Q0n+1 | ||
| 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 1 | 0 → 0 | 0 → 0 | 0 → 0 | 0 → 1 |
| 1 | 0 | 0 | 0 | 1 | 2 | 0 | 0 | 1 | 0 | 0 → 0 | 0 → 0 | 0 → 1 | 1 → 0 |
| 2 | 0 | 0 | 1 | 0 | 3 | 0 | 0 | 1 | 1 | 0 → 0 | 0 → 0 | 1 → 1 | 0 → 1 |
| 3 | 0 | 0 | 1 | 1 | 4 | 0 | 1 | 0 | 0 | 0 → 0 | 0 → 1 | 1 → 0 | 1 → 0 |
| 4 | 0 | 1 | 0 | 0 | 5 | 0 | 1 | 0 | 1 | 0 → 0 | 1 → 1 | 0 → 0 | 0 → 1 |
| 5 | 0 | 1 | 0 | 1 | 6 | 0 | 1 | 1 | 0 | 0 → 0 | 1 → 1 | 0 → 1 | 1 → 0 |
| 6 | 0 | 1 | 1 | 0 | 7 | 0 | 1 | 1 | 1 | 0 → 0 | 1 → 1 | 1 → 1 | 0 → 1 |
| 7 | 0 | 1 | 1 | 1 | 8 | 1 | 0 | 0 | 0 | 0 → 1 | 1 → 0 | 1 → 0 | 1 → 0 |
| 8 | 1 | 0 | 0 | 0 | 9 | 1 | 0 | 0 | 1 | 1 → 1 | 0 → 0 | 0 → 0 | 0 → 1 |
| 9 | 1 | 0 | 0 | 1 | 10 | 1 | 0 | 1 | 0 | 1 → 1 | 0 → 0 | 0 → 1 | 1 → 0 |
| 10 | 1 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 → 0 | 0 → 0 | 1 → 0 | 0 → 0 |
JKフリップフロップの特性から, 上の動作をするためのJK端子への入力値が定まる.
| n | フリップフロップの状態 | 状態の変化と(J, K)への入力値 | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Q3n | Q2n | Q1n | Q0n | Q3n → Q3n+1 | (J3, K3) | Q2n → Q2n+1 | (J2, K2) | Q1n → Q1n+1 | (J1, K1) | Q0n → Q0n+1 | (J0, K0) | |
| 0 | 0 | 0 | 0 | 0 | 0 → 0 | (0, ×) | 0 → 0 | (0, ×) | 0 → 0 | (0, ×) | 0 → 1 | (1, ×) |
| 1 | 0 | 0 | 0 | 1 | 0 → 0 | (0, ×) | 0 → 0 | (0, ×) | 0 → 1 | (1, ×) | 1 → 0 | (×, 1) |
| 2 | 0 | 0 | 1 | 0 | 0 → 0 | (0, ×) | 0 → 0 | (0, ×) | 1 → 1 | (×, 0) | 0 → 1 | (1, ×) |
| 3 | 0 | 0 | 1 | 1 | 0 → 0 | (0, ×) | 0 → 1 | (1, ×) | 1 → 0 | (×, 1) | 1 → 0 | (×, 1) |
| 4 | 0 | 1 | 0 | 0 | 0 → 0 | (0, ×) | 1 → 1 | (×, 0) | 0 → 0 | (0, ×) | 0 → 1 | (1, ×) |
| 5 | 0 | 1 | 0 | 1 | 0 → 0 | (0, ×) | 1 → 1 | (×, 0) | 0 → 1 | (1, ×) | 1 → 0 | (×, 1) |
| 6 | 0 | 1 | 1 | 0 | 0 → 0 | (0, ×) | 1 → 1 | (×, 0) | 1 → 1 | (×, 0) | 0 → 1 | (1, ×) |
| 7 | 0 | 1 | 1 | 1 | 0 → 1 | (1, ×) | 1 → 0 | (×, 1) | 1 → 0 | (×, 1) | 1 → 0 | (×, 1) |
| 8 | 1 | 0 | 0 | 0 | 1 → 1 | (×, 0) | 0 → 0 | (0, ×) | 0 → 0 | (0, ×) | 0 → 1 | (1, ×) |
| 9 | 1 | 0 | 0 | 1 | 1 → 1 | (×, 0) | 0 → 0 | (0, ×) | 0 → 1 | (1, ×) | 1 → 0 | (×, 1) |
| 10 | 1 | 0 | 1 | 0 | 1 → 0 | (×, 1) | 0 → 0 | (0, ×) | 1 → 0 | (×, 1) | 0 → 0 | (0, ×) |