DIR Simulator ガイド¶
文書バージョン:1.2.0
対象GitHubバージョン:v1.2.0
文書ID:guide-index
文書状態:公開済み。mainへのpush時に検証後、GitHub Pagesを自動更新
更新履歴¶
| 文書バージョン | 更新日 | 更新内容 |
|---|---|---|
1.2.0 |
2026-10-22 |
v1.2.0の対象タグ・文書版を確定。過去の測定基準と公開済み履歴を保持 |
1.1.31 |
2026-10-20 |
Issue #109・#115の対応と、正式v1.1.6で実測した半二重再送・AXI容量・TAS/CBS・Gateway RX容量の4実習への入口を追加 |
1.1.30 |
2026-10-19 |
preemption・冗長履歴・PSFP gate・Metric V2の正式v1.1.6実測4記事と独立入力ZIPを追加 |
1.1.29 |
2026-10-17 |
機能リファレンス8章と最新mainの5記事を共存させ、v1.1.6の入口・入力ZIP・過去実測の基準を整理 |
1.1.28 |
2026-10-17 |
抽象STPのcost1変数比較・正式版実測・実Viewerと6入力ZIPを追加。既存記事・導線・23 ZIPを維持 |
1.1.27 |
2026-10-16 |
動的VID登録の寿命1変数比較・正式版実測・実Viewerと6入力ZIPを追加。既存記事・導線・22 ZIPを維持 |
1.1.26 |
2026-10-16 |
源別multicastのmode1変数比較・正式版実測・実Viewerと6入力ZIPを追加。既存記事・導線・21 ZIPを維持 |
1.1.25 |
2026-10-16 |
link復旧時刻の1ps比較・正式版実測・実Viewerと6入力ZIPを追加。既存記事・共通導線・20 ZIPを維持 |
1.1.24 |
2026-10-15 |
MAC学習のaging1変数比較・正式版実測・実Viewerと6入力ZIPを追加。既存記事・ZIP・共通導線を維持 |
1.1.23 |
2026-10-15 |
PSFPのyellow_action1変数比較・正式版実測・実Viewerと6入力ZIPを追加。既存記事・ZIP・履歴を保持 |
1.1.22 |
2026-10-15 |
CBSのidle slope1変数比較・正式版実測・実Viewerと8入力ZIPを追加。PR97と既存記事・ZIP・履歴を保持 |
1.1.21 |
2026-10-14 |
静的multicastの出口リスト1変数比較・正式版実測・実Viewerと9入力ZIPを追加。既存記事・ZIP・履歴を保持 |
1.1.20 |
2026-10-14 |
Ethernet TASの生成時刻1ps境界実習・IFG込み窓末尾・実Viewerと8入力ZIPを追加。既存20記事と履歴を保持 |
1.1.19 |
2026-10-14 |
Ethernet VLAN受入admitだけを変える8入力実習・filtered理由・正式版実測と実Viewerを追加。未マージ4記事を保持 |
1.1.18 |
2026-10-13 |
Ethernetの論理priorityだけを変える8入力実習・非プリエンプト/FIFO・実Viewerを追加。既存3記事を保持 |
1.1.17 |
2026-10-13 |
NoC入力FIFOの独立8入力実習・35ps実Viewer・開始待ちとhop間待ちを追加。SoC/AHBを保持 |
1.1.16 |
2026-10-13 |
AHBの応答待ちの独立実習・8入力ZIP・ERROR完了・実Viewerを追加。SoC成果物を保持 |
1.1.15 |
2026-10-13 |
SoC共有バスの調停の独立実習・6入力ZIP・実Viewer・metadata/nav検査を追加 |
1.1.14 |
2026-10-12 |
第3push。最新mainを通常取り込みし共有メモリとAXIの入口・ZIP・両分岐履歴を統合。nav17/HTML18を明記 |
1.1.13 |
2026-10-12 |
共有メモリの取得actorだけを変える独立実習・8入力ZIP・実Viewer・metadata検査を追加 |
1.1.13 |
2026-10-12 |
AXI書き込みストローブの独立実習・8入力ZIP・実Viewer・metadata/ページ数検査を追加 |
1.1.12 |
2026-10-11 |
DDRリフレッシュ時間の独立実習・8入力ZIP・実Viewer・fresh証跡検証を追加 |
1.1.11 |
2026-10-11 |
公開文書整合性監査の修正を反映し、文書PATCHを一つ上げ、対象タグをv1.1.4へ統一 |
1.1.10 |
2026-10-11 |
DMAのコピー完了と通知待ちの独立実習・8入力ZIP・fresh証跡検証を追加 |
1.1.9 |
2026-10-11 |
メールボックス容量・満杯応答の独立実習と8入力ZIPを追加。既存入口・履歴を保持 |
1.1.8 |
2026-10-11 |
SRAMポート数の独立実習と8入力ZIPを追加。既存入口と履歴を保持 |
1.1.7 |
2026-10-11 |
Gateway処理遅延の独立実習と9入力ZIPを追加。既存CC/FD/Ethernet入口と分岐履歴を保持 |
1.1.6 |
2026-10-10 |
PR #36第2push。最新mainのEthernet入口を保持し、Classical CAN/FDの独立ZIPとFD profile・制約を明記。両分岐の1.1.5履歴を保持 |
1.1.5 |
2026-10-07 |
Classical CANとCAN FDの実習profile・配布入力を区別し、ガイド全体の対象範囲説明を修正(PR #36の分岐履歴) |
1.1.5 |
2026-10-10 |
Ethernet期限の実測比較を追加し、CAN記事の基準版と実測版を区別 |
1.1.4 |
2026-10-07 |
CAN FDのデータ速度比較と独立配布入力を追加 |
1.1.3 |
2026-10-06 |
公開済みmainを統合し、受信フィルタと受信処理遅延の両ガイド・配布入力への入口を維持 |
1.1.2 |
2026-10-06 |
CANの受信フィルタとECU別の受信選択実習を追加 |
1.1.2 |
2026-10-06 |
CAN受信処理遅延の1変数比較ガイドと配布入力を追加し、送信成功・観測・受信完了・終了時pendingへの入口を整備 |
1.1.1 |
2026-10-06 |
読者向けガイドから原稿再利用と執筆管理の説明を分離 |
1.1.0 |
2026-10-05 |
初版:公開サンプルの実行・実画面・条件変更実験、GitHub Pages公開とMarkdown再利用を整備 |
DIRを初めて使う人が、サンプルのCAN・Ethernet通信とメモリ読出し・IPCを実行し、結果を読み、設定を変えて理由を確かめるためのガイドです。既存CAN記事のコードと数値の基準は公開版v1.1.3(dd6199503913db24729f04bcca7e9e4f856fd71c)です。Ethernet配送期限の記事はv1.1.3の入力を基礎に、公開版v1.1.4の固定sourceで実測しています。
v1.2.0の追加81項目は実装台帳とリリース検証記録を参照してください。下記の実習と固定commitの機能リファレンスは、それぞれに記載した測定基準・採用範囲を保持しています。
機能の採否・仕様変更を検討する¶
DIR機能・動作仕様ガイドは、mainの固定コミットを対象に、機能と動作を概要/詳細で説明する調査資料です。共通基盤、NEDエディタとViewer、16組込みprofileの設定・固定値・関連規格・変更判断を、実画面と参照元付きで読めます。基準版と今回の実行範囲は資料内に明記しています。
ここから始める¶
Classical CAN実習入力ZIPの導入手順は「初めてのCAN実行」に記載しています。CAN FDは別のFD実習入力ZIPを使い、「CAN FDのデータ速度比較」の手順で実行します。
| 読みたいこと | 完成しているページ | 得られること |
|---|---|---|
| 入門 | 初めてのCAN実行 | NED・INI・JSONの役割、3要求の実行、ビットレート実験 |
| 画面操作 | Viewerで結果を読む | 時刻移動、タイムライン、詳細、実績と予定の違い |
| 機能辞典・目的別実験 | CANの調停 | 優先順位と待ち時間、CAN IDを1つ変える実験 |
| 機能辞典・受信選択 | CANの受信フィルタ | 送信成功と受信選別を区別し、1設定を3条件で比較 |
| 受信処理の実験 | CAN受信処理遅延の比較 | 受信処理時間だけを変え、送信・観測・受信完了と終了時pendingを区別 |
| FDデータ速度の実験 | CAN FDのデータ速度比較 | 位相bit数を固定し、速度と次要求の待ち時間を比較 |
| Ethernet期限の実験 | Ethernet配送期限と遅延判定の比較 | deadlineだけを1psずつ変え、同じ配送遅延と期限超過判定を区別 |
| 複数CANバスの実験 | Gateway処理遅延と複数CANバスの中継 | 処理遅延だけを変え、元通信・二つのコピー・RX保持を区別 |
| SRAM読出しの実験 | SRAMのポート数と読み出し待ち時間 | ポート数だけを変え、待ち時間と処理時間を区別 |
| IPC受渡しの実験 | メールボックスの容量と満杯応答 | メッセージ容量だけを変え、完了・full/empty・FIFO受信・通知を区別 |
| DMAコピーの実験 | DMAのコピー完了と通知待ち | 通知時間だけを変え、書き込み完了と通知待ちを区別 |
| DDRの実験 | DDRのリフレッシュと読み出し待ち | refresh時間だけを変え、開行リセットと読み出し待ちを区別 |
| AXI部分更新の実験 | AXIの書き込みストローブと部分更新 | WSTRBだけを変え、五チャネルの完了とRAM byte更新を区別 |
| 共有メモリIPCの実験 | 共有メモリの公開と取得権限 | consumeのactorだけを変え、公開・取得・拒否とslotの状態を区別 |
| SoC共有バスの実験 | SoC共有バスの調停と要求の待ち時間 | 調停だけを変え、source FIFO・占有と個別/平均の待ちを比較 |
| AHB応答待ちの実験 | AHBの応答待ちとERROR完了 | wait_cyclesだけを変え、開始待ち・占有とERROR完了を区別 |
| NoC入力FIFOの実験 | NoCの入力FIFO容量と待ち時間 | input_capacityだけを変え、最初のgrant・hop間待ちと最終配送を区別 |
| Ethernet優先キューの実験 | Ethernetの優先キューと送信順 | priorityだけを変え、FIFO・非プリエンプトとflow別待ちを区別 |
| Ethernet VLANの実験 | EthernetのVLAN受入条件と破棄理由 | admitだけを変え、受入拒否の場所・時刻・理由を読む |
| Ethernet TASの実験 | Ethernet TASの送信窓とIFG込みの待ち時間 | 生成時刻だけを1psずつ変え、送信窓の等号と次窓への待ちを読む |
| Ethernet multicastの実験 | Ethernetの静的multicastとコピーの配送先 | 静的groupの出口リストだけを変え、転送コピー・経路とEndpoint購読を区別 |
| Ethernet CBSの実験 | Ethernet CBSのcredit回復と送信待ち | idle slopeだけを変え、物理Link占有とcredit回復の待ちを区別 |
| Ethernet PSFPの実験 | Ethernet PSFPの色判定とyellow破棄 | yellow_actionだけを変え、色判定・token消費と受信処置を区別 |
| Ethernet MAC学習の実験 | EthernetのMAC学習とagingによる転送先 | mac_age_psだけを変え、学習期限・既知unicastとfloodを区別 |
| link復旧と受信の境界を調べたい | Ethernetのlink復旧時刻と受信判定 | 復旧時刻だけを1ps変え、送信継続と受信filterを分ける |
| 源別multicastの実験 | Ethernetの源別multicastとINCLUDE・EXCLUDE | modeだけを変え、送信元集合・候補0・期限後のfloodを区別 |
| VID登録の期限を比較する | Ethernetの動的VID登録と有効期限 | 出口portのlifetimeだけを変え、対向portと有効VIDを区別 |
| 抽象STPの経路を比べる | Ethernetの抽象STPとリンクcostによる配送経路 | L12 costだけを変え、初期role・枝のcopyと配送時間を区別 |
| fragment長と待ちを比べる | 抽象preemptionのfragment長とexpress待ち時間 | fragment長だけを変え、express待ち・slow占有・IFGと再開gapを区別 |
| 冗長コピーの除去理由を読む | 抽象冗長配送の履歴容量とduplicate・stale | 履歴容量だけを変え、物理受信・一度だけの配送・duplicateとstaleを区別 |
| 受信gateの境界を比べる | Ethernet PSFPのstream gateと1ps境界 | gate開始だけを1ps変え、同じ送信copyと異なる受信判定を読む |
| 集計窓と時間平均を読む | Metric V2の集計窓幅と時間平均 | 窓幅だけを変え、同じイベント列・窓別の時間平均・現在値を区別 |
| 半二重媒体の再送を比べる | 半二重Ethernetの再送とseedによる待ち時間の違い | seedだけを変え、衝突・backoff期限・carrier待ちと同条件の再現を確認 |
| AXIの受理容量を比べる | AXIのoutstanding上限と受理・待機・処理の違い | outstanding上限だけを変え、drop・FIFO待機と一要求ずつの処理を区別 |
| TASとCBSの合成を読む | TASのgate閉鎖とCBS creditの凍結 | gate閉鎖だけを変え、負creditの凍結と再開後の回復待ちを比較 |
| GatewayのRX容量を比べる | GatewayのRX容量と遅い分岐による後続配信の損失 | RX容量だけを変え、親保持・枝別TX受理と後続親の拒否を区別 |
| 設定・用語・FAQ | 設定・用語・FAQ | パス、単位、上書きエラー、学習時の疑問 |
上から3ページを順に読むと、一つの小さな実験がつながります。入門は3要求だけに絞り、実際に保存された結果と画面を掲載しています。
現在使える範囲¶
入門・Viewer・調停・受信フィルタ・受信処理遅延の実習はClassical CANのcan.cc.ideal.v1です。「CAN FDのデータ速度比較」は、外部から与える位相bit数を使うcan.fd.precomputed.v1の実習です。Ethernet配送期限の実習はethernet.l2.qos.v1です。Gateway処理遅延の実習はcan.cc.multibus.v1を正式v1.1.4で実測し、別のGateway実習入力ZIPを使います。SRAMの実習はmemory.ipc.transaction.v1を正式v1.1.4で実測し、SRAM実習入力ZIPを使います。メールボックスの実習もmemory.ipc.transaction.v1を正式v1.1.4で実測し、独立入力ZIPを使います。現行ソースには複数CANバスとGateway、EthernetとQoS/VLAN/媒体拡張、外部計算位相bit数を使うCAN FD、AXI/SoC/AHB/NoC/メモリ・IPCの初期transaction profile、NED editorとViewerもあります。実習入力は各ページの配布ZIPまたはmainのexamples/guideから取得します。profileの提供状態は各記事の対象タグ(v1.1.3 Release/v1.1.4 Release)と実装で確認してください。
規格全体への適合や100万要求の性能受入は、この実習が証明する範囲に含みません。CAN FDは外部算定位相bit数を用いるstructural-onlyの時間評価で、任意フレームの完全wire codecや完全ISO波形適合を保証しません。
DMAの実習は正式v1.1.4の memory.ipc.transaction.v1 を使います。DMA実習入力ZIPで再現できます。
DDRの実習も正式v1.1.4の memory.ipc.transaction.v1 を使い、独立DDR入力ZIPで再現できます。
共有メモリの実習も正式v1.1.4の memory.ipc.transaction.v1 を使い、共有メモリ入力ZIPで再現できます。
VLAN受入条件の実習は正式v1.1.4のethernet.l2.vlan.v1を使い、独立入力ZIPで再現できます。
TAS送信窓の実習は正式v1.1.4のethernet.tsn.v1を使い、独立入力ZIPで再現できます。
静的multicastの実習は正式v1.1.4のethernet.l2.vlan.v1を使い、独立入力ZIPで再現できます。
CBSの実習は正式v1.1.4のethernet.tsn.v1を使い、独立8入力ZIPで再現できます。
PSFPの実習も正式v1.1.4のethernet.tsn.v1を使い、独立6入力ZIPで再現できます。
MAC学習の実習は正式v1.1.4のethernet.l2.dynamic.v1を使い、独立6入力ZIPで再現できます。
link復旧の実習は正式v1.1.4のethernet.l2.dynamic.v1を使い、独立6入力ZIPで再現できます。
源別multicastの実習は正式v1.1.4のethernet.l2.dynamic.v1を使い、独立6入力ZIPで再現できます。
動的VID登録の実習は正式v1.1.4のethernet.l2.dynamic.v1を使い、独立6入力ZIPで再現できます。
抽象STPの実習は正式v1.1.4のethernet.l2.dynamic.v1を使い、独立6入力ZIPで再現できます。
抽象preemptionと冗長配送の実習は正式v1.1.6のethernet.preemption.abstract.v1/ethernet.redundancy.abstract.v1を使い、fragment比較ZIP/履歴容量比較ZIPで再現できます。PSFP gateの実習も正式v1.1.6のethernet.tsn.v1を使い、gate境界ZIPを配布しています。
Metric V2の実習は正式v1.1.6に同梱されたRust exampleの独自登録profiledemo.control.v1です。通常CLIのrunでは実行できません。独立入力ZIPと正式版のexampleを使う手順を記事内に記載しています。