記事 ID: 000085677 コンテンツタイプ: トラブルシューティング 最終改訂日: 2012/09/11

usleep() C 関数を実行する際に、Nios IIが予想以上に時間がかかるのはなぜですか?

環境

BUILT IN - ARTICLE INTRO SECOND COMPONENT
詳細

usleep 関数の仕様では、少なくとも指定した値と等しい遅延が発生します。実際の関数からの復帰時間はこれより長くなりますが、短くすることはできません。

usleep のNios® II実装は、プロセッサーが遅延要件を正確に強制するように調整されています。しかし、ソフトウェア機能の呼び出しと同様に、低速メモリーからの命令のフェッチにより、レイテンシーが増加する可能性があります。これらの遅延は、非常に小さな値のスリープ時には、比率的に大きくなることがあります。

非常に正確な遅延が必要な場合は、サイクル精度の高い割り込み駆動タイマーを使用することを推奨します。ただし、指定した値以上の遅延が生じる場合は、usleep をお勧めします。

関連製品

本記事の適用対象: 1 製品

インテル® プログラマブル・デバイス

1

このページのコンテンツは、元の英語のコンテンツを人力翻訳および機械翻訳したものが混在しています。この内容は参考情報および一般的な情報を提供するためものであり、情報の正確さと完全性を保証するものではありません。インテルは不正確な翻訳があった場合でもいかなる責任を負いません。このページの英語版と翻訳の間に矛盾がある場合は、英語版に準拠します。 このページの英語版をご覧ください。