器件及线网移动方法、装置、设备及存储介质与流程

文档序号:28214874发布日期:2021-12-28 21:49阅读:99来源:国知局
器件及线网移动方法、装置、设备及存储介质与流程

1.本发明涉及eda设计技术领域,尤其涉及一种器件及线网移动方法、装置、设备及存储介质。


背景技术:

2.在电路分析过程中,需要将完全散乱的器件和线网整理成方便识别和读取的电路,在电路中包含有器件、每个器件包含数量不等的端口,根据端口的数量不同其引出的线网数量也不同,在需要移动器件时,目前cadence提供的方法是选中器件时只能移动器件,线网不能同时被移动,当器件较大和密集的时候,每个器件都需要同时选中器件和线网,对于移动器件及其不方便,而且容易发生错误。
3.上述内容仅用于辅助理解本发明的技术方案,并不代表承认上述内容是现有技术。


技术实现要素:

4.本发明的主要目的在于提供了一种器件及线网移动方法、装置、设备及存储介质,旨在解决现有技术中在选中器件时只能移动器件,线网不能同时被移动,容易导致移动器件时发生错误的技术问题。
5.为实现上述目的,本发明提供了一种器件及线网移动方法,所述器件及线网移动方法包括:
6.获取预设图形绘制窗口中展示的待移动器件的端口信息;
7.根据所述端口信息确定所述待移动器件的端口中心点信息;
8.根据所述端口信息和所述端口中心点信息确定线网范围;
9.获取所述线网范围内与所述待移动器件的端口连接的所有引线,并对所述待移动器件和所述所有引线进行移动。
10.可选地,所述根据所述端口信息确定所述待移动器件的端口中心点信息的步骤,具体包括:
11.根据所述端口信息确定所述待移动器件在各个方向上的端口数量;
12.在所述端口数量为一个时,将所述端口信息作为所述待移动器件的端口中心点信息;
13.在所述端口数量为多个时,根据所述端口信息和所述端口数量确定所述待移动器件的端口中心点信息。
14.可选地,所述在所述端口数量为多个时,根据所述端口信息和所述端口数量确定所述待移动器件的端口中心点信息的步骤,具体包括:
15.在所述端口数量为多个时,判断多个端口是否均匀分布;
16.在所述多个端口均匀分布时,获取所述多个端口的中心位置,并将所述中心位置的位置信息作为所述待移动器件的端口中心点信息;
17.在多个端口未均匀分布时,将每一个端口信息作为所述待移动器件的端口中心点信息。
18.可选地,所述根据所述端口信息和所述端口中心点信息确定线网范围的步骤,具体包括:
19.根据所述端口信息确定线网长度;
20.根据所述端口数量和所述线网长度确定线网半径;
21.根据所述端口中心点信息和所述线网半径确定线网范围。
22.可选地,所述根据所述端口信息确定线网长度的步骤,具体包括:
23.根据所述端口信息获取与所述待移动器件的所有端口连接的引线集合;
24.确定所述引线集合中所有引线的引线长度集合,并从所述引线长度集合中选取最长的目标引线长度;
25.根据所述目标引线长度确定线网长度。
26.可选地,所述根据所述端口数量和所述线网长度确定线网半径的步骤,具体包括:
27.在多个端口均匀分布时,判断所述端口数量是否为奇数;
28.在所述端口数量为奇数时,通过第一预设公式计算目标端口数量,其中,所述第一预设公式为:
[0029][0030]
式中,n为端口数量,n为目标端口数量;
[0031]
在所述端口数量为偶数时,通过第二预设公式计算所述目标端口数量,其中,所述第二预设公式为:
[0032][0033]
式中,n为端口数量,n为目标端口数量;
[0034]
根据所述目标端口数量和所述线网长度确定线网半径。
[0035]
可选地,所述获取预设图形绘制窗口中展示的待移动器件的端口信息的步骤之前,还包括:
[0036]
将图形绘制窗口中处于被选中状态的器件作为待移动器件;
[0037]
获取所述待移动器件的边界位置信息,根据所述边界位置信息确定所述待移动器件的展示边框;
[0038]
将所述待移动器件与所述展示边框的交点作为所述待移动器件的端口。
[0039]
此外,为实现上述目的,本发明还提出一种器件及线网移动装置,所述器件及线网移动装置包括:
[0040]
信息获取模块,用于获取预设图形绘制窗口中展示的待移动器件的端口信息;
[0041]
信息确定模块,用于根据所述端口信息确定所述待移动器件的端口中心点信息;
[0042]
范围确定模块,用于根据所述端口信息和所述端口中心点信息确定线网范围;
[0043]
器件及线网移动模块,用于获取所述线网范围内与所述待移动器件的端口连接的所有引线,并对所述待移动器件和所述所有引线进行移动。
[0044]
此外,为实现上述目的,本发明还提出一种器件及线网移动设备,所述器件及线网
移动设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的器件及线网移动程序,所述器件及线网移动程序配置为实现如上文所述的器件及线网移动方法的步骤。
[0045]
此外,为实现上述目的,本发明还提出一种存储介质,所述存储介质上存储有器件及线网移动程序,所述器件及线网移动程序被处理器执行时实现如上文所述的器件及线网移动方法的步骤。
[0046]
本发明通过获取预设图形绘制窗口中展示的待移动器件的端口信息,然后根据端口信息确定待移动器件的端口中心点信息,然后根据端口信息和端口中心点信息确定线网范围,再获取线网范围内与待移动器件的端口连接的所有引线,并对待移动器件和所有引线进行移动。本发明根据端口信息和端口中心点信息确定线网范围,再获取线网范围内的所有引线,能够精确得到与端口连接的所有引线,再对待移动器件和所有引线同时进行移动,相较于现有技术中需要将器件和线网同时选中才能移动,本发明上述方式在选中器件时,器件和线网会同时被选中,从而能够同时移动器件和线网。
附图说明
[0047]
图1是本发明实施例方案涉及的硬件运行环境的器件及线网移动设备的结构示意图;
[0048]
图2为本发明器件及线网移动方法第一实施例的流程示意图;
[0049]
图3为本发明器件及线网移动方法待移动器件端口示意图;
[0050]
图4为本发明器件及线网移动方法第二实施例的流程示意图;
[0051]
图5为本发明器件及线网移动方法第三实施例的流程示意图;
[0052]
图6为为本发明器件及线网移动方法线网范围示意图;
[0053]
图7为本发明器件及线网移动装置第一实施例的结构框图。
[0054]
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
[0055]
应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
[0056]
参照图1,图1为本发明实施例方案涉及的硬件运行环境的器件及线网移动设备结构示意图。
[0057]
如图1所示,该器件及线网移动设备可以包括:处理器1001,例如中央处理器(central processing unit,cpu),通信总线1002、用户接口1003,网络接口1004,存储器1005。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(display)、输入单元比如键盘(keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如无线保真(wireless

fidelity,wi

fi)接口)。存储器1005可以是高速的随机存取存储器(random access memory,ram),也可以是稳定的非易失性存储器(non

volatile memory,nvm),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
[0058]
本领域技术人员可以理解,图1中示出的结构并不构成对器件及线网移动设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
[0059]
如图1所示,作为一种存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及器件及线网移动程序。
[0060]
在图1所示的器件及线网移动设备中,网络接口1004主要用于与网络服务器进行数据通信;用户接口1003主要用于与用户进行数据交互;本发明器件及线网移动设备中的处理器1001、存储器1005可以设置在器件及线网移动设备中,所述器件及线网移动设备通过处理器1001调用存储器1005中存储的器件及线网移动程序,并执行本发明实施例提供的器件及线网移动方法。
[0061]
本发明实施例提供了一种器件及线网移动方法,参照图2,图2为本发明器件及线网移动方法第一实施例的流程示意图。
[0062]
本实施例中,所述器件及线网移动方法包括以下步骤:
[0063]
步骤s10:获取预设图形绘制窗口中展示的待移动器件的端口信息;
[0064]
需要说明的是,本实施例的执行主体可以是上述具有网络通信以及程序运行功能的器件及线网移动设备,也可以是能够实现相同或相似功能的其他设备,本实施例对此不做具体限制。
[0065]
应理解的是,预设图形绘制窗口是指在cadence virtuoso软件中进行图形绘制及器件仿真的窗口,cadence virtuoso绘制窗口是基于cadence virtuoso统一定制/模拟流程支持必须在晶体管层面开发出最优性能的设计,包括模拟和射频(rf)电路、高性能数字模块和用作构建数字集成电路(ics)的标准单元库的图形绘制窗口。
[0066]
可理解的是,端口信息是指待移动器件上的所有端口对应的坐标信息以及方向信息,方向信息是指待移动器件的端口相对于待移动器件所处的方向,例如:上端、下端、左端、右端。
[0067]
进一步地,为了确定待移动器件的端口,所述步骤s10之前还包括:将图形绘制窗口中处于被选中状态的器件作为待移动器件;获取所述待移动器件的边界位置信息,根据所述边界位置信息确定所述待移动器件的展示边框;
[0068]
将所述待移动器件与所述展示边框的交点作为所述待移动器件的端口。
[0069]
在具体实现中,设计人可以选中需要移动的器件,本实施例将上述器件作为待移动器件,可以通过鼠标选中,也可以通过键盘选中,本实施例对此不做具体限制。
[0070]
应理解的是,边界位置信息是指待处理器件的所有引脚所处的位置,待移动器件的展示边框是指将所有引脚进行包围的边框,将所有引脚进行连接,可以得到展示边框,然后待移动器件与展示边框的交点即为待移动器件的端口。
[0071]
进一步地,参考图3,图3为本发明器件及线网移动方法待移动器件端口示意图。
[0072]
如图3所示,中间的器件为待移动器件,四边形为待移动器件的展示边框,小四边形为待移动器件的端口。
[0073]
步骤s20:根据所述端口信息确定所述待移动器件的端口中心点信息;
[0074]
需要说明的是,端口中心点信息是指待移动器件上的端口中心点对应的坐标信息以及方向信息,只要在某一个方向上有端口,则该方向就存在端口中心点。
[0075]
步骤s30:根据所述端口信息和所述端口中心点信息确定线网范围;
[0076]
可理解的是,线网范围是指待移动器件所有的端口对应的引线所处的范围,即该线网范围包括待移动器件所有的引线。
[0077]
步骤s40:获取所述线网范围内与所述待移动器件的端口连接的所有引线,并对所述待移动器件和所述所有引线进行移动。
[0078]
在具体实现中,在得到线网范围后,就可以得到该线网范围内与待移动器件端口连接的所有引线,在获得所有引线后,当选中待移动器件时,就可以将器件和线网同时移动。
[0079]
本实施例本发明通过获取预设图形绘制窗口中展示的待移动器件的端口信息,然后根据端口信息确定待移动器件的端口中心点信息,然后根据端口信息和端口中心点信息确定线网范围,再获取线网范围内与待移动器件的端口连接的所有引线,并对待移动器件和所有引线进行移动。本发明根据端口信息和端口中心点信息确定线网范围,再获取线网范围内的所有引线,能够精确得到与端口连接的所有引线,再对待移动器件和所有引线同时进行移动,相较于现有技术中需要将器件和线网同时选中才能移动,本发明上述方式在选中器件时,器件和线网会同时被选中,从而能够同时移动器件和线网。
[0080]
参考图4,图4为本发明器件及线网移动方法第二实施例的流程示意图。
[0081]
基于上述第一实施例,在本实施例中,所述步骤s20包括:
[0082]
步骤s201:根据所述端口信息确定所述待移动器件在各个方向上的端口数量;
[0083]
需要说明的是,端口数量是指端口的个数,例如:结合图3可以看出,待移动器件左侧的端口数量为3,待移动器件上侧的端口数量为1,待移动器件下侧的端口数量为1,待移动器件右侧的端口数量为1,对于其他的待处理器件的端口数量也是这样获取。
[0084]
步骤s202:在所述端口数量为一个时,将所述端口信息作为所述待移动器件的端口中心点信息;
[0085]
在具体实现中,当端口数量为一个时,说明该方向上的端口只有一个,例如图3中的上侧、下侧以及右侧,此时该方向上的端口中心点信息即端口信息。
[0086]
步骤s203:在所述端口数量为多个时,根据所述端口信息和所述端口数量确定所述待移动器件的端口中心点信息。
[0087]
进一步地,为了精确确定端口中心点信息,所述步骤s203包括:在所述端口数量为多个时,判断多个端口是否均匀分布;在所述多个端口均匀分布时,获取所述多个端口的中心位置,并将所述中心位置的位置信息作为所述待移动器件的端口中心点信息;在多个端口未均匀分布时,将每一个端口信息作为所述待移动器件的端口中心点信息。
[0088]
可理解的是,当待处理器件存在多个端口时,首先要判断多个端口是否均匀分布,图3中待移动器件左侧的多个端口显然是均匀分布的,所以可以获取到中心位置,所有端口的中心即为中心位置。
[0089]
在具体实现中,如果多个端口未分布均匀,则需要将每一个端口作为端口中心点。
[0090]
本实施例通过判断多个端口是否均匀分布来确定待移动器件的端口中心点信息,在分布均匀时直接获取所有端口的中心点,在分布不均匀时得到多个中心点,能够使得端口中心点信息更加精确。
[0091]
本实施例根据端口信息确定待移动器件在各个方向上的端口数量,在端口数量为一个时,将端口信息作为待移动器件的端口中心点信息,在端口数量为多个时,根据端口信息和端口数量确定所述待移动器件的端口中心点信息。本实施例通过确定端口数量是一个还是多个,在只有一个端口时将该端口作为端口中心点,在有多个端口时再根据多个端口
的分布状态具体分析,可以准确获取到端口中心点信息,从而能够精确确定线网范围。
[0092]
参考图5,图5为本发明器件及线网移动方法第三实施例的流程示意图。
[0093]
基于上述各实施例,在本实施例中,所述步骤s30包括:
[0094]
步骤s301:根据所述端口信息确定线网长度;
[0095]
进一步地,为了确定线网长度,所述步骤s301包括:根据所述端口信息获取与所述待移动器件的所有端口连接的引线集合;确定所述引线集合中所有引线的引线长度集合,并从所述引线长度集合中选取最长的目标引线长度;根据所述目标引线长度确定线网长度。
[0096]
可理解的是,每一个端口可能都会连接引线,对于每一条引线,可能都会有不同的引线长度,因此,为了使得结果更加全面,需要选取最长的目标引线长度。
[0097]
在具体实现中,目标引线长度可以等于线网长度,也可以小于线网长度,本实施例对此不做具体限制。
[0098]
本实施例通过选取最长的目标引线长度,再根据目标引线长度确定线网长度,能够使线网长度的结果更加精确,从而能够精确确定线网范围。
[0099]
步骤s302:根据所述端口数量和所述线网长度确定线网半径;
[0100]
可理解的是,在本实施例中,线网半径为端口数量和线网长度的和,例如:在图3中,设置线网长度为2,待处理器件上侧的端口数量为1,则线网半径为1+2=3;待处理器件下侧的端口数量为1,则线网半径为1+2=3;待处理器件右侧的端口数量为1,则线网半径为1+2=3。
[0101]
进一步地,为了确定在端口数量为多个时的线网半径,所述步骤s302包括:在多个端口均匀分布时,判断所述端口数量是否为奇数;在所述端口数量为奇数时,通过第一预设公式计算目标端口数量,其中,所述第一预设公式为:
[0102][0103]
式中,n为端口数量,n为目标端口数量;
[0104]
在具体实现中,当端口数量为奇数时,需要通过第一预设公式计算目标端口数量,例如:当端口数量为7时,则目标端口数量为4。
[0105]
在所述端口数量为偶数时,通过第二预设公式计算所述目标端口数量,其中,所述第二预设公式为:
[0106][0107]
式中,n为端口数量,n为目标端口数量;
[0108]
可理解的是,结合图3可以看出,待处理器件左侧的端口数量为6,所以端口数量为偶数,因此,通过第二预设公式计算可以得到目标端口数量为3。
[0109]
本实施例通过判断端口数量为奇数还是偶数,再通过不同的预设公式计算目标端口数量,使得目标端口数量为整数,从而能够精确确定线网范围。
[0110]
根据所述目标端口数量和所述线网长度确定线网半径。
[0111]
应理解的是,在本实施例中,当存在多个端口时,线网半径也为线网半径和目标端口数量的和,在图3中,设置线网长度为2,目标端口数量为3+2=5。
[0112]
步骤s303:根据所述端口中心点信息和所述线网半径确定线网范围。
[0113]
可理解的是,线网范围内包含所有端口的引线。
[0114]
在具体实现中,线网范围是以端口中心点为中心,线网半径为半径画的一个圆,参考图6,图6为为本发明器件及线网移动方法线网范围示意图,如图6所示,每一个圆代表每一个方向上的线网范围,由于待处理器件的上侧、下侧以及右侧的线网半径是相同的,所以圆的大小也是相同的。
[0115]
在具体实现中,在得到线网范围后,就可以得到该线网范围内与待移动器件端口连接的所有引线,在获得所有引线后,当选中待移动器件时,就可以将器件和线网同时移动。
[0116]
本实施例根据端口信息确定线网长度,然后根据端口数量和线网长度确定线网半径,再根据端口中心点信息和线网半径确定线网范围。本实施例根据端口数量和线网长度确定线网半径,能够在端口数量为多个时,更加精确地得到线网半径,从而能够精确确定线网范围,再获取线网范围内的所有引线,能够精确得到与端口连接的所有引线,再对待移动器件和所有引线同时进行移动。
[0117]
此外,本发明实施例还提出一种存储介质,所述存储介质上存储有器件及线网移动程序,所述器件及线网移动程序被处理器执行时实现如上文所述的器件及线网移动方法的步骤。
[0118]
参照图7,图7为本发明器件及线网移动装置第一实施例的结构框图。
[0119]
如图7所示,本发明实施例提出的器件及线网移动装置包括:
[0120]
信息获取模块701,用于获取预设图形绘制窗口中展示的待移动器件的端口信息;
[0121]
信息确定模块702,用于根据所述端口信息确定所述待移动器件的端口中心点信息;
[0122]
范围确定模块703,用于根据所述端口信息和所述端口中心点信息确定线网范围;
[0123]
器件及线网移动模块704,用于获取所述线网范围内与所述待移动器件的端口连接的所有引线,并对所述待移动器件和所述所有引线进行移动。
[0124]
本实施例本发明通过获取预设图形绘制窗口中展示的待移动器件的端口信息,然后根据端口信息确定待移动器件的端口中心点信息,然后根据端口信息和端口中心点信息确定线网范围,再获取线网范围内与待移动器件的端口连接的所有引线,并对待移动器件和所有引线进行移动。本发明根据端口信息和端口中心点信息确定线网范围,再获取线网范围内的所有引线,能够精确得到与端口连接的所有引线,再对待移动器件和所有引线同时进行移动,相较于现有技术中需要将器件和线网同时选中才能移动,本发明上述方式在选中器件时,器件和线网会同时被选中,从而能够同时移动器件和线网。
[0125]
基于本发明上述器件及线网移动装置第一实施例,提出本发明器件及线网移动装置的第二实施例。
[0126]
在本实施例中,所述信息确定模块702,还用于根据所述端口信息确定所述待移动器件在各个方向上的端口数量;在所述端口数量为一个时,将所述端口信息作为所述待移动器件的端口中心点信息;在所述端口数量为多个时,根据所述端口信息和所述端口数量确定所述待移动器件的端口中心点信息。
[0127]
进一步地,所述信息确定模块702,还用于在所述端口数量为多个时,判断多个端
口是否均匀分布;在所述多个端口均匀分布时,获取所述多个端口的中心位置,并将所述中心位置的位置信息作为所述待移动器件的端口中心点信息;在多个端口未均匀分布时,将每一个端口信息作为所述待移动器件的端口中心点信息。
[0128]
进一步地,所述范围确定模块703,还用于根据所述端口信息确定线网长度;根据所述端口数量和所述线网长度确定线网半径;根据所述端口中心点信息和所述线网半径确定线网范围。
[0129]
进一步地,所述范围确定模块703,还用于根据所述端口信息获取与所述待移动器件的所有端口连接的引线集合;确定所述引线集合中所有引线的引线长度集合,并从所述引线长度集合中选取最长的目标引线长度;根据所述目标引线长度确定线网长度。
[0130]
进一步地,所述范围确定模块703,还用于在多个端口均匀分布时,判断所述端口数量是否为奇数;
[0131]
在所述端口数量为奇数时,通过第一预设公式计算目标端口数量,其中,所述第一预设公式为:式中,n为端口数量,n为目标端口数量;在所述端口数量为偶数时,通过第二预设公式计算所述目标端口数量,其中,所述第二预设公式为:式中,n为端口数量,n为目标端口数量;根据所述目标端口数量和所述线网长度确定线网半径。
[0132]
进一步地,所述器件及线网移动装置还包括:端口获取模块705,所述端口获取模块705,用于将图形绘制窗口中处于被选中状态的器件作为待移动器件;获取所述待移动器件的边界位置信息,根据所述边界位置信息确定所述待移动器件的展示边框;将所述待移动器件与所述展示边框的交点作为所述待移动器件的端口。
[0133]
本发明器件及线网移动装置的其他实施例或具体实现方式可参照上述各方法实施例,此处不再赘述。
[0134]
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
[0135]
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
[0136]
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如只读存储器/随机存取存储器、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
[0137]
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1