專利名稱:并行計(jì)算單元的重新尋址的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及集成電路,更具體地講,本發(fā)明涉及專用集成電路(ASIC)的設(shè)計(jì)結(jié)構(gòu),以增加全功能專用集成電路的制造成品率。
背景技術(shù):
制造集成電路(IC)時(shí),要在集成電路芯片進(jìn)行某些質(zhì)量控制檢測,以保證發(fā)送到用戶的這些集成電路芯片具有可接受的備用功能容量(margins of functionality)。例如,可在集成電路芯片上進(jìn)行存儲(chǔ)檢驗(yàn),以檢測其可能存在的缺陷。按照現(xiàn)有的某些方案,如果某一給定的集成電路芯片未能通過前述的存儲(chǔ)檢驗(yàn),那么這樣的集成電路芯片就要標(biāo)記為不合格,而不會(huì)發(fā)送到用戶那里。其它的檢測實(shí)驗(yàn)包括檢測專用集成電路的算術(shù)邏輯單元(ALUs)是否適當(dāng)。當(dāng)集成電路芯片上的一個(gè)或多個(gè)算術(shù)邏輯單元(ALUs)未能通過特定的功能實(shí)驗(yàn),那么整個(gè)集成電路芯片就被放棄。因而,這樣的質(zhì)量控制檢測方法會(huì)產(chǎn)生較多的廢品,而使得制造成品率相對(duì)較低。另外,在進(jìn)行檢測時(shí),需要采用獨(dú)立于集成電路算術(shù)邏輯單元的外部控制器,以確定去除哪一個(gè)算術(shù)邏輯單元。因而,芯片制造商需要與用戶的控制系統(tǒng)協(xié)調(diào)一致,以便檢測專用集成電路(ASICs),或者最起碼制造商需要設(shè)計(jì)和/或準(zhǔn)備一個(gè)獨(dú)立的外部控制器,以便根據(jù)檢測結(jié)果確定禁用哪一個(gè)算術(shù)邏輯單元(ALUs)。
針對(duì)上述的現(xiàn)有技術(shù),有必要開發(fā)一種更有效的方法,以增加功能專用集成電路的制造成品率,該方法相對(duì)于檢測專用集成電路(ASICs)時(shí)所用的外部控制器而言是透明的(transparent)。
發(fā)明內(nèi)容
本發(fā)明的目的是提高專用集成電路(ASIC)芯片的制造成品率,該專用集成電路芯片包括相同計(jì)算單元的陣列。
按照本發(fā)明的某些實(shí)施方式,可以通過標(biāo)識(shí)專用集成電路中有缺陷的算術(shù)邏輯單元并將其功能由該缺陷單元重新尋址(re-mapping)到無缺陷的單元上而提高了制造成品率。該專用集成電路的設(shè)計(jì)特點(diǎn)是包括預(yù)定數(shù)量的冗余(redundant)計(jì)算單元,使得在檢測時(shí)發(fā)現(xiàn)缺陷計(jì)算單元時(shí),可通過將缺陷單元的功能重新尋址至那些曾經(jīng)冗余的單元上,從而保持專用集成電路的全部功能。
一方面,在本發(fā)明中,缺陷單元的標(biāo)識(shí)和功能的重新尋址是利用專用集成電路中安裝于每一計(jì)算單元的自檢邏輯(self-testlogic)自動(dòng)完成的。當(dāng)專用集成電路處于操作狀態(tài)時(shí),自檢邏輯被調(diào)變至允許相應(yīng)的計(jì)算單元從數(shù)據(jù)初始化過程中分離出來并自我放棄(self-disable),以避免該單元進(jìn)行任何計(jì)算。
另一方面,在本發(fā)明中,用于自檢的檢測數(shù)據(jù)的輸入是平行進(jìn)行的。
再一方面,在本發(fā)明中,功能的重新尋址可以通過順次地初始化陣列中的計(jì)算單元而實(shí)現(xiàn)。例如,陣列中的計(jì)算單元是串行(順次)連接的,計(jì)算單元的初始化可以從陣列的一端開始。如果在順次初始化的過程中遇到缺陷單元,就跳過該缺陷單元,而那些本來要裝入該缺陷單元的初始化數(shù)據(jù)則被順次地裝入到下一個(gè)非缺陷的單元中。
圖1是顯示本發(fā)明某些實(shí)施方式中專用集成電路設(shè)計(jì)結(jié)構(gòu)特點(diǎn)的流程圖。
圖2是顯示本發(fā)明某些實(shí)施方式中專用集成電路設(shè)計(jì)結(jié)構(gòu)的高級(jí)方框圖。
圖3是顯示本發(fā)明某些實(shí)施方式中專用集成電路在檢測和初始化時(shí)特點(diǎn)的流程圖。
具體實(shí)施例方式
圖1是顯示本發(fā)明某些實(shí)施方式中專用集成電路設(shè)計(jì)結(jié)構(gòu)某些特點(diǎn)的流程圖。圖1所示的流程不一定是制備專用集成電路的特定順序。在模塊102中,在專用集成電路的設(shè)計(jì)中,計(jì)算單元的陣列包括冗余的計(jì)算單元。該設(shè)計(jì)中計(jì)算單元是相同的,其中,冗余計(jì)算單元的數(shù)量取決于能夠保障每一專用集成電路正常操作的最少計(jì)算單元的數(shù)目,冗余計(jì)算單元的數(shù)量也取決于制造過程中缺陷單元的估計(jì)的數(shù)量。
在模塊104中,陣列中的每一計(jì)算單元均包括自檢邏輯電路,以便通過計(jì)算指示器,指出該計(jì)算單元是否有缺陷的。例如,該指示器可以是一放棄標(biāo)記。這樣,每一計(jì)算單元負(fù)責(zé)計(jì)算其自己的放棄標(biāo)記的數(shù)值。在模塊106中,在每一計(jì)算單元的設(shè)計(jì)中均包括一控制單元。在模塊108中,通過串聯(lián)連接控制單元而使計(jì)算單元彼此串聯(lián)連接。
在模塊110中,采用并行的輸入/輸出(I/O)網(wǎng)絡(luò)如并行的I/O總線向計(jì)算單元輸入數(shù)據(jù)并接受來自計(jì)算單元的輸出數(shù)據(jù)。此處,參閱圖2和圖3,來詳細(xì)地描述專用集成電路的計(jì)算單元的檢測程序。
圖2是顯示本發(fā)明某些實(shí)施方式中專用集成電路設(shè)計(jì)結(jié)構(gòu)的高級(jí)方框圖。圖2中顯示了帶有控制接口204的外部控制器202。操作時(shí),控制借口與輸入網(wǎng)絡(luò)206進(jìn)行通訊。輸入網(wǎng)絡(luò)206連接到具有相同計(jì)算單元的陣列216上。陣列216中的計(jì)算單元連接到輸出網(wǎng)絡(luò)208上。輸入網(wǎng)絡(luò)206和輸出網(wǎng)絡(luò)208例如可以是并行I/O總線的一部分。陣列216中的每一計(jì)算單元包括計(jì)算邏輯部分210和控制單元212。通過串行連接214將陣列216中的計(jì)算單元予以串聯(lián)連接。例如,串行連接可以是一菊花鏈(daisy chain),該菊花鏈將一計(jì)算單元中的控制單元212連接到下一計(jì)算單元。
計(jì)算邏輯210包括需要執(zhí)行專用集成電路計(jì)算功能的計(jì)算邏輯電路。每一計(jì)算單元包括一自檢和自禁止(self-disabling)邏輯(圖2中沒有示出)。該自檢和自禁止邏輯可以是計(jì)算邏輯210的一部分?;蛘?,該自檢和自禁止邏輯也可以是獨(dú)立于計(jì)算邏輯210,這樣的話,對(duì)每一個(gè)執(zhí)行動(dòng)作來說,該自檢和自禁止邏輯都可能是變化的。在圖2中,陣列216包括N個(gè)計(jì)算單元,其中,N是正整數(shù)。計(jì)算單元的數(shù)量N包括預(yù)先確定的冗余計(jì)算單元的數(shù)量。預(yù)先確定的冗余計(jì)算單元的數(shù)量取決于非缺陷即功能單元的數(shù)量,即保證專用集成電路功能的數(shù)量。
本發(fā)明的實(shí)施方式無需局限于任何特定類型的專用集成電路(ASICs)。因而,計(jì)算單元的陣列可以是任何類型算術(shù)單元的陣列,在該陣列中,每個(gè)算術(shù)單元彼此相同,例如可以是相同的向量計(jì)算單元(vector computing unit,VCU)的陣列。除其它功能外,向量計(jì)算單元可以用于計(jì)算從一個(gè)內(nèi)部存儲(chǔ)的參比向量(referencevector)到一給定輸入向量之間的距離。此處參閱圖3來詳細(xì)地描述在專用集成電路中如何利用向量計(jì)算單元(VCU)。
圖3是參照?qǐng)D2進(jìn)行說明的。圖3是顯示本發(fā)明某些實(shí)施方式中專用集成電路在檢測和初始化時(shí)的某些高級(jí)特點(diǎn)的流程圖。在模塊302中,陣列中如陣列216中的計(jì)算單元被設(shè)定為檢測模式。例如,圖2中的外部控制器202可以利用控制接口204將陣列216設(shè)定為檢測模式。
在模塊304中,輸入的檢測數(shù)據(jù)被平行地發(fā)送到所有的計(jì)算單元,使得每一個(gè)計(jì)算單元可以同時(shí)進(jìn)行相應(yīng)的自檢。在模塊306中,每個(gè)計(jì)算單元都進(jìn)行自檢,而且,如果需要的話,一旦某一計(jì)算單元接受到?jīng)]有通過自檢測試的結(jié)果,該計(jì)算單元就進(jìn)行自我禁止。例如,每個(gè)計(jì)算單元適合于計(jì)算禁止指示器的值,例如禁止標(biāo)記。一旦某一計(jì)算單元未能通過自檢測試,該缺陷的計(jì)算單元的禁止標(biāo)記就被打開,以防止該缺陷的計(jì)算單元被初始化以及參與專用集成電路(ASIC)的正常操作。按照本發(fā)明的某些實(shí)施方式,禁止指示器是可變的,即不是恒定的。這樣,當(dāng)專用集成電路關(guān)掉電源時(shí),禁止指示器就被復(fù)位,當(dāng)該專用集成電路又接通電源時(shí),禁止指示器需要重新進(jìn)行計(jì)算。而且,由于每個(gè)計(jì)算單元中設(shè)有內(nèi)置的自檢邏輯,外部控制器如圖2中的控制器202并不知道陣列中缺陷單元的存在。因而,缺陷單元針對(duì)操作的自我禁止或者針對(duì)初始化的自我隔離,對(duì)于外部控制器來說是透明的。
在模塊308中,初始化數(shù)據(jù)的序列以順次的方式裝入到計(jì)算單元上。例如,參閱圖2,陣列216可以從VCU0開始進(jìn)行初始化,VCU0是該陣列中最左邊的單元。VCU0的控制單元串聯(lián)地連接到VCU1的控制單元上,而VCU1的控制單元又串聯(lián)地連接到VCU2的控制單元上,依次類推。這樣,陣列216中的向量計(jì)算單元(VCUs)被串聯(lián)連接器件如菊花鏈(daisy chain)串聯(lián)地連接起來。
在初始化數(shù)據(jù)裝入到VCU0之前,控制單元檢查VCU0上禁止標(biāo)記的值。如果禁止標(biāo)記的值表明該單元是有缺陷的,那么,本來要裝入到VCU0中的初始化數(shù)據(jù)被發(fā)送至VCU1。在VCU1處,VCU1的控制單元檢查VCU0上禁止標(biāo)記的值。如果禁止標(biāo)記的值表明VCU1可以使用,那么,初始化的數(shù)據(jù)就被裝入到VCU1中。隨后,嘗試去安裝串聯(lián)連接中的下一個(gè)計(jì)算單元,即VCU2。如果VCU2的控制單元測得VCU2可以使用(被VCU2的禁止標(biāo)記所指明),就將來自初始化數(shù)據(jù)序列的下一套初始化數(shù)據(jù)裝入到VCU2中。這樣,初始化數(shù)據(jù)的序列就以串行的方式裝入到陣列216中,其中缺陷單元被跳過,而是否是缺陷單元是通過每個(gè)計(jì)算單元中禁止標(biāo)記的值所指明的。陣列中存在冗余的計(jì)算單元可以保證初始化數(shù)據(jù)的整個(gè)序列被陣列中,盡管該陣列中存在缺陷單元。所以,陣列中存在足夠的冗余單元,以及初始化數(shù)據(jù)的順次裝入方式,保證了初始化數(shù)據(jù)在陣列中非缺陷計(jì)算單元之間的重新尋址(re-mapping)。
另外,每個(gè)計(jì)算單元,如果其被自測為缺陷單元,適合于從VCU的正常操作中自我剔除出去。例如,在正常操作中,缺陷的計(jì)算單元將不會(huì)進(jìn)行任何計(jì)算和/或不會(huì)將任何輸出發(fā)送到I/O并行總線。即使陣列中缺陷的計(jì)算單元不將任何輸出發(fā)送到I/O并行總線,由于I/O總線的并行特性,外部控制器如控制器202不知道缺陷單元的存在。
通過進(jìn)一步敘述VCUs的檢測,可以詳細(xì)地描述上述ASIC設(shè)計(jì)結(jié)構(gòu)的功效(efficacy)。陣列中,如圖2的陣列216中,每個(gè)VCU的主要功能為1)在VCU上存儲(chǔ)一n維的向量作為內(nèi)部向量;2)接受一輸入的向量并計(jì)算該內(nèi)部向量和該輸入向量之間的距離;以及3)將計(jì)算出的距離與陣列中其它可使用的向量計(jì)算單元(VCUs)進(jìn)行比較和分類。存儲(chǔ)的內(nèi)部向量也叫做原型(prototype)。即使采用并行總線來裝入原型的序列,在陣列的初始化過程中,各原型也是一個(gè)接一個(gè)地按順次地方式輸入到該陣列中。VCUs之間串行連接器件如菊花鏈的作用是為選擇給定的VCU提供識(shí)別器(pointer),該給定的VCU是用于接受原型。這樣的識(shí)別器只是為了接受原型而適合于指向可使用的VCUs。只有被菊花鏈指向的那些VCUs才會(huì)從原型的序列中接受原型。本來是用于那些被發(fā)現(xiàn)帶有缺陷的VCUs的原型,要重新尋址,裝入到陣列中其它可使用的VCUs中。由于陣列中冗余VCUs的存在,而使得重新尋址成為可能。這樣的重新尋址,在設(shè)計(jì)上來看,對(duì)于外部控制器來說是透明的(transparent)。
在VCUs陣列初始化之后,該陣列進(jìn)入到正常的操作階段。無論何時(shí),只要通過I/O接口如并行的I/O總線發(fā)送一個(gè)新輸入的向量,那么,所有的VCUs都會(huì)平行地進(jìn)行向量至向量之間的距離計(jì)算??墒褂玫腣CUs將結(jié)果平行地輸出到并行I/O總線中。
在以上的說明中,采用了諸多特定的技術(shù)細(xì)節(jié)對(duì)本發(fā)明進(jìn)行了描述,而這些技術(shù)細(xì)節(jié)完全可以隨具體情況的變化而變化。很顯然,在不偏離本發(fā)明的精神和范圍的前提下,本領(lǐng)域的普通技術(shù)人員可以進(jìn)行各種各樣的改進(jìn)和改變。因而,此處的說明書及其附圖只是用于說明的目的,而不是對(duì)本發(fā)明的限制。
權(quán)利要求
1.一種制備集成電路的方法,該集成電路帶有由相同計(jì)算單元組成的陣列,該方法包括由計(jì)算機(jī)執(zhí)行的如下步驟使所述的由相同計(jì)算單元組成的陣列包含一定數(shù)量的冗余的計(jì)算單元;利用所述每一相同的計(jì)算單元上的自我禁止邏輯,其中,如果存在缺陷的計(jì)算單元,該自我禁止邏輯適合于阻止該缺陷的計(jì)算單元裝入初始化數(shù)據(jù)和進(jìn)行操作;以及從所述缺陷的計(jì)算單元自動(dòng)地重新尋址到該陣列中非禁止的計(jì)算單元,并接受所述初始化數(shù)據(jù),該初始化數(shù)據(jù)曾被阻止裝入到所述缺陷的計(jì)算單元中。
2.如權(quán)利要求1所述的方法,其進(jìn)一步包括在所述陣列的所有計(jì)算單元上平行地進(jìn)行測試,以識(shí)別出所述缺陷的計(jì)算單元。
3.如權(quán)利要求2所述的方法,其中,所述的測試是在所述集成電路每次啟動(dòng)時(shí)進(jìn)行的。
4.如權(quán)利要求2所述的方法,其進(jìn)一步包括利用輸入網(wǎng)絡(luò)進(jìn)行所述的測試。
5.如權(quán)利要求4所述的方法,其中,所述的輸入網(wǎng)絡(luò)與所述集成電路的I/O并行總線相聯(lián)結(jié)(associated with)。
6.如權(quán)利要求2所述的方法,其進(jìn)一步包括利用每一所述相同的計(jì)算單元上的指示器結(jié)構(gòu),根據(jù)所述的測試,指明每一所述相同的計(jì)算單元是否是被禁止。
7.如權(quán)利要求6所述的方法,其中,所述的指示器結(jié)構(gòu)是一禁止標(biāo)記,該禁止標(biāo)記對(duì)應(yīng)于每一所述相同的計(jì)算單元。
8.如權(quán)利要求7所述的方法,其中,每一所述相同的計(jì)算單元計(jì)算所述相應(yīng)的禁止標(biāo)記。
9.如權(quán)利要求1所述的方法,其中,所述的重新尋址適合于使所說的集成電路發(fā)揮其全部功能。
10.如權(quán)利要求1所述的方法,其中,所述的集成電路是一專用集成電路。
11.如權(quán)利要求1所述的方法,其中,所述的缺陷的計(jì)算單元被禁止接受任何輸入數(shù)據(jù)而進(jìn)行處理,該輸入數(shù)據(jù)來自于與所述集成電路相聯(lián)結(jié)的I/O并行總線。
12.如權(quán)利要求1所述的方法,其中,所述的缺陷的計(jì)算單元被禁止將任何處理的數(shù)據(jù)輸出到與所述集成電路相聯(lián)結(jié)的I/O并行總線。
13.如權(quán)利要求1所述的方法,其中,所述的自動(dòng)重新尋址包括利用一數(shù)據(jù)裝入機(jī)制,以順次地將所述的初始化數(shù)據(jù)裝入到所述的非禁止的計(jì)算單元,其中,所述的初始化數(shù)據(jù)包括控制數(shù)據(jù)。
14.如權(quán)利要求13所述的方法,其中,所述的數(shù)據(jù)裝入機(jī)制將所述的、沒有裝入到禁止的計(jì)算單元中的初始化數(shù)據(jù)發(fā)送到所述陣列的下一個(gè)計(jì)算單元中。
15.如權(quán)利要求13所述的方法,其中,所述的數(shù)據(jù)裝入機(jī)制包括一識(shí)別器,以指向所述陣列中裝入所述初始化數(shù)據(jù)的現(xiàn)行計(jì)算單元,其中,所述的識(shí)別器通過一串聯(lián)連接器件予以發(fā)送,該串聯(lián)連接器件連接所述陣列中的所述相同的計(jì)算單元。
16.如權(quán)利要求1所述的方法,其進(jìn)一步包括利用每一所述相同的計(jì)算單元上的菊花鏈控制單元。
17.如權(quán)利要求16所述的方法,其中,所述的菊花鏈控制單元適合于通過相應(yīng)的輸入和輸出控制斷口,接受和輸出控制數(shù)據(jù)。
18.如權(quán)利要求1所述的方法,其中,每一所述相同的計(jì)算單元包括用于處理數(shù)據(jù)的計(jì)算邏輯電路。
19.如權(quán)利要求1所述的方法,其進(jìn)一步包括利用I/O并行總線,傳送來自所述非禁止計(jì)算單元的輸出數(shù)據(jù)。
20.一種集成電路,該集成電路包括多個(gè)相同的計(jì)算單元,其中,所述的多個(gè)相同的計(jì)算單元包括一定數(shù)量的冗余的計(jì)算單元;在每一所述的計(jì)算單元中由計(jì)算機(jī)執(zhí)行的自檢和自我禁止邏輯(電路);以及一串聯(lián)連接器件,該串聯(lián)連接器件連接所述的多個(gè)相同的計(jì)算單元。
21.如權(quán)利要求20所述的集成電路,其進(jìn)一步包括一并行的輸入/輸出網(wǎng)絡(luò),該網(wǎng)絡(luò)適合于平行地將測試輸入數(shù)據(jù)發(fā)送到所述的多個(gè)相同的計(jì)算單元。
22.如權(quán)利要求20所述的集成電路,其進(jìn)一步包括一并行的輸入/輸出網(wǎng)絡(luò),該網(wǎng)絡(luò)適合于平行地接受來自于所述的多個(gè)相同的計(jì)算單元的輸出數(shù)據(jù)。
23.如權(quán)利要求20所述的集成電路,其進(jìn)一步包括在所述的多個(gè)相同的計(jì)算單元中每一個(gè)上的指示器結(jié)構(gòu),該指示器結(jié)構(gòu)與所述的自檢和自我禁止邏輯相聯(lián)結(jié),其中,所述的指示器結(jié)構(gòu)適合于指明所述的多個(gè)相同的計(jì)算單元中的每一個(gè)是否是有缺陷的。
24.如權(quán)利要求20所述的集成電路,其進(jìn)一步包括在所述的多個(gè)相同的計(jì)算單元中每一個(gè)上的控制單元,其中,所述的控制單元是通過所述的串聯(lián)連接器件連接的。
全文摘要
本申請(qǐng)公開了一種專用集成電路(ASIC)的設(shè)計(jì)結(jié)構(gòu)。該ASIC的設(shè)計(jì)結(jié)構(gòu)包括一定數(shù)量的冗余的計(jì)算單元,以便在檢測發(fā)現(xiàn)缺陷計(jì)算單元時(shí),可以通過從缺陷單元向原來冗余的單元的重新尋址,維持ASIC的全部功能。缺陷單元的標(biāo)識(shí)以及功能的重新尋址是利用內(nèi)置于ASIC每一計(jì)算單元中的自檢邏輯自動(dòng)完成的。當(dāng)ASIC處于操作模式時(shí),自檢邏輯適合于使相應(yīng)的計(jì)算單元避免數(shù)據(jù)初始化過程,并自我禁止進(jìn)行任何計(jì)算操作。通過依次地對(duì)陣列中計(jì)算單元的初始化,可以實(shí)現(xiàn)功能的量新尋址。
文檔編號(hào)G01R31/317GK1801104SQ200510099360
公開日2006年7月12日 申請(qǐng)日期2005年9月15日 優(yōu)先權(quán)日2004年9月15日
發(fā)明者薄藝林 申請(qǐng)人:豪威科技有限公司