System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及网络通信领域,尤其涉及一种电路网表拓扑重构方法、装置和电子设备。
技术介绍
1、随着太空探索和空间应用研究的不断深入,自然空间辐照环境对人造卫星、航天器中电子元器件的可靠性造成了致命威胁。集成电路作为航天系统的核心电子器件之一,要求具有高水平抗单粒子能力,但是目前的空间搭载实验和地面模拟实验存在花费高、实验周期长、机时少、不能对处于设计阶段的芯片进行实验等缺点,因此需要借助仿真技术缩短宇航集成电路的开发周期,指导宇航集成电路抗单粒子加固。
2、由于原始电路网表其拓扑结构中存在模块的相互调用问题,导致模块中的单元不存在唯一性,某一个单元的性能发生变化,可能会影响到多个模块,无法直接仿真单一模块变化对电路性能的影响。
3、具体的,传统电路网表,如果直接对单元进行单粒子故障注入操作,故障注入是对该电路中所有调用该单元的单元都进行了故障注入,电路的单元不具有唯一性,若只对某个实例调用下的单元进行故障注入,采用前仿真电路网表需人工手动修改,每次仿真模块变化时,都需要手动修改新的网表,但是,人工修改仿真网表会导致效率低下且容易出错,不适合自动化仿真技术。并且,传统采用带寄生的电路网表仿真,仿真速度受到很大的限制,不利于前期的快速评估工作,仿真效率较低。
4、因此,亟需一种电路网表拓扑重构方法,以解决现有电路网表仿真效率较低的问题。
技术实现思路
1、本专利技术的目的在于提供一种电路网表拓扑重构方法、装置和电子设备,以解决现有电路网表仿真效率较低
2、第一方面,本专利技术提供一种电路网表拓扑重构方法,包括:
3、获取电路网表文件中对应的待处理电路的电路顶层名称和输入电路网表信息;
4、获取预设模块名初态和标识变量初态,逐行读入所述电路网表信息,通过匹配提取顶层模块名;
5、将所述标识变量赋值为1,在所述顶层模块名和所述电路顶层名称匹配的情况下,输出对应的该行电路网表内容;
6、在确定所述标识变量为1,且该行为非最后一行而为调用子模块行的情况下,提取所述调用子模块的例化名、端口名和模块名;
7、将所述调用子模块的子模块名替换为子模块名-例化名-预设模块名,输出所述调用子模块对应的该行电路网表内容;
8、基于所有输出的所述电路网表内容生成目标输出网表。
9、采用上述技术方案的情况下,获取电路网表文件中对应的待处理电路的电路顶层名称和输入电路网表信息;获取预设模块名初态和标识变量初态,逐行读入所述电路网表信息,通过匹配提取顶层模块名;将所述标识变量赋值为1,在所述顶层模块名和所述电路顶层名称匹配的情况下,输出对应的该行电路网表内容;在确定所述标识变量为1,且该行为非最后一行而为调用子模块行的情况下,提取所述调用子模块的例化名、端口名和模块名;将所述调用子模块的子模块名替换为子模块名-例化名-预设模块名,输出所述调用子模块对应的该行电路网表内容;基于所有输出的所述电路网表内容生成目标输出网表,可以实现单元的唯一化,该算法可以避免由单个模块变化引起的多个模块变化或者人工修改网表引起的错误,可以用于电路设计早期的单粒子性能评估,换言之,本申请提供的重构方法,可以自动实现电路单元的唯一化处理,用户可以直接对电路网表的任意单元进行单粒子故障注入仿真,该单元具有唯一性便于观察其影响,可以应用于电路早期的单粒子性能评估。无需在对电路单元进行故障注入时进行人工手动修改,无需每次仿真模块变化时,都需要手动修改新的网表,提高了仿真效率和稳定性可靠性,更加适合自动化仿真。
10、在一种可能的实现方式中,所述将所述调用子模块的子模块名替换为子模块名-例化名-预设模块名,输出所述调用子模块对应的该行电路网表内容,包括:
11、将所述调用子模块的子模块名替换为子模块名-例化名-预设模块名;
12、将赋值后的子模块名传递给所述电路顶层名称,例化名_预设模块名传递给所述预设模块名;
13、在完成传递后,输出所述调用子模块对应的该行电路网表内容;
14、在所述待处理电路为存在多层级模块调用的电路的情况下,循环执行以逐行读入网表和完成匹配。
15、在一种可能的实现方式中,在所述获取预设模块名初态和标识变量初态,逐行读入所述电路网表信息,通过匹配提取顶层模块名之后,还包括:
16、在所述标识变量为0,或最后一行执行标识变量为0的情况下,输出对应的该行电路网表内容。
17、在一种可能的实现方式中,在所述获取预设模块名初态和标识变量初态,逐行读入所述电路网表信息,通过匹配提取顶层模块名之后,还包括:
18、在所述顶层模块名和所述电路顶层名称不匹配的情况下,将顶层模块名赋值为顶层模块名-预设模块名后,输出对应的该行电路网表内容。
19、在一种可能的实现方式中,基于所有输出的所述电路网表内容生成目标输出网表,包括:
20、在所述电路网表内容包括注释信息的情况下,删除对应的注释信息,得到更新后的电路网表内容;
21、基于多个更新后的所述电路网表内容和不包括注释信息的电路网表内容生成目标输出网表。
22、在一种可能的实现方式中,所述获取电路网表文件中对应的待处理电路的电路顶层名称和输入电路网表信息,包括:
23、获取电路网表文件中对应的待处理电路的电路顶层名称;
24、读入所述电路顶层名称和所述电路网表文件对应的电路网表信息。
25、在一种可能的实现方式中,所述读入所述电路顶层名称和所述电路网表文件对应的电路网表信息,包括:
26、显示所述电路网表文件对应的工程路径信息和输入电路网表信息;
27、在接收到第二用户输入的确认所述工程路径信息和所述输入电路网表信息为目标工程路径信息和目标输入电路网表信息的情况下,读入所述输入电路网表信息和所述电路顶层名称。
28、在一种可能的实现方式中,逐行读入的所述电路网表信息包括顶层电路开始行、顶层电路中间行、调用子模块行和结束行,和/或子模块开始行、子模块中间行、调用底层模块行和结束行。
29、第二方面,本专利技术还提供一种电路网表拓扑重构装置,所述装置包括:
30、获取模块,用于获取电路网表文件中对应的待处理电路的电路顶层名称和输入电路网表信息;
31、第一提取模块,用于获取预设模块名初态和标识变量初态,逐行读入所述电路网表信息,通过匹配提取顶层模块名;
32、第一输出模块,用于将所述标识变量赋值为1,在所述顶层模块名和所述电路顶层名称匹配的情况下,输出对应的该行电路网表内容;
33、第二提取模块,用于在确定所述标识变量为1,且该行为非最后一行而为调用子模块行的情况下,提取所述调用子模块的例化名、端口名和模块名;
34、第二输出模块,用于将所述调用子模块的子模块名替换为子模块名-例化名-预设模块名,输出所述调用本文档来自技高网...
【技术保护点】
1.一种电路网表拓扑重构方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述将所述调用子模块的子模块名替换为子模块名-例化名-预设模块名,输出所述调用子模块对应的该行电路网表内容,包括:
3.根据权利要求1所述的方法,其特征在于,在所述获取预设模块名初态和标识变量初态,逐行读入所述电路网表信息,通过匹配提取顶层模块名之后,还包括:
4.根据权利要求1所述的方法,其特征在于,在所述获取预设模块名初态和标识变量初态,逐行读入所述电路网表信息,通过匹配提取顶层模块名之后,还包括:
5.根据权利要求1所述的方法,其特征在于,基于所有输出的所述电路网表内容生成目标输出网表,包括:
6.根据权利要求1所述的方法,其特征在于,所述获取电路网表文件中对应的待处理电路的电路顶层名称和输入电路网表信息,包括:
7.根据权利要求1所述的方法,其特征在于,所述读入所述电路顶层名称和所述电路网表文件对应的电路网表信息,包括:
8.根据权利要求1所述的方法,其特征在于,逐行读入的所述电路网表信息包
9.一种电路网表拓扑重构装置,其特征在于,所述装置包括:
10.一种电子设备,其特征在于,包括:一个或多个处理器;和其上存储有指令的一个或多个机器可读介质,当由所述一个或多个处理器执行时,使得执行权利要求1-8任一所述的电路网表拓扑重构方法。
...【技术特征摘要】
1.一种电路网表拓扑重构方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述将所述调用子模块的子模块名替换为子模块名-例化名-预设模块名,输出所述调用子模块对应的该行电路网表内容,包括:
3.根据权利要求1所述的方法,其特征在于,在所述获取预设模块名初态和标识变量初态,逐行读入所述电路网表信息,通过匹配提取顶层模块名之后,还包括:
4.根据权利要求1所述的方法,其特征在于,在所述获取预设模块名初态和标识变量初态,逐行读入所述电路网表信息,通过匹配提取顶层模块名之后,还包括:
5.根据权利要求1所述的方法,其特征在于,基于所有输出的所述电路网表内容生成目标输出网表,包括:
6.根据权利要求1所述...
【专利技术属性】
技术研发人员:郭燕萍,卜建辉,倪涛,许婷,李博,王娟娟,王春林,程磊,
申请(专利权)人:中国科学院微电子研究所,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。