CN1307586C - 高效逻辑打包的现场可编程门阵列核心单元 - Google Patents

高效逻辑打包的现场可编程门阵列核心单元 Download PDF

Info

Publication number
CN1307586C
CN1307586C CNB028249984A CN02824998A CN1307586C CN 1307586 C CN1307586 C CN 1307586C CN B028249984 A CNB028249984 A CN B028249984A CN 02824998 A CN02824998 A CN 02824998A CN 1307586 C CN1307586 C CN 1307586C
Authority
CN
China
Prior art keywords
lut
input
core
logic gate
core cell
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.)
Expired - Fee Related
Application number
CNB028249984A
Other languages
English (en)
Other versions
CN1605080A (zh
Inventor
D·J·帕格
A·W·福克斯
D·王
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.)
Leopard Logic Inc
Original Assignee
Leopard 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 Leopard Logic Inc filed Critical Leopard Logic Inc
Publication of CN1605080A publication Critical patent/CN1605080A/zh
Application granted granted Critical
Publication of CN1307586C publication Critical patent/CN1307586C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/34Circuit design for reconfigurable circuits, e.g. field programmable gate arrays [FPGA] or programmable logic devices [PLD]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)
  • Logic Circuits (AREA)

Abstract

展示有一个或多个查找表(LUT)和可选择的逻辑门的现场可编程门阵列(FPGA)核心单元,它与现有的基于LUT的FPGA核心单元相比更有空间效率。基于大家熟知的用于基于LUT的FPGA核心单元的流图算法的算法实现布尔逻辑网络到所揭示的FPGA核心单元的映射。

Description

高效逻辑打包的现场可编程门阵列核心单元
相关申请的交叉引用
此专利申请请求来自编号为60/329,892于2001年10月16目提交的美国专利预申请的优先权,将其包含在此作为引用。
发明背景
本发明涉及FPGA(现场可编程门阵列)核心单元的设计,更特别地,涉及基于LUT(查找表)的核心单元。
FPGA是其功能由该FPGA的用户定义的集成电路。随着半导体技术中几何结构的减小,FPGA核心,FPGA的主要部分在移除外围电路之后,也在ASIC(专用集成电路)中嵌入其他定义的元件或电路块。用户对FPGA或FPGA核心编程(从而产生术语“现场可编程”)来执行用户所需的功能。(从而,除非特别指出,术语FPGA被用来包括离散FPGA设备和FPGA核心两者。)FPGA有逻辑单元或块之间的互连网络,且可以配置互连网络及逻辑单元来执行用户所需的应用。为了让基于SRAM(静态随机访问存储器)单元的FPGA保存配置比特,FPGA的配置可以由用户对电子系统的多个应用反复改变。对基于制造光罩(mask)编程(例如,通路光罩)的FPGA,FPGA的配置仅执行一次。
在多数情况下,FPGA的逻辑单元是以查找表而非可编程逻辑门的集合的形式来实现的。有x个输入的查找表(LUT)  可以实现x个变量的任何布尔逻辑函数并且有算法可以用通过网络的最小延时映射给定的布尔逻辑网络到LUT的网络。
本发明用于改进基于LUT的FPGA逻辑单元的打包,以使得FPGA对相同程度的函数占用更少的空间。集成电路(FPGA或ASIC)的结果制造收益会得到提高且降低了成本。另外,降低给定函数所需的LUT的数量通常增加所实现的函数的速度。
发明概要
为了实现这些目标,本发明向有FPGA核心的集成电路提供核心单元。每个核心单元包括:多个核心单元输入接头(terminal)和多个核心单元输出接头;一个或多个LUT,每个LUT有一个输出接头和多个输入接头,每个LUT的每个输入接头连接到一个核心单元输入接头;有一个输出接头和多个输入接头的可选择的逻辑门,每个输入接头连接到一个所述LUT输出接头或任何余下的未连接到LUT输入接头的核心单元输入接头;及可选择地连接LUT和可选择的逻辑门的输出接头到核心单元输出接头的电路。通过设置一个或多个LUT中的存储器单元或通路、选择逻辑门并可选择地连接一个或多个LUT和可选择的逻辑门的输出接头到核心单元输出接头,对核心单元编程。
为了对核心单元编程以映射给定的布尔网络到FPGA核心,本发明也提供划分逻辑网络为多个切片的步骤,每个划分切片(cut)比核心单元输入接头的数量少并映射到划分的切片的逻辑;生成每个划分切片的网络图;划分每个划分切片的输入接头为对应于不同组合中核心单元的LUT的输入接头的输入集合;对所有的输入组合生成每个输入划分切片的网络图;确定每个划分切片的网络图之间的等价关系,及不同的逻辑的划分切片逻辑组合;及找出映射每个划分切片的逻辑到配置为匹配输入组合及选择的逻辑门的逻辑单元核心的等价关系匹配。
附图说明
图1A根据本发明的一个实施例展示FPGA核心单元的例子;图1B为图1A核心单元的一部分的详图;
图2为流程图,根据本发明展示图1A的核心单元的逻辑映射算法;及
图3展示在典型的划分切片的逻辑映射算法中使用的二元判定图。
具体实施例说明
FPGA可以有很多不同的结构。例如,参见亦委托给本代理的2002年7月24日提交、编号为10/202,397、标题为“用于可伸缩性和自动生成的基于层次结构的复用器的集成电路互连结构”的美国专利申请。这些结构都定义并安排逻辑函数块和它们之间的互连。FPGA的编程包括通过配置比特设置块的功能及块之间的互连。通常,通过基本单元(有周围的互连单元FPGA核心单元)来创建结构,在两个方向上重复基本单元以创建FPGA阵列。FPGA核心单元,或者单独或者和其他核心单元一起,作为逻辑函数块工作。
如上所述,多数FPGA结构对逻辑函数块使用LUT。然而,单独映射到LUT的逻辑网络不一定是逻辑网络最有效的实现。通常的情况是LUT只能被稀疏地填充,即,只需要有LUT的一些存储器地址来实现映射逻辑函数,且逻辑的特定的重构会带来更有效的实现。例如,逻辑函数F=(abcd+efgh)有8个变量并可以映射到一个8输入LUT,这需要28=256比特的存储器空间来实现。另外,同一函数可以映射到三个4输入LUT(每个4输入LUT有16(24)比特),这需要3*16=48比特的存储器来实现。最后,如果可以使用专门的OR门,同一函数可以被映射到一个OR门加上2*16=32比特的存储器。又如,逻辑函数G=a(b+c+d+e)有5个变量并可以映射到5输入LUT,这需要25=32存储器比特的存储器。另外,如果可以使用专门的AND门,同一函数可以映射到一个AND门加上只要24=16比特的存储器。
本发明用FPGA中的逻辑网络更加有效的实现优化基于LUT的核心单元。在逻辑网络映射到给定的基于LUT的FPGA核心之后,使用基于更有效地打包的LUT和逻辑门的FPGA核心来实现逻辑网络。
图1A为方框图,根据本发明的一个实施例展示典型的FPGA核心单元。核心单元有两个部件10和11,每个部件有LUT、复用器和有输出接头X和Y的定时门闩电路。每个LUT的输出被连接到选择的逻辑门的输入接头,选择的逻辑门的输出接头连接到部件10的输出接头。选择的逻辑门,如下面更详细的说明,根据本发明帮助避免LUT尺寸太大并使得核心单元更加有空间效率。
部件10有4输入LUT20,它的输出接头并行连接到复用器21和22的输入接头及AND门41的一个输入接头,在下面对其进行更详细的说明。附带地,应注意在图1A(和后面的附图)中未展示连接到复用器的控制线。应理解,控制复用器的选择性操作的控制信号是由FPGA的配置比特来设置的。除了连接到LUT20的输出接头的输入接头,复用器21有连接到AND门41的输出接头的第二个输入接头和连接到其他逻辑函数电路的第三个输入接头。其他逻辑函数是实现与本发明无关的附加功能,如进位逻辑、5输入LUT和6输入LUT等等的电路。复用器21的输出接头连接到定时门闩电路23的输入接头,定时门闩电路23的输出接头连接到复用器25的一个输入接头。复用器25的第二个输入接头直接连接到复用器21的输出接头,因此复用器25可以选择定时的或直接的来自复用器21的输出。复用器25的输出接头提供部件10的X输出。
以类似的方式,复用器22有连接到AND逻辑门41的输出接头的第二个输入接头和连接到另一个逻辑函数电路的第三个输入接头。复用器22的输出接头连接到定时门闩电路24的输入接头,定时门闩电路24的输出接头连接到复用器26的一个输入接头。复用器26的第二个输入接头直接连接到复用器22的输出接头,因此复用器26可以选择定时输出或控制来自复用器22的输出。复用器25的输出接头提供部件10的Y输出。
核心单元的第二个部件11有和部件11类似但不完全相同的电路安排。4输入LUT30的输出接头连接到复用器31和32的输入接头及AND逻辑门41的第二个输入接头。复用器31的第二个和第三个输入接头连接到另外两个逻辑函数电路。其他函数电路类似于连接到复用器21和22的那些。复用器31的输出接头连接到定时门闩电路33的输入接头,定时门闩电路33的输出接头连接到复用器35的一个输入接头,复用器35的第二个输入接头直接连接到复用器31的输出接头。复用器35可以选择定时的或直接的来自复用器31的输出并对部件11提供X输出。
对复用器32来说,第二个输入接头和复用器31的第二个输入接头一样连接到相同的逻辑函数电路,而第三个输入接头连接到另一个逻辑函数电路。类似地,复用器32的输出接头连接到定时门闩电路34的输入接头,定时门闩电路34的输出接头连接到复用器36的一个输入接头,复用器36的第二个输入接头直接连接到复用器32的输出接头。复用器35的输出接头对部件11提供Y输出。
AND门41在虚线框40中展示,表明该逻辑门是可以被选择用来做出图1A所示的连接的多个逻辑门中的一个。图1B展示出,在本发明的这个实施例中,可以由复用器44选择专门的AND门41、OR门42和XOR门43来做出图1A的连接。因此虽然在图1A中展示了AND逻辑门41,同时也有OR门42和XOR门43,但是在同一时间最多可以使用专门的门41-43中的一个。这些专门的门41-43的输出可以配置为整个核心单元的输出。这样的核心单元可以支持,例如,最多有8个输入的函数,或有4个输入和3个输入的两个不同的函数。
如上所述,FPGA核心单元中复用器的操作中是通过FPGA的配置比特设置的。因此由复用器44选择特殊的逻辑门41-43亦通过配置比特来控制。配置比特由映射FPGA的用户所需的逻辑网络到FPGA核心的算法来设置。
通过图2中的流程图展示图1A和1B的FPGA核心单元的特殊的逻辑映射算法。本发明的映射算法开始于流图算法,或其他类似算法的结果,这些算法发现K个以内称为划分切片的逻辑群,即,在此例中K=8个输入或更少,这些逻辑群可以被有效地映射到8输入LUT。8输入LUT是FPGA基本的可编程逻辑块。详细参见J.Cong和Y.Ding的论文“流图:在基于查找表的FPGA设计中延迟优化的最优化技术映射算法”IEEE Trans.计算机辅助设计,vol.13(1),1994年1月,1-13页。这样的算法对基于LUT的FPGA的设计者是常见的。在图3中展示典型的网络及其划分。
对每个划分切片,由图2的流程图中的步骤52使用最多8个BDD变量来生成二元判定图(BDD)。BDD是划分切片的逻辑的网络图或代表性的软件结构,它对电路设计者是众所周知的且在下面的步骤中称为“bdd cut”。
图3展示逻辑函数F=(abcd+efgh)的典型划分切片BDD,逻辑函数F有8个变量且可以被映射到8输入LUT。整个图是一个BDD(二元判定图)。图下面的两个框1和0各自表示逻辑真和假,且包含在任何BDD中。BDD中的其他框表示逻辑表达式中的变量,一个框对应一个变量(在此例中,一个框对应a、b、c、c、d、f、g和h中的一个变量)。每个变量框有两条向下延伸的路径,一条路径为1,另一条路径为0,各自表示给定变量为真或为假的两种情况。通过从BDD的根(顶)沿着路径到达底部(框0和1),通过在每个变量框根据变量为真还是假取0或1路径,到达BDD底部的框0或1,它们是整个函数的总体结果。
对本发明,应注意对给定的变量顺序,BDD是唯一的且可以被用来比较两个逻辑函数之间的逻辑等价关系。当且仅当它们的BDD相同时,几个函数在逻辑上才是等价的。
回到图2,通过步骤53,每个切片的输入被划分为两个集合,集合1和集合2,每个集合有不超过核心单元LUT输入数的多个输入。这些输入集合匹配主体核心单元的输入集合,即,图1A中的典型核心单元,它有两个4输入的集合,每个集合对应两个LUT20和30中的一个。可以通过各种方法生成输入划分,以对划分切片生成不同的输入组合。一种对LUT FPGA的设计者众所周知的方法是矩形覆盖方法,这是一种基于常用的Karnough映射的方法。首先生成布尔矩阵并选择两个最好的覆盖矩阵的矩形。矩形的列确定使用的切片划分。另一种方法是使用枚举方法(对尺寸为8的切片计算上更简单)。穷举最多4个变量的两个划分的所有的组合。例如,对8个输入变量,可能的划分的数量等于从8个元素的集合中选择4个元素的方法数量,除以2来去除对称的重复,这等于35个不同的划分。
在步骤54,对每个输入划分切片集合(集合1,集合2)确定集合1的BDD(称为“bdd_1”)和集合2的BDD(称为“bdd_2”),且在步骤55,在bdd_cut和下面逻辑化简中的每一个之间对bdd_1和bdd_2进行等价关系检测:
and(bdd_1,bdd2)
nand(bdd_1,bdd2)
or(bdd_1,bdd2)
nor(bdd_1,bdd2)
xor(bdd_1,bdd2)
xnor(bdd_1,bdd2)
这检测图1A和1B中的虚线40内的不同逻辑门的适合程度。进一步来说,对每种情况,也检测每个输入切片划分的反转的/真状态。例如,检测下面的组合:
and(inverted(bdd_1),bdd2)
and(inverted(bdd_1),inverted(bdd_2))
and(bdd_1,inverted(bdd_2))等等。
为了在FPGA核心单元中实现反转,通过LUT内适当的设置做出输入信号反转,如,inverted(bdd_1),和逻辑门的反转,如,nor。
当步骤56发现匹配,返回匹配操作符(XOR、OR、AND中的一个)、输入划分(集合1、集合2)及任何划分反转。这是要选择的逻辑门和LUT对特殊划分切片的规范。相应地配置FPGA核心单元。此算法可以顺序应用,在移至下一个步骤之前每个步骤51-56用逻辑群操作所有的划分切片,或循环地应用,对用每个步骤51-67操作一个划分切片并移至下一个步骤并重复步骤51-56直到已映射了逻辑网络的所有划分切片。结束步骤57终止算法的步骤。
本发明可以推广到图1A和图1B的逻辑单元及对应的算法之外。图1A中典型的FPGA逻辑核心有8个输入,这些输入划分为到LUT20的第一组4个输入和到LUT30的另一组4个输入。可以推广本发明使得输入的数量不必为8,只要输入数量等于流图或其等价的输入数量边界(Cong和Ding的论文中的“K”)。输入数量不一定平均划分,也不需要划分为两个个集合。当然,对FPGA核心单元的改变,映射逻辑必须相应改变。然而,应理解多数逻辑网络最好可以映射到有8输入的核心单元的FPGA,且这些输入如图1A所示那样平均划分。
因此,本发明的FPGA核心单元允许映射到基于LUT的FPGA的逻辑网络更加有效地打包。
虽然上面是本发明实施例的完整说明,显然可以做出并使用各种修改、替换和等价方法。因此,不应将上述说明视为限制本发明的范围,本发明由后附的权利要求的界定和范围来定义。

Claims (20)

1.一种FPGA核心单元,它用在集成电路中的FPGA核心中,其特征在于,所述FPGA核心单元包括:
多个核心单元输入接头和一个或多个核心单元输出接头;
一个或多个LUT,每个LUT有一个输出接头和多个输入接头,每个LUT的每个输入接头连接到所述多个核心单元输入接头中的一个;
有一个输出接头和多个输入接头的可选择的逻辑门,每个输入接头连接到一个所述LUT输出接头或任何余下的未连接到LUT输入接头的核心单元输入接头;及
将所述LUT和所述可选择的逻辑门两者的输出接头可选择地连接到所述核心单元输出接头的电路;
通过设置所述一个或多个LUT中的配置比特、选择所述逻辑门并可选择地连接所述一个或多个LUT和所述可选择的逻辑门的所述输出接头到所述核心单元输出接头对所述核心单元编程。
2.如权利要求1所述的FPGA核心单元,其特征在于,所述一个或多个LUT包括多个LUT,每个LUT有相同数量的输入接头。
3.如权利要求2所述的FPGA核心单元,其特征在于,所述每个LUT有4个输入接头。
4.如权利要求3所述的FPGA核心单元,其特征在于,所述FPGA核心单元包括8个输入接头。
5.如权利要求4所述的FPGA核心单元,其特征在于,从一组逻辑门中选择所述可选择的逻辑门,所述一组逻辑门包括AND、OR和XOR逻辑门。
6.如权利要求1所述的FPGA核心单元,其特征在于,从一组逻辑门中选择所述可选择的逻辑门,所述一组逻辑门包括AND、OR和XOR逻辑门。
7.如权利要求1所述的FPGA核心单元,其特征在于,所述可选择地连接的电路包括用于通过所述核心单元输出接头的定时和不定时信号的定时门闩电路和复用器。
8.一种映射给定的布尔网络到FPGA的方法,所述FPGA有多个核心单元,每个核心单元有预定数量的输入接头和一个或多个输出接头;一个或多个LUT,每个LUT有多个输入接头及一个输出接头,每个LUT的每个输入接头连接到所述核心单元输入接头中的一个;可选择的逻辑门,它有多个输入接头及一个输出接头,每个输入接头连接到一个所述LUT输出接头或任何余下的未连接到LUT输入接头的核心单元输入接头;将所述LUT和所述可选择的逻辑门两者的输出接头可选择地连接到所述核心单元输出接头的电路;通过设置所述一个或多个LUT中的配置比特、选择所述逻辑门并可选择地连接所述一个或多个LUT和所述可选择的逻辑门的所述输出接头到所述核心单元输出接头对所述核心单元编程,其特征在于,所述方法包括:
划分所述逻辑网络为多个切片,所述划分切片有少于所述预定数量的核心单元输入接头并映射到所述划分的切片的逻辑;
生成每个划分切片的网络图;
划分每个划分切片的输入接头为对应于不同组合中所述核心单元的所述LUT的输入接头的输入集合;
对所有输入组合生成每个输入划分切片的网络图;
确定每个划分切片的网络图之间的等价关系,及不同的逻辑的划分切片逻辑组合;及
找出映射每个划分切片的逻辑到配置为匹配输入组合及选择的逻辑门的逻辑单元核心的等价关系匹配;
用所述匹配的已配置的核心单元映射所述布尔网络到所述FPGA。
9.如权利要求8所述的方法,其特征在于,所述确定等价关系的步骤包括有反转的输出的逻辑组合。
10.如权利要求8所述的方法,其特征在于,所述确定等价关系的步骤包括有反转的输入的逻辑组合。
11.如权利要求8所述的方法,其特征在于,所述确定等价关系的步骤包括从包括AND、OR、XOR、NAND、NOR和XNOR逻辑的组中选择出的逻辑组合。
12.如权利要求8所述的方法,其特征在于,从一组逻辑门中选择所述可选择的逻辑门,所述一组逻辑门包括AND、OR和XOR逻辑门。
13.如权利要求8所述的方法,其特征在于,所述一个或多个LUT包括多个LUT,每个LUT有相同数量的输入接头。
14.如权利要求12所述的方法,其特征在于,所述每个LUT有4个输入接头。
15.如权利要求13所述的方法,其特征在于,所述每个FPGA核心单元包括8个输入接头。
16.一种有FPGA核心的集成电路,所述FGPA核心有布尔网络映射到其上,所述FPGA有多个核心单元,其特征在于,每个核心单元有预定数量的输入接头和一个或多个输出接头;一个或多个LUT,每个LUT有多个输入接头及一个输出接头,每个LUT的每个输入接头连接到所述核心单元输入接头中的一个;可选择的逻辑门,它有多个输入接头及一个输出接头,每个输入接头连接到一个所述LUT输出接头或任何余下的未连接到LUT输入接头的核心单元输入接头;将所述LUT和所述可选择的逻辑门两者的输出接头可选择地连接到所述核心单元输出接头的电路;通过设置所述一个或多个LUT中的配置比特、选择所述逻辑门并可选择地连接所述一个或多个LUT和所述可选择的逻辑门的所述输出接头到所述核心单元输出接头对所述核心单元编程,其中所述FPGA核心单元被配置为:
划分所述逻辑网络为多个切片,所述划分切片有少于所述预定数量的核心单元输入接头并映射到所述划分的切片的逻辑;
生成每个划分切片的网络图;
划分每个划分切片的输入接头为对应于不同组合中所述核心单元的所述LUT的输入接头的输入集合;
对所有输入组合生成每个输入划分切片的网络图;
确定每个划分切片的网络图之间的等价关系,及不同的逻辑的划分切片逻辑组合;及
找出映射每个划分切片的逻辑到配置为匹配输入组合及选择的逻辑门的逻辑单元核心的等价关系匹配;
对所述等价关系匹配配置所述核心单元,从而映射所述布尔网络到所述FPGA。
17.如权利要求16所述的集成电路,其特征在于,所述确定等价关系的步骤包括有反转的输出的逻辑组合。
18.如权利要求16所述的集成电路,其特征在于,所述确定等价关系的步骤包括有反转的输入的逻辑组合。
19.如权利要求16所述的集成电路,其特征在于,所述确定等价关系的步骤包括从包括AND、OR、XOR、NAND、NOR和XNOR逻辑的组中选择出的逻辑组合。
20.如权利要求16所述的集成电路,其特征在于,从一组逻辑门中选择所述可选择的逻辑门,所述一组逻辑门包括AND、OR和XOR逻辑门。
CNB028249984A 2001-10-16 2002-10-11 高效逻辑打包的现场可编程门阵列核心单元 Expired - Fee Related CN1307586C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US32989201P 2001-10-16 2001-10-16
US60/329,892 2001-10-16

Publications (2)

Publication Number Publication Date
CN1605080A CN1605080A (zh) 2005-04-06
CN1307586C true CN1307586C (zh) 2007-03-28

Family

ID=23287464

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB028249984A Expired - Fee Related CN1307586C (zh) 2001-10-16 2002-10-11 高效逻辑打包的现场可编程门阵列核心单元

Country Status (4)

Country Link
US (2) US6801052B2 (zh)
EP (1) EP1444616A4 (zh)
CN (1) CN1307586C (zh)
WO (1) WO2003034289A2 (zh)

Families Citing this family (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7143020B1 (en) * 1999-10-07 2006-11-28 Cadence Design Systems, Inc. Method and system for generic inference of sequential elements
US7112994B2 (en) * 2002-07-08 2006-09-26 Viciciv Technology Three dimensional integrated circuits
US20040004251A1 (en) * 2002-07-08 2004-01-08 Madurawe Raminda U. Insulated-gate field-effect thin film transistors
US7673273B2 (en) * 2002-07-08 2010-03-02 Tier Logic, Inc. MPGA products based on a prototype FPGA
US7129744B2 (en) * 2003-10-23 2006-10-31 Viciciv Technology Programmable interconnect structures
US6992503B2 (en) 2002-07-08 2006-01-31 Viciciv Technology Programmable devices with convertibility to customizable devices
US8643162B2 (en) * 2007-11-19 2014-02-04 Raminda Udaya Madurawe Pads and pin-outs in three dimensional integrated circuits
US7812458B2 (en) * 2007-11-19 2010-10-12 Tier Logic, Inc. Pad invariant FPGA and ASIC devices
US7084666B2 (en) * 2002-10-21 2006-08-01 Viciciv Technology Programmable interconnect structures
US7176716B2 (en) * 2003-12-24 2007-02-13 Viciciv Technology Look-up table structure with embedded carry logic
US7317264B2 (en) * 2003-11-25 2008-01-08 Eaton Corporation Method and apparatus to independently control contactors in a multiple contactor configuration
US7019557B2 (en) * 2003-12-24 2006-03-28 Viciciv Technology Look-up table based logic macro-cells
US7030651B2 (en) 2003-12-04 2006-04-18 Viciciv Technology Programmable structured arrays
US7336097B2 (en) * 2003-12-24 2008-02-26 Viciciv, Inc. Look-up table structure with embedded carry logic
US7176713B2 (en) * 2004-01-05 2007-02-13 Viciciv Technology Integrated circuits with RAM and ROM fabrication options
KR100564611B1 (ko) * 2004-02-14 2006-03-29 삼성전자주식회사 하드 디스크 드라이브의 완충 구조체
US7489164B2 (en) * 2004-05-17 2009-02-10 Raminda Udaya Madurawe Multi-port memory devices
US7308671B1 (en) * 2004-12-06 2007-12-11 Altera Corporation Method and apparatus for performing mapping onto field programmable gate arrays utilizing fracturable logic cells
US7224183B2 (en) * 2005-08-10 2007-05-29 Altera Corporation Fast method for functional mapping to incomplete LUT pairs
US7486111B2 (en) * 2006-03-08 2009-02-03 Tier Logic, Inc. Programmable logic devices comprising time multiplexed programmable interconnect
US20080024165A1 (en) * 2006-07-28 2008-01-31 Raminda Udaya Madurawe Configurable embedded multi-port memory
US7725863B2 (en) 2007-02-27 2010-05-25 Agate Logic, Inc. Reverse routing methods for integrated circuits having a hierarchical interconnect architecture
US7635988B2 (en) * 2007-11-19 2009-12-22 Tier Logic, Inc. Multi-port thin-film memory devices
US20090128189A1 (en) * 2007-11-19 2009-05-21 Raminda Udaya Madurawe Three dimensional programmable devices
US7573294B2 (en) * 2007-12-26 2009-08-11 Tier Logic, Inc. Programmable logic based latches and shift registers
US7573293B2 (en) * 2007-12-26 2009-08-11 Tier Logic, Inc. Programmable logic based latches and shift registers
US7602213B2 (en) * 2007-12-26 2009-10-13 Tier Logic, Inc. Using programmable latch to implement logic
US7795913B2 (en) * 2007-12-26 2010-09-14 Tier Logic Programmable latch based multiplier
CN101246511B (zh) * 2008-02-28 2010-12-15 复旦大学 可编程逻辑器件快速逻辑块映射方法
US8230375B2 (en) 2008-09-14 2012-07-24 Raminda Udaya Madurawe Automated metal pattern generation for integrated circuits
CN101937424A (zh) * 2010-09-10 2011-01-05 南京航空航天大学 基于fpga实现高速fft处理的方法
US8159268B1 (en) 2010-11-16 2012-04-17 Raminda Udaya Madurawe Interconnect structures for metal configurable integrated circuits
US8159266B1 (en) 2010-11-16 2012-04-17 Raminda Udaya Madurawe Metal configurable integrated circuits
US8159265B1 (en) 2010-11-16 2012-04-17 Raminda Udaya Madurawe Memory for metal configurable integrated circuits
CN103259524A (zh) * 2012-02-17 2013-08-21 京微雅格(北京)科技有限公司 一种采用快速级连结构的集成电路
CN103886118B (zh) * 2012-12-21 2017-03-29 中国科学院微电子研究所 一种针对集成电路异质型逻辑单元的重综合方法
US9118325B1 (en) 2014-08-27 2015-08-25 Quicklogic Corporation Routing network for programmable logic device
US9628083B1 (en) * 2015-10-01 2017-04-18 Quicklogic Corporation Local routing network with selective fast paths for programmable logic device
US10312918B2 (en) 2017-02-13 2019-06-04 High Performance Data Storage And Processing Corporation Programmable logic design
CN115454378B (zh) * 2022-09-01 2023-07-18 深圳市紫光同创电子有限公司 一种查找表电路

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5610829A (en) * 1992-03-27 1997-03-11 Xilinx, Inc. Method for programming an FPLD using a library-based technology mapping algorithm
CN1241275A (zh) * 1996-10-30 2000-01-12 爱特梅尔股份有限公司 配置逻辑器件阵列的方法和系统
WO2001006421A1 (en) * 1999-07-16 2001-01-25 Atmel Corporation Software tool to allow filed programmable system level devices

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5600264A (en) 1995-10-16 1997-02-04 Xilinx, Inc. Programmable single buffered six pass transistor configuration
US5920202A (en) * 1997-02-26 1999-07-06 Xilinx, Inc. Configurable logic element with ability to evaluate five and six input functions
US5905385A (en) * 1997-04-01 1999-05-18 Advanced Micro Devices, Inc. Memory bits used to couple look up table inputs to facilitate increased availability to routing resources particularly for variable sized look up tables for a field programmable gate array (FPGA)
US6421817B1 (en) * 1997-05-29 2002-07-16 Xilinx, Inc. System and method of computation in a programmable logic device using virtual instructions
US6400180B2 (en) * 1999-02-25 2002-06-04 Xilinix, Inc. Configurable lookup table for programmable logic devices
US6363519B1 (en) 1999-02-26 2002-03-26 Xilinx, Inc. Method and apparatus for testing evolvable configuration bitstreams
WO2000054411A1 (en) * 1999-03-11 2000-09-14 Easic Corporation Integrated circuit technology

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5610829A (en) * 1992-03-27 1997-03-11 Xilinx, Inc. Method for programming an FPLD using a library-based technology mapping algorithm
CN1241275A (zh) * 1996-10-30 2000-01-12 爱特梅尔股份有限公司 配置逻辑器件阵列的方法和系统
WO2001006421A1 (en) * 1999-07-16 2001-01-25 Atmel Corporation Software tool to allow filed programmable system level devices

Also Published As

Publication number Publication date
EP1444616A2 (en) 2004-08-11
CN1605080A (zh) 2005-04-06
US7009421B2 (en) 2006-03-07
WO2003034289A2 (en) 2003-04-24
WO2003034289A3 (en) 2003-07-10
US20050040849A1 (en) 2005-02-24
US6801052B2 (en) 2004-10-05
US20030085733A1 (en) 2003-05-08
EP1444616A4 (en) 2005-08-24

Similar Documents

Publication Publication Date Title
CN1307586C (zh) 高效逻辑打包的现场可编程门阵列核心单元
US8001509B2 (en) Method for programming a mask-programmable logic device and device so programmed
US5448493A (en) Structure and method for manually controlling automatic configuration in an integrated circuit logic block array
Brown et al. Field-programmable gate arrays
US6049223A (en) Programmable logic array integrated circuit with general-purpose memory configurable as a random access or FIFO memory
Luu et al. Architecture description and packing for logic blocks with hierarchy, modes and complex interconnect
US6370677B1 (en) Method and system for maintaining hierarchy throughout the integrated circuit design process
US5757207A (en) Programmable logic array integrated circuit incorporating a first-in first-out memory
JP4799052B2 (ja) マスクプログラマブルロジックデバイスのスイッチ方法
JP2000010770A (ja) 情報処理システム、回路情報管理方法および回路情報記憶装置
US20060085779A1 (en) Representing device layout using tree structure
Cong et al. Boolean matching for LUT-based logic blocks with applications to architecture evaluation and technology mapping
CN101312346A (zh) 具有带改进的寄存器性能的逻辑模块的可编程逻辑器件
Legl et al. An implicit algorithm for support minimization during functional decomposition
US6157903A (en) Method of minimizing macrocell characterization time for state dependent power analysis
Legl et al. Computing support-minimal subfunctions during functional decomposition
EP0486248A2 (en) Logic duplication method for reducing circuit size and delay time
Zilic et al. Using decision diagrams to design ULMs for FPGAs
Ye Using the minimum set of input combinations to minimize the area of local routing networks in logic clusters containing logically equivalent I/Os in FPGAs
Higashi et al. Area-efficient LUT-like programmable logic using atom switch and its delay-optimal mapping algorithm
Kim et al. Development of technology mapping algorithm for CPLD under time constraint
Hsu et al. Hybrid LUT and SOP Reconfigurable Architecture.
Crow Variable ordering for robdd-based fpga logic synthesis
Barlow et al. Self-evolving hardware
Sterpone et al. Hardening FPGA-based Systems Against SEUs: A New Design Methodology.

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C19 Lapse of patent right due to non-payment of the annual fee
CF01 Termination of patent right due to non-payment of annual fee