JP2005532657A - モードレジスタにおけるバースト長設定の変更を行わずに、異なるバースト長のアクセスをサポートするdram - Google Patents

モードレジスタにおけるバースト長設定の変更を行わずに、異なるバースト長のアクセスをサポートするdram Download PDF

Info

Publication number
JP2005532657A
JP2005532657A JP2004521557A JP2004521557A JP2005532657A JP 2005532657 A JP2005532657 A JP 2005532657A JP 2004521557 A JP2004521557 A JP 2004521557A JP 2004521557 A JP2004521557 A JP 2004521557A JP 2005532657 A JP2005532657 A JP 2005532657A
Authority
JP
Japan
Prior art keywords
burst length
burst
command
memory device
access
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.)
Granted
Application number
JP2004521557A
Other languages
English (en)
Other versions
JP4507186B2 (ja
JP2005532657A5 (ja
Inventor
パテル シュウェタル
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Advanced Micro Devices Inc
Original Assignee
Advanced Micro Devices Inc
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 Advanced Micro Devices Inc filed Critical Advanced Micro Devices Inc
Publication of JP2005532657A publication Critical patent/JP2005532657A/ja
Publication of JP2005532657A5 publication Critical patent/JP2005532657A5/ja
Application granted granted Critical
Publication of JP4507186B2 publication Critical patent/JP4507186B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • 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
    • 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/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4204Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
    • G06F13/4234Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a memory bus
    • G06F13/4243Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a memory bus with synchronous protocol

Abstract

メモリデバイス(150)が、メモリデバイスの現在のバースト長設定によって指示されたバースト長とは異なるバースト長を特定する1つ以上のコマンドエンコーディングに応じるために実装され得る。例えば、メモリデバイス(150)は、メモリアレイ(152)と、現在のバースト長を示す数値を記録するために構築されたモードレジスタ(154)を含み得る。このメモリアレイ(152)は、第1コマンドエンコーディングを受信することに応じて第1バーストアクセスを実行するために構築されてよいし、第2コマンドエンコーディングを受信することに応じて現在のバースト長と等しくない、第2バースト長を有する第2バーストアクセスを実行するために構築されてよい。メモリコントローラ(100)は、ターゲットとされたメモリデバイス(150)の現在のバースト長設定によって指示されたバースト長とは異なるバース長を特定する1つ以上のコマンドエンコーディングを生成するために実装され得る。

Description

本発明は、コンピュータシステムに関し、より具体的には、DRAM(Dynamic Random Access Memory:ダイナミックランダムアクセスメモリ)に用いられるバーストモードに関する。
DRAM(Dynamic Random Access Memory)デバイスは、頻繁にモードレジスタを含む。DRAMデバイスのモードレジスタに記録された数値が、DRAMデバイスのバースト長をコントロールする。一般的には、初期化の際、特定のバースト長を識別するためにモードレジスタ数値が、初期化される。メモリコントローラが、バースト長の設定の変更を行うためにレジスタに記録された数値を更新する場合がある。しかし、バースト長の設定の変更は、時間のかかるプロセスであり得る。例えば、モードレジスタをプログラムするために、メモリコントローラが、DRAM全てのアクセスが完了してしまうまで待機状態となる場合があり、その後に適切なオップコードをある種のピン(例、アドレスピン及びBA0ピン)に置き換えながら、(例、/CS(Chip Select:チップセレクト)、/RAS(Row Address Strobe:行アドレスストローブ)、/CAS(Column Address Strobe:コラムアドレスストローブ及び/WE(Write Enable:ライトイネーブル)のような)ある種のコマンド信号をアクティベートすることによってロードモードレジスタコマンドを発する場合がある。このロードモードレジスタコマンドを発した後、新たにDRAMアクセスを開始する前にメモリコントローラが、若干のサイクル数を待たなくてはならない場合がある。それ故、この方法でバースト長の設定の変更を行うことが、実行中のアクセスにおける意に反したパフォーマンス低下を強いることになり得る。
メモリコントローラは、異なるバースト長を有するアクセスリクエストを受信する場合がある。例えば、プロセッサトランザクションは、64バイトブロックを含む得るが、AGP(Advanced Graphics Port:)トランザクションは、32バイトブロックを含み得る。幾つかのDRAMデバイスにおいては、64バイトブロックのアクセスは、8バーストで実現され得るが、32バイトブロックのアクセスは、4バーストで実現され得る。DRAMバースト長が、モードレジスタに記録された数値によって設定されるので、帯域幅が浪費される(バースト長が8に設定され、32バイトブロックのアクセスを実行している場合)か、特定の長さを有するトランザクションのコマンドを再発行しなくてはならない(バースト長が4に設定され、64バイトブロックのアクセスを実行している場合)か、の何れかである。しかし、特定のバースト長のトランザクションを処理するためにバーストモードレジスタのバースト長を変更することは、より非効率的でさえあり得る。それ故、モードレジスタを更新する必要なしに、アクセスごとによるバースト長を動的に変更可能にすることが求められている。
現在では、モードレジスタにおけるバースト長設定より少ないバースト長のデータがメモリデバイスに実際に書き込まれるように、ライトアクセスを行っている間、メモリデバイスがある種のデータをマスクすることを可能にするというデータマスキング技術がある。しかし、これらのデータマスキング技術は、異なるバースト長のリードアクセスをサポートしないし、モードレジスタに特定されたバースト長より大きいバースト長もサポートしない。加えて、これらのデータマスキング技術は、メモリデバイスの付加のピンを用いることによって、何れのデータをマスクすべきかを頻繁に特定するが、これは幾つかのコンテキストにおいては望ましくない場合がある。
メモリデバイスの現在のバースト長によって指示されたバースト長とは異なるバースト長を特定する、1以上のコマンドエンコーディングに応じるために、メモリデバイスの様々な実施形態が、実装されてよい。一実施形態において、メモリデバイスが、現在のバースト長を示す数値を記録するために構築された、メモリアレイとモードレジスタを含んでよい。このメモリアレイは、第1コマンドエンコーディング受信に応じて、第1バースト長を有するバーストアクセスを実行するために構築されてよいし、第2コマンドエンコーディング受信に応じて、第2バースト長を有するバーストアクセスを実行するために構築されてよい。この第2バースト長は、現在のバースト長と等しくない。
ターゲットとされたメモリデバイスの現在のバースト長設定によって指示されたバースト長と異なるバースト長を特定する、1以上のコマンドエンコーディングを生成するためにメモリコントローラの様々な実施形態が、実装されてよい。例えば、一実施形態において、メモリコントローラは、メモリアクセスリクエストとコマンドエンコーダに応じて、アドレス信号を生成するために構築されたアドレス信号ジェネレータを含んでよい。メモリアクセスリクエストに応じて、メモリアクセスリクエストによって要請されたバーストアクセスが、第1バースト長を有すれば、第1コマンドエンコーダを生成するために、コマンドエンコーダを構築してよい。メモリアクセスリクエストによって要請されたバーストアクセスが、第2バースト長を有すれば、第2コマンドエンコーダを生成するために、コマンドエンコーダを構築してよい。メモリアクセスリクエストによってターゲットとされたメモリデバイスのバースト長設定が、第1数値を有するとき、第1コマンドエンコーディングと第2コマンドエンコーディングの双方を生成するために、コマンドエンコーダを構築してよいし、これによって、少なくとも1つのコマンドエンコーディングが、メモリデバイスの現在のバースト長設定によって指示されたもの以外のバースト長を特定する。
システムは、メモリコントローラとメモリデバイスを含んでよい。このメモリコントローラは、第1バースト長を有する第1メモリアクセスリクエストを受信することに応じて、第1コマンドエンコーディングを生成するために構築されてよいし、第2バースト長を有する第2メモリアクセスリクエストを受信することに応じて第2コマンドエンコーディングを生成するために構築されてよい。このメモリデバイスは、第1コマンドエンコーディングを受信することに応じて、第1バースト長を有する第1バーストアクセスを実行するために構築されてよいし、第2コマンドエンコーディングの受信することに応じて、第2バースト長を有する第2コマンドエンコーディングを実行するために構築されてよい。この第2バースト長は、メモリデバイスのバースト長設定によって指示された現在のバースト長と異なる。
方法の一実施形態は、バースト長を有するバーストアクセスを実行するためにメモリデバイスリクエストを受信することを含み得る。このバースト長が、メモリデバイスの現在のバースト長設定によって指示された第1バースト長であれば、第1コマンドエンコーディングがメモリデバイスに与えられ得る。このバースト長が、バースト長設定によって指示された第1バースト長と等しくない、第2バースト長であれば、第2コマンドエンコーディングがメモリデバイスに与えられ得る。このメモリデバイスは、第1コマンドエンコーディングに応じて、第1バースト長を有するバーストアクセスを実行し、第2コマンドエンコーディングに応じて、第2バースト長を有するバーストアクセスを実行する。
幾つかの実施形態において、メモリデバイスは、現在のバースト長を示す数値を記録するために構築されたメモリアレイとモードレジスタを含み得る。このメモリアレイは、バースト長を識別する、符号化されたコマンドを受信するために構築されてよい。符号化されたコマンドに応じて、メモリアレイが、符号化されたコマンドによって識別されたバースト長を有するバーストアクセスを実行するために構築される。符号化されたコマンドによって識別されたバースト長は、現在のバースト長と異なる。
本発明は、種々の改善及び代替実施例に改変可能である一方で、本文の特定の実施形態は図面における実施例という方法で示され、詳細は以下に記載されている。しかし、本明細書に記載された特定の実施形態は、本開示の特定の形式に本発明を制限することを意図したものではないことが理解されなければならないし、それ以上に本発明は、添付された請求項に限定された本発明の趣旨の範囲内におけるすべての改善、均等物、及び代替例を含めたものである。
本発明は、添付の図面に従った以下の詳細な記載を参照してより理解されよう。
図1は、メモリコントローラ100とメモリデバイス150を含む、メモリシステム50の一実施形態を示す。モードレジスタ154によって特定されたバースト長以外のバースト長を有するアクセスを実行するためにメモリデバイス150に命令する、1つ以上の異なるコマンドエンコーディングを生成するために、メモリコントローラ100が、構築されてよい。モードレジスタ154に特定されたバースト長に係わらず、コマンドエンコーディングに特定されたバースト長を有するアクセスを実行することによって、異なるコマンドエンコーディングに応じるために、メモリデバイス150が、構築される。
メモリデバイス150は、DDR DRAM(Double Data Rate DRAM)、SDRAM(Synchronous DRAM)、VDRAM(Video DRAM)、RDRAM(Rambus DRAM)、FCRAM(Fast Cycle RAM)等のようなDRAM(Dynamic Random Access Memory)デバイスであってよい。メモリデバイス150は、多重のメモリモジュール(例、SIMMs又はDIMMs)を含んでよい。メモリデバイス150は、データ数値を記録する、メモリアレイ152に多くのメモリ素子を含んでよい。各メモリ素子は、データ1ビット以上を含んでよい。リード及びライトアクセスは、メモリアレイ152に記録されたデータ数値で実行される。
メモリコントローラ100が、システムバスを介してデバイス(例、CPU又は画像コントローラ)のメモリアクセスリクエストを受信すると、このリクエストを復号化し、システムバスアドレスを、メモリデバイス150に関する適切なメモリアドレスに変換する。このシステムバスアドレスは、アドレス信号ジェネレータ101によってメモリデバイスの適切なアドレス(例、バンク及び/又はコラムを特定するアドレス)に変換され得るし、実行すべきアクセスの形式を示す妥当なコマンドエンコーディングがコマンドエンコーダ103によって生成され得る。メモリコントローラ100は、メモリアドレス信号182を介して適切なアドレスを、メモリデバイスに与える。図示された実施形態において、2セットのアドレス信号がある。即ち、BA0−BA1とA0−A11である。他の実施形態において、アドレス信号のセット及び数を異なるものとして使用可能であることに注目されたい。メモリコントローラ100は、又、何れのオペレーション形式が特定されたアドレスにて実行されなくてはならないかを指示するために、妥当なコマンドエンコーディングを、メモリデバイスに与える。異なるコマンドエンコーディングは、コントロール信号180一セットの異なる数値を用いて特定される。図示された実施形態において、メモリコントローラ100が、妥当なコマンドエンコーディングを生成するために少なくとも4つのアクティブ・ローのコントロール信号、即ち、/S(chip Select:チップセレクト )、/CAS(Column Address Strobe:列アドレスストローブ)、/RAS(Row Address Strobe:行アドレスストローブ)、及び/WE(Write Enable:ライトイネーブル)をコントロールする(他のコントロール信号数値もコントロールされてよいことに注目されたい)。
アクセスは、コントロール信号182を介してアクティブコマンドエンコーディングをメモリデバイス150に与える、メモリコントローラ100によって開始され得る。アクティブコマンドが、次のアクセスの特定のバンクにおいてページ(例えば、行)をオープン(又はアクティベイト)してよい。このメモリコントローラ100が、何れのバンク及びページがアクティベイトすべきかを指示するメモリデバイスに、アドレス信号182を与える。例えば、BA0及びBA1信号の数値が、バンクを選択してよいし、A0−A11信号の数値が、ページを選択してよい。アクティベイトされたページは、プリチャージコマンドエンコーディングがこのバンクに発せられるまで、アクセス用にアクティブ(又はオープン)したままの状態でいる。プリチャージコマンドエンコーディングも又、同一のバンクに異なるページをオープンする前に発せられる。
ページがオープンされた後、リード又はライトコマンドエンコーディングが、メモリデバイス150に与えられてよい。アクティブなページにバーストリードアクセスを開始するためにリードコマンドが、用いられてよい。何れのデータを出力するかを識別するために、メモリコントローラ100が、リードコマンドでアドレス信号182のある数値を与えてよい。例えば、BA0及びBA1の入力数値が、アクセスするためにバンクを選択してよいし、入力A0−A11が、バーストリードのページ(例えば、列)内にスタート箇所を選択してよい。異なるバースト長のバーストリードを要請する、幾つかの異なるリードコマンドエンコーディングが、与えられてよい。
アクティブページにライトアクセスを開始するために、メモリコントローラ100は、ライトコマンドを特定するためのコマンド信号180の数値を生成してよい。アドレスのもう1つのセットは、書き込みされるべきデータを選択するために、ライトコマンドで与えられてもよい。例えば、BA0及びBA1入力数値は、アクセスするためのバンクを選択してよいし、入力A0−A11に与えられたアドレスは、バーストライトのためのカラムスタート箇所を選択してよい。異なるバースト長を特定する、幾つかの異なるライトコマンドエンコーディングが、与えられてよい。
バーストアクセスが、選択された箇所で開始し、(リード又はライトコマンドの特定のコマンドエンコーディングによって示されるように)プログラムされた、又はリクエストされたバースト数まで続く。バーストシーケンスは、シリアルバーストシーケンス又はインターリーブバーストシーケンスの何れかに従うようにプログラムされてよい。従来のDRAMsは、1、2、4、8ビット、又はそれら以上のビットをリード又はライトするためにプログラムされてよい。一般的に、DRAMsは、パイプラインすることをサポートし、それが前のメモリリクエストを実行しながら、メモリトランザクションのアドレスを受け入れ、信号をコントロールすることを可能にさせる。
メモリデバイス150に含まれるモードレジスタ154は、メモリデバイスの動作の特定モードを定義するために用いられてよい。上述したように、モードレジスタ154が、バースト長設定の選択を可能にする。加えて、このモードレジスタ154は、(シーケンシャル、又はインターリーブの)バースト形式、CASレイテンシ、及び動作モードの選択を可能にし得る。それ故、モードレジスタ154の設定が、メモリアレイ152がいずれの方法でアクセスを実行するかを、コントロールし得る。
モードレジスタ154は、モードレジスタ設定コマンドをメモリデバイス150に与えるために、メモリコントローラ100によりプログラムされてよい。モードレジスタ設定コマンドでメモリデバイス150に与えられた、アドレス信号182の数値は、モードレジスタ154に記録するための新たな数値を示し得る。例えば、アドレスビットA0−A2が、モードレジスタ154をプログラムするとき、バースト長を特定するために用いられてよい。モードレジスタ154に特定されたバースト長は、一般的なリード又はライトコマンドの際、アクセス可能であるコラム箇所の最大数を判断する。一実施形態において、バースト長2,4,8の列箇所を、シーケンシャル又はインターリーブバースト形式の双方に関して特定し得る。バンク全てがアイドル状態であり、現在進行中のバーストがないとき、新たな数値で、モードレジスタ154がロードされてよい。モードレジスタ154をプログラムした後、次に続く全ての動作を始める前に、メモリコントローラ100が、特定された時間、待つことを要請される場合がある。
モードレジスタの設定を変更しなくても、異なるバースト長のアクセスを実行可能にするために、メモリデバイス150が、異なるコマンドエンコーディングに応じて異なるバースト長のバーストアクセスを実行するために構築されてよい。各コマンドエンコーディングは、コントロール信号数値の特定的なセットとして生成され、実行すべきアクセスの形式とバースト長の双方を示す。このコマンドエンコーディングは、もう1つのピンをメモリデバイス150に付加しなくてもいいように、多くの実施形態において(例えば、S,CAS、RAS、及びWEの数値のような)既存のコントロール信号数値の使用されていない組み合わせから選択され得る。異なるコマンドエンコーディング同士の区別を行い、及び特定されたバースト長のアクセスを実行することによって異なるコマンドエンコーディングの各々に応じるために、メモリデバイス150が、構築されてよい。一コマンドエンコーディングは、要請されたバースト長がモードレジスタ154におけるバースト長設定によって判断されなくてはならないことを示してよい。
表1は、一実施形態においてメモリコントローラ100によって、メモリデバイス150に与えられ得る幾つかのコマンドエンコーディングのリストを示す。ADDRは、BA0−BA1とA0−A11信号を含む。
表1
│名称(機能) │S│RAS │CA│WE│ADDR │
│アクティブ │L│L │H │H │バンク/ │
│(バンクとアクティブローを選択) │ │ │ │ │行(row) │
│リード(バースト長=8) │L│H │H │L │バンク/ │
│(バンクと列を選択、リードバースト│ │ │ │ │列(col) │
│を開始) │ │ │ │ │ │
│リード(バースト長=モードレジスタ│L│H │L │H │バンク │
│バースト長) │ │ │ │ │列(col) │
│(バンクと列を選択、リードバースト│ │ │ │ │ │
│を開始) │ │ │ │ │ │
│ライト │L│H │L │L │バンク │
│(バンクと列を選択、ライトバースト│ │ │ │ │列(col) │
│を開始) │ │ │ │ │ │
│モードレジスタ設定 │L│L │L │L │オプコード│
表1に示すように、一実施形態のメモリシステムは、2つの異なるリードコマンドエンコーディングをサポートし得る。1つのリードコマンドエンコーディングでは、特定のバースト長(8)を特定し、その一方で、他のエンコーディングではモードレジスタ154に特定されたバースト長を利用しなければならないことを示す。他の形態において、第2のエンコーディングは、特定のバースト長(例、4)が利用されなければならないことを示す場合がある。この実施形態において、これらのコマンドエンコーディングは、追加のコントロール信号又は追加のアドレス信号を用いることなしに特定されてよいことに注目されたい。メモリデバイス150は、データマスキングされていない、コマンドエンコーディングの各々に特定されるバースト長を有するバーストアクセスを実行することも注目されたい。この実施形態は、DDRIIDRAMに実装され得る。例えば、バースト長8を特定するリードコマンドエンコーディングは、DDRIにおけるコマンドを終了するバーストを特定するために利用されるコマンドエンコーディングであり得る。
メモリコントローラ100を、異なるデバイスから異なるバースト長リクエストを受信するように構成してもよい。リクエストされたバースト長により、メモリコントローラ100は、何れのコマンドエンコーディングを、メモリデバイス150に与えるかを選択し得る。例えば、プロセッサトランザクションは、8バーストを含み得るが、画像コントローラ(例えば、図4に示す画像コントローラ408)によって始められたAGP(Advanced Graphics Port)トランザクションは、一度に4バーストを含み得る。プロセッサ(例えば、図4に示すCPU10)が、トランザクションを始めれば、メモリコントローラ100は、メモリデバイスから8バーストを要請するコマンドエンコーディングを出力し得る。替わりに画像コントローラがトランザクションを始めれば、メモリコントローラ100は、メモリデバイスの4バーストを要請する異なるコマンドエンコーディングを出力し得る。モードレジスタ154における現在のバースト長設定にかかわらず、各コマンドエンコーディングに要請されたバースト数を出力することによって、メモリデバイス150は、対応し得る。
幾つかの実施形態において、何れの異なるコマンドエンコーディングがメモリコントローラ100によって生成され得るかを、モードレジスタ154のバースト長設定が、判断し得る。バースト長が1つの数値を有し、このバースト長設定が他の数値を有すれば、利用されない場合、幾つかのコマンドエンコーディングが、利用され得る。例えば、一実施形態において、異なるコマンドエンコーディングが、現在のバースト長設定より大きいとき、又、等しいときにバースト長を特定するために利用され得る。従って、この実施形態において、現在のバースト長の設定が最大数値を有する場合、現在のバースト長設定に等しいバースト長を示す、又は現在のバースト長設定を使用しなければならないことを示す、1つのコマンドエンコーディングのみがメモリデバイスに与えられ得る。
他の形態において、モードレジスタの現在のバースト長設定にかかわらず、異なるコマンドエンコーディングの全てがメモリデバイスに与えられてよいことに注目されたい。これらの実施形態の幾つかにおいて、各コマンドエンコーディングは、(現在のバースト長設定が使用されなくてはならないことを示す、1つ以上のコマンドエンコーディングとは反対に)特定のバースト長を示し得る。幾つかの実施形態において、バーストアクセスを始めるために利用された各コマンドエンコーディングは、要請されたアクセスのバースト長を特定し得る。そのような実施形態において、各コマンドエンコーディングが、特定のバースト長を特定するので、モードレジスタにおけるバースト長設定は、重要ではない可能性がある。従って、幾つかの実施形態のメモリデバイスは、モードレジスタにおけるバースト長設定を提供しない場合がある。
幾つかの実施形態において、異なるコマンドエンコーディングは、リードとライトの双方に関して可能であり得る。他の実施形態において、(現在のバーストモードレジスタの設定が用いられなければならないことを示す)1つのコマンドエンコーディングがライト用に与えられてよいし、(各々が異なるバースト長、又は現在のバーストモードレジスタの設定が用いられなければならないことを特定する)幾つかのコマンドエンコーディングが、リード用に与えられてよい(又は逆も可である)。
一実施形態において、(例えば、S,RAS、CAS、及びWEに加えて)付加のコマンドラインが、(例えば、アクセスの異なる形式(例、リード又はライト)を特定し、又は追加のバースト長を特定する)追加のコマンドエンコーディングを定義するために用いられるように、新しい付加の(extra)コマンドピンがメモリデバイス150に追加され得る。そのような一実施形態において、コマンドエンコーディングは、バースト長2,4,8,及び/又は16を特定するために利用され得る。追加のコマンドラインは、アドレスラインとして用いられない場合がある。1以上の追加のコマンドラインは、幾つかの実施形態において異なるバーストアクセスコマンドエンコーディングを特定するために利用され得る。
図2A〜図2Cは、メモリシステムの一実施形態において生成され得る模範的なタイミング波形を示す。これらの例において、CL(CASレイテンシ)=4,AL(アクティブレイテンシ)=0,RL(リードレイテンシ)=4,及びWL(ライトレイテンシ)である。これらの実施例において、モードレジスタにおけるバースト長設定は、各例にわたって、4に等しく設定されていると仮定する。例えば、図2Aにおいて、モードレジスタのバースト長設定は、BL=4リードコマンドとBL=8リードコマンドが実行される間、変更されず、BL=8リードコマンドとBL=4リードコマンドが実行される間も、変更されない。
図2Aは、BL(バースト長)=4リードコマンドを実行し、次にBL=8リードコマンドともう1つのBL=リードコマンドの実行が続くことを表している。この例において、現在のバースト長が設定メモリデバイスに用いられなくてはならないことを示すコマンドエンコーディングを与えることによって、BL=4リードコマンドが、始められ得る。BL=8リードコマンドは、(現在のバースト長設定に係わらず)バースト長8を有するバーストアクセスが使用されなければならないことを示すコマンドエンコーディングを与えることによって、実行され得る。この例として、メモリデバイスは連続するデータストリームを出力することによってコマンドに対応し得るし、前のアクセスが完了してしまうと即、一アクセスを実行する。各アクセスは、要請されたバースト数に応じたサイクル数で実行されることにも注目されたい。図2Bは、BL=4ライトコマンドの実行、次にBL=8ライトコマンドの実行が続くことを示す。図2Cは、BL=8ライトコマンドの実行、次にBL=4ライトコマンドの実行が続くことを示す。
図3は、メモリシステムを動作させるための方法の一実施形態を示す。この実施形態において、特定のバースト長を有するバーストアクセスを実行するためのメモリデバイスの要請は、301で受信される。要請されたバースト長が、(例えば、モードレジスタに特定された)メモリデバイスの現在のバースト長設定と同様である場合、第1コマンドエンコーディングは、ブロック303〜ブロック305に示すようにメモリデバイスに与えられ得る。第1コマンドエンコーディングは、現在のバースト長設定が用いられなければならないことを示し得る。他の形態として、現在のバースト長設定と同様であるバースト長を特定することによって実行されなければならないバーストアクセスのバースト長を、第1コマンドエンコーディングが、特定的に示す場合がある。第1コマンドエンコーディングの受信に応じて、メモリデバイスは、ブロック309に示すようにバースト長を有するバーストアクセスを実行する。
リクエストされたバースト長がメモリデバイスの現在のバースト長設定と同じではない場合、第2コマンドエンコーディングが、ブロック303と309に示されるようにメモリデバイスに与えられ得る。第2コマンドエンコーディングは、少なくとも1つのコントロール信号の数値によって、第1コマンドエンコーディングと異なる。第2コマンドエンコーディングは、現在のバースト長設定によって示されたバースト長とは異なる、固有のバースト長を有するバーストアクセスが実行されなければならないことを示す。第2コマンドエンコーディングに応じて、メモリデバイスは、ブロック311に示されるように第2コマンドエンコーディングによって特定されたバースト長を有するバーストアクセスを実行する。第1及び第2コマンドエンコーディングの双方は、アクセスの同様の形式(例、リードアクセス)を特定するために利用されてよい。第1と第2コマンドエンコーディングに特定されたものと異なる、バースト長を有するアクセスを実行するために追加のコマンドエンコーディングを利用してもよく、及び/又は第1と第2コマンドエンコーディングに特定された形式とは異なる形式のアクセスを実行するために利用されてもよい。
図4は、バスブリッジ402を介して様々なシステム構成要素に結合されたプロセッサを含む、コンピュータシステム400の一実施形態のブロック概略図である。コンピュータシステム400は、図1〜図2に描かれた1つのようなメモリシステムの一実施形態を含んでよい。描かれた実施形態は、単に一例のみを表すのであって、このコンピュータシステムの他の実施形態が可能であり、考えられてよいことに注目されたい。この描かれたシステムでは、メインメモリ404は、メモリバス406を介してバスブリッジ402に結合され、画像コントローラ408は、AGPバス410を介してバスブリッジ402に結合される。幾つかのPCIデバイス412Aと412Bは、PCIバス414を介してバスブリッジ402に結合される。第2ブリッジ416も又、EISA/ISAバス420を介して1つ以上のEISA又はISAデバイスに電気的インターフェースを内蔵するために与えられてよい。この例において、プロセッサ10は、CPUバス424を介してバスブリッジ402に結合され、オプショナルL1キャッシュに結合される。幾つかの実施形態において、このプロセッサ10は、(図示されていない)集積L1キャッシュを含んでよい。プロセッサ10も又、幾つかの実施形態において、メモリコントローラ100の一実施例を含んでよい。
バスブリッジ402は、プロセッサ10、メインメモリ404、画像コントローラ408、及びPCIバス414に接続されたデバイス間のインターフェースを与える。バスブリッジ402に接続されたデバイスの1つからオペレーションを、受信した場合、バスブリッジ402は、オペレーションのターゲット(例えば、特定のデバイス、又は、PCIバスの場合は、ターゲットがPCIバス414に接続されていること)を識別する。バスブリッジ402は、ターゲットとされたデバイスにオペレーションをルートする。バスブリッジ402は、概して、ソースデバイス、又はソースバスにより利用されたプロトコルのオペレーションを、ターゲットデバイス又はターゲットバスにより利用されたプロトコルに変換する。一実施形態において、バスブリッジ402は、上述したようにメモリコントローラ100の一実施形態を含んでよい。
PCIバス414のISA/EISAバスに対するインターフェースを与えることに加えて、第2バスブリッジ416は、付加の機能を含んでよい。入出力コントローラ(図示されない)は、第2バスブリッジ416の外部であれ、又は統合されているにせよ、キーボードとマウス422と様々なシリアルポート及びパラレルポートのオペレーションをサポートするためにコンピュータシステム400内に含まれてよい。他の実施形態において、(図示されない)外部キャッシュユニットも又、プロセッサ10とバスブリッジ402間におけるCPUバス424に結合してよい。他の形態では、外部のキャッシュは、バスブリッジ402に統合されてよいし、外部キャッシュのキャッシュコントロールロジックは、バスブリッジ402に統合されてよい。L2キャッシュ428は、プロセッサ10のバックサイド構築において示される。L2キャッシュ428は、プロセッサ10から分離してよいし、プロセッサ10でカートリッジ(例、スロット1又はスロットA)内に統合されてよいし、プロセッサ10で半導体基板上に統合されてもよい。
メインメモリ404は、アプリケーションプログラムが記録され、プロセッサ10が主に実行するメモリである。適切なメインメモリ404は、DRAMを含む。例えば、SDRAM又はRambus DRAM(RDRAM)の複数のバンクが適切であり得る。メインメモリデバイス404は、現在のバースト長設定によって指示されたバースト長以外のバースト長を特定する異なる、コマンドエンコーディングに応じるするために構築されてよい。
PCIバス412A〜412Bは、ネットワークインターフェース、ビデオアクセラレータ、オーディオカード、ハード又はフロッピイディスクドライバ、又はドライブコントローラ、SCSI(Small Computer System Interface:スモールコンピュータシステムインターフェース)アダプター、及び電話カードのような様々な周辺機器を例示したものである。同様に、ISAデバイス418は、モデム、サウンドカード、及び、GPIB又はフィールドバスインターフェースカードのような種々のデータ取得カードのような様々な周辺機器の様々な形式の例示したものである。
画像コントローラ408は、ディスプレイ426のテキストと画像の表示をコントロールするために与えられてよい。画像コントローラ408としては、メインメモリ404に効率的にシフトイン及びシフトアウト可能である三次元データ構造を表示する、当業者には周知である一般的な画像アクセラレータを用いてよい。それ故、画像コントローラ408は、メインメモリ404へのアクセスを入手するために、バスブリッジ402内のターゲットインターフェースに対するアクセスを要請及び受信可能であるAGPバス410のマスターであってよい。専用の画像バスは、メインメモリ404のデータの急速な読み取りを含む。ある種のオペレーションに関して、画像コントローラ408は、更に、AGPバス410のPCIプロトコルトランザクションを生成するために構築されてよい。それ故、バスブリッジ402のAGPインターフェースは、PCIプロトコルターゲットとイニシエータトランザクションと同様に、双方のAGPプロトコルトランザクションをサポートするための機能性を含んでよい。ディスプレイ426は、画像、又はテキストが表示される、全ての電気的ディスプレイである。適切なディスプレイ426は、陰極線管(“CRT”:Cathode Ray Tube)、液晶ディスプレイ(“LCD”)等を含む。
AGP、PCI、及びISA又はEISAバスが上述した本文における例として用いられた一方で、全てのバスが求められるように、置き換えられてよいことに注目されたい。更に、コンピュータシステム400は、付加のプロセッサ(例えば、コンピュータシステム400のオプショナル構成成分として示されるプロセッサ10a)を含む多重プロセッシングコンピュータシステムであってよい。プロセッサ10aは、プロセッサ10と同様であってよい。より具体的には、プロセッサ10aは、プロセッサ10の同一の複製物であってよい。プロセッサ10aは、(図5に示すように)独立したバスを介してバスブリッジ402に接続されてよいし、プロセッサ10とCPUバス224を共有してよい。更に、プロセッサ10aは、L2キャッシュ428と同様に、オプショナルL2キャッシュ428aに結合してよい。
図5を参照すると、上述したメモリシステムを含む、コンピュータシステムのもう1つの実施形態が示されている。他の実施形態が、可能であり、考えられる。図5における実施形態において、コンピュータシステム400は、幾つかのプロセッシングノード612A、612B、612C、及び612Dを含む。各プロセッシングノードは、各メモリ614A〜612Dにそれぞれ、含まれるメモリコントローラメモリ616A〜616Dを介して、614A〜612Dにそれぞれ、結合される。加えて、プロセッシングノード612A〜612Dは、プロセッシングノード612A〜612D間の通信を行うために利用されるインターフェースロジック618Aを含む。例えば、プロセッシングノード612Aは、プロセッシングノード612Bと通信を行うためのインターフェースロジック618Aと、プロセッシングノード612Cと通信を行うためのインターフェースロジック618Bと、及び(図示されていない)もう1つのプロセッシングノードと通信を行うための第3インターフェースロジック618Cを含む。同様に、プロセッシングノード612Bは、インターフェースロジック618D、618E及び618Fを含み、プロセッシングノード612Cは、インターフェースロジック618G、618H及び618Iを含み、プロセスノード612Dは、インターフェースロジック618J、618K、及び618Lを含む。プロセッシングノード612Dは、インターフェースロジック618Lを介して複数の入/出力デバイス(例、デイジーチェーン構築におけるデバイス620A〜620B)と通信を行うために結合する。他のプロセッシングノードは、他の入/出力(I/O)デバイスと同様の方法で通信を行ってよい。
プロセッシングノード612A〜612Dは、インタープロセッシングノード通信のためのパケットベースのリンクを実装する。本実施形態において、このリンクは、非指向性のラインセットとして、実装される(例えば、ライン624Aは、プロセッシングノード612Aからプロセッシングノード612Bに複数のパケットを、伝送するために利用され、ライン624Bは、プロセッシングノード612Bからプロセッシングノード612Aに複数のパケットを、伝送するために利用される)。他のライン624C〜624Hのセットは、図5に示された他のプロセッシングノード間にパケットを伝送するために利用される。概して、ライン624の各セットは、1つ以上のデータライン、これらのデータラインに対応する1つ以上のクロックライン、及び伝送されているパケットの形式を示す1以上のコントロールラインを含んでよい。このリンクは、プロセッシングノード間の通信を行うためにキャッシュコヒーレントな方法で動作してよいし、プロセッシングノードとI/Oデバイス(又はPCIバス又はISAバスのような従来の構造のI/Oバスに対するバスブリッジ)間の通信を行うために非コヒーレントな方法で操作してよい。更に、図示されたようにI/Oデバイス間にデイジーチェーン構造を用いてこのリンクが、動作されてよい。あるプロセッシングノードから他のプロセッシングノードに伝送されなければならないパケットは、1以上の中間ノードを通じてよいことに注目されたい。例えば、プロセッシングノード612Aによりプロセッシングノード612Dに伝送されたパケットは、図5に示すようにプロセッシングノード612B又はプロセッシングノード612Bの何れかを通じてよい。全ての適切なルーチンアルゴリズムが実行されてよい。コンピュータシステム400の他の実施形態は、図5に示す実施形態よりも多いプロセッシングノード、又は少ないプロセスノードを含む場合がある。
概して、パケットは、ノード間のライン624に1以上のビット時間として伝送され得る。ビット時間は、対応するクロックラインのクロック信号の立ち上がりエッジ又は立ち下がりエッジであり得る。パケットは、トランザクションを始めるためのコマンド、キャッシュの可干渉性を保持するためのプローブパケット、プローブ及びコマンドに応じるためのレスポンスパケットを含んでいる場合がある。
メモリコントローラとインターフェースロジックに加えて、プロセッシングノード612A〜612Dは、1つ以上のプロセッサを含んでよい。大まかに言えば、プロセッシングノードは、少なくとも1つのプロセッサを含み、求めれるように、メモリと他のロジックとの通信を行うためのメモリコントローラをオプションで含んでよい。より具体的には、プロセッシングノード612A〜612Dの各々は、1つ以上のプロセッサ10の複製品を含んでよい。外部インターフェースユニット18は、メモリコントローラ616と同様にノード内にインターフェースロジック618を含んでよい。メモリコントローラ616の各々は、上述したようにメモリコントローラの一実施形態を含んでよい。
メモリ614A〜614Dは、適切なメモリデバイスを含んでよい。例えば、メモリ614A〜614Dは、1つ以上のRAMBUS DRAMs(RDRAMs)、同期DRAMs(SDRAMs)、スタティックRAM等を含んでよい。コンピュータシステム400のアドレススペースは、メモリ614A〜614Dの間で分配される。各プロセッシングノード612A〜612Dは、何れのアドレスがメモリ614A〜614Dの何れにマップされるかを判断し、従って、特定のアドレスのメモリリクエストが、プロセスノード612A〜612Dの何れにルートされなければならないかを判断するために用いられるメモリマップを含んでよい。一実施形態によると、コンピュータシスステム400内のアドレスの可干渉箇所は、このアドレスに対応するバイトを記録するメモリに結合されるメモリコントローラ616A〜616Dである。即ち、メモリコントローラ616A〜616Dは、対応するメモリ614A〜614Dに対する各アクセスが、キャッシュコヒレント方法で生じることを確認する義務を担っている。メモリコントローラ616A〜616Dは、メモリ614A〜614Dにインターフェースするためのコントロール回路を含み得る。加えて、メモリコントローラ616A〜616Dは、キューメモリリクエストのためのリクエストキューを含んでよい。
インターフェースロジック618A〜618Lは、リンクからパケットを受信するための様々なバッファと、リンク上で伝送されなければならないパケットをバッファするための様々なバッファを含んでよい。コンピュータシステム400は、パケットを伝送するためのコントロール機構の全ての適切なフローコントロールを実行してよい。例えば、一実施形態において、各インターフェースロジック618は、インターフェースロジックが接続されるリンクのもう一方の端でのレシーバ内の各バッファ形式の数のカウントを記録する。インターフェースロジックは、受信するインターフェースロジックがパケットを記録するためのフリーバッファを有さない限り、パケットを伝送しない。受信するバッファは、パケットを先へルートすることによってフリーになるので、受信するインターフェースロジックは、バッファがフリーになったことを示すためにメッセージを、送信インターフェースロジックに伝送する。このような機構は、“クーポンベース”システムと称される場合がある。
I/Oデバイス620A〜620Bは、適切なI/Oデバイスであり得る。例えば、I/Oデバイス620A〜620Bは、デバイスに結合されてよい、もう1つのコンピュータシステムと通信を行うためのデバイス(例、ネットワークインターフェースカード、又はモデム)を含んでよい。更に、I/Oデバイス620A〜620Bは、ビデオアクセラレータ、オーディオカード、ハード又はフロッピーディスクドライブ又はドライブコントローラ、SCSIアダプタ、及びテレフォンカード、サウンドカード、及びGPIB又はフィールドバスインターフェースカードのような様々なデータ収集カードを含んでよい。用語“I/Oデバイス”と“周辺機器”は、本文において同義であることを意図している。
上述した本開示の教示から利益を得る当業者にとって、多くの変形又は変更が可能であることが明瞭となろう。この種の変形例の全てが本発明の範囲ならびに趣旨に含まれることが意図されることが明らかである。
本発明は、概して、コンピュータシステムに適用可能である。
メモリシステムの一実施形態の説明図。 メモリシステムの一実施形態のオペレーションを表すタイミングの概略説明図。 メモリシステムの一実施形態のオペレーションを表すタイミングの概略説明図。 メモリシステムの一実施形態のオペレーションを表すタイミングの概略説明図。 メモリシステムを動作するための方法の一実施形態のフローチャート。 図1に示すようなメモリシステムの一実施形態を含む、コンピュータシステムの実施形態の概略説明図。 図1に示すようなメモリシステムの一実施形態を含む、コンピュータシステムの実施形態の概略説明図。

Claims (10)

  1. バースト長を有するバーストアクセスをメモリデバイス(150)実行させるためのリクエストを受信し、
    前記バースト長が、前記メモリデバイス(150)の現在のバースト長設定によって指示された第1バースト長であるとき、前記メモリデバイス(150)に第1コマンドエンコーディングを与え、かつ、
    前記バースト長が、前記バースト長設定(154)によって指示された前記第1バースト長と等しくない第2バースト長であるとき、前記メモリデバイス(150)に第2コマンドエンコーディングを与え、
    前記メモリデバイス(150)が、前記第1コマンドエンコーディングに応じて、前記第1バースト長を有する前記バーストアクセスを実行し、
    前記メモリデバイス(150)が、前記第2コマンドエンコーディングに応じて、前記第2バースト長を有する前記バーストアクセスを実行する、方法。
  2. 前記バーストアクセスは、リードアクセスである、請求項1記載の方法。
  3. 前記メモリデバイスに第3バースト長を有する第2バーストアクセスを実行させるためのリクエストを受信し、
    前記第3バースト長が前記バースト長設定によって指示された第1バースト長に等しくないとき、前記メモリデバイスに、第3コマンドエンコーディングを与え、
    前記メモリデバイスが、前記第3コマンドエンコーディングに応じて、前記第3バースト長を有する前記第2バーストアクセスを実行するとともに、前記第2バーストアクセスがライトバーストアクセスである、請求項2記載の方法。
  4. 前記メモリデバイスは、DDRIIDRAMである、請求項1記載の方法。
  5. 前記第1コマンドエンコーディングを与える前記過程は、チップ選択信号、列アドレスストローブ、行アドレスストローブ信号、及びライトイネーブル信号の値をコントロールする過程を含み、かつ、
    前記第2コマンドエンコーディングを与える前記過程は、前記チップ選択信号、前記アドレスストローブ信号、前記行アドレスストローブ信号、及び前記ライトイネーブル信号の値をコントロールする過程を含む、請求項1記載の方法。
  6. 現在のバースト長を示す数値を記録するよう構成されたモードレジスタ(154)と、
    メモリアレイ(152)とを含み、
    前記メモリアレイ(152)は、符号化されたコマンドを受信するよう構成され、前記符号化されたコマンドは、バースト長を識別するものであり、
    前記メモリアレイ(152)は、前記符号化されたコマンドを受信する過程に応じて、前記符号化されたコマンドによって識別された前記バースト長を有するバーストアクセスを実行するよう構成され、前記バースト長は、前記現在のバースト長とは異なるものである、メモリデバイス。
  7. 前記メモリアレイは、第2バースト長を識別する第2符号化されたコマンドを受信し、かつ、これに応答して前記第2バースト長を有する第2バーストアクセスを実行可能に構成され、
    前記第2バースト長は、前記バースト長とは異なるものであり、かつ、
    前記メモリアレイは、前記符号化されたコマンドと前記第2符号化されたコマンドの双方に応じて、リードアクセスを実行するよう構成される、請求項6記載のメモリデバイス。
  8. 前記メモリデバイスは、DDRIIDRAMである、請求項6記載のメモリデバイス。
  9. 前記符号化されたコマンドは、チップ選択信号、列アドレスストローブ信号、行アドレス信号、及びライトイネーブル信号の数値として受信される、請求項6記載のメモリデバイス。
  10. 第1バースト長を有する第1メモリアクセスの受信に応じて第1コマンドエンコーディングを生成するよう構成され、かつ、第2バースト長を有する第2メモリアクセスリクエストの受信に応じて第2コマンドエンコーディングを生成するよう構成されたメモリコントローラ(100)を有し、前記第1コマンドエンコーディングは、前記第1バースト長を識別し、前記第2コマンドエンコーディングは、第2バースト長を識別するものであり、
    前記メモリコントローラ(100)に結合され、かつ、前記第1コマンドエンコーディングの受信に応じて前記第1バースト長を有する第1バーストアクセスを実行するよう構成され、前記第2コマンドエンコーディングの受信に応じて前記第2バースト長を有する第2バーストアクセスを実行するよう構成されたメモリデバイス(150)を有する、システム。
JP2004521557A 2002-07-11 2003-07-09 モードレジスタにおけるバースト長設定の変更を行わずに、異なるバースト長のアクセスをサポートするdram Expired - Lifetime JP4507186B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/193,828 US6957308B1 (en) 2002-07-11 2002-07-11 DRAM supporting different burst-length accesses without changing the burst length setting in the mode register
PCT/US2003/021286 WO2004008329A1 (en) 2002-07-11 2003-07-09 Dram supporting different burst-length accesses without changing the burst length setting in the mode register

Publications (3)

Publication Number Publication Date
JP2005532657A true JP2005532657A (ja) 2005-10-27
JP2005532657A5 JP2005532657A5 (ja) 2006-08-31
JP4507186B2 JP4507186B2 (ja) 2010-07-21

Family

ID=30114615

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004521557A Expired - Lifetime JP4507186B2 (ja) 2002-07-11 2003-07-09 モードレジスタにおけるバースト長設定の変更を行わずに、異なるバースト長のアクセスをサポートするdram

Country Status (9)

Country Link
US (1) US6957308B1 (ja)
EP (1) EP1522021B1 (ja)
JP (1) JP4507186B2 (ja)
KR (1) KR101005114B1 (ja)
CN (1) CN1333353C (ja)
AU (1) AU2003258997A1 (ja)
DE (1) DE60313323T2 (ja)
TW (1) TWI307464B (ja)
WO (1) WO2004008329A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012256414A (ja) * 2011-06-09 2012-12-27 Samsung Electronics Co Ltd エラー訂正回路を具備したオンチップ・データ・スクラビング装置及び方法

Families Citing this family (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7475168B2 (en) * 2004-03-11 2009-01-06 Sonics, Inc. Various methods and apparatus for width and burst conversion
US7543088B2 (en) 2004-03-11 2009-06-02 Sonics, Inc. Various methods and apparatuses for width and burst conversion
US8122187B2 (en) * 2004-07-02 2012-02-21 Qualcomm Incorporated Refreshing dynamic volatile memory
US8032676B2 (en) 2004-11-02 2011-10-04 Sonics, Inc. Methods and apparatuses to manage bandwidth mismatches between a sending device and a receiving device
US7640392B2 (en) * 2005-06-23 2009-12-29 Qualcomm Incorporated Non-DRAM indicator and method of accessing data not stored in DRAM array
US7620783B2 (en) * 2005-02-14 2009-11-17 Qualcomm Incorporated Method and apparatus for obtaining memory status information cross-reference to related applications
WO2007099447A2 (en) * 2006-03-02 2007-09-07 Nokia Corporation Method and system for flexible burst length control
KR100799132B1 (ko) * 2006-06-29 2008-01-29 주식회사 하이닉스반도체 초기값변경이 가능한 모드레지스터셋회로.
US9262326B2 (en) * 2006-08-14 2016-02-16 Qualcomm Incorporated Method and apparatus to enable the cooperative signaling of a shared bus interrupt in a multi-rank memory subsystem
US20080059748A1 (en) * 2006-08-31 2008-03-06 Nokia Corporation Method, mobile device, system and software for a write method with burst stop and data masks
US20080301391A1 (en) * 2007-06-01 2008-12-04 Jong-Hoon Oh Method and apparatus for modifying a burst length for semiconductor memory
KR101260313B1 (ko) * 2007-06-12 2013-05-03 삼성전자주식회사 전자장치 및 그 데이터 송수신방법과, 슬레이브 장치 및복수의 장치 간의 통신방법
US7688628B2 (en) * 2007-06-30 2010-03-30 Intel Corporation Device selection circuit and method
TWI358735B (en) * 2008-01-03 2012-02-21 Nanya Technology Corp Memory access control method
US20100325333A1 (en) * 2008-10-14 2010-12-23 Texas Instruments Incorporated Method Allowing Processor with Fewer Pins to Use SDRAM
US8266471B2 (en) * 2010-02-09 2012-09-11 Mosys, Inc. Memory device including a memory block having a fixed latency data output
US8856579B2 (en) * 2010-03-15 2014-10-07 International Business Machines Corporation Memory interface having extended strobe burst for read timing calibration
US9319880B2 (en) * 2010-09-15 2016-04-19 Intel Corporation Reformatting data to decrease bandwidth between a video encoder and a buffer
KR101964261B1 (ko) 2012-05-17 2019-04-01 삼성전자주식회사 자기 메모리 장치
EP3025347A1 (en) * 2013-07-26 2016-06-01 Hewlett Packard Enterprise Development LP First data in response to second read request
US10534540B2 (en) 2016-06-06 2020-01-14 Micron Technology, Inc. Memory protocol
US10198195B1 (en) * 2017-08-04 2019-02-05 Micron Technology, Inc. Wear leveling
US10846253B2 (en) 2017-12-21 2020-11-24 Advanced Micro Devices, Inc. Dynamic page state aware scheduling of read/write burst transactions
KR20200057136A (ko) 2018-11-15 2020-05-26 에스케이하이닉스 주식회사 반도체장치
US11270416B2 (en) 2019-12-27 2022-03-08 Nxp Usa, Inc. System and method of using optimized descriptor coding for geometric correction to reduce memory transfer bandwidth overhead
US11687281B2 (en) * 2021-03-31 2023-06-27 Advanced Micro Devices, Inc. DRAM command streak efficiency management
US20230289063A1 (en) * 2022-03-14 2023-09-14 Mediatek Inc. Electronic system and method for controlling burst length to access memory device of electronic system

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10208468A (ja) * 1997-01-28 1998-08-07 Hitachi Ltd 半導体記憶装置並びに同期型半導体記憶装置

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5754825A (en) 1995-05-19 1998-05-19 Compaq Computer Corporation Lower address line prediction and substitution
US7681005B1 (en) * 1996-01-11 2010-03-16 Micron Technology, Inc. Asynchronously-accessible memory device with mode selection circuitry for burst or pipelined operation
US6226724B1 (en) * 1997-09-03 2001-05-01 Motorola, Inc. Memory controller and method for generating commands to a memory
JPH11134243A (ja) * 1997-10-31 1999-05-21 Brother Ind Ltd 記憶装置の制御装置及びデータ処理システムにおける記憶装置の制御方法
JP3948141B2 (ja) * 1998-09-24 2007-07-25 富士通株式会社 半導体記憶装置及びその制御方法
US6606352B2 (en) 1999-01-15 2003-08-12 Broadcom Corporation Method and apparatus for converting between byte lengths and burdened burst lengths in a high speed modem
US6393500B1 (en) 1999-08-12 2002-05-21 Mips Technologies, Inc. Burst-configurable data bus
KR20020014563A (ko) * 2000-08-18 2002-02-25 윤종용 반도체 메모리 장치
US6549991B1 (en) * 2000-08-31 2003-04-15 Silicon Integrated Systems Corp. Pipelined SDRAM memory controller to optimize bus utilization
JP4025002B2 (ja) 2000-09-12 2007-12-19 株式会社東芝 半導体記憶装置
US6895474B2 (en) * 2002-04-29 2005-05-17 Micron Technology, Inc. Synchronous DRAM with selectable internal prefetch size

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10208468A (ja) * 1997-01-28 1998-08-07 Hitachi Ltd 半導体記憶装置並びに同期型半導体記憶装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012256414A (ja) * 2011-06-09 2012-12-27 Samsung Electronics Co Ltd エラー訂正回路を具備したオンチップ・データ・スクラビング装置及び方法

Also Published As

Publication number Publication date
AU2003258997A1 (en) 2004-02-02
EP1522021A1 (en) 2005-04-13
TWI307464B (en) 2009-03-11
DE60313323D1 (de) 2007-05-31
JP4507186B2 (ja) 2010-07-21
KR101005114B1 (ko) 2010-12-30
DE60313323T2 (de) 2007-12-27
TW200401191A (en) 2004-01-16
CN1669012A (zh) 2005-09-14
EP1522021B1 (en) 2007-04-18
KR20050025960A (ko) 2005-03-14
CN1333353C (zh) 2007-08-22
WO2004008329A1 (en) 2004-01-22
US6957308B1 (en) 2005-10-18

Similar Documents

Publication Publication Date Title
JP4507186B2 (ja) モードレジスタにおけるバースト長設定の変更を行わずに、異なるバースト長のアクセスをサポートするdram
US5893136A (en) Memory controller for independently supporting Synchronous and Asynchronous DRAM memories
EP1137995B1 (en) Queue based memory controller
KR102030126B1 (ko) 판독 데이터 스트로브 신호를 포함하는 감소된 핀 카운트(rpc) 메모리 버스 인터페이스를 위한 장치 및 방법
JP2909592B2 (ja) コンピュータメモリシステム
US20070055813A1 (en) Accessing external memory from an integrated circuit
US6594748B1 (en) Methods and structure for pipelined read return control in a shared RAM controller
EP1488323A2 (en) Memory system with burst length shorter than prefetch length
JP4199658B2 (ja) 読出及び書込動作でバースト順序が異なるアドレッシングを行うメモリデバイス
JPH10207771A (ja) メモリ動作短縮方法
JP2009086702A (ja) メモリ制御装置および半導体装置
JP2000506301A (ja) 高速コマンド入力を有する簡単化されたクロックドdram
JPH09213070A (ja) 隠れプリチャージ式疑似キャッシュdram
US6976122B1 (en) Dynamic idle counter threshold value for use in memory paging policy
US6243768B1 (en) Method and apparatus for controlling data transfer between a synchronous DRAM-type memory and a system bus
US5893917A (en) Memory controller and method of closing a page of system memory
US20050078548A1 (en) Method and memory system in which operating mode is set using address signal
KR100297895B1 (ko) 동기식 dram-타입 메모리와 시스템 버스간의 데이터 전송을 제어하는 방법 및 장치
US5926828A (en) Method and apparatus for controlling data transfer between a synchronous DRAM-type memory and a system bus
US6775718B2 (en) DMA control system enabling flyby transfer to synchronous memory
US7206909B2 (en) Host memory interface for a parallel processor
KR100298955B1 (ko) 데이타처리시스템
JP3817327B2 (ja) データ処理システムにおいてチップ選択可能な装置をアクセスする方法および装置
JP2008117242A (ja) データ転送制御装置、及び、データ転送制御方法
JP3563340B2 (ja) メモリコントローラ

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060710

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060710

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090703

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090714

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20091013

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20091020

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20091116

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: 20100323

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20100421

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100422

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130514

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4507186

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

RD05 Notification of revocation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7425

Effective date: 20100902

A072 Dismissal of procedure [no reply to invitation to correct request for examination]

Free format text: JAPANESE INTERMEDIATE CODE: A072

Effective date: 20101222

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130514

Year of fee payment: 3

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

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

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

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term