一种芯片时钟约束文件的生成方法技术

技术编号:38144628 阅读:14 留言:0更新日期:2023-07-08 10:01
本发明专利技术公开了一种芯片时钟约束文件的生成方法,包括:读取原始数据文件;将所述原始数据文件进行寄存器传输级代码展开;通过替换模块,用预定义的简化逻辑结构代替复杂逻辑结构;通过分析模块,从完整的设计逻辑结构中解析出时钟结构,并保存为时钟结构描述文件;通过时钟约束生成模块,读入所述时钟结构描述文件以及预定义的简化逻辑结构对应的时钟约束模板,产生时钟约束文件。本发明专利技术通过读入整个芯片设计逻辑结构,从中提取出时钟衍生关系和拓扑结构,并生成时钟约束文件。不依赖于时钟结构图和时钟结构表格,适用于任意芯片设计,能够大幅减少分析检查时钟结构以及迭代的时间,加速时钟约束文件的撰写过程,提高约束文件的准确性。件的准确性。件的准确性。

【技术实现步骤摘要】
一种芯片时钟约束文件的生成方法


[0001]本专利技术公开了一种芯片时钟约束文件的生成方法,涉及芯片设计和静态时序分析


技术介绍

[0002]随着芯片整体规模和复杂度的不断上升,芯片的时钟结构也日益复杂。在芯片的设计实现过程中,时钟约束文件描述了所有时钟的衍生关系、周期、波形以及相位关系。时钟数量越多,衍生关系越复杂,时钟约束文件也越复杂。对于时钟约束文件的撰写,现有技术中的常规做法有两类:1.根据时钟架构图和寄存器传输级代码手工撰写。2.根据时钟架构表格,自动生成时钟约束文件。
[0003]做法1的缺点在于设计者要同时对照时钟架构图和设计代码逐条编写约束命令,耗费大量时间;并且难以保证正确性;当时钟架构随着设计变更而改动时,时钟约束文件也要跟着修改,工作量很大且容易出错。
[0004]做法2的优点在于在时钟架构设计变化时,能迅速生成新的时钟约束文件。缺点是要求时钟架构表格能完整的描述整个时钟结构,没有被描述到的结构,就需要手动撰写,这种情况在第三方IP内部尤为常见。
[0005]在芯片综合实现阶段需要首先使用时钟约束文件。现有的综合工具在开始综合前需要读入设计代码、单元库、时钟约束文件、低功耗描述文件等;在缺乏时钟约束文件的情况下,综合工具虽然能分析出整个设计的逻辑结构,但无法生成出时钟结构的描述,更不能为用户生成时钟结构对应的时钟约束文件。

技术实现思路

[0006]本专利技术要解决的问题是,从任意芯片设计中,自动分析出时钟结构,并生成时钟约束文件,从而减少撰写的工作量,减少出错的风险。
[0007]本专利技术公开了一种芯片时钟约束文件的生成方法,所述方法包括如下步骤:步骤1、读取原始数据文件;步骤2、将所述原始数据文件进行寄存器传输级代码展开;步骤3、通过替换模块,用预定义的简化逻辑结构代替复杂逻辑结构;步骤4、通过分析模块,从设计逻辑结构中解析出时钟结构,并保存为时钟结构描述文件;步骤5、通过时钟约束生成模块,读入所述时钟结构描述文件以及预定义的简化逻辑结构对应的时钟约束模板,产生时钟约束文件。
[0008]作为优选方案,所述原始数据文件包括寄存器传输级代码和标准单元库。
[0009]作为优选方案,所述步骤2具体包括:根据所述原始数据文件,利用综合工具进行代码展开,所述代码展开是指代码从逻辑描述转换为电路的拓扑结构,并能在综合工具中查询电路结构的逻辑关系、节点、引
脚,以及其属性。
[0010]作为优选方案,所述步骤3具体包括:从寄存器的时钟引脚出发追踪其扇入逻辑结构,直到前一级寄存器的输出、引脚;再次从所述前一级寄存器的时钟引脚出发追踪其扇入逻辑结构,以递归的方式遍历整个设计逻辑,当追踪过程中获取的寄存器输出引脚层次符合预定义的简化逻辑结构的替换条件时,则用简化逻辑结构代替原有的复杂逻辑结构。将追踪过程中获取的寄存器和端口所在的设计逻辑结构层次保存为时钟结构描述文件。
[0011]作为优选方案,所述步骤4具体包括:使用analyze_clock_structure函数,从综合工具得到设计中所有的寄存器,保存为寄存器列表作为函数的输入;定义result_list变量,用于存放临时的追踪结果;遍历寄存器列表及其每个引脚,存入pin_hier,如果该引脚有时钟属性,那么获取其所有扇入的起始点并放入result变量,如果这些起始点不存在于result_list则将其放入;如果result变量的类型属性为端口,说明已经追踪到设计逻辑结构的输入端口,即为主时钟的定义点,此时记录该节点信息,存入port_name,格式为:ROOT:<port_name> LEAF: <pin_hier>;如果result变量的类型属性为引脚,说明该节点在设计逻辑结构内部,同时也说明该引脚是上一级寄存器的输出引脚,获取该引脚所在的设计逻辑结构的层次,存入node_reg;该寄存器输出引脚需要定义衍生时钟,因此记录该引脚所在层次,存入pin_hier,格式为:NODE: <node_reg > LEAF: <pin_hier>;node_reg作为一个寄存器,成为analyze_clock_structure函数的输入,形成递归算法,从而遍历整个设计逻辑结构, 在此遍历过程中不断输出获取到的ROOT、NODE和LEAF信息,形成完整的时钟结构描述文件。
[0012]作为优选方案,所述步骤5具体包括:遍历时钟结构描述文件,对每个寄存器输出引脚生成create_generated_clock时钟约束命令,对每个端口生成create_clock时钟约束命令,如果所述寄存器输出引脚层次为预定义的简化逻辑结构,那么调用对应时钟约束模板,保存为时钟约束文件。
[0013]本申请所公开的芯片时钟约束文件的生成方法,通过读入整个芯片设计逻辑,从中提取出时钟关系和结构,并生成时钟约束文件。不依赖于时钟结构图和时钟结构表格,适用于任意芯片设计,能够大幅减少分析检查时钟结构及其修改迭代的时间,加速时钟约束文件的撰写过程,提高约束文件的准确性。
附图说明
[0014]图1是本专利技术一实施例的芯片时钟约束文件生成方法的流程图。
[0015]图2是本专利技术一实施例的分析模块算法示意图。
[0016]图3是本专利技术一实施例的一种时钟分频结构的分析示意图。
[0017]图4是本专利技术一实施例的替代模块的替换命令。
[0018]图5是本专利技术一实施例的单时钟输入预定义模块的替换示意图。
[0019]图6是本专利技术一实施例的多时钟输入预定义模块1的替换示意图。
[0020]图7是本专利技术一实施例的多时钟输入预定义模块2的替换示意图。
[0021]图8是本专利技术一实施例从设计逻辑结构解析时钟结构的算法流程图。
[0022]图9是本专利技术一实施例生成时钟约束文件的算法流程图。
具体实施方式
[0023]本专利技术公开了一种芯片时钟约束文件的生成方法,如图1所示,所述方法包括如下步骤:S1:读取原始数据文件。所述原始数据文件包括:寄存器传输级代码、单元库。
[0024]S2:根据所述原始数据文件,利用综合工具进行代码展开。展开是指代码从逻辑描述转换为电路的拓扑结构,并能在综合工具中查询电路结构的逻辑关系、节点、引脚,以及他们的属性。
[0025]S3:通过替换模块,在综合工具中遍历所述电路拓扑结构的所有子模块名称和层次,并将复杂逻辑结构替换为简化的逻辑结构。
[0026]所述复杂逻辑结构,其特点是,结构存在时钟回环,例如OCC片上时钟、分频器等,其结构固定,而且在同一设计中往往会被多次复用。有下面几种常见的替代形式和对应的时钟约束模板。
[0027]以图5为例,CKIN信号进入虚线框内的预定义逻辑结构后,经过一些逻辑电路,可以是多路不同的分频电路结构,最后通过选通器,选择一路时钟传播到CKOUT。这本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种芯片时钟约束文件的生成方法,其特征在于,所述方法包括如下步骤:步骤1、读取原始数据文件;步骤2、将所述原始数据文件进行寄存器传输级代码展开;步骤3、通过替换模块,用预定义的简化逻辑结构代替复杂逻辑结构;步骤4、通过分析模块,从完整的设计逻辑结构中解析出时钟结构,并保存为时钟结构描述文件;步骤5、通过时钟约束生成模块,读入所述时钟结构描述文件以及预定义的简化逻辑结构对应的时钟约束模板,产生时钟约束文件。2.如权利要求1所述的一种芯片时钟约束文件的生成方法,其特征在于,所述原始数据文件包括寄存器传输级代码和标准单元库。3.如权利要求1所述的一种芯片时钟约束文件的生成方法,其特征在于,所述步骤2具体包括:将所述原始数据文件,利用综合工具进行代码展开,所述代码展开是指代码从逻辑描述转换为电路的拓扑结构,并能在综合工具中查询电路结构的逻辑关系、节点、引脚,以及其属性。4.如权利要求1所述的一种芯片时钟约束文件的生成方法,其特征在于,所述步骤3具体包括:从寄存器的时钟引脚出发追踪其扇入逻辑结构,直到前一级寄存器的输出端;再次从所述前一级寄存器的时钟引脚出发追踪其扇入逻辑结构,以递归的方式遍历整个设计逻辑结构,当追踪过程中获取的寄存器输出引脚层次符合预定义的简化逻辑结构的替换条件时,用简化逻辑结构代替原有的复杂逻辑结构;将追踪过程中获取的寄存器输出引脚层次和端口信息保存为时钟结构描述文件。5.如权利要求1所述的一种芯片时钟约束文件的生成方法,其特征在于,所述步骤5具体包括:遍历时钟结构描述文件,对每个寄存器输出引脚生成create_generated_clock时钟约束命令,对每个端口生成create_clock时钟约束命令,如...

【专利技术属性】
技术研发人员:陆辰鸿黄海林庄兆艳李力游小约翰
申请(专利权)人:南京蓝洋智能科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1