TWI773570B - 基於晶圓堆疊架構的計算機系統和記憶體測試方法 - Google Patents

基於晶圓堆疊架構的計算機系統和記憶體測試方法 Download PDF

Info

Publication number
TWI773570B
TWI773570B TW110140475A TW110140475A TWI773570B TW I773570 B TWI773570 B TW I773570B TW 110140475 A TW110140475 A TW 110140475A TW 110140475 A TW110140475 A TW 110140475A TW I773570 B TWI773570 B TW I773570B
Authority
TW
Taiwan
Prior art keywords
memory
block
computer system
module
memory sub
Prior art date
Application number
TW110140475A
Other languages
English (en)
Other versions
TW202318431A (zh
Inventor
蔡鎮年
金胤軒
Original Assignee
鯨鏈科技股份有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 鯨鏈科技股份有限公司 filed Critical 鯨鏈科技股份有限公司
Priority to TW110140475A priority Critical patent/TWI773570B/zh
Priority to CN202210733103.3A priority patent/CN116072197A/zh
Application granted granted Critical
Publication of TWI773570B publication Critical patent/TWI773570B/zh
Publication of TW202318431A publication Critical patent/TW202318431A/zh

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C2029/0405Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals comprising complete test loop
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Techniques For Improving Reliability Of Storages (AREA)
  • For Increasing The Reliability Of Semiconductor Memories (AREA)

Abstract

一種記憶體測試方法,適用於基於晶圓堆疊架構的計算機系統中。該計算機系統是由一記憶體晶體層,一邏輯電路層和一基底形成的立體晶圓產品。在進行記憶體測試時,將記憶體晶體層中的一記憶體裝置分為多個記憶體子區塊,各別進行測試。首先在一記憶體子區塊中建立一資料表。接著提供預先準備好的多個不同的初始值,進行工作量證明運算,對該資料表進行多次讀寫而產生對應每一初始值的多個運算結果。該判斷模組從該運算模組獲取該等運算結果後,並與對應的已知解比較,就能統計該受測記憶體子區塊的錯誤率。

Description

基於晶圓堆疊架構的計算機系統和記憶體測試方法
本申請是關於一種記憶體裝置的改良測試方法,尤其是有關於在以晶圓堆疊技術實作而成的計算機系統中測試記憶體的方法。
在這個年代,人工智能和區塊鏈的應用成為一種新的商機。區塊鏈可以廣泛應用於智能合約,數位身份,共享經濟等應用。
然而一些區塊鏈平台為了各種安全性考量或是漏洞修補,經常會改變區塊鏈的演算法。除了增加運算難度之外,也經常刻意為了降低特定應用晶片(ASIC)的運算效率而做出特殊設計,例如增加記憶體吞吐量的要求,或是儲存裝置的容量要求。
因此,對於區塊鏈伺服器的開發者而言,也隨著必須要改變硬體架構,來適應對記憶體吞吐量的高標準要求。因此,全新的區塊鏈伺服器的硬體架構,是有待開發的。除此之外,適用於新硬體架構的記憶體控制方法和記憶體測試方法, 都需要有對應的改良機制。
傳統的記憶體測試方法需要在晶片內部配置一個專用的測試模組,才能對記憶體進行測試。在基於晶圓堆疊架構的計算機系統中,測試全部的記憶體單元可能花費巨大的時間。然而針對特定應用而言,有時只需要知道某個區域的記憶體的錯誤率是否小於某一個值。若這個區域的記憶體的錯誤率能滿足需求,那這個記憶體就可以用,無需知道此區域中所有壞點的位置。因此本申請實施例提出一種快速測試方法,利用運算模組中原生的演算法搭配不同的初始值和已知解,即可直接根據運算模組的運算結果來判斷記憶體裝置的可用性。
本申請的記憶體測試方法,尤其適用於基於晶圓堆疊架構的計算機系統中。所謂晶圓堆疊架構,即該計算機系統是由一記憶體晶體層,一邏輯電路層和一基底以Wafer on Wafer技術形成的晶圓堆疊。該記憶體晶體層包含至少一記憶體裝置。該邏輯電路層透過多個連接墊與該記憶體裝置連接,包含一韌體,一運算模組連接該韌體和該記憶體裝置,及一判斷模組連接該運算模組。
在進行記憶體測試時,基本上會將該記憶體裝置分為多個記憶體子區塊,各別進行測試。在測試一記憶體子區塊時,首先在該記憶體子區塊中建立一資料表。接著提供預先準備好的多個不同的初始值,以及每一初始值對應的已知解。每一初始值是該運算模組進行工作量證明運算時所需的值。該工作量證明運算可對該資料表進行多次讀寫而產生對應每一初始值的多個運算結果。該判斷模組從該運算模組獲取該等運算結果後,並與對應的已知解比較,就能統計該受測記憶體子區塊的錯誤率。
在進一步的實施例中,該判斷模組將該記憶體子區塊的錯誤率和一臨界值比較,以判斷該記憶體子區塊的可用性為可用或不可用。之後,該判斷模組根據可用性的判斷結果,將該記憶體子區塊的編號記錄在該韌體中。
在具體的實施例中,該工作量證明運算可以是一種乙太雜湊演算法(Ethash)。該資料表是一有向無環圖(Directed Acyclic Graph; DAG)。
為了使每一記憶體子區塊中的記憶體單元完整受到測試,可透過運算模組的程控配置,在該記憶體子區塊中產生大小與該記憶體子區塊一致的有向無環圖。
在進一步的實施例中,所述預先準備的初始值和對應的已知解,可以是出廠時預存在韌體中,或是即時由外部輸入的值。在進行測試時,由判斷模組從韌體中或外部獲取已知解,和測試結果比對。
本申請也提出上述基於晶圓堆疊架構的計算機系統的實施例。
綜上所述,本申請實施例提出的記憶體測試方法,適用於晶圓堆疊架構的計算機系統。利用運算模組中原生的演算法搭配不同的初始值和已知解,即可直接根據運算模組的運算結果來判斷記憶體裝置的可用性。本方法不需要在計算機系統中另外設計測試邏輯,而且測試的效率也指數提升。
下面將結合本申請實施例中的圖式,對本申請實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例是本申請一部分實施例,而不是全部的實施例。基於本申請中的實施例,本領域普通技術人員在沒有作出創造性勞動前提下所獲得的所有其他實施例,都屬於本申請保護的範圍。
圖1是立體晶圓產品100的晶圓堆疊架構的示意圖。立體晶圓產品100由至少一記憶體晶體層110,一邏輯電路層120,及一基底130層層堆疊。記憶體晶體層110中布建多個記憶體裝置112。記憶體裝置112可以是由記憶體顆粒組成的記憶體模組,例如動態隨機存取記憶體(DRAM)。邏輯電路層120是布建了多個邏輯電路122的晶圓層。該等邏輯電路122是各種晶片模組的通稱,例如,但不限定於應用程式特定積體電路(ASIC),記憶體控制器,或處理器。最下層的基底130除了提供基本的支撐,也提供額外的布線空間。每一層之間配置有多個連接墊102或104以提供訊號通道。本實施例的立體晶圓產品100是計算機系統200的半成品,經過切割後可產生多個獨立運作的計算機系統200。圖1的基底130雖然只顯示一個,但在實體設計中不限定於此,也可以是多個基底130並行排列。如圖1所示,每個計算機系統200可各包含若干個記憶體裝置112和若干個邏輯電路122,具備相同的立體晶圓結構。換句話說,每個計算機系統200中包含的記憶體裝置112和邏輯電路122,是事先各別布局於記憶體晶體層110和邏輯電路層120中,再以晶圓堆疊的形式製成的立體結構。在立體結構中,晶片組之間的電路導線不需要佔用多餘的面積,可直接以成千上萬個連接墊102和104做為訊號傳遞的路徑,使資料傳遞的效能問題有效被解決,借此實現本申請的計算機系統200。
在圖1的晶圓堆疊架構中,由於傳送線路的數量不再受到平面設計的限制,因此可以使用大量的專用接線來解決資料傳遞的效能問題。記憶體晶體層110與邏輯電路層120的間距變小,所以可以在同面積中布局較多的接口。頻寬是由接口數目乘以通道的頻率公式得到,因此更多的接口可以的得到更高的頻寬。得益於晶圓堆疊技術,需要大量記憶體存取的應用,如機器學習、人工智慧或區塊鏈應用,可以獲得指數型的效能提升。
圖2是本申請實施例的計算機系統200。計算機系統200是由圖1中的記憶體晶體層110,邏輯電路層120和基底130疊合後再切割而成的產品。計算機系統200中可包含從記憶體晶體層110中切出來的一或多個記憶體裝置210,以及從邏輯電路層120中切出來的多個晶片,例如韌體202,運算模組204和判斷模組206。運算模組204中可包含記憶體控制器的功能,透過圖1所示的多個連接墊102連接記憶體裝置210。舉例來說,記憶體裝置210中可包含多個記憶體陣列(BANK),每個記憶體陣列包含多個記憶體單元(未圖示)。每個記憶體單元用於儲存位元資料0或1。每一行或一列記憶體單元可透過對應的多條連接墊102與運算模組204連接。記憶體內部電路已存在已知的標準規格,因此詳細實施方式不再贅述。
晶圓堆疊製程要求的技術門檻相當高。若在製造過程中,立體晶圓產品100和邏輯電路層120無法準確無誤的對齊,則所產生的計算機系統200無法正常運作。舉例來說,若是一運算模組204的連接狀況因晶圓堆疊的製程誤差而無法傳遞訊號,運算模組204無法從對應的記憶體單元存取資料。因此需要一個測試計算機系統200中的記憶體裝置210的方法。
常見的記憶體測試方式係將記憶體的測試邏輯內建在晶片中。舉例來說,當運算模組204收到執行測試的命令時,會自動去測試記憶體裝置,此方式稱為內建自測模組(Build-In-Self-Test;BIST)。但當記憶體裝置的數量逐漸增加時,執行一次完整BIST所需的時間(包含執行測試的時間以及讀取結果所需的時間)也會跟著增加。
記憶體 BIST測試是一個相當完整的測試,可找出記憶體中所有的壞點。但並非所有的應用都需要將所有的壞點都找出來。有時,我們只需要知道某個區域的記憶體的錯誤率是否小於某一個值。若這個區域的記憶體的錯誤率能滿足需求,那這個記憶體就可以用,無需知道此區域中所有壞點的位置。
本申請提出的實施例,先將記憶體區分為多個記憶體子區塊212,再以運算模組204直接使用每一記憶體子區塊212執行運算模組204的原生功能,就能快速推測所有記憶體子區塊212的資料錯誤率。運算模組204可以是特定演算法的邏輯電路,而其原生功能可以是一種工作量證明演算法。在本實施例中,如果一記憶體子區塊212的資料錯誤率大於一臨界值,則標記該記憶體子區塊212為不可用區塊。相對的,如果該記憶體子區塊212的資料錯誤率小於該臨界值,則標記該記憶體子區塊212為可用區塊。在記憶體測試完成後,可用區塊的資訊可被儲存在韌體202中,以利計算機系統200進行後續應用。
一般要求使用者進行一些耗時適當的複雜運算,並且答案能被服務方快速驗算,以此耗用的時間、裝置與能源做為擔保成本,以確保服務與資源是被真正的需求所使用。此概念最早於1993年提出,而工作量證明一詞則是在1999年正式發表,成為了如今的主流區塊鏈機制。
工作量證明演算法是一種基於雜湊函數的區塊求解演算法。輸入任意初始值,經過雜湊函式,會得到對應的一個結果。只要初始值變動一個位元,就會引起雪崩效應,所以幾乎無法反推。因此藉由尋找具有指定特徵的運算結果,讓使用者進行大量的窮舉運算,就可以達成工作量證明。常見的工作量證明演算法,包含SHA-256, Ethash, Scrypt, Equihash, CryptoNode等。以下僅以Ethash為例說明,其他演算法在國際間已有公開標準,詳細運作細節不再重複介紹。
乙太雜湊(Ethereum Hash; Ethash)是一種從Dagger-Hashimoto演算法改動而成的工作量證明演算法。主要原理為藉著極大量的隨機查表,加重記憶體的負載,以扺制應用程式特定晶片ASIC的加速效果。Ethash使用一個初始值為1GB的資料表,及一個初始值為16MB的假亂數表(cache)。每經過一個包含30000個區塊的間隔,該資料表和假亂數表就會重新計算。這個30000區塊的間隔稱為一期(epoch)。每期epoch所產生的內容都會增大,因此1GB與16MB都只是基本值。本申請實施例的計算機系統會儲存整個資料表和假亂數表。計算機系統對一區塊進行工作量證明運算時,先將一個隨機數(nonce)填入區塊頭,並以SHA-3形式不斷查表尋求混合值MIX以計算該區塊的解。
乙太雜湊演算法在運行過程中使用的資料表,稱為有向無環圖(Directed Acyclic Graph;DAG)。運算模組204進行工作量證明演算法時,會隨機的從DAG中讀取64次資料,每一筆資料是128 bytes。運算模組204會先隨機選擇一個初始值,然後從DAG中隨機讀取一筆資料。運算模組204將該初始值與從該DAG中讀取的該筆資料合併後,可透過雜湊函數SHA-3轉換為一中間產物。接著,該運算模組204再次從DAG中隨機讀取一筆資料,與該中間產物混合並執行下一次雜湊函數SHA-3。如此重複64次之後,運算模組204可以得到一個工作量證明。
如圖2所示,該計算機系統200是由一記憶體晶體層110,一邏輯電路層120和一基底130以Wafer on Wafer技術形成的晶圓堆疊。該記憶體晶體層110包含至少一記憶體裝置。該邏輯電路層120透過多個連接墊102與該記憶體裝置連接,包含一韌體202,一運算模組204連接該韌體202和該記憶體裝置,及一判斷模組206連接該運算模組204。
在進行記憶體測試時,基本上會將該記憶體裝置分為多個記憶體子區塊212,各別進行測試。在測試其中一個記憶體子區塊212時,首先在該記憶體子區塊212中建立一資料表。接著提供預先準備好的多個不同的初始值#N,以及每一初始值#N對應的已知解#A。每一初始值#N是該運算模組204進行工作量證明運算時所需的值。該運算模組204也可以使用外部輸入的雜湊值#H做為初始值。每次工作量證明運算可對該記憶體子區塊212中的資料表進行多次讀寫而產生對應每一初始值#N的多個運算結果。該判斷模組206從該運算模組204獲取該等運算結果後,並與對應的已知解#A比較,就能統計該受測記憶體子區塊212的錯誤率。
該判斷模組206計算出該記憶體子區塊212的錯誤率後,和一臨界值#T比較,以判斷該記憶體子區塊212的可用性為可用或不可用。之後,該判斷模組206將可用或不可用的記憶體子區塊212的編號#R記錄在韌體202中。舉例來說,在某些應用中,臨界值#T只需要80%。在較嚴格的應用中,臨界值#T可能要求99%或99.999%。
在本實施例中所提到的該工作量證明運算可以是一種乙太雜湊演算法。該資料表即為前述的有向無環圖DAG。為了使每一記憶體子區塊212中的記憶體單元完整受到測試,可透過運算模組204的程控配置,在該記憶體子區塊212中產生大小與該記憶體子區塊212一致的有向無環圖DAG。
進一步地,所述預先準備的初始值#N和對應的已知解#A,可以是出廠時預存在韌體202中,或是即時由外部輸入的值。
在本申請的計算機系統200的實施例中,有向無環圖DAG的初始大小可以是1GB。但有向無環圖DAG的大小會隨著區塊鏈上區塊的數量增加而增加。亦即,有向無環圖DAG的大小並非永遠是一個固定值,在實際應用上可隨著需求而增加或減少。
假設計算機系統200中的記憶體裝置總大小為4GB,我們可將記憶體裝置分為8192個記憶體子區塊212,每一個記憶體子區塊212的大小相同,為512千位元(Kilo Bytes; KB)。同時,將Ethash演算法中的有向無環圖DAG大小也配置為512KB。如此,跑一次Ethash演算法得到一個工作量證明的步驟,相當於從大小為512KB的記憶體子區塊212中,隨機讀取了64*128 bytes = 8KB的資料。在更進一步的做法中,每個記憶體子區塊212的分割大小可以彈性調整。舉例來說,如果一記憶體子區塊212經過測試後發現錯誤率偏高,可以將其切為更小的記憶體子區塊再各別進行測試,以縮小不可用的子區塊範圍,增加可用容量。
本實施例可預先準備多組已知結果的初始值,做為測試的樣本。當運算模組204使用一個記憶體子區塊212得到一個運算結果時,可將此運算結果與已知結果做比較。若兩者相同,則代表這一次隨機讀取的8KB的資料都是正確的。本實施例可重複利用不同的初始值來使運算模組204對同一記憶體子區塊212進行多次運算,以增加記憶體子區塊212中被存取的記憶體單元數量。可以理解的是,由於記憶體子區塊212中儲存的是一個有向無環圖DAG,使用一定數量以上的不同初始值對同一記憶體子區塊212進行多次測試運算後,便可以確認記憶體子區塊212中所有記憶體單元受到測試。同樣地,上述流程也可應用於記憶體裝置中8192個區域。測試出所有記憶體子區塊212中的可用之區域之後,該記憶體裝置便可用於後續之計算以及應用。
圖3中顯示的是本申請實施例所述的記憶體測試方法。在圖2的計算機系統200中所執行的步驟,可以總結為下列步驟。
在步驟301中,計算機系統200開始進行記憶體測試。在步驟303中,依序選擇該記憶體裝置中的其中一記憶體子區塊212進行測試。接著,步驟305到步驟309是重覆進行的。在步驟305中,依序使用多個預先準備的不同起始值,對該記憶體子區塊212進行工作量證明運算。在步驟307中,每次工作量證明運算的結果,與對應的已知解進行比對,以判斷運算結果是否正確。在步驟309中,判斷是否完成所有初始值的工作量運算。如果是,則繼續往下執行步驟311。如果尚有未使用的初始值,則重覆執行步驟305。
在步驟311中,計算記憶體子區塊212的資料錯誤率。由於已在步驟305至309中獲取了多個運算結果的正確和錯誤記錄,所以可以統計出記憶體子區塊212的資料錯誤率。在步驟313中,判斷模組206可根據資料錯誤率標記該記憶體子區塊為可用或不可用。
在步驟315中,確認是否完成記憶體裝置中所有記憶體子區塊212的測試。如果還有記憶體子區塊212未完成測試,則重覆執行步驟303至313。
在步驟317中,當所有記憶體子區塊212皆完成測試後,判斷模組206將判斷為可用或不可用的記憶體子區塊的標記資訊儲存在韌體中。可以理解的是,上述步驟僅為示例性說明,其中的執行順序可以合理的調動。本記憶體測試方法,可以在計算機系統200開機時進行,或是在計算機系統200處於閒置狀態時進行。本記憶體測試方法也可以在使用者要求時才觸發。
綜上所述,本申請實施例提出記憶體測試方法,以及適用於晶圓堆疊架構的計算機系統。利用運算模組204中原生的演算法搭配不同的初始值和已知解,即可直接根據運算模組204的運算結果來判斷記憶體裝置的可用性。本方法不需要在計算機系統200中另外設計測試邏輯,而且測試的效率也指數提升。
需要說明的是,在本文中,術語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者裝置不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、物品或者裝置所固有的要素。在沒有更多限制的情況下,由語句“包括一個……”限定的要素,並不排除在包括該要素的過程、方法、物品或者裝置中還存在另外的相同要素。
上面結合圖式對本申請的實施例進行了描述,但是本申請並不局限於上述的具體實施方式,上述的具體實施方式僅僅是示意性的,而不是限制性的,本領域的普通技術人員在本申請的啓示下,在不脫離本申請宗旨和權利要求所保護的範圍情況下,還可做出很多形式,均屬本申請的保護之內。
100:立體晶圓產品 102:連接墊 104:連接墊 110:記憶體晶體層 112:記憶體裝置 120:邏輯電路層 122:邏輯電路 130:基底 200:計算機系統 202:韌體 204:運算模組 206:判斷模組 210:記憶體裝置 212:記憶體子區塊 #R:編號 #N:初始值 #H:雜湊值 #T:臨界值 #A:已知解 301~317:步驟
此處所說明的圖式用來提供對本申請的進一步理解,構成本申請的一部分,本申請的示意性實施例及其說明用於解釋本申請,並不構成對本申請的不當限定。在圖式中: 圖1是本申請實施例的立體晶圓產品100。 圖2是本申請實施例的計算機系統200。 圖3是本申請實施例的記憶體測試方法流程圖。
200:計算機系統
110:記憶體晶體層
120:邏輯電路層
130:基底
202:韌體
204:運算模組
206:判斷模組
210:記憶體裝置
212:記憶體子區塊
#R:編號
#N:初始值
#H:雜湊值
#T:臨界值
#A:已知解

Claims (11)

  1. 一種記憶體測試方法,應用於一計算機系統中;其中該計算機系統包含至少一記憶體裝置,一韌體,一運算模組連接該韌體和該記憶體裝置,及一判斷模組連接該運算模組;其中該記憶體測試方法包含: 將該記憶體裝置分為多個記憶體子區塊; 在該多個記憶體子區塊中的一記憶體子區塊中建立一資料表; 提供多個不同的初始值,以及每一初始值對應的已知解; 該運算模組進行多次工作量證明運算,每次工作量證明運算根據該等初始值中的一初始值對該資料表進行多次讀寫而產生對應每一初始值的多個運算結果;以及 該判斷模組從該運算模組獲取該等運算結果,並與對應的已知解比較,以統計該記憶體子區塊的錯誤率。
  2. 如請求項1所述的記憶體測試方法,進一步包含: 該判斷模組將該記憶體子區塊的錯誤率和一臨界值比較,判斷該記憶體子區塊的一可用性。
  3. 如請求項2所述的記憶體測試方法,進一步包含: 該判斷模組根據該可用性的判斷結果,將該記憶體子區塊的編號記錄在該韌體中。
  4. 如請求項1所述的記憶體測試方法,其中: 該工作量證明運算是一種基於雜湊函數的區塊求解演算法;以及 該資料表是一有向無環圖。
  5. 如請求項4所述的記憶體測試方法,其中: 該有向無環圖的大小與該記憶體子區塊的大小一致;以及 該計算機系統基於晶圓堆疊架構,包含一記憶體晶體層,一邏輯電路層和至少一基底疊合為立體結構。
  6. 一種基於晶圓堆疊架構的計算機系統,包含: 至少一記憶體裝置; 一韌體; 一運算模組,連接該韌體和該記憶體裝置,對該記憶體裝置進行測試;以及 一判斷模組,連接該運算模組;其中: 當該運算模組將該記憶體裝置分為多個記憶體子區塊, 當該運算模組測試一記憶體子區塊時,在該記憶體子區塊中建立一資料表,並依序使用多個初始值進行一工作量證明運算,使該資料表被多次讀寫而產生對應該等初始值的多個運算結果,其中每一初始值對應一已知解;以及 該判斷模組從該運算模組獲取該等運算結果,並與對應的已知解比較,以統計該記憶體子區塊的錯誤率。
  7. 如請求項6所述的基於晶圓堆疊架構的計算機系統,其中該判斷模組將該記憶體子區塊的錯誤率和一臨界值比較,判斷該記憶體子區塊的一可用性。
  8. 如請求項7所述的基於晶圓堆疊架構的計算機系統,其中該判斷模組根據該可用性的判斷結果,將該記憶體子區塊的編號記錄在該韌體中。
  9. 如請求項6所述的基於晶圓堆疊架構的計算機系統,其中: 該工作量證明運算是一種基於雜湊函數的區塊求解演算法;以及 該資料表是一有向無環圖。
  10. 如請求項9所述的基於晶圓堆疊架構的計算機系統,其中: 該有向無環圖的大小與該記憶體子區塊的大小一致。
  11. 如請求項6所述的基於晶圓堆疊架構的計算機系統,進一步包含一記憶體晶體層,一邏輯電路層和至少一基底疊合為立體結構;其中: 該邏輯電路層透過多個連接墊與該記憶體裝置和該基底連接; 該韌體、該運算模組,及該判斷模組配置於該邏輯電路層中;以及 該記憶體裝置配置於該記憶體晶體層中。
TW110140475A 2021-10-29 2021-10-29 基於晶圓堆疊架構的計算機系統和記憶體測試方法 TWI773570B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
TW110140475A TWI773570B (zh) 2021-10-29 2021-10-29 基於晶圓堆疊架構的計算機系統和記憶體測試方法
CN202210733103.3A CN116072197A (zh) 2021-10-29 2022-06-27 基于晶片堆叠架构的计算机系统和存储器测试方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW110140475A TWI773570B (zh) 2021-10-29 2021-10-29 基於晶圓堆疊架構的計算機系統和記憶體測試方法

Publications (2)

Publication Number Publication Date
TWI773570B true TWI773570B (zh) 2022-08-01
TW202318431A TW202318431A (zh) 2023-05-01

Family

ID=83806894

Family Applications (1)

Application Number Title Priority Date Filing Date
TW110140475A TWI773570B (zh) 2021-10-29 2021-10-29 基於晶圓堆疊架構的計算機系統和記憶體測試方法

Country Status (2)

Country Link
CN (1) CN116072197A (zh)
TW (1) TWI773570B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117033198B (zh) * 2023-08-09 2024-05-31 云海链控股股份有限公司 一种软件测试方法、装置、设备以及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI506631B (zh) * 2011-05-26 2015-11-01
TWI604460B (zh) * 2015-07-14 2017-11-01 南亞科技股份有限公司 應用整合型非揮發性記憶體的電子裝置以及整合型非揮發性記憶體控制方法
US10242751B2 (en) * 2011-04-21 2019-03-26 Micron Technology, Inc. Method and apparatus for providing preloaded non-volatile memory content
US10410730B1 (en) * 2018-03-30 2019-09-10 Qualcomm Incorporated Selectively synchronizing flash memory block refreshes based in part upon memory block temperature

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10242751B2 (en) * 2011-04-21 2019-03-26 Micron Technology, Inc. Method and apparatus for providing preloaded non-volatile memory content
TWI506631B (zh) * 2011-05-26 2015-11-01
TWI604460B (zh) * 2015-07-14 2017-11-01 南亞科技股份有限公司 應用整合型非揮發性記憶體的電子裝置以及整合型非揮發性記憶體控制方法
US10410730B1 (en) * 2018-03-30 2019-09-10 Qualcomm Incorporated Selectively synchronizing flash memory block refreshes based in part upon memory block temperature

Also Published As

Publication number Publication date
TW202318431A (zh) 2023-05-01
CN116072197A (zh) 2023-05-05

Similar Documents

Publication Publication Date Title
US11687454B2 (en) Memory circuit and cache circuit configuration
TWI554883B (zh) 用於在記憶體系統中分割資料結構之系統及方法
US9953724B2 (en) Memory devices and methods for managing error regions
US9058897B2 (en) Semiconductor memory device storing memory characteristic information, memory module and memory system having the same, and operating method thereof
JP6050587B2 (ja) 可変式メモリリフレッシュ装置および方法
US10192633B2 (en) Low cost inbuilt deterministic tester for SOC testing
US8724423B1 (en) Synchronous two-port read, two-port write memory emulator
US20150261698A1 (en) Memory system, memory module, memory module access method, and computer system
CN110673980A (zh) 存储装置以及多芯片系统
WO2018058430A1 (zh) 一种可扩展内存的芯片
US8917571B2 (en) Configurable-width memory channels for stacked memory structures
CN112214448B (zh) 异质集成工作量证明运算芯片的数据动态重构电路及方法
KR20190070915A (ko) 분산된 gpu들을 위해 데이터 로컬리티를 개선하기 위한 매커니즘
TWI773570B (zh) 基於晶圓堆疊架構的計算機系統和記憶體測試方法
CN113643739A (zh) 一种llc芯片及缓存系统
JP2020087413A (ja) メモリシステム
WO2013097223A1 (zh) 多粒度并行存储系统与存储器
US20160358671A1 (en) Memory chip and stack type semiconductor apparatus including the same
US20140133209A1 (en) Memory architectures having wiring structures that enable different access patterns in multiple dimensions
US8788748B2 (en) Implementing memory interface with configurable bandwidth
CN216119560U (zh) 一种llc芯片及缓存系统
US11392313B2 (en) Memory controller and method thereof with built-in self-tester (BIST)
US11307793B2 (en) Memory controller, and method thereof
CN114610665A (zh) 存储器扩展卡
US9230686B2 (en) Semiconductor device having roll call circuit