23 / 24 · 概念
性能を測り、設計をレビューする
観測区間を指定し、ストールを診断し、モデルの証拠の範囲を限定します。
レッスンは無料で読めます。受講登録すると進捗を保存できます。
数値とタイミング両方の契約を再確認する
正しい計算は完了条件の一部です。入力受け入れ、ストール中の保持、最終排出、リセット境界を検査します。観測区間、受け入れ入力、引き渡し出力、入出力ストール、トランザクションのレイテンシを報告します。満杯のバッファに拒否された提示入力を完了処理として数えてはいけません。
エッジ0直後からエッジ20直後までの20クロック間隔で、12結果が転送されたとします。観測スループットは0.6トランザクション/サイクルです。周期5ナノ秒なら区間は100 ns、処理率は毎秒120百万トランザクションです。この観測率と、ストールなしの構造的最大200百万を区別します。同じ処理率でも、疎な生成と頻繁な受け取り側ストールでは対策が異なります。
タグで引き渡しと受け入れを対応付けます。エッジ4で受け入れ、11で引き渡したtag7のレイテンシは7サイクル、35 nsです。総合課題のストールなしの3サイクルを超えますが、損失を意味しません。平均だけでなく範囲や項目ごとの表を記録します。固定レイテンシのアサーションはストールなしの経路だけに使います。
| 観測 | 考えられる原因 | 次に調べるもの |
|---|---|---|
| FIFOが頻繁に満杯 | 遅い受け取り側や後段 | 出力readyと段のvalid |
| 出力が頻繁に空 | 疎な入力やバブル | 受け入れ入力と段の移動 |
| 長いready経路 | 多数の組み合わせバッファ接続 | 実装タイミング |
| 誤ったタグ順序 | 付随フィールドのずれ | 段のタグとvalid |
深いバッファはバーストを吸収しますが、待ち時間を増やすこともあります。定常占有数、到着率、滞在時間は関係しています。短い起動、排出、取り消しの区間へ定常平均を無条件に当てはめないでください。
幅、符号の有無、縮小、valid移動、置き換え、リセットによる取り消し、メモリタイミング、依存方針をレビューします。Nodeの成功は整数モデルの実行を示し、HDLコンパイルや配置後のタイミングは示しません。飽和、演算コード、メモリ応答などを拡張するときは、契約と参照検査を一緒に変えます。データパスの拡張には演算追加だけでなく、記憶、受け入れ、解釈の保持が必要です。
自分で考えてみましょう
周期4ナノ秒の50クロック間隔で30結果が転送されます。観測スループットをサイクルあたりと秒あたりで求めてください。また、エッジ8で受け入れ、15で引き渡したtag3のレイテンシを求めてください。
解説を見る
スループットは0.6トランザクション/サイクルです。200 nsの区間で毎秒150百万トランザクションになります。tag3のレイテンシは7サイクル、28 nsです。この観測値はストールなしの最大性能と別に報告します。