第4章 · ハードウェアとインタフェース·v1.0.0·更新 2026/7/10·読了目安 約15分
変更要約: 初版
4.1論理回路
この節の要点
入力の組合せだけで出力が決まる組合せ回路と、過去の状態を記憶する順序回路の違い、カルノー図による論理式の簡単化、状態を保持するフリップフロップ、そしてクロック同期回路のセットアップ時間・ホールド時間制約を学び、組込みハードウェア設計の判断力を養います。
組込みハードウェアの設計者にとって、論理回路は「動くか動かないか」の二択ではなく、ゲート数(コスト・消費電力)とタイミング制約(動作クロック上限)の両方を満たす回路を作る作業です。同じ論理式でも実装によってゲート数が変わり、同じフリップフロップでもデータ到着タイミングを誤ると誤動作します。この節では、組合せ回路と順序回路の性質の違いを踏まえ、回路を簡単化し、かつ正しく同期させるという2つの判断軸を養います。
4.1.1組合せ回路と順序回路
- 組合せ回路=AND/OR/NOT等のゲートのみで構成され、出力が現在の入力だけで一意に決まり、過去の状態を一切記憶しない回路。加算器やデコーダ、マルチプレクサなどが代表例で、内部にフィードバック経路(自分の出力を自分の入力に戻す配線)を持たない。
- 順序回路=組合せ回路に記憶素子(フリップフロップ)とフィードバック経路を加えた回路で、同じ入力でも「今の内部状態」次第で出力が変わる。カウンタ・レジスタ・状態遷移を実装する有限状態機械(FSM)は順序回路の代表例。組込みのプロトコル処理や制御ロジックは基本的に順序回路として設計される。
4.1.2カルノー図による簡単化
- カルノー図=真理値表を格子状に並べ替え、隣接するマス(1ビットだけ異なる入力の組)を隣り合わせに配置することで、論理式の簡単化を視覚的に行う手法。隣接する1(真になる出力)を2の累乗個(1・2・4・8…)でグループ化すると、そのグループでは変化しない変数だけが残る積項として簡単化できる。
- カルノー図の効果はゲート数の削減=実装コストと消費電力の削減に直結する点にある。組込み機器はFPGA/ASICの面積制約やMCU内蔵の簡易ロジック(GPIO割込み条件生成等)でゲート数がそのままコストに跳ね返るため、代数的な簡単化(ブール代数の定理適用)より視覚的で見落としが少ないカルノー図が実務でも使われる。ただし変数が5つ以上になると格子が煩雑になり、実務ではツール(論理合成系の自動最適化)に委ねることも多い。

