三、基准时钟、生成时钟、虚拟时钟的约束和意义

前言:前面从理论角度出发学习了 时序分析理论基础IO接口时序分析基本原理和意义,本篇从设计的角度学习如何合理添加时钟约束。

一、基准时钟(base clock)和生成时钟(generate clock)

这里以前面做过的千兆以太网 HDMI 项目时钟树为例:
在这里插入图片描述
基准时钟为 sclkin,其余通过 PLL 的生成的时钟是生成时钟(generate clk)。

Vivado 约束基准时钟和生成时钟规则:

  • 如果基准时钟输入给 PLL,由于在 PLL 配置界面设置了基准时钟频率等信息,所以不需要额外再次约束基准时钟。在约束信息里会自动添加基准时钟约束,并且自动会把生成时钟也会添加约束。
  • 如果基准时钟并没有送入 PLL 直接通过分频或者不分频的方式给内部模块使用就需要添加基准时钟约束和生成时钟约束。

二、基准时钟的约束

1.完成综合(run implementation)

2.进行基准时钟约束(edit timing constrains)

在这里插入图片描述
① 在creat clock选项下添加基准时钟(rx_clki),并进行具体参数设置
在这里插入图片描述
② 查看时钟添加情况
在这里插入图片描述
具体信息如下:
在这里插入图片描述
③ 保存本次设置,并自动更新到xdc文件中
在这里插入图片描述
在这里插入图片描述
约束了基准时钟之后,关于这个时钟的时序分析结果就有了。

三、查看时序约束的结果

① 关闭当前时序信息
在这里插入图片描述
② 点击report timing,并设置打印时序报告参数
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
设置 option 中的观察时序路径条数和每个路径打印多少条信息,然后点击 OK 完成打印
在这里插入图片描述
③ 报告信息如下(没有出现红色说明都是时序满足建立时间要求的)
在这里插入图片描述

四、生成时钟约束

在这里插入图片描述
① 在create generated clock选项下添加生成时钟(源时钟:clk_out3目标时钟:tx_clk),并进行具体参数设置
在这里插入图片描述
在这里插入图片描述
② 查看时钟添加情况并保存(此步骤和生成时钟步骤一样)
在这里插入图片描述

五、虚拟时钟约束

本次案例并没有用到,一般会在系统同步中使用(该技术目前被淘汰了,了解即可)

什么是虚拟时钟?
答:就是在 fpga 内部不存在的时钟,这个时钟主要来辅助做一些分析,比如系统同步时晶振这个时钟给源端的时钟;

创建虚拟时钟的方法很简单,就是创建一个时钟但是不实际指向一个 fpga 内部或者 IO 上的对象。

①在 create clock 中添加一个虚拟时钟(vir_clk1)
在这里插入图片描述
② 查看时钟添加情况并保存(此步骤和生成时钟步骤一样)

打印信息如下:
在这里插入图片描述

六、时序约束前后的时序报告:

时序约束前:
在这里插入图片描述
时序约束后:
在这里插入图片描述

  • 5
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值