タイミング解析とCDC
書き込み側 100 MHz、読み出し側 80 MHz の非同期FIFOで、書き込み側は100語のバーストを毎サイクル1語ずつ書き込み、読み出し側は毎サイクル1語ずつ読み出す。バーストの間には十分な休みがある。あふれないために必要な最小の深さはいくらか(同期化による遅れは無視する)。
- A80語
- B25語
- C20語
答えと解説を見る
正解:C. 20語
100語を書き込むのにかかる時間は 100 × 10 ns = 1000 ns です。その間に読み出し側は 1000 ns ÷ 12.5 ns = 80語を読み出せるので、FIFOに残る最大の量は 100 − 80 = 20語です。式で書くと、バースト長 × (1 − 読み出し速度 ÷ 書き込み速度) = 100 × (1 − 80 ÷ 100) = 20 です。80語はその間に読み出せる量、25語は速度の差 20 MHz を読み出し側の 80 MHz で割ってしまった値です。実際の設計では、同期化の遅れの分の余裕を加えます。