基于准确的早期可布线性估计的动态FPGA逻辑容量制造技术

技术编号:34383726 阅读:49 留言:0更新日期:2022-08-03 21:03
本公开涉及基于准确的早期可布线性估计的动态FPGA逻辑容量。一种计算机辅助设计(CAD)系统,该CAD系统接收待在现场可编程门阵列(FPGA)中实施的电路的设计的高级编码。该系统对设计执行综合,以产生综合设计。该系统针对综合设计生成可布线性估计和逻辑使用估计。该系统基于特定FPGA的可布线性估计、逻辑使用估计和可用资源来确定综合设计是否在特定FPGA上可实施。FPGA上可实施。FPGA上可实施。

【技术实现步骤摘要】
基于准确的早期可布线性估计的动态FPGA逻辑容量
[0001]相关申请的交叉引用
[0002]本申请要求于2021年2月2日提交的申请号为63/144,877、标题为“基于准确的早期可布线性估计的动态FPGA逻辑容量(DYNAMIC FPGA LOGIC CAPACITY BASED ON ACCURATE EARLY ROUTABILITY ESTIMATION)”的美国临时专利申请的权益,并且通过引用全部并入。


[0003]本公开涉及计算机辅助设计(CAD)领域。

技术介绍

[0004]当使用大多数现场可编程门阵列(FPGA)时,设计者被呈现该FPGA的逻辑容量。FPGA包含一些固定数量的逻辑块资源,并且设计者被呈现该数量。实际上,FPGA的大部分面积致力于可编程布线资源的多路复用器(多路器)以将逻辑块相互彼此连接,而不是致力于逻辑块本身。FPGA架构师必须预先决定添加多少布线灵活性(多路复用)。如果架构师添加过少的布线灵活性,那么FPGA用户可能无法使用他们被承诺的所有逻辑块。如果架构师添加过多的布线灵活性,那么FPGA面积会不必要地增长。

技术实现思路

[0005]本文提出了一种计算机辅助设计(CAD)系统、CAD工具以及用于待在现场可编程门阵列(FPGA)中实施的电路的计算机辅助设计的方法的各个实施例。实施例涉及在FPGA上实施设计的上下文中的电路设计的综合和分析。
[0006]一个实施例是由CAD系统执行的方法。该方法包括接收待在现场可编程门阵列(FPGA)中实施的电路的设计的高级编码。该方法包括对设计执行综合,以生成综合设计。该方法包括针对综合设计生成可布线性估计和逻辑使用估计。该方法包括基于特定FPGA的可布线性估计、逻辑使用估计和可用资源来确定综合设计是否在特定FPGA上可实施。
[0007]一个实施例是有形的非暂时性计算机可读介质,在其上具有指令,该指令在被处理器执行时使处理器执行一种方法。体现在计算机可读介质中的方法包括接收针对待在现场可编程门阵列(FPGA)中实施的电路的设计的高级编码。该方法包括对设计执行综合,以生成综合设计。该方法包括针对综合设计生成可布线性估计和逻辑使用估计。该方法包括基于特定FPGA的可布线性估计、逻辑使用估计和可用资源来确定综合设计是否在特定FPGA上可实施并向用户指示。
[0008]一个实施例是计算机辅助设计(CAD)系统。CAD系统包括存储器,该存储器用于接收针对待在现场可编程门阵列(FPGA)中实施的电路的设计的高级编码。CAD系统包括处理器。处理器用于对设计执行综合,以生成综合设计。处理器用于针对综合设计生成可布线性估计和逻辑使用估计。处理器用于基于特定FPGA的可布线性估计、逻辑使用估计和可用资源来确定综合设计是否在特定FPGA上可实施。
附图说明
[0009]通过下面给出的详细描述以及根据本公开的各个实施例的附图可以更充分地理解本文中描述的实施例,然而,这些附图不应被视为将本公开限制为特定的实施例,而仅用于解释和理解。
[0010]图1示出早期可布线性估计如何适配于整个FPGA CAD流程。
[0011]图2示出实施例中的CAD系统针对电路的设计生成可布线性估计、逻辑使用估计和可实施性确定。
[0012]图3示出实施例中的FPGA的可用资源的实施例。
[0013]图4示出实施例中的CAD工具的各个方面。
[0014]图5示出实施例中的作为CAD工具的特色能力的具有递归的二分法。
[0015]图6是实施例中的由CAD系统实践的方法的流程图。
具体实施方式
[0016]在以下描述中,阐述了许多细节以提供对本专利技术的更彻底的解释。然而,对于本领域的技术人员来说将显而易见的是,可以在没有这些具体细节的情况下实践本公开。在其他情况下,以框图形式而不是详细地示出已知的结构和装置,以避免混淆本实施例。
[0017]本文中描述的CAD工具和CAD系统呈现了关于各种技术问题的技术方案。所解决的一个问题是如何减少尝试在FPGA中实施针对电路的设计所浪费的计算时间和资源,在布局和布线期间或结束时(即在逻辑综合和物理综合之后)却发现设计不适配于用于设计实施的特定FPGA的可用资源。本文中描述的技术方案通过更早更及时地提供关于设计实施的并且相对适配于FPGA的可用资源的信息来减少此种所浪费的计算时间和资源,从而提高CAD工具和CAD系统的计算效率。所解决的一个问题是如何更有效地使用FPGA的可用资源。本文中描述的技术方案将关于相对于设计实施的FPGA的可用资源的使用的信息提供到系统和用户,从而支持更有效地使用FPGA的可用资源。
[0018]一个实施例是向FPGA用户提供逻辑容量的方法,该逻辑容量可以基于在综合之后确定的设计属性而动态改变。该方法包括向用户呈现FPGA逻辑容量范围,并且基于FPGA逻辑容量的网表的属性来生成与综合的用户设计相关的早期布线估计,其中布线估计使用户可访问不同量的逻辑。下面描述了本实施例以及进一步方面和实施例,具有可以在各种进一步实施例中的各种组合的各种特征和工具能力,包括计算机辅助设计(CAD)系统、由CAD系统实践的方法以及具有用于处理器实践方法的指令的有形的计算机可读介质。
[0019]本文中描述的实施例包括一种技术,该技术允许FPGA架构师将较少的面积致力于FPGA布线,同时仍然允许FPGA用户使用他们已经被承诺的所有逻辑容量。在一个实施例中,最初向用户呈现FPGA的逻辑容量范围。在一个实施例中,这表示可以期望适配到FPGA上的逻辑块的最小数量和最大数量。向用户提供的实际逻辑容量基于综合设计来确定。
[0020]在一个实施例中,基于引脚密度、Rent参数和逻辑密度的方程(例如,量化Rent规则的方程)被用来计算多少逻辑块可以适配到FPGA上。对于易布线设计,将向用户呈现范围内的逻辑块的最大数量。对于难布线设计,将向用户呈现范围内的逻辑块的最小数量。
[0021]如果用户的设计超过动态确定的逻辑容量,设计者可以减少他们的设计中的逻辑量以减少所使用的逻辑,或者降低逻辑块之间的连接性,这具有减小Rent参数值的效果,并
且将增加装置的逻辑容量。鉴于基于Rent规则的方程在各个实施例中被用于确定可布线性,引脚密度本身可能不会影响Rent参数。可以有具有相同数量的逻辑块和Rent参数的两个电路,但一个电路具有比另一个电路更高的引脚密度。例如,仅连接到最近邻居的逻辑块的设计将具有大约为0.5的Rent参数,而与最近邻居的连接的数量无关。这一点和进一步的考虑可以在各个实施例中通过使用附加参数来说明,例如基于引脚密度和最近邻居连接与块的外部块连接对比的Rent参数缩放值,或者识别最近邻居连接和与外部块的连接之差并且相应地应用Rent规则和Rent参数的容易发展方程(developed equation)。
[0022]在一些实施例中,用户还可以改变编译综合设置以瞄准更小的面积和更好的可布线性。替代地,当设计超本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种由计算机辅助设计系统执行的方法,即由CAD系统执行的方法,包括:接收待在现场可编程门阵列即FPGA中实施的电路的设计的高级编码;对所述设计执行综合,以产生综合设计;针对所述综合设计生成可布线性估计和逻辑使用估计;并且基于特定FPGA的所述可布线性估计、所述逻辑使用估计和可用资源来确定所述综合设计是否在所述特定FPGA上可实施。2.根据权利要求1所述的由CAD系统执行的方法,其中:所述特定FPGA的所述可用资源包括逻辑容量和布线容量;并且所述确定包括比较所述逻辑使用估计和所述逻辑容量,并且比较所述可布线性估计和所述布线容量。3.根据权利要求1所述的由CAD系统执行的方法,其中:所述特定FPGA的所述可用资源包括纯逻辑的第一逻辑元件即LE、纯布线的第二逻辑元件和能用于逻辑和布线两者之一的第三逻辑元件;并且所述确定包括确定所述逻辑使用估计和所述可布线性估计是否适配组合的第一逻辑元件、第二逻辑元件和第三逻辑元件,所述组合的第一逻辑元件、第二逻辑元件和第三逻辑元件包括所述第三逻辑元件的逻辑和布线的使用的折中。4.根据权利要求1所述的由CAD系统执行的方法,其中:所述生成所述可布线性估计和所述逻辑使用估计是根据关于到逻辑块的外部信号连接的数量与所述逻辑块中的逻辑门的数量之间的关系的Rent规则;并且所述生成包括所述综合设计的递归二分法。5.根据权利要求1所述的由CAD系统执行的方法,进一步包括:以每个块、每组块、分层或全局为基础折中速度和面积;并且在至少一个此种折中之后重复所述确定。6.根据权利要求1所述的由CAD系统执行的方法,进一步包括:瞄准所述综合设计中的拥塞;并且在所瞄准的拥塞改变之后重复所述确定。7.根据权利要求1所述的由CAD系统执行的方法,进一步包括:响应于确定所述综合设计在所述特定FPGA上不可实施,使用综合指令注释设计数据库以减少使用的逻辑,降低连接性,折中速度和面积或者降低拥塞。8.一种有形的非暂时性计算机可读介质,所述有形的非暂时性计算机可读介质具有指令,所述指令在被处理器执行时使所述处理器执行一种方法,所述方法包括:接收待在现场可编程门阵列即FPGA中实施的电路的设计的高级编码;对所述设计执行综合,以产生综合设计;针对所述综合设计生成可布线性估计和逻辑使用估计;并且基于特定FPGA的所述可布线性估计、所述逻辑使用估计和可用资源来确定所述综合设计是否在特定FPGA上可实施并向用户指示。9.根据权利要求8所述的计算机可读介质,其中:所述特定FPGA的所述可用资源包括逻辑容量和布线容量;所述确定包括比较所述逻辑使用估计和所述逻辑容量,并且比较所述可布线性估计和
所述布线容量,并且向用户指示包括用户界面。10.根据权利要求8所述的计算机可读介质,其中:所述特定FPGA的所述可用资源包括纯逻辑的第一逻辑元件即LE、纯布线的第二逻辑元件和能用于逻辑和布线两者之一的第三逻辑元件;并且所述确定包括确定所述逻辑使用估...

【专利技术属性】
技术研发人员:马塞尔
申请(专利权)人:EFINIX有限公司
类型:发明
国别省市:

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

1