FPGA笔试题解析(三)
【摘要】 1、简述建立时间和保持时间,画图表示?
建立时间Tsu(setup):触发器在时钟上升沿到来之前,其数据输入端的数据必须保持不变的最小时间。
保持时间Th(hold):触发器在时钟上升沿到来之后,其数据输入端的数据必须保持不变的最小时间。
2、简述触发器和锁存器之间的差别?
锁存器对电平信号敏感,在输入脉冲的电平作用下改变状态。
D触发器对时钟边沿...
1、简述建立时间和保持时间,画图表示?
建立时间Tsu(setup):触发器在时钟上升沿到来之前,其数据输入端的数据必须保持不变的最小时间。
保持时间Th(hold):触发器在时钟上升沿到来之后,其数据输入端的数据必须保持不变的最小时间。
2、简述触发器和锁存器之间的差别?
锁存器对电平信号敏感,在输入脉冲的电平作用下改变状态。
D触发器对时钟边沿敏感,检测到上升沿或下降沿触发瞬间改变状态。
3、计算最小周期?
Tco:寄存器更新延迟,clock output delay,时钟触发到数据输出的最大延迟时间
最小时钟周期:Tmin = Tco + Tdata + Tsu - Tskew。最快频率Fmax = 1/Tmin
Tskew = Tclkd – Tclks。
4、什么是Clock Jitter和Clock Skew,这两者有什么区别?
时钟抖动(Clock Jitter):指芯片的某一个给定点上时钟周期发生暂时性变化,使得时钟周期在不同的周期上可能加长或缩短。
如下图:
时钟偏移(Clock Skew):是由于布线长度及负载不同引起的,导致同一个时钟信号到达相邻两个时序单元的时间不一致。
如下图:
区别:Jitter是在时钟发生器内部产生的,和晶振或者PLL内部电路有关,布线对其没有影响。Skew是由不同布线长度导致的不同路径的时钟上升沿到来的延时不同。
5、什么是亚稳态,产生的原因,如何消除?
这个问题的详细介绍在博文:亚稳态专题
篇幅过大,给出简洁解释:
如果触发器的输入电压采样时间过短,即时序不够,则触发器需要花很长时间来实现输出逻辑达到标准电平,也就是说,电路处于中间态的时间变长,使得电路“反应”迟钝,这就是“亚稳态”。(例如输入信号在时钟有效沿的建立时间和保持时间之间改变了,导致不满足触发器的建立时间或保持时间,导致输出有一段时间的不稳定态,就是亚稳态。)
消除:两级或多级寄存器同步。理论上亚稳态不能完全消除,只能降低,一般采用两级触发器同步就可以大大降低亚稳态发生的概率,再加多级触发器改善不大。
但注意双触发器作为同步器只能用在单比特数据的传递中。原因很简单,因为同步器输出只能保证是一个稳态不能不能保证是一个确定的值。故多比特数据使用同步器还是会出现乱码的情况。对于多比特数据的操作一般使用异步FiFO。
参考代码:
reg data_mid;
reg data_out;
always @(posedge clk or negedge rst_n)begin
if(!rst_n)begin
data_mid <= 1'b0;
data_out <= 1'b0;
end
else begin
data_mid <= data_in;
data_out <= data_mid;
end
end
6、同步与异步?
同步复位和异步复位的区别
同步复位是复位信号随时钟边沿触发有效。异步复位是复位信号有效和时钟无关。
如异步复位:
同步复位:
同步逻辑和异步逻辑的区别
同步逻辑是时钟之间有固定的因果关系。异步逻辑是各时钟之间没有固定的因果关系
同步电路和异步电路区别
同步电路有统一的时钟源,经过PLL分频后的时钟驱动的模块,因为是一个统一的时钟源驱动,所以还是同步电路。异步电路没有统一的时钟源。
7、谈谈对Retiming技术的理解
Retiming就是重新调整时序,例如电路中遇到复杂的组合逻辑,延迟过大,电路时序不满足,这个时候采用流水线技术,在组合逻辑中插入寄存器加流水线,进行操作,面积换速度思想。
文章来源: reborn.blog.csdn.net,作者:李锐博恩,版权归原作者所有,如需转载,请联系作者。
原文链接:reborn.blog.csdn.net/article/details/87924105
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
作者其他文章
评论(0)