私は ARM926EJ-S を使用しており、ARM が CPU のサイクル カウンタ (読み取り可能なレジスタなど) を提供できるかどうかを調べようとしています。CPU に電源が供給されてからのサイクル数を表す # だと思います。
私のシステムには、低解像度の外部 RTC/タイマーしかありません。ハイレゾタイマーを実現したいと思います。
よろしくお願いします!
私は ARM926EJ-S を使用しており、ARM が CPU のサイクル カウンタ (読み取り可能なレジスタなど) を提供できるかどうかを調べようとしています。CPU に電源が供給されてからのサイクル数を表す # だと思います。
私のシステムには、低解像度の外部 RTC/タイマーしかありません。ハイレゾタイマーを実現したいと思います。
よろしくお願いします!
おそらく2つの選択肢しかありません。
命令サイクルの正確なシミュレータを使用します。ここでの問題は、周辺機器と外部刺激を効果的にシミュレートすることが複雑または不可能になる可能性があることです。
周辺ハードウェアタイマーを使用します。ほとんどの場合、ARM9の通常のコアクロックレートでこのようなタイマーを実行することはできません。また、タイミングを計る期間のいずれかの側でタイマーを処理する際にオーバーヘッドが発生しますが、実行を行うために使用できます。コードのより大きなまたはより長い実行セクションでの時間。これは、サイクルカウントよりも実用的である可能性があります。
サイクルカウントはさまざまなクロックレートにいくらかスケーラブルである可能性がありますが、メモリとI / O待機状態によって制約されたままであるため、マイクロレベルの分析を除いて、パフォーマンスメトリックとして表示されるほど有用ではない可能性があります。パフォーマンスの向上は、通常、より広い視野をとることによって得られます。