CN1540865B - 逻辑元件及其制造方法、可编程逻辑设备、数据处理系统 - Google Patents
逻辑元件及其制造方法、可编程逻辑设备、数据处理系统 Download PDFInfo
- Publication number
- CN1540865B CN1540865B CN2004100330188A CN200410033018A CN1540865B CN 1540865 B CN1540865 B CN 1540865B CN 2004100330188 A CN2004100330188 A CN 2004100330188A CN 200410033018 A CN200410033018 A CN 200410033018A CN 1540865 B CN1540865 B CN 1540865B
- Authority
- CN
- China
- Prior art keywords
- multiplexer
- input
- output
- logic element
- lut
- 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
Links
Images
Classifications
-
- 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
-
- 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/1733—Controllable logic circuits
- H03K19/1737—Controllable logic circuits using multiplexers
Landscapes
- Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Logic Circuits (AREA)
- Tests Of Electronic Circuits (AREA)
Abstract
一种逻辑元件包括存储元件,多路复用器和控制信号。这些多路复用器按等级排列并且包括最高等级的多路复用器,其具有连接到存储元件的输入端和连接到次高等级的多路复用器输入端的输出端,这些多路复用器还包括一个第一等级的多路复用器,其具有连接到第二等级的多路复用器的输出端的输入端和至少一个输出端。控制信号被连接到多路复用器。在第一种操作模式下,控制信号确定在至少一个第一等级多路复用器输出端处的第一模式输出,在第二操作模式下,控制信号确定在所选择的非第一等级多路复用器输出端处的第二模式输出。
Description
技术领域
本发明涉及与可编程逻辑设备或者其他类似设备一同使用的逻辑元件。
背景技术
可编程逻辑设备(“PLD”)(有时也称为CPLD,PAL,PLA,FPLA,EPLD,EEPLD,LCA,FPGA,或者其他的名称)是众所周知的集成电路,其提供了固定集成电路的诸多优点和自定义集成电路的灵活性。这样的设备在本领域是众所周知的,并且典型地提供一种其至少一个部分能够被电子编程以满足用户的特殊需要的“不用定制的”的设备。传统上,专用集成电路(“ASIC”)是固定集成电路,然而,可能提供具有一个或者多个可编程部分的ASIC;因而,集成电路设备可能同时具有ASIC和PLD的特性。在这里使用的术语PLD将被认为是足够广泛的,并且包括了这样的设备。
典型地,PLD包括逻辑元件块,其有时被称为逻辑阵列块(“LAB”)或者“可配置逻辑块”(“CLB”)。逻辑元件(“LE”)也用其他的名字进行命名,诸如“逻辑电路”或者“逻辑单元”,该逻辑元件块也可以包括一个查找表(“LUT”),乘积项(product term),执行链,寄存器,以及其他的元件。
包括基于LUT的逻辑元件在内的逻辑元件,典型地包括可配置元件,这些可配置元件保存了用于决定逻辑元件所实现的一个或多个特殊函数的配置数据。典型的LUT电路可以包括保存数据(“1”或者“0”)的RAM比特。然而,可以使用其他类型的可配置元件。一些示例可以包括静态存取存储器,磁存取存储器,铁电存取存储器或者动态随机存取存储器,电可擦只读存储器,闪存,熔断式可编程连接,反熔断式可编程连接。在设备的制造期间通过掩模程序设计也能实现配置元件的编程。尽管掩模程序设计相对于一些已经列出的现场可编程的可选方案可能具有一些缺点,但是其可以被用于某种大量生产应用中。为了这个目的,通用术语“存储元件”将被用于指任意一种可编程元件,其可以被配置以决定由PLD所实现的函数。
正像前面所讨论的,通常将查找表(“LUT”)用作基本逻辑元件来构造PLD。例如,一个K-输入查找表(K-LUT)典型地包括2K个可编程存储元件,以及一个2K到1的多路复用器,在K个至多路复用器的选择输入的控制下选择其中一个存储元件。这K个输入可被认为是K-输入逻辑函数的输入,通过将存储元件的内容设置为合适值,就可以实现任意特殊的所需的逻辑函数。
在用LUT构造的逻辑电路的成本和速度之间存在一个权衡.典型地,每一LUT的成本随着K的选择而按指数规律地增长,K值越高,构造逻辑电路所需的LUT的数量的降低速度越慢.然而,对于更大的K值,串联的LUT的数量将减少,使得逻辑电路变得更快.例如,采用K=4,将需要十六个存储元件和一个16:1的多路复用器以构造一个单一的LUT,并且对于K=6,将需要六十四个存储元件和一个64:1的多路复用器.一个给定的逻辑电路可以需要一千个4-LUT,但是仅需要八百个6-LUT.在这种假定下,需要更多的硬件来构造6-LUT逻辑元件,因为LUT数量的减少不足以补偿每一LUT复杂性的提高.然而,对于6-LUT电路系统越来越高的硬件需求由延迟的减少来补偿.经过逻辑电路最长的路径可以是十个4-LUT或八个6-LUT.这样,6-LUT形式的电路可能更大,但是更快.此外,6-LUT电路将或许需要更少的PLD可编程路由,这部分地补偿了更高的成本所带来的影响.
较大LUT的效率较低的一个原因是,不是所有的逻辑函数都将使用所有的K个输入。对于前面所述的示例,八百个6-LUT实际可以包括三百个6-输入函数,三百个5-输入函数,一百个4-输入函数以及一百个3-输入函数。因而,基于6-LUT的LE在八百中仅有三百个能完全发挥其作用。
这样,需要这样一种具有可编程结构的逻辑元件:它能被配置为实现相对大的LUT,或者做为替换,实现多个较小的LUT。
发明内容
在本发明的一个实施例中,逻辑元件包括存储元件,多路复用器和控制信号。这些多路复用器按等级排列,包括一个最高等级的多路复用器,其具有连接到存储元件的输入端和连接到次高等级的多路复用器输入端的输出端,这些多路复用器还包含一个第一等级的多路复用器,其具有连接到第二等级的多路复用器的输出端的输入端和至少一个输出端。控制信号被连接到多路复用器。在第一种操作模式中,控制信号确定在至少一个第一等级多路复用器的输出端处的第一模式输出,以及在第二操作模式中,控制信号确定在所选择的非第一等级多路复用器的输出端处的第二模式输出。依照这个实施例的另一个方面,当逻辑元件在第一操作模式时,第一模式输出提供一个控制信号的完整函数。依照另一个方面,当逻辑元件在第二操作模式时,每一第二模式输出提供一个适当子集的控制信号的完整函数。依照另一个方面,当逻辑元件在第二操作模式时,一个或者多个控制信号被分为多个子控制信号,以至于使得相应的子控制信号在每一连接到所述分裂控制信号的多路复用器处替代每一分裂的控制信号。依照另一个方面,逻辑元件进一步包括一个或者多个控制多路复用器,具有连接到一个或者多个逻辑元件的控制信号的输出端,并且具有由控制多路复用器输入确定的输入。在某些操作条件下,至少两个控制多路复用器接收一个相同的控制多路复用器输入。依照另一个方面,逻辑元件进一步包括附加多路复用器,该附近的多路复用器能与触发器组合。依照另一个方面,逻辑元件进一步包括一个或者多个被连接到逻辑元件的模式多路复用器,用于在第一操作模式和第二操作模式之间切换。依照另一个方面,逻辑元件被包含在一种可编程逻辑设备内,该可编程逻辑设备本身包含在一种数据处理系统中。
本发明的另一个实施例,一种制造逻辑元件的方法包括提供存储元件,提供多路复用器,和提供控制信号.这些多路复用器按等级排列,包括最高等级的多路复用器,其具有连接到存储元件的输入端,和连接到次高等级的多路复用器输入端的输出端,这些多路复用器还包括一个第一等级的多路复用器,其具有连接到第二等级的多路复用器输出端的输入端和至少一个输出端.控制信号被连接到多路复用器.在第一操作模式下,控制信号确定在第一等级的多路复用器的至少一个输出端处的第一模式输出,以及在第二操作模式下,控制信号确定所选择的非第一等级多路复用器的输出端处的第二模式输出.这个实施例可以包括针对其他实施例在前面所讨论的方面.依照另一个方面,本方法进一步包括向逻辑元件添加一个或者多个控制多路复用器,具有连接到一个或者多个逻辑元件的控制信号的输出端,并且具有由控制多路复用器输入确定的输入.依照另一个方面,本方法进一步包括向逻辑元件添加一个或者多个连接到该逻辑元件的模式多路复用器,用于在第一操作模式和第二操作模式之间切换.
附图说明
图1示出依照本发明的一个实施例的可分裂(fracturable)6-LUT(“6-输入查找表”电路);
图2示出依照本发明的一个实施例的可分裂(6,2)-LUT;
图3示出依照本发明的一个实施例的具有两个触发器的可分裂(6,2)-LUT;
图4示出依照本发明的一个实施例的支持6LUT和独立寄存器的可分裂(6,2)-LUT;
图5示出依照本发明的一个实施例的支持6-LUT和两个独立寄存器的可分裂(6,2)-LUT;
图6示出一个示范性的数据处理系统,包括示范性可编程逻辑设备,在其中可以实现依照本发明的逻辑电路;
图7示出一个常规的6-LUT;
图8A示出一个常规的4-LUT;
图8B示出在图8A中示出的4:1多路复用器的进一步的细节。
具体实施方式
图7示出一个常规的6-LUT 700,其包括4个4-LUT 702。每一个4-LUT 702包括十六个存储元件和一个16:1多路复用器,其由输入a,b,c,d 704控制。4-LUT 702的输出向两个2:1多路复用器706提供输入,每一个多路复用器受输入e708的控制。这些多路复用器的输出向附加的2:1多路复用器710提供输入,该多路复用器710受输入f 712的控制,从而提供最终的输出714。以这种方式,能够实现六个输入的任意函数z1(a,b,c,d,e,f)。
图8A示出一个常规的4-LUT 800,其能被用作一个图7示出的6-LUT的组件。4-LUT 800包括存储元件819,以及4:1多路复用器850,840。每一存储元件819能保存一个数据比特(即,1或者0),并且如所示,每一个存储元件被连接到多路复用器850的输入端,以向其提供该比特。每一多路复用器850的两个控制输入端被分别连接到4-LUT 800的输入A 814和输入B 813。如图所示,这些多路复用器850的每一个的输出端被连接到另一个4:1多路复用器840的输入端。这个多路复用器840的两个控制输入端被分别连接到4-LUT800的输入C 811和输入D 812。这个多路复用器840的输出端提供4-LUT 800的最终的输出815。
本领域的那些技术人员将理解,诸如图8A的4-LUT 800的一个4-LUT能提供一个四个输入信号的完整函数。在这个上下文中的“完整”仅仅是指:存储元件819能被编程以配置4-LUT 800,从而实现任何一个四-输入函数。也就是说,能通过对存储元件819进行编程来对4-LUT 800进行配置(例如,将数值载入那些元件),以至于使得输出信号Y 815是输入信号A 814,B 813,C 811和D 812的全部逻辑函数中的任何一个,这将被本领域的那些技术人员理解.类似地,图7的6-LUT也能提供其6输入信号的完整函数.
图8B示出2:1多路复用器841,842的“树型结构”,其构成最终的4:1多路复用器840(另一个4:1多路复用器850能够类似地被表征)。多路复用器841,842的控制输入811,812与4-LUT 800的输入端相对应。更高等级的多路复用器842的输出(即,更接近于存储元件819)送到更接近输出815的下一个等级841。正像本领域技术人员可以理解的,可以将组成最终的4:1多路复用器840的2:1多路复用器841,842的“树型结构”看作是表征4-LUT 800的更大2:1多路复用器树型结构的一部分。一般地说,一个典型的LUT电路具有一个多路复用器的树型结构,其可以参照相对于LUT电路的输出所提供的2:1多路复用器的“等级”。
例如,最接近输出815的多路复用器841可以被称为在4-LUT 800的整个2:1多路复用器树型结构中的第一等级多路复用器,并且下一组的两个多路复用器842可被称为该树型结构中的第二等级。通过将图8B的结构扩展为图8A的结构,在4-LUT 800中存在四个等级的2:1多路复用器。4-LUT 800具有第三等级,包括四个2:1多路复用器(即,每个2:1多路复用器用于每一个多路复用器150),具有连接到逻辑输入B 813的控制输入,以及一个第四等级,包括八个2:1多路复用器(即,两个2:1多路复用器用于每一个多路复用器150),具有连接到逻辑输入A 114的控制输入。
正像将被本领域的技术人员所理解的,一个4:1多路复用器可以以不同于所示出的多路复用器840的方式而被实现,其在两个不同的等级具有三个2:1多路复用器841,842的树型结构。例如,可以由四个选通门来实现一个4:1多路复用器,每一个选通门可以由两个控制信号的译码输出来控制。在这样一个示例中,四个选通门将不能由彼此的等级来区别自身,然而,4:1多路复用器将有效实现两个等级的2:1多路复用。
图1示出一个依照本发明的第一实施例的可分裂6-LUT 100。与常规的6-LUT 700相似,可分裂6-LUT 100包括四个4-LUT 102。每一个4-LUT 102包括十六个存储元件和一个受输入a,b,c,d 104控制的16:1多路复用器。4-LUT102的输出端向两个2:1多路复用器106提供输入,这两个多路复用器中的每一个受输入e 108的控制。这些多路复用器106的输出端向一个附加的2:1多路复用器110提供输入,该附加的2:1多路复用器110受输入f 112的控制,从而提供最终的输出114。以这种方式,能够实现6个输入的任意函数z1(a,b,c,d,e,f)。
与常规的6-LUT 700比较,可分裂6-LUT 100包括一个附加的2:1多路复用器116,其能获得来自两个4-LUT 102的输入,并且受输入f112的控制。当用作一个6-LUT(即,非分裂操作模式)时,输出信号z1114是所有6个输入的完整函数。当作为两个函数使用时(即,分裂操作模式),从LUT 100的上半部获得的输出z0 118提供a,b,c,d,e的完整函数,以及,从附加的2:1多路复用器116获得的z2 120的输出提供a b,c,d,f的完整函数。这样,LUT能实现两个5-输入函数,这两个函数共享四个输入a,b,c,和d。可分裂LUT的逻辑外围电路被用于实现以下的选择功能:当LUT 100被用作单个的6-LUT时选择z1函数114,或当LUT100被用作两个5-LUT时选择z0118和z2120。可以理解,LUT的分裂可以更深一层地继续,以使得例如一个可分裂6-LUT能被配置为一个5-LUT和两个4-LUT的组合(这可以通过,例如,用顶部的两个4-LUT 102的相应输出来替换z0118输出来实现).其他组合可能类似地包括一个5-LUT和一个或者两个3-LUT的组合,或者最直接从图1示出的结构得出,一个四个4-LUT的组合.
正像图1所示出的,对于K=6的情况,一个可分裂的K-LUT仅有K个输入,以至于两个(K-1)函数必须使用一个共用K输入信号组。这意味着:每一(K-1)-LUT仅有一个唯一的输入信号,并且与另一个LUT共享(K-2)个信号。为了增加的可分裂LUT使用的灵活性,希望包括更多的输入信号。这可通过从前面的LUT级的公共输入信号中分裂出信号来实现。其以一个可分裂(K,M)-LUT来表示,其中M指的是加到LUT的附加输入信号的数量。
图2示出一个依照本发明的另一个实施例的可分裂(6,2)-LUT。与图1的可分裂6-LUT相似,可分裂(6,2)-LUT 200包括四个4-LUT 202。每一个4-LUT 202包括十六个存储元件和一个16:1多路复用器。4-LUT202的输出端向两个2:1多路复用器206提供输入,每一个多路复用器206受输入e 208的控制。这些多路复用器206的输出端向附加的2:1多路复用器210提供输入,该多路复用器210受输入f 212的控制,从而输出最终的输出214。一个附加2:1多路复用器216从两个4-LUT 202获得输入,并且受输入f212的控制。
与可分裂6-LUT 100比较,到四个4-LUT 202的两个输入被分裂。也就是说,两个输入a和b 204与在可分裂6-LUT 100中的相似输入104相对应。然而,可分裂6-LUT 100的输入c和d 104被分裂为用于4-LUT 202的上半部分的输入c1和d1 222,以及被用于下半部分的输入c2和d2 224。
按照惯例,到LUT的输入按照从最慢到最快的顺序被列出(即,a,b,c,d),以至于使得d是到每一4-LUT 202的最快输入。希望的是将到LUT最快的输入分裂,使得最快的输入彼此独立。当LUT被用作一个6-LUT时,d1和d2配备有相同的输入信号(即,d=d1=d2),类似地,c1和c2配备有相同的输入信号(即,c=c1=c2)。当LUT被用作两个5-LUT时,顶部的两个4-LUT形成逻辑函数z0(a,b,c1,d1,e),而底部的两个4-LUT形成逻辑函数z2(a,b,c2,d2,f)。这样,仅有两个逻辑信号,a和b必须在两个LUT之间共享。
因此,在可分裂模式的操作中,能够实现五个输入的完整函数,用于z0(a,b,c1,d1,e)218和z2(a,b,c2,d2,e)220,并且在非分裂模式的操作中,采用c=c1=c2和d=d1=d2,能够实现一个六个输入的完整函数z1(a,b,c,d,e,f)214。
可替换地,通过配置LUT,使之没有对一个或者多个输入的函数依赖性,一个可分裂(6,2)-LUT 200仅仅使用不多于8个不同的输入信号就能实现任何两个函数,诸如,一个3-输入函数和一个5-输入函数。例如,通过配置4-LUT 202的上半部分,使之没有对输入a和b 204的依赖性,就可以使一个(6,2)-LUT 200能够实现函数z0(c1,d1,e)218和z2(a,b,c2,d2,f)220。通常,一个(K,M)-LUT能实现最多可具有K-1个输入的任何两个函数,这两个函数仅仅使用不多于K+M个不同的输入信号。
通过利用8个输入a,b,c1,c2,d1,d2,e,和f208,222,204,224,212以及z1214的输出,可分裂(6,2)-LUT 200也可被用于不完整逻辑函数。在这种情况下,能够实现8-输入函数z1(a,b,c1,c 2,d2,e,f)的一些集合,但是,不同于一般的LUT,不是每一个8-输入函数都能被实现。然而,这可以通过试图设计包含这些函数和任意函数的逻辑电路得以开发。
逻辑元件的另一个方面是从LUT提供一个触发器的能力.按照惯例,LUT输出可以被用作输入到包含在相同逻辑元件中的触发器的数据.同样,在各种配置信息和逻辑信号的控制下,输入到触发器的数据可以被选择为到LUT的输入之一.本发明令人满意地使得可以将可分裂LUT与一个或者多个逻辑元件中的触发器组合在一起.
图3示出一个依照本发明的另一个实施例的逻辑元件300。逻辑元件300包括一个可分裂(6,2)-LUT302和两个触发器304a,304b。(6,2)-LUT 302具有输入A,B,C1,C2,D1,D2,E,和F,其中这些输入通过输入线LEIMA,LEIMB,LEIMC1,LEIMC2,LEIMD1,LEIMD2,LEIME,和LEIMF 306被供给。另外,通过用一个寄存器值REG0对LEIMC1进行多路复用和用一个寄存器值REG1对LEIMC2进行多路复用,两个多路复用器308a,308b供给输入C1和C2。在非分裂模式下,LUT 302提供一个单独的输出z1310,并且在分裂模式下,提供两个输出z0123和z1314。
LUT 302的输出是到两个多路复用器316a,316b的输入。这些多路复用器316a,316b提供到另一对多路复用器318a,318b的输入,另一对多路复用器318a,318b也从输入线LEIMC1320a和LEIMC2320b获得的输入,LEIMC1320a和LEIMC2320b与反相器322a,322b,NOR门324a,324b,和NAND门326a,326b组合。
来自这些后面的多路复用器318a,318b的输出和线值LEIMC1320a和LEIMC2320b被送到触发器304a,304b,这些触发器也接收来自存储值328和多路复用器330a,330b的组合的数据。这些触发器304a,304b的相关结构与那些用在当前由加利福尼亚,圣何塞的Altera公司当前售卖的Stratix逻辑元件中的结构类似。
第一触发器304a的输出连同LUT输出z0 312和z1 310转到第一组的三个多路复用器332a,从而确定第一组输出LOCAL0,LEOUT0和LEOUT1334a。第二触发器304b的输出连同LUT输出z1 310和z2 314转到第二组的三个多路复用器332b,从而确定第二组输出LOCAL1,LEOUT2和LEOUT3334a。
这个逻辑元件300令人满意地包括多路复用结构,用于使多达四个信号从LE输出(即,LEOUT0,LEOUT1,LEOUT2和LEOUT3)以及将两个信号送到内部(即,LOCAL0和LOCAL1)。在这个图中,线信号LEIMx 306指的是连接到逻辑元件的输入的逻辑信号源。图3的实施例令人满意地包括两个触发器304a,304b。LUT302现在能生成两个逻辑函数,因此,希望有两个触发器,能从非分裂K-LUT,或者从任一分裂LUT载入数据。
正像前面所讨论的,在图3中示出的触发器的连接能够被推广。各种各样的替代实施例是可能的,其中有关的触发器数据输入可以是LUT输出或者与LUT输入中的一个相同。在图3示出的实施例中,逻辑装置与加利福尼亚,圣何塞的Altera公司当前售卖的Stratix逻辑元件类似。
在图3的实施例中,触发器304a,304b中的每一个能从6-LUT输出z1 310或者从两个5-LUT输出z0 312和z2 314的其中一个载入.每一输出能从6-LUT输出,一个5-LUT输出或者一个触发器选择.多路复用器也被提供,用于将触发器的输出送回到LUT,以提供与Stratix设备一样的快速反馈.利用这个结构,6-LUT能供给一个或者两个触发器,每一个5-LUT能供给一个触发器,或者独立的触发器可以与一个共享输入的5-LUT或一个不共享输入的4-LUT相组合.然而,这种结构具有一个限制,也就是不能将一个6-LUT与一个独立的触发器组合,除非其共享一个输入,即使在总共有八个输入可用的情况中也是如此.这是因为在非分裂6-LUT模式下,C1和C2,以及D1和D2必须都提供相同的输入信号到LUT(即,C=C1=C2,D=D1=D2).图4的实施例针对这个问题.
图4示出一个依照本发明的另一个实施例的逻辑元件400。这个逻辑元件400与图3的逻辑元件300类似,但是在到LUT402的输入处包含了另加的多路复用。输入线LEIMC1406和寄存器值REG0被输入到多路复用器408a,其为LUT402的C1输入提供输入,并且输入线LEIMC1和LEIMC2406连同寄存器值REG1被输入到多路复用器408b,其为LUT402的C2输入提供输入。
逻辑元件400包括一个可分裂(6,2)-LUT402和两个触发器404a,404b。(6,2)-LUT402具有输入A,B,C1,C2,D1,D2,E,和F,其中通过输入线LEIMA,LEIMAB,LEIMC1,LEIMC2,LEIMD1,LEIMD2,LEIME,和LEIMF406提供这些输入。另外,通过用一个寄存器值REG0对LEIMC1进行多路复用和用一个寄存器值REG1对LEIMC2进行多路复用,两个多路复用器408a,408b馈给输入C1和C2。不同于图3的实施例,为输入C2提供输入的第二多路复用器408b,从输入线LEIMC1,输入线LEIMC2406和寄存器值REG1接收输入。
与先前的实施例300类似,在非分裂模式下,LUT 402提供一个单独的输出z1410,并且在分裂模式下,提供两个输出z0412和z1414。同样,与先前的实施例相同,电路包括用于LEMC1420a和LEMC2420b的附加线,多路复用器416a,416b,418a,418b,430a,430b,432a,432b,反相器422a,422b,NOR门424a,424b,NAND门426a,426b,存储值428,和输出434a,434b。
当LUT402在非分裂模式下操作时,图4的实施例有利地使用附加输入信号。在这种结构中,其中通过从原输入中分裂出来的附加的输入(在这种情况下C1)在相应的多路复用器408b处可以被连接到相应的分裂输入(在这种情况下C2)。这允许6-LUT将C信号带到单独引脚C1上,并将其连接到LUT402中的C1和C2。结果,输入引脚C2现在能用于另一个目的,就是在这种情况下,将数据信号带入一个完全独立的触发器404b。这允许逻辑元件支持一个6LUT,其可以有选择地为一个触发器404a以及一个独立触发器404b提供输入。
在图4的实施例中,通过利用两个触发器载入相同数据,可以将寄存器的快速反馈送到LUT的输入,因此,结果能被反馈到C1和C2。在一个替代实施例中,REG0和REG1被输入到为C1和C2提供输入的多路复用器408a,408b中的一个或者两个。这允许单个的触发器被用于存储数据,并且被反馈回到C1和C2。各种替代实施例选择在哪个触发器404a,404b能被用于6-LUT402的快速反馈模式时是不同的,并且最佳的选择将取决于将被实现的逻辑电路和在PLD中提供的路由结构的灵活性。尽管通常优选的是将到LUT最慢的分裂输入提供给触发器,但也可以使用其他输入。
图5示出一个对应于本发明的另一个实施例的逻辑元件500。这个逻辑元件500与图3的逻辑元件300类似,但是在到LUT502的输入处包括附加多路复用。输入线LEIMC1506为LUT502的C1输入提供输入,并且输入线LEIMC1,输入线LEIMC2506连同寄存器值REG0被输入到多路复用器508a,该多路复用器508a为LUT502的C2输入提供输入。输入线LEIMD2506为LUT502的D2输入提供输入,并且输入线LEIMD1,输入线LEIMD2506连同寄存器值REG1被输入到多路复用器508b,多路复用器508b为LUT502的D1输入提供输入。
逻辑元件500包括一个可分裂(6,2)-LUT502和两个触发器504a,504b.(6,2)-LUT502具有输入A,B,C1,C2,D1,D2,E,和F,其中通过输入线LEIMA,LEIMAB,LEIMC1,LEIMC2,LEIMD1,LEIMD2,LEIME,和LEIMF506提供这些输入.另外,通过将REG0与LEIMC1、LEIMC2多路复用,以及将REG1与LEIMD1、LEIMD2多路复用,两个多路复用器508a,508b为输入C2和D1提供输入.不同于图3的实施例,为输入C2提供输入的第一多路复用器508a从输入线LEIMC1,输入线LEIMC2和寄存器值REG0接收输入,并且为输入D1提供输入的第二多路复用器408b从输入线LEIMD1,输入线LEIMD2和寄存器值REG1接收输入.
与图3中的实施例类似,LUT502在非分裂模式下提供一个单独的输出z1510,并且在分裂模式下,提供两个输入z0512和z2514。同样,与先前的实施例相同,电路包括用于LEMC1520a和LEMC2520b的附加线,多路复用器516a,516b,518a,518b,530a,530b,532a,532b,反相器522a,522b,NOR门524a,524b,NAND门526a,526b,存储值528,和输出534a,534b。
图5的实施例通过将触发器504a,504b与LUT相组合来使得增加灵活性,从而允许6-LUT 502与两个独立的寄存器(在第一多路复用器508a处的REG0和在第二多路复用器508b处的REG1)组合。通过允许C1/2或者D1/2被驱动到相应的引脚上,一个单独的信号可以被用于C和D中的每一个。在图5的实施例中,C1能被用作一个LUT输入,C2被用作一个到触发器504b的数据输入,而D2被用作到LUT的另一个输入,D 1被用作到触发器504a的数据输入。对于哪个输入被用于哪个触发器以及哪个信号被用作LUT输入或者触发器数据的精确选择将取决于正在被构建的逻辑电路的性质。此外,从哪些输入中分裂出输入的选择可以根据所包括的触发器封装灵活性程度而发生变化。随着并入更多的多路复用器以增加触发器的封装灵活性,所增加的延迟将引起其优选地从更慢的输入中分裂出输入而不是从最快的输入中分裂出输入。最佳选择取决于将被实现的逻辑电路以及LUT设计中的延迟的权衡。
在图5的实施例中,仅通过用于逻辑元件中的单独的触发器来支持快速反馈。正像前面所讨论的,通过添加附加输入到多路复用器从而支持两个快速反馈来实现替代实施例。
图6示出一个数据处理系统600,具有一个PLD610,可以包括如前面所讨论的本发明的实施例。PLD610包括多个逻辑阵列块(LAB),诸如所示出的LAB612(仅示出一个LAB,以避免附图过于复杂)。LAB 612包括多个逻辑元件,诸如所示出的逻辑元件611(仅示出一个逻辑元件,以避免附图过于复杂)。数据处理系统600可以包括下列组件中的一个或者多个:处理器640;存储器650;I/O电路620;以及外围设备630。这些组件通过系统总线665连接在一起,并且放在一个电路板660上,其被包含在一个最终用户系统670中。
系统600能被用于各种各样的应用中,诸如计算机组网,数据组网,检测仪表,视频处理,数字信号处理,或者任意其他的期望利用可编程或者可再编程的优点的应用,PLD 610能被用于执行各种不同的逻辑函数。例如,PLD 610能被配置为一个处理器或者控制器,与处理器640协同工作(或者,在替代实施例中,一个PLD其本身可用作一个单独的系统处理器)。PLD610也可以被用作一个判定器,用于判定是否可以访问系统600的共享资源。在另一个例子中,PLD 610能被配置为一个在处理器和系统600的其他组件之一之间的接口。应当注意,系统600仅是示范性的。
尽管仅在前面详细描述了本发明的某些示范性实施例,本领域的技术人员将容易地理解,在不从本质上脱离本发明的新颖的教导和优点的前提下,可能对示范性实施例进行许多修改.因此,所有这样的修改都被包含在本发明的范围之内.
Claims (25)
1.一种逻辑元件,包括:
多个存储元件;
多个多路复用器,所述的多个多路复用器按照多个等级进行排列,包括最高等级的多路复用器,其具有连接到存储元件的输入端以及连接到次高等级的多路复用器的输入端的输出端,所述的多个多路复用器还包括第一等级的多路复用器,其具有连接到第二等级的多路复用器的输出端的输入端和至少一个输出端,其中第二等级的多路复用器的输入端连接到次高等级的多路复用器的输出端,以及
多个连接到多路复用器的控制信号,其中
在第一操作模式下,控制信号确定在第一等级的多路复用器的至少一个输出端处的第一模式输出,以及
在第二操作模式下,控制信号确定在除第一等级多路复用器以外的多路复用器的所选输出端处的多个第二模式的输出。
2.根据权利要求1所述的逻辑元件,其中,在第一操作模式下,第一模式输出提供控制信号的完整函数。
3.根据权利要求2所述的逻辑元件,其中,在第二操作模式下,每一第二模式输出提供一个适当子集的控制信号的完整函数。
4.根据权利要求1所述的逻辑元件,其中,在第二操作模式下,一个或者多个控制信号被分裂为多个子控制信号,以便在连接到所述分裂控制信号的每个多路复用器处用相应的子控制信号替代每个分裂控制信号。
5.根据权利要求1所述的逻辑元件,进一步包括:一个或者多个控制多路复用器,其输出连接到逻辑元件的一个或者多个控制信号,其输入由多个控制-多路复用器的输入确定。
6.根据权利要求5所述的逻辑元件,进一步包括:一个或者多个输入-输出多路复用器,其输入连接到控制多路复用器的一个或者多个输入端,并且这些多路复用器的一个或者多个输出按照等级进行排列。
7.根据权利要求6所述的逻辑元件,其中,至少两个控制多路复用器接收一个相同的控制多路复用器输入。
8.根据权利要求6所述的逻辑元件,进一步包括:一个或者多个触发器,其输入连接到控制多路复用器的一个或者多个输入。
9.根据权利要求6所述的逻辑元件,进一步包括:一个或者多个触发器,其输入端连接到输入-输出多路复用器的一个或者多个输出端。
10.根据权利要求1所述的逻辑元件,进一步包括:连接到该逻辑元件的一个或者多个模式多路复用器,用于在第一操作模式和第二操作模式之间切换。
11.一种可编程逻辑设备,包括:一个依照权利要求1的逻辑元件。
12.一种数据处理系统,包括:一个依照权利要求11的可编程逻辑设备。
13.一种制造逻辑元件的方法,包括:
提供多个存储元件;
提供多个多路复用器,所述多路复用器按照多个等级进行排列,包括最高等级的多路复用器,其具有连接到存储元件的输入端以及连接到次高等级的多路复用器的输入端的输出端,所述多路复用器还包括第一等级的多路复用器,其具有连接到第二等级的多路复用器的输出端的输入端和至少一个输出端,,其中第二等级的多路复用器的输入端连接到次高等级的多路复用器的输出端,以及
提供多个控制信号,这些控制信号被连接到多路复用器,其中
在第一操作模式下,控制信号确定在第一等级的多路复用器的至少一个输出端处的第一模式输出,以及
在第二操作模式下,控制信号确定在除第一等级多路复用器以外的多路复用器的所选输出端处的多个第二模式的输出。
14.根据权利要求13所述的方法,其中,在第一操作模式下,第一模式输出提供控制信号的完整函数。
15.根据权利要求14所述的方法,其中,在第二操作模式下,每个第二模式输出提供一个适当子集的控制信号的完整函数。
16.根据权利要求13所述的方法,其中,在第二操作模式下,一个或者多个控制信号被分裂为多个子控制信号,以便在连接到所述分裂控制信号的每个多路复用器处用相应的子控制信号替代每个分裂控制信号。
17.根据权利要求13所述的方法,进一步包括:向逻辑元件添加一个或者多个控制多路复用器,其输出连接到逻辑元件的一个或者多个控制信号,其输入由多个控制多路复用器的输入确定。
18.根据权利要求17所述的方法,进一步包括:向该逻辑元件添加一个或者多个输入-输出多路复用器,其输入连接到控制多路复用器的一个或者多个输入端,并且这些多路复用器的一个或者多个输出按照等级进行排列。
19.根据权利要求18所述的方法,其中,至少两个控制多路复用器接收一个相同的控制多路复用器输入。
20.根据权利要求18所述的方法,进一步包括:向逻辑元件添加一个或者多个触发器,其输入连接到控制多路复用器的一个或者多个输入。
21.根据权利要求18所述的方法,进一步包括:向逻辑元件添加一个或者多个触发器,其输入端连接到输入-输出多路复用器的一个或者多个输出端。
22.根据权利要求13所述的方法,进一步包括:向逻辑元件添加连接到该逻辑元件的一个或者多个模式多路复用器,用于在第一操作模式和第二操作模式之间切换。
23.一种逻辑元件,包括:
多个存储元件;
多个多路复用器,所述的多个多路复用器按照多个等级进行排列,包括最高等级的多路复用器,其具有连接到存储元件的输入端以及连接到次高等级的多路复用器的输入端的输出端,所述的多个多路复用器还包括第一等级的多路复用器,其具有连接到第二等级的多路复用器的输出端的输入端和至少一个输出端,,其中第二等级的多路复用器的输入端连接到次高等级的多路复用器的输出端,以及
多个连接到多路复用器的控制信号,
一个或者多个控制多路复用器,其输出连接到逻辑元件的一个或者多个控制信号,其输入由多个控制多路复用器的输入确定;以及
连接到该逻辑元件的一个或者多个模式多路复用器,用于在第一操作模式和第二操作模式之间切换,其中
在第一操作模式下,控制信号确定在第一等级的多路复用器的至少一个输出端处的第一模式输出,以及
在第二操作模式下,控制信号确定在除第一等级多路复用器以外的多路复用器的所选输出端处的多个第二模式的输出。
24.一种可编程逻辑设备,包括:一个依照权利要求23的逻辑元件。
25.一种数据处理系统,包括:一个依照权利要求24的可编程逻辑设备。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410504037.8A CN104320129B (zh) | 2003-02-10 | 2004-02-09 | 可分裂的查找表及逻辑元件 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/364,310 US6943580B2 (en) | 2003-02-10 | 2003-02-10 | Fracturable lookup table and logic element |
US10/364310 | 2003-02-10 |
Related Child Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201010142831A Division CN101820278A (zh) | 2003-02-10 | 2004-02-09 | 可分裂的查找表及逻辑元件 |
CN201410504037.8A Division CN104320129B (zh) | 2003-02-10 | 2004-02-09 | 可分裂的查找表及逻辑元件 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1540865A CN1540865A (zh) | 2004-10-27 |
CN1540865B true CN1540865B (zh) | 2010-05-12 |
Family
ID=32655681
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201010142831A Pending CN101820278A (zh) | 2003-02-10 | 2004-02-09 | 可分裂的查找表及逻辑元件 |
CN2004100330188A Expired - Fee Related CN1540865B (zh) | 2003-02-10 | 2004-02-09 | 逻辑元件及其制造方法、可编程逻辑设备、数据处理系统 |
CN201410504037.8A Expired - Fee Related CN104320129B (zh) | 2003-02-10 | 2004-02-09 | 可分裂的查找表及逻辑元件 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201010142831A Pending CN101820278A (zh) | 2003-02-10 | 2004-02-09 | 可分裂的查找表及逻辑元件 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410504037.8A Expired - Fee Related CN104320129B (zh) | 2003-02-10 | 2004-02-09 | 可分裂的查找表及逻辑元件 |
Country Status (4)
Country | Link |
---|---|
US (3) | US6943580B2 (zh) |
EP (1) | EP1445864A3 (zh) |
JP (1) | JP4537086B2 (zh) |
CN (3) | CN101820278A (zh) |
Families Citing this family (66)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7800401B1 (en) | 2003-02-10 | 2010-09-21 | Altera Corporation | Fracturable lookup table and logic element |
US6888373B2 (en) | 2003-02-11 | 2005-05-03 | Altera Corporation | Fracturable incomplete look up table for area efficient logic elements |
US7302460B1 (en) * | 2003-09-11 | 2007-11-27 | Altera Corporation | Arrangement of 3-input LUT's to implement 4:2 compressors for multiple operand arithmetic |
US7185035B1 (en) * | 2003-10-23 | 2007-02-27 | Altera Corporation | Arithmetic structures for programmable logic devices |
US7167022B1 (en) | 2004-03-25 | 2007-01-23 | Altera Corporation | Omnibus logic element including look up table based logic elements |
US7486110B2 (en) * | 2004-09-24 | 2009-02-03 | Stmicroelectronics Pvt. Ltd. | LUT based multiplexers |
US7358765B2 (en) * | 2005-02-23 | 2008-04-15 | Cswitch Corporation | Dedicated logic cells employing configurable logic and dedicated logic functions |
US7193436B2 (en) * | 2005-04-18 | 2007-03-20 | Klp International Ltd. | Fast processing path using field programmable gate array logic units |
KR20060128450A (ko) * | 2005-06-10 | 2006-12-14 | 삼성전자주식회사 | 표시 장치 및 표시 장치의 구동 장치 |
US7804719B1 (en) | 2005-06-14 | 2010-09-28 | Xilinx, Inc. | Programmable logic block having reduced output delay during RAM write processes when programmed to function in RAM mode |
US7256612B1 (en) | 2005-06-14 | 2007-08-14 | Xilinx, Inc. | Programmable logic block providing carry chain with programmable initialization values |
US7276934B1 (en) | 2005-06-14 | 2007-10-02 | Xilinx, Inc. | Integrated circuit with programmable routing structure including diagonal interconnect lines |
US7193433B1 (en) * | 2005-06-14 | 2007-03-20 | Xilinx, Inc. | Programmable logic block having lookup table with partial output signal driving carry multiplexer |
US7268587B1 (en) | 2005-06-14 | 2007-09-11 | Xilinx, Inc. | Programmable logic block with carry chains providing lookahead functions of different lengths |
US7253658B1 (en) | 2005-06-14 | 2007-08-07 | Xilinx, Inc. | Integrated circuit providing direct access to multi-directional interconnect lines in a general interconnect structure |
US7265576B1 (en) | 2005-06-14 | 2007-09-04 | Xilinx, Inc. | Programmable lookup table with dual input and output terminals in RAM mode |
US7274214B1 (en) | 2005-06-14 | 2007-09-25 | Xilinx, Inc. | Efficient tile layout for a programmable logic device |
US7375552B1 (en) | 2005-06-14 | 2008-05-20 | Xilinx, Inc. | Programmable logic block with dedicated and selectable lookup table outputs coupled to general interconnect structure |
US7295035B1 (en) * | 2005-08-09 | 2007-11-13 | Lattice Semiconductor Corporation | Programmable logic device with enhanced logic block architecture |
US7330052B2 (en) * | 2005-09-22 | 2008-02-12 | Altera Corporation | Area efficient fractureable logic elements |
JP4438000B2 (ja) * | 2005-11-15 | 2010-03-24 | 株式会社半導体理工学研究センター | リコンフィギャラブルロジックブロック、リコンフィギャラブルロジックブロックを備えるプログラマブル論理回路装置、および、リコンフィギャラブルロジックブロックの構成方法 |
US7902864B1 (en) * | 2005-12-01 | 2011-03-08 | Altera Corporation | Heterogeneous labs |
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 |
US7262722B1 (en) * | 2006-06-26 | 2007-08-28 | Intel Corporation | Hardware-based CABAC decoder with parallel binary arithmetic decoding |
US20080079460A1 (en) * | 2006-09-29 | 2008-04-03 | Infineon Technologies Ag | Programmable logic cell, configurable cell, configurable cell arrangement, configurable logic array, mask programmable basic cell, mask programmable gate array and method |
US7394287B1 (en) * | 2007-05-21 | 2008-07-01 | Altera Corporation | Programmable logic device having complex logic blocks with improved logic cell functionality |
US7459932B1 (en) * | 2007-05-24 | 2008-12-02 | Altera Corporation | Programmable logic device having logic modules with improved register capabilities |
US7795913B2 (en) * | 2007-12-26 | 2010-09-14 | Tier Logic | Programmable latch based multiplier |
US8514994B1 (en) | 2008-10-02 | 2013-08-20 | Altera Corporation | Double data rate operation in an integrated circuit |
US7948792B1 (en) | 2009-04-15 | 2011-05-24 | Altera Corporation | Memory and techniques for using same |
US7978102B1 (en) * | 2010-03-09 | 2011-07-12 | Himax Media Solutions, Inc. | Multi-bin CABAC decision bin decoder |
US8952721B2 (en) | 2010-06-24 | 2015-02-10 | Taiyo Yuden Co., Ltd. | Semiconductor device |
JP5701054B2 (ja) * | 2010-12-28 | 2015-04-15 | 国立大学法人 熊本大学 | リコンフィギュラブルロジックブロック、並びに、これを用いたプログラマブル論理回路装置、及び、テクノロジマッピング方法 |
CN102147720B (zh) * | 2011-03-18 | 2014-04-09 | 深圳市国微电子有限公司 | 用查找表实现多输入逻辑项之间的运算的装置及方法 |
US9450585B2 (en) * | 2011-04-20 | 2016-09-20 | Microchip Technology Incorporated | Selecting four signals from sixteen inputs |
CN103259528A (zh) * | 2012-02-17 | 2013-08-21 | 京微雅格(北京)科技有限公司 | 一种异构可编程逻辑结构的集成电路 |
US8581624B2 (en) * | 2012-03-29 | 2013-11-12 | Altera Corporation | Integrated circuits with multi-stage logic regions |
US20130278289A1 (en) * | 2012-04-18 | 2013-10-24 | Te-Tse Jang | Method and Apparatus for Improving Efficiency of Programmable Logic Circuit Using Cascade Configuration |
US9571103B2 (en) * | 2012-05-25 | 2017-02-14 | Semiconductor Energy Laboratory Co., Ltd. | Lookup table and programmable logic device including lookup table |
US9007089B2 (en) * | 2012-10-21 | 2015-04-14 | Ememory Technology Inc. | Integrated circuit design protecting device and method thereof |
JP6564186B2 (ja) * | 2012-10-28 | 2019-08-21 | 太陽誘電株式会社 | 再構成可能な半導体装置 |
WO2014132670A1 (ja) * | 2013-03-01 | 2014-09-04 | アトナープ株式会社 | 再構成する情報を生成する装置および方法 |
CN104242913B (zh) * | 2013-06-21 | 2018-01-05 | 京微雅格(北京)科技有限公司 | 一种面积优化的fpga互连结构 |
CN103746686B (zh) * | 2014-01-26 | 2017-07-07 | 中国电子科技集团公司第五十八研究所 | 二维可扩展多路复用器的级联结构 |
US9966960B2 (en) * | 2014-12-17 | 2018-05-08 | Silicon Laboratories Inc. | Configurable logic circuit including dynamic lookup table |
US9705504B1 (en) * | 2016-01-13 | 2017-07-11 | Altera Corporation | Power gated lookup table circuitry |
US10068045B1 (en) * | 2016-12-09 | 2018-09-04 | Xilinx, Inc. | Programmable logic device design implementations with multiplexer transformations |
US11308057B2 (en) | 2016-12-12 | 2022-04-19 | Advanced Micro Devices, Inc. | System and method for multiplexer tree indexing |
TW202404049A (zh) | 2016-12-14 | 2024-01-16 | 成真股份有限公司 | 標準大宗商品化現場可編程邏輯閘陣列(fpga)積體電路晶片組成之邏輯驅動器 |
US11625523B2 (en) | 2016-12-14 | 2023-04-11 | iCometrue Company Ltd. | Logic drive based on standard commodity FPGA IC chips |
US10447274B2 (en) | 2017-07-11 | 2019-10-15 | iCometrue Company Ltd. | Logic drive based on standard commodity FPGA IC chips using non-volatile memory cells |
US10957679B2 (en) | 2017-08-08 | 2021-03-23 | iCometrue Company Ltd. | Logic drive based on standardized commodity programmable logic semiconductor IC chips |
US10630296B2 (en) | 2017-09-12 | 2020-04-21 | iCometrue Company Ltd. | Logic drive with brain-like elasticity and integrality based on standard commodity FPGA IC chips using non-volatile memory cells |
US10608642B2 (en) * | 2018-02-01 | 2020-03-31 | iCometrue Company Ltd. | Logic drive using standard commodity programmable logic IC chips comprising non-volatile radom access memory cells |
US10623000B2 (en) | 2018-02-14 | 2020-04-14 | iCometrue Company Ltd. | Logic drive using standard commodity programmable logic IC chips |
US10608638B2 (en) | 2018-05-24 | 2020-03-31 | iCometrue Company Ltd. | Logic drive using standard commodity programmable logic IC chips |
US10892011B2 (en) | 2018-09-11 | 2021-01-12 | iCometrue Company Ltd. | Logic drive using standard commodity programmable logic IC chips comprising non-volatile random access memory cells |
US11309334B2 (en) | 2018-09-11 | 2022-04-19 | iCometrue Company Ltd. | Logic drive using standard commodity programmable logic IC chips comprising non-volatile random access memory cells |
US10937762B2 (en) | 2018-10-04 | 2021-03-02 | iCometrue Company Ltd. | Logic drive based on multichip package using interconnection bridge |
US11616046B2 (en) | 2018-11-02 | 2023-03-28 | iCometrue Company Ltd. | Logic drive based on chip scale package comprising standardized commodity programmable logic IC chip and memory IC chip |
US11211334B2 (en) | 2018-11-18 | 2021-12-28 | iCometrue Company Ltd. | Logic drive based on chip scale package comprising standardized commodity programmable logic IC chip and memory IC chip |
US11227838B2 (en) | 2019-07-02 | 2022-01-18 | iCometrue Company Ltd. | Logic drive based on multichip package comprising standard commodity FPGA IC chip with cooperating or supporting circuits |
US10985154B2 (en) | 2019-07-02 | 2021-04-20 | iCometrue Company Ltd. | Logic drive based on multichip package comprising standard commodity FPGA IC chip with cryptography circuits |
US11887930B2 (en) | 2019-08-05 | 2024-01-30 | iCometrue Company Ltd. | Vertical interconnect elevator based on through silicon vias |
US11637056B2 (en) | 2019-09-20 | 2023-04-25 | iCometrue Company Ltd. | 3D chip package based on through-silicon-via interconnection elevator |
US11600526B2 (en) | 2020-01-22 | 2023-03-07 | iCometrue Company Ltd. | Chip package based on through-silicon-via connector and silicon interconnection bridge |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5724276A (en) * | 1996-06-17 | 1998-03-03 | Xilinx, Inc. | Logic block structure optimized for sum generation |
US5761099A (en) * | 1994-11-04 | 1998-06-02 | Altera Corporation | Programmable logic array integrated circuits with enhanced carry routing |
US5818255A (en) * | 1995-09-29 | 1998-10-06 | Xilinx, Inc. | Method and circuit for using a function generator of a programmable logic device to implement carry logic functions |
Family Cites Families (50)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE3630835C2 (de) * | 1985-09-11 | 1995-03-16 | Pilkington Micro Electronics | Integrierte Halbleiterkreisanordnungen und Systeme |
US5343406A (en) | 1989-07-28 | 1994-08-30 | Xilinx, Inc. | Distributed memory architecture for a configurable logic array and method for using distributed memory |
US5212652A (en) * | 1989-08-15 | 1993-05-18 | Advanced Micro Devices, Inc. | Programmable gate array with improved interconnect structure |
US5233539A (en) * | 1989-08-15 | 1993-08-03 | Advanced Micro Devices, Inc. | Programmable gate array with improved interconnect structure, input/output structure and configurable logic block |
US5295090A (en) | 1992-05-10 | 1994-03-15 | Xilinx, Inc. | Logic structure and circuit for fast carry |
US5267187A (en) | 1990-05-10 | 1993-11-30 | Xilinx Inc | Logic structure and circuit for fast carry |
JPH0525025A (ja) * | 1991-07-22 | 1993-02-02 | Kao Corp | 毛髪化粧料 |
US5359468A (en) | 1991-08-06 | 1994-10-25 | R-Byte, Inc. | Digital data storage tape formatter |
US5260611A (en) | 1991-09-03 | 1993-11-09 | Altera Corporation | Programmable logic array having local and long distance conductors |
US5436575A (en) | 1991-09-03 | 1995-07-25 | Altera Corporation | Programmable logic array integrated circuits |
US5260610A (en) | 1991-09-03 | 1993-11-09 | Altera Corporation | Programmable logic element interconnections for programmable logic array integrated circuits |
US5633830A (en) | 1995-11-08 | 1997-05-27 | Altera Corporation | Random access memory block circuitry for programmable logic array integrated circuit devices |
US5359242A (en) | 1993-01-21 | 1994-10-25 | Altera Corporation | Programmable logic with carry-in/carry-out between logic blocks |
JP2780555B2 (ja) * | 1992-01-29 | 1998-07-30 | 日本電気株式会社 | キャッシュ・メモリ内蔵型マイクロプロセッサ |
US5274581A (en) | 1992-05-08 | 1993-12-28 | Altera Corporation | Look up table implementation of fast carry for adders and counters |
US5365125A (en) | 1992-07-23 | 1994-11-15 | Xilinx, Inc. | Logic cell for field programmable gate array having optional internal feedback and optional cascade |
US5483478A (en) | 1992-10-16 | 1996-01-09 | Xilinx, Inc. | Method and structure for reducing carry delay for a programmable carry chain |
US5349250A (en) | 1993-09-02 | 1994-09-20 | Xilinx, Inc. | Logic structure and circuit for fast carry |
US5629886A (en) | 1993-09-02 | 1997-05-13 | Xilinx, Inc. | Method and structure for providing fast propagation of a carry signal in a field programmable gate array |
US5481206A (en) | 1993-09-02 | 1996-01-02 | Xilinx, Inc. | Circuit for fast carry and logic |
US6154053A (en) | 1993-09-02 | 2000-11-28 | Xilinx, Inc. | Look-ahead carry structure with homogeneous CLB structure and pitch larger than CLB pitch |
US6288570B1 (en) | 1993-09-02 | 2001-09-11 | Xilinx, Inc. | Logic structure and circuit for fast carry |
US5898319A (en) | 1993-09-02 | 1999-04-27 | Xilinx, Inc. | Method and structure for providing fast conditional sum in a field programmable gate array |
US5546018A (en) | 1993-09-02 | 1996-08-13 | Xilinx, Inc. | Fast carry structure with synchronous input |
US5689195A (en) | 1995-05-17 | 1997-11-18 | Altera Corporation | Programmable logic array integrated circuit devices |
US5909126A (en) | 1995-05-17 | 1999-06-01 | Altera Corporation | Programmable logic array integrated circuit devices with interleaved logic array blocks |
US5631576A (en) | 1995-09-01 | 1997-05-20 | Altera Corporation | Programmable logic array integrated circuit devices with flexible carry chains |
US5675262A (en) | 1995-10-26 | 1997-10-07 | Xilinx, Inc. | Fast carry-out scheme in a field programmable gate array |
JPH09181598A (ja) * | 1995-12-18 | 1997-07-11 | At & T Corp | フィールドプログラマブルゲートアレイ |
US5672985A (en) | 1995-12-18 | 1997-09-30 | Altera Corporation | Programmable logic array integrated circuits with carry and/or cascade rings |
US5898602A (en) | 1996-01-25 | 1999-04-27 | Xilinx, Inc. | Carry chain circuit with flexible carry function for implementing arithmetic and logical functions |
US6107822A (en) * | 1996-04-09 | 2000-08-22 | Altera Corporation | Logic element for a programmable logic integrated circuit |
US5999016A (en) | 1996-10-10 | 1999-12-07 | Altera Corporation | Architectures for programmable logic devices |
US6288568B1 (en) * | 1996-11-22 | 2001-09-11 | Xilinx, Inc. | FPGA architecture with deep look-up table RAMs |
US6297665B1 (en) * | 1996-11-22 | 2001-10-02 | Xilinx, Inc. | FPGA architecture with dual-port deep look-up table RAMS |
US6323682B1 (en) * | 1996-11-22 | 2001-11-27 | Xilinx, Inc. | FPGA architecture with wide function multiplexers |
US5963050A (en) * | 1997-02-26 | 1999-10-05 | Xilinx, Inc. | Configurable logic element with fast feedback paths |
US5889411A (en) | 1997-02-26 | 1999-03-30 | Xilinx, Inc. | FPGA having logic element carry chains capable of generating wide XOR functions |
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) |
US6021423A (en) | 1997-09-26 | 2000-02-01 | Xilinx, Inc. | Method for parallel-efficient configuring an FPGA for large FFTS and other vector rotation computations |
US6191611B1 (en) | 1997-10-16 | 2001-02-20 | Altera Corporation | Driver circuitry for programmable logic devices with hierarchical interconnection resources |
US6118300A (en) | 1998-11-24 | 2000-09-12 | Xilinx, Inc. | Method for implementing large multiplexers with FPGA lookup tables |
US6157209A (en) | 1998-12-18 | 2000-12-05 | Xilinx, Inc. | Loadable up-down counter with asynchronous reset |
US6154052A (en) | 1999-02-04 | 2000-11-28 | Xilinx, Inc. | Combined tristate/carry logic mechanism |
US6150838A (en) * | 1999-02-25 | 2000-11-21 | Xilinx, Inc. | FPGA configurable logic block with multi-purpose logic/memory circuit |
US6400180B2 (en) | 1999-02-25 | 2002-06-04 | Xilinix, Inc. | Configurable lookup table for programmable logic devices |
US6407576B1 (en) * | 1999-03-04 | 2002-06-18 | Altera Corporation | Interconnection and input/output resources for programmable logic integrated circuit devices |
US6388466B1 (en) * | 2001-04-27 | 2002-05-14 | Xilinx, Inc. | FPGA logic element with variable-length shift register capability |
JP3580785B2 (ja) * | 2001-06-29 | 2004-10-27 | 株式会社半導体理工学研究センター | ルックアップテーブル、ルックアップテーブルを備えるプログラマブル論理回路装置、および、ルックアップテーブルの構成方法 |
-
2003
- 2003-02-10 US US10/364,310 patent/US6943580B2/en not_active Expired - Lifetime
-
2004
- 2004-02-03 EP EP04250564A patent/EP1445864A3/en not_active Withdrawn
- 2004-02-09 CN CN201010142831A patent/CN101820278A/zh active Pending
- 2004-02-09 CN CN2004100330188A patent/CN1540865B/zh not_active Expired - Fee Related
- 2004-02-09 CN CN201410504037.8A patent/CN104320129B/zh not_active Expired - Fee Related
- 2004-02-10 JP JP2004033729A patent/JP4537086B2/ja not_active Expired - Fee Related
-
2005
- 2005-07-25 US US11/189,549 patent/US7323902B2/en not_active Expired - Lifetime
-
2007
- 2007-05-24 US US11/753,048 patent/US7312632B2/en not_active Expired - Lifetime
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5761099A (en) * | 1994-11-04 | 1998-06-02 | Altera Corporation | Programmable logic array integrated circuits with enhanced carry routing |
US5818255A (en) * | 1995-09-29 | 1998-10-06 | Xilinx, Inc. | Method and circuit for using a function generator of a programmable logic device to implement carry logic functions |
US5724276A (en) * | 1996-06-17 | 1998-03-03 | Xilinx, Inc. | Logic block structure optimized for sum generation |
Also Published As
Publication number | Publication date |
---|---|
CN104320129A (zh) | 2015-01-28 |
JP2004248282A (ja) | 2004-09-02 |
US7323902B2 (en) | 2008-01-29 |
JP4537086B2 (ja) | 2010-09-01 |
US20040155677A1 (en) | 2004-08-12 |
US7312632B2 (en) | 2007-12-25 |
US6943580B2 (en) | 2005-09-13 |
CN101820278A (zh) | 2010-09-01 |
CN1540865A (zh) | 2004-10-27 |
CN104320129B (zh) | 2020-10-23 |
EP1445864A2 (en) | 2004-08-11 |
US20070222477A1 (en) | 2007-09-27 |
US20060017460A1 (en) | 2006-01-26 |
EP1445864A3 (en) | 2005-12-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1540865B (zh) | 逻辑元件及其制造方法、可编程逻辑设备、数据处理系统 | |
US5977793A (en) | Programmable logic device with hierarchical interconnection resources | |
US6501296B2 (en) | Logic/memory circuit having a plurality of operating modes | |
US6400180B2 (en) | Configurable lookup table for programmable logic devices | |
US5614840A (en) | Programmable logic array integrated circuits with segmented, selectively connectable, long interconnection conductors | |
US6417694B1 (en) | Programmable logic device with hierarchical interconnection resources | |
US6847229B2 (en) | Configurable logic element with expander structures | |
US7330052B2 (en) | Area efficient fractureable logic elements | |
US6914449B2 (en) | Structure for reducing leakage current in submicron IC devices | |
US8217678B1 (en) | Fracturable lookup table and logic element | |
US6417693B1 (en) | Hybrid product term and look-up table-based programmable logic device with improved speed and area efficiency | |
JP4883578B2 (ja) | マルチプレクサ回路 | |
US6833730B1 (en) | PLD configurable logic block enabling the rapid calculation of sum-of-products functions | |
US7119575B1 (en) | Logic cell with improved multiplexer, barrel shifter, and crossbarring efficiency | |
WO2017132200A1 (en) | Transformable logic and routing structures for datapath optimization | |
GB2346724A (en) | Programmable logic |
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 | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20100512 Termination date: 20190209 |