1. はじめに
Stratix®10 FPGA や Agilex™ FPGA には Secure Device Manager(以下、SDM)と呼ばれるハードコーデットされたモジュールがあります。
SDM へアクセスするには、Mailbox Client IP が必要となります。
※ Mailbox Client IP の概要については、以下の記事をご覧ください。
Mailbox Client Intel® FPGA IP の概要と使い方
この記事では、Nios® II から Mailbox Client IP を操作できるサンプルを紹介しています。
Nios® II から Remote System Upgrade(RSU)や QSPI アクセス、電圧/温度センサーからの情報取得を検討されている方にとって参考になれば幸いです。
【表 1】 本記事に添付しているサンプルコードおよび資料
ファイル名 | 概要 |
MailboxClientIPサンプル説明資料.pdf | サンプルの詳細説明資料 |
mb_hw.qar | ハードウェアのアーカイブファイル |
mb_sample.c | Nios® II の C 言語ソースコード |
注記:
【表 1】のサンプルコードおよび詳細資料は、本記事の最後に添付していますのでご活用ください。
このサンプルがお客様の設計に役立つかをご判断いただくために、次の章に 「2. サンプル概要」を記載します。
2. サンプル概要
2-1. 動作環境
本サンプルの動作環境は下記の通りです。
- Quartus® Prime 開発ソフトウェア: v21.3 Pro Edition
- Device: Stratix® 10 FPGA
- Board: Stratix® 10 SX SoC Development Kit H-tile
2-2. サンプルでできること
本サンプルでは大きく分けて 3 つの機能を試すことができます。対応する機能は以下の通りです。
- センサーから値取得
- 電圧センサーの値取得
- 温度センサーの値取得
- Remote System Upgrade(RSU)
- 起動しているイメージの格納アドレスの確認
- Flash 内のイメージを起動
- QSPI (コンフィグレーション ROM)アクセス
- QSPI Flash の情報取得
- イレース
- リード
- ライト
3. 参考資料
Mailbox Client IP の参考資料を以下に紹介します。
■ ユーザーガイド
Mailbox Client IP のユーザーガイドは下記リンクをご参照ください。
参考:
Mailbox Client Intel® FPGA IP User Guide
■ メーカーサンプル
tcl ベースで評価が可能なサンプルがメーカーから提供されています。
Stratix® 10 FPGA と Agilex™ FPGA のそれぞれでサンプルが用意されておりますので、ご使用のデバイスに合わせてご参照ください。
参考: Agilex™ FPGA 用のサンプル
Mailbox Client Intel FPGA IP Core Design Example(QSPI flash Access and Remote System Update)
参考: Stratix® 10 FPGA 用のサンプル
Stratix 10 Mailbox Client Intel FPGA IP Core Design Example(QSPI flash Access and Remote System Update)
4. おわりに
この記事では Mailbox Client IP のサンプルをご紹介しました。
実機に Nios® II を用いて実装する際には本サンプルコードが役に立つのかと思いますので、
是非ご活用ください。