(58)【調査した分野】(Int.Cl.,DB名)
第1のメモリアクセス要求を取得するステップであって、前記第1のメモリアクセス要求が、メモリ内の第1のサブ行へのアクセスを要求するために使用される、ステップと、
第2のメモリアクセス要求を求めて前記メモリのスケジューリングすべきキューを検索するステップであって、前記メモリの前記スケジューリングすべきキューが、複数のメモリアクセス要求を含み、前記第2のメモリアクセス要求が、前記メモリ内の第2のサブ行へのアクセスを要求するために使用され、前記第1のサブ行および前記第2のサブ行が、前記メモリ内の同じ行に位置する、ステップと、
サブ行選択ベクトルを生成するステップであって、前記サブ行選択ベクトルが、活性化すべきサブ行が前記第1のサブ行および前記第2のサブ行であることを確認するために使用される、ステップと、
第1の活性化命令を生成するために前記第1のメモリアクセス要求と前記第2のメモリアクセス要求とを組み合わせるステップであって、前記第1の活性化命令が、前記メモリ内の前記第1のサブ行および前記第2のサブ行の活性化を命令するために使用される、ステップと、
前記第1の活性化命令および前記サブ行選択ベクトルを前記メモリに送信するステップと
を含むメモリ活性化方法。
メモリコントローラによって送信される第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のラッチの両方が、データキャッシングを実行するように構成されたグローバルキャッシュに接続される、メモリモジュール。
【発明の概要】
【0005】
本発明の実施形態は、メモリ活性化方法の比較的低い効率という従来技術の欠点を克服するメモリ活性化方法および装置を提供する。
【0006】
本発明の実施形態で提供される具体的な技術的解決策は以下の通りである。
【課題を解決するための手段】
【0007】
第1の態様によれば、メモリ活性化方法が提供され、メモリ活性化方法は、
第1のメモリアクセス要求を取得するステップであって、第1のメモリアクセス要求が、メモリ内の第1のサブ行へのアクセスを要求するために使用される、ステップと、
第2のメモリアクセス要求を求めてメモリのスケジューリングすべきキューを検索するステップであって、メモリのスケジューリングすべきキューが、複数のメモリアクセス要求を含み、第2のメモリアクセス要求が、メモリ内の第2のサブ行へのアクセスを要求するために使用され、第1のサブ行および第2のサブ行が、メモリ内の同じ行に位置する、ステップと、
第1の活性化命令を生成するために第1のメモリアクセス要求と第2のメモリアクセス要求とを組み合わせるステップであって、第1の活性化命令が、メモリ内の第1のサブ行および第2のサブ行の活性化を命令するために使用される、ステップと、
第1の活性化命令をメモリに送信するステップと
を含む。
【0008】
第1の態様に関連して、第1の可能な実施態様では、第2のメモリアクセス要求を求めてメモリのスケジューリングすべきキューを検索するステップの後に、本方法は、
サブ行選択ベクトルを生成し、サブ行選択ベクトルをメモリに送信するステップをさらに含み、
サブ行選択ベクトルは、活性化すべきサブ行が第1のサブ行および第2のサブ行であることを確認するために使用される。
【0009】
第2の態様によれば、メモリ活性化方法が提供され、メモリ活性化方法は、
メモリコントローラによって送信される第1の活性化命令を受信するステップであって、第1の活性化命令が、メモリ内の第1のサブ行および第2のサブ行の活性化を命令するために使用され、第1のサブ行および第2のサブ行の両方が、メモリ内の同じ行に位置する、ステップと、
第1の活性化命令に従って、メモリ内に位置する第1のサブ行および第2のサブ行を活性化するステップと
を含む。
【0010】
第2の態様に関連して、第1の可能な実施態様では、第1の活性化命令に従って、メモリ内に位置する第1のサブ行および第2のサブ行を活性化するステップの前に、本方法は、
メモリコントローラによって送信されるサブ行選択ベクトルを受信するステップであって、サブ行選択ベクトルが、活性化すべきサブ行が第1のサブ行および第2のサブ行であることを確認するために使用される、ステップをさらに含み、
第1の活性化命令に従って、メモリ内に位置する第1のサブ行および第2のサブ行を活性化するステップが、
第1の活性化命令内のサブ行選択ベクトルに従って、メモリ内に位置する第1のサブ行および第2のサブ行を活性化するステップを特に含む。
【0011】
第3の態様によれば、メモリコントローラが提供され、メモリコントローラは、
第1のメモリアクセス要求を取得するように構成された要求分配モジュールであって、第1のメモリアクセス要求が、メモリ内の第1のサブ行へのアクセスを要求するために使用される、要求分配モジュールと、
第2のメモリアクセス要求を求めてメモリのスケジューリングすべきキューを検索するように構成されたメモリスケジューラであって、メモリのスケジューリングすべきキューが、複数のメモリアクセス要求を含み、第2のメモリアクセス要求が、メモリ内の第2のサブ行へのアクセスを要求するために使用され、第1のサブ行および第2のサブ行が、メモリ内の同じ行に位置し、
メモリスケジューラが、第1の活性化命令を生成するために第1のメモリアクセス要求と第2のメモリアクセス要求とを組み合わせるようにさらに構成されており、第1の活性化命令が、メモリ内の第1のサブ行および第2のサブ行の活性化を命令するために使用される、メモリスケジューラと、
第1の活性化命令をメモリに送信するように構成されたコマンドスケジューラと
を含む。
【0012】
第3の態様に関連して、第1の可能な実施態様では、
メモリスケジューラは、
サブ行選択ベクトルを生成し、サブ行選択ベクトルをメモリに送信する
ようにさらに構成され、
サブ行選択ベクトルは、活性化すべきサブ行が第1のサブ行および第2のサブ行であることを確認するために使用される。
【0013】
第4の態様によれば、メモリモジュールが提供され、メモリモジュールは、
メモリコントローラによって送信される第1の活性化命令を受信するように構成されたラッチであって、第1の活性化命令が、メモリ内の第1のサブ行および第2のサブ行の活性化を命令するために使用され、第1のサブ行および第2のサブ行の両方が、メモリ内の同じ行に位置する、ラッチと、
ラッチから取得した第1の活性化命令に従って、メモリ内に位置する第1のサブ行および第2のサブ行を活性化するように構成されたサブ行選択デコーダと
を含む。
【0014】
第4の態様に関連して、第1の可能な実施態様では、ラッチが、
メモリコントローラによって送信されるサブ行選択ベクトルを受信するようにさらに構成されており、サブ行選択ベクトルが、活性化すべきサブ行が第1のサブ行および第2のサブ行であることを確認するために使用され、
サブ行選択デコーダが、
第1の活性化命令内のサブ行選択ベクトルに従って、メモリ内に位置する第1のサブ行および第2のサブ行を活性化するように特に構成されている。
【0015】
第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のサブ行に含まれるどの記憶ユニットに対応する列番号識別子とも異なる。
【0016】
第5の態様に関連して、第1の可能な実施態様では、要求分配モジュールが、
第3のメモリアクセス要求を取得するようにさらに構成されており、第3のメモリアクセス要求が、メモリ内の第3のサブ行へのアクセスを要求するために使用され、第3のサブ行および第1のサブ行が、同じ行に位置し、第2のサブ行に含まれるどの記憶ユニットに対応する列番号識別子も、第3のサブ行に含まれるどの記憶ユニットに対応する列番号識別子とも異なり、
メモリスケジューラが、
第1の活性化命令を生成するために第1のメモリアクセス要求と第3のメモリアクセス要求とを組み合わせるように特に構成されている。
【0017】
第5の態様
または第5の態様の第1の可能な実施態様に関連して、第2の可能な実施態様では、要求分配モジュールが、
第4のメモリアクセス要求を取得するようにさらに構成されており、第4のメモリアクセス要求が、メモリ内の第4のサブ行へのアクセスを要求するために使用され、第4のサブ行および第2のサブ行が、同じ行に位置し、第4のサブ行に含まれるどの記憶ユニットに対応する列番号識別子も、第1のサブ行に含まれるどの記憶ユニットに対応する列番号識別子とも異なり、
メモリスケジューラが、
第2の活性化命令を生成するために第2のメモリアクセス要求と第4のメモリアクセス要求とを組み合わせるように特に構成されている。
【0018】
第5の態様の第2の可能な実施態様に関連して、第3の可能な実施態様では、第4のサブ行に含まれるどの記憶ユニットに対応する列番号識別子も、第3のサブ行に含まれるどの記憶ユニットに対応する列番号識別子とも異なる。
【0019】
第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のラッチの両方が、データキャッシングを実行するように構成されたグローバルキャッシュに接続される。
【0020】
第6の態様に関連して、第1の可能な実施態様では、第1の活性化命令が、メモリ内の第3のサブ行の活性化を命令するためにさらに使用され、第3のサブ行および第1のサブ行が、同じ行に位置し、
第2のサブ行に含まれるどの記憶ユニットに対応する列番号識別子も、第3のサブ行に含まれるどの記憶ユニットに対応する列番号識別子とも異なる。
【0021】
第6の態様および第6の態様の第1の可能な実施態様に関連して、第2の可能な実施態様では、第2の活性化命令が、メモリ内の第4のサブ行の活性化を命令するためにさらに使用され、第4のサブ行および第2のサブ行が、同じ行に位置し、
第4のサブ行に含まれるどの記憶ユニットに対応する列番号識別子も、第1のサブ行に含まれるどの記憶ユニットに対応する列番号識別子とも異なり、
第4のサブ行に含まれるどの記憶ユニットに対応する列番号識別子も、第3のサブ行に含まれるどの記憶ユニットに対応する列番号識別子とも異なる。
【0022】
第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のサブ行に含まれるどの記憶ユニットに対応する列番号識別子とも異なる。
【0023】
第7の態様に関連して、第1の可能な実施態様では、第1のメモリアクセス要求に従って第1の活性化命令を生成するステップの前に、本方法は、
第3のメモリアクセス要求を取得するステップであって、第3のメモリアクセス要求が、メモリ内の第3のサブ行へのアクセスを要求するために使用され、第3のサブ行および第1のサブ行が、同じ行に位置し、第2のサブ行に含まれるどの記憶ユニットに対応する列番号識別子も、第3のサブ行に含まれるどの記憶ユニットに対応する列番号識別子とも異なる、ステップをさらに含み、
第1のメモリアクセス要求に従って第1の活性化命令を生成するステップが、
第1の活性化命令を生成するために第1のメモリアクセス要求と第3のメモリアクセス要求とを組み合わせるステップを特に含む。
【0024】
第7の態様および第7の態様の第1の可能な実施態様に関連して、第2の可能な実施態様では、第2のメモリアクセス要求に従って第2の活性化命令を生成するステップの前に、本方法は、
第4のメモリアクセス要求を取得するステップであって、第4のメモリアクセス要求が、メモリ内の第4のサブ行へのアクセスを要求するために使用され、第4のサブ行および第2のサブ行が、同じ行に位置し、第4のサブ行に含まれるどの記憶ユニットに対応する列番号識別子も、第1のサブ行に含まれるどの記憶ユニットに対応する列番号識別子とも異なる、ステップをさらに含み、
第2のメモリアクセス要求に従って第2の活性化命令を生成するステップが、
第2の活性化命令を生成するために第2のメモリアクセス要求と第4のメモリアクセス要求とを組み合わせるステップを特に含む。
【0025】
第7の態様の第2の可能な実施態様に関連して、第3の可能な実施態様では、第4のサブ行に含まれるどの記憶ユニットに対応する列番号識別子も、第3のサブ行に含まれるどの記憶ユニットに対応する列番号識別子とも異なる。
【0026】
第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のラッチの両方が、データキャッシングを実行するように構成されたグローバルキャッシュに接続される。
【0027】
第8の態様に関連して、第1の可能な実施態様では、第1の活性化命令が、メモリ内の第3のサブ行の活性化を命令するためにさらに使用され、第3のサブ行および第1のサブ行が、同じ行に位置し、
第2のサブ行に含まれるどの記憶ユニットに対応する列番号識別子も、第3のサブ行に含まれるどの記憶ユニットに対応する列番号識別子とも異なり、
第1の活性化命令に従って、メモリ内に位置する第1のサブ行を活性化するステップが、第1の活性化命令に従ってメモリの第1のラッチにより、メモリ内に位置する第1のサブ行および第3のサブ行を活性化するステップを特に含む。
【0028】
第8の態様および第8の態様の第1の可能な実施態様に関連して、第2の可能な実施態様では、第2の活性化命令が、メモリ内の第4のサブ行の活性化を命令するためにさらに使用され、第4のサブ行および第2のサブ行が、同じ行に位置し、
第4のサブ行に含まれるどの記憶ユニットに対応する列番号識別子も、第3のサブ行に含まれるどの記憶ユニットに対応する列番号識別子とも異なり、
第2の活性化命令に従って、メモリ内に位置する第2のサブ行を活性化するステップが、第2の活性化命令に従ってメモリの第2のラッチにより、メモリ内に位置する第2のサブ行および第4のサブ行を活性化するステップを特に含む。
【0029】
本発明の有益な効果は以下の通りである。
【0030】
従来技術では、複数の記憶ユニットを同時に活性化することができず、その代わりに、記憶ユニットを活性化した後にその都度、記憶ユニットをプリチャージする必要があり、この結果として、次の記憶ユニットの活性化動作を実行することができる。したがって、現在のメモリ活性化方法の欠点は、比較的低い効率である。本発明の実施形態では、メモリ内の第1のサブ行へのアクセスを要求するために使用される第1のメモリアクセス要求が取得された後、第1のサブ行はすぐには活性化されない。その代わりに、第2のメモリアクセス要求を求めてメモリのスケジューリングすべきキューが検索され、この場合、第2のメモリアクセス要求は、メモリ内の第2のサブ行へのアクセスを要求するために使用され、第1のサブ行および第2のサブ行は、メモリ内の同じ行に配置す
る。次に、第1の活性化命令を生成するために第1のメモリアクセス要求と第2のメモリアクセス要求とが組み合わされ、この場合、第1の活性化命令は、メモリ内の第1のサブ行および第2のサブ行の活性化を命令するために使用される。第1の活性化命令が、メモリに送信される。このようにして、第1のサブ行および第2のサブ行を同時に活性化することができ、このため、第1のサブ行の活性化の後に、第1のサブ行が位置する行をプリチャージしてから、第2のサブ行を活性化する必要がない。したがって、メモリ活性化の効率が向上する。
【発明を実施するための形態】
【0032】
本発明の実施形態の目的、技術的解決策、および利点をより明確にするために、以下では、本発明の実施形態の添付図面を参照しながら本発明の実施形態の技術的解決策を明確かつ完全に説明する。明らかに、記載されている実施形態は、本発明の実施形態の一部であり、本発明の実施形態の全部ではない。創造的な努力なしに本発明の実施形態に基づいて当業者によって得られる他のすべての実施形態は、本発明の保護範囲内に入るものとする。
【0033】
加えて、「システム」および「ネットワーク」という用語は、本明細書では交換可能に使用することができる。本明細書における「および/または」という用語は、関連する対象を記述するための関連関係のみを記述し、3つの関係が存在し得ることを表す。例えば、Aおよび/またはBは、以下の3つのケース、すなわち、Aのみが存在するケース、AおよびBの両方が存在するケース、Bのみが存在するケースを表すことができる。加えて、本明細書中の記号「/」は、一般に、関連する対象間の「または」関係を示す。
【0034】
以下では、添付図面を参照して、本発明
の実施態様を詳細に説明する。本明細書に記載し
た実施形態は、本発明を記述し、説明するために使用されているに過ぎず、本発明を限定するためのものではないことを理解されたい。加えて、本出願の実施形態および実施形態の特徴は、互いに矛盾しなければ互いに組み合わせてもよい。
【0035】
以下では、添付図面を参照して、本発明の好適な実施態様を詳細に説明する。
【0036】
図1Aに示すように、本発明の一実施形態では、メモリ活性化の手順は以下の通りである。
【0037】
ステップ100:第1のメモリアクセス要求を取得するステップであって、第1のメモリアクセス要求が、メモリ内の第1のサブ行へのアクセスを要求するために使用される、ステップ。
【0038】
ステップ110:第2のメモリアクセス要求を求めてメモリのスケジューリングすべきキューを検索するステップであって、メモリのスケジューリングすべきキューが、複数のメモリアクセス要求を含み、第2のメモリアクセス要求が、メモリ内の第2のサブ行へのアクセスを要求するために使用され、第1のサブ行および第2のサブ行が、メモリ内の同じ行に位置する、ステップ。
【0039】
ステップ120:第1の活性化命令を生成するために第1のメモリアクセス要求と第2のメモリアクセス要求とを組み合わせるステップであって、第1の活性化命令が、メモリ内の第1のサブ行および第2のサブ行の活性化を命令するために使用される、ステップ。
【0040】
ステップ130:第1の活性化命令をメモリに送信するステップ。
【0041】
本発明のこの実施形態では、活性化すべき第1のサブ行および第2のサブ行が同じ行に位置するか否かを確認するために、活性化すべき第1のサブ行および第2のサブ行が位置する行の行アドレスを調べてもよい。
【0042】
本発明のこの実施形態では、メモリが、どのサブ行が活性化する必要があり、どのサブ行が活性化する必要がないかを学習することを可能にするために、第2のメモリアクセス要求を求めてメモリのスケジューリングすべきキューを検索するステップの後に、以下の動作、すなわち、
サブ行選択ベクトルを生成し、このサブ行選択ベクトルをメモリに送信する動作であって、
サブ行選択ベクトルが、活性化すべきサブ行が第1のサブ行および第2のサブ行であることを確認するために使用される、動作がさらに含まれる。
【0043】
例えば、1つの行に、N個のサブ行が位置し、サブ行選択ベクトルの各値が、1つのサブ行に対応し、この値は、対応するサブ行は活性化すべきか否かを示すために使用される。
図1Bに示すように、サブ行選択ベクトルの値が0の場合、これは、対応するサブ行は活性化すべきであることを示し、サブ行選択ベクトルの値が1の場合、これは、対応するサブ行は活性化すべきでないことを示す。言うまでもなく、対応するサブ行は活性化すべきか否かは、別の形で示されてもよいが、本明細書では、詳細については説明しない。
【0044】
本発明のこの実施形態では、サブ行選択ベクトルは、第1の活性化命令と同時に送信されてもよい。例えば、サブ行選択ベクトルは、第1の活性化命令に追加され、特定の実施態様では、サブ行選択ベクトルおよび第1の活性化命令は、メモリバスに同時に書き込まれる。あるいは、サブ行選択ベクトルは、第1の活性化命令が送信される前に送信されてもよく、特定の実施態様では、第1の活性化命令がメモリバスに書き込まれる前に、サブ行選択ベクトルは、バスを用いて書き込まれる。
【0045】
本発明のこの実施形態では、第1のサブ行および第2のサブ行が活性化された後に、第1のサブ行のデータおよび第2のサブ行のデータが、対応するサブ行キャッシュにフェッチされる。選択されていないサブ行は活性化されず、対応するデータは、対応するサブ行キャッシュにフェッチされない。
【0046】
この解決策では、第1のメモリアクセス要求が受信されたとき、第1のメモリアクセス要求がアクセスを要求する第1のサブ行はすぐには活性化されない。その代わりに、第2のメモリアクセス要求を求めて、メモリのスケジューリングすべきキュー内のメモリアクセス要求を検索することがスケジューリングされる。第1のメモリアクセス要求および第2のメモリアクセス要求は、第1の活性化命令に組み合わされ、第1の活性化命令は、メモリに送信される。このようにして、一度に第1のサブ行および第2のサブ行を活性化することができ、活性化効率が向上する。
【0047】
図2に示すように、本発明の一実施形態では、メモリ活性化の別の手順は以下の通りである。
【0048】
ステップ200:メモリコントローラによって送信される第1の活性化命令を受信するステップであって、第1の活性化命令が、メモリ内の第1のサブ行および第2のサブ行の活性化を命令するために使用され、第1のサブ行および第2のサブ行の両方が、メモリ内の同じ行に位置する、ステップ。
【0049】
ステップ210:第1の活性化命令に従って、メモリ内に位置する第1のサブ行および第2のサブ行を活性化するステップ。
【0050】
本発明のこの実施形態では、第1の活性化命令に従って、メモリ内に位置する第1のサブ行および第2のサブ行を活性化するステップの前に、以下の動作、すなわち、
メモリコントローラによって送信されるサブ行選択ベクトルを受信する動作であって、
サブ行選択ベクトルが、活性化すべきサブ行が第1のサブ行および第2のサブ行であることを確認するために使用される、動作がさらに含まれる。
【0051】
第1の活性化命令に従って、メモリ内に位置する第1のサブ行および第2のサブ行を活性化するとき、以下の手法、すなわち、
第1の活性化命令内のサブ行選択ベクトルに従って、メモリ内に位置する第1のサブ行および第2のサブ行を活性化する手法が使用されてもよい。
【0052】
前述の対応する方法の技術的解決策に基づいて、
図3に示すように、本発明の一実施形態は、メモリコントローラ3000を提供し、メモリコントローラ3000は、要求分配モジュール30、メモリスケジューラ31、およびコマンドスケジューラ32を含む。
【0053】
要求分配モジュール30は、第1のメモリアクセス要求を取得するように構成され、第1のメモリアクセス要求は、メモリ内の第1のサブ行へのアクセスを要求するために使用される。
【0054】
メモリスケジューラ31は、第2のメモリアクセス要求を求めてメモリのスケジューリングすべきキューを検索するように構成され、メモリのスケジューリングすべきキューは、複数のメモリアクセス要求を含み、第2のメモリアクセス要求は、メモリ内の第2のサブ行へのアクセスを要求するために使用され、第1のサブ行および第2のサブ行は、メモリ内の同じ行に位置する。
【0055】
メモリスケジューラ31は、第1の活性化命令を生成するために第1のメモリアクセス要求と第2のメモリアクセス要求とを組み合わせるようにさらに構成され、第1の活性化命令は、メモリ内の第1のサブ行および第2のサブ行の活性化を命令するために使用される。
【0056】
コマンドスケジューラ32は、第1の活性化命令をメモリに送信するように構成される。
【0057】
本発明のこの実施形態では、メモリスケジューラ31は、
サブ行選択ベクトルを生成し、このサブ行選択ベクトルをメモリに送信するようにさらに構成され、
サブ行選択ベクトルは、活性化すべきサブ行が第1のサブ行および第2のサブ行であることを確認するために使用される。
【0058】
前述の対応する方法の技術的解決法に基づいて、
図4に示すように、本発明の一実施形態は、メモリモジュール4000を提供し、メモリモジュール4000は、ラッチ40およびサブ行選択デコーダ41を含む。
【0059】
ラッチ40は、メモリコントローラによって送信される第1の活性化命令を受信するように構成され、第1の活性化命令は、メモリ内の第1のサブ行および第2のサブ行の活性化を命令するために使用され、第1のサブ行および第2のサブ行の両方は、メモリ内の同じ行に位置する。
【0060】
サブ行選択デコーダ41は、ラッチ40から取得した第1の活性化命令に従って、メモリ内に位置する第1のサブ行および第2のサブ行を活性化するように構成される。
【0061】
ラッチ40は、
メモリコントローラによって送信されたサブ行選択ベクトルを受信するようにさらに構成され、
サブ行選択ベクトルは、活性化すべきサブ行が第1のサブ行および第2のサブ行であることを確認するために使用される。
【0062】
サブ行選択デコーダ41は、
第1の活性化命令内のサブ行選択ベクトルに従って、メモリ内に位置する第1のサブ行および第2のサブ行を活性化するように特に構成される。
【0063】
本発明の一実施形態では、記憶ユニットのリソース利用を改善するために、
図5Aに示すように、メモリコントローラ5000が提供され、メモリコントローラ5000は、要求分配モジュール50、メモリスケジューラ51、およびコマンドスケジューラ52を含む。
【0064】
要求分配モジュール50は、第1のメモリアクセス要求を取得するように構成され、第1のメモリアクセス要求は、メモリ内の第1のサブ行へのアクセスを要求するために使用される。
【0065】
メモリスケジューラ51は、要求分配モジュール50によって取得された第1のメモリアクセス要求を取得し、第1のメモリアクセス要求に従って第1の活性化命令を生成するように構成される。
【0066】
コマンドスケジューラ52は、メモリスケジューラ51から取得した第1の活性化命令をメモリに送信するように構成される。
【0067】
要求分配モジュール50は、第2のメモリアクセス要求を求めてメモリのスケジューリングすべきキューを検索するようにさらに構成され、メモリのスケジューリングすべきキューは、複数のメモリアクセス要求を含み、第2のメモリアクセス要求は、メモリ内の第2のサブ行へのアクセスを要求するために使用され、第1のサブ行は、第1のサブアレイ内に位置し、第2のサブ行は、第2のサブアレイ内に位置する。
【0068】
メモリスケジューラ51は、第2のメモリアクセス要求に従って第2の活性化命令を生成するようにさらに構成される。
【0069】
コマンドスケジューラ52は、メモリスケジューラ51から取得した第2の活性化命令をメモリに送信するようにさらに構成される。
【0070】
第1のサブアレイおよび第2のサブアレイの両方が、少なくとも1つの行を含み、少なくとも1つの行のいずれの行も、少なくとも1つのサブ行を含み、少なくとも1つのサブ行のいずれのサブ行も、少なくとも1つの記憶ユニットを含み、いずれの記憶ユニットも、1つの行番号識別子および1つの列番号識別子に対応する。
【0071】
第2のサブ行に含まれるどの記憶ユニットに対応する列番号識別子も、第1のサブ行に含まれるどの記憶ユニットに対応する列番号識別子とも異なる。
【0072】
本発明のこの実施形態に関して、サブアレイと、行と、列と、記憶ユニットとの関係が、
図5Bに示されている。
【0073】
さらに、本発明のこの実施形態では、要求分配モジュール50は、
第3のメモリアクセス要求を取得するようにさらに構成され、第3のメモリアクセス要求は、メモリ内の第3のサブ行へのアクセスを要求するために使用され、第3のサブ行および第1のサブ行は、同じ行に位置し、第2のサブ行に含まれるどの記憶ユニットに対応する列番号識別子も、第3のサブ行に含まれるどの記憶ユニットに対応する列番号識別子とも異なる。
【0074】
メモリスケジューラ51は、
第1の活性化命令を生成するために第1のメモリアクセス要求と第3のメモリアクセス要求とを組み合わせるように特に構成される。
【0075】
本発明のこの実施形態では、さらに、要求分配モジュール50は、
第4のメモリアクセス要求を取得するようにさらに構成され、第4のメモリアクセス要求は、メモリ内の第4のサブ行へのアクセスを要求するために使用され、第4のサブ行および第2のサブ行は、同じ行に位置し、第4のサブ行に含まれるどの記憶ユニットに対応する列番号識別子も、第1のサブ行に含まれるどの記憶ユニットに対応する列番号識別子とも異なる。
【0076】
メモリスケジューラ51は、
第2の活性化命令を生成するために第2のメモリアクセス要求と第4のメモリアクセス要求とを組み合わせるように特に構成される。
【0077】
本発明のこの実施形態では、随意に、第4のサブ行に含まれるどの記憶ユニットに対応する列番号識別子も、第3のサブ行に含まれるどの記憶ユニットに対応する列番号識別子とも異なる。
【0078】
この解決策では、第1のサブ行が活性化された後、第2のサブ行に含まれるどの記憶ユニットに対応する列番号識別子も、第1のサブ行に含まれるどの記憶ユニットに対応する列番号識別子とも異なるとき、第1のサブ行とは異なるサブアレイ内に位置する第2のサブ行を活性化することができ、これにより、リソース利用が改善される。
【0079】
本発明の一実施形態では、記憶ユニットのリソース利用を改善するために、
図6に示すように、メモリモジュール6000が提供され、メモリモジュール6000は、第1のラッチ60、第1のサブ行選択デコーダ61、第2のラッチ62、および第2のサブ行選択デコーダ63を含む。
【0080】
第1のラッチ60は、メモリコントローラによって送信される第1の活性化命令を受信するように構成され、第1の活性化命令は、メモリ内の第1のサブ行の活性化を命令するために使用される。
【0081】
第1のサブ行選択デコーダ61は、第1の活性化命令に従って、メモリ内に位置する第1のサブ行を活性化するように構成される。
【0082】
第2のラッチ62は、メモリコントローラによって送信される第2の活性化命令を受信するように構成され、第2の活性化命令は、メモリ内の第2のサブ行の活性化を命令するために使用される。
【0083】
第2のサブ行選択デコーダ63は、第2の活性化命令に従って、メモリ内に位置する第2のサブ行を活性化するように構成される。
【0084】
第1のサブ行は、第1のサブアレイ内に位置し、第2のサブ行は、第2のサブアレイ内に位置する。
【0085】
第1のサブアレイおよび第2のサブアレイの両方が、少なくとも1つの行を含み、少なくとも1つの行のいずれの行も、少なくとも1つのサブ行を含み、少なくとも1つのサブ行のいずれのサブ行も、少なくとも1つの記憶ユニットを含み、いずれの記憶ユニットも、1つの行番号識別子および1つの列番号識別子に対応する。
【0086】
第2のサブ行に含まれるどの記憶ユニットに対応する列番号識別子も、第1のサブ行に含まれるどの記憶ユニットに対応する列番号識別子とも異なる。
【0087】
第1のラッチ60および第2のラッチ62の両方は、データキャッシングを実行するように構成されたグローバルキャッシュに接続される。
【0088】
本発明のこの実施形態では、さらに、第1の活性化命令は、メモリ内の第3のサブ行の活性化を命令するためにさらに使用され、第3のサブ行および第1のサブ行は、同じ行に位置する。
【0089】
第2のサブ行に含まれるどの記憶ユニットに対応する列番号識別子も、第3のサブ行に含まれるどの記憶ユニットに対応する列番号識別子とも異なる。
【0090】
本発明のこの実施形態では、さらに、第2の活性化命令が、メモリ内の第4のサブ行の活性化を命令するためにさらに使用され、第4のサブ行および第2のサブ行は、同じ行に位置する。
【0091】
第4のサブ行に含まれるどの記憶ユニットに対応する列番号識別子も、第1のサブ行に含まれるどの記憶ユニットに対応する列番号識別子とも異なる。
【0092】
第4のサブ行に含まれるどの記憶ユニットに対応する列番号識別子も、第3のサブ行に含まれるどの記憶ユニットに対応する列番号識別子とも異なる。
【0093】
この解決策では、第1のラッチが第1のサブ行を活性化した後、第2のサブ行に含まれるどの記憶ユニットに対応する列番号識別子も、第1のサブ行に含まれるどの記憶ユニットに対応する列番号識別子とも異なるとき、第2のラッチは、第1のサブ行とは異なるサブアレイ内に位置する第2のサブ行を活性化することができ、これにより、リソース利用が改善される。
【0094】
図7に示すように、本発明の一実施形態では、メモリ活性化の別の手順は以下の通りである。
【0095】
ステップ700:第1のメモリアクセス要求を取得するステップであって、第1のメモリアクセス要求が、メモリ内の第1のサブ行へのアクセスを要求するために使用される、ステップ。
【0096】
ステップ710:第1のメモリアクセス要求に従って第1の活性化命令を生成し、第1の活性化命令をメモリに送信するステップ。
【0097】
ステップ720:第2のメモリアクセス要求を求めてメモリのスケジューリングすべきキューを検索するステップであって、メモリのスケジューリングすべきキューが、複数のメモリアクセス要求を含み、第2のメモリアクセス要求が、メモリ内の第2のサブ行へのアクセスを要求するために使用され、第1のサブ行が、第1のサブアレイ内に位置し、第2のサブ行が、第2のサブアレイ内に位置する、ステップ。
【0098】
ステップ730:第2のメモリアクセス要求に従って第2の活性化命令を生成し、第2の活性化命令をメモリに送信するステップ。
【0099】
第1のサブアレイおよび第2のサブアレイの両方が、少なくとも1つの行を含み、少なくとも1つの行のいずれの行も、少なくとも1つのサブ行を含み、少なくとも1つのサブ行のいずれのサブ行も、少なくとも1つの記憶ユニットを含み、いずれの記憶ユニットも、1つの行番号識別子および1つの列番号識別子に対応する。
【0100】
第2のサブ行に含まれるどの記憶ユニットに対応する列番号識別子も、第1のサブ行に含まれるどの記憶ユニットに対応する列番号識別子とも異なる。
【0101】
本発明のこの実施形態では、さらに、第1のメモリアクセス要求に従って第1の活性化命令を生成するステップの前に、以下の動作、すなわち、
第3のメモリアクセス要求を取得する動作であって、第3のメモリアクセス要求が、メモリ内の第3のサブ行へのアクセスを要求するために使用され、第3のサブ行および第1のサブ行が、同じ行に位置し、第2のサブ行に含まれるどの記憶ユニットに対応する列番号識別子も、第3のサブ行に含まれるどの記憶ユニットに対応する列番号識別子とも異なる、動作がさらに含まれる。
【0102】
第1のメモリアクセス要求に従って第1の活性化命令を生成するステップは、
第1の活性化命令を生成するために第1のメモリアクセス要求と第3のメモリアクセス要求とを組み合わせることを特に含む。
【0103】
本発明のこの実施形態では、さらに、第2のメモリアクセス要求に従って第2の活性化命令を生成するステップの前に、以下の動作、すなわち、
第4のメモリアクセス要求を取得する動作であって、第4のメモリアクセス要求が、メモリ内の第4のサブ行へのアクセスを要求するために使用され、第4のサブ行および第2のサブ行が、同じ行に位置し、第4のサブ行に含まれるどの記憶ユニットに対応する列番号識別子も、第1のサブ行に含まれるどの記憶ユニットに対応する列番号識別子とも異なる、動作がさらに含まれる。
【0104】
第2のメモリアクセス要求に従って第2の活性化命令を生成するステップは、
第2の活性化命令を生成するために第2のメモリアクセス要求と第4のメモリアクセス要求とを組み合わせることを特に含む。
【0105】
本発明のこの実施形態では、随意に、第4のサブ行に含まれるどの記憶ユニットに対応する列番号識別子も、第3のサブ行に含まれるどの記憶ユニットに対応する列番号識別子とも異なる。
【0106】
この解決策では、第1のサブ行が活性化された後、第2のサブ行に含まれるどの記憶ユニットに対応する列番号識別子も、第1のサブ行に含まれるどの記憶ユニットに対応する列番号識別子とも異なるとき、第1のサブ行とは異なるサブアレイ内に位置する第2のサブ行を活性化することができ、これにより、リソース利用が改善される。
【0107】
図8に示すように、本発明の一実施形態では、メモリ活性化の別の手順は以下の通りである。
【0108】
ステップ800:メモリコントローラによって送信される第1の活性化命令を受信するステップであって、第1の活性化命令が、メモリ内の第1のサブ行の活性化を命令するために使用される、ステップ。
【0109】
ステップ810:第1の活性化命令に従って、メモリ内に位置する第1のサブ行を活性化するステップ。
【0110】
ステップ820:メモリコントローラによって送信される第2の活性化命令を受信するステップであって、第2の活性化命令が、メモリ内の第2のサブ行の活性化を命令するために使用される、ステップ。
【0111】
ステップ830:第2の活性化命令に従って、メモリ内に位置する第2のサブ行を活性化するステップであって、第1のサブ行が、第1のサブアレイ内に位置し、第2のサブ行が、第2のサブアレイ内に位置し、第1のサブアレイおよび第2のサブアレイの両方が、少なくとも1つの行を含み、少なくとも1つの行のいずれの行も、少なくとも1つのサブ行を含み、少なくとも1つのサブ行のいずれのサブ行も、少なくとも1つの記憶ユニットを含み、いずれの記憶ユニットも、1つの行番号識別子および1つの列番号識別子に対応し、第2のサブ行に含まれるどの記憶ユニットに対応する列番号識別子も、第1のサブ行に含まれるどの記憶ユニットに対応する列番号識別子とも異なり、第1のラッチおよび第2のラッチの両方が、データキャッシングを実行するように構成されたグローバルキャッシュに接続される、ステップ。
【0112】
本発明のこの実施形態では、さらに、第1の活性化命令は、メモリ内の第3のサブ行の活性化を命令するためにさらに使用され、第3のサブ行および第1のサブ行は、同じ行に位置する。
【0113】
第2のサブ行に含まれるどの記憶ユニットに対応する列番号識別子も、第3のサブ行に含まれるどの記憶ユニットに対応する列番号識別子とも異なる。
【0114】
第1の活性化命令に従って、メモリ内に位置する第1のサブ行を活性化するステップは、
第1の活性化命令に従ってメモリの第1のラッチにより、メモリ内に位置する第1のサブ行および第3のサブ行を活性化することを特に含む。
【0115】
本発明のこの実施形態では、随意に、第2の活性化命令が、メモリ内の第4のサブ行の活性化を命令するためにさらに使用され、第4のサブ行および第2のサブ行は、同じ行に位置する。
【0116】
第4のサブ行に含まれるどの記憶ユニットに対応する列番号識別子も、第3のサブ行に含まれるどの記憶ユニットに対応する列番号識別子とも異なる。
【0117】
第2の活性化命令に従って、メモリ内に位置する第2のサブ行を活性化するステップは、
第2の活性化命令に従ってメモリの第2のラッチにより、メモリ内に位置する第2のサブ行および第4のサブ行を活性化することを特に含む。
【0118】
この解決策では、第1のラッチが第1のサブ行を活性化した後、第2のサブ行に含まれるどの記憶ユニットに対応する列番号識別子も、第1のサブ行に含まれるどの記憶ユニットに対応する列番号識別子とも異なるとき、第2のラッチは、第1のサブ行とは異なるサブアレイ内に位置する第2のサブ行を活性化することができ、これにより、リソース利用が改善される。
【0119】
前述の
図5A、
図5B、
図6、
図7、および
図8は、第1のサブ行が活性化された後、第1のサブ行とは異なるサブアレイに位置する第2のサブ行に含まれるどの記憶ユニットに対応する列番号識別子も、第1のサブ行に含まれるどの記憶ユニットに対応する列番号識別子とも異なるときにのみ、第2のサブ行を活性化することができることを説明している。さらに、リソース利用を改善するために、以下の解決策を提示する。
【0120】
本発明の一実施形態では、記憶ユニットのリソース利用を改善するために、
図9に示すように、メモリコントローラ9000が提供され、メモリコントローラ9000は、要求分配モジュール90、メモリスケジューラ91、およびコマンドスケジューラ92を含む。
【0121】
要求分配モジュール90は、第1のメモリアクセス要求を取得するように構成され、第1のメモリアクセス要求は、メモリ内の第1のサブ行へのアクセスを要求するために使用される。
【0122】
メモリスケジューラ91は、要求分配モジュール90によって取得された第1のメモリアクセス要求を取得し、第1のメモリアクセス要求に従って第1の活性化命令を生成するように構成される。
【0123】
コマンドスケジューラ92は、メモリスケジューラ91から取得した第1の活性化命令をメモリに送信するように構成される。
【0124】
要求分配モジュール90は、第2のメモリアクセス要求を求めてメモリのスケジューリングすべきキューを検索するようにさらに構成され、メモリのスケジューリングすべきキューは、複数のメモリアクセス要求を含み、第2のメモリアクセス要求は、メモリ内の第2のサブ行へのアクセスを要求するために使用され、第1のサブ行は、第1のサブアレイ内に位置し、第2のサブ行は、第2のサブアレイ内に位置する。
【0125】
メモリスケジューラ91は、第2のメモリアクセス要求に従って第2の活性化命令を生成するようにさらに構成される。
【0126】
コマンドスケジューラ92は、メモリスケジューラ91から取得した第2の活性化命令をメモリに送信するようにさらに構成される。
【0127】
第1のサブアレイおよび第2のサブアレイの両方が、少なくとも1つの行を含み、少なくとも1つの行のいずれの行も、少なくとも1つのサブ行を含み、少なくとも1つのサブ行のいずれのサブ行も、少なくとも1つの記憶ユニットを含み、いずれの記憶ユニットも、1つの行番号識別子および1つの列番号識別子に対応する。
【0128】
第2のサブ行は、記憶ユニットであって、その列番号識別子が第1のサブ行に含まれる記憶ユニットに対応する列番号識別子と同じである記憶ユニットを含む。
【0129】
本発明のこの実施形態では、さらに、要求分配モジュール90は、
第3のメモリアクセス要求を取得するようにさらに構成され、第3のメモリアクセス要求は、メモリ内の第3のサブ行へのアクセスを要求するために使用され、第3のサブ行および第1のサブ行は、同じ行に位置し、第2のサブ行は、記憶ユニットであって、その列番号識別子が、第3のサブ行に含まれる記憶ユニットに対応する列番号識別子と同じである記憶ユニットを含む。
【0130】
メモリスケジューラ91は、
第1の活性化命令を生成するために第1のメモリアクセス要求と第3のメモリアクセス要求とを組み合わせるように特に構成される。
【0131】
本発明のこの実施形態では、さらに、要求分配モジュール90は、
第4のメモリアクセス要求を取得するようにさらに構成され、第4のメモリアクセス要求は、メモリ内の第4のサブ行へのアクセスを要求するために使用され、第4のサブ行および第2のサブ行は、同じ行に位置し、第4のサブ行は、記憶ユニットであって、その列番号識別子が、第1のサブ行に含まれる記憶ユニットに対応する列番号識別子と同じである記憶ユニットを含む。
【0132】
メモリスケジューラ91は、
第2の活性化命令を生成するために第2のメモリアクセス要求と第4のメモリアクセス要求とを組み合わせるように特に構成される。
【0133】
本発明のこの実施形態では、随意に、第4のサブ行は、記憶ユニットであって、その列番号識別子が、第3のサブ行に含まれる記憶ユニットに対応する列番号識別子と同じである記憶ユニットを含む。
【0134】
この解決策では、第1のラッチが第1のサブ行を活性化した後、第2の行が、記憶ユニットであって、その列番号識別子が第1のサブ行に含まれる記憶ユニットに対応する列番号識別子と同じである記憶ユニットを含むとき、第2のラッチも、第1のサブ行と異なるサブアレイ内に位置する第2のサブ行を活性化することができ、これにより、リソース利用が改善される。
【0135】
本発明の一実施形態では、記憶ユニットのリソース利用を改善するために、
図10に示すように、メモリモジュール10000が提供され、メモリモジュール10000は、第1のラッチ100、第1のサブ行選択デコーダ101、第2のラッチ102、および第2のサブ行選択デコーダ103を含む。
【0136】
第1のラッチ100は、メモリコントローラによって送信される第1の活性化命令を受信するように構成され、第1の活性化命令は、メモリ内の第1のサブ行の活性化を命令するために使用される。
【0137】
第1のサブ行選択デコーダ101は、第1の活性化命令に従って、メモリ内に位置する第1のサブ行を活性化するように構成される。
【0138】
第2のラッチ102は、メモリコントローラによって送信される第2の活性化命令を受信するように構成され、第2の活性化命令は、メモリ内の第2のサブ行の活性化を命令するために使用される。
【0139】
第2のサブ行選択デコーダ103は、第2の活性化命令に従って、メモリ内に位置する第2のサブ行を活性化するように構成される。
【0140】
第1のサブ行は、第1のサブアレイ内に位置し、第2のサブ行は、第2のサブアレイ内に位置する。
【0141】
第1のサブアレイおよび第2のサブアレイの両方が、少なくとも1つの行を含み、少なくとも1つの行のいずれの行も、少なくとも1つのサブ行を含み、少なくとも1つのサブ行のいずれのサブ行も、少なくとも1つの記憶ユニットを含み、いずれの記憶ユニットも、1つの行番号識別子および1つの列番号識別子に対応する。
【0142】
第2のサブ行は、記憶ユニットであって、その列番号識別子が第1のサブ行に含まれる記憶ユニットに対応する列番号識別子と同じである記憶ユニットを含む。
【0143】
第1のラッチ100と第2のラッチ102のどちらも、データキャッシングを実行するように構成されたグローバルキャッシュに接続されない。
【0144】
本発明のこの実施形態では、さらに、第1の活性化命令は、メモリ内の第3のサブ行の活性化を命令するためにさらに使用され、第3のサブ行および第1のサブ行は、同じ行に位置する。
【0145】
第2のサブ行は、記憶ユニットであって、その列番号識別子が第3のサブ行に含まれる記憶ユニットに対応する列番号識別子と同じである記憶ユニットを含む。
【0146】
本発明のこの実施形態では、さらに、第2の活性化命令が、メモリ内の第4のサブ行の活性化を命令するためにさらに使用され、第4のサブ行および第2のサブ行は、同じ行に位置する。
【0147】
第4のサブ行は、記憶ユニットであって、その列番号識別子が第1のサブ行に含まれる記憶ユニットに対応する列番号識別子と同じである記憶ユニットを含む。
【0148】
第4のサブ行は、記憶ユニットであって、その列番号識別子が第3のサブ行に含まれる記憶ユニットに対応する列番号識別子と同じである記憶ユニットを含む。
【0149】
この解決策では、第1のラッチが第1のサブ行を活性化した後、第2の行が、記憶ユニットであって、その列番号識別子が第1のサブ行に含まれる記憶ユニットに対応する列番号識別子と同じである記憶ユニットを含むとき、第2のラッチも、第1のサブ行と異なるサブアレイ内に位置する第2のサブ行を活性化することができ、これにより、リソース利用が改善される。
【0150】
本発明の一実施形態では、記憶ユニットのリソース利用を改善するために、
図11に示すように、別のメモリ活性化方法が提供される。
【0151】
ステップ1100:第1のメモリアクセス要求を取得するステップであって、第1のメモリアクセス要求が、メモリ内の第1のサブ行へのアクセスを要求するために使用される、ステップ。
【0152】
ステップ1110:第1のメモリアクセス要求を取得し、第1のメモリアクセス要求に従って第1の活性化命令を生成するステップ。
【0153】
ステップ1120:第1の活性化命令をメモリに送信するステップ。
【0154】
ステップ1130:第2のメモリアクセス要求を求めてメモリのスケジューリングすべきキューを検索するステップであって、メモリのスケジューリングすべきキューが、複数のメモリアクセス要求を含み、第2のメモリアクセス要求が、メモリ内の第2のサブ行へのアクセスを要求するために使用され、第1のサブ行が、第1のサブアレイ内に位置し、第2のサブ行が、第2のサブアレイ内に位置する、ステップ。
【0155】
ステップ1140:第2のメモリアクセス要求に従って第2の活性化命令を生成するステップ。
【0156】
ステップ1150:取得した第2の活性化命令をメモリに送信するステップ。
【0157】
第1のサブアレイおよび第2のサブアレイの両方が、少なくとも1つの行を含み、少なくとも1つの行のいずれの行も、少なくとも1つのサブ行を含み、少なくとも1つのサブ行のいずれのサブ行も、少なくとも1つの記憶ユニットを含み、いずれの記憶ユニットも、1つの行番号識別子および1つの列番号識別子に対応する。
【0158】
第2のサブ行は、記憶ユニットであって、その列番号識別子が第1のサブ行に含まれる記憶ユニットに対応する列番号識別子と同じである記憶ユニットを含む。
【0159】
本発明のこの実施形態では、さらに、第1のメモリアクセス要求に従って第1の活性化命令を生成するステップの前に、以下の動作、すなわち、第3のメモリアクセス要求を取得する動作であって、第3のメモリアクセス要求が、メモリ内の第3のサブ行へのアクセスを要求するために使用され、第3のサブ行および第1のサブ行が、同じ行に位置し、第2のサブが、記憶ユニットであって、その列番号識別子が、第3のサブ行に含まれる記憶ユニットに対応する列番号識別子と同じである記憶ユニットを含む、動作がさらに含まれる。
【0160】
第1のメモリアクセス要求に従って第1の活性化命令を生成するステップは、以下の手法、すなわち、第1の活性化命令を生成するために第1のメモリアクセス要求と第3のメモリアクセス要求とを組み合わせる手法で実施されてもよい。
【0161】
本発明のこの実施形態では、さらに、第2のメモリアクセス要求に従って第2の活性化命令を生成するステップの前に、以下の動作、すなわち、
第4のメモリアクセス要求を取得する動作であって、第4のメモリアクセス要求が、メモリ内の第4のサブ行へのアクセスを要求するために使用され、第4のサブ行および第2のサブ行が、同じ行に位置し、第4のサブ行が、記憶ユニットであって、その列番号識別子が、第1のサブ行に含まれる記憶ユニットに対応する列番号識別子と同じである記憶ユニットを含む、動作がさらに含まれる。
【0162】
第2のメモリアクセス要求に従って第2の活性化命令を生成するステップは、第2の活性化命令を生成するために第2のメモリアクセス要求と第4のメモリアクセス要求とを組み合わせることであってもよい。
【0163】
本発明のこの実施形態では、随意に、第4のサブ行は、記憶ユニットであって、その列番号識別子が、第3のサブ行に含まれる記憶ユニットに対応する列番号識別子と同じである記憶ユニットを含む。
【0164】
この解決策では、第1のラッチが第1のサブ行を活性化した後、第2の行が、記憶ユニットであって、その列番号識別子が第1のサブ行に含まれる記憶ユニットに対応する列番号識別子と同じである記憶ユニットを含むとき、第2のラッチも、第1のサブ行と異なるサブアレイ内に位置する第2のサブ行を活性化することができ、これにより、リソース利用が改善される。
【0165】
本発明の一実施形態では、記憶ユニットのリソース利用を改善するために、
図12に示すように、別のメモリ活性化方法が提供される。
【0166】
ステップ1200:メモリコントローラによって送信される第1の活性化命令を受信するステップであって、第1の活性化命令が、メモリ内の第1のサブ行の活性化を命令するために使用される、ステップ。
【0167】
ステップ1210:第1の活性化命令に従って、メモリ内に位置する第1のサブ行を活性化するステップ。
【0168】
ステップ1220:メモリコントローラによって送信される第2の活性化命令を受信するステップであって、第2の活性化命令が、メモリ内の第2のサブ行の活性化を命令するために使用される、ステップ。
【0169】
ステップ1230:第2の活性化命令に従って、メモリ内に位置する第2のサブ行を活性化するステップ。
【0170】
第1のサブ行は、第1のサブアレイ内に位置し、第2のサブ行は、第2のサブアレイ内に位置する。
【0171】
第1のサブアレイおよび第2のサブアレイの両方が、少なくとも1つの行を含み、少なくとも1つの行のいずれの行も、少なくとも1つのサブ行を含み、少なくとも1つのサブ行のいずれのサブ行も、少なくとも1つの記憶ユニットを含み、いずれの記憶ユニットも、1つの行番号識別子および1つの列番号識別子に対応する。
【0172】
第2のサブ行は、記憶ユニットであって、その列番号識別子が第1のサブ行に含まれる記憶ユニットに対応する列番号識別子と同じである記憶ユニットを含む。
【0173】
第1のラッチと第2のラッチのどちらも、データキャッシングを実行するように構成されたグローバルキャッシュに接続されない。
【0174】
本発明のこの実施形態では、さらに、第1の活性化命令は、メモリ内の第3のサブ行の活性化を命令するためにさらに使用され、第3のサブ行および第1のサブ行は、同じ行に位置する。
【0175】
第2のサブ行は、記憶ユニットであって、その列番号識別子が第3のサブ行に含まれる記憶ユニットに対応する列番号識別子と同じである記憶ユニットを含む。
【0176】
本発明のこの実施形態では、さらに、第2の活性化命令が、メモリ内の第4のサブ行の活性化を命令するためにさらに使用され、第4のサブ行および第2のサブ行は、同じ行に位置する。
【0177】
第4のサブ行は、記憶ユニットであって、その列番号識別子が第1のサブ行に含まれる記憶ユニットに対応する列番号識別子と同じである記憶ユニットを含む。
【0178】
第4のサブ行は、記憶ユニットであって、その列番号識別子が第3のサブ行に含まれる記憶ユニットに対応する列番号識別子と同じである記憶ユニットを含む。
【0179】
この解決策では、第1のラッチが第1のサブ行を活性化した後、第2の行が、記憶ユニットであって、その列番号識別子が第1のサブ行に含まれる記憶ユニットに対応する列番号識別子と同じである記憶ユニットを含むとき、第2のラッチも、第1のサブ行と異なるサブアレイ内に位置する第2のサブ行を活性化することができ、これにより、リソース利用が改善される。
【0180】
本発明は、本発明の実施形態による方法、装置(システム)、およびコンピュータプログラム製品のフローチャートおよび/またはブロック図を参照して説明されている。フローチャートおよび/またはブロック図の各処理および/または各ブロックならびにフローチャートおよび/またはブロック図の処理および/またはブロックの組み合わせを実施するためにコンピュータプログラム命令を使用することができることを理解されたい。これらのコンピュータプログラム命令は、機械を作るために汎用コンピュータ、専用コンピュータ、組み込みプロセッサ、または任意の他のプログラマブルデータ処理装置のプロセッサに提供することができ、これにより、コンピュータまたは任意の他のプログラマブルデータ処理装置のプロセッサによって実行される命令は、フローチャートの1つ以上の処理および/またはブロック図の1つ以上のブロックにおける特定の機能を実施するための装置を作る。
【0181】
また、これらのコンピュータプログラム命令は、コンピュータまたは任意の他のプログラマブルデータ処理装置に特定の仕方で動作するよう命令することができるコンピュータ可読メモリに記憶されてもよく、これにより、コンピュータ可読メモリに記憶された命令は、命令装置を含む人工物を作る。命令装置は、フローチャートの1つ以上の処理および/またはブロック図の1つ以上のブロックにおける特定の機能を実施する。
【0182】
また、これらのコンピュータプログラム命令は、一連の動作およびステップがコンピュータまたは別のプログラマブルデバイス上で実行されるようにコンピュータまたは別のプログラマブルデータ処理装置にロードされ、これにより、コンピュータ実施処理が行われてもよい。したがって、コンピュータまたは別のプログラマブルデバイス上で実行される命令は、フローチャートの1つ以上の処理および/またはブロック図の1つ以上のブロックにおける特定の機能を実施するためのステップを提供する。
【0183】
本発明のいくつか
の実施形態について説明したが、当業者は、基本的な発明概念を習得したら、これらの実施形態を変更および修正することができる。したがって、添付の特許請求の範囲は、本発明の範囲内に入
る実施形態ならびにすべての変更および修正を包含すると解釈されることを意図されている。
【0184】
明らかに、当業者は、本発明の実施形態の精神および範囲から逸脱することなく、本発明の実施形態に対して様々な修正および変形を行うことができる。本発明は、添付の特許請求の範囲およびその均等な技術によって規定される保護範囲内に入るならば、これらの修正および変形を包含することを意図されている。