源同步约束包括时钟约束,输入约束,输出约束和时序例外约束。
本文档主要内容学习自Altera的官方在线培训教程:https://www.intel.com/content/www/us/en/programmable/customertraining/webex/SourceSynchTiming_CN/presentation.html
1.输入端约束
1.1.时钟约束,时钟约束包括输入时钟约束,和虚拟时钟约束
数据与时钟的对齐情况包括中心对齐和沿对齐两种情况。
a.当输入数据为中心对齐时,输入时钟的约束情况如下:
b.当输入数据为沿对齐时,输入时钟的约束情况如下:
1.2.输入延时约束:
a.当上游器件提供tco信息时,又分两种情况,如果tco是关于输出时钟的,约束如下:
如果tco是关于输入时钟的,约束如下:
b. 当上游器件提供建立时间/保持时间信息时,输入延时约束如下:
这里的推导过程如下:
当数据与时钟是中心对齐时:
当数据与时钟是边沿对齐时:
约束实例:
c.如果上游器件提供传输抖动信息时,输入延时约束如下:
输入延时约束总结:
2输出端时序约束:
输出约束模型:
2.1输入时钟约束
a.输出的时钟类型:
b.输出时钟约束实例:
2.2输出延时约束两种情况:
a.当给定器件的Setup和Hold值的时候:
b.当给定最大最小抖动时:
数据与时钟时中心对齐,输出延时计算公式如下:
数据与时钟时边沿对齐,输出延时计算公式如下:
实例:
输出延时约束总结: