CN105191140B - 无边界分级互连的网络架构 - Google Patents
无边界分级互连的网络架构 Download PDFInfo
- Publication number
- CN105191140B CN105191140B CN201480026152.7A CN201480026152A CN105191140B CN 105191140 B CN105191140 B CN 105191140B CN 201480026152 A CN201480026152 A CN 201480026152A CN 105191140 B CN105191140 B CN 105191140B
- Authority
- CN
- China
- Prior art keywords
- interchanger
- output
- order
- network
- level
- 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
Classifications
-
- 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
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K19/00—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
- H03K19/02—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
- H03K19/173—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
- H03K19/177—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form
- H03K19/17736—Structural details of routing resources
- H03K19/17744—Structural details of routing resources for input/output signals
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/10—Geometric CAD
- G06F30/18—Network design, e.g. design based on topological or interconnect aspects of utility systems, piping, heating ventilation air conditioning [HVAC] or cabling
-
- 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]
-
- 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
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K19/00—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
- H03K19/02—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
- H03K19/173—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
- H03K19/177—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form
- H03K19/17724—Structural details of logic blocks
- H03K19/17728—Reconfigurable logic blocks, e.g. lookup tables
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4004—Coupling between buses
- G06F13/4022—Coupling between buses using switching circuits, e.g. switching matrix, connection or expansion network
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/78—Architectures of general purpose stored program computers comprising a single central processing unit
- G06F15/7867—Architectures of general purpose stored program computers comprising a single central processing unit with reconfigurable architecture
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Geometry (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Evolutionary Computation (AREA)
- Computing Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Architecture (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Multi Processors (AREA)
- Logic Circuits (AREA)
Abstract
公开了根据本发明的实施方式的用于实现无边界分级网络的系统和方法,包括产生这样的网络的方法。在一个实施方式中,在集成电路中的分级网络包括多个计算元件,其中多个计算元件具有M个输出和N个输入;以及被布置成交换机的级的多个交换机,其中多个计算元件连接到在第一级中的交换机,在第一级中的交换机连接到多个计算元件和在第二级中的交换机,其中在第二级中的交换机连接到在第一级中的交换机,至少M+1个相邻的计算元件可经由级1交换机连接到至少两个最近邻计算元件,且每个计算元件可与在分级网络内的每个其它计算元件连接。
Description
发明领域
本发明涉及用于产生用于逻辑和/或计算电路系统的交换网络或架构的电路系统和技术,逻辑和/或计算电路系统包括(但不限于)处理器、状态机、门阵列、可编程门阵列、现场可编程门阵列(FPGA)和片上系统(SOC)。例如,可在FPGA电路系统且更具体地在用于产生无边界基数网络的系统和方法中使用本发明。虽然下面在FPGA电路系统的背景下描述了发明和/或实施方式,但这样的讨论、发明和/或实施方式也可应用于逻辑和/或计算电路系统,其包括(但不限于)处理器、状态机和门阵列、可编程门阵列和SOC。为了简洁起见,并没有关于所公开的发明的每个方面提供对每个逻辑和/或计算电路的单独讨论;然而,基于本公开,可应用性应对本领域中的普通技术人员清楚。
发明背景
FPGA是设计成在被制造之后由消费者或设计者配置的集成电路。通常使用硬件描述语言(HDL)来规定FPGA配置。目前FPGA具有逻辑门和随机存取存储器(RAM)的大资源以实现复杂的数字计算。FPGA一般包含被称为“可配置逻辑块”(CLB)或“逻辑阵列块”(LAB)的可编程逻辑部件和允许块彼此进行通信的可重构互连的分级结构。逻辑块可配置成执行复杂的计算功能或只是简单的逻辑门,如AND和XOR。在大部分FPGA中,逻辑块还包括存储器元件,其可以是简单的触发器或更完全的存储器块。
应用电路可被映射到FPGA内,前提是足够的资源是可得到的。虽然可从设计容易确定所需的CLB/LAB和I/O的数量,所需的路由线路的数量甚至在具有相同数量的逻辑的设计当中可显著改变。例如,纵横交换机通常比具有相同的门计数的心动阵列需要多得多的路由。因为未使用的路由线路(即线)增加零件的成本(并降低性能)而不提供任何益处,FPGA制造商试图提供刚好足够的线路,使得大部分设计将符合查找表(LUT),且IO可被路由。这由估计(例如从Rent规则得到的估计)或由使用现有设计的实验确定。
通常,在分级网络中,可在以累接方式直接连接的各种元件(例如CE、交换机等)之间发送和/或接收信息。一般,现代分级网络可基于包括Y个计算元件(CE)的Benes网络,这些计算元件通过2*log(Y)个2x2交换机的级进行彼此通信。Benes网络是可重新布置的和无阻塞的,提供在CE之间的无拥塞通信。胖数(fat-tree)网络可通过允许通信在每级处前后传递来将级的数量从2*log(Y)减少到log(Y)。
在图1A中示出包括具有5个2x2交换机的级的8个CE的Benes网络。网络100包括八个CE 102,每个CE 102具有2个输入110和2个输出104。可通过添加更多的输入线和输出线来将多个CE抽象化成单个CE。例如,CE 7和CE 8可组合以形成具有4个输出的块112。类似地,CE 7和CE 8可组合以形成具有4个输入的块114。在这个抽象化之后,如图1B所示,任何单路径Benes网络可变换成双路径Benes网络。在网络150中,通过使用双路径交换机而不是单路径交换机,每级的交换机的数量与网络100比较可减少一半。例如,图1A所示的交换机116和118都是具有2个输入和2个输出的单路径交换机。然而,在图1B中的抽象化交换机152是具有4个输入(2对)和4个输出(2对)的双路径交换机。虽然被不同地构造,网络100和网络150的功能是相同的。因为4输入CE更通常应用于FPGA,这个描述的其余部分使用利用双路径交换机的4输入CE被示出,但对本领域中的普通技术人员应清楚,通过使用如上面讨论的类似抽象化技术,这个描述可适用于具有任意数量的输入和输出的各种CE和具有任意数量的级和输入及输出路径的各种交换机。作为例子,在图1C中示出包括具有5级技术的8个CE的Benes网络。网络180包括具有5级的8个CE,每个CE具有利用双路径交换机的4输入、4输出。
在图2中示出由具有3个2x2交换机的级的8个CE组成的胖树网络。网络200包括具有在交换机的两侧上的4个双向线的2x2交换机202。虽然绘制有在交换机的两侧上的4个双向线204,其也被实现为在交换机的每侧上的8个单向线206(4输入、4输出)。
在图3中示出具有4个2x2交换机的级的16个CE的基数2胖树网络。网络300包括交叉路径,其中在CE和各个交换机之间的距离可被计算。例如,在第一级中的交叉路径(例如交叉路径302)具有为1的距离,其为2Z-1,其中Z=1(Z相应于级)。在第二级中的交叉路径(例如交叉路径304)具有为2的距离,其为2Z-1,其中Z=2。在第三级中的交叉路径(例如交叉路径306)具有为4的距离,其为2Z-1,其中Z=3。在第四级中的交叉路径(例如交叉路径308)具有为8的距离,其为2Z-1,其中Z=3。此外,基数边界可被定义(由虚线示出)为边界,每个交叉路径在实现胖数网络时越过边界。例如,在CE和级1之间的路由,交叉路径302越过基数边界310。类似地,在级1和级2之间传输数据时,交叉路径304越过边界312。同样,在级2和级3之间,交叉路径306越过边界314,以及在级3和级4之间,交叉路径308越过边界316。
发明概述
公开了根据本发明的实施方式的用于实现无边界分级网络的系统和方法,包括(但不限于)产生这样的网络的方法。在一个实施方式中,在集成电路中的分级网络,分级网络包括多个计算元件,其中多个计算元件具有M个输出和N个输入;以及被布置成交换机的级的多个交换机,其中多个计算元件经由路径连接到在第一级中的交换机,在第一级中的交换机经由路径连接到多个计算元件和在第二级中的交换机,其中在第二级中的交换机经由路径连接到在第一级中的交换机,至少M+1个相邻的计算元件可经由级1交换机连接到至少两个最近邻的计算元件,且每个计算元件可与在分级网络内的每个其它计算元件连接。
附图的简要说明
在接下来的详细描述的过程中,将参考附图。这些附图示出本发明的不同方面,且在适当的场合,参考数字用于做出特定的参考。应理解,结构、部件和/或元件——除了特别示出的那些以外——的各种组合被设想并在本发明的范围内。
而且,本文描述和示出了很多发明。本发明不限于任何单个方面也不限于其实施方式,也不限于这些方面和/或实施方式的任何组合和/或置换。而且,本发明的每个方面和/或其实施方式可单独地被使用或与本发明的其它方面和/或其实施方式中的一个或多个组合来使用。为了简洁起见,在本文没有单独地讨论和/或示出某些置换和组合。特别地,在本文被描述为“示例性”的实施方式或实现不应被解释为例如相对于其它实施方式或实现是优选的或有利的;更确切地,意图是反映或指示实施方式或多个实施方式是例如本发明的“示例”实施方式。
图1A-C以方框图形式示出具有3或5个单或双路径2x2交换机的级的4或8个计算元件(CE)的Benes网络。
图2以方框图形式示出具有3个2x2交换机的级的8个CE的Benes网络的胖树网络。
图3以方框图形式示出具有4个2x2交换机的级的16个CE的基数2胖树网络。
图4A-H以方框图形式且在各级处示出根据本发明的实施方式的基数2网络到基数3无边界网络架构的示例性变换。
图5A-C以方框图形式且在各级处示出根据本发明的实施方式的无边界基数3网络的均匀分布路由的示例性实施方式。
图6以方框图形式示出根据本发明的实施方式的在第三级处具有削减的交换机的示例性无边界基数3网络;特别地,在这个示例性实施方式中,无边界基数3网络包括在第三级和第四级之间的更短的线长度和少50%的第四级交换机(相对于未削减的网络)。
图7以方框图形式示出根据本发明的实施方式的在第四级处具有削减的交换机的示例性无边界基数3网络。
图8以方框图形式示出根据本发明的实施方式的在第四级处具有削减的交换机的示例性无边界基数3网络,第四级处交换机削减导致在第四级和第五级之间的更短的线长度和少50%的第五级交换机。
图9A-B以方框图形式示出具有2个4x4交换机的级的16个CE的基数4的胖树网络。
图10以方框图形式示出根据本发明的实施方式的在第一级中使用基数5交换机的16个CE的示例性无边界基数4胖树网络。
图11A-B以方框图形式示出根据本发明的实施方式的使用交换机矩阵宏的示例性异构基于宏的设计。
图12A-B以方框图形式示出根据本发明的实施方式的描绘交换机矩阵(SM)宏的16个CE连接的示例性FPGA设计。
图13A-B以方框图形式示出根据本发明的实施方式的具有3种主要类型的CE元件的示例性FPGA设计。
图14示出根据本发明的实施方式的分成4个分级结构的示例性物理设计。
图15A-B示出根据本发明的实施方式的具有顶层CE视图和SM视图的示例性FPGA设计。
图16A-C示出根据本发明的实施方式的FPGA设计的示例性顶层互连架构。
图17A-D示出未变换网络的部分。
图18A-D以方框图形式示出根据一个或多个实施方式的示例性无边界分级网络(在使用例如本文所述的技术变换之后)。
图19A-B以方框图形式中示出根据一个或多个实施方式的示例性无边界分级网络(在使用例如本文所述的技术变换之后)。
详细描述
现在转到附图,示出了根据本发明的实施方式的用于实现无边界分级网络的系统和方法,包括(但不限于)产生这样的网络的方法。在很多实施方式中,分级网络可包括具有M个输出和N个输入的多个计算元件(CE),其中每个CE可使用布置在各级中的交换机与网络内的其它CE通信。在几个实施方式中,每个CE可经由各种类型的路径(例如单、双、单向和/或双向)连接到在第一级中的交换机。在各种实施方式中,在第一级中的交换机可连接到CE和在第一级中的交换机,其中在第二级中的交换机也可连接到在第一级中的交换机并常常连接到在第三级中的交换机。在很多实施方式中,无边界分级网络具有可经由级1交换机连接到至少两个最近邻CE的至少M+1个相邻的CE。
在本发明的几个实施方式中,产生基数3无边界架构的方法包括选择在分级网络中的级和识别经过选定级存在的至少一个中心2x2路由线路。该方法还包括将至少一个识别出的中心2x2路由线路移动到在选定级之前的路由通道。通过重复中心2x2路由线路的识别和移动,一个或多个级可变换成基数3无边界网络。在某些实施方式中,本发明还包括处理可能从前面提到的变换产生的不均匀分布的路由。在几个实施方式中,可通过重新分布互连路由和/或通过减少交换机的数量来校正不均匀分布的路由。如下面进一步讨论的,用于创建无边界交换网络的技术不限于任何特定层的分级结构、计算元件的数量或单独的交换机能力。
在各种实施方式中,可在设计FPGA时利用基于宏的设计实现以执行下面描述的技术。在很多实施方式中,可考虑异构互连和计算元件做出FPGA设计。在几个实施方式中,可利用分级设计流程。在又一些另外的实施方式中,可在设计过程中可视化顶层互连架构。如上面讨论的,虽然常常在FPGA电路系统的背景下描述本发明的实施方式,也可使用可应用的逻辑和/或计算电路系统——包括(但不限于)处理器、状态机和门阵列、可编程门阵列和SOC——来解释本发明的实施方式。为了简洁起见,并没有关于所公开的发明的每个方面提供对每个逻辑和/或计算电路的单独讨论;然而,基于本公开,可应用性应对本领域中的普通技术人员清楚。
基数2网络级到无边界基数3网络的变换
通常,网络的不同CE可使用互连网络架构执行有助于总计算、存储和/或通信功能的各种功能。对于分级网络,在越过一个或多个基数边界的CE之间的局部路由可能是低效的,因为信号必须横越很多级来与彼此通信。例如在图3中,虽然CE 8和CE 9是最近邻(相邻于彼此而定位),为了与彼此通信,信号必须横越4个网络分级结构的级。如下面进一步讨论的,基数2网络可通过变换网络的每级来变换成无边界基数3网络。类似地,更高的基数网络也可变换成无边界基数网络。下面进一步讨论根据本发明的各种实施方式的、用于产生基数网络的一个或多个级或将基数网络的一个或多个级变换为无边界基数网络的一个或多个级和无边界基数网络实现的过程。
在图4A和4B中示出具有蝴蝶型结构的同构变换的16个CE的胖树网络。网络400包括16个CE。为了演示,如在图4B中列出的,示出CE 13-16及其前2个交换机401的级。对于CE15和16,一组交叉路径402、403、404、405使用具有为1的距离的级1交换机406、407提供在CE15和CE 16之间的连接。在很多实施方式中,这样的交叉路径连接可被定义为链接2个交换机或特定级的CE和交换机与直接相邻级的交换机或CE的一组线。对在使用交换机408、409的CE 13和14之间的连接存在一组类似的交叉路径(在所示例子中,在CE和级1交换机之间的所有交叉路径连接具有为1的距离)。然而,当在CE和交换机(或一个级的交换机和直接相邻级的交换机)之间不存在交叉路径连接时,所谓的“间隙”存在。例如,间隙410存在于CE14和CE 15及交换机409、406之间。换句话说,间隙被定义为缺少在一组交换机之间或在一组CE和交换机之间的交叉路径连接。间隙的其它例子由插图编号411和412来指示。
在很多实施方式中,无边界基数3变换通过从上层分级结构(上游,即更后的级)搜索可用的交叉路径并将它们向下移动到下层分级结构(下游)来填充在下层分级结构处的间隙。在各种实施方式中,以间隙例如410开始,可在上游进行搜索以找到具有适当距离的一组交叉路径(在这个例子中,距离是1,因为现有的级1交叉路径具有距离1)。这样的交叉路径可以是上游,如被识别为连接级1交换机409、406和级2交换机413、418的414、415、416和417(统称为“网”)。所识别的交叉路径具有为1的距离,其满足下层分级结构下游的距离标准。在很多实施方式中,这些网可从它们的当前交换机断开以准备移动。可识别满足距离标准的、用于填充在CE和级1之间的间隙的其它交叉路径(如在图4A和4B中使用虚线圆标记的)。这样的交叉路径也可从它们的当前交换机断开并移动到下层分级结构。在很多实施方式中,交叉路径可来自其它分级结构,例如在级2和3之间,如由可用于填充间隙412的419、420、421和422标记的。可在级3和级4之间发现满足标准的另一组交叉路径,如由可用于填充间隙411的423、424、425和426标记的。在很多实施方式中,可识别用于第一级之后的路由通道的中心2x2路由线路(最短路由线路)(如在图4A和4B中使用虚线圆标记的)用于向下游移动。
在图4C中示出了根据本发明的实施方式的、在将所识别的中心2x2路由线路移动到第一级之下的路由通道之后的胖树网络以将第一级变换成基数3无边界网络。在很多实施方式中,识别具有1的互连长度的2x2路由线路。如在图4D的插图427中所示的,2x2交叉路径414、415、416和417可被断开并从它们先前的位置移动,并重新接合连接CE 14、15与交换机409、406且填充间隙410。类似地,2x2交叉路径419、420、421和422可被断开并从它们先前的位置移动,并重新接合以填充间隙412。同样,2x2交叉路径423、424、425和426可被断开并从它们先前的位置移动,且移动和重新接合以填充间隙411。
在图4E中示出了根据本发明的实施方式的、具有在第二级和第三级之间以及在第三级和第四级之间识别的中心2x2路由线路的胖树网络。在如上讨论的交叉路径的移动之后,在级1和级2之间的其余交叉路径430、431、432和433具有为3的距离。在很多实施方式中,可识别具有3的距离的交叉路径(如在图4E中使用虚线圆标记的)以断开并移动到下游。这样的交叉路径可来自级2和3之间,如由444、445、446和447标记的,或此外在上游,如由448、449、450和451标记的。
在图4E中示出了根据本发明的实施方式的、在将所识别的中心2x2路由线路移动到在第一级和第二级之间的路由通道之后以将第二级变换成基数3无边界网络的胖树网络。在几个实施方式中,如上面讨论的,具有3的互连长度的2x2路由线路可被识别。2x2交叉路径444、445、446和447可被断开(并从它们先前的位置移动),并重新接合以填充间隙452。类似地,2x2交叉路径448、449、450和451可被断开(并从它们先前的位置移动),并重新接合以填充间隙453。
在图4G中示出了根据本发明的实施方式的、具有在第三级和第四级之间识别的中心2x2路由线路的胖树网络。在很多实施方式中,在级2和级3之间的交叉路径可具有5的距离,如由标记460、461、462和463识别的,或具有7的距离,如由标记464、465、466和467识别的。在几个实施方式中,具有5和7的距离(为圆形的)的交叉路径可在上游被识别以断开并向下游移动。如所示,在上游具有5的距离的交叉路径包括468、469、470和471。具有7的距离的交叉路径包括472、473、474和475。
在图4H中示出了根据本发明的实施方式的、在将所识别的中心2x2路由线路移动到在第二级和第三级之间的路由通道之后以将第三级变换成基数3无边界网络的胖树网络。如上面讨论的,2x2交叉路径468、469、470、471、472、473、474和475可被断开并从它们先前的位置移动,并重新接合以填充间隙476。
虽然上面关于图4A-H讨论了基数2网络到无边界基数3网络的特定变换,如上所述的逐级变换可继续到任何分级结构的顶部。可选地,变换可停留在任何分级结构处并保留其余的上层分级结构作为传统基数2网络。此外,虽然图4A-H示出到基数3无边界架构的变换,可关于任何数量的CE和对较高的基数使用类似的技术,其中基数6架构可用作基数4网络的扩展,基数12架构可用作基数8网络的扩展,依此类推。此外,虽然上面关于图4A-H讨论了每通道特定数量的线路(即2x2路由线路),可根据本发明的实施方式利用如对特定应用的要求适合的、通道中的线路的任何组合。
如上面讨论的,在各种实施方式中,可使用一个或多个处理器(被适当编程)来实现在本文所述的技术以执行、实施和/或评估在本文所述的一个或多个功能或操作以产生本发明的交换网络或架构。
通过重新分布互连路由来形成匀称的路由模式
在将传统网络变换成无边界网络(例如将基数2网络变换为无边界基数3网络)时,系统和/或网络可包括不均匀分布的路由模式(即一些交换机必须比其它交换机连接更多的路由)。不均匀分布的路由可出现,因为在第一级之上的线减少了50%。在这些情况下,通过重新分布互连路由来形成匀称的(均匀分布的)路由系统可能是有利的。
在图5A-C中示出根据本发明的实施方式的、通过重新分布互连路由而形成的无边界基数3网络。图5B的插图501示出网络的一部分(也见图4H),其还没有被修改用于重新分布。看被标记为502和504的基数边界,到无边界网络的变换可创建新基数边界,例如504。在很多实施方式中,虽然交叉路径可具有3的距离(例如506、508、510、512),为了越过基数边界,可能只需要2的距离(2Z-1,其中Z相应于级,且在这里Z=2)。这样的交叉路径可缩短到2的距离,如在图5B的插图503中示出的。在这里,交叉路径的簇(“网”)518、520、522和524(在缩短和从交换机514和516断开之前的前面的506、508、510和512)可连接到交换机526和528,而另一端保持连接到交换机530和532。
在插图503中,交叉路径可以成对,例如连接到交换机526、528、530和532的518、520、522和524,但一些交换机可具有间隙,例如在交换机514、534和516、536之间。在各种实施方式中,交叉路径对可分成单交叉路径,其中一组单交叉路径移动到邻接的相邻交换机,如在插图505中所示的。在插图505中,形式上成对的交叉路径518、520、522和524(在插图503中)可分成单交叉路径(538、540、542、544)以连接交换机514、534和516、536,其中交叉路径540和544保持连接到交换机526、528、530和532。
在几个实施方式中,类似的变换可应用于各个其它级。图5C的插图507示出还没有被修改的网络的一部分(也见图4H)。基数边界由虚线550标记。对于这个分级结构,交叉路径的距离可以是8,如由2Z-1定义的,其中Z=4。网然后被从交换机552、554、556、558、560、562、564和566断开并被缩短到为8的距离,并然后连接到交换机568、570、572、574、576、578、580和582,如在插图509中示出的。交叉路径对然后被分成单个交叉路径,且一组交叉路径被移动到邻接的一组相邻交换机,如在插图511(也见图5A)中示出的。
在各种实施方式中,可选的方法可用于分离交叉路径对并移动它的分支之一。如在插图509中所示的,在图5C中,交换机590、592、594和596可通过水平地镜像路径来进行移动(沿着垂直轴,使得数据在与另一分支相同的方向上行进)并移动到邻接的一组相邻交换机,如在插图513中示出的。如在插图513中,在图5C中,在很多实施方式中示出的,这样的方法允许交换机例如560、562、564、566、576、578、580和582不再连接到任何交叉路径连接,且因此可被削减,导致在级4和更高级中的交换机的数量上的50%减少(也见图7)。
通过削减交换机的数量来形成匀称的路由模式
如上面讨论的,将基数2变换成无边界基数3网络可导致不均匀分布的路由。为了形成匀称的路由模式,实现削减过程以减少在某个分级结构之上使用的交换机的数量可能是有利的。
在图6中示出根据本发明的实施方式的、在第三级处具有削减的交换机的无边界基数3网络,第三级处削减的交换机导致用于第三和第四级之间的互连的线长度更短,导致少50%的第四级交换机。在很多实施方式中,可通过将线移动到双线将第三级交换机的数量减少一半来削减第三级中的交换机。在几个实施方式中,其余第三级交换机可被集中,导致用于第三和第四级之间的线的互连长度更短并将在第四级中的交换机的数量减少了一半。网络600示出使用上面讨论的各种技术到无边界网络的变换。可利用上面讨论的重新分布方法将在级1和2之间的交叉路径对分成单个交叉路径(例如602、604、606和608)。对于在级2和3之间的交叉路径,也可应用类似的技术。此外,如上所述的缩短的方法可应用于交叉路径对,例如610、612、614、616和618、620、622、624,导致在级3和更高级中的交换机的数量上的50%减少。由于削减,在级3和4之间的交叉路径例如626和628只需要4的距离以越过基数边界630,且因此交叉路径可缩短并被实现有4的距离。
在图7中示出根据本发明的实施方式的、在第四级处具有削减的交换机的无边界基数3网络。在很多实施方式中,通过移动线实现第四级交换机的数量的一半的减少来削减第四级中的交换机。在几个实施方式中,第四级交换机存在于网络的一半上,减小了上层分级结构的线长度。网络700示出使用上面讨论的各种技术到无边界网络的变换。可利用上面讨论的重新分布方法将在级1和2之间的交叉路径对分成单个交叉路径(例如702、704、706和708)。对于在级2和3之间的交叉路径,也可应用类似的技术,导致单个交叉路径710、712、714和716。对于在级3和4之间的交叉路径,可应用上面讨论的方法,导致在级4和更高级中的交换机的数量上的50%减少。
在图8中示出根据本发明的实施方式的、在第四级处具有削减的交换机的无边界基数3网络,第四级处削减的交换机导致在第四和第五级之间的互连的线长度更短和少50%的级5交换机。在很多实施方式中,16个CE网络——每个具有第四级交换机——可占据它的局部网络的仅仅一半,因而减小了在第四和第五级之间的互连的线长度并将级5中的交换机的数量减少一半。在网络800中,在图7中的网络700被抽象化为802,并被拷贝和垂直地镜像(沿着水平轴)为804。经由级4和5中的交换机以及交叉路径对例如806、808、810和812来连接结构802和804。由于削减,在级4和5之间的交叉路径例如806、808、810和812可被实现为覆盖为8的距离以越过基数边界814,且因此交叉路径可被实现有8的距离。
虽然上面关于图5-8讨论了用于通过削减来形成匀称的路由模式的特定技术,可根据本发明的实施方式利用如对特定应用的要求适合的各种技术中的任一个,包括重新分布互连路由和削减应用于在不同分级结构中的各级的交换机的数量。
无边界基数4网络
如上面讨论的,用于创建无边界网络的技术不限于分级结构的任何特定层、计算元件的数量或单独的交换机能力。
在图9A中示出具有2个4x4交换机的级的16个CE的基数4胖树网络。为了清楚,在网络900中标出CE和交换机。可通过在CE和交换机周围移动但不断开和重新接合任何网,产生如图9B所示的变换来在这个网络上执行同构变换。网络920在功能上与900相同。在第一级中的所有交叉路径具有为1、2或3的距离,如分别在922、924和926中标记的。可从所有其它分级结构识别具有1、2或3的距离的交叉路径,例如交叉路径928、930、932、934、936、938、940、942、944、946、948和950。在这个例子中,所选择的交叉路径只有1或3而不是2的距离。遵循如上所述的基数2方法,这些交叉路径可从它们的当前交换机断开为移动做准备。
在图10中示出根据本发明的实施方式的、在第一级中使用基数5交换机的16个CE的无边界基数4胖树网络。在几个实施方式中,可通过识别在第一级和第二级之间的具有1、2或3的互连距离的线来构造无边界网络1000。在很多实施方式中,所识别的线可被移动到第一级之下以将第一级变换到无边界网络。遵循如上面讨论的基数2方法,示例性交叉路径928、930、932、934、936、938、940、942、944、946、948和950可被从下游移动并被重新连接在CE和级1交换机之间,产生如图10所示的无边界基数4胖树网络。
基于宏的设计实现
可对本发明的各种实现采用基于宏的设计方法。通过将大FPGA分成更小的相同的宏,可更容易构造FPGA。然而,优化的互连架构通常导致各种尺寸和形状的宏。在很多实施方式中,可对实现利用异构基于宏的设计。
在图11A中示出根据本发明的实施方式的异构基于宏的设计。在很多实施方式中,交换机矩阵的每“行”可被集合在一起作为一个大交换机矩阵(SM)宏,在这种情况下,两种类型的较大SM宏例如SM A 1102和SM B 1104可被构造。
在图11B中示出根据本发明的实施方式的用在异构基于宏的设计中的SM宏。在很多实施方式中,大SM宏结构(1102和1104)可被抽象化以为了附图的简单而移除宏的内部布线(1106和1108)。在几个实施方式中,可针对宏示出输入/输出线。
虽然上面关于图11A-B讨论了基于宏的设计实现的特定技术,可根据本发明的实施方式利用如对特定应用的要求适合的基于宏的设计实现的各种技术中的任一个。
具有异构互连和计算元件的FPGA设计
FPGA可由异构互连和CE组成。使用基于宏的设计,多个SM宏可用于使各个CE互连。
在图12A中示出根据本发明的实施方式的、描绘16个CE连接的FPGA设计,每个CE连接由一个SM宏表示。
在图12B中示出根据本发明的实施方式的、描绘需要各种输入/输出连接的异构CE的FPGA设计。在很多实施方式中,互连架构对CE的内部结构是不可知的,且因此FPGA设计一般只需要匹配从CE到SM的I/O的数量。在几个实施方式中,CE和SM设计的去耦可允许更容易的集成。
虽然上面关于图12A-B讨论了具有异构互连和CE的FPGA设计的特定技术,可根据本发明的实施方式利用如对特定应用的要求适合的具有异构互连和CE的FPGA设计的各种技术中的任一个,包括具有任意大数量的CE的系统。
FPGA设计的计算元件考虑因素
FPGA可具有各种类型和数量的CE。在很多实施方式中,FPGA设计可具有四种主要类型的CE:高密度可重构逻辑块(片L);具有移位寄存器和分布式存储器的高密度可重构逻辑块(片M);用于乘法和其它数字信号操作的高性能数字信号处理器(DSP)(片-DSP);以及包含用于读和写访问的一个或多个端口且可以或可以不是可重构的块存储器(片DRAM)。
在图13A中示出根据本发明的实施方式的FPGA设计,其中SM宏与CE集成以形成较大的宏。在各种实施方式中,由于I/O的数量,片L 1302使用6个SM宏,而片M 1304使用7个SM宏。片DSP可以很大,具有大量I/O,且在很多实施方式中,片DSP 1306使用为11x3 SM阵列的33个SM宏来被实现,33个SM宏在片DSP核之上和之下分离。
在图13B中示出根据本发明的实施方式的片BRAM的FPGA设计。在几个实施方式中,可手动地设计每个SM宏。在很多实施方式中,片SRAM 1308可使用为9x4阵列的36个SM宏。在各种实施方式中,36Kb BRAM可具有大约8个SM宏的宽度,且BRAM可使用2BRAM IP和为9x8阵列的72个SM被集成为双BRAM宏1310。
虽然上面关于图13A-B讨论了考虑CE的FPGA设计的特定技术,可根据本发明的实施方式利用如对特定应用的要求适合的FPGA设计的各种技术中的任一个。此外,根据本发明的实施方式,可在具有任意大数量的CE的互连架构中利用类似的技术。
使用分级设计流实现FPGA设计
在实现集成电路的设计中设计流是有用的。在图14中示出根据本发明的实施方式的物理设计流。在很多实施方式中,物理设计流可分成4个分级结构。在第一分级结构1402中,可手动地设计SM宏。在第二分级结构中,SM宏可与CE一起集成到一个大宏1404内,宏1404可被称为可配置逻辑块(CLB)。在第三分级结构中,异构CLB可集成到瓦片(tile)1406内。在第四分级结构中,9个瓦片可集成到顶层芯片1408内。
虽然上面关于图14讨论了使用分级设计流实现FPGA设计的特定技术,可根据本发明的实施方式利用如对特定应用的要求适合的用于实现FPGA设计的各种技术中的任一个。
在FPGA设计中的顶层互连架构
FPGA一般是异构CE与异构SM宏的集成。在图15A中示出根据本发明的实施方式的FPGA设计的顶层CE视图。在很多实施方式中,芯片1500可分成9个矩形瓦片,其中8个瓦片可包含片L、M、SDP和BRAM的组合,而一个瓦片可包含特定的CE1502(在这里被描绘为64-8kFFT和16核的UDSP)。
在图15B中示出根据本发明的实施方式的FPGA设计的顶层SM视图。在这里,为了简单目的,只描绘了(14个中的)顶部5个互连分级结构:级14 1502、级13 1504、级12 1506、级11 1508和级10 1510。
在图16A-C中示出根据本发明的实施方式的FPGA设计的顶层互连架构。在很多实施方式中,如在图16A中所示的,顶层互连架构1600可包括20480个SM宏1600,其被分成7个异构设计并进一步被分离(如由每个框1602示出的)。如图16B所示,异构设计1602可包括512个较小的SM宏1606,其中每个SM宏还可包括各种CE。一个可能的SM宏的例子在图16C中被示为1606。
虽然上面关于图15A-B和16讨论了用于在FPGA设计中使用顶层互连架构的特定技术,可根据本发明的实施方式利用如对特定应用的要求适合的、用于在FPGA设计中使用顶层互连架构的各种技术中的任一个。无边界分级网络的特性
无边界分级网络可包括具有M个输出和N个输入的多个CE,其中每个CE可如上面进一步讨论的在变换时使用布置在级中的交换机与其它CE通信。在很多实施方式中,可以用很多不同的方式得到无边界分级网络。此外,虽然CE在上面在它们的常规意义上(作为单独的元件)被讨论,在各种实施方式中,CE本身可以是无边界网络。
在图17A-C中示出根据本发明的实施方式的未被变换的网络。在图17A中,网络1700包括利用双向线来使用一组级1交换机传送数据的6个CE(单向线也可作为可选方案被利用)。在很多实施方式中,CE和交换机可具有M个输出和N个输入。例如,在网络1700中,每个CE具有在上游传输数据的2个输出(M=2)(对于CE 1被识别为1701、1702)(其中每级一个交换机具有从CE接收所传输的数据的2个输入)。类似地,在网络1700中,每个CE具有来自下游的从级1交换机接收数据的2个输入(N=2)(对于CE 1被识别为1703和1704)。此外,网络1700的每个CE可被描述为每分支具有特定数量的路径(W),其中每分支路径的数量不影响输出或输入的定义。在图17B中示出根据本发明的实施方式的每分支具有2个路径(W=2)的网络的例子。网络1710可被构造成使得每个分支(1711、1712、1713和1714)具有两个路径(即双线)。在很多实施方式中,每个分支可具有W的不同值。虽然路径的数量现在是2,1701的每个CE仍然具有2个输出(M=2)和2个输入(N=2)。根据本发明的实施方式的每分支具有1个路径(W=1)但只有1个输出分支(M=1)和2个输入分支(N=2)的网络的例子在图17C中被示为网络1720。根据本发明的实施方式的每分支具有1个路径(W=1)但有4个输出分支(M=4)和4个输入分支(N=4)的网络的例子在图17D中被示为网络1730。
在几个实施方式中,可定义具有尺寸为M+1个CE(和M+1个相应的交换机)的框。在未变换网络中,尺寸M+1的任何框包括不能使用级1交换机直接与彼此通信的至少两个最近邻CE(直接相邻的CE)。例如,在1700网络中,框1705可被绘制为包括CE 1、CE 2和CE 3,其中CE 2 1706和CE 3 1707不能使用级1交换机直接与彼此通信。类似地,在网络1710中,框1715包括CE 2、3和4,其中CE 2 1716不能使用级1交换机直接与CE 3 1717通信。另一例子包括网络1720,其中框1721包括CE 3、4和5,其中CE 4 1722不能使用级1交换机直接与CE 51723通信。此外,网络1730可定义包括CE 1、2、3、4和5的框1731,其中CE 4 1732和CE 51733不能使用级1交换机直接与彼此通信。
相比之下,在利用如上所述的变换方法的无边界网络中,可定义框,其中框的每个CE可经由级一交换机与最近邻CE通信。在图18A-D中示出根据本发明的实施方式的无边界网络。在很多实施方式中,由于一个或多个变换,各个CE可具有额外的输入和/或输出。其它CE,特别是在网络的边缘附近的CE例如1841和1842(在网络1840中)、1851和1852(在网络1850中)、1861和1862(在网络1860中)、1876、1877、1878和1879(在网络1870中)通常保持相同数量的输入和输出(即没有分支被添加)。如上面陈述的,已变换网络允许定义框,其中框的所有CE可经由级一交换机与任何最近邻CE通信。例如,在网络1840中,框1843包括CE 1、2、3、4和5,其中每个CE可经由级1交换机与任何最近邻CE直接通信。类似地,在网络1850中,框1853包括CE 2、3、4和5,其中每个CE可经由级1交换机与最近邻CE直接通信。同样,在网络1860中,框1863可被定义为包括CE 3、4、5和6,其中每个CE可经由级1交换机与最近邻CE直接通信。再次,在网络1870中,框1871可被定义为包括CE 1、2、3、4、5和6,其中每个CE可经由级1交换机与最近邻CE通信。
此外,在输入和/或输出大于3(例如在网络1870中)的网络中,一些网(1872、1873)是必要的,从而将CE 4和CE 5转换为具有5输入,例如1874和1875可以是可选的,允许CE 3和CE 6选择变换成为5的输入和输出。
在很多实施方式中,相同的网络可应用于所有其它分级的级。图19A-B示出在级1和级2之间的分级网络的一部分。在左边示出被标记为1980的传统未变换网络,每个级一个交换机,具有使用双线(W=2)的为2的输出(M=2)和为2的输入(N=2)。在右边示出被标记为1990的已变换网络。在这个图示中,直接连接在同一SM宏内的级1和级2交换机的局部路由例如被标记为1991的局部路由具有双线(W=2),而分支出以连接到同一SM宏之外的级2交换机的局部路由例如被标记为1992和1993的局部路由具有单线(W=1)。这种方法可增加交换机的基数R(其中R是N或M的较大者;在这个例子中,R现在从2增加到3),而不增加线计数。虽然上面关于图17-19B讨论了无边界分级网络的特定特性,根据本发明的实施方式无边界分级网络的各种特性中的任一个可被识别为对特定应用的要求适合的。
此外,可使用现在已知或以后研发的任何类型的交换机和复用器来实现用于产生和/或例示本文所述和/或所示的发明的网络或架构的交换机和复用器。例如,在一个实施方式中,常规类型的交换机和复用器可用于实现发明的网络或架构。在另一实施方式中,可使用在2013年3月15日提交的、标题为“Fine-grained Power Gating in FPGAInterconnects”的临时申请序列号61/791,243中描述和示出的一个或多个交换机和复用器,该临时申请通过引用被全部并入本文。例如,在一个实施方式中,在本文描述和/或示出的发明的网络或架构可包括在临时申请号61/791,243(’243临时申请)中描述和示出的发明的交换机和复用器(包括与这样的交换机和复用器相关的控制信号和缓冲器)以形成发明的网络或架构。特别地,在’243临时申请中描述和示出的交换机和复用器的所有置换和组合可用于产生并例示网络或架构。因此,在本文示出的交换机和复用器块可以代表常规交换机和复用器、和/或在’243临时申请中描述和示出的发明的交换机和复用器、和/或还没有被研发的交换机和复用器;所有这样的组合预期落在本发明的范围内。
如上面提到的,可使用一个或多个处理器(被适当编程)来实现在本文所述的技术以执行、实施和/或评估在本文所述的一个或多个功能或操作从而产生本发明的交换网络或架构。
特别地,应进一步注意,在本文公开的各种电路和电路系统可使用计算机辅助设计工具被描述并根据它们的行为、寄存器传送、逻辑部件、晶体管、布局几何结构和/或其它特征被表达(或表示)为体现在各种计算机可读介质中的数据和/或指令。这样的电路表达可被实现的文件和其它对象的格式包括但不限于支持行为语言例如C、Verilog和HLDL的格式、支持寄存器级描述语言例如RTL的格式和支持几何结构描述语言例如GDSII、GDSIII、GDSIV、CIF、MEBES的格式和任何其它适当的格式和语言。这样格式化的数据和/或指令可被体现于其中的计算机可读介质包括但不限于以各种形式的非易失性存储介质(例如光学、磁性或半导体存储介质)和可用于通过无线、光学或有线信令介质或其任何组合传送这样格式化的数据和/或指令的载波。由载波传送这样格式化的数据和/或指令的例子包括但不限于通过互联网和/或其它计算机网络经由一个或多个数据传送协议(例如HTTP、FTP、SMTP等)来传送(上传、下载、电子邮件等)。本发明还涉及本文所述的电路系统的这样的表示和/或由此实现的技术,且因此预期落在本发明的范围内。
实际上,当经由一个或多个计算机可读介质在计算机系统内被接收到时,上面描述的电路的基于这样的数据和/或指令的表达可由在计算机系统内的处理实体(例如一个或多个处理器)结合一个或多个其它计算机程序(没有限制地包括网表生成程序、放置和路由程序等)的执行来处理,以产生这样的电路的物理表现形式的表示或图像。可例如通过实现用于在设备制造过程中形成电路的各种部件的一个或多个掩模的产生,来在其后在设备制造中使用这样的表示或图像。
而且,可经由模拟和基于模拟指令的表达,使用计算机辅助设计、模拟和/或测试工具来表示本文公开的各种电路和电路系统以及技术。用于逻辑和/或计算电路系统的发明的网络的模拟—包括在本文实现的和/或通过这样的发明的网络或架构和逻辑和/或计算电路系统实现的发明的过程或技术可由计算机系统实现,其中这样的电路系统和由此实现的技术的特征和操作经由计算机系统被模拟、模仿、复制、分析和/或预测。本发明还涉及用于逻辑和/或计算电路系统的发明的网络和/或架构、和/或在本文实现的发明的技术和/或由这样的网络、逻辑电路系统和/或计算电路系统实现的技术的这样的模拟和测试,且因此被预期落在本发明的范围内。相应于这样的模拟和/或测试工具的计算机可读介质和数据也预期落在本发明的范围内。
虽然在某些特定的方面中描述了本发明,很多额外的修改和变化将对本领域中的技术人员明显。因此应理解,本发明可与具体描述的不同地被实施,而不偏离本发明的范围和精神。因此,本发明的实施方式应在所有方面被考虑为例证性的而不是限制性的。相应地,本发明的范围不应由所示实施方式确定而是由所附权利要求及其等效形式确定。
特别地,在权利要求中,术语“集成电路”意指集成逻辑和/或计算电路,包括(但不限于)处理器、状态机、门阵列、可编程门阵列、现场可编程门阵列和片上系统或可使用本发明的一个或多个分级网络和/或可根据本发明的一种或多种方法设计/制造的任何其它集成电路。
Claims (21)
1.一种集成电路中的分级网络,所述分级网络包括:
多个计算元件,其中所述多个计算元件具有M个输出和N个输入;以及
多个交换机,其被布置成交换机的级,其中:
所述多个计算元件经由路径连接到第一级中的交换机;
所述第一级中的交换机经由路径连接到所述多个计算元件和第二级中的交换机,其中所述第二级中的交换机经由路径连接到所述第一级中的交换机;
至少M+1个相邻的计算元件中的每一个被配置为经由所述第一级的一个交换机直接连接到至少两个最近邻计算元件;以及
每个计算元件被配置为与所述分级网络内的每个其它计算元件连接。
2.如权利要求1所述的集成电路中的分级网络,其中多个计算元件具有M个输出且多个计算元件具有M+1个输出,以及所述第一级中的多个交换机具有M个输入且所述第一级的多个交换机具有M+1个输入。
3.如权利要求2所述的集成电路中的分级网络,其中至少2M-1个计算元件具有M个输出,以及所述第一级的至少2M-1个交换机具有M个输入。
4.如权利要求3所述的集成电路中的分级网络,其中2M-1个计算元件具有M个输出,以及其余计算元件具有M+1个输出。
5.如权利要求2所述的集成电路中的分级网络,其中所述第一级的至少2M-1个交换机具有M-1个输出,以及所述第二级的至少2M-1个交换机具有M-1个输入。
6.如权利要求5所述的集成电路中的分级网络,其中所述第一级的2M-1个交换机具有M-1个输出,以及所述第一级的其余交换机具有M个输出。
7.如权利要求2所述的集成电路中的分级网络,其中所述第二级的至少2M个交换机具有M-1个输出,以及第三级的2M个交换机具有M-1个输入。
8.如权利要求7所述的集成电路中的分级网络,其中所述第二级的2M个交换机具有M-1个输出,以及所述第二级的其余交换机具有M个输出。
9.如权利要求1所述的集成电路中的分级网络,其中所述路径是双向双路径。
10.一种集成电路中的分级网络,所述分级网络包括:
多个计算元件,其中所述多个计算元件具有M个输出和N个输入;以及
多个交换机,其被布置成交换机的级,其中:
所述多个计算元件经由路径连接到第一级中的交换机;
所述第一级中的交换机经由路径连接到所述多个计算元件和第二级中的交换机,其中所述第二级中的交换机经由路径连接到所述第一级中的交换机;
多个计算元件具有M个输出且多个计算元件具有M+1个输出,以及所述第一级中的多个交换机具有M个输入且所述第一级中的多个交换机具有M+1个输入;以及
每个计算元件被配置为与所述分级网络内的每个其它计算元件连接。
11.一种用于在集成电路的分级网络的计算元件之间传输数据的方法,所述方法包括:
将数据从计算元件传输到所述分级网络内的第一级的交换机,其中所述分级网络包括:
多个计算元件,其具有M个输出和N个输入;以及
多个交换机,其被布置成交换机的级,其中:
所述多个计算元件经由路径连接到所述第一级中的交换机;并且
所述第一级中的交换机经由路径连接到所述多个计算元件和第二级中的交换机,其中所述第二级中的交换机经由路径连接到所述第一级中的交换机;以及
将数据从所述第一级中的所述交换机传输到另一计算元件,其中至少M+1个相邻的计算元件中的每一个被配置为经由所述第一级中的一个交换机将数据传输到至少两个最近邻计算元件。
12.如权利要求11所述的方法,其中多个计算元件具有M个输出且多个计算元件具有M+1个输出,以及所述第一级中的多个交换机具有M个输入且所述第一级中的多个交换机具有M+1个输入。
13.如权利要求12所述的方法,其中至少2M-1个计算元件具有M个输出,以及所述第一级中的至少2M-1个交换机具有M个输入。
14.如权利要求13所述的方法,其中2M-1个计算元件具有M个输出,以及其余计算元件具有M+1个输出。
15.如权利要求12所述的方法,其中所述第一级中的至少2M-1个交换机具有M-1个输出,以及所述第二级中的至少2M-1个交换机具有M-1个输入。
16.如权利要求15所述的方法,其中所述第一级中的2M-1个交换机具有M-1个输出,以及所述第一级中的其余交换机具有M个输出。
17.如权利要求12所述的方法,其中所述第二级中的至少2M个交换机具有M-1个输出,以及第三级中的2M个交换机具有M-1个输入。
18.如权利要求17所述的方法,其中所述第二级中的2M个交换机具有M-1个输出,以及所述第二级中的其余交换机具有M个输出。
19.如权利要求11所述的方法,其中所述路径是双向双路径。
20.一种集成电路中的分级网络,所述分级网络包括:
多个计算元件,其中所述多个计算元件具有M个输出和N个输入;以及
多个交换机,其被布置成交换机的级,其中:
所述多个计算元件经由路径连接到第一级中的交换机;
所述第一级中的交换机经由路径连接到所述多个计算元件和第二级中的交换机,其中所述第二级中的交换机经由路径连接到所述第一级中的交换机;
2M-1个计算元件具有M个输出,并且其余计算元件具有M+1个输出,其中所述第一级中的2M-1个交换机具有M个输入,并且其余交换机具有M+1个输入;
所述第一级中的2M-1个交换机具有M-1个输出,以及所述第一级中的其余交换机具有M个输出,其中所述第二级中的2M-1个交换机具有M-1个输入,并且所述第二级中的其余交换机具有M个输入;
所述第二级中的2M个交换机具有M-1个输出,并且所述第二级中的其余交换机具有M个输出;以及
每个计算元件被配置为与所述分级网络内的每个其它计算元件连接。
21.一种现场可编程门阵列,包括:
多个计算元件,其中所述多个计算元件具有M个输出和N个输入;以及
多个交换机,其被布置成交换机的级,其中:
所述多个计算元件经由路径连接到第一级中的交换机;
所述第一级中的交换机经由路径连接到所述多个计算元件和第二级中的交换机,其中所述第二级中的交换机经由路径连接到所述第一级中的交换机;
至少M+1个相邻的计算元件中的每一个被配置为能够经由所述第一级中的一个交换机连接到至少两个最近邻计算元件;以及
每个计算元件被配置为与所述现场可编程门阵列内的每个其它计算元件连接。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201361786676P | 2013-03-15 | 2013-03-15 | |
US61/786,676 | 2013-03-15 | ||
PCT/US2014/029407 WO2014144832A1 (en) | 2013-03-15 | 2014-03-14 | Network architectures for boundary-less hierarchical interconnects |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105191140A CN105191140A (zh) | 2015-12-23 |
CN105191140B true CN105191140B (zh) | 2018-11-30 |
Family
ID=51537811
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201480026152.7A Active CN105191140B (zh) | 2013-03-15 | 2014-03-14 | 无边界分级互连的网络架构 |
Country Status (6)
Country | Link |
---|---|
US (1) | US9817933B2 (zh) |
EP (2) | EP3480956B1 (zh) |
JP (1) | JP6518648B2 (zh) |
KR (1) | KR20150132246A (zh) |
CN (1) | CN105191140B (zh) |
WO (1) | WO2014144832A1 (zh) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9817933B2 (en) | 2013-03-15 | 2017-11-14 | The Regents Of The University Of California | Systems and methods for switching using hierarchical networks |
FI3709593T3 (fi) * | 2013-11-08 | 2023-07-07 | Huawei Tech Co Ltd | Datajakelumenetelmä ja liittyvät laitteet |
EP3259843B1 (en) | 2015-02-22 | 2022-03-02 | Flex Logix Technologies, Inc. | Mixed-radix and/or mixed-mode switch matrix architecture and integrated circuit, and method of operating same |
CN104865732A (zh) * | 2015-05-28 | 2015-08-26 | 京东方科技集团股份有限公司 | 彩膜基板及其制造方法、显示装置 |
US11178072B2 (en) | 2015-06-10 | 2021-11-16 | Mobileye Vision Technologies Ltd. | Image processor and methods for processing an image |
WO2018053527A1 (en) * | 2016-09-19 | 2018-03-22 | The Regents Of The University Of California | Selector switch |
US10169511B2 (en) * | 2017-03-29 | 2019-01-01 | International Business Machines Corporation | Method to synthesize a cross bar switch in a highly congested environment |
US10333508B2 (en) | 2017-03-29 | 2019-06-25 | International Business Machines Corporation | Cross bar switch structure for highly congested environments |
WO2019116106A2 (en) * | 2017-12-14 | 2019-06-20 | Mobileye Vision Technologies Ltd. | Image processor and methods for processing an image |
WO2019152725A1 (en) * | 2018-01-31 | 2019-08-08 | The Regents Of The University Of California | Optimizing connectivity in reconfigurable networks |
CN111124967A (zh) * | 2019-11-20 | 2020-05-08 | 安徽中骄智能科技有限公司 | 基于高通量计算平台的可局部强化互连的扩展系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1999033177A1 (en) * | 1997-12-22 | 1999-07-01 | Advanced Micro Devices, Inc. | Symmetrical, extended and fast direct connections between variable grain blocks in fpga integrated circuits |
US7233167B1 (en) * | 2000-03-06 | 2007-06-19 | Actel Corporation | Block symmetrization in a field programmable gate array |
US8098081B1 (en) * | 2010-06-21 | 2012-01-17 | Xilinx, Inc. | Optimization of interconnection networks |
Family Cites Families (37)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5850564A (en) | 1995-05-03 | 1998-12-15 | Btr, Inc, | Scalable multiple level tab oriented interconnect architecture |
JPH09307428A (ja) | 1996-05-14 | 1997-11-28 | Hitachi Ltd | 可変論理集積回路 |
US6289494B1 (en) * | 1997-11-12 | 2001-09-11 | Quickturn Design Systems, Inc. | Optimized emulation and prototyping architecture |
US6307852B1 (en) | 1998-04-09 | 2001-10-23 | Nortel Networks Limited | Rotator switch data path structures |
US6185220B1 (en) | 1998-06-15 | 2001-02-06 | Lucent Technologies, Inc. | Grid layouts of switching and sorting networks |
US6697957B1 (en) * | 2000-05-11 | 2004-02-24 | Quickturn Design Systems, Inc. | Emulation circuit with a hold time algorithm, logic analyzer and shadow memory |
US6693456B2 (en) | 2000-08-04 | 2004-02-17 | Leopard Logic Inc. | Interconnection network for a field programmable gate array |
US20060165085A1 (en) | 2001-09-27 | 2006-07-27 | Venkat Konda | Rearrangeably nonblocking multicast multi-stage networks |
US6885669B2 (en) | 2001-09-27 | 2005-04-26 | Teak Networks, Inc. | Rearrangeably nonblocking multicast multi-stage networks |
US6868084B2 (en) | 2001-09-27 | 2005-03-15 | Teak Networks, Inc | Strictly nonblocking multicast multi-stage networks |
US20070124565A1 (en) | 2003-06-18 | 2007-05-31 | Ambric, Inc. | Reconfigurable processing array having hierarchical communication network |
EP1489534A3 (en) * | 2003-06-20 | 2005-08-17 | Interuniversitair Microelektronica Centrum Vzw | A resource activity aware system for determining a resource interconnection pattern within an essentially digital device |
US20060159078A1 (en) | 2003-09-06 | 2006-07-20 | Teak Technologies, Inc. | Strictly nonblocking multicast linear-time multi-stage networks |
JP2007532037A (ja) | 2003-09-06 | 2007-11-08 | チーク テクノロジーズ,インク. | 厳密にノンブロッキングなマルチキャスト線形時間多段階ネットワーク |
CA2548540A1 (en) | 2003-09-06 | 2006-03-30 | Teak Technologies, Inc. | Rearrangeably nonblocking multicast multi-stage networks |
US7424010B2 (en) | 2003-09-06 | 2008-09-09 | Teak Technologies, Inc. | Strictly nonblocking multicast multi-split linear-time multi-stage networks |
US20060268691A1 (en) | 2005-05-31 | 2006-11-30 | International Business Machines Corporation | Divide and conquer route generation technique for distributed selection of routes within a multi-path network |
WO2008109756A1 (en) | 2007-03-06 | 2008-09-12 | Venkat Konda | Fully connected generalized multi-stage networks |
US8269523B2 (en) | 2007-05-25 | 2012-09-18 | Konda Technologies Inc. | VLSI layouts of fully connected generalized networks |
WO2008147926A1 (en) | 2007-05-25 | 2008-12-04 | Venkat Konda | Fully connected generalized butterfly fat tree networks |
US8363649B2 (en) | 2007-05-25 | 2013-01-29 | Konda Technologies Inc. | Fully connected generalized multi-link multi-stage networks |
US7924052B1 (en) | 2008-01-30 | 2011-04-12 | Actel Corporation | Field programmable gate array architecture having Clos network-based input interconnect |
CN101404491B (zh) * | 2008-05-23 | 2012-03-28 | 雅格罗技(北京)科技有限公司 | 一种具有交叉链接的可编程互连网络的集成电路 |
US9529958B2 (en) | 2014-10-24 | 2016-12-27 | Konda Technologies Inc. | VLSI layouts of fully connected generalized and pyramid networks with locality exploitation |
US8898611B2 (en) | 2009-10-16 | 2014-11-25 | Konda Technologies Inc. | VLSI layouts of fully connected generalized and pyramid networks with locality exploitation |
US8665727B1 (en) * | 2010-06-21 | 2014-03-04 | Xilinx, Inc. | Placement and routing for a multiplexer-based interconnection network |
US9432298B1 (en) * | 2011-12-09 | 2016-08-30 | P4tents1, LLC | System, method, and computer program product for improving memory systems |
WO2012154616A2 (en) * | 2011-05-06 | 2012-11-15 | Xcelemor, Inc. | Computing system with hardware reconfiguration mechanism and method of operation thereof |
CA2872831C (en) * | 2011-05-08 | 2019-10-29 | Infinetics Technologies, Inc. | Flexible radix switch |
WO2013036544A1 (en) | 2011-09-07 | 2013-03-14 | Venkat Konda | Optimization of multi-stage hierarchical networks for practical routing applications |
US9374322B2 (en) | 2014-03-06 | 2016-06-21 | Konda Technologies Inc. | Optimization of multi-stage hierarchical networks for practical routing applications |
US9509634B2 (en) | 2013-07-15 | 2016-11-29 | Konda Technologies Inc. | Fast scheduling and optmization of multi-stage hierarchical networks |
JP5779053B2 (ja) | 2011-09-09 | 2015-09-16 | 株式会社Nttドコモ | 基地局、ネットワーク装置及び通信制御方法 |
US9817933B2 (en) | 2013-03-15 | 2017-11-14 | The Regents Of The University Of California | Systems and methods for switching using hierarchical networks |
CN105164921B (zh) | 2013-03-15 | 2019-12-06 | 加利福尼亚大学董事会 | Fpga互连中的细粒度功率门控 |
US9077338B1 (en) * | 2014-05-20 | 2015-07-07 | Altera Corporation | Method and circuit for scalable cross point switching using 3-D die stacking |
EP3259843B1 (en) * | 2015-02-22 | 2022-03-02 | Flex Logix Technologies, Inc. | Mixed-radix and/or mixed-mode switch matrix architecture and integrated circuit, and method of operating same |
-
2014
- 2014-03-14 US US14/777,477 patent/US9817933B2/en active Active
- 2014-03-14 JP JP2016503086A patent/JP6518648B2/ja active Active
- 2014-03-14 KR KR1020157027905A patent/KR20150132246A/ko unknown
- 2014-03-14 EP EP18198493.1A patent/EP3480956B1/en active Active
- 2014-03-14 CN CN201480026152.7A patent/CN105191140B/zh active Active
- 2014-03-14 EP EP14765825.6A patent/EP2974025B1/en active Active
- 2014-03-14 WO PCT/US2014/029407 patent/WO2014144832A1/en active Application Filing
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1999033177A1 (en) * | 1997-12-22 | 1999-07-01 | Advanced Micro Devices, Inc. | Symmetrical, extended and fast direct connections between variable grain blocks in fpga integrated circuits |
US7233167B1 (en) * | 2000-03-06 | 2007-06-19 | Actel Corporation | Block symmetrization in a field programmable gate array |
US8098081B1 (en) * | 2010-06-21 | 2012-01-17 | Xilinx, Inc. | Optimization of interconnection networks |
Also Published As
Publication number | Publication date |
---|---|
JP2016512418A (ja) | 2016-04-25 |
EP2974025A4 (en) | 2017-02-15 |
EP3480956A3 (en) | 2019-08-14 |
EP3480956A2 (en) | 2019-05-08 |
WO2014144832A1 (en) | 2014-09-18 |
JP6518648B2 (ja) | 2019-05-22 |
CN105191140A (zh) | 2015-12-23 |
EP2974025A1 (en) | 2016-01-20 |
US9817933B2 (en) | 2017-11-14 |
KR20150132246A (ko) | 2015-11-25 |
US20160034625A1 (en) | 2016-02-04 |
EP3480956B1 (en) | 2021-01-06 |
EP2974025B1 (en) | 2018-10-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105191140B (zh) | 无边界分级互连的网络架构 | |
US10587269B2 (en) | Integrated circuit including an array of logic tiles, each logic tile including a configurable switch interconnect network | |
US10367756B2 (en) | Programmable logic device with integrated network-on-chip | |
US20130174113A1 (en) | Floorplan estimation | |
US20140115218A1 (en) | ASYMMETRIC MESH NoC TOPOLOGIES | |
CN108027789A (zh) | 具有多级仲裁的互连件的服务质量 | |
US20190266088A1 (en) | Backbone network-on-chip (noc) for field-programmable gate array (fpga) | |
CN105075199B (zh) | 具有到每一资源的多个分布式连接的直接网络系统 | |
US20220012177A1 (en) | Application mapping on hardened network-on-chip (noc) of field-programmable gate array (fpga) | |
CN105740199B (zh) | 芯片上网络的时序功率估算装置与方法 | |
CN111600735B (zh) | 一种样本数据的处理方法、系统及装置 | |
CN103914429B (zh) | 用于粗粒度动态可重构阵列的多模式数据传输互连器 | |
CN109582622A (zh) | 基于三维Mesh片上网络的双链路互连架构 | |
CN114896940B (zh) | 一种软件定义的晶圆级交换系统设计方法及装置 | |
Soleymani et al. | CLBM: controlled load-balancing mechanism for congestion management in silicon interposer NoC architecture | |
e Fizardo et al. | State of art of network on chip | |
Bose et al. | A scalable noc topology targeting network performance | |
Lafi et al. | An asynchronous hierarchical router for networks‐on‐chip‐based three‐dimensional multi‐processor system‐on‐chip | |
Zheng et al. | Fault tolerant application-specific NoC topology synthesis for three-dimensional integrated circuits | |
Meng et al. | A Study of Reconfigurable Switch Architecture for Chiplets Interconnection |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |