CN1938950B - 可编程逻辑的可扩展非阻断交换网络 - Google Patents

可编程逻辑的可扩展非阻断交换网络 Download PDF

Info

Publication number
CN1938950B
CN1938950B CN200580010432XA CN200580010432A CN1938950B CN 1938950 B CN1938950 B CN 1938950B CN 200580010432X A CN200580010432X A CN 200580010432XA CN 200580010432 A CN200580010432 A CN 200580010432A CN 1938950 B CN1938950 B CN 1938950B
Authority
CN
China
Prior art keywords
conductor
group
integrated circuit
conductors
switching network
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
Application number
CN200580010432XA
Other languages
English (en)
Other versions
CN1938950A (zh
Inventor
P·M·帕尼
B·S·廷
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Advantage Logic Inc
Original Assignee
Advantage Logic Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Advantage Logic Inc filed Critical Advantage Logic Inc
Priority to CN201110439666.3A priority Critical patent/CN102571073B/zh
Publication of CN1938950A publication Critical patent/CN1938950A/zh
Application granted granted Critical
Publication of CN1938950B publication Critical patent/CN1938950B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/02Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
    • H03K19/173Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
    • H03K19/177Logic 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
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/02Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
    • H03K19/173Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
    • H03K19/177Logic 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/17736Structural details of routing resources
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K17/00Electronic switching or gating, i.e. not by contact-making and –breaking
    • H03K17/002Switching arrangements with several input- or output terminals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/15Interconnection of switching modules
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/15Interconnection of switching modules
    • H04L49/1515Non-blocking multistage, e.g. Clos
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10TTECHNICAL SUBJECTS COVERED BY FORMER US CLASSIFICATION
    • Y10T29/00Metal working
    • Y10T29/49Method of mechanical manufacture
    • Y10T29/49002Electrical device making
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10TTECHNICAL SUBJECTS COVERED BY FORMER US CLASSIFICATION
    • Y10T29/00Metal working
    • Y10T29/49Method of mechanical manufacture
    • Y10T29/49002Electrical device making
    • Y10T29/49117Conductor or circuit manufacturing

Abstract

一种可扩展的非阻断交换网络,具有开关(151-160)和中介(分级的)导体用于在各个互连资源的约束内以无限制方式将第一组导体连接到其他多组导体。所述交换网络(200)应用广泛,协同或者级联的提供网络、路由器以及可编程逻辑电路中使用的大型交换网络。所述交换网络用于通过该交换网络将第一组导体(101-104)连接到给定逻辑电路分级中的多组导体,从而所述多组导体中各组中的导体为等效或者可互换的,使得所述第一组导体在下一级分级电路中使用时等效。所述交换网络可以扩展到很大的导体组并且可以分级使用以实现大型电路中的可编程互连。

Description

可编程逻辑的可扩展非阻断交换网络
技术领域
本发明的实施例涉及交换网络,并且尤其涉及使用了可编程逻辑电路的交换网络。 
背景技术
可编程逻辑电路也称为现场可编程门阵列(FPGA),是通用的集成逻辑电路,可以由用户编程以执行逻辑功能。电路设计者定义所需的逻辑功能并且电路被编程为按此处理信号。就逻辑密度需求和生产量而言,可编程逻辑电路在成本和时间方面为市场中的较优选择。典型的可编程逻辑电路由逻辑单元组成,其中各个逻辑单元可以编程为根据其输入变量执行逻辑功能。并且,在整个可编程逻辑电路中提供互连资源,所述互连资源可以编程为根据用户指定而将信号从逻辑单元的输出传送到逻辑单元的输入。 
随着技术进步,可以实现更大规模更复杂的可编程逻辑电路,电路中逻辑单元的数量和所需的互连资源的数量均增加。与逻辑单元和互连资源不断增加的数量相对应的是需要将电路保持在较小尺寸。一种最小化所需的电路尺寸的方法是最小化互连资源,同时保持一定级别的连接性。因此,随着芯片上实现的功能增加,需要连接大量信号的互连资源可能迅速被耗尽。折衷办法是在将电路保持在较小尺寸的同时提供更低的逻辑单元利用率,或者提供更多的连接资源,但是这样可能大幅度增加电路尺寸。 
在可编程逻辑电路领域过去四十年的发展中连接方式越来越复杂。L.M.Spandorfer在1965年描述了使用领域互连和使用Clos网络中的开关通过多个导体进行连接的可能的可编程逻辑电路的实现。R.G.Shoup在1970年他的博士论文中同时描述了使用领域互连和使用总线进行更长距离的互连。 
Freeman在1989年的美国专利4,870,302中描述了使用领域互连、短距离(长度1,称为单长度)互连以及例如时钟等信号的全局连接线的FPGA的商业实现。短距离互连与逻辑单元的输入和输出交互,其中各个输入通过开关连接到与逻辑单元相邻的各个短线并且水平和垂直短线通过接头中的开关盒连接。El Gamal等人在美国专利4,758,745中介绍了分段连接,其中逻辑单元的输入和输出与一维中不同长度的连接片段交互。 
Peterson等人在美国专利5,260,610中以及Cliff等人在美国专利5,260,611中介绍了与逻辑元件组连接的本地导体组,其中逻辑元件的各个输入通过开关连接到所述组中的各个本地导体。同时在水平方向和垂直方向上引入附加芯片长度导体,其中水平导体可以连接到垂直导体并且水平导体连接到多个本地导体。在美国专利4,870,302、4,758,745、5,260,610以及5,260,611中,逻辑单元的输入导体具有与所述本地导体组的全部连接(例如对于n输入和k本地导体,具有n×k个开关将输入连接到本地导体。还可以使用多路复用器(MUX)方法以减少晶体管数量)。在美国专利4,870,302、4,758,745、5,260,610以及5,260,611中,所有的互连资源被限制为一种或者两种不同的长度(即美国专利4,870,302中的单长度,美国专利5,260,610和5,260,611中的本地和芯片长度)或者限制为一维(即美国专利4,758,745中水平方向上的不同长度,美国专利5,260,610和5,260,611中的垂直方向上的本地长度)。 
Camarota等人在美国专利5,144,166中以及Kean在美国专利5,469,003中介绍了在二维中通过超过两种的不同长度的连接方法,但是限制了导体的范围。美国专利5,144,166允许各个线路选择性的通过超过一个的可能的驱动源进行驱动,但是美国专利5,469,003由于各个线路硬连接到MUX输出而受限于单方向。在美国专利5,144,166和5,469,003中提供的连接性非常低,因为每个连接是相邻或者相对本地的,或者逻辑单元自身可以作为互连资源 而不是执行逻辑功能。Ting在美国专利5,457,410、6,507,217、6,051,991、6,597,196中描述了多级架构,其中多种长度的导体通过分级的逻辑单元中的开关进行互连。 
Young等人在美国专利2001/0007428和美国专利5,914,616中描述了在二维中具有多种长度(每一维中三种长度)的线路的架构,其中对于短的本地连接,使用了近邻交叉条方法(near cross-bar scheme),其中一组逻辑单元输出被多路复用到减少的一组输出端口,然后所述输出端口连接到其他互连资源。较长的线路通常在各维中扇入(fan-in)长度更短的线路。Reddy等人在美国专利6,417,694中公开了另一种架构,其中使用了超区域间、区域间以及本地的导体。在最低层对本地线路使用交叉条方法(使用MUX)从而能够对逻辑元件的输入进行通用访问。Reddy等人在美国专利5,883,526中公开了在本地交叉条中具有电路缩减技术的各种方法。 
在分级电路的底层,通常使用具有四个输入的查找表(LUT)逻辑单元。使用LUT作为底层逻辑单元有两个优点。一个优点是电路允许对任何四个输入、一个输出的布尔函数进行可编程控制。另一个优点是四个输入可以互换并且逻辑等效。因此不管哪个信号连接到LUT的哪个输入引脚,只要四个信号连接到LUT的四个输入,LUT均能正常工作。 
在所有的可编程逻辑电路中需要解决的一个共同问题是互连接性,即如何将传送信号的第一组导体连接到多组导体以接收这些信号,其中发出所述信号的逻辑单元和接收所述信号的逻辑单元分布在集成电路中的广泛区域中(即M个逻辑单元的M个输出,其中各个输出连接到多个逻辑单元的输入)。一种高度理想化但是在很多情况下并不现实的解决方案是使用交叉条开关,其中第一组中的各个导体可以通过开关直接连接到多组导体中的各个导体。现有解决方案在某种程度上试图将连接性问题使用逐个击破的办法划分为多个子块,其中本地的逻辑单元群互相连接并且通过本地连接的延伸或者使 用更长距离的连接而延伸到其他的逻辑单元群。这些现有的互连方法很特别并且在很大程度上是基于经验的。理想的连接模型或者互连架构应当确保完全的可连接性,使得大量的输入和输出在任何时候在大部分电路上(通过可编程互连导体)连接到多组导体。 
需要复杂的软件跟踪互连资源,同时在使用可编程逻辑电路实现定制设计的布局布线阶段需要使用算法改善互连接性。因此,需要一种新的可编程逻辑电路的互连方法,其中在更全局的范围内可以确保连接性或者互连性,同时互连的成本保持很低,因为所需要的开关和实现定制设计时确定布局布线的软件复杂性得以简化。 
附图说明
本发明的目标、特征和优点通过下面的详细描述是显见的,其中: 
图1显示了使用可扩展的非阻断交换网络(SN)的具有四个四输入的逻辑单元和两个双稳态多谐振荡器的电路的实施例; 
图2显示了使用具有十一个M导体访问四组、每组四个N导体的0级(stage-0)可扩展的非阻断交换网络(0-SN)的电路的一个实施例; 
图3显示了使用两个0级可扩展的非阻断交换网络的电路的一个实施例,其中各个0-SN使用五个M导体访问四组、每组两个N导体; 
图4显示了使用1级可扩展的非阻断交换网络(1-SN)的电路的一个实施例,其中十一个M导体通过N组四个中介导体访问四组、每组四个N导体; 
图5显示了使用1级可扩展的非阻断交换网络的电路的一个实施例,其中十二个M导体通过更少的中介导体访问四组、每组四个N导体; 
图6显示了使用1级可扩展的非阻断交换网络的电路的一个实施例,其中十二个M导体通过更强的可连接性访问四组、每组四个N导体; 
图7显示了具有更少开关的缩减的1级可扩展的非阻断交换网络的一个 实施例; 
图8显示了更大尺寸的1级可扩展的非阻断交换网络的一个实施例; 
图9显示了具有十六个M导体的1级可扩展的非阻断交换网络的一个实施例; 
图10为显示2级可扩展的非阻断交换网络(2-SN)和具有四个图1所示的逻辑电路的电路的一个实施例的结构图,其中所述各个逻辑电路使用图9所示的可扩展的非阻断交换网络; 
图11A显示了图10所示的2级可扩展的非阻断交换网络的实施例的结构图; 
图11B显示了图11A所示的2级可扩展的非阻断交换网络的第一部分的一个实施例;以及 
图12显示了实现图11A所示的2-SN的第二部分的1级可扩展的非阻断交换网络的一个实施例。 
具体实施方式
首先描述了一种新型的可扩展的非阻断交换网络(SN),其中使用开关并且包括中介的导体级将第一组导体连接到多组导体,其中所述第一组导体中的各个导体能够通过SN连接到所述多组导体中的各个导体。所述可扩展的非阻断交换网络应用广泛,不管在单级或者多级分层中使用均能提供在开关、路由器以及可编程逻辑电路中使用的大型交换网络。可扩展的非阻断交换网络被用于通过所述SN将第一组导体连接到多组导体,其中所述多组导体中的各个导体为等价或者可互换的,例如,所述多组导体中的一组导体为逻辑单元的输入(可以为LUT的输入或者分级的逻辑单元的输入)。本发明的可扩展的非阻断交换网络允许所述第一组导体的任何子集通过所述SN连接到第二多组导体中的导体,从而所述子集中的各个导体可以连接到所述多 组导体中各组的各个导体。 
在下面的描述中,给出了大量特定细节以进行解释,从而提供对本发明的全面的理解。显然,对于本领域技术人员而言,本发明的实施例可以实施为不具有这些特定细节。在其他实施例中,公知的结构和电路以结构图形式显示以避免对本发明的不必要的模糊。为了进行描述,除非特别说明,术语程序控制开关和开关在本说明书中是可以互换的;术语程序配置的逻辑单元、逻辑单元、单元、查找表(LUT)、可编程逻辑单元在本说明书中是可以互换的;术语导体、信号、引脚、端口、线路在本说明书中是可以互换的。还应当注意,本发明描述了使用程序控制设备以设置所使用的开关的状态的实施例,所述控制设备可以为一次性的,例如熔丝/反熔丝(fuse/anti-fuse)技术,或者可重复编程的,例如SRAM(易失的),FLASH(非易失的),铁电材料(Ferro-electric)(非易失的)等等。因此本发明适合于各种工艺,包括但不限于静态随机访问存储器(SRAM),动态随机访问存储器(DRAM),熔丝/反熔丝,可擦除可编程只读存储器(EPROM),电擦除可编程只读存储器(EEPROM)例如FLASH,以及铁电材料工艺。 
在此描述的可编程逻辑电路中采用的可扩展的非阻断交换网络的概念可以被一般性的应用以允许多个导体与多组导体之间非限制性的连接,只要所需连接没有超过可用的导体数量。 
当程序控制的开关被用于对导体进行互连时,驱动器电路可以耦合到所述开关以提高信号通过这些导体的速度。并且,如果多个导体(信号)通过程序控制开关扇入到一个导体,则可以在需要时根据所使用的工艺技术使用MUX方法以减少导体负荷或者减小电路尺寸或者二者兼有。在使用MUX的情况下,多个开关被转换为新的开关机制,其中有效状态的数量与开关数量相同,通过选择特定状态(在使用多个开关时对应于特定开关)以连接两个导体,并且所述状态通过可编程控制而确定。 
描述了各种类型的可扩展的非阻断交换网络,包括但不限于:0级可扩展的非阻断交换网络(0-SN),1级可扩展的非阻断交换网络(1-SN),2级可扩展的非阻断交换网络(2-SN),以及对多级可扩展的非阻断交换网络的扩展,使用分级的可扩展的非阻断交换网络为可编程逻辑电路提供互连接性。 
图1显示了包含可扩展的非阻断交换网络200并且包含k个四输入逻辑单元(在此实施例中k=4)10、20、30和40以及两个双稳态多谐振荡器50和60的群(CLST4)电路100的实施例。各个逻辑单元10-40中,单元10具有四个输入101-104(N0[0-3]),单元20具有四个输入105-108(N1[0-3]),单元30具有四个输入109-112(N2[0-3]),以及单元40具有四个输入113-116(N3[0-3]),四个导体121-124分别作为单元10-40的四个输出。开关151-156和159、160用于控制逻辑单元输出驱动双稳态多谐振荡器还是逻辑单元直接输出到电路100的输出125-128。双稳态多谐振荡器50、60使用开关157、158、161和162输出到电路100的输出125-128。并且,导体131可以通过开关141驱动单元10的导体101并且通过开关142驱动单元20的导体105。类似的,导体132可以分别通过开关143和144驱动单元30和40。单元20可以通过输出122使用对导体133的开关145而驱动相邻的CLST4电路(图1中未显示)。单元40的输出124通过图1中的开关146驱动导体134。三个其他信号135-137分别作为SET、CLOCK和CLEAR控制双稳态多谐振荡器。并且,图1具有(X+1)个导体180(M[0-X]),使用交换网络MTX200扇入以驱动十六个输入101-116。导体M[0-X]180称为M导体,其中M等于图1中的实施例中导体的数量(X+1)。对于i=[0-(k-1)]的输入导体Ni[0-3]101-116称为Ni导体,其中Ni等于图1中的实施例中的输入数量(等于四)。作为示例,图1中显示了Ni=N=4。可替换的,各个Ni可以具有不同的大小而不会改变在此描述的连接特性。 
在图2显示的实施例中,图1中的MTX200表示为0级可扩展的非阻断交换网络(0-SN)300;各个N导体101-116可以连接到M导体的(M-N+1)导体(例如图1中的导体180)201-211(M[0-10]),因此图2所示的导体101-116的各个输入导体的开关数量对于图2中的0-SN300为(M-N+1)=8。交换网络0-SN300允许M导体201-211的任何子集使用300的开关驱动各个逻辑单元10-40中的一个输入导体而没有任何阻断,只要连接数量没有超过可用互连资源数量(即驱动任何逻辑单元的输入的M导体的数量不能超过逻辑单元的输入数量)。图2中的方法相对于交叉条连接是一种改进,其中代替包含M×(k×N)=11×(4×4)=176个开关的完全的开关阵列,开关的数量为(M-N+1)×(k×N)=128。图2中的0-SN300允许上述连接性,其中假定各个逻辑单元的四个输入可以互换或者逻辑等价(即图1中单元10的导体101-104为等价或者可互换的),从而在连接需求为将特定M导体连接到给定逻辑单元时仅需要将特定M导体(即M[4]导体205)连接到给定逻辑单元的任何输入引脚(即图1中单元10的导体101-104中使用开关222的导体101)。 
根据可编程电路中使用的技术,可以实现一定的面积最小化。例如,当使用具有六个晶体管的SRAM存储器单元对各个使用通过闸(passgate)实现的开关进行程序控制时,图2中每个输入线路101的八个开关221-228需要五十六个晶体管。相反的,可以使用具有三个存储比特的八个输入MUX以控制八个状态,从而有效替代八个SRAM比特和八个开关。在MUX方法中,三个比特、十四个通过闸(passgate)以及可能的一个取反器(用于重新产生信号)使用三十四个晶体管,这相对于将八个SRAM存储器单元作为各个开关的程序控制中使用的五十六个晶体管有大幅减少。使用MUX实现可以减少导体101上的负荷,但是八对一的MUX会产生附加延迟。 
在图3所示的实施例中,图1中的MTX200通过使用两个0级可扩展的非阻断交换网络330和320而表示,所述网络具有M=Ma+Mb=10个导体301-310,包含子组Ma=[A0-A4]=5个导体301-305和Mb=[B0-B4]=5个导体306-310。对于四个逻辑单元中的每一个的上部的两个输入导体(对于单元10包含导体101-102,对于单元20包含导体105-106,对于单元30为导体109-110以及对于单元40为导体113-114)各个Nb=2,并且对于k=4个逻辑单元中的每一个的下部的两个输入导体(对于单元10包含导体103-104,对于单元20包含导体107-108,对于单元30为导体111-112以及对于单元40为导体115-116)Na=2。对于图3中的全尺寸的0级可扩展的非阻断交换网络,每个输入导体具有(M-N+1)=10-4+1=7个程序控制的开关。相反的,在图3中的实施例中,输入开关的数量仅为四个,因为单独的Ma个导体和Mb个导体(Ma=Mb=5),并且数量N为拆分为两部分(Na=Nb=2)。这样,网络330中每个输入导体的程序控制开关的数量为Ma-Na+1=5-2+1=4并且网络320中每个输入导体使用的程序控制开关为Mb-Nb+1=4个。使用网络330连接到四个逻辑单元的下部两个输入的Ma导体301-305保持了图2所示的连接性(同样的,对于使用网络320连接到四个逻辑单元的上部两个输入的Mb导体306-310也类似),但是不能任意使用[A0-A4]、[B0-B4]扇入到四个逻辑单元。这种约束防止了通过图3中的两个0-SN 320和330将任意指定的M导体连接到N导体。然而,0级可扩展的非阻断交换网络320和330可以为提供可编程逻辑电路的良好连接性的经济实现,同时在记录并且跟踪所允许的M导体的使用时的软件耗费比图2中的方法更复杂。图3允许十个中的至少八个M导体任意连接到四个逻辑单元的输入,其中各个导体使用网络320和330连接到四个逻辑单元中每一个的一个输入。此处的约束为十个导体不能如同图2中一样的任意分配。
在本发明的实施例中,第一组导体使用交换网络连接到多组等价导体。因此提出了0-SN,其中具有(M-N+1)×N×k个开关用于提供第一组M 个导体与k组、每组N个导体之间的无限制的连接,其中M导体的任何子集可以通过0-SN连接到k组、每组N个导体中任何一组的一个导体而没有任何阻断。 
图4显示了可替换的实施例方法,其中所述交换网络中使用的开关数量可以很大程度的减少而不改变0-SN的连接性。在图4所示的实施例中,图1中的MTX200通过使用1级可扩展的非阻断交换网络(1-SN)而表示。1-SN400使用1-SN400的两个开关以及一个中介导体将导体401-411中的M导体连接到导体101-116中的N导体。图4中的1-SN400通过首先经开关437连接到中介导体454然后经子网络450中的开关441连接到N导体109而将M导体407(M[6])连接到N导体109,而不是通过图2中的使用了128个开关的网络300将M导体201-211直接连接到k组N导体101-116。类似的,可以分别通过开关442、443和444经相同的中介导体454将相同的M导体407连接到N导体101、105和113。图4中的1-SN400具有九十六个开关,这与图2中的0-SN300相比开光数量减少了25%。可以通过建立具有中介级互连的可扩展的非阻断交换网络而减少0-SN中所需的开关数量,在所述中介级互连中,各个M导体可以任意连接到k组N导体中任一组的导体。所述可扩展的非阻断交换网络能够将M导体连接到k组N导体中各组中的超过一个的导体,然而,在逻辑上并不需要连接到各组N导体中超过一个的导体。 
图4显示了具有N组中介导体Ii(i=[1-N])的1-SN400,其中有十一个M导体401-411,四组N导体,101-104,105-108,109-112以及113-116,并且k为4。第一组中介导体I1例如为与各个N导体的第一输入导体101、105、109和113关联的四个导体451-454,类似的,导体461-464为与导体104、108、112和116关联的I4导体。0-SN中N导体中各个导体的(M-N+1)个开关分布在图4中对应的Ii导体中。例如,耦合M导体401- 408的八个开关431-438分布到I1导体451-454,其中各个I1导体耦合到[(M-N+1)/I1]个开关(即两个)。在图4中的示例中,各个Ii导体中的中介导体的数量为四个。通常的,不同的Ii不需要为相同数量(如下所述)。图4中的1-SN400具有[(M-N+1)×N+sumi=[1-N](Ii×k)]=32+64=96个开关,其中Ii为N组Ii中介导体中各组的中介导体数量。图4中的1-SN400允许与图2中的各个0-SN300相同的连接性,通过1-SN400中的两个开关和一个中介导体将M导体中的任何导体连接到k组N导体中各组中的一个导体。 
在图4中的1-SN400中,M导体的任何N元组具有适当的开关选择以连接到不同的N组Ii导体。例如,导体401、404、405以及410为M导体的四元组(N=4),其中导体401通过开关431连接到(I1导体的)导体451;导体404通过开关446连接到(I2导体的)导体466;导体405通过开关447连接到(I3导体的)导体467;以及导体410通过开关427连接到(I4导体的)导体464;M导体的N元组的任何子集具有连接到中介导体的相同特性。并且,Ii导体中的各个中介导体可以连接到k组N导体中各组中的一个N导体。例如,导体451-454中的任何一个导体可以通过子网络450中的开关连接到导体101、105、109和113。类似的,导体461-464中的任何导体可以通过子网络420中的开关连接到导体104、108、112和116。 
图5显示了表示图1中表示的MTX200的1-SN的可替换实施例。在1-SN500中,具有十二个M导体501-512,四组N导体101-116,以及N组中介I1导体521-523,I2导体524-526,I3导体527-529,以及I4导体530-532,其中M=I1+I2+I3+I4或者Ii=M/N=3。图5中开关的数量为[(M-N+1)×N+sumi=[1-N](Ii×k)]=36+48=84。对应的0-SN具有144个开关并且交叉条具有192个开关。图5中的1-SN500的连接性与先前参考图4中的1-SN400讨论的相同,但是具有更少的中介导体和开关。 
图4和图5中的示例具有通过图4中的子网络450中的开关和图5中的子网络540中的开关分别连接到作为图1中的四个逻辑单元10-40的第一输入的导体101、105、109、113的第一组中介I1导体(图4中的导体451-454和图5中的导体521-523)。同样有效的一个可替换实施例是将各组Ii导体连接到四个逻辑单元中各个单元的任何一个导体(而不是第i个),只要该示例中的特定逻辑单元的四个输入被不同组的Ii导体所覆盖。 
图6显示了不同版本的1级可扩展的非阻断交换网络的一个实施例,具有比图5中的1-SN500更强的连接性。在需要更多开关的同时,1-SN600中的十二个M导体601-612(M[0]-M[11])可以连接到N组Ii中介导体621-623,624-626,627-629,630-632中各组中的所有导体。这与图4和图5中耦合到M个导体中的(M-N+1)个导体形成对比。在1-SN600中,导体601-612可以通过子网络620中的开关连接到I1导体621-623。导体601-612可以通过子网络640中的开关连接到I2导体624-626。导体601-612可以通过子网络650中的开关连接到I3导体627-629。导体601-612可以通过子网络660中的开关连接到I4导体630-632。图6中的十二个M导体601-612具有比图5中的1-SN500更强的连接性,其中可以程序选择M/Ii 导体中的一个导体连接到任何k组中的特定N个导体。作为示例,在图6的实施例中,(M导体中的)任何N元组导体601-604,605-608,609-612可以使用1-SN连接到四组(k=4)N导体中各组中的任何特定输入导体,但是各个四元组中的导体互相排斥于特定输入导体。图6中的1-SN600中所需的开关数量为[M×N+sumi=[1-N](Ii×k)]=48+48=96个开关。 
就所需开关而言,在图5中的情况下0-SN和1-SN之间的差别在于[(M-N+1)×N×k]和[(M-N+1)×N+sumi=[1-N](Ii×k)]之间的差别,其中M导体中的(M-N+1)个导体可以通过1-SN连接到N组Ii导体中各组中的Ii导体。就所需开关而言,在图6中的情况下0-SN和1-SN之间的差别 在于[M×N×k]和[M×N+sumi=[1-N](Ii×k)]之间的差别。如果我们简化为各个Ii=k,则M在图5中的情况下至少为[k+N+1/(k-1)]并且M至少为[k+1+1/(k-1)],值得注意的是,图5中的方法在M小于上述数量时仍然可以应用。并且,为了应用1-SN方案,各个中介导体的开关数量[(M-N+1)/Ii]不能超过N从而不至于失去SN的非阻断特性。数量[(M-N+1)/Ii]可以不为整数,在此情况下,使用对数量(M-N+1)/Ii进行舍入的整数Pi,其中sumi=[1-N]Pi=(M-N+1)。类似的,在图6中的情况下,使用M替代(M-N+1),从而Pi为(M/Ii)的舍入整数,其中sumi=[1-N]Pi=M。而且,在图4和图5中的示例中,中介导体的数量sumi=[1-N]Ii被限制为至少为M并且如果k×N大于M,则sumi=[1-N]Ii可以为M或者k×N或者其间的某个数。其中各个单独的Ii限制为M/N、k或者其间的某个数,并且由于M/N可能不是整数,Ii为M/N的舍入整数,因此可以看到,各个Ii可能在所有i(i=[1-N])上并不是相同的。 
在图7所示的实施例中,图6中实施例中的开关数量被减少的同时对1-SN的连接性没有显著改变。图7表示了如下减少,其中图6中的导体601缩短为到导体621,导体602缩短为到导体624,导体603缩短为到导体627,导体604缩短为到导体630。其中图6中的子网络670中的十六个开关被去除并且图7中开关的数量为八十个而不是图6中的九十六个。图7中的1-SN700除去子网络710、720、730以及740之外具有M个导体605-612,具有与图6中所示的1-SN 600一样强的连接性,并且为M=8的1-SN。可以进一步减少开关数量,例如通过将更多的M导体缩短为到中介导体,但是连接性会较大幅度的降低并且确定连接图案的软件耗费会变得更加复杂。 
图8显示了M=48、k=4、N=16和Ii=3(i=[1-16])的1-SN的实施例。由于在1-SN800中具有720个开关,0-SN需要2112个开关并且交叉条需要3072个开关。N组(N=16)Ii中介导体中的各组例如I16具有三个导体(在 子网络810内),其中I16导体耦合到图8中的(M-N+1)=33个M导体,各个中介导体通过子网络811中的十一个开关耦合到十一个M导体。通过在连接路径中引入中介导体和附加开关,与0-SN相比,1-SN800很大程度上减少了所需开关的数量。 
在各个实施例中,使用了M小于k×N的示例,并且M导体为传送扇入信号的导体,而k组N导体为接收这些扇入信号的导体。然而这并非一定的情况。可以提供M大于k×N的SN。可替换的,例如可以将图6中的导体101-104、105-108、109-112和113-116认为是四个逻辑单元群的十六个输出,并且使用1-SN以将输出从十六个减少到十二个,其中可以使用1-SN选择十六个输出中的十二个输出的任何子集。并且,各个附图中的导体101-104、105-108、109-112和113-116不一定为逻辑单元的输入或者输出,而是可以为多个等价导体,其中与多个等价导体的任何一个导体的连接是充分的,而不是与多个等价导体中的特定导体的连接。 
在设计可编程逻辑电路的互连架构时,基于工程的权衡取舍例如电路尺寸、布局布线定制特定的设计的软件的速度和简易度而提供合理的连接性和足够的互连资源很重要。M导体和k组N导体之间的比率为R,即R=M/(k×N)。如果R过小,则连接性相对于更大的R更加受限。例如在图6的电路中,R=0.75。在使用可扩展的非阻断交换网络构建分级电路时我们称R为扩张指数。在使用可扩展的非阻断交换网络设计可编程逻辑电路时通常使用的扩张指数在0.5和1.0之间,并且R的选择依赖于工程设计的权衡取舍(即逻辑利用、电路面积最小化、布局布线软件的复杂度等等)以及所使用的技术(例如SRAM,反熔丝等)等因素。某些时候在电路局部超过所述范围是优选的,例如在使用SN将大量输出减少到更少数量的输出减少的情况下。 
先前的讨论涉及使用可以用于构建分级电路以互连可编程逻辑单元的0-SN和1-SN,其中分级中的各个级别包含若干可编程逻辑电路,具有相关 联的0-SN和/或1-SN以使用各种可扩展的非阻断交换网络连接到电路中的各种导体。前述方法允许在电路分级的任意级别使用0-SN和1-SN连接到任意信号以实现分级内的任何逻辑单元的输入,只要存在可用的互连资源和逻辑容量。 
下面讨论使用1级和2级可扩展的非阻断交换网络分级构建可编程逻辑电路的方法。图9显示了图1中的CLST4电路100中的MTX电路200的一个实施例,使用了1级可扩展的非阻断交换网络,其中具有十六个M导体901-916,四组N导体101-104,105-108,109-112,113-116,其中N=4,以及N组Ii导体931-934,935-938,939-942,943-946,i=[1-N],其中Ii =M/N=4。在图9的实施例中扩张指数为1.0。 
通过使用图9中的1-SN900构建可编程电路,M导体901-916的任何子集可以通过1-SN900单独连接到k组N导体中各组中的一个导体。然后这些M导体自身变得逻辑等效。对于任何从图1中的CLST4电路100外的某处发出的连接到图1中的四个逻辑单元10-40中的四个输入(一个来自导体101-104,一个来自导体105-108,一个来自导体109-112,一个来自导体113-116)的信号,仅需要连接到M导体中的一个导体。因此,这些M导体901-916可以分级处理为N个导体(其中N=16),其中多个新的k组所述新的N个导体中的每一组具有包含四个逻辑单元和两个双稳态多谐振荡器以及1-SN的电路,通过新的交换网络例如SN选择性的通过新的M导体组连接。该过程将重复直到达到所需电路尺寸,同时所需电路允许如上所述的无限制的连接性。 
图10显示了使用图1中的四组CLST4100(图10中的CLST41010,CLST41020,CLST4 1030,CLST4 1040)的CLST16分级电路1000的下一级的实施例结构图,其中使用图9中的1-SN900和电路MTX161050的2级可扩展的非阻断交换网络实现电路MTX200,所述2级可扩展的非阻断交换网络具 有六十四个M导体,其中包含四十八个导体1055(M[0-47])和十六个导体1056(OW[0-7],OE[0-7])以及四组N导体1060、1070、1080、1090,其中各个N导体具有对应于图9中的十六个M导体901-916的十六个导体。在图10中,六十四个M导体1055和1056中的十六个导体1056直接连接到四个CLST4 100电路1010、1020、1030、1040的四个输出1065、1075、1085、1095。十六个导体1056(OW[0-7],OE[0-7])具有四组、每组四个导体,四个导体中的每个导体对应于图1中的CLST4电路100的四个输出125-128(0[0-3])。扩张指数R在电路1000中同样为1.0。 
图11A中显示了在分级电路的下一级中使用可扩展的非阻断交换网络将大量导体连接到多组导体。图11A以结构图形式显示了图10中的电路MTX161050的实施例,其中六十四个M导体1101(M[0-47],OW[0-7],OE[0-7])对应于图10中的导体1055和1056。中介导体的第一级包括N0(其中N0=4)组的十六个I0i导体(其中I0i=M/N0=16,对于i=[1-N0])1150、1160、1170和1180。M导体1101使用子网络1110、1120、1130和1140中的开关连接到第一个四组中介级I0i导体1150、1160、1170、1180。图11B显示了通过子网络1120将导体1101连接到导体1160的方法。通过子网络1110将导体1101连接到导体1150、通过子网络1130连接到导体1170、通过子网络1140连接到导体1180的连接方法与图11B中的子网络1120的连接方法相同。该实施例中在M导体1101和四组第一级中介导体1150、1160、1170、1180之间使用的开关数量为M×N0=256。如同参考图5所述,可替换实施为具有(M-N0+1)×N0个开关。 
图12显示了电路TA1 1165的实施例,其中导体1160为第二个N0组的I0i导体,其中i=2并且I0i=16。中介导体1201-1216(对应于图11A中的导体1160)连接到十六个导体1241-1256(对应于图11A中的导体1161-1164)。图11A的子网络1155、1175、1185与子网络1165的电路相同,分 别将导体1150、1170、1180连接到图11A中的导体1151-1154,1171-1174,1181-1184。 
在图12中,电路TA1为图11A中的1-SN1165,其中M导体1201-1216为图11A中的十六个中介I02导体1160(I1_1[0-15])。十六个中介导体1221-1236包括N1(=4)组I12j(I12j=M/N1=4)导体(i=2,j=[1-N1]):导体1221-1224、1225-1228、1229-1232、1233-1236。I12j导体分别连接到四组目标导体1241-1244,1245-1248,1249-1252,1253-1256(j=[1-N1])。图12中的1-SN1165使用与图9相同的1-SN900。然而,1-SN1165为图11A中的二级可扩展的非阻断交换网络(2-SN)1050的第二部分中的四个子网络(子网络1155、1165、1175、1185)中的一个,其中2-SN中的导体1151-1154、1161-1164、1171-1174、1181-1184分别为图10中的CLST4电路1010、1020、1030、1040中的M导体1060、1070、1080、1090。CLST4电路1010、1020、1030、1040中的每一个对应于图1中的CLST4电路100以及图9中的1-SN900。 
图12中的TA1电路1165选择性的将导体1201-1216连接到导体1241-1256。1241、1245、1249、1253为对应于图10中的CLST41010的十六个M导体1060中的四个导体(C0[0-15]中的C0[4-7])的图11A中的导体1161(N0[4-7])。类似的,导体1242、1246、1250、1254为对应于图10中的CLST41030的十六个M导体1080中的四个导体(C1[0-15]中的C1[4-7])的图11A中的导体1162(N1[4-7])。导体1243、1247、1251、1255为对应于图10中的CLST41020的十六个M导体1070中的四个导体(C2[0-15]中的C2[4-7])的图11A中的导体1163(N2[4-7])。导体1244、1248、1252、1256为对应于图10中的CLST41040的十六个M导体1090中的四个导体(C3[0-15]中的C3[4-7])的图11A中的导体1164(N3[4-7])。 
在图11A中的MTX1050电路的1-SN实现中,M=64,k=4,以及N=16。 
在2-SN实现中,各级中介导体组的数量为N0=4并且N1=4,其中乘积N0×N1等于N。使用图6和图9中所述的更强连接性的SN的图10中的2-SN1050中的开关数量为M×N0+sumi=[1-N0][(I0i×N1)+sumj=[1-N1](I1ij×(I0i /N1))],其中在网络1050中I0i=M/N0(i=[1-N0]),并且I1ij=IOi/N1(i=[1-N0],j=[1-N1]),从而I0i=16,I1ij=4,并且1050的2-SN具有768个开关。1-SN实现需要1280个开关,并且完全的交叉条开关需要4096个开关。在各个I0i导体连接到M导体中的(M-N0+1)个导体而不是M个导体,并且各个I1ij导体连接到I0i导体中的(I0i-N1+1)个导体而不是I0i个导体的情况下,开关数量为(M-N0+1)×N0+sumi=[1-N0][(I0i-N1+1)×N1)+sumj=[1-N1](I1ij×(I0i/N1))]。在图10中的情况下,N=N0×N1,I0i =M/N0,I1ij=M/N=k,从而此情况中的2-SN中的开关数量为[M×(N0+N1+k)]。 
如前所述,不同SN中的k组N导体中的每组N导体并不需要具有相同大小。SN可以构建为不同大小的Ni’,其中使用最大的Ni作为相同大小的新的N,并且可以添加虚拟导体和开关到更小的Ni使得Ni看上去为N。由于互连规定中不需要更小的Ni具有大于Ni的连接,SN的连接性没有改变。例如,与图1中四组N导体101-104、105-108、109-112、113-116分别作为逻辑单元10-40的输入不同的是,图1中的逻辑单元10仅具有三个输入101-103。在图6中具有M导体601-612的SN中,图6中的开关和中介导体621-632保持不变,除了其中子网络680中的三个开关和导体104为“虚拟”的并且可以从图6中的SN中移出。 
可以使用上述方法构建多级可扩展的非阻断交换网络,例如,图10中的MTX 1050可以实现为三级可扩展的非阻断交换网络,N0=2,N1=2,N2=4,第一中介I0i导体I0i=M/N0,I1ij=I0i/N1并且I2ijk=I1ij/N2(i=[1-N0],j=[1-N1]以及k=[1-N2]),其中N0×N1×N2=N=16为图10中四个CLST4 电路1010、1020、1030、1040中每一个的输入的数量。类似的,SN1050可以实现为4级SN,其中N0=2,N1=2,N2=2,N3=2,四个中介级导体将M个导体连接到N个导体。图10中的SN1050中的1-SN实现之上的2-SN实现将开关数量减少了N×M=16M和(N0+N1)×M=(4+4)×M=8M之间的差值。在3-SN和4-SN中,分别有(N0+N1+N2)=(2+2+4)=8以及(N0+N1+N2+N3)=(2+2+2+2)=8,相对于(N0+N1)=(4+4)=8的2-SN没有改进。这样,仅当各级的中介导体组的数量Ni的累加和小于前一级的多级SN时才有意义。因此,可以看到,对于N=64,使用N0=N1=N2=4(其中(N0+N1+N2)=12)的3-SN相对于使用N0=N1=8(其中(N0+N1)=16)的2-SN可以更加有效的减少开关,在N=64时2-SN相对于1-SN与上述情况类似。 
我们描述了使用可扩展的非阻断交换网络的两种级别的分级电路,其中六十四个M导体通过2-SN以及1-SN扇入连接到十六个四输入逻辑单元。六十四个M导体中的十六个导体直接连接到四个CLST4电路(图1中100的125-128)中各个电路的十六个输出,提供了从任何输出至所有十六个逻辑单元的无限制的连接。分级电路中的第一级包括图1中的CLST4电路100,MTX200实现为图9中的1-SN900,其中如图1所示,CLST4100具有四个四输入逻辑单元10-40和两个双稳态多谐振荡器50、60。分级电路的下一个更高的第二级为图10中的CLST16电路1000,具有包含图10所示的2-SN MTX161050的四个CLST4电路100,其中在图11A、图11B以及图12中显示了网络1050的实现。在CLST161000中,十六个输出1065、1075、1085、1095(直接连接到导体1056)中的每一个输出具有与CLST16电路1000中的每个逻辑单元的无限制的连接,并且图10中的其他48个M导体1055在构建下一级分级电路时可以认为是CLST161000中的N导体。对于图10中的四个CLST4电路1010、1020、1030、1040中的每一个电路中的图1中CLST4 100的十六个输出125-128可以直接连接到十六个M导体1056,M导体1056的输出可以进一步通过SN使用CLST16电路1000作为构建模块连接到第三级分级电路,并且其他四十八个M导体为CLST电路1000的等效引脚或者输入导体,从而在可编程逻辑电路中提供连续的高连接性。 
图10中的CLST电路1000显示了将四个1-SN级联在一起的2-SN,使用各种SN中的总共1280个开关将六十四个M导体1055、1056和十六个四输入逻辑单元组织在四个组1010、1020、1030、1040中。对于图10中的各组1010-1040,这些SN包括:图10中的SN1050和图1中的SN200。图10中的CLST电路1000可以使用图9所述方法进行可替换实施,其中使用具有六十四个M导体、k组(例如16)N(例如4)导体的1-SN。按照这样的分析,开关数量为M×(N+k)=1280。在此情况下,所述1-SN实施和图10中的实施例均具有相同的开关数量。 
根据工程考虑确定哪种实施更加合适,例如:图10实施例中的具有更多中介级导体的四输入MUX实施还是具有十六输入MUX和更少数量的中介级导体的1-SN实施更加适合于使用SRAM的技术,一种方式是否更加适合于布局实施等等。需要注意的是,基于上述分析,优选的提供合理大小的通过SN连接的逻辑单元基础阵列,从而在分级电路的下一级中使用另一个SN连接若干逻辑单元的基础阵列时耗费的开关总数不会超过实现更大的逻辑单元的基础阵列。在大多数的可编程逻辑电路中,(具有SN的逻辑单元阵列中的)基础逻辑单元通常具有三个输入或者四个输入,并且通过上述示例显见,基础逻辑阵列中的逻辑单元的数量k不会很小,或者依赖于N的大小,k×N对于SN应当为合理大小(例如图1中的CLST4电路100)以作为互连网络有效使用。 
使用各种实施例和示例,提供了对构建各种可扩展的非阻断交换网络的详细描述,并且通过使用各种组合以提供可编程逻辑电路的输入和输出的互 连接。基于技术和工程的考虑,可以使用可扩展的非阻断交换网络的变化实施,包括但是并不限于使用MUX减少存储控制的数量、减少开关数量等等。 

Claims (126)

1.一种集成电路,该集成电路包括:
多个数量为M的第一导体;
多个k组每组数量为N的第二导体,该第二导体的数量为k×N;以及
交换网络,其中M至少为k+N,其中k至少为2并且N至少为2;
其中所述交换网络包括:
多个开关;
多个数量为I0的第三导体,包括N0组每组数量为I0i的导体,i=[1-N0],其中N0至少为2,N至少为N0,I0至少等于M并且当M小 于k×N时I0在M和k×N之间;
所述多个数量为M的第一导体中的任何两个导体通过所述多个开关选择性地分别耦合到从至少两个不同的数量为I0p的导体和数量为I0q的导体中选择的至少两个不同导体而不需要跨越其他导体,其中p,q=[1-N0];
所述至少两个不同导体中的第一导体通过所述交换网络选择性地耦合到第一组数量至多为k×(M/N0)的导体,其中所述第一组数量至多为k×(M/N0)的导体最多具有来自所述k组、每组数量为N的导体中每一组的数量为M/N0的导体;以及
所述至少两个不同导体中的第二导体通过所述交换网络选择性地耦合到第二组数量至多为k×(M/N0)的导体,其中所述第二组数量至多为k×(M/N0)的导体最多具有来自所述k组、每组数量为N的导体中每一组的数量为M/N0的且与所述第一组数量至多为k×(M/N0)的导体不同的导体。
2.根据权利要求1所述的集成电路,其中所述数量为I0i的导体中的每一个导体选择性地通过所述交换网络耦合数量为k的导体而不需要跨越其他 导体。
3.根据权利要求2所述的集成电路,其中所述数量I0i至多为数量k×(N/N0)和数量M/N0中的较大者,并且其中所述多个开关的数量至少为(M-N+1)×N+M×k并且至多为M×(k+N)。
4.根据权利要求2所述的集成电路,其进一步包括k个可编程逻辑单元,所述k个可编程逻辑单元中的每一个具有N个输入导体,其中所述k个导体中的每一个对应于所述k个可编程逻辑单元的N个输入导体中的一个导体。
5.根据权利要求1所述的集成电路,其中M等于R×(k×N),其中R至少为0.5并且至多为1.0。
6.根据权利要求1所述的集成电路,其进一步包括:
多个数量为I1i的第四导体,选择性地耦合所述数量为I0i的导体,其中所述数量为I1i的导体包括N1组、每组数量为I1ij的导体,j=[1-N1],其中N1至少为2,其中
所述数量为I0i的导体中的任何两个导体通过所述多个开关选择性地耦合到所述数量为I1i的导体中的两个不同导体而不需要跨越其他导体,其中所述两个不同导体中的第三导体来自数量为I1ir的导体并且所述两个不同导体中的第四导体来自数量为I1is的导体,并且数量r不同于数量s,且r,s=[1-N1];
所述两个不同导体中的第三导体通过所述交换网络选择性地耦合来自所述k组每组数量为N的导体的第三组数量至多为k×(M/(N0×N1))的导体, 其中所述第三组数量至多为k×(M/(N0×N1))的导体最多具有来自所述k组每组数量为N的导体中每一组的数量为M/(N0×N1)的导体;以及
所述两个不同导体中的第四导体通过所述交换网络选择性地耦合来自所述k组、每组数量为N的导体的第四组数量至多为k×(M/(N0×N1))的导体,其中所述第四组数量至多为k×(M/(N0×N1))的导体最多具有来自所述k组、每组数量为N的导体中每一组的数量为M/(N0×N1)的且与所述第三组数量至多为k×(M/(N0×N1))的导体不同的导体。
7.根据权利要求6所述的集成电路,其中所述数量为I1ij的导体中的每一个导体选择性地通过所述交换网络耦合数量为k的导体而不需要跨越其他导体。
8.根据权利要求7所述的集成电路,其进一步包括k个可编程逻辑单元,所述k个可编程逻辑单元中的每一个具有N个输入导体,其中所述k个导体中的每一个对应于所述k个可编程逻辑单元的N个输入导体中的一个导体。
9.根据权利要求7所述的集成电路,其中所述数量I1ij至多为数量k×(N/(N0×N1)和数量M/(N0×N1)中的较大者,并且所述多个开关最多包含M×(N0+N1+k)个开关。
10.根据权利要求1所述的集成电路,其中所述多个开关中的每一个至少包含一个程序控制的通过闸。
11.根据权利要求1所述的集成电路,其中所述多个开关中的每一个至少包含一个程序控制的驱动器/接收器。 
12.根据权利要求1所述的集成电路,其中所述多个开关至少包含程序控制的驱动器/接收器和程序控制的通过闸中的一者。
13.根据权利要求1所述的集成电路,其中所述多个开关中的每一个具有程序控制的开启状态和关闭状态。
14.根据权利要求1所述的集成电路,其中所述集成电路使用包含存储设备的工艺技术而实现。
15.根据权利要求1所述的集成电路,其中所述集成电路使用包含非易失存储设备的工艺技术而实现。
16.根据权利要求1所述的集成电路,其中所述集成电路使用包含熔丝设备的工艺技术而实现。
17.根据权利要求1所述的集成电路,其中所述集成电路使用包含反熔丝设备的工艺技术而实现。
18.根据权利要求1所述的集成电路,其中所述集成电路使用包含铁电材料设备的工艺技术而实现。
19.根据权利要求1所述的集成电路,其中M由R×(k×N)确定,其中R至少为0.5并且至多为1.0。
20.一种在集成电路中实现连接性的方法,所述集成电路包括多个数量为M的第一导体,多个k组每组数量为N的第二导体,该第二导体的数量 为k×N,以及交换网络,其中M至少为k+N,其中k至少为2并且N至少为2,其中所述交换网络包括多个开关和多个数量为I0的第三导体,所述数量为I0的导体包括N0组、每组数量为I0i的导体,i=[1-N0],其中N0至少为2,N至少为N0,I0至少等于M并且当M小于k×N时I0在M和k×N之间,其中所述方法包括:
将所述多个数量为M的第一导体中的任何两个导体通过所述多个开关选择性地分别耦合到从至少两个不同的数量为I0p的导体和数量为I0q的导体中选择的至少两个不同导体而不需要跨越其他导体,其中p,q=[1,N0];
将所述至少两个不同导体中的第一导体通过所述交换网络选择性地耦合到第一组数量至多为k×(M/N0)的导体,其中所述第一组数量至多为k×(M/N0)的导体最多具有来自所述k组、每组数量为N的导体中每一组的数量为M/N0的导体;以及
将所述至少两个不同导体中的第二导体通过所述交换网络选择性地耦合到第二组数量至多为k×(M/N0)的导体,其中所述第二组数量至多为k×(M/N0)的导体最多具有来自所述k组、每组数量为N的导体中每一组的数量为M/N0的且与所述第一组数量至多为k×(M/N0)的导体不同的导体。
21.根据权利要求20所述的方法,其进一步包括将所述数量为I0i的导体中的每一个导体选择性地通过所述交换网络耦合到数量为k的导体而不需要跨越其他导体。
22.根据权利要求21所述的方法,其中所述数量I0i至多为数量k×(N/N0)和数量M/N0中的较大者,并且其中所述多个开关的数量至少为(M-N+1)×N+M×k并且至多为M×(k+N)。 
23.根据权利要求21所述的方法,其进一步包括k个可编程逻辑单元,所述k个可编程逻辑单元中的每一个具有N个输入导体,其中所述k个导体中的每一个对应于所述k个可编程逻辑单元的N个输入导体中的一个导体。
24.根据权利要求20所述的方法,其中M等于R×(k×N),其中R至少为0.5并且至多为1.0。
25.根据权利要求20所述的方法,其进一步包括:
将多个数量为I1i的第四导体选择性地耦合到所述数量为I0i的导体,其中所述数量为I1i的导体包括N1组、每组数量为I1ij的导体,j=[1-N1],其中N1至少为2;
将所述I0i个导体中的任何两个导体通过所述多个开关选择性地耦合到所述I1i个导体中的两个不同导体而不需要跨越其他导体,其中所述两个不同导体中的第三导体来自数量为I1ir的导体并且所述两个不同导体中的第四导体来自数量为I1is的导体,并且数量r不同于数量s,且r,s=[1-N1];
将所述两个不同导体中的第三导体通过所述交换网络选择性地耦合到来自所述k组、每组数量为N的导体的第三组数量至多为k×(M/(N0×N1))的导体,其中所述第三组数量至多为k×(M/(N0×N1))的导体最多具有来自所述k组、每组数量为N的导体中每一组的数量为M/(N0×N1)的导体;以及
将所述两个不同导体中的第四导体通过所述交换网络选择性地耦合到来自所述k组、每组数量为N的导体的第四组数量至多为k×(M/(N0×N1))的导体,其中所述第四组数量至多为k×(M/(N0×N1))的导体最多具有来自所述k组、每组数量为N的导体中每一组的数量为M/(N0×N1)的且与所述第三组数量至多为k×(M/(N0×N1))的导体不同的导体。 
26.根据权利要求25所述的方法,其进一步包括将所述数量为I1ij的导体中的每一个导体选择性地耦合到数量为k的导体而不需要跨越其他导体。
27.根据权利要求26所述的方法,其进一步包括k个可编程逻辑单元,所述k个可编程逻辑单元中的每一个具有N个输入导体,其中所述k个导体中的每一个对应于所述k个可编程逻辑单元的N个的输入导体中的一个导体。
28.根据权利要求26所述的方法,其中所述数量I1ij至多为数量k×N/(N0×N1)和数量M/(N0×N1)中的较大者,并且所述多个开关最多包含M×(N0+N1+k)个开关。
29.一种集成电路,所述集成电路包括:
数量至多为k的功能块;
可升级的交换网络,该交换网络包括:
多个N组第一开关,其中N大于1;
具有引脚数量为M的第一端口,其中M至多等于k×N;
其中交换网络还包括:第一组数量为I的导体,其中I的范围在M和k×N之间,并且I个导体被分成每组数量为Ij的N组,j={1,...N},其中Ij约等于I/N,其中第一端口的数量为M-N+1到M之间的引脚通过多个N组第一开关的各个开关组而选择性地耦合到第一组数量为I的导体的N组每组数量为Ij的每一组导体而不需要跨越其他导体,其中各个开关组具有数量范围在M-N+1到M之间的X的开关;
交换网络还包括多个N组第二开关以及多个数量为N的第二端口,其中多个数量为N的第二端口的每一个端口具有数量至多为k的引脚,其中k 至少等于最大的Ij,j={1,...N},其中数量为Ij的N组导体的数量为Ij的每一个导体被配置成通过多个N组第二开关的各个开关组而选择性地耦合到多个数量为N的第二端口的各个端口的数量至多为k的引脚而不需要跨越其他导体,其中各个开关组具有Ij×至多k个开关;以及
其中在多个数量为N的第二端口的每一个端口的数量至多为k的每一个引脚物理连接到在数量至多为k的功能块的N个引脚的各个引脚。
30.根据权利要求29所述的集成电路,其中每一个功能块是基本上逻辑相同的,并且其中k个功能块的每一个包括具有引脚数量至多为N的端口。
31.根据权利要求29所述的集成电路,其中交换网络的第一端口的引脚被配置成选择性地耦合到多个数量为N的第二端口的引脚,所述耦合专用地按顺序通过交换网络的多个N组第一开关、第一组数量为I的导体以及多个N组第二开关。
32.根据权利要求29所述的集成电路,其中开关包括程序控制的通过闸。
33.根据权利要求29所述的集成电路,其中开关包括程序控制的驱动器/接收器。
34.根据权利要求29所述的集成电路,其中开关包括程序控制的通过闸以及驱动器/接收器。
35.根据权利要求29所述的集成电路,其中至少有一个开关具有程序控制的开启状态和关闭状态。 
36.根据权利要求29所述的集成电路,其中至少有一个开关由单一反熔丝设备组成。
37.一种方法,该方法包括:
提供数量至多为k的功能块,每一个功能块是基本上逻辑相同的,每一个功能块包括具有引脚数量至多为N的端口,其中k和N均大于1;
为可升级的交换网络提供具有引脚数量为M的第一端口,其中M至多等于k×N,以及多个N组第一开关;
为交换网络提供第一组数量为I的导体,其中I的范围在M和k×N之间,并且I个导体被分成数量为Ij的N组的导体,j={1,...N},其中Ij约等于I/N;
选择性地将第一端口的数量为M-N+1到M之间的引脚通过多个N组第一开关的各个开关组耦合到第一组数量为I的导体的N组、每一组数量为Ij的导体而不需要跨越其他导体,其中各个开关组具有数量范围在M-N+1到M之间的X的开关;
为交换网络提供多个N组第二开关以及多个数量为N的第二端口,其中N个端口的每一个具有数量至多为k的引脚,其中k至少等于最大的Ij,j={1,...N};
选择性地将N组每组数量为Ij的导体的每一组的Ij个导体通过多个N组第二开关的各个开关组耦合到多个数量为N的第二端口的各个端口的数量至多为k的引脚而不需要跨越其他导体,其中各个开关组具有Ij×至多k个开关;以及
将在多个数量为N的第二端口的每一个端口的数量至多为k的每一个引脚物理连接到在数量至多为k的功能块的N个引脚的各个引脚。 
38.根据权利要求37所述的方法,选择性地将交换网络的第一端口的引脚与多个数量为N的第二端口的引脚相耦合,所述耦合专用地按顺序通过交换网络的多个N组第一开关、第一组数量为I的导体以及多个N组第二开关。
39.根据权利要求37所述的方法,其中至少有一个开关包括驱动器/接收器以及程序控制的通过闸。
40.根据权利要求37所述的方法,其中至少有一个开关具有程序控制的开启状态和关闭状态。
41.根据权利要求37所述的方法,其中至少有一个开关由单一反熔丝设备组成。
42.一种电子系统,该系统包括:
可升级的交换网络,该交换网络包括:具有引脚数量为M的第一端口,在N个端口的每一个具有至多k个引脚的多个N个第二端口,数量为j的整数Nj其中N1等于1并且如果j大于1那么Nj大于1,数量为j的多个开关以及j+1组导体其中j组中的每一组具有Ij个导体,如果j大于2那么Ij的范围在M和k×N之间,其中多个N个第二端口的每一个引脚通过j+1组导体和数量为j的多个开关而专用地选择性地耦合到第一端口的至多M-N2+1个引脚;
第一端口的每一个引脚被物理连接到具有I1个导体的j+1组导体的第一组导体的各个导体,其中j+1组导体的第j+1组导体具有k×N个的导体,其中I1等于M; 
具有I2个导体的j+1组导体的第二组导体被分成每组具有数量为I2(i)的N2组导体,i={1,...N2},其中各个I2(i)约等于I2/N2,其中第一组导体的数量为I1-N2+1到I1之间的导体通过j个多个开关的多个第一开关的数量为X的开关而选择性地耦合到数量为I2的第二组导体的I2(i)个导体的每一个,其中X的范围在I1-N2+1到I1之间;
具有I3个导体的j+1组导体的第三组导体被分成每组具有数量为I3(q)的N2组导体,q={1,...N2},其中各个I3(q)约等于I3/N2,数量为I3(q)的每一个导体进一步被分成数量为I3(q,s)的N3组导体,s={1,...N3},其中各个I3(q,s)约等于I3/N2/N3,其中I2个的第二组导体的数量为I2(i)-N3+1到I2(i)之间的导体通过j个多个开关的多个第二开关的Y个开关而选择性地耦合到第三组导体的数量为I3(i,r)的导体的每一个,r={1,...N3},其中Y的范围在I2(i)-N3+1到I2(i)之间。
43.根据权利要求42所述的电子系统,其中N2和N3是N的整数约数。
44.根据权利要求43所述的电子系统,其中数量为I3(i,r)的每一个导体通过j组开关的第三组的开关的I3(i,r)×至多k个开关选择性地耦合到j+1组导体的第四组导体的数量至多为k的导体的各个导体。
45.根据权利要求44所述的电子系统,其中数量至多为k的每一个导体物理连接到多个N个第二端口的各个端口的至多k个引脚。
46.根据权利要求45所述的电子系统,还包括在至多k个功能块,其中每一个功能块具有至少一个端口,每一个端口具有至多N个引脚,其中多个N个第二端口的端口的至多k个引脚的每一个引脚物理连接到至多k个功 能块的之一的至少一个端口的各个引脚。
47.根据权利要求46所述的电子系统,其中电子系统是在集成电路中实施的。
48.根据权利要求47所述的电子系统,其中至少有一个开关包括驱动器/接收器以及程序控制的通过闸。
49.根据权利要求47所述的电子系统,其中至少有一个开关具有程序控制的开启状态和关闭状态。
50.根据权利要求47所述的电子系统,其中至少有一个开关由单一反熔丝设备组成。
51.根据权利要求42所述的电子系统,后续的具有数量为I4的导体的j+1组导体的第四组导体继续被分成N2×N3×N4组、每组数量为I4(q,s,t)的导体,t={1,...N4},其中各个I4(q,s,t)约等于I4/N2/N3/N4,其中I3个第三组导体的数量为I3(I,r)-N4+1到I3(I,r)之间的导体通过j个多个开关的多个第三开关的Z个开关而选择性地耦合到第三组导体的数量为I4(i,r,v)的每一个导体,v={1,...N4},其中Y的范围在I3(I,r)-N4+1到I3(I,r)之间。
52.根据权利要求51所述的电子系统,其中N2和N3是N的整数约数。
53.根据权利要求52所述的电子系统,其中电子系统是在集成电路中实施的。 
54.根据权利要求53所述的电子系统,其中至少有一个开关包括驱动器/接收器以及程序控制的通过闸。
55.根据权利要求53所述的电子系统,其中至少有一个开关具有程序控制的开启状态和关闭状态。
56.根据权利要求53所述的电子系统,其中至少有一个开关由单一反熔丝设备组成。
57.一种用于提供电子系统的方法,该方法包括:
提供可升级的交换网络,该交换网络具有:具有引脚数量为M的第一端口、在N个端口的每一个端口具有至多k个引脚的多个N个第二端口、数量为j的整数Nj其中N1等于1并且如果j大于1那么Nj大于1,数量为j的多个开关以及j+1组导体其中j组中的每一组具有数量为Ij个导体,如果j大于2那么Ij的范围在M和k×N之间;
将多个N个第二端口的每一个引脚通过j+1组导体和j个多个开关而专用地选择性地耦合到第一端口的至多M-N2+1个引脚;
将第一端口的每一个引脚物理连接到具有数量为I1的导体的j+1组导体的第一组导体的各个导体,其中j+1组导体的第j+1组导体具有数量为k×N的导体,其中I1等于M;
将具有数量为I2的导体的j+1组导体的第二组导体分成每组具有数量为I2(i)的N2组导体,i={1,...N2},其中各个I2(i)约等于I2/N2,其中第一组导体的数量为I1-N2+1到I1之间的导体通过j个多个开关的多个第一开关的数量为X的开关而选择性地耦合到数量为I2的第二组导体的数量为I2(i)的每一个导体,其中X的范围在I1-N2+1到I1之间;以及 
首先将具有I3个导体的j+1组导体的第三组导体分成每组具有数量为I3(q)的N2组导体,q={1,...N2},其中各个I3(q)约等于I3/N2,再将每一个数量为I3(q)的导体进一步被分成每组数量为I3(q,s)的N3组导体,s={1,...N3},其中各个I3(q,s)约等于I3/N2/N3,其中数量为I2的第二组导体的数量为I2(i)-N3+1到I2(i)之间的导体通过j个多个开关的多个第二开关的数量为Y的开关而选择性地耦合到第三组导体的每一个数量为I3(i,r)的导体,r={1,...N3},其中Y的范围在I2(i)-N3+1到I2(i)之间。
58.根据权利要求57所述的方法,其中N2和N3是N的整数约数。
59.根据权利要求58所述的方法,其中数量为的每一个导体通过j组开关的第三组的开关的数量为I3(i,r)×至多k的开关选择性地耦合到各个j+1组导体的第四组导体的数量至多为k的导体。
60.根据权利要求59所述的方法,其中数量至多为k的每一个导体物理分别连接到多个N个第二端口的端口的至多k个引脚。
61.根据权利要求60所述的方法,还提供在至多k个功能块,其中每一个功能块具有至少一个端口,每一个端口具有至多N个引脚,其中多个N个第二端口的端口的至多k个引脚的每一个引脚物理连接到至多k个功能块的之一的至少一个端口的各个引脚。
62.根据权利要求61所述的方法,其中电子系统是在集成电路中实施的。
63.根据权利要求62所述的方法,其中至少有一个开关包括驱动器/接 收器以及程序控制的通过闸。
64.根据权利要求62所述的方法,其中至少有一个开关具有程序控制的开启状态和关闭状态。
65.根据权利要求62所述的方法,其中至少有一个开关由单一反熔丝设备组成。
66.根据权利要求57所述的方法,还提供并且后续将具有I4个导体的j+1组导体的第四组导体继续分成N2×N3×N4组每组I4(q,s,t)个导体,t={1,...N4},其中各个I4(q,s,t)约等于I4/N2/N3/N4;以及将数量为I3的第三组导体的数量为I3(I,r)-N4+1到I3(I,r)之间的导体通过j个多个开关的多个第三开关的数量为Z的开关而选择性地耦合到第三组导体的数量为I4(i,r,v)的每一个导体,v={1,...N4},其中Y的范围在I3(I,r)-N4+1到I3(I,r)之间。
67.根据权利要求66所述的方法,其中N2、N3和N4是N的整数约数。
68.根据权利要求67所述的方法,其中电子系统是在集成电路中实施的。
69.一种集成电路,该集成电路包括:
第一交换网络,该交换网络包括:
多个数量为M的第一导体;
多个k组每组数量为N的第二导体,其中N大于2并且k大于2;
多个数量为I的第三导体,包括:
多个N组每组数量为q的第四导体,其中q约等于M/N; 
多个第一开关, 
其中通过多个第一开关,多个M个第一导体的M个导体的每一个选择性地耦合到多个数量为I的第三导体, 
其中多个M个第一导体的M个导体的每一个导体选择性地耦合到多个N组每组数量为q的第四导体的每一组的q个导体之一; 
多个第二开关, 
其中通过多个第二开关,多个N组每组数量为q的第四导体的每一组的q个导体的每一个导体选择性地耦合到多个N组每组数量为k的导体的各个组的一组中的所有导体而不需要跨越其他导体。 
70.根据权利要求69所述的集成电路, 
其中通过多个第一开关,多个M个导体的数量为M的每一个导体选择性地耦合到多个N组每组数量为q的导体的数量为q的第四导体之一而不需要跨越其他导体。 
71.根据权利要求69所述的集成电路,还包括: 
多个数量为I的第三导体的多个D1组每组数量为I1的第五导体, 
其中D1至少是2, 
多个N组每组数量为q的第四导体被分为D1组N/D1组每组数量为q的导体, 
其中N/D1至少是2, 
其中通过多个第一开关,多个D1组每组数量为I1的第五导体的D1组的每组数量为I1的每一个导体选择性地耦合到D1组N/D1组每组数量为q的导体的N/D1组每组数量为q的导体的各个组的q个导体之一而不需要跨越其他导体。 
72.根据权利要求71所述的集成电路, 
其中通过多个第一开关,多个M个第一导体的数量为M的每一个导体选择性地耦合到多个D1组每组数量为I1的第五导体的每一组的I1个的导体之一而不需要跨越其他导体。 
73.根据权利要求71所述的集成电路,还包括: 
多个数量为I的第三导体的多个D2组每组数量为I2的第六导体, 
其中D2至少是2, 
多个D1组每组数量为I1的第五导体被分为D2组D1/D2组每组数量为I1的导体, 
其中D1/D2大于1, 
其中通过多个第一开关,多个D2组每组数量为I2的第五导体的D2组的每组数量为I2的每一个导体选择性地耦合到D2组D1/D2组每组数量为I1的导体的D1/D2组每组数量为I1的导体的各个组的I1个导体之一而不需要跨越其他导体。 
74.根据权利要求73所述的集成电路, 
其中通过多个第一开关,多个M个第一导体的数量为M的每一个导体选择性地耦合到多个D2组每组数量为I2的第六导体的各个组的I2个的导体之一而不需要跨越其他导体。 
75.根据权利要求73所述的集成电路,还包括: 
多个数量为I的第三导体的多个D3组每组数量为I3的第七导体, 
其中D3至少是2, 
多个D3组每组数量为I3的第六导体被分为D3组D2/D3组每组数量为I2的导体, 
其中D2/D3大于1, 
其中通过多个第一开关,多个D2组每组数量为I2的第七导体的D3组的每组数量为I3的每一个导体选择性地耦合到D3组D2/D3组每组数量为I2的导体的D2/D3组每组数量为I2的导体的各个组的I2个导体之一而不需要跨越其他导体。 
76.根据权利要求75所述的集成电路, 
其中通过多个第一开关,多个M个第一导体的数量为M的每一个导体选择性地耦合到多个D3组每组数量为I3的第七导体的各个组的I3个的导体之一而不需要跨越其他导体。 
77.根据权利要求70所述的集成电路, 
其中N大于4并且k大于4。 
78.根据权利要求70所述的集成电路,还包括: 
多个交换网络,每一个基本上近似于第一交换网络。 
79.根据权利要求72所述的集成电路,还包括: 
多个交换网络,每一个基本上近似于第一交换网络。 
80.根据权利要求74所述的集成电路,还包括: 
多个交换网络,每一个基本上近似于第一交换网络。 
81.根据权利要求76所述的集成电路,还包括: 
多个交换网络,每一个基本上近似于第一交换网络。 
82.根据权利要求78所述的集成电路, 
其中用于各个多个交换网络的每一个的多个第一开关和多个第二开关以及多个数量为I的第三导体基本上位于第一区域内。 
83.根据权利要求79所述的集成电路, 
其中用于各个多个交换网络的每一个的多个第一开关和多个第二开关以及多个数量为I的第三导体基本上位于第一区域内。 
84.根据权利要求80所述的集成电路, 
其中用于各个多个交换网络的每一个的多个第一开关和多个第二开关以及多个数量为I的第三导体基本上位于第一区域内。 
85.根据权利要求81所述的集成电路, 
其中用于各个多个交换网络的每一个的多个第一开关和多个第二开关以及多个数量为I的第三导体基本上位于第一区域内。 
86.根据权利要求82所述的集成电路, 
其中该集成电路是现场可编程门阵列。 
87.根据权利要求83所述的集成电路, 
其中该集成电路是现场可编程门阵列。 
88.根据权利要求84所述的集成电路, 
其中该集成电路是现场可编程门阵列。 
89.根据权利要求85所述的集成电路, 
其中该集成电路是现场可编程门阵列。 
90.根据权利要求70所述的集成电路,还包括: 
第二交换网络基本上近似于第一交换网络, 
其中N组导体的每一组的每k个导体形成各个k个端口的组,以及 
其中k个端口的组的第一端口的k个导体的每一个被连接到第二交换网络的多个数量为M的导体。 
91.根据权利要求72所述的集成电路,还包括: 
第二交换网络基本上近似于第一交换网络, 
其中N组导体的每一组的每k个导体形成各个k个端口的组,以及 
其中k个端口的组的第一端口的k个导体的每一个被连接到第二交换网络的多个数量为M的导体。 
92.根据权利要求74所述的集成电路,还包括: 
第二交换网络基本上近似于第一交换网络, 
其中N组导体的每一组的每k个导体形成各个k个端口的组,以及 
其中k个端口的组的第一端口的k个导体的每一个被连接到第二交换网络的多个数量为M的导体。 
93.根据权利要求76所述的集成电路,还包括: 
第二交换网络基本上近似于第一交换网络, 
其中N组导体的每一组的每k个导体形成各个k个端口的组,以及 
其中k个端口的组的第一端口的k个导体的每一个被连接到第二交换网络的多个数量为M的导体。 
94.根据权利要求90所述的集成电路, 
其中该集成电路是现场可编程门阵列。 
95.根据权利要求91所述的集成电路, 
其中该集成电路是现场可编程门阵列。 
96.根据权利要求92所述的集成电路, 
其中该集成电路是现场可编程门阵列。 
97.根据权利要求93所述的集成电路, 
其中该集成电路是现场可编程门阵列。 
98.一种方法,该方法包括: 
在集成电路中提供第一交换网络; 
为第一交换网络提供多个数量为M的第一导体; 
为第一交换网络提供多个k组每组数量为N的第二导体,其中N大于2并且k大于2; 
为第一交换网络提供多个数量为I的第三导体,包括: 
提供多个N组每组数量为q的第四导体,其中q约等于M/N; 
为第一交换网络提供多个第一开关; 
通过多个第一开关,将多个M个第一导体的M个的每一个导体选择性地耦合到多个数量为I的第三导体; 
将多个M个第一导体的数量为M的每一个导体选择性地耦合到多个N组每组数量为q的第四导体的数量为q的导体之一; 
为第一交换网络提供多个第二开关;以及 
通过多个第二开关,将多个N组每组数量为q的第四导体的每一组的每一个数量为q的每一个导体选择性地耦合到多个N组每组数量为k的第二导体的各个组的一组中的所有导体而不需要跨越其他导体。 
99.根据权利要求98所述的方法,还包括: 
通过多个第一开关,将多个M个第一导体的M个的每一个导体选择性地耦合到多个N组每组数量为q的第四导体的数量为q的导体之一而不需要跨越其他导体。 
100.根据权利要求98所述的方法,还包括: 
为第一交换网络提供多个数量为I的第三导体的多个D1组每组数量为I1的第五导体, 
其中D1至少是2; 
将多个N组每组数量为q的第四导体分为D1组N/D1组每组数量为q的导体, 
其中N/D1至少是2;以及 
通过多个第一开关,将多个D1组每组数量为I1的第五导体的D1组的每一个数量为I1的每一个导体选择性地耦合到D1组N/D1组每组数量为q的导体的N/D1组每组数量为q的导体的各个组的q个导体之一而不需要跨越其他导体。 
101.根据权利要求100所述的方法,还包括: 
通过多个第一开关,将多个M个第一导体的M个每一个导体选择性地耦合到多个D1组每组数量为I1的第五导体的数量为I1的导体之一而不需要跨越其他导体。 
102.根据权利要求100所述的方法,还包括: 
为第一交换网络提供多个数量为I的第三导体的多个D2组每组数量为I2的第六导体, 
其中D2至少是2; 
将多个D1组每组数量为I1的第五导体分为D2组D1/D2组每组数量为I1的导体, 
其中D1/D2大于1;以及 
通过多个第一开关,将多个D2组每组数量为I2的第六导体的D2组的每一个数量为I2的每一个导体选择性地耦合到D2组D1/D2组每组数量为I1的导体的D1/D2组每组数量为I1的导体的各个组的I1个导体之一而不需要跨越其他导体。 
103.根据权利要求102所述的方法,还包括: 
通过多个第一开关,将多个M个第一导体的M个每一个导体选择性地耦合到多个D2组每组数量为I2的第六导体的数量为I2的导体之一而不需要跨越其他导体。 
104.根据权利要求102所述的方法,还包括: 
为第一交换网络提供多个数量为I的第三导体的多个D3组每组数量为I3的第七导体, 
其中D3至少是2, 
将多个D3组每组数量为I3的第六导体分为D3组D2/D3组每组数量为I2的导体, 
其中D2/D3大于1;以及 
通过多个第一开关,将多个D2组每组数量为I2的第七导体的D3组的每一个数量为I3的每一个导体选择性地耦合到D3组D2/D3组每组数量为I2的导体的D2/D3组每组数量为I2的导体的各个组的I2个导体之一而不需要跨越其他导体。 
105.根据权利要求104所述的方法,还包括: 
通过多个第一开关,将多个M个第一导体的M个每一个导体选择性地耦合到多个D3组每组数量为I3的第七导体的数量为I3的导体之一而不需要跨越其他导体。 
106.根据权利要求99所述的方法, 
其中N大于4并且k大于4。 
107.根据权利要求99所述的方法,还包括: 
提供多个交换网络,每一个基本上近似于第一交换网络。 
108.根据权利要求101所述的方法,还包括: 
提供多个交换网络,每一个基本上近似于第一交换网络。 
109.根据权利要求103所述的方法,还包括: 
提供多个交换网络,每一个基本上近似于第一交换网络。 
110.根据权利要求105所述的方法,还包括: 
提供多个交换网络,每一个基本上近似于第一交换网络。 
111.根据权利要求107所述的方法, 
其中用于各个多个交换网络的每一个的多个第一开关和多个第二开关以及多个数量为I的第三导体基本上位于第一区域内。 
112.根据权利要求108所述的方法, 
其中用于各个多个交换网络的每一个的多个第一开关和多个第二开关以及多个数量为I的第三导体基本上位于第一区域内。 
113.根据权利要求109所述的方法, 
其中用于各个多个交换网络的每一个的多个第一开关和多个第二开关以及多个数量为I的第三导体基本上位于第一区域内。 
114.根据权利要求110所述的方法, 
其中用于各个多个交换网络的每一个的多个第一开关和多个第二开关以及多个数量为I的第三导体基本上位于第一区域内。 
115.根据权利要求111所述的方法, 
其中该集成电路是现场可编程门阵列。 
116.根据权利要求112所述的方法, 
其中该集成电路是现场可编程门阵列。 
117.根据权利要求113所述的方法, 
其中该集成电路是现场可编程门阵列。 
118.根据权利要求114所述的方法, 
其中该集成电路是现场可编程门阵列。 
119.根据权利要求99所述的方法,还包括: 
提供第二交换网络基本上近似于第一交换网络, 
其中N组导体的每一组的每k个导体形成各个k个端口的组,以及 
其中k个端口的组的第一端口的k个导体的每一个被连接到第二交换网络的多个数量为M的导体。 
120.根据权利要求101所述的方法,还包括: 
提供第二交换网络, 
其中N组导体的每一组的每k个导体形成各个k个端口的组,以及 
其中k个端口的组的第一端口的k个导体的每一个被连接到第二交换网络的多个数量为M的导体。 
121.根据权利要求103所述的方法,还包括: 
提供第二交换网络, 
其中N组导体的每一组每k个导体形成各个k个端口的组,以及 
其中k个端口的组的第一端口的k个导体的每一个被连接到第二交换网络的多个数量为M的导体。 
122.根据权利要求105所述的方法,还包括: 
提供第二交换网络, 
其中N组导体的每一组的每k个导体形成各个k个端口的组,以及 
其中k个端口的组的第一端口的k个导体的每一个被连接到第二交换网络的多个数量为M的导体。 
123.根据权利要求119所述的集成电路, 
其中该集成电路是现场可编程门阵列。 
124.根据权利要求120所述的集成电路, 
其中该集成电路是现场可编程门阵列。 
125.根据权利要求121所述的集成电路, 
其中该集成电路是现场可编程门阵列。 
126.根据权利要求122所述的集成电路, 
其中该集成电路是现场可编程门阵列。 
CN200580010432XA 2004-03-30 2005-02-28 可编程逻辑的可扩展非阻断交换网络 Active CN1938950B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201110439666.3A CN102571073B (zh) 2004-03-30 2005-02-28 集成电路及其制造方法

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US10/814,943 US6975139B2 (en) 2004-03-30 2004-03-30 Scalable non-blocking switching network for programmable logic
US10/814,943 2004-03-30
PCT/US2005/006583 WO2005104375A1 (en) 2004-03-30 2005-02-28 A scalable non-blocking switching network for programmable logic

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN201110439666.3A Division CN102571073B (zh) 2004-03-30 2005-02-28 集成电路及其制造方法

Publications (2)

Publication Number Publication Date
CN1938950A CN1938950A (zh) 2007-03-28
CN1938950B true CN1938950B (zh) 2012-02-29

Family

ID=35053582

Family Applications (2)

Application Number Title Priority Date Filing Date
CN200580010432XA Active CN1938950B (zh) 2004-03-30 2005-02-28 可编程逻辑的可扩展非阻断交换网络
CN201110439666.3A Active CN102571073B (zh) 2004-03-30 2005-02-28 集成电路及其制造方法

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN201110439666.3A Active CN102571073B (zh) 2004-03-30 2005-02-28 集成电路及其制造方法

Country Status (6)

Country Link
US (9) US6975139B2 (zh)
EP (1) EP1730841A4 (zh)
JP (1) JP4588068B2 (zh)
KR (1) KR101116943B1 (zh)
CN (2) CN1938950B (zh)
WO (1) WO2005104375A1 (zh)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5457410A (en) 1993-08-03 1995-10-10 Btr, Inc. Architecture and interconnect scheme for programmable logic circuits
US6975139B2 (en) * 2004-03-30 2005-12-13 Advantage Logic, Inc. Scalable non-blocking switching network for programmable logic
US7460529B2 (en) * 2004-07-29 2008-12-02 Advantage Logic, Inc. Interconnection fabric using switching networks in hierarchy
US7423453B1 (en) * 2006-01-20 2008-09-09 Advantage Logic, Inc. Efficient integrated circuit layout scheme to implement a scalable switching network used in interconnection fabric
US7924053B1 (en) 2008-01-30 2011-04-12 Actel Corporation Clustered field programmable gate array architecture
US7924052B1 (en) 2008-01-30 2011-04-12 Actel Corporation Field programmable gate array architecture having Clos network-based input interconnect
JP5158195B2 (ja) * 2008-06-06 2013-03-06 日本電気株式会社 回路設計システムおよび回路設計方法
US7705629B1 (en) 2008-12-03 2010-04-27 Advantage Logic, Inc. Permutable switching network with enhanced interconnectivity for multicasting signals
US7714611B1 (en) * 2008-12-03 2010-05-11 Advantage Logic, Inc. Permutable switching network with enhanced multicasting signals routing for interconnection fabric
US7999570B2 (en) * 2009-06-24 2011-08-16 Advantage Logic, Inc. Enhanced permutable switching network with multicasting signals for interconnection fabric
US8341580B2 (en) * 2009-09-28 2012-12-25 Advantage Logic, Inc. Modular routing fabric using switching networks
US8098081B1 (en) * 2010-06-21 2012-01-17 Xilinx, Inc. Optimization of interconnection networks
US8665727B1 (en) 2010-06-21 2014-03-04 Xilinx, Inc. Placement and routing for a multiplexer-based interconnection network
US7982497B1 (en) * 2010-06-21 2011-07-19 Xilinx, Inc. Multiplexer-based interconnection network
BR112014024312B1 (pt) * 2012-03-30 2022-04-12 Intel Corporation Sistema e método de implementação de uma matriz de dispositivo programável em um sistema eletrônico
US9118325B1 (en) * 2014-08-27 2015-08-25 Quicklogic Corporation Routing network for programmable logic device
CN108287935B (zh) * 2017-12-13 2020-08-04 京微齐力(北京)科技有限公司 一种包含可预分配布线结构的可编程器件
CN111753486B (zh) * 2020-06-30 2021-12-24 无锡中微亿芯有限公司 一种多裸片结构fpga的布局方法

Family Cites Families (85)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4020469A (en) 1975-04-09 1977-04-26 Frank Manning Programmable arrays
US4661901A (en) 1982-12-23 1987-04-28 International Business Machines Corporation Microprocessor control system utilizing overlapped programmable logic arrays
US4736333A (en) 1983-08-15 1988-04-05 California Institute Of Technology Electronic musical instrument
USRE34363E (en) 1984-03-12 1993-08-31 Xilinx, Inc. Configurable electrical circuit having configurable logic elements and configurable interconnects
US4870302A (en) 1984-03-12 1989-09-26 Xilinx, Inc. Configurable electrical circuit having configurable logic elements and configurable interconnects
EP0219221B1 (en) 1985-09-11 1993-12-29 Pilkington Micro-Electronics Limited Semi-conductor integrated circuits
US4720780A (en) 1985-09-17 1988-01-19 The Johns Hopkins University Memory-linked wavefront array processor
US4700187A (en) 1985-12-02 1987-10-13 Concurrent Logic, Inc. Programmable, asynchronous logic cell and array
US5187393A (en) 1986-09-19 1993-02-16 Actel Corporation Reconfigurable programmable interconnect architecture
US5367208A (en) 1986-09-19 1994-11-22 Actel Corporation Reconfigurable programmable interconnect architecture
US4758745B1 (en) 1986-09-19 1994-11-15 Actel Corp User programmable integrated circuit interconnect architecture and test method
US4918440A (en) 1986-11-07 1990-04-17 Furtek Frederick C Programmable logic cell and array
US5243208A (en) 1987-05-27 1993-09-07 Hitachi, Ltd. Semiconductor integrated circuit device having a gate array with a ram and by-pass signal lines which interconnect a logic section and I/O unit circuit of the gate array
US4815003A (en) 1987-06-19 1989-03-21 General Electric Company Structured design method for high density standard cell and macrocell layout of VLSI chips
US4847612A (en) 1988-01-13 1989-07-11 Plug Logic, Inc. Programmable logic device
US4912342A (en) 1988-05-05 1990-03-27 Altera Corporation Programmable logic device with array blocks with programmable clocking
US5329470A (en) 1988-12-02 1994-07-12 Quickturn Systems, Inc. Reconfigurable hardware emulation system
IT1225638B (it) 1988-12-28 1990-11-22 Sgs Thomson Microelectronics Dispositivo logico integrato come una rete di maglie di memorie distribuite
GB8906145D0 (en) 1989-03-17 1989-05-04 Algotronix Ltd Configurable cellular array
US5212652A (en) 1989-08-15 1993-05-18 Advanced Micro Devices, Inc. Programmable gate array with improved interconnect structure
US5349691A (en) 1990-07-03 1994-09-20 Xilinx, Inc. Programming process for 3-level programming logic devices
US5144166A (en) 1990-11-02 1992-09-01 Concurrent Logic, Inc. Programmable logic cell and array
JP2564044B2 (ja) 1991-02-27 1996-12-18 株式会社東芝 プログラマブル論理回路
US5122685A (en) 1991-03-06 1992-06-16 Quicklogic Corporation Programmable application specific integrated circuit and logic cell therefor
US5204556A (en) 1991-05-06 1993-04-20 Lattice Semiconductor Corporation Programmable interconnect structure for logic blocks
US5221865A (en) 1991-06-21 1993-06-22 Crosspoint Solutions, Inc. Programmable input/output buffer circuit with test capability
US5298805A (en) 1991-08-29 1994-03-29 National Semiconductor Corporation Versatile and efficient cell-to-local bus interface in a configurable logic array
US5317209A (en) 1991-08-29 1994-05-31 National Semiconductor Corporation Dynamic three-state bussing capability in a configurable logic array
US5260611A (en) 1991-09-03 1993-11-09 Altera Corporation Programmable logic array having local and long distance conductors
US5260610A (en) 1991-09-03 1993-11-09 Altera Corporation Programmable logic element interconnections for programmable logic array integrated circuits
US5550782A (en) 1991-09-03 1996-08-27 Altera Corporation Programmable logic array integrated circuits
US5208491A (en) 1992-01-07 1993-05-04 Washington Research Foundation Field programmable gate array
GB9223226D0 (en) 1992-11-05 1992-12-16 Algotronix Ltd Improved configurable cellular array (cal ii)
US5396126A (en) 1993-02-19 1995-03-07 At&T Corp. FPGA with distributed switch matrix
SG46393A1 (en) 1993-05-28 1998-02-20 Univ California Field programmable logic device with dynamic interconnections to a dynamic logic core
JPH0713945A (ja) 1993-06-16 1995-01-17 Nippon Sheet Glass Co Ltd 演算処理部および制御・記憶部分離型マルチプロセッサ ・システムのバス構造
GB9312674D0 (en) 1993-06-18 1993-08-04 Pilkington Micro Electronics Configurabel logic array
US5444394A (en) 1993-07-08 1995-08-22 Altera Corporation PLD with selective inputs from local and global conductors
GB2280293B (en) 1993-07-19 1997-12-10 Hewlett Packard Co Architecture for programmable logic
US6462578B2 (en) 1993-08-03 2002-10-08 Btr, Inc. Architecture and interconnect scheme for programmable logic circuits
US6051991A (en) 1993-08-03 2000-04-18 Btr, Inc. Architecture and interconnect scheme for programmable logic circuits
US5457410A (en) 1993-08-03 1995-10-10 Btr, Inc. Architecture and interconnect scheme for programmable logic circuits
US5455525A (en) 1993-12-06 1995-10-03 Intelligent Logic Systems, Inc. Hierarchically-structured programmable logic array and system for interconnecting logic elements in the logic array
JPH09509797A (ja) 1993-12-13 1997-09-30 ラティス・セミコンダクター・コーポレイション プログラマブル論理デバイスに於ける特定用途向けモジュール
US5369314A (en) 1994-02-22 1994-11-29 Altera Corporation Programmable logic device with redundant circuitry
US6181162B1 (en) * 1994-04-10 2001-01-30 Altera Corporation Programmable logic device with highly routable interconnect
WO1995028769A1 (en) 1994-04-14 1995-10-26 Btr, Inc. Architecture and interconnect scheme for programmable logic circuits
US5406525A (en) 1994-06-06 1995-04-11 Motorola, Inc. Configurable SRAM and method for providing the same
US5656121A (en) 1994-08-19 1997-08-12 Minnesota Mining And Manufacturing Company Method of making multi-layer composites having a fluoropolymer layer
US5898318A (en) 1994-11-04 1999-04-27 Altera Corporation Programmable logic array integrated circuits with enhanced cascade
US5581199A (en) 1995-01-04 1996-12-03 Xilinx, Inc. Interconnect architecture for field programmable gate array using variable length conductors
US5537057A (en) 1995-02-14 1996-07-16 Altera Corporation Programmable logic array device with grouped logic regions and three types of conductors
US5572148A (en) 1995-03-22 1996-11-05 Altera Corporation Programmable logic array integrated circuit with general-purpose memory configurable as a random access or FIFO memory
US5850564A (en) 1995-05-03 1998-12-15 Btr, Inc, Scalable multiple level tab oriented interconnect architecture
EP1294098A3 (en) 1995-05-03 2004-11-03 Btr, Inc. Scalable multiple level interconnect architecture
US5818254A (en) * 1995-06-02 1998-10-06 Advanced Micro Devices, Inc. Multi-tiered hierarchical high speed switch matrix structure for very high-density complex programmable logic devices
US5815004A (en) 1995-10-16 1998-09-29 Xilinx, Inc. Multi-buffered configurable logic block output lines in a field programmable gate array
US5894228A (en) 1996-01-10 1999-04-13 Altera Corporation Tristate structures for programmable logic devices
US5841775A (en) * 1996-07-16 1998-11-24 Huang; Alan Scalable switching network
US6034547A (en) 1996-09-04 2000-03-07 Advantage Logic, Inc. Method and apparatus for universal program controlled bus
US5880597A (en) * 1996-09-18 1999-03-09 Altera Corporation Interleaved interconnect for programmable logic array devices
US5825202A (en) 1996-09-26 1998-10-20 Xilinx, Inc. Integrated circuit with field programmable and application specific logic areas
US6300794B1 (en) 1996-10-10 2001-10-09 Altera Corporation Programmable logic device with hierarchical interconnection resources
US5883526A (en) 1997-04-17 1999-03-16 Altera Corporation Hierarchical interconnect for programmable logic devices
US5914616A (en) 1997-02-26 1999-06-22 Xilinx, Inc. FPGA repeatable interconnect structure with hierarchical interconnect lines
US5963050A (en) 1997-02-26 1999-10-05 Xilinx, Inc. Configurable logic element with fast feedback paths
US6016063A (en) 1998-02-04 2000-01-18 Xilinx, Inc. Method and apparatus for connecting long lines to form wide logic functions
US6038627A (en) 1998-03-16 2000-03-14 Actel Corporation SRAM bus architecture and interconnect to an FPGA
US6507216B1 (en) * 1998-11-18 2003-01-14 Altera Corporation Efficient arrangement of interconnection resources on programmable logic devices
US6163168A (en) * 1998-12-09 2000-12-19 Vantis Corporation Efficient interconnect network for use in FPGA device having variable grain architecture
US6693456B2 (en) 2000-08-04 2004-02-17 Leopard Logic Inc. Interconnection network for a field programmable gate array
US7065076B1 (en) * 2000-08-25 2006-06-20 Promise Technology, Inc. Modular scalable switching networks
US6829237B2 (en) * 2000-10-06 2004-12-07 Irvine Sensors Corporation High speed multi-stage switching network formed from stacked switching layers
US7440449B2 (en) * 2000-10-06 2008-10-21 Irvine Sensors Corp. High speed switching module comprised of stacked layers incorporating t-connect structures
GB2374242B (en) * 2001-04-07 2005-03-16 Univ Dundee Integrated circuit and related improvements
US7123612B2 (en) * 2002-02-10 2006-10-17 Haw-Minn Lu Width upgrade for a scalable switching network
US6686768B2 (en) * 2001-07-05 2004-02-03 Alan Elbert Comer Electrically-programmable interconnect architecture for easily-configurable stacked circuit arrangements
AU2002326444A1 (en) * 2001-07-24 2003-02-17 Leopard Logic, Inc. Hierarchical multiplexer-based integrated circuit interconnect architecture for scalability and automatic generation
US6594810B1 (en) 2001-10-04 2003-07-15 M2000 Reconfigurable integrated circuit with a scalable architecture
US6975139B2 (en) * 2004-03-30 2005-12-13 Advantage Logic, Inc. Scalable non-blocking switching network for programmable logic
US7460529B2 (en) * 2004-07-29 2008-12-02 Advantage Logic, Inc. Interconnection fabric using switching networks in hierarchy
US7420390B1 (en) * 2006-01-09 2008-09-02 Altera Corporation Method and apparatus for implementing additional registers in field programmable gate arrays to reduce design size
KR100833179B1 (ko) * 2006-02-15 2008-05-28 삼성전자주식회사 클러스터드 전압 스케일링을 위한 레벨 컨버팅 플립플롭 및펄스 발생기
US7705629B1 (en) * 2008-12-03 2010-04-27 Advantage Logic, Inc. Permutable switching network with enhanced interconnectivity for multicasting signals
US7714611B1 (en) * 2008-12-03 2010-05-11 Advantage Logic, Inc. Permutable switching network with enhanced multicasting signals routing for interconnection fabric

Also Published As

Publication number Publication date
EP1730841A4 (en) 2007-08-29
US8242807B2 (en) 2012-08-14
US20110089972A1 (en) 2011-04-21
CN102571073B (zh) 2015-07-08
US7557613B2 (en) 2009-07-07
US20070268041A1 (en) 2007-11-22
US20090273368A1 (en) 2009-11-05
US20110248744A1 (en) 2011-10-13
JP2007531461A (ja) 2007-11-01
US7256614B2 (en) 2007-08-14
US7417457B2 (en) 2008-08-26
CN1938950A (zh) 2007-03-28
WO2005104375A1 (en) 2005-11-03
EP1730841A1 (en) 2006-12-13
US7986163B2 (en) 2011-07-26
US7768302B2 (en) 2010-08-03
US8698519B2 (en) 2014-04-15
JP4588068B2 (ja) 2010-11-24
KR101116943B1 (ko) 2012-03-16
US6975139B2 (en) 2005-12-13
CN102571073A (zh) 2012-07-11
US20050218928A1 (en) 2005-10-06
US20060006906A1 (en) 2006-01-12
US20080272806A1 (en) 2008-11-06
US7863932B2 (en) 2011-01-04
US20100244895A1 (en) 2010-09-30
KR20070024520A (ko) 2007-03-02
US20120280712A1 (en) 2012-11-08

Similar Documents

Publication Publication Date Title
CN1938950B (zh) 可编程逻辑的可扩展非阻断交换网络
WO1997019407A9 (en) A method and apparatus for switching
GB2346240A (en) Programmable device
CN105391442B (zh) 用于可编程逻辑装置的路由网络
US8981814B2 (en) Permutable switching network with enhanced interconnectivity for multicasting signals
US7714611B1 (en) Permutable switching network with enhanced multicasting signals routing for interconnection fabric
CN108040302A (zh) 基于Clos和T-S-T的自适应交换网络路由算法
US7482834B2 (en) Programmable multiplexer
CN103078773B (zh) 一种网络连接切换器
US8395415B2 (en) Enhanced permutable switching network with multicasting signals for interconnection fabric
CN109257663A (zh) 一种面向多轨网络的光路交换方法和系统
lata Rao et al. Design of a reconfigurable switch architecture for next generation communication networks
Chakrabarty Symmetric rearrangeable networks and algorithms

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20071228

Address after: Nevada

Applicant after: Advantage Logic, Inc.

Address before: American California

Applicant before: Advantage Logic, Inc.

C14 Grant of patent or utility model
GR01 Patent grant