專利名稱:Fpga可配置五輸入查找表結(jié)構(gòu)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明屬于FPGA器件技術(shù)領(lǐng)域,具體涉及一種FPGA查找表結(jié)構(gòu)。
背景技術(shù):
基于查找表的可編程邏輯單元是將所要實現(xiàn)的邏輯函數(shù)真值表的值存儲在可編 程控制的SRAM中,根據(jù)輸入選擇相應的函數(shù)輸出。或者將查找表看作一個存儲器,函數(shù)真 值表在邏輯編程時存入,查找表的輸入相當于存儲器的地址輸入,查找表的輸出相當于存 儲器的數(shù)據(jù)輸出。目前,主流的商用FPGA器件,如Xilinx公司的Virtex和Spartan系列 [1] [2] ,Altera 公司的 Stratix 和 Cyclone 系列[3] [4]以及 Lattice 公司的 EC 和 ECP 系 列[5],均是采用基于查找表的可編程邏輯單元。研究表明[6],輸入端數(shù)目為4至6的查 找表具有最佳的面積和延時性能。此類可編程邏輯單元的邏輯粒度中等、功能靈活、電路面 積和速度均較為適中。傳統(tǒng)的三輸入或四輸入查找表邏輯資源的密度較低且配置固定不靈活,在配置較 復雜的邏輯函數(shù)時會降低互聯(lián)資源的有效利用率。故設(shè)計一種可在三輸入、四輸入查找表 和五輸入查找表之間進行選擇配置的新型查找表結(jié)構(gòu),在不增加互連資源復雜性的前提 下,增加邏輯資源的密度,提高配置的靈活性,從而可以根據(jù)用戶的需要更加充分地利用可 編程邏輯資源和互連資源。
發(fā)明內(nèi)容
本發(fā)明的目的在于提供一種可提高配置的靈活性、邏輯資源的密度和互連資源的 有效利用率的FPGA查找表結(jié)構(gòu)。本發(fā)明以基于四輸入查找表的SLICE為例,在基于2個四輸入查找表的SLICE結(jié) 構(gòu)的基礎(chǔ)上,增加兩個同樣的四輸入查找表,并和原先已經(jīng)存在的四輸入查找表復用輸入 端口。利用SLICE已經(jīng)存在的BX和BY兩個輸入分別作為SLICE中兩個查找表的第五個輸 入,從而在一個可編程邏輯單元中提供兩個等價五輸入查找表的硬件支持。如圖2所示,原有的查找表分別為F和G,其結(jié)果輸入到多路選擇器MUX (如圖中 虛線框所示)的DO端,由編程點控制是否輸出到X和Y (實現(xiàn)四輸入查找表功能)。加入兩 個新的四輸入查找表F-new和G-new后,其結(jié)果輸入到MUX擴展輸入端F4AUX。當配置成五 輸入查找表結(jié)構(gòu)時,MUX允許BX在F和F-new的結(jié)果之間、BY在G和G_new的結(jié)果之間進 行選擇,即在DO和F4AUX兩個輸入端之間進行選擇,從而實現(xiàn)四輸入查找表到五輸入查找 表的轉(zhuǎn)變。即通過編程點和譯碼控制電路選擇將查找表配置成四輸入或者五輸入模式。已有查找表結(jié)構(gòu)包括三輸入查找表和四輸入查找表,上面僅以四輸入查找表為例 說明,本發(fā)明同樣可用于基于三輸入查找表的SLICE。即本發(fā)明可以根據(jù)用戶應用的需要在 已有查找表(包括三輸入查找表和四輸入查找表)和五輸入查找表之間靈活地進行選擇配 置。技術(shù)效果
3采用了這種改進的查找表結(jié)構(gòu)以后,就可以同時為用戶提供傳統(tǒng)的四輸入查找表和等 價五輸入查找表的硬件上的支持,并且可以根據(jù)用戶的要求進行靈活的配置。同時由于這 種等價的五輸入查找表并不改變原先四輸入查找表的結(jié)構(gòu)(即輸入端口數(shù)),所以不會增加 互連資源的復雜性。在配置較復雜的邏輯函數(shù)時可以更加充分地利用可編程邏輯資源,從 而更加有效地利用互連資源以減輕布局布線程序的負擔。
圖1為基于四輸入查找表的SLICE總體構(gòu)架。圖2為新型五輸入查找表的結(jié)構(gòu)。圖3為四輸入和五輸入查找表可配置電路原理。
具體實施例方式傳統(tǒng)的可編程邏輯單元的一個SLICE中可配置的查找表的大小是固定的,例如基 于四輸入查找表的結(jié)構(gòu),如圖1所示。一個SLICE中含有2個四輸入的查找表,最大可以通 過增加BX作為第五個輸入配置成五輸入的查找表(F5輸出)。其優(yōu)點是采用了當前主流商 用FPGA經(jīng)速度、面積、功耗綜合考慮而折中使用的四輸入查找表結(jié)構(gòu),且較少的輸入引腳 節(jié)省了大量的互連資源;其缺點是邏輯資源的密度較低且配置固定不靈活,在配置較復雜 的邏輯函數(shù)時會降低互聯(lián)資源的有效利用率。新型可配置五輸入查找表結(jié)構(gòu)如圖2所示, 其結(jié)構(gòu)是對已經(jīng)存在的2個四輸入查找表F和G,分別增加一個新的四輸入查找表F-new、 G-new,且新的查找表和已有的查找表共用四個輸入端,即四輸入查找表F和新增加的四輸 入查找表F-new共用四個輸入端F [4:1];四輸入查找表G和新增加的四輸入查找表G-new 共用四個輸入端G [4:1];對原有的MUX進行擴展,增加一個輸入端F4AUX (連接到新增查找 表的結(jié)果),并通過復用已有的SLICE輸入端口 BX(BY)作為第五個輸入以實現(xiàn)五輸入查找 表的功能。這種結(jié)構(gòu)的配置不是固定的,而是在硬件上增加了對五輸入查找表功能的支持, 通過三個編程點S2、S1和SO值的不同組合,可以根據(jù)需要在四輸入查找表和五輸入查找表 之間進行靈活的配置,同時這種結(jié)構(gòu)不增加SLICE的輸入引腳數(shù),在增加邏輯資源密度的 同時節(jié)約了互聯(lián)資源。圖3顯示了實現(xiàn)核心功能的擴展后MUX的內(nèi)部結(jié)構(gòu)原理。查找表結(jié)果(不管是四 輸入還是五輸入)之外的信號通過一個Decoder的譯碼模塊進行選擇,輸出為X (或Y) 1 ; 查找表結(jié)果的數(shù)據(jù)通路是由編程點Sl和復用的已有的輸入端BX(BY)控制的一個二選一 MUX,輸出為X(或Y)0。由編程點S2及其反信號S2B控制的輸出二選一 MUX決定了輸出信 號的類型,真值表如表1所示當S2為0時,輸出X(或Y)0,即用作查找表;當S2為1時, 輸出Χ(或Y) 1,即配置成查找表之外的功能,而具體功能的選擇已經(jīng)在上一個Decoder譯 碼模塊中完成。輸出編程點Sl決定了當使用查找表功能時,是配置成五輸入查找表還是 四輸入查找表,如表2所示當Sl為0時,配置成傳統(tǒng)的四輸入查找表,由原有的四輸入 查找表的輸出F或G給出結(jié)果,此時BX(或BY)不起作用;當Sl為1時,BX(或BY)起到 在兩個四輸入查找表的結(jié)果(F和F-new (G或G-new))當中進行選擇的作用,由原來的從
個存儲單元進行選擇(四輸入查找表)轉(zhuǎn)為從25個存儲單元進行選擇,從而實現(xiàn)五輸入 查找表的功能。
表 1
S2S2Bχσ)01X(Y)O10X(Y)I
表2
SlBX (BY)X(Y)O0XDO10DO11F4AUX
參考文獻Xilinxj Inc., Spartan/Spartan-II/Spartan-3 FPGA Family Complete Data SheetXilinxj Inc., Virtex/Virtex-II/Virtex-4/Virtex-5 FPGA Family Complete Data SheetAltera Corp., Cyclone/CycIone-II Device HandbookAltera Corp., Stratix/Stratix-II/Stratix-III Device HandbookLattice Semiconductor Corp., LatticeECP/EC Family Data Sheet, May 2005E. Ahmed and J. Rose, "The Effect of LUT and Cluster Size on Deep-Submicron FPGA Performance and Density, ” [C] Proc. of ACM Int. Symp. on FPGAs, pp. 3-12,F(xiàn)eb. 2000。
權(quán)利要求
一種FPGA可配置五輸入查找表結(jié)構(gòu),其特征在于在基于2個四輸入查找表的可編程邏輯單元的SLICE中,對于2個四輸入查找表分別加入1個同樣的四輸入查找表;加入的1個四輸入查找表和原先已經(jīng)存在的一個四輸入查找表復用輸入端口,并且分別利用SLICE中已經(jīng)存在的兩個輸入端口BX和BY作為SLICE中兩個查找表的第五個輸入端口。
2.根據(jù)權(quán)利要求1所述的FPGA可配置五輸入查找表結(jié)構(gòu),其特征在于設(shè)原有的四輸 入查找表分別為F和G,其結(jié)果分別輸入到多路選擇器MUX的DO端,由編程點控制是否輸 出到X和Y ;新加入2個四輸入查找表F-new和G-new后,其結(jié)果輸入到多路選擇器MUX擴 展輸入端F4AUX ;當配置成五輸入查找表結(jié)構(gòu)時,多路選擇器MUX允許BX在F和F-new的 結(jié)果之間、BY在G和G-new的結(jié)果之間進行選擇,即在DO和F4AUX兩個輸入端之間進行選 擇,從而實現(xiàn)四輸入查找表到五輸入查找表的轉(zhuǎn)變。
3.根據(jù)權(quán)利要求1所述的FPGA可配置五輸入查找表結(jié)構(gòu),其特征在于適用于基于三 輸入查找表的可編程邏輯單元的SLICE中。
全文摘要
本發(fā)明屬于FPGA器件技術(shù)領(lǐng)域,具體為一種FPGA可配置五輸入查找表結(jié)構(gòu)。本發(fā)明是在基于2個四輸入查找表的可編程邏輯單元的SLICE中,分別加入1個同樣的四輸入查找表;加入的1個四輸入查找表和原先已經(jīng)存在的一個四輸入查找表復用輸入端口,并且分別利用SLICE中已經(jīng)存在的兩個輸入端口BX和BY作為SLICE中兩個查找表的第五個輸入端口。這種改進并不增加FPGA互聯(lián)資源的復雜性。在用戶電路中實現(xiàn)較復雜的邏輯函數(shù)時,可提高邏輯資源和互連資源的利用率以及芯片面積的利用率,并減輕布局布線軟件的負擔。本發(fā)明可以根據(jù)用戶應用的需要在已有查找表(包括三輸入查找表和四輸入查找表)和五輸入查找表之間靈活地進行選擇配置。
文檔編號H03K19/173GK101969306SQ201010273730
公開日2011年2月9日 申請日期2010年9月7日 優(yōu)先權(quán)日2010年9月7日
發(fā)明者來金梅, 毛志東, 王健, 王元, 陳利光 申請人:復旦大學