fpga设计中,时序约束对于电路性能和可靠性非常重要。
本文将详细介绍衍生时钟约束和时钟分组约束设置,给出了详细的约束命令和示例介绍。
一、衍生时钟约束衍生时钟(generated clocks),也叫生成时钟,是从fpga的主时钟信号派生出来的子时钟信号。
这些子时钟信号可以在fpga内部的不同区域使用,以满足不同模块的需求。通常是由mmcm或pll或由组合逻辑生成的倍、分频时钟信号。
衍生时钟与源时钟的关系如下:
简单的频率分频简单的频率倍频频率倍频与分频的组合,获得一个非整数的比例相移或波形反相占空比改变上述所有关系的组合衍生时钟的约束,需要可以在时钟树中加入生成的时钟,可以使用create_generated_clock命令来定义衍生时钟的时钟约束。其语法如下:
通过create_generated_clock命令,我们就可以非常灵活地定义衍生时钟的时序约束,并将其与主时钟相结合,保证电路的稳定性和正确性。
创建时钟示例:
衍生时钟通常有两种情况:“fpga开发软件自动推导的衍生时钟”和“用户自定义的衍生时钟”
对于fpga开发软件自动推导出来的衍生时钟,比如mmcm和pll分频输出来的时钟,可以不用写入时序约束,只需要对输入mmcm和pll的主时钟做时序约束即可。
用户自定义的衍生时钟,通常指的是用户通过组合逻辑构建的分频时钟,这就需要我们自己来写衍生时钟约束。
二、时钟分组约束fpga电路中除了主时钟以外,还有很多其他衍生时钟,如dff的时钟、时钟分频器的时钟等。
这些时钟对于电路性能和可靠性非常重要。
所以需要将这些衍生时钟和主时钟分组,并定义它们之间的层次关系,以确保电路的稳定运行。
在vivado中可以使用set_clock_groups命令来定义时钟分组。其语法如下:
1、两个主时钟是异步关系
2、验证同一个时钟端口下,不同时钟频率的时序是否收敛
3、bufgmux通过mmcm生成有两个时钟输入bufgmux时,只有一个时钟会被使用,这时设置的时序约束为:
三、总结本文详细介绍了衍生时钟约束和时钟分组约束,这两个是在时序约束中常见的写法,大家在学习时序约束时,可以对照着学习理解。
机器视觉检测系统在铝材行业表面缺陷检测中的应用
安静高效的开关稳压器
用TDA1521自制一台功率续接器,TDA1521 AMPLIFIER
可燃气体报警器设定点为何不是气体爆炸下限
如何才能使用低成本实现非接触式的数据交互
FPGA设计衍生时钟约束和时钟分组约束设置
振动传感器的作用及分类
美国思科完成收购光学芯片制造商Acacia
运动控制器RTEX总线使用入门
虹软开放平台“AI创造营”西安站落幕,深度赋能开发者、助力AI普惠化
淘IC:深耕电子行业 帮助客户拿终端订单
Mate40后,其他中企能否勇敢接棒?
波士顿动力Atlas机器人新技能GET,“猫步”过独木桥像极了人类!
康佳展出了65英寸Mini LED背光电视,其峰值亮度超过2000nit
新Ubuntu 20.04默认附带Snap版本
如何量化高速ADC转换误差率的频率和幅度
SDRAM,DDR3,DDR2,DDR4,DDR1的区别对比及其特点分析
Arduino/树莓派/单片机/arm区别分析
第八届中国智能产业高峰论坛在成都成功举行
什么是区块链系统思维