跨时钟域学习
文章平均质量分 76
幸运学者
学渣一枚
展开
-
FPGA复位电路设计学习分析
同步复位同步的意思就是与控制时钟保持同步,因此,在设计中,寄存器接收的复位信号有效是在时钟的边沿触发的。实际上同步复位在altera的芯片中,是与数据一同接入一个组合逻辑电路,然后通过该组合逻辑电路,将最终的数据接入寄存器输入端。如下设计一个简单的同步复位电路:module Verilog1( input clk, input rst_n, output reg a);always@(posedge clk)begin if(!rst_n) a <= 1'b0; else原创 2021-05-18 22:54:09 · 961 阅读 · 1 评论 -
异步FIFO IP核的wrusedw与rdusedw
如图,我们在调用FIFO的IP核的时候有这么一个选项,可以选择读端口与写端口的相关信号。今天学习了FIFO中的有效数据量,也就是usedw信号。从note中可以看出,这个信号是相对于其对应的clk的同步信号。在上图中,我选择的是读那一侧的同步数据量,那么这个usedw信号就是依靠读时钟来同步的。同理选择写一侧的就是依靠写时钟来同步的。仿真写操作如图,该仿真是我将读一侧与写一侧的都选上了,先看写操作下的时序。可见读一侧的数据是相对写时钟延时一个读clk的,这个不用管,只需要知道只相对读信号延时.原创 2021-02-17 19:14:51 · 5169 阅读 · 0 评论 -
FPGA CDC跨时钟域设计学习(二)快时钟域同步到慢时钟域
快时钟域同步到慢时钟域设计一、开环设计方法闭环设计一、开环设计方法开环设计方法,一般只在对时钟控制信号有明确规定的时候用这样的设计方法。要求就是使adat信号脉冲持续时间为bclk的1.5倍以上,这样才能保证慢时钟域在采样信号的时候能够满足建立时间和保持时间,避免采样错误。闭环设计可以理解为一种反馈式设计,我们需要将adat的一次脉冲同步到b时钟域中,将同步到b时钟域的数据再用a时钟域的同步器反馈回a时钟域中,以此来判断adat脉冲是否传输成功。部分代码实现reg adat1,bq1_dat原创 2020-08-22 18:05:03 · 3215 阅读 · 0 评论 -
FPGA CDC跨时钟域设计学习(一)亚稳态
FPGA CDC跨时钟域设计学习(一)亚稳态同步器亚稳态触发器数据进行改变时是需要一定的时间的,亚稳态就是指触发器输出端发生跳变时,在这个跳变时期的电平处于标准判断电平0和1之间的一种状态,如上图,当数据发生改变时,下一级触发器在前级触发器处于亚稳态时进行采样时,有一定的不确定性,可能被判断为0,也可能是1,从而会对整个逻辑电路造成不确定的严重影响,而亚稳态在跨时钟域设计中是不可避免的,但我们可以通过一些方法来提高系统数据采样的稳定性。同步器...原创 2020-08-21 21:41:02 · 693 阅读 · 0 评论