← 2024 · NVIDIA · ASIC Design Intern(上海) 笔试
推荐答案
测试一下
题目
There's an asynchronous FIFO between the source and destination clock. The source and destination clock run at the same
A. 4
B. 6
C. 8
D. 10
参考答案与知识点
参考答案
正确答案是 A. 4。题目描述源时钟和目的时钟频率相同,但不同相位,属于同频异步时钟域。异步 FIFO 中读写指针需通过 2D 同步器(两级寄存器)跨时钟域传递。两级同步器引入的延迟约为 2 个时钟周期。当写时钟域连续写入数据时,满信号生成需要等待读指针同步过来,这个等待过程中写侧可能多写入数据;同样,读侧的空信号也有类似延迟。最坏情况下,写侧可能在满信号生效前额外写入最多 2 个数据(因为同步延迟),读侧也可能在空信号生效前多读 2 个数据。为保证不溢出也不读空,FIFO 深度需要覆盖这些额外的写入/读取。经典分析表明,同频异步 FIFO 的最小深度为 4。深度 2 不足以容忍同步延迟,深度 6、8、10 虽然安全但非必需。因此至少需要 4 个条目。
涉及知识点
- 异步FIFO深度计算
- 2D同步器延迟分析
- 同频异步时钟域处理
- 空满信号与同步延迟关系
- FIFO深度最小值推导