CN1751439A - 具有可编程逻辑单元阵列的电子电路 - Google Patents

具有可编程逻辑单元阵列的电子电路 Download PDF

Info

Publication number
CN1751439A
CN1751439A CN200480004613.7A CN200480004613A CN1751439A CN 1751439 A CN1751439 A CN 1751439A CN 200480004613 A CN200480004613 A CN 200480004613A CN 1751439 A CN1751439 A CN 1751439A
Authority
CN
China
Prior art keywords
output
input
signal
circuit
multiplexer
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.)
Pending
Application number
CN200480004613.7A
Other languages
English (en)
Inventor
K·莱滕-诺瓦克
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.)
Koninklijke Philips NV
Original Assignee
Koninklijke Philips Electronics NV
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 Koninklijke Philips Electronics NV filed Critical Koninklijke Philips Electronics NV
Publication of CN1751439A publication Critical patent/CN1751439A/zh
Pending legal-status Critical Current

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
    • H03K19/17724Structural details of logic blocks
    • H03K19/17728Reconfigurable logic blocks, e.g. lookup tables
    • 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/1733Controllable logic circuits
    • H03K19/1737Controllable logic circuits using multiplexers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/50Adding; Subtracting
    • G06F7/501Half or full adders, i.e. basic adder cells for one denomination
    • G06F7/503Half or full adders, i.e. basic adder cells for one denomination using carry switching, i.e. the incoming carry being connected directly, or only via an inverter, to the carry output under control of a carry propagate signal

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)

Abstract

一种电子电路具有可编程逻辑单元,所述可编程逻辑单元具有多个可编程逻辑部件,所述可编程逻辑部件能够被配置在多位操作数模式和随机逻辑模式下操作。所述可编程逻辑部件并联地耦合在输入电路和输出电路之间。在随机逻辑模式下,所述输入电路可以被配置为把来自逻辑输入端的相同组合的逻辑输入信号提供到可编程逻辑部件。在多位操作数处理模式下,所述输入电路可以被配置为把来自不同逻辑输入端的逻辑输入信号提供到可编程逻辑部件。在多位操作数模式下,至少把可编程逻辑部件耦合到沿着进位链的连续位置,以便处理来自所述进位链的进位信号。在随机逻辑模式下,输出电路在其他输入信号的控制之下选择来自可编程逻辑部件的输出信号,并且在多位操作数模式下,并行地传递来自所述可编程逻辑部件的输出。所述可编程逻辑部件包括多路复用器,在所述可编程逻辑部件被配置为在多路复用模式下操作时,传递所接收的输入信号之一。可以在多路复用模式和多位操作数处理模式之间共享控制信号。

Description

具有可编程逻辑单元阵列的电子电路
本发明涉及一种具有可编程逻辑单元阵列的电子电路,并且特别涉及一种具有可配置来提供灵活多路复用的可编程逻辑单元阵列的电子电路。
可编程逻辑单元使电路设计者能够适应于已经大量生产的电子电路(诸如集成电路)的单个实例的逻辑函数。这降低了从设计到生产工作电路的时间间隔,并且降低了用于生产小批量产品以及样机的生产成本。
在实现的一个例子中,可编程单元包含由所述单元的输入信号来编址的存储器,所述存储器为输入信号值的每个组合把预编程的输出信号存储在由这些值所编址的各自地址上。所述存储器被认为具有LUT(Look-Up Table查找表)功能,用于查找响应于各个输入信号而生成的输出信号。
如果LUT包含足够的存储空间,那么可以利用所述LUT来实现任何逻辑函数。然而在实践中,在具有可编程逻辑单元的电路中利用LUT只实现那些要求有限数目(一般至多四个)输入的逻辑函数。这种LUT要求16个存储单元。这允许编程四输入位的随机逻辑函数。多数情况下,具有四输入位函数的这种单元的电路足以够用。具有这种单元阵列的电路(其中把单元的输出与其它单元的输入耦合)允许设计者实现更复杂的逻辑函数。
设计者日益在实现如下的逻辑函数,其中使用一部分可编程逻辑单元阵列来实现诸如加法之类的信号处理操作。许多信号处理操作具有这样的属性,较宽输入操作数的许多位通过进位作用都可以影响输出结果中的许多位。然而,当使用4位输入LUT来实现这种宽度依赖性时,只获得非常低效的实施方式。
XilinxTM通过把进位链添加到4位输入LUT单元阵列来在其可编程逻辑装置的VirtexTM系列中解决此问题。图1示出了这种装置的可编程逻辑单元。所述单元包含用于执行LUT功能的四输入查找表10,以及具有进位输入端和进位输出端的进位电路12。把存储器10的输出端与进位电路12耦合,所述进位电路12把进位输入信号与LUT的输出信号组合以便形成进位输出信号。使用异或门14根据进位输入信号和LUT的输出信号来形成单元的输出信号。在该阵列中把所述单元的进位输入端和进位输出端与相邻单元(未示出)的进位输出端和进位输入端耦合,以便形成进位链。所述进位链执行从一个4位输入LUT的输出到另一个的进位功能。结果,不需要分配LUT来实现进位功能。当使用这种电路来实现包括某些信号处理操作的逻辑函数时,节省了大量的LUT。
尽管如此,与专用信号处理电路相比较,在这种更通用电路中实现信号处理函数还远不够高效,所述更通用电路还能够实现随机逻辑功能。因而,人们希望能够改进这种效率。
其中,本发明的目的是提供一种具有可编程逻辑单元阵列的电子电路,所述可编程逻辑单元阵列允许实现更灵活多路复用的能力,并且所述电子电路提供随机逻辑函数和信号处理操作。
在权利要求1中阐述了依照本发明的电子电路。所述电子电路包含具有多个可编程逻辑部件的可编程逻辑单元,所述可编程逻辑部件并联地耦合在所述单元的信号输入和输出之间。所述可编程逻辑单元可配置来在随机逻辑模式和多位操作数模式下操作,所述可编程逻辑单元包括可配置的查找表电路,具有耦合来接收来自输入电路的逻辑输入信号的输入端并具有输出端,还包括可控制的反相器/非反相器电路,具有耦合来接收所述查找表电路的输出的输入端,所述反相器/非反相器电路的输出端可连接到输出电路,还包括多路复用器,具有耦合来接收来自所述输入电路的逻辑输入信号的输入端,所述多路复用器的输出端可连接到所述输出电路。
此布置提供了具有改进的多路复用能力的可编程逻辑单元。此外,降低了硅面积并且改进了时序。
在一个实施例中,所述可编程逻辑部件还包括辅助多路复用器,具有耦合来接收反相器/非反相器电路的输出和所述多路复用器的输出的输入端。在此实施例中,所述可编程逻辑部件具有来自辅助多路复用器的单个输出。
在进一步的实施例中,所述可编程逻辑部件包括第一和第二辅助多路复用器。第一辅助多路复用器具有耦合来接收反相器/非反相器电路的输出和多路复用器的输出的输入端,而第二辅助多路复用器具有耦合来接收查找表电路的输出和多路复用器的输出的输入端。由来自配置存储器的配置信息控制第一和第二多路复用器,以致在第一模式下分别从第一和第二辅助多路复用器输出数据路径和随机逻辑输出信号,并且在第二模式下从第一和第二多路复用器输出多路复用器输出信号。
在进一步的实施例中,用于随机逻辑或多路复用模式下的至少一个控制线路与用于数据路径模式下的控制线路共享。这样做的优点在于:降低了所要求输入引脚数目。
本发明提供一种具有可编程逻辑单元阵列的电子电路,所述可编程逻辑单元阵列允许更灵活地实现多路复用的能力,并且所述可编程逻辑单元阵列提供随机逻辑函数和信号处理操作。
将要使用以下附图描述本发明的这些及其它目的和有益方面。
图1示出了现有技术的可编程逻辑单元;
图2示出了可配置在多路复用模式、随机逻辑模式和多位操作数处理模式下运行的可编程逻辑单元;
图3示出了依照本发明第一实施例的可编程逻辑部件;
图4示出了依照本发明另一实施例的可编程逻辑部件;
图5示出了使用图3的可编程逻辑部件的多路复用器的示例性实施方式;
图6示出了使用图4的可编程逻辑部件的多路复用器的示例性实施方式;
图7示出了使用图3的可编程逻辑部件的多路复用器的另一示例性实施方式;
图8示出了使用图4的可编程逻辑部件的多路复用器的另一示例性实施方式;
图9示出了具有图3的可编程逻辑部件的进位链的更多细节;
图10a示出了在数据路径和多路复用器模式之间共享输入引脚;
图10b示出了不同模式的引脚配置的例子;
图11示出了具有图10a和10b中所示共享引脚的逻辑单元的示例性实施方式;和
图12示出了输入电路。
图2示出了具有使设计者能实现多路复用模式、随机逻辑模式或多位操作数处理模式的体系结构的可编程逻辑单元20。单元20包含输入电路22、多个可编程逻辑部件24a-d、输出电路26和进位链28。经由输入电路22的级联、可编程逻辑部件24a-d的并联布置和输出电路26来把单元20的信号输入端21和信号输出端27耦合。进位链28具有进位输入端Cin和进位输出端Cout,并且所述进位链28在沿着所述链的一连串位置上与可编程逻辑部件耦合。
输出电路26包含多级多路复用器264a、264b、266和切换级268。第一级多路复用器264a、264b的控制输入端23与输入电路22的相应输出端耦合。第二级多路复用器266的控制输入端25与输入电路22的相应输出端耦合。第一级多路复用器264a、264b的信号输入端与可编程逻辑部件24a-d对的输出端耦合,而第二级多路复用器266的信号输入端与第一级多路复用器264a、264b的输出端耦合。应当注意尽管所示出的多路复用器264a和264b具有共用的控制输入端23,然而所述电路还可以被配置为提供独立的控制信号23a、23b。另外应当理解的是,尽管图2只示出了两级多路复用器264a/264b和266,然而也可以有另外的级,例如在逻辑单元包含四个以上的逻辑单元24a-d的情况下就是如此。
把第二级的多路复用器266和可编程逻辑部件24a-d的输出端与切换级268的输入端耦合。把切换级268的输出端与单元20的信号输出端27耦合。切换级268可配置来把可编程逻辑部件24a-d的输出端耦合到输出端27,或者把第一、二级多路复用器264a、264b、266的输出端耦合到输出端27,或者至少耦合第二级多路复用器266的输出端。切换级268可以具有用于锁存输出信号的锁存器或触发器(未示出),以便单元20可以作为流水线电路中的流水线级的最终部件而运行。优选地是,切换级268可配置成在锁存之后或不锁存的情况下传递信号。
通过编程可编程逻辑部件24a-d、输入电路22、输出电路26和进位链28的配置位,可以配置单元20的功能。(配置位存储在配置存储器(未示出)中,经由编程路径(未示出)来加载所述配置位,对于可编程逻辑装置本身来说这两者都是已知的)。配置位确定把哪些信号输入端21与可编程逻辑部件24a-d中的哪些耦合,所述配置位确定可编程逻辑部件24a-d响应于各个输入信号值将生成哪些输出信号值,所述配置位确定切换级268将把哪些信号传递到信号输出端27,并且所述配置位确定是否将把来自进位输入端Cin的进位输入信号传递到单元20。
在操作中,单元20可被配置为在随机逻辑模式、多位操作数处理模式和多路复用模式下运行。在操作中,在多位操作数模式下,单元20输出多位输出结果,所述输出结果取决于具有多位的输入操作数。每个输入操作数中的位具有依次更高的权级。在多位操作数模式下,每个可编程逻辑部件24a-d与不同的权级相关联。输入电路22被配置为向每个可编程逻辑部件24a-d传递信号,所述信号表示来自不同操作数的位,其中每个位对应于与可编程逻辑部件24a-d相关联的权级。每个可编程逻辑部件24a-d通过计算该结果在权级的位,考虑从较低权级的进位链28接收的信号中的进位,并且向用于较高权级的进位链提供进位输出来响应这些信号,其中所述权级与可编程逻辑部件24a-d相关联。在多位操作数模式下,通常将所有可编程逻辑部件24a-d配置为在它们的输入信号和输出信号之间提供相同的关系。输出电路26被配置为把来自所有可编程逻辑部件24a-d所计算的结果位作为输出信号并行传递到输出端27。
进位链28计算进位信号并且把这些进位信号从一个可编程逻辑部件24a-d传递到另一个。进位链28的配置控制进位链28是否使用来自进位输入端Cin的进位输入信号来确定所述进位信号。如果单元20处理是较大操作数的较高有效位的输入信号,那么配置所述单元以便使用这种进位输入信号来接收另一单元的进位输出信号,所述另一单元处理较低有效操作数。
在操作中,在随机逻辑模式下,单元20的输出信号是许多输入信号的随机逻辑函数。使用可编程逻辑部件24a-d和第一、二级多路复用器264a、264b、266来实现此随机逻辑函数。输入电路22向每个可编程功能部件24a-d传递相同的输入信号。在形成第一和第二控制信号23、25的其它输入信号的控制之下,多路复用器264a、264b、266选择可编程逻辑部件24a-d之一,从所选择的可编程逻辑部件24a-d之一向切换级268传递输出信号。第一控制信号23控制第一级的两个多路复用器264a、264b,而第二控制信号25控制第二级多路复用器266,所述多路复用器266在第一级多路复用器264a、264b的输出之间选择。从而,实现了一个逻辑函数,所述逻辑函数取决于可编程逻辑部件24a-d的输入信号以及其它输入信号,即用于控制多路复用器264a、264b、266的控制信号23、25。每个可编程功能部件24a-d响应于相同的输入信号生成输出信号,每个输出信号作为用于形成控制信号23、25的其它输入信号的不同值的输出信号。切换级268把所产生的输出信号从多路复用器266传递到单元20的信号输出端。
配置进位链28以便在随机逻辑模式下不使用外部进位输入信号。根据进位链28的实现,进位链28仍然可以传递某些进位信号到可编程逻辑部件24a-d,所述进位信号出现在所述输入端的某些输入值。在这种情况下,在进位链下游的可编程逻辑部件24a-d的配置可以适于说明存在用于输入值的具体值的进位信号。作为选择,可编程逻辑部件24a-d可以包括这样的电路,当所述可编程逻辑部件24a-d配置为在随机逻辑模式下操作时所述电路用于去除对进位信号依赖。在稍后描述中提供了进位链的更多细节。
从而,在随机逻辑模式和多位操作数模式之间存在对比。一方面,在随机逻辑模式下,每个可编程逻辑部件24a-d接收相同的输入信号,并且为其它输入信号的不同值提供可能不同的输入/输出函数,所述其它输入信号用于控制多路复用级264a、264b、266。另一方面,在多位操作数模式下,可编程逻辑部件24a-d接收不同的输入信号,但是总体上提供相同的输入/输出函数。
作为选择,一方面通过使用所述可编程逻辑部件来实现两个多位操作数信号处理操作的不同权级的计算,另一方面通过把所述可编程逻辑部件用作为用于计算两个以上位输入的随机逻辑函数的部分结构,就使得需要用于支持实现随机逻辑函数和多位操作数信号处理的配置位数目最小化。在图2的例子中,利用四个双输入端的可编程逻辑部件24a-d,每个可编程逻辑部件24a-d可用四个配置位完全编程,十六位足以定义任何四位输入的随机逻辑函数,以及同时定义任何两个操作数信号处理操作的四个权级。作为对比,考虑其中可能已经使用4位输入可编程逻辑部件24a-d的情况(对于完全编程,每个可编程逻辑部件24a-d需要16个配置位)。当使用4输入逻辑部件代替2输入逻辑部件时,如果不存在专用进位信号,就能够实现多位操作数处理的两个权级,或者如果存在这种电路,就能够实现四个权级。然而,在这两种情况中,四个4位输入逻辑部件总共将要求64个配置位,即是图2的实施例所要求配置位数目的四倍。
图3示出了依照本发明可编程逻辑部件24的实施例,该实施例使逻辑单元能被配置为提供灵活的多路复用。所述可编程逻辑部件24包含LUT部件400和异或门402。所述LUT部件400包括选择逻辑403(例如4∶1多路复用器)和配置存储器404。可编程逻辑部件24的信号输入端A、B与LUT部件400中的选择逻辑403的输入端耦合。LUT部件400的输出端与异或门402的输入端耦合。异或门402的第二输入端耦合来接收来自进位链28的进位输入信号Cin,并且第一异或门402具有输出信号O1。
在操作中,LUT部件400实现可配置的输入输出函数。响应于输入信号A、B的每个可能组合,LUT部件400输出按照输入信号所选择的各自的输出信号。输入信号的每个组合具有由配置位分配的输出信号,所述配置位存储在配置存储器404中。四个配置位足以为两个输入信号的任何一种可能的组合提供输出信号。通过异或门402的动作,当进位输入信号为逻辑低时,从XOR门402输出LUT部件400的输出信号,而当进位输入信号为逻辑高时,从XOR门402反相输出所述输出信号。此布置使可编程逻辑部件24能处理数据路径函数和随机逻辑函数。
依照本发明,可编程逻辑部件24的信号输入端A、B与专用多路复用器406(例如对于2位LUT是2∶1多路复用器)的输入端耦合,所述多路复用器406与LUT部件400并联安置。多路复用器406由控制信号X控制,所述控制信号X是逻辑单元的辅助控制信号。
优选地是,每个可编程逻辑部件24接收相同的控制信号X。多路复用器406把输入信号A、B之一选择为输出信号O2。输出信号O2绕过LUT部件400和XOR门402。在可编程逻辑部件24中提供多路复用器406使逻辑单元能被配置用于多路复用操作。从而,可编程逻辑部件24当被配置为在数据路径或随机逻辑模式下操作时从LUT部件400生成输出信号O1,而当被配置为作为多路复用器操作时从多路复用器406生成输出信号O2。
优选地是,为了从可编程逻辑部件24提供单个的输出,例如当用于图2中示出的可编程逻辑单元布置时,在可编程逻辑部件24中提供辅助多路复用器408。辅助多路复用器408分别接收来自LUT部件400和多路复用器406的输出信号O1、O2。辅助多路复用器408在信号O1和O2之间选择以便生成输出信号“O”。使用配置存储器位409进行选择,以致当逻辑单元被配置为在数据路径或随机逻辑模式下操作时使用输出信号O1,而当所述单元被配置为作为多路复用器操作时使用输出信号O2。
图4示出了可编程逻辑部件24的候选实施例。在图4的实施例中,每个可编程逻辑部件24生成不是一个而是两个最终输出信号。这两个信号包括数据路径输出OD和随机逻辑输出OR。当逻辑单元产生多位结果时(即数据路径函数),使用每个可编程逻辑部件24的数据路径输出OD,而当映射随机逻辑函数时,使用随机逻辑输出OR。在图4的实施例中,提供了两个辅助多路复用器408、410。如图3描述的第一实施例中,第一辅助多路复用器408在来自多路复用器406的输出信号O2和来自XOR门402的输出信号O1之间选择。第二辅助多路复用器410在来自多路复用器406的输出信号O2和来自LUT 400的输出信号O3之间选择,(信号O3是绕过XOR门402来自LUT 400的直接输出)。第一和第二辅助多路复用器408、410由单个配置位409控制。在此布置中,把输出信号OD直接连接到切换电路268,而把输出信号OR连接到第一级多路复用器264a和264b(参见下图6和8)。在数据路径和随机逻辑操作模式下,分别使数据路径和随机逻辑输出信号O1、O3可在OD和OR输出上得到。在多路复用操作模式下,使多路复用器的输出O2在OD或OR输出上得到,取决于实现的多路复用器的特定类型。例如,1位8∶1多路复用器将使用输出信号OR,而4位2∶1数据路径多路复用器将使用输出OD。
当逻辑单元被配置为在随机逻辑模式下工作时,由于利用了直接LUT输出O3,所以上述布置改进了所述逻辑单元的性能。此外,此布置解决了进位信号对产生随机逻辑函数的消极作用的问题,这是因为进位信号对XOR门402的作用并不影响随机逻辑输出O3。
在实践中,在应用中可能遇到两种类型的多路复用器:
随机逻辑多路复用器,其接受多个单一位的输入并且生成单一位的输出(例如8∶1多路复用器),和
数据路径多路复用器,其接受多位的输入并且生成多位的输出(例如4位2∶1多路复用器)。
所述逻辑单元可配置成提供这两种类型的多路复用器,除使用八个主要输入信号之外还使用多达三个的辅助信号X、Y和Z。三个辅助信号X、Y和Z被用作映射到逻辑单元上的逻辑多路复用器的选择信号。为了处理最大情况为1位8∶1多路复用器,这三个信号是需要的。利用其它多路复用器布置,需要更少的辅助信号。
图5到8举例说明了用于图3和4中示出的可编程逻辑部件的两个实施例的随机逻辑8∶1多路复用器和数据路径4位2∶1多路复用器的示例性实施方式。
图5示出了当图3的可编程逻辑部件24用于图2的逻辑单元,并且被布置成作为8∶1多路复用器操作时,可编程逻辑部件24的示例性配置。把来自可编程逻辑部件24a-d的输出信号O连接到第一级多路复用器264a和264b的输入端。由可编程逻辑部件24a-d在控制信号X的控制之下,执行从八个输入信号21到四个输出信号O的第一级选择。换句话说,由每个可编程逻辑部件24a-d中的多路复用器406来执行在这一级的选择。在控制信号Y的控制之下,由多路复用器264a、264b进行第二级选择,即在可编程逻辑部件24a-d的四个输出信号O之间的选择。在控制信号Z的控制之下,由多路复用器266进行最后一级选择。从而,使用三个辅助信号X、Y、Z来描述8∶1多路复用器的配置。
图6示出了当图4的可编程逻辑部件24用于图2的逻辑单元,并且被布置成作为8∶1多路复用器操作时,可编程逻辑部件24的示例性配置。如同所示,把来自每个可编程逻辑部件24a-d的输出信号OR连接到多路复用器264a和264b的输入端。把输出OD直接连接到切换级268。在控制信号X的控制之下,在可编程逻辑部件24a-d中执行从八个输入信号到四个输出信号OR的第一级选择。把所产生的四个输出信号OR连接到多路复用器264a、264b的输入端。在控制信号Y的控制之下,由多路复用器264a、264b进行第二级选择,即在四个输出信号OR之间的选择。在控制信号Z的控制之下,由多路复用器266进行最后一级选择。从而,如上图5所示,使用三个辅助信号X、Y、Z来描述8∶1多路复用器的配置。
图7示出了当图3的可编程逻辑部件24用于图2的逻辑单元,并且被布置成作为数据路径4位2∶1多路复用器操作时,可编程逻辑部件24的示例性配置。把来自每个可编程逻辑部件24a-d的输出信号O直接连接到切换级268。在可编程逻辑部件24a-d中使用控制信号X来在两个4位输入信号之间做出选择。从而,使用控制信号X来提供数据路径4位2∶1多路复用器。
图8示出图2的逻辑单元,所述逻辑单元使用如图4所述、并且被配置为作为数据路径4位2∶1多路复用器操作的可编程逻辑部件24。把来自每个可编程逻辑部件24a-d的输出信号OD直接连接到切换级268。在可编程逻辑部件24a-d中使用控制信号X来在两个4位输入信号之间做出选择。从而,使用控制信号X来提供数据路径4位2∶1多路复用器。
从以上可以看出,本发明允许在可编程逻辑单元阵列中配置灵活的多路复用布置,可编程逻辑单元还能够处理数据路径函数和随机逻辑函数。尽管上述例子涉及1位8∶1多路复用器和4位2∶1多路复用器,然而本领域的技术人员应当容易理解,使用所述逻辑单元,其它多路复用配置也是可以的。例如,还可以在所述逻辑单元中实现2位4∶1多路复用器。此外,尽管所述例子涉及八输入的逻辑单元,然而本发明同样适用于具有不同输入数目的逻辑单元。
上述发明提供了可以很容易被配置为多个多路复用布置的逻辑单元,并且所述逻辑单元可以容易地在数据路径和随机逻辑函数之间适用。
优选地是,辅助控制信号X、Y、Z与在数据路径模式下使用的其它输入引脚-例如进位输入端(Cin)、减法(SUB)和乘法(MUL)信号共享。依照这种方式共享输入引脚提供了如下所详述的对控制信号的高效利用。
利用图3或4的可编程逻辑部件,可以通过编程LUT部件400的配置位来执行异或函数从而实现算术加法运算。可以通过不同地编程LUT部件400来实现除加法以外的操作,当然当在最低权级使用逻辑高的进位输入信号时,第一和第二操作数的相加等价于从第一操作数减去第二操作数的补码。
图9示出了图3的可编程逻辑部件和进位链28的一部分42。如先前所提及,可编程逻辑部件24包含LUT 400加上第一异或门402,所述LUT 400包括选择逻辑403和配置存储器404。部分进位链42包含第二异或门420和多路复用器422。可编程逻辑部件24的信号输入端A、B与第二异或门420的输入端耦合,所述第二异或门420具有耦合到多路复用器422的控制输入端的输出端。多路复用器422具有分别耦合到进位输入端以及耦合到可编程逻辑部件24,24的信号输入端之一的输入端。根据可编程逻辑部件24的输入信号A、B和进位输入信号来确定进位输出信号。当输入信号相等时(即XOR门420的输出为逻辑低),多路复用器422输出一个输入信号B作为进位输出信号。当输入信号A、B不相等时(即XOR门420的输出为逻辑高),多路复用器422输出进位输入信号作为进位输出信号。作为上述例子的侯选,由于数据路径模式下的LUT部件400实现XOR门,所以可以去除专用的XOR门420,并且用于多路复用器422的选择信号由LUT部件400的输出端提供。
附加的门50、52使可编程逻辑部件24能够执行不必形成外部补码的算术减法和1位乘加累加(例如作为多位乘法中的一个步骤)。通过在一边是LUT部件和第二异或门而另一边是信号输入端A、B之一之间增加异或门50就使得减法便于实现,所述异或门50接收必须减去的操作数位。把减法控制信号SUB提供到异或门50的输入端之一以便在逻辑上使所述输入信号反相。当要求加法时,把减法控制信号设置为零。为此,对于单元20中所有的可编程逻辑部件可以使用共用的减法控制信号。可以由单元20的配置位或由来自单元20外部的信号来控制所述减法信号。在减法情况下,把逻辑高进位输入信号施加到与最低权级相关联的可编程逻辑部件。
通过在一边是LUT部件和第二异或门而另一边是信号输入端A、B之一之间增加与门52,并且向此与门的输入端之一提供系数信号来支持乘加累加的实现,其中所述与门52接收必须乘的操作数位。为此,对于单元20中所有的可编程逻辑部件可以使用共用的系数信号。当要求加法时,把系数信号设置为一。
尽管图9示出了以组合方式提供的与门52和异或门50,然而,对本领域的技术人员来说显而易见的是,当不要求减法或乘法时,可以省略其中的任何一个。还应当理解可以依照候选方式来实现乘法和减法,所述方式在该电路中不同位置采用异或门50的等效物和/或采用LUT部件400的不同配置。例如,可以把异或门50耦合在输入电路的输出端和进位链42的输入端之间,把所述输入电路的输出耦合到可编程逻辑部件40而不传递通过异或门50,假设在减法情况下,可编程逻辑部件40中的配置位适应于没有异或门50的影响。然而,在这种情况下,当从加法切换到减法时,需要改变可编程逻辑部件的配置。
如上所述,用于多路复用模式的辅助信号X、Y和Z可以与用于数据路径(算术)模式的辅助信号Cin、SUB和MUL共享相同的输入引脚。图10a示出了引脚共享的示例性实施方式。分别把来自输入引脚C0、C1、C2的信号连接到多路复用器100、101、102的第一输入端。多路复用器100和102接收由配置位115设置的第二输入,而多路复用器101接收由配置位116设置的第二输入。每个多路复用器100、101、102由相关联的配置位110、111、112控制。每个配置位110、111、112控制其各自的多路复用器,以致所述多路复用器选择来自输入引脚C0、C1、C2的信号或具有预先确定的逻辑电平的信号,该逻辑电平即由配置位115和116设置的高/低。依照这种方式,控制信号X/Cin、Y/MUL和Z/SUB可以具有动态值或静态值,在动态值中逻辑值由外部引脚C0、C1、C2设置,而在静态值中所述逻辑值由配置位115、116设置。图10b示出了可以配置某些可能模式的例子,以及关于控制信号X/Cin、Y/MUL、Z/SUB的结果值。应当注意术语“ext”和“int”指的是分别采用外部和内部进位输入信号的电路配置。
图11示出了如上所述具有共享引脚的逻辑单元的示例性实施方式。在用于控制多路复用器406a-d的控制信号X和用于进位链的信号Cin中的进位之间共享输入引脚C0。当被配置为在动态模式下操作时,配置位110被设置成使得它选择输入引脚C0,这将使X或Cin信号与其连接。作为选择,当被配置为在静态模式下操作时,配置位110被设置成使得它选择来自配置位115的输入,在其中设置X或Cin值。从而,当在数据路径模式下操作时,把来自输入引脚C0或配置位115的Cin信号传递到进位链28的输入端Cin。作为选择,当在多路复用模式下操作时,使用来自输入引脚C0或配置位115的控制信号X来控制多路复用器406a-d。因此在数据路径模式和多路复用模式之间共享输入引脚C0,从而能够减少输入引脚的数目。
采用类似的方式,在数据路径模式下连接到与门52a-d的输入端的MUL信号和在多路复用模式下用于控制多路复用器264a和264b的控制信号Y之间共享输入引脚C1。当配置为在动态模式下操作时,配置位111被设置成选择输入引脚C1,这将把MUL信号或Y信号与其连接。作为选择,当配置为在静态中操作时,配置位111被设置成选择配置位116,这将在其中存储MUL或Y值。从而,当配置为在数据路径模式下操作时,使用来自输入引脚C1或配置位116的MUL信号来控制与门52a-d。此外,当配置为在多路复用器模式下操作时,使用来自输入引脚C1或配置位116的控制信号Y来控制多路复用器264a、264b。因此在数据路径模式和多路复用模式之间共享输入引脚C1,借此降低了所要求输入引脚的数目。图11示出了经由输入电路22向多路复用器264a和264b提供控制信号Y。然而应当理解的是,还可以把多路复用器101的输出端直接连接到多路复用器264a和264b的控制信号。还应当理解的是,控制信号Y可以是相同的控制信号,而不是如图11所示的两个独立的信号。
在数据路径模式下连接到XOR门50a-d的输入端的SUB信号和用于在多路复用模式下控制多路复用器266的控制信号Z之间共享输入引脚C2。当配置为在动态模式下操作时,配置位112被设置成选择输入引脚C2,这将把SUB或Z信号与其连接。作为选择,当配置为在静态模式下操作时,配置位110被设置成选择配置位115,这将把SUB或Z值存储在其中。从而,当配置为在数据路径模式下操作时,使用来自输入引脚C2或配置位115的SUB信号来控制异或门50a-d。此外,当配置为在多路复用器模式下操作时,使用控制信号Z来控制所述多路复用器266。因此在数据路径模式和多路复用模式之间共享输入引脚C2,借此降低了所要求输入引脚的数目。应当注意,尽管图11示出了经由输入电路22把控制信号Z连接到多路复用器266,然而还可以把多路复用器102的输出端直接连接到多路复用器266的控制信号。
图11的布置示出了可以怎样在数据路径和多路复用配置之间共享控制线路,这意味着只要求很少的输入引脚。
图12示出了输入电路22。输入电路22具有与单元20的输入端耦合的多个输入端72,和与可编程逻辑部件24a-d的输入端以及单元20的输出电路的多路复用器耦合的多个输出端74。所述输入端72和输出端74经由两层切换电路76、78耦合。在每个切换电路76、78(仅详细示出了一个)中可以使用两个多路复用器760来实现所述切换电路,每个多路复用器760在从切换电路的每个输入端到相应的输出端之间提供了可配置的耦合。输入电路22还包含第三多路复用器(未示出),用于选择馈送到输出级多路复用器264a、b、266的输入信号。由来自配置存储器(未示出)的配置位来控制切换电路76、78和第三多路复用器的操作。
层76、78组成了切换电路76、78的组,都把各自的输入端对耦合到相应的输出端对,并且层76、78被布置成使得每个组中的切换电路76、78能够可配置地在一方面把来自输入端对中的每一个的信号拷贝到输出端对中的两个输出端,另一方面把来自输入端对中每个输入端的信号耦合到各自的输出端对之间切换。串联地组合层76、78,来自第一层切换电路76对的输出与第二层78中一对不同切换电路78的输入端交叉耦合。结果,层76、78把各四个一组的输入端72分别耦合到相应四个一组的输出端74,并且能够可配置地在把来自四个一组的输入端72中每一个的信号拷贝到在相应的四个一组的输出端74中的所有输出端,和把各四个一组的输入端分别耦合到相应四个一组的输出端之间切换。
单元20具有与切换电路76、78的控制输入端耦合的配置存储器(未示出),以便配置存储器的内容控制输入电路的多路复用器的切换。配置存储器至少在随机逻辑模式和多位操作数模式之间选择。在随机逻辑模式下,控制切换电路76、78以便把来自两个输入端72的信号拷贝到每个可编程逻辑部件的输入端,并且控制第三多路复用器(未示出)以便把来自其它输入端的信号耦合到输出电路中的多路复用器的控制输入端。在多位操作数模式下,控制切换电路76、78以便把各输入端72分别耦合到相应输出端74。原则上,一个配置位的存储器足以在这两种模式之间选择,但是优选地,为附加配置位提供存储器,所述附加配置位在随机逻辑模式下选择把哪些输入拷贝到所有可编程逻辑部件。在后一种情况,可以使用五个配置位:一个配置位用于在多位操作数模式(一对一的信号转送)和随机逻辑模式(四倍拷贝)之间选择,和两组两个配置位,每组都用于选择与每个可编程逻辑部件的输入端耦合的四个输入端之一。
第三多路复用器(未示出)选择从其把信号馈送到输出电路26中多路复用器级的控制输入端的输入端。优选地是,提供两个第三多路复用器,每个第三多路复用器选择用于控制各自级输出电路26的输入信号。
原则上,可以把所述单元的信号输入端组成信号输入端组(例如四个),其中一组的每个信号输入端提供对应于所述组的多位操作数的相应位。为了支持随机逻辑模式和多位操作数模式,所述单元具有用于在传递来自逻辑输入端组对的输入信号和把一个输入集合的拷贝传递到所有可编程逻辑部件之间选择的配置位是足够的,其中每个可编程逻辑部件接收来自所述对中两个组的信号。可以提供附加的配置位来选择所述组或所述集合。
在这里,具有四个可编程逻辑部件的单元是尤为有益的,这是因为在这种情况下随机逻辑函数的输入信号的数目和多位操作数中位的数目是相同的。这意味着:还可以把对应于操作数的每个组选择为一个随机逻辑函数输入的集合。可以使用用于在多位操作数模式下选择所述组的配置位(如果有的话)来在随机逻辑模式下选择一个组。此时,在随机逻辑模式下,为了要选择在多位操作数模式下可能会用作操作数的那些组中的哪些组将被用作随机逻辑函数输入的集合,使用单个附加配置位就足够了。
显然,图3中描述的可编程逻辑部件的几个候选实施例在其中描述了相同的逻辑函数。例如作为候选,图3的可编程逻辑部件24的功能可以用三输入端的LUT部件(未示出)来实现,所述LUT部件在其输入端除输入信号A、B之外还接收进位信号,并且产生可配置的输出信号。然而,这种LUT部件往往需要八个配置位才能被完全编程。使用异或门402来实现进位就使得编程任何随机两位逻辑函数和涉及到进位的信号处理操作成为可能,该进位在LUT部件400中仅仅具有四个配置位。
应当理解的是,在单元20中可以进行能够实现类似可配置性的许多变化。例如,可以使用具有数目较大的、两位输入端的可编程逻辑部件24a-d的单元,例如使用具有八个这种部件和如下的一个多路复用器的单元,所述多路复用器在三个输入信号的控制之下选择这八个可编程逻辑部件之一的输出。从而,例如可以使用8位的多位信号处理操作。
另外,应当理解的是,XOR门402可以由候选电路来实现,所述候选电路诸如2∶1多路复用器,该多路复用器在第一输入端接收查找表的输出,而在第二输入端接收所述查找表的输出的反相输出,所述多路复用器由进位信号控制。
上述逻辑单元除能够实现数据路径和随机逻辑函数之外,还能够配置灵活的多路复用布置。

Claims (21)

1.一种具有可编程逻辑单元阵列的电子电路,每个单元包括:
具有多个逻辑输入端的输入电路;
输出电路;
多个可编程逻辑部件,并联地耦合在输入电路和输出电路之间,所述输入电路可在随机逻辑模式和多位操作数处理模式之间配置,至少一个所述可编程逻辑部件包括:
可配置的查找表电路,具有耦合来接收来自输入电路的逻辑输入信号的输入端并且具有输出端;
可控制的反相器/非反相器电路,具有耦合来接收查找表电路的输出的输入端,所述反相器/非反相器电路的输出端可连接到输出电路;和
多路复用器,具有耦合来接收来自输入电路的逻辑输入信号的输入端,并且所述多路复用器的输出端可连接到输出电路。
2.如权利要求1所述的电子电路,其中所述多路复用器根据第一控制信号X从逻辑输入信号中选择输出。
3.如权利要求1所述的电子电路,其中所述可编程逻辑部件还包括辅助多路复用器,具有耦合来接收反相器/非反相器电路的输出和多路复用器的输出的输入端,并且所述辅助多路复用器的输出端与输出电路耦合。
4.如权利要求3所述的电子电路,其中辅助多路复用器在来自配置存储器的配置信息的控制之下,向输出电路提供反相器/非反相器电路的输出或多路复用器的输出。
5.如权利要求1所述的电子电路,其中所述可编程逻辑部件还包括:
第一辅助多路复用器,具有耦合来接收反相器/非反相器电路的输出和所述多路复用器的输出的输入端;和
第二辅助多路复用器,具有耦合来接收查找表电路的输出和所述多路复用器的输出的输入端;
其中由来自配置存储器的配置信息控制第一和第二多路复用器,以致在第一模式下分别从第一和第二辅助多路复用器输出数据路径和随机逻辑输出信号,并且在第二模式下从第一和第二多路复用器输出多路复用器输出信号。
6.如权利要求1所述的电子电路,其中所述输出电路包括第一级多路复用器,用于接收来自多个可编程逻辑部件的多路复用器输出信号,所述第一级多路复用器由第二控制信号Y控制。
7.如权利要求6所述的电子电路,其中所述输出电路包括至少一个另一级多路复用,所述至少一个另一级多路复用包括至少一个多路复用器,可配置来接收第一级多路复用器中多路复用器的输出,并且所述至少一个另一级多路复用在第三控制信号Z的控制下提供输出信号。
8.如权利要求1所述的电子电路,其中所述多路复用器根据第一控制信号X从逻辑输入信号中选择输出,所述输出电路还包括:
第一级多路复用器,用于接收来自多个可编程逻辑部件的多路复用器输出信号,所述第一级多路复用器由第二控制信号Y控制,
第二级多路复用,所述第二级多路复用包括至少一个另一多路复用器,可配置来接收第一级多路复用器中多路复用器的输出,并且在第三控制信号Z的控制之下提供输出信号,
其中当所述电路被配置为在多位操作数处理模式下操作时,所述第一、第二和第三控制信号中的至少一个可被用作为辅助控制信号。
9.如权利要求1所述的电子电路,还包括进位输入端和进位输出端,一进位链耦合在进位输入端、输入电路和进位输出端之间;
在多位操作数模式下,所述可编程逻辑部件至少耦合到沿着进位链的连续位置,以便处理来自所述进位链的进位信号,所述输出电路在随机逻辑模式下在另外输入信号的控制之下选择来自可编程逻辑部件的输出信号,并且在多位操作数模式下并行传递来自可编程逻辑部件的输出。
10.如权利要求9所述的电子电路,其中把进位链的进位输出端与反相器/非反相器电路的反相非反相控制输入端耦合。
11.如权利要求1所述的电子电路,其中所述单元包括减法控制电路,被布置成至少控制进位链的进位输出确定操作,所述进位链根据在沿着所述进位链的每个位置上的进位输入信号和输入信号来确定进位输出信号,还被配置成在减法控制信号的控制之下,由减法控制电路控制至少在适于加法的确定和适于减法的确定之间切换进位输出确定。
12.如权利要求1所述的电子电路,其中所述单元为每个可编程逻辑部件包括一相应的乘法电路,耦合来在向可编程逻辑部件的输入端提供可编程逻辑部件的至少一个输入信号之前,把所述至少一个输入信号与被乘数相乘。
13.如权利要求1所述的电子电路,其中每个可编程逻辑部件具有用于来自逻辑输入端的信号的两单位的输入端,每个可编程逻辑部件可配置来独立地实现逻辑输入端的任何两个输入位的逻辑函数。
14.如权利要求9所述的电子电路,其中所述进位链电路在所述位置和单元的进位输入端之间具有可配置的耦合,以便在来自配置存储器的配置信息的控制之下,可配置地把进位输入信号提供给进位输入信号或提供标准信号。
15.如权利要求1所述的电子电路,其中所述进位链电路具有多个可配置的耦合,每一个都分别耦合在所述位置之一和一个相应的可编程逻辑部件之间,以便在来自配置存储器的配置信息的控制下,可配置地把来自所述位置的进位信号提供到可编程逻辑电路或者提供另一信号,该另一信号不是传播通过进位链的结果。
16.如权利要求1所述的电子电路,其中所述反相器/非反相器电路包括异或电路。
17.如权利要求1所述的电子电路,其中所述反相器/非反相器电路包括多路复用器,所述多路复用器在第一输入端接收查找表的输出,而在第二输入端接收所述查找表的输出的反相输出,所述多路复用器由进位信号控制。
18.如权利要求1所述的电子电路,其中所述输入电路可被布置成在所述单元的信号输入端和可编程逻辑部件的输入端之间只提供所有可能耦合的真子集,所述子集包括多位操作数耦合,其中分别把信号输入端与各可编程逻辑部件的相应输入端耦合,并且所述子集还包括随机逻辑耦合,其中把信号输入端的子集与每个可编程逻辑部件的输入端耦合。
19.如权利要求18所述的电子电路,其中所述子集包括两位的输出随机逻辑耦合,其中把第一和第二子集的信号输入端分别与多个可编程逻辑部件的每个第一和第二子集的输入端耦合。
20.如权利要求1所述的电子电路,被配置为执行随机逻辑函数,其中每个可编程逻辑部件被配置为提供各自的输入/输出关系,并且来自所述逻辑输入端的逻辑输入信号选择从哪个可编程逻辑部件把逻辑输出信号传递到输出电路的逻辑输出端。
21.如权利要求1所述的电子电路,被配置为执行多位操作数的信号处理函数,其中每个可编程逻辑部件被配置为根据来自进位链的进位输入信号提供相同的输入/输出关系,并且输出电路并行输出来自可编程逻辑部件的输出信号。
CN200480004613.7A 2003-02-19 2004-02-12 具有可编程逻辑单元阵列的电子电路 Pending CN1751439A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP03100389 2003-02-19
EP03100389.0 2003-02-19

Publications (1)

Publication Number Publication Date
CN1751439A true CN1751439A (zh) 2006-03-22

Family

ID=32892955

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200480004613.7A Pending CN1751439A (zh) 2003-02-19 2004-02-12 具有可编程逻辑单元阵列的电子电路

Country Status (5)

Country Link
US (1) US7196541B2 (zh)
EP (1) EP1606878A1 (zh)
JP (1) JP2006519548A (zh)
CN (1) CN1751439A (zh)
WO (1) WO2004075409A1 (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102770819A (zh) * 2010-02-12 2012-11-07 菲尼克斯电气有限两合公司 切换逻辑模块
CN103886888A (zh) * 2005-12-27 2014-06-25 阿尔特拉公司 查找表电路
CN105391443A (zh) * 2014-08-27 2016-03-09 快速逻辑公司 用于可编程逻辑装置的逻辑单元
CN105471422A (zh) * 2015-11-25 2016-04-06 中国科学院电子学研究所 集成辅助逻辑运算单元的可编程逻辑模块
CN107404316A (zh) * 2016-05-17 2017-11-28 哉英电子股份有限公司 信号复用装置
CN107656880A (zh) * 2016-10-28 2018-02-02 上海兆芯集成电路有限公司 具有包括动态可编程的功能单元的存储器控制器的处理器
CN114253508A (zh) * 2020-09-21 2022-03-29 华为技术有限公司 逻辑功能模块与可编程逻辑门阵列

Families Citing this family (42)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7271617B2 (en) * 2003-02-19 2007-09-18 Koninklijke Philips Electronics, N.V. Electronic circuit with array of programmable logic cells
JP2006518144A (ja) * 2003-02-19 2006-08-03 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ プログラム可能な論理セルのアレイをもつ電子回路
DE102004025581B4 (de) * 2004-05-25 2008-02-14 Infineon Technologies Ag Logik-Grundzelle und Logik-Grundzellen-Anordnung
US7282950B1 (en) * 2004-11-08 2007-10-16 Tabula, Inc. Configurable IC's with logic resources with offset connections
US7743085B2 (en) * 2004-11-08 2010-06-22 Tabula, Inc. Configurable IC with large carry chains
US7276934B1 (en) 2005-06-14 2007-10-02 Xilinx, Inc. Integrated circuit with programmable routing structure including diagonal interconnect lines
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
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
US7274214B1 (en) 2005-06-14 2007-09-25 Xilinx, Inc. Efficient tile layout for a programmable logic device
US7265576B1 (en) 2005-06-14 2007-09-04 Xilinx, Inc. Programmable lookup table with dual input and output terminals in RAM mode
US7256612B1 (en) 2005-06-14 2007-08-14 Xilinx, Inc. Programmable logic block providing carry chain with programmable initialization values
US7218143B1 (en) * 2005-06-14 2007-05-15 Xilinx, Inc. Integrated circuit having fast interconnect paths between memory elements and carry logic
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
US7268587B1 (en) 2005-06-14 2007-09-11 Xilinx, Inc. Programmable logic block with carry chains providing lookahead functions of different lengths
US8463836B1 (en) 2005-11-07 2013-06-11 Tabula, Inc. Performing mathematical and logical operations in multiple sub-cycles
US7679401B1 (en) 2005-12-01 2010-03-16 Tabula, Inc. User registers implemented with routing circuits in a configurable IC
US7902864B1 (en) * 2005-12-01 2011-03-08 Altera Corporation Heterogeneous labs
US7583102B1 (en) * 2006-05-05 2009-09-01 Xilinx, Inc. Testing of input/output devices of an integrated circuit
EP2140548A4 (en) 2007-03-20 2010-06-09 Tabula Inc CONFIGURABLE IC WITH A COUPLING AREA WITH MEMORY ELEMENTS
WO2010033263A1 (en) 2008-09-17 2010-03-25 Tabula, Inc. Controllable storage elements for an ic
US8661394B1 (en) 2008-09-24 2014-02-25 Iowa State University Research Foundation, Inc. Depth-optimal mapping of logic chains in reconfigurable fabrics
US8438522B1 (en) 2008-09-24 2013-05-07 Iowa State University Research Foundation, Inc. Logic element architecture for generic logic chains in programmable devices
US7982496B1 (en) 2009-04-02 2011-07-19 Xilinx, Inc. Bus-based logic blocks with optional constant input
US7746108B1 (en) 2009-04-02 2010-06-29 Xilinx, Inc. Compute-centric architecture for integrated circuits
US7746104B1 (en) * 2009-04-02 2010-06-29 Xilinx, Inc. Dynamically controlled output multiplexer circuits in a programmable integrated circuit
US7746101B1 (en) 2009-04-02 2010-06-29 Xilinx, Inc. Cascading input structure for logic blocks in integrated circuits
US7948265B1 (en) 2009-04-02 2011-05-24 Xilinx, Inc. Circuits for replicating self-timed logic
US8706793B1 (en) * 2009-04-02 2014-04-22 Xilinx, Inc. Multiplier circuits with optional shift function
US7746110B1 (en) * 2009-04-02 2010-06-29 Xilinx, Inc. Circuits for fanning out data in a programmable self-timed integrated circuit
US9411554B1 (en) 2009-04-02 2016-08-09 Xilinx, Inc. Signed multiplier circuit utilizing a uniform array of logic blocks
US7746109B1 (en) 2009-04-02 2010-06-29 Xilinx, Inc. Circuits for sharing self-timed logic
US9002915B1 (en) 2009-04-02 2015-04-07 Xilinx, Inc. Circuits for shifting bussed data
US8527572B1 (en) 2009-04-02 2013-09-03 Xilinx, Inc. Multiplier architecture utilizing a uniform array of logic blocks, and methods of using the same
US8402164B1 (en) 2010-10-27 2013-03-19 Xilinx, Inc. Asynchronous communication network and methods of enabling the asynchronous communication of data in an integrated circuit
US8760193B2 (en) 2011-07-01 2014-06-24 Tabula, Inc. Configurable storage elements
US9148151B2 (en) 2011-07-13 2015-09-29 Altera Corporation Configurable storage elements
WO2013018061A1 (en) 2011-08-03 2013-02-07 Ben Gurion University Of The Negev Research And Development Authority Device and method for dual-mode logic
WO2013118119A1 (en) * 2012-02-09 2013-08-15 B.G. Negev Technologies & Applications Ltd. Design of dual mode logic circuits
WO2013071183A1 (en) 2011-11-11 2013-05-16 Tabula, Inc. Content addressable memory in integrated circuit
US8581624B2 (en) * 2012-03-29 2013-11-12 Altera Corporation Integrated circuits with multi-stage logic regions
WO2017020165A1 (zh) 2015-07-31 2017-02-09 吴国盛 自适应芯片和配置方法
US12086518B2 (en) * 2020-06-01 2024-09-10 Intel Corporation Programmable integrated circuit underlay

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6288570B1 (en) * 1993-09-02 2001-09-11 Xilinx, Inc. Logic structure and circuit for fast carry
US6294928B1 (en) * 1996-04-05 2001-09-25 Altera Corporation Programmable logic device with highly routable interconnect
US5815003A (en) * 1994-11-04 1998-09-29 Altera Corporation Programmable logic integrated circuits with partitioned logic element using shared lab-wide signals
US5570039A (en) * 1995-07-27 1996-10-29 Lucent Technologies Inc. Programmable function unit as parallel multiplier cell
US6107822A (en) * 1996-04-09 2000-08-22 Altera Corporation Logic element for a programmable logic integrated circuit
US6075380A (en) * 1997-06-26 2000-06-13 Altera Corporation Programmable logic device with expandable-width memory regions
US20030055852A1 (en) * 2001-09-19 2003-03-20 Wojko Mathew Francis Reconfigurable arithmetic logic block array for FPGAs
US20060097750A1 (en) * 2002-07-10 2006-05-11 Katarzyna Leijten-Nowak Electronic circuit with array of programmable logic cells
JP2006518144A (ja) * 2003-02-19 2006-08-03 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ プログラム可能な論理セルのアレイをもつ電子回路

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103886888A (zh) * 2005-12-27 2014-06-25 阿尔特拉公司 查找表电路
CN103886888B (zh) * 2005-12-27 2018-04-03 阿尔特拉公司 查找表电路
CN102770819A (zh) * 2010-02-12 2012-11-07 菲尼克斯电气有限两合公司 切换逻辑模块
CN105391443A (zh) * 2014-08-27 2016-03-09 快速逻辑公司 用于可编程逻辑装置的逻辑单元
CN105391443B (zh) * 2014-08-27 2021-01-05 快速逻辑公司 用于可编程逻辑装置的逻辑单元
CN105471422A (zh) * 2015-11-25 2016-04-06 中国科学院电子学研究所 集成辅助逻辑运算单元的可编程逻辑模块
CN105471422B (zh) * 2015-11-25 2019-03-15 中国科学院电子学研究所 集成辅助逻辑运算单元的可编程逻辑模块
CN107404316A (zh) * 2016-05-17 2017-11-28 哉英电子股份有限公司 信号复用装置
CN107404316B (zh) * 2016-05-17 2022-06-07 哉英电子股份有限公司 信号复用装置
CN107656880A (zh) * 2016-10-28 2018-02-02 上海兆芯集成电路有限公司 具有包括动态可编程的功能单元的存储器控制器的处理器
CN114253508A (zh) * 2020-09-21 2022-03-29 华为技术有限公司 逻辑功能模块与可编程逻辑门阵列

Also Published As

Publication number Publication date
WO2004075409A1 (en) 2004-09-02
US7196541B2 (en) 2007-03-27
JP2006519548A (ja) 2006-08-24
US20060164119A1 (en) 2006-07-27
EP1606878A1 (en) 2005-12-21

Similar Documents

Publication Publication Date Title
CN1751439A (zh) 具有可编程逻辑单元阵列的电子电路
US7840630B2 (en) Arithmetic logic unit circuit
US7853632B2 (en) Architectural floorplan for a digital signal processing circuit
US7840627B2 (en) Digital signal processing circuit having input register blocks
US7865542B2 (en) Digital signal processing block having a wide multiplexer
US7849119B2 (en) Digital signal processing circuit having a pattern detector circuit
US7971172B1 (en) IC that efficiently replicates a function to save logic and routing resources
US7870182B2 (en) Digital signal processing circuit having an adder circuit with carry-outs
US7872497B2 (en) Flexible carry scheme for field programmable gate arrays
CN1751438A (zh) 具有可编程逻辑单元阵列的电子电路
CN1751361A (zh) 具有可编程逻辑单元阵列的电子电路
US20010016865A1 (en) Multiplier circuit for reducing the number of necessary elements without sacrificing high speed capability
EP1535394A2 (en) Loosely-biased heterogeneous reconfigurable arrays
CN111047034B (zh) 一种基于乘加器单元的现场可编程神经网络阵列
CN110858137B (zh) 除以整数常数的浮点除法
CN1666417A (zh) 具有可编程逻辑单元阵列的电子电路
Rao et al. A Systematic Comparison of Approximate 4-2 Compressors for Efficient Approximate Multipliers
Masselos et al. Introduction to reconfigurable hardware
Nagendra et al. Digit systolic algorithms for fine-grain architectures
Inoue et al. A prototype chip of reconfigurable logic device using variable grain logic cell architecture

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication