專利名稱:可擴(kuò)展和自動(dòng)生成且基于多路復(fù)用器的集成電路分層級(jí)互連架構(gòu)的制作方法
相關(guān)申請(qǐng)參照本專利申請(qǐng)要求2001年7月24日提交的美國專利申請(qǐng)No60/307,534,完整地結(jié)合在這里作為參考。
背景技術(shù):
現(xiàn)有許多應(yīng)用需要具有可配置互連網(wǎng)絡(luò)的集成電路。一個(gè)這種應(yīng)用是用于并行計(jì)算的多處理器環(huán)境,或在單個(gè)芯片上(或跨越多個(gè)芯片),其中互連網(wǎng)絡(luò)在處理器之間根據(jù)如何調(diào)度處理器來路由數(shù)據(jù)。另一種應(yīng)用是所謂的芯片上系統(tǒng)(SOC),其中處理器、存儲(chǔ)器和集成電路的外部元件之間的連接根據(jù)運(yùn)行的程序的需要而變化。又一種應(yīng)用是現(xiàn)場可編程序的門陣列(FPGA),或者作為離散的芯片或者作為SOC上的核心,其中被互連的元件是根據(jù)FPGA的設(shè)計(jì)改變復(fù)雜程度的邏輯門。
當(dāng)前,基于FPGA產(chǎn)品的SRAM(靜態(tài)隨機(jī)存取存儲(chǔ)器)常用于這些應(yīng)用。SRAM單元用來保持配置位以便設(shè)定互連網(wǎng)絡(luò)的所需配置。由
圖1A示出的單元元件示出互連網(wǎng)絡(luò)架構(gòu)的一般實(shí)例。這個(gè)基本的陣列結(jié)構(gòu)元件在通過集成電路的兩個(gè)方向上重復(fù)以形成用于改變尺寸的FPGA的網(wǎng)孔結(jié)構(gòu)。在該排列的結(jié)構(gòu)中,在開關(guān)單元10和其4個(gè)相鄰的開關(guān)單元10在北、東、西和南方向上之間構(gòu)成連接。開關(guān)單元10、連接單元11和所有它們的線路(即集成電路的導(dǎo)線)以及連接構(gòu)成用于邏輯單元12的互連網(wǎng)絡(luò),其中邏輯單元12由邏輯門構(gòu)成。邏輯單元12用來實(shí)現(xiàn)實(shí)際的電路邏輯,連接單元11被配置來將邏輯單元12連接到互連網(wǎng)絡(luò),且開關(guān)單元10被配置來形成所需的互連網(wǎng)絡(luò)。
在以下文章中更詳細(xì)地描述了這種傳統(tǒng)的網(wǎng)孔架構(gòu)“Flexibility ofInterconnection Structures for Field Programmable Gate Arrays,″J.Rose和S.Brown,IEEE Journal of Solid-State Circuits,vol.26,no.3,1991年三月,和California,San Jose的Xilinx公司的Virtex-E 1.8V Field ProgramableGate Arrays的數(shù)據(jù)表。工業(yè)實(shí)踐中該FPGA架構(gòu)的當(dāng)前使用的描述張貼在Xilinx公司的網(wǎng)頁,http//www.xilinx.com/partinfo/ds022.pdf上。
這種傳統(tǒng)結(jié)構(gòu)的靈活性在于連接單元11和開關(guān)單元10內(nèi)。為了建立這些單元10和11中導(dǎo)線之間的連接,F(xiàn)PGA互連網(wǎng)絡(luò)中每個(gè)可能的連接具有其自己的通路晶體管(pass transistor)和存儲(chǔ)于存儲(chǔ)器單元中的其控制配置位(配置位(ConfigBit)),如圖1B的實(shí)例性互連網(wǎng)絡(luò)所示的。4個(gè)垂直導(dǎo)線16由兩個(gè)水平導(dǎo)線17交叉,且在可以被配置成導(dǎo)線對(duì)導(dǎo)線的連接的每個(gè)交叉點(diǎn)處,具有由配置位控制的通路晶體管15。在這個(gè)實(shí)例中,有8個(gè)通路晶體管15和8個(gè)配置位?;蛘?,可以使用通路門代替通路晶體管15。
但是,這種常規(guī)可配置的互連構(gòu)建和網(wǎng)絡(luò)具有一些問題和缺點(diǎn)。每個(gè)通路晶體管或通路門需要配置位,它需要存儲(chǔ)單元。隨著互連網(wǎng)絡(luò)的增長,用于配置位的存儲(chǔ)單元將占據(jù)集成電路上更多的空間。其次,如果配置位被不合適地設(shè)置,從而超過一個(gè)的導(dǎo)線驅(qū)動(dòng)給定的導(dǎo)線,則常規(guī)的互連網(wǎng)絡(luò)將可能電短路到地。如果一個(gè)驅(qū)動(dòng)導(dǎo)線是電源而另一個(gè)是地,則可能損壞被驅(qū)動(dòng)的導(dǎo)線。隨著硅制造工藝趨向更小的幾何尺寸,這種可能性逐漸增加。更小的幾何尺寸造成更差的抗噪性并造成有噪聲的工作環(huán)境,諸如自動(dòng)應(yīng)用,配置位可以交換狀態(tài)并產(chǎn)生嚴(yán)重的短路。不可預(yù)知的計(jì)時(shí)延遲是由縮小幾何尺寸加重的另一個(gè)問題。常規(guī)的互連網(wǎng)絡(luò)具有用于每個(gè)給定線路的高可變負(fù)載,這取決于它分成多少導(dǎo)線以及通過多遠(yuǎn)形成網(wǎng)孔連接。當(dāng)幾何尺寸縮小時(shí),這個(gè)問題變成實(shí)現(xiàn)用于設(shè)計(jì)的計(jì)時(shí)閉合中的顯著問題。再一個(gè)問題是最壞情況延遲。在傳統(tǒng)的網(wǎng)孔網(wǎng)絡(luò)中,最長的通路和N的平方根成比例,N是互連構(gòu)架中單元元件的數(shù)量。例如,在FPGA中4K核心單元的方陣列中,網(wǎng)孔中最長的通路是128。因此,當(dāng)互連變得更大時(shí),計(jì)時(shí)成為了更大的問題。最后,常規(guī)的互連網(wǎng)絡(luò)是不易擴(kuò)展的。當(dāng)互連網(wǎng)絡(luò)變得更大時(shí),網(wǎng)孔構(gòu)架必須擴(kuò)展每個(gè)開關(guān)單元以適應(yīng)增加的互連需要。
本發(fā)明避免或減輕了許多這些問題。它提供構(gòu)架的規(guī)律性并是可擴(kuò)展的并易于由軟件產(chǎn)生。
發(fā)明概述本發(fā)明提供集成電路上可配置的互連系統(tǒng),它具有一隊(duì)導(dǎo)電線,能通過多個(gè)響應(yīng)配置位的多個(gè)多路復(fù)用器被配置成所需的互連系統(tǒng)。每個(gè)多路復(fù)用器具有多個(gè)輸入端連接到導(dǎo)電線的子集和多個(gè)輸出端連接到一個(gè)導(dǎo)電線。多路復(fù)用器響應(yīng)配置位的子集將一個(gè)輸入端導(dǎo)電線連接到輸出端導(dǎo)電線。本發(fā)明的另一個(gè)方面在于這隊(duì)導(dǎo)電線和多個(gè)多路復(fù)用器被組織和排列以形成分層級(jí)內(nèi)的元件,一個(gè)分層級(jí)的多個(gè)元件形成下一個(gè)較高分層級(jí)中的元件,從而分層級(jí)中的任一對(duì)元件具有包含在這對(duì)元件的最低分層級(jí)元件的一個(gè)元件內(nèi)的可配置的互連。
本發(fā)明的又一個(gè)方面在于可配置的互連系統(tǒng)是參數(shù)定義的,從而軟件生成器可以方便地創(chuàng)建所需的可配置網(wǎng)絡(luò)。一個(gè)參數(shù)是形成下一個(gè)較高分層級(jí)中元件的一個(gè)分層級(jí)的元件的數(shù)量。
附圖概述圖1示出FPGA的傳統(tǒng)的可配置互連架構(gòu);圖1B示出用于圖1A架構(gòu)的實(shí)例性的互連網(wǎng)絡(luò)。
圖2示出根據(jù)本發(fā)明的實(shí)例性的基于多路復(fù)用器的互連網(wǎng)絡(luò)。
圖3A示出根據(jù)本發(fā)明一個(gè)實(shí)施例的分層的基于多路復(fù)用器的互連架構(gòu)的最低級(jí);圖3B示出圖3A的分層級(jí)的下一個(gè)更高的級(jí)或母體;圖3C示出圖3B的分層級(jí)的下一個(gè)更高的級(jí)或母體;圖4A示出圖3B的兩個(gè)分層級(jí)的輸入和輸出多路復(fù)用器;圖4B示出圖4的多路復(fù)用器如何形成兩個(gè)最低級(jí)單元之間的連接;圖6A示出最低級(jí)核心單元到其輸出多路復(fù)用器的連接;圖6B示出最低級(jí)核心單元到其輸入多路復(fù)用器的連接;圖7A示出從形成母體的所有最低級(jí)元件的輸出多路復(fù)用器向外連接或輸出到一個(gè)母體輸出多路復(fù)用器;圖7B示出從最低級(jí)元件的一個(gè)輸出多路復(fù)用器到母體元件的輸出多路復(fù)用器的向外連接或輸出;圖7C示出從圖7B中突出的最低級(jí)元件的另一個(gè)輸出多路復(fù)用器到母體輸出多路復(fù)用器的向外連接或輸出;圖8示出所有16個(gè)最低級(jí)元件到母體元件的輸出多路復(fù)用器的所有向外連接或輸出;圖9A示出從一個(gè)母體輸入多路復(fù)用器到形成母體的所有最低級(jí)元件的輸入多路復(fù)用器的向內(nèi)連接或輸入;圖9B示出從母體單元的輸入多路復(fù)用器到最低級(jí)單元的一個(gè)輸入多路復(fù)用器的向內(nèi)連接或輸入;圖10示出從母體元件的輸入多路復(fù)用器到所有16個(gè)最低級(jí)核心單元的向內(nèi)連接或輸入;圖11A示出一個(gè)4核心單元的子體的輸入多路復(fù)用器到其它4核心單元子體的輸出多路復(fù)用器的交叉連接;圖11B示出一個(gè)4核心單元子體的一個(gè)輸出多路復(fù)用器到其它4核心單元子體的輸入多路復(fù)用器的連接;圖12示出用于16核心單元元件的所有交叉連接;圖13A示出從三個(gè)同類核心單元的輸出多路復(fù)用器到核心單元的一個(gè)輸入多路復(fù)用器的連接;圖13B示出從核心單元的一個(gè)輸出多路復(fù)用器到三個(gè)同類核心單元的輸入多路復(fù)用器的連接;
圖14示出16核心單元的所有交叉連接;以及圖15示出基于多路復(fù)用器、分層可配置的互連網(wǎng)絡(luò)的設(shè)計(jì),它具有上述參數(shù)并根據(jù)本發(fā)明自動(dòng)地產(chǎn)生。
具體實(shí)施例方式
本發(fā)明使用分層的、基于多路復(fù)用器的互連架構(gòu)。圖2中示出基于多路復(fù)用器的互連網(wǎng)絡(luò)的一個(gè)實(shí)例,其中4個(gè)垂直導(dǎo)線21和2個(gè)水平導(dǎo)線22相交。使用多路復(fù)用器23,而不是通路晶體管或通路門。在該實(shí)例中,每個(gè)水平導(dǎo)線22連接到多路復(fù)用器23的輸出端,所述多路復(fù)用器23具有連接到垂直導(dǎo)線22的輸入端。每個(gè)水平導(dǎo)線22由4:1的多路復(fù)用器23驅(qū)動(dòng),它由兩個(gè)控制位控制。在該樣品實(shí)例中,只需要4個(gè)配置位來取代圖1B的常規(guī)可配置的網(wǎng)絡(luò)情況中的8個(gè)。
因此,基于多路復(fù)用器的可配置互連網(wǎng)絡(luò)需要更少的配置位來實(shí)現(xiàn)可配置互連網(wǎng)絡(luò)中同樣的開關(guān)單元。較少的配置位意味著更小的FPGA設(shè)計(jì)、更小的外部配置存儲(chǔ)器存儲(chǔ)量、更低的產(chǎn)品成本和更快的配置時(shí)間。通路晶體管可配置互連網(wǎng)絡(luò)的另一個(gè)優(yōu)點(diǎn)在于基于多路復(fù)用器的可配置互連網(wǎng)絡(luò)不能將電源和地短路。
本發(fā)明還使用具有基于多路復(fù)用器的可配置互連網(wǎng)絡(luò)的分層架構(gòu)。這造成可預(yù)測的信號(hào)計(jì)時(shí),因?yàn)槊恳粚蛹?jí)上的多路復(fù)用器的輸出有嚴(yán)格有界(bounded)的載荷,甚至在所路由的網(wǎng)絡(luò)具有高輸出端數(shù)(fanout)時(shí)。相反地,在上述常規(guī)的FPGA網(wǎng)孔網(wǎng)絡(luò)構(gòu)架中,信號(hào)通路和信號(hào)的計(jì)時(shí)通常是不可預(yù)測是。本發(fā)明的分層構(gòu)架還具有更快的最壞情況延遲。如前所述,傳統(tǒng)網(wǎng)孔網(wǎng)絡(luò)中最長通路和N的平方根成比例。在一種分層網(wǎng)絡(luò)中,最長通路和log N成比例,從而最壞情況延遲隨分層網(wǎng)絡(luò)的N增加而更為緩慢地增長。例如,在4K核心單元的方陣列中,常規(guī)網(wǎng)孔中的最長通路是128,而分層四叉樹中的僅是12。
分層的架構(gòu)具有可擴(kuò)展性的優(yōu)點(diǎn)。當(dāng)網(wǎng)絡(luò)中邏輯單元的數(shù)量增長時(shí),互連需求超線性地增長。在分層網(wǎng)絡(luò)中,只有分層的更高的級(jí)需要擴(kuò)展而更低的級(jí)保持不變。相反地,網(wǎng)孔構(gòu)架必須擴(kuò)展每個(gè)開關(guān)單元來適應(yīng)增加的需要。此外,分層構(gòu)架允許互連構(gòu)架的自動(dòng)生成。這是FPGA核心易于嵌入用戶的SOC的關(guān)鍵能力。自動(dòng)軟件生成器允許用戶指定任何尺寸的FPGA核心。這意味著對(duì)于具有可預(yù)知計(jì)時(shí)的任一網(wǎng)絡(luò)規(guī)模在算法匯編過程中使用統(tǒng)一的模塊。
在本發(fā)明的特殊實(shí)施例中,分層的每個(gè)級(jí)由4個(gè)元件組成,即可以表述成,每個(gè)母體(較高級(jí)的元件)由4個(gè)子體(較低級(jí)的元件)構(gòu)成。最低級(jí)由4個(gè)核心單元構(gòu)成,如圖3A中所示的。圖3B示出4個(gè)最低級(jí)的元件如何形成第二分層級(jí)元件,而圖3C示出4個(gè)第二級(jí)分層級(jí)元件30如何形成第三分層級(jí)元件。因此,第三級(jí)元件由64個(gè)核心單元形成。當(dāng)然,子體的數(shù)量可以一般化且每個(gè)級(jí)可以根據(jù)本發(fā)明具有不同數(shù)量的子體。
每個(gè)級(jí)處的每個(gè)子體具有一組輸入多路復(fù)用器和一組輸出多路復(fù)用器,它分別提供輸入信號(hào)連接進(jìn)入子體元件和從子體出來的輸出信號(hào)連接。在圖4所示的實(shí)例性分層中,核心單元25具有4個(gè)輸入多路復(fù)用器26和兩個(gè)輸出多路復(fù)用器27,但可以將互連架構(gòu)一般化成任何數(shù)量的輸入多路復(fù)用器和輸出多路復(fù)用器。4個(gè)核心單元25形成最低級(jí),它們具有一組12個(gè)輸入多路復(fù)用器38和12個(gè)輸出多路復(fù)用器29。同樣地,下一個(gè)分層級(jí)元件具有一組輸入多路復(fù)用器和一組輸出多路復(fù)用器,等等。
用于多路復(fù)用器的連接模式具有3種輸出、交叉和輸入。這些不同的種類由圖5的從核心單元A到核心單元B的實(shí)例連接路線示出。具有從核心單元A的輸出多路復(fù)用器26A到支持核心單元A的最低、分層級(jí)1、元件30A的輸出多路復(fù)用器28A的連接。隨后,具有從輸出多路復(fù)用器28A到支持核心單元B的級(jí)1元件30B的輸入多路復(fù)用器29B的交叉連接。元件30A和30B由虛線框出。最后,具有從輸入多路復(fù)用器29B到核心單元B的輸入多路復(fù)用器27B的輸入連接。應(yīng)注意,被配置的連接都位于最低分層級(jí)元件內(nèi),它包括兩個(gè)連接的末端,即核心單元A和核心單元B。在該實(shí)例中,最低級(jí)單元是級(jí)2單元,它支持16個(gè)核心單元25,包括核心單元A和B。
以下描述用于每個(gè)多路復(fù)用器的完整的一組連接。從核心單元25開始,每個(gè)核心單元25連接到其輸入多路復(fù)用器27和輸出多路復(fù)用器26。圖6B示出核心單元25如何被連接到每個(gè)其輸出多路復(fù)用器26且圖6B示出核心單元25如何被連接到每個(gè)其輸入多路復(fù)用器27。
關(guān)于分層級(jí)元件的多路復(fù)用器,“母體”和“子體”,分層母體的每個(gè)輸出多路復(fù)用器連接到每個(gè)其分層子體的輸出多路復(fù)用器。軟件生成器均勻地分配連接,從而使從給定多路復(fù)用器的可能的路由選擇通路最大而使可能的本地?fù)頂D(localcongestion)最小。例如,“第一個(gè)”母體多路復(fù)用器連接到“第一個(gè)”子體多路復(fù)用器,“第二個(gè)”母體多路復(fù)用器連接到“第二個(gè)”子體多路復(fù)用器,等等。如果屬于母體的輸出調(diào)制器的數(shù)量和屬于子體的不匹配,則諸如算術(shù)模數(shù)的函數(shù)被用來繞回(wrap around)連接。圖7A-7C和8示出輸出連接。圖7A示出級(jí)1元件輸出多路復(fù)用器28到形成元件的核心單元25的輸出多路復(fù)用器26的連接。相反地,圖7B示出核心單元輸出多路復(fù)用器26到核心單元的母體的輸出多路復(fù)用器28的連接。圖7C示出第二個(gè)核心單元輸出多路復(fù)用器26到核心單元的母體的輸出多路復(fù)用器28的連接以及通過如前所述的模數(shù)函數(shù)的連接的分配。圖8示出用于級(jí)2元件的16個(gè)核心單元25的所有輸出連接。
類似地,分層母體上的每個(gè)輸入多路復(fù)用器連接到其每個(gè)分層子體上的輸入多路復(fù)用器。如果母體和子體上的輸入多路復(fù)用器的數(shù)量不匹配,則諸如算術(shù)模數(shù)的函數(shù)將被用來繞回連接。圖9A示出從級(jí)1母體元件的一個(gè)輸入多路復(fù)用器29到其4個(gè)核心單元子體的輸入多路復(fù)用器27的輸入連接。相反地,圖9B示出從其母體的輸入多路復(fù)用器29到一個(gè)核心單元輸入多路復(fù)用器27的輸入連接。圖10示出用于級(jí)2元件的16個(gè)核心單元25的所有輸入連接。
這些輸入和輸出連接的實(shí)例示出互連架構(gòu)的另一個(gè)參數(shù)。如果可以指定其子體,則是母體多路復(fù)用器和多路復(fù)用器之間的連接數(shù)量。對(duì)于上述輸出連接,使用參數(shù)1。換句話說,每個(gè)母體多路復(fù)用器連接到每個(gè)子體上的一個(gè)多路復(fù)用器。對(duì)于輸入連接,使用參數(shù)3。換句話說,每個(gè)母體輸入多路復(fù)用器連接到其子體上的3個(gè)輸入多路復(fù)用器。諸如所述模數(shù)函數(shù)的分配函數(shù)被用來均勻地分配連接。
在分層的每個(gè)級(jí)處,交叉連接將輸出和輸入連接結(jié)合。在每個(gè)級(jí)處,通常具有同樣數(shù)量的輸出多路復(fù)用器和輸入多路復(fù)用器。對(duì)于交叉連接,在同一分層級(jí)處,每個(gè)子體上的每個(gè)輸入多路復(fù)用器連接到每另一個(gè)子體上對(duì)應(yīng)的輸出多路復(fù)用器。在每個(gè)級(jí)具有4個(gè)子體的實(shí)例中,則每個(gè)輸入多路復(fù)用器和3個(gè)其它子體的輸出多路復(fù)用器連接。還有一參數(shù)用于連接到每個(gè)子體的許多輸出多路復(fù)用器的數(shù)量,且一函數(shù)用于均勻地分配連接。在該實(shí)例中,指定參數(shù)2。這在圖11A中示出,其中一個(gè)4核心單元子體的輸入多路復(fù)用器29連接到其它4核心單元子體的6個(gè)輸出多路復(fù)用器28。相反地,圖11B示出一個(gè)4核心單元子體的一個(gè)輸出多路復(fù)用器28到其它4核心單元子體的6個(gè)輸入多路復(fù)用器29的連接。圖12示出用于16個(gè)核心單元元件的所有交叉連接。
交叉連接的一種特殊情況是最低核心單元互連。在核心單元25的級(jí)處,輸入多路復(fù)用器27連接到包括其本身的所有子體的輸出多路復(fù)用器26,如圖13A所示。這容納了單個(gè)核心單元25上的反饋通路。在該實(shí)例中,用于每個(gè)子體連接數(shù)量的參數(shù)被指定成1。圖13B示出從核心單元25的一個(gè)輸出多路復(fù)用器26到3個(gè)同類核心單元25的輸入多路復(fù)用器27的連接。應(yīng)注意,有兩個(gè)連接到每個(gè)核心單元25的輸入多路復(fù)用器27。圖14示出16個(gè)核心單元的所有交叉連接。
通過使互連網(wǎng)絡(luò)的產(chǎn)生參數(shù)化,本發(fā)明利用分層架構(gòu)的規(guī)律性和可預(yù)知性。輸入數(shù)據(jù)可以來自文件或交互的用戶輸入。所需配置的網(wǎng)絡(luò)的許多特征由參數(shù)來描述。邏輯單元的總數(shù)是參數(shù)化的。在所需的實(shí)例中,指定16個(gè)核心單元。每個(gè)分層級(jí)的子體數(shù)量是參數(shù)化的,在該實(shí)例中,每個(gè)級(jí)處4個(gè)子體。用于每個(gè)分層級(jí)的輸入和輸出多路復(fù)用器的數(shù)量是參數(shù)化的。在該所需的實(shí)例中,指定母體多路復(fù)用器對(duì)子體多路復(fù)用器的恒定比率3。換句話說,如果在一個(gè)級(jí)處有4個(gè)輸入多路復(fù)用器用于元件,則母體級(jí)就有12個(gè)輸入多路復(fù)用器。
以下的是文件可能的規(guī)格的實(shí)例
應(yīng)注意,恒定比率3是根據(jù)分層互連中經(jīng)驗(yàn)性研究路由能力(routability)的論文選擇的,該論文即“Routing Architectures for Hierarchical FieldProgrammable Gate Array,″A.Aggarwal和D.Lewis,Proccedings of IEEEInternational Conference on Computer Design,1994。該論文斷定二叉樹分層中1.7的比率給出合適的路由能力。對(duì)于四叉樹分層,這將是(1.7*1.7)=2.89。由于該研究僅使用相對(duì)較小的實(shí)例,該比率可以被認(rèn)為是最小要求。參數(shù)3近似地和使用0.75的指數(shù)的倫特規(guī)則(Rent’s Rule)計(jì)算一樣。
還針對(duì)許多工業(yè)標(biāo)準(zhǔn)基準(zhǔn)和現(xiàn)實(shí)設(shè)計(jì)測試具有規(guī)定的常數(shù)作為參數(shù)的所述互連架構(gòu)。使用了多至16K的核心單元并獲得了高至100%的利用。所有測試情況都成功地完成了。特別是,使用了用于具有4個(gè)輸入和2個(gè)輸出的核心單元的四叉樹分層的規(guī)定的參數(shù),以及每個(gè)輸出多路復(fù)用器4:1和每個(gè)輸入多路復(fù)用器12:1,除了一核心單元,其中每個(gè)輸入多路復(fù)用器是13:1。對(duì)于這些尺寸的多路復(fù)用器的傳播延遲和輸出端數(shù)是可以充分接受的。
多路復(fù)用器的尺寸和它們互連模式的一致性使得該互連架構(gòu)易于自動(dòng)生成。除了通過自動(dòng)軟件產(chǎn)生可配置的互連網(wǎng)絡(luò),網(wǎng)絡(luò)還易于針對(duì)多數(shù)合適的規(guī)模擴(kuò)展。計(jì)時(shí)延遲是可預(yù)知的且知道最壞情況延遲。圖15是軟件生成器,具有2048個(gè)核心單元的基于多路復(fù)用器的分層可配置互連網(wǎng)絡(luò)的結(jié)果。
雖然前述的是本發(fā)明實(shí)施例的完整描述,但顯然,可以進(jìn)行和使用各種修改、替換和等效物。因此,以上的描述應(yīng)不認(rèn)為限定本發(fā)明的范圍,它是由所附權(quán)利要求書的界限和范圍限定的。
權(quán)利要求
1.一種集成電路上的可配置互連系統(tǒng),其特征在于,包括一隊(duì)導(dǎo)電線,其可通過多個(gè)響應(yīng)配置位的多路復(fù)用器被配置成所需的互連系統(tǒng),每個(gè)所述多路復(fù)用器具有多個(gè)連接到導(dǎo)電線的子集的輸入端和連接到一個(gè)導(dǎo)電線的輸出端,所述多路復(fù)用器響應(yīng)所述配置位的子集將一個(gè)所述輸入端導(dǎo)電線連接到所述輸出端導(dǎo)電線。
2.如權(quán)利要求1所述的可配置互連系統(tǒng),其特征在于,將所述一對(duì)導(dǎo)電線和多個(gè)多路復(fù)用器組織和排列以形成分層級(jí)的元件,一個(gè)級(jí)的多個(gè)元件形成下一個(gè)較高分層級(jí)的一個(gè)元件,包含所述元件對(duì)的最低分層級(jí)元件的元件內(nèi)分層級(jí)中的任一對(duì)元件在其間具有可配置的互連。
3.如權(quán)利要求2所述的可配置互連系統(tǒng),其特征在于,形成下一較高分層級(jí)中的元件的一個(gè)分層級(jí)中各自的多個(gè)元件是預(yù)選的。
4.如權(quán)利要求2所述的可配置互連系統(tǒng),其特征在于,每個(gè)分層級(jí)中的每個(gè)元件具有輸入和輸出多路復(fù)用器,每個(gè)輸入復(fù)用器具有多個(gè)連接到所述元件之外的導(dǎo)電線的輸入端和連接到所述元件內(nèi)的導(dǎo)電線的輸出端,且每個(gè)輸出多路復(fù)用器具有多個(gè)連接到所述元件內(nèi)的導(dǎo)電線的輸入端和連接到所述元件之外的導(dǎo)電線的輸出端。
5.如權(quán)利要求4所述的可配置互連系統(tǒng),其特征在于,每個(gè)分層級(jí)中的元件的各自的多個(gè)輸入和輸出多路復(fù)用器是預(yù)先選擇的。
6.如權(quán)利要求5所述的可配置互連系統(tǒng),其特征在于,預(yù)定(有限)的一組多路復(fù)用器構(gòu)建塊?
7.如權(quán)利要求6所述的可配置互連系統(tǒng),其特征在于,一個(gè)分層級(jí)的每個(gè)元件的所述輸入多路復(fù)用器的輸入端被連接到由所述第一個(gè)分層級(jí)的所述元件形成的下一個(gè)較高分層級(jí)的元件的輸入多路復(fù)用器的輸出端,且所述一個(gè)分層級(jí)的每個(gè)單元的所述輸出多路復(fù)用器的所述輸出端被連接到由所述一個(gè)分層級(jí)的所述單元形成的所述下一個(gè)較高分層級(jí)的所述元件的所述輸出多路復(fù)用器的輸入端。
8.如權(quán)利要求7所述的可配置互連系統(tǒng),其特征在于,所述下一個(gè)較高分層級(jí)的元件的每個(gè)輸入多路復(fù)用器的輸出端被連接到形成所述下一個(gè)較高分層級(jí)的所述元件的每個(gè)元件的每個(gè)輸入多路復(fù)用器的輸入端。
9.如權(quán)利要求7所述的可配置互連系統(tǒng),其特征在于,所述下一個(gè)較高分層級(jí)的元件的每個(gè)輸出多路復(fù)用器的輸入端被連接到形成所述下一個(gè)較高分層級(jí)的所述元件的每個(gè)元件的每個(gè)輸出多路復(fù)用器的輸出端。
10.如權(quán)利要求7所述的可配置互連系統(tǒng),其特征在于,一個(gè)分層級(jí)的每個(gè)元件的所述輸入多路復(fù)用器的所述輸入端到由所述第一分層級(jí)的所述元件形成的下一個(gè)較高分層級(jí)的元件的輸入多路復(fù)用器的輸出端的連接,和所述一個(gè)分層級(jí)的每個(gè)元件的所述輸出多路復(fù)用器的所述輸出端到由所述一個(gè)分層級(jí)的所述元件形成的所述下一個(gè)更高分層級(jí)的所述元件的所述輸出多路復(fù)用器的輸入端的連接,是由算法確定的。
11.如權(quán)利要求10所述的可配置互連系統(tǒng),其特征在于,所述下一個(gè)較高分層級(jí)的元件的每個(gè)輸入多路復(fù)用器的輸出端被連接到形成所述下一個(gè)較高分層級(jí)的所述元件的每個(gè)元件的輸入多路復(fù)用器的子集的輸入端,形成所述下一個(gè)較高分層級(jí)的所述元件的所有元件的輸入多路復(fù)用器的所述子集由用于所有元件的模數(shù)確定。
12.如權(quán)利要求10所述的可配置互連系統(tǒng),其特征在于,所述下一個(gè)較高分層級(jí)的元件的每個(gè)輸出多路復(fù)用器的輸入端連接到形成所述下一個(gè)較高分層級(jí)的所述元件的每個(gè)元件的每個(gè)輸出多路復(fù)用器的輸出端,且所述一個(gè)分層級(jí)的每個(gè)元件的所述輸出多路復(fù)用器的所述輸出端到由所述一個(gè)分層級(jí)的所述元件形成的所述下一個(gè)較高分層級(jí)的所述元件的所述輸出多路復(fù)用器的輸入端的連接,
13.如權(quán)利要求1所述的可配置互連系統(tǒng),其特征在于,所述集成電路包括FPGA。
14.如權(quán)利要求1所述的可配置互連系統(tǒng),其特征在于,所述集成電路包括SOC。
全文摘要
本發(fā)明包括分層基于多路復(fù)用器的互連架構(gòu)(圖2)并適用于現(xiàn)場可編程序的門陣列、多處理器和需要可配置互連網(wǎng)絡(luò)的其它應(yīng)用。代替?zhèn)鹘y(tǒng)的通路晶體管(15)或門,而使用多路復(fù)用器(23)且互連架構(gòu)根據(jù)分層互連元件(25)。獲得有界的和可預(yù)知的路由延遲、緊湊的配置存儲(chǔ)器需求、噪聲環(huán)境中非破壞性的操作、一致的構(gòu)建塊和用于自動(dòng)生成的連接、對(duì)幾千各互連元素的可擴(kuò)展性以及即使高資源利用下的高路由能力。
文檔編號(hào)H03K19/173GK1537376SQ02814980
公開日2004年10月13日 申請(qǐng)日期2002年7月24日 優(yōu)先權(quán)日2001年7月24日
發(fā)明者D·翁, J·D·托比, D 翁, 托比 申請(qǐng)人:捷豹邏輯股份有限公司