JP6395937B2 - メモリ活性化方法および装置 - Google Patents

メモリ活性化方法および装置 Download PDF

Info

Publication number
JP6395937B2
JP6395937B2 JP2017528499A JP2017528499A JP6395937B2 JP 6395937 B2 JP6395937 B2 JP 6395937B2 JP 2017528499 A JP2017528499 A JP 2017528499A JP 2017528499 A JP2017528499 A JP 2017528499A JP 6395937 B2 JP6395937 B2 JP 6395937B2
Authority
JP
Japan
Prior art keywords
row
sub
memory
access request
storage unit
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.)
Active
Application number
JP2017528499A
Other languages
English (en)
Other versions
JP2018500667A (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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Publication of JP2018500667A publication Critical patent/JP2018500667A/ja
Application granted granted Critical
Publication of JP6395937B2 publication Critical patent/JP6395937B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C8/00Arrangements for selecting an address in a digital store
    • G11C8/16Multiple access memory array, e.g. addressing one storage element via at least two independent addressing line groups
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C8/00Arrangements for selecting an address in a digital store
    • G11C8/10Decoders
    • 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/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0659Command handling arrangements, e.g. command buffers, queues, command scheduling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3854Instruction completion, e.g. retiring, committing or graduating
    • G06F9/3856Reordering of instructions, e.g. using queues or age tags
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/22Read-write [R-W] timing or clocking circuits; Read-write [R-W] control signal generators or management 
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C8/00Arrangements for selecting an address in a digital store
    • G11C8/14Word line organisation; Word line lay-out

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Human Computer Interaction (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Advance Control (AREA)

Description

本発明は、コンピュータ分野に関し、特に、メモリ活性化方法および装置に関する。
現在、メモリの消費電力は、データセンタの消費電力の25〜40%を占めている。1つのメモリは、行−列構造を有し、いずれかの行といずれかの列の交差によって形成されるセルが記憶ユニットである。したがって、どの記憶ユニットも、1つの行番号および1つの列番号に対応する。行内の記憶ユニットにアクセスするとき、最初に行全体を活性化する必要がある。番号が「00」の記憶ユニット(すなわち、この記憶ユニットは行0および列0に位置する)にアクセスすべきとき、最初に、行0に位置する9個の記憶ユニットを活性化する必要があり、活性化の消費電力は、メモリの消費電力の少なくとも85%を占める。したがって、現在のデータセンタは、比較的大きな消費電力を有する。
データセンタの消費電力を低減するために、細粒度の行を用いてメモリにアクセスするための方法が提案されている。この解決策の主な発想は、活性化ごとに活性化する必要があるのは、アクセスすべき記憶ユニットのみであり、アクセスすべき記憶ユニットと同じ行に位置するすべての記憶ユニットを活性化する必要はないということである。行活性化命令を受信したときに、メモリは、すぐには行を活性化しない。その代わりに、列活性化命令を受信したときに、メモリは、行活性化命令の行アドレスおよび列活性化命令の列アドレスに従って活性化すべき記憶ユニットを決定し、次に、記憶ユニットを活性化する。したがって、データセンタの消費電力が低減される。
しかしながら、前述の解決策では、複数の記憶ユニットを同時に活性化することができず、その代わりに、記憶ユニットを活性化した後にその都度、記憶ユニットをプリチャージする必要があり、この結果として、次の記憶ユニットの活性化動作を実行することができる。したがって、現在のメモリ活性化方法の欠点は、比較的低い効率である。
本発明の実施形態は、メモリ活性化方法の比較的低い効率という従来技術の欠点を克服するメモリ活性化方法および装置を提供する。
本発明の実施形態で提供される具体的な技術的解決策は以下の通りである。
第1の態様によれば、メモリ活性化方法が提供され、メモリ活性化方法は、
第1のメモリアクセス要求を取得するステップであって、第1のメモリアクセス要求が、メモリ内の第1のサブ行へのアクセスを要求するために使用される、ステップと、
第2のメモリアクセス要求を求めてメモリのスケジューリングすべきキューを検索するステップであって、メモリのスケジューリングすべきキューが、複数のメモリアクセス要求を含み、第2のメモリアクセス要求が、メモリ内の第2のサブ行へのアクセスを要求するために使用され、第1のサブ行および第2のサブ行が、メモリ内の同じ行に位置する、ステップと、
第1の活性化命令を生成するために第1のメモリアクセス要求と第2のメモリアクセス要求とを組み合わせるステップであって、第1の活性化命令が、メモリ内の第1のサブ行および第2のサブ行の活性化を命令するために使用される、ステップと、
第1の活性化命令をメモリに送信するステップと
を含む。
第1の態様に関連して、第1の可能な実施態様では、第2のメモリアクセス要求を求めてメモリのスケジューリングすべきキューを検索するステップの後に、本方法は、
サブ行選択ベクトルを生成し、サブ行選択ベクトルをメモリに送信するステップをさらに含み、
サブ行選択ベクトルは、活性化すべきサブ行が第1のサブ行および第2のサブ行であることを確認するために使用される。
第2の態様によれば、メモリ活性化方法が提供され、メモリ活性化方法は、
メモリコントローラによって送信される第1の活性化命令を受信するステップであって、第1の活性化命令が、メモリ内の第1のサブ行および第2のサブ行の活性化を命令するために使用され、第1のサブ行および第2のサブ行の両方が、メモリ内の同じ行に位置する、ステップと、
第1の活性化命令に従って、メモリ内に位置する第1のサブ行および第2のサブ行を活性化するステップと
を含む。
第2の態様に関連して、第1の可能な実施態様では、第1の活性化命令に従って、メモリ内に位置する第1のサブ行および第2のサブ行を活性化するステップの前に、本方法は、
メモリコントローラによって送信されるサブ行選択ベクトルを受信するステップであって、サブ行選択ベクトルが、活性化すべきサブ行が第1のサブ行および第2のサブ行であることを確認するために使用される、ステップをさらに含み、
第1の活性化命令に従って、メモリ内に位置する第1のサブ行および第2のサブ行を活性化するステップが、
第1の活性化命令内のサブ行選択ベクトルに従って、メモリ内に位置する第1のサブ行および第2のサブ行を活性化するステップを特に含む。
第3の態様によれば、メモリコントローラが提供され、メモリコントローラは、
第1のメモリアクセス要求を取得するように構成された要求分配モジュールであって、第1のメモリアクセス要求が、メモリ内の第1のサブ行へのアクセスを要求するために使用される、要求分配モジュールと、
第2のメモリアクセス要求を求めてメモリのスケジューリングすべきキューを検索するように構成されたメモリスケジューラであって、メモリのスケジューリングすべきキューが、複数のメモリアクセス要求を含み、第2のメモリアクセス要求が、メモリ内の第2のサブ行へのアクセスを要求するために使用され、第1のサブ行および第2のサブ行が、メモリ内の同じ行に位置し、
メモリスケジューラが、第1の活性化命令を生成するために第1のメモリアクセス要求と第2のメモリアクセス要求とを組み合わせるようにさらに構成されており、第1の活性化命令が、メモリ内の第1のサブ行および第2のサブ行の活性化を命令するために使用される、メモリスケジューラと、
第1の活性化命令をメモリに送信するように構成されたコマンドスケジューラと
を含む。
第3の態様に関連して、第1の可能な実施態様では、メモリスケジューラは、
サブ行選択ベクトルを生成し、サブ行選択ベクトルをメモリに送信するようにさらに構成され、
サブ行選択ベクトルは、活性化すべきサブ行が第1のサブ行および第2のサブ行であることを確認するために使用される。
第4の態様によれば、メモリモジュールが提供され、メモリモジュールは、
メモリコントローラによって送信される第1の活性化命令を受信するように構成されたラッチであって、第1の活性化命令が、メモリ内の第1のサブ行および第2のサブ行の活性化を命令するために使用され、第1のサブ行および第2のサブ行の両方が、メモリ内の同じ行に位置する、ラッチと、
ラッチから取得した第1の活性化命令に従って、メモリ内に位置する第1のサブ行および第2のサブ行を活性化するように構成されたサブ行選択デコーダと
を含む。
第4の態様に関連して、第1の可能な実施態様では、ラッチが、
メモリコントローラによって送信されるサブ行選択ベクトルを受信するようにさらに構成されており、サブ行選択ベクトルが、活性化すべきサブ行が第1のサブ行および第2のサブ行であることを確認するために使用され、
サブ行選択デコーダが、
第1の活性化命令内のサブ行選択ベクトルに従って、メモリ内に位置する第1のサブ行および第2のサブ行を活性化するように特に構成されている。
第5の態様によれば、メモリコントローラが提供され、メモリコントローラは、
第1のメモリアクセス要求を取得するように構成された要求分配モジュールであって、第1のメモリアクセス要求が、メモリ内の第1のサブ行へのアクセスを要求するために使用される、要求分配モジュールと、
要求分配モジュールによって取得された第1のメモリアクセス要求を取得し、第1のメモリアクセス要求に従って第1の活性化命令を生成するように構成されたメモリスケジューラと、
メモリスケジューラから取得した第1の活性化命令をメモリに送信するように構成されたコマンドスケジューラと
を含み、
要求分配モジュールが、第2のメモリアクセス要求を求めてメモリのスケジューリングすべきキューを検索するようにさらに構成されており、メモリのスケジューリングすべきキューが、複数のメモリアクセス要求を含み、第2のメモリアクセス要求が、メモリ内の第2のサブ行へのアクセスを要求するために使用され、第1のサブ行が、第1のサブアレイ内に位置し、第2のサブ行が、第2のサブアレイ内に位置し、
メモリスケジューラが、第2のメモリアクセス要求に従って第2の活性化命令を生成するようにさらに構成されており、
コマンドスケジューラが、メモリスケジューラから取得した第2の活性化命令をメモリに送信するようにさらに構成されており、
第1のサブアレイおよび第2のサブアレイの両方が、少なくとも1つの行を含み、少なくとも1つの行のいずれの行も、少なくとも1つのサブ行を含み、少なくとも1つのサブ行のいずれのサブ行も、少なくとも1つの記憶ユニットを含み、いずれの記憶ユニットも、1つの行番号識別子および1つの列番号識別子に対応しており、
第2のサブ行に含まれるどの記憶ユニットに対応する列番号識別子も、第1のサブ行に含まれるどの記憶ユニットに対応する列番号識別子とも異なる。
第5の態様に関連して、第1の可能な実施態様では、要求分配モジュールが、
第3のメモリアクセス要求を取得するようにさらに構成されており、第3のメモリアクセス要求が、メモリ内の第3のサブ行へのアクセスを要求するために使用され、第3のサブ行および第1のサブ行が、同じ行に位置し、第2のサブ行に含まれるどの記憶ユニットに対応する列番号識別子も、第3のサブ行に含まれるどの記憶ユニットに対応する列番号識別子とも異なり、
メモリスケジューラが、
第1の活性化命令を生成するために第1のメモリアクセス要求と第3のメモリアクセス要求とを組み合わせるように特に構成されている。
第5の態様または第5の態様の第1の可能な実施態様に関連して、第2の可能な実施態様では、要求分配モジュールが、
第4のメモリアクセス要求を取得するようにさらに構成されており、第4のメモリアクセス要求が、メモリ内の第4のサブ行へのアクセスを要求するために使用され、第4のサブ行および第2のサブ行が、同じ行に位置し、第4のサブ行に含まれるどの記憶ユニットに対応する列番号識別子も、第1のサブ行に含まれるどの記憶ユニットに対応する列番号識別子とも異なり、
メモリスケジューラが、
第2の活性化命令を生成するために第2のメモリアクセス要求と第4のメモリアクセス要求とを組み合わせるように特に構成されている。
第5の態様の第2の可能な実施態様に関連して、第3の可能な実施態様では、第4のサブ行に含まれるどの記憶ユニットに対応する列番号識別子も、第3のサブ行に含まれるどの記憶ユニットに対応する列番号識別子とも異なる。
第6の態様によれば、メモリモジュールが提供され、メモリモジュールは、
メモリコントローラによって送信される第1の活性化命令を受信するように構成された第1のラッチであって、第1の活性化命令が、メモリ内の第1のサブ行の活性化を命令するために使用される、第1のラッチと、
第1の活性化命令に従って、メモリ内に位置する第1のサブ行を活性化するように構成された第1のサブ行選択デコーダと、
メモリコントローラによって送信される第2の活性化命令を受信するように構成された第2のラッチであって、第2の活性化命令が、メモリ内の第2のサブ行の活性化を命令するために使用される、第2のラッチと、
第2の活性化命令に従って、メモリ内に位置する第2のサブ行を活性化するように構成された第2のサブ行選択デコーダと
を含み、
第1のサブ行が、第1のサブアレイ内に位置し、第2のサブ行が、第2のサブアレイ内に位置し、
第1のサブアレイおよび第2のサブアレイの両方が、少なくとも1つの行を含み、少なくとも1つの行のいずれの行も、少なくとも1つのサブ行を含み、少なくとも1つのサブ行のいずれのサブ行も、少なくとも1つの記憶ユニットを含み、いずれの記憶ユニットも、1つの行番号識別子および1つの列番号識別子に対応しており、
第2のサブ行に含まれるどの記憶ユニットに対応する列番号識別子も、第1のサブ行に含まれるどの記憶ユニットに対応する列番号識別子とも異なり、
第1のラッチおよび第2のラッチの両方が、データキャッシングを実行するように構成されたグローバルキャッシュに接続される。
第6の態様に関連して、第1の可能な実施態様では、第1の活性化命令が、メモリ内の第3のサブ行の活性化を命令するためにさらに使用され、第3のサブ行および第1のサブ行が、同じ行に位置し、
第2のサブ行に含まれるどの記憶ユニットに対応する列番号識別子も、第3のサブ行に含まれるどの記憶ユニットに対応する列番号識別子とも異なる。
第6の態様および第6の態様の第1の可能な実施態様に関連して、第2の可能な実施態様では、第2の活性化命令が、メモリ内の第4のサブ行の活性化を命令するためにさらに使用され、第4のサブ行および第2のサブ行が、同じ行に位置し、
第4のサブ行に含まれるどの記憶ユニットに対応する列番号識別子も、第1のサブ行に含まれるどの記憶ユニットに対応する列番号識別子とも異なり、
第4のサブ行に含まれるどの記憶ユニットに対応する列番号識別子も、第3のサブ行に含まれるどの記憶ユニットに対応する列番号識別子とも異なる。
第7の態様によれば、メモリ活性化方法が提供され、メモリ活性化方法は、
第1のメモリアクセス要求を取得するステップであって、第1のメモリアクセス要求が、メモリ内の第1のサブ行へのアクセスを要求するために使用される、ステップと、
前第1のメモリアクセス要求に従って第1の活性化命令を生成し、第1の活性化命令をメモリに送信するステップと、
第2のメモリアクセス要求を求めてメモリのスケジューリングすべきキューを検索するステップであって、メモリのスケジューリングすべきキューが、複数のメモリアクセス要求を含み、第2のメモリアクセス要求が、メモリ内の第2のサブ行へのアクセスを要求するために使用され、第1のサブ行が、第1のサブアレイ内に位置し、第2のサブ行が、第2のサブアレイ内に位置する、ステップと、
第2のメモリアクセス要求に従って第2の活性化命令を生成し、第2の活性化命令をメモリに送信するステップと
を含み、
第1のサブアレイおよび第2のサブアレイの両方が、少なくとも1つの行を含み、少なくとも1つの行のいずれの行も、少なくとも1つのサブ行を含み、少なくとも1つのサブ行のいずれのサブ行も、少なくとも1つの記憶ユニットを含み、いずれの記憶ユニットも、1つの行番号識別子および1つの列番号識別子に対応しており、
第2のサブ行に含まれるどの記憶ユニットに対応する列番号識別子も、第1のサブ行に含まれるどの記憶ユニットに対応する列番号識別子とも異なる。
第7の態様に関連して、第1の可能な実施態様では、第1のメモリアクセス要求に従って第1の活性化命令を生成するステップの前に、本方法は、
第3のメモリアクセス要求を取得するステップであって、第3のメモリアクセス要求が、メモリ内の第3のサブ行へのアクセスを要求するために使用され、第3のサブ行および第1のサブ行が、同じ行に位置し、第2のサブ行に含まれるどの記憶ユニットに対応する列番号識別子も、第3のサブ行に含まれるどの記憶ユニットに対応する列番号識別子とも異なる、ステップをさらに含み、
第1のメモリアクセス要求に従って第1の活性化命令を生成するステップが、
第1の活性化命令を生成するために第1のメモリアクセス要求と第3のメモリアクセス要求とを組み合わせるステップを特に含む。
第7の態様および第7の態様の第1の可能な実施態様に関連して、第2の可能な実施態様では、第2のメモリアクセス要求に従って第2の活性化命令を生成するステップの前に、本方法は、
第4のメモリアクセス要求を取得するステップであって、第4のメモリアクセス要求が、メモリ内の第4のサブ行へのアクセスを要求するために使用され、第4のサブ行および第2のサブ行が、同じ行に位置し、第4のサブ行に含まれるどの記憶ユニットに対応する列番号識別子も、第1のサブ行に含まれるどの記憶ユニットに対応する列番号識別子とも異なる、ステップをさらに含み、
第2のメモリアクセス要求に従って第2の活性化命令を生成するステップが、
第2の活性化命令を生成するために第2のメモリアクセス要求と第4のメモリアクセス要求とを組み合わせるステップを特に含む。
第7の態様の第2の可能な実施態様に関連して、第3の可能な実施態様では、第4のサブ行に含まれるどの記憶ユニットに対応する列番号識別子も、第3のサブ行に含まれるどの記憶ユニットに対応する列番号識別子とも異なる。
第8の態様によれば、メモリ活性化方法が提供され、メモリ活性化方法は、
メモリコントローラによって送信される第1の活性化命令を受信するステップであって、第1の活性化命令が、メモリ内の第1のサブ行の活性化を命令するために使用される、ステップと、
第1の活性化命令に従って、メモリ内に位置する第1のサブ行を活性化するステップと、
メモリコントローラによって送信される第2の活性化命令を受信するステップであって、第2の活性化命令が、メモリ内の第2のサブ行の活性化を命令するために使用される、ステップと、
第2の活性化命令に従って、メモリ内に位置する第2のサブ行を活性化するステップと
を含み、
第1のサブ行が、第1のサブアレイ内に位置し、第2のサブ行が、第2のサブアレイ内に位置し、
第1のサブアレイおよび第2のサブアレイの両方が、少なくとも1つの行を含み、少なくとも1つの行のいずれの行も、少なくとも1つのサブ行を含み、少なくとも1つのサブ行のいずれのサブ行も、少なくとも1つの記憶ユニットを含み、いずれの記憶ユニットも、1つの行番号識別子および1つの列番号識別子に対応しており、
第2のサブ行に含まれるどの記憶ユニットに対応する列番号識別子も、第1のサブ行に含まれるどの記憶ユニットに対応する列番号識別子とも異なり、
第1のラッチおよび第2のラッチの両方が、データキャッシングを実行するように構成されたグローバルキャッシュに接続される。
第8の態様に関連して、第1の可能な実施態様では、第1の活性化命令が、メモリ内の第3のサブ行の活性化を命令するためにさらに使用され、第3のサブ行および第1のサブ行が、同じ行に位置し、
第2のサブ行に含まれるどの記憶ユニットに対応する列番号識別子も、第3のサブ行に含まれるどの記憶ユニットに対応する列番号識別子とも異なり、
第1の活性化命令に従って、メモリ内に位置する第1のサブ行を活性化するステップが、第1の活性化命令に従ってメモリの第1のラッチにより、メモリ内に位置する第1のサブ行および第3のサブ行を活性化するステップを特に含む。
第8の態様および第8の態様の第1の可能な実施態様に関連して、第2の可能な実施態様では、第2の活性化命令が、メモリ内の第4のサブ行の活性化を命令するためにさらに使用され、第4のサブ行および第2のサブ行が、同じ行に位置し、
第4のサブ行に含まれるどの記憶ユニットに対応する列番号識別子も、第3のサブ行に含まれるどの記憶ユニットに対応する列番号識別子とも異なり、
第2の活性化命令に従って、メモリ内に位置する第2のサブ行を活性化するステップが、第2の活性化命令に従ってメモリの第2のラッチにより、メモリ内に位置する第2のサブ行および第4のサブ行を活性化するステップを特に含む。
本発明の有益な効果は以下の通りである。
従来技術では、複数の記憶ユニットを同時に活性化することができず、その代わりに、記憶ユニットを活性化した後にその都度、記憶ユニットをプリチャージする必要があり、この結果として、次の記憶ユニットの活性化動作を実行することができる。したがって、現在のメモリ活性化方法の欠点は、比較的低い効率である。本発明の実施形態では、メモリ内の第1のサブ行へのアクセスを要求するために使用される第1のメモリアクセス要求が取得された後、第1のサブ行はすぐには活性化されない。その代わりに、第2のメモリアクセス要求を求めてメモリのスケジューリングすべきキューが検索され、この場合、第2のメモリアクセス要求は、メモリ内の第2のサブ行へのアクセスを要求するために使用され、第1のサブ行および第2のサブ行は、メモリ内の同じ行に配置する。次に、第1の活性化命令を生成するために第1のメモリアクセス要求と第2のメモリアクセス要求とが組み合わされ、この場合、第1の活性化命令は、メモリ内の第1のサブ行および第2のサブ行の活性化を命令するために使用される。第1の活性化命令が、メモリに送信される。このようにして、第1のサブ行および第2のサブ行を同時に活性化することができ、このため、第1のサブ行の活性化の後に、第1のサブ行が位置する行をプリチャージしてから、第2のサブ行を活性化する必要がない。したがって、メモリ活性化の効率が向上する。
本発明の一実施形態によるメモリ活性化のフローチャートである。 本発明の一実施形態によるサブ行選択ベクトルの概略図である。 本発明の一実施形態によるメモリ活性化の別のフローチャートである。 本発明の一実施形態によるメモリコントローラの概略図である。 本発明の一実施形態によるメモリモジュールの概略図である。 本発明の一実施形態によるメモリコントローラの別の概略図である。 本発明の一実施形態によるメモリの概略図である。 本発明の一実施形態によるメモリモジュールの別の概略図である。 本発明の一実施形態によるメモリ活性化の別のフローチャートである。 本発明の一実施形態によるメモリ活性化の別のフローチャートである。 本発明の一実施形態によるメモリコントローラの別の概略図である。 本発明の一実施形態によるメモリモジュールの別の概略図である。 本発明の一実施形態によるメモリ活性化の別のフローチャートである。 本発明の一実施形態によるメモリ活性化の別のフローチャートである。
本発明の実施形態の目的、技術的解決策、および利点をより明確にするために、以下では、本発明の実施形態の添付図面を参照しながら本発明の実施形態の技術的解決策を明確かつ完全に説明する。明らかに、記載されている実施形態は、本発明の実施形態の一部であり、本発明の実施形態の全部ではない。創造的な努力なしに本発明の実施形態に基づいて当業者によって得られる他のすべての実施形態は、本発明の保護範囲内に入るものとする。
加えて、「システム」および「ネットワーク」という用語は、本明細書では交換可能に使用することができる。本明細書における「および/または」という用語は、関連する対象を記述するための関連関係のみを記述し、3つの関係が存在し得ることを表す。例えば、Aおよび/またはBは、以下の3つのケース、すなわち、Aのみが存在するケース、AおよびBの両方が存在するケース、Bのみが存在するケースを表すことができる。加えて、本明細書中の記号「/」は、一般に、関連する対象間の「または」関係を示す。
以下では、添付図面を参照して、本発明の実施態様を詳細に説明する。本明細書に記載した実施形態は、本発明を記述し、説明するために使用されているに過ぎず、本発明を限定するためのものではないことを理解されたい。加えて、本出願の実施形態および実施形態の特徴は、互いに矛盾しなければ互いに組み合わせてもよい。
以下では、添付図面を参照して、本発明の好適な実施態様を詳細に説明する。
図1Aに示すように、本発明の一実施形態では、メモリ活性化の手順は以下の通りである。
ステップ100:第1のメモリアクセス要求を取得するステップであって、第1のメモリアクセス要求が、メモリ内の第1のサブ行へのアクセスを要求するために使用される、ステップ。
ステップ110:第2のメモリアクセス要求を求めてメモリのスケジューリングすべきキューを検索するステップであって、メモリのスケジューリングすべきキューが、複数のメモリアクセス要求を含み、第2のメモリアクセス要求が、メモリ内の第2のサブ行へのアクセスを要求するために使用され、第1のサブ行および第2のサブ行が、メモリ内の同じ行に位置する、ステップ。
ステップ120:第1の活性化命令を生成するために第1のメモリアクセス要求と第2のメモリアクセス要求とを組み合わせるステップであって、第1の活性化命令が、メモリ内の第1のサブ行および第2のサブ行の活性化を命令するために使用される、ステップ。
ステップ130:第1の活性化命令をメモリに送信するステップ。
本発明のこの実施形態では、活性化すべき第1のサブ行および第2のサブ行が同じ行に位置するか否かを確認するために、活性化すべき第1のサブ行および第2のサブ行が位置する行の行アドレスを調べてもよい。
本発明のこの実施形態では、メモリが、どのサブ行が活性化する必要があり、どのサブ行が活性化する必要がないかを学習することを可能にするために、第2のメモリアクセス要求を求めてメモリのスケジューリングすべきキューを検索するステップの後に、以下の動作、すなわち、
サブ行選択ベクトルを生成し、このサブ行選択ベクトルをメモリに送信する動作であって、
サブ行選択ベクトルが、活性化すべきサブ行が第1のサブ行および第2のサブ行であることを確認するために使用される、動作がさらに含まれる。
例えば、1つの行に、N個のサブ行が位置し、サブ行選択ベクトルの各値が、1つのサブ行に対応し、この値は、対応するサブ行は活性化すべきか否かを示すために使用される。図1Bに示すように、サブ行選択ベクトルの値が0の場合、これは、対応するサブ行は活性化すべきであることを示し、サブ行選択ベクトルの値が1の場合、これは、対応するサブ行は活性化すべきでないことを示す。言うまでもなく、対応するサブ行は活性化すべきか否かは、別の形で示されてもよいが、本明細書では、詳細については説明しない。
本発明のこの実施形態では、サブ行選択ベクトルは、第1の活性化命令と同時に送信されてもよい。例えば、サブ行選択ベクトルは、第1の活性化命令に追加され、特定の実施態様では、サブ行選択ベクトルおよび第1の活性化命令は、メモリバスに同時に書き込まれる。あるいは、サブ行選択ベクトルは、第1の活性化命令が送信される前に送信されてもよく、特定の実施態様では、第1の活性化命令がメモリバスに書き込まれる前に、サブ行選択ベクトルは、バスを用いて書き込まれる。
本発明のこの実施形態では、第1のサブ行および第2のサブ行が活性化された後に、第1のサブ行のデータおよび第2のサブ行のデータが、対応するサブ行キャッシュにフェッチされる。選択されていないサブ行は活性化されず、対応するデータは、対応するサブ行キャッシュにフェッチされない。
この解決策では、第1のメモリアクセス要求が受信されたとき、第1のメモリアクセス要求がアクセスを要求する第1のサブ行はすぐには活性化されない。その代わりに、第2のメモリアクセス要求を求めて、メモリのスケジューリングすべきキュー内のメモリアクセス要求を検索することがスケジューリングされる。第1のメモリアクセス要求および第2のメモリアクセス要求は、第1の活性化命令に組み合わされ、第1の活性化命令は、メモリに送信される。このようにして、一度に第1のサブ行および第2のサブ行を活性化することができ、活性化効率が向上する。
図2に示すように、本発明の一実施形態では、メモリ活性化の別の手順は以下の通りである。
ステップ200:メモリコントローラによって送信される第1の活性化命令を受信するステップであって、第1の活性化命令が、メモリ内の第1のサブ行および第2のサブ行の活性化を命令するために使用され、第1のサブ行および第2のサブ行の両方が、メモリ内の同じ行に位置する、ステップ。
ステップ210:第1の活性化命令に従って、メモリ内に位置する第1のサブ行および第2のサブ行を活性化するステップ。
本発明のこの実施形態では、第1の活性化命令に従って、メモリ内に位置する第1のサブ行および第2のサブ行を活性化するステップの前に、以下の動作、すなわち、
メモリコントローラによって送信されるサブ行選択ベクトルを受信する動作であって、
サブ行選択ベクトルが、活性化すべきサブ行が第1のサブ行および第2のサブ行であることを確認するために使用される、動作がさらに含まれる。
第1の活性化命令に従って、メモリ内に位置する第1のサブ行および第2のサブ行を活性化するとき、以下の手法、すなわち、
第1の活性化命令内のサブ行選択ベクトルに従って、メモリ内に位置する第1のサブ行および第2のサブ行を活性化する手法が使用されてもよい。
前述の対応する方法の技術的解決策に基づいて、図3に示すように、本発明の一実施形態は、メモリコントローラ3000を提供し、メモリコントローラ3000は、要求分配モジュール30、メモリスケジューラ31、およびコマンドスケジューラ32を含む。
要求分配モジュール30は、第1のメモリアクセス要求を取得するように構成され、第1のメモリアクセス要求は、メモリ内の第1のサブ行へのアクセスを要求するために使用される。
メモリスケジューラ31は、第2のメモリアクセス要求を求めてメモリのスケジューリングすべきキューを検索するように構成され、メモリのスケジューリングすべきキューは、複数のメモリアクセス要求を含み、第2のメモリアクセス要求は、メモリ内の第2のサブ行へのアクセスを要求するために使用され、第1のサブ行および第2のサブ行は、メモリ内の同じ行に位置する。
メモリスケジューラ31は、第1の活性化命令を生成するために第1のメモリアクセス要求と第2のメモリアクセス要求とを組み合わせるようにさらに構成され、第1の活性化命令は、メモリ内の第1のサブ行および第2のサブ行の活性化を命令するために使用される。
コマンドスケジューラ32は、第1の活性化命令をメモリに送信するように構成される。
本発明のこの実施形態では、メモリスケジューラ31は、
サブ行選択ベクトルを生成し、このサブ行選択ベクトルをメモリに送信するようにさらに構成され、
サブ行選択ベクトルは、活性化すべきサブ行が第1のサブ行および第2のサブ行であることを確認するために使用される。
前述の対応する方法の技術的解決法に基づいて、図4に示すように、本発明の一実施形態は、メモリモジュール4000を提供し、メモリモジュール4000は、ラッチ40およびサブ行選択デコーダ41を含む。
ラッチ40は、メモリコントローラによって送信される第1の活性化命令を受信するように構成され、第1の活性化命令は、メモリ内の第1のサブ行および第2のサブ行の活性化を命令するために使用され、第1のサブ行および第2のサブ行の両方は、メモリ内の同じ行に位置する。
サブ行選択デコーダ41は、ラッチ40から取得した第1の活性化命令に従って、メモリ内に位置する第1のサブ行および第2のサブ行を活性化するように構成される。
ラッチ40は、
メモリコントローラによって送信されたサブ行選択ベクトルを受信するようにさらに構成され、
サブ行選択ベクトルは、活性化すべきサブ行が第1のサブ行および第2のサブ行であることを確認するために使用される。
サブ行選択デコーダ41は、
第1の活性化命令内のサブ行選択ベクトルに従って、メモリ内に位置する第1のサブ行および第2のサブ行を活性化するように特に構成される。
本発明の一実施形態では、記憶ユニットのリソース利用を改善するために、図5Aに示すように、メモリコントローラ5000が提供され、メモリコントローラ5000は、要求分配モジュール50、メモリスケジューラ51、およびコマンドスケジューラ52を含む。
要求分配モジュール50は、第1のメモリアクセス要求を取得するように構成され、第1のメモリアクセス要求は、メモリ内の第1のサブ行へのアクセスを要求するために使用される。
メモリスケジューラ51は、要求分配モジュール50によって取得された第1のメモリアクセス要求を取得し、第1のメモリアクセス要求に従って第1の活性化命令を生成するように構成される。
コマンドスケジューラ52は、メモリスケジューラ51から取得した第1の活性化命令をメモリに送信するように構成される。
要求分配モジュール50は、第2のメモリアクセス要求を求めてメモリのスケジューリングすべきキューを検索するようにさらに構成され、メモリのスケジューリングすべきキューは、複数のメモリアクセス要求を含み、第2のメモリアクセス要求は、メモリ内の第2のサブ行へのアクセスを要求するために使用され、第1のサブ行は、第1のサブアレイ内に位置し、第2のサブ行は、第2のサブアレイ内に位置する。
メモリスケジューラ51は、第2のメモリアクセス要求に従って第2の活性化命令を生成するようにさらに構成される。
コマンドスケジューラ52は、メモリスケジューラ51から取得した第2の活性化命令をメモリに送信するようにさらに構成される。
第1のサブアレイおよび第2のサブアレイの両方が、少なくとも1つの行を含み、少なくとも1つの行のいずれの行も、少なくとも1つのサブ行を含み、少なくとも1つのサブ行のいずれのサブ行も、少なくとも1つの記憶ユニットを含み、いずれの記憶ユニットも、1つの行番号識別子および1つの列番号識別子に対応する。
第2のサブ行に含まれるどの記憶ユニットに対応する列番号識別子も、第1のサブ行に含まれるどの記憶ユニットに対応する列番号識別子とも異なる。
本発明のこの実施形態に関して、サブアレイと、行と、列と、記憶ユニットとの関係が、図5Bに示されている。
さらに、本発明のこの実施形態では、要求分配モジュール50は、
第3のメモリアクセス要求を取得するようにさらに構成され、第3のメモリアクセス要求は、メモリ内の第3のサブ行へのアクセスを要求するために使用され、第3のサブ行および第1のサブ行は、同じ行に位置し、第2のサブ行に含まれるどの記憶ユニットに対応する列番号識別子も、第3のサブ行に含まれるどの記憶ユニットに対応する列番号識別子とも異なる。
メモリスケジューラ51は、
第1の活性化命令を生成するために第1のメモリアクセス要求と第3のメモリアクセス要求とを組み合わせるように特に構成される。
本発明のこの実施形態では、さらに、要求分配モジュール50は、
第4のメモリアクセス要求を取得するようにさらに構成され、第4のメモリアクセス要求は、メモリ内の第4のサブ行へのアクセスを要求するために使用され、第4のサブ行および第2のサブ行は、同じ行に位置し、第4のサブ行に含まれるどの記憶ユニットに対応する列番号識別子も、第1のサブ行に含まれるどの記憶ユニットに対応する列番号識別子とも異なる。
メモリスケジューラ51は、
第2の活性化命令を生成するために第2のメモリアクセス要求と第4のメモリアクセス要求とを組み合わせるように特に構成される。
本発明のこの実施形態では、随意に、第4のサブ行に含まれるどの記憶ユニットに対応する列番号識別子も、第3のサブ行に含まれるどの記憶ユニットに対応する列番号識別子とも異なる。
この解決策では、第1のサブ行が活性化された後、第2のサブ行に含まれるどの記憶ユニットに対応する列番号識別子も、第1のサブ行に含まれるどの記憶ユニットに対応する列番号識別子とも異なるとき、第1のサブ行とは異なるサブアレイ内に位置する第2のサブ行を活性化することができ、これにより、リソース利用が改善される。
本発明の一実施形態では、記憶ユニットのリソース利用を改善するために、図6に示すように、メモリモジュール6000が提供され、メモリモジュール6000は、第1のラッチ60、第1のサブ行選択デコーダ61、第2のラッチ62、および第2のサブ行選択デコーダ63を含む。
第1のラッチ60は、メモリコントローラによって送信される第1の活性化命令を受信するように構成され、第1の活性化命令は、メモリ内の第1のサブ行の活性化を命令するために使用される。
第1のサブ行選択デコーダ61は、第1の活性化命令に従って、メモリ内に位置する第1のサブ行を活性化するように構成される。
第2のラッチ62は、メモリコントローラによって送信される第2の活性化命令を受信するように構成され、第2の活性化命令は、メモリ内の第2のサブ行の活性化を命令するために使用される。
第2のサブ行選択デコーダ63は、第2の活性化命令に従って、メモリ内に位置する第2のサブ行を活性化するように構成される。
第1のサブ行は、第1のサブアレイ内に位置し、第2のサブ行は、第2のサブアレイ内に位置する。
第1のサブアレイおよび第2のサブアレイの両方が、少なくとも1つの行を含み、少なくとも1つの行のいずれの行も、少なくとも1つのサブ行を含み、少なくとも1つのサブ行のいずれのサブ行も、少なくとも1つの記憶ユニットを含み、いずれの記憶ユニットも、1つの行番号識別子および1つの列番号識別子に対応する。
第2のサブ行に含まれるどの記憶ユニットに対応する列番号識別子も、第1のサブ行に含まれるどの記憶ユニットに対応する列番号識別子とも異なる。
第1のラッチ60および第2のラッチ62の両方は、データキャッシングを実行するように構成されたグローバルキャッシュに接続される。
本発明のこの実施形態では、さらに、第1の活性化命令は、メモリ内の第3のサブ行の活性化を命令するためにさらに使用され、第3のサブ行および第1のサブ行は、同じ行に位置する。
第2のサブ行に含まれるどの記憶ユニットに対応する列番号識別子も、第3のサブ行に含まれるどの記憶ユニットに対応する列番号識別子とも異なる。
本発明のこの実施形態では、さらに、第2の活性化命令が、メモリ内の第4のサブ行の活性化を命令するためにさらに使用され、第4のサブ行および第2のサブ行は、同じ行に位置する。
第4のサブ行に含まれるどの記憶ユニットに対応する列番号識別子も、第1のサブ行に含まれるどの記憶ユニットに対応する列番号識別子とも異なる。
第4のサブ行に含まれるどの記憶ユニットに対応する列番号識別子も、第3のサブ行に含まれるどの記憶ユニットに対応する列番号識別子とも異なる。
この解決策では、第1のラッチが第1のサブ行を活性化した後、第2のサブ行に含まれるどの記憶ユニットに対応する列番号識別子も、第1のサブ行に含まれるどの記憶ユニットに対応する列番号識別子とも異なるとき、第2のラッチは、第1のサブ行とは異なるサブアレイ内に位置する第2のサブ行を活性化することができ、これにより、リソース利用が改善される。
図7に示すように、本発明の一実施形態では、メモリ活性化の別の手順は以下の通りである。
ステップ700:第1のメモリアクセス要求を取得するステップであって、第1のメモリアクセス要求が、メモリ内の第1のサブ行へのアクセスを要求するために使用される、ステップ。
ステップ710:第1のメモリアクセス要求に従って第1の活性化命令を生成し、第1の活性化命令をメモリに送信するステップ。
ステップ720:第2のメモリアクセス要求を求めてメモリのスケジューリングすべきキューを検索するステップであって、メモリのスケジューリングすべきキューが、複数のメモリアクセス要求を含み、第2のメモリアクセス要求が、メモリ内の第2のサブ行へのアクセスを要求するために使用され、第1のサブ行が、第1のサブアレイ内に位置し、第2のサブ行が、第2のサブアレイ内に位置する、ステップ。
ステップ730:第2のメモリアクセス要求に従って第2の活性化命令を生成し、第2の活性化命令をメモリに送信するステップ。
第1のサブアレイおよび第2のサブアレイの両方が、少なくとも1つの行を含み、少なくとも1つの行のいずれの行も、少なくとも1つのサブ行を含み、少なくとも1つのサブ行のいずれのサブ行も、少なくとも1つの記憶ユニットを含み、いずれの記憶ユニットも、1つの行番号識別子および1つの列番号識別子に対応する。
第2のサブ行に含まれるどの記憶ユニットに対応する列番号識別子も、第1のサブ行に含まれるどの記憶ユニットに対応する列番号識別子とも異なる。
本発明のこの実施形態では、さらに、第1のメモリアクセス要求に従って第1の活性化命令を生成するステップの前に、以下の動作、すなわち、
第3のメモリアクセス要求を取得する動作であって、第3のメモリアクセス要求が、メモリ内の第3のサブ行へのアクセスを要求するために使用され、第3のサブ行および第1のサブ行が、同じ行に位置し、第2のサブ行に含まれるどの記憶ユニットに対応する列番号識別子も、第3のサブ行に含まれるどの記憶ユニットに対応する列番号識別子とも異なる、動作がさらに含まれる。
第1のメモリアクセス要求に従って第1の活性化命令を生成するステップは、
第1の活性化命令を生成するために第1のメモリアクセス要求と第3のメモリアクセス要求とを組み合わせることを特に含む。
本発明のこの実施形態では、さらに、第2のメモリアクセス要求に従って第2の活性化命令を生成するステップの前に、以下の動作、すなわち、
第4のメモリアクセス要求を取得する動作であって、第4のメモリアクセス要求が、メモリ内の第4のサブ行へのアクセスを要求するために使用され、第4のサブ行および第2のサブ行が、同じ行に位置し、第4のサブ行に含まれるどの記憶ユニットに対応する列番号識別子も、第1のサブ行に含まれるどの記憶ユニットに対応する列番号識別子とも異なる、動作がさらに含まれる。
第2のメモリアクセス要求に従って第2の活性化命令を生成するステップは、
第2の活性化命令を生成するために第2のメモリアクセス要求と第4のメモリアクセス要求とを組み合わせることを特に含む。
本発明のこの実施形態では、随意に、第4のサブ行に含まれるどの記憶ユニットに対応する列番号識別子も、第3のサブ行に含まれるどの記憶ユニットに対応する列番号識別子とも異なる。
この解決策では、第1のサブ行が活性化された後、第2のサブ行に含まれるどの記憶ユニットに対応する列番号識別子も、第1のサブ行に含まれるどの記憶ユニットに対応する列番号識別子とも異なるとき、第1のサブ行とは異なるサブアレイ内に位置する第2のサブ行を活性化することができ、これにより、リソース利用が改善される。
図8に示すように、本発明の一実施形態では、メモリ活性化の別の手順は以下の通りである。
ステップ800:メモリコントローラによって送信される第1の活性化命令を受信するステップであって、第1の活性化命令が、メモリ内の第1のサブ行の活性化を命令するために使用される、ステップ。
ステップ810:第1の活性化命令に従って、メモリ内に位置する第1のサブ行を活性化するステップ。
ステップ820:メモリコントローラによって送信される第2の活性化命令を受信するステップであって、第2の活性化命令が、メモリ内の第2のサブ行の活性化を命令するために使用される、ステップ。
ステップ830:第2の活性化命令に従って、メモリ内に位置する第2のサブ行を活性化するステップであって、第1のサブ行が、第1のサブアレイ内に位置し、第2のサブ行が、第2のサブアレイ内に位置し、第1のサブアレイおよび第2のサブアレイの両方が、少なくとも1つの行を含み、少なくとも1つの行のいずれの行も、少なくとも1つのサブ行を含み、少なくとも1つのサブ行のいずれのサブ行も、少なくとも1つの記憶ユニットを含み、いずれの記憶ユニットも、1つの行番号識別子および1つの列番号識別子に対応し、第2のサブ行に含まれるどの記憶ユニットに対応する列番号識別子も、第1のサブ行に含まれるどの記憶ユニットに対応する列番号識別子とも異なり、第1のラッチおよび第2のラッチの両方が、データキャッシングを実行するように構成されたグローバルキャッシュに接続される、ステップ。
本発明のこの実施形態では、さらに、第1の活性化命令は、メモリ内の第3のサブ行の活性化を命令するためにさらに使用され、第3のサブ行および第1のサブ行は、同じ行に位置する。
第2のサブ行に含まれるどの記憶ユニットに対応する列番号識別子も、第3のサブ行に含まれるどの記憶ユニットに対応する列番号識別子とも異なる。
第1の活性化命令に従って、メモリ内に位置する第1のサブ行を活性化するステップは、
第1の活性化命令に従ってメモリの第1のラッチにより、メモリ内に位置する第1のサブ行および第3のサブ行を活性化することを特に含む。
本発明のこの実施形態では、随意に、第2の活性化命令が、メモリ内の第4のサブ行の活性化を命令するためにさらに使用され、第4のサブ行および第2のサブ行は、同じ行に位置する。
第4のサブ行に含まれるどの記憶ユニットに対応する列番号識別子も、第3のサブ行に含まれるどの記憶ユニットに対応する列番号識別子とも異なる。
第2の活性化命令に従って、メモリ内に位置する第2のサブ行を活性化するステップは、
第2の活性化命令に従ってメモリの第2のラッチにより、メモリ内に位置する第2のサブ行および第4のサブ行を活性化することを特に含む。
この解決策では、第1のラッチが第1のサブ行を活性化した後、第2のサブ行に含まれるどの記憶ユニットに対応する列番号識別子も、第1のサブ行に含まれるどの記憶ユニットに対応する列番号識別子とも異なるとき、第2のラッチは、第1のサブ行とは異なるサブアレイ内に位置する第2のサブ行を活性化することができ、これにより、リソース利用が改善される。
前述の図5A、図5B、図6、図7、および図8は、第1のサブ行が活性化された後、第1のサブ行とは異なるサブアレイに位置する第2のサブ行に含まれるどの記憶ユニットに対応する列番号識別子も、第1のサブ行に含まれるどの記憶ユニットに対応する列番号識別子とも異なるときにのみ、第2のサブ行を活性化することができることを説明している。さらに、リソース利用を改善するために、以下の解決策を提示する。
本発明の一実施形態では、記憶ユニットのリソース利用を改善するために、図9に示すように、メモリコントローラ9000が提供され、メモリコントローラ9000は、要求分配モジュール90、メモリスケジューラ91、およびコマンドスケジューラ92を含む。
要求分配モジュール90は、第1のメモリアクセス要求を取得するように構成され、第1のメモリアクセス要求は、メモリ内の第1のサブ行へのアクセスを要求するために使用される。
メモリスケジューラ91は、要求分配モジュール90によって取得された第1のメモリアクセス要求を取得し、第1のメモリアクセス要求に従って第1の活性化命令を生成するように構成される。
コマンドスケジューラ92は、メモリスケジューラ91から取得した第1の活性化命令をメモリに送信するように構成される。
要求分配モジュール90は、第2のメモリアクセス要求を求めてメモリのスケジューリングすべきキューを検索するようにさらに構成され、メモリのスケジューリングすべきキューは、複数のメモリアクセス要求を含み、第2のメモリアクセス要求は、メモリ内の第2のサブ行へのアクセスを要求するために使用され、第1のサブ行は、第1のサブアレイ内に位置し、第2のサブ行は、第2のサブアレイ内に位置する。
メモリスケジューラ91は、第2のメモリアクセス要求に従って第2の活性化命令を生成するようにさらに構成される。
コマンドスケジューラ92は、メモリスケジューラ91から取得した第2の活性化命令をメモリに送信するようにさらに構成される。
第1のサブアレイおよび第2のサブアレイの両方が、少なくとも1つの行を含み、少なくとも1つの行のいずれの行も、少なくとも1つのサブ行を含み、少なくとも1つのサブ行のいずれのサブ行も、少なくとも1つの記憶ユニットを含み、いずれの記憶ユニットも、1つの行番号識別子および1つの列番号識別子に対応する。
第2のサブ行は、記憶ユニットであって、その列番号識別子が第1のサブ行に含まれる記憶ユニットに対応する列番号識別子と同じである記憶ユニットを含む。
本発明のこの実施形態では、さらに、要求分配モジュール90は、
第3のメモリアクセス要求を取得するようにさらに構成され、第3のメモリアクセス要求は、メモリ内の第3のサブ行へのアクセスを要求するために使用され、第3のサブ行および第1のサブ行は、同じ行に位置し、第2のサブ行は、記憶ユニットであって、その列番号識別子が、第3のサブ行に含まれる記憶ユニットに対応する列番号識別子と同じである記憶ユニットを含む。
メモリスケジューラ91は、
第1の活性化命令を生成するために第1のメモリアクセス要求と第3のメモリアクセス要求とを組み合わせるように特に構成される。
本発明のこの実施形態では、さらに、要求分配モジュール90は、
第4のメモリアクセス要求を取得するようにさらに構成され、第4のメモリアクセス要求は、メモリ内の第4のサブ行へのアクセスを要求するために使用され、第4のサブ行および第2のサブ行は、同じ行に位置し、第4のサブ行は、記憶ユニットであって、その列番号識別子が、第1のサブ行に含まれる記憶ユニットに対応する列番号識別子と同じである記憶ユニットを含む。
メモリスケジューラ91は、
第2の活性化命令を生成するために第2のメモリアクセス要求と第4のメモリアクセス要求とを組み合わせるように特に構成される。
本発明のこの実施形態では、随意に、第4のサブ行は、記憶ユニットであって、その列番号識別子が、第3のサブ行に含まれる記憶ユニットに対応する列番号識別子と同じである記憶ユニットを含む。
この解決策では、第1のラッチが第1のサブ行を活性化した後、第2の行が、記憶ユニットであって、その列番号識別子が第1のサブ行に含まれる記憶ユニットに対応する列番号識別子と同じである記憶ユニットを含むとき、第2のラッチも、第1のサブ行と異なるサブアレイ内に位置する第2のサブ行を活性化することができ、これにより、リソース利用が改善される。
本発明の一実施形態では、記憶ユニットのリソース利用を改善するために、図10に示すように、メモリモジュール10000が提供され、メモリモジュール10000は、第1のラッチ100、第1のサブ行選択デコーダ101、第2のラッチ102、および第2のサブ行選択デコーダ103を含む。
第1のラッチ100は、メモリコントローラによって送信される第1の活性化命令を受信するように構成され、第1の活性化命令は、メモリ内の第1のサブ行の活性化を命令するために使用される。
第1のサブ行選択デコーダ101は、第1の活性化命令に従って、メモリ内に位置する第1のサブ行を活性化するように構成される。
第2のラッチ102は、メモリコントローラによって送信される第2の活性化命令を受信するように構成され、第2の活性化命令は、メモリ内の第2のサブ行の活性化を命令するために使用される。
第2のサブ行選択デコーダ103は、第2の活性化命令に従って、メモリ内に位置する第2のサブ行を活性化するように構成される。
第1のサブ行は、第1のサブアレイ内に位置し、第2のサブ行は、第2のサブアレイ内に位置する。
第1のサブアレイおよび第2のサブアレイの両方が、少なくとも1つの行を含み、少なくとも1つの行のいずれの行も、少なくとも1つのサブ行を含み、少なくとも1つのサブ行のいずれのサブ行も、少なくとも1つの記憶ユニットを含み、いずれの記憶ユニットも、1つの行番号識別子および1つの列番号識別子に対応する。
第2のサブ行は、記憶ユニットであって、その列番号識別子が第1のサブ行に含まれる記憶ユニットに対応する列番号識別子と同じである記憶ユニットを含む。
第1のラッチ100と第2のラッチ102のどちらも、データキャッシングを実行するように構成されたグローバルキャッシュに接続されない。
本発明のこの実施形態では、さらに、第1の活性化命令は、メモリ内の第3のサブ行の活性化を命令するためにさらに使用され、第3のサブ行および第1のサブ行は、同じ行に位置する。
第2のサブ行は、記憶ユニットであって、その列番号識別子が第3のサブ行に含まれる記憶ユニットに対応する列番号識別子と同じである記憶ユニットを含む。
本発明のこの実施形態では、さらに、第2の活性化命令が、メモリ内の第4のサブ行の活性化を命令するためにさらに使用され、第4のサブ行および第2のサブ行は、同じ行に位置する。
第4のサブ行は、記憶ユニットであって、その列番号識別子が第1のサブ行に含まれる記憶ユニットに対応する列番号識別子と同じである記憶ユニットを含む。
第4のサブ行は、記憶ユニットであって、その列番号識別子が第3のサブ行に含まれる記憶ユニットに対応する列番号識別子と同じである記憶ユニットを含む。
この解決策では、第1のラッチが第1のサブ行を活性化した後、第2の行が、記憶ユニットであって、その列番号識別子が第1のサブ行に含まれる記憶ユニットに対応する列番号識別子と同じである記憶ユニットを含むとき、第2のラッチも、第1のサブ行と異なるサブアレイ内に位置する第2のサブ行を活性化することができ、これにより、リソース利用が改善される。
本発明の一実施形態では、記憶ユニットのリソース利用を改善するために、図11に示すように、別のメモリ活性化方法が提供される。
ステップ1100:第1のメモリアクセス要求を取得するステップであって、第1のメモリアクセス要求が、メモリ内の第1のサブ行へのアクセスを要求するために使用される、ステップ。
ステップ1110:第1のメモリアクセス要求を取得し、第1のメモリアクセス要求に従って第1の活性化命令を生成するステップ。
ステップ1120:第1の活性化命令をメモリに送信するステップ。
ステップ1130:第2のメモリアクセス要求を求めてメモリのスケジューリングすべきキューを検索するステップであって、メモリのスケジューリングすべきキューが、複数のメモリアクセス要求を含み、第2のメモリアクセス要求が、メモリ内の第2のサブ行へのアクセスを要求するために使用され、第1のサブ行が、第1のサブアレイ内に位置し、第2のサブ行が、第2のサブアレイ内に位置する、ステップ。
ステップ1140:第2のメモリアクセス要求に従って第2の活性化命令を生成するステップ。
ステップ1150:取得した第2の活性化命令をメモリに送信するステップ。
第1のサブアレイおよび第2のサブアレイの両方が、少なくとも1つの行を含み、少なくとも1つの行のいずれの行も、少なくとも1つのサブ行を含み、少なくとも1つのサブ行のいずれのサブ行も、少なくとも1つの記憶ユニットを含み、いずれの記憶ユニットも、1つの行番号識別子および1つの列番号識別子に対応する。
第2のサブ行は、記憶ユニットであって、その列番号識別子が第1のサブ行に含まれる記憶ユニットに対応する列番号識別子と同じである記憶ユニットを含む。
本発明のこの実施形態では、さらに、第1のメモリアクセス要求に従って第1の活性化命令を生成するステップの前に、以下の動作、すなわち、第3のメモリアクセス要求を取得する動作であって、第3のメモリアクセス要求が、メモリ内の第3のサブ行へのアクセスを要求するために使用され、第3のサブ行および第1のサブ行が、同じ行に位置し、第2のサブが、記憶ユニットであって、その列番号識別子が、第3のサブ行に含まれる記憶ユニットに対応する列番号識別子と同じである記憶ユニットを含む、動作がさらに含まれる。
第1のメモリアクセス要求に従って第1の活性化命令を生成するステップは、以下の手法、すなわち、第1の活性化命令を生成するために第1のメモリアクセス要求と第3のメモリアクセス要求とを組み合わせる手法で実施されてもよい。
本発明のこの実施形態では、さらに、第2のメモリアクセス要求に従って第2の活性化命令を生成するステップの前に、以下の動作、すなわち、
第4のメモリアクセス要求を取得する動作であって、第4のメモリアクセス要求が、メモリ内の第4のサブ行へのアクセスを要求するために使用され、第4のサブ行および第2のサブ行が、同じ行に位置し、第4のサブ行が、記憶ユニットであって、その列番号識別子が、第1のサブ行に含まれる記憶ユニットに対応する列番号識別子と同じである記憶ユニットを含む、動作がさらに含まれる。
第2のメモリアクセス要求に従って第2の活性化命令を生成するステップは、第2の活性化命令を生成するために第2のメモリアクセス要求と第4のメモリアクセス要求とを組み合わせることであってもよい。
本発明のこの実施形態では、随意に、第4のサブ行は、記憶ユニットであって、その列番号識別子が、第3のサブ行に含まれる記憶ユニットに対応する列番号識別子と同じである記憶ユニットを含む。
この解決策では、第1のラッチが第1のサブ行を活性化した後、第2の行が、記憶ユニットであって、その列番号識別子が第1のサブ行に含まれる記憶ユニットに対応する列番号識別子と同じである記憶ユニットを含むとき、第2のラッチも、第1のサブ行と異なるサブアレイ内に位置する第2のサブ行を活性化することができ、これにより、リソース利用が改善される。
本発明の一実施形態では、記憶ユニットのリソース利用を改善するために、図12に示すように、別のメモリ活性化方法が提供される。
ステップ1200:メモリコントローラによって送信される第1の活性化命令を受信するステップであって、第1の活性化命令が、メモリ内の第1のサブ行の活性化を命令するために使用される、ステップ。
ステップ1210:第1の活性化命令に従って、メモリ内に位置する第1のサブ行を活性化するステップ。
ステップ1220:メモリコントローラによって送信される第2の活性化命令を受信するステップであって、第2の活性化命令が、メモリ内の第2のサブ行の活性化を命令するために使用される、ステップ。
ステップ1230:第2の活性化命令に従って、メモリ内に位置する第2のサブ行を活性化するステップ。
第1のサブ行は、第1のサブアレイ内に位置し、第2のサブ行は、第2のサブアレイ内に位置する。
第1のサブアレイおよび第2のサブアレイの両方が、少なくとも1つの行を含み、少なくとも1つの行のいずれの行も、少なくとも1つのサブ行を含み、少なくとも1つのサブ行のいずれのサブ行も、少なくとも1つの記憶ユニットを含み、いずれの記憶ユニットも、1つの行番号識別子および1つの列番号識別子に対応する。
第2のサブ行は、記憶ユニットであって、その列番号識別子が第1のサブ行に含まれる記憶ユニットに対応する列番号識別子と同じである記憶ユニットを含む。
第1のラッチと第2のラッチのどちらも、データキャッシングを実行するように構成されたグローバルキャッシュに接続されない。
本発明のこの実施形態では、さらに、第1の活性化命令は、メモリ内の第3のサブ行の活性化を命令するためにさらに使用され、第3のサブ行および第1のサブ行は、同じ行に位置する。
第2のサブ行は、記憶ユニットであって、その列番号識別子が第3のサブ行に含まれる記憶ユニットに対応する列番号識別子と同じである記憶ユニットを含む。
本発明のこの実施形態では、さらに、第2の活性化命令が、メモリ内の第4のサブ行の活性化を命令するためにさらに使用され、第4のサブ行および第2のサブ行は、同じ行に位置する。
第4のサブ行は、記憶ユニットであって、その列番号識別子が第1のサブ行に含まれる記憶ユニットに対応する列番号識別子と同じである記憶ユニットを含む。
第4のサブ行は、記憶ユニットであって、その列番号識別子が第3のサブ行に含まれる記憶ユニットに対応する列番号識別子と同じである記憶ユニットを含む。
この解決策では、第1のラッチが第1のサブ行を活性化した後、第2の行が、記憶ユニットであって、その列番号識別子が第1のサブ行に含まれる記憶ユニットに対応する列番号識別子と同じである記憶ユニットを含むとき、第2のラッチも、第1のサブ行と異なるサブアレイ内に位置する第2のサブ行を活性化することができ、これにより、リソース利用が改善される。
本発明は、本発明の実施形態による方法、装置(システム)、およびコンピュータプログラム製品のフローチャートおよび/またはブロック図を参照して説明されている。フローチャートおよび/またはブロック図の各処理および/または各ブロックならびにフローチャートおよび/またはブロック図の処理および/またはブロックの組み合わせを実施するためにコンピュータプログラム命令を使用することができることを理解されたい。これらのコンピュータプログラム命令は、機械を作るために汎用コンピュータ、専用コンピュータ、組み込みプロセッサ、または任意の他のプログラマブルデータ処理装置のプロセッサに提供することができ、これにより、コンピュータまたは任意の他のプログラマブルデータ処理装置のプロセッサによって実行される命令は、フローチャートの1つ以上の処理および/またはブロック図の1つ以上のブロックにおける特定の機能を実施するための装置を作る。
また、これらのコンピュータプログラム命令は、コンピュータまたは任意の他のプログラマブルデータ処理装置に特定の仕方で動作するよう命令することができるコンピュータ可読メモリに記憶されてもよく、これにより、コンピュータ可読メモリに記憶された命令は、命令装置を含む人工物を作る。命令装置は、フローチャートの1つ以上の処理および/またはブロック図の1つ以上のブロックにおける特定の機能を実施する。
また、これらのコンピュータプログラム命令は、一連の動作およびステップがコンピュータまたは別のプログラマブルデバイス上で実行されるようにコンピュータまたは別のプログラマブルデータ処理装置にロードされ、これにより、コンピュータ実施処理が行われてもよい。したがって、コンピュータまたは別のプログラマブルデバイス上で実行される命令は、フローチャートの1つ以上の処理および/またはブロック図の1つ以上のブロックにおける特定の機能を実施するためのステップを提供する。
本発明のいくつかの実施形態について説明したが、当業者は、基本的な発明概念を習得したら、これらの実施形態を変更および修正することができる。したがって、添付の特許請求の範囲は、本発明の範囲内に入る実施形態ならびにすべての変更および修正を包含すると解釈されることを意図されている。
明らかに、当業者は、本発明の実施形態の精神および範囲から逸脱することなく、本発明の実施形態に対して様々な修正および変形を行うことができる。本発明は、添付の特許請求の範囲およびその均等な技術によって規定される保護範囲内に入るならば、これらの修正および変形を包含することを意図されている。
30 要求分配モジュール
31 メモリスケジューラ
32 コマンドスケジューラ
40 ラッチ
41 サブ行選択デコーダ
50 要求分配モジュール
51 メモリスケジューラ
52 コマンドスケジューラ
60 第1のラッチ
61 第1のサブ行選択デコーダ
62 第2のラッチ
63 第2のサブ行選択デコーダ
90 要求分配モジュール
91 メモリスケジューラ
92 コマンドスケジューラ
100 第1のラッチ
101 第1のサブ行選択デコーダ
102 第2のラッチ
103 第2のサブ行選択デコーダ
3000 メモリコントローラ
4000 メモリモジュール
5000 メモリコントローラ
6000 メモリモジュール
9000 メモリコントローラ
10000 メモリモジュール

Claims (11)

  1. 第1のメモリアクセス要求を取得するステップであって、前記第1のメモリアクセス要求が、メモリ内の第1のサブ行へのアクセスを要求するために使用される、ステップと、
    第2のメモリアクセス要求を求めて前記メモリのスケジューリングすべきキューを検索するステップであって、前記メモリの前記スケジューリングすべきキューが、複数のメモリアクセス要求を含み、前記第2のメモリアクセス要求が、前記メモリ内の第2のサブ行へのアクセスを要求するために使用され、前記第1のサブ行および前記第2のサブ行が、前記メモリ内の同じ行に位置する、ステップと、
    サブ行選択ベクトルを生成するステップであって、前記サブ行選択ベクトルが、活性化すべきサブ行が前記第1のサブ行および前記第2のサブ行であることを確認するために使用される、ステップと、
    第1の活性化命令を生成するために前記第1のメモリアクセス要求と前記第2のメモリアクセス要求とを組み合わせるステップであって、前記第1の活性化命令が、前記メモリ内の前記第1のサブ行および前記第2のサブ行の活性化を命令するために使用される、ステップと、
    前記第1の活性化命令および前記サブ行選択ベクトルを前記メモリに送信するステップと
    を含むメモリ活性化方法。
  2. メモリコントローラであって、
    第1のメモリアクセス要求を取得するように構成された要求分配モジュールであって、前記第1のメモリアクセス要求が、メモリ内の第1のサブ行へのアクセスを要求するために使用される、要求分配モジュールと、
    第2のメモリアクセス要求を求めて前記メモリのスケジューリングすべきキューを検索するように構成されたメモリスケジューラであって、前記メモリの前記スケジューリングすべきキューが、複数のメモリアクセス要求を含み、前記第2のメモリアクセス要求が、前記メモリ内の第2のサブ行へのアクセスを要求するために使用され、前記第1のサブ行および前記第2のサブ行が、前記メモリ内の同じ行に位置し、
    前記メモリスケジューラが、サブ行選択ベクトルを生成するようにさらに構成されており、前記サブ行選択ベクトルが、活性化すべきサブ行が前記第1のサブ行および前記第2のサブ行であることを確認するために使用され、
    前記メモリスケジューラが、第1の活性化命令を生成するために前記第1のメモリアクセス要求と前記第2のメモリアクセス要求とを組み合わせるようにさらに構成されており、前記第1の活性化命令が、前記メモリ内の前記第1のサブ行および前記第2のサブ行の活性化を命令するために使用される、メモリスケジューラと、
    前記第1の活性化命令および前記サブ行選択ベクトルを前記メモリに送信するように構成されたコマンドスケジューラと
    を備えるメモリコントローラ。
  3. メモリコントローラであって、
    第1のメモリアクセス要求を取得するように構成された要求分配モジュールであって、前記第1のメモリアクセス要求が、メモリ内の第1のサブ行へのアクセスを要求するために使用される、要求分配モジュールと、
    前記要求分配モジュールによって取得された前記第1のメモリアクセス要求を取得し、前記第1のメモリアクセス要求に従って第1の活性化命令を生成するように構成されたメモリスケジューラと、
    前記メモリスケジューラから取得した前記第1の活性化命令を前記メモリに送信するように構成されたコマンドスケジューラと
    を備え、
    前記要求分配モジュールが、第2のメモリアクセス要求を求めて前記メモリのスケジューリングすべきキューを検索するようにさらに構成されており、前記メモリの前記スケジューリングすべきキューが、複数のメモリアクセス要求を含み、前記第2のメモリアクセス要求が、前記メモリ内の第2のサブ行へのアクセスを要求するために使用され、前記第1のサブ行が、第1のサブアレイ内に位置し、前記第2のサブ行が、第2のサブアレイ内に位置し、
    前記メモリスケジューラが、前記第2のメモリアクセス要求に従って第2の活性化命令を生成するようにさらに構成されており、
    前記コマンドスケジューラが、前記メモリスケジューラから取得した前記第2の活性化命令を前記メモリに送信するようにさらに構成されており、
    前記第1のサブアレイおよび前記第2のサブアレイの両方が、少なくとも1つの行を含み、前記少なくとも1つの行のいずれの行も、少なくとも1つのサブ行を含み、前記少なくとも1つのサブ行のいずれのサブ行も、少なくとも1つの記憶ユニットを含み、いずれの記憶ユニットも、1つの行番号識別子および1つの列番号識別子に対応しており、
    前記第2のサブ行に含まれるどの記憶ユニットに対応する列番号識別子も、前記第1のサブ行に含まれるどの記憶ユニットに対応する列番号識別子とも異なり、
    前記要求分配モジュールが、
    第3のメモリアクセス要求を取得するようにさらに構成されており、前記第3のメモリアクセス要求が、前記メモリ内の第3のサブ行へのアクセスを要求するために使用され、前記第3のサブ行および前記第1のサブ行が、同じ行に位置し、前記第2のサブ行に含まれるどの記憶ユニットに対応する列番号識別子も、前記第3のサブ行に含まれるどの記憶ユニットに対応する列番号識別子とも異なり、
    前記メモリスケジューラが、
    前記第1の活性化命令を生成するために前記第1のメモリアクセス要求と前記第3のメモリアクセス要求とを組み合わせるように特に構成されている、メモリコントローラ。
  4. 前記要求分配モジュールが、
    第4のメモリアクセス要求を取得するようにさらに構成されており、前記第4のメモリアクセス要求が、前記メモリ内の第4のサブ行へのアクセスを要求するために使用され、前記第4のサブ行および前記第2のサブ行が、同じ行に位置し、前記第4のサブ行に含まれるどの記憶ユニットに対応する列番号識別子も、前記第1のサブ行に含まれるどの記憶ユニットに対応する列番号識別子とも異なり、
    前記メモリスケジューラが、
    前記第2の活性化命令を生成するために前記第2のメモリアクセス要求と前記第4のメモリアクセス要求とを組み合わせるように特に構成されている、
    請求項3に記載のメモリコントローラ。
  5. メモリコントローラによって送信される第1の活性化命令を受信するように構成された第1のラッチであって、前記第1の活性化命令が、メモリ内の第1のサブ行の活性化を命令するために使用される、第1のラッチと、
    前記第1の活性化命令に従って、前記メモリ内に位置する前記第1のサブ行を活性化するように構成された第1のサブ行選択デコーダと、
    前記メモリコントローラによって送信される第2の活性化命令を受信するように構成された第2のラッチであって、前記第2の活性化命令が、前記メモリ内の第2のサブ行の活性化を命令するために使用される、第2のラッチと、
    前記第2の活性化命令に従って、前記メモリ内に位置する前記第2のサブ行を活性化するように構成された第2のサブ行選択デコーダと
    を備え、
    前記第1のサブ行が、第1のサブアレイ内に位置し、前記第2のサブ行が、第2のサブアレイ内に位置し、
    前記第1のサブアレイおよび前記第2のサブアレイの両方が、少なくとも1つの行を含み、前記少なくとも1つの行のいずれの行も、少なくとも1つのサブ行を含み、前記少なくとも1つのサブ行のいずれのサブ行も、少なくとも1つの記憶ユニットを含み、いずれの記憶ユニットも、1つの行番号識別子および1つの列番号識別子に対応しており、
    前記第2のサブ行に含まれるどの記憶ユニットに対応する列番号識別子も、前記第1のサブ行に含まれるどの記憶ユニットに対応する列番号識別子とも異なり、
    前記第1のラッチおよび前記第2のラッチの両方が、データキャッシングを実行するように構成されたグローバルキャッシュに接続される、メモリモジュール。
  6. 前記第1の活性化命令が、前記メモリ内の第3のサブ行の活性化を命令するためにさらに使用され、前記第3のサブ行および前記第1のサブ行が、同じ行に位置し、
    前記第2のサブ行に含まれるどの記憶ユニットに対応する列番号識別子も、前記第3のサブ行に含まれるどの記憶ユニットに対応する列番号識別子とも異なる、
    請求項5に記載のメモリモジュール。
  7. 前記第2の活性化命令が、前記メモリ内の第4のサブ行の活性化を命令するためにさらに使用され、前記第4のサブ行および前記第2のサブ行が、同じ行に位置し、
    前記第4のサブ行に含まれるどの記憶ユニットに対応する列番号識別子も、前記第1のサブ行に含まれるどの記憶ユニットに対応する列番号識別子とも異なり、
    前記第4のサブ行に含まれるどの記憶ユニットに対応する列番号識別子も、前記第3のサブ行に含まれるどの記憶ユニットに対応する列番号識別子とも異なる、
    請求項6に記載のメモリモジュール。
  8. メモリ活性化方法であって、
    第1のメモリアクセス要求を取得するステップであって、前記第1のメモリアクセス要求が、メモリ内の第1のサブ行へのアクセスを要求するために使用される、ステップと、
    前記第1のメモリアクセス要求に従って第1の活性化命令を生成し、前記第1の活性化命令を前記メモリに送信するステップと、
    第2のメモリアクセス要求を求めて前記メモリのスケジューリングすべきキューを検索するステップであって、前記メモリの前記スケジューリングすべきキューが、複数のメモリアクセス要求を含み、前記第2のメモリアクセス要求が、前記メモリ内の第2のサブ行へのアクセスを要求するために使用され、前記第1のサブ行が、第1のサブアレイ内に位置し、前記第2のサブ行が、第2のサブアレイ内に位置する、ステップと、
    前記第2のメモリアクセス要求に従って第2の活性化命令を生成し、前記第2の活性化命令を前記メモリに送信するステップと
    を含み、
    前記第1のサブアレイおよび前記第2のサブアレイの両方が、少なくとも1つの行を含み、前記少なくとも1つの行のいずれの行も、少なくとも1つのサブ行を含み、前記少なくとも1つのサブ行のいずれのサブ行も、少なくとも1つの記憶ユニットを含み、いずれの記憶ユニットも、1つの行番号識別子および1つの列番号識別子に対応しており、
    前記第2のサブ行に含まれるどの記憶ユニットに対応する列番号識別子も、前記第1のサブ行に含まれるどの記憶ユニットに対応する列番号識別子とも異なり、前記第1のメモリアクセス要求に従って前記第1の活性化命令を生成する前記ステップの前に、前記方法が、
    第3のメモリアクセス要求を取得するステップであって、前記第3のメモリアクセス要求が、前記メモリ内の第3のサブ行へのアクセスを要求するために使用され、前記第3のサブ行および前記第1のサブ行が、同じ行に位置し、前記第2のサブ行に含まれるどの記憶ユニットに対応する列番号識別子も、前記第3のサブ行に含まれるどの記憶ユニットに対応する列番号識別子とも異なる、ステップをさらに含み、
    前記第1のメモリアクセス要求に従って前記第1の活性化命令を生成する前記ステップが、
    前記第1の活性化命令を生成するために前記第1のメモリアクセス要求と前記第3のメモリアクセス要求とを組み合わせるステップを特に含む、方法。
  9. 前記第2のメモリアクセス要求に従って前記第2の活性化命令を生成する前記ステップの前に、前記方法が、
    第4のメモリアクセス要求を取得するステップであって、前記第4のメモリアクセス要求が、前記メモリ内の第4のサブ行へのアクセスを要求するために使用され、前記第4のサブ行および前記第2のサブ行が、同じ行に位置し、前記第4のサブ行に含まれるどの記憶ユニットに対応する列番号識別子も、前記第1のサブ行に含まれるどの記憶ユニットに対応する列番号識別子とも異なる、ステップをさらに含み、
    前記第2のメモリアクセス要求に従って前記第2の活性化命令を生成する前記ステップが、
    前記第2の活性化命令を生成するために前記第2のメモリアクセス要求と前記第4のメモリアクセス要求とを組み合わせるステップを特に含む、
    請求項8に記載の方法。
  10. メモリ活性化方法であって、
    メモリコントローラによって送信される第1の活性化命令を受信するステップであって、前記第1の活性化命令が、メモリ内の第1のサブ行の活性化を命令するために使用される、ステップと、
    前記第1の活性化命令に従って、前記メモリ内に位置する前記第1のサブ行を活性化するステップと、
    前記メモリコントローラによって送信される第2の活性化命令を受信するステップであって、前記第2の活性化命令が、前記メモリ内の第2のサブ行の活性化を命令するために使用される、ステップと、
    前記第2の活性化命令に従って、前記メモリ内に位置する前記第2のサブ行を活性化するステップと
    を含み、
    前記第1のサブ行が、第1のサブアレイ内に位置し、前記第2のサブ行が、第2のサブアレイ内に位置し、
    前記第1のサブアレイおよび前記第2のサブアレイの両方が、少なくとも1つの行を含み、前記少なくとも1つの行のいずれの行も、少なくとも1つのサブ行を含み、前記少なくとも1つのサブ行のいずれのサブ行も、少なくとも1つの記憶ユニットを含み、いずれの記憶ユニットも、1つの行番号識別子および1つの列番号識別子に対応しており、
    前記第2のサブ行に含まれるどの記憶ユニットに対応する列番号識別子も、前記第1のサブ行に含まれるどの記憶ユニットに対応する列番号識別子とも異なり、
    1のラッチおよび第2のラッチの両方が、データキャッシングを実行するように構成されたグローバルキャッシュに接続される、メモリ活性化方法。
  11. 前記第1の活性化命令が、前記メモリ内の第3のサブ行の活性化を命令するためにさらに使用され、前記第3のサブ行および前記第1のサブ行が、同じ行に位置し、
    前記第2のサブ行に含まれるどの記憶ユニットに対応する列番号識別子も、前記第3のサブ行に含まれるどの記憶ユニットに対応する列番号識別子とも異なり、
    前記第1の活性化命令に従って、前記メモリ内に位置する前記第1のサブ行を活性化する前記ステップが、前記第1の活性化命令に従って前記メモリの第1のラッチにより、前記メモリ内に位置する前記第1のサブ行および前記第3のサブ行を活性化するステップを特に含む、
    請求項10に記載の方法。
JP2017528499A 2014-11-28 2015-11-28 メモリ活性化方法および装置 Active JP6395937B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201410707487.7A CN105701040B (zh) 2014-11-28 2014-11-28 一种激活内存的方法及装置
CN201410707487.7 2014-11-28
PCT/CN2015/095886 WO2016082800A1 (zh) 2014-11-28 2015-11-28 一种内存管理方法、装置以及内存控制器

Publications (2)

Publication Number Publication Date
JP2018500667A JP2018500667A (ja) 2018-01-11
JP6395937B2 true JP6395937B2 (ja) 2018-09-26

Family

ID=56073643

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017528499A Active JP6395937B2 (ja) 2014-11-28 2015-11-28 メモリ活性化方法および装置

Country Status (6)

Country Link
US (1) US10127955B2 (ja)
EP (1) EP3217406B1 (ja)
JP (1) JP6395937B2 (ja)
KR (1) KR101992729B1 (ja)
CN (1) CN105701040B (ja)
WO (1) WO2016082800A1 (ja)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11210019B2 (en) * 2017-08-23 2021-12-28 Micron Technology, Inc. Memory with virtual page size
US10394456B2 (en) 2017-08-23 2019-08-27 Micron Technology, Inc. On demand memory page size
US10522210B2 (en) * 2017-12-14 2019-12-31 Micron Technology, Inc. Apparatuses and methods for subarray addressing
US10332586B1 (en) 2017-12-19 2019-06-25 Micron Technology, Inc. Apparatuses and methods for subrow addressing
US11152039B2 (en) 2019-07-11 2021-10-19 Micron Technology, Inc. Input/output line sharing for memory arrays
US11119658B2 (en) * 2019-11-01 2021-09-14 Micron Technology, Inc. Capacity expansion channels for memory sub-systems
EP4011848A4 (en) 2019-11-28 2022-10-19 Sekisui Chemical Co., Ltd. INTERLAYER FILM FOR LAMINATED GLASS, LAMINATED GLASS AND PICTURE DISPLAY SYSTEM
US11600312B1 (en) * 2021-08-16 2023-03-07 Micron Technology, Inc. Activate commands for memory preparation
WO2023065134A1 (en) * 2021-10-20 2023-04-27 Paypal, Inc. Database management using sort keys

Family Cites Families (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6161208A (en) * 1994-05-06 2000-12-12 International Business Machines Corporation Storage subsystem including an error correcting cache and means for performing memory to memory transfers
US6226722B1 (en) * 1994-05-19 2001-05-01 International Business Machines Corporation Integrated level two cache and controller with multiple ports, L1 bypass and concurrent accessing
JP2845187B2 (ja) * 1995-12-21 1999-01-13 日本電気株式会社 半導体記憶装置
US6339822B1 (en) * 1998-10-02 2002-01-15 Advanced Micro Devices, Inc. Using padded instructions in a block-oriented cache
US6618390B1 (en) * 1999-05-21 2003-09-09 Advanced Micro Devices, Inc. Method and apparatus for maintaining randomly accessible free buffer information for a network switch
US6741256B2 (en) * 2001-08-27 2004-05-25 Sun Microsystems, Inc. Predictive optimizer for DRAM memory
US6683816B2 (en) * 2001-10-05 2004-01-27 Hewlett-Packard Development Company, L.P. Access control system for multi-banked DRAM memory
US6865697B2 (en) * 2002-01-18 2005-03-08 International Business Machines Corporation Method and apparatus for reduced error checking of data received by a server from a client
US6877046B2 (en) * 2002-03-29 2005-04-05 International Business Machines Corporation Method and apparatus for memory with embedded processor
US7103730B2 (en) * 2002-04-09 2006-09-05 Intel Corporation Method, system, and apparatus for reducing power consumption of a memory
WO2003100618A2 (en) * 2002-05-24 2003-12-04 Koninklijke Philips Electronics N.V. Programmed access latency in mock multiport memory
US7017005B2 (en) * 2002-08-28 2006-03-21 Hywire Ltd. Implementation of a content addressable memory using a RAM-cell structure
US7050351B2 (en) * 2003-12-30 2006-05-23 Intel Corporation Method and apparatus for multiple row caches per bank
US7272699B2 (en) * 2004-11-12 2007-09-18 International Business Machines Corporation Flexible sub-column to sub-row mapping for sub-page activation in XDR™ DRAMs
KR100725100B1 (ko) * 2005-12-22 2007-06-04 삼성전자주식회사 포트간 데이터 전송기능을 갖는 멀티패쓰 억세스블 반도체메모리 장치
US7724593B2 (en) 2006-07-07 2010-05-25 Rao G R Mohan Memories with front end precharge
ATE479186T1 (de) * 2006-07-07 2010-09-15 S Aqua Semiconductor Llc Speichereinheiten mit front-end-vorladung
US8543788B2 (en) * 2007-06-06 2013-09-24 Aptina Imaging Corporation Conformal rolling buffer apparatus, systems, and methods
US8001338B2 (en) * 2007-08-21 2011-08-16 Microsoft Corporation Multi-level DRAM controller to manage access to DRAM
JP2009157887A (ja) * 2007-12-28 2009-07-16 Nec Corp ロードストアキューの制御方法及びその制御システム
US8130576B2 (en) * 2008-06-30 2012-03-06 Intel Corporation Memory throughput increase via fine granularity of precharge management
KR101506330B1 (ko) * 2008-09-23 2015-03-27 삼성전자 주식회사 데이터 강건성 관리장치와, 데이터 저장 방법 및 데이터 복구 방법
CN101788961A (zh) * 2009-01-23 2010-07-28 英业达集团(天津)电子技术有限公司 对块设备进行异步请求的数据访问方法
US20110093367A1 (en) * 2009-10-20 2011-04-21 At&T Intellectual Property I, L.P. Method, apparatus, and computer product for centralized account provisioning
US8724624B2 (en) * 2009-12-22 2014-05-13 Cuneyt Bazlamacci Systolic array architecture for fast IP lookup
US9361955B2 (en) * 2010-01-28 2016-06-07 Hewlett Packard Enterprise Development Lp Memory access methods and apparatus
US9104713B2 (en) * 2011-10-05 2015-08-11 International Business Machines Corporation Managing a temporal key property in a database management system
KR20130065957A (ko) * 2011-12-12 2013-06-20 숭실대학교산학협력단 메모리 제어장치 및 제어방법, 그리고 그 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 기록매체
CN102999441B (zh) * 2012-11-15 2015-06-17 清华大学 一种细粒度内存访问的方法
US20140173170A1 (en) * 2012-12-14 2014-06-19 Hewlett-Packard Development Company, L.P. Multiple subarray memory access
EP2992437A4 (en) * 2013-04-30 2017-01-11 Hewlett-Packard Enterprise Development LP Coalescing memory access requests
US9367449B2 (en) * 2013-09-11 2016-06-14 Owtware Holdings Limited, BVI Hierarchical garbage collection in an object relational database system
CN103927268B (zh) * 2014-04-08 2017-02-15 中国科学院微电子研究所 一种存储器的访问方法及装置

Also Published As

Publication number Publication date
WO2016082800A1 (zh) 2016-06-02
CN105701040B (zh) 2018-12-07
KR20170087948A (ko) 2017-07-31
US10127955B2 (en) 2018-11-13
EP3217406A4 (en) 2017-12-06
KR101992729B1 (ko) 2019-06-25
JP2018500667A (ja) 2018-01-11
EP3217406B1 (en) 2022-04-06
CN105701040A (zh) 2016-06-22
EP3217406A1 (en) 2017-09-13
US20170263295A1 (en) 2017-09-14

Similar Documents

Publication Publication Date Title
JP6395937B2 (ja) メモリ活性化方法および装置
US9965392B2 (en) Managing coherent memory between an accelerated processing device and a central processing unit
US10606654B2 (en) Data processing method and apparatus
US8082420B2 (en) Method and apparatus for executing instructions
CN107315715B (zh) 一种用于执行矩阵加/减运算的装置和方法
JP2021168203A (ja) 不揮発性メモリの複数区画の同時アクセスのための装置及び方法
US11573903B2 (en) Memory devices and methods which may facilitate tensor memory access with memory maps based on memory operations
US20150067273A1 (en) Computation hardware with high-bandwidth memory interface
CN112799726B (zh) 数据处理装置、方法及相关产品
CN104714785A (zh) 任务调度装置、方法及并行处理数据的设备
CN107341115A (zh) 虚拟机内存访问方法、系统和电子设备
US9378533B2 (en) Central processing unit, GPU simulation method thereof, and computing system including the same
CN109308191A (zh) 分支预测方法及装置
EP3846036B1 (en) Matrix storage method, matrix access method, apparatus and electronic device
US20090063779A1 (en) Cache memory and a method for servicing access requests
CN106326184A (zh) 基于cpu、gpu和dsp的异构计算框架
CN105874431A (zh) 减少数据交换负载的计算系统以及相关的数据交换方法
US9606802B2 (en) Processor system with predicate register, computer system, method for managing predicates and computer program product
US20140331021A1 (en) Memory control apparatus and method
US11195248B2 (en) Method and apparatus for processing pixel data of a video frame
CN112306420B (zh) 一种基于存储池的数据读写方法、装置、设备及存储介质
WO2017011021A1 (en) Systems and methods facilitating reduced latency via stashing in systems on chips
CN114116533A (zh) 利用共享存储器存储数据的方法
CN106651743A (zh) 一种支持聚散功能的统一染色阵列lsu结构
CN109445852B (zh) 一种在多核处理器中提升内存访问效率的方法及系统

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180416

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180423

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180713

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180828

R150 Certificate of patent or registration of utility model

Ref document number: 6395937

Country of ref document: JP

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