SoC Blockset
SoC ハードウェア アーキテクチャおよび SoC ソフトウェア アーキテクチャの設計、評価、実装
SoC Blockset™ は、ASIC、FPGA、システムオンチップ (SoC) 用のハードウェア アーキテクチャおよびソフトウェア アーキテクチャのモデル化、シミュレーション、解析を行うための Simulink® ブロックおよび可視化ツールを提供します。メモリモデル、バスモデル、I/O モデルを使用してシステム アーキテクチャを構築し、そのアーキテクチャをアルゴリズムと一緒にシミュレーションできます。
SoC Blockset では、生成されたテストトラフィックまたは実際の I/O データを使用して、メモリと内部および外部の結合性や、スケジューリングと OS の影響をシミュレーションできます。さまざまなシステム アーキテクチャをすばやく調べ、ハードウェアとソフトウェアの分割に伴うインターフェイスの複雑度を予測し、ソフトウェアのパフォーマンスとハードウェア使用率を評価できます。
SoC Blockset は、Zynq®-7000、Ultrascale+™、Intel SoC FPGA など、Xilinx® および Intel® のFPGA デバイスと SoC プラットフォームのリファレンス設計をエクスポートします。これらのリファレンス設計は、Xilinx および Intel の設計ツールで使用できます。
詳細を見る:
アルゴリズムリソース使用量の解析
Simulink モデルまたは MATLAB 関数を解析して、実装に必要な算術演算子の数を要約したレポートを生成します。これらのレポートを使用して、さまざまなアーキテクチャを比較し、設計上のトレードオフを実行して、ハードウェアとソフトウェアの分割について探索します。
メモリトランザクション
ハードウェアロジックと組み込みプロセッサ間で共有するメモリトランザクションをモデル化して、シミュレーションします。メモリトラフィックをアービトレートするよう、DMA メモリコントローラーを設定します。シミュレーションでメモリレイテンシとスループットを考慮します。
タスクの実行
オペレーティング システム (OS) で管理されているとおり、組み込まれたプロセスでのタスクの実行をモデル化します。正確なタイミングでコンテキストの切り替え、タスクのプリエンプション、および実行期間を考慮して、タスクをシミュレーションします。FPGA ファブリックで生成されたソフトウェア割り込みをモデル化します。非確定的なタスク期間のシミュレーションを実行するための統計を適用するか、またはハードウェアテスト中に記録されたタスクの期間を適用します。
SoC モデルテンプレート
段階的なアプローチを使用して、SoC アプリケーションの完全なモデルをゼロから構築します。または、ビジョンアプリケーションおよび通信アプリケーション用のテンプレートなど、ハードウェア/ソフトウェアのコプロセッシング用の事前定義されたテンプレートから作成します。
記録された I/O データを使用したシミュレーション
RF 信号や HDMI データなどのハードウェア周辺機器のソースを記録した後に、シミュレーションまたはハードウェアテストで記録データをソースとして再生します。
タスク実行の解析
タイマードリブンのタスクとイベントドリブンのタスクを組み込んだ Simulink モデルを実行して、SoC アプリケーションのソフトウェアシステムをシミュレーションします。タスク実行のタイミング、プリエンプション、レートのオーバーラン、ドロップ、およびコア使用率を可視化します。前回のシミュレーション、または SoC デバイスから直接取得したタスクのタイミングに関するデータを使用して、シミュレーションでタスクの実行を再現します。
DDR メモリのパフォーマンス
システム設計のメモリ帯域幅を解析します。SoC デバイスに展開する前に、シミュレーションの結果と帯域幅のメトリクスを可視化します。
デバイス上のメモリパフォーマンスの監視とタスク実行のプロファイリング
SoC デバイスでメモリパフォーマンスとタスクの実行を測定します。次に、これらの測定値を可視化および解析して、システム パフォーマンスの要件を満たすように SoC モデルを調整します。MATLAB または Simulink のテストベンチから、リアルタイムで SoC デバイスと連携します。
組み込みソフトウェアのプロジェクトを生成
SoC Blockset を Embedded Coder® と併用して、スケジューラー、ソフトウェアのタスク、I/O デバイスのドライバーの統合など、モデルから組み込みソフトウェアの完全なプロジェクトを生成します。
リファレンス設計を生成
プログラマブル ロジック デバイス用のリファレンス設計を生成します。リファレンス設計は、外部メモリやソフトウェア アプリケーションに接続可能なデータパスと制御パスを含む、IP コアによる構成済みネットワークです。SoC Blockset では、Xilinx および Intel の設計ツールに接続してビットストリームを生成した後、FPGA ボードと SoC ボードをプログラミングします。
COTS ボードとカスタム ボードをターゲット化
Xilinx Zynq UltraScale+ MPSoC および RFSoC、Zynq-7000 SoC、Intel Cyclone、Arria SoC FPGA など、サポートされているハードウェアキットにハードウェア/ソフトウェアのアプリケーションを実装します。ハードウェア サポート パッケージを使用してボードをターゲット化するか、カスタムボード用のサポートを構築します。
周辺機器モデリング
ADC や PWM のような周辺機器の動作を含む閉ループシステムのシミュレーションを実行します。モデルでは、ADC-PWM 同期およびレイテンシを考慮することが可能です。
マルチプロセッサ アーキテクチャ モデリング
複数のプロセッサ間でアルゴリズムを分割することにより、設計のモジュール化を達成してパフォーマンスを改善します。マルチプロセッサの実行とプロセッサ内部のデータ通信をモデル化します。
マイクロコントローラーおよびマイクロプロセッサ ボードへの展開
Embedded Coder でソフトウェア アプリケーションを生成することにより、ハードウェアボードでのラピッド プロトタイピングを実行します。デバイス上でのプロファイリングを実行して、アプリケーションを微調整します。
ストリーム送信
Stream Write ブロックを使用して、プロセッサからハードウェア ロジックにデータをストリーミング。
FPGA IP コアの割り込み
ハードウェアロジックからソフトウェアタスクに割り込み要求を発行し、Interrupt Channel ブロックを使用して割り込み要求をアービトレート
ADC および PWM の周辺機器
アナログデジタル変換器とパルス幅変調器の周辺機器をシミュレーション。
マルチプロセッサのサポート
プロセッサ間の通信を使用して、単一の SoC デバイス内で複数のプロセッサをシミュレーション。
Texas Instruments C2000 のサポート
TI C2000 プロセッサ上での組み込みソフトウェアのシミュレーション、解析、およびプロトタイプ作成。
これらの機能や対応する関数の詳細については、リリースノートを参照してください。
FPGA、ASIC、および SoC 開発向け MATLAB
特定分野の専門家およびハードウェア エンジニアは、MATLAB® および Simulink® を使用して、FPGA、ASIC、および SoC デバイス上に展開するためのプロトタイプおよび実稼働アプリケーションを開発します。