CN110750954B - 电路原理图生成方法及生成系统 - Google Patents
电路原理图生成方法及生成系统 Download PDFInfo
- Publication number
- CN110750954B CN110750954B CN201911039478.4A CN201911039478A CN110750954B CN 110750954 B CN110750954 B CN 110750954B CN 201911039478 A CN201911039478 A CN 201911039478A CN 110750954 B CN110750954 B CN 110750954B
- Authority
- CN
- China
- Prior art keywords
- value
- netlist
- circuit schematic
- generating
- devices
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/34—Circuit design for reconfigurable circuits, e.g. field programmable gate arrays [FPGA] or programmable logic devices [PLD]
- G06F30/347—Physical level, e.g. placement or routing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/39—Circuit design at the physical level
- G06F30/392—Floor-planning or layout, e.g. partitioning or placement
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- Architecture (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
Abstract
本发明提供了一种电路原理图生成方法,包括计算网表器件的层次值,以决定网表器件的列,计算网表器件的排序值,并根据连通线或反馈线生成伪器件,只需要针对相邻器件之间的信号连接,简化了连线算法,根据排序值对网表器件和伪器件进行排序生成排序图,根据排序图生成约束图,连线弯折少,正向遍历约束图,计算第一纵向位置的数值,反向遍历约束图,对第一纵向位置的数值进行调整生成第二纵向位置的数值,将信号连接线分配到纵向线轨,计算横向位置的数值,连接信号连接线,以生成电路原理图,器件布局不需要基于网格,图形化显示效果更好。本发明还提供了一种用于实现电路原理图生成方法的电路原理图生成系统。
Description
技术领域
本发明涉及集成电路技术领域,尤其涉及一种电路原理图生成方法及生成系统。
背景技术
电路原理图又称电路图,用图形的方式直观的反映电路中各器件及其电气连接情况,直接体现了电路的结构和工作原理,广泛应用于设计、分析电路中。对于复杂的FPGA集成电路,从逻辑电路线网网表自动生成电路原理图来图形化显示是辅助设计软件不可或缺的提高设计者交互体验的重要工具。
为了增强集成电路设计人员对复杂电路原理图的理解,自动生成的电路图需要规整、对称、可读、易理解,并且尽可能贴近人类普遍的认知习惯,同时为了减少复杂电路的图形化显示反应时间,电路图的自动生成所采用的算法复杂度一般较低。
FPGA集成电路中通常包含BRAM、DSP、IP等比一般逻辑器件大很多的器件,在图形化显示层次化的集成电路设计时,电路中的层次模块的大小相差很大。而现有技术中均采用基于网格的电路图自动生成方法,每个网格区间中放置一个器件,比较适合图形化显示器件大小相差不大的电路,因此并不适合FPGA集成电路或在图形化显示层次化的集成电路设计时使用。
因此,有必要提供一种新型的电路原理图生成方法及生成系统以解决现有技术中存在的上述问题。
发明内容
本发明的目的在于提供一种电路原理图生成方法及生成系统,避免网格的使用,减少连线算法的复杂度以及连线的交叉和弯折。
为实现上述目的,本发明的所述电路原理图生成方法,包括以下步骤:
S1:提供线网网表,根据所述线网网表计算网表器件的层次值,以决定所述网表器件的列;
S2:根据所述线网网表计算所述网表器件的排序值,并根据连通线或反馈线生成与驱动器件相同排序值的伪器件,然后根据排序值对同一列上的所述网表器件和所述伪器件进行排序,以生成排序图;
S3:根据所述排序图生成约束图,然后正向遍历所述约束图,以计算所述网表器件的第一纵向位置的数值;
S4:反向遍历所述约束图,以对所述网表器件的第一纵向位置的数值进行调整并生成第二纵向位置的数值;
S5:将所述信号连接线分配到相应的纵向线轨,然后计算所述网表器件和所述伪器件的横向位置的数值,将所述网表器件或所述伪器件与相应的信号连接线连接,以生成电路原理图。
本发明的有益效果在于:器件布局不需要基于网格,图形化显示效果更好;根据连通线或反馈线生成与驱动器件相同排序值的伪器件,通过伪器件处理连通线和反馈线,只需要针对相邻器件之间的信号连接,简化了连线算法;根据排序值对同一列上的所述网表器件和所述伪器件进行排序,连线交叉少,器件间的信号连接关系更加清晰;采用了约束图,连线弯折少,器件间的信号连接关系更加清晰。
优选地,所述步骤S1包括以下步骤:
S11:对所述网表器件进行初始化,然后根据所述线网网表建立广度优先搜索队列和反馈器件优先队列;
S12:通过所述广度优先搜索队列和所述反馈器件优先队列计算并更新所述网表器件的层次值,直至所述网表器件的层次值无法得到更新。其有益效果在于:建立所述广度优先搜索队列和所述反馈器件优先队列来计算并更新所述网表器件的层次值,算法复杂度低。
进一步优选地,所述步骤S11中,建立所述广度优先搜索队列时,将所述网表器件中的输入管脚器件添加到所述广度优先搜索队列中。其有益效果在于:采用线网网表建立广度优先搜索队列和反馈器件优先队列来计算网表器件的层次值算法简单,计算效率高。
进一步优选地,所述步骤S11中,建立的所述反馈器件优先队列为空。其有益效果在于:简化初始计算的难度。
进一步优选地,所述步骤S11中,所述初始化包括将所述网表器件的层次值设为1。其有益效果在于:将所述网表器件的层次值设为1便于后续的计算,减少算法的复杂度。
进一步优选地,所述步骤S12包括判断所述广度优先搜索队列不为空,则选取所述广度优先搜索队列中排序第一的网表器件作为优先器件;判断所述优先器件的入度大于0,则将所述优先器件添加到所述反馈器件优先队列中;判断所述优先器件的入度等于0且未处理过,则对所述优先器件的入度大于0的扇出器件进行第一处理。其有益效果在于:便于准确计算网表器件的层次值。
进一步优选地,所述第一处理包括更新所述优先器件的扇出器件的层次值;将所述优先器件的扇出器件的入度减1;将所述优先器件的扇出器件添加到所述广度优先搜索队列中排序最后的位置。其有益效果在于:便于不断更新器件的层次值,以得到最后准确的层次值。
进一步优选地,所述扇出器件的层次值为所述优先器件的层次值加1和所述扇出器件更新前的层次值中的最大值。其有益效果在于:可以得到扇出器件准确的层次值。
进一步优选地,所述步骤S12还包括判断所述反馈器件优先队列不为空,则选取所述反馈器件优先队列中排序第一的网表器件作为反馈器件;判断所述反馈器件的入度大于0且位于回路中,则将所述反馈器件的入度设为0,并将所述反馈器件添加到所述广度优先搜索队列中。其有益效果在于:便于重复计算并更新网表器件的层次值,以得到准确的层次值。
进一步优选地,所述反馈器件优先队列中所述网表器件的层次值由小到大排序。其有益效果在于:使得网表器件的层次值排列清晰,简化算法便于进行计算。
优选地,所述电路原理图自左向右依次为第1列至第n列,所述网表器件中的输入管脚器件放置于第1列,所述网表器件中的输出管脚器件放置于第n列,剩余的所述网表器件放置于第2列至第n-1列,n为大于1的自然数。其有益效果在于:便于使电路原理图更加规整和对称。
进一步优选地,所述步骤S2中,根据输入管脚器件的编码对所述输入管脚器件进行排序,然后将所述输入管脚器件当前排序位置的数值乘阈值,以得到所述输入管脚器件的排序值。其有益效果在于:便于得到输入管脚器件准确的排序值。
进一步优选地,所述阈值为100。其有益效果在于:便于计算网表器件的排序值,使得计算更加清晰简单,避免了小数的出现。
进一步优选地,所述步骤S2中,第2列至第n列的所述网表器件的排序值为所述网表器件各自的扇入器件的排序值的平均值。其有益效果在于:便于计算第2列至第n列的网表器件的排序值。
进一步优选地,所述步骤S2中,若器件之间的排序值相同,则按照该器件扇入器件排序位置的数值的平均值进行排序。其有益效果在于:避免不同器件位于同一纵向位置。
进一步优选地,若平均值相同,按照器件在所述线网网表中的编码进行排序。其有益效果在于:避免不同器件位于同一纵向位置。
优选地,所述步骤S2中,所述连通线或所述反馈线每穿过一列则在该列上生成一个伪器件。其有益效果在于:完全取消了连通线和反馈线,有利于优化布局。
进一步优选地,所述伪器件的高度为所述电路原理图中横向线轨的高度。其有益效果在于:避免伪器件占用过多的空间,保证整体电路原理图的规整。
进一步优选地,所述步骤S3中根据所述排序图生成约束图包括:所述排序图每列器件中相邻的两个器件生成一个位置约束;每个所述连通线或每个所述反馈线上相邻的两个器件生成一个位置约束;第m列上的器件分别与第m-1列上该器件最高位置扇入器件和最低位置扇入器件形成位置约束,m为大于1且小于或等于n的自然数。其有益效果在于:建立约束图,减少信号连接线的长度,以减少短折现的数量,以增加电路原理图的可读性。
进一步优选地,所述位置约束为一个有向边。其有益效果在于:便于确定信号的传递方向。
进一步优选地,所述约束图中入度为0的器件的第一纵向位置的数值为0。其有益效果在于:优先确定一类器件的第一纵向位置的数值,便于其他器件第一纵向位置的数值的计算。
进一步优选地,所述约束图中入度大于0的器件的第一纵向位置的数值等于该器件的扇入器件的第一纵向位置的数值加上该器件对应入边的相对位置差的最小值。其有益效果在于:初步减少了短弯折线的出现。
优选地,所述步骤S4中,所述约束图中出边数为0的器件的第二纵向位置的数值等于第一纵向位置的数值。其有益效果在于:便于对第二纵向位置的数值进行调整,减少算法计算的复杂度。
进一步优选地,所述步骤S4中,所述约束图中出边数大于0的器件的第二纵向位置的数值等于该器件的扇出器件的第二纵向位置的数值减该器件对应出边的相对位置差的最大值。其有益效果在于:进一步减少了短弯折线的出现。
优选地,所述信号连接线包括第一类信号连接线、第二类信号连接线和第三类信号连接线,所述第一类信号连接线为输出引脚和输入引脚均在甬道一侧的信号连接线,所述第二类信号连接线为输出引脚和输入引脚位于甬道两侧的信号连接线,所述第三类信号连接线为输出引脚和输入引脚均在甬道另一侧的信号连接线。其有益效果在于:减少了信号连接线的交叉。
进一步优选地,所述步骤S5包括:将所述第一类信号连接线通过第二处理分配到相应的纵向线轨,然后将所述第二类信号连接线通过所述第二处理分配到相应的纵向线轨,最后将所述第三类信号连接线通过所述第二处理分配到相应的纵向线轨,以将所述信号连接线分配到相应的纵向线轨。其有益效果在于:只需要处理相邻两列网表器件之间的信号连接,无需考虑连通线和反馈线,布线更加更简单。
进一步优选地,所述第二处理包括:将所述第一类信号连接线、所述第二类信号连接线或所述第三类信号连接线按照引脚的最小纵向坐标从小到大进行排序;按照所述信号连接线的排序顺序依次分配到最左边的纵向线轨,若两条所述信号连接线重叠,则选择下一条纵向线轨,直至所述信号连接线分配完毕。其有益效果在于:避免信号连接线出现重叠,且能避免纵向线轨的浪费,提高了整体布局的紧凑性。
本发明还提供了一种电路原理图生成系统,所述电路原理图生成系统包括层次值计算模块、排序值计算模块、伪器件生成模块、排序图生成模块、约束图生成模块、第一计算模块、第二计算模块、纵向线轨分配模块、第三计算模块和信号线连接模块,所述层次值计算模块用于根据线网网表计算网表器件的层次值,以决定所述网表器件的列;所述排序值计算模块用于根据线网网表计算所述网表器件的排序值;所述伪器件生成模块用于根据连通线或反馈线生成与驱动器件相同排序值的伪器件;所述排序图生成模块用于根据排序值对同一列上的所述网表器件和所述伪器件进行排序,以生成排序图;所述约束图生成模块用于根据排序图生成约束图;所述第一计算模块用于正向遍历约束图,以计算所述网表器件的第一纵向位置的数值;所述第二计算模块用于反向遍历约束图,以对所述网表器件的第一纵向位置的数值进行调整并生成第二纵向位置的数值;所述纵向线轨分配模块用于将所述信号连接线分配到相应的纵向线轨;所述第三计算模块用于计算所述网表器件和所述伪器件的横向位置的数值;所述信号线连接模块用于将所述网表器件或所述伪器件与相应的信号连接线连接,以生成电路原理图。
本发明所述电路原理图生成系统的有益效果在于:器件布局不需要基于网格,图形化显示效果更好;所述伪器件生成模块根据连通线或反馈线生成与驱动器件相同排序值的伪器件,通过伪器件处理连通线和反馈线,只需要针对相邻器件之间的信号连接,简化了连线算法;所述排序图生成模块根据排序值对同一列上的所述网表器件和所述伪器件进行排序,连线交叉少,器件间的信号连接关系更加清晰;所述排序图生成模块生成约束图,连线弯折少,器件间的信号连接关系更加清晰。
附图说明
图1为本发明电路原理图生成方法的流程图;
图2为本发明电路原理图生成系统的结构框图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。除非另外定义,此处使用的技术术语或者科学术语应当为本发明所属领域内具有一般技能的人士所理解的通常意义。本文中使用的“包括”等类似的词语意指出现该词前面的元件或者物件涵盖出现在该词后面列举的元件或者物件及其等同,而不排除其他元件或者物件。
针对现有技术存在的问题,本发明的实施例提供了一种电路原理图生成方法,参照图1,所述电路原理图生成方法包括以下步骤:
S1:提供线网网表,根据所述线网网表计算网表器件的层次值,以决定所述网表器件的列;
S2:根据所述线网网表计算所述网表器件的排序值,并根据连通线或反馈线生成与驱动器件相同排序值的伪器件,然后根据排序值对同一列上的所述网表器件和所述伪器件进行排序,以生成排序图;
S3:根据所述排序图生成约束图,然后正向遍历所述约束图,以计算所述网表器件的第一纵向位置的数值;
S4:反向遍历所述约束图,以对所述网表器件的第一纵向位置的数值进行调整并生成第二纵向位置的数值;
S5:将信号连接线分配到相应的纵向线轨,然后计算所述网表器件和所述伪器件的横向位置的数值,将所述网表器件或所述伪器件与相应的信号连接线连接,以生成电路原理图。
本发明的一些实施例中,所述层次值相同的网表器件为一列。
本发明的一些实施例中,所述步骤S1包括以下步骤:
S11:对所述网表器件进行初始化,以将所述网表器件的层次值设为1,然后根据线网网表建立广度优先搜索队列和反馈器件优先队列,其中将所述网表器件中的输入管脚器件添加到所述广度优先搜索队列中,且所述反馈器件优先队列为空;
S12:通过所述广度优先搜索队列和所述反馈器件优先队列计算并更新所述网表器件的层次值,直至所述网表器件的层次值无法得到更新。
本发明的一些实施例中,所述步骤S12包括步骤a,所述步骤a包括判断所述广度优先搜索队列不为空,则选取所述广度优先搜索队列中排序第一的网表器件作为优先器件;判断所述优先器件的入度大于0,则将所述优先器件添加到所述反馈器件优先队列中;判断所述优先器件的入度等于0且未处理过,则对所述优先器件的入度大于0的扇出器件进行第一处理。
本发明的一些实施例中,所述步骤a还包括判断所述优先器件的入度等于0且处理过,则按所述广度优先搜索队列中的排序选取下一个网表器件作为优先器件。
本发明的一些实施例中,重复执行所述步骤a,直至所述广度优先搜索队列中所述网表器件的入度均为0且被处理过。
本发明的一些实施例中,所述第一处理包括更新所述优先器件的扇出器件的层次值;将所述优先器件的扇出器件的入度减1;将所述优先器件的扇出器件添加到所述广度优先搜索队列中排序最后的位置。
本发明的一些实施例中,所述扇出器件的层次值为优先器件的层次值加1和所述扇出器件更新前的层次值中的最大值。
本发明的一些实施例中,所述步骤S12还包括步骤b,所述步骤b包括判断所述反馈器件优先队列不为空,则选取所述反馈器件优先队列中排序第一的网表器件作为反馈器件;判断所述反馈器件的入度大于0且位于回路中,则将所述反馈器件的入度设为0,并将所述反馈器件添加到所述广度优先搜索队列中,然后执行所述步骤a。
本发明的一些实施例中,所述步骤b还包括判断所述反馈器件的入度等于0或所述反馈器件位于回路中,则执行所述步骤a。
本发明的一些实施例中,判断所述反馈器件是否位于回路中时,忽略当前入度为0的所述网表器件,并保存不属于回路的所述网表器件的信息,以便于下次检查该网表器件是否位于回路中时直接返回否定结果。
本发明的一些实施例中,所述所述反馈器件优先队列中所述网表器件的层次值由小到大排序。
本发明的一些实施例中,所述电路原理图自左向右依次为第1列至第n列,所述网表器件中的输入管脚器件放置于第1列,所述网表器件中的输出管脚器件放置于第n列,剩余的所述网表器件放置于第2列至第n-1列,n为大于1的自然数。
本发明的一些实施例中,所述步骤S2中,根据所述输入管脚器件的编码对所述输入管脚器件进行排序,然后将所述输入管脚器件当前排序位置的数值乘阈值,以得到所述输入管脚器件的排序值。
本发明的一些实施例中,所述阈值为100,以便于后续所述网表器件的排序值的计算,避免小数的出现,简化算法。
本发明的一些实施例中,所述步骤S2中,第2列至第n列的所述网表器件的排序值为所述网表器件各自的扇入器件的排序值的平均值。
本发明的一些实施例中,所述步骤S2中,若器件之间的排序值相同,则按照该器件的扇入器件排序位置的数值的平均值进行排序,所述器件之间包括所述网表器件和所述伪器件之间、两个所述网表器件之间和两个所述伪器件之间。
本发明的一些实施例中,若平均值相同,按照器件在所述线网网表中的编码进行排序,所述器件包括所述网表器件和所述伪器件。
本发明的一些实施例中,所述步骤S2中,所述连通线或所述反馈线每穿过一列则在该列上生成一个所述伪器件,所述所述伪器件的高度为电路原理图中横向线轨的高度。
本发明的一些实施例中,所述步骤S3中根据排序图生成约束图包括:排序图每列器件中相邻的两个器件生成一个位置约束,第一相对位置差为前一个器件的高度;每个所述连通线或每个所述反馈线上相邻的两个器件生成一个位置约束,其中同一所述连通线上伪器件的位置高度高于或等于前一列伪器件或驱动器件的位置高度,同一所述反馈线上伪器件的高度高于或等于后一列的伪器件或驱动器件的位置高度,第二相对位置差为0;第m列上的器件分别与第m-1列上该器件最高位置扇入器件和最低位置扇入器件形成位置约束,其中最低位置扇入器件的位置高度低于或等于该器件的位置高度,最高位置扇入器件的位置高度高于或等于该器件的位置高度,第三相对位置差为信号连接线连接的输出引脚和输入引脚在器件上的相对位置高度差,m为大于1且小于或等于n的自然数。
本发明的一些实施例中,所述驱动器件为发送信息的器件。
本发明的一些实施例中,所述最高位置扇入器件和所述最低位置扇入器件均为扇入器件和伪器件中的一种。
本发明的一些实施例中,所述位置约束为一个有向边,所述有向边具有方向,每列器件相邻的两个器件之间有向边的方向由在前器件指向在后器件,连通线或反馈线上相邻的两个器件之间有向边的方向和信号的传递方向相同,第m列上的器件分别与第m-1列上该器件最高位置扇入器件之间和最低位置扇入器件之间的有向边和信号的传递方向相同。
本发明的一些实施例中,所述约束图中入度为0的器件的第一纵向位置的数值为0。
本发明的一些实施例中,所述约束图中入度大于0的器件的第一纵向位置的数值等于该器件的扇入器件的第一纵向位置的数值加上该器件对应入边的相对位置差得到的结果中的最小值,其中相对位置差包括第一相对位置差、第二相对位置差和第三相对位置差中的至少一种。
本发明的一些实施例中,所述步骤S4中,所述约束图中出边数为0的器件的第二纵向位置的数值等于第一纵向位置的数值。
本发明的一些实施例中,所述步骤S4中,所述约束图中出边数大于0的器件的第二纵向位置的数值等于该器件的扇出器件的第二纵向位置的数值减该器件对应出边的相对位置差得到的结果中的最大值,其中相对位置差包括第一相对位置差、第二相对位置差和第三相对位置差中的至少一种。
本发明的一些实施例中,所述信号连接线包括第一类信号连接线、第二类信号连接线和第三类信号连接线。第一类信号连接线为输出引脚和输入引脚均在甬道一侧的信号连接线,具体地,为所述甬道的左侧;第二类信号连接线为输出引脚和输入引脚位于甬道两侧的信号连接线;第三类信号连接线为输出引脚和输入引脚均在甬道另一侧的信号连接线,具体地,为所述甬道的右侧。其中,甬道包括至少包括一条纵向线轨。
本发明的一些实施例中,所述步骤S5包括:将所述第一类信号连接线通过第二处理分配到相应的纵向线轨,然后将所述第二类信号连接线通过所述第二处理分配到相应的纵向线轨,最后将所述第三类信号连接线通过所述第二处理分配到相应的纵向线轨,以将所述信号连接线分配到相应的纵向线轨。
本发明的一些实施例中,所述第二处理包括:将所述第一类信号连接线、所述第二类信号连接线或所述第三类信号连接线按照引脚的最小纵向坐标从小到大进行排序;按照所述信号连接线的排序顺序依次分配到最左边的纵向线轨,若两条信号连接线重叠,则选择下一条纵向线轨,直至所述信号连接线分配完毕。其中,引脚包括输出引脚和输入引脚。
本发明的一些实施例中,根据所述网表器件和所述伪器件的第二纵向位置的数值计算信号连接线的最大纵向坐标和最小纵向坐标。
本发明的一些实施例中,通过所述信号连接线的最大纵向坐标和最小纵向坐标判断同一纵向线轨上的两条信号连接线是否重叠,若第一条信号连接线的最大纵向坐标小于或等于第二条信号连接线的最小纵向坐标,则第一条信号连接线和第二条信号连接线重叠。
本发明的一些实施例中,所述网表器件和所述伪器件的宽度相同。
本发明的一些实施例中,器件宽度乘该列器件的列数以得到第一数值,第一数值加该列器件前所有甬道的宽度以得到一列器件的横向位置的数值。
本发明的一些实施例中,所述信号连接线包括依次连接的第一线段、第二线段和第三线段,所述第二线段位于纵向线轨内,所述第一线段与信号输出所述网表器件或所述伪器件连接,所述第三线段与信号接收的所述网表器件或所述伪器件连接。
本发明的一些实施例中,所述网表器件的宽度、所述纵向线轨的宽度和所述横向线轨的高度均设有阈值,且第一纵向位置的数值和第二纵向位置的数值代表距离。
本发明的一些实施例中,所述连通线为不在相邻列的所述网表器件之间的连接线,且信号自左向右传递。
本发明的一些实施例中,所述反馈线为不在相邻列的所述网表器件之间的连接线,且信号自左向右传递。
本发明的一些实施例中,所述信号连接线为相邻列的所述网表器件之间的连接线。
图2为本发明一些实施例中电路原理图生成系统的结构框图。参照图2,所述电路原理图生成系统10包括层次值计算模块101、排序值计算模块102、伪器件生成模块103、排序图生成模块104、约束图生成模块105、第一计算模块106、第二计算模块107、纵向线轨分配模块108、第三计算模块109和信号线连接模块110。所述层次值计算模块101用于根据线网网表计算网表器件的层次值,以决定所述网表器件的列;所述排序值计算模块102用于根据线网网表计算所述网表器件的排序值;所述伪器件生成模块103用于根据连通线或反馈线生成与驱动器件相同排序值的伪器件;所述排序图生成模块104用于根据排序值对同一列上的所述网表器件和所述伪器件进行排序,以生成排序图;所述约束图生成模块105用于根据排序图生成约束图;所述第一计算模块106用于正向遍历约束图,以计算所述网表器件的第一纵向位置的数值;所述第二计算模块107用于反向遍历约束图,以对所述网表器件的第一纵向位置的数值进行调整并生成第二纵向位置的数值;所述纵向线轨分配模块108用于将所述信号连接线分配到相应的纵向线轨;所述第三计算模块109用于计算所述网表器件和所述伪器件的横向位置的数值;所述信号线连接模块110用于将所述网表器件或所述伪器件与相应的信号连接线连接,以生成电路原理图。
虽然在上文中详细说明了本发明的实施方式,但是对于本领域的技术人员来说显而易见的是,能够对这些实施方式进行各种修改和变化。但是,应理解,这种修改和变化都属于权利要求书中所述的本发明的范围和精神之内。而且,在此说明的本发明可有其它的实施方式,并且可通过多种方式实施或实现。
Claims (28)
1.一种电路原理图生成方法,其特征在于,包括以下步骤:
S1:提供线网网表,根据所述线网网表计算网表器件的层次值,以决定所述网表器件的列;
S2:根据所述线网网表计算所述网表器件的排序值,并根据连通线或反馈线生成与驱动器件相同排序值的伪器件,然后根据排序值对同一列上的所述网表器件和所述伪器件进行排序,以生成排序图;
S3:根据所述排序图生成约束图,然后正向遍历所述约束图,以计算所述网表器件的第一纵向位置的数值;
S4:反向遍历所述约束图,以对所述网表器件的第一纵向位置的数值进行调整并生成第二纵向位置的数值;
S5:将信号连接线分配到相应的纵向线轨,然后计算所述网表器件和所述伪器件的横向位置的数值,将所述网表器件或所述伪器件与相应的信号连接线连接,以生成电路原理图。
2.根据权利要求1所述的电路原理图生成方法,其特征在于,所述步骤S1包括以下步骤:
S11:对所述网表器件进行初始化,然后根据所述线网网表建立广度优先搜索队列和反馈器件优先队列;
S12:通过所述广度优先搜索队列和所述反馈器件优先队列计算并更新所述网表器件的层次值,直至所述网表器件的层次值无法得到更新。
3.根据权利要求2所述的电路原理图生成方法,其特征在于,所述步骤S11中,建立所述广度优先搜索队列时,将所述网表器件中的输入管脚器件添加到所述广度优先搜索队列中。
4.根据权利要求2所述的电路原理图生成方法,其特征在于,所述步骤S11中,建立的所述反馈器件优先队列为空。
5.根据权利要求2所述的电路原理图生成方法,其特征在于,所述步骤S11中,所述初始化包括将所述网表器件的层次值设为1。
6.根据权利要求2所述的电路原理图生成方法,其特征在于,所述步骤S12包括判断所述广度优先搜索队列不为空,则选取所述广度优先搜索队列中排序第一的网表器件作为优先器件;判断所述优先器件的入度大于0,则将所述优先器件添加到所述反馈器件优先队列中;判断所述优先器件的入度等于0且未处理过,则对所述优先器件的入度大于0的扇出器件进行第一处理。
7.根据权利要求6所述的电路原理图生成方法,其特征在于,所述第一处理包括更新所述优先器件的扇出器件的层次值;将所述优先器件的扇出器件的入度减1;将所述优先器件的扇出器件添加到所述广度优先搜索队列中排序最后的位置。
8.根据权利要求7所述的电路原理图生成方法,其特征在于,所述扇出器件的层次值为所述优先器件的层次值加1和所述扇出器件更新前的层次值中的最大值。
9.根据权利要求6所述的电路原理图生成方法,其特征在于,所述步骤S12还包括判断所述反馈器件优先队列不为空,则选取所述反馈器件优先队列中排序第一的网表器件作为反馈器件;判断所述反馈器件的入度大于0且位于回路中,则将所述反馈器件的入度设为0,并将所述反馈器件添加到所述广度优先搜索队列中。
10.根据权利要求2所述的电路原理图生成方法,其特征在于,所述反馈器件优先队列中所述网表器件的层次值由小到大排序。
11.根据权利要求1所述的电路原理图生成方法,其特征在于,所述电路原理图自左向右依次为第1列至第n列,所述网表器件中的输入管脚器件放置于第1列,所述网表器件中的输出管脚器件放置于第n列,剩余的所述网表器件放置于第2列至第n-1列,n为大于1的自然数。
12.根据权利要求11所述的电路原理图生成方法,其特征在于,所述步骤S2中,根据输入管脚器件的编码对所述输入管脚器件进行排序,然后将所述输入管脚器件当前排序位置的数值乘阈值,以得到所述输入管脚器件的排序值。
13.根据权利要求12所述的电路原理图生成方法,其特征在于,所述阈值为100。
14.根据权利要求12所述的电路原理图生成方法,其特征在于,所述步骤S2中,第2列至第n列的网表器件的排序值为网表器件各自的扇入器件的排序值的平均值。
15.根据权利要求2所述的电路原理图生成方法,其特征在于,所述步骤S2中,若器件之间的排序值相同,则按照该器件扇入器件的排序位置数值的平均值进行排序。
16.根据权利要求15所述的电路原理图生成方法,其特征在于,若平均值相同,按照器件在线网网表中的编码进行排序。
17.根据权利要求1所述的电路原理图生成方法,其特征在于,所述步骤S2中,所述连通线或所述反馈线每穿过一列则在该列上生成一个所述伪器件。
18.根据权利要求17所述的电路原理图生成方法,其特征在于,所述伪器件的高度为所述电路原理图中横向线轨的高度。
19.根据权利要求11所述的电路原理图生成方法,其特征在于,所述步骤S3中根据所述排序图生成约束图包括:所述排序图每列器件中相邻的两个器件生成一个位置约束;每个所述连通线或每个所述反馈线上相邻的两个器件生成一个位置约束;第m列上的器件分别与第m-1列上该器件最高位置扇入器件和最低位置扇入器件形成位置约束,m为大于1且小于或等于n的自然数。
20.根据权利要求19所述的电路原理图生成方法,其特征在于,所述位置约束为一个有向边。
21.根据权利要求19所述的电路原理图生成方法,其特征在于,所述约束图中入度为0的器件的第一纵向位置的数值为0。
22.根据权利要求19所述的电路原理图生成方法,其特征在于,所述约束图中入度大于0的器件的第一纵向位置的数值等于该器件的扇入器件的第一纵向位置的数值加上该器件对应入边的相对位置差的最小值。
23.根据权利要求1所述的电路原理图生成方法,其特征在于,所述步骤S4中,所述约束图中出边数为0的器件的第二纵向位置的数值等于第一纵向位置的数值。
24.根据权利要求23所述的电路原理图生成方法,其特征在于,所述步骤S4中,所述约束图中出边数大于0的器件的第二纵向位置的数值等于该器件的扇出器件的第二纵向位置的数值减该器件对应出边的相对位置差的最大值。
25.根据权利要求1所述的电路原理图生成方法,其特征在于,所述信号连接线包括第一类信号连接线、第二类信号连接线和第三类信号连接线,所述第一类信号连接线为输出引脚和输入引脚均在甬道一侧的信号连接线,所述第二类信号连接线为输出引脚和输入引脚位于甬道两侧的信号连接线,所述第三类信号连接线为输出引脚和输入引脚均在甬道另一侧的信号连接线。
26.根据权利要求25所述的电路原理图生成方法,其特征在于,所述步骤S5包括:将所述第一类信号连接线通过第二处理分配到相应的纵向线轨,然后将所述第二类信号连接线通过所述第二处理分配到相应的纵向线轨,最后将所述第三类信号连接线通过所述第二处理分配到相应的纵向线轨,以将所述信号连接线分配到相应的纵向线轨。
27.根据权利要求26所述的电路原理图生成方法,其特征在于,所述第二处理包括:将所述第一类信号连接线、所述第二类信号连接线或所述第三类信号连接线按照引脚的最小纵向坐标从小到大进行排序;按照信号连接线的排序顺序依次分配到最左边的纵向线轨,若两条信号连接线重叠,则选择下一条纵向线轨,直至所述信号连接线分配完毕。
28.一种电路原理图生成系统,其特征在于,用于实现权利要求1-27中任意一项所述的电路原理图生成方法,所述电路原理图生成系统包括层次值计算模块、排序值计算模块、伪器件生成模块、排序图生成模块、约束图生成模块、第一计算模块、第二计算模块、纵向线轨分配模块、第三计算模块和信号线连接模块,
所述层次值计算模块用于根据线网网表计算网表器件的层次值,以决定所述网表器件的列;
所述排序值计算模块用于根据线网网表计算所述网表器件的排序值;
所述伪器件生成模块用于根据连通线或反馈线生成与驱动器件相同排序值的伪器件;
所述排序图生成模块用于根据排序值对同一列上的所述网表器件和所述伪器件进行排序,以生成排序图;
所述约束图生成模块用于根据排序图生成约束图;
所述第一计算模块用于正向遍历约束图,以计算所述网表器件的第一纵向位置的数值;
所述第二计算模块用于反向遍历约束图,以对所述网表器件的第一纵向位置的数值进行调整并生成第二纵向位置的数值;
所述纵向线轨分配模块用于将所述信号连接线分配到相应的纵向线轨;
所述第三计算模块用于计算所述网表器件和所述伪器件的横向位置的数值;
所述信号线连接模块用于将所述网表器件或所述伪器件与相应的信号连接线连接,以生成电路原理图。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911039478.4A CN110750954B (zh) | 2019-10-29 | 2019-10-29 | 电路原理图生成方法及生成系统 |
PCT/CN2020/123661 WO2021083076A1 (zh) | 2019-10-29 | 2020-10-26 | 电路原理图生成方法及生成系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911039478.4A CN110750954B (zh) | 2019-10-29 | 2019-10-29 | 电路原理图生成方法及生成系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110750954A CN110750954A (zh) | 2020-02-04 |
CN110750954B true CN110750954B (zh) | 2020-12-25 |
Family
ID=69280924
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911039478.4A Active CN110750954B (zh) | 2019-10-29 | 2019-10-29 | 电路原理图生成方法及生成系统 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN110750954B (zh) |
WO (1) | WO2021083076A1 (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110750954B (zh) * | 2019-10-29 | 2020-12-25 | 上海安路信息科技有限公司 | 电路原理图生成方法及生成系统 |
CN112416761B (zh) * | 2020-11-11 | 2023-07-07 | 北京京航计算通讯研究所 | 一种基于广度优先搜索的测试用例生成方法及装置 |
CN116108778B (zh) * | 2023-01-12 | 2024-03-01 | 上海合见工业软件集团有限公司 | 用于数字电路原理图的元器件分层方法、设备和介质 |
CN116011383B (zh) * | 2023-01-28 | 2023-09-01 | 上海合见工业软件集团有限公司 | 避免信号线覆盖的电路原理图路由规划系统 |
CN116306457B (zh) * | 2023-01-28 | 2024-02-20 | 上海合见工业软件集团有限公司 | 基于垂直交叉点约束的电路原理图路由规划系统 |
CN116011389B (zh) * | 2023-01-28 | 2023-06-06 | 上海合见工业软件集团有限公司 | 基于空间约束的电路原理图路由规划系统 |
CN116127902B (zh) * | 2023-01-28 | 2024-02-09 | 上海合见工业软件集团有限公司 | 基于二分图匹配的电路示意图垂直轨道分配系统 |
CN117436399B (zh) * | 2023-12-22 | 2024-03-26 | 深圳鸿芯微纳技术有限公司 | 电路原理图器件的自动布局方法、装置和电子设备 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3137178B2 (ja) * | 1996-08-14 | 2001-02-19 | 日本電気株式会社 | 集積回路の配線設計方法および装置 |
US6536018B1 (en) * | 2000-06-05 | 2003-03-18 | The University Of Chicago | Reverse engineering of integrated circuits |
CN102024066B (zh) * | 2009-09-09 | 2013-02-06 | 中国科学院微电子研究所 | 从模拟电路网表自动生成模拟电路原理图的方法 |
JP5679542B2 (ja) * | 2010-03-05 | 2015-03-04 | 株式会社日立ハイテクサイエンス | 品質優先回路抽出装置、品質優先回路抽出方法、品質優先回路抽出プログラム、マスク作成システム、及びレイアウト制約作成システム |
CN102567557B (zh) * | 2010-12-20 | 2014-07-09 | 国际商业机器公司 | 用于构建用于集成电路设计的时钟树的方法和装置 |
CN102799698B (zh) * | 2011-05-26 | 2014-07-23 | 国际商业机器公司 | 一种用于专用集成电路的时钟树规划的方法和系统 |
CN104866678B (zh) * | 2015-06-01 | 2017-12-29 | 复旦大学 | Fpga时序约束布局方法 |
CN109800534B (zh) * | 2019-02-14 | 2020-03-10 | 广东高云半导体科技股份有限公司 | Fpga设计电路图生成方法、装置、计算机设备及存储介质 |
CN110750954B (zh) * | 2019-10-29 | 2020-12-25 | 上海安路信息科技有限公司 | 电路原理图生成方法及生成系统 |
-
2019
- 2019-10-29 CN CN201911039478.4A patent/CN110750954B/zh active Active
-
2020
- 2020-10-26 WO PCT/CN2020/123661 patent/WO2021083076A1/zh active Application Filing
Also Published As
Publication number | Publication date |
---|---|
CN110750954A (zh) | 2020-02-04 |
WO2021083076A1 (zh) | 2021-05-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110750954B (zh) | 电路原理图生成方法及生成系统 | |
CN109284578B (zh) | 逻辑电路布局布线方法、图形化显示方法及其系统 | |
CN113779924B (zh) | 超导集成电路的布线优化方法和装置、存储介质和终端 | |
CN109472362B (zh) | 一种基于可变任务窗的agv动态调度方法及装置 | |
US20200193314A1 (en) | Causal Relationship Display System and Method | |
JP7175533B2 (ja) | 離散最適化によるデジタル集積回路のレイアウト方法および端末装置 | |
CN104063559A (zh) | 大规模集成电路分布计算的布局合法化方法及其系统 | |
CN112332306A (zh) | 一种电缆自动敷设方法及存储介质 | |
JP2021532605A (ja) | 二進コードによるデジタル集積回路の配線方法および端末装置 | |
CN118159975A (zh) | 用于设计布局的方法、装置、设备、介质以及程序产品 | |
US6502222B1 (en) | Method of clock buffer partitioning to minimize clock skew for an integrated circuit design | |
US7984415B1 (en) | Merging of equivalent logic blocks in a circuit design | |
CN111753484B (zh) | 一种基于电路性能的多裸片结构fpga的布局方法 | |
JP4376670B2 (ja) | スタイナー木処理装置、スタイナー木処理方法及びスタイナー木処理プログラム | |
CN116011383B (zh) | 避免信号线覆盖的电路原理图路由规划系统 | |
CN113627120B (zh) | 超导集成电路布局优化方法和装置、存储介质和终端 | |
Daboul et al. | Global interconnect optimization | |
Sham et al. | Congestion estimation with buffer planning in floorplan design | |
CN114398776A (zh) | 光伏电站方阵划分方法、装置及设备 | |
US20150095871A1 (en) | Circuit design support method, computer product, circuit design support apparatus, and semiconductor integrated circuit | |
US6493660B2 (en) | Delay time calculating method for use in hierarchical design | |
CN1656486A (zh) | 集成电路设计方法 | |
JPH06268065A (ja) | 配線ディレイ制御による配線設計装置及びその方法 | |
CN111884566B (zh) | 一种光伏板集群布线方法 | |
US6367054B1 (en) | Method of generating finite state data for designing a cascade decomposed logic circuit |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CP03 | Change of name, title or address | ||
CP03 | Change of name, title or address |
Address after: 200434 Room 202, building 5, No. 500, Memorial Road, Hongkou District, Shanghai Patentee after: Shanghai Anlu Information Technology Co.,Ltd. Address before: Room 501-504, building 9, Pudong Software Park, 498 GuoShouJing Road, Minhang District, Shanghai, 201203 Patentee before: SHANGHAI ANLOGIC INFORMATION TECHNOLOGY Co.,Ltd. |