JP2013517577A - レベル2メモリの一部分とレベル1メモリとにアクセスするシステムおよび方法 - Google Patents

レベル2メモリの一部分とレベル1メモリとにアクセスするシステムおよび方法 Download PDF

Info

Publication number
JP2013517577A
JP2013517577A JP2012549129A JP2012549129A JP2013517577A JP 2013517577 A JP2013517577 A JP 2013517577A JP 2012549129 A JP2012549129 A JP 2012549129A JP 2012549129 A JP2012549129 A JP 2012549129A JP 2013517577 A JP2013517577 A JP 2013517577A
Authority
JP
Japan
Prior art keywords
memory
level
access request
data
cache
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
JP2012549129A
Other languages
English (en)
Other versions
JP5572719B2 (ja
Inventor
スレッシュ・ケー・ヴェンクマハンティ
クリストファー・エドワード・クーブ
ルシアン・コドレスク
Original Assignee
クアルコム,インコーポレイテッド
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by クアルコム,インコーポレイテッド filed Critical クアルコム,インコーポレイテッド
Publication of JP2013517577A publication Critical patent/JP2013517577A/ja
Application granted granted Critical
Publication of JP5572719B2 publication Critical patent/JP5572719B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0893Caches characterised by their organisation or structure
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0806Multiuser, multiprocessor or multiprocessing cache systems
    • G06F12/0811Multiuser, multiprocessor or multiprocessing cache systems with multilevel cache hierarchies
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0877Cache access modes
    • G06F12/0884Parallel mode, e.g. in parallel with main memory or CPU

Abstract

レベル2メモリの一部分からのデータまたはレベル1メモリからのデータにアクセスするためのシステムおよび方法が開示される。特定の一実施形態では、本システムはレベル1キャッシュとレベル2メモリとを含む。レベル2メモリの第1の部分が入力ポートに結合され、レベル1キャッシュと並列にアドレス指定可能である。

Description

本開示は、一般に、レベル2メモリの一部分とレベル1メモリとにアクセスすることに関する。
技術の進歩により、コンピューティングデバイスは、より小型でより強力になった。たとえば、現在、小型で軽量な、ユーザが容易に持ち運べるポータブルワイヤレス電話、携帯情報端末(PDA)、およびページングデバイスなどのワイヤレスコンピューティングデバイスを含む様々なポータブルパーソナルコンピューティングデバイスが存在する。より具体的には、セルラー電話やインターネットプロトコル(IP)電話などのポータブルワイヤレス電話は、ボイスおよびデータパケットをワイヤレスネットワークを介して通信することができる。さらに、多くのそのようなワイヤレス電話は、その中に組み込まれた他のタイプのデバイスを含む。たとえば、ワイヤレス電話は、デジタルスチルカメラ、デジタルビデオカメラ、デジタルレコーダ、およびオーディオファイルプレーヤをも含むことができる。また、そのようなワイヤレス電話は、ウェブブラウザアプリケーションなど、インターネットにアクセスするために使用され得るソフトウェアアプリケーションを含む実行可能な命令を処理することができる。したがって、これらのワイヤレス電話はかなりの計算能力を含むことができる。
現代のコンピューティングデバイスは、コンピューティングデバイスのメインメモリに記憶されたデータを複製するためにキャッシュメモリを使用することができる。キャッシュメモリは、コンピューティングデバイスのメインメモリにアクセスするのに必要とされるよりも短い時間期間中にアクセスされ得る。キャッシュメモリは、コンピューティングデバイスのメインメモリにアクセスするのに必要とされるよりも短い時間期間中にアクセスされ得るので、コンピューティングデバイスのパフォーマンスは、メインメモリからのより遅いメモリアクセスではなく、キャッシュメモリからのより速いメモリアクセスを実行することによって改善され得る。キャッシュメモリは、第1レベルキャッシュおよび第2レベルキャッシュなど、複数のレベルに分割され得る。メモリアクセス要求が受信されたとき、初めに、第1レベルキャッシュが、メモリアクセス要求中で指定されたデータについて探索される。メモリアクセス要求中で指定されたデータが第1レベルキャッシュ中で発見されない場合、その後、第2レベルキャッシュが、メモリアクセス要求中で指定されたデータについて探索され得る。現代のコンピューティングデバイスではスペースが制限されることがあるので、第1レベルキャッシュのサイズは制限されることがある。同様に、第2レベルキャッシュのサイズも制限されることがあるが、第2レベルキャッシュは、しばしば第1レベルキャッシュよりも大きい。
レベル1メモリの有効サイズは、レベル2メモリの選択部分(selected portion)を、それがレベル1メモリの一部であるかのように扱うことによって増加し得る。レベル1メモリを対象とするメモリアクセス要求は、レベル2メモリの選択部分をも対象とし得る。したがって、レベル1メモリが、メモリアクセス要求中で指定されたデータについて探索されるのと同時に、レベル2メモリの選択部分は、メモリアクセス要求中で指定されたデータについて探索され得る。レベル2メモリはレベル1メモリよりも大きいことがある。レベル2メモリの選択部分にアクセスすることが、レベル1メモリからのデータにアクセスするために必要な時間量以下である時間量内に行われるように、レベル2メモリの選択部分が選択される。その結果、レベル1メモリの有効サイズは、レベル1メモリにアクセスするために必要な時間量の増加なしに増加し得る。
特定の一実施形態では、レベル2メモリの選択部分は、レベル1メモリの近傍に物理的に配置され、レベル1メモリの拡張として使用するように構成される。また、レベル1メモリを対象とするメモリアクセス要求が、レベル2メモリの選択部分に送られ得るので、レベル1メモリの近傍に物理的に配置されたレベル2メモリの一部分を選択することは、メモリアクセス要求がレベル2メモリの選択部分において受信されるように移動しなければならない配線の量を低減し、それによって、メモリアクセス要求をレベル2メモリに送信するために必要な時間量を低減し得る。さらに、レベル2メモリの選択部分からデータが検索されたとき、レベル1メモリとレベル2メモリの選択部分との間が極近傍である結果として、データがレベル1メモリの出力において受信されるように移動しなければならない配線の量も低減され得る。
特定の一実施形態では、レベル1キャッシュとレベル2メモリとを含む装置が開示される。レベル2メモリの第1の部分が入力ポートに結合され、レベル1キャッシュと並列にアドレス指定可能である。
別の特定の実施形態では、メモリアクセス要求を受信するステップと、メモリアクセス要求をメモリシステムに配信するステップとを含む方法が開示される。メモリシステムは、レベル1メモリとメモリのサブ部分とを含む。本方法は、レベル1メモリまたはメモリのサブ部分のいずれかからデータを選択的に与えるステップを含む。
別の特定の実施形態では、マルチレベルアクセスメモリシステムにおいて第1レベルアクセスのためのデータを記憶するための手段を含む装置が開示される。本装置は、マルチレベルメモリシステムにおいて第2レベルアクセスのためのデータを記憶するための手段をさらに含む。第2レベルアクセスのためのデータを記憶するための手段の一部分が、入力ポートに結合され、第1レベルアクセスのためのデータを記憶するための手段と並列にアドレス指定可能である。
開示する実施形態のうちの少なくとも1つによって提供される1つの特定の利点は、レベル1メモリとしてアクセス可能であるメモリの量が、レベル1メモリ要求に応答してレベル2メモリの一部分にアクセスしないデバイスに比較して増加するということである。レベル2メモリの一部分が、それがレベル1メモリであるかのようにアクセスされるので、レベル1メモリへの追加の物理スペースを専用化することなしに、レベル1メモリとして効果的に機能することができるメモリの量は増加する。
本開示の他の態様、利点、および特徴は、以下のセクション、すなわち、図面の簡単な説明、発明を実施するための形態、および特許請求の範囲を含む、本出願全体の検討後に明らかになろう。
レベル2メモリの一部分とレベル1メモリとにアクセスするように構成された装置の特定の例示的な実施形態のブロック図である。 レベル2メモリの一部分とレベル1メモリとにアクセスするように構成された装置の第2の例示的な実施形態のブロック図である。 レベル1メモリとメモリのサブ部分とにアクセスする方法の特定の例示的な実施形態のフローチャートである。 レベル1メモリとメモリのサブ部分とにアクセスする方法の第2の例示的な実施形態のフローチャートである。 レベル2メモリの一部分とレベル1メモリとにアクセスするように構成されたポータブルデバイスのブロック図である。
図1を参照すると、レベル2メモリの一部分とレベル1メモリとにアクセスするように構成された装置の特定の例示的な実施形態が開示され、全体的に100と称される。装置100は、レベル1キャッシュなどのレベル1メモリ104を含み、レベル2メモリ112をも含む。レベル2メモリ112は、第1の部分108と第2の部分110とを含む。レベル1メモリ104とレベル2メモリ112の第1の部分108とがメモリシステム114として動作し得るように、レベル2メモリ112の第1の部分108とレベル1メモリ104とは並列にアドレス指定可能である。レベル1メモリ104とレベル2メモリ112の第1の部分108とが並列にアドレス指定可能であるので、レベル1メモリ104を対象とするメモリアクセス要求102は、レベル2メモリ112の第1の部分108にも配信され得る。メモリアクセス要求102をレベル2メモリ112の第1の部分108に配信することは、たとえば、メモリアクセス要求102をレベル1メモリ104に搬送する信号線を、レベル2メモリ112の第1の部分108への入力ポートに結合することによって行われ得る。
レベル2メモリ112の第1の部分108とレベル2メモリ112の第2の部分110のそれぞれのサイズは、レベル1メモリ104に関連するアクセス時間に基づいて確立され得る。たとえば、レベル2メモリ112の第1の部分108が、レベル1メモリ104がアクセスされ得る同じ時間量内にアクセスされ得るように、レベル2メモリ112の第1の部分108のサイズ、およびレベル1メモリ104への第1の部分108の近接度が確立され得る。特定の一実施形態では、レベル1メモリ104の第1のデータリードレイテンシ(data read latency)は、レベル2メモリ112の第1の部分108の第2のデータリードレイテンシと同じプロセッササイクル数、またはより大きいプロセッササイクル数である。
動作中、メモリアクセス要求102は、レベル1メモリ104とレベル2メモリ112の第1の部分108とに同時に与えられ得る。メモリアクセス要求102は、たとえば、指定されたアドレスにおいて記憶されたデータにアクセスしたいという要求、または指定されたアドレスにおいて記憶された命令にアクセスしたいという要求であり得る。レベル1メモリ104とレベル2メモリ112の第1の部分108とは、レベル1メモリ104またはレベル2メモリ112の第1の部分108が、メモリアクセス要求102によって要求されたデータに対応するデータを含むかどうかを判断するために探索され得る。レベル1メモリ104またはレベル2メモリ112の第1の部分108が、メモリアクセス要求102によって要求されたデータに対応するデータを含んでいるとき、メモリアクセス要求102によって要求されたデータに対応するデータ106は、レベル1メモリ104から与えられるか、またはレベル2メモリ112の第1の部分108から与えられ得る。レベル1メモリ104とレベル2メモリ112の第1の部分108とが、メモリアクセス要求102によって要求されたデータに対応するデータを含んでいないとき、メモリアクセス要求102はレベル1キャッシュミスと見なされ得、メモリアクセス要求102または異なるメモリアクセス要求がレベル2メモリ112に転送され得、レベル2メモリ112の第2の部分110は要求されたデータについて探索され得る。
レベル2メモリの一部分が、それがレベル1メモリであるかのようにアクセスされるので、レベル1メモリとしてアクセス可能である、装置100中のメモリの量は増加する。その結果、レベル1メモリとして効果的に機能することができるメモリの量は、レベル1メモリ104への追加の物理スペースを専用化することなしに増加する。
図2を参照すると、レベル2メモリの一部分とレベル1メモリとにアクセスするように構成された装置の特定の例示的な実施形態が開示され、全体的に200と称される。装置200はレベル1メモリ104とレベル2メモリ112とを含む。装置200は、1つまたは複数のメモリアクセス要求を受信するように構成された入力ポート206と出力マルチプレクサ218とをも含む。レベル1メモリ104は、データキャッシュまたは命令キャッシュなどのキャッシュであり得る。代替実施形態では、レベル1メモリ104は密結合メモリ(TCM)であり得る。レベル2メモリ112は、レベル2キャッシュ、TCM、アレイベースのメモリ、または任意の他の形態のコンピュータメモリであり得る。レベル2メモリ112は、レベル2メモリ112の第1の部分108を含む。たとえば、レベル2メモリ112の第1の部分108は、レベル2メモリ112内の複数のアレイのサブアレイ208であり得る。さらに、レベル2メモリ112の第1の部分108は、レベル1メモリ104の近傍に物理的に配置され得る。レベル2メモリ112の第1の部分108の一部として含まれないレベル2メモリ112中のすべてのメモリは、レベル2メモリ112の第2の部分110として特徴づけられ得る。選択要素の第1のセット292は、信号線290を介してL2メモリアクセス要求202を第2の部分110に与えるために、第2の部分110に結合される。選択要素の第1のセット292は、1つまたは複数のアドレスライン216、220、および224に沿って、アドレス信号など、信号線を介して受信された信号を選択的に伝搬するように構成された回路を含み得る。たとえば、図示の実施形態では、選択要素の第1のセット292はデマルチプレクサのセットを含む。マルチプレクサとして示される選択要素の第2のセット294は、L2データ296としてL2メモリアクセス要求202の結果を与えるために、第2の部分110に結合される。
図2に示す実施形態では、レベル1メモリ104の第1のデータリードレイテンシは、プロセッササイクルの第1の数であり、レベル2メモリ112の第1の部分108の第2のデータリードレイテンシは、プロセッササイクルの第2の数である。プロセッササイクルの第2の数は、プロセッササイクルの第1の数以下であり得る。たとえば、レベル1メモリ104は、タグアレイとデータアレイとを有する直列にアクセスされるキャッシュメモリであり得、タグアレイは最初に読み取られ、データアレイはタグアレイの後に読み取られる。レベル2メモリ112の第1の部分108は、タグアレイを含まないことがあり、したがって、レベル1メモリ104よりも少数のプロセッササイクルで(またはレベル1メモリ104と等しい数のサイクルで)読み取られ得る。
さらに、レベル2メモリ112の第1の部分108の第2のデータリードレイテンシは、レベル2メモリ112の第2の部分110など、レベル2メモリ112の少なくとも1つの他の部分の第3のデータリードレイテンシよりも小さい。レベル2メモリ112の第1の部分108が、より短いワイヤ長を含み、レベル2メモリ112の他の部分よりも入力ポート206に近接しているので、第2のデータリードレイテンシは、第3のデータリードレイテンシよりも小さくなり得る。たとえば、サブアレイ208中のアドレスメモリ要素へのアドレスライン212は、アドレスライン216、220、および224など、レベル2メモリ112の少なくとも1つの他の部分中のアドレスラインよりも短いアドレスライン長(address line length)を有し得る。さらに、アドレスライン212の数は、レベル2メモリ112内のアドレスライン212、216、220、および224の総数よりも小さい。
アドレスライン212など、レベル2メモリ112の第1の部分108中の信号を伝搬するためのワイヤが、アドレスライン216、220、および224など、レベル2メモリ112の他の部分中の信号を伝搬するためのワイヤよりも短くなり得るので、また、サブアレイ208が入力ポート206に最も近いので、より長いワイヤ(たとえば、アドレスライン216、220、および224)に沿って信号を送信するために必要な時間よりも少ない時間で、より短いワイヤ(たとえば、アドレスライン212)上で信号が通信され得る。たとえば、レベル2メモリ112の第1の部分108から検索されるべきデータのアドレスを表す信号は、より長いアドレスライン216、220、および224に沿ってレベル2メモリ112の第2の部分110から検索されるべきデータのアドレスを表す同様の信号を送信するために必要な時間よりも少ない時間で、より短いアドレスライン212上で通信され得る。したがって、レベル2メモリ112の一部分をレベル2メモリ112の第1の部分108として指定することが可能であり、その第1の部分は、レベル1メモリ104にアクセスするのに必要とされる時間量以下である時間量内にアクセスされ得る。
入力ポート206は、レベル1(L1)メモリアクセス要求102またはレベル2(L2)メモリアクセス要求202を受信するように構成され得る。入力ポート206は、レベル1メモリ104に結合され、さらにレベル2メモリ112に結合され得る。入力ポート206は、2対1マルチプレクサ204を含み得る。マルチプレクサ204は、第1の信号線203を介してL1メモリアクセス要求102を受信し、第2の信号線205を介してL2メモリアクセス要求202を受信し、ステータスビット226を受信するように構成され得る。ステータスビット226は、L1メモリアクセス要求102またはL2メモリアクセス要求202がマルチプレクサ204から出力され、レベル2メモリ112を対象とすべきかどうかを判断するための制御ビットとして使用され得る。
出力マルチプレクサ218は、レベル1メモリ104に結合され、レベル2メモリ112の第1の部分108に結合され得る。出力マルチプレクサ218は、第1の信号線229を介してレベル2メモリの第1の部分108に結合され得る(第1の信号線229は、複数のデータラインを含み得る)。出力マルチプレクサ218はまた、第2の信号線230を介してレベル1メモリ104に結合され得る(第2の信号線230は複数のデータラインを含み得る)。出力マルチプレクサ218は、レベル1メモリ104から検索されたか、またはレベル2メモリ112の第1の部分108から検索されたデータ106を出力するように構成され得る。たとえば、データは、レベル1メモリ104またはレベル2メモリ112の第1の部分108のいずれかから検索され得る。レベル1メモリ104またはレベル2メモリ112の第1の部分108のいずれかからデータが検索された後、データは第1の信号線229または第2の信号線230を介して出力マルチプレクサ218に与えられ得る。メモリアクセス要求中で要求されたデータがレベル1メモリ104から検索されたのか、レベル2メモリ112の第1の部分108から検索されたのかを示す値などの値228に基づいて、出力マルチプレクサ218は、レベル1メモリ104から受信されたデータを出力すべきなのか、レベル2メモリ112の第1の部分108から受信されたデータを出力すべきなのかを判断し得る。たとえば、値228は、レベル1メモリ104におけるキャッシュヒットに応答して第2の信号線230を選択するように、またはレベル2メモリ112の第1の部分108から検索されたデータ106に応答して第1の信号線229を選択するように、キャッシュ制御ユニット(図示せず)などの制御回路によって生成され得る。別の例として、レベル2メモリ112の第1の部分108にページが割り当てられ得、図4に関して説明する変換ルックアサイドバッファ(TLB)において判断されるように、値228は、そのページへの連続アクセス中に第1の信号線229を選択するように維持され得る。
動作中、L1メモリアクセス要求102はポート206およびレベル1メモリ104において受信され得る。代替的に、L1メモリアクセス要求102は、選択機構(図示せず)を介してなど、レベル1メモリ104またはポート206のうちの1つのみに選択的に与えられ得る。レベル2メモリ112の第1の部分108がレベル1メモリ104の拡張として動作することが可能であることを、ステータスビット226が示しているとき、L1メモリアクセス要求102によって要求されたデータのコピーがレベル2メモリ112の第1の部分108内に記憶されているかどうかを判断するために、レベル2メモリ112の第1の部分108がアクセスされ得るように、マルチプレクサ204はL1メモリアクセス要求102を出力し得る。レベル2メモリ112の第1の部分108がレベル1メモリ104の拡張として動作することが可能であるので、L1メモリアクセス要求102など、レベル1メモリ104を対象とするメモリアクセス要求も、レベル2メモリ112の第1の部分108を対象とし得る。したがって、L1メモリアクセス要求102は、レベル1メモリ104またはレベル2メモリ112の第1の部分108が単一のメモリシステムであるかのように、レベル1メモリ104またはレベル2メモリ112の第1の部分108のいずれかによってサービスされ得る。
特定の一実施形態では、ステータスビット226はマルチプレクサ204への制御入力として使用され得る。ステータスビット226は、初めに、装置200が初期化されたとき第1の特定の値に設定され得る。ステータスビット226の第1の特定の値は、マルチプレクサ204に、第1の信号線203上で受信され、L1メモリアクセス要求102を搬送するデータを出力させ得る。L1メモリアクセス要求102がポート206において受信されたとき、したがって、マルチプレクサ204は、ステータスビット226の値に基づいてL1メモリアクセス要求102を出力し得る。各L1メモリアクセス要求102がレベル1メモリ104またはレベル2メモリ112の第1の部分108のいずれかにおいてキャッシュヒットを生じる限り、ステータスビット226は不変のままであり得る。しかしながら、L1メモリアクセス要求102がレベル1メモリ104とレベル2メモリ112の第1の部分108とにおいてキャッシュミスを生じた場合、L2メモリアクセス要求202はレベル2メモリ112に送られ得る。L2メモリアクセス要求202をレベル2メモリ112に送るために、ステータスビット226は第2の特定の値に変更され得る。ステータスビット226の第2の特定の値は、マルチプレクサ204に、第2の信号線205を介してマルチプレクサ204において受信され、L2メモリアクセス要求202を搬送するデータを出力させ得る。L2メモリアクセス要求202がポート206において受信されたとき、したがって、マルチプレクサ204は、ステータスビット226の値に基づいてL2メモリアクセス要求202を出力し得る。L2メモリアクセス要求202がマルチプレクサ204から出力された後、次いでステータスビット226は第1の特定の値に戻され得る。したがって、メモリアクセス要求は、初めにL1メモリアクセス要求102として扱われ、その後、レベル1メモリ104においてキャッシュミスが生じたことに少なくとも部分的に応答して、L2メモリアクセス要求202として扱われ得る。
特定の一実施形態では、L2メモリアクセス要求202は、第1の部分108に送られ、並列に第2の部分110に送られ得る。たとえば、L2メモリアクセス要求202は、マルチプレクサ204から出力され、信号線290を介して選択要素の第1のセット292に送信され得る。そのような例では、第1の部分108および第2の部分110は、L2メモリアクセス要求202をサービスするための単一のレベル2メモリ112として動作し得る。L2メモリアクセス要求202がキャッシュヒットを生じた場合、レベル2メモリ112におけるキャッシュ制御ユニットは、L2メモリアクセス要求202に対応する要求されたデータを、レベル2メモリ112の第1の部分108または第2の部分110から与え得る。たとえば、L2データ296は、選択要素294に結合された第1の部分108と第2の部分110とからの出力信号線を介して第1の部分108または第2の部分110から出力され得る。
追加の実施形態では、L1メモリアクセス要求102は、レベル1メモリ104とレベル2メモリ112の第1の部分108とに送られ得るが、同時に、L2メモリアクセス要求202は、信号線290と選択要素の第1のセット292とを介してレベル2メモリ112の第2の部分110に送られ得る。そのような例では、L1メモリアクセス要求102およびL2メモリアクセス要求202は、同時に処理され得る競合しないメモリアクセス要求である。
特定の一実施形態では、レベル1メモリ104およびレベル2メモリ112は、複数のキャッシュラインから構成されるキャッシュメモリとして実施され得る。レベル1メモリ104およびレベル2メモリ112は、それぞれのキャッシュのコンテンツを検査するための論理を含むキャッシュ制御ユニットをそれぞれ含み得る。レベル1メモリ104のコンテンツは、たとえば、L1メモリアクセス要求102中で指定されたアドレスの少なくとも一部分に一致する特定のキャッシュライン中のタグについて検査する比較論理を使用することによって検査され得る。そのようなキャッシュラインが識別されたとき、キャッシュヒットが生じ、キャッシュ制御ユニットは、L1メモリアクセス要求102に関連するデータがキャッシュ中に存在することを示し得る。キャッシュラインが発見されないとき、キャッシュミスが生じ、キャッシュ制御ユニットはミス指示を与え得る。
たとえば、レベル1メモリ104とレベル2メモリ112の第1の部分108とは、L1メモリアクセス要求102中で指定されたデータについて探索され得る。L1メモリアクセス要求102によって要求されたデータがレベル1メモリ104において存在する場合、レベル1メモリ104におけるキャッシュ制御ユニットは、L1メモリアクセス要求102がレベル1メモリ104においてキャッシュヒットを生じたことを示す値228を、第2の信号線230を介して出力し得る(たとえば、第2の信号線230は、データのための複数のデータラインとキャッシュヒットまたはキャッシュミスを示すための特定のラインとを含み得る)。値228は、出力マルチプレクサ218がレベル1メモリ104から受信されたデータを出力するように、制御装置として使用するために出力マルチプレクサ218に送られ得る。次いで、キャッシュ制御ユニットは、L1メモリアクセス要求102に対応するデータ106をレベル1メモリ104から出力マルチプレクサ218に与え得る。同様に、L1メモリアクセス要求102によって要求されたデータ106がレベル2メモリ112の第1の部分108において存在する場合、レベル2メモリ112におけるキャッシュ制御ユニットは、L1メモリアクセス要求102がレベル2メモリ112の第1の部分108においてキャッシュヒットを生じたことを示す値228を、第1の信号線229を介して出力し得る(第1の信号線229は、データのための複数のデータラインとキャッシュヒットまたはキャッシュミスを示す特定のラインとを含み得る)。次いで、キャッシュ制御ユニットは、L1メモリアクセス要求102に対応する要求されたデータ106をレベル2メモリ112の第1の部分108から出力マルチプレクサ218に与え得る。出力マルチプレクサ218は、レベル1メモリ104またはレベル2メモリ112の第1の部分108のいずれかから検索されたデータを与える。
図1の装置100および図2の装置200は、様々な電子デバイスに組み込まれ得る。たとえば、デジタル信号プロセッサなどの処理デバイスは、レベル1メモリ104など、マルチレベルアクセスメモリシステムにおいて第1レベルアクセスのためのデータを記憶するための手段と、レベル2メモリ112など、マルチレベルメモリシステムにおいて第2レベルアクセスのためのデータを記憶するための手段とを含み得、第2レベルアクセスのためのデータを記憶するための手段の一部分(たとえば、第1の部分108)は、入力ポートに結合され、第1レベルアクセスのためのデータを記憶するための手段と並列にアドレス指定可能である。特定の一実施形態では、図1の装置100または図2の装置200は、少なくとも1つの半導体ダイに組み込まれ得る。図1の装置100または図2の装置200は、セットトップボックス、音楽プレーヤ、ビデオプレーヤ、エンターテインメントユニット、ナビゲーションデバイス、通信デバイス、携帯情報端末(PDA)、固定ロケーションデータユニット、およびコンピュータなどのデバイスをさらに含み得、そのデバイスには、レベル1メモリ104およびレベル2メモリ112が組み込まれる。
図3を参照すると、レベル2メモリの一部分とレベル1メモリとにアクセスする方法の特定の例示的な実施形態のフローチャートが示され、全体的に300と称される。方法300は、302において、メモリアクセス要求を受信するステップを含む。メモリアクセス要求は、メモリアクセス要求に応答して検索されるべきデータのメモリアドレスを含み得る。たとえば、図1では、メモリアクセス要求102は、レベル2メモリ112の第1の部分108と並列にアドレス指定可能であるレベル1メモリ104を含むメモリシステム114によって受信される。
304に進むと、方法300は、メモリアクセス要求をメモリシステムに配信するステップを含む。メモリシステムは、レベル1メモリとメモリのサブ部分とを含む。たとえば、図1では、メモリアクセス要求102は、メモリシステム114に配信される。メモリシステム114は、第1レベルメモリと第2レベルメモリの第1の部分とを含む。メモリアクセス要求102がレベル1メモリ104とレベル2メモリ112の第1の部分108とに配信され得るが、代替的に、メモリアクセス要求102は、レベル1メモリ104とレベル2メモリ112の第1の部分108とのうちの1つのみに配信され得る。たとえば、第1のメモリアクセス要求中で指定されたデータが第1レベルメモリ104中で発見された場合、キャッシュミスが生じるまで、後続のメモリアクセス要求はすべて第1レベルメモリ104のみに配信され得る。したがって、メモリアクセス要求は、レベル1メモリとメモリのサブ部分の両方を含むシステムに配信され、メモリアクセス要求は、いくつかの方法でメモリシステム内に配信され得る。
方法300は、306において、レベル1メモリまたはメモリのサブ部分からデータを選択的に与えるステップを含む。たとえば、図1では、データ106は、レベル1メモリ104またはレベル2メモリ112の第1の部分108から与えられる。
特定の一実施形態では、本方法は、レベル1メモリまたはメモリのサブ部分にデータ値を書き込むステップをも含む。たとえば、レベル1アクセスのために記憶されるべきデータワードは、レベル1メモリ104、または入力ポート206を介したレベル2メモリ112の第1の部分108のうちの選択された1つに与えられ得る。レベル2メモリ112の第1の部分108にデータワードを書き込むステップは、レベル1メモリ104にデータワードを書き込むステップと同じプロセッササイクル数を必要とし得る。データワードをレベル1メモリにおいて記憶すべきなのか、メモリのサブ部分において記憶すべきなのかの判断は、データワードのアドレスに基づき得る。
図4を参照すると、レベル2メモリの一部分とレベル1メモリとにアクセスする方法の特定の例示的な実施形態のフローチャートが示され、全体的に400と称される。方法400は、402において、メモリアクセス要求を受信するステップを含む。たとえば、図2では、L1メモリアクセス要求102は装置200によって受信され得る。
方法400は、404において、メモリアクセス要求をメモリシステムに配信するステップを含む。メモリシステムは、レベル1メモリとメモリのサブ部分とを含む。レベル1メモリは、キャッシュとして、または密結合メモリ(TCM)として実施され得る。さらに、メモリのサブ部分は、複数のアレイまたは複数のサブアレイを含むメモリ中のアレイのサブアレイとして実施され得る。たとえば、図2では、L1メモリアクセス要求102は、レベル1メモリ104に配信され、ポート206を介してレベル2メモリ112の第1の部分108に配信され得る。
406に進むと、方法400は、レベル1メモリに対応するステータスビットを検査するステップを含む。ステータスビットは、メモリアクセス要求が、レベル1メモリの拡張として動作するレベル2メモリの一部分を対象とすべきなのか、レベル2メモリを対象とすべきなのかを判断するために使用され得る。たとえば、図2では、ステータスビット226は制御ビットとして使用され、ステータスビット226の値は、メモリアクセス要求102が、レベル1メモリ104の拡張として動作するレベル2メモリ112の第1の部分108を対象とすべきなのか、レベル2メモリ112の第2の部分110を対象とすべきなのかを判断するためにマルチプレクサ204によって検査される。
方法400は、408において、ステータスビットが、メモリのサブ部分が有効であることを示していることに応答して、メモリのサブ部分にメモリアクセス要求をルーティングするステップをさらに含む。たとえば、図2では、ステータスビット226は、レベル2メモリ112の第1の部分108がレベル1メモリ104の拡張として働くことが可能であることを示しているとき、L1メモリアクセス要求102は、ポート206を介してレベル2メモリ112の第1の部分108にルーティングされる。レベル2メモリ112の第1の部分108がレベル1メモリ104の拡張として働くことが可能であるので、L1メモリアクセス要求102など、レベル1メモリ104を対象とするメモリアクセス要求も、レベル2メモリ112の第1の部分108を対象とする。したがって、L1メモリアクセス要求102は、レベル1メモリ104またはレベル2メモリ112の第1の部分108が単一のメモリシステムであるかのように、レベル1メモリ104またはレベル2メモリ112の第1の部分108のいずれかによってサービスされ得る。
410に進むと、本方法は、レベル1メモリまたはメモリのサブ部分からデータを選択的に与えるステップを含む。メモリアクセス要求に応答するメモリアクセスは、そのメモリアクセスがレベル1メモリにおいて生じたのか、メモリのサブ部分において生じたのかとは無関係に、ある時間期間(たとえば、1つまたは複数のプロセッササイクル)中に生じ得る。さらに、データがレベル1メモリにおいて記憶されるのか、メモリのサブ部分において記憶されるのかを示す値に基づいて、データはレベル1メモリまたはメモリのサブ部分から選択的に与えられ得る。その値は、メモリアクセス要求に対応するアドレスに基づき得る。たとえば、本方法は、メモリアクセス要求のアドレスに基づいてレベル1メモリまたはメモリのサブ部分のいずれかからデータを選択的に検索するステップを含み得る。例示のために、図2では、データ106は、レベル1メモリ104またはレベル2メモリ112の第1の部分108から選択的に検索され得る。データ106は、出力マルチプレクサ218に与えられた値228に基づいて、レベル1メモリ104またはレベル2メモリ112の第1の部分108から選択的に検索され得る。L1メモリアクセス要求102中に含まれているアドレスによって指定されたデータがレベル1メモリ104中で発見されたのか、レベル2メモリ112の第1の部分108中で発見されたのかを示す値など、値228は、L1メモリアクセス要求102中で指定されたアドレスに基づき得る。データ106は、レベル1メモリ104またはレベル2メモリ112の第1の部分108から与えられ得る。特定の一実施形態では、データ106がレベル2メモリ112の第1の部分108に配置されているときにデータ106を与えるための時間量は、データ106がレベル1メモリ104に配置されているときと同じプロセッササイクル数であり得る。別の実施形態では、データ106がレベル2メモリ112の第1の部分108に配置されているときにデータ106を与えるための時間量は、データ106がレベル1メモリ104に配置されているときよりも少ないプロセッササイクル数であり得る。
例示的な実施形態では、変換ルックアサイドバッファ(TLB)の同じページがアクセスされる間、値228は維持され得る。同じTLBページがアクセスされている間、レベル1メモリ104またはレベル2メモリ112の第1の部分108のうちの1つのみにアクセスすることによって電力が節約され得る。ページが変わると、値228は更新され得る。たとえば、ある使用モデルは、レベル2メモリ112の第1の部分108のみに別のページを割り当てることを含み得る。レベル2メモリ112の第1の部分108は、割り当てられたページにおける連続するメモリアクセスのために使用され得、割り当てられたページから出ると、メモリの別の部分がアクセスされ得る。
図3および図4の方法は、電子デバイスに組み込まれたプロセッサにおいて実行され得る。たとえば、図5に関して説明するように、メモリアクセス要求がコンピュータまたは他の電子デバイスによって配信され得、データは、コンピュータまたは他の電子デバイスによってレベル1メモリまたはメモリのサブ部分から与えられ得る。代替的に、または追加として、当業者は、図3の方法300および図4の方法400が、フィールドプログラマブルゲートアレイ(FPGA)、特定用途向け集積回路(ASIC)、中央処理ユニット(CPU)、デジタル信号プロセッサ(DSP)、コントローラ、別のハードウェアデバイス、またはそれらの任意の組合せによって実装または開始され得ることを認識するであろう。
図5を参照すると、レベル2メモリの一部分とレベル1メモリとにアクセスするように構成された電子デバイスの特定の例示的な実施形態のブロック図が示され、全体的に500と称される。デバイス500は、メモリ532に結合されたデジタル信号プロセッサ(DSP)510などのプロセッサを含む。DSP510はレベル1メモリ104とレベル2メモリ112とを含む。レベル2メモリ112は、レベル2メモリ112の第1の部分108とレベル2メモリ112の第2の部分110とを含む。レベル1メモリ104とレベル2メモリ112の第1の部分108とは、メモリシステム114を形成し得る。代替実施形態では、レベル1メモリ104、およびレベル2メモリ112の第1の部分108とレベル2メモリ112の第2の部分110とを含むレベル2メモリ112は、メモリ532など、DSP510の外部にある他のメモリ中に配置され得る。例示的な例では、レベル1メモリ104およびレベル2メモリ112は、図3〜図4の方法のうちの1つまたは複数、あるいはそれらの任意の組合せに従って動作する。
図5はまた、デジタル信号プロセッサ510とディスプレイ528とに結合されたディスプレイコントローラ526を示す。コーダ/デコーダ(コーデック)534もDSP510に結合され得る。スピーカー536およびマイクロフォン538がコーデック534に結合され得る。
図5はまた、ワイヤレスコントローラ540がDSP510とワイヤレスアンテナ542とに結合され得ることを示す。特定の一実施形態では、(レベル1メモリ104とレベル2メモリ112とを含む)DSP510、ディスプレイコントローラ526、メモリ532、コーデック534、およびワイヤレスコントローラ540は、システムインパッケージまたはシステムオンチップデバイス522中に含まれる。特定の一実施形態では、入力デバイス530および電源544はシステムオンチップデバイス522に結合される。その上、特定の一実施形態では、図5に示すように、ディスプレイ528、入力デバイス530、スピーカー536、マイクロフォン538、ワイヤレスアンテナ542、および電源544は、システムオンチップデバイス522の外部にある。ただし、ディスプレイ528、入力デバイス530、スピーカー536、マイクロフォン538、ワイヤレスアンテナ542、および電源544の各々は、インターフェースまたはコントローラなど、システムオンチップデバイス522の構成要素に結合され得る。
さらに、本明細書で開示した実施形態に関して説明した様々な例示的な論理ブロック、構成、モジュール、回路、およびアルゴリズムステップは、電子ハードウェア、処理ユニットによって実行可能なコンピュータソフトウェア、または両方の組合せとして実装され得ることを、当業者は諒解されよう。様々な例示的な構成要素、ブロック、構成、モジュール、回路、およびステップを、上記では概してそれらの機能に関して説明した。そのような機能をハードウェアとして実装するか、ソフトウェアとして実装するかは、特定の適用例および全体的なシステムに課される設計制約に依存する。当業者は、説明した機能を特定の適用例ごとに様々な方法で実装し得るが、そのような実装の決定は、本開示の範囲からの逸脱を生じるものと解釈すべきではない。
本明細書で開示する実施形態に関して説明する方法またはアルゴリズムのステップは、直接ハードウェアで実施されるか、プロセッサによって実行されるソフトウェアモジュールで実施されるか、またはその2つの組合せで実施され得る。ソフトウェアモジュールは、ランダムアクセスメモリ(RAM)、フラッシュメモリ、読取り専用メモリ(ROM)、プログラマブル読取り専用メモリ(PROM)、消去可能プログラマブル読取り専用メモリ(EPROM)、電気消去可能プログラマブル読取り専用メモリ(EEPROM)、レジスタ、ハードディスク、リムーバブルディスク、コンパクトディスク読取り専用メモリ(CD-ROM)、または当技術分野で知られている任意の他の形態の記憶媒体中に常駐し得る。例示的な記憶媒体は、プロセッサが記憶媒体から情報を読み取り、記憶媒体に情報を書き込むことができるように、プロセッサに結合される。代替として、記憶媒体はプロセッサと一体であり得る。プロセッサおよび記憶媒体は特定用途向け集積回路(ASIC)中に常駐し得る。ASICは、コンピューティングデバイスまたはユーザ端末中に常駐し得る。代替として、プロセッサおよび記憶媒体は、コンピューティングデバイスまたはユーザ端末中に個別構成要素として常駐し得る。
開示する実施形態の前述の説明は、当業者が開示する実施形態を実施または使用できるようにするために提供されるものである。これらの実施形態への様々な変更は当業者にはすぐに明らかになり、本明細書で定義された原理は本開示の範囲から逸脱することなく他の実施形態に適用され得る。したがって、本開示は、本明細書に示した実施形態に限定されるものではなく、以下の特許請求の範囲によって定義される原理および新規の特徴と一致する可能な最も広い範囲を与えられるべきである。
102 メモリアクセス要求
102 L1メモリアクセス要求
104 レベル1メモリ
106 データ
106 L1データ
108 第1の部分
108 レベル2メモリの第1の部分
110 第2の部分
110 レベル2メモリの第2の部分
112 レベル2メモリ
114 メモリシステム
202 L2メモリアクセス要求
203 第1の信号線
204 マルチプレクサ
205 第2の信号線
206 ポート
206 入力ポート
208 サブアレイ
212 アドレスライン
216 アドレスライン
218 マルチプレクサ
218 出力マルチプレクサ
220 アドレスライン
224 アドレスライン
226 ステータスビット
228 値
229 第1の信号線
230 第2の信号線
290 信号線
292 選択要素の第1のセット
292 選択要素の第2のセット
294 選択要素
296 L2データ
510 DSP
510 デジタル信号プロセッサ
522 システムオンチップデバイス
526 ディスプレイコントローラ
528 ディスプレイ
530 入力デバイス
532 メモリ
534 コーダ/デコーダ(コーデック)
534 コーデック
536 スピーカー
538 マイクロフォン
540 ワイヤレスコントローラ
542 ワイヤレスアンテナ
544 電源
552 ソフトウェア

Claims (26)

  1. レベル1キャッシュと、
    レベル2メモリの第1の部分が入力ポートに結合され、前記レベル1キャッシュと並列にアドレス指定可能である、レベル2メモリと
    を含む、装置。
  2. メモリアクセス要求が前記レベル1キャッシュと前記レベル2メモリの前記第1の部分とに与えられる、請求項1に記載の装置。
  3. 前記レベル1キャッシュの第1のデータリードレイテンシがプロセッササイクルの第1の数であり、前記レベル2メモリの前記第1の部分の第2のデータリードレイテンシがプロセッササイクルの第2の数であり、前記第2の数が前記第1の数以下である、請求項1に記載の装置。
  4. 前記レベル2メモリの前記第1の部分の前記第2のデータリードレイテンシが、前記レベル2メモリの少なくとも1つの他の部分の第3のデータリードレイテンシよりも小さい、請求項3に記載の装置。
  5. 前記レベル2メモリがレベル2キャッシュである、請求項3に記載の装置。
  6. 前記レベル2メモリが密結合メモリまたはキャッシュである、請求項1に記載の装置。
  7. 前記レベル2メモリの前記第1の部分が前記レベル1キャッシュの近傍に物理的に配置される、請求項1に記載の装置。
  8. 前記レベル2メモリの前記第1の部分が前記レベル2メモリの単一のサブアレイを含む、請求項7に記載の装置。
  9. 前記単一のサブアレイが、少なくとも前記レベル2メモリの第2の部分よりも短いアドレスライン長を含み、前記レベル2メモリよりも小さい面積を含む、請求項8に記載の装置。
  10. 前記入力ポートがマルチプレクサを含む、請求項1に記載の装置。
  11. 前記入力ポートが前記レベル1キャッシュに結合された、請求項1に記載の装置。
  12. 前記レベル2メモリの前記第1の部分に結合され、前記レベル1キャッシュに結合された出力マルチプレクサをさらに含む、請求項1に記載の装置
  13. 少なくとも1つの半導体ダイに組み込まれた、請求項1に記載の装置。
  14. セットトップボックスと、音楽プレーヤと、ビデオプレーヤと、エンターテインメントユニットと、ナビゲーションデバイスと、通信デバイスと、携帯情報端末(PDA)と、固定ロケーションデータユニットと、コンピュータとからなるグループから選択されたデバイスであって、前記半導体ダイが組み込まれたデバイスをさらに含む、請求項13に記載の装置。
  15. メモリアクセス要求を受信するステップと、
    前記メモリアクセス要求をメモリシステムに配信するステップであって、前記メモリシステムが、レベル1メモリとメモリのサブ部分とを含む、配信するステップと、
    前記レベル1メモリと前記メモリの前記サブ部分とのうちの1つからデータを選択的に与えるステップと
    を含む方法。
  16. 前記データが、前記メモリアクセス要求に対応する値に基づいて、前記レベル1メモリと前記メモリの前記サブ部分とのうちの1つから選択的に与えられる、請求項15に記載の方法。
  17. 前記データが前記レベル1メモリにおいて記憶されるのか、前記メモリの前記サブ部分において記憶されるのかを示す値に基づいて、前記データが前記レベル1メモリと前記メモリの前記サブ部分とのうちの1つから選択的に与えられる、請求項15に記載の方法。
  18. 前記メモリアクセス要求に応答するメモリアクセスは、前記メモリアクセスが前記レベル1メモリにおいて行われるのか、前記メモリの前記サブ部分において行われるのかとは無関係である時間期間中に行われる、請求項15に記載の方法。
  19. 前記レベル1メモリが、キャッシュと密結合メモリとのうちの1つである、請求項15に記載の装置。
  20. 前記サブ部分が前記メモリのサブアレイである、請求項15に記載の装置。
  21. 前記メモリの前記サブ部分に対応するステータスビットを検査するステップと、
    前記ステータスビットが、前記メモリの前記サブ部分が有効であることを示していることに応答して、前記メモリの前記サブ部分に前記メモリアクセス要求をルーティングするステップと
    をさらに含む、請求項15に記載の方法。
  22. 前記メモリアクセス要求が、前記レベル1メモリと前記メモリの前記サブ部分の両方に同時に配信される、請求項15に記載の方法。
  23. メモリアクセス要求のアドレスに基づいて前記レベル1メモリまたは前記メモリの前記サブ部分のいずれかから前記データを選択的に検索するステップをさらに含む、請求項15に記載の方法。
  24. 前記メモリアクセス要求を配信するステップと、前記レベル1メモリまたは前記メモリの前記サブ部分のいずれかからデータを与えるステップとが、電子デバイスに組み込まれたプロセッサにおいて実行される、請求項15に記載の方法。
  25. マルチレベルアクセスメモリシステムにおいて第1レベルアクセスのためのデータを記憶するための手段と、
    前記マルチレベルメモリシステムにおいて第2レベルアクセスのためのデータを記憶するための手段であって、前記第2レベルアクセスのためのデータを記憶するための前記手段の一部分が、入力ポートに結合され、前記第1レベルアクセスのためのデータを記憶するための前記手段と並列にアドレス指定可能である、第2レベルアクセスのためのデータを記憶するための手段と
    を含む装置。
  26. 少なくとも1つの半導体ダイに組み込まれた、請求項25に記載の装置。
JP2012549129A 2010-01-14 2011-01-14 レベル2メモリの一部分とレベル1メモリとにアクセスするシステムおよび方法 Expired - Fee Related JP5572719B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/687,552 US8341353B2 (en) 2010-01-14 2010-01-14 System and method to access a portion of a level two memory and a level one memory
US12/687,552 2010-01-14
PCT/US2011/021368 WO2011088370A1 (en) 2010-01-14 2011-01-14 System and method to access a portion of a level two memory and a level one memory

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2014097446A Division JP5837135B2 (ja) 2010-01-14 2014-05-09 レベル2メモリの一部分とレベル1メモリとにアクセスするシステムおよび方法

Publications (2)

Publication Number Publication Date
JP2013517577A true JP2013517577A (ja) 2013-05-16
JP5572719B2 JP5572719B2 (ja) 2014-08-13

Family

ID=43805732

Family Applications (4)

Application Number Title Priority Date Filing Date
JP2012549129A Expired - Fee Related JP5572719B2 (ja) 2010-01-14 2011-01-14 レベル2メモリの一部分とレベル1メモリとにアクセスするシステムおよび方法
JP2014097446A Expired - Fee Related JP5837135B2 (ja) 2010-01-14 2014-05-09 レベル2メモリの一部分とレベル1メモリとにアクセスするシステムおよび方法
JP2015216564A Pending JP2016042370A (ja) 2010-01-14 2015-11-04 レベル2メモリの一部分とレベル1メモリとにアクセスするシステムおよび方法
JP2017177612A Ceased JP2018010680A (ja) 2010-01-14 2017-09-15 レベル2メモリの一部分とレベル1メモリとにアクセスするシステムおよび方法

Family Applications After (3)

Application Number Title Priority Date Filing Date
JP2014097446A Expired - Fee Related JP5837135B2 (ja) 2010-01-14 2014-05-09 レベル2メモリの一部分とレベル1メモリとにアクセスするシステムおよび方法
JP2015216564A Pending JP2016042370A (ja) 2010-01-14 2015-11-04 レベル2メモリの一部分とレベル1メモリとにアクセスするシステムおよび方法
JP2017177612A Ceased JP2018010680A (ja) 2010-01-14 2017-09-15 レベル2メモリの一部分とレベル1メモリとにアクセスするシステムおよび方法

Country Status (7)

Country Link
US (1) US8341353B2 (ja)
EP (1) EP2524314B1 (ja)
JP (4) JP5572719B2 (ja)
KR (1) KR101407040B1 (ja)
CN (1) CN102713868B (ja)
TW (1) TW201142595A (ja)
WO (1) WO2011088370A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPWO2019211697A1 (ja) * 2018-05-02 2021-06-17 株式会社半導体エネルギー研究所 半導体装置

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20120094778A (ko) * 2011-02-17 2012-08-27 삼성전자주식회사 캐시 레이턴시 저감을 위한 캐시 메모리 제어방법 및 캐시 메모리 시스템
KR101442970B1 (ko) * 2013-04-16 2014-09-23 광운대학교 산학협력단 비 휘발성 메모리를 이용한 웹 브라우저 정보 캐싱 장치 및 방법
JP6569347B2 (ja) * 2015-07-16 2019-09-04 富士通株式会社 演算処理装置及び演算処理装置の制御方法
US11940929B2 (en) * 2019-05-24 2024-03-26 Texas Instruments Incorporated Methods and apparatus to reduce read-modify-write cycles for non-aligned writes
KR20210128073A (ko) * 2020-04-16 2021-10-26 에스케이하이닉스 주식회사 메모리 시스템

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06231044A (ja) * 1992-12-22 1994-08-19 Internatl Business Mach Corp <Ibm> キャッシュ・メモリを有するデータ処理システム
JPH10187536A (ja) * 1996-12-24 1998-07-21 Hitachi Ltd 半導体装置および半導体メモリ装置
JP2001051898A (ja) * 1999-08-05 2001-02-23 Hitachi Ltd 階層キャッシュメモリのデータ参照方法、および、階層キャッシュメモリを含むデータ処理装置
JP2002007373A (ja) * 2000-06-20 2002-01-11 Fujitsu Ltd 半導体装置
JP2003242028A (ja) * 2002-01-31 2003-08-29 Hewlett Packard Co <Hp> 複数のタグおよび細分化された大容量アレイへの複数のエントリの使用による簡易化したキャッシュ階層
WO2005101213A2 (en) * 2004-03-24 2005-10-27 Qualcomm Incorporated Cached memory system and cache controller for embedded digital signal processor
JP2008129712A (ja) * 2006-11-17 2008-06-05 Toshiba Corp 情報処理装置およびデータ検索方法
US20100005242A1 (en) * 2008-07-07 2010-01-07 International Business Machines Corp. Efficient Processing of Data Requests With The Aid Of A Region Cache

Family Cites Families (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5832534A (en) 1994-01-04 1998-11-03 Intel Corporation Method and apparatus for maintaining cache coherency using a single controller for multiple cache memories
US5740399A (en) 1995-08-23 1998-04-14 International Business Machines Corporation Modified L1/L2 cache inclusion for aggressive prefetch
US5822755A (en) * 1996-01-25 1998-10-13 International Business Machines Corporation Dual usage memory selectively behaving as a victim cache for L1 cache or as a tag array for L2 cache
US5905999A (en) 1996-04-29 1999-05-18 International Business Machines Corporation Cache sub-array arbitration
US5895487A (en) 1996-11-13 1999-04-20 International Business Machines Corporation Integrated processing and L2 DRAM cache
US6044438A (en) 1997-07-10 2000-03-28 International Business Machiness Corporation Memory controller for controlling memory accesses across networks in distributed shared memory processing systems
US6205537B1 (en) 1998-07-16 2001-03-20 University Of Rochester Mechanism for dynamically adapting the complexity of a microprocessor
US6397296B1 (en) * 1999-02-19 2002-05-28 Hitachi Ltd. Two-level instruction cache for embedded processors
US6606686B1 (en) * 1999-07-15 2003-08-12 Texas Instruments Incorporated Unified memory system architecture including cache and directly addressable static random access memory
US6430655B1 (en) 2000-01-31 2002-08-06 Mips Technologies, Inc. Scratchpad RAM memory accessible in parallel to a primary cache
US6427188B1 (en) * 2000-02-09 2002-07-30 Hewlett-Packard Company Method and system for early tag accesses for lower-level caches in parallel with first-level cache
US6886078B1 (en) 2001-06-21 2005-04-26 Virage Logic Corp. Simultaneous access and cache loading in a hierarchically organized memory circuit
US6848026B2 (en) * 2001-11-09 2005-01-25 International Business Machines Corporation Caching memory contents into cache partitions based on memory locations
US7322981B2 (en) 2003-08-28 2008-01-29 Jackson Roger P Polyaxial bone screw with split retainer ring
US7143239B2 (en) * 2003-08-07 2006-11-28 Hewlett-Packard Development Company, L.P. Cache structure and methodology
US7284095B2 (en) * 2004-08-18 2007-10-16 International Business Machines Corporation Latency-aware replacement system and method for cache memories
US7380047B2 (en) * 2004-09-30 2008-05-27 International Business Machines Corporation Apparatus and method for filtering unused sub-blocks in cache memories
US7293141B1 (en) * 2005-02-01 2007-11-06 Advanced Micro Devices, Inc. Cache word of interest latency organization
DE102005037219A1 (de) * 2005-08-08 2007-02-15 Robert Bosch Gmbh Vorrichtung und Verfahren zur Speicherung von Daten und/oder Befehlen in einem Rechnersystem mit wenigstens zwei Verarbeitungseinheiten und wenigstens einem ersten Speicher oder Speicherbereich für Daten und/oder Befehle
US7584327B2 (en) * 2005-12-30 2009-09-01 Intel Corporation Method and system for proximity caching in a multiple-core system
US20070282928A1 (en) * 2006-06-06 2007-12-06 Guofang Jiao Processor core stack extension
US7584335B2 (en) * 2006-11-02 2009-09-01 International Business Machines Corporation Methods and arrangements for hybrid data storage
US8335122B2 (en) * 2007-11-21 2012-12-18 The Regents Of The University Of Michigan Cache memory system for a data processing apparatus
US9152569B2 (en) * 2008-11-04 2015-10-06 International Business Machines Corporation Non-uniform cache architecture (NUCA)
US20100191913A1 (en) * 2009-01-26 2010-07-29 Agere Systems Inc. Reconfiguration of embedded memory having a multi-level cache
US8156357B2 (en) * 2009-01-27 2012-04-10 Freescale Semiconductor, Inc. Voltage-based memory size scaling in a data processing system
US8271729B2 (en) * 2009-09-18 2012-09-18 International Business Machines Corporation Read and write aware cache storing cache lines in a read-often portion and a write-often portion
JP2011141754A (ja) * 2010-01-07 2011-07-21 Toyota Motor Corp キャッシュメモリ

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06231044A (ja) * 1992-12-22 1994-08-19 Internatl Business Mach Corp <Ibm> キャッシュ・メモリを有するデータ処理システム
JPH10187536A (ja) * 1996-12-24 1998-07-21 Hitachi Ltd 半導体装置および半導体メモリ装置
JP2001051898A (ja) * 1999-08-05 2001-02-23 Hitachi Ltd 階層キャッシュメモリのデータ参照方法、および、階層キャッシュメモリを含むデータ処理装置
JP2002007373A (ja) * 2000-06-20 2002-01-11 Fujitsu Ltd 半導体装置
JP2003242028A (ja) * 2002-01-31 2003-08-29 Hewlett Packard Co <Hp> 複数のタグおよび細分化された大容量アレイへの複数のエントリの使用による簡易化したキャッシュ階層
WO2005101213A2 (en) * 2004-03-24 2005-10-27 Qualcomm Incorporated Cached memory system and cache controller for embedded digital signal processor
JP2008129712A (ja) * 2006-11-17 2008-06-05 Toshiba Corp 情報処理装置およびデータ検索方法
US20100005242A1 (en) * 2008-07-07 2010-01-07 International Business Machines Corp. Efficient Processing of Data Requests With The Aid Of A Region Cache

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPWO2019211697A1 (ja) * 2018-05-02 2021-06-17 株式会社半導体エネルギー研究所 半導体装置
JP7241068B2 (ja) 2018-05-02 2023-03-16 株式会社半導体エネルギー研究所 半導体装置
US11742014B2 (en) 2018-05-02 2023-08-29 Semiconductor Energy Laboratory Co., Ltd. Semiconductor device

Also Published As

Publication number Publication date
WO2011088370A1 (en) 2011-07-21
CN102713868A (zh) 2012-10-03
KR101407040B1 (ko) 2014-06-13
JP2016042370A (ja) 2016-03-31
TW201142595A (en) 2011-12-01
EP2524314B1 (en) 2017-08-30
JP5837135B2 (ja) 2015-12-24
US20110173391A1 (en) 2011-07-14
EP2524314A1 (en) 2012-11-21
JP2018010680A (ja) 2018-01-18
JP5572719B2 (ja) 2014-08-13
CN102713868B (zh) 2015-11-25
KR20120116986A (ko) 2012-10-23
US8341353B2 (en) 2012-12-25
JP2014160507A (ja) 2014-09-04

Similar Documents

Publication Publication Date Title
JP2018010680A (ja) レベル2メモリの一部分とレベル1メモリとにアクセスするシステムおよび方法
US11074190B2 (en) Slot/sub-slot prefetch architecture for multiple memory requestors
US8255593B2 (en) Direct memory access with striding across memory
US8566607B2 (en) Cryptography methods and apparatus used with a processor
US11086526B2 (en) Adaptive line width cache systems and methods
US10261901B2 (en) Method and apparatus for unneeded block prediction in a computing system having a last level cache and a multi-level system memory
KR20130106789A (ko) 계층적으로 캐싱되는 프로세서들에서의 조정된 프리페칭
US9058283B2 (en) Cache arrangement
CN113168378A (zh) 用于存储数据的区域的缓存
WO2023055486A1 (en) Re-reference interval prediction (rrip) with pseudo-lru supplemental age information
US10310981B2 (en) Method and apparatus for performing memory prefetching
US8661169B2 (en) Copying data to a cache using direct memory access
CN111651383B (zh) 用于具有数据流管理器的处理器中的数据流的方法和装置
US11645209B2 (en) Method of cache prefetching that increases the hit rate of a next faster cache
KR20040067063A (ko) 디지털 신호 처리장치의 저전력 소비형 캐시 메모리 장치및 이에 대한 제어방법
US10216454B1 (en) Method and apparatus of performing a memory operation in a hierarchical memory assembly
US20120151150A1 (en) Cache Line Fetching and Fetch Ahead Control Using Post Modification Information
KR20080028681A (ko) 멀티 웨이 스트림 버퍼 관리 장치 및 그의 프리페치 방법

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20131128

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20131210

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20140310

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20140317

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20140410

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20140417

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140509

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140630

R150 Certificate of patent or registration of utility model

Ref document number: 5572719

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

LAPS Cancellation because of no payment of annual fees