プロが教えるわが家の防犯対策術!

フリップフロップについての質問です。JKFFでは出力されるのは現在の状態Qと次の状態Q+どちらが出力されるのですか?
例えばJ,K,Cp全てに1が入力されて現在の状態Qが0ならば出力されるのは1でしょうか。それとも出力されるのは0で、もう一度1が入力された時に1が出力されるのでしょうか。

質問者からの補足コメント

  • 質問の仕方がおかしかったです。すいませんでした。この問題を解くために質問をさせていただきました。
    xが1で一つ目のJKFFの現在の状態が0と仮定した場合、一つ目のJKFFのQからは現在の状態である0、もしくは次の状態である1のどちらが出力されるかがわかりません。

    「フリップフロップについての質問です。JK」の補足画像1
      補足日時:2018/06/09 17:00
  • 質問の仕方がおかしかったです。申し訳ありませんでした。
    この問題の解き方が知りたかったです。

    xが1、一つ目のJKFFの現在の状態を0と仮定した場合、一つ目のJKFFのQから出力されるのは現在の状態である0、もしくは次の状態である1のどちらかがわかりません。

    「フリップフロップについての質問です。JK」の補足画像2
      補足日時:2018/06/09 17:05

A 回答 (4件)

> 出力されるのは次の状態のQという認識でよろしいでしょうか


あなたが言う「次の状態」というのは 何の次 なのでしようか?
ちなみに小生は「次の状態」とは「Cp(当然アクティブエッジです)が入力された次」と考えています。
因ってCpが入った後の状態が前もって出力されている、なんてあり得ません。
あなたはどの信号の次、あるいは、どの状態の次の状態と考えておいででしょうか?

ところでこの問題何だか変ですね。
xに最初の0が入る以前のQ0、Q1が定義されていないので解析できないように思います。問題のどこかに初期状態が指定されていますか?
(左のFFのJ、KをJ0、K0、右のFFのそれをJ1、K1 と書きます)

以下、最初のCpが入った時の状態を考えてみました(この時xは0です)。
 K0 = x OR xバー なのでxにかかわらず常に1です。
 K1 = xバー ですから1です。
 J1 = Q0 OR x です。もし最初に Q0=1 だったなら J1=1 ですから最初のCpでQ1は反転します。しかしQ1の最初の状態が不明なので反転後に1になるのか0になるのかわかりません。
 もし最初に Q0=0 だったなら J1=0 ですから最初のCpで Q1=0 になります。
    • good
    • 0
この回答へのお礼

やっと理解できました。おっしゃる通り難しく考えすぎていたのかも知れません。非常にわかりやすく解説していただきありがとうございました。この問題には初期条件などは与えられておらずこれが全てです。

お礼日時:2018/06/09 22:05

#2です。


何だか難しく考え過ぎでは?
「現在の状態」とは現在Q、Qバーに出力されている値のこと。Cpの次のアクティブエッジまで維持されます。それ以降が「次の状態」です。

> xが1、一つ目のJKFFの現在の状態を0と仮定した場合、一つ目のJKFFのQから出力されるのは現在の状態である0、もしくは次の状態である1のどちらかがわかりません。
何が疑問なのか理解できないのですが、「Qは前の値と関係して1になるのか、無関係に1になるのか」というお尋ねでしょうか?
そうであるならJKの値に関係します。
JKが共に1ならQは前の状態から反転します。(Qは反転して1になることも0になることもある)
J=1、K=0 なら前の状態とは無関係に Q=1 になります。(反転する場合もしない場合もある)
他の2つの条件については下の表を。

ともかくJKFFはJKの入力に対して次のCpで次表の変化しかしません。
J K   Q
0 0   変化しない
0 1   0
1 0   1
1 1   反転する

内部で留保されている値なんてものもありません。

疑問点があれば何度でもどうぞ。とことんお付き合いさせていただきます。(最小積和形はわかりませんが・・・)
    • good
    • 0
この回答へのお礼

出力されるのは次の状態のQという認識でよろしいでしょうか

お礼日時:2018/06/09 19:01

デバイスによって違うので注意が必要です。


JKFFにはエッジトリガー型とマスタースレイブ型(MS型)があります。
エッジトリガー型ではJKの条件はCpのアクティブエッジで取り込まれると同時にQ、Qバーに出力されます。
MS型ではJKの条件はCpのインアクティブエッジで取り込まれ、次のアクティブエッジで出力されます。一般にこの間にはJKの条件は変化させてはいけません。

MS型の代表的なものはTTLの7473ですが、LSタイプの74LS73はエッジトリガーになっています。
C-MOSのFFはエッジトリガーが多いですね。
前述のようにインアクティブエッジから次のアクティブエッジの間はJKは変化させてはならないので、そのような回路設計はしません。因ってMS型とエッジトリガ型を混在して使ってもまず異常は生じません。しかしCpと非同期にJK条件が変化する使い方では注意が必要です。

CpのアクティブエッジはTTL系では立下り、C-MOS系では立ち上りが多いようです。
またDーFFというのがありますね。これはJKFFを改変したものなので特性は上記と同様です。

> 例えばJ,K,Cp全てに1が入力されて現在の状態Qが0ならば出力されるのは1でしょうか。
デバイスによって異なります。
上述のようにエッジトリガ型とMS型で違うし、出力がCpの立ち上りで変化するタイプと立下りで変化するタイプがあるためです。
なおCpを変化させずにJKだけを変化させたのでは出力のQ、Qバーは変化しません。
    • good
    • 0

トリガー信号に依る

    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!