推荐答案
测试一下
题目
下列说法正确的是
A.设计异步 FIFO时采用格雷码的原因主要是为了省功耗
B.对单比特控制信号打两拍后可以完全避免了亚稳态
C.异步处理需要考虑发送和接收时钟之间 的频率关系
D.尽量将异步逻辑和同步逻辑剥离开,分别在不同的模块中实现
参考答案与知识点
参考答案
C 正确。
A 错误:设计异步 FIFO 时采用格雷码的主要目的是减少跨时钟域时多比特信号同时翻转导致的亚稳态风险,而非省功耗。格雷码相邻值仅变化一位,使同步器只需处理单比特变化,降低采样出错概率。
B 错误:对单比特信号打两拍(双级触发器同步)只能将亚稳态发生的概率降低到可接受水平(如 MTBF 足够大),但无法完全避免。亚稳态是物理现象,时间上可能不满足建立保持时间时仍然可能发生。
C 正确:异步处理必须考虑收/发时钟之间的频率关系。例如,快时钟域到慢时钟域传递信号时,需确保信号宽度足够被慢时钟采样到;慢到快则通常可通过打拍或握手处理。频率关系影响着同步方案的选择(如单拍、多拍、握手或异步 FIFO)。
D 错误:将异步逻辑与同步逻辑分离在不同的模块中是良好的设计实践,但题目中“尽量”一词不严谨。实际设计中,异步逻辑通常嵌入在同步模块内,只需通过同步器或异步 FIFO 隔离接口,而非必须完全分属不同模块。
考点:异步 FIFO 格雷码作用、亚稳态理论、跨时钟域同步条件、设计分区原则。
涉及知识点
- 异步FIFO格雷码作用
- 双级同步器局限性
- 跨时钟域频率关系
- 异步与同步逻辑隔离