JPH08292918A - システム・リソース有効化装置 - Google Patents
システム・リソース有効化装置Info
- Publication number
- JPH08292918A JPH08292918A JP8050172A JP5017296A JPH08292918A JP H08292918 A JPH08292918 A JP H08292918A JP 8050172 A JP8050172 A JP 8050172A JP 5017296 A JP5017296 A JP 5017296A JP H08292918 A JPH08292918 A JP H08292918A
- Authority
- JP
- Japan
- Prior art keywords
- resource
- array
- enabling
- register
- operations
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5011—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/507—Low-level
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Advance Control (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Memory System (AREA)
- Complex Calculations (AREA)
- Bus Control (AREA)
- Executing Machine-Instructions (AREA)
Abstract
(57)【要約】
【課題】 システム性能を最適化するようにアレイの有
効化を制御する方法及び装置を提供する。 【解決手段】 システム・リソースに対する操作を有効
にするシステム・リソース有効化装置は、リソースに対
する現在と将来の操作を表すレジスタ、要求されたリソ
ース操作に対応したパターンをキュー内のリソース操作
に対する複数のリクエストそれぞれに適用するパターン
・ジェネレータ、複数のリクエストそれぞれについて、
リクエストが他のリソース操作とコンフリクトするかど
うかを、リクエストに適用されたパターンをレジスタと
比較することによって確認する比較ロジックと、コンフ
リクトが確認されない場合はキュー内のリクエストに優
先権を与え、リクエストに適用されたパターンに従って
レジスタを更新する優先権付与ロジック、及びレジスタ
に従ってリソースに対する操作を有効にするリソース有
効化ロジックを含む。
効化を制御する方法及び装置を提供する。 【解決手段】 システム・リソースに対する操作を有効
にするシステム・リソース有効化装置は、リソースに対
する現在と将来の操作を表すレジスタ、要求されたリソ
ース操作に対応したパターンをキュー内のリソース操作
に対する複数のリクエストそれぞれに適用するパターン
・ジェネレータ、複数のリクエストそれぞれについて、
リクエストが他のリソース操作とコンフリクトするかど
うかを、リクエストに適用されたパターンをレジスタと
比較することによって確認する比較ロジックと、コンフ
リクトが確認されない場合はキュー内のリクエストに優
先権を与え、リクエストに適用されたパターンに従って
レジスタを更新する優先権付与ロジック、及びレジスタ
に従ってリソースに対する操作を有効にするリソース有
効化ロジックを含む。
Description
【0001】
【発明の属する技術分野】本発明はシステム・リソース
の制御に関し、特に節電を考慮した共有システム・リソ
ースの制御に関する。
の制御に関し、特に節電を考慮した共有システム・リソ
ースの制御に関する。
【0002】
【従来の技術】大きなキャッシュ・アレイを有する半導
体チップでは、アレイによってかなりの電力が消費され
る。アレイの消費電力を低減する試みとして、低電力の
アレイ・セルが用いられている。しかしながらこのよう
な低電力アレイ・セルはシステム性能を低下させること
がある。
体チップでは、アレイによってかなりの電力が消費され
る。アレイの消費電力を低減する試みとして、低電力の
アレイ・セルが用いられている。しかしながらこのよう
な低電力アレイ・セルはシステム性能を低下させること
がある。
【0003】アレイの消費電力を低減する試みとしては
また、クロック入力を遮断してアレイ"スタンバイ"モー
ドを実現するアレイが設計されている。しかしながらこ
のようなアレイは、それが必要なサイクルでアレイをオ
ンにすることによりしばしば性能が劣化することがあ
る。
また、クロック入力を遮断してアレイ"スタンバイ"モー
ドを実現するアレイが設計されている。しかしながらこ
のようなアレイは、それが必要なサイクルでアレイをオ
ンにすることによりしばしば性能が劣化することがあ
る。
【0004】従来技術では、Gasztonyiによる米国特許
番号第5339445号がアレイの消費電力を低減する
他の試みについて説明している。消費電力についての履
歴情報を有するデータ・テーブルが維持され、このデー
タによって後の操作のための電力が調整される。しか
し、履歴データの操作によって電力供給が不正確になる
ことがあり、そのためアレイの動作効率が低下し得る。
番号第5339445号がアレイの消費電力を低減する
他の試みについて説明している。消費電力についての履
歴情報を有するデータ・テーブルが維持され、このデー
タによって後の操作のための電力が調整される。しか
し、履歴データの操作によって電力供給が不正確になる
ことがあり、そのためアレイの動作効率が低下し得る。
【0005】従って、アレイへの電力供給を制御し、節
電すると共にアレイの性能を最適化する方法及び装置が
求められる。
電すると共にアレイの性能を最適化する方法及び装置が
求められる。
【0006】
【発明が解決しようとする課題】前記の点を考慮した本
発明の目的は、システム性能を最適化するようにアレイ
の有効化(energization)を制御する方法及び装置を提
供することである。
発明の目的は、システム性能を最適化するようにアレイ
の有効化(energization)を制御する方法及び装置を提
供することである。
【0007】
【課題を解決するための手段】本発明に従ってアレイに
アレイ有効化ラインが付加される。このラインはシステ
ム・クロックを無効にする機能を与える。アレイ有効化
ラインがLOWの場合、クロック信号はアレイに送られ
ず、アレイはスタンバイ・モードにとどまり、アレイの
消費電力は低減される。
アレイ有効化ラインが付加される。このラインはシステ
ム・クロックを無効にする機能を与える。アレイ有効化
ラインがLOWの場合、クロック信号はアレイに送られ
ず、アレイはスタンバイ・モードにとどまり、アレイの
消費電力は低減される。
【0008】アレイは、非使用サイクル中はスタンバイ
・モードにとどまる。アレイ有効化ロジックを使用する
ことで、アレイは、アレイが用いられる少なくとも1サ
イクル前にオンになる。従ってアレイはアレイ操作が実
行される前に有効になるので、性能劣化は最小限に抑え
られる。
・モードにとどまる。アレイ有効化ロジックを使用する
ことで、アレイは、アレイが用いられる少なくとも1サ
イクル前にオンになる。従ってアレイはアレイ操作が実
行される前に有効になるので、性能劣化は最小限に抑え
られる。
【0009】従って本発明は、従来の電力低減法に通常
見られるような性能が劣化することなくアレイの消費電
力を低減する。また、アレイ有効化ロジックは使用可能
なリソース情報をもとに動作するので、アレイ有効化ロ
ジックは異なる動作電力モードに対応するように変更及
び調整できる。
見られるような性能が劣化することなくアレイの消費電
力を低減する。また、アレイ有効化ロジックは使用可能
なリソース情報をもとに動作するので、アレイ有効化ロ
ジックは異なる動作電力モードに対応するように変更及
び調整できる。
【0010】
【発明の実施の形態】以下に述べるように、本発明に従
ったリソース有効化装置はRAM(ランダム・アクセス
・メモリ)アレイに用いられる。この有効化装置は、専
用ロジックを含む他のシステム・リソースにも等しく適
用できることは理解されよう。
ったリソース有効化装置はRAM(ランダム・アクセス
・メモリ)アレイに用いられる。この有効化装置は、専
用ロジックを含む他のシステム・リソースにも等しく適
用できることは理解されよう。
【0011】図1に、入力データ用の入力レジスタ12
及び出力データ用の出力レジスタ14を有するRAMア
レイ10を示す。説明の便宜上、アレイは2次元アレイ
とみなし、アレイの幅は入力データ・ワードと同じとす
る。アドレス・レジスタ16はアレイのワード・ライン
を選択するために提供される。クロック有効化ライン1
8と書込み有効化ライン20も用いられる。本発明に従
って、クロック・ライン18を有効/無効にするアレイ
有効化ライン22も提供される。ここに述べるアレイ
は、実際には複数のアレイから構成できることは理解さ
れよう。
及び出力データ用の出力レジスタ14を有するRAMア
レイ10を示す。説明の便宜上、アレイは2次元アレイ
とみなし、アレイの幅は入力データ・ワードと同じとす
る。アドレス・レジスタ16はアレイのワード・ライン
を選択するために提供される。クロック有効化ライン1
8と書込み有効化ライン20も用いられる。本発明に従
って、クロック・ライン18を有効/無効にするアレイ
有効化ライン22も提供される。ここに述べるアレイ
は、実際には複数のアレイから構成できることは理解さ
れよう。
【0012】図2はパイプライン(直列化)・リクエス
ト・キューを示す。リクエスタ24の個数"n"は、リク
エスト・バス26上のリクエストを示し、優先権ロジッ
ク78及びリクエスト・セレクタ28に従って1つのリ
クエストが選択され、パイプラインへのアクセスを許可
される。ある時間に優先権を競ってパイプラインへのア
クセスを得るリクエスタの個数は任意でよく、リクエス
タ24の内どれがアクセスを許可されるかを決定するの
は優先権ロジック78及びリクエスト・セレクタ28で
あることは理解されよう。
ト・キューを示す。リクエスタ24の個数"n"は、リク
エスト・バス26上のリクエストを示し、優先権ロジッ
ク78及びリクエスト・セレクタ28に従って1つのリ
クエストが選択され、パイプラインへのアクセスを許可
される。ある時間に優先権を競ってパイプラインへのア
クセスを得るリクエスタの個数は任意でよく、リクエス
タ24の内どれがアクセスを許可されるかを決定するの
は優先権ロジック78及びリクエスト・セレクタ28で
あることは理解されよう。
【0013】優先権ロジック78及びリクエスト・セレ
クタ28に、並列にアレイ有効化ロジック30が提供さ
れ、これはリクエスタのIDを調べる他に、そのリクエ
スタがアレイ10を使用する必要の有無、必要がある場
合は何サイクルの間かを判定する。従って、リクエスタ
がパイプラインへのアクセスを得るかどうかについて判
定が出されると同時に、アレイ有効化ライン22をオン
またはオフするために、そのリクエスタがアレイ10を
使用する必要があるかどうか、それはいつか、またどの
くらいの間かについての情報もコンパイルされる。優先
権はあるリクエスタに与えられるが、アレイはサイクル
mからd+1サイクルの間用いられるので、アレイ有効
化ラインはサイクルmの少なくとも1サイクル前にはオ
ンになる。
クタ28に、並列にアレイ有効化ロジック30が提供さ
れ、これはリクエスタのIDを調べる他に、そのリクエ
スタがアレイ10を使用する必要の有無、必要がある場
合は何サイクルの間かを判定する。従って、リクエスタ
がパイプラインへのアクセスを得るかどうかについて判
定が出されると同時に、アレイ有効化ライン22をオン
またはオフするために、そのリクエスタがアレイ10を
使用する必要があるかどうか、それはいつか、またどの
くらいの間かについての情報もコンパイルされる。優先
権はあるリクエスタに与えられるが、アレイはサイクル
mからd+1サイクルの間用いられるので、アレイ有効
化ラインはサイクルmの少なくとも1サイクル前にはオ
ンになる。
【0014】好適な実施例の場合、アレイ有効化ライン
22がアクティブではないときアレイ10はスタンバイ
・モードである。最適な時間にアレイ有効化ラインをオ
ンにすることで、アレイのプリチャージによって性能損
失は最小限に抑えられる。この構成は、システム条件に
従って任意の期間または開始点に対応できる機能を与え
ることは理解されよう。好適には、アレイ有効化ライン
はアレイが必要とされる1サイクル前にオンにされる。
22がアクティブではないときアレイ10はスタンバイ
・モードである。最適な時間にアレイ有効化ラインをオ
ンにすることで、アレイのプリチャージによって性能損
失は最小限に抑えられる。この構成は、システム条件に
従って任意の期間または開始点に対応できる機能を与え
ることは理解されよう。好適には、アレイ有効化ライン
はアレイが必要とされる1サイクル前にオンにされる。
【0015】図2の破線で示す通り、アレイ有効化ライ
ン22はアレイが破線で示したように、サイクルmでリ
クエスタによって用いられる状態になるようにm−1サ
イクルでオンになる。次にアレイ有効化ラインは、mサ
イクルの後のdサイクルの間、合計d+1サイクルの
間、或いはサイクルm+dまでオンのままである。
ン22はアレイが破線で示したように、サイクルmでリ
クエスタによって用いられる状態になるようにm−1サ
イクルでオンになる。次にアレイ有効化ラインは、mサ
イクルの後のdサイクルの間、合計d+1サイクルの
間、或いはサイクルm+dまでオンのままである。
【0016】アレイ有効化ロジック30がない場合、ア
レイが必要とされるサイクルからリクエスタがアレイを
使用し始めたとき、アレイが適宜に機能していたとして
もある一定の時間はその操作から除外されてしまう。最
初のサイクルは遅くなり、そのような遅いアレイ動作に
よりシステム性能が劣化する。
レイが必要とされるサイクルからリクエスタがアレイを
使用し始めたとき、アレイが適宜に機能していたとして
もある一定の時間はその操作から除外されてしまう。最
初のサイクルは遅くなり、そのような遅いアレイ動作に
よりシステム性能が劣化する。
【0017】図3に示す通り、あるリクエスタのアレイ
有効化ロジック30への入力はアレイ要求ライン32、
アドレス・ライン34、及び操作ライン36を含む。以
下で触れるが、アドレス・ライン34で必要なのは1ア
ドレス・ビットだけでもよい。アレイ有効化ロジック3
0は優先権選択の開始時に入力ラインをチェックし、ラ
イン・フェッチ操作等のためにリクエスタにはアレイが
必要なことを認識する。アレイ有効化ロジック30は、
現在及び将来のサイクルについてアレイの動作状態を表
すレジスタ38を用いて、下流(downstream)で競合が
あるかどうか、すなわち要求されたアレイ操作が行なわ
れる時点で予定された他のアレイ操作とのコンフリクト
があるか確認する。これは例えば、先のリクエスタが同
時に現在のリクエスタと同じアレイを使用しようとする
ことを防ぐためである。同じアレイが用いられようとす
る場合は結果は予測できず、制御は失われる。
有効化ロジック30への入力はアレイ要求ライン32、
アドレス・ライン34、及び操作ライン36を含む。以
下で触れるが、アドレス・ライン34で必要なのは1ア
ドレス・ビットだけでもよい。アレイ有効化ロジック3
0は優先権選択の開始時に入力ラインをチェックし、ラ
イン・フェッチ操作等のためにリクエスタにはアレイが
必要なことを認識する。アレイ有効化ロジック30は、
現在及び将来のサイクルについてアレイの動作状態を表
すレジスタ38を用いて、下流(downstream)で競合が
あるかどうか、すなわち要求されたアレイ操作が行なわ
れる時点で予定された他のアレイ操作とのコンフリクト
があるか確認する。これは例えば、先のリクエスタが同
時に現在のリクエスタと同じアレイを使用しようとする
ことを防ぐためである。同じアレイが用いられようとす
る場合は結果は予測できず、制御は失われる。
【0018】アレイ有効化ロジックは"無コンフリクト"
・ライン40を提供する。無コンフリクト・ラインが"
1"のときはリクエストによって問題が生じることはな
い。無コンフリクト・ラインが"0"なら、優先権のリク
エストは無コンフリクト・ラインが"1"になる等の時ま
で継続する。
・ライン40を提供する。無コンフリクト・ラインが"
1"のときはリクエストによって問題が生じることはな
い。無コンフリクト・ラインが"0"なら、優先権のリク
エストは無コンフリクト・ラインが"1"になる等の時ま
で継続する。
【0019】図4及び図5は、本発明に従ったアレイ有
効化ロジックの好適な実施例を示す。図4は単一インタ
リーブの例を示し、"n"個のリクエスタからのリクエス
トはリクエスト・バス42を通してパターン・ジェネレ
ータ44に入る。ジェネレータ44は各リクエストに対
応したパターンを生成し、パターン・バス46に出力す
る。パターン・ジェネレータの詳細については以下で詳
しく説明する。インタリーブ・レジスタ48の出力とパ
ターン・バス46はビットAND50を通して接続さ
れ、そこでインタリーブ・レジスタ48のビットはすべ
て0であり、対応するビットAND50の出力も0にな
る。
効化ロジックの好適な実施例を示す。図4は単一インタ
リーブの例を示し、"n"個のリクエスタからのリクエス
トはリクエスト・バス42を通してパターン・ジェネレ
ータ44に入る。ジェネレータ44は各リクエストに対
応したパターンを生成し、パターン・バス46に出力す
る。パターン・ジェネレータの詳細については以下で詳
しく説明する。インタリーブ・レジスタ48の出力とパ
ターン・バス46はビットAND50を通して接続さ
れ、そこでインタリーブ・レジスタ48のビットはすべ
て0であり、対応するビットAND50の出力も0にな
る。
【0020】1例として、生成されたパターンがインタ
リーブ・アクセスの必要なことを示すサイクルに対応し
たインタリーブ・レジスタ48の4ビットが0の場合、
ビットAND50の出力ビットはすべて0である。同様
に、生成されたパターンがインタリーブ・アクセスの必
要なことを示すサイクルに対応した4ビットのいずれか
が1なら、ビットAND50の出力ビットのうち少なく
とも1つはコンフリクトを表す1である。OR52を通
して接続されたビットAND50それぞれの出力は、イ
ンタリーブに対してそのリクエスタにコンフリクトが存
在するかどうかの指示をコンフリクト・ライン54に提
供する。
リーブ・アクセスの必要なことを示すサイクルに対応し
たインタリーブ・レジスタ48の4ビットが0の場合、
ビットAND50の出力ビットはすべて0である。同様
に、生成されたパターンがインタリーブ・アクセスの必
要なことを示すサイクルに対応した4ビットのいずれか
が1なら、ビットAND50の出力ビットのうち少なく
とも1つはコンフリクトを表す1である。OR52を通
して接続されたビットAND50それぞれの出力は、イ
ンタリーブに対してそのリクエスタにコンフリクトが存
在するかどうかの指示をコンフリクト・ライン54に提
供する。
【0021】パターン・セレクタ56はパターン・ライ
ン46上のパターンの1つを選択し、そのパターンをO
R58に出力する。パターン・セレクタ56へのグラン
ト・バス60の入力は優先権選択ロジック62からのも
ので、これについては以下に詳しく説明する。
ン46上のパターンの1つを選択し、そのパターンをO
R58に出力する。パターン・セレクタ56へのグラン
ト・バス60の入力は優先権選択ロジック62からのも
ので、これについては以下に詳しく説明する。
【0022】パターン・セレクタ56からのパターンと
インタリーブ・レジスタ48の出力はビットOR58及
びシフト・レフト64を通して接続される。従ってビッ
トOR58の出力は現在のサイクルのインタリーブの状
態を表し、シフト・レフト64の出力は将来の1サイク
ルのインタリーブ状態を表す。
インタリーブ・レジスタ48の出力はビットOR58及
びシフト・レフト64を通して接続される。従ってビッ
トOR58の出力は現在のサイクルのインタリーブの状
態を表し、シフト・レフト64の出力は将来の1サイク
ルのインタリーブ状態を表す。
【0023】シフト・レフト64の出力すなわちオーバ
フローは、アレイが用いられる2サイクル前のインタリ
ーブ状態を表し、ステージ1レジスタ66に格納され
る。ステージ1レジスタ66の出力はアレイが用いられ
る1サイクル前を表す。
フローは、アレイが用いられる2サイクル前のインタリ
ーブ状態を表し、ステージ1レジスタ66に格納され
る。ステージ1レジスタ66の出力はアレイが用いられ
る1サイクル前を表す。
【0024】ステージ2レジスタ68は、余分なステー
ジング・サイクルによる、ステージ1レジスタよりも1
サイクル後を表し、従って現在のサイクルを表す。ステ
ージ1レジスタ66及びステージ2レジスタ68の出力
はOR70を通して接続され、よってアレイは1サイク
ル早くオンになり、アレイ有効化ライン72を介して現
在のサイクルを通して、維持される。アレイ操作がなく
なった後はアレイはサイクルをオフにする。
ジング・サイクルによる、ステージ1レジスタよりも1
サイクル後を表し、従って現在のサイクルを表す。ステ
ージ1レジスタ66及びステージ2レジスタ68の出力
はOR70を通して接続され、よってアレイは1サイク
ル早くオンになり、アレイ有効化ライン72を介して現
在のサイクルを通して、維持される。アレイ操作がなく
なった後はアレイはサイクルをオフにする。
【0025】図5に示すように優先権選択ロジック62
は、図4のようにリクエスト・バス42に入る"n"個の
リクエスタからの同じリクエストを入力とする。ただし
図示の通りここではインタリーブが2つある(インタリ
ーブ0及びインタリーブ1)。各インタリーブのロジッ
クは図4のように実現される。
は、図4のようにリクエスト・バス42に入る"n"個の
リクエスタからの同じリクエストを入力とする。ただし
図示の通りここではインタリーブが2つある(インタリ
ーブ0及びインタリーブ1)。各インタリーブのロジッ
クは図4のように実現される。
【0026】優先権選択ロジック62にはまた、インタ
リーブ0及びインタリーブ1それぞれに対するコンフリ
クト・バス54も入力される。インタリーブ0及びイン
タリーブ1のコンフリクト・バスはNOR74を通して
接続され、その出力はAND76を通してリクエスト・
バス42と共に接続される。各NOR74の出力は、い
ずれかのインタリーブにコンフリクトがある場合はNO
Rの出力は0で、リクエストは最終的に優先権を取得で
きなくなる。AND76の出力は、両方のインタリーブ
入力が0であるリクエスト、すなわちコンフリクトがな
いリクエストがある場合にのみ1になる。AND76の
出力はその場合、どのリクエストが優先権ロジック78
(ラウンド・ロビン式優先権ロジック等)によって選択
されるかを決定するために用いられる。優先権ロジック
の出力はグラント・バス60に送られ、インタリーブ・
コンフリクトの確認に用いられる。
リーブ0及びインタリーブ1それぞれに対するコンフリ
クト・バス54も入力される。インタリーブ0及びイン
タリーブ1のコンフリクト・バスはNOR74を通して
接続され、その出力はAND76を通してリクエスト・
バス42と共に接続される。各NOR74の出力は、い
ずれかのインタリーブにコンフリクトがある場合はNO
Rの出力は0で、リクエストは最終的に優先権を取得で
きなくなる。AND76の出力は、両方のインタリーブ
入力が0であるリクエスト、すなわちコンフリクトがな
いリクエストがある場合にのみ1になる。AND76の
出力はその場合、どのリクエストが優先権ロジック78
(ラウンド・ロビン式優先権ロジック等)によって選択
されるかを決定するために用いられる。優先権ロジック
の出力はグラント・バス60に送られ、インタリーブ・
コンフリクトの確認に用いられる。
【0027】パターン・ジェネレータ44によって与え
られるパターンのテーブルにより、図6に示したように
インタリーブ・コンフリクトが存在するかどうかが確認
される。あるリクエスト・タイプについて、アレイ有効
化ロジックのインタリーブ・レジスタがテーブルのすべ
ての1に対して0なら、そのリクエストにはインタリー
ブ・コンフリクトは存在しない。
られるパターンのテーブルにより、図6に示したように
インタリーブ・コンフリクトが存在するかどうかが確認
される。あるリクエスト・タイプについて、アレイ有効
化ロジックのインタリーブ・レジスタがテーブルのすべ
ての1に対して0なら、そのリクエストにはインタリー
ブ・コンフリクトは存在しない。
【0028】上述のように、アレイ有効化ロジック30
内には図7及び図8に示すようなインタリーブ・レジス
タ48のセットがある。インタリーブ・レジスタ48は
将来のアレイの状態(サイクルC2乃至C9)を表し、
従って将来のある時点で特定のリソースを要求するリク
エスタに関して比較が行えるマスクを与える。インタリ
ーブ・レジスタ48の内容は、コンフリクトが存在する
かどうかリクエスタが確認を求めている特定の操作を表
すパターンと比較される。
内には図7及び図8に示すようなインタリーブ・レジス
タ48のセットがある。インタリーブ・レジスタ48は
将来のアレイの状態(サイクルC2乃至C9)を表し、
従って将来のある時点で特定のリソースを要求するリク
エスタに関して比較が行えるマスクを与える。インタリ
ーブ・レジスタ48の内容は、コンフリクトが存在する
かどうかリクエスタが確認を求めている特定の操作を表
すパターンと比較される。
【0029】図7はライン・フェッチ操作を示し、ここ
でILV0とILV1はインタリーブ・アドレスを示
す。インタリーブ0(ILV0)またはインタリーブ1
(ILV1)のいずれかがアドレス・ラインを通して選
択される。アライメントは、クワッド・ワード(QW、
16バイト)に分けられる場合にはラインは8クワッド
・ワード、というように決められる。インタリーブは、
8つのクワッド・ワードがあるようにクワッド・ワード
・アドレスを基準にして配置される。サイクル0(現在
のサイクル)では優先権のリクエストが出される。アレ
イ有効化ロジックは、一旦リクエストが優先権を得れば
ライン・フェッチはすべてサイクルC2からスタートす
ることを知っている。ラインには8クワッド・ワードが
あるのでライン・フェッチが終了するのに8サイクルか
かる。従って、インタリーブ0からライン・フェッチ操
作に対するリクエストがサイクル0で出された場合、I
LV0インタリーブ・レジスタはライン・フェッチ操作
についてあらかじめ格納されたパターンと比較され、サ
イクルC2、C4、C6及びC8でビジー状態が指示さ
れる。
でILV0とILV1はインタリーブ・アドレスを示
す。インタリーブ0(ILV0)またはインタリーブ1
(ILV1)のいずれかがアドレス・ラインを通して選
択される。アライメントは、クワッド・ワード(QW、
16バイト)に分けられる場合にはラインは8クワッド
・ワード、というように決められる。インタリーブは、
8つのクワッド・ワードがあるようにクワッド・ワード
・アドレスを基準にして配置される。サイクル0(現在
のサイクル)では優先権のリクエストが出される。アレ
イ有効化ロジックは、一旦リクエストが優先権を得れば
ライン・フェッチはすべてサイクルC2からスタートす
ることを知っている。ラインには8クワッド・ワードが
あるのでライン・フェッチが終了するのに8サイクルか
かる。従って、インタリーブ0からライン・フェッチ操
作に対するリクエストがサイクル0で出された場合、I
LV0インタリーブ・レジスタはライン・フェッチ操作
についてあらかじめ格納されたパターンと比較され、サ
イクルC2、C4、C6及びC8でビジー状態が指示さ
れる。
【0030】従って図7に示す通り、サイクルC0でリ
クエストが入り、アレイはサイクルC2でビジー状態に
入り始め、8サイクルの間はビジー状態になる。従って
サイクルC2で"1"は論理的にアレイはビジーであるこ
とを示す。現実に起こることは実際には2つのインタリ
ーブがあってそれらは共に論理アレイをなす、というこ
とは理解されよう。ライン・フェッチ操作の最初のサイ
クル(サイクルC2)で最初のクワッド・ワードは最初
のインタリーブILV0からフェッチされ、次のサイク
ル(サイクルC3)でラインの2番目のクワッド・ワー
ドは2番目のインタリーブILV1からフェッチされ
る。従って各インタリーブに1つ、計2つの物理アレイ
がある。
クエストが入り、アレイはサイクルC2でビジー状態に
入り始め、8サイクルの間はビジー状態になる。従って
サイクルC2で"1"は論理的にアレイはビジーであるこ
とを示す。現実に起こることは実際には2つのインタリ
ーブがあってそれらは共に論理アレイをなす、というこ
とは理解されよう。ライン・フェッチ操作の最初のサイ
クル(サイクルC2)で最初のクワッド・ワードは最初
のインタリーブILV0からフェッチされ、次のサイク
ル(サイクルC3)でラインの2番目のクワッド・ワー
ドは2番目のインタリーブILV1からフェッチされ
る。従って各インタリーブに1つ、計2つの物理アレイ
がある。
【0031】各サイクルが過ぎる毎にアレイ有効化ロジ
ックのインタリーブ・レジスタが更新される。クロック
・サイクルは進み続け、最終的にライン・フェッチ操作
が終了する。図7では、これはインタリーブ・レジスタ
内の1がサイクル毎に左にシフトすることで示されてい
る。結局8サイクル後にすべての1がインタリーブ・レ
ジスタからシフト・アウトされる。
ックのインタリーブ・レジスタが更新される。クロック
・サイクルは進み続け、最終的にライン・フェッチ操作
が終了する。図7では、これはインタリーブ・レジスタ
内の1がサイクル毎に左にシフトすることで示されてい
る。結局8サイクル後にすべての1がインタリーブ・レ
ジスタからシフト・アウトされる。
【0032】図8も同様にダブル・ワード・ストア操作
を示す。アレイ・スタンバイ・ロジックは、1回のダブ
ル・ワード・ストア操作で唯一のビジー・サイクルはサ
イクルC4であることを知っている。ダブル・ワード・
ストアのリクエストがパイプラインで優先権を得るとリ
クエスタはアレイをサイクルC4で使用する必要があ
り、その操作を終えるのに1サイクルしか必要としな
い。
を示す。アレイ・スタンバイ・ロジックは、1回のダブ
ル・ワード・ストア操作で唯一のビジー・サイクルはサ
イクルC4であることを知っている。ダブル・ワード・
ストアのリクエストがパイプラインで優先権を得るとリ
クエスタはアレイをサイクルC4で使用する必要があ
り、その操作を終えるのに1サイクルしか必要としな
い。
【0033】従って、インタリーブILV0に対するダ
ブル・ワード・ストア操作が要求された時にアレイ有効
化ロジック内に維持されるインタリーブ・レジスタが図
8に示す状態だった場合は、アレイ有効化ロジックは、
インタリーブILV0がサイクルC4では必要だが予定
されている操作とのコンフリクトが存在することを認識
する。従って無コンフリクト・ラインは"0"で、リクエ
スタはパイプラインでの優先権を許可されない。一方、
リクエスタがインタリーブILV1の使用を望んだ場合
はコンフリクトは存在しない。サイクルC4でインタリ
ーブILV1に予定されている操作はないからである。
ブル・ワード・ストア操作が要求された時にアレイ有効
化ロジック内に維持されるインタリーブ・レジスタが図
8に示す状態だった場合は、アレイ有効化ロジックは、
インタリーブILV0がサイクルC4では必要だが予定
されている操作とのコンフリクトが存在することを認識
する。従って無コンフリクト・ラインは"0"で、リクエ
スタはパイプラインでの優先権を許可されない。一方、
リクエスタがインタリーブILV1の使用を望んだ場合
はコンフリクトは存在しない。サイクルC4でインタリ
ーブILV1に予定されている操作はないからである。
【0034】ライン・フェッチ及びダブル・ワード・ス
トアの操作は、同じ物理アレイでは実行されないので同
時に行なえることが理解されよう。ただし論理上、同時
に読取りと書込みの両方であるように見えることがあ
る。例えば、図8のダブル・ワード・ストア操作が図7
のライン・フェッチの1サイクル後にスタートした場
合、インタリーブILV0へのC4の書込みはインタリ
ーブILV1からのC5の読取りと揃う。従って、イン
タリーブILV0への格納とインタリーブILV1から
のフェッチの間にコンフリクトは存在しない。
トアの操作は、同じ物理アレイでは実行されないので同
時に行なえることが理解されよう。ただし論理上、同時
に読取りと書込みの両方であるように見えることがあ
る。例えば、図8のダブル・ワード・ストア操作が図7
のライン・フェッチの1サイクル後にスタートした場
合、インタリーブILV0へのC4の書込みはインタリ
ーブILV1からのC5の読取りと揃う。従って、イン
タリーブILV0への格納とインタリーブILV1から
のフェッチの間にコンフリクトは存在しない。
【0035】利点として、本発明に従ったアレイ有効化
ロジックでは、パターン生成ロジックを変更するだけ
で、将来起こり得る所定のコンフリクトの組み合わせは
ほぼすべて処理できる。インタリーブ・レジスタがチェ
ックするために実行すべきことは、将来のイベントに対
応したパターンを生成することだけである。
ロジックでは、パターン生成ロジックを変更するだけ
で、将来起こり得る所定のコンフリクトの組み合わせは
ほぼすべて処理できる。インタリーブ・レジスタがチェ
ックするために実行すべきことは、将来のイベントに対
応したパターンを生成することだけである。
【0036】本発明に従ったアレイ有効化ロジックはま
た、起こりうる拒否イベントを処理するよう変更及び調
整できる。ILV0インタリーブ・レジスタはその場合
1つではなく2つ以上になる。リクエスタ当たりレジス
タを1つにし、図4のように対応するOR及びシフト・レ
フトを付加すれば、すべてのレジスタの論理和をとって
比較ロジックに用いられるバスが得られる。シフト・レ
フトのオーバフローの論理和をとればステージング信号
が得られる。ある時点で特定のリクエスタの拒否があっ
た場合、対応するそのインタリーブ・レジスタを0にし
てブロックされたインタリーブをすべて空けることがで
きる。
た、起こりうる拒否イベントを処理するよう変更及び調
整できる。ILV0インタリーブ・レジスタはその場合
1つではなく2つ以上になる。リクエスタ当たりレジス
タを1つにし、図4のように対応するOR及びシフト・レ
フトを付加すれば、すべてのレジスタの論理和をとって
比較ロジックに用いられるバスが得られる。シフト・レ
フトのオーバフローの論理和をとればステージング信号
が得られる。ある時点で特定のリクエスタの拒否があっ
た場合、対応するそのインタリーブ・レジスタを0にし
てブロックされたインタリーブをすべて空けることがで
きる。
【0037】アレイ・スタンバイ・ロジックは、オーバ
フローしたシフト・レフト・ビットで機能させる必要は
ない。アレイ・スタンバイ・ロジックはインタリーブ・
レジスタ内のいずれかの中間ビットでも機能し、将来の
1サイクルだけでなく、アレイ・スタンバイ・ロジック
が現在のサイクルをどのくらいリードするようにするか
に応じて、2つ以上のサイクルを予測できる。更にアレ
イ有効化ロジックは、必要なら2ステージ以上に拡張し
てアレイが追加サイクルでもオンの状態にとどまるよう
にすることができる。
フローしたシフト・レフト・ビットで機能させる必要は
ない。アレイ・スタンバイ・ロジックはインタリーブ・
レジスタ内のいずれかの中間ビットでも機能し、将来の
1サイクルだけでなく、アレイ・スタンバイ・ロジック
が現在のサイクルをどのくらいリードするようにするか
に応じて、2つ以上のサイクルを予測できる。更にアレ
イ有効化ロジックは、必要なら2ステージ以上に拡張し
てアレイが追加サイクルでもオンの状態にとどまるよう
にすることができる。
【0038】本発明は、クロック・サイクルに関して述
べてきたが、クロックされない連続パイプラインでも実
現できる。更に、長い未使用期間中にアレイを定期的
に"ウェイクアップ"させる必要がある場合は、そのよう
なウェイクアップ機構をここで述べたシステム・リソー
ス有効化装置に追加することもできる。
べてきたが、クロックされない連続パイプラインでも実
現できる。更に、長い未使用期間中にアレイを定期的
に"ウェイクアップ"させる必要がある場合は、そのよう
なウェイクアップ機構をここで述べたシステム・リソー
ス有効化装置に追加することもできる。
【0039】まとめとして、本発明の構成に関して以下
の事項を開示する。
の事項を開示する。
【0040】(1)システム・リソースに対する操作を
有効にするリソース有効化装置であって、前記リソース
に対する現在及び将来の操作を表すレジスタと、要求さ
れたリソース操作に対応したパターンをキュー内のリソ
ース操作に対する複数のリクエストそれぞれに適用する
パターン・ジェネレータと、前記複数のリクエストそれ
ぞれについて、リクエストが他のリソース操作とコンフ
リクトするかどうかを、前記リクエストに適用されたパ
ターンを前記レジスタと比較することによって確認する
比較ロジックと、コンフリクトが確認されない場合には
前記キュー内のリクエストに優先権を与え、前記リクエ
ストに適用されたパターンに従って前記レジスタを更新
する優先権ロジックと、前記レジスタに従って前記リソ
ースに対する操作を有効にするリソース有効化ロジック
と、を含む、装置。 (2)前記システム・リソースはアレイである、前記
(1)記載のリソース有効化装置。 (3)前記アレイはインタリーブを含む、前記(2)記
載のリソース有効化装置。 (4)前記システム・リソースは専用ロジックである、
前記(1)記載のリソース有効化装置。 (5)前記システム・リソースはスタンバイ・モードを
含む、前記(1)記載のリソース有効化装置。 (6)前記リソース有効化ロジックは、要求されたリソ
ース操作の少なくとも1サイクル前に前記リソースに対
する操作を有効にする、前記(1)記載のリソース有効
化装置。 (7)前記レジスタの内容はサイクル毎に左シフトされ
る、前記(1)記載のリソース有効化装置。 (8)システム・リソースに対する操作を有効にするリ
ソース有効化装置であって、前記リソースに対する現在
及び将来の操作を表す手段と、要求されたリソース操作
に対応したパターンをキュー内のリソース操作に対する
複数のリクエストそれぞれに適用する手段と、前記複数
のリクエストそれぞれについて、リクエストが他のリソ
ース操作とコンフリクトするかどうかを、前記リクエス
トに適用されたパターンと前記レジスタを比較すること
によって確認する手段と、コンフリクトが確認されない
場合に前記キュー内のリクエストに優先権を与え、前記
リクエストに適用されたパターンに従って前記レジスタ
を更新する手段と、前記レジスタに従って前記リソース
に対する操作を有効にする手段と、を含む装置。 (9)前記システム・リソースはアレイである、前記
(8)記載のリソース有効化装置。 (10)前記アレイは更にインタリーブを含む、前記
(9)記載のリソース有効化装置。 (11)前記システム・リソースは専用ロジックであ
る、前記(8)記載のリソース有効化装置。 (12)前記システム・リソースはスタンバイ・モード
を含む、前記(8)記載のリソース有効化装置。 (13)操作を有効にする前記手段は、要求されたリソ
ース操作の少なくとも1サイクル前に前記リソースに対
する操作を有効にする、前記(8)記載のリソース有効
化装置。 (14)操作を表す前記手段はサイクル毎に更新され
る、前記(8)記載のリソース有効化装置。 (15)システム・リソースに対する操作を有効にする
方法であって、前記リソースに対する現在及び将来の操
作をレジスタで表すステップと、要求されたリソース操
作に対応したパターンをキュー内のリソース操作に対す
る複数のリクエストそれぞれに適用するステップと、前
記複数のリクエストそれぞれについて、リクエストが他
のリソース操作とコンフリクトするかどうかを、前記リ
クエストに適用されたパターンを前記レジスタと比較す
ることによって確認するステップと、コンフリクトが確
認されない場合は前記キュー内のリクエストに優先権を
与え、前記リクエストに適用されたパターンに従って前
記レジスタを更新するステップと、前記レジスタに従っ
て前記リソースに対する操作を有効にするステップと、
を含む、方法。 (16)操作が有効にされる前記システム・リソースは
アレイである、前記(15)記載の操作有効化方法。 (17)操作を有効にする前記ステップは、前記アレイ
のインタリーブに対する操作を有効にするステップを更
に含む、前記(16)記載の操作有効化方法。 (18)操作が有効にされる前記システム・リソースは
専用ロジックである、前記(15)記載の操作有効化方
法。 (19)操作を有効にする前記ステップは、要求された
リソース操作の少なくとも1サイクル前に前記リソース
に対する操作を有効にするステップを更に含む、前記
(15)記載の操作有効化方法。 (20)前記レジスタをサイクル毎に更新するステップ
を更に含む、前記(15)記載の操作有効化方法。
有効にするリソース有効化装置であって、前記リソース
に対する現在及び将来の操作を表すレジスタと、要求さ
れたリソース操作に対応したパターンをキュー内のリソ
ース操作に対する複数のリクエストそれぞれに適用する
パターン・ジェネレータと、前記複数のリクエストそれ
ぞれについて、リクエストが他のリソース操作とコンフ
リクトするかどうかを、前記リクエストに適用されたパ
ターンを前記レジスタと比較することによって確認する
比較ロジックと、コンフリクトが確認されない場合には
前記キュー内のリクエストに優先権を与え、前記リクエ
ストに適用されたパターンに従って前記レジスタを更新
する優先権ロジックと、前記レジスタに従って前記リソ
ースに対する操作を有効にするリソース有効化ロジック
と、を含む、装置。 (2)前記システム・リソースはアレイである、前記
(1)記載のリソース有効化装置。 (3)前記アレイはインタリーブを含む、前記(2)記
載のリソース有効化装置。 (4)前記システム・リソースは専用ロジックである、
前記(1)記載のリソース有効化装置。 (5)前記システム・リソースはスタンバイ・モードを
含む、前記(1)記載のリソース有効化装置。 (6)前記リソース有効化ロジックは、要求されたリソ
ース操作の少なくとも1サイクル前に前記リソースに対
する操作を有効にする、前記(1)記載のリソース有効
化装置。 (7)前記レジスタの内容はサイクル毎に左シフトされ
る、前記(1)記載のリソース有効化装置。 (8)システム・リソースに対する操作を有効にするリ
ソース有効化装置であって、前記リソースに対する現在
及び将来の操作を表す手段と、要求されたリソース操作
に対応したパターンをキュー内のリソース操作に対する
複数のリクエストそれぞれに適用する手段と、前記複数
のリクエストそれぞれについて、リクエストが他のリソ
ース操作とコンフリクトするかどうかを、前記リクエス
トに適用されたパターンと前記レジスタを比較すること
によって確認する手段と、コンフリクトが確認されない
場合に前記キュー内のリクエストに優先権を与え、前記
リクエストに適用されたパターンに従って前記レジスタ
を更新する手段と、前記レジスタに従って前記リソース
に対する操作を有効にする手段と、を含む装置。 (9)前記システム・リソースはアレイである、前記
(8)記載のリソース有効化装置。 (10)前記アレイは更にインタリーブを含む、前記
(9)記載のリソース有効化装置。 (11)前記システム・リソースは専用ロジックであ
る、前記(8)記載のリソース有効化装置。 (12)前記システム・リソースはスタンバイ・モード
を含む、前記(8)記載のリソース有効化装置。 (13)操作を有効にする前記手段は、要求されたリソ
ース操作の少なくとも1サイクル前に前記リソースに対
する操作を有効にする、前記(8)記載のリソース有効
化装置。 (14)操作を表す前記手段はサイクル毎に更新され
る、前記(8)記載のリソース有効化装置。 (15)システム・リソースに対する操作を有効にする
方法であって、前記リソースに対する現在及び将来の操
作をレジスタで表すステップと、要求されたリソース操
作に対応したパターンをキュー内のリソース操作に対す
る複数のリクエストそれぞれに適用するステップと、前
記複数のリクエストそれぞれについて、リクエストが他
のリソース操作とコンフリクトするかどうかを、前記リ
クエストに適用されたパターンを前記レジスタと比較す
ることによって確認するステップと、コンフリクトが確
認されない場合は前記キュー内のリクエストに優先権を
与え、前記リクエストに適用されたパターンに従って前
記レジスタを更新するステップと、前記レジスタに従っ
て前記リソースに対する操作を有効にするステップと、
を含む、方法。 (16)操作が有効にされる前記システム・リソースは
アレイである、前記(15)記載の操作有効化方法。 (17)操作を有効にする前記ステップは、前記アレイ
のインタリーブに対する操作を有効にするステップを更
に含む、前記(16)記載の操作有効化方法。 (18)操作が有効にされる前記システム・リソースは
専用ロジックである、前記(15)記載の操作有効化方
法。 (19)操作を有効にする前記ステップは、要求された
リソース操作の少なくとも1サイクル前に前記リソース
に対する操作を有効にするステップを更に含む、前記
(15)記載の操作有効化方法。 (20)前記レジスタをサイクル毎に更新するステップ
を更に含む、前記(15)記載の操作有効化方法。
【図1】本発明に従ってアレイ有効化ラインを有するア
レイの図である。
レイの図である。
【図2】パイプライン・リクエスト・キューの1例を示
す図である。
す図である。
【図3】アレイ有効化ロジックに送られたリクエストの
図である。
図である。
【図4】本発明に従ったアレイ有効化ロジックの好適な
実施例を示す図である。
実施例を示す図である。
【図5】本発明に従ったアレイ有効化ロジックの好適な
実施例を示す図である。
実施例を示す図である。
【図6】各種操作リクエストのパターン・マスクを示す
図である。
図である。
【図7】ライン・フェッチ操作のインタリーブ・レジス
タ構成を示す図である。
タ構成を示す図である。
【図8】ダブル・ワード・ストア操作のインタリーブ・
レジスタ構成を示す図である。
レジスタ構成を示す図である。
10 RAMアレイ 12 入力レジスタ 14 出力レジスタ 16 アドレス・レジスタ 18 クロック有効化ライン 20 書込み有効化ライン 22、72 アレイ有効化ライン 24 リクエスタ 26 リクエスト・バス 28 リクエスト・セレクタ 30 アレイ有効化ロジック 32 アレイ要求ライン 34 アドレス・ライン 36 操作ライン 38 レジスタ 40 無コンフリクト・ライン 42 リクエスト・バス 44 パターン・ジェネレータ 46 パターン・バス 48 インタリーブ・レジスタ 54 コンフリクト・ライン 56 パターン・セレクタ 60 グラント・バス 62 優先権選択ロジック 64 シフト・レフト 66 ステージ1レジスタ 68 ステージ2レジスタ 78 優先権ロジック
フロントページの続き (72)発明者 エイドリアン・エリック・シーグラー アメリカ合衆国12603、ニューヨーク州ポ キプシ、サットン・パーク・ロード 86
Claims (20)
- 【請求項1】システム・リソースに対する操作を有効に
するリソース有効化装置であって、 前記リソースに対する現在及び将来の操作を表すレジス
タと、 要求されたリソース操作に対応したパターンをキュー内
のリソース操作に対する複数のリクエストそれぞれに適
用するパターン・ジェネレータと、 前記複数のリクエストそれぞれについて、リクエストが
他のリソース操作とコンフリクトするかどうかを、前記
リクエストに適用されたパターンを前記レジスタと比較
することによって確認する比較ロジックと、 コンフリクトが確認されない場合には前記キュー内のリ
クエストに優先権を与え、前記リクエストに適用された
パターンに従って前記レジスタを更新する優先権ロジッ
クと、 前記レジスタに従って前記リソースに対する操作を有効
にするリソース有効化ロジックと、 を含む、装置。 - 【請求項2】前記システム・リソースはアレイである、
請求項1記載のリソース有効化装置。 - 【請求項3】前記アレイはインタリーブを含む、請求項
2記載のリソース有効化装置。 - 【請求項4】前記システム・リソースは専用ロジックで
ある、請求項1記載のリソース有効化装置。 - 【請求項5】前記システム・リソースはスタンバイ・モ
ードを含む、請求項1記載のリソース有効化装置。 - 【請求項6】前記リソース有効化ロジックは、要求され
たリソース操作の少なくとも1サイクル前に前記リソー
スに対する操作を有効にする、請求項1記載のリソース
有効化装置。 - 【請求項7】前記レジスタの内容はサイクル毎に左シフ
トされる、請求項1記載のリソース有効化装置。 - 【請求項8】システム・リソースに対する操作を有効に
するリソース有効化装置であって、 前記リソースに対する現在及び将来の操作を表す手段
と、 要求されたリソース操作に対応したパターンをキュー内
のリソース操作に対する複数のリクエストそれぞれに適
用する手段と、 前記複数のリクエストそれぞれについて、リクエストが
他のリソース操作とコンフリクトするかどうかを、前記
リクエストに適用されたパターンと前記レジスタを比較
することによって確認する手段と、 コンフリクトが確認されない場合に前記キュー内のリク
エストに優先権を与え、前記リクエストに適用されたパ
ターンに従って前記レジスタを更新する手段と、 前記レジスタに従って前記リソースに対する操作を有効
にする手段と、 を含む装置。 - 【請求項9】前記システム・リソースはアレイである、
請求項8記載のリソース有効化装置。 - 【請求項10】前記アレイは更にインタリーブを含む、
請求項9記載のリソース有効化装置。 - 【請求項11】前記システム・リソースは専用ロジック
である、請求項8記載のリソース有効化装置。 - 【請求項12】前記システム・リソースはスタンバイ・
モードを含む、請求項8記載のリソース有効化装置。 - 【請求項13】操作を有効にする前記手段は、要求され
たリソース操作の少なくとも1サイクル前に前記リソー
スに対する操作を有効にする、請求項8記載のリソース
有効化装置。 - 【請求項14】操作を表す前記手段はサイクル毎に更新
される、請求項8記載のリソース有効化装置。 - 【請求項15】システム・リソースに対する操作を有効
にする方法であって、 前記リソースに対する現在及び将来の操作をレジスタで
表すステップと、 要求されたリソース操作に対応したパターンをキュー内
のリソース操作に対する複数のリクエストそれぞれに適
用するステップと、 前記複数のリクエストそれぞれについて、リクエストが
他のリソース操作とコンフリクトするかどうかを、前記
リクエストに適用されたパターンを前記レジスタと比較
することによって確認するステップと、 コンフリクトが確認されない場合は前記キュー内のリク
エストに優先権を与え、前記リクエストに適用されたパ
ターンに従って前記レジスタを更新するステップと、 前記レジスタに従って前記リソースに対する操作を有効
にするステップと、 を含む、方法。 - 【請求項16】操作が有効にされる前記システム・リソ
ースはアレイである、請求項15記載の操作有効化方
法。 - 【請求項17】操作を有効にする前記ステップは、前記
アレイのインタリーブに対する操作を有効にするステッ
プを更に含む、請求項16記載の操作有効化方法。 - 【請求項18】操作が有効にされる前記システム・リソ
ースは専用ロジックである、請求項15記載の操作有効
化方法。 - 【請求項19】操作を有効にする前記ステップは、要求
されたリソース操作の少なくとも1サイクル前に前記リ
ソースに対する操作を有効にするステップを更に含む、
請求項15記載の操作有効化方法。 - 【請求項20】前記レジスタをサイクル毎に更新するス
テップを更に含む、請求項15記載の操作有効化方法。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US08/414,856 US5710933A (en) | 1995-03-31 | 1995-03-31 | System resource enable apparatus |
| US414856 | 1995-03-31 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH08292918A true JPH08292918A (ja) | 1996-11-05 |
| JP3273493B2 JP3273493B2 (ja) | 2002-04-08 |
Family
ID=23643275
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP05017296A Expired - Fee Related JP3273493B2 (ja) | 1995-03-31 | 1996-03-07 | システム・リソース有効化装置 |
Country Status (3)
| Country | Link |
|---|---|
| US (6) | US5710933A (ja) |
| EP (1) | EP0735456A3 (ja) |
| JP (1) | JP3273493B2 (ja) |
Families Citing this family (18)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5983341A (en) * | 1997-04-25 | 1999-11-09 | International Business Machines Corporation | Data processing system and method for extending the time for execution of an instruction |
| US6052772A (en) * | 1998-04-13 | 2000-04-18 | International Business Machines Corporation | Memory request protocol method |
| JP3937371B2 (ja) * | 1998-05-08 | 2007-06-27 | 富士通株式会社 | 競合制御方法及び競合制御システム |
| US6393534B1 (en) * | 1999-09-27 | 2002-05-21 | Ati International Srl | Scheduler for avoiding bank conflicts in issuing concurrent requests to main memory |
| US6393512B1 (en) * | 1999-09-27 | 2002-05-21 | Ati International Srl | Circuit and method for detecting bank conflicts in accessing adjacent banks |
| US6701399B1 (en) * | 2000-02-29 | 2004-03-02 | Compaq Information Technologies Group | Priority mechanism for scheduling isochronous and asynchronous transactions on a shared bus |
| US20030014474A1 (en) * | 2001-05-30 | 2003-01-16 | Mckaig Ray S. | Alternate zero overhead task change circuit |
| US20040172631A1 (en) * | 2001-06-20 | 2004-09-02 | Howard James E | Concurrent-multitasking processor |
| US7421693B1 (en) * | 2002-04-04 | 2008-09-02 | Applied Micro Circuits Corporation | Logic for synchronizing multiple tasks at multiple locations in an instruction stream |
| US6920632B2 (en) * | 2002-08-23 | 2005-07-19 | Xyron Corporation | Dynamic multilevel task management method and apparatus |
| JP2005004350A (ja) * | 2003-06-10 | 2005-01-06 | Sony Ericsson Mobilecommunications Japan Inc | リソース管理方法及び装置、リソース管理プログラム、記憶媒体 |
| US7512948B2 (en) * | 2003-11-20 | 2009-03-31 | International Business Machines Corporation | Method, system, and program for managing operation requests using different resources |
| US20070043895A1 (en) * | 2005-08-16 | 2007-02-22 | Adams Chad A | Method and apparatus for row based power control of a microprocessor memory array |
| US7774356B2 (en) * | 2006-12-04 | 2010-08-10 | Sap Ag | Method and apparatus for application state synchronization |
| US8645628B2 (en) * | 2010-06-24 | 2014-02-04 | International Business Machines Corporation | Dynamically supporting variable cache array busy and access times for a targeted interleave |
| US9141438B2 (en) | 2011-06-30 | 2015-09-22 | Net Navigation Systems, Llc | Logic for synchronizing multiple tasks |
| US9870298B2 (en) * | 2013-08-26 | 2018-01-16 | Google Llc | Application resource utilization management |
| CN110704782A (zh) * | 2019-09-30 | 2020-01-17 | 北京字节跳动网络技术有限公司 | 页面响应方法、装置、电子设备及存储介质 |
Family Cites Families (36)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4381552A (en) * | 1978-12-08 | 1983-04-26 | Motorola Inc. | Stanby mode controller utilizing microprocessor |
| EP0033007B1 (en) * | 1979-12-26 | 1986-03-12 | Texas Instruments Incorporated | Power conservation control in an electronic calculator |
| US4525780A (en) * | 1981-05-22 | 1985-06-25 | Data General Corporation | Data processing system having a memory using object-based information and a protection scheme for determining access rights to such information |
| JPS6089225A (ja) * | 1983-10-20 | 1985-05-20 | Hitachi Ltd | 自動電源切断方式 |
| US4590586A (en) * | 1984-07-12 | 1986-05-20 | Sperry Corporation | Forced clear of a memory time-out to a maintenance exerciser |
| US4665328A (en) * | 1984-07-27 | 1987-05-12 | National Semiconductor Corporation | Multiple clock power down method and structure |
| JPS61105795A (ja) * | 1984-10-29 | 1986-05-23 | Nec Corp | メモリ回路 |
| US4794521A (en) * | 1985-07-22 | 1988-12-27 | Alliant Computer Systems Corporation | Digital computer with cache capable of concurrently handling multiple accesses from parallel processors |
| JP2760787B2 (ja) * | 1987-08-28 | 1998-06-04 | 株式会社日立製作所 | 電子計算機システムの運転制御装置 |
| US5016167A (en) * | 1987-12-21 | 1991-05-14 | Amdahl Corporation | Resource contention deadlock detection and prevention |
| JPH0298722A (ja) * | 1988-10-05 | 1990-04-11 | Nec Corp | 電源制御機能付データ処理装置 |
| JP2761600B2 (ja) * | 1989-01-17 | 1998-06-04 | 三洋電機株式会社 | コンピュータシステムメモリコントローラ |
| US5222239A (en) * | 1989-07-28 | 1993-06-22 | Prof. Michael H. Davis | Process and apparatus for reducing power usage microprocessor devices operating from stored energy sources |
| US5167024A (en) * | 1989-09-08 | 1992-11-24 | Apple Computer, Inc. | Power management for a laptop computer with slow and sleep modes |
| JP2877378B2 (ja) * | 1989-09-29 | 1999-03-31 | 株式会社東芝 | パーソナルコンピュータ |
| US5218704A (en) * | 1989-10-30 | 1993-06-08 | Texas Instruments | Real-time power conservation for portable computers |
| US5197130A (en) * | 1989-12-29 | 1993-03-23 | Supercomputer Systems Limited Partnership | Cluster architecture for a highly parallel scalar/vector multiprocessor system |
| US5473774A (en) * | 1990-03-15 | 1995-12-05 | Texas Instruments Incorporated | Method for conflict detection in parallel processing system |
| JPH04230508A (ja) * | 1990-10-29 | 1992-08-19 | Internatl Business Mach Corp <Ibm> | 低電力消費メモリ装置 |
| US5461266A (en) * | 1990-11-27 | 1995-10-24 | Hitachi, Ltd. | Power consumption control system |
| US5410711A (en) * | 1991-02-14 | 1995-04-25 | Dell Usa, L.P. | Portable computer with BIOS-independent power management |
| US5390350A (en) * | 1991-04-22 | 1995-02-14 | Western Digital Corporation | Integrated circuit chip core logic system controller with power saving features for a microcomputer system |
| US5262998A (en) * | 1991-08-14 | 1993-11-16 | Micron Technology, Inc. | Dynamic random access memory with operational sleep mode |
| US5410713A (en) * | 1992-01-02 | 1995-04-25 | Smith Corona/Acer | Power-management system for a computer |
| GB2264794B (en) * | 1992-03-06 | 1995-09-20 | Intel Corp | Method and apparatus for automatic power management in a high integration floppy disk controller |
| US5339427A (en) * | 1992-03-30 | 1994-08-16 | International Business Machines Corporation | Method and apparatus for distributed locking of shared data, employing a central coupling facility |
| US5452401A (en) * | 1992-03-31 | 1995-09-19 | Seiko Epson Corporation | Selective power-down for high performance CPU/system |
| US5422855A (en) * | 1992-03-31 | 1995-06-06 | Intel Corporation | Flash memory card with all zones chip enable circuitry |
| US5404543A (en) * | 1992-05-29 | 1995-04-04 | International Business Machines Corporation | Method and system for reducing an amount of power utilized by selecting a lowest power mode from a plurality of power modes |
| US5408639A (en) * | 1992-07-21 | 1995-04-18 | Advanced Micro Devices | External memory access control for a processing system |
| US5392437A (en) * | 1992-11-06 | 1995-02-21 | Intel Corporation | Method and apparatus for independently stopping and restarting functional units |
| US5339445A (en) * | 1992-11-16 | 1994-08-16 | Harris Corporation | Method of autonomously reducing power consumption in a computer sytem by compiling a history of power consumption |
| US5408144A (en) * | 1993-01-07 | 1995-04-18 | Hitachi, Ltd. | Semiconductor integrated circuits with power reduction mechanism |
| US5337285A (en) * | 1993-05-21 | 1994-08-09 | Rambus, Inc. | Method and apparatus for power control in devices |
| US5408668A (en) * | 1993-07-28 | 1995-04-18 | Tornai; Richard | Method and apparatus for controlling the provision of power to computer peripherals |
| JP2836453B2 (ja) * | 1993-08-26 | 1998-12-14 | 日本電気株式会社 | 半導体メモリの初段回路方式 |
-
1995
- 1995-03-31 US US08/414,856 patent/US5710933A/en not_active Expired - Fee Related
- 1995-06-06 US US08/465,977 patent/US5774735A/en not_active Expired - Fee Related
- 1995-06-06 US US08/465,964 patent/US5862360A/en not_active Expired - Fee Related
- 1995-06-07 US US08/484,771 patent/US5692209A/en not_active Expired - Fee Related
- 1995-06-07 US US08/475,672 patent/US5710936A/en not_active Expired - Fee Related
- 1995-06-07 US US08/479,758 patent/US5715472A/en not_active Expired - Fee Related
-
1996
- 1996-02-16 EP EP96102332A patent/EP0735456A3/en not_active Withdrawn
- 1996-03-07 JP JP05017296A patent/JP3273493B2/ja not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| EP0735456A2 (en) | 1996-10-02 |
| US5862360A (en) | 1999-01-19 |
| US5710933A (en) | 1998-01-20 |
| US5692209A (en) | 1997-11-25 |
| US5715472A (en) | 1998-02-03 |
| EP0735456A3 (en) | 1998-12-09 |
| JP3273493B2 (ja) | 2002-04-08 |
| US5774735A (en) | 1998-06-30 |
| US5710936A (en) | 1998-01-20 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP3273493B2 (ja) | システム・リソース有効化装置 | |
| JP4829541B2 (ja) | マルチレベル・レジスタ・ファイルを有するディジタル・データ処理装置 | |
| US6393531B1 (en) | Queue based data control mechanism for queue based memory controller | |
| US6732242B2 (en) | External bus transaction scheduling system | |
| US5598550A (en) | Cache controller for processing simultaneous cache accesses | |
| KR101121606B1 (ko) | 스레드 최적화 멀티프로세서 아키텍처 | |
| EP1550032B1 (en) | Method and apparatus for thread-based memory access in a multithreaded processor | |
| JP4425798B2 (ja) | 1サイクルで複数回のアクセスを支援するキャッシュメモリを含むマイクロプロセッサ | |
| WO1999021088A1 (en) | An apparatus and method to guarantee forward progress in a multithreaded processor | |
| US20020095555A1 (en) | Multi-ported pipelined memory | |
| US6963962B2 (en) | Memory system for supporting multiple parallel accesses at very high frequencies | |
| JP2005174342A (ja) | データ処理システムのメモリ・サブシステムにおける供給者ベースのメモリ・スペキュレーションのための方法およびシステム | |
| WO1999021082A1 (en) | Method and apparatus to force a thread switch in a multithreaded processor | |
| JP2002530731A (ja) | 異常メモリアクセスまたは異なる時間のメモリアクセス実行の際のデータバス上のデータ衝突を検出するための方法および装置 | |
| US5535363A (en) | Method and apparatus for skipping a snoop phase in sequential accesses by a processor in a shared multiprocessor memory system | |
| JP3180175B2 (ja) | 命令レベルの並列処理制御方法およびプロセッサ | |
| US20030196072A1 (en) | Digital signal processor architecture for high computation speed | |
| JP4985452B2 (ja) | ベクトル処理装置 | |
| US7636812B2 (en) | Cache memory control method and cache memory control device | |
| JP3260456B2 (ja) | コンピュータシステムおよびそれに適した集積回路並びに要求選択回路 | |
| JPH06214875A (ja) | 記憶制御装置 | |
| US11803389B2 (en) | Reach matrix scheduler circuit for scheduling instructions to be executed in a processor | |
| US20070239937A1 (en) | Dynamic Clock Switch Mechanism for Memories to Improve Performance | |
| CN100573489C (zh) | 经由流动id方法的dmac发布机制 | |
| JP3169878B2 (ja) | メモリ制御回路 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| LAPS | Cancellation because of no payment of annual fees |