TWI430085B - 具有分離循環冗餘碼訊框之有效率帶內可靠性技術的方法、積體電路與系統以及動態隨機存取記憶體裝置 - Google Patents

具有分離循環冗餘碼訊框之有效率帶內可靠性技術的方法、積體電路與系統以及動態隨機存取記憶體裝置 Download PDF

Info

Publication number
TWI430085B
TWI430085B TW098119371A TW98119371A TWI430085B TW I430085 B TWI430085 B TW I430085B TW 098119371 A TW098119371 A TW 098119371A TW 98119371 A TW98119371 A TW 98119371A TW I430085 B TWI430085 B TW I430085B
Authority
TW
Taiwan
Prior art keywords
frame
read
write
error bit
command
Prior art date
Application number
TW098119371A
Other languages
English (en)
Other versions
TW201003665A (en
Inventor
Kuljit S Bains
Original Assignee
Intel Corp
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 Intel Corp filed Critical Intel Corp
Publication of TW201003665A publication Critical patent/TW201003665A/zh
Application granted granted Critical
Publication of TWI430085B publication Critical patent/TWI430085B/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1004Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's to protect a block of data words, e.g. CRC or checksum
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/16Protection against loss of memory contents

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Computer Security & Cryptography (AREA)
  • Detection And Correction Of Errors (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Description

具有分離循環冗餘碼訊框之有效率帶內可靠性技術的方法、積體電路與系統以及動態隨機存取記憶體裝置 發明的技術領域
本發明的實施例係大致有關積體電路的技術領域,且更確切來說,本發明係有關用於具有分離循環冗餘碼(CRC)訊框之有效率帶內可靠性技術的系統、方法與裝置。
發明的技術背景
在動態隨機存取記憶體(DRAM)通道上傳輸資訊的速率持續地增快。此種較快速傳輸率需要針對改良式錯誤涵蓋範圍目的而使用多種機構。習知用以改良錯誤涵蓋範圍的方法包含把接腳加入到通道中。在現代記憶體系統中,DRAM通道具有接腳限制性。因此,習知用以改善錯誤涵蓋範圍的方法並不適於現代的記憶體系統。
發明的概要說明
依據本發明之一可行實施例,係特地揭露一種方法,其包含下列步驟:產生一錯誤位元核對和,以涵蓋針對多個資料位元的傳輸錯誤;把該等多個資料位元裝入到一寫入資料訊框中;經由一資料互連體的一或多個線道把該寫入資料訊框傳輸到一動態隨機存取記憶體(DRAM)裝置;把該錯誤位元核對和裝入到一寫入錯誤位元訊框中;以及經由該資料互連體的該一或多個線道把該寫入錯誤位元訊框傳輸到該DRAM裝置。
圖式的簡要說明
係以舉例方式展示出本發明的實施例,此種舉例方式不具限制性;在圖式中,相同的元件編號表示相似的元件。
第1圖以高階方塊圖展示出根據本發明一實施例實行之一種運算系統的多個選定面向。
第2圖展示出根據本發明一實施例實行之一種用以把資料訊框以及分離錯誤位元訊框寫入到一記憶體裝置之協定的多個選定面向。
第3圖展示出根據本發明一實施例實行之一種寫入錯誤位元訊框格式的多個選定面向。
第4圖展示出根據本發明一實施例實行之一種用於×4裝置之寫入錯誤位元訊框格式的多個選定面向。
第5圖以方塊圖展示出根據本發明一實施例實行之一種用於一記憶體裝置之寫入資料路徑的多個選定面向。
第6圖以方塊圖展示出根據本發明一實施例實行之一種用於一記憶體裝置之讀取資料路徑的多個選定面向。
第7圖以方塊圖展示出根據本發明一實施例實行之一種用於一主機之寫入資料路徑的多個選定面向。
第8圖以方塊圖展示出根據本發明一實施例實行之一種用於一主機之讀取資料路徑的多個選定面向。
第9圖以流程圖展示出一種用以把一或多個資料訊框以及一分離錯誤碼訊框(包含該一或多個資料訊框)寫入到一記憶體裝置之方法的多個選定面向。
較佳實施例的詳細說明
本發明實施例係大致有關用於具有分離循環冗餘碼(CRC)訊框之有效率帶內可靠性技術的系統、方法與裝置。在某些實施例中,一記憶體系統使用資料訊框以在一主機以及一記憶體裝置之間傳輸資料。該系統亦使用一分離訊框(例如,一CRC訊框)來傳輸涵蓋該等資料訊框的一CRC核對和。該資料訊框以及該CRC訊框在長度上可為一或多個使用者區間(UI),依據實行方案而定。例如,在某些實施例中,該CRC訊框的長度可為4個UI的倍數。例如,該等實施例可支援四倍速率時脈(quad rate clocking)。如以下進一步討論地,使用一分離CRC訊框的動作可令一記憶體系統能支援一種用於帶內CRC保護的有效率方法。
第1圖以高階方塊圖展示出根據本發明一實施例實行之一種運算系統的多個選定面向。在所展示的實施例中,系統100包括主機110(例如,一記憶體控制器)以及記憶體裝置120(例如,一DRAM)。在替代實施例中,系統100可包括較多元件、較少元件、及/或不同的元件。
記憶體裝置120包括CRC邏輯組件122。係參照利用CRC以針對傳輸錯誤提供錯誤涵蓋範圍的背景來解說本發明的實施例。然而,應該要瞭解的是,在替代實施例中,可使用一種不同錯誤位元機構。所謂的〝錯誤位元〞(例如,一CRC位元)係表示提供一或多個資料位元之錯誤涵蓋範圍的一位元。
在某些實施例中,CRC邏輯組件122令記憶體裝置120能支援一帶內CRC機構(例如,在DQ行104上)。所謂的〝帶內CRC機構〞係表示支援CRC(或其他錯誤位元方案)而不需要增加額外的接腳。例如,CRC邏輯組件122可包括用以分別地把來自該核對和所涵蓋之一或多個資料訊框的一CRC核對和予以訊框化的邏輯組件。在寫入方向,CRC邏輯組件122可令記憶體裝置120使一寫入CRC訊框與一寫入資料訊框(透過DQ匯流排104而接收到)分離。可把所接收到的寫入核對和與一本地產生的核對和(例如,在記憶體裝置120上產生)進行比較,以檢查是否有傳輸錯誤。為了解說方便,在本文中,係交替地使用〝互連體〞以及〝匯流排〞二個用語。
命令/位址(C/A)線道102提供用以把命令與位址傳送到記憶體裝置120的多個線道。DQ線道104提供一種雙向的讀取/寫入資料匯流排。在替代實施例中,DQ線道104可為單向性的。為了解說方便,係參照一種×8記憶體裝置來解說本發明的實施例。然而,應該要瞭解的是,本發明的實施例可包括其他裝置資料寬度,例如×4、×16、×32等。
主機110控制對記憶體裝置120傳輸資料以及從其傳送出資料的動作。在某些實施例中,主機110係受整合而與一或多個處理器位於相同的晶粒上。在其他實施例中,主機110為一運算系統之晶片組的部分。主機110包括CRC邏輯組件112。CRC邏輯組件112令主機110能支援一種帶內CRC機構。例如,CRC邏輯組件112令主機110能分別地把資料位元以及對應CRC位元予以訊框化。將經由DQ匯流排104把所得的資料訊框以及對應CRC訊框傳輸到記憶體裝置120。在讀取方向,主機110產生一本地CRC核對和,其可與來自記憶體裝置120的一CRC核對和進行比較,以判定所傳送的資料是否已遭竄改。
隨著DQ匯流排104上的傳輸率增加,便更需要CRC保護功能以緩和傳輸錯誤狀況。習知用以支援CRC的方法包括依據每8個資料接腳增加一個額外接腳。然而,在所展示的實施例中,並不需要增加額外的接腳,因為該等CRC核對和係以帶內方式傳輸(透過DQ匯流排104)。
主機110可發出多個用以控制與記憶體裝置120進行資料傳輸的不同命令。例如,係把用以傳輸資料的該寫入命令標示為〝W_d〞。在某些實施例中,係把一新進命令編碼動作界定為傳輸該寫入CRC訊框(例如,W_crc)。亦可界定傳輸一或多個資料訊框以及一相關聯CRC訊框的一個單一寫入命令(例如,W_d_crc)。
相似地,係把該讀取資料命令標示為〝R_d〞。將界定用以傳輸該讀取CRC訊框的一新進命令編碼(例如,R_crc)。該主機可(選擇性地)利用一單一命令(例如,R_d_crc)同時要求該讀取CRC訊框以及該讀取資料。
第2圖展示出根據本發明一實施例實行之一種用以把資料訊框以及分離錯誤位元訊框寫入到一記憶體裝置之協定的多個選定面向。第2圖展示出利用10個UI訊框的8項資料傳輸(元件202)。需要80個UI來完成此項異動(元件204)。第2圖的下半部展示出使用8個UI資料訊框的相同異動(元件206)以及位於末端的一個CRC訊框(元件208)。該CRC訊框(元件208)包含對應於該等8項資料傳輸的多個CRC位元。該CRC訊框的第一個UI(元件210)具有對應於第一資料訊框(例如,元件206A)的多個CRC位元,該CRC訊框的第二個UI(元件212)對應於第二資料訊框(元件206B)等。在所展示的實施例中,需要72個UI來傳輸8個資料訊框以及一個CRC訊框(元件214)。相較於使用80個UI(元件202)的基準來完成相同異動來說,已經有10%的改善。為了展示目的,係把該等寫入資料訊框顯示為連續的。該等寫入訊框可散開及/或與讀取訊框一同散置。
在某些實施例中,該主機可傳輸多個CRC訊框,其中僅使用該UI的一個子組。換言之,該等UI中的某些UI包含CRC位元,而其他UI則未包含。例如,第3圖展示出包括4個寫入資料訊框302以及1個寫入CRC訊框304的寫入異動300。CRC訊框304具有8個UI,但該等UI中僅有4個UI包含CRC位元(元件306),以涵蓋該等寫入資料訊框302中的資料。剩下的四個UI(元件308)包含未受使用的資料。在所展示的實施例中,該等未使用的UI(元件308)包含用以降低Vddq端接匯流排中之電力耗用狀況的所有UI。在某些實施例中,包括4項傳輸(例如,異動300)的一項異動使用40個UI。此情景與利用10個UI訊框之一項相似異動會使用的UI數量相同。
第2圖與第3圖展示出當中該等DRAM為x8裝置的實施例。在替代實施例中,可使用具有不同寬度的裝置(例如,x8、x16、x32等)。在某些實施例中,寬度為x16的裝置係被視為2個並行的x8裝置。因此,在某些實施例中,用於x8裝置以及x16裝置的協定實質上是相同的。在某些實施例中,針對x8裝置以及x16裝置二種來說,8位元的CRC涵蓋64位元的資料。該x16資料訊框具有128位元的資料,而一個8位元的CRC涵蓋該資料的上半部分而另外的8位元CRC涵蓋了該資料的下半部。
係參照寬度為8個UI的一個CRC訊框來解說上述的實施例。在替代實施例中,該CRC訊框在長度上可能較短(例如,以便改進效率)。例如,在某些實施例中,可實行一種寬度為4個UI的CRC訊框。在該種實施例中,該等CRC暫存器可為32位元暫存器。在其他的替代實施例中,該CRC訊框在長度上為4個UI的倍數。例如(除了4個UI以及8個UI之外),該CRC訊框的長度可為12個UI、16個UI、20個UI等。然而,在某些實施例中,使用一個長度為12個UI的CRC訊框可導致尖峰頻寬的效能損失狀況(例如,~33%)。
第4圖展示出根據本發明一實施例實行之一種用於x4裝置之寫入錯誤位元訊框格式的多個選定面向。第4圖展示出利用10個UI訊框的4項資料傳輸(元件402)。需要40個UI來完成此項異動(元件408)。第4圖的下半部展示出使用8個UI資料訊框的相同異動(元件404)以及位於末端的一個CRC訊框(元件406)。該CRC訊框(元件406)包含對應於該等8項資料傳輸的多個CRC位元。該CRC訊框(元件406)的前二個UI具有對應於該第一資料訊框(例如,元件410)的多個CRC位元,該CRC訊框的後二個UI對應於該第二資料訊框(例如,元件412)等。在所展示的實施例中,需要40個UI來傳輸8個資料訊框以及一個CRC訊框。為了展示目的,係把該等寫入資料訊框顯示為連續的。該等寫入訊框可散開及/或與讀取訊框一同散置。
第5圖以方塊圖展示出根據本發明一實施例實行之一種用於一記憶體裝置之寫入資料路徑的多個選定面向。記憶體裝置500包括命令解碼邏輯組件502、接收訊框化單元504、發佈寫入緩衝器506(選擇性)、記憶體陣列508、CRC引擎510、CRC暫存器512、以及比較器514。在替代實施例中,記憶體裝置500可包括較多元件、較少元件、及/或不同的元件。在某些實施例中,記憶體裝置500為一種動態隨機存取記憶體裝置(DRAM)。
在操作中,記憶體裝置500在C/A匯流排上(例如,C/A匯流排102,展示於第1圖)接收來自該主機(例如,主機110)的一寫入命令。接收訊框化單元504接收來自該DQ匯流排(例如,DQ匯流排104,展示於第1圖)的該等寫入資料訊框。該寫入資料被寫入到記憶體陣列508中。在某些實施例中,該寫入資料首先被發佈到發佈寫入緩衝器(PWB)506,且隨後被寫入到記憶體陣列508。在其他實施例中,該寫入資料係直接地被寫入到記憶體陣列508中。
亦可把該寫入資料提供給CRC產生器510,其計算一CRC核對和。在某些實施例中,係使用6個階層的XOR樹狀結構來計算該CRC核對和。在替代實施例中,可使用不同數量的樹狀結構或者使用一種不同演算法來產生該CRC核對和。在某些實施例中,該寫入資料路徑以及該讀取資料路徑使用相同的XOR樹狀結構來產生該CRC核對和。
CRC產生器510把該CRC核對和儲存在CRC暫存器512中。在某些實施例中,CRC暫存器512為一個64位元暫存器。可把CRC暫存器512的內容初始化為邏輯內容。接收訊框化單元504把來自一已接收CRC訊框的一CRC核對和提供給比較器514。比較器514比較所接收到的核對和以及本地產生的核對和。如果該等核對和並不相符,便傳送一錯誤信號到該主機。該主機如果接收到該錯誤信號,便可可再傳送該資料(以及相關聯CRC訊框)。
第6圖以方塊圖展示出根據本發明一實施例實行之一種用於一記憶體裝置之讀取資料路徑的多個選定面向。記憶體裝置600包括記憶體陣列602、發送(TX)訊框化單元604、CRC產生器606、CRC暫存器608、以及CRC失能邏輯組件610。在替代實施例中,記憶體裝置600可包括較多元件、較少元件、及/或不同的元件。在某些實施例中,記憶體裝置600為一種動態隨機存取記憶體裝置(DRAM)。
在操作中,記憶體裝置600在一C/A匯流排上(例如,C/A匯流排102)接收來自該主機(例如,主機110)的一讀取命令。係從記憶體陣列602讀取該資料,並把該資料提供給TX訊框化單元604。亦可把該讀取資料提供給CRC產生器606,其計算一CRC核對和。在某些實施例中,係使用6個階層的XOR樹狀結構來計算該CRC核對和。在替代實施例中,可使用不同數量的樹狀結構或者使用一種不同演算法來產生該CRC核對和。在某些實施例中,該讀取資料路徑以及該寫入資料路徑使用相同的XOR樹狀結構來產生該CRC核對和。
CRC產生器606把該CRC核對和儲存在CRC暫存器608中。在某些實施例中,CRC暫存器608為一種64位元暫存器。可把CRC暫存器608的內容初始化為邏輯內容。TX訊框化單元604接收來自產生器606的該核對和位元,並且把該核對和位元裝在一CRC訊框中。因此,記憶體裝置600可經由DQ匯流排612分別地把一或多個讀取資料訊框以及一對應CRC訊框傳輸到該主機。
記憶體裝置600包括CRC失能邏輯組件610。在某些實施例中,CRC失能邏輯組件610使記憶體裝置600無法使用一CRC。因此,在某些實施例中,可把記憶體裝置600組配成可使用具有讀取資料的一CRC核對和,或者可把記憶體裝置600組配成不使用具有讀取資料(及/或具有寫入資料)的一CRC核對和。在某些實施例中,CRC失能邏輯組件包括一模式暫存器組(MRS)的一部分。
第7圖以方塊圖展示出根據本發明一實施例實行之一種用於一主機之寫入資料路徑的多個選定面向。主機700包括核心邏輯組件702、CRC產生器704、CRC暫存器706、以及發送(TX)訊框化單元708。在替代實施例中,主機700包括較多元件、較少元件、及/或不同的元件。例如,核心邏輯組件702包括用以排程對主要記憶體進行之讀取與寫入動作的排程邏輯組件,以及用以在一傳輸錯誤發生時進行重試操作的重試邏輯組件。
例如,在操作中,核心邏輯組件702排程一項寫入操作,並且把該寫入資料提供給TX訊框化單元708以及CRC產生器704。CRC產生器704根據該寫入資料產生一CRC核對和,並且把該CRC核對和儲存在CRC暫存器706中。在某些實施例中,可使用6個階層的XOR樹狀結構來計算該CRC核對和。在替代實施例中,可使用不同數量的樹狀結構或者使用一種不同演算法來產生該CRC核對和。在某些實施例中,該寫入資料路徑以及該讀取資料路徑使用相同的XOR樹狀結構來產生該CRC核對和。在某些實施例中,CRC暫存器706為一種64位元暫存器。可把CRC暫存器706的內容初始化為邏輯內容。
TX訊框化單元708把該寫入資料裝入到一或多個寫入資料訊框中(例如,寫入資料訊框710)。此外,TX訊框化單元708把該CRC核對和(從CRC暫存器706接收到)裝入到一或多個分離CRC訊框中(例如,CRC訊框712)。係經由該DQ匯流排把該(等)寫入資料訊框以及該(等)CRC訊框傳輸到一或多個記憶體裝置(例如,DRAM)。
第8圖以方塊圖展示出根據本發明一實施例實行之一種用於一主機之讀取資料路徑的多個選定面向。主機800包括資料/CRC介面(I/F)804、CRC產生器806、比較器808、以及核心邏輯組件802。在替代實施例中,主機800包括較多元件、較少元件、及/或不同的元件。資料/CRC介面804提供介於主機800以及該DQ匯流排之間的一介面。介面804可包括數個驅動程式、接收器、時脈電路等。
在操作中,讀取資料訊框(例如,元件810)透過該DQ匯流排到達主機800。此外,涵蓋該等讀取資料訊框之資料的一或多個CRC訊框(元件812)到達主機800。資料/CRC介面804把該讀取資料提供給核心邏輯組件802(於元件805),並且提供給CRC產生器806(於元件807)。此外,介面804把所接收到的CRC核對和提供給比較器808(於元件809)。
CRC產生器806接收該讀取資料並且計算一〝本地〞CRC核對和。所謂的〝本地〞係用以區分該主機產生的CRC核對和以及該記憶體裝置產生的CRC核對和。比較器808比較該本地CRC核對和(例如,來自CRC產生器806)以及從該記憶體裝置接收到的CRC核對和。如果它們相符的話,輸出項811指出該資料是有效的。如果它們並不相符,輸出項811便提供一錯誤信號。
第9圖以流程圖繪示出一種用以把一或多個資料訊框以及一分離錯誤碼訊框(包含該一或多個資料訊框)寫入到一記憶體裝置之方法的多個選定面向。請參照處理方塊902,一主機(例如,一記憶體控制器)產生一錯誤位元核對和(例如,一CRC核對和),以涵蓋多個資料位元的傳輸錯誤。在某些實施例中,該主機包括用以產生該CRC核對和的一CRC產生器。該主機可針對該讀取資料路徑以及該寫入資料路徑使用相同的CRC樹狀結構。
請參照處理方塊904,發送訊框化邏輯組件(例如,發送訊框化單元604,展示於第6圖)把多個資料位元裝入一或多個資料訊框中。在某些實施例中,各個資料訊框在長度上為8個UI。在方塊906中,係經由一資料匯流排把該一或多個資料訊框傳輸到一記憶體裝置(例如,一DRAM)。
在方塊908中,該主機把該CRC核對和裝入到一CRC訊框中。在某些實施例中,該CRC訊框與該等資料訊框分離且不同。在方塊908中,係經由該資料匯流排把該CRC訊框傳輸給該DRAM。該CRC訊框可被稱為〝帶內〞,因為它係透過該等DQ接腳傳輸,而不是透過一或多個專用的CRC接腳。
在某些實施例中,該DRAM使用該主機提供的該CRC訊框來判定一傳輸錯誤是否已經發生。例如,該DRAM可產生一〝本地〞CRC核對和(根據所接收到的資料),並且比較該本地核對和以及所接收到的核對和。如果已發生了一項傳輸錯誤,該DRAM可發送一錯誤信號到該主機。請參照決策方塊912,如果該主機接收到一錯誤信號,它可再傳送該資料(方塊914)。替代地,如果該主機並未接收到一錯誤信號,該資料可能是有效的(方塊916)。
亦可把本發明實施例的元件備置為用以儲存機器可執行指令的機器可讀媒體。該機器可讀媒體包括但不限於:快閃記憶體、光碟片、小型碟片唯讀記憶體(CD-ROM)、數位多用途/視訊碟片(DVD)ROM、隨機存取記憶體(RAM)、可抹除可編程唯讀記憶體(EPROM)、電性可抹除可編程唯讀記憶體(EEPROM)、磁性或光學卡、傳播媒體或適於儲存電子指令的其他類型機器可讀媒體。例如,可把本發明實施例作為電腦程式以供下載,並且利用體現在載波或其他傳播媒體中的資料信號並透過通訊鏈路(例如,數據機或網路連結)從遠端電腦(例如,伺服器)傳輸到提出請求的電腦(例如,客戶機)。
在上面的說明中,係使用某些用語來解說本發明的實施例。例如,用語〝邏輯組件〞代表欲進行一或多個功能的硬體、韌體、軟體(或該等的任何組合)。例如,〝硬體〞的實例包括但不限於:一積體電路、一有限狀態機器、或甚至包括組合式邏輯組件。該積體電路可為一處理器的形式,例如一微處理器、一特定應用積體電路、一數位信號處理器、一微控制器等。
應該了解的是,本發明說明中所謂的〝一個實施例〞或〝一實施例〞表示的是參照實施例所述的一特定特徵、結構、或者特性係包括在至少一實施例中。因此,要強調且應該了解的是,本發明說明不同部分中出現的二或更多個〝一個實施例〞或〝一實施例〞或〝一替代實施例〞未必均表示相同的實施例。再者,在本發明的一或多個實施例中,可適當地結合特定特徵、結構或特性。
相似地,應該了解的是,在本發明實施例的前面說明中,有時將於單一實施例、圖式、或說明中把各種不同的特徵結合在一起,以協助了解本發明各種不同面向。然而,所揭露的方法並不應被解釋為反映出本發明請求項目需要多於清楚地在各個申請專利範圍說明的特徵。反之,如以下申請專利範圍反映地,本發明的面向少於前述單一揭露實施例的所有特徵。因此,伴隨在本發明詳細說明之後的申請專利範圍係依此併入到本發明詳細說明中。
100...系統
102...命令/位址(C/A)線道
104...DQ行/DQ匯流排
110...主機
112...CRC邏輯組件
122...CRC邏輯組件
120...記憶體裝置
200...協定
202..,資料傳輸
204...異動
206A~H...資料訊框
208...CRC訊框
210...第一個UI
212...第二個UI
214...CRC訊框
300...寫入異動
302A~D...寫入資料訊框
304...CRC訊框
306...CRC位元
308...UI
402...資料傳輸
404...異動
406...CRC訊框
408...異動
410...第一資料訊框
412...第二資料訊框
500...記憶體裝置
502...命令解碼邏輯組件
504...接收訊框化單元
506...發佈寫入緩衝器(PWB)
508...記憶體陣列
510...CRC引擎
512...CRC暫存器
514...比較器
600...記憶體裝置
602...記憶體陣列
604...發送(TX)訊框化單元
606...CRC產生器
608...CRC暫存器
610...CRC失能邏輯組件
612...DQ匯流排
700...主機
702...核心邏輯組件
704...CRC產生器
706...CRC暫存器
708...發送(TX)訊框化單元
710...寫入資料訊框
712...CRC訊框
800...主機
802...核心邏輯組件
804...資料/CRC介面(I/F)
805...提供讀取資料
806...CRC產生器
807...提供讀取資料
808...比較器
809...提供CRC核對和
810...讀取資料訊框
811...輸出項
812...CRC訊框
902~916..,步驟方塊
第1圖以高階方塊圖展示出根據本發明一實施例實行之一種運算系統的多個選定面向。
第2圖展示出根據本發明一實施例實行之一種用以把資料訊框以及分離錯誤位元訊框寫入到一記憶體裝置之協定的多個選定面向。
第3圖展示出根據本發明一實施例實行之一種寫入錯誤位元訊框格式的多個選定面向。
第4圖展示出根據本發明一實施例實行之一種用於x4裝置之寫入錯誤位元訊框格式的多個選定面向。
第5圖以方塊圖展示出根據本發明一實施例實行之一種用於一記憶體裝置之寫入資料路徑的多個選定面向。
第6圖以方塊圖展示出根據本發明一實施例實行之一種用於一記憶體裝置之讀取資料路徑的多個選定面向。
第7圖以方塊圖展示出根據本發明一實施例實行之一種用於一主機之寫入資料路徑的多個選定面向。
第8圖以方塊圖展示出根據本發明一實施例實行之一種用於一主機之讀取資料路徑的多個選定面向。
第9圖以流程圖展示出一種用以把一或多個資料訊框以及一分離錯誤碼訊框(包含該一或多個資料訊框)寫入到一記憶體裝置之方法的多個選定面向。
100...系統
102...命令/位址(C/A)線道
104...DQ行/DQ匯流排
110...主機
112...CRC邏輯組件
120...記憶體裝置
122...CRC邏輯組件

Claims (32)

  1. 一種用於具有分離循環冗餘碼(CRC)訊框之有效率帶內可靠性技術的方法,該方法包含下列步驟:透過在長度上為複數個使用者區間(UI)而產生一錯誤位元核對和,以涵蓋針對多個資料位元的傳輸錯誤;把該等多個資料位元裝入到一寫入資料訊框中,其中該寫入資料訊框在長度上為該UI的第一倍數;經由一資料互連體的一或多個線道把該寫入資料訊框傳輸到一動態隨機存取記憶體(DRAM)裝置;把該錯誤位元核對和裝入到一寫入錯誤位元訊框中,其中該寫入錯誤位元訊框在長度上為該UI的第二倍數;以及經由該資料互連體的該一或多個線道把該寫入錯誤位元訊框傳輸到該DRAM裝置,其中僅有在長度上為該等複數個UI的一個子組係被用來傳輸該寫入錯誤位元訊框至該DRAM裝置,其中該等UI中的某些UI包含該寫入錯誤位元訊框,且其中該等UI中的至少某些UI不包含該寫入錯誤位元訊框。
  2. 如申請專利範圍第1項之方法,其另包含下列步驟:接收表示至少部分地根據該錯誤位元核對和檢測到與該資料訊框相關聯之一傳輸錯誤的一指示;以及把該資料訊框再傳送到該DRAM裝置。
  3. 如申請專利範圍第1項之方法,其另包含下列步驟:發出指出欲把該寫入資料訊框寫入到該DRAM裝置中 的一第一寫入命令;以及發出指出欲把該寫入錯誤位元訊框寫入到該DRAM裝置中的一第二寫入命令。
  4. 如申請專利範圍第1項之方法,其另包含下列步驟:發出指出欲把該寫入資料訊框以及該寫入錯誤位元訊框寫入到該DRAM裝置中的一單一寫入命令。
  5. 如申請專利範圍第1項之方法,其另包含下列步驟:接收來自該DRAM裝置的一讀取資料訊框,該讀取資料訊框包括多個讀取資料位元;以及接收來自該DRAM裝置的一讀取錯誤位元訊框,其中該讀取錯誤位元訊框包括涵蓋該等多個讀取資料位元中之至少某些讀取資料位元的一核對和。
  6. 如申請專利範圍第5項之方法,其另包含下列步驟:發出指出欲從該DRAM裝置讀取該讀取資料訊框的一第一讀取命令;以及發出指出欲從該DRAM裝置讀取該讀取錯誤位元訊框的一第二讀取命令。
  7. 如申請專利範圍第5項之方法,其另包含下列步驟:發出指出欲從該DRAM裝置讀取該讀取資料訊框以及該讀取錯誤位元訊框的一單一讀取命令。
  8. 一種用於具有分離循環冗餘碼(CRC)訊框之有效率帶內可靠性技術的積體電路,該積體電路包含:錯誤位元產生邏輯組件,其具有欲透過在長度上為複數個使用者區間(UI)以傳輸到一動態隨機存取記憶體 (DRAM)裝置的多個寫入資料位元作為一輸入,並且具有用以涵蓋該等多個寫入資料位元的一寫入核對和作為一輸出;以及一訊框化單元,其用以根據該等寫入資料位元把一寫入資料訊框予以訊框化,其中該寫入資料訊框在長度上為該UI的第一倍數,並且根據該寫入核對和把一寫入錯誤位元訊框予以訊框化,其中該寫入錯誤位元訊框在長度上為該UI的第二倍數,其中僅有在長度上為該等複數個UI的一個子組係被用來傳輸該寫入錯誤位元訊框至該DRAM裝置,其中該等UI中的某些包含該寫入錯誤位元訊框,且其中該等UI中的至少某些不包含該寫入錯誤位元訊框。
  9. 如申請專利範圍第8項之積體電路,其另包含:用以對該DRAM裝置發出寫入命令的命令邏輯組件,其中該命令邏輯組件能夠發出用以指出正把一資料訊框寫入到記憶體的一寫入資料命令,以及用以指出正把一寫入錯誤位元訊框寫入到該DRAM裝置的一寫入錯誤位元命令。
  10. 如申請專利範圍第9項之積體電路,其中該命令邏輯組件能夠發出指出正把一資料訊框以及一錯誤位元訊框二者寫入到該DRAM裝置中的一單一寫入命令。
  11. 如申請專利範圍第8項之積體電路,其另包含:用以接收來自該DRAM裝置的一讀取資料訊框以及一讀取錯誤位元訊框的一接收訊框化單元,其中該讀取資 料訊框包括多個讀取資料位元,且該讀取錯誤位元訊框包括涵蓋該等多個讀取資料位元中之至少一部分讀取資料位元的一核對和;用以至少部分地根據該等多個讀取資料位元產生一本地核對和的邏輯組件;以及用以比較該本地核對和以及該本地核對和的比較邏輯組件。
  12. 如申請專利範圍第11項之積體電路,其另包含:用以對該DRAM裝置發出讀取命令的命令邏輯組件,其中該命令邏輯組件能夠發出指出正從記憶體讀取該讀取資料訊框的一讀取資料命令,以及指出正從該DRAM裝置讀取該讀取錯誤位元訊框的一讀取錯誤位元命令。
  13. 如申請專利範圍第12項之積體電路,其中該命令邏輯組件能夠發出指出正從該DRAM裝置讀取該讀取資料訊框以及該讀取錯誤位元訊框二者的一單一讀取命令。
  14. 如申請專利範圍第8項之積體電路,其另包含:用以選擇性地致能錯誤保護功能以涵蓋該等多個寫入資料位元的邏輯組件。
  15. 如申請專利範圍第8項之積體電路,其中係把該等多個寫入資料位元配置為一種跨越該寫入資料訊框之二或更多行的蜿蜒型樣。
  16. 一種用於具有分離循環冗餘碼(CRC)訊框之有效率帶內可靠性技術的系統,該系統包含:一主機,其包括: 錯誤位元產生邏輯組件,其具有欲透過在長度上為複數個使用者區間(UI)以傳輸到一動態隨機存取記憶體(DRAM)裝置的多個寫入資料位元作為一輸入,且具有用以涵蓋該等多個寫入資料位元的一寫入核對和作為一輸出;以及一訊框化單元,用以根據該等寫入資料位元把一寫入資料訊框予以訊框化,其中該寫入資料訊框在長度上為該UI的第一倍數,並且根據該寫入核對和把一寫入錯誤位元訊框予以訊框化,其中該寫入錯誤位元訊框在長度上為該UI的第二倍數;以及經由一記憶體互連體耦合至該主機的一動態隨機存取記憶體(DRAM)裝置,以接收來自該主機的該寫入錯誤位元訊框的傳輸,其中僅有在長度上為該等複數個UI的一個子組係被用來傳輸該寫入錯誤位元訊框至該DRAM裝置,其中該等UI中的某些包含該寫入錯誤位元訊框,且其中該等UI中的至少某些不包含該寫入錯誤位元訊框。
  17. 如申請專利範圍第16項之系統,其中該主機另包括:用以對該DRAM裝置發出寫入命令的命令邏輯組件,其中該命令邏輯組件能夠發出用以指出正把一資料訊框寫入到記憶體的一寫入資料命令,以及用以指出正把一寫入錯誤位元訊框寫入到該DRAM裝置的一寫入錯誤位元命令。
  18. 如申請專利範圍第17項之系統,其中該命令邏輯組件 能夠發出指出正把一資料訊框以及一錯誤位元訊框二者寫入到該DRAM裝置中的一單一寫入命令。
  19. 如申請專利範圍第16項之系統,其中該主機另包括:用以接收來自該DRAM裝置的一讀取資料訊框以及一讀取錯誤位元訊框的一接收訊框化單元,其中該讀取資料訊框包括多個讀取資料位元,且該讀取錯誤位元訊框包括涵蓋該等多個讀取資料位元中之至少一部分讀取資料位元的一核對和;用以至少部分地根據該等多個讀取資料位元產生一本地核對和的邏輯組件;以及用以比較該本地核對和以及該核對和的比較邏輯組件。
  20. 如申請專利範圍第19項之系統,其中該主機另包括:用以對該DRAM裝置發出讀取命令的命令邏輯組件,其中該命令邏輯組件能夠發出指出正從記憶體讀取該讀取資料訊框的一讀取資料命令,以及指出正從該DRAM裝置讀取該讀取錯誤位元訊框的一讀取錯誤位元命令。
  21. 如申請專利範圍第20項之系統,其中該命令邏輯組件能夠發出用以指出正從該DRAM裝置讀取該讀取資料訊框以及該讀取錯誤位元訊框二者的一單一讀取命令。
  22. 如申請專利範圍第16項之系統,其中該DRAM裝置包含:接收邏輯組件,其用以接收來自該主機的該寫入資料訊框以及該寫入錯誤位元訊框;寫入錯誤位元產生邏輯組件,其用以接收該寫入資料訊 框的該一或多個資料位元作為一輸入,並且提供一本地產生核對和作為一輸出;以及比較邏輯組件,其用以比較該核對和以及該本地產生核對和。
  23. 如申請專利範圍第22項之系統,其中該DRAM裝置另包含:用以提供一或多個讀取資料位元的一記憶體陣列;用以產生一讀取核對和的讀取錯誤位元產生邏輯組件;一發送訊框化單元,其用以根據該等讀取資料位元產生一讀取資料訊框,並且根據該讀取核對和產生一讀取錯誤位元訊框。
  24. 如申請專利範圍第23項之系統,其中該寫入錯誤位元產生邏輯組件以及該讀取錯誤位元產生邏輯組件為相同的。
  25. 如申請專利範圍第16項之系統,其中該主機係受整合於與一或多個處理器相同的晶粒上。
  26. 一種動態隨機存取記憶體(DRAM)裝置,其包含:用以透過在長度上為複數個使用者區間(UI)而接收來自一主機之一寫入資料訊框以及一寫入錯誤位元訊框的接收邏輯組件,其中該寫入資料訊框在長度上為該UI的第一倍數,其中該寫入錯誤位元訊框在長度上為該UI的第二倍數,其中該寫入錯誤位元訊框包括一核對和,以涵蓋該寫入資料訊框的一或多個資料位元,且其中僅有在長度上為 該等複數個UI的一個子組係被用來傳輸來自該主機之該寫入錯誤位元訊框至該DRAM裝置,其中該等UI中的某些UI包含該寫入錯誤位元訊框,且其中該等UI中的至少某些UI不包含該寫入錯誤位元訊框;用以接收該資料訊框的一或多個資料位元作為一輸入,並且提供一邏輯地產生之核對和作為一輸出的寫入錯誤位元產生邏輯組件;以及用以將該邏輯地產生之核對和與該核對和比較的比較邏輯組件。
  27. 如申請專利範圍第26項之裝置,其另包含:用以提供一或多個讀取資料位元的一記憶體陣列;用以產生一讀取核對和的讀取錯誤位元產生邏輯組件;一發送訊框化單元,其用以根據該等讀取資料位元產生一讀取資料訊框,並且根據該讀取核對和產生一讀取錯誤位元訊框。
  28. 如申請專利範圍第27項之裝置,其中該寫入錯誤位元產生邏輯組件以及該讀取錯誤位元產生邏輯組件為相同的。
  29. 如申請專利範圍第27項之裝置,其中該讀取資料訊框為M個使用者區間(UI)長。
  30. 如申請專利範圍第29項之裝置,其中M為8。
  31. 如申請專利範圍第29項之裝置,其中該讀取錯誤位元資料訊框為N個UI長。
  32. 如申請專利範圍第31項之裝置,其中N為4的倍數。
TW098119371A 2008-06-16 2009-06-10 具有分離循環冗餘碼訊框之有效率帶內可靠性技術的方法、積體電路與系統以及動態隨機存取記憶體裝置 TWI430085B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US12/139,610 US8321778B2 (en) 2008-06-16 2008-06-16 Efficient in-band reliability with separate cyclic redundancy code frames

Publications (2)

Publication Number Publication Date
TW201003665A TW201003665A (en) 2010-01-16
TWI430085B true TWI430085B (zh) 2014-03-11

Family

ID=41415877

Family Applications (1)

Application Number Title Priority Date Filing Date
TW098119371A TWI430085B (zh) 2008-06-16 2009-06-10 具有分離循環冗餘碼訊框之有效率帶內可靠性技術的方法、積體電路與系統以及動態隨機存取記憶體裝置

Country Status (6)

Country Link
US (1) US8321778B2 (zh)
EP (1) EP2297641B1 (zh)
KR (2) KR20120134157A (zh)
CN (1) CN101978356A (zh)
TW (1) TWI430085B (zh)
WO (1) WO2010005661A2 (zh)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8321778B2 (en) 2008-06-16 2012-11-27 Intel Corporation Efficient in-band reliability with separate cyclic redundancy code frames
CN104471645B (zh) * 2012-03-26 2017-04-12 英特尔公司 采用检错编码的事务的存储器设备的定时优化装置和方法
KR101984902B1 (ko) 2012-09-14 2019-05-31 삼성전자 주식회사 단방향의 리턴 클락 신호를 사용하는 임베디드 멀티미디어 카드, 이를 제어하는 호스트, 및 이들을 포함하는 임베디드 멀티미디어 카드 시스템의 동작 방법
US9299400B2 (en) 2012-09-28 2016-03-29 Intel Corporation Distributed row hammer tracking
CN107534592B (zh) * 2015-04-30 2020-07-03 大陆-特韦斯贸易合伙股份公司及两合公司 用于保护数据总线收发器的配置数据的方法、数据总线收发器和数据总线系统
CN105389229B (zh) * 2015-10-29 2018-09-25 中国科学院微电子研究所 适用于64位总线位宽的crc校验电路及校验方法
US9996414B2 (en) * 2016-07-12 2018-06-12 International Business Machines Corporation Auto-disabling DRAM error checking on threshold
KR20180063475A (ko) 2016-12-02 2018-06-12 삼성전자주식회사 반도체 장치의 오류 검출 코드 생성 회로, 이를 포함하는 메모리 컨트롤러 및 반도체 메모리 장치
US10678633B2 (en) * 2017-11-30 2020-06-09 SK Hynix Inc. Memory system and operating method thereof
US11994943B2 (en) 2018-12-31 2024-05-28 Lodestar Licensing Group Llc Configurable data path for memory modules
CN112948167B (zh) * 2021-03-31 2022-10-18 地平线征程(杭州)人工智能科技有限公司 数据通路的保护电路、方法、装置及计算机可读存储介质
KR20220139199A (ko) 2021-04-07 2022-10-14 삼성전자주식회사 반도체 메모리 장치 및 이를 포함하는 메모리 시스템
US11855655B2 (en) * 2021-09-28 2023-12-26 Texas Instruments Incorporated Serial communications module with CRC
US12009835B2 (en) * 2022-07-22 2024-06-11 Micron Technology, Inc. Command address fault detection
US12079078B2 (en) * 2022-08-16 2024-09-03 Micron Technology, Inc. Command address fault detection

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6278645B1 (en) * 1997-04-11 2001-08-21 3Dlabs Inc., Ltd. High speed video frame buffer
US6519733B1 (en) * 2000-02-23 2003-02-11 International Business Machines Corporation Method and apparatus for high integrity hardware memory compression
US20040027261A1 (en) * 2002-03-15 2004-02-12 Tymchuk Kevin Bruce Centrally synchronized distributed switch
US7219294B2 (en) * 2003-11-14 2007-05-15 Intel Corporation Early CRC delivery for partial frame
WO2007035260A1 (en) * 2005-09-15 2007-03-29 Analog Devices, Inc. High speed transmission system
US7774684B2 (en) * 2006-06-30 2010-08-10 Intel Corporation Reliability, availability, and serviceability in a memory device
US7757064B2 (en) 2006-09-07 2010-07-13 Infineon Technologies Ag Method and apparatus for sending data from a memory
US8321778B2 (en) 2008-06-16 2012-11-27 Intel Corporation Efficient in-band reliability with separate cyclic redundancy code frames

Also Published As

Publication number Publication date
KR20110003328A (ko) 2011-01-11
EP2297641A4 (en) 2012-08-29
WO2010005661A3 (en) 2010-03-04
EP2297641B1 (en) 2015-01-21
EP2297641A2 (en) 2011-03-23
KR101251100B1 (ko) 2013-04-04
WO2010005661A2 (en) 2010-01-14
CN101978356A (zh) 2011-02-16
TW201003665A (en) 2010-01-16
KR20120134157A (ko) 2012-12-11
US8321778B2 (en) 2012-11-27
US20090313533A1 (en) 2009-12-17

Similar Documents

Publication Publication Date Title
TWI430085B (zh) 具有分離循環冗餘碼訊框之有效率帶內可靠性技術的方法、積體電路與系統以及動態隨機存取記憶體裝置
EP3702927B1 (en) Flit-based parallel-forward error correction and parity
US8327105B2 (en) Providing frame start indication in a memory system having indeterminate read data latency
KR101080498B1 (ko) 동일 계층 레벨에 휘발성 및 비휘발성 메모리 장치들을 구비하는 메모리 시스템 및 방법
US7624225B2 (en) System and method for providing synchronous dynamic random access memory (SDRAM) mode register shadowing in a memory system
US20190065237A1 (en) Transaction identification synchronization
KR101093857B1 (ko) 공통 프레임에서 공유 에러 비트 코드와 함께 데이터 및 데이터 마스크 비트들을 전송하기 위한 시스템, 방법 및 장치
US8392796B2 (en) Reliability, availability, and serviceability solution for memory technology
US20140250348A1 (en) Controller and Method for Interfacing Between a Host Controller in a Host and a Flash Memory Device
JP5301668B2 (ja) インバンドのデータ・マスク・ビットの転送システム、方法、及び装置
JP5753988B2 (ja) エラー検出方法および1つまたは複数のメモリデバイスを含むシステム
CN105373345B (zh) 存储器设备和模块
KR100195856B1 (ko) 양방향 동기 다중 드롭 데이터 버스를 갖는 데이터처리시스템
EP4202685A1 (en) Algebraic and deterministic memory authentication and correction with coupled cacheline metadata
TW201403600A (zh) 採用錯誤偵測編碼處理之用於記憶體裝置的時序優化
JP2011043980A (ja) アクセス制御装置、アクセス制御方法、アクセス制御システム及び周辺装置

Legal Events

Date Code Title Description
MM4A Annulment or lapse of patent due to non-payment of fees