アーキテクチャ概要¶
SF32デバイスでは、プロセッサー、メモリー、専用ハードウェアの構成が型番によって異なります。選択したデバイスに対応するブロックが実装されていれば、時間制約の厳しい処理や常時動作が必要なタスクを専用サブシステムに任せることができます。また、適切なアクセラレーターを備えるデバイスでは、グラフィックス処理など対応する処理をハードウェアで実行できます。本セクションでは、アーキテクチャに関する情報を五つの設計判断に沿って整理します。アプリケーションコードの実行場所、コードやバッファーの配置、ワイヤレスコントローラーに任せる処理、専用タスクエンジンを使う場面、そして選択したデバイスが必要なアーキテクチャブロックやインターフェースを備えているかどうかです。
ワークロードから始める¶
表: 判断したい内容に応じて読む記事を選ぶ
| 判断する必要があること… | ここから開始 | 明らかになること |
|---|---|---|
| アプリケーションファームウェアがどのように実行され、メモリーシステムとどう連携するか | STAR-MC1 | 該当するSF32デバイスにおける、Cortex-M33互換のアプリケーションプロセッサーモデル、キャッシュの挙動、ワークロードの特性。 |
| コード、アセット、大容量のバッファーやレイテンシが重要なバッファーの配置場所 | PSRAMと組み込みシステムで使われる他のメモリーの比較 | PSRAM、SRAM、DRAM、RRAM、MRAMを、容量、レイテンシ、データ保持性、帯域幅、消費電力の観点から比較します。 |
| Bluetooth処理のうち、コントローラーと製品ファームウェアがそれぞれ担う範囲 | Bluetoothプロセッサー | コントローラーのタイミング、ホスト/アプリケーションの役割、RF設計、低消費電力動作の関係を整理します。 |
| 独自のペリフェラル処理にプログラマブルなタスクエンジンが必要か | PTM(Parallel Task Machine) | SF32LB57xのハードウェア設計ガイドには、固定機能ペリフェラルでは対応しにくい小規模でタイミング要件の厳しい処理に使える、16チャネルのPTMブロックが1つ記載されています。 |
| 選んだデバイスが必要なアーキテクチャ機能やインターフェースを備えているか | SF32ファミリー | デバイス選定では、メモリー、インターフェース、ワイヤレス機能、アクセラレーターの有無を含めて確認します。 |
実践的な判断ルール¶
アーキテクチャは、次の順に検討してください。
- 製品ロジック、UIの動作、アプリケーションの制御方針、一般的なドライバー処理はアプリケーションファームウェアで実装します。STAR-MC1の記事を参考に、選択したデバイスと実際のワークロードに照らしてプロセッサーやキャッシュの挙動を評価してください。汎用ベンチマークの数値だけでは、実際のアプリケーション性能は判断できません。
- コードとデータの配置先は設計の早い段階で決めます。レイテンシが重要なコードやデータは適したメモリー階層に配置し、UI、オーディオ、AI、通信のワークロードを確定する前に、外部メモリーの容量、インターフェース帯域幅、消費電力を見積もります。
- Bluetoothコントローラーのタイミング処理と、製品レベルの方針判断を分けて考えます。Bluetoothプロセッサーの記事では、コントローラー、ホスト、アプリケーション、RF設計、低消費電力動作の役割分担を確認できます。
- 独自のペリフェラル処理を実装する前に、既存のタイマー、DMA、UART、SPI、I2C、オーディオ、ディスプレイ、Bluetoothの機能で要件を満たせるか確認します。SF32LB57xでは、厳密なタイミング制御が必要な場合、または標準機能では適切に実現できない場合にPTMを検討してください。
どの設計判断でも、アーキテクチャブロックが搭載されている、またはユーザーがプログラムできると決めつける前に、対象デバイスの仕様を確認してください。SF32LB57xのハードウェア設計ガイドには16チャネルのPTMブロックが1つ記載されています。PTMを前提とする設計では、対象デバイスの資料で対応状況を確認してください。
最終更新: