inflearn logo
知識共有
inflearn logo

AMBA AXI4バス設計とFPGA実装 — RTLからシステム統合まで

AMBA AXI4プロトコルの基本原理から、Verilog RTL設計、Vivadoシミュレーション検証、FPGA実装までを段階的に学習します。単一の読み出し・書き込み、Burst転送、マルチマスター調停、アドレスデコードを経て、2-Master × 2-Slaveインターコネクトを完成させます。さらに、RISC-V CPUとメモリ、DMA、周辺機器を接続するSoC設計、およびFreeRTOSポーティングに必要なハードウェア基礎能力を身につけます。

1名 が受講中です。

難易度 中級以上

受講期間 無制限

FPGA
FPGA
verilog
verilog
soc
soc
amba
amba
rtl
rtl
FPGA
FPGA
verilog
verilog
soc
soc
amba
amba
rtl
rtl

受講後に得られること

  • AXI4プロトコルのVALID/READYハンドシェイクと5つのチャネル構造を理解し、Verilog RTLでMaster/Slaveモジュールを実装する

  • 複数のMasterとSlaveを接続するAXI Interconnectの設計、およびアドレスデコード・調停ロジックの実装

  • FPGAまたはシミュレーターにおけるAXI4ベースSoCシステムの統合および検証

AMBA AXI4バス設計とFPGA実装 — RTLからシステム統合まで

AXI4プロトコルの理解からVerilog RTL設計、シミュレーション検証、FPGA実装まで!10段階の実習で学ぶSoCバスおよびインターコネクト設計


CPUとメモリ、DMAはどのようにデータをやり取りするのでしょうか?

CPUがメモリにデータを書き込んだり読み出したりするとき、DMAがデータを転送するとき、複数のデバイスが同時に同じメモリにアクセスするとき、システム内部ではどのようなことが起こるのでしょうか?

このようなデータ転送を可能にする主要なインターフェースの1つが、AMBA AXI4(Advanced eXtensible Interface 4)です。

AXI4は、CPU、DMA、メモリ、ハードウェアアクセラレータなど、さまざまなIPを接続するSoC(System on Chip)設計で広く使用されているインターフェースプロトコルです。

しかし、AXI4を初めて学ぶ学習者にとっては、さまざまな難しさがあります。

  • AW、W、B、AR、Rという5つのチャネルは、それぞれどのような役割を果たすのか?

  • VALIDとREADYが同時に1の場合、データは正確にはいつ転送されるのか?

  • バースト転送では、1つのアドレス要求で複数のデータをどのように転送するのか?

  • CPUとDMAが同時にバスを要求した場合、どちらが先に使用できるのか?

  • 複数のSlaveのうち、どのデバイスにデータを送るかはどのように決定するのか?

  • 設計したRTLが正しく動作するかは、どのように確認するのか?

この講義では、これらの疑問に対し、実際にRTLを設計し、シミュレーション波形を分析することで直接答えます。

理論で終わらないAXI4設計講座

本講座はAXI4プロトコルの説明だけで終わりません。

Verilog HDLでAXI MasterとSlaveを設計し、FSM(Finite State Machine)を通じてデータ転送を制御します。その後、バースト転送、マルチマスターの調停、アドレスデコードを段階的に実装し、最終的に2-Master × 2-Slaveのインターコネクトシステムを構成します。

最終段階では、Vivadoを活用したFPGA実装および検証のプロセスを学習します。

重要なのはコードを書くことだけでなく、作成したRTLがクロックごとにどのように動作するのかを理解することです。

FSMの状態遷移、VALID/READYハンドシェイク、アドレスとデータの転送、応答処理の過程をシミュレーション波形と関連付けて分析します。

これにより、AXI4の動作原理を実際のデジタル回路の観点から理解できるよう構成しています。

また本講座は、今後RISC-V CPUとメモリ、DMA、周辺機器を1つのSoCに統合し、FreeRTOSなどのRTOSをポーティングする発展的な学習へとつながる基礎講座です。


4つのセクション、10のChapter、10のPhaseで学ぶAXI4設計

セクション1. AMBA AXI4の基礎と単一書き込み転送

Chapter 1–2 | Phase 1

AXI4の基本構造を理解し、Verilog HDLでSingle Write Transactionを設計します。

  • AMBAとAXI4の関係およびSoCインターコネクトの役割

  • AXI4の5つのチャネル(AW、W、B、AR、R)

  • VALID/READYハンドシェイクとデータ転送条件

  • AXIマスターおよびBRAMスレーブのRTL設計

  • FSM状態遷移と単一書き込み転送の実装

  • Vivadoシミュレーションによる書き込み動作の検証

学習成果:AXI4の基本的な転送原理を理解し、単一書き込み回路のRTLとシミュレーション波形を分析できるようになります。

セクション 2. AXI4 読み取りと Burst 転送設計

第3~5章|フェーズ2~5

単一読み取りから、複数のデータを連続して転送するBurst機能まで拡張します。

  • Single Read TransactionとAR/Rチャネル

  • スレーブ読み出し遅延とVALID/READYフロー制御

  • Write BurstとRead Burstの転送構造

  • バースト長と最後のデータビートの処理

  • 読み取り・書き込みチャネルの独立した動作

  • Verilog FSM設計とテストベンチ検証

  • Vivadoの波形によるデータ転送の分析

学習結果:単一転送とバースト転送の違いを理解し、読み出し・書き込み動作をRTLと波形で分析できるようになります。

セクション3. Multi-Masterとアービトレーション、アドレスデコーディング

第6~8章|フェーズ6~8

1つのMasterとSlaveを接続する構成から発展し、CPUとDMAがバスを共有するシステムを設計します。

  • CPUとDMAのマルチマスターシステム構造

  • Request/Grantベースのバス使用権限制御

  • アービトレーションとバス調停ポリシー

  • FSMを活用したバス使用権の取得と返却

  • アドレスに応じたSlave選択とアドレスデコーディング

  • BRAMおよび周辺機器のアドレス範囲

  • バス調停と実際のデータ転送タイミングの区別

  • シミュレーションによるマルチマスター動作の検証

学習成果:複数のMasterがバスを共有する仕組みを理解し、調停とアドレスデコーディングの動作を分析できるようになります。

セクション 4. AXI4システム統合とFPGA実装

第9~10章|フェーズ9~10

これまで学習したAXI4転送、調停、アドレスデコーディングを1つのシステムに統合します。

  • 2-Master × 2-Slaveインターコネクト構成

  • CPU・DMAとBRAM・OLEDの接続構成

  • アービトレーションとアドレスデコーディングの統合

  • 読み取り・書き込みチャネル別の独立した転送経路

  • 異なるSlaveにアクセスするMasterの同時進行

  • 統合システムのRTLおよびシミュレーション検証

  • FPGAトップモジュールと下位モジュールの接続

  • Vivadoの合成、実装およびビットストリーム生成

  • FPGAボードベースのシステム動作確認

学習成果:AXI4インターコネクトの統合構造を理解し、シミュレーション検証からFPGA実装までつながる設計プロセスを体験できます。


この講義ならではの特徴

1. 単一転送からシステム統合まで段階的に学習

最初から複雑なAXI4インターコネクトを提示することはありません。

単一の書き込みと読み出しから始め、Burst転送、Multi-Master、Arbitration、Address Decodingを順を追って学習します。

各段階で学んだ概念が、次の段階の設計へとつながるように構成しています。

2. FSMとシミュレーション波形を中心とした学習

AXI4は信号の名前を覚えるだけでは理解しにくいものです。

本コースでは、FSMの状態遷移と、実際にハンドシェイクが成立するクロックを関連付けて説明します。

これにより、アドレス要求、データ転送、応答処理がどのような順序と条件で行われるのかを確認します。

3. Verilog RTLベースの実習

提供されるVerilog RTLとテストベンチを活用して、各Phaseの動作を学習します。

Vivadoでシミュレーションを実行し、波形を通じて回路の機能を検証する方法を学びます。

単なるプロトコル概念の説明にとどまらず、実際のRTL設計構造を理解することに重点を置きます。

4. 実際のSoC設計につながるシステム的な視点

CPUとDMA、BRAMとOLEDを接続する教育用インターコネクトを通じて、バス調停とアドレスデコーディングの必要性を学びます。

これは将来的にRISC-V CPU、DMA Controller、NPU、メモリコントローラなど、さまざまなハードウェアIPを接続するシステム設計を理解するための基盤となります。

5. FPGA実装までつながる設計フロー

RTLの記述とシミュレーションで学習を終えることはありません。

Vivadoを活用した合成、実装、ビットストリーム生成およびFPGAボード検証のプロセスを通じて、RTLが実際のハードウェアとして実装される流れを学びます。

6. RISC-V SoCとRTOSベースのシステム設計へとつながる基礎課程

本講義は、今後RISC-V CPUとメモリ、DMA、センサー、ディスプレイなどさまざまな周辺機器を接続し、RTOS(Real-Time Operating System)をポーティングするために必要な、ハードウェアシステム設計の基礎を身につけるためのコースです。

RISC-V CPUを設計するだけでは、完全な組み込みシステムを構成することはできません。CPUがメモリや周辺機器にアクセスできるように、バスインターフェース、アドレスデコーディング、データ転送、およびインターコネクト構造を理解する必要があります。

本コースで学習するAXI4設計技術は、今後のRISC-VベースSoC統合、メモリマップベースの周辺装置制御、割り込みおよびRTOS実行環境の構築に活用できる基礎知識です。

AXI4バス設計から始め、RISC-V SoC統合、さらにFreeRTOSなどのRTOSを活用した組み込みシステム開発へと学習を広げられるよう構成された基礎段階です。


受講後に身につくスキル

本コースを修了すると、次のようなスキルを身につけることを目標とします。

  1. AXI4プロトコルの理解:5つのチャネルの役割とVALID/READYハンドシェイクを説明できます。

  2. RTL設計および分析:AXI Master・SlaveとFSMの構造を理解し、転送動作を分析できるようになります。

  3. バースト転送の理解:連続データ転送と完了条件を説明できます。

  4. インターコネクト設計:Multi-Master ArbitrationとAddress Decodingの動作を理解できます。

  5. シミュレーション検証:Vivadoテストベンチと波形を活用してRTLの動作を検証できます。

  6. FPGA実装:AXI4ベースシステムのFPGA統合および実装フローを理解できます。

  7. 次世代システム設計の準備:RISC-V CPUと周辺機器を接続するSoC構造を理解し、今後のRTOS移植に必要なハードウェアの基礎知識を身につけることができます。

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

  • 電子工学・半導体専攻の学生:AXI4とSoCインターフェース設計を体系的に学びたい方

  • Verilog HDL学習者:基本的なデジタル回路設計からバスおよびシステム設計へとステップアップしたい方

  • FPGA・RTL設計エンジニア:AXI4の内部動作とインターコネクト構造を理解したい方

  • CPU・NPU・SoC開発の入門者:CPU、DMA、メモリおよびハードウェアアクセラレータの接続構造を学びたい方

  • RISC-VおよびRTOS開発の学習者:CPUと周辺機器の接続構造を理解し、今後FreeRTOSベースの組み込みシステム設計へと学習を発展させたい方

前提知識および実習環境

推奨される前提知識

  • デジタル論理回路の基本概念

  • Verilog HDLの基本文法

  • クロックベースの順序回路とFSMに関する基礎理解

  • Vivadoの使用経験があると学習に役立ちます。

実習環境

  • HDL:Verilog

  • 開発ツール:AMD Vivado 2023.1

  • 実習資料:段階別RTL、テストベンチ、実行スクリプト

  • 実習方式:VivadoシミュレーションおよびFPGA実装

  • FPGA実習:講義で使用するボードおよび制約ファイルを基準に実施

講義資料および学習案内

本コースは全150ページの講義資料をもとに構成されており、4つのセクションと10のChapterにわたってAXI4の設計原理を段階的に説明します。

実習用RTL、テストベンチおよび実行スクリプトは、講義で案内する資料リポジトリを通じて提供されます。

各Phaseの演習は提供されたファイルを基準に進め、教材制作の過程で実施した内部検証と、受講生が直接実行する演習は区別します。

講義範囲のご案内

本課程はAMBA AXI4仕様全体のすべての機能を実装するものではありません。AXI4の中核となる動作原理を理解するための教育用サブセットを使用し、実装されている機能とサポートしていない機能を区別して説明します。

また、RISC-V SoCの統合とFreeRTOSのポーティングは本講義で直接実装する範囲ではなく、本課程で習得したAXI4設計の知識を活用して発展させられる、後続の学習分野です。


AXI4からRISC-V SoC、そしてRTOSベースのシステム設計まで

この講義では、AXI4の基本信号とプロトコルを理解することから始め、Verilog RTL設計、シミュレーション検証、マルチマスター・インターコネクトの構成およびFPGA実装まで学習します。

さらに、RISC-V CPU、メモリ、DMA、周辺装置を1つのSoCに統合し、FreeRTOSのようなRTOSを移植する発展的な学習へとつなげられる基盤を構築します。

AXI4バス設計を出発点として、CPUと周辺装置が連携して動作する組み込みシステム設計まで、学習の領域を広げてみましょう。

こんな方に
おすすめです

学習対象は
誰でしょう?

  • Verilogの基本文法を知っており、FPGAまたはASIC設計を目指す電子工学専攻者

  • デジタル回路設計の経験はあるものの、システムバスインターフェースを初めて学ぶRTL設計初心者

  • RISC-V CPU、NPU、メモリコントローラーなどのSoCコンポーネント開発を準備する半導体設計エンジニア

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

  • Verilog HDLの基本文法、組み合わせ回路および順序回路の設計経験

  • デジタル論理回路のレジスタ、FSM(有限状態機械)の概念理解

  • シミュレーションツール(ModelSim、Vivadoなど)またはFPGA開発環境の使用経験

こんにちは
EdgeChipLabです。

キャリア認証

"AI時代、最も確実な対応は自分で直接AI半導体を作ることです。"

この講座は、理論中心の一般的な大学講義でも、特定のスペックに合わせることにとどまる契約学科の標準化されたカリキュラムでもありません。また、従来の断片化された実務セミナーのように、単なるEDAツールの使用経験やライブラリの活用にとどまるものでもありません。

サムスン電子DS部門のシステム半導体研究員としてキャリアをスタートし、設計自動化分野でサムスン技術賞銀賞(グループ会長賞)を受賞、英国・ドイツ法人のDirectorおよびシステムLSIマーケティング・営業グループ長を歴任した30年のキャリアを持つ現職の工学教授が自ら設計し、FPGAで検証した他に類を見ない実践型コースです。

[ 現役社員&エンジニアを目指す方のための核心的な差別化ポイント ]

  • 現役エンジニアの限界を克服:単にコードを修正したり既製IPを流用したりするレベルを超え、NPUとCPUをRTLで直接設計するアーキテクチャレベルの実務能力を身につけます。

  • Full-Flow実務体制の構築:AIアルゴリズムの分析からFPGA実装、Bit-Trueハードウェア連携検証、さらにCPU + NPU + RTOSベースのAI SoC拡張まで、バリューチェーン全体を完遂します。

  • 現場検証済み:大学の講義室で学ぶ理論を超え、実務の最前線における設計ノウハウを集約し、すぐに実務へ適用できる実証済みのプロセスを提供します。

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

学部生・大学院生はもちろん、次世代AI半導体/SoC設計者として飛躍したい現役実務者にも、他では得られない最高の実践ガイドを提供します。

 

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

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

受講生は完成したブラックボックスIPを使用するだけにとどまりません。AI NPUとRISC-V CPUを自ら設計し、メモリと周辺機器を統合したうえで、その上にRTOSをポーティングし、最終的に独自の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環境で完全動作

     

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

もっと見る

カリキュラム

全体

4件 ∙ (2時間 25分)

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

受講レビュー

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

EdgeChipLabの他の講座

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

似ている講座

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

期間限定セール

¥6,096

29%

¥8,606