JP6113964B2 - 動的ポート優先割当能力を有しているメモリコントローラー - Google Patents
動的ポート優先割当能力を有しているメモリコントローラー Download PDFInfo
- Publication number
- JP6113964B2 JP6113964B2 JP2012121896A JP2012121896A JP6113964B2 JP 6113964 B2 JP6113964 B2 JP 6113964B2 JP 2012121896 A JP2012121896 A JP 2012121896A JP 2012121896 A JP2012121896 A JP 2012121896A JP 6113964 B2 JP6113964 B2 JP 6113964B2
- Authority
- JP
- Japan
- Prior art keywords
- priority value
- memory
- circuit
- priority
- memory controller
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1605—Handling requests for interconnection or transfer for access to memory bus based on arbitration
- G06F13/161—Handling requests for interconnection or transfer for access to memory bus based on arbitration with latency improvement
- G06F13/1626—Handling requests for interconnection or transfer for access to memory bus based on arbitration with latency improvement by reordering requests
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1605—Handling requests for interconnection or transfer for access to memory bus based on arbitration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/18—Handling requests for interconnection or transfer for access to memory bus based on priority control
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Logic Circuits (AREA)
- Multi Processors (AREA)
- Bus Control (AREA)
Description
プログラマブル集積回路は、ユーザーによって、カスタム論理機能を実装するように構成され得る1つのタイプの集積回路である。典型的なシナリオにおいて、論理設計者は、カスタム論理回路を設計するためにコンピュータ支援設計(CAD)ツールを用いる。設計処理が完了すると、CADツールは、構成データを生成する。構成データは、プログラマブル集積回路にロードされ、デバイスを所望の論理機能を行うように構成する。
プログラマブル集積回路のような集積回路がシステムメモリと通信するために用いられ得る。プログラマブル集積回路は、複数のモジュールを形成するように構成され得る再構成可能回路を含む。複数のモジュールの各々は、システムメモリへのアクセスを必要とするタスクを行うように動作可能である。プログラマブル集積回路は、異なるモジュールとシステムメモリとの間のインターフェースとして作用するメモリコントローラーも含み得る。さまざまなモジュールがメモリコントローラーに結合され得、時に、本明細書において、「マスター」処理モジュールと呼ばれ得る。
(項目1)
メモリにアクセスするように動作可能な集積回路であって、
該集積回路は、
メモリアクセスリクエストを生成するように動作可能なプログラマブルマスター回路と、
メモリコントローラーであって、該メモリコントローラーは、該メモリアクセスリクエストを該プログラマブルマスター回路から第1および第2のポートにおいて受信するように動作可能であり、該メモリーコントローラーは、該メモリアクセスリクエストを実行するために、該メモリにアクセスするように動作可能であり、該メモリコントローラーは、該メモリアクセスリクエストを順番に実行するように動作可能である、メモリコントローラーと、
該メモリコントローラーが該メモリアクセスリクエストを実行する順番を制御するように動作可能である制御回路と
を含む、集積回路。
(項目2)
上記メモリコントローラーは、非プログラマブルメモリコントローラーを含む、上記項目のいずれかに記載の集積回路。
(項目3)
上記メモリコントローラーは、優先値に基づく順番で上記メモリにアクセスすることによって、上記メモリアクセスリクエストを実行するようにさらに動作可能であり、上記集積回路は、該優先値を格納するように動作可能な更新レジスタをさらに含む、上記項目のいずれかに記載の集積回路。
(項目4)
シフトレジスタ回路をさらに含み、該シフトレジスタ回路は、上記優先値を上記更新レジスタに提供する、上記項目のいずれかに記載の集積回路。
(項目5)
アドレス指定可能レジスタ回路をさらに含み、該アドレス指定可能レジスタ回路は、上記優先値を上記更新レジスタに提供する、上記項目のいずれかに記載の集積回路。
(項目6)
優先値供給源をさらに含み、該優先値供給源は、上記優先値を上記更新レジスタに供給する、上記項目のいずれかに記載の集積回路。
(項目7)
上記メモリアクセスリクエストの各々は、上記優先値のうちの1つに関連付けられており、上記集積回路は、少なくとも1つの優先値供給源をさらに含み、該少なくとも1つの優先値供給源は、上記更新レジスタに該優先値を供給するように動作可能であり、該少なくとも1つの優先値供給源は、上記メモリコントローラーの第1および第2のポートに該メモリアクセスリクエストを供給するようにさらに動作可能である、上記項目のいずれかに記載の集積回路。
(項目8)
上記少なくとも1つの優先値供給源は、少なくとも1つのマスター処理モジュールを含み、該少なくとも1つのマスター処理モジュールは、上記優先値を上記更新レジスタに動的に供給するように動作可能である、上記項目のいずれかに記載の集積回路。
(項目9)
上記少なくとも1つのマスター処理モジュールは、上記優先値を供給する間に、上記メモリコントローラーの第1および第2のポートに上記メモリアクセスリクエストをさらに供給する、上記項目のいずれかに記載の集積回路。
(項目10)
メモリにアクセスするためのメモリアクセスリクエストを生成するように動作可能な処理回路と、
再構成不可能メモリコントローラーであって、該再構成不可能メモリコントローラーは、該メモリアクセスリクエストを複数のポートにおいて受信するように動作可能であり、該複数のポートの各々は、関連付けられた優先値を有している、再構成不可能メモリコントローラーと、
プログラマブル制御回路であって、該プログラマブル制御回路は、該複数のポートの各々に関連付けられている優先値を動的に調節するように動作可能である、プログラマブル制御回路と
を含み、該メモリコントローラーは、該優先値に基づく順番で該メモリにアクセスすることによって、該メモリアクセスリクエストを実行するようにさらに動作可能である、集積回路。
(項目11)
更新レジスタをさらに含み、該更新レジスタは、上記優先値を格納するように動作可能であり、該更新レジスタは、格納された優先値を上記メモリコントローラーに提供するようにさらに動作可能である、上記項目のいずれかに記載の集積回路。
(項目12)
複数の優先値供給源をさらに含み、該複数の優先値供給源の各々は、上記優先値のうちの少なくとも1つを供給するように動作可能であり、上記プログラマブル制御回路は、マルチプレクサ回路を含み、該マルチプレクサ回路は、該優先値を該優先値供給源から上記更新レジスタまでルートするように動作可能である、上記項目のいずれかに記載の集積回路。
(項目13)
上記プログラマブル制御回路は、デコーダーをさらに含み、該デコーダーは、上記マルチプレクサ回路を制御することによって、上記優先値を上記更新レジスタにルートするように動作可能である、上記項目のいずれかに記載の集積回路。
(項目14)
上記デコーダーは、優先アドレス入力を含み、該優先アドレス入力は、優先アドレスを受信するように動作可能であり、該優先アドレスは、該デコーダーに制御信号を上記マルチプレクサ回路に発信するように指示することによって、該マルチプレクサ回路に信号を上記優先値供給源のうちの選択された1つから上記更新レジスタのうちの選択された1つまでルートするように指示する、上記項目のいずれかに記載の集積回路。
(項目15)
上記マルチプレクサ回路は、複数のマルチプレクサを含み、該複数のマルチプレクサの各々は、上記デコーダーにそれぞれの制御ラインによって結合され、該複数のマルチプレクサの各々は、信号を上記複数の優先値供給源から上記更新レジスタのうちのそれぞれの1つまで選択的にルートするように動作可能である、上記項目のいずれかに記載の集積回路。
(項目16)
上記処理回路は、少なくとも1つのメモリ素子および少なくとも1つのプログラマブルトランジスタを含み、該少なくとも1つのメモリ素子は、静的出力信号を作成するように動作可能であり、該少なくとも1つのプログラマブルトランジスタは、該静的出力信号を受信するように動作可能なゲートを有している、上記項目のいずれかに記載の集積回路。
(項目17)
上記複数のポートは、第1のポートおよび第2のポートを含み、上記処理回路は、第1のマスター処理回路および第2のマスター処理回路を含み、該第1のマスター処理回路は、メモリアクセスリクエストを該第1のポートに伝送するように動作可能であり、該第2のマスター処理回路は、メモリアクセスリクエストを該第2のポートに伝送するように動作可能であり、上記プログラマブル制御回路は、上記優先値を動的に調節することによって、サービスの質を該第1のマスター処理回路および該第2のマスター処理回路に提供するようにさらに動作可能である、上記項目のいずれかに記載の集積回路。
(項目18)
複数の優先値供給源をさらに含み、該複数の優先値供給源の各々は、上記優先値のうちの少なくとも1つを供給するように動作可能であり、該優先値供給源は、マスター処理モジュール、シフトレジスタ、メモリマップ化レジスタおよびバスインターフェースからなる群から選択された少なくとも1つの優先値供給源を含む、上記項目のいずれかに記載の集積回路。
(項目19)
メモリコントローラーであって、該メモリコントローラーは、メモリアクセスリクエストを受信するように動作可能であり、該メモリコントローラーは、該メモリアクセスリクエストを実行するために、メモリにアクセスするようにさらに動作可能である、メモリコントローラーと、
プログラマブル回路であって、該プログラマブル回路は、該メモリコントローラーに、該メモリアクセス優先情報に基づく順番でメモリアクセスリクエストを実行するように指示するために、該メモリアクセス優先情報を該メモリコントローラーに提供するように動作可能である、プログラマブル回路と
を含む、集積回路。
(項目20)
上記メモリアクセス優先情報は、複数のメモリアクセス優先値を含み、上記プログラマブル回路は、更新レジスタ回路を含み、該更新レジスタ回路は、上記メモリアクセス優先値のうちの少なくとも1つを格納するように動作可能である、上記項目のいずれかに記載の集積回路。
(項目21)
複数の優先値供給源をさらに含み、該複数の優先値供給源の各々は、メモリアクセス優先値を供給するように動作可能であり、上記プログラマブル回路は、マルチプレクサ回路をさらに含み、該マルチプレクサ回路は、メモリアクセス優先値を該複数の優先値供給源のうちの選択された1つから上記更新レジスタ回路までルートするように動作可能である、上記項目のいずれかに記載の集積回路。
(項目22)
マスター処理モジュール、シフトレジスタ、メモリマップ化レジスタおよびバスインターフェースからなる群から選択されたメモリアクセス優先情報の少なくとも1つの供給源をさらに含み、上記プログラマブル回路は、少なくとも1つのプログラマブルトランジスタおよび少なくとも1つのメモリ素子を含み、該少なくとも1つのメモリ素子は、静的制御信号を該プログラマブルトランジスタに供給するように動作可能であり、該プログラマブル回路は、該メモリアクセス優先情報を該メモリアクセス優先情報の少なくとも1つの供給源から受信するように動作可能であり、該プログラマブル回路は、どのメモリアクセス優先情報が上記メモリコントローラーに提供されるかを選択するようにさらに動作可能である、上記項目のいずれかに記載の集積回路デバイス。
プログラマブル集積回路は、マスターモジュールとシステムメモリとの間にインターフェース接続するメモリコントローラーを有し得る。メモリコントローラーは、メモリアクセスリクエストをマスターからポートを介して受信し得る。ポートは、関連付けられている優先値を有しており、システムメモリをメモリアクセスリクエストに応答するように構成することによって、メモリアクセスリクエストを実行する。メモリコントローラーがメモリアクセスリクエストを受信および実行している間に、関連付けられた優先値を動的に改変するために、メモリコントローラーポートに対して優先値を動的に更新する優先値更新モジュールが提供され得る。優先値更新モジュールは、更新された優先値に、更新信号およびシステムクロックに基づいて更新された更新レジスタを提供し得る。優先値は、シフトレジスタ、メモリマップ化レジスタによって提供され得るか、またはマスターおよび各メモリアクセスリクエストによって提供され得る。
本発明の実施形態は、メモリコントローラーを含む集積回路に関する。集積回路、例えば、プログラマブル集積回路は、再構成可能回路(ときどき、本明細書においてソフトファブリックと呼ばれる)を含み得る。ユーザーは、汎用処理モジュールのような処理モジュール、または特別のタスクを行う処理モジュールを形成するために、再構成可能回路を構成し得る。処理モジュールは、(例えば、後の検索のためのデータを格納するために)、システムメモリへのアクセスを要求するタスクを行い得る。
マスター処理モジュールの各々は、多量のメモリアクセスリクエストをメモリコントローラー内の対応するポートに送信し得る。システムメモリの制限のために、マスター処理モジュールからのメモリアクセスリクエストが、連続の順番で処理される。大量のメモリアクセスリクエストを処理するために、メモリコントローラーは、スケジューリング回路(ときどき、スケジューラーと呼ばれる)を提供され得、スケジューリング回路は、マスター処理モジュールからのメモリアクセスアクセスリクエストを並列に受信し、かつ一連の処理に対して所望の順番で(すなわち、所望の順番でマスターからのメモリアクセスリクエストを実行するために)メモリアクセスリクエストを配列する。
プログラマブル集積回路に使用される従来のメモリコントローラーは、メモリコントローラーの各ポートに所定の優先度を割り当てられる。(すなわち、従来のメモリメモリコントローラーは、固定の優先値を受信するスケジューラーを含む。)図2に示されるように、従来のメモリコントローラー100が、それぞれ、パス106および108を介してマスター102Aおよび102Bに結合されており、マスター102Aに関連付けられた第1のセットの優先入力110と、マスター102Bに関連付けられた第2のセットの優先入力112とを有する。入力110は、マスター102Aに対する優先値を受信するように構成されており、その一方で、入力112は、マスター102Bに対する優先値を受信するように構成されている。それゆえに、入力110および112は、ときどき、優先値入力端末と呼ばれる。マスター102Aに0の優先値を割り当てるために、スケジューラー100が、供給電圧信号Vss(すなわち、グラウンド電源電圧)、Vss、および入力110へのVssを提供される。マスター102Bに1の優先値を割り当てるために、スケジューラー100が、供給電圧信号Vss、Vss、および入力112でのVcc(すなわち、正の電源電圧)を提供される。この方法で電源レールまたはプリセットレジスタへ入力110および112をハードワイヤすることは、ここで、優先値が変えられることを可能にすると同時に、メモリコントローラーは、メモリアクセスリクエストを実行するために使用されている。
更新信号をシステムクロックCLK(例えば、メモリコントローラー12の動作周波数と等しい動作周波数を有するシステムクロックCLK)と同期させることによって、優先値を更新することに関連付けられるグリッチが防げられ得る。例えば、メモリコントローラー12は、非プログラマブル論理から形成され得、構成可能回路16のクロック周波数より大きなクロック周波数で動作し得る。このシナリオにおいて、更新信号は、構成可能回路16によって、更新レジスタ202に提供され得、メモリコントローラー12と構成可能回路16との間の動作クロック周波数における差異に起因するグリッチは、更新信号をシステムクロックCLKと同期させるによって防げられ得る。
デコーダーは、任意の優先値の供給源を選択するために、デコーダー(すなわち、各識別されていないマルチプレクサ)に提供された優先アドレスによって識別されたマルチプレクサ以外のマルチプレクサを指示し得る。各識別されていないマルチプレクサによって選択された供給源は、更新信号がアサートされるたびに、デフォルト優先値を提供する供給源を反映し得る。この方法において、優先アドレスによって識別されていない更新レジスタは、更新信号がアサートされるときに、デフォルト優先値を保持し得る。例えば、マスター18Bに関連付けられたポートに、関連付けられたシフトレジスタ200Bに格納されたデフォルト優先値「2」を提供することが望ましい場合もある。マスター18Bに2のデフォルト優先値を提供するために、デコーダー220は、マルチプレクサ214Bに対応しない優先アドレスがデコーダー220に提供されるたびに、シフトレジスタ200Bから優先値を選択するように、マルチプレクサ214Bを指示し得る。(例えば、デコーダー220がmux214Bに対応しない優先アドレス「1」を受信する場合に、デコーダー220は、シフトレジスタ200Bに格納されたデフォルト優先値を選択するように、mux214Bを構成し得る。図4の実施形態が、アドレッシングスキームを通して単一のマスターに対する優先値を更新することを示すが、優先値の並列のローディングのための他の方法は、当業者にとって明白になる。これらの代替物は、全部のシフトレジスタ200の同時のローディングと、更新レジスタ202内にそれらをラッチし、または多重化することとを含み得、または個々の更新レジスタ202内に優先値をロードするための他のアドレッシングスキームを含み得る。
優先値の供給源の数と、図3、図4、および図5のマスターの数とが、さまざまなシナリオを収容するように選択され得る。図6に示されるように、多くのマスター(例えば、マスター18A〜18N)が、スケジューリングモジュール30のポートに結合され、かつ優先値更新モジュール32に結合され得る。各ポートは、優先値の供給源240Cのうちの1つからポートへ優先値を提供する、対応する更新レジスタ202およびマルチプレクサ214を有し得る。例えば、ポート1は、対応するマルチプレクサ214Aと、ポート1(および関連付けられたマスター18A)に対する優先値を識別する更新レジスタ202Aを有し得る。各マルチプレクサ214が、さまざまな優先値の供給源に結合され得る。各マルチプレクサは、シフトレジスタ、バスインターフェース、部品、マスター、またはそのマルチプレクサに関連付けられているポートの優先値を更新するために、優先値を提供する他の供給源の任意の組み合わせに結合され得る。例えば、マルチプレクサ214Aは、各メモリアクセスリクエストと共に優先値を動的に提供するマスター18A、デフォルト優先値を提供するシフトレジスタ、およびユーザー生成優先値を提供するメモリマップ化レジスタに結合され得る。
優先値供給源をさらに含み、該優先値供給源は、前記優先値を前記更新レジスタに供給する、追加実施形態3に記載の集積回路。
12 メモリコントローラー
14 システムメモリ
16 構成可能回路
18A、18B モジュール
20A、20B ポート
32 優先値更新モジュール
40 パス
Claims (15)
- メモリにアクセスする集積回路であって、
該集積回路は、
メモリアクセスリクエストを生成するプログラマブルマスター回路と、
メモリコントローラーであって、該メモリコントローラーは、該メモリアクセスリクエストを該プログラマブルマスター回路から第1および第2のポートにおいて受信し、該メモリコントローラーは、該メモリアクセスリクエストを実行するために、該メモリにアクセスし、該メモリコントローラーは、該メモリアクセスリクエストを順番に実行し、該メモリコントローラーは、該第1および第2のポートに対するポート優先値に対応する優先値に基づく順番で該メモリにアクセスすることによって、該メモリアクセスリクエストを実行する、メモリコントローラーと、
該メモリコントローラーが該メモリアクセスリクエストを実行する順番を制御する制御回路と、
該ポート優先値を格納する更新レジスタと
を含み、
該優先値は、該更新レジスタのうちのそれぞれのレジスタに格納され、連続するクロックサイクル中に更新される、集積回路。 - 前記メモリコントローラーは、非プログラマブルメモリコントローラーを含む、請求項1に記載の集積回路。
- シフトレジスタ回路をさらに含み、該シフトレジスタ回路は、前記優先値を前記更新レジスタに提供する、請求項1に記載の集積回路。
- アドレス指定可能レジスタ回路をさらに含み、該アドレス指定可能レジスタ回路は、前記優先値を前記更新レジスタに提供する、請求項1に記載の集積回路。
- 優先値供給源をさらに含み、該優先値供給源は、前記優先値を前記更新レジスタに供給する、請求項1に記載の集積回路。
- 前記メモリアクセスリクエストの各々は、前記優先値のうちの1つに関連付けられており、前記集積回路は、少なくとも1つの優先値供給源をさらに含み、該少なくとも1つの優先値供給源は、前記更新レジスタに該優先値を供給し、該少なくとも1つの優先値供給源は、さらに、前記メモリコントローラーの第1および第2のポートに該メモリアクセスリクエストを供給する、請求項5に記載の集積回路。
- 前記少なくとも1つの優先値供給源は、少なくとも1つのマスター処理モジュールを含み、該少なくとも1つのマスター処理モジュールは、前記優先値を前記更新レジスタに動的に供給する、請求項6に記載の集積回路。
- 前記少なくとも1つのマスター処理モジュールは、さらに、前記優先値を供給する間に、前記メモリコントローラーの第1および第2のポートに前記メモリアクセスリクエストを供給する、請求項7に記載の集積回路。
- メモリにアクセスするためのメモリアクセスリクエストを生成する処理回路と、
再構成不可能メモリコントローラーであって、該再構成不可能メモリコントローラーは、該メモリアクセスリクエストを複数のポートにおいて受信し、該複数のポートの各々は、関連付けられた優先値を有している、再構成不可能メモリコントローラーと、
複数の優先値供給源であって、該複数の優先値供給源の各々は、該優先値のうちの少なくとも1つを供給するように動作可能である、複数の優先値供給源と、
プログラマブル制御回路であって、該プログラマブル制御回路は、該複数のポートの各々に関連付けられている優先値を動的に調節し、該メモリコントローラーは、さらに、該優先値に基づく順番で該メモリにアクセスすることによって、該メモリアクセスリクエストを実行する、プログラマブル制御回路と、
更新レジスタであって、該更新レジスタは、該優先値を格納し、該更新レジスタは、さらに、該格納された優先値を該再構成不可能メモリコントローラーに提供する、更新レジスタと
を含み、
該プログラマブル制御回路は、
該更新レジスタと該複数の優先値供給源との間に結合されたマルチプレクサ回路と、
デコーダーであって、該デコーダーは、該マルチプレクサ回路を制御することによって、該優先値を、選択された優先値供給源から、該更新レジスタのうちの該再構成不可能メモリコントローラーの選択されたポートに関連付けられた更新レジスタにルートし、該デコーダーは、該メモリコントローラーの選択されていないポートに対するデフォルト優先値供給源から該優先値を選択する、デコーダーと
を含む、集積回路。 - 前記デコーダーは、優先アドレス入力を含み、該優先アドレス入力は、優先アドレスを受信し、該優先アドレスは、該デコーダーに制御信号を前記マルチプレクサ回路に発信するように指示することによって、該マルチプレクサ回路に信号を前記優先値供給源のうちの選択された1つから前記更新レジスタのうちの選択された1つまでルートするように指示する、請求項9に記載の集積回路。
- 前記マルチプレクサ回路は、複数のマルチプレクサを含み、該複数のマルチプレクサの各々は、前記デコーダーにそれぞれの制御ラインによって結合され、該複数のマルチプレクサの各々は、信号を前記複数の優先値供給源から前記更新レジスタのうちのそれぞれの1つまで選択的にルートする、請求項10に記載の集積回路。
- 前記処理回路は、少なくとも1つのメモリ素子および少なくとも1つのプログラマブルトランジスタを含み、該少なくとも1つのメモリ素子は、静的出力信号を作成し、該少なくとも1つのプログラマブルトランジスタは、該静的出力信号を受信するゲートを有している、請求項9に記載の集積回路。
- 前記複数のポートは、第1のポートおよび第2のポートを含み、前記処理回路は、第1のマスター処理回路および第2のマスター処理回路を含み、該第1のマスター処理回路は、メモリアクセスリクエストを該第1のポートに伝送し、該第2のマスター処理回路は、メモリアクセスリクエストを該第2のポートに伝送し、前記プログラマブル制御回路は、さらに、前記優先値を動的に調節することによって、サービスの質を該第1のマスター処理回路および該第2のマスター処理回路に提供する、請求項9に記載の集積回路。
- 複数の優先値供給源をさらに含み、該複数の優先値供給源の各々は、前記優先値のうちの少なくとも1つを供給し、該優先値供給源は、マスター処理モジュール、シフトレジスタ、メモリマップ化レジスタおよびバスインターフェースからなる群から選択された少なくとも1つの優先値供給源を含む、請求項9に記載の集積回路。
- 集積回路であって、該集積回路は、
メモリアクセスリクエストを生成する複数の処理モジュールと、
メモリコントローラーであって、該メモリコントローラーは、メモリアクセスリクエストを受信し、該メモリコントローラーは、さらに、メモリアクセス優先情報に基づく順番で該メモリアクセスリクエストを実行するために、メモリにアクセスし、該メモリアクセス優先情報は、該複数の処理モジュールの各々に対応するそれぞれの値を含み、該それぞれの値のうちの少なくとも2つの値は、該メモリコントローラーの電源をオフにすることなしに、同期して調節することができる、メモリコントローラーと、
プログラマブル回路であって、該プログラマブル回路は、該プログラマブル回路内のプログラマブルメモリ素子によって格納された構成データに基づいて、該メモリアクセス優先情報を該メモリコントローラーに提供する、プログラマブル回路と
を含み、
該メモリアクセス優先情報は、複数のメモリアクセス優先値を含み、該プログラマブル回路は、更新レジスタ回路を含み、該更新レジスタ回路は、該メモリアクセス優先値のうちの少なくとも1つを格納し、
該集積回路は、
複数の優先値供給源をさらに含み、該複数の優先値供給源の各々は、メモリアクセス優先値を供給し、該プログラマブル回路は、マルチプレクサ回路をさらに含み、該マルチプレクサ回路は、メモリアクセス優先値を該複数の優先値供給源のうちの選択された1つから該更新レジスタ回路までルートする、集積回路。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/151,101 | 2011-06-01 | ||
US13/151,101 US9208109B2 (en) | 2011-06-01 | 2011-06-01 | Memory controllers with dynamic port priority assignment capabilities |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2012252700A JP2012252700A (ja) | 2012-12-20 |
JP6113964B2 true JP6113964B2 (ja) | 2017-04-12 |
Family
ID=46545236
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012121896A Active JP6113964B2 (ja) | 2011-06-01 | 2012-05-29 | 動的ポート優先割当能力を有しているメモリコントローラー |
Country Status (4)
Country | Link |
---|---|
US (1) | US9208109B2 (ja) |
EP (1) | EP2530600A3 (ja) |
JP (1) | JP6113964B2 (ja) |
CN (1) | CN102810082B (ja) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9354989B1 (en) * | 2011-10-03 | 2016-05-31 | Netapp, Inc | Region based admission/eviction control in hybrid aggregates |
US9251103B2 (en) * | 2012-08-08 | 2016-02-02 | Vmware, Inc. | Memory-access-resource management |
US9342402B1 (en) * | 2014-01-28 | 2016-05-17 | Altera Corporation | Memory interface with hybrid error detection circuitry for modular designs |
US9928183B2 (en) * | 2014-09-26 | 2018-03-27 | Ampere Computing Llc | Priority framework for a computing device |
KR20170060300A (ko) * | 2015-11-24 | 2017-06-01 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 메모리 시스템의 동작방법 |
US11003602B2 (en) | 2017-01-24 | 2021-05-11 | Micron Technology, Inc. | Memory protocol with command priority |
CN107340973B (zh) * | 2017-07-05 | 2021-04-13 | 郑州云海信息技术有限公司 | 一种访问异步逻辑单元的方法及系统 |
US10909046B2 (en) * | 2018-06-15 | 2021-02-02 | Micron Technology, Inc. | Memory access determination |
CN110348253B (zh) * | 2018-08-20 | 2020-10-13 | 广州知弘科技有限公司 | 基于大数据的信息安全系统的延时处理电路和方法 |
US10909292B1 (en) * | 2019-02-14 | 2021-02-02 | Xilinx, Inc. | Implementing circuit designs on multi-die programmable devices |
EP4208796A1 (en) * | 2020-11-05 | 2023-07-12 | Google LLC | Memory-request priority up-leveling |
CN114554126B (zh) * | 2022-01-29 | 2023-08-25 | 山东云海国创云计算装备产业创新中心有限公司 | 一种基板管理控制芯片、视频数据传输方法及服务器 |
CN115118677A (zh) * | 2022-06-24 | 2022-09-27 | 无锡中微亿芯有限公司 | 一种fpga中的片上网络的路由节点调度方法 |
Family Cites Families (42)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4006466A (en) | 1975-03-26 | 1977-02-01 | Honeywell Information Systems, Inc. | Programmable interface apparatus and method |
JPS5839343B2 (ja) * | 1975-12-04 | 1983-08-29 | 株式会社東芝 | マルチプロセツサシステム ノ ユウセンセイギヨホウシキ |
US4400771A (en) * | 1975-12-04 | 1983-08-23 | Tokyo Shibaura Electric Co., Ltd. | Multi-processor system with programmable memory-access priority control |
JPS5839344B2 (ja) * | 1975-12-04 | 1983-08-29 | 株式会社東芝 | マルチプロセツサシステム ノ セイギヨホウシキ |
US4488218A (en) * | 1982-01-07 | 1984-12-11 | At&T Bell Laboratories | Dynamic priority queue occupancy scheme for access to a demand-shared bus |
US4814974A (en) | 1982-07-02 | 1989-03-21 | American Telephone And Telegraph Company, At&T Bell Laboratories | Programmable memory-based arbitration system for implementing fixed and flexible priority arrangements |
US4493036A (en) | 1982-12-14 | 1985-01-08 | Honeywell Information Systems Inc. | Priority resolver having dynamically adjustable priority levels |
US5025370A (en) * | 1986-09-02 | 1991-06-18 | Koegel Robert J | Circuit for preventing lock-out of high priority requests to a system controller |
JPS63238630A (ja) * | 1987-03-26 | 1988-10-04 | Toshiba Corp | マイクロプロセツサの割込み制御装置 |
US5440752A (en) | 1991-07-08 | 1995-08-08 | Seiko Epson Corporation | Microprocessor architecture with a switch network for data transfer between cache, memory port, and IOU |
US5420985A (en) * | 1992-07-28 | 1995-05-30 | Texas Instruments Inc. | Bus arbiter system and method utilizing hardware and software which is capable of operation in distributed mode or central mode |
US5832304A (en) | 1995-03-15 | 1998-11-03 | Unisys Corporation | Memory queue with adjustable priority and conflict detection |
US5729495A (en) * | 1995-09-29 | 1998-03-17 | Altera Corporation | Dynamic nonvolatile memory cell |
US6157210A (en) * | 1997-10-16 | 2000-12-05 | Altera Corporation | Programmable logic device with circuitry for observing programmable logic circuit signals and for preloading programmable logic circuits |
US6700899B1 (en) * | 1998-02-03 | 2004-03-02 | Broadcom Corporation | Bit slice arbiter |
US6381673B1 (en) * | 1998-07-06 | 2002-04-30 | Netlogic Microsystems, Inc. | Method and apparatus for performing a read next highest priority match instruction in a content addressable memory device |
US6253262B1 (en) * | 1998-09-11 | 2001-06-26 | Advanced Micro Devices, Inc. | Arbitrating FIFO implementation which positions input request in a buffer according to its status |
US6563506B1 (en) * | 1998-12-14 | 2003-05-13 | Ati International Srl | Method and apparatus for memory bandwith allocation and control in a video graphics system |
JP3319723B2 (ja) * | 1999-04-02 | 2002-09-03 | 日本電気株式会社 | スイッチ及びそのスケジューラ並びにスイッチスケジューリング方法 |
US6661733B1 (en) * | 2000-06-15 | 2003-12-09 | Altera Corporation | Dual-port SRAM in a programmable logic device |
DE10211054A1 (de) * | 2002-03-13 | 2003-10-09 | Advanced Micro Devices Inc | USB-Hostcontroller |
US6799304B2 (en) | 2002-10-01 | 2004-09-28 | Lsi Logic Corporation | Arbitration within a multiport AMBA slave |
JP4266619B2 (ja) * | 2002-11-25 | 2009-05-20 | 株式会社ルネサステクノロジ | 調停回路 |
JP2005092630A (ja) * | 2003-09-18 | 2005-04-07 | Sony Corp | メモリ制御装置及び制御方法 |
JP4305378B2 (ja) * | 2004-12-13 | 2009-07-29 | ソニー株式会社 | データ処理システム、アクセス制御方法、その装置およびそのプログラム |
US7797467B2 (en) | 2005-11-01 | 2010-09-14 | Lsi Corporation | Systems for implementing SDRAM controllers, and buses adapted to include advanced high performance bus features |
US7430148B2 (en) * | 2005-11-17 | 2008-09-30 | Altera Corporation | Volatile memory elements with boosted output voltages for programmable logic device integrated circuits |
US7330049B2 (en) * | 2006-03-06 | 2008-02-12 | Altera Corporation | Adjustable transistor body bias generation circuitry with latch-up prevention |
US7917676B2 (en) * | 2006-03-10 | 2011-03-29 | Qualcomm, Incorporated | Efficient execution of memory barrier bus commands with order constrained memory accesses |
US7463057B1 (en) * | 2006-03-29 | 2008-12-09 | Altera Corporation | Integrated circuits with adjustable memory element power supplies |
US7475315B1 (en) * | 2007-01-10 | 2009-01-06 | Altera Corporation | Configurable built in self test circuitry for testing memory arrays |
US7908440B2 (en) | 2007-08-09 | 2011-03-15 | Intel Corporation | Simultaneous personal sensing and data storage |
US7589556B1 (en) * | 2007-10-26 | 2009-09-15 | Altera Corporation | Dynamic control of memory interface timing |
JP5233360B2 (ja) * | 2008-03-27 | 2013-07-10 | 富士通株式会社 | メモリ制御装置,メモリ制御装置の制御方法および情報処理装置 |
US7793025B2 (en) * | 2008-03-28 | 2010-09-07 | Freescale Semiconductor, Inc. | Hardware managed context sensitive interrupt priority level control |
US7872512B2 (en) * | 2008-04-01 | 2011-01-18 | Altera Corporation | Robust time borrowing pulse latches |
US20100162065A1 (en) * | 2008-12-19 | 2010-06-24 | Unity Semiconductor Corporation | Protecting integrity of data in multi-layered memory with data redundancy |
US7920410B1 (en) * | 2009-02-23 | 2011-04-05 | Altera Corporation | Memory elements with increased write margin and soft error upset immunity |
JP2010282405A (ja) * | 2009-06-04 | 2010-12-16 | Renesas Electronics Corp | データ処理システム |
EP2296091A1 (en) * | 2009-09-14 | 2011-03-16 | Nxp B.V. | Servicing low-latency requests ahead of best-effort requests |
US9135215B1 (en) * | 2009-09-21 | 2015-09-15 | Tilera Corporation | Route prediction in packet switched networks |
US8438326B2 (en) * | 2010-06-07 | 2013-05-07 | Xilinx, Inc. | Scalable memory interface system |
-
2011
- 2011-06-01 US US13/151,101 patent/US9208109B2/en active Active
-
2012
- 2012-05-29 JP JP2012121896A patent/JP6113964B2/ja active Active
- 2012-05-30 EP EP12170020.7A patent/EP2530600A3/en not_active Ceased
- 2012-05-30 CN CN201210174895.1A patent/CN102810082B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
EP2530600A2 (en) | 2012-12-05 |
CN102810082B (zh) | 2017-06-27 |
CN102810082A (zh) | 2012-12-05 |
EP2530600A3 (en) | 2013-11-27 |
US9208109B2 (en) | 2015-12-08 |
US20120311277A1 (en) | 2012-12-06 |
JP2012252700A (ja) | 2012-12-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6113964B2 (ja) | 動的ポート優先割当能力を有しているメモリコントローラー | |
US20190018063A1 (en) | Programmable integrated circuits with in-operation reconfiguration capability | |
US10268392B2 (en) | Memory controller architecture with improved memory scheduling efficiency | |
US10482934B2 (en) | Memory controller architecture with improved memory scheduling efficiency | |
JP5969284B2 (ja) | 電子回路網の信頼性を向上させるための装置および関連する方法 | |
US8897083B1 (en) | Memory interface circuitry with data strobe signal sharing capabilities | |
JP2004056716A (ja) | 半導体装置 | |
JP2017038247A (ja) | 再構成可能な半導体装置 | |
US9330218B1 (en) | Integrated circuits having input-output circuits with dedicated memory controller circuitry | |
JPH0784863A (ja) | 情報処理装置およびそれに適した半導体記憶装置 | |
US8519740B2 (en) | Integrated circuits with shared interconnect buses | |
US9984734B2 (en) | Programmable integrated circuits with in-operation reconfiguration capability | |
US9503096B1 (en) | Multiple-layer configuration storage for runtime reconfigurable systems | |
US11016742B2 (en) | Channel sizing for inter-kernel communication | |
US7444613B1 (en) | Systems and methods for mapping arbitrary logic functions into synchronous embedded memories | |
US9244867B1 (en) | Memory controller interface with adjustable port widths | |
JP5336398B2 (ja) | 半導体集積回路、半導体集積回路の構成変更方法 | |
US9733855B1 (en) | System and methods for adjusting memory command placement | |
US9367450B1 (en) | Address arithmetic on block RAMs | |
US10509757B2 (en) | Integrated circuits having expandable processor memory | |
US9570134B1 (en) | Reducing transactional latency in address decoding | |
JP2008293226A (ja) | 半導体装置 | |
WO2017118417A1 (en) | Multiple-layer configuration storage for runtime reconfigurable systems | |
JP6493044B2 (ja) | マルチプロセッサシステム | |
US8861283B1 (en) | Systems and methods for reducing leakage current in memory arrays |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20150427 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20160531 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20160606 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20160906 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20160927 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20170127 |
|
A911 | Transfer of reconsideration by examiner before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20170208 |
|
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: 20170228 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20170316 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6113964 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |