專(zhuān)利名稱(chēng)::具有鏡像互連結(jié)構(gòu)的可編程集成電路的制作方法
技術(shù)領(lǐng)域:
:本發(fā)明基本上是關(guān)于集成電路,特別是關(guān)于可編程集成電路。
背景技術(shù):
:可編程邏輯組件(programmablelogicdevice;PLD)是一種眾所周知的集成電路,其可以被編定程序以執(zhí)行特定的邏輯功能。其中一類(lèi)PLD,現(xiàn)場(chǎng)可編程邏輯門(mén)陣列(fieldprogrammablegatearray;FPGA),基本上包含一可編程方塊的數(shù)組。此等可編程方塊可以包含,舉例而言,輸入/輸出區(qū)塊(input/outputblock;Ι0Β)、可組構(gòu)邏輯區(qū)塊(configurablelogicblock;CLB)、專(zhuān)用隨機(jī)存取存儲(chǔ)器區(qū)塊(dedicatedrandomaccessmemoryblock;BRAM)、乘法器(multiplier)、數(shù)字信號(hào)處理區(qū)塊(digitalsignalprocessingblock;DSP)、處理器(processor)、時(shí)脈管理器(clockmanager)、延遲鎖定回路(delaylockloop;DLL)、等等?!っ恳豢删幊谭綁K基本上包含可編程互連結(jié)構(gòu)(programmableinterconnect)和可編程邏輯??删幊袒ミB結(jié)構(gòu)一般而言包含透過(guò)可編程互連點(diǎn)(programmableinterconnectpoint;PIP)彼此互連的數(shù)量龐大的不同長(zhǎng)度的互聯(lián)機(jī)??删幊踢壿嬂每删幊虡?gòu)件實(shí)施用戶設(shè)計(jì)的邏輯,可編程構(gòu)件可以包含,舉例而言,函數(shù)產(chǎn)生器(functiongenerator)、緩存器(register)、算術(shù)邏輯、等等。其通常藉由將組態(tài)數(shù)據(jù)的數(shù)據(jù)串加載界定可編程構(gòu)件如何組構(gòu)的內(nèi)部組態(tài)存儲(chǔ)器單元而對(duì)可編程互連結(jié)構(gòu)和可編程邏輯進(jìn)行程序的編定。所述的組態(tài)數(shù)據(jù)可以是讀取自存儲(chǔ)器(例如,自一外部PR0M)或者透過(guò)一外部裝置被寫(xiě)入FPGA。個(gè)別存儲(chǔ)器單元的集體狀態(tài)從而決定該FPGA的功能。其基本上需要改良可編程集成電路以增加可以實(shí)施于可編程集成電路中的用戶設(shè)計(jì)種類(lèi)。本發(fā)明可以針對(duì)前述之一或多個(gè)問(wèn)題加以解決。
發(fā)明內(nèi)容一可編程集成電路包含多個(gè)水平排列于該可編程集成電路中的多個(gè)配置。每一配置包含一第一邏輯行、一第一互連行、一第二互連行、和一第二邏輯行,依照左列順序水平排列于該配置之內(nèi)。每一上述的第一及第二互連行包含多個(gè)可編程互連區(qū)塊垂直地排列于該互連行之中。上述的第一及第二邏輯行各自均包含多個(gè)可編程邏輯區(qū)塊垂直地排列于上述的邏輯行之中。所述的可編程互連區(qū)塊各自均提供多個(gè)第一輸入及輸出端口于該可編程互連區(qū)塊的一側(cè)。所述的可編程邏輯區(qū)塊各自均提供多個(gè)第二輸入及輸出端口于該可編程邏輯區(qū)塊的一側(cè)。每一配置的第一互連行中的每一可編程互連區(qū)塊的該第一端口及該一側(cè)與該配置的第二互連行中的每一可編程互連區(qū)塊的該第一端口及該一側(cè)彼此呈實(shí)體上的鏡像關(guān)系。每一配置的第一互連行中的可編程互連區(qū)塊的該第一端口耦接至該配置的第一邏輯行中的可編程邏輯區(qū)塊的該第二端口。每一配置的第二互連行中的可編程互連區(qū)塊的該第一端口耦接至該配置的第二邏輯行中的可編程邏輯區(qū)塊的該第二端口。在某些實(shí)施例中,該配置的該互連行中的每一可編程互連區(qū)塊均耦接至至少四個(gè)可編程互連區(qū)塊,以通過(guò)該可編程互連區(qū)塊其中之一的該第一輸出端口及通過(guò)該至少四個(gè)可編程互連區(qū)塊的該第一輸入端口選擇性地將該配置的該邏輯行中的可編程邏輯區(qū)塊的該第二輸入端口耦接至該可編程邏輯區(qū)塊的該第二輸出端口。在某些實(shí)施例中,每一配置包含該第一邏輯行、該第一互連行、該第二互連行、和該第二邏輯行,依照此順序由左至右水平排列于該配置之內(nèi)。該可編程邏輯區(qū)塊的該一側(cè)是每一第一邏輯行中的可編程邏輯區(qū)塊的一右側(cè)及每一第二邏輯行中的可編程邏輯區(qū)塊的一左側(cè)。該可編程互連區(qū)塊的該一側(cè)是每一第一互連行中的可編程互連區(qū)塊的一左側(cè)及每一第二互連行中的可編程互連區(qū)塊的一右側(cè)。在某些實(shí)施例中,每一配置的該第一邏輯行中的可編程邏輯區(qū)塊的該右側(cè)毗連該配置的該第一互連行中的可編程互連區(qū)塊的該左側(cè);以及每一配置的該第二互連行中的可編程互連區(qū)塊的該右側(cè)毗連該配置的該第二邏輯行中的可編程邏輯區(qū)塊的該左側(cè)。在某些實(shí)施例中,每一配置的該第一互連行中的每一可編程互連區(qū)塊與每一配置的該第二互連行中的每一可編程互連區(qū)塊均呈功能上的鏡像關(guān)系。每一配置的每一邏輯行中的可編程邏輯區(qū)塊均具有多個(gè)型態(tài)中的一同一型態(tài)。對(duì)于每一該型態(tài),每一配置的該第一邏輯行中具有該型態(tài)的每一可編程邏輯區(qū)塊與每一配置的該第二邏輯行中具有該型態(tài)的每一可編程邏輯區(qū)塊均呈實(shí)體上的鏡像關(guān)系。在某些實(shí)施例中,每一該配置還包含一共用行水平配置于該第一互連行和該第二互連行之間并與其毗連。該第一及第二互連行中的每一可編程互連區(qū)塊均選擇性地將該共用行的多個(gè)時(shí)脈及控制線各自耦接至該可編程互連區(qū)塊的該第一輸出端口所耦接的該第二輸入端口中的至少其中之一。在某些實(shí)施例中,對(duì)于在該可編程集成電路中相鄰至一第二配置的該第一邏輯行的一第一配置的該第二邏輯行在該第二及第一邏輯行中的每一可編程邏輯區(qū)塊在與該可編程邏輯區(qū)塊的該一側(cè)對(duì)立的另一側(cè)均具有多個(gè)第三端口;以及該第二及第一邏輯行中的可編程邏輯區(qū)塊均通過(guò)該第三端口耦接。在某些實(shí)施例中,每一配置的該第一邏輯行中的可編程邏輯區(qū)塊的該一側(cè)毗連該配置的該第一互連行中的可編程互連區(qū)塊的該一側(cè);以及每一配置的該第二邏輯行中的可編程邏輯區(qū)塊的該一側(cè)毗連該配置的該第二互連行中的可編程互連區(qū)塊的該一側(cè)。在某些實(shí)施例中,每一配置的每一邏輯行中的可編程邏輯區(qū)塊均具有多個(gè)型態(tài)中的同一型態(tài)。在某些實(shí)施例中,每一配置的該第一邏輯行中的第一多個(gè)群組可編程邏輯區(qū)塊對(duì)應(yīng)至該配置的該第一互連行中的第二多個(gè)群組可編程互連區(qū)塊。該第二邏輯行中的第三多個(gè)組群可編程邏輯區(qū)塊對(duì)應(yīng)至該配置的該第二互連行中的第四多個(gè)群組可編程互連區(qū)塊。對(duì)于每一該第一群組中的一第一數(shù)目的可編程邏輯區(qū)塊以及每一該第二群組中的一第二數(shù)目的可編程互連區(qū)塊,該第一和第二數(shù)目分別是二和一、一和一、一和二、一和三、一和四、或者一和五。對(duì)于每一該第三群組中的一第三數(shù)目的可編程邏輯區(qū)塊以及每一該第四群組中的一第四數(shù)目的可編程互連區(qū)塊,該第三和第四數(shù)目分別是二和一、一和一、一和二、一和三、一和四、或者一和五。在某些實(shí)施例中,對(duì)于每一該型態(tài),具有該型態(tài)且位于該配置的該第一邏輯行中的每一可編程邏輯區(qū)塊與具有該型態(tài)且位于該配置的該第二邏輯行中的每一可編程邏輯區(qū)塊均呈實(shí)體上的鏡像關(guān)系。在某些實(shí)施例中,該配置其中之一的該第一邏輯行中的每一可編程邏輯區(qū)塊與該配置其中之一的該第二邏輯行中的每一可編程邏輯區(qū)塊均呈實(shí)體上的鏡像關(guān)系。在某些實(shí)施例中,每一配置的該第一邏輯行中的每一可編程邏輯區(qū)塊的每一該第二輸入端口均選擇性地耦接至該配置的該第二邏輯行中的至少三個(gè)可編程邏輯區(qū)塊的該第二輸出端口中的至少其中之一。該第二輸入端口選擇性地耦接至完全位于該配置的該互連行的一區(qū)域內(nèi)且未進(jìn)入該配置的該邏輯行之一區(qū)域的至少三個(gè)可編程邏輯區(qū)塊的至少一第二輸出端口。其應(yīng)理解,許多其他實(shí)施例將于以下實(shí)施方式段落中提出,并于申請(qǐng)專(zhuān)利范圍中界定。配合圖式的詳細(xì)說(shuō)明使得本發(fā)明的各個(gè)特色及優(yōu)點(diǎn)趨于明顯,其中圖I是一示范性可編程集成電路的方塊圖;圖2是一示范性可編程邏輯組件的布局示意圖;以及圖3是例示可編程互連及邏輯區(qū)塊的一示范性配置的方塊圖。具體實(shí)施例方式圖I是依據(jù)本發(fā)明許多實(shí)施例之一可編程集成電路之功能方塊圖。該可編程集成電路包含配置102至104,其包含可編程邏輯及互連資源。配置102至104水平排列于該可編程邏輯組件之中。其應(yīng)理解,對(duì)該可編程集成電路進(jìn)行一簡(jiǎn)單的旋轉(zhuǎn)將使得配置102至104變成垂直排列。在一實(shí)施例之中,圖I的可編程集成電路為可編程邏輯組件。然而,其應(yīng)理解,此種例示也可適用于其它形式的可編程集成電路。在一實(shí)施例之中,配置102包含可編程邏輯及互連區(qū)塊的四個(gè)行106、108、110、及112。該四個(gè)行106、108、110、及112依上列順序由左至右水平排列于配置102之內(nèi)。邏輯行106和112包含可編程邏輯區(qū)塊(ProgrammableLogicBlock,PLB)114、116、和118至120、以及122、124、和126至128。可編程邏輯區(qū)塊114、116、和118至120垂直排列于邏輯行106之中,而可編程邏輯區(qū)塊122、124、和126至128垂直排列于邏輯行112之中?;ミB行108和110包含可編程互連區(qū)塊(ProgrammableInterconnectBlock,PIB)130、132、和134至136、以及138、140、和142至144。可編程互連區(qū)塊130、132、和134至136垂直排列于互連行108之中,而可編程互連區(qū)塊138、140、和142至144垂直排列于互連行110之中。在另一實(shí)施例之中,配置102包含可編程邏輯及互連區(qū)塊的三個(gè)行106、146、及112。該三個(gè)行106、146、及112依上列順序由左至右水平排列于配置102之內(nèi)?;ミB行146包含可編程互連區(qū)塊148、150、和152至154之一垂直配置。可編程互連區(qū)塊148包含可編程互連區(qū)塊130及138二個(gè)子區(qū)塊,其以左列順序由左而右水平排列于可編程互連區(qū)塊148之內(nèi)。以類(lèi)似形式,可編程互連區(qū)塊150包含區(qū)塊132及140,可編程互連區(qū)塊152包含區(qū)塊134及142,而互連區(qū)塊154包含區(qū)塊136及144。在一實(shí)施例中,邏輯行106中的可編程邏輯區(qū)塊114、116、和118至120與邏輯行112中的可編程邏輯區(qū)塊122、124、和126至128是同一型態(tài),且邏輯行112中的每一可編程邏輯區(qū)塊122、124、和126至128是邏輯行106中的每一可編程邏輯區(qū)塊114、116、和118至120之一實(shí)體上的鏡像。在此實(shí)施例之中,可編程互連區(qū)塊130、132、和134至136各自均與可編程互連區(qū)塊138、140、和142至144呈功能上的鏡像關(guān)系,但通常并非完全呈實(shí)體上的鏡像關(guān)系。在另一實(shí)施例之中,邏輯行106中的可編程邏輯區(qū)塊114、116、和118至120是一種型態(tài),而邏輯行112中的可編程邏輯區(qū)塊122、124、和126至128則是另一種型態(tài)。在此實(shí)施例之中,可編程邏輯區(qū)塊114右側(cè)之端口156及158與可編程邏輯區(qū)塊122左側(cè)之端口160及162呈實(shí)體上的鏡像關(guān)系,但可編程邏輯區(qū)塊114與122彼此并非實(shí)體上的鏡像關(guān)系,因?yàn)閰^(qū)塊114和122是不同型態(tài)。同樣地,邏輯行106中的每一可編程邏輯區(qū)塊114、116、和118至120的右側(cè)與邏輯行112中的每一可編程邏輯區(qū)塊122、124、和126至128的左側(cè)均呈實(shí)體上的鏡像關(guān)系。其應(yīng)理解,配置102至104中的某些部分可以包含完全同一型態(tài)的可編程邏輯區(qū)塊,而配置102至104中的其他部分可以包含多重型態(tài)的可編程邏輯區(qū)塊。在一實(shí)例之中,配置102中的可編程邏輯區(qū)塊114、116、和118至120以及122、124、和126至128均是同一種型態(tài),但在配置104之中,可編程邏輯區(qū)塊164、165、和166至167之型態(tài)不同于可編程邏輯區(qū)塊168、169、和170至171。在某些實(shí)施例之中,每一可編程邏輯區(qū)塊均連接至一對(duì)應(yīng)的可編程互連區(qū)塊。舉例而言,可編程邏輯區(qū)塊114之輸入端口156連接至可編程互連區(qū)塊130之輸出端口172,而可編程邏輯區(qū)塊114之輸出端口158連接至可編程互連區(qū)塊130之輸入端口174。每一可編程邏輯區(qū)塊的輸入端口均透過(guò)特定的可編程互連區(qū)塊耦接至許多可編程邏輯區(qū)塊的輸出端口。舉例而言,可編程邏輯區(qū)塊124之輸入端口176透過(guò)可編程互連區(qū)塊140耦接至可編程邏輯區(qū)塊124之輸出端口178,輸入端口176透過(guò)可編程互連區(qū)塊140及138耦接至可編程邏輯區(qū)塊122之輸出端口162,輸入端口176透過(guò)可編程互連區(qū)塊140及142耦接至可編程邏輯區(qū)塊126之輸出端口180,輸入端口176透過(guò)可編程互連區(qū)塊140及130耦接至可編程邏輯區(qū)塊114之輸出端口158,輸入端口176透過(guò)可編程互連區(qū)塊140及132耦接至可編程邏輯區(qū)塊116之輸出端口182,輸入端口176透過(guò)可編程互連區(qū)塊140及134耦接至可編程邏輯區(qū)塊118之輸出端口184,輸入端口176透過(guò)可編程互連區(qū)塊140及188耦接至可編程邏輯區(qū)塊164之輸出端口186,輸入端口176透過(guò)可編程互連區(qū)塊140及192耦接至可編程邏輯區(qū)塊165之輸出端口190,輸入端口176透過(guò)可編程互連區(qū)塊140及196耦接至可編程邏輯區(qū)塊166之輸出端口194,而輸入端口176透過(guò)可編程互連區(qū)塊140及199耦接至可編程邏輯區(qū)塊169之輸出端口198。綜而言之,特定的可編程互連區(qū)塊將可編程邏輯區(qū)塊124之輸入端口176耦接至可編程邏輯區(qū)塊124、122、126、114、116、118、164、165、166、和169之輸出端口。可編程互連區(qū)塊以類(lèi)似方式將其他可編程邏輯區(qū)塊之輸入端口耦接至許多其他可編程邏輯區(qū)塊之輸出端口。因此,每一可編程互連區(qū)塊均連接至許多可編程互連區(qū)塊以使得每一可編程邏輯區(qū)塊之輸入端口均可以連接至許多其他可編程邏輯區(qū)塊之輸出端口。舉例而言,可編程互連區(qū)塊140連接至可編程互連區(qū)塊138、142、130、132、134、188、192、196、以及199以使得可編程邏輯區(qū)塊124之輸入端口176可以連接至可編程邏輯區(qū)塊122、126、114、116、118、164、165、166、以及169之輸出端口。在所例示的可編程邏輯區(qū)塊114、116、118、120、122、124、126、128、164、165、166、167、168、169、170、以及171的數(shù)組之中,假設(shè)配置102及104在此可編程邏輯組件中彼此相鄰,則此例中可編程邏輯區(qū)塊124在垂直方向、水平方向、和對(duì)角線方向上的鄰接可編程邏輯區(qū)塊分別是可編程邏輯區(qū)塊122、126、116、165、114、118、164、以及166。在例示實(shí)施例之中,所述的可編程互連區(qū)塊將實(shí)例中的可編程邏輯區(qū)塊124耦接至所有所述的鄰接的可編程邏輯區(qū)塊122、126、116、165、114、118、164、以及166。將每一可編程邏輯區(qū)塊耦接至垂直方向、水平方向、和對(duì)角線方向上的鄰接可編程邏輯區(qū)塊的連接稱(chēng)為單連接(singleconnection)。所述的可編程互連區(qū)塊同時(shí)亦將實(shí)例中的可編程邏輯區(qū)塊124耦接至可編程邏輯區(qū)塊169。諸如實(shí)例中可編程邏輯區(qū)塊124和遠(yuǎn)程可編程邏輯區(qū)塊169間的連接稱(chēng)為長(zhǎng)連接(longconnection)。其應(yīng)理解,其可以有各種不同長(zhǎng)度的長(zhǎng)連接??删幊踢壿嫿M件之效能(舉例而言)愈來(lái)愈決定于該可編程邏輯組件的接線延遲。由于單連接一般而言短于長(zhǎng)連接,故單連接較之長(zhǎng)連接具有較低的接線延遲。為了增加實(shí)施于可編程邏輯組件中的邏輯設(shè)計(jì)之效能,所實(shí)施的邏輯設(shè)計(jì)針對(duì)該邏輯設(shè)計(jì)中的關(guān)鍵時(shí)序路徑應(yīng)以單連接為王。本發(fā)明的許多實(shí)施例提出一種可編程邏輯組件,其縮短某些單連接長(zhǎng)度且降低其接線延遲,從而增進(jìn)實(shí)施于該可編程邏輯組件中一邏輯設(shè)計(jì)之效能。當(dāng)所述的長(zhǎng)度縮短的單連接優(yōu)先使用以實(shí)施一邏輯設(shè)計(jì)中的關(guān)鍵時(shí)序路徑之時(shí),所實(shí)施之該邏輯設(shè)計(jì)之效能將顯著增進(jìn)。將可編程互連行146配置于可編程邏輯行106與112之間使得介于此實(shí)例中的可編程邏輯區(qū)塊124與可編程邏輯區(qū)塊114、116、和118之間的單連接長(zhǎng)度為之縮短。這是由于介于此實(shí)例中可編程邏輯區(qū)塊124的輸入端口176以及相對(duì)可編程邏輯區(qū)塊114、116、和118的輸出端口158、182、和184之間的連接維持于可編程互連行146的范圍內(nèi)部,完全未進(jìn)入可編程邏輯行106和112的范圍。實(shí)例中可編程邏輯區(qū)塊124的輸出端口178的對(duì)應(yīng)單連接亦同樣地被縮短。實(shí)例中的可編程邏輯區(qū)塊124與可編程邏輯區(qū)塊114、116、和118間的單連接直接耦接此等可編程邏輯區(qū)塊,并未跨越至可編程邏輯行106和112而招致任何接線延遲。圖2是依據(jù)本發(fā)明許多實(shí)施例之一可編程邏輯組件之布局示意圖。此可編程邏輯組件包含由多行可編程邏輯及互連區(qū)塊構(gòu)成的配置201、202、203、及204。諸如一現(xiàn)場(chǎng)可編程邏輯門(mén)陣列(FPGA)之高階可編程邏輯組件可以在其數(shù)組中包含許多不同型態(tài)的可編程方塊。舉例而言,圖2例示一FPGA架構(gòu)200,具有數(shù)量龐大的不同可編程方塊,其中包含可組構(gòu)邏輯區(qū)塊(CLB212)、隨機(jī)存取存儲(chǔ)器(BRAM213)、輸入/輸出邏輯區(qū)塊(I0L215)、組態(tài)及時(shí)脈產(chǎn)生區(qū)塊205、數(shù)字信號(hào)處理區(qū)塊(DSP214)、專(zhuān)用輸入/輸出區(qū)塊(1/0207)(例如,組態(tài)端口及時(shí)脈端口)、和諸如數(shù)字時(shí)脈管理器、模擬至數(shù)字轉(zhuǎn)換器、系統(tǒng)監(jiān)測(cè)邏輯之其他可編程邏輯208,等等。某些FPGA亦包含專(zhuān)用處理器區(qū)塊(圖中未顯示)。雖然許多可編程方塊被置放于配置201、202、203、和204內(nèi)部,但晶粒之中央并未落入任一配置之中,而是包含可編程邏輯及互連區(qū)塊216,其在例示實(shí)施例之中包含可組構(gòu)邏輯區(qū)塊、可編程互連區(qū)塊、以及輸入/輸出邏輯區(qū)塊。在一些FPGA之中,每一可編程互連區(qū)塊(PIB211)均與鄰近的可編程互連區(qū)塊以及可能一些遠(yuǎn)程可編程互連區(qū)塊之間具有標(biāo)準(zhǔn)化之連接。因此,所述的可編程互連區(qū)塊共同實(shí)施出該例示FPGA的可編程互連結(jié)構(gòu)。一可編程互連區(qū)塊(PIB211)同時(shí)亦包含與諸如CLB212、一BRAM213、一IOL215、或一DSP214之毗鄰可編程邏輯區(qū)塊之連接。一可組構(gòu)邏輯構(gòu)件可以包含一可編程互連區(qū)塊(PIB211)和毗鄰之可以被編定程序以實(shí)施用戶邏輯的可組構(gòu)邏輯區(qū)塊(CLB212)。一存儲(chǔ)器構(gòu)件可以包含一隨機(jī)存取存儲(chǔ)器(BRAM213)加上一或多個(gè)可編程互連區(qū)塊。基本上,用于一可編程邏輯區(qū)塊的互連區(qū)塊的數(shù)目是取決于該可編程邏輯區(qū)塊之高度。在所描繪的實(shí)施例之中,CLB212與一可編程互連區(qū)塊(PIB211)具有相同之高度,且BRAM213與五個(gè)可編程互連區(qū)塊(PIB211)具有相同之高度,但其可以實(shí)施為其他的數(shù)目(例如,二、三、或四個(gè))。一數(shù)字信號(hào)處理構(gòu)件可以包含一DSP區(qū)塊(DPS214)加上一適當(dāng)數(shù)目之毗連可編程互連區(qū)塊(PIB211)。一輸入/輸出構(gòu)件可以包含,舉例而言,二個(gè)輸入/輸出邏輯區(qū)塊(I0L215)的實(shí)施體毗連一個(gè)可編程互連區(qū)塊(PIB211)的實(shí)施體。配置201中的輸入/輸出邏輯區(qū)塊(I0L215)與配置204中的輸入/輸出邏輯區(qū)塊彼此成實(shí)體上的鏡像關(guān)系。如相關(guān)領(lǐng)域的熟習(xí)者所明白,連接至每一輸入/輸出邏輯區(qū)塊(I0L215)的實(shí)際I/O接墊,舉例而言,通常并未被局限于該輸入/輸出邏輯區(qū)塊(I0L215)的范圍。在所描繪的實(shí)施例之中,組態(tài)及時(shí)脈信號(hào)透過(guò)控制邏輯區(qū)域(圖2中顯示為交叉線區(qū)域)被產(chǎn)生并分布于晶粒各處??拷ЯV行牡目刂飘a(chǎn)生區(qū)塊205產(chǎn)生組態(tài)、時(shí)脈、以及其他控制信號(hào)。延伸自控制產(chǎn)生區(qū)塊205的水平區(qū)域209將此等控制信號(hào)在晶粒的寬度方向分布。直行區(qū)域210將時(shí)脈及組態(tài)信號(hào)在垂直方向分布至可編程邏輯及互連區(qū)塊各行的配置201、202、203、以及204。每一配置201、202、203、及204均包含一共享直行區(qū)域210,其將左側(cè)的一行可編程互連區(qū)塊(PIB211)連接至右側(cè)的另一行可編程互連區(qū)塊(PIB211)。此共享直行區(qū)域?qū)⒔M態(tài)、時(shí)脈、和其他控制信號(hào)分散至所述的可編程互連區(qū)塊以控制所述的可編程互連區(qū)塊,并用以進(jìn)一步分散至配置中的可編程邏輯區(qū)塊。注意圖2僅是預(yù)定例示一示范性FPGA架構(gòu)。例如,一行中的可編程邏輯或互連區(qū)塊的數(shù)目、各行的相對(duì)寬度、配置的數(shù)目、包含于各行中的可編程邏輯或互連區(qū)塊的種類(lèi)、以及可編程邏輯或互連區(qū)塊的相對(duì)尺寸均是純粹示范性的。圖3是例示依據(jù)本發(fā)明許多實(shí)施例的可編程互連及邏輯區(qū)塊之一配置之功能方塊圖。該配置包含一行可編程邏輯區(qū)塊301、302、303、304、305、和306至307;—行可編程互連區(qū)塊311、312、313、314、315、和316至317;另一行可編程互連區(qū)塊321、322、323、324、325、和326至327;以及另一行可編程邏輯區(qū)塊331、332、333、334、335、和336至337,各行以左列的順序由左至右包含于該配置之內(nèi)??删幊袒ミB區(qū)塊323及可編程邏輯區(qū)塊333被展開(kāi)以顯示其彼此之間和與可編程互連區(qū)塊312、313、314、321、322、324、和325之間的互連狀況。其應(yīng)理解,未展開(kāi)的可編程互連及邏輯區(qū)塊301、302、303、304、305、306至307、311、312、313、314、315、316至317、321、322、324、325、326至327、331、332、334、335、和336至337均具有類(lèi)似的連接。可編程邏輯區(qū)塊333具有一輸入端口340和一輸出端口342。在某些實(shí)施例之中,可編程邏輯區(qū)塊333可以同時(shí)亦具有一選擇性輸入端口344和一選擇性輸出端口346??删幊踢壿媴^(qū)塊333從輸入端口340(以及選擇性輸入端口344)之?dāng)?shù)值產(chǎn)生輸出端口342(以及選擇性輸出端口346)之?dāng)?shù)值。其應(yīng)理解,可編程邏輯區(qū)塊333可以從其他額外數(shù)值產(chǎn)生輸出端口342(以及選擇性輸出端口346)之?dāng)?shù)值,諸如可編程邏輯區(qū)塊333內(nèi)的儲(chǔ)存狀態(tài)以及來(lái)自可編程邏輯區(qū)塊332或334中一跨可編程邏輯區(qū)塊331、332、333、334、335、336、及337實(shí)施之一加法器(adder)之進(jìn)位(carry)數(shù)值??删幊袒ミB區(qū)塊323中的泛用互連多工器348選擇性地將來(lái)自可編程邏輯區(qū)塊333之輸出端口342的一或多個(gè)數(shù)值繞接至可編程互連區(qū)塊312、313、314、321、322、324、和325,而可編程互連區(qū)塊312、313、314、321、322、324、和325將此等來(lái)自輸出端口342的數(shù)值選擇性地分別轉(zhuǎn)送至可編程邏輯區(qū)塊302、303、304、331、332、334、和335之一輸入端口。同樣地,可編程互連區(qū)塊312、313、314、321、322、324、和325將分別來(lái)自可編程邏輯區(qū)塊302、303、304、331、332、334、和335之輸出端口之?dāng)?shù)值選擇性地轉(zhuǎn)送至可編程互連區(qū)塊323,其將所述的數(shù)值經(jīng)由泛用互連多工器348及輸入多工器350選擇性地繞接至輸入端口340。因此,可編程互連區(qū)塊311、312、313、314、315、316至317、321、322、323、324、325、及32·6至327將可編程邏輯區(qū)塊301、302、303、304、305、306至307以及331、332、333、334、335、336至337的輸出端口選擇性地耦接至所述的可編程邏輯區(qū)塊的特定輸入端口。輸入多工器350選擇繞送至可編程邏輯區(qū)塊333之輸入端口340的信號(hào)數(shù)值。輸入多工器350將輸入端口340選擇性地耦接至來(lái)自輸出端口342在信號(hào)線352上的回授,或者是耦接至共用行356之信號(hào)線354,或者是透過(guò)泛用互連多工器348和可編程互連區(qū)塊312、313、314、321、322、324、和325耦接至可編程邏輯區(qū)塊302、303、304、331、332、334、和335之一輸出端口。來(lái)自共用行356的信號(hào)線354包含時(shí)脈信號(hào)、重置信號(hào)、以及其他控制信號(hào)。在一實(shí)施例之中,共用行356對(duì)應(yīng)至圖2所示的其中一配置的共用行210的其中之一O在一實(shí)施例之中,組態(tài)存儲(chǔ)器單元之?dāng)?shù)值透過(guò)多任務(wù)器348及350控制信號(hào)的繞接。因此,組態(tài)存儲(chǔ)器之內(nèi)容決定介于共用行356與可編程邏輯區(qū)塊301、302、303、304、305,306至307、331、332、333、334、335、336至337的輸入及輸出端口間的互連。在一實(shí)施例之中,可編程邏輯區(qū)塊333包含組構(gòu)可編程邏輯區(qū)塊333之運(yùn)作的額外組態(tài)存儲(chǔ)器單元。在一實(shí)例之中,可編程邏輯區(qū)塊333包含一可組構(gòu)對(duì)照表(look-uptable)及一具有旁通架構(gòu)之緩存器。該可組構(gòu)對(duì)照表可以實(shí)施來(lái)自輸入端口340(以及選擇性端口344)之?dāng)?shù)值的任何邏輯函數(shù)。該緩存器可以被組構(gòu)成直接以來(lái)自可組構(gòu)對(duì)照表或來(lái)自?xún)?chǔ)存可組構(gòu)對(duì)照表先前結(jié)果的緩存器的結(jié)果驅(qū)動(dòng)輸出端口342(以及選擇性端口346)。因此,可編程邏輯區(qū)塊301、302、303、304、305、306至307、以及331、332、333、334、335,336至337可以被組構(gòu)成實(shí)施一用戶設(shè)計(jì)之邏輯及狀態(tài)機(jī),而可編程互連區(qū)塊311、312、313、314、315、316至317、321、322、323、324、325、及326至327可以被組構(gòu)成適當(dāng)?shù)剡B接該用戶設(shè)計(jì)之邏輯及狀態(tài)機(jī)。在某些實(shí)施例之中,可編程邏輯區(qū)塊333毗連一相鄰配置中之另一可編程邏輯區(qū)塊(未顯示于圖中)??删幊踢壿媴^(qū)塊333在一側(cè)上具有輸入及輸出端口340和342,而在可編程邏輯區(qū)塊333的一對(duì)立側(cè)上具有選擇性的輸入及輸出端口344和346。雖然端口340和342是耦接至可編程互連區(qū)塊323,但選擇性端口344和346是耦接至相鄰配置中之毗連可編程邏輯區(qū)塊??删幊踢壿媴^(qū)塊333與相鄰配置中毗連可編程邏輯區(qū)塊的直接連接允許該二個(gè)可編程邏輯區(qū)塊之間略過(guò)任何可編程互連區(qū)塊的快速通信。雖然可編程邏輯區(qū)塊333與相鄰配置中之毗連可編程邏輯區(qū)塊在一實(shí)施例中是彼此之鏡像,在二者的鏡像之外是介于選擇性輸出端口346與毗連可編程邏輯區(qū)塊之一對(duì)應(yīng)輸入端口以及該毗連可編程邏輯區(qū)塊之一輸出端口與選擇性輸入端口344之間的交叉連接。本發(fā)明被認(rèn)為適用于各種可編程集成電路架構(gòu)。雖然本發(fā)明之例示是利用包含諸如現(xiàn)場(chǎng)可編程邏輯門(mén)陣列的可編程邏輯組件的示范性實(shí)施例,但其并非局限于此。經(jīng)由說(shuō)明書(shū)的審視和所揭示發(fā)明之實(shí)習(xí),本發(fā)明之其他特色和實(shí)施例對(duì)于習(xí)于斯藝之人士將顯而易見(jiàn)。本說(shuō)明書(shū)及例示實(shí)施例均應(yīng)僅視為示范性質(zhì),而本發(fā)明的實(shí)際范疇及精神應(yīng)由申請(qǐng)專(zhuān)利范圍界定之。權(quán)利要求1.一種可編程集成電路1C,包含多個(gè)配置,水平排列于該可編程集成電路之中,每一配置包含一第一邏輯行、一第一互連行、一第二互連行、和一第二邏輯行,以此順序水平排列于該配置內(nèi),其中每一該第一及第二互連行包含多個(gè)可編程互連區(qū)塊垂直地排列于該互連行之中;每一該第一及第二邏輯行包含多個(gè)可編程邏輯區(qū)塊垂直地排列于該邏輯行之中;每一該可編程互連區(qū)塊提供多個(gè)第一輸入及輸出端口于該可編程互連區(qū)塊的一側(cè);每一該可編程邏輯區(qū)塊提供多個(gè)第二輸入及輸出端口于該可編程邏輯區(qū)塊的一側(cè);在每一配置的該第一互連行中的每一該可編程互連區(qū)塊的該第一端口和該一側(cè)與在該配置的該第二互連行中的每一可編程互連區(qū)塊的該第一端口和該一側(cè)彼此呈實(shí)體上的鏡像關(guān)系;在每一配置的該第一互連行中的可編程互連區(qū)塊的該第一端口耦接至在該配置的該第一邏輯行中的可編程邏輯區(qū)塊的該第二端口;以及在每一配置的該第二互連行中的可編程互連區(qū)塊的該第一端口耦接至在該配置的該第二邏輯行中的可編程邏輯區(qū)塊的該第二端口。2.如申請(qǐng)專(zhuān)利范圍第I項(xiàng)所述的可編程集成電路,其中該配置的該互連行中的每一可編程互連區(qū)塊均耦接至至少四個(gè)可編程互連區(qū)塊,以通過(guò)該可編程互連區(qū)塊其中之一的該第一輸出端口及通過(guò)該至少四個(gè)可編程互連區(qū)塊的該第一輸入端口選擇性地將該配置的該邏輯行中的可編程邏輯區(qū)塊的該第二輸入端口耦接至該可編程邏輯區(qū)塊的該第二輸出端口。3.如申請(qǐng)專(zhuān)利范圍第I或2項(xiàng)所述的可編程集成電路,其中每一配置包含該第一邏輯行、該第一互連行、該第二互連行、和該第二邏輯行,依照此順序由左至右水平排列于該配置之內(nèi);該可編程邏輯區(qū)塊的該一側(cè)是每一第一邏輯行中的可編程邏輯區(qū)塊的一右側(cè)及每一第二邏輯行中的可編程邏輯區(qū)塊的一左側(cè);以及該可編程互連區(qū)塊的該一側(cè)是每一第一互連行中的可編程互連區(qū)塊的一左側(cè)及每一第二互連行中的可編程互連區(qū)塊的一右側(cè)。4.如申請(qǐng)專(zhuān)利范圍第3項(xiàng)所述的可編程集成電路,其中每一配置的該第一邏輯行中的可編程邏輯區(qū)塊的該右側(cè)毗連該配置的該第一互連行中的可編程互連區(qū)塊的該左側(cè);以及每一配置的該第二互連行中的可編程互連區(qū)塊的該右側(cè)毗連該配置的該第二邏輯行中的可編程邏輯區(qū)塊的該左側(cè)。5.如申請(qǐng)專(zhuān)利范圍第I至4項(xiàng)中任一項(xiàng)所述的可編程集成電路,其中每一配置的該第一互連行中的每一可編程互連區(qū)塊與每一配置的該第二互連行中的每一可編程互連區(qū)塊均呈功能上的鏡像關(guān)系;每一配置的每一邏輯行中的可編程邏輯區(qū)塊均具有多個(gè)型態(tài)中的一同一型態(tài);以及對(duì)于每一該型態(tài),每一配置的該第一邏輯行中具有該型態(tài)的每一可編程邏輯區(qū)塊與每一配置的該第二邏輯行中具有該型態(tài)的每一可編程邏輯區(qū)塊均呈實(shí)體上的鏡像關(guān)系。6.如申請(qǐng)專(zhuān)利范圍第I至5項(xiàng)中任一項(xiàng)所述的可編程集成電路,其中每一該配置還包含一共用行水平配置于該第一互連行和該第二互連行之間并與其毗連;以及該第一及第二互連行中的每一可編程互連區(qū)塊均選擇性地將該共用行的多個(gè)時(shí)脈及控制線各自耦接至該可編程互連區(qū)塊的該第一輸出端口所耦接的該第二輸入端口中的至少其中之一。7.如申請(qǐng)專(zhuān)利范圍第I至6項(xiàng)中任一項(xiàng)所述的可編程集成電路,其中,對(duì)于在該可編程集成電路中相鄰至一第二配置的該第一邏輯行的一第一配置的該第二邏輯行在該第二及第一邏輯行中的每一可編程邏輯區(qū)塊在與該可編程邏輯區(qū)塊的該一側(cè)對(duì)立的另一側(cè)均具有多個(gè)第三端口;以及該第二及第一邏輯行中的可編程邏輯區(qū)塊均通過(guò)該第三端口耦接。8.如申請(qǐng)專(zhuān)利范圍第I至7項(xiàng)中任一項(xiàng)所述的可編程集成電路,其中每一配置的該第一邏輯行中的可編程邏輯區(qū)塊的該一側(cè)毗連該配置的該第一互連行中的可編程互連區(qū)塊的該一側(cè);以及每一配置的該第二邏輯行中的可編程邏輯區(qū)塊的該一側(cè)毗連該配置的該第二互連行中的可編程互連區(qū)塊的該一側(cè)。9.如申請(qǐng)專(zhuān)利范圍第I至8項(xiàng)中任一項(xiàng)所述的可編程集成電路,其中每一配置的每一邏輯行中的可編程邏輯區(qū)塊均具有多個(gè)型態(tài)中的同一型態(tài)。10.如申請(qǐng)專(zhuān)利范圍第9項(xiàng)所述的可編程集成電路,其中每一配置的該第一邏輯行中的第一多個(gè)群組可編程邏輯區(qū)塊對(duì)應(yīng)至該配置的該第一互連行中的第二多個(gè)群組可編程互連區(qū)塊;該第二邏輯行中的第三多個(gè)組群可編程邏輯區(qū)塊對(duì)應(yīng)至該配置的該第二互連行中的第四多個(gè)群組可編程互連區(qū)塊;對(duì)于每一該第一群組中的一第一數(shù)目的可編程邏輯區(qū)塊以及每一該第二群組中的一第二數(shù)目的可編程互連區(qū)塊,該第一和第二數(shù)目分別是二和一、一和一、一和二、一和三、一和四、或者一和五;以及對(duì)于每一該第三群組中的一第三數(shù)目的可編程邏輯區(qū)塊以及每一該第四群組中的一第四數(shù)目的可編程互連區(qū)塊,該第三和第四數(shù)目分別是二和一、一和一、一和二、一和三、一和四、或者一和五。11.如申請(qǐng)專(zhuān)利范圍第9項(xiàng)所述的可編程集成電路,其中,對(duì)于每一該型態(tài),具有該型態(tài)且位于該配置的該第一邏輯行中的每一可編程邏輯區(qū)塊與具有該型態(tài)且位于該配置的該第二邏輯行中的每一可編程邏輯區(qū)塊均呈實(shí)體上的鏡像關(guān)系。12.如申請(qǐng)專(zhuān)利范圍第I至11項(xiàng)中任一項(xiàng)所述的可編程集成電路,其中該配置其中之一的該第一邏輯行中的每一可編程邏輯區(qū)塊與該配置其中之一的該第二邏輯行中的每一可編程邏輯區(qū)塊均呈實(shí)體上的鏡像關(guān)系。13.如申請(qǐng)專(zhuān)利范圍第I項(xiàng)所述的可編程集成電路,其中每一配置的該第一邏輯行中的每一可編程邏輯區(qū)塊的每一該第二輸入端口均選擇性地耦接至該配置的該第二邏輯行中的至少三個(gè)可編程邏輯區(qū)塊的該第二輸出端口中的至少其中之一;以及該第二輸入端口選擇性地耦接至完全位于該配置的該互連行的一區(qū)域內(nèi)且未進(jìn)入該配置的該邏輯行的一區(qū)域的至少三個(gè)可編程邏輯區(qū)塊的至少一第二輸出端口。全文摘要一種具有鏡像互連結(jié)構(gòu)的可編程集成電路(IC),其中包含水平排列的多個(gè)配置(102、104)。每一配置包含一第一邏輯行(106)、一第一互連行(108)、一第二互連行(110)、和一第二邏輯行(112),以此順序水平地排列于所述配置內(nèi)。每一互連行包含可編程互連區(qū)塊(PIB130-144、188-196、199),且每一該第一及第二邏輯行包含可編程邏輯區(qū)塊(114-128、164-171)。每一可編程互連區(qū)塊提供多個(gè)第一輸入(174)及輸出(172)端口于一側(cè)。每一可編程邏輯區(qū)塊提供第二輸入(156)及輸出(158)端口于一側(cè)。在該第一互連行(108)中的每一可編程互連區(qū)塊的該第一端口和該一側(cè)與在該第二互連行(110)中的每一可編程互連區(qū)塊的該第一端口和該一側(cè)彼此呈實(shí)體上的鏡像關(guān)系。在該第一互連行(108)中的可編程互連區(qū)塊的該第一端口(172、174)耦接至在該第一邏輯行中的可編程邏輯區(qū)塊的該第二端口(156、158、182、184、186、190、194)。在該第二互連行(110)中的可編程互連區(qū)塊的該第一端口耦接至在該第二邏輯行中的可編程邏輯區(qū)塊的該第二端口(160-62、176-180、198)。文檔編號(hào)H03K19/177GK102763334SQ201080063963公開(kāi)日2012年10月31日申請(qǐng)日期2010年10月20日優(yōu)先權(quán)日2010年3月5日發(fā)明者史蒂芬·P·楊,崔佛·J·包爾,朗馬克立斯納·K·唐尼克拉申請(qǐng)人:吉林克斯公司