ストリームトランザクションのためのメモリアクセス要求を受け取り、前記ストリームトランザクションに含まれる、メモリ中の少なくとも1つのメモリページへのメモリアクセスを実施するように構成されたコントローラを備えるメモリコントローラであって、前記コントローラが、前記ストリームトランザクションに関連した情報に基づいて、前記少なくとも1つのメモリページにページ管理ポリシーを適用するように構成される、メモリコントローラ。前記ストリームトランザクションに関連した前記情報が、マスタ識別子、ストリーム識別子、前記ストリームトランザクションに関連付けられた優先度、および前記ストリームトランザクションに関連付けられた期限からなる群から選択される情報である、請求項1に記載のメモリコントローラ。前記ページ管理ポリシーが、前記ストリームトランザクションのための現在のメモリページが、保留ストリームトランザクションによってアクセスされるべき、前記メモリ中の前記現在のメモリページの次のメモリページであるかどうかに基づく、請求項1に記載のメモリコントローラ。前記保留ストリームトランザクションのための保留メモリアクセス要求が期限を過ぎている場合、前記ページ管理ポリシーがリーブオープンメモリページである、請求項3に記載のメモリコントローラ。前記ストリームトランザクションのための前記保留メモリアクセス要求が、前記ストリームトランザクションのための前記メモリアクセス要求、および別のストリームトランザクションのための別のメモリアクセス要求からなる群から選択される、請求項4に記載のメモリコントローラ。前記ページ管理ポリシーが、前記メモリアクセス要求のための次のメモリページが、前記メモリアクセス要求のための現在のメモリページではないかどうかに基づく、請求項1に記載のメモリコントローラ。前記ページ管理ポリシーが、前記メモリ中の同じメモリバンクへの複数のストリームトランザクションのための複数のメモリアクセス要求があるかどうかに基づく、請求項1に記載のメモリコントローラ。前記ページ管理ポリシーが、ストリームトランザクションのための前記複数のメモリアクセス要求の少なくとも1つが期限付きであるかどうかに基づき、ストリームトランザクションのための前記複数のメモリアクセス要求の少なくとも1つが期限付きではない、請求項7に記載のメモリコントローラ。前記ページ管理ポリシーが、期限付きではないストリームトランザクションのための前記複数のメモリアクセス要求の前記少なくとも1つについてのクローズメモリページである、請求項8に記載のメモリコントローラ。前記ページ管理ポリシーが、期限付きであるストリームトランザクションのための前記複数のメモリアクセス要求の前記少なくとも1つについてのリーブオープンメモリページである、請求項8に記載のメモリコントローラ。前記ページ管理ポリシーが、ストリームトランザクションのための前記複数のメモリアクセス要求の2つ以上が期限付きであるかどうかに基づく、請求項7に記載のメモリコントローラ。前記ページ管理ポリシーが、期限に間に合わないストリームトランザクションのための前記複数のメモリアクセス要求のうち、前記ストリームトランザクションのための前記メモリアクセス要求に対するリーブオープンメモリページである、請求項11に記載のメモリコントローラ。前記ページ管理ポリシーが、期限に間に合わないストリームトランザクションのための前記複数のメモリアクセス要求のうち前記2つ以上の要求の優先度にさらに基づく、請求項11に記載のメモリコントローラ。前記ページ管理ポリシーが、期限に間に合わないストリームトランザクションのための前記複数のメモリアクセス要求のうち前記2つ以上の要求のマスタ識別子にさらに基づく、請求項11に記載のメモリコントローラ。前記ページ管理ポリシーが、ストリームトランザクションのための前記複数のメモリアクセス要求のうち前記2つ以上の要求の少なくとも1つが優先度をもたないかどうかにさらに基づく、請求項11に記載のメモリコントローラ。半導体ダイに統合される、請求項1に記載のメモリコントローラ。前記メモリコントローラが統合されるセットトップボックス、娯楽機器、ナビゲーションデバイス、通信デバイス、固定ロケーションデータユニット、モバイルロケーションデータユニット、モバイルフォン、セルラーフォン、コンピュータ、ポータブルコンピュータ、デスクトップコンピュータ、携帯情報端末、モニタ、コンピュータモニタ、テレビ、チューナ、ラジオ、衛星ラジオ、音楽プレーヤ、デジタル音楽プレーヤ、ポータブル音楽プレーヤ、デジタルビデオプレーヤ、ビデオプレーヤ、デジタルビデオディスクプレーヤ、およびポータブルデジタルビデオプレーヤからなる群から選択されたデバイスをさらに備える、請求項1に記載のメモリコントローラ。メモリにアクセスするための方法であって、メモリコントローラにおいて、ストリームトランザクションのためのメモリアクセス要求を受け取るステップと、前記ストリームトランザクションによって参照される、メモリ中の少なくとも1つのメモリページへのメモリアクセスを実施するステップと、前記ストリームトランザクションに関連した情報に基づいて、前記少なくとも1つのメモリページ用のページ管理ポリシーを決定するステップと、前記ページ管理ポリシーを前記少なくとも1つのメモリページに適用するステップとを含む方法。前記少なくとも1つのメモリページ用の前記ページ管理ポリシーを決定するステップが、前記ストリームトランザクションのための現在のメモリページが、保留ストリームトランザクションによってアクセスされるべき、前記メモリ中の前記現在のメモリページの次のメモリページであるかどうかに基づく、請求項18に記載の方法。ストリームトランザクションのための保留メモリアクセス要求が期限を過ぎている場合、前記ページ管理ポリシーがリーブオープンメモリページである、請求項18に記載の方法。前記少なくとも1つのメモリページ用の前記ページ管理ポリシーを決定するステップが、前記メモリアクセス要求のための次のメモリページが、前記メモリアクセス要求のための現在のメモリページではないかどうかに基づく、請求項18に記載の方法。前記少なくとも1つのメモリページ用の前記ページ管理ポリシーを決定するステップが、前記メモリ中の同じメモリバンクへのストリームトランザクションのための複数のメモリアクセス要求があるかどうかに基づく、請求項18に記載の方法。前記少なくとも1つのメモリページ用の前記ページ管理ポリシーを決定するステップが、ストリームトランザクションのための前記複数のメモリアクセス要求の少なくとも1つが期限付きであるかどうかに基づき、ストリームトランザクションのための前記複数のメモリアクセス要求の少なくとも1つが期限付きではない、請求項22に記載の方法。前記ページ管理ポリシーが、期限付きではないストリームトランザクションのための前記複数のメモリアクセス要求の前記少なくとも1つについてのクローズメモリページである、請求項23に記載の方法。前記ページ管理ポリシーが、期限付きであるストリームトランザクションのための前記複数のメモリアクセス要求の前記少なくとも1つについてのリーブオープンメモリページである、請求項23に記載の方法。前記少なくとも1つのメモリページ用の前記ページ管理ポリシーを決定するステップが、ストリームトランザクションのための前記複数のメモリアクセス要求の2つ以上が期限付きであるかどうかに基づく、請求項22に記載の方法。前記少なくとも1つのメモリページ用の前記ページ管理ポリシーを決定するステップが、ストリームトランザクションのための前記複数のメモリアクセス要求のうち前記2つ以上の要求の少なくとも1つが優先度をもたないかどうかに基づく、請求項22に記載の方法。メモリコントローラに、ストリームトランザクションのためのメモリアクセス要求を受け取らせ、前記ストリームトランザクションに含まれる、メモリ中の少なくとも1つのメモリページへのメモリアクセスを実施させ、前記ストリームトランザクションに関連した情報に基づいて、前記少なくとも1つのメモリページにページ管理ポリシーを適用させるためのコンピュータ実行可能命令を記録したコンピュータ可読記録媒体。前記メモリコントローラに、前記ストリームトランザクションのための現在のメモリページが、保留ストリームトランザクションによってアクセスされるべき、前記メモリ中の前記現在のメモリページの次のメモリページであるかどうかに基づいて、前記ページ管理ポリシーを適用させるためのコンピュータ実行可能命令をさらに備える、請求項28に記載のコンピュータ可読記録媒体。前記メモリコントローラに、前記メモリアクセス要求のための次のメモリページが、前記メモリアクセス要求のための現在のメモリページではないかどうかに基づいて、前記ページ管理ポリシーを適用させるためのコンピュータ実行可能命令をさらに備える、請求項28に記載のコンピュータ可読記録媒体。前記メモリコントローラに、前記メモリ中の同じメモリバンクへのストリームトランザクションのための複数のメモリアクセス要求があるかどうかに基づいて、前記ページ管理ポリシーを適用させるためのコンピュータ実行可能命令をさらに備える、請求項28に記載のコンピュータ可読記録媒体。詳細な説明において開示する実施形態は、ストリームトランザクション情報に基づいてページ管理ポリシーを適用するためのメモリコントローラ、システム、方法、およびコンピュータ可読媒体を含む。この点について一実施形態では、メモリコントローラが提供される。メモリコントローラは、ストリームトランザクションのためのメモリアクセス要求を受け取るように構成されたコントローラを含む。ストリームトランザクションとは、データの効率的バルク転送を容易にするためのバーストアクセスタイプのスーパーセットである。メモリコントローラは、単一バーストおよび単一ビートアクセスタイプなどの非ストリームトランザクションのためのメモリアクセス要求を受け取るようにも構成される。メモリコントローラは、ストリームトランザクションによって指定された、メモリ中のメモリページへのメモリアクセスを実施するように構成される。コントローラは、ストリームトランザクションに関連した情報に基づいて、メモリにページ管理ポリシーを適用するようにさらに構成される。例として、ストリームトランザクション情報は、今後ならびに保留ストリームトランザクションが進行したときにアクセスされる、メモリ中のアドレス範囲についての情報を提供し得る。このように、ページ管理ポリシーは、ストリームトランザクションを使用する際の効率性のために設定され得る。異なるデバイスからのストリームトランザクションを含む複数のメモリアクセス要求をメモリコントローラが扱っているときに起こり得る待ち時間問題を考慮するページ管理ポリシーも提供され得る。非限定的な一例として、ページ管理ポリシーは、ストリームトランザクションのための現在のメモリページが、保留ストリームトランザクションによってアクセスされるべき次のメモリページであるかどうかに基づき得る。次のメモリページである場合、適用されるページ管理ポリシーは、現在のメモリページを閉じ、開き直す処理時間を避けるために、現在のストリームトランザクションのためのメモリアクセスの後、現在のメモリページを開いたままにするものであり得る。次のメモリページではない場合、適用されるページ管理ポリシーは、現在のストリームトランザクションのためのメモリアクセスの後、現在のメモリページを閉じるものであり得る。別の非限定的例として、ページ管理ポリシーは、現在のストリームトランザクションのための次のメモリページが、ストリームトランザクションのためにアクセスされている現在のメモリページではないかどうかに基づき得る。次のメモリページではない場合、適用されるページ管理ポリシーは、現在のストリームトランザクションのためのメモリアクセスの後、現在のメモリページを閉じるものであり得る。別の非限定的例では、ページ管理ポリシーは、メモリ中の同じメモリバンクに対するストリームトランザクションのための複数のメモリアクセス要求があるかどうかに基づき得る。複数の要求がある場合、ページ管理ポリシーは、限定はしないが、すべてのストリームトランザクションが期限付きであるかどうか、ただ1つのストリームトランザクションが期限付きであるかどうか、およびまたはストリームトランザクションが期限を過ぎているかどうかを含むストリームトランザクション属性に依存して、現在のストリームトランザクションのためのメモリページを開いたままにし、または閉じるものであり得る。別の実施形態では、メモリにアクセスするための方法が提供される。この方法は、メモリコントローラにおいて、ストリームトランザクションのためのメモリアクセス要求を受け取ることを含む。方法は、ストリームトランザクションに含まれる、メモリ中の少なくとも1つのメモリページへのメモリアクセスを実施することも含む。方法は、ストリームトランザクションに関連した情報に基づいて、少なくとも1つのメモリページ用のページ管理ポリシーを決定することも含む。方法は、ページ管理ポリシーを少なくとも1つのメモリページに適用することも含む。別の実施形態では、メモリコントローラに、ストリームトランザクションのためのメモリアクセス要求を受け取らせるためのコンピュータ実行可能命令を記憶したコンピュータ可読媒体が提供される。コンピュータ可読媒体は、メモリコントローラに、ストリームトランザクションに含まれる、メモリ中の少なくとも1つのメモリページへのメモリアクセスを実施させるためのコンピュータ実行可能命令も記憶している。コンピュータ可読媒体は、メモリコントローラに、ストリームトランザクションに関連した情報に基づいて、少なくとも1つのメモリページにページ管理ポリシーを適用させるためのコンピュータ実行可能命令も記憶している。ここで図面を参照して、本開示のいくつかの例示的な実施形態が説明される。例示的なという言葉は、一例、実例または例としてを意味するために本明細書で使用される。例示的として本明細書で説明する任意の実施形態は、必ずしも他の実施形態よりも好ましいまたは有利であると解釈されるべきではない。詳細な説明において開示する実施形態は、ストリームトランザクション情報に基づいてページ管理ポリシーを適用するためのメモリコントローラ、システム、方法、およびコンピュータ可読媒体を含む。この点について一実施形態では、メモリコントローラが提供される。メモリコントローラは、ストリームトランザクションのためのメモリアクセス要求を受け取るように構成されたコントローラを含む。ストリームトランザクションとは、データの効率的バルク転送を容易にするためのバーストアクセスタイプのスーパーセットである。メモリコントローラは、単一バーストおよび単一ビートアクセスタイプなどの非ストリームトランザクションのためのメモリアクセス要求を受け取るようにも構成される。メモリコントローラは、ストリームトランザクションによって指定された、メモリ中のメモリページへのメモリアクセスを実施するように構成される。コントローラは、ストリームトランザクションに関連した情報に基づいて、メモリにページ管理ポリシーを適用するようにさらに構成される。例として、ストリームトランザクション情報は、今後ならびに保留ストリームトランザクションが進行したときにアクセスされる、メモリ中のアドレス範囲についての情報を提供し得る。このように、ページ管理ポリシーは、ストリームトランザクションを使用する際の効率性のために設定され得る。異なるデバイスからのストリームトランザクションを含む複数のメモリアクセス要求をメモリコントローラが扱っているときに起こり得る待ち時間問題を考慮するページ管理ポリシーも提供され得る。図1および図2は、ストリームトランザクションのためのメモリアクセス要求を含むメモリアクセス要求を実施するためのメモリコントローラを含む例示的なシステムを示す。この点について、図1は、ストリームトランザクション情報に基づいてメモリにページ管理ポリシーを適用するためのメモリコントローラを含む例示的なシステム10を示す。システム10は、バス相互接続16を介してスレーブデバイス14に相互接続された複数のマスタデバイス12を含む。バス相互接続16は、バス相互接続16に接続されたマスタデバイス12の1つまたは複数を、やはりバス相互接続16に各々が接続された、スレーブデバイス14のいずれかと通信させるように構成可能である。スレーブデバイス14はマスタデバイス12にとって共有リソースであるので、本実施形態におけるバス相互接続16内には、マスタデバイス12からスレーブデバイス14への複数の通信要求をアービトレーションするためのアービタ20が設けられる。一例として、バス相互接続16は、半導体ダイ22内に設けることができ、所望される場合、システムオンチップ集積回路設計において設けることができる。マスタデバイス12およびスレーブデバイス14は、所望されるどのタイプの電子デバイスまたはサブシステムでもよく、したがって、限定はしないが、図1に示すように、中央処理装置12と、デジタル信号プロセッサ12と、フィールドプログラム可能ゲートアレイ12と、直接メモリアクセスコントローラ12と、ディスプレイ18に与えられる情報を制御するディスプレイプロセッサ12とを含み得る。スレーブデバイス14の例が、図1に示すメモリシステム24である。メモリシステム24は、バス相互接続16に接続されて、マスタデバイス12のいずれもが、メモリシステム24内のメモリ26に読取りおよび書込みメモリアクセス要求を与え、読取りおよび書込み応答を受け取ることが可能になる。この点について、メモリシステム24は、バス相互接続16をメモリ26にインターフェースさせ、マスタデバイス12によってバス相互接続16を通してメモリシステム24に与えられたメモリアクセス要求に応答して、メモリ26との間でのデータの流れを制御するメモリコントローラ28を含む。制御ブロックの形で与えられるメモリアクセス情報は、後でより詳しく論じるように、メモリ26へのメモリアクセストランザクションを要求するために、メモリコントローラ28に与えられる。メモリコントローラ28は、マスタデバイス12からのメモリアクセス要求をバッファリングするためのメモリアクセス要求キュー29を含む。メモリアクセス要求の受取りおよび実施、ならびにページ管理ポリシーの決定およびメモリ26への適用を含む、メモリコントローラ28による操作を制御するためのコントローラ31も、メモリコントローラ28内に設けられ得る。コントローラ31は、ソフトウェア命令を利用せずに、回路を含むことができる。メモリコントローラ28は、コントローラ31内の、または場合によってはメモリコントローラ28にとってアクセス可能なコンピュータ可読媒体33中で与えられるソフトウェア命令を実行するプロセッサも含み得る。コンピュータ可読媒体33は、例として、レジスタおよびまたは他のメモリからなり得る。各メモリユニット30~30に1つが提供されるチップ選択CS~CSを含むメモリコントローラ28にメモリ26をインターフェースするためのメモリバス32が設けられる。各メモリユニット30~30は、別個のメモリチップでよい。チップ選択CS~CSは、メモリコントローラ28によって、アクセスされるべき所望のメモリロケーションを含むメモリユニット30~30を有効にするために選択的に有効にされる。メモリコントローラ28は、この例では、メモリユニット30~30の1つが、データ衝突を避けるためにデータバス上のデータを一度にアサートするようなときにメモリユニット30~30の1つを有効にする。メモリバス32は、メモリ26への書込みまたは読取りのいずれかのための、メモリユニット30~30内でアクセスされるメモリアドレスをメモリコントローラ28が制御できるようにするアドレス制御バスも含む。メモリバス32は、メモリアクセスのためにメモリコントローラ32とメモリユニット30~30との間のタイミングを同期させるためのクロック信号も含む。図1の参照を続けると、各メモリユニット30~30は、全体が要素34と呼ばれる複数のメモリバンクを含む。図1は、メモリユニット30の1つのためのメモリバンク34を示す。メモリバンクとは、メモリの論理ユニットである。図1の図示する例において、メモリバンク34は、DATAバス上で一度に16ビットの情報を提供する。図示する例において、各メモリユニット30~30は、4つのメモリバンクを含む。4つのメモリバンクのみを図1に示してあるが、所望される任意の数のメモリバンクを各メモリユニット30~30内に設けることができる。各メモリバンクは、行および列をもつ、グリッド状のパターンに編成される。各行は、メモリページ36として知られている。メモリ26内のメモリロケーションにアクセスするために、メモリコントローラ28は、チップ選択CS~CSをアサートし、ADDRCTRLバス上のアドレスで指示された特定のメモリページ36をアクティブ化するメモリページオープンコマンドを発行する。このコマンドは通常、数クロック周期かかる。所望のメモリページ36が開かれた後、列アドレス38が、所望のメモリロケーションにあるデータにアクセスするために読取りまたは書込みコマンドのいずれかとともに、メモリコントローラ28によって発行される。メモリバンク34中の別のメモリページ36へのアクセスが要求されると、メモリコントローラ28は、現在アクティブ化されているメモリページ36を非アクティブ化し、または閉じなければならず、これには通常、数クロック周期かかる。メモリバンク34の所与の1つにおいて同じメモリページ36への順次または一連のメモリアクセスが行われる場合、アクセスの後にメモリページ36が開いたままにされる場合はクロック周期を節約することができる。このようにして、同じメモリページ36への後続メモリアクセスは、メモリページ36を開き直すことを必要としない。総クロック周期節約の量は、同じメモリページ36への順次または一連メモリアクセスの回数に依存する。ただし、メモリアクセスが、異なるメモリページ36に対してしばしば行われる場合、アクセスの後にメモリページ36を開き続け、または開いたままにすると、クロック周期ペナルティが生じ得る。クロック周期ペナルティの量は、異なるメモリページ36への後続メモリアクセスの回数に依存し得る。クロック周期ペナルティの量は、メモリコントローラ28がメモリアクセス要求に応答してどれだけ待たなければならないかを支配する、メモリ26の特定のタイミングパラメータにも依存し得る。本実施形態では、メモリユニット30~30はダイナミックメモリである。各メモリユニット30~30は、DDR0およびDDRNと標示された、16ビットのダブルデータレートダイナミックランダムアクセスメモリチップである。この点について、メモリユニット30~30へのアクセスを制御するメモリコントローラ28は、DDRメモリコントローラであり得る。メモリユニット30~30は、どのタイプのダイナミックメモリでもよい。例として、同期DRAM、ダブルデータレートSDRAM、DDR2DRAM、DDR3DRAM、モバイルDDRDRAM、低電力DDRDRAMおよびLPDDR2DRAMがある。メモリユニット30~30は、ダイナミックメモリ以外の他のタイプのメモリでもよい。メモリコントローラ28は、メモリユニット30~30に適合する、どのタイプのメモリコントローラでもよい。さらに、メモリコントローラ28またはメモリシステム24は、マザーボードまたは他のプリント回路基板上に別個のデバイスとして設けることもでき、バス相互接続16を含む同じ半導体ダイ22に統合することもでき、こうすると待ち時間を削減することができる。さらに、マスタデバイス12も、バス相互接続16を含む同じ半導体ダイ22に統合することができる。図1のマスタデバイス12は、バス相互接続16に接続されたメモリシステム24によって担当されるべき単一ビートまたはバーストトランザクションをバス相互接続16に提供することができる。図1のマスタデバイス12は、メモリシステム24によって担当されるべきストリームトランザクションをバス相互接続16に提供することもできる。ストリームトランザクションは、大量のデータを効率的に移動するのに使われ得る。メモリシステム24へのストリームトランザクションは、単一トランザクション要求の一部として転送されるべき、より多くの量のデータを与えるためのバーストのスーパーセットからなり得る。ストリームトランザクションの例が、図2に示される。図2のこの例では、256個のデータバーストがあり、各バーストは4データビートからなる。スレーブデバイス14は、マスタデバイス12によってスレーブデバイス14に対してあらかじめ要求されたストリームトランザクションに応答して、バス相互接続16上でのバーストデータトランザクションのスーパーセット42からなるデータストリーム40を与える。たとえば、この例におけるマスタデバイス12は、メモリ26から大量のデータを受け取り、DMAコントローラに結合された他のデバイスに転送するように構成されたDMAコントローラでよい。ストリームトランザクションは、今後のメモリアクセスについての有限情報およびバス相互接続16上での関連データ転送トラフィックを与えるので、クロック周期効率という点で、ストリームトランザクションに関する情報を使って、メモリコントローラ28によって適用されるページ管理ポリシーを決定することが有利であり得る。たとえば、ストリームトランザクションのための現在アクセスされているメモリページが、別の保留ストリームトランザクションによってアクセスされるべき次のメモリページである場合、メモリアクセス後に現在のメモリページを開いたままにするためのページ管理ポリシーを適用することがより効率的であり得る。別の例として、ストリームトランザクションの処理中にページ横断が次に起こる場合、現在のメモリページにおける最終アクセス後に現在のメモリページを閉じるためのページ管理ポリシーを適用することがより効率的であり得る。同じメモリバンクへのアクセスとともに複数のストリームトランザクションがアクティブである場合、限定はしないが、すべてのストリームトランザクションが期限付きであるかどうか、ただ1つのストリームトランザクションが期限付きであるかどうか、およびまたはストリームトランザクションが期限を過ぎているかどうかを含むストリームトランザクション属性に依存して、現在のストリームトランザクションのためのメモリページを開いたままにし、または閉じるためのページ管理ポリシーを適用することが効率的であり得る。この点について、図3は、ストリームトランザクションを含み得るメモリアクセス要求を処理するための、図1のメモリコントローラ28によって実施される全体的な例示的プロセスを示すフローチャートである。ストリームトランザクションに対して、メモリコントローラ28は、ストリームトランザクションに関連した情報に基づいて、ページ管理ポリシーを決定し、メモリに適用するように構成される。図3を参照すると、メモリコントローラ28は、メモリアクセス要求キュー29から次の未完メモリアクセス要求を取り出す。メモリコントローラ28は、取り出されたメモリアクセス要求がストリームトランザクション用であるかどうか判定する。そうでない場合、メモリコントローラ28は、メモリ26へのメモリアクセスを実施し、ストリームトランザクション情報に基づかないデフォルトのページ管理ポリシーを適用することができる。ただし、メモリアクセス要求がストリームトランザクション用である場合、メモリコントローラ28は、ストリームトランザクションが新規であるか、それとも現在進行中であるか判定すればよい。新規でまだ進行していない場合、メモリコントローラ28は、ストリームトランザクションをセットアップし、開始する。その後、メモリコントローラ28は、メモリアクセス要求のアドレスを含む、メモリ26中のメモリページ36にアクセスすることによって、ストリームトランザクションにおける次のメモリアクセスを実施する。メモリコントローラ28は次いで、ストリームトランザクションに関する情報に基づいて、アクセスされるメモリページ36にページ管理ポリシーを適用する。処理中のストリームトランザクションが完了した場合、メモリコントローラ28は、メモリアクセス要求キュー29から次の未完メモリアクセス要求を取り出し、プロセスは繰り返す。ストリームトランザクションが完了していない場合、メモリコントローラ28は、メモリ26へのアクセスの制御が、メモリアクセス要求キュー29中の別のメモリアクセスに与えられるべきかどうか判定する。たとえば、メモリコントローラ28は、現在のメモリアクセス要求が完了する前に、メモリアクセス要求キュー29中の次のメモリアクセス要求に切り替えるように構成され得る。完了前の、ストリームトランザクションのためのメモリアクセス要求からの切替えは、メモリコントローラ28によって他のメモリアクセス要求が奪われることがないように実施することができる。また、別の例として、メモリアクセス要求キュー29中の他のストリームトランザクションが、処理中の現在のストリームトランザクションよりも重要な期限およびまたは高い優先度をもつ場合、ストリームトランザクションを切り替えればよい。制御が、現在のストリームトランザクションに関して譲渡されるべきである場合、メモリコントローラ28は、現在のストリームトランザクションについての進行情報を、後でストリームトランザクションが続けられ得るように、メモリ要求アクセスキュー29に記憶する。メモリコントローラ28は次いで、メモリアクセス要求キュー29から次の未完メモリアクセス要求を取り出し、プロセスは繰り返す。処理中の現在のストリームトランザクションについて制御が譲渡されるべきでない場合、メモリコントローラ28は、メモリアクセス要求のアドレスを含む、メモリ26中のメモリページ36にアクセスすることによって、ストリームトランザクションにおける次のメモリアクセスを実施する。メモリコントローラ28は次いで、ストリームトランザクションに関する情報に基づいて、アクセスされるメモリページ36にページ管理ポリシーを適用する。図4Aおよび図4Bは、ストリームトランザクションに関連した情報に基づいてページ管理ポリシーを適用するメモリコントローラの例示的なプロセスを示すフローチャートである。図4Aおよび図4Bに示すプロセスは、一例として、図1のメモリコントローラ28によって、図3のブロック60の一部として実施することができる。この点について、図4Aおよび図4Bを、図1のシステム10およびメモリコントローラ28に関して論じる。ただし、図4Aおよび図4Bのプロセスは、ページ管理ポリシーが与えられ適用される、所望のどのシステムでも利用することができる。図4Aを参照すると、メモリコントローラ28は、現在のメモリアクセス要求のためにアクセスされるべきメモリバンク34およびメモリページ36を決定する。上で論じたように、メモリコントローラ28によって処理されるメモリアクセス要求は、メモリアクセス要求キュー29に記憶することができる。メモリコントローラ28は次いで、たとえば図5の内部レジスタ66などの内部レジスタを照会して、アクセスされるべきメモリページ36がすでに開かれているかどうか判定する。図5の例において、内部レジスタ66は、メモリ26内のメモリバンク34ごとに設けられる。内部レジスタ66は、所与のメモリバンク34に関して、最後にアクセスされたメモリページ36、およびページオープンレジスタ69によって指示されたメモリページ36が現在開いているかどうかを記憶するためのメモリバンクレジスタ68を含む。アクセスされるべきメモリページ36がまだ開いてない場合、メモリコントローラ28は、メモリアクセス要求に対応するメモリページ36を開く。メモリコントローラ28はその後、メモリアクセス要求中のメモリロケーションにアクセスする。図4Aのブロック72で、図5のページオープンレジスタ69によって判定されたように、アクセスされるべきメモリページ36がすでに開いている場合、メモリコントローラ28は、メモリアドレスを含むメモリページ36を開く必要なく、メモリアクセス要求において要求されたメモリロケーションに直接アクセスすることができる。メモリアクセス中のメモリロケーションが要求された後、メモリコントローラ28は次いで、メモリアクセス要求のために開いているメモリページ36に適用されるべきページ管理ポリシーを決定する。決定されたページ管理ポリシーに依存して、メモリコントローラ28は、メモリアクセスの後、現在のメモリページ36を開いたままにし、または現在のメモリページ36を閉じればよい。本実施形態におけるメモリコントローラ28は、ストリームトランザクションに関連した情報に基づいてページ管理ポリシーを決定することができる。この点について、メモリコントローラ28は、現在のメモリアクセス要求を含むアクティブストリームトランザクションがメモリアクセス要求キュー29にあるかどうか判定する。ない場合、メモリコントローラ28は、ストリームトランザクションにかかわらず、デフォルトのページ管理ポリシーを決定し、プロセスが終わる前に、現在のメモリアクセス要求におけるメモリページ36を閉じるか、または現在のメモリアクセス要求におけるメモリページ36を開いたままにする。アクティブストリームトランザクションがある場合、メモリコントローラ28は、ストリームトランザクション情報に基づいて、メモリアクセスの後、現在開いているメモリページ36のためのページ管理ポリシーを決定する。図6~図8に関して後でより詳しく論じるように、ストリームトランザクション情報に基づくページ管理ポリシーは、メモリコントローラによって様々な非限定的やり方で与えられ得る。ページ管理ポリシーが、現在のメモリアクセス要求におけるメモリページ36を閉じることを認める場合、メモリコントローラ28は、プロセスが終わる前に、現在開いているメモリページ36を閉じ、閉じることを認めない場合、現在開いているメモリページ36は、プロセスが終わる前に、開いたままにされる。メモリコントローラがストリームトランザクション要求をサポートするために、ストリームトランザクションに関する情報がメモリコントローラに与えられる。ストリームトランザクション情報は、本質的に、ストリームトランザクションをどのように実施するかをメモリコントローラに命令する情報を与える。たとえば、図1に関して、メモリコントローラ28は、ストリームトランザクションに関連した情報を、マスタデバイス12からバス相互接続16を介して受け取る。本明細書で論じるように、メモリコントローラ28はまた、このストリームトランザクション情報を使って、メモリアクセスの後、メモリに適用されるべきページ管理ポリシーを決定する。この点について、図5は、ストリームトランザクションをサポートするように構成された図1のメモリコントローラ28内のメモリアクセス要求キュー29として使うことができる例示的なメモリアクセス要求キュー29Aの図である。メモリアクセス要求キュー29Aは、内部レジスタまたはメモリコントローラ28の内部もしくは外部にあるとともにコントローラ28によってアクセス可能な他のメモリ内に設けられ得る。メモリアクセス要求キュー29Aは、0~N個のメモリアクセス要求を保持するように構成されたテーブルからなる。図5は、バストランザクションを要求するマスタデバイス12を識別するために、メモリアクセス要求キュー29A中で与えられる例示的なマスタ識別子92の図を含む。この例では、マスタ識別子92は、10ビットのワードである。上位2ビットは、特定のメモリアクセス要求に関与した4つの個別ファブリックの識別を可能にするファブリック識別子100を含む。中央4ビットは、マスタデバイス12を識別するマスタデバイス識別子102である。したがって、この例では、16個の一意のマスタデバイス12が可能である。2ビットは、提供された、または適用可能であるマスタデバイス12に結合されたサブマスタデバイスを識別するサブマスタデバイス識別子104を含む。したがって、この例では、4個の一意のサブマスタデバイスが可能である。下位2ビットは、マスタデバイス12およびまたはサブマスタデバイスに、所望されるどの属性情報も提供させるのに使うことができる属性識別子106を含む。たとえば、ソフトウェアプロセスまたはスレッドの識別は、マスタデバイス12およびまたはサブマスタデバイスに、メモリアクセス要求を担うソフトウェアプロセスまたはスレッドを識別させるために、属性識別子106中で与えることができる。所望される他のどの情報も、属性識別子106に含めることができる。図5は、ストリームトランザクションを実施するためのストリームトランザクション情報をマスタデバイス12がメモリコントローラ28に与えるようにする図1のバス相互接続16によってサポートされるバスプロトコル用の例示的な制御ブロック90の図も与える。制御ブロック90は、アービタ20およびメモリコントローラ28が、マスタデバイス12からのトランザクション要求を実施できるようにする制御情報を含む。たとえば、制御ブロック90は、アービタ20へのメモリアクセス要求の要求元に関連付けられた識別子を含むマスタ識別子92を含む。アービタ20は、マスタ識別子92を使って、どのマスタデバイス12が、メモリコントローラ28を含むスレーブデバイス14から受信された応答を受け取るべきか決定する。メモリアクセス要求に関してアドレス指定されるべきアドレスは、アドレスフィールド94中で与えられる。メモリアクセス要求が読取りトランザクションであるか、それとも書込みトランザクションであるかは、読取り書込みフィールド96中で与えられる。ストリーム識別子ブロック98が、この例ではメモリアクセス要求であるバストランザクションについてのストリームトランザクション情報を提供するために与えられる。図5は、図5の制御ブロック90中でストリーム識別子ブロック98として使われ得るとともにメモリアクセス要求キュー29A中で与えられる例示的なストリーム識別子ブロックの図も含む。ストリーム識別子ブロック98は、図1のメモリコントローラ28を含むメモリコントローラが、ストリーム識別子ブロック98に関連するストリームトランザクションを実施できるようにする情報を提供するストリームトランザクションに関連した例示的な情報を含む。ストリーム識別子ブロック98は、図1のメモリコントローラ28を含むメモリコントローラによって、メモリアクセス後にメモリに適用されるべきページ管理ポリシーを決定するのに使われ得るストリームトランザクションに関連した例示的な情報も含む。マスタデバイス12は、相互接続バス16上でストリームトランザクションを要求するとき、ストリーム識別子ブロック98中で情報を提供する。図5に示すように、ストリーム識別子ブロック98は、ストリームトランザクションを識別するストリーム識別子フィールド108を含む。転送回数フィールド110は、ストリームトランザクションに関連付けられたバースト転送の回数を与える。ビート数フィールド112は、バースト転送ごとに実施されるべきデータ転送のビートの数を与える。バイト数フィールド114は、各ビート転送中に転送されるべきデータバイトの数を与える。バイト数フィールド114は、バス相互接続16およびスレーブデバイス14のアーキテクチャに依存して、設定可能であっても、固定値であってもよい。ストリームトランザクションに関連付けられた期限がある場合、期限情報は、期限フィールド116に記憶すればよい。たとえば、マスタデバイス12が、クロック周期、ビート、または他の相対もしくは絶対タイミングで表され得る一定のタイミング内に特定のストリームトランザクションが完了されることを要求する場合がある。優先度がストリームトランザクションに関連付けられるようにする優先度フィールド118も与えられる。優先度フィールド118は、設計に依存して、マスタデバイス12、アービタ20、またはスレーブデバイス14によって供給およびまたは変更されるように構成され得る。このストリーム情報のいずれも、メモリコントローラ28によって、ページ管理ポリシーを決定するのに使うことができる。図1のメモリコントローラ28は、この例では図5の制御ブロック90を含むメモリアクセス要求をアービタ20から受け取り、メモリアクセス要求をメモリアクセス要求キュー29Aに記憶する。キュー番号フィールド120が、メモリアクセス要求キュー29Aに記憶されたメモリアクセス要求に索引付けするのに使われる。この例におけるメモリアクセス要求キュー29A中の各メモリアクセス要求エントリは、メモリアクセス要求を開始したマスタデバイス12を識別するためのマスタ識別子フィールド92を含む。メモリアクセス要求エントリは、受信された制御ブロック90中のアドレスフィールド94中のアドレスに基づいてメモリコントローラ28によって決定された、チップ選択フィールド122、メモリバンクフィールド124、およびメモリページフィールド126も含む。メモリアクセス要求がストリームトランザクションである場合、メモリアクセス要求エントリごとに、ストリームトランザクション情報を記憶するためのストリーム識別子ブロック98も与えられる。ストリームトランザクションがメモリコントローラ28によって実施されるとき、メモリコントローラ28に、ストリームトランザクションに対するメモリアクセス要求の進行を記憶させるための残余転送数フィールド128も与えられる。異なる1つの基準または複数の基準が、図1のメモリコントローラ28を含むメモリコントローラによって、ストリームトランザクションに関連した情報に基づいてページ管理ポリシーを決定するのに使われ得る。本開示は、どの特定の複数の基準または1つの基準にも限定されない。図6は、アクセスされている現在のメモリページが、保留ストリームトランザクションによってアクセスされるべき次のメモリページであるかどうかに基づいて、ページ管理ポリシーを適用する1つの例示的基準およびプロセス88Aのフローチャートである。このプロセスは、図4Aのブロック88の一部として実施することができる。図6に示すように、メモリコントローラ28によるメモリアクセスの後、メモリコントローラ28は、アクセスされている現在のメモリページ36が、メモリ要求アクセスキュー29A中で保留中のストリームトランザクションによってアクセスされるべき次のメモリページであるかどうか判定する。保留ストリームトランザクションは、処理中の現在のストリームトランザクションの後続部分でも、メモリ要求アクセスキュー29A中の別のストリームトランザクションでもよい。次のメモリページではない場合、メモリコントローラ28は、メモリアクセス後にデフォルトのページ管理ポリシーを適用すればよく、このポリシーは、アクセスの後に現在のメモリページ36を閉じ、またはアクセスの後に現在のメモリページ36を開いたままにするかのいずれかである。図6の参照を続けると、アクセスされている現在のメモリページ36が、メモリ要求アクセスキュー29A中で保留中のストリームトランザクションによってアクセスされるべき次のメモリページであるとメモリコントローラ28が判断した場合、現在のメモリページ36を開いたままにすることが望ましい場合がある。このシナリオでは、少なくとも1つのストリームトランザクションが、開いている現在のメモリページ36へのメモリアクセスを要求することが分かっている。この事例において、メモリコントローラ28は、現在のメモリページ36を開いたままにすればよい。あるいは、メモリコントローラ28は、メモリアクセス要求キュー29A中のストリーム識別子ブロック98中の期限フィールド116中で与えられるように、保留ストリームトランザクションがその期限を過ぎている場合にのみ、現在のメモリページ36を開いたままにすればよく、過ぎていない場合は、メモリコントローラ28は、現在のメモリページ36を閉じればよいであろう。その後、現在のメモリアクセス要求は終わる。図7は、ページ管理ポリシーを適用するメモリコントローラの別の例示的な基準およびプロセス88Bのフローチャートである。この例では、メモリコントローラは、現在のストリームトランザクションによってアクセスされるべき次のメモリページが、現在のストリームトランザクションによってアクセス中の現在のメモリページではないかどうかに基づいてページ管理ポリシーを適用する。このことは、現在のメモリページ36においてページ横断または行横断が起こり、したがって次のメモリページアクセスに先立って、アクセスの後に現在のメモリページ36を閉じることが有利であり得ることを意味する。このプロセスは、図4Aのブロック88の一部として実施することができる。図7に示すように、メモリコントローラ28によるメモリアクセスの後、メモリコントローラ28は、処理中の現在のストリームトランザクションによってアクセスされるべき次のメモリページが、現在のメモリページ36ではないかどうか判定する。現在のメモリページではない場合、デフォルトのページ管理ポリシーをメモリコントローラ28によって適用すればよく、このポリシーは、アクセスの後に現在のメモリページ36を閉じるものであり得る。現在のメモリページである場合、このことは、ストリームトランザクションのための次のメモリアクセスに対して行横断が起こらないことを意味する。この事例において、メモリコントローラ28は、現在のメモリアクセス要求が終わる前に、アクセス後に現在のメモリページ36を開いたままにすればよい。図8は、ページ管理ポリシーを適用するメモリコントローラの別の例示的な基準およびプロセス88Cのフローチャートである。この例では、メモリコントローラは、メモリ中の同じメモリバンクを伴う2つ以上のストリームトランザクションがアクティブであるかどうかに基づいてページ管理ポリシーを適用し、アクティブである場合、さらなる1つの基準または複数の基準に基づく。このプロセスは、図4Aのブロック88の一部として実施することができる。図8に示すように、メモリコントローラ28によるメモリアクセスの後、メモリコントローラ28は、同じメモリバンクへの2つ以上の保留ストリームトランザクションが存在するかどうか判定する。存在しない場合、メモリコントローラ28は、デフォルトのページ管理ポリシーを適用すればよい。同じメモリバンクへの2つ以上の保留ストリームトランザクションが存在する場合、メモリコントローラ28は、保留ストリームトランザクションのうちただ1つ、それとも複数が期限付きであるか判定すればよい。期限付きストリームトランザクションとは、ストリームトランザクションを完了するのに、時間的な期限要件があるストリームトランザクションである。たとえば、ストリームトランザクションが、X個のビートのN回の部分転送からなる場合、ストリームトランザクションに関連付けられた期限は、部分転送の各々1つを完了するための時間であり得る。あるいは、ストリームトランザクションに関連付けられた期限は、すべての部分転送を完了するための時間であり得る。さらに、期限は、部分転送と完了した転送の両方に関連付けられ得る。一例として、ストリームトランザクションのための期限は、たとえば、ストリームトランザクションの転送に関与するすべてのエンティティが、共通時間値で期限が決定され得る共通クロックソースをもつ場合など、クロック周期で設けることができる。別の例として、ストリームトランザクションのための期限は、ストリームトランザクションの転送に関与するエンティティによって算出される絶対時間で設けることができる。保留ストリームトランザクションの中でただ1つのストリームトランザクションが期限付きである場合、期限付きストリームトランザクションには、期限付きストリームトランザクションのためのメモリアクセス時間を削減するために、アクセスの後に期限付きストリームトランザクションのためにメモリページを開いたままにすることによって、優先度が与えられ得る。この点について、メモリコントローラ28が、期限付きストリームトランザクションを現在処理している場合、メモリコントローラ28は、現在のメモリアクセス要求を終了する前に、処理中のストリームトランザクション用に、現在のメモリページ36を開いたままにすればよい。メモリコントローラ28が、期限付きストリームトランザクションを現在処理していない場合、メモリコントローラ28は、所望される場合は、現在のメモリアクセス要求に対して、デフォルトのページ管理ポリシーを適用すればよい。ブロック152で、複数の保留ストリームトランザクションが期限付きである場合、メモリコントローラ28は、期限付き保留ストリームトランザクションのうち1つ、それとも複数がその期限を過ぎているか判定する。ただ1つの保留ストリームトランザクションが期限付きである場合、およびメモリコントローラ28がこの期限付きストリームトランザクションを現在処理中である場合、メモリコントローラ28は、現在のメモリページ36を開いたままにする。メモリコントローラ28が、期限を過ぎているストリームトランザクションを現在処理中でない場合、メモリコントローラ28は、デフォルトのページ管理ポリシーを適用すればよい。ただし、複数の保留ストリームトランザクションが期限付きである場合、メモリコントローラ28は、処理中の現在のストリームトランザクションが、現在処理中でない他の保留ストリームトランザクションよりも高い優先度をもつかどうか判定する。図5のストリーム識別子ブロック98中の優先度フィールド118は、この点について、現在のストリームトランザクションおよび他の保留ストリームトランザクションに関して照会され得る。処理中の現在のストリームトランザクションが、現在処理中でない他の保留ストリームトランザクションよりも高い優先度をもつ場合、メモリコントローラ28は、現在のメモリページ36を開いたままにしてよく、それ以外の場合、メモリコントローラ28は、デフォルトのページ管理ポリシーを適用すればよい。現在のストリームトランザクション向けに与えられた優先度フィールド118がない場合、または優先度フィールド118が与えられ、2つ以上の競合する期限付きストリームトランザクションが優先度フィールド118中で同じ優先度をもつ場合、優先度判定は、他のやり方で行ってよい。たとえば、優先度判定は、メモリコントローラ28によってページ管理ポリシー決定が行われなければならない所与の時点で各ストリームトランザクションがどれだけ遅れ、または進んでいるかを示す符号化値で決定することができる。すべての競合する期限付きストリームトランザクションが遅れている場合、符号化値は、各ストリームトランザクションがどれだけ遅れているかを示すことができ、この遅れは、ページ管理ポリシーにおいてどのメモリページが開いたままにされるか決定するのに使うことができる。図6~図8にあるものを含む、本明細書におけるページ管理ポリシー例は、単独で、または所望される組合せのうちいずれでも提供され得ることに留意されたい。また、本明細書で開示するページ管理ポリシーのいずれかまたはすべては、図1に示すように、コンピュータ可読媒体33中のソフトウェア命令を実行するコントローラ31を含んでも含まなくてもよい、回路によるメモリコントローラ28によって実施され得る。他のページ管理ポリシー基準が、メモリコントローラ28によって、ページ管理ポリシーを適用するのに使われ得る。本明細書で開示する実施形態による、ページ管理ポリシーを適用するためのメモリコントローラ、システム、方法、およびコンピュータ可読媒体は、メモリへのアクセスを制御するためのどのプロセッサベースのデバイスでも提供すること、または統合することができる。例として、限定されないが、セットトップボックス、娯楽機器、ナビゲーションデバイス、通信デバイス、固定ロケーションデータユニット、モバイルロケーションデータユニット、モバイルフォン、セルラーフォン、コンピュータ、ポータブルコンピュータ、デスクトップコンピュータ、携帯情報端末、モニタ、コンピュータモニタ、テレビ、チューナ、ラジオ、衛星ラジオ、音楽プレーヤ、デジタル音楽プレーヤ、ポータブル音楽プレーヤ、デジタルビデオプレーヤ、ビデオプレーヤ、デジタルビデオディスクプレーヤ、およびポータブルデジタルビデオプレーヤが含まれる。この点について、図9は、図1に示すシステム10の構成要素を利用することができるプロセッサベースのシステム170の例を示す。この例では、プロセッサベースのシステム170は、1つまたは複数のプロセッサ174を各々が含む1つまたは複数の中央処理装置172を含む。CPU172は、マスタデバイスであり得る。CPU172は、一時記憶データへの高速アクセスのためにプロセッサ174に結合されたキャッシュメモリ176を有し得る。CPU172はシステムバス180に結合され、システムバス180は、プロセッサベースのシステム170に含まれる他のデバイスを相互に結合する。システムバス180は、図1のバス相互接続16のようなバス相互接続でよい。よく知られているように、CPU172は、アドレス情報、制御情報、およびデータ情報をシステムバス180を通じて交換することによって、これらの他のデバイスと通信する。たとえば、CPU172は、スレーブデバイスとしてのメモリコントローラ28への通信を介して、メモリアクセス要求を外部メモリに伝達することができる。図9には示さないが、複数のシステムバス180を設けてもよく、この場合、各システムバス180は異なるファブリックを構成する。他のマスタおよびスレーブデバイスが、システムバス180に接続され得る。図9に示されるように、これらのデバイスは、例として、メモリシステム24、1つまたは複数の入力デバイス184、1つまたは複数の出力デバイス186、1つまたは複数のネットワークインターフェースデバイス188、ならびに1つまたは複数のディスプレイコントローラ190を含み得る。入力デバイス184は、入力キー、スイッチ、音声プロセッサなどを含むが、それに限定されない、どのタイプの入力デバイスも含み得る。出力デバイス186は、オーディオ、ビデオ、他の視覚インジケータなどを含むが、それに限定されない、どのタイプの出力デバイスも含み得る。ネットワークインターフェースデバイス188は、ネットワーク192との間でデータの交換をさせるように構成されたどのデバイスでもよい。ネットワーク192は、限定はされないが、有線ネットワークまたはワイヤレスネットワーク、非公開ネットワークまたは公開ネットワーク、ローカルエリアネットワーク、ワイドローカルエリアネットワーク、およびインターネットを含む、任意の種類のネットワークであってよい。ネットワークインターフェースデバイス188は、所望の任意の種類の通信プロトコルをサポートするように構成され得る。メモリシステム24は、メモリ26に結合されたメモリコントローラ28を含んでもよい。メモリ26は、図1のメモリシステム10に設けられるような、1つまたは複数のメモリユニット30~30を含み得る。アービタ20は、メモリユニット30~30へのアクセスを制御するために図1のメモリシステム24に設けられるように、システムバス180とメモリユニット30~30との間に設けることができる。CPU172はまた、システムバス180を通じてディスプレイコントローラ190にアクセスして、1つまたは複数のディスプレイ194に送られる情報を制御するようにも構成され得る。ディスプレイコントローラ190は、1つまたは複数のビデオプロセッサ196を介して表示されるべき情報を、ディスプレイ194に送り、ビデオプロセッサ196は、表示されるべき情報を、ディスプレイ194に適切なフォーマットとなるように処理する。ディスプレイ194は、限定はされないが、陰極線管、液晶ディスプレイ、プラズマディスプレイなどを含む、任意の種類のディスプレイを含み得る。CPU172およびディスプレイコントローラ190は、システムバス180を介してアービタ20へのメモリアクセス要求を行うためのマスタデバイスとして作用し得る。CPU172およびディスプレイコントローラ190内の異なるスレッドが、アービタ20への要求を行うことができる。CPU172およびディスプレイコントローラ190は、上で記載したように、アービタ20にマスタ識別子92を与えて、メモリシステム24へのメモリアクセスを要求すると決定することができる。本明細書で開示される実施形態とともに説明される様々な例示的な論理ブロック、モジュール、回路、およびアルゴリズムは、電子的なハードウェアとして、メモリもしくは別のコンピュータ可読媒体に記憶されプロセッサもしくは他の処理デバイスにより実行される命令として、またはこれら両方の組合せとして実装され得ることが、当業者にはさらに理解されよう。本明細書に記載したメモリコントローラ、アービタ、マスタデバイス、およびサブマスタデバイスは、例として、どの回路、ハードウェア構成要素、集積回路、またはICチップ内でも利用することができる。メモリは、どのタイプおよびサイズのメモリでもよく、所望されるどのタイプの情報も記憶するように構成され得る。この互換性を明確に示すために、上記では、様々な例示的構成要素、ブロック、モジュール、回路、およびステップは全般的に、それらの機能に関して説明されている。そのような機能がどのように実装されるかは、具体的な用途、設計の選択、およびまたはシステム全体に課される設計制約により決まる。当業者は、説明した機能を特定の適用例ごとに様々な方法で実装し得るが、そのような実装の決定は、本発明の範囲からの逸脱を生じるものと解釈すべきではない。本明細書で開示する実施形態に関して説明する様々な例示的な論理ブロック、モジュール、および回路は、プロセッサ、DSP、特定用途向け集積回路、FPGAもしくは他のプログラマブル論理デバイス、個別ゲートもしくはトランジスタ論理回路、個別ハードウェア構成要素、または本明細書で説明する機能を実行するように設計されたそれらの任意の組合せで実装または実行することができる。たとえば、バス相互接続は、ソフトウェア命令を実行することができる、フィールドプログラム可能ゲートアレイ、非同期同期集積回路、コントローラ、マイクロコントローラもしくはマイクロプロセッサ、またはそれらのどの組合せによっても提供され得る。プロセッサはマイクロプロセッサであり得るが、代替として、プロセッサは任意の従来のプロセッサ、コントローラ、マイクロコントローラ、または状態機械であり得る。プロセッサはまた、コンピューティングデバイスの組合せ、たとえば、DSPとマイクロプロセッサとの組合せ、複数のマイクロプロセッサ、DSPコアと連携する1つまたは複数のマイクロプロセッサ、あるいは任意の他のそのような構成として実装され得る。本明細書で開示される実施形態は、ハードウェアで具現化されてよく、ハードウェアに記憶される命令により具現化されてよく、たとえば、ランダムアクセスメモリ、フラッシュメモリ、読取り専用メモリ、電気的にプログラム可能なROM、電気的に消去可能なプログラム可能ROM、レジスタ、ハードディスク、リムーバブルディスク、CDROM、または、当技術分野で知られている任意の他の形態のコンピュータ可読媒体に、存在し得る。例示的な記憶媒体は、プロセッサが記憶媒体から情報を読み取り、記憶媒体に情報を書き込むことができるように、プロセッサに結合される。代替として、記憶媒体はプロセッサと一体であり得る。プロセッサおよび記憶媒体はASIC中に存在し得る。ASICは遠隔局に存在し得る。代替的には、プロセッサおよび記憶媒体は、遠隔局、基地局、またはサーバの中に、個別の構成要素として存在し得る。本明細書の例示的な実施形態のいずれかで説明された動作ステップは、例および議論を提供するために説明されたものであることにも、留意されたい。説明された動作は、例示された順序以外の多くの異なる順序で実行されてもよい。さらに、単一の動作ステップで説明される動作は、実際には、多くの異なるステップで実行され得る。加えて、例示的な実施形態において論じられた1つまたは複数の動作ステップは、組み合わされてもよい。流れ図において例示される動作ステップは、当業者に容易に明らかとなるような多くの異なる修正を受けてもよいことを、理解されたい。情報および信号は、多種多様な技術および技法のいずれかを使用して表され得ることも、当業者には理解されよう。たとえば、上記の説明全体にわたって言及され得るデータ、命令、コマンド、情報、信号、ビット、シンボル、およびチップは、電圧、電流、電磁波、磁界または磁性粒子、光場または光学粒子、あるいはそれらの任意の組合せによって表され得る。本開示の前述の説明は、いかなる当業者でも本開示を作成または使用することができるように提供される。本開示への様々な修正は当業者には容易に明らかであり、本明細書で定義した一般原理は、本開示の趣旨または範囲から逸脱することなく他の変形形態に適用できる。したがって、本開示は、本明細書で説明した例および設計に限定されることを意図するものではなく、本明細書で開示する原理および新規の特徴に一致する最も広い範囲を与えられるべきである。