门级网表的处理方法、计算机存储介质技术

技术编号:30405530 阅读:15 留言:0更新日期:2021-10-20 11:08
本发明专利技术公开了一种门级网表的处理方法、计算机存储介质。其中门级网表的处理方法包括:将原始网表文件对应的门电路的电路连接关系采用驱动矩阵进行表示,所述驱动矩阵的行向量和列向量分别从以下两者任选一种:门,所述门所对应的同一类型的连接端口的信息;基于用来表征原始网表文件对应的门电路的驱动矩阵对该门电路进行运算,得到用来表征运算后的门电路的驱动矩阵;基于每一个运算后的门电路所对应的驱动矩阵,重建每一个运算后的门电路的新网表文件。本发明专利技术在对原始网表文件进行运算的过程中,也不会丢失掉原始网表文件的重要信息,使得运算后得到的新网表文件具有详尽的信息,为仿真提供更加有利的条件。为仿真提供更加有利的条件。为仿真提供更加有利的条件。

【技术实现步骤摘要】
门级网表的处理方法、计算机存储介质


[0001]本专利技术涉及门电路仿真
,尤其涉及在对门级网表文件进行仿真前,对门级网表的处理方法。

技术介绍

[0002]在对门级数字集成电路(以下简称为门电路)进行仿真之前,需要对门电路的门级网表文件进行处理,例如非常大型的门电路在仿真时,为了提高效率,需要对门电路进行分割、分组,使得门电路可以分割为多个子块,然后再对多个子块进行并行处理,以此来提高仿真效率。
[0003]而门级网表文件不能直接被用来对门电路进行运算(如分割、分组),因而需要用适当的数学形式来表征数字集成电路的门级网表。门级网表中包含门电路的实例化和基于端口映射的连接关系,根据门级网表可以画出一张门电路的连接图。而现有技术中通常采用邻接矩阵来表示门电路,使得门电路可以进行分割或分组,之后再基于分割后的门电路所对应的邻接矩阵来生成新的门级网表,以进行仿真处理。
[0004]但是邻接矩阵会丢失掉门电路的一些信息,如门的类型、门的输入端口与驱动端(也称之为电路输入端口)的连接关系、门的输出端口与负载输入端(也称之为电路输出端口)的连接关系等。门的类型直接决定了门的逻辑功能和延时大小;不同输入端口的负载电容不同,连接在此端口上的驱动门的延时和功耗也不同;不同输出端口的驱动能力不同,此端口的延时与功耗也不同。对于组合逻辑门,不同的输入模式带来的延时不同;对于时序逻辑门,数据输入(D)端与时钟输入(CK)端的时序分析方式不同。
[0005]而数字集成电路的分析与处理除了关注连接关系,还要关注门的功能,计算延时、功耗、尺寸等信息,在对表征门级网表的矩阵进行计算的过程中,需要这些除了连接关系之外的信息。对矩阵计算完成后,根据矩阵的计算结果重新输出处理(如分割、分组等)后的电路网表时,也需要门的类型、输入输出端口信息(如名称)、连接关系等信息,但是目前的邻接矩阵以及通过分割后的邻接矩阵转换的新的门级网表要么丢失了这些信息,要么需要非常繁杂的流程去重新获得这些信息,导致仿真进展不顺利。
[0006]因此,如何提供一种门级网表的处理方法是业界亟待解决的技术问题。

技术实现思路

[0007]为了解决现有技术中邻接矩阵表示的门电路信息量较少的技术问题,本专利技术提出一种门级网表的处理方法、计算机存储介质。
[0008]本专利技术提出门级网表的处理方法,包括:步骤1,将原始网表文件对应的门电路的电路连接关系采用驱动矩阵进行表示,所述驱动矩阵的行向量和列向量分别从以下两者任选一种:门,所述门所对应的同一类型的连接端口的信息,当某一个连接端口与一个门相连接时,所述驱动矩阵中该门与该连接端口所指向的矩阵元素的取值为该门与该连接端口相连接的端口的信息的集合;
步骤2,基于用来表征原始网表文件对应的门电路的驱动矩阵对该门电路进行运算,得到用来表征运算后的门电路的驱动矩阵;步骤3,基于每一个运算后的门电路所对应的驱动矩阵,重建每一个运算后的门电路的新网表文件。
[0009]进一步,可表征任意门电路的电路连接关系的驱动矩阵包括:表征对应门电路的所有门与所有门的所有输出端口之间连接关系的内部驱动矩阵,表征对应门电路的所有门与所有电路输出端口之间连接关系的输出驱动矩阵,以及表征对应门电路的所有门与所有电路输入端口之间连接关系的输入驱动矩阵。
[0010]进一步,所述运算包括对原始网表文件对应的门电路进行分割或分组。
[0011]进一步,重建运算后的门电路的新网表文件包括:步骤3.1,将输出驱动矩阵转化为用于表征对应门电路的所有门的输出端口与所有电路输出端口之间连接关系的新输出驱动矩阵,且以内部驱动矩阵的行向量和列向量为基准,使得所述新输出驱动矩阵与所述内部驱动矩阵用来表征所有门的输出端口的向量均为行向量,或者均为列向量;步骤3.2,基于相同的行向量或者相同的列向量,将所述内部驱动矩阵与所述新输出驱动矩阵拼接成用来表征所有门的输出端口与所有门及电路输出端口之间连接关系的总输出驱动矩阵;步骤3.3,根据所述总输出驱动矩阵的矩阵元素的取值得到每一个门的输出端口的连线信息;步骤3.4,创建待连线的门列表;步骤3.5,将内部驱动矩阵用来表征所有门的输出端口的向量的元素采用该输出端口对应的连线信息进行替换,得到新内部驱动矩阵;步骤3.6,基于相同的行向量或者相同的列向量,将所述新内部驱动矩阵与输入驱动矩阵拼接成输入输出驱动矩阵;步骤3.7,基于所述输入输出驱动矩阵生成每一个门及其对应的输入端口连线、输出端口连线的信息;步骤3.8,为每一个门添加类型信息及格式化信息;步骤3.9,将所有门及其对应的信息输出到新网表文件。
[0012]进一步,生成所述新输出驱动矩阵包括:步骤3.1.1,判断所述输出驱动矩阵用来表征门的行或列是否与所述内部驱动矩阵用来表征门的输出端口的行或列均为行向量,或者是否均为列向量,若否,则将所述输出驱动矩阵进行转置,再继续下一步骤;若是,则直接继续下一步骤;步骤3.1.2,根据用来表征所有门的所有输出端口的向量判断一个门是否具有多个输出端口,若一个门具有多个输出端口,则将所述输出驱动矩阵中该门所对应的行或列进行复制,使得该门所对应的行或列的数量与其输出端口数量一致;步骤3.1.3,将复制后的所述输出驱动矩阵中的行向量或列向量中的门分别采用该门的各个输出端口进行替换;步骤3.1.4,将替换后的所述输出驱动矩阵中每一个门的输出端口所对应的行元素或者列元素中与该输出端口信息不一致的元素替换为0,形成所述新输出驱动矩阵。
[0013]进一步,所述将原始网表文件对应的门电路的电路连接关系采用驱动矩阵进行表示包括步骤:步骤1.1,读取原始网表文件;步骤1.2,基于所述原始网表文件创建第一数据结构来存储各个门的各连接端口及其连线,并根据所属于的门在第一数据结构中将所述连接端口及其连线分类成行或列;步骤1.3,分别创建第二数据结构来存储门、电路输入端口以及电路输出端口;步骤1.4,基于第二数据结构的元素遍历第一数据结构的元素,从中找到对应驱动矩阵的元素,生成所述驱动矩阵。
[0014]进一步,生成所述内部驱动矩阵包括:步骤1.1.1:创建内部驱动矩阵;步骤1.1.2:读取第一数据结构中一个门的所有端口及其连线,并查找该门的一个输出端口及其连线作为当前门的输出端口及其连线;步骤1.1.3:遍历第一数据结构中当前门以外的其他门的所有端口及其连线,找到与当前门的输出端口及其连线为相同连线的其他门的输入端口及其连线,将该其他门的输入端口的信息加入至所述内部驱动矩阵中由当前门的输出端口与该其他门所指向的矩阵元素的取值;步骤1.1.4:继续查找当前门的输出端口及其连线,直至当前门的输出端口匹配完毕,若找到当前门的输出端口及其连线,则返回步骤1.1.3;若当前门的输出端口匹配完毕,则返回步骤1.1.2,直至所有门的输出端口匹配完毕。
[0015]进一步,生成所述输入驱动矩阵包括:步骤1.2.1:创建所述输入驱动矩阵;步骤1.2.2:读取第二数据结构中的一个电路输入端口作为当前电路输入端口;步骤1.2.本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种门级网表的处理方法,其特征在于,包括:步骤1,将原始网表文件对应的门电路的电路连接关系采用驱动矩阵进行表示,所述驱动矩阵的行向量和列向量分别从以下两者任选一种:门,所述门所对应的同一类型的连接端口的信息,当某一个连接端口与一个门相连接时,所述驱动矩阵中该门与该连接端口所指向的矩阵元素的取值为该门与该连接端口相连接的端口的信息的集合;步骤2,基于用来表征原始网表文件对应的门电路的驱动矩阵对该门电路进行运算,得到用来表征运算后的门电路的驱动矩阵;步骤3,基于每一个运算后的门电路所对应的驱动矩阵,重建每一个运算后的门电路的新网表文件。2.如权利要求1所述的门级网表的处理方法,其特征在于,可表征任意门电路的电路连接关系的驱动矩阵包括:表征对应门电路的所有门与所有门的所有输出端口之间连接关系的内部驱动矩阵,表征对应门电路的所有门与所有电路输出端口之间连接关系的输出驱动矩阵,以及表征对应门电路的所有门与所有电路输入端口之间连接关系的输入驱动矩阵。3.如权利要求1所述的门级网表的处理方法,其特征在于,所述运算包括对原始网表文件对应的门电路进行分割或分组。4.如权利要求2所述的门级网表的处理方法,其特征在于,重建运算后的门电路的新网表文件包括:步骤3.1,将输出驱动矩阵转化为用于表征对应门电路的所有门的输出端口与所有电路输出端口之间连接关系的新输出驱动矩阵,且以内部驱动矩阵的行向量和列向量为基准,使得所述新输出驱动矩阵与所述内部驱动矩阵用来表征所有门的输出端口的向量均为行向量,或者均为列向量;步骤3.2,基于相同的行向量或者相同的列向量,将所述内部驱动矩阵与所述新输出驱动矩阵拼接成用来表征所有门的输出端口与所有门及电路输出端口之间连接关系的总输出驱动矩阵;步骤3.3,根据所述总输出驱动矩阵的矩阵元素的取值得到每一个门的输出端口的连线信息;步骤3.4,创建待连线的门列表;步骤3.5,将内部驱动矩阵用来表征所有门的输出端口的向量的元素采用该输出端口对应的连线信息进行替换,得到新内部驱动矩阵;步骤3.6,基于相同的行向量或者相同的列向量,将所述新内部驱动矩阵与输入驱动矩阵拼接成输入输出驱动矩阵;步骤3.7,基于所述输入输出驱动矩阵生成每一个门及其对应的输入端口连线、输出端口连线的信息;步骤3.8,为每一个门添加类型信息及格式化信息;步骤3.9,将所有门及其对应的信息输出到新网表文件。5.如权利要求4所述的门级网表的处理方法,其特征在于,生成所述新输出驱动矩阵包括:步骤3.1.1,判断所述输出驱动矩阵用来表征门的行或列是否与所述内部驱动矩阵用来表征门的输出端口的行或列均为行向量,或者是否均为列向量,若否,则将所述输出驱动
矩阵进行转置,再继续下一步骤;若是,则直接继续下一步骤;步骤3.1.2,根据用来表征所有门的所有输出端口的向量判断一个门是否具有多个输出端口,若一个门具有多个输出端口,则将所述输出驱动矩阵中该门所对应的行或列进行复制,使得该门所对应的行或列的数量与其输出端口数量一致;步骤3.1.3,将复制后的所述输出驱动矩阵中的...

【专利技术属性】
技术研发人员:黄国勇赵岩邓联文
申请(专利权)人:国微集团深圳有限公司
类型:发明
国别省市:

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

1