当サイトの一部ページには、アフィリエイト・アドセンス・アソシエイト・プロモーション広告を掲載しています。

Amazonのアソシエイトとして、Security Akademeiaは適格販売により収入を得ています。

広告配信等の詳細については、プライバシーポリシーページに掲載しています。

消費者庁が、2023年10月1日から施行する景品表示法の規制対象(通称:ステマ規制)にならないよう、配慮して記事を作成しています。もし問題の表現がありましたら、問い合わせページよりご連絡ください。

参考:令和5年10月1日からステルスマーケティングは景品表示法違反となります。 | 消費者庁

Data Flip-Flop【NandGame編】

はじめに

いつもブログをご覧いただきありがとうございます。

コーストFIRE中のIPUSIRONです😀

IPUSIRONのプロフィールを見る

Data Flip-Flopレベル

Data Flip-Flopレベルのゴールは、次の真理値表を実現する回路を組むことです。

std出力
00unchanged
01unchanged
101
110
解くべき回路の真理値表

レベルの説明を参考にすると、Dフリップフロップ(以降、D-FFと略す)について言及しています。

デジタル回路本からD-FFの真理値表を調べてみると、次のようになります。

EDQk+1 ̄Qk+1
0xQk ̄Qk
1001
1110
Dフリップフロップの真理値表

出力が ̄Qk+1側に注目すると、当該レベルで与えられた真理値表と一致しています。

Data Flip-Flopレベルうを解く

真理値表だけを見るとD-FFを組むように見えますが、キャンバスの下を見るとクロック信号用のcl端子もあります。説明文をよく読むと、クロック信号が0から1に変化したときだけ、出力を変化させるとあります。

つまり、D-FFの原型を組むのではなく、エッジトリガー型D-FFを組むことになります。

この回路は10つのコンポーネントを使い、内部的に10個のNandゲートから構成されています。

※動いたはずの回路が動かなくなるという謎の現象を確認しました。

※Latchを使った回路にすると、[Check solution]ボタンを押した際に[Reset state]ボタンが現れました。

内部のNandを最小化する【別解】

この回路は内部的に9個のNandゲートから構成されます。

※新バージョンのNandGameではクリア扱いにならない?

ラッチを活用する【別解】

latchコンポーネントが用意されているので、これを活用してみます。

次の回路が考えられますが、新バージョンのNandGameではクリア扱いになりませんでした。

別のバージョンとして次の回路を考えてみました。

クリアできましたが、内部的に15個のNandゲートで効率があまりよくありません。