新四季網

可重新配置的邏輯器件的製作方法

2023-05-21 23:11:26 2

專利名稱:可重新配置的邏輯器件的製作方法
技術領域:
本發明涉及可配置的邏輯器件,該可配置的邏輯器件包括具有查找表(LUT)的邏輯單元、用於接收地址信號的輸入端和用於提供輸出信號的輸出端。
在可(重新)配置的邏輯器件(例如,現場可編程門陣列(FPGA))中,基本邏輯單元(邏輯元)的功能以及它們之間的互聯結構是可編程的。可編程性是通過使用可編程的交換機得到的,可編程交換機的狀態被保持在一個配置存儲器中。可編程交換機通過確定在線軌之間的連接或它的不存在而控制路由資源。它們也通過控制內部復用器(正確的信號選擇)而規定邏輯單元的功能。此外,該配置存儲器單元的一部分可被用作為查找表的數據存儲單元和用戶存儲器。
查找表(LUT)的使用是在可配置的邏輯器件中實施邏輯功能的最通常的方法。這樣的方法被使用在大多數市場上銷售的FPGA器件中,例如,Xilinx(例如,XC4000,XC5000,Virtex-I,Virtex-II系列),Altera(例如,FLEX系列),Atmel(AT40K系列),Actel。查找表的廣泛使用是由於它們的靈活性一個k輸入的查找表可以實施k變量的任何的邏輯功能。這樣的LUT需要2k個存儲器單元,它們存儲對於輸入比特的所有可能的組合的邏輯功能輸出(像在真值表中)。因為LUT中存儲器單元的內容可被改變,所以存儲的真實值以及由此而產生的邏輯功能,可以容易地用另一個來代替。因為可配置的邏輯器件的可編程性質,所以可以把高的靈活性呈現給用戶。用戶使用這樣器件,就可以快速定出模型、在系統中實行以後的更新/專門化、或提升系統性能,這些功能都可以與軟體可編程解決方案相比擬。
成本-效率(根據面積,性能,功率和代碼尺寸)是在設計可配置的邏輯器件時最重要的問題之一,特別是在嵌入的前後關聯(context)中使用的那些器件(晶片上的系統)的情況下。可配置器件雖然非常靈活,但是顯示多個缺點,特別是與ASIC相比較時。它們體積更大(由於大的配置存儲器和大量的互聯資源),速度更慢(由於互聯和邏輯的相當大的延時)和消耗更多的功率(由於在可編程的線路上大的負荷)。在動態可重新配置的邏輯器件中(其中配置前後關聯在運行時可被改變),效率的一個附加度量是重新配置時間。因為算法的下一個階段的執行直接取決於它,這個時間應當是短的。然而,由於必須重新裝載一個很大的配置存儲器,因此這常常做不到。大多數提到的成本直接或間接地受到配置存儲器的尺寸的影響。因為這個事實,配置存儲器尺寸的最小化是在可(重新)配置的邏輯器件的設計中主要關心的問題之一。
這個問題在以下的情形(但不限於這種情形)中可能是關鍵的-可配置邏輯器件具有基於查找表的邏輯單元;因為每個器件包含許多邏輯單元,以及LUT尺寸隨輸入數目按指數地增加,所以需要非常多的存儲器比特來支持該功能。
-可配置邏輯核心與其他的IP塊被嵌入到同一個晶片上。在這種情形下,可提供的矽面積和功率消耗將由晶片封裝類型以及常常也由用於可攜式設備的有限的電池壽命來確定,這些可能是限制因素。
-可配置邏輯核心與多種配置前後關聯一起工作(動態可重新配置邏輯核心)。在這種情形下,所需要的配置存儲器的尺寸比起在單個前後關聯器件的情形下的存儲器尺寸大約大n倍;其中n是配置前後關聯的數目。
在可配置邏輯器件中的附加問題是希望能同時支持實施隨機邏輯和算術功能,以及常常也實施小的存儲器。通常,隨機邏輯從較粗的量化度(granularity)(較大的LUT)得到好處,以使得邏輯深度最小化。另一方面,在算術電路中,由於所得到的結果的最高位對於該結果的較低位的依賴性,所以LUT尺寸優選地是較小的。
因此,限制配置存儲器的尺寸以及同時保證支持各種功能的足夠的靈活性的要求是相對立的,特別是大於基於LUT的器件來說。因此找到正確的平衡仍舊是一個挑戰。
基於LUT的可配置邏輯器件代表在現有技術的可重新配置結構內佔優勢的一個組。下面,主要考慮與邏輯器件的結構和實施方案有關的方面,因為這些強烈地決定可配置邏輯器件的成本-效率。描述將主要集中在不同的邏輯單元對於算術功能的可應用性,給出代表性例子;正如前面討論的,基於LUT邏輯單元對於隨機功能的實施方案的使用是相當直截了當的。
正如開頭段落中描述的,本發明的一個目的是提供一種可重新配置的邏輯器件,其中算術運算可以用相對較小的數目的配置比特來完成,以及該可重新配置的邏輯器件還具有相對較高的速度。
按照本發明,可重新配置的邏輯器件包括帶有查找表(LUT)的邏輯單元、用於接收地址信號的輸入端和用於提供輸出信號的輸出端,其特徵在於,-控制輸入端(crtl),用於接收控制信號,-可控制的倒相門(11.2),用於響應於控制信號(crtl)和輸入信號(in1)而提供地址信號給LUT(11.1),-可控制的倒相門(11.3),用於響應於LUT(11.1)的輸出信號和控制信號而提供修正的輸出信號。
可控制的倒相門在這裡被規定為這樣的一個門如果控制信號具有第一邏輯值,則它發送未改變的輸入信號,或者如果控制信號具有第二邏輯值,則它發送倒相形式的輸入信號。結果,為了簡單起見,可控制的倒相門被顯示為一個具有用於接收控制信號的一個輸入端和具有接收可被控制地倒相的信號的第二輸入端的EXOR門的形式。然而,其他實施方案也是可能的,例如,一個復用器,具有用於接收控制信號的選擇輸入端、用於接收未改變的信號的第一輸入端和用於接收倒相信號的第二輸入端。
除了用於接收地址信號的輸入端,可重新配置的邏輯器件可以具有更多的用於接收地址信號的這種輸入端。附加輸入端可直接被耦合到LUT。替換地,一個或多個(或每個)附加輸入端可以通過一個可控制的倒相門被耦合到LUT,該可控制的倒相門響應於控制信號和在所述附加輸入端處接收的地址信號而提供修正的地址信號。同樣地,LUT可以具有一個以上的輸出端。附加輸出端也可被耦合到可控制的倒相門,以用於響應於在LUT的所述輸出端處的輸出信號和控制信號而提供修正的輸出信號。
按照本發明的方案是基於利用用於有效地實施可配置的器件的LUT的加法器的倒相性質。通過利用這個倒相性質,可重新配置的邏輯器件可以用較小的數目的配置比特被實施。對於實施可控制的倒相門所需要的附加邏輯功能,可以只用小的數目的門來實現。因此,由可控制的倒相器引入的附加延時是相對較小的,這樣,可重新配置的器件仍具有相對較高的速度。另外,功率消耗被減小,因為可重新配置的邏輯器件可具有相對較中等數目的互聯。
按照本發明的可重新配置的邏輯器件的實施例的特徵在於一個這樣的復用器,該復用器由選擇信號來控制,以便從至少第一和第二修正的輸出信號中選擇作為邏輯單元的輸出信號。復用器在邏輯單元中的這個應用允許更寬的邏輯功能的實施。按照香農(Shannon)擴展理論,任何n+1-輸入的邏輯函數可被描述為F=S·F1+S·F1例如,S是邏輯單元的附加輸入信號(復用控制信號),以及F1和F1是在LUT中實施的n個輸入的函數。
參照附圖更詳細地描述這些和其他方面。其中

圖1顯示Xilinx Virtex-I系列的可重新配置的器件的邏輯塊的例子,圖2顯示圖1的邏輯塊中加法器的實施方案,圖3顯示Atmel器件的邏輯塊的例子,圖4顯示圖3的邏輯塊中的加法器的實施方案,圖5顯示低功率PGA邏輯單元,圖6顯示圖5的邏輯單元中加法器的實施方案,圖7顯示從現有技術已知的另一個邏輯單元,圖8顯示圖7的邏輯單元中加法器的實施方案,圖9顯示加法器的倒相性質,圖10還以表格的形式顯示這個性質,圖11顯示按照本發明的邏輯單元的第一實施例,圖12顯示按照本發明的邏輯單元的第二實施例,圖13顯示在第二實施例中的加法器的實施方案,圖14顯示在第一實施例中的加法器的實施方案,圖15A示意地顯示多輸出端的LUT,圖15B顯示圖15A的多輸出端LUT的第一實施方案,圖15C顯示圖15A的多輸出端LUT的第二實施方案,圖15D顯示圖15A的多輸出端LUT的第三實施方案,
圖16顯示用於把兩個數相乘的乘法器陣列,圖17更詳細地顯示圖16的單元,圖18顯示在按照本發明的可重新配置的邏輯器件中這兩個單元的實施方案,圖19更詳細地顯示圖18的部分,圖20和21顯示在按照本發明的可重新配置的單元的常規的陣列中實施具有偶數的行的乘法器陣列的兩個可能性,圖22更詳細地顯示一個單元的結構,圖23和24顯示在按照本發明的可重新配置的單元的常規的陣列中實施具有奇數的行的乘法器陣列的兩個可能性,圖25顯示按照本發明的可重新配置的單元的另一個實施例。
圖1顯示Xilinx Virtex-I系列的邏輯單元的兩個邏輯片之一;另一個片是和它相同的。單個片包含兩個4比特查找表(4-LUT)1.1,1.2,它們具有兩個獨立的輸入組。所以,在一個片中可以實施四個變量的兩個獨立的功能。兩個LUT的輸出端通過進位邏輯電路1.3被耦合到第一和第二2∶1復用器1.4和1.5。進位邏輯電路1.3從第一和第二與門1.6,1.7接收另外的輸入信號,每個與門從各自的一組輸入端接收兩個輸入信號。用於選擇幾個查找表的輸出的復用器的應用是用於實施更廣的邏輯功能的常用方法。這樣,映射的隨機邏輯功能可以通過附加的邏輯變量被擴展。
對於算術功能,每個邏輯片例如可以實施一個2比特加法器,正如圖2所示的。每個LUT 2.1,2.2產生兩個比特的部分和。LUT 2.1,2.2的輸出連同適當的進位輸入信號cin』和cin一起構成XOR門2.33,2.34的輸入,它產生和值(每個LUT一個比特)。進位輸出信號cout在專用電路2.3中被產生。這樣實施的2比特加法器在其和值比特的產生取決於傳播的進位信號的意義上是串行的。
圖1所示的電路由於具有獨立的兩組的輸入端,因此在實施隨機邏輯功能時具有高度靈活性的優點。然而,因為在算術模式只有兩個LUT輸入端被使用(圖2),LUT的利用是低效率的。另一個缺點是對於每個LUT需要兩個分開的解碼器;如果LUT也被用作為分布存儲器塊,則每個LUT總共需要兩個解碼器(分別用於寫和讀操作)。作為另一個缺點,可以提出,由於是分開的LUT輸入組,以及因而需要分開的輸入出腳,所以就需要非常多的路由線路(每邏輯片至少2×4路由線路)。這使得需要增加的數目的開關和更大的尺寸的配置存儲器。這也導致更高的功率消耗。
在許多算術運算中,若干個輸出比特從同一組輸入比特產生。在基於LUT的算術函數生成時這個特性的利用將意味著某些LUT的輸入可被共享。雖然這潛在地限制在多個隨機邏輯功能方面的靈活性,但它同時導致路由資源的相當顯著的減小,因為僅僅單個組的輸入必須被支持。這對於面向數據路徑或DSP的可配置邏輯器件是重要的最佳化方案。這樣的方法被使用於Atmel AT40K器件,如圖3所示。這裡顯示的邏輯單元有兩個LUT 3.1,3.2,它們具有共享的輸入端。兩個輸出信號是可由復用器3.3,3.4和3.5選擇的。2比特加法器的相應的實施方案被顯示於圖4。它具有第一和第二邏輯單元。第一邏輯單元4.6,4.7,4.8,4.9,4.10根據輸入比特a0,b0和進位輸入比特cin計算第一輸出比特So,和中間進位輸出比特cout』。第二邏輯單元4.1,4.2,4.3,4.4,4.5根據輸入比特a1,b1和中間進位輸出比特cout』計算第二輸出比特S1和進位輸出比特cout。
圖5上顯示,用於低功率PGA的邏輯單元的相同方法。圖6顯示帶有這樣的邏輯單元的加法器的實施方案。在原理上,兩個器件的邏輯單元是類似的,但它們在量化度上不同在Atmel AT40K中的邏輯單元具有兩個LUT 3.1,3.2,而LP-FPGA的邏輯單元具有四個LUT 5.1,5.2,5.3,5.4。與Virtex的邏輯單元不同,兩個器件使用3輸入端的LUT。這些LUT類似於Xilinx方法,可被連接到復用器5.5,使得能實施更廣泛的功能(這裡是四個輸入端)。3-LUT的使用改進在算術模式下LUT的利用(完全的LUT被使用來存儲正確的數據)。在兩種邏輯單元結構中,加法運算以串行方式被產生來自LUT之一的輸出信號(這裡是cout』)是用於另一個LUT的輸入。而且,沒有專用電路被使用於產生進位。
這個方法的優點在於,單個LUT更好地被利用於算術函數,即,沒有浪費資源。而且,由於所應用的輸入共享技術,只需要較少的路由資源,從而需要較小的配置存儲器。然而,缺點是即使LUT的輸入被共享,對於每個LUT也需要分開的解碼器(LUT解碼器通常被實施為一個只選擇一個LUT輸出的復用器樹)。
在邏輯單元中共享LUT輸入的相同的概念可被應用於可重新配置的計算超高速緩存結構(RCCA)。這個方法在Kim H.-S.,Somani A.K.,Tyagi Ak.,」A Reconfigurable Multi-function Computing CacheArchitecture(可重新配置的多功能計算超高速緩存結構)」,8thACMInternationa;Symposium on FPGAs,Monterey,Febr.2000中被被描述。這個結構示意地顯示於圖7。然而,與傳統的LUT實施方案不同,RCCA使用與存儲器類似的方式實施的LUT。這意味著,一個地址解碼器被使用來選擇多比特輸出字,而不是只是單個比特。在RCCA中,隨機邏輯功能以與傳統的基於LUT的結構中相同的方式被實施。RCCA邏輯單元的每16單元存儲器列7.1-7.6存儲任意的邏輯功能的輸出。因為輸入組在所有的存儲器列之間被共享,因此根據相同的輸入組產生多比特輸出。
RCCA中算術函數的實施看起來有一點不同。通過進位傳播的更重要的比特對於不太重要的比特的依賴性的問題在進位選擇加法器中被解決。RCCA多輸出LUT8.1-8.6存儲對於等於「0」和「1」的進位信號的算術函數的真值表。正確的輸出的選擇是通過復用器8.7,8.8,8.9使用來自先前的級(RCCA塊)的進位輸入信號cin而完成的(見圖8)。雖然算術函數的產生在這種方式下是非常快速的,但也非常昂貴的,因為需要許多存儲器單元存儲用於控制信號的兩個數值(例如,進位信號)的真值表數值。
這個方法的優點在於,單個解碼器可被用於多輸出LUT。由於單個LUT的像存儲器那樣的實施方案,該器件具有緊湊的布局。它提供快速產生的算術函數,這是由於所產生的結果的幾個比特通過使用選擇機制同時被產生。然而,這是昂貴的解決方案,因為需要標準解決方案的存儲器比特的數目的三倍(如圖3到6所示)。對於粗略功能(例如,大於2比特操作數),這個方法是成本-低效的。另一個缺點是,多輸出LUT的相當大的部分可能是無用的,如果被映射的隨機邏輯功能不能利用輸入共享性質。
圖9示意地顯示加法器的倒相性質。圖9A顯示具有輸入端a,b,cin和輸出端S,cout的全加法器FA。圖9B顯示這個全加法器等價於一個其所有的輸入信號以及輸出信號是倒相的全加法器。因此
S(a,b,cin)=S(a,b,cin)(1)cout(a,b,cin)=cout(a,b,cin) (2)重要的規則是二的補碼二進位加法的真值表對於輸入之一是逆對稱的(見圖10中的表)。這意味著,在附加真值表的一半中的信息是冗餘的,因為它可以根據另一半的信息通過使用非常簡單的變換而被產生的。
在1比特加法的情形下,任意輸入可被選擇為進位輸入信號。在新的真值表中,對於輸入(a和b)的所有的可能的組合和對於cin=」0」,輸出信號的數值(和值和進位輸出)被存儲起來。如果cin=」1」,對於產生輸出比特所必要的變換如下1.把輸入操作數(a和b)的所有的比特求反。
2.從對於新的(已變換的)輸入的真值表中讀出輸出。
3.把讀出的輸出比特求反。
對於1比特加法,這個性質可按以下的方法被證明。
S=abcin (3)cin=0S=ab=S(a,b,cin=0)cin=1S=ab=S(a,b,cin=1)---(4)]]>S(a,b,cin=0)=ab (5)S(a,b,cin=0)=ab (6)S(a,b,cin=1)=S(a,b,cin=0)(7)同樣地,這個倒相性質可應用於n比特加法。
二進位加法運算的所述的性質可被直接利用於基於LUT的計算邏輯單元。在按照本發明的可配置的器件中,LUT存儲n比特加法的真值表的一半是足夠的。LUT可以是單輸出的LUT(在產生每個LUT一個比特的情形下)或多輸出的LUT(在產生幾個輸出比特的情形下)。LUT內容反映對於進位輸入信號的選擇的極化而被編碼的輸出比特的數值(例如,進位輸入=」0」)。對於這個選擇的極化(這裡稱為進位輸入信號的參考極化),LUT按傳統的LUT那樣起作用輸入比特(加法操作數)的組合決定LUT地址(根據此LUT地址讀出輸出。
如果進位輸入信號具有與參考極化相逆向的極化,則LUT地址和LUT輸出值必須被變換。為了實施這個變換,單個兩輸入端的XOR門被連接到LUT的每個輸入端和每個輸出端。XOR信號之一是進位輸入信號。如果這個信號等於「1」,則XOR門把LUT地址信號和LUT輸出的原先的極化顛倒過來。
圖11顯示按照本發明的可重新配置的器件的邏輯單元的第一實施例。所顯示的可重新配置的邏輯器件包括帶有查找表1.1(LUT)的邏輯單元、用於即使地址信號的輸入端in1、和用於提供二進位輸出信號的輸出端out1。邏輯單元還包括用於接收控制信號的控制輸入端ctrl。輸入端in1通過EXOR門11.2被耦合,以用於響應在控制輸入端ctrl處的控制信號和在輸入端in1處的輸入信號而提供地址信號給LUT 11.1。邏輯單元具有另一個EXOR門11.3,以用於響應LUT 11.1的輸出信號和在控制輸入端ctrl處的控制信號而提供修正的輸出信號out』。邏輯單元具有另一個地址輸入端in2,它通過另一個EXOR門11.4被耦合到LUT 11.1的另一個輸入端。
優選地,對於n比特加法的進位輸出信號在一個獨立的電路中被產生,例如在Zimmermann R.的」Computer ArithmeticPrinciples,Architectures,and VLSI Design(計算機算術原理,結構,和超大規模集成電路設計)」,Leeture notes,Integrated SystemsLaboratory,Swiss Federal Institute of Technology,Zurich,March,1999中描述的那樣。這確保在關鍵路徑上的進位信號以非常快速的方式被產生(專用電路的延時小於LUT的延時)。而且,對於進位信號的專用電路的使用也導致配置存儲器尺寸的減小,因為反映進位輸出信號值的存儲器比特不必被存儲在LUT中。
本發明可以以多種方式被應用。首先,因為加法是最基本的算術運算,所給出的技術可被使用於基於LUT的FPGA,以便改進它們的性能和減小配置存儲器的尺寸。同樣地,LUT的輸入的數目可被減小,由此,也達到功率消耗的減小。它也可被使用於實施其他的算術運算,諸如減法(幾乎是直接地實施)和乘法。下面,給出可能的實施例的簡短的說明。
本發明對於粗的量化度結構的應用是特別有利的。為了說明,圖12上顯示具有四個基本輸入端in0,in2,in3,in4的邏輯單元的一個實施例,這些輸入端通過EXOR門12.3,12.4,12.5,12.6被耦合到LUT 12.1,12.2。LUT 12.1,12.2的輸出端通過另外的EXOR門12.7,12.8被耦合到邏輯單元的輸出端out1,out2。它還具有兩個額外的輸入端C和SL。輸入端C提供第二輸入信號到EXOR門12.3,12.4,12.5,12.6,12.7,12.8。另一個額外輸入端SL提供選擇信號到復用器12.9,後者選擇輸出端out1,out2中之一的輸出信號作為它的輸出信號。雖然圖12顯示具有4個輸入端和2個輸出端的LUT的邏輯單元,本發明同樣可應用於任意數目的比特的情形。圖12的邏輯單元適合於實施具有5個輸入信號的任何邏輯運算,其中out1=CF1(in0,in1,in2,in3)CF1(in0,in1,in2,in3)out2=CF2(in0,in1,in2,in3)CF2(in0,in1,in2,in3)另一個邏輯函數out3也可通過使用選擇信號SL作為另一個輸入信號而是可能的,其中out3=SL·out1+SL·out2同樣地,可以按這樣來產生k+1個變量中的每個輸出函數(out3)以作為k個變量中的第一(out1)和第二函數(out2)以及作為第k+1個變量的選擇信號(SL)。
out3(in0,....,C,SL)=SL·out1(in0,...,C)+SL·out2(in0,...,C),一類函數out1,out2可以按次序被寫為k-1個變量的第一和第二原函數(F1,F2)以及作為第k個變量的變量C的函數。
out1=CF1(in0,...,ink-2)CF1(in0,....,ink-2),和out2=CF2(in0,...,ink-2)CF2(in0,...,ink-2)
圖13顯示具有這樣的邏輯單元的加法器的實施方案。其中相應於圖12的那些的部分在其中用具有相同的第二部分的參考數字(例如,12.3和13.3)表示。對宗量大於1比特的加法運算產生一個多比特輸出,這可以用一組具有已連接的輸入端的1輸出比特LUT來實現。然而,優選地這可以用如參照圖7和8描述的一個多輸出LUT來實現。這具有前面提到的多個重要的優點。在按照本發明的可重新配置的器件中,然而,該多輸出LUT可以是相當明顯地小於在圖6上給出的那樣因為按照本發明的可重新配置的邏輯器件使用了加法的倒相性質,在LUT 13.1,13.2中的存儲器單元的數目可被減小2。存儲器單元的數目甚至進一步減小,因為在這個實施例中,進位輸出cout是通過專用電路13.9被計算的。
一個附加的2∶1復用器可被使用來允許實施更廣泛的隨機邏輯功能的可能性。按照本發明的電路(如圖12,13所示)比起以前描述的已知的方法,具有以下的優點。
比起參照圖7和8描述的方法,本發明的可配置的邏輯電路只需要相對較少數目的配置比特。另外,按照如圖12和13所示的、本發明的實施例的電路具有所有輸出的平衡延時。這可以阻止不必要的信號瞬時過程,因此減小功率消耗。潛在地,這裡顯示的多輸出LUT也可被利用於隨機邏輯,因為許多隨機邏輯功能也根據相同的組的輸入產生多比特輸出。雖然XOR門在信號處理時產生延時,這已被證明是可忽略的。本發明的電路需要較少的路由資源,由此,可以以較小的面積來實現。這也能夠減小功率消耗。所節省的面積可代之以被使用於存儲器。
在細的量化度的結構(單元的海洋)中(它們通常對於隨機邏輯而被最佳化的),一個或幾個小的LUT(例如,2-LUT)被使用於一個邏輯單元。為了實施算術運算(例如,加法),多個邏輯單元或在邏輯單元內的多個LUT必須被連接在一起。如果在LUT(例如,2-LUT)的每個輸入端和輸出端上包括XOR門,則單個LUT的功能可被擴展來實施算術運算。在傳統的方法中,這樣的LUT需要至少3個輸入端,因此將有23個存儲器單元;本發明的方案使得LUT的尺寸能夠減小2倍,並且以非常低的花費在輸入端和輸出端上放置額外的XOR門。圖14顯示這一點,例如用於帶有進位的1比特加法。這裡,相應於圖11的那些的部分用具有相同的第二部分(例如,11.1和14.1)的參考數字表示。應當指出,在可配置的邏輯結構中,通常每個信號有兩個輸出一個直接輸出和一個被登錄的(registed)輸出。這兩個出腳之一可被用作為對於進位輸出信號所需要的附加輸出端。
在按照本發明的可重新配置的器件中,圖15A上示意地顯示的多輸出LUT可以以幾個方式被實施,它們的例子被顯示於圖15B和15C。
圖15A所示的多輸出LUT 15.1具有單個輸入端15.2和多個輸出端15.3。
在圖15B所示的實施例中,多輸出LUT 15.4由第一15.6和第二15.7 LUT組成,它們分別具有單個輸出端15.8和15.9。LTS 15.6和15.7的輸入端都被耦合到輸入端15.5。
多輸出LUT 15.10的第二實施例顯示於圖15C。它包括第一和第二列存儲器單元15.11和15.12。藉助於解碼器(復用器)15.13,第一列15.11的一個輸出端被加以選擇,以便提供在輸出端15.15處的輸出信號,以及第二列15.12的一個輸出端被加以選擇,以便提供在輸出端15.16處的輸出信號。解碼器被輸入信號15.17控制。
多輸出LUT 15.18的第三實施例顯示於圖15D。它包括解碼器15.19,用於把輸入信號解碼成分別對於第一和第二存儲器列15.20和15.21的地址。存儲器列15.20和15.21中的每個提供一個輸出信號15.23。
表7-1顯示在所述的現有技術邏輯單元與根據所建議的方法的邏輯單元之間的比較結果。第一列(類型)是指邏輯單元的類型。由於邏輯單元在它們的量化度方面是不同的,使用任意類型的邏輯單元實施2比特加法器所需要的邏輯單元的數目(NL)被取為參考。根據這個數目,計算由在表上給出的參量描述的總的花費。
第三列顯示可被實施的邏輯功能的類型(TLF)。表示式k×(mI+nO)在這裡意味著k個邏輯功能的最大值可以用m個輸入和n個輸出的最大值來實施。當然,不必使用每個輸入和輸出。第四列顯示對於2比特加法器實施方案所需要的配置比特的數目(NC)。LUT解碼器的複雜性(CLUT)被包括在第五列。對於實施算術函數的路由複雜性(RC)被顯示於第六列。路由複雜性被表示為對於輸入和輸出信號所需要的線路的最小數目。
對於總的花費的度量TC是TC=NL(NC+CLUT)+RC表1按照本發明的可重新配置的邏輯電路與已知的可重新配置的邏輯電路的比較。
從這個比較可以看到,按照本發明的可重新配置的器件通過中等數目的配置比特可達到相對較高的性能。一方面,其性能是可與快速RCCA類型的可重新配置的電路的性能相比較的。另一方面,所需要的配置比特的數目是可與例如LP-FPGA類型的可重新配置的電路的配置比特數目相比較。按照本發明的可重新配置的邏輯器件特別適用於在乘法器陣列中的應用。例如,圖16顯示一個乘法器陣列,它用於把兩個數a0,...,an-1和b0,...,bm-1相乘。該陣列是具有「垂直」進位傳播的進位保存乘法器的形式。這樣的陣列是優選的,因為它比具有相對較慢的「水平」進位傳播的進位脈動乘法器更快。雖然幾個實施方案是可能的,但優選地,所謂的Braun陣列被使用於對未加正負號的數進行相乘,以及修正的Pezaris陣列乘法器被用於二的補碼數。在這種情形下,n=m=4,但本領域技術人員將會看到,這樣的陣列可以針對n和m的任何組合來被構建。該乘法器陣列提供輸出數P0,...,Pn+m-1。
如圖16所示,陣列由乘法單元16.i.j組成。這些單元之一被詳細地顯示於圖17。乘法單元包括與門N和全加法器FA。與門N計算ai和bj的乘積,以及全加法器FA把其結果附加到從乘法單元16.i-1.j+1得到的部分積PPi-1,j+1上。響應於此,全加法器提供另一個部分積PPi.j和進位輸出信號cout。對於乘法單元16.0.j,在陣列的第一行,輸入部分積P-1,j+1=」0」。輸出比特P0,...,P3等於由乘法單元16.i.0輸出的部分積PPi.j。輸出比特P4到P6分別由乘法單元16.4.0-16.4.2輸出的部分積提供。最後的輸出比特P7等於乘法單元16.4.2的進位輸出比特。在一個n×m乘法器的情形下,輸出比特P0,...,Pn-1由乘法單元16.0.0到16.n-1.0的部分積提供。比特Pn,...,Pn+m-2分別由乘法單元16.n.0到16.n.m-2提供,以及比特Pn+m-1由乘法單元16.n.m-1的cout輸出提供。
在實際的實施方案中,乘法器陣列可被如下地簡化。由」*」表示的乘法器單元16.0.0,...,16.0.3和16.1.3,...,16.3.3可被簡化為一個與門,因為在由這些單元接收的信號cin中部分積PP和進位都是「0」。所以,單元16.0.j僅僅必須計算乘積a0與bj,以及單元16.j.3僅僅必須計算乘積ai與b3。
而且,兩個單元16.i.j和16.i+1.j可以由如圖18示意地顯示的、按照本發明的可重新配置的邏輯器件來實施。這裡所示的可重新配置的邏輯器件包括與門單元18.1、第一可控制的倒相門18.2、查找表18.3、第二可控制的倒相門18.4、以及用於進位計算的分開的電路18.5。在圖18上顯示的可重新配置的邏輯器件計算三比特數cout|PPi+1.j|PPi.j作為二比特數PPi,j+1|PPi-1.j+1、二比特數ai+1.bj|ai.bj、和一比特數cin的和值。
與門單元18.1包括用於計算乘積ai.bj和ai+1.bj的與門。由單元18.2、18.3和18.4形成的加法器隨後計算比特PPi.j和PPi+1.j。用於計算比特cout的電路18.5被詳細地顯示於圖19。該電路分別包括第一和第二XOR門19.1和19.3以及乘法器19.2和19.4。
乘法器陣列可以用按照本發明的可重新配置的單元的常規陣列以幾種方式被實施。圖20和21顯示具有偶數行的乘法器陣列的第一和第二實施方案。
在這其中每個可重新配置的單元20.i.j被表示為具有第一和第二部分的矩形。如果只有一部分打上陰影線,則只使用可重新配置的單元中的一個查找表。如果兩個部分都打上陰影線,則使用整個查找表。例如,每個中心單元20.2.1實施如圖18所示的兩個乘法器單元。在可重新配置的單元20.3.1的最後一行,對於每個乘法器單元16.4.0、16.4.1和16.4.2,只分別使用查找表的一部分。在最後一行,第一乘法器陣列單元16.4.0把它的ai輸入設置為「0」。它的cout輸出被耦合到下一個乘法器陣列單元16.4.1的ai輸入端。同樣地,最後一行的每個另外的乘法器陣列單元16.4.j把它的ai輸入端耦合到在該行中在先的陣列單元16.4.j-1。最後的乘法器單元16.4.2的cout輸出提供相乘結果的最後的輸出比特P7。
優選地,可重新配置的單元的與門單元18.1包括至少4個與門。這使得有可能在可重新配置的單元20.1.j的一部分中實施第一行的乘法器單元16.0.j和第二行的乘法器單元16.1.j-1。
這被顯示於圖22。在圖22上,單元22.n相應於圖18上的單元18.n。圖22顯示在一個可重新配置的單元20.1.1中乘法器單元16.0.0、16.0.1和16.0.2的實施方案。與圖18相比較,一個附加的與門22.1.1被使用來計算部分積a0.b1。另一個加法器22.13把它的一個輸入端連接到邏輯「1」,這樣,輸入信號a0被未修改地傳送到可控制的倒相門22.2。查找表22.3的第一列22.3.1被使用來計算乘積P1。第二列22.3.2被使用來實施與運算a0.b0,給出結果P0。查找表的內容在下表中給出。
圖21顯示乘法陣列的另一個實施方案。圖21的實施例與圖20的不同處在於,乘法器單元16.4.0與最後的行中的單元16.4/1在一個可重新配置的單元21.3.1中被組合。與圖20的實施例不同,乘法器單元16.4.0的輸出端cout被連接到單元16.4.1的輸入端cin。乘法器單元16.4.1的ain輸入被連接到單元16.3.1的輸出端cout。乘法器單元16.4.2以與圖20的相應的單元相同的方式被連接。
同樣地,具有奇數行的乘法器陣列可以如圖23和24示意地顯示的那樣被實施。圖23顯示一個在其中最後的行中每個可重新配置的單元23.4.j包括一個乘法器單元的實施例。圖24顯示一個在其中兩個乘法器單元以類似於圖21上對於單元21.3.1所顯示的方式被組合在單元24.4.1中的實施例。
圖25所示的、本發明的可重新配置的邏輯單元的實施例很容易使得改變功能Add(相加)和Substract(相減)成為可能。
類似於圖11所示的邏輯單元,它具有查找表25.1、輸入端a0,a1(用於接收輸入信號)、和輸出端o0,o1(用於提供輸出信號)。它還具有控制輸入端crtl(用於接收控制信號)、以及可控制的倒相門25.2.1,25.2.2(用於響應於控制信號crtl和在輸入端a0,a1處的輸入信號而提供地址信號給LUT 25.1)。它還具有可控制的倒相門25.3.1,25.3.2,用於響應於LUT 25.1的輸出信號和控制信號ctrl而提供修正的輸出信號o0,o1。
除了圖11所示的實施例以外,它具有模式控制輸入端ADD/SUB,用於選擇ADD(相減)或SUBTRACT(相減)模式。圖25所示的實施例還具有組合單元25.5(這裡是EXOR門),用於產生修正的控制信號ctrl2。圖25的實施例還具有可控制的倒相門25.2.3,25.1.4,用於響應於修正的控制信號crtl和在輸入端b0,b1處的輸入信號而提供地址信號給LUT 25.1。如圖25所示,控制信號ctrl由第一復用器25.6產生,第一復用器25.6具有被耦合到在信號輸入端cin處的進位的第一輸入端、和被耦合到配置存儲器單元M的第二輸入端。復用器25.6還具有被連接到配置存儲器單元的控制輸入端。組合單元25.5接收控制信號ctrl作為第一輸入,以及具有被耦合到第二復用器25.7的第二輸入端。第二復用器25.7被第一配置單元所控制以便在ADD/SUB模式控制信號和來自配置存儲器的固定值之間進行選擇。
權利要求
1.可重新配置的邏輯器件,包括帶有查找表(LUT)的邏輯單元、用於接收地址信號的輸入端和用於提供輸出信號的輸出端,其特徵在於。-控制輸入端(crtl),用於接收控制信號,-可控制的倒相門(11.2),用於響應於控制信號(crtl)和輸入信號(in1)而提供地址信號給LUT(11.1),-可控制的倒相門(11.3),用於響應於LUT(11.1)的輸出信號和控制信號而提供修正的輸出信號。
2.按照權利要求1的可重新配置的邏輯器件,其特徵在於,一個或多個用於接收地址信號的另外的輸入端(in2)。
3.按照權利要求2的可重新配置的邏輯器件,其特徵在於,一個或多個附加輸入端(in1,in2,in3)通過可控制的倒相門(12.3,12.4,12.5,12.6)而被耦合到LUT(12.1),該可控制的倒相門響應於控制信號和在所述附加輸入端(in1,in2,in3)處接收的地址信號而提供地址信號給LUT(12.1)。
4.按照權利要求1的可重新配置的邏輯器件,其特徵在於,LUT(12.1)具有被耦合到EXOR門(12.8)的一個或多個附加輸出端(O2),用於響應於在LUT(12.2)的所述輸出端處的輸出信號和控制信號而提供修正的輸出信號。
5.按照權利要求1的可重新配置的邏輯器件,其特徵在於,用於n比特加法的進位輸出信號在獨立的電路(14.5)中產生。
6.按照權利要求1的可重新配置的邏輯器件,其特徵在於,LUT(12.1,12.2)被實施為一個多輸出LUT。
7.按照權利要求3的可重新配置的邏輯器件,其特徵在於,復用器(12.9)被選擇信號(SL)控制,以便至少從第一和第二修正輸出信號中選擇作為邏輯單元的輸出信號。
8.包括由按照前述權利要求之一的可重新配置的邏輯器件形成的多個乘法單元(16.i.j)的乘法陣列,該乘法單元(16.i.j)還包括具有至少一個與門的與門單元(18.1),用於計算第一個數(a)的輸入比特(ai)與第二個數(b)的輸入比特(bj)的乘積,其中可重新配置的邏輯器件(18.2,18.3,18.4)計算這個乘積(ai,bj)與輸入部分積(PPi-1.j+1)的和值。
9.按照前面權利要求的乘法陣列,其特徵在於,至少兩個乘法單元(16.1.0和16.2.0)被組合在可重新配置的邏輯器件中,該可重新配置的邏輯器件計算n+1比特數(cout|PPi+1.j|PPi.j),以作為n比特數(PPi.j+1|PPi-1.j+1),其比特是由前面的乘法單元得到的部分積;通過把第一輸入信號的n比特與第二信號的輸入比特相乘而得到的n比特數(ai+1.bj|ai.bj);以及一比特進位信號(cin)的和值。
全文摘要
按照本發明的可重新配置的邏輯器件包括查找表(LUT)(11.1)的邏輯單元,它具有用於接收地址信號的輸入端(in1)和用於提供輸出信號的輸出端(out)。可重新配置的邏輯器件的特徵在於一個控制輸入端(crt1),用於接收控制信號;一個可控制的倒相門(11.2),用於響應於控制信號(crt1)和輸入信號(in1)提供地址信號到LUT(11.1);和一個可控制的倒相門(11.3),用於響應於LUT的輸出信號和控制信號提供修正的輸出信號。按照本發明的可重新配置的邏輯器件可以高速度運行,以及同時具有相對較適度的配置存儲器。
文檔編號H03K19/173GK1462507SQ02801674
公開日2003年12月17日 申請日期2002年5月15日 優先權日2001年5月16日
發明者K·萊藤-諾瓦克 申請人:皇家菲利浦電子有限公司

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀