CDC Clock Domain Crossing CDC (Clock Domain Crossing) 是指在数字电路设计中,信号从一个时钟域到另一个时钟域的传输过程。这种传输可能会引发时序问题,例如时钟偏移、保持时间冲突等。本文将 CDC 分解为两部分:同步时钟域信号处理和异步时钟域信号处理。 同步时钟域信号处理 在全同步设计中,如果信号来自同一时钟域,各模块的输入不需要寄存。只要满足建立时间、保持时间的约束,可以保证在时钟上升沿到来时,输入信号已经稳定,可以采样得到正确的值。但是,如果模块需要使用输入信号的跳变沿(例如帧同步信号),千万不要直接使用。因为 begin ... end 语句段涉及到多个 D 触发器,无法保证这些触发器时钟输入的跳变沿到达的时刻处于同一时刻。 为了解决这个问题,可以使用边沿检测电路,例如: ```vhdl always @ (posedge Clk) begin inputs_reg <= inputs; if (inputs_reg == 1'b0 && inputs == 1'b1) begin ... end ... end ``` 异步时钟域信号处理 异步时钟域信号处理可以分为单一信号和总线信号处理两部分。 2.1 单一信号处理 如果输入信号来自异步时钟域(例如 FPGA 芯片外部的输入),一般采用同步器进行同步。最基本的结构是两个紧密相连的触发器,第一拍将输入信号同步化,同步化后的输出可能带来建立/保持时间的冲突,产生亚稳态。需要再寄存一拍,减少亚稳态带来的影响。这种最基本的结构叫做电平同步器。 如果需要用跳变沿而不是电平,又可以使用边沿同步器。边沿同步器在电平同步器之后再加一级触发器,用第二级触发器的输出和第三级触发器的输出来进行操作。 2.2 总线信号处理 如果简单的对异步时钟域过来的一组信号分别用同步器,那么对这一组信号整体而言,亚稳态出现的几率将大大上升。基于这一观点,对于总线信号的处理可以有两种方式。 如果这组信号只是顺序变化的话(如存储器的地址),可以将其转换为格雷码后再发送,由于格雷码相邻码字只相差一个比特,上面说的同步器可以很好的发挥作用。 但是如果信号的变化是随机的(如存储器的数据),这种方法便失效了,这时可以采用握手协议来同步总线信号。 CDC Clock Domain Crossing 是数字电路设计中一个非常重要的问题,需要根据具体情况选择合适的同步方法,避免时序问题的出现。
2026-01-28 09:04:19 505KB
1
clock.zip 基于机器学习的卫星钟差预测方法研究HPSO-BP
2025-08-05 19:20:02 16.59MB BP
1
FPGA——reg2reg路径的时序分析 FPGA(Field-Programmable Gate Array,现场可编程门阵列)是一种基于门阵列的可编程逻辑器件,广泛应用于数字电路设计和开发中。reg2reg路径的时序分析是FPGA设计中一个非常重要的方面,因为它直接影响着系统的时序性能和可靠性。 在reg2reg路径的时序分析中,我们需要了解数据路径(data path)和时钟路径(clock path)的概念。数据路径是指数据在整个传输起点到传输终点所走过的路径,而时钟路径则是指时钟从源端到达各个寄存器输入端的路径。 在时序分析中,我们需要考虑两种路径:数据到达路径(data arrival path)和数据所需路径(data required path)。数据到达路径是指数据在两个寄存器间传输的实际所需时间,而数据所需路径则是指为了确保稳定、可靠且有效的传输,数据在两个寄存器间传输的理论所需时间。 在reg2reg路径的时序分析中,我们需要了解setup relationship和hold relationship及其与launch edge和latch edge之间的关系。Setup relationship是指在正常情况下,两个相邻的寄存器,后一级寄存器每次锁存的数据应该是前一级寄存器上一个时钟周期锁存过的数据。Hold relationship则是指保持时间,即后一级寄存器的保持时间很可能遭到上一级寄存器同一个时钟周期所传输数据的“侵犯”。 在时序分析中,我们可以得到比较理想的reg2reg传输的建立时间和保持时间余量(slack)计算公式: 建立时间余量的计算公式:Setup time slack = Data Required Time – Data Arrival Time 保持时间余量的计算公式:Hold time slack = Data Arrival Time – Data Required Time 这些公式的应用可以帮助我们更好地理解和优化FPGA设计的时序性能,从而提高系统的可靠性和稳定性。 在实际应用中,reg2reg路径的时序分析可以应用于各种数字电路设计和开发,例如数字信号处理、数字控制系统、计算机网络等领域。同时,这种分析方法也可以应用于其他类型的数字电路设计和开发中,例如ASIC设计、SoC设计等。 reg2reg路径的时序分析是FPGA设计中一个非常重要的方面,通过了解数据路径、时钟路径、setup relationship和hold relationship等概念,我们可以更好地理解和优化FPGA设计的时序性能,从而提高系统的可靠性和稳定性。
2025-07-04 15:11:54 48KB FPGA reg2reg 时序分析 clock
1
Logos 系列产品提供了丰富的片上时钟资源,其中 PGL22G CLOCK 包含两类 clock tree,第一类 由 global clock 和 regional clock 组成,第二类为 io clock tree,每一类都有相应的 clock tree 和 mux(如 图 1)。 第一类 clock tree 基于区域(region)驱动,PGL22G 划分为 6 个区域,每个区域由 12 个独立的 global clock 及 4 个独立的 regional clock 组成 clock tree。
2025-04-12 08:17:41 1020KB logos系列FPGA用户指南
1
图形时钟和电子时钟同时实现,没有菜单栏和工具栏,外形简单,但时钟功能全部实现. 请多多指教,给点分吧,呵呵.
2024-06-03 15:24:35 3.33MB MFC图形时钟+电子时钟
1
STC DIY时钟套件固件 基于STC15F基于MCU的DIY时钟套件的固件更换(可从banggood(请参见下面的链接),aliexpress等人获得)。使用构建和将固件闪存到STC15F204EA(和STC15W408AS)系列微控制器上。 特征 时间显示/设置(12/24小时模式) 日期显示/设置(具有可逆的MM / YY,YY / MM显示) 星期几 年 秒显示/重置 显示自动调光 温度显示以C或F(带有用户定义的偏移量调整) 贪睡报警 每小时钟声 实验支持 时间同步到GPS接收器,输出串行NMEA数据 在gps分支上: : 适用于STC15W408AS或STC15W404AS(对不起,没有STC15F204EA,内存/代码不足,没有硬件) 在这一点上非常实验性(需要对此进行完善) 请注意,此项目正在开发中,欢迎进行中的Pull请求。 待办事项 时间同步到WWVB无
2024-05-06 20:45:09 4.03MB clock platformio sdcc aliexpress
1
Purpose ....................................................................................................................... 5 Audience...................................................................................................................... 5 Terminology................................................................................................................. 5 Overview..........................................................................................................
2024-03-19 17:29:37 741KB
1
基于FPGA实现的实时闹钟,在DE2—115开发板上通过验证,实现报时,定时,时间调整等功能
2023-05-03 18:01:54 2KB de2_115 de2_alarm de2-115 fpga_实时闹钟
钟 这是用p5.js用js制作的网站的时钟。 深受启发: : 我挑战自己,将其重新制作成没有视频的标识,因为我喜欢这种设计^^ 安装 安装p5.js 执照
2023-04-23 11:35:53 2KB JavaScript
1
地位 实验性的。 不要复制。 日出时钟硬件 日出时钟的原理图和PCB文件。 该日出时钟试图使用数字LED(SK6812)将用户从睡眠中轻轻唤醒,以模拟日出,并使用I2S单声道放大器通过其cr脚的扬声器同时播放舒缓的声音。 1个显示器不足以查看用户在处理干眼症时遇到的时间,因此有3个显示器能够显示几个字符,每个字符都带有大字体。 同样,没有触摸屏,因此用户无需看大的触觉按钮就可以更改设置。 日出时钟的样子: 该项目使用了我的。
2023-04-05 15:30:07 478KB
1