上一节介绍的I/O延时约束只能对I/O的输入、输出延时信息进行约束,但是对于输入、输出外部的实际负载情况并没有做精确的设置,如下图所示。
如果缺少比较真实的外部输入、输出信息,时序分析工具对与外界逻辑有连接关系的内部逻辑的输入,输出延时的计算结果就会和实际情况之间有比较大的误差。可以通过设置I/O环境建模约束来设置与实际情况相符合的外部输入驱动力信息和输出负载信息,这样可以指导时序分析工具计算出处在内部与外部交界上的单元的更符合实际情况的延时信息。
I/O环境建模约束的内容主要包括以下几个方面。
1.输入驱动建模
在没有外部输入驱动力信息的设置时,时序分析工具默认设置外部输入驱动力为无限大。输入驱动建模的实现方法可以通过以下3各命令来实现。
(1)使用SDC命令set_drive来设置外部输入驱动力信息,通过该命令定义驱动该引脚的输入驱动电阻值,再通过该驱动电阻值算出驱动端的转换时间,并计入时序路径的延时信息里。设置的电阻值越大,其驱动力越小,当定义为0时,代表输入端驱动力无限大,如下图所示。
设置命令如下所示。
set_drive -rise 0.4 [all_inputs]
set_dri