inflearn logo
知識共有
inflearn logo

FSM設計入門 | 状態図からVerilog-HDL 3-Process実装まで

デジタル半導体制御回路の核心であるFSM(Finite State Machine)設計を、基礎から体系的に学ぶ無料講座です。MooreとMealyの構造比較、State Diagramの作成、Truth Tableの導出、Verilog-HDL 3-Process Codingまで、Pattern Detectorの例を通して実践的な設計プロセスを段階的に習得します。FPGA、RISC-V CPU、AI NPUなど、デジタルハードウェア設計に必須の基礎理論を確立できます。

1名 が受講中です。

難易度 入門

受講期間 無制限

verilog
verilog
diagram
diagram
digital-logic
digital-logic
context-switching
context-switching
rtl
rtl
verilog
verilog
diagram
diagram
digital-logic
digital-logic
context-switching
context-switching
rtl
rtl
Thumbnail

受講後に得られること

  • FSM状態図の設計およびMoore/Mealy構造の選択基準

  • 状態図から真理値表を経てVerilog-HDL 3プロセスコードへ変換する体系的な設計プロセス

  • ラッチ防止およびOutput Registerの活用を含む、安定したRTLコーディング原則

FSM設計入門 | 状態図からVerilog-HDL 3-Process実装まで

デジタル半導体の制御回路はどのように設計するのでしょうか?

信号機、自動販売機、通信コントローラからCPUやAI NPUまで、さまざまなデジタルシステムは、定められた条件と順序に従って動作します。

このような順序に沿った動作を体系的に設計するための核心技術が、まさにFSM(Finite State Machine、有限状態機械)です。

本講座では、FSMの基本概念からMoore・Mealy構造、State Diagram、Truth Table、Verilog-HDLの3-Process Codingまでを段階的に学ぶ 無料FSM設計理論コースです。

FSMコードを単に暗記するのではなく、状態図 → 真理値表 → RTLコードへとつながる設計プロセスを理解することに重点を置きます。


この講座で学ぶ内容

セクション1. FSMの基本概念と構造

FSMとは何か、デジタル回路においてどのような役割を果たすのかを学びます。

  • 組み合わせ回路と順序回路の違い

  • FSMの基本構造と状態レジスタ

  • StateとState Transitionの概念

  • State Diagramの構成要素

  • Pattern Detector 111을 이용한 상태 정의와 State Encoding

学習ポイント: デジタルシステムの動作を状態と遷移条件で表現する方法を理解します。


セクション 2. MooreとMealy FSM

FSMの代表的な2つの構造を比較し、設計目的に応じてどちらの構造を選択するかを見ていきます。

  • Moore Machineの構造と動作原理

  • Mealy Machineの構造と動作原理

  • 出力タイミングとグリッチの違い

  • タイミング・クロージャと出力の安定性

  • 状態数と応答速度のトレードオフ

  • Output Registerを活用したHybrid構造

学習ポイント: MooreとMealyの違いを理解し、実際のハードウェア設計で考慮すべき事項を身につけます。


セクション3. FSM設計とVerilog-HDL実装

Pattern Detector 111の例を用いてFSMを設計し、Verilog-HDLコードで表現する過程を学習します。

  • 状態図の作成

  • 次状態真理値表と出力真理値表

  • 状態レジスタ、次状態ロジック、出力ロジック

  • Verilog-HDL 3プロセス・コーディング

  • 1プロセス、2プロセス、3プロセス構造の比較

  • ラッチが発生する原因と防止方法

  • 出力グリッチとOutput Register

  • FSM設計の核心原則

学習ポイント:状態図と真理値表に基づいて、FSMのRTLコードを体系的に記述する方法を理解します。


この講座を受講して得られること

  1. FSMの構造と動作原理を理解
    状態と状態遷移の概念を理解し、デジタルシステムの制御動作をState Diagramで表現できるようになります。

  2. MooreとMealy構造の違いを理解
    出力方式、応答速度、グリッチおよびタイミング特性を比較し、設計時に考慮すべき事項を説明できます。

  3. 状態図からRTLコードまでの設計手法を習得
    State DiagramとTruth Tableを作成し、それをVerilog-HDLの3-Process構造に変換する方法を身につけます。

  4. 正しいFSMコーディング原則の学習
    1・2・3-Process Coding Styleの違いを理解し、Latchや出力Glitchなどの主要な設計問題を防ぐための基本原則を学びます。


このような方におすすめです

  • Verilog-HDLの基本文法を学んだ後、FSM設計を学びたい方

  • FPGA設計とデジタル制御回路の実装に関心がある大学生および入門者

  • State DiagramとTruth TableをRTLコードに変換する方法を学びたい方

  • MooreとMealy FSMの違いを明確に理解したい方

  • RISC-V CPU、AI NPUおよびSoCの制御回路設計を学ぶ準備をしている方


なぜFSMを学ぶのでしょうか?

デジタルハードウェア設計では、演算回路と同じくらい制御回路が重要です。

データをいつ読み込み、いつ演算を開始し、結果が準備できたかをどのように判断するのでしょうか?

このような動作の順序を管理するために、FSMが活用されます。

特にFPGA、CPU、NPUおよび通信コントローラでは、複数の動作を定められた順序に従って実行する必要があるため、状態と遷移条件を明確に定義する設計能力が重要です。

本講座では、Pattern Detector 111という簡単な例を通して、FSM設計の全体的な流れを説明します。

1つの例を状態遷移図、真理値表、Verilog-HDLコードへとつなげて見ていくことで、FSMの設計方法を体系的に理解できるよう構成されています。


受講案内

本講座はSemiconductor School | EdgeChipLabの無料基礎教育課程です。

Verilog-HDLのModule、Always、If/Caseおよび組み合わせ・順序論理に関する基礎知識があると、よりスムーズに学習できます。事前学習が必要な方は、無料講座「デジタル半導体設計のためのVerilog-HDL入門」を先に受講してください。

本講座ではFSM設計の理論とRTLコードの構造を説明し、実際のVerilog-HDLコーディング、VivadoシミュレーションおよびFPGA実装については、後続の実習課程で扱います。

FSMの概念を理解するだけで終わらせず、状態図を真理値表に、真理値表をRTLコードへとつなげる設計思考を身につけましょう。

Semiconductor School | EdgeChipLab

こんな方に
おすすめです

学習対象は
誰でしょう?

  • Verilog-HDLの基本文法を学び、FSM設計へと発展させたい大学生および初心者

  • FPGAおよびデジタル制御回路の実装を準備する学習者

  • RISC-V CPU、AI NPU、SoC制御回路設計に関心のあるエンジニア

前提知識、
必要でしょうか?

  • デジタル論理回路における組み合わせ論理と順序論理の概念

  • フリップフロップとクロックの基本動作原理

  • Verilog-HDLのModule、Always、If/Case構文の基礎

こんにちは
EdgeChipLabです。

キャリア認証

AI半導体をFPGAで自ら設計・実装します

現職の大学教授として、システム半導体業界で30年間培った経験とAI半導体の研究・教育ノウハウを盛り込みました。

サムスン電子DS部門のシステム半導体研究員を皮切りに、英国およびドイツ法人のDirector、システムLSIマーケティング・営業グループ長を経て、現在は半導体工学を教える教授が自ら設計し、FPGAで検証した実践型カリキュラムです。

単にFPGAの使い方を学ぶ教育ではありません。
AIアルゴリズムを理解し、→ NPUとCPUをRTLで自ら設計し、→ FPGAに実装し、→ 実際のハードウェアで検証し、→ 最終的にAI SoCまで拡張するプロセスを目指します。

AIアルゴリズム → RTL設計 → FPGA実装 → ビット真値検証 → AI SoC

 

理論を超え、実際のAIハードウェア実装へ

断片的で散在した知識だけでは、システムレベルのAI半導体設計能力に到達するのは困難です。

受講生は完成したブラックボックスIPを使用するだけにとどまりません。AI NPUとRISC-V CPUを自ら設計し、メモリや周辺機器を統合し、最終的に自分だけのAI SoCを構築できるシステム設計能力を段階的に身につけることを目標とします。

トランジスタとデジタル回路の基礎から始め、FPGA、CPU、NPUを経てTransformerとLLMのアクセラレーションハードウェアまでつなげます。

 

研究成果を実際のFPGAハードウェアで検証します。

目で見るだけの講義ではありません。理論や単なるシミュレーションで終わらせず、自ら設計したAI半導体回路を実際のFPGAで動作させ、PythonモデルとRTLの結果が1ビットまで一致するBit-True検証を実施します。

講師のAI半導体・FPGA・RISC-V関連のKCI収載論文4編を含む研究成果も教育コンテンツと関連付け、研究で検証した技術を実際の設計とFPGA実装へとつなげます。

独自開発したRISC-V CPUをはじめ、画像学習用のPythonコードやVerilog RTLなど、実習に必要なソースコードを公開します。

普及価格帯のArty S7-25 FPGAボードと無料のVivado設計ツールを中心に構成し、学習者が自ら設計・実装・検証する全工程を再現できるようにしました。

また、Zybo Z7を含むDigilent社のFPGAボードでも使用できます。XDCピンマッピング(ボード)とクロック分周パラメータ(RTL)をボードに合わせて修正してください。

'FPGA로 만드는 MNIST NPU'講義はXDCピンマッピングのみを修正すればよく、OLEDとCameraを使用する講義ではクロック分周パラメータ(RTL)を修正する必要があります。

→講義の実習は、Arty S7の100 MHz入力クロックを基準に分周パラメータが設定されています。ほかのボードは入力クロックが異なるため(例:Zybo Z7は125 MHz)、目標周波数が同じになるように分周値を再計算してください。この部分を見落とすと画面や映像が正常に出力されませんが、コードのエラーと誤解しやすいため、ご確認ください。

 

断絶のないフルスタックロードマップ:基礎からmini LLMアクセラレーターまで

すべての講義は独立した断片ではなく、一つの巨大なシステムを完成させていく旅です。

  • Step 1: AI理論および画像処理の基礎(Machine Learningを含む)

  • Step 2: AIアクセラレータ(NPU)の設計および検証(Machine Learningを含む)

  • Step 3: RISC-V CPU設計およびシステム統合

  • Step 4: 高度AI SoCの実装およびmini LLMアクセラレーションプラットフォームへの拡張(継続的なコンテンツ更新)

     

 

客観的な検証指標

本コースのすべての設計成果物は、グローバル標準および学界による厳格な検証を経ています。

  • RISC-Vアーキテクチャ検証:独自開発のRISC-V CPUが国際財団公式コンプライアンステスト(ACT)に合格し、ソースコードを公開(GitHub)

  • 学術的権威:単独著者による学術論文4本(KCI Aランクの著名学術誌IJIBC)

  • グローバルな評価:Amazonで技術書4冊を出版(ベストセラー1位を達成)


    出版書籍: Roger Kim: books, biography, latest update

  • 実動作検証完了:RV32I CPU、NPU、ビジョンシステム、GPS、Transformer、AURA-Edge SoCなどの主要IPがArty S7環境で完全動作

     

挑戦してください。実際にコードをボードに書き込み、結果を確認するこのプロセスを終える頃には、皆さんは以前とはまったく異なる視野を持つハードウェアエンジニアへとレベルアップしていることでしょう。

もっと見る

カリキュラム

全体

3件 ∙ (23分)

講座掲載日: 
最終更新日: 

受講レビュー

まだ十分な評価が集まっていない講座です。
ぜひ最初のレビューをお寄せください。

EdgeChipLabの他の講座

知識共有者の他の講座はこちら

似ている講座

同じ分野の他の講座を見てみましょう!

無料