当前位置:首页 > 工业控制 > 电子设计自动化
[导读] 时钟扩展对使用赛灵思Vivado设计套件的工程师来说是一个很大的挑战,但不是一个不可逾越的障碍。随着越来越多的赛灵思用户开始使用Vivado®设计套件,部分用户对未扩展时钟表示困惑。那么什么是未扩展时钟呢?他们

 时钟扩展对使用赛灵思Vivado设计套件的工程师来说是一个很大的挑战,但不是一个不可逾越的障碍。

随着越来越多的赛灵思用户开始使用Vivado®设计套件,部分用户对未扩展时钟表示困惑。那么什么是未扩展时钟呢?他们是如何进行关联和计时的?应对未扩展时钟的标准方法又是什么呢?下面让我们来详细探讨一下这个问题,重点是探讨确保设计人员使用正确的同步技术安全地穿越未扩展时钟之间的跨时钟域(clock domain crossing)的方法。

随着Vivado工具的推出,赛灵思现在能够支持采用业界标准Synopsys设计约束(SDC)格式的时序约束。这是ISE设计套件工具处理时序方式上的重大转变。Vivado套件最根本的区别在于所有时钟在默认条件下都彼此关联。这样在ISE中处于无约束状态的时序路径在Vivado设计套件中则处于受约束状态。如果两个时钟之间不存在周期性关系,这种约束会造成非常严格的时序要求。

未扩展时钟是指在1,000个时钟周期内与另一个时钟之间不存在周期性关系的时钟。Vivado BFT 内核范例设计即是体现未扩展时钟工作方式的良好途径。

发起和捕获

时序路径从发起事件开始,由捕获事件终止。发起事件发生在同步单元的时钟从非工作状态转入工作状态的时候。捕获事件发生在下游的或者负责捕获的同步单元的时钟从非工作状态转入工作状态的时候。从发起事件到捕获事件之间所需的时间被称为“路径要求”,它代表自事件发起后到捕获单元引脚处出现有效数据之间所需的时间。

如果发起时钟和捕获时钟同时位于同一物理时钟网中,路径要求仅指时钟周期。以250MHz时钟为例,如果发起单元和捕获单元的工作沿相同(上升沿对上升沿或下降沿对下降沿),那么发起事件和捕获事件之间的时间间隔则恰好为4纳秒。如果发起单元和捕获单元的工作沿不同,路径就必须按一半的时钟频率进行时间计算。这就是时钟的上升沿对下降沿或下降沿对上升沿转换的情况,对一个250MHz的时钟来说,对应的就是2纳秒的路径要求。

在时钟源(source clock)和时钟目标端(destination clock)非同一个时钟的情况下,时序问题就变得更加复杂。具有不同时钟源和时钟目标端的时序路径被称为跨时钟域(CDC)路径。

图1:扩展时钟的TCL脚本

如果发起时钟和捕获时钟之间的相位关系未知,就无法计算路径要求。由于不确定相位关系,则无法准确确定路径时序。不安全时钟在Vivado设计套件生成的时钟交互报告中会突出显示。在发起时钟和捕获时钟之间的相位关系已知的情况下,只要两个时钟之间存在周期性关系,就可以用数学方法推导出路径要求。用于判断给定发起时钟和捕获时钟之间最低路径要求的方法称为时钟扩展。不过确定两个时钟之间是否存在周期性关系需要用实际限制加以约束,因为一般情况下两个不同时钟之间不存在共同的周期性特征。Vivado设计套件使用的实际限制条件是1,000个时钟周期,以两个时钟中较小的时钟周期为测量标准。如果在扩展两个时钟到超过1,000个时钟周期后没出现周期性关系,那么这两个时钟就被称为“未扩展”时钟。Vivado设计套件对两个未扩展时钟之间的路径要求为发起时钟和捕获时钟相邻工作沿之间相隔的最少时间。但需要注意的是对超过1,000个时钟周期的情况有更加严格的路径要求,这就是Vivado设计套件将这种类型的两个时钟之间的关系称之为未扩展的原因。

图2:125MHz和156.25MHz时钟的时钟扩展

Vivado BFT内核可为测试不同时钟速率提供理想设置,从而判定两个时钟是否为扩展时钟

为更好地理解Vivado设计套件计算未扩展时钟的方法,先以图1中的TCL脚本来对扩展任意两个时钟速率之间的上升沿对上升沿路径要求的方法进行详细说明。图2是这个脚本的输出,即两个分别运行在125MHz和156.25MHz的时钟的扩展。

为确认上述TCL脚本得出的结果,我们来观察一下Vivado BFT 内核范例设计。BFT 内核可为测试不同时钟速率提供理想设置,从而判定两个时钟是否为扩展时钟。该内核有两个独立的时钟源,分别命名为wbClk和bftClk。时序约束可将wbClk和bftClk的频率分别设置为100MHz和200MHz。用户可可对任意两个时钟速率的此类约束进行修改,以便确定由Vivado时序引擎判别的扩展关系。图3是将bftClk设置为125MHz,将wbClk设置为156.25MHz时所显示的结果,并提供了相关的时序(report_timing –from [get_clocks bftClk] -to [get_clocks wbClk])。请注意,由发起沿、捕获沿和时序要求共同确认TCL脚本的预测结果。

表1是使用图4中的TCL脚本获得的几种时钟速率的发起沿、捕获沿和路径要求。

图3:125MHz发起时钟到156.25MHz捕获时钟的时钟扩展

表1:时钟扩展实例

图4:时钟扩展Tcl 脚本

处理未扩展时钟

人们常常把未扩展时钟视为异步时钟,并通过FIFO、边沿检测器或同步器电路等适当的同步技巧来进行处理。如果用户使用此类技巧,应在约束中使用时序例外来处理未扩展时钟(一般使用set_false_path或set_max_delay例外)。

理解和说明未扩展时钟具有重要的意义,因为时钟之间的边沿关系将决定Vivado设计套件中时序引擎所使用的路径要求。赛灵思希望对设计中的所有未扩展时钟进行详查,以确保使用适当的同步技巧安全地穿越未扩展时钟之间的跨时钟域。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: 驱动电源

在工业自动化蓬勃发展的当下,工业电机作为核心动力设备,其驱动电源的性能直接关系到整个系统的稳定性和可靠性。其中,反电动势抑制与过流保护是驱动电源设计中至关重要的两个环节,集成化方案的设计成为提升电机驱动性能的关键。

关键字: 工业电机 驱动电源

LED 驱动电源作为 LED 照明系统的 “心脏”,其稳定性直接决定了整个照明设备的使用寿命。然而,在实际应用中,LED 驱动电源易损坏的问题却十分常见,不仅增加了维护成本,还影响了用户体验。要解决这一问题,需从设计、生...

关键字: 驱动电源 照明系统 散热

根据LED驱动电源的公式,电感内电流波动大小和电感值成反比,输出纹波和输出电容值成反比。所以加大电感值和输出电容值可以减小纹波。

关键字: LED 设计 驱动电源

电动汽车(EV)作为新能源汽车的重要代表,正逐渐成为全球汽车产业的重要发展方向。电动汽车的核心技术之一是电机驱动控制系统,而绝缘栅双极型晶体管(IGBT)作为电机驱动系统中的关键元件,其性能直接影响到电动汽车的动力性能和...

关键字: 电动汽车 新能源 驱动电源

在现代城市建设中,街道及停车场照明作为基础设施的重要组成部分,其质量和效率直接关系到城市的公共安全、居民生活质量和能源利用效率。随着科技的进步,高亮度白光发光二极管(LED)因其独特的优势逐渐取代传统光源,成为大功率区域...

关键字: 发光二极管 驱动电源 LED

LED通用照明设计工程师会遇到许多挑战,如功率密度、功率因数校正(PFC)、空间受限和可靠性等。

关键字: LED 驱动电源 功率因数校正

在LED照明技术日益普及的今天,LED驱动电源的电磁干扰(EMI)问题成为了一个不可忽视的挑战。电磁干扰不仅会影响LED灯具的正常工作,还可能对周围电子设备造成不利影响,甚至引发系统故障。因此,采取有效的硬件措施来解决L...

关键字: LED照明技术 电磁干扰 驱动电源

开关电源具有效率高的特性,而且开关电源的变压器体积比串联稳压型电源的要小得多,电源电路比较整洁,整机重量也有所下降,所以,现在的LED驱动电源

关键字: LED 驱动电源 开关电源

LED驱动电源是把电源供应转换为特定的电压电流以驱动LED发光的电压转换器,通常情况下:LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: LED 隧道灯 驱动电源
关闭