專利名稱:存儲器芯片及其操作方法
技術領域:
本發明是有關于一種存儲器芯片以及其操作方法,且特別是有關于一種應用于多芯片封裝(multi-chip package ;MCP)的存儲器芯片以及其操作方法。
背景技術:
隨著多芯片封裝技術的發展,集成電路供貨商,尤其是在移動電話的應用方面,趨向于將不同供貨商提供的已知良好晶元(known-good-die ;KGD)閃存、SRAM存儲器以及控制器等多個芯片整合為一多芯片封裝,以便能降低集成電路產品的制造成本。
一般而言,當包含多個裸晶的存儲器芯片提供給集成電路供貨商時,晶元供應者會測試所有裸晶以確保它們的良好質量及可靠度,例如晶元良率至少達90%。據此,集成電路供貨商才將已知良好晶元與其它集成電路芯片放在一起封裝。然而,經常讓芯片供應者困擾的是在封裝過程中,假如產生任何損害而導致整個封裝元件操作失敗時,集成電路供貨商并無法得知在多芯片封裝中那一個元件受到損害以及操作失敗的原因是否由配件產生或是由元件本身所產生。傳統上是使用一種稱為邊界掃描(boundary scan)的方法來測試多芯片封裝。然而此種方法需要使用核心芯片來提供輸入信號并且需要存儲器芯片具有相同的信號協議,否則很難由核心芯片執行測試程序。因此,傳統的邊界掃描方法將使得整個測試過程便復雜化。
發明內容
有鑒于此,本發明的主要目的在于提供一種存儲器芯片及其操作方法。通過依序輸入兩組互補(complementary)的測試信號至存儲器芯片的焊墊或由焊墊輸出兩個頻率的互補測試信號,并決定輸入的兩互補測試信號是否被焊墊成功地接收到或輸出的兩互補測試信號是否由焊墊成功地讀到,因而可以很容易地測試出這些焊墊是否有開路及短路狀態。因此,可以有效地簡化存儲器芯片的測試程序。根據本發明的第一方面,提出一種存儲器芯片的操作方法。存儲器芯片包括多個焊墊。本方法包括分別輸入多個第一測試信號至焊墊,其中任意兩實體相鄰的焊墊所對應的第一測試信號是彼此互補的;接著第一測試信號之后分別輸入多個第二測試信號至焊墊,其中對應各焊墊的第一測試信號以及第二測試信號是彼此互補的;以及當存儲器芯片成功地接收到第一測試信號以及第二測試信號時,由存儲器芯片輸出一預期數據。根據本發明的第二方面,提出一種存儲器芯片的操作方法。存儲器芯片包括多個焊墊。本方法包括接收一測試指令;根據測試指令由焊墊輸出多個第一測試信號,其中任意兩實體相鄰的焊墊所對應的第一測試信號是彼此互補的;以及根據測試指令接著第一測試信號之后由焊墊輸出多個第二測試信號,其中對應各焊墊的第一測試信號以及第二測試信號是彼此互補的。根據本發明的第三方面,提出一種存儲器芯片,包括多個焊墊、指令譯碼單元以及預期數據產生器。焊墊是用以依序分別輸入多個第一測試信號以及多個第二測試信號,其中任意兩實體相鄰的焊墊所對應的第一測試信號是彼此互補的,且對應各焊墊的第一測試信號以及第二測試信號是彼此互補的。指令譯碼單元連接焊墊用以接收第一測試信號以及第二測試信號。預期數據產生器連接指令譯碼單元,其中當指令譯碼單元成功地接收到第一測試信號以及第二測試信號時,指令譯碼單元控制預期數據產生器產生一預期數據加以輸出。根據本發明的第四方面,提出一種存儲器芯片具有多個焊墊。存儲器芯片包括指令譯碼單元以及預期數據產生器。指令譯碼單元是用以接收一測試指令。預期數據產生器 是用以根據測試指令由焊墊依序分別輸出多個第一測試信號以及多個第二測試信號,其中任意兩實體相鄰的焊墊所對應的第一測試信號是彼此互補的,且對應各焊墊的第一測試信號以及第二測試信號是彼此互補的。為讓本發明的上述內容能更明顯易懂,下文特舉一較佳實施例,并配合所附圖式,作詳細說明如下。
圖IA繪示依照本發明第一實施例的一種存儲器芯片方塊圖。圖IB繪示平行閃存48ST0P的焊墊排列順序示意圖。圖IC繪示本發明第一實施例具有焊墊間短路狀態的存儲器芯片方塊圖。圖ID繪示本發明第一實施例具有焊墊開路或短路狀態的存儲器芯片方塊圖。圖IE繪示依照本發明第一實施例存儲器芯片操作方法流程圖。圖2A繪示依照本發明第二實施例的一種存儲器芯片方塊圖。圖2B繪不串彳丁閃存8S0P的焊塾排列順序不意圖。圖2C繪示圖2B中輸入/輸出焊墊SIOO SI03的測試信號、頻率信號以及其它信號的波形圖。圖2D繪示依照本發明第二實施例存儲器芯片操作方法流程圖。主要元件符號說明2、22 :焊墊4、24 :輸入緩沖器10,20 :存儲器芯片120、220 :指令譯碼單元130,230 :預期數據產生器140、240 :讀取器
具體實施例方式本發明是有關于一種存儲器芯片及其操作方法。存儲器芯片具有多個焊墊。兩組互補的測試信號輸入至這些焊墊或兩個頻率的互補測試信號由這些焊墊輸出,其中任意兩實體相鄰的焊墊所對應的測試信號是彼此互補的。因此,只要判斷輸入的兩互補測試信號是否由這些焊墊成功地接收或者判斷輸出的兩互補測試信號是否由這些焊墊成功地讀取,即可容易地測試出這些焊墊是否有開路及短路的狀態發生。實施例一請參照圖1A,其繪示依照本發明第一實施例的一種存儲器芯片方塊圖。存儲器芯片10,例如是應用于多芯片封裝(MCP)的已知良好 晶元(KGD)存儲器,其包括多個焊墊2。在本實施例中,焊墊2包括地址焊墊以及輸入/輸出(I/O)焊墊。存儲器芯片10更包括指令譯碼(command decode)單元120以及預期數據產生器130。存儲器芯片10的焊墊2依序分別輸入多個第一測試信號SI以及多個第二測試信號S2。如圖IA所示,任意兩實體相鄰的焊墊2所對應的第一測試信號SI是彼此互補(O及I),且對應各焊墊2的第一測試信號SI與第二測試信號S2也是彼此互補的。雖然本實施例中測試信號SI及S2是以輸入至地址焊墊及輸入/輸出焊墊為例作說明,然本發明的測試信號SI以及S2也可以是僅輸入至地址焊墊2用來測試地址焊墊2的狀態。例如,存儲器芯片10是一種平行閃存48TS0P,其包括22個地址焊墊AO A21以及16個輸入/輸出焊墊QO Q15,如圖IB所示。此22個地址焊墊依照邏輯序列(logicsequence)分別為A0、A1、A2、· . · A20以及A21,且依照實體排列(physical pattern)分別為A1、A2、A3、A4、A5、A6、A7、A17、A18、A21、A20、A19、A8、A9、A10、A11、A12、A13、A14、A15(由左下到左上)以及A0、A16(分別位于右下及右上)。此16個輸入/輸出焊墊依照邏輯序列分別為 Q0、Ql、Q2、. . . Q14 及 Q15,且依照實體排列分別為 Q0、Q8、Ql、Q9、Q2、QlO、Q3、Q11、Q4、Q12、Q5、Q13、Q6、Q14、Q7 及 Q15 (由右下至右上)。第一及第二測試信號SI及S2與實體排列的地址焊墊AO A21以及輸入/輸出焊墊QO Q15的對應如下左側Al A2 A3 A4 A5 A6 A7 A17 A18 A21SI :1 O I O I O I OIOS2 0 I O I O I O IOIA20 A19 A8 A9 AlO All A12 A13 A14 A15SI 1OI O IOIOIOS2 0IO I OIOIOI右側AO QO Q8 Ql Q9 Q2 QlO Q3 QllSI 0 I O I O I OI OS2 :1 O I O I O IO IQ4 Q12 Q5 Q13 Q6 Q14 Q7 Q15 A16SI 1 OI OI OI OIS2 0 IO IO IO IO如果依照邏輯序列來表示,第一測試信號SI是對應至相對邏輯序列的地址焊墊A
的第一測試二進制代碼(binary code)(地址)TB1 “ 1555CCh”以及相對邏輯序列的輸入/輸出焊墊Q
的第三測試二進制代碼(數據)TB3 “OOFFh”。另外,第二測試信號S2是對應至相對邏輯序列的地址焊墊A
的第二測試二進制代碼(地址)TB2 “2CCC55h”以及相對邏輯序列的輸入/輸出焊墊Q
的第四測試二進制代碼(數據)TB4 “FFOOh”,如下所示。AO Al A2 A3 A4 A5 A6 A7 A8 A9 AlOAllTBl 0 I O I O I O I I O I
0TB2 :1 O I O I O I O O I O
1 A12 A13 A14 A15 A16 A17 A18 A19 A20 A21TB11 OIOIOIOIOTB2 0 IOIOIOIOITBl = 0101010110101010101010, TB2 = 1010101001010101010101QO Ql Q2 Q3 Q4 Q5 Q6 Q7 Q8TB3 I I I I I I I I OTB4 0 O O O O O O O IQ9 QlO Qll Q12 Q13 Q14 Q15TB3 0 O O O O O OTB4 I IIIIIITB3 = 1111111100000000, TB4 = 0000000011111111指令譯碼單元120是用以接收測試信號SI及S2以判斷測試信號SI及S2是否成功地由存儲器芯片10透過地址焊墊以及輸入/輸出焊墊所接收。對應測試信號SI及S2由地址焊墊與輸入/輸出焊墊所依序接收的數據先儲存于存儲器芯片10的輸入緩沖器(input buffer) 4,再送到指令譯碼單元120。存儲器芯片10根據地址焊墊的邏輯序列分別將對應至測試信號SI及S2由地址焊墊接收的數據Dl及D2重組為第一二進制代碼BCl以及第二二進制代碼BC2,并且根據輸入/輸出焊墊的邏輯序列分別將對應至測試信號SI及S2由輸入/輸出焊墊接收的數據D3及D4重組為第三二進制代碼BC3以及第四二進制代碼BC4。然后,指令譯碼單元120判斷第一二進制代碼BCl以及第二二進制代碼BC2是否分別與第一測試二進制代碼TBl以及第二測試二進制代碼TB2相同,并判斷第三二進制代碼BC3以及第四二進制代碼BC4是否分別與第三測試二進制代碼TB3以及第四測試二進制代碼TB4相同。在存儲器芯片10沒有焊墊間短路(pad-to-pad shorting)或焊墊開路/短路的正常狀況下,由地址焊墊及輸入/輸出焊墊所接收的數據(D1+D3)及(D2+D4)會分別與輸入至地址焊墊及輸入/輸出焊墊的測試信號SI及S2相同。也就是說,在(Dl,D3)及(D2,D4)解碼后所得到的二進制代碼(BC1,BC3)及(BC2,BC4)會分別與對應測試信號SI的測試二進制代碼(TBl,TB3)以及對應測試信號S2的測試二進制代碼(TB2,TB4)相同。然而,當焊墊間短路發生時,例如是圖IC所示的左側兩焊墊2之間發生短路時,由這兩個焊墊2接收到對應測試信號SI (O及I)的兩筆數據Dl (或D3)將與輸入的測試信號SI不同而形成錯誤的輸入數據。也就是說,數據Dl經譯碼后的二進制代碼BCl (或BC3)將不同于預期的測試二進制代碼TBl (或TB3)。當某些焊墊2產生開路或短路現象時,如圖ID所示,由短路至VDD的焊墊2所接收對應測試信號SI為“O”的數據Dl (或D3)將變成“I”。由開路狀態的焊墊2所接收對應測試信號SI為“I”的數據Dl (或D3)將變成“O”。由短路至GND的焊墊2所接收對應測試信號SI為“I”的數據Dl (或D3)將變成“O”。因此,假如地址焊墊或輸入/輸出焊墊產生焊墊間短路或焊墊開路/短路情況時,所得到的二進制代碼BCl BC4將與測試二進制代碼TBl TB4不相同。另外,預期數據產生器130系設置于存儲器芯片10中并連接至指令譯碼單元120,用以輸出一筆預期數據De。當二進制代碼BCl BC4分別與測試二進制代碼TBl TB4相同時,指令譯碼單元120利用觸發信號St來控制預期數據產生器130經由輸入/輸出焊墊產生預期數據De,例如是二進制代碼。 焊墊2在輸入測試信號SI及S2之后更用以依序輸入第一指令碼Cl以及第二指令碼C2。指令譯碼單元120是根據第一指令碼Cl開始判斷第一至第四二進制代碼BCl BC4是否分別與第一至第四測試二進制代碼TBl TB4相同,并于二進制代碼BCl BC4分別與測試二進制代碼TBl TB4相同時根據第二指令碼C2控制預期數據產生器130來輸出預期數據De。當焊墊間短路發生或焊墊產生開路或短路情況時,甚至透過地址焊墊接收的第一指令碼Cl也是錯誤的,因而預期數據產生器130并不會輸出預期數據De。相反地,假如存儲器芯片10并沒有焊墊間短路或焊墊開路/短路狀態存在時,指令譯碼單元120將接收到正確的第一及第二指令碼Cl及C2并據以控制預期數據產生器130輸出預期數據De。讀取器140是連接存儲器芯片10的輸入/輸出焊墊2,用以透過輸入/輸出焊墊2讀取數據,并根據所讀取的數據來決定存儲器芯片10的測試結果。當讀到預期數據De時,讀取器140判定存儲器芯片10為正常,而當讀不到預期數據De時,讀取器140則判定存儲器芯片10為測試失敗。請參照圖1E,其繪示依照本發明第一實施例的存儲器芯片10的操作方法流程圖。如上所述,存儲器芯片10是以平行閃存48TS0P為例。首先,于步驟150,分別輸入多個第一測試信號SI至地址焊墊AO A21以及輸入/輸出焊墊QO Q15。任意兩實體相鄰的地址焊墊及輸入/輸出焊墊所對應的第一測試信號SI是彼此互補的(0/1)。在本實施例中,兩實體相鄰的地址(或輸入/輸出)焊墊包括兩個相鄰接的地址(或輸入/輸出)焊墊,例如Al及A2(或QO及Q8),以及兩個地址(或輸入/輸出)焊墊的間沒有插入其它的地址(或輸入/輸出)焊墊,例如A18及A21(或Qll及Q4)。接著,于步驟160,分別接著第一測試信號SI之后輸入多個第二測試信號S2至地址焊墊AO A21及輸入/輸出焊墊QO Q15。對應各地址焊墊AO A21及輸入/輸出焊墊QO Q15的第一測試信號SI及第二測試信號S2是彼此互補。對應實體排列的地址焊墊AO A21及輸入/輸出焊墊QO Q15的測試信號SI及S2已如上述。在步驟150及160中,如上所述,第一測試信號SI是對應至相對邏輯序列的地址焊墊A
的第一測試二進制代碼TBl “1555CCh”以及相對邏輯序列的輸入/輸出焊墊Q
的第三測試二進制代碼TB3 “OOFFh”。另外,第二測試信號S2是對應至相對邏輯序列的地址焊墊A
的第二測試二進制代碼(地址)TB2 “2CCC55h”以及相對邏輯序列的輸入/輸出焊墊Q
的第四測試二進制代碼(數據)TB4 “FFOOh”。如下表I所示,第一測試二進制代碼“ 1555CCh”及第三測試二進制代碼“OOFFh”是于第一總線周期(bus cycle)提供,且第二測試二進制代碼“2CCC55h”及第四測試二進制代碼“FFOOh”是于第二總線周期提供。
權利要求
1.一種存儲器芯片的操作方法,該存儲器芯片包括多個焊墊,其特征在于,該方法包括 提供多個第一信號至該多個焊墊,且這些第一信號在兩實體相鄰的該焊墊上是彼此互補的; 提供一第二信號至該多個焊墊中的每一個,且該第二信號與在該多個焊墊中的每一個上的該第一信號是彼此互補的。
2.根據權利要求I所述的方法,其特征在于,該方法還包含一用以接收一測試指令的步驟;且該提供多個第一信號至該多個焊墊的步驟,包括響應于該測試指令而經由該多個焊墊輸出該多個第一信號;且該提供第二信號至該多個焊墊中的每一個的步驟,包括響應于該測試指令而在該第一信號之后輸出該第二信號。
3.根據權利要求2所述的方法,其特征在于,該測試指令是由一輸入/輸出焊墊輸入至該指令譯碼單元,且該指令譯碼單元是根據一頻率信號譯碼該測試指令。
4.根據權利要求2所述的方法,其特征在于,該多個焊墊的開路及短路狀態可根據該多個焊墊讀取的數據來檢驗。
5.根據權利要求2所述的方法,其特征在于,還包含一判斷該多個第一信號以及第二信號是否成功地從該焊墊中被讀取的步驟。
6.根據權利要求5所述的方法,其特征在于,該判斷該多個第一信號以及第二信號是否成功地由該多個焊墊被讀取的步驟,更包括判斷是否有一依該多個焊墊的一邏輯序列的由該多個第一信號以及第二信號所結合成的測試二進制代碼,經由該多個焊墊被讀取。
7.一種存儲器芯片,其特征在于,包括 多個焊墊;以及, 一單元,用以提供多個第一信號與多個第二信號至該多個焊墊,且這些第一信號在兩實體相鄰的該焊墊上是相互補的;且對應于每一該多個焊墊的第一信號與第二信號是彼此互補的。
8.根據權利要求7所述的存儲器芯片,其特征在于,該單元包含 一指令譯碼單元,用以接收一測試指令;以及 一預期數據產生器,用以響應于該測試指令,而經由該多個焊墊,分別輸出該多個第一信號與多個第二信號。
9.根據權利要求8所述的存儲器芯片,其特征在于,該指令譯碼單元譯碼該測試指令并據以輸出一控制信號,且該預期數據產生器根據該控制信號輸出該多個第一信號以及該多個第二信號。
10.根據權利要求8所述的存儲器芯片,其特征在于,該測試指令是由一輸入/輸出焊墊輸入至該指令譯碼單元,且該指令譯碼單元是根據一頻率信號譯碼該測試指令。
全文摘要
本發明公開了一種存儲器芯片及其操作方法。該存儲器芯片包括多個焊墊;以及一單元,用以提供多個第一信號與多個第二信號至該多個焊墊,且這些第一信號在兩實體相鄰的該焊墊上是相互補的;且對應于每一該多個焊墊的第一信號與第二信號是彼此互補的。該存儲器芯片的操作方法包括提供多個第一信號至該多個焊墊,且這些第一信號在兩實體相鄰的該焊墊上是彼此互補的;提供一第二信號至該多個焊墊中的每一個,且該第二信號與在該多個焊墊中的每一個上的該第一信號是彼此互補的。利用本發明,可以有效地簡化存儲器芯片的測試程序。
文檔編號G11C29/02GK102903391SQ20121033633
公開日2013年1月30日 申請日期2009年5月27日 優先權日2008年5月28日
發明者張坤龍, 洪俊雄, 余傳英, 李俊毅 申請人:旺宏電子股份有限公司