fpga时序相关

  1. 跨时钟域

    通常用FIFO方式解决

  2. 异步信号

    uart_rxd 信号对于介绍模块来说它何时出现并没有规律,也就是说这是个异步信号,异步信号会带来亚稳态,因此对于异步信号我们需要进行异步处理,常用的异步处理方式是打拍处理,uart_rxd_d0,是打第一拍,uart_rxd_d1 打第二拍,通常打两拍就基本上就能避免亚稳态问题。

  3. 同步与异步区别

​ 在数字电路中经常有同步、异步的概念。异步指输入信号和时钟无关;同步指输入信号和时钟信号有关,实际上就是输入信号和时钟信号进行了与运算或者与非运算。实际开发中,经常有同步清零、异步清零、同步复位、异步复位等概念,下面就给与相关代码演示。

1
2
3
4
5
6
7
8
9
同步清零:
module dff(d,clk,clr,q);
input d,clk,clr;
output q;
reg q;
always@(posedge clk)
if(!clr) q<=0;
else q<=d;
endmodule
1
2
3
4
5
6
7
8
9
异步清零:
module dff(d,clk,clr,q);
input d,clk,clr;
output q;
reg q;
always@(posedge clk or negedge clr)
if(!clr) q<=0;
else q<=d;
endmodule

fpga时序相关
http://blog.uanet.cn/DEVELOP/fpga时序相关.html
作者
dnsnat
发布于
2025年2月13日
许可协议