JP5399442B2 - 時間多重化誤り訂正符号化をサポートするメモリ・トランザクション・バースト動作及びメモリ装置 - Google Patents

時間多重化誤り訂正符号化をサポートするメモリ・トランザクション・バースト動作及びメモリ装置 Download PDF

Info

Publication number
JP5399442B2
JP5399442B2 JP2011115561A JP2011115561A JP5399442B2 JP 5399442 B2 JP5399442 B2 JP 5399442B2 JP 2011115561 A JP2011115561 A JP 2011115561A JP 2011115561 A JP2011115561 A JP 2011115561A JP 5399442 B2 JP5399442 B2 JP 5399442B2
Authority
JP
Japan
Prior art keywords
data
burst
ecc
error correction
cycles
Prior art date
Legal status (The legal status 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 status listed.)
Expired - Fee Related
Application number
JP2011115561A
Other languages
English (en)
Other versions
JP2011243206A (ja
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 インテル コーポレイション
Publication of JP2011243206A publication Critical patent/JP2011243206A/ja
Application granted granted Critical
Publication of JP5399442B2 publication Critical patent/JP5399442B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C5/00Details of stores covered by group G11C11/00
    • G11C5/02Disposition of storage elements, e.g. in the form of a matrix array
    • G11C5/04Supports for storage elements, e.g. memory modules; Mounting or fixing of storage elements on such supports
    • 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
    • G11C29/38Response verification devices
    • G11C29/42Response verification devices using error correcting codes [ECC] or parity check
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0877Cache access modes
    • G06F12/0879Burst mode
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/28Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
    • G06F13/287Multiplexed DMA
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1006Data managing, e.g. manipulating data before writing or reading out, data bus switches or control circuits therefor
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1015Read-write modes for single port memories, i.e. having either a random port or a serial port
    • G11C7/1018Serial bit line access mode, e.g. using bit line address shift registers, bit line address counters, bit line burst counters
    • G11C7/1027Static column decode serial bit line access mode, i.e. using an enabled row address stroke pulse with its associated word line address and a sequence of enabled bit line addresses
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1051Data output circuits, e.g. read-out amplifiers, data output buffers, data output registers, data output level conversion circuits

Description

本発明は一般に、ディジタル・メモリのシステム、構成部分及び方法に関し、特に、バースト・メモリ・トランザクションにおいて誤り訂正符号化データを多重化することができるメモリ・システム構成部分に関する。
マイクロプロセッサなどのディジタル・プロセッサは、コンピュータ・メモリ・サブシステムを用いて、データ及びプロセッサ命令を記憶する。一部のプロセッサはメモリと直接通信し、他のプロセッサは専用コントローラ・チップ(多くの場合、「チップセット」の一部)を用いてメモリにアクセスする。
通常のコンピュータ・メモリ・サブシステムは多くの場合、メモリ・モジュールを用いて実現される。図1に示すコンピューティング・システム100を参照すれば、プロセッサ120は、種々の周辺装置にプロセッサ120を結合するメモリ・コントローラ/ハブ(MCH)130とフロントサイド・バス125を介して通信する。前述の周辺装置の1つは、メモリ・モジュールMM0として示すシステム・メモリである。メモリは、全システムにおける前述のモジュ―ル上に配置しなくてよいが、モジュールを多くのシステムにおいて用いて、モジュールをより大きな容量のモジュールと置き換えることによって、かつ/又は更なるメモリ・スロットに更なるモジュール(図示せず)を追加することによってメモリ拡張を可能にする。接続されると、メモリ・モジュールMM0は、MCH130がアドレス/コマンド(ADD/CMD)バス150上で適切な信号をアサートする都度、MCH130からアドレス指定される。MCH130と、メモリ・モジュールの1つとの間のデータ転送はデータ・バス140上で行われる。
通常、メモリ・モジュールは複数の半導体メモリ装置を用いて構築される。個々の装置それぞれは、モジュールに記憶された各データ語の一部分を記憶する。例えば、メモリ・モジュールMMOは、5個のダイナミック・ランダムアクセス・メモリ(DRAM)装置DRAM0乃至DRAM4を示す。各DRAM装置は、ADD/CMDバス150から同じアドレス及びコマンド信号を受信する。各DRAM装置は、データ・バス140を構成する信号線部分集合DQnに接続し、DRAM0は16本のバス線DQ0乃至DQ15に接続し、DRAM1はDQ16乃至DQ31に接続し、DRAM2はDQ32乃至DQ47に接続し、DRAM3はDQ48乃至DQ63に接続し、DRAM4はDQ64乃至DQ71に接続する。よって、72ビットのデータが、データ・サイクル中にデータ・バス140を介して転送されると、DRAM4を除いて、各DRAMはそのビットのうちの16ビットの原因となる。DRAM4は8ビット(通常、DRAM4の他の8つのDQn入力は、接続されていないに過ぎず、DRAM4の半分はアクセス可能でない)の原因となる。各DRAMは、72ビットの語のその割り当てられた部分を、他のDRAMそれぞれが72ビットの語のその部分を記憶するのと同じチップ場所に記憶する。
図1の例では、各アドレス指定可能データ語のサイズは72ビットである。前述のビットの64ビットを用いてデータを記憶する。更なる8ビットを用いて、同じアドレスを有する64ビットのデータに対応する誤り訂正符号化(ECC)情報を記憶する。例えば、DRAM4をECCの記憶に特化することが可能であり、DQ64-DQ71はその場合、ECC情報を記憶し、取り出すのに用いられる。他のシステムは、他のバス幅を用いることができる。36ビットも一般的である(バスは32個のデータ・ビット・レーン及び4つのECCビット・レーンに分けられる)。
現在の多くのメモリ装置及びコントローラは、単一のコマンドによって、順次記憶されている複数のデータ語を併せてアクセスすることを可能にするバースト・モードを提供する。図2は、図1のECCメモリ・モジュールMM0を用いた16ワードのバースト・モード・データ転送のタイミング図を示す。MCH130は、開始アドレス、及び、バースト・モード16の読み出し又は書き込みのコマンドをモジュールMM0に供給する。コマンドが読み出しコマンドの場合、モジュールMM0上のDRAMはそれぞれ、開始アドレスを含んでいるワード線に接続されたデータ記憶セルを読み出し、次いで、データ・バス140上の開始アドレス及び連続した15個の後続アドレスからのデータを16の連続データ・サイクルにわたって駆動させる。コマンドが書き込みコマンドの場合、MCH130は、16の連続データ・サイクルにわたって書き込みデータを供給する。モジュールMM0上のDRAMは、その書き込みデータを受信し、バッファリングし、次いで、ワード線における連続したメモリ場所に、開始アドレスから始めて書き込む。
DRAM4は、前述のバースト・コマンドの間、他のDRAM全てと同様にふるまい、そのデータを用いてDRAM0乃至DRAM3に記憶されたデータに対してECC機能を行うことができることを知らなくてよい。例えば、時間スロットT0の間、データ「A」及びECCデータ「A」が送信される。ここで、「A」は、MCH130によって規定される開始アドレスにおけるデータを表す。時間スロットT1の間、データ「B」及びECCデータ「B」が送信される。ここで、「B」は、「A」アドレスに連続して後続するアドレスにおけるデータを表す。
システム全てが前述のECC保護を用いる訳でない。ECC保護はより広いデータ・バスを必要とし、通常、メモリ・ランク毎に余分のメモリ・チップを必要とする(例えば、DRAM4やDQ64‐DQ71は、64ビットの非ECCシステムでは必要になるものでない。更に、ECCは一般に、(誤り検査機能によって)レーテンシを増加させ、(要求される余分なチップによって)電力消費を増加させる。非ECCシステムはさもなければ、前述のように機能する。但し、次の場合は除く(例えば、メモリ・コントローラは、読み出し動作においてDRAM0-DRAM3から受け取られるデータのデータ・インテグリティを信用する)。よって、ECC及び非ECCメモリ・モジュールは、相互に交換可能でない。現在、前述の欠点が主な理由で、ECCシステムより多くの非ECCシステムが生産されている。
本明細書は、ECC可能なメモリ・システム構成部分を提供する新たな手法に関する。
実施例は、添付図面を参照して本明細書を読むことによって最も深く理解することができる。
従来技術のコンピュータ・システムのプロセッサ及び一部のメモリ・システム構成部分を示す図である。 図1のデータ・バス上のバースト・モード・データ転送のタイミング図である。 本発明の実施例によるコンピュータ・システムのプロセッサ及び一部のメモリ・システム構成部分の構成図である。 本発明の実施例による、誤り訂正バースト・モード・データ転送のタイミング図である。 本発明の実施例による、誤り訂正バースト・モード・データ転送のタイミング図である。 本発明の実施例による、誤り訂正バースト・モード・データ転送のタイミング図である。 A、B、Cは本発明の実施例による、誤り訂正バースト・モード・データ転送のタイミング図である。 本発明の実施例による、DRAM装置の構成図である。
この手法は、専用のECCメモリ装置及び専用のECCビット・レーンに対する要求を避けることが可能になる。それによって、ECCモジュールと非ECCモジュールとの間の互換性が少なくとも一部の実施例において可能になる。専用のECC装置及びビット・レーンの代わりに、本願明細書において記載されている実施例では、データ・ビット・レーンを介したバースト・モード転送の間、システム・データがECCデータと時間多重化され、メモリ・コントローラ及びメモリ装置が、所定のやり方で混合データ/ECCバースト転送を扱うことに対して責任がある。特定の実施例では、メモリ装置は、ECCおよび非ECCバーストの転送モードによって設計される(ECCシステムにおいても非ECCシステムにおいても、他のデータについてではないが特定の重要データについてECC保護に依存するシステムにおいてでさえも、交換可能にモジュールを用いることが可能になる)。好ましい実施例は、ECCデータが、アドレス指定可能なメモリ空間を占めないが、アドレス指定可能なメモリ空間に関連した内部的にアドレス指定可能なメモリ領域に記憶されるメモリ構造を用いる。
実施例の紹介として、図3は、メモリ・コントローラ330に結合されたプロセッサ320を組み入れたコンピューティング・システム300を示す。プロセッサ320及びメモリ・コントローラ330は、単一の回路上に集積することが可能であるか、又は、図1に表したものと同様にフロントサイド・バスによって接続された別個の回路上に常駐し得る。メモリ・コントローラ330は同様に、アドレス/コマンド・バス350及びデータ・バス340によってバイモーダル・メモリ・モジュールBMM0に接続される。データ・バス340は、64個のビット・レーンDQ0乃至DQ63を有するものとして示しているが、これは例示に過ぎない。他の実施例は、例えば、16、32や128のデータ・バス・ビット・レーンを用いる。バイモーダル・メモリ・モジュールBMM0は、本発明のメモリ装置実施例において以下に更に説明する4つの誤り訂正バースト・モード(ECB)DRAM(ECB-DRAM0、ECB-DRAM1、ECB-DRAM2及びECB-DRAM3)を含む。誤り訂正バースト・モードを用いたシステム実施例では、メモリ・コントローラ330は、誤り訂正バースト・モード・データを受信し、送信するよう設計される。しかし、従来技術の非ECCバースト・モードのみを用いた特定のシステム実施例では、従来技術の非ECCメモリ・コントローラをモジュールBMM0に結合することが可能である。
メモリ・コントローラ330及びECB DRAMのシステム・レベル機能は、データ・バス340を介した誤り訂正バースト・モード・データ伝送のタイミング図を検査することによってより深く理解することが可能である。まず図4A及び図4Bを参照すれば、「誤り訂正バースト・モード18A」の18個のデータ・サイクルT0-T17を表す。この例では、前述の18個のデータ・サイクルは、図2の従来技術のコンピュータ・システム100によって転送された同じ16個の72ビット・データ語A乃至Pを転送する。しかし、重要なことには、図4は、従来技術のように72個のビット・レーン及び16個のデータ・サイクルの代わりに転送に64ビット・レーン及び18個のデータ・サイクルを用いる。更に、データ語と同時にデータ語のECC符号化を転送する代わりに、データの時間配置が図2から修正される。
今度は、BMM0との間のデータの読み書きを検討する。まず図4Aの読み出しデータ・サイクルT0をみれば、ECCデータのみがT0中に転送されることがわかり得る。データ・サイクルT0中に、ECCデータA及びCがECB-DRAM0から転送される。このECCデータはそれぞれ、全てのECB DRAMによってデータ・サイクルT2中に転送されるデータA及び全てのECB DRAMによってデータ・サイクルT4中に転送されるデータCに対応する。更に、データ・サイクルT0中に、ECCデータE及びGがECB-DRAM1によって転送される。このECCデータはそれぞれは、全てのECB DRAMによってデータ・サイクルT6中に転送されるデータE及び全てのECB DRAMによってデータ・サイクルT8中に転送されるデータGに対応する。同様に、T0中にECB-DRAM2及びECB-DRAM3は、データ・サイクルT10、T12、T14及びT16中にECB-DRAM全てによって転送されるデータにそれぞれ対応するECCデータI、K、M及びOを送信する。
次にデータ・サイクルT1をみれば、やはりECCデータのみがT1中に転送されることが分かり得る。転送されるECCデータは、残りの奇数データ・サイクル(例えば、T3、T5、T7、T9、T11、T13、T15及びT17)中に転送されるデータに対応する。
メモリ・コントローラ330は、ECCデータをT0及びT1中に受信すると、16個の8ビットECCレジスタを含むECCレジスタ・バンク335にそのデータを転送する。更に、データがメモリ・コントローラ330によってT2において受信されると、ECCデータ「A」が、バンク335内のそのレジスタから取り出され、データAに対して誤り訂正を行うのに用いられる。データがメモリ・コントローラ330によってT3において受信されると、ECCデータ「B」が、バンク335内のそのレジスタから取り出され、データBに対して誤り訂正を行うのに用いられる。この処理は、データ・サイクルT17まで続く。データ・サイクルT17では、ECCデータ「P」が、最後のECCレジスタから読み出され、データPに対して誤り訂正を行うのに用いられる。誤り訂正データ語A乃至Pは、プロセッサ320によってメモリ・コントローラ330に、又は、直接メモリ・アクセス(DMA)コマンドによってデータを要求した特定の別の周辺装置に転送される。
誤り訂正がデータ語A乃至Pに望まれなかった場合、最初の2つのデータ・サイクルがないこと以外は図4に表すものと同じデータ転送を用いることが可能である。
BMM0にデータを書き込む場合、図4Bに示すデータ・サイクル構造を一実施例において用いる。データ語A乃至Pは、データ・サイクルT0乃至T15中に全ECB DRAMそれぞれに転送される。メモリ・コントローラ330は、伝送するための各データ語を作成すると、対応するECCデータを算出し、そのECCデータを、前述のバンク335内の16個のECCレジスタの1つに記憶する。更に、データ・サイクルT16中に、ECCデータA、C、E、G、I、K、M及びOが、図示したようにECB DRAMに転送される。データ・サイクルT17中に、残りのECCデータB、D、F、H、J、L、N及びPが、図示したようにECB DRAMに転送される。
ECCデータの特定の配列は例示である。例えば、第1のECCデータ・サイクル中にECCデータ値A乃至Hを転送することが可能であり、第2のECCデータ・サイクル中にECCデータ値I乃至Pを転送することが可能である。メモリ・コントローラ330が読み出し及び書き込みと整合している限り、如何なる好都合な配列も利用することが可能である。まもなく説明するように、本願記載の実施例では、ECB DRAMには、データ・サイクル形式のみが分かればよく、ECCデータがメモリ・コントローラによってメモリ装置に割り当てられる方法は分からなくてよい。
図5は、別のバースト・モード18Bを示す。このバースト・モードでは、1つのECCデータ・サイクルに、対応する8個のデータ・サイクルを割り込ませている。ECCデータ・サイクル中に、対応する8個のサイクル毎のECCデータが伝送される。一実施例では、データ・サイクルT0中に、次の8個のサイクルT1-T8中に伝送される対象であるデータ語A-Hに対応するECCデータが転送される。次いで、データ・サイクルT9中に、データ語I乃至Pに対応するECCデータが転送され、次いで、データ・サイクルT10-T17中に、データ語I乃至Pが転送される。図5は、連結された2つの9データ・サイクル・バーストから成る。これは、このモードを、半分の転送を行うことによるバースト・モード9の転送に用いることも可能であることを示唆している。更に、ユーザ・データの8個のデータ・サイクルが最初に転送され、次いで、ユーザ・データの8個のデータ・サイクルに対応するECCデータの1つのデータ・サイクルが転送されるように、バースト・モード18Bを書込み動作について修正することが可能である。
前述のタイミング実施例は、データ・サイクルにおいて転送することが可能なECC値の数と、対応するデータのバースト長との間に整数関係が存在している状態を例証している。図6A乃至図6Cは、これが必ずしもあてはまらない実施例を示す。
図6Aでは、メモリ・コントローラ330は、誤り訂正バースト・モード5転送を要求する。これは、一データ・サイクルのECCデータ及び4データ・サイクルのユーザ・データをECB DRAMから転送する。この転送は、図5の最初の5個のデータ・サイクルと同一であるが、データ・サイクルT4の後が切り捨てられる。ECB-DRAM2及びECB-DRAM3から受信されたECCデータE-Hは「ドントケア」データである。これは、メモリ・コントローラ330によってECCレジスタ・バンク335に転送され、ロードされるが、用いられることは決してない。
この例の場合、ECB-DRAMに供給される列アドレスを0xC80とする。ここで、0xは16進の表記法を表し、ユーザ・データ「A」は、列アドレス0xC80及び特定の行アドレスRAにおいて記憶される。ECCデータ「A」及び「B」には、ECB-DRAM0メモリにおいて行アドレスRA及び列アドレス0xC80-87と関連付けられる。ECB-DRAM0メモリ・アレイからのそのアドレス範囲における如何なるユーザ・データの取り出しも、行アドレスRA及び列アドレス0xC8[0b0XXX]と関連付けされたECCメモリ・アレイ要素からのECCデータ「A」及び「B」の取り出しをもたらす。括弧内の値は、2進法(0b)の表記法であり、「X」は、ドントケア・ビットを表す。同様に、ECCデータ「I」及び「J」が、行アドレスRA及び列アドレス0xC8[0b1XXX]に関連付けられたECCメモリ・アレイ要素に記憶される。通常のユーザECCバースト・モードでは、メモリ・コントローラは、前述のECCメモリ・アレイ要素を明示的にアドレス指定することが可能でないが、コントローラには、対応するユーザ空間アドレス指定におけるユーザ・データが供給される際に、前述のECCメモリ・アレイ要素がECCモードにおいてアクセスされることが分かっている。
更に、バーストが2つのECC連結にわたる(例えば、図4Aの4語バーストG-Jを要求する)場合、1データ・サイクル、バーストを増やし、両方のECC連結を供給するようメモリ・システムを設計することが可能である。
図6A、6B及び6Cそれぞれでは、メモリ・モジュールBMM0は、同じECCデータを戻すが、別々のユーザ・データを戻す。列アドレスの低位ビットに応じて、メモリ・コントローラは、使用する対象のECCデータ及び無視する対象のECCデータを選択する。例えば、図6Bでは、開始列アドレスは0xC82である。そうすると、ECB-DRAM1及びECB-DRAM2から戻されるECCデータが用いられ、ECB-DRAM0及びECB-DRAM3から戻されるECCデータは無視される。図6Cでは、開始列アドレスは0xC84である。そうすると、ECB-DRAM2及びECB-DRAM3から戻されるECCデータが用いられる。
他のバースト長は例示していないが、例えば、バースト長3(1つのECCデータ・サイクルを含む)バースト・モード、ユーザ・データを単一のアドレスから転送するバースト長2(1つのECCデータ・サイクルを含む)モード、及び、特に言及していない何れかの他のバースト長に当業者は上記の原理を適用することが可能である。
特定の実施例では、特定の無効ECCデータを含むバースト長において書き込みユーザ・データ及びECCデータを書き込むことも可能である。一実施例では、メモリ装置はデータ・マスキング(DM)シグナリング入力を含み、メモリ・コントローラは、書き込まれるユーザ・データに対応しないECC場所にECCデータが書き込まれるのを防止するために、適切なマスキング線をECCデータ・サイクル中にアサートする。例えば、図6Bでは、メモリ・コントローラは、ECB-DRAM1及びECB-DRAM2のみが実際にT0中にECCデータを得て、そのECCデータをECCメモリに保存するように、T0中にECB-DRAM0及びECB-DRAM3のDM入力をアサートすることが可能である。
別の実施例では、DMシグナリング入力は存在しないか、又は、データ・バス線上のECCデータを制御するのに用いられない。その代わりに、各メモリ装置のモード・レジスタ・セット(MRS)におけるモジュール位置レジスタがBMM0上のその装置の位置によってプログラムされるか、又は、モジュールが構築される際にオプションがハードコードされる。各メモリ装置における論理は、装置に供給されたECCデータを書き込むか又は無視するべきかを決定するために、書き込みに要求された列アドレス範囲を、モジュール位置レジスタと比較する。例えば、ECB-DRAM0上では、MRSモジュール位置レジスタは、値000及び001によってプログラムされる。書き込みバーストの列アドレス範囲が低位アドレス000を含む場合、ECB-DRAM0は、そのECCメモリ空間に、DQ0-DQ7上にT0において受信されたECCデータを保存し、さもなければ、そのデータは保存しない。低位アドレス001の同様の論理は、DQ8-DQ15上でT0において受信されたECCデータがECCメモリ空間に保存されるか否かを判定する。
ECB DRAM700の一実施例を図7の構成図に示す。ECB DRAM700は、アドレス及び制御論理710と、アドレス・レジスタ720と、行デコーダ730と、列デコーダ740と、バースト/ECCコントローラ/カウンタ750と、I/Oレジスタ、ドライバ及びレシーバ760と、I/Oゲ―ティング及びマスク論理770と、センス増幅器780と、メモリ・セル・アレイ790とを備える。前述のブロックのいくつかは当業者になじみがあるが、他のものは、前述の誤り訂正バーストに対応するよう修正されている。以下の説明は、ブロックと、誤り訂正バーストをサポートする新たな機能との間の協調に焦点を当てる。
アドレス及び制御論理ブロック710は、例えば、メモリ・コントローラから信号入力CMD上でコマンドを受信する。一般的なコマンドは、メモリ・セル・アレイ790におけるワード線を選択するためのACTIVEコマンド、メモリ・セル・アレイ790において読み出す対象の列を規定するREADコマンド、メモリ・セル・アレイ790において書き込む対象の列を規定するWRITEコマンド、リフレッシュ・コマンド、及び種々のモード設定コマンドを含む。
ACTIVEコマンド中に、行アドレスが、信号入力ADD上で受信され、アドレス・レジスタ720によってラッチされる。行アドレスは、アドレス及び制御論理710からの信号によって行デコーダ730に転送され、次いで、メモリ・セル・アレイ790の対応する行を駆動するのに用いられる。センス増幅器780は、ACTIVEコマンドに応答してメモリ・セル・アレイ行の内容を読み出し、リフレッシュする。
READコマンド中には、列アドレスが、信号入力ADD上で受信され、アドレス・レジスタ720によってラッチされる。列アドレスは、アドレス及び制御論理710からの信号によってバースト/ECC/コントローラ/カウンタ750に転送される。バースト/ECCコントローラ/カウンタ750は、列アドレスを用いて、READ動作のデータ段階中のセンス増幅器780からI/Oゲーティング及びマスク論理770を介したI/Oレジスタ及びドライバ760へのデータの選択及び転送を制御する。
WRITEコマンド中には、列アドレスが、信号入力ADD上で受信され、アドレス・レジスタ720によってラッチされる。列アドレスは、アドレス及び制御論理710からの信号によってバースト/ECC/コントローラ/カウンタ750に転送される。バースト/ECCコントローラ/カウンタ750は、列アドレスを用いて、WRITE動作のデータ段階中のI/Oレジスタ及びレシーバ760からI/Oゲーティング及びマスク論理770へのデータの転送を制御する。
少なくとも一部のモード設定コマンド中には、モード・レジスタ値が、信号入力ADD上で受信され、アドレス・レジスタ720によってラッチされる。モード・レジスタ値は、アドレス及び制御論理710の一部として図7に示すモード・レジスタ715に転送される。特定の実施例では、モード・レジスタ値の1つはECCモードである。ECCモードは、READ及びWRITEのバースト・コマンドが、余分のデータ・サイクルをECCデータの転送に含むか否かを示す。モード・レジスタ値ECC MODEはバースト/ECCコントローラ/カウンタ750に供給され、読み出し及び書き込みのコマンドのデータ転送中にバースト/ECCコントローラ/カウンタ750がデータ列を選択する方法を定める。
列デコーダ740は、読み出し又は書き込みのデ―タ・サイクル毎のI/Oゲーティング及びマスク論理770とI/Oレジスタ760との間のデータの転送のためにメモリ・セル・アレイ790においてn個の列を選択する。選択されるn個の列は、そのデータ・サイクルについてバースト/ECCコントローラ/カウンタ750によって供給されるアドレスによって変わってくる。書き込みデータの場合、列の選択は、書き込みデータとともに受信される1つ又は複数のデータ・マスキング(DM)入力によっても変わってくる。マスキングされているものと書き込みデータが示されている場合、I/Oゲーティング及びマスク論理770は、メモリ・セル・アレイ790へのそのデータの転送を阻止する。
ECCバースト長及び非ECCバースト長をサポートするためにバースト/ECCコントローラ/コントローラ/カウンタ750によってバースト長を調節することが可能である以外はI/Oレジスタ、ドライバ及びレシーバ760は通常に動作する。書き込みバースト中には、レシーバ760は、各データ・サイクル(ストローブI/OピンDQS上のストローブ信号によって示される)中にピンDQ1-DQn上にデータを受信し、ピンDM上にデータ・マスキング入力を受信し、I/Oゲーティング制御及びマスク論理770への転送のために、受信されたデータ及びデータ・マスキング入力をI/Oレジスタにラッチする。読み出しバースト中には、I/Oレジスタ760はI/Oゲーティング及びマスク論理770からデータを受信し、ドライバは、DQ1-DQn上のデータ、及びDQS上のストローブ信号を駆動させる。
メモリ・セル・アレイ790の配列は、ECB DRAM700がECCモードでも非ECCモードでも機能することができることに寄与する。8個のデータ列毎に、ECC列も存在する。この配列は、本発明の実施例を実現することが可能な1つのやり方を示す役目を担う。ここで、アドレス指定可能な列セグメントは更なるECC列と関連付けられる。前述の他の配列に、バースト/ECCコントローラ・カウンタ及び列デコーダが整合している限り、他の配列、及びデータ列対ECC列の比が可能である。
ECB DRAM700の更なる動作を次に図6Aに関して説明する。ECB DRAM700は、この図において表すECB-DRAM0とする。まず、ACTIVEコマンドに応じて、センス増幅器780はメモリ・セル・アレイ790の行からデータを読み出す。行は行デコーダ730によって選択される。センス増幅器780によって読み出されるデータは、ECC列からのECCデータ及びデータ列からのユーザ・データを含む。
次に、誤り訂正バースト・モード5が選択されるとすれば、READコマンドによって供給された列アドレス0xC80がバースト/ECCコントローラ/カウンタ750に転送される(図7は一メモリ・バンクを示すが、ECB DRAM700は、複数のバンクを有し、列アドレスのうちの一部ビットをバンク・セレクトとすることが可能である)。バースト/ECCコントローラ/カウンタ750はまず、列アドレス0xC80に関連したECC列を選択するよう列デコーダ740にシグナリングする。このシグナリングは例えば、ECCアドレス・オーバライド信号ECC-A0をアサートする一方で、CA上に開始列アドレス0xC80を供給することを備え得る。ECC-A0信号がアサートされると、列デコーダ740は、CA上に生起するアドレスの3つの低位ビットを無視し、代わりに、外部アドレス指定可能なセグメント0xC80-87に関連した第9のアドレスを選択する。この第9のアドレスは、外部供給列アドレスによって直接アドレス指定可能なものでないが、ECCモードにおいて列デコーダによって内部アドレス指定可能である。メモリ・コントローラはよって、ECCモードにおける対応するデータ・セグメントをアドレス指定することによってのみECCデータを間接的にアドレス指定することが可能である。
第9のアドレスが選択されると、I/Oゲーティング及びマスク論理770は、データ・サイクルT0中にDQ1-DQnを駆動させるために、外部列アドレス0xC80-87に関連したECC列からのデータをI/Oレジスタ及びドライバ760に転送する。
バースト/ECCコントローラ/カウンタは次に、ECCアドレス状態からデータ・アドレス状態に遷移する。開始列アドレス0xC80を列デコーダに供給し続けるが、ECC-A0をアサート解除する。データ・サイクルT1中にDQ1-DQnを駆動させるためにI/Oゲーティング及びマスク論理770を介してI/Oレジスタ及びドライバ760に転送するためにその外部アドレスに関連付けられたデータ列を列デコーダ740に選択させる。
バースト/ECCコントローラ/カウンタはその内部列アドレスを0xC81に増やし、データ・サイクルT2のデータを供給するよう前述の動作を繰り返す。この処理を更に2回繰り返して図6Aの5データ・サイクル・バースト読み出し動作を完了する。
ECCモードがイネーブルされない旨をモード・レジスタ715が示す場合、バースト/ECCコントローラ/カウンタ750は、ECCアドレス状態に決して入らず、ECC-A0を決してアサートしない。データ・アドレス状態は同じ状態に留まる。それによって、4データ・サイクル・バースト読み出し動作においてECC列ではないがデータ列が読み出されることになる。
誤り訂正書き込みバースト・モードの場合、動作は同様である。適切な1つ又は複数のデータ・サイクルでは、バースト/ECCコントローラ/カウンタ750は、CAによって示されるデータ列セグメントに関連したECC列を書き込みに選択させるようECC-A0をアサートする。書き込みバースト長が、余分なデータ・サイクルが誤り訂正書き込みバースト・モードにおいて収容されるよう伸長される。前述したように、ECCデータは、データ・マスキング信号DMに依存することが可能であり、それにより、論理が単純化され、メモリ・コントローラが、書き込まれるECCデータをファイン・グレイン・ベースで判定することが可能になる。
ECCモード及び非ECCモードを示すモード登録方法を説明した。前述のシステムでは、メモリ・コントローラによって変えられない限り、デフォルトとして一モード(例えば、非ECC)を選択することが可能である。ECCモード及び非ECCモードを示す別の方法は、2つの別々のコマンドを供給することであり得る。この方法によって、例えば、プロセッサによって示されるデータの重要度によって、メモリ・コントローラがECCデータ・バースト及び非ECCデータ・バーストを効率的に混合することが可能になる。
4チップのモジュール及び64ビット・データ・バスを示しているが、これは例示に過ぎず、他のチップ数やデータ・バス幅を用いることが可能である。例えば、1チップ、2チップ又は8チップのモジュールも前述の原理によって実現することが可能である。モジュールは、単一のメモリ装置ランクも有していなくてよい。例えば、2つの8チップ・ランクそれぞれをモジュール上に含むことが可能である。本発明は、メモリ装置を用いるプロセッサと同じ回路に搭載されたメモリ装置を有するシステムにも利用可能である。
本明細書において教示された概念が、特定の応用例に、他の多くの効果的なやり方で合わせることが可能であることを当業者は認識するであろう。特に、本明細書の検討によって明らかになる別の多くの実現形態から、例証した実施例が選択されることを当業者は認識するであろう。例えば、バーストにおけるユーザ・データ及びECCデータの種々の多くの時間的配列が考えられる。このうちの一部は、一部又は全部のデータ・サイクルにおいてECCデータ及びユーザ・データをミックスすることもできる。DRAM実施例を説明したが、本明細書記載の原理は、本願の原理が、メモリ・タイプではなくメモリ・セル配列及びデータ転送に当てはまるので、静的、フラッシュ等などの他のタイプの半導体メモリに同様に当てはまる。本明細書記載の装置実施例の特定の機能配列は、1つの考えられる機能グループ化を提示しているが、本特許請求の範囲記載の範囲に収まる他の多くの組み合わせで機能をサブ分割/合成することが可能である。
本発明記載の用途は、誤り訂正符号化である。しかし、ECCに用いる補助メモリ空間及びバースト転送データ・サイクルをあるいは用いて、アドレス指定可能メモリ・アドレス範囲とプロセッサ及び/又はメモリ・コントローラが関連付けられるように構成されたいかなる補助データも記憶し、取り出すことが可能であることを当業者は認識するであろう。
本明細書記載の特定の特徴の多くは、設計上の選択であり、他の多くの設計上の選択の説明は、当該技術分野において存在している技術範囲内であり、かつ/又は実現形態に依存するために省略した。前述のわずかな修正は、本発明の実施例内に包含され、本特許請求の範囲記載の範囲内に収まることが意図されている。
前述の実施例は例示である。本明細書は、いくつかの箇所において「an embodiment」、「one embodiment」、「another embodiment」、又は「some embodiment」を参照し得るが、これは、前述の各参照が、同じ実施例に対するものであるか、又は単一の実施例のみに特徴があてはまるかを必ずしも意味するものでない。

Claims (10)

  1. メモリ装置であって、
    メモリ・セルの複数のアドレス指定可能なセグメントにデータを記憶するよう構成されたメモリ・セル・アレイと、
    第1の複数のデータ・サイクルにわたり、前記メモリ装置によって受信された入力データの配信を制御するためのバースト・コントローラであって、前記入力データは、
    第1のデータと、
    前記第1のデータに対する第1の誤り訂正符号データと、
    第2の誤り訂正符号データと
    を含むバースト・コントローラと、
    前記メモリ・セル・アレイに結合された書き込み回路であって、第1のバースト書き込みモードでは、前記バースト・コントローラが、メモリ・セルの前記アドレス指定可能なセグメントのうちの第1のセグメント内に前記第1のデータを書き込み、前記第1のセグメントと関連付けられた少なくとも1つの更なるメモリ・セルに前記第1の誤り訂正符号データを書き込む旨を前記書き込み回路にシグナリングする書き込み回路と、
    外部マスク信号に基づいて動作可能な書き込みマスキング回路であって、前記第1のバースト書き込みモードでは、前記外部マスク信号は、前記第1の複数のデータ・サイクル中にアサートされると、前記書き込み回路が前記第2の誤り訂正符号データを書き込むことを阻止させる書き込みマスキング回路と
    を備えるメモリ装置。
  2. 請求項1記載のメモリ装置であって、前記第1の誤り訂正符号データは、第2の複数のデータ・サイクルのうちのデータ・サイクル中に受信され、前記第2の誤り訂正符号データは、前記第2の複数のデータ・サイクルのうちの前記データ・サイクル中に受信されるメモリ装置。
  3. 請求項1記載のメモリ装置であって、前記バースト・コントローラは、少なくとも、第1のバースト読み出しモードと第2のバースト読み出しモードとの間で更に構成可能であり、前記第1のバースト読み出しモードは、前記第1のセグメントからのデータ、及び前記第1のセグメントに関連付けられた前記少なくとも1つの更なるメモリ・セルからの誤り訂正データを出力し、前記第2のバースト読み出しモードは、前記第1の複数のデータ・サイクルよりも短い第2の複数のデータ・サイクルにわたり、前記第1のセグメントからのデータを出力し、前記少なくとも1つの更なるメモリ・セルからのデータは前記第2の複数のデータ・サイクル中に出力されないメモリ装置。
  4. 請求項3記載のメモリ装置であって、前記第1のバースト読み出しモードにおいて、前記バースト・コントローラは前記第2の複数のデータ・サイクルのうちの第1のデータ・サイクルにおいて誤り訂正符号化データを配列するメモリ装置。
  5. 請求項1記載のメモリ装置であって、前記バースト・コントローラは更に、前記第1の複数のデータ・サイクルよりも短い第3の複数のデータ・サイクルにわたって第2のバースト書き込みモードにおいて前記メモリ装置によって受信された他の入力データの配信を制御し、前記バースト・コントローラは、前記第1のセグメントに関連付けられた前記少なくとも1つの更なるメモリ・セルに前記受信された他のデータの何れも書き込まずにメモリ・セルの前記第1のセグメント内のアドレス可能な場所に、受信された他の入力データを書き込む旨を前記書き込み回路にシグナリングするメモリ装置。
  6. 方法であって、
    バースト・コントローラにより、第1の複数のデータ・サイクルにわたり、受信された入力データのメモリ・セル・アレイにおける配信を制御する工程を含み、前記メモリ・セル・アレイは、メモリ・セルの複数のアドレス指定可能なセグメントを含み、アドレス指定可能なセグメントはそれぞれ、少なくとも1つの更なるメモリ・セルと関連付けられ、前記入力データは、
    第1のデータと、
    前記第1のデータに対する第1の誤り訂正符号データと、
    第2の誤り訂正符号データと
    を含み、
    前記配信を制御する工程は、
    メモリ・セルの前記アドレス指定可能なセグメントのうちの第1のセグメント内に前記第1のデータを書き込む旨を書き込み回路にシグナリングする工程と、
    前記第1のセグメントと関連付けられた前記少なくとも1つの更なるメモリ・セルに前記第1の誤り訂正符号データを書き込む旨を前記書き込み回路にシグナリングする工程と、
    前記第1の複数のデータ・サイクル中にアサートされる外部マスク信号に基づいて、前記第2の誤り訂正符号データを書き込むことを書き込み回路に阻止させる工程と
    を含む方法。
  7. 請求項6記載の方法であって、前記第1の誤り訂正符号データは、前記第2の複数のデータ・サイクルのうちのデータ・サイクル中に受信され、前記第2の誤り訂正符号データは、前記第2の複数のデータ・サイクルのうちの前記データ・サイクル中に受信される方法。
  8. 請求項6記載の方法であって、
    第1のバースト読み出しモード及び第2のバースト読み出しモードの間で前記バースト・コントローラを構成する工程を更に含み、前記第1のバースト読み出しモードは、前記第1のセグメントからのデータ、及び前記第1のセグメントに関連付けられた前記少なくとも1つの更なるメモリ・セルからの誤り訂正データを出力し、前記第2のバースト読み出しモードは、前記第1の複数のデータ・サイクルよりも短い第2の複数のデータ・サイクルにわたり、前記第1のセグメントからのデータを出力し、前記少なくとも1つの更なるメモリ・セルからのデータは前記第2の複数のデータ・サイクル中に出力されない方法。
  9. 請求項8記載の方法であって、前記第1のバースト読み出しモードにおいて、前記バースト・コントローラは前記第2の複数のデータ・サイクルのうちの第1のデータ・サイクルにおいて前記誤り訂正符号化データを配列する方法。
  10. 請求項6記載の方法であって、
    前記第1の複数のデータ・サイクルよりも短い第3の複数のデータ・サイクルにわたって前記バースト・コントローラの第2のバースト書き込みモード中に受信された他の入力データの配信を前記バースト・コントローラが制御する工程を更に含み、前記制御する工程は、前記第1のセグメントに関連付けられた前記少なくとも1つの更なるメモリ・セルに、受信された他のデータの何れも書き込まずにメモリ・セルの前記第1のセグメント内のアドレス可能な場所に、前記受信された他の入力データを書き込む旨を前記バースト・コントローラが前記書き込み回路にシグナリングする工程を含む方法。
JP2011115561A 2004-11-22 2011-05-24 時間多重化誤り訂正符号化をサポートするメモリ・トランザクション・バースト動作及びメモリ装置 Expired - Fee Related JP5399442B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/995,850 US7464241B2 (en) 2004-11-22 2004-11-22 Memory transaction burst operation and memory components supporting temporally multiplexed error correction coding
US10/995,850 2004-11-22

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2007543351A Division JP4777358B2 (ja) 2004-11-22 2005-11-17 時間多重化誤り訂正符号化をサポートするメモリ・トランザクション・バースト動作及びメモリ構成部分

Publications (2)

Publication Number Publication Date
JP2011243206A JP2011243206A (ja) 2011-12-01
JP5399442B2 true JP5399442B2 (ja) 2014-01-29

Family

ID=36203765

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2007543351A Expired - Fee Related JP4777358B2 (ja) 2004-11-22 2005-11-17 時間多重化誤り訂正符号化をサポートするメモリ・トランザクション・バースト動作及びメモリ構成部分
JP2011115561A Expired - Fee Related JP5399442B2 (ja) 2004-11-22 2011-05-24 時間多重化誤り訂正符号化をサポートするメモリ・トランザクション・バースト動作及びメモリ装置

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2007543351A Expired - Fee Related JP4777358B2 (ja) 2004-11-22 2005-11-17 時間多重化誤り訂正符号化をサポートするメモリ・トランザクション・バースト動作及びメモリ構成部分

Country Status (8)

Country Link
US (1) US7464241B2 (ja)
JP (2) JP4777358B2 (ja)
KR (1) KR100884096B1 (ja)
CN (1) CN101036131B (ja)
DE (1) DE112005002390T5 (ja)
GB (1) GB2433624B (ja)
TW (1) TWI304591B (ja)
WO (1) WO2006057963A2 (ja)

Families Citing this family (55)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI254848B (en) * 2004-11-16 2006-05-11 Via Tech Inc Method and related apparatus for performing error checking-correcting
JP4740766B2 (ja) * 2006-02-27 2011-08-03 富士通株式会社 データ受信装置、データ送受信システム、データ送受信システムの制御方法及びデータ受信装置の制御プログラム
US7620875B1 (en) * 2006-03-07 2009-11-17 Xilinx, Inc. Error correction code memory system with a small footprint and byte write operation
US7533191B2 (en) * 2006-06-30 2009-05-12 Intel Corporation Methods and arrangements for devices to share a common address on a bus
US7844888B2 (en) * 2006-09-29 2010-11-30 Qimonda Ag Electronic device, method for operating an electronic device, memory circuit and method of operating a memory circuit
KR100845529B1 (ko) * 2007-01-03 2008-07-10 삼성전자주식회사 플래시 메모리 장치의 이씨씨 제어기 및 그것을 포함한메모리 시스템
US7568137B1 (en) * 2007-03-27 2009-07-28 Xilinx, Inc. Method and apparatus for a clock and data recovery circuit
WO2009137157A1 (en) * 2008-03-31 2009-11-12 Rambus Inc. Independent threading of memory devices disposed on memory modules
US20090276587A1 (en) * 2008-04-30 2009-11-05 Moyer William C Selectively performing a single cycle write operation with ecc in a data processing system
US7814300B2 (en) 2008-04-30 2010-10-12 Freescale Semiconductor, Inc. Configurable pipeline to process an operation at alternate pipeline stages depending on ECC/parity protection mode of memory access
US8521979B2 (en) 2008-05-29 2013-08-27 Micron Technology, Inc. Memory systems and methods for controlling the timing of receiving read data
US7979757B2 (en) 2008-06-03 2011-07-12 Micron Technology, Inc. Method and apparatus for testing high capacity/high bandwidth memory devices
US8289760B2 (en) 2008-07-02 2012-10-16 Micron Technology, Inc. Multi-mode memory device and method having stacked memory dice, a logic die and a command processing circuit and operating in direct and indirect modes
US7855931B2 (en) 2008-07-21 2010-12-21 Micron Technology, Inc. Memory system and method using stacked memory device dice, and system using the memory system
US8756486B2 (en) 2008-07-02 2014-06-17 Micron Technology, Inc. Method and apparatus for repairing high capacity/high bandwidth memory devices
US8127204B2 (en) 2008-08-15 2012-02-28 Micron Technology, Inc. Memory system and method using a memory device die stacked with a logic die using data encoding, and system using the memory system
WO2011031260A1 (en) * 2009-09-10 2011-03-17 Hewlett-Packard Development Company, L.P. Memory subsystem having a first portion to store data with error correction code information and a second portion to store data without error correction code information
WO2012073287A1 (en) 2010-12-01 2012-06-07 Hitachi, Ltd. Storage control apparatus and storage control method
US8400808B2 (en) 2010-12-16 2013-03-19 Micron Technology, Inc. Phase interpolators and push-pull buffers
CN102521180B (zh) * 2011-12-02 2014-10-22 百利通科技(扬州)有限公司 一种多通道实时直读存储器结构
US9612901B2 (en) * 2012-03-30 2017-04-04 Intel Corporation Memories utilizing hybrid error correcting code techniques
US9009570B2 (en) * 2012-06-07 2015-04-14 Micron Technology, Inc. Integrity of an address bus
US9323608B2 (en) 2012-06-07 2016-04-26 Micron Technology, Inc. Integrity of a data bus
US8996960B1 (en) * 2012-06-26 2015-03-31 Inphi Corporation Vertical error correction code for DRAM memory
KR102002925B1 (ko) * 2012-11-01 2019-07-23 삼성전자주식회사 메모리 모듈, 그것을 포함하는 메모리 시스템, 그것의 구동 방법
US9064606B2 (en) * 2012-12-20 2015-06-23 Advanced Micro Devices, Inc. Memory interface supporting both ECC and per-byte data masking
US9569352B2 (en) 2013-03-14 2017-02-14 Sandisk Technologies Llc Storage module and method for regulating garbage collection operations based on write activity of a host
WO2015016883A1 (en) * 2013-07-31 2015-02-05 Hewlett-Packard Development Company, L.P. Off-memory-module ecc-supplemental memory system
US9171597B2 (en) 2013-08-30 2015-10-27 Micron Technology, Inc. Apparatuses and methods for providing strobe signals to memories
WO2015047402A1 (en) * 2013-09-30 2015-04-02 Hewlett-Packard Development Company, L.P. Programming memory controllers to allow performance of active memory operations
KR20150090414A (ko) * 2014-01-29 2015-08-06 에스케이하이닉스 주식회사 에러 정정 동작을 수행하는 반도체 장치
JP6385077B2 (ja) 2014-03-05 2018-09-05 ルネサスエレクトロニクス株式会社 半導体装置
US9471254B2 (en) * 2014-04-16 2016-10-18 Sandisk Technologies Llc Storage module and method for adaptive burst mode
US9928169B2 (en) 2014-05-07 2018-03-27 Sandisk Technologies Llc Method and system for improving swap performance
US9633233B2 (en) 2014-05-07 2017-04-25 Sandisk Technologies Llc Method and computing device for encrypting data stored in swap memory
US9665296B2 (en) 2014-05-07 2017-05-30 Sandisk Technologies Llc Method and computing device for using both volatile memory and non-volatile swap memory to pre-load a plurality of applications
US9710198B2 (en) 2014-05-07 2017-07-18 Sandisk Technologies Llc Method and computing device for controlling bandwidth of swap operations
JP6381673B2 (ja) * 2014-12-19 2018-08-29 三菱電機株式会社 情報処理装置およびfpgaコンフィギュレーション方法
US9450609B1 (en) * 2015-03-31 2016-09-20 Altera Corporation Methods and apparatus for embedding an error correction code in memory cells
US10061645B2 (en) * 2015-06-30 2018-08-28 Qualcomm Incorporated Memory array and link error correction in a low power memory sub-system
DE102016123247B4 (de) * 2015-12-01 2024-03-21 Nvidia Corporation Systeme und verfahren zur speicherverwaltung
US9891986B2 (en) * 2016-01-26 2018-02-13 Nxp Usa, Inc. System and method for performing bus transactions
US9990158B2 (en) 2016-06-22 2018-06-05 Sandisk Technologies Llc Storage system and method for burst mode management using transfer RAM
US10216657B2 (en) 2016-09-30 2019-02-26 Intel Corporation Extended platform with additional memory module slots per CPU socket and configured for increased performance
US9818457B1 (en) 2016-09-30 2017-11-14 Intel Corporation Extended platform with additional memory module slots per CPU socket
CN108255633B (zh) * 2016-12-28 2021-07-30 旺宏电子股份有限公司 存储控制方法、存储装置
CN108511030B (zh) * 2017-02-24 2020-12-18 瑞昱半导体股份有限公司 记忆体测试方法
KR102362229B1 (ko) 2017-08-10 2022-02-11 삼성전자주식회사 메모리 컨트롤러, 메모리 시스템 및 메모리 컨트롤러를 포함하는 어플리케이션 프로세서
KR102433098B1 (ko) 2018-02-26 2022-08-18 에스케이하이닉스 주식회사 어드레스 생성회로, 어드레스 및 커맨드 생성회로 및 반도체 시스템
US10636476B2 (en) * 2018-11-01 2020-04-28 Intel Corporation Row hammer mitigation with randomization of target row selection
US11403172B2 (en) * 2019-08-05 2022-08-02 Cypress Semiconductor Corporation Methods for error detection and correction and corresponding systems and devices for the same
US11416333B2 (en) * 2019-08-22 2022-08-16 Micron Technology, Inc. Semiconductor device with power-saving mode and associated methods and systems
WO2021035811A1 (zh) * 2019-08-27 2021-03-04 江苏华存电子科技有限公司 一种可变动码率与更正能力内存控制方法
CN111128262B (zh) * 2019-12-17 2021-02-23 海光信息技术股份有限公司 存储器电路、电路控制方法、集成电路器件及处理器
CN115016981B (zh) * 2022-06-16 2023-05-09 海光信息技术股份有限公司 存储区域的设置方法、数据读取、写入方法及相关装置

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5987627A (en) 1992-05-13 1999-11-16 Rawlings, Iii; Joseph H. Methods and apparatus for high-speed mass storage access in a computer system
JPH1173737A (ja) * 1997-08-29 1999-03-16 Sony Corp 記録装置及び方法、再生装置及び方法並びに記録媒体
JP3307579B2 (ja) 1998-01-28 2002-07-24 インターナショナル・ビジネス・マシーンズ・コーポレーション データ記憶システム
JP3230485B2 (ja) * 1998-04-09 2001-11-19 日本電気株式会社 1チップマイクロコンピュータ
US20020029365A1 (en) 1998-12-17 2002-03-07 Yoshimichi Sato Information processing apparatus
US6212631B1 (en) * 1999-01-15 2001-04-03 Dell Usa, L.P. Method and apparatus for automatic L2 cache ECC configuration in a computer system
US6941505B2 (en) 2000-09-12 2005-09-06 Hitachi, Ltd. Data processing system and data processing method
US6687767B2 (en) 2001-10-25 2004-02-03 Sun Microsystems, Inc. Efficient direct memory access transfer of data and check information to and from a data storage device
US7117421B1 (en) * 2002-05-31 2006-10-03 Nvidia Corporation Transparent error correction code memory system and method
US7447950B2 (en) * 2003-05-20 2008-11-04 Nec Electronics Corporation Memory device and memory error correction method
US7272774B2 (en) * 2004-04-16 2007-09-18 Kingston Technology Corp. Extender card for testing error-correction-code (ECC) storage area on memory modules
US7322002B2 (en) * 2004-05-26 2008-01-22 Micron Technology, Inc. Erasure pointer error correction

Also Published As

Publication number Publication date
US20060123320A1 (en) 2006-06-08
US7464241B2 (en) 2008-12-09
KR20070051930A (ko) 2007-05-18
GB2433624B (en) 2008-10-15
TWI304591B (en) 2008-12-21
JP4777358B2 (ja) 2011-09-21
GB2433624A (en) 2007-06-27
CN101036131A (zh) 2007-09-12
WO2006057963A3 (en) 2006-07-20
JP2008521160A (ja) 2008-06-19
TW200627469A (en) 2006-08-01
KR100884096B1 (ko) 2009-02-19
JP2011243206A (ja) 2011-12-01
GB0706172D0 (en) 2007-05-09
CN101036131B (zh) 2011-01-26
DE112005002390T5 (de) 2007-10-11
WO2006057963A2 (en) 2006-06-01

Similar Documents

Publication Publication Date Title
JP5399442B2 (ja) 時間多重化誤り訂正符号化をサポートするメモリ・トランザクション・バースト動作及びメモリ装置
US7120754B2 (en) Synchronous DRAM with selectable internal prefetch size
US7243203B2 (en) Pipeline circuit for low latency memory
US7340584B2 (en) Sequential nibble burst ordering for data
US8060705B2 (en) Method and apparatus for using a variable page length in a memory
US8495310B2 (en) Method and system including plural memory controllers and a memory access control bus for accessing a memory device
EP1415304B1 (en) Memory device having different burst order addressing for read and write operations
US7995420B2 (en) User selectable banks for DRAM
KR20210013647A (ko) 구성 가능한 메모리 어레이 뱅크 아키텍처를 위한 장치 및 방법
US7840744B2 (en) Rank select operation between an XIO interface and a double data rate interface
US11449441B2 (en) Multi-ported nonvolatile memory device with bank allocation and related systems and methods
US7196962B2 (en) Packet addressing programmable dual port memory devices and related methods
US6751130B2 (en) Integrated memory device, method of operating an integrated memory, and memory system having a plurality of integrated memories
US7729198B2 (en) Synchronous memory circuit
CN118053469A (zh) 用于增强元数据支持的设备及方法

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130129

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130416

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20130924

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20131023

R150 Certificate of patent or registration of utility model

Ref document number: 5399442

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees