(57)【要約】【課題】これまで必要とされてきたよりも複雑性と努力とを軽減しながら、ＡＧＰコントローラを高速書込機能に対応させること。【解決手段】１つの回路配置および方法が、ライトトランザクションのアドレス相を扱うために従来用いられているＰＣＩ回路ブロック（５０）の外部の回路ブロック（５２）の内部で増速（例えば、２ｘあるいは４ｘ）ＡＧＰ高速書込トランザクションを処理する間に用いるデータパス（６６）をインプリメントしている。データパス（６６）をＰＣＩ回路ブロック（５０）の内部にインプリメントせずに、ＰＣＩ回路ブロック（５０）と他の回路ブロック（５２）との間にコントロールパス（９６）を定めることによって、トランザクションのアドレス相が、ＰＣＩ回路ブロック（５０）において開始されてしまった後、ＰＣＩ回路ブロック（５０）が、他の回路ブロック（５２）における増速ＡＧＰ高速書込トランザクションのデータ相を開始させることが可能になる。回路配置および方法は、また、単一ブロック増速ＡＧＰ高速書込トランザクションのみに対応し、多ブロック増速ＡＧＰ高速書込トランザクションには全く対応しないＡＧＰ高速書込トランザクションを生成するために用いられる論理回路（５２）もインプリメントしている。両方の変更の結果として、ＡＧＰインプリメンテーションの簡単さの故に、デザインの再使用が改善される。【選択図】図２
2004523041.tif 000002
【特許請求の範囲】
【請求項１】
ＡＧＰ適合デバイスと、ＡＧＰバスを通じて連絡するように構成された回路配置であって、
（ａ）ＰＣＩタイプ信号プロトコルを用いて、増速ＡＧＰ高速書込トランザクションのアドレス相を扱うように構成された第１の論理回路を含有する第１の回路ブロックであって、前記第１の論理回路が、前記ＡＧＰバスを通じる伝送のためにＡＧＰ高速書込アドレス情報を格納するように構成されたアドレスパスを含有している第１の回路ブロックと、
（ｂ）第２の論理回路を含有する第２の回路ブロックであって、前記第２の論理回路が、ＡＧＰタイプ信号プロトコルを用いて、前記増速ＡＧＰ高速書込トランザクションのデータ相を扱うように構成され、また、前記第２の論理回路が、前記ＡＧＰバスを通じる伝送のために増速ＡＧＰ高速書込データ情報を格納するように構成された増速データパスを含有している第２の回路ブロックと、
（ｃ）前記第１の論理回路に、前記第１の論理回路における前記アドレス相の開始の後に、前記第２の論理回路における前記増速ＡＧＰ高速書込トランザクションの前記データ相を開始させるために、前記第１の論理回路と前記第２の論理回路との間に結合されたコントロール信号パスと、を有する回路配置。
【請求項２】
前記第１の回路ブロックが、非ＡＧＰ論理回路に用いるように構成されたＰＣＩ適合回路ブロックを有することを特徴とする請求項１に記載の回路配置。
【請求項３】
前記増速データパスが、２ｘまたは４ｘ ＡＧＰ高速書込トランザクションのために高速書込データ情報を格納するように構成され、前記第１の論理回路が、さらに、ＰＣＩライトトランザクションのためにＰＣＩライトデータ情報を格納するように構成された非増速データパスを含有し，
前記第１の論理回路が、ＰＣＩライトトランザクションのアドレス相とデータ相との両方を扱うように構成されていることを特徴とする請求項１に記載の回路配置。
【請求項４】
前記第２の回路ブロックが、さらに、前記第２の回路ブロックの高周波ドメインポーション内に定められた伝送アウタループ回路を含有し、前記伝送アウタループ回路が、前記増速データパスに結合した１入力および１出力を含有している請求項３に記載の回路配置であって、さらに、
（ａ）１出力、および、前記アドレスパスおよび前記非増速データパスにそれぞれ結合された第１および第２の入力を含有する第１のマルチプレクサと、
（ｂ）前記ＡＧＰバスに結合された１出力、および、前記第１のマルチプレクサの前記出力および前記伝送アウタループ回路の前記出力にそれぞれ結合された第１および第２の入力を含有する第２のマルチプレクサと、を有することを特徴とする回路配置。
【請求項５】
前記第２の回路ブロックが、ＡＧＰ適合回路ブロックを有し、前記第２の論理回路が、さらに、前記ＡＧＰ適合デバイスによって開始されるＡＧＰタイプトランザクションを扱うように構成されていることを特徴とする請求項１に記載の回路配置。
【請求項６】
前記第２の回路ブロックが、単一ブロック増速ＡＧＰ高速書込トランザクションのみに対応するように構成されていることを特徴とする請求項１に記載の回路配置。
【請求項７】
前記第１の論理回路が、前記コントロール信号パスを通じて、前記第２の論理回路にアドレスバリッドコントロール信号およびトランスファサイズコントロール信号を伝送することによって、前記第２の論理回路において前記増速ＡＧＰ高速書込トランザクションの前記データ相を開始するように構成されていることを特徴とする請求項１に記載の回路配置。
【請求項８】
請求項１に記載の回路配置を有する集積回路デバイス。
【請求項９】
中央処理装置（ＣＰＵ）に、前記ＡＧＰバス、システムメモリ、ＰＣＩバスをインターフェースさせるのに用いるためのコアロジックを有することを特徴とする請求項８に記載の集積回路デバイス。
【請求項１０】
請求項１に記載の回路配置を有する装置。
【請求項１１】
請求項１に記載の回路配置を決定するハードウェア決定プログラムと、前記ハードウェア決定プログラムを保持する信号保持媒体とを有するプログラム製品であって、前記信号保持媒体が、記録可能な媒体および伝送媒体のうちの少なくとも１つを含有するプログラム製品。
【請求項１２】
中央処理装置（ＣＰＵ）に、システムメモリをメモリバスを通じて、ＡＧＰ適合デバイスをＡＧＰバスを通じてインターフェースさせるように構成された回路配置であって、
（ａ）ＣＰＵバスを通じて前記ＣＰＵとインターフェースするように構成されたＣＰＵインターフェースと、
（ｂ）前記ＣＰＵインターフェースに結合され、かつ、前記メモリバスを通じて前記システムメモリとインターフェースするように構成されたメモリコントローラと、
（ｃ） 前記ＣＰＵインターフェースおよび前記メモリコントローラに結合されたＡＧＰコントローラであって、前記ＣＰＵインターフェースによって要求されたＡＧＰ高速書込トランザクションを扱うように、かつ、前記メモリコントローラとともにＡＧＰリードトランザクションおよびＡＧＰライトトランザクションを開始するように構成されたＡＧＰコントローラと、を有する回路配置において、前記ＡＧＰコントローラが、
（ｉ）前記ＣＰＵインターフェースによって要求されたＡＧＰ高速書込トランザクションを開始するように構成された第１の論理回路を含有するＰＣＩ回路ブロックであって、前記第１の論理回路が、アドレスパスおよび１ｘデータパスを含有し、前記アドレスパスが、ＰＣＩおよびＡＧＰ高速書込アドレス情報を格納するように構成され、前記データパスが、ＰＣＩライトデータ情報を格納するように構成されているＰＣＩ回路ブロックと、
（ｉｉ）ＡＧＰタイプ信号プロトコルに基づいてトランザクションを扱うように構成された第２の論理回路を含有するＡＧＰ回路ブロックであって、前記第２の論理回路が、２ｘ／４ｘ
ＡＧＰ高速書込データ情報を格納するように構成された２ｘ／４ｘデータパスを含有しているＡＧＰ回路ブロックと、を有し、
前記第１の論理回路が、さらに、ＰＣＩタイプ信号プロトコルを用いて前記ＡＧＰ高速書込トランザクションのアドレス相を扱うように、かつ、前記２ｘ／４ｘデータパスを用いて前記第２の論理回路による前記ＡＧＰ高速書込トランザクションのデータ相の操作を開始するように構成されている回路配置。
【請求項１３】
増速ＡＧＰ 高速書込トランザクションを扱う方法であって、
（ａ）第１の回路ブロックの内部に定められた第１の論理回路において、ＰＣＩタイプ信号プロトコルを用いて、増速ＡＧＰ高速書込トランザクションのアドレス相を扱う過程であって、前記第１の論理回路が、ＡＧＰバスを通じる伝送のためにＡＧＰ高速書込アドレス情報を格納するように構成されたアドレスパスを含有している過程と、
（ｂ）ＡＧＰタイプ信号プロトコルを用いて、第２の回路ブロックの内部に定められた第２の論理回路における増速ＡＧＰ高速書込トランザクションのデータ相の操作を、前記第１の論理回路とともに、開始する過程であって、前記第２の論理回路が、ＡＧＰバスを通じる伝送のために増速ＡＧＰ高速書込データ情報を格納するように構成された増速データパスを含有している過程と、を有する方法。
【請求項１４】
前記第１の回路ブロックが、非ＡＧＰ論理回路に用いるように構成されたＰＣＩ適合回路ブロックを有することを特徴とする請求項１３に記載の方法。
【請求項１５】
前記増速データパスが、２ｘまたは４ｘ ＡＧＰ高速書込トランザクションのために高速書込データ情報を格納するように構成され、前記第１の論理回路が、さらに、ＰＣＩライトトランザクションのためにＰＣＩライトデータ情報を格納するように構成された非増速データパスを含有している請求項１３に記載の方法であって、さらに、前記第１の論理回路の内部において、ＰＣＩライトトランザクションの前記アドレス相と前記データ相との両方を扱う過程を有する方法。
【請求項１６】
前記第２の回路ブロックが、ＡＧＰ適合回路ブロックを有している請求項１３に記載の方法であって、さらに、前記第２の回路ブロックを用いて、ＡＧＰ適合デバイスによって開始されるＡＧＰタイプトランザクションを扱う過程を有する方法。
【請求項１７】
前記第２の回路ブロックが、単一ブロック増速ＡＧＰ高速書込トランザクションのみに対応するように構成されていることを特徴とする請求項１３に記載の方法。
【請求項１８】
前記データ相の操作を開始する過程が、前記第１の論理回路と前記第２の論理回路とを互いに結合させるコントロール信号パスを通じて、前記第２の論理回路にアドレスバリッドコントロール信号およびトランスファサイズコントロール信号を伝送する過程を含有することを特徴とする請求項１３に記載の方法。
【請求項１９】
ＡＧＰバスを通じてＡＧＰ適合デバイスと連絡するように構成されたＡＧＰコントローラ回路配置であって、
（ａ）前記ＡＧＰバスを通じて増速ＡＧＰ高速書込トランザクションを実行するのに用いるためのアドレス情報およびデータ情報を受信するように構成された少なくとも１つのパスウェイと、
（ｂ） 前記パスウェイに結合され、かつ、前記アドレス情報およびデータ情報を用いて少なくとも１つの単一ブロック増速ＡＧＰ高速書込トランザクションを生成するように構成された論理回路であって、多ブロック増速ＡＧＰ高速書込トランザクションを生成することのできない論理回路と、を有する回路配置。
【請求項２０】
前記論理回路が、前記増速ＡＧＰ高速書込トランザクションのデータ相を扱うように構成されたステートマシンを含有し、前記ステートマシンが、前記ＡＧＰバス上にＩＲＤＹ＃信号およびＦＲＡＭＥ＃信号を生成するように構成されていることを特徴とする請求項１９に記載の回路配置。
【請求項２１】
前記ステートマシンが、前記ＡＧＰバス上に宣言されたＤＥＶＳＥＬ＃信号、ＴＲＤＹ＃信号、ＳＴＯＰ＃信号に応答しないことを特徴とする請求項２０に記載の回路配置。
【請求項２２】
あらかじめ定められたクロック周期数に渡ってバーストデータを出力することのできる中央処理装置（ＣＰＵ）に結合するように構成された請求項１９に記載の回路配置であって、前記単一ブロックが、前記あらかじめ定められたクロック周期数に渡って伝送可能なデータ量を表わしている回路配置。
【請求項２３】
前記あらかじめ定められたクロック周期数が、４クロック周期であることを特徴とする請求項２２に記載の回路配置。
【請求項２４】
請求項１９に記載の回路配置を有する集積回路デバイス。
【請求項２５】
中央処理装置（ＣＰＵ）に、前記ＡＧＰバス、システムメモリ、ＰＣＩバスをインターフェースさせるのに用いるためのコアロジックを有することを特徴とする請求項２４に記載の集積回路デバイス。
【請求項２６】
請求項１９に記載の回路配置を有する装置。
【請求項２７】
請求項１９に記載の回路配置を決定するハードウェア決定プログラムと、前記ハードウェア決定プログラムを保持する信号保持媒体とを有するプログラム製品であって、前記信号保持媒体が、記録可能な媒体および伝送媒体のうちの少なくとも１つを含有するプログラム製品。
【請求項２８】
増速ＡＧＰ 高速書込トランザクションを扱う方法であって、
（ａ）ＡＧＰバスを通じて増速ＡＧＰ高速書込トランザクションを実行するのに用いるためのアドレス情報およびデータ情報を受信する過程と、
（ｂ）前記アドレス情報およびデータ情報を用いて少なくとも１つの単一ブロック増速ＡＧＰ高速書込トランザクションを、論理回路で生成する過程であって、前記論理回路が、多ブロック増速ＡＧＰ高速書込トランザクションを生成することのできない過程と、を有する方法。
【請求項２９】
前記単一ブロック増速ＡＧＰ高速書込トランザクションを生成する過程が、ステートマシンを用いて前記ＡＧＰバス上にＩＲＤＹ＃信号およびＦＲＡＭＥ＃信号を生成することによって前記ＡＧＰ高速書込トランザクションのデータ相を扱う過程を含有することを特徴とする請求項２８に記載の方法。
【請求項３０】
前記ステートマシンが、前記ＡＧＰバス上に宣言されたＤＥＶＳＥＬ＃信号、ＴＲＤＹ＃信号、ＳＴＯＰ＃信号に応答しないことを特徴とする請求項２９に記載の方法。
【請求項３１】
中央処理装置（ＣＰＵ）からバーストデータとしてデータ情報を出力する過程であって、前記バーストデータがあらかじめ定められたクロック周期数に渡って生成される過程をさらに有する請求項２８に記載の方法において、前記単一ブロックが、前記あらかじめ定められたクロック周期数に渡って伝送可能なデータ量を表わしていることを特徴とする方法。
【請求項３２】
前記あらかじめ定められたクロック周期数が、４クロック周期であることを特徴とする請求項３１に記載の方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、おおむね、エレクトロニックバスアーキテクチャ、および、それに類似の接続に関し、特に、Ａｃｃｅｌｅｒａｔｅｄ ｇｒａｐｈｉｃｓ ｐｏｒｔ （ＡＧＰ）コントローラを用いた高速書込トランザクションの対応に関するものである。
【０００２】
【従来の技術】
コンピュータおよび他の電子デバイスが、ますます増大する困難なタスクを扱うことを求められるにつれて、ますます高い性能要請が、そうしたデバイスに寄せられている。情報がそうしたデバイス間で伝送される速度が、電子システムの総合性能に重大な影響を持ち得るから、多くのデバイスにおいて特別の関心事は、例えば、互いに接続し合ったデバイス間の通信速度ないし「バンド幅」である。
【０００３】
コンピュータおよび他の電子デバイスの絶えず増加する通信要求に対応するために、いくつかの異なる接続標準が、過去何年もに渡って開発されてきた。例えば、Ｐｅｒｉｐｈｅｒａｌ Ｃｏｍｐｏｎｅｎｔ Ｉｎｔｅｒｃｏｎｎｅｃｔ （ＰＣＩ）標準が、コンピュータの中央処理装置（ＣＰＵ）に外部デバイスを接続するために開発された。ＰＣＩ接続ないしバスは、ＣＰＵへのローカルバスに対するブリッジを介してＣＰＵにインターフェースし、オーディオプロセッサ、ストレージコントローラ、グラフィックスコントローラ、ネットワークアダプタ等のＰＣＩ適合デバイスが、そのバスに結合される。
【０００４】
ＰＣＩ標準は、それ以前の技術の上に重要な改良を演じたけれども、また、ＰＣＩ標準が、より大きなバンド幅容量に対応するように改訂されたという事実にも関わらず、近年のコンピュータの増大する入力／出力要件は、それ以上の接続技術の開発を必要としている。
【０００５】
例えば、ＡＧＰ標準が、ＣＰＵの介在を要せずに、グラフィックスアクセラレータないしコントローラ（ＡＧＰ適合デバイスとして機能する）とシステムメモリとの間でグラフィカルデータを伝送するための特定の目的に用いられる高速接続を供給するために、ＰＣＩ標準の拡張として開発されている。多くのグラフィカルアプリケーション、特に３Ｄアプリケーションは、他に比して高いメモリバンド幅要件を持ち、したがって、ＡＧＰ適合接続ないしバスは、そのようなメモリ集約的なアプリケーションにおけるグラフィカルデータの伝送速度を上げる助けとなる。
【０００６】
ＰＣＩ標準とＡＧＰ標準とに対応するために、コンピュータは、通例、ＣＰＵ、システムメモリ、ＡＧＰバス、ＰＣＩバスの間にインターフェースを供給するための、コアロジックとしても知られているチップセットの使用に頼っている。ＡＧＰバスとの接続のために、コアロジックは、ＡＧＰタイプトランザクションとＰＣＩタイプトランザクションとの両方を扱うために必要なＡＧＰコントローラを含有している。ＡＧＰマスタ（例えば、グラフィックスコントローラ）は、ＡＧＰトランザクションとＰＣＩトランザクションとのどちらを用いてもシステムメモリにデータを転送できるが、ＣＰＵは、ＰＣＩトランザクションを用いてしかＡＧＰマスタにアクセスすることができず、それによって、ＡＧＰマスタは、ＰＣＩターゲットとしても動作することができる。
【０００７】
ＡＧＰバスが、特定の目的に用いられる直接接続であることを考えると、ＣＰＵは、通例、ＡＧＰ適合デバイスとシステムメモリとの間のデータ転送に関わらない。その結果、多くの例において、メモリへのＣＰＵアクセスと同様、ＰＣＩ動作も、ＡＧＰ動作と並列に生じることができる。
【０００８】
多くのグラフィックス動作は、しかしながら、依然として、ＣＰＵの関わりを必要とし、そして、そういうものとして、ＡＧＰ標準の初期のインターフェース仕様、改訂１．０は、ＣＰＵが、２ステップ手続きによってＡＧＰ適合デバイスにデータを書き込むことを可能にしている。本来的に、ＣＰＵは、システムメモリにデータを書き込むことを要し、その後、ＡＧＰ適合デバイスがそのシステムメモリからそのデータを読み出すことを（ＰＣＩトランザクションを通じて）命令する。
【０００９】
しかしながら、改訂２．０ではじめて、ＡＧＰ仕様は、高速書込トランザクションのコンセプトに対応した。高速書込トランザクションによって、データが、システムメモリに書き込まれ、その後、そこから読み出されるということを要することなく、データは、ＣＰＵからＡＧＰ適合デバイスに直接転送される。ＡＧＰ仕様の改訂２．０は、２ｘ（ツーエックス）および４ｘ（フォーエックス）速度（即ち、ＡＧＰバスのクロック周波数の２倍および４倍）の高速書込トランザクションに対応している。
【００１０】
通常のＰＣＩのライトトランザクションは、１ｘ速度で行われ、ＰＣＩコヒレンシーとオーダリングルールに従う。しかしながら、ＡＧＰ高速書込トランザクションでは、ＰＣＩバスプロトコルとＡＧＰバスプロトコルとが組み合わせて用いられており、それによって、ＰＣＩタイプトランザクションが、トランザクションを開始するのに用いられ、データフローは、一般に、ＡＧＰタイププロトコルに基づいて行われる。したがって、コアロジックデザインにおけるＡＧＰバスへのインターフェース（しばしば、ＡＧＰコントローラと呼ばれる）は、通常、ＰＣＩトランザクション操作回路とＡＧＰトランザクション操作回路との両方を含有しなければならない。
【００１１】
しかしながら、コアロジックデザインのＡＧＰコントローラにＡＧＰ高速書込対応をインプリメントすることは、前のコアロジックデザインを改変しようとするときに特に、問題を発生し得る。特に、集積回路が、ますます複雑になるにつれて、集積回路デザインの設計およびテストに伴う開発時間および開発経費も、上昇している。可能なときはいつでも、モジュールの「ビルディングブロック」アプローチが用いられ、それによって、デザインが、以前に開発され、テストされた回路ブロックから組み上げられる。デザインが、先在ブロックから組み立てられると、しばしば、創作する必要のあるカスタム回路の量が減少し、同時に、デザインが適切に機能することを実証するために要するテスト量も減少する。
【００１２】
しかしながら、ＡＧＰ適合コアロジックデザインに、完全なＡＧＰ ２．０高速書込機能への対応を置くこと（例えば、２ｘあるいは４ｘあるいは「増速」ＡＧＰ高速書込トランザクションに対応すること）は、従来、以前のコアロジック回路ブロックが、個々に再使用できるとわかっていなかったから、相当の量のカスタムデザインを必要としてきた。１例として、ＰＣＩターゲットあるいはＰＣＩマスタとして機能する回路ブロックは、ＡＧＰ２．０コントローラインプリメンテーションにおいて役立つためには、通常、２ｘおよび４ｘデータフローを扱う回路を付加することを要する。そのような機能を付加することは、時間を費やし、また、費用のかかることであり、さらに、他の応用に、例えば標準的なＰＣＩブロックとして、用いるためのデザインの転用可能性を縮小してしまう。さらに、ＡＧＰロジックは、高周波２ｘ／４ｘアウタタイミングループ回路を必要とするから、ＰＣＩ回路ブロック内に高速書込機能をインプリメントすることは、極めてタイミングクリティカルな高周波データパスに、さらなるデータパスを付け加えることになる。
【００１３】
他の１例として、ＡＧＰ ２．０仕様は、増速高速書込トランザクションを介して、マルチブロック転送のコンセプトに対応している。この状況では、１ブロックは、４クロック周期に転送できるデータ量（通常、２ｘ速度で３２バイト、４ｘ速度で６４バイト）である。マルチブロックの増速高速書込転送では、スロットリングが、ブロック基準で実行され、それは、他のＡＧＰトランザクションと同様であるが、ＰＣＩトランザクションとは相当に異なる。したがって、完全適応ＡＧＰ２．０コアロジックデザインに、マルチブロック転送のための対応をインプリメントするためには、ＡＧＰコントローラのＰＣＩ操作回路が、マルチブロックトランザクションをスロットリングできるということが必要とされる。さらに、マルチブロック転送が許可されるときにはいつでも、種々の例外的な状況、例えば、アボート状態、切断状態などを扱わなければならない。この機能の付加は、ＡＧＰコントローラ回路の複雑性を増加させ、したがって、以前のデザインの再使用を不可能にするために、開発時間および開発コストを増加させ、また、デザインの転用可能性を縮小させる。
【００１４】
したがって、ＡＧＰコントローラの従来技術には、これまで必要とされてきたよりも複雑性と努力とを相当に軽減しながら、高速書込機能に対応するという重大な要求が存在している。
【００１５】
【課題を解決するための手段】
本発明は、１つの見地において、増速（例えば、２ｘあるいは４ｘ）ＡＧＰ高速書込トランザクションを処理する間に用いるデータパスが、そのようなトランザクションのアドレス相を扱うために従来用いられているＰＣＩ回路ブロックの外部の回路ブロックの内部にインプリメントされている回路配置および方法を提供することによって、従来技術に伴うそれらの、そして、他の問題に取り組む。データパスをＰＣＩ回路ブロックの内部にインプリメントせずに、ＰＣＩ回路ブロックと他の回路ブロックとの間にコントロールパスを定めることによって、トランザクションのアドレス相が、ＰＣＩ回路ブロックにおいて開始されてしまった後、ＰＣＩ回路ブロックが、他の回路ブロックにおける増速ＡＧＰ高速書込トランザクションのデータ相を開始させることが可能になる。
【００１６】
このようにＡＧＰ高速書込機能を分配することによって、ＰＣＩ回路ブロックのデザインは、相当に簡単になり、しばしば、先在する標準化されたＰＣＩ回路ブロックデザインを、ほとんど変更することなくＡＧＰ応用に再使用することを可能にする。その結果、本発明に適合するように構成されたＰＣＩ回路ブロックデザインは、従来のデザインよりも相当に転用可能性に富むことができる。さらに、ＰＣＩ回路ブロックから、本発明に基づかなければＡＧＰコントローラデザインに用いられる、しばしばタイミングクリティカルな高周波ドメイン回路にまで延びるパスを追加することを、しばしば回避できる。
【００１７】
本発明は、他の１つの見地において、ＡＧＰ高速書込トランザクションを生成するために用いられる論理回路が、単一ブロック増速ＡＧＰ高速書込トランザクションのみに対応するように設計されている、即ち、その論理回路が、多ブロック増速ＡＧＰ高速書込トランザクションを生成することができない回路配置および方法を提供することによって、さらなる問題に取り組む。そのようにすることによって、ＡＧＰリード、ＡＧＰライト、ＰＣＩトランザクションのような他のトランザクションが、拡張された多ブロック増速ＡＧＰ高速書込トランザクションによって遅延される恐れがほとんどなくなるから、ＡＧＰバス上でのトランザクションの混じり具合が、より一様になることがしばしばとなる。さらに、ＡＧＰ高速書込トランザクションをインプリメントしている論理回路が、相当に簡単になり、それでもなお、従来のＰＣＩライトトランザクションに優る、より高速性を備えることが可能である。多ブロック転送の排除は、特に、しばしば、種々のアボート状態に対する監視の必要性を排除し、したがって、ＡＧＰ高速書込機能のインプリメントに要するゲートカウントを減少させる。さらに、現存するデザインは、多ブロックトランザクションも対応されている場合にそうであろうよりも相当に少ない変更しか必要としないから、しばしば、単一ブロックのみの機能は、従来のデザインよりも転用可能性に富む。
【００１８】
本発明を特徴付けるこれらの、そして、他の利点および観点は、併記の、本発明のさらなる一部を形成している請求項に規定されている。しかしながら、本発明およびその使用を通して達成される利点および目的をより良く理解するために、図面、および本発明の典型的な実施例が記述されている付随の記載事項を参照されたい。
【００１９】
【発明の実施の形態】
図面を参照すると、それぞれの図において、同じ番号が同じ部分を表わしている。図１は、マイクロプロセッサのような中央処理装置（ＣＰＵ） １４に、システムメモリ、グラフィックスコントローラ１８、ＰＣＩバス２０をインターフェースさせるのに用いるためのチップセット即ちコアロジック１２を含む装置１０を図示している。装置１０は、例えば、ＰＣあるいはＭａｃｉｎｔｏｓｈをベースとしたコンピュータのようなパーソナルコンピュータであってもよい。もっとも、他の形のコンピュータ、例えば、ハンドヘルドコンピュータ、マルチユーザコンピュータ、サーバ、メインフレーム、ポータブルコンピュータ、あるいは、他の形の電子デバイスも、また、本発明に適合する装置と考えることができる。
【００２０】
コアロジック１２は、しばしば「ノースブリッジ」と呼ばれ、通常、ＣＰＵバス２４を通じてＣＰＵ１４に連絡を供給するためのＣＰＵインターフェース２２と、メモリバス２８を通じてシステムメモリ１６に連絡を供給するためのメモリインターフェース２６とを含有している。ＡＧＰコントローラ３０が、ＡＧＰバス３２を通じて、コアロジックにグラフィックスコントローラ１８をインターフェースさせている。グラフィックスコントローラ１８は、通常、特定の目的に用いられるビデオメモリ３４とインターフェースしており、ＣＲＴ、ＬＣＤパネル、あるいは、他のディスプレイといったディスプレイ３６を駆動するために利用される。さらに、コアロジック１２は、また、ＰＣＩバス２０（個々に図示されていない）へのインターフェースを供給するようにも構成されており、したがって、複数のアクセス可能なＩ／Ｏデバイス４０（例えば、既知のＰＣＩデバイスは他にもあるが、とりわけ、オーディオカード４２、記憶デバイス４４）に連絡を供給する。
【００２１】
用語「装置」は、コンピュータおよび他の電子デバイスのような種々のデータ処理システムのほかにも、個々の集積回路デバイスあるいはそれらの組み合わせを含む、そのようなシステム内部の種々の部品も包含すると考えることができることを認識されたい。さらに、装置内部には、１つ以上の回路配置が、通常、１つ以上の集積回路デバイス上にインプリメントされて、また、オプション的には、それらとインターフェースする付加的な個別部品を含んで、包含されていてもよい。その回路配置は、通常、集積回路デバイス上の回路配置のレイアウトを決定する、本明細書においてハードウェア決定プログラムと呼ぶ、１つ以上のコンピュータデータファイルを用いて、少なくとも部分的に設計され、製造されるということも認識されたい。そのプログラムは、通常、デザインツールによって既知の通りに生成され、その後、半導体ウェハに施される回路配置を決定するレイアウトマスクをつくるための製造工程中に用いられる。通常、そのプログラムは、ＶＨＤＬ，ｖｅｒｉｌｏｇ， ＥＤＩＦなどのハードウェア決定言語（ＨＤＬ）を用いて、あらかじめ定められたフォーマットで与えられる。したがって、本発明は、完全に機能している集積回路デバイスにインプリメントされた回路配置という状況において記述されてきたし、また、以下においても記述されるが、当業者には容易に理解されるように、本発明に適合する回路配置は、種々の形式のプログラム製品として流通可能であり、そして、本発明は、その流通を実際に遂行するために用いる信号保持媒体の特定のタイプに関係なく等しく当てはまる。信号保持媒体例には、揮発性および不揮発性メモリデバイス、とりわけ、フロッピディスク、ハードディスクドライブ、ＣＤ−ＲＯＭ、ＤＶＤのような記録可能なタイプの媒体、および、デジタルおよびアナログの通信リンクのような伝送タイプ媒体が含まれるが、それらに限定されるわけではない。
【００２２】
ＡＧＰブロックへの２ｘ／４ｘ ＡＧＰ高速書込データパスのインプリメンテーション
従来のＡＧＰコントローラデザイン上への１改良には、増速ＡＧＰ高速書込データパスが、アドレスおよび非増速データパスがインプリメントされているのと同じ回路ブロックにインプリメントされた場合がそうであるように、ＰＣＩ回路ブロックではなくてＡＧＰ回路ブロックに増速ＡＧＰ高速書込データパスをインプリメントすることが、含まれる。特に、上に検討したように、ＡＧＰ回路ブロックへの増速ＡＧＰ高速書込データパスのインプリメンテーションは、標準的なＰＣＩ回路ブロックに求められるカスタム化を相当に減少させ、それによって、本発明に適合するコアロジックデザインに用いるのに適したＰＣＩ回路ブロックを、他の応用、例えばＰＣＩブリッジ回路のような非ＡＧＰ応用、ノースブリッジ内でのＰＣＩインターフェースコントローラ、埋め込みＰＣＩバスのためのＰＣＩインターフェースコントローラなどに用いるのに、より複雑性を少なくし、より転用性を高め、より受け入れ易くする。もう１つの利点は、極めてタイミングクリティカルな２ｘ／４ｘ伝送アウタタイミングループ回路に対するデータパスの数を減少できることである。
【００２３】
従来技術においてよく知られているように、「回路ブロック」とは、通常、多数のデザインにおける部品の再利用を促進する目的のために、個々の論理的な実体として開発され、テストされ、認められている回路デザインの部品のことを一般に言う。回路ブロックを用いる集積回路のデザインは、一般に、可能な限りに互いに多数の回路ブロックを組み立て、その後、それらの回路ブロックを互いに最も効果的なデザインにインターフェースするに必要な任意の「グルー・ロジック」を開発することによって実施される。先在回路ブロックの集合を利用することによって、開発者は、先在ブロックをインターフェースするのに、最小のカスタム化された回路しか作製する必要がないことがしばしばであるから、全てのブロックの機能をゼロから再現しなければならない場合よりも、開発コストおよび開発時間を、相当に軽減することができる。回路設計者は、また、先在ブロックに実行された以前の認証およびテスト結果に依拠して、デザイン中の各々の、そして、全ての回路ブロックの内部状況の全てをテストする必要性を除外できることもしばしばである。
【００２４】
回路ブロック間への回路機能の分配は、任意ではなく、そういうものとして、増速ＡＧＰ高速書込トランザクションの処理に用いる増速データパスが、そのようなトランザクションのアドレス相をインプリメントする回路ブロックと異なる回路ブロック内に存在しているＡＧＰコントローラデザインは、回路部品間の任意の輪郭化に基づいてはいない。それどころか、概念の段階から、特定の回路ブロックに割り当てられる回路ブロックは、通常、デザイン、テスト、認証過程を通じて、明確に輪郭されている。
【００２５】
さらに、増速ＡＧＰ高速書込トランザクションのコンセプトに関しては、ＡＧＰ仕様の改訂２．０で、２ｘおよび４ｘ速度の増速トランザクションが対応されている。しかしながら、ＡＧＰ仕様の将来の改定では、本発明に適合するように扱うのに適した他の増速トランザクションが決められることが、予想される。したがって、本発明は、改訂２．０のＡＧＰ仕様に基づく応用のみに限定されるわけではない。
【００２６】
図２は、コアロジック１２のＣＰＵインターフェース２２、メモリインターフェース２６、ＡＧＰコントローラ３０間のＡＧＰトランザクションに関係する主アドレスパスおよび主データパスを図示している。図示されているインプリメンテーションにおけるＡＧＰコントローラ３０は、ＰＣＩ回路ブロック５０およびＡＧＰ回路ブロック５２を有しており、それらは、それぞれ、ＡＧＰバス３２を通じて結合するＡＧＰ適合デバイスに関係するＰＣＩタイプ信号プロトコルおよびＡＧＰタイプ信号プロトコルを扱う。
【００２７】
ＡＧＰ改訂２．０仕様と合致して、ＰＣＩタイプトランザクションが、ＡＧＰコントローラ上でＣＰＵによって開始されることを可能にするように、アドレスパス５４が、ＣＰＵインターフェース２２からＰＣＩ回路ブロック５０に経路しており、データパス５６が、ＣＰＵインターフェース２２とＰＣＩ回路ブロック５０との間に定められている。また、ＰＣＩ回路ブロック５０が、ＣＰＵインターフェース２２およびメモリインターフェース２６の各々上でＰＣＩタイプトランザクションを開始させることを可能にするように、アドレスパス５８が、ＰＣＩ回路ブロック５０からＣＰＵインターフェース２２およびメモリインターフェース２６の各々に経路しており、データパス６０が、ＰＣＩ回路ブロック５０とメモリインターフェース２６との間に延びている。さらに、ＡＧＰ回路ブロック５２によって開始されるＡＧＰタイプトランザクションを扱うために、アドレスパス６２およびデータパス６４が、ＡＧＰ回路ブロック５２とメモリインターフェース２６との間に延びている。データパス５６，６０， ６４の各々は、両方向パスを用いてインプリメントしてもよいし、単方向パスのペアを用いてインプリメントしてもよい。
【００２８】
本発明に適合するように増速ＡＧＰ高速書込データパスのインプリメンテーションに対応するために、ＣＰＵインターフェース２２からＡＧＰ回路ブロック５２に経路する追加データパス６６が、ＡＧＰ仕様によって決められている上述のアドレスパスおよびデータパスに加えて設けられている。増速（例えば、２ｘあるいは４ｘ）ＡＧＰ高速書込データが、増速ＡＧＰ高速書込トランザクションを実行するようにＡＧＰ回路ブロックに書き込まれるのは、このデータパス（単方向であるが、他のインプリメンテーションでは両方向であることもある）を通してである。
【００２９】
次に、図３は、ＡＧＰコントローラ３０をより詳細に図示しており、特に、回路ブロック５０，５２の各々内に決められているアドレスパスおよびデータパスあるいはパスウェイと、各回路ブロックによって処理されるトランザクションを管理するのに利用されるステートマシンとを図示している。
【００３０】
特に、図３に示されているように、ＡＧＰトランザクションは、１つのＡＧＰアドレスパス７０および複数のＡＧＰデータパス７２−７８を介して処理され、それらを通して、グラフィックスコントローラ（ＡＧＰバスを介して）とシステムメモリとの間で、アドレス情報およびデータ情報が渡される。ＡＧＰ仕様の改訂２．０に合致して、個々のデータパス７２，７４， ７６， ７８は、上位優先読み出し（ＨＰＲ）データ、下位優先読み出し（ＬＰＲ）データ、上位優先書き込み（ＨＰＷ）データ、下位優先書き込み（ＬＰＷ）データ用に定められている。
【００３１】
また、ＡＧＰ仕様に決められているように、読み出されたデータが２ｘあるいは４ｘ速度で処理されてもよいことを考慮して、データパス７２，７４は、ＡＧＰコントローラデザインの高周波ドメインポーション８２の内部に定められた伝送アウタタイミングループ（ＡＧＰ ２ｘロジック８０）につながれている。回路８０の出力は、ＡＧＰバスへの接続用のマルチプレクサ８４につながれる。
【００３２】
ＡＧＰ高速書込トランザクションの如きＰＣＩタイプトランザクションに関しては、ＰＣＩアドレスパス８６が、ＰＣＩ回路ブロック５０の内部に定められており、アドレスパス８６の出力は、マルチプレクサ８４の他方の入力に出力するマルチプレクサ８８の一方の入力につながれている。しかしながら、本発明に合致する、本明細書に記述のＡＧＰ高速書込データ操作をインプリメントするため、回路ブロック５０を通して全てのライトデータを通すのではなくて、互いに分離したデータパス９０および９２が、非増速（例えば、１ｘ）ＰＣＩデータ、および、増速ＡＧＰ高速書込データの如き増速（例えば、２ｘあるいは４ｘ）ＰＣＩデータのために定められている。さらに、それらの互いに分離したデータパス９０および９２は、それぞれ、回路ブロック５０および５２にインプリメントされている。データパス９０の出力は、マルチプレクサ８８の他方の入力につながれ、一方、データパス９２の出力は、回路デザインの高周波ドメイン８２内の回路８０につながれている。
【００３３】
ＰＣＩライトデータは、全ＰＣＩデータと同様にＡＧＰ仕様の下で扱われるから、容易に察知されるように、回路ブロック５０の内部のＰＣＩアドレスパス８６および１ｘデータパス９０のインプレメンテーションは、本質的に、標準的なＰＣＩ回路ブロックに必要とされるのと同じデザインである。さらに、ＡＧＰバスを通じてのＰＣＩライトトランザクションは、本質的に、ＰＣＩプロトコルに従うから、回路ブロック５０の内部にインプレメントされたＰＣＩステートマシン９４も、本質的に、非ＡＧＰインプレメンテーションの場合と同じである。
【００３４】
通常、ＡＧＰインプレメンテーションの場合に回路ブロック５０になされる必要のあってもよい、標準化されたＰＣＩ回路ブロックデザインからの唯一の変更は、ＰＣＩステートマシン９４と回路ブロック５２の内部にインプリメントされたＡＧＰステートマシン９８との間のコントロールパス９６の追加である。追加のコントロールパスは、ＰＣＩステートマシンとＡＧＰステートマシンとが、ＡＧＰ高速書込トランザクション中に通信して、ＰＣＩ回路ブロックによるアドレス相の開始に続く、そのトランザクションのデータ相を調整することを可能にする。
【００３５】
他のタイプのコントロール信号が、ＡＧＰコントローラ３０におけるＡＧＰ高速書込トランザクションの動作を調整するために、ステートマシン９４，９８間につながれてもよく、図４は、回路ブロック５０， ５２間の動作を調整するために用いられるアドレスバリッド（ＡＤＤＲ ＶＡＬＩＤ）信号、トランスファサイズ（ＸＦＥＲ  ＳＩＺＥ）信号、データエンド（ＤＡＴＡ ＥＮＤ）信号を含む、コントロール信号の典型的な１セットを図示している。図４は、例えば、２Ｘ増速ＡＧＰ高速書込トランザクションの実行中のＡＧＰアドレス／データバス（ＡＧＰ  ＡＤ ＢＵＳ）の状態を示しており、そこで、最初のクロックにおいて、アドレス情報が、ＰＣＩ回路ブロック５０によって、ＡＧＰバス上に置かれる。バスにアドレスを置くのと同時に、回路ブロック５０が、回路ブロック５２にＡＧＰ高速書込トランザクションのデータ相を次のクロック周期で開始してもよいことを通知するＡＤＤＲ  ＶＡＬＩＤ信号を宣言する。この信号を宣言するのと同時に、そのトランザクションによって伝送されるデータ量が、ＸＦＥＲ ＳＩＺＥ信号上に宣言される。したがって、最初のクロック周期に続いて、ＡＧＰステートマシンは、ＡＧＰバスに増速高速書込データ（データＤ１−Ｄ８によって表わされる）を置く用意ができる。ＤＡＴＡ ＥＮＤ信号が、それはいくつかのインプリメンテーションにおいて必要とされないこともあるが、トランザクションのデータ相が完結したことをＰＣＩステートマシンに通知するために、データ相の最後のクロック周期中にＡＧＰステートマシンによって宣言されてもよい。
【００３６】
容易に察知できるであろうが、本明細書で記述されるような（そして、図４に示されるような）増速ＡＧＰ高速書込トランザクションの実行を調整するためのステートマシン９４，９８のインプリメンテーションは、この開示の利益を得た当業者の能力の範囲内に十分にある。
【００３７】
したがって、回路ブロック５０， ５２の調整によって実行される増速ＡＧＰ高速書込トランザクションは、本質的に、そのような高速書込トランザクションに対する標準的な態様で進行する。具体的には、アドレスが有効になり、ＰＣＩオーダリングルールがトランザクションを許可したときに、ＣＰＵが、書き込みを要求する。データは、アドレス相の後でＡＧＰブロックに転送される。次に、ＰＣＩステートマシンが、その要求をアーバタに送り、アーバタが、そのＰＣＩ（書き込み）要求に対して、そのバスを承認すると、ＰＣＩ回路ブロックが、１つのクロックにおいて、そのＡＧＰバスにアドレスを置く。同じクロックにおいて、ＦＲＡＭＥ＃およびＩＲＤＹ＃が、ＡＧＰ仕様に記載されているように、ＡＧＰステートマシンによって宣言される。次のクロック周期において、ＡＧＰステートマシンが、データを伝送し、従来技術においてよく知られているように、ストローブ信号を調整する。容易に察知できるであろうが、ＦＲＡＭＥ＃は、アドレス相中に、ＰＣＩ回路ブロックかＡＧＰ回路ブロックかのいずれによって宣言されてもよい。
【００３８】
したがって、回路ブロック５０， ５２間への増速ＡＧＰ高速書込トランザクションの機能の分割は、ＰＣＩ回路ブロックを、より標準化に近く、また、より転用可能なデザインにすることがわかる。通常、非ＡＧＰ応用に用いるためのＰＣＩ回路ブロックの標準的なインプリメンテーションが、いくつかの変更例で上述したように、高速書込トランザクションに対応しながらＡＧＰインプリメンテーションとともに機能するようにできる。さらに、タイミングクリティカルな伝送アウタタイミングループへのパスの追加が回避され、それは、ＰＣＩブロックデザインの複雑性を減少させ、また、ＰＣＩブロックデザインが２ｘ／４ｘであることを意識する必要性を回避させる。
【００３９】
排他的シングルブロック増速ＡＧＰ高速書込トランザクションのインプリメンテーション
上述のＡＧＰ回路ブロック５２は、ＡＧＰ仕様の改訂２．０によって対応されている完全な高速書込プロトコルをインプリメントするために用いることができる。その他に、先在ＡＧＰ回路デザインへの影響を最小にするために、回路ブロック５２において高速書込プロトコルの一部だけに対応することが望ましいこともある。従来技術においてよく知られているように、ＡＧＰ仕様の改訂２．０は、本明細書で増速ＡＧＰ高速書込トランザクションと呼んでいる、２ｘあるいは４ｘ速度のＣＰＵからＡＧＰ適合デバイスへのＰＣＩデータパスを採り入れている。そのようにすることは、同じ動作を２段階プロセスによって実行することを必要とし、それによって、ＣＰＵがメモリに書き込み、ＡＧＰがメモリから読み出すという、ＡＧＰ仕様のより初期の改訂における、以前の要件を排除する。
【００４０】
ＡＧＰ仕様の改訂２．０では、増速（例えば、２ｘあるいは４ｘ）高速書込トランザクションは、在来のＰＣＩデータ転送と異なる信号プロトコルに従う。その信号プロトコルは、ＡＧＰ信号プロトコルとも異なるが、スロットリングは、ＡＧＰ転送に共通であるブロック基準（即ち、２ｘモードで３２バイトまで、４ｘモードで６４バイトまで転送する４クロック転送）である。ＡＧＰ高速書込のスロットリングは、ＰＣＩ信号プロトコルとＡＧＰ信号プロトコルとの混合を必要とする。
【００４１】
ＡＧＰ仕様の改訂２．０で完全高速書込プロトコルに対応するには、ＡＧＰ適合デバイスは、次のスロットルポイントの前に、即ち、待機状態を挿入する前に、少なくとも１つのデータブロックを受信する必要がある。無制限の数のデータブロックが、ＡＧＰ仕様の改訂２．０では、単一のＡＧＰ高速書込トランザクションにおいて、伝送可能である。
【００４２】
しかしながら、多データブロックのスロットリングに対応することは、他と比べて複雑であり、先在（即ち、改訂１．０適合）ＡＧＰ回路ブロックデザインからの相当の改訂を必要とするということがわかっている。特に、多ブロック転送のための機能を加えることは、ＡＧＰステートマシンが、マスタアボート、ターゲットアボート、データ付き切断、データなし切断を含む、いくつかのアボート状態を検出することを必要とする。さらに、多ブロック増速ＡＧＰ高速書込トランザクションは、ＡＧＰバスを通じての種々のタイプのＡＧＰトランザクションとＰＣＩトランザクションとの間にバンド幅を割り当てることに関する限り、問題を引き起こすと思われる。高速書込プロトコルは、トランザクションの長さに関する限りではＰＣＩ規則に従うから、単一の高速書込トランザクションが、他と比べて長時間の間、ＡＧＰバスに留まっていることができ、他のタイプのトランザクションをＡＧＰバスを通じて実行させようとするのを本質的に行き詰まらせる。
【００４３】
さらに、いくつかのＣＰＵアーキテクチャ（例えば、ＩＢＭおよびモトローラの開発したパワーＰＣアーキテクチャ）では、ＣＰＵデータバーストが、通常、６４ビットデータからなる４クロックに制限され、それは、２ｘデータレートで４クロックのＡＧＰデータ、あるいは、４ｘデータレートで２クロックのＡＧＰデータで転送できることに注意されたい。その結果として、多くのＣＰＵデザインにおいて任意のＣＰＵバーストによって伝送できる最大データ量が、増速ＡＧＰ高速書込トランザクションでは、多くても１データブロックに一致するということがわかっている。
【００４４】
したがって、図３のＡＧＰステートマシン９８のいくつかの実施例において、単一ブロック増速ＡＧＰ高速書込トランザクションのみに対応する、即ち、増速ＡＧＰ高速書込トランザクション当り、単一データブロック（４クロック）の転送のみに対応するのが望ましいこともある。
【００４５】
そのようにすることは、ＡＧＰ仕様の改訂２．０で、連続高速書込動作において、２ｘモードでは秒当り約４２５メガバイト、４ｘモードでは秒当り約８５２メガバイトのスループットを与える。さらに、そのようにすることは、ＡＧＰバス上のトランザクションの混じり具合を、増速ＡＧＰ高速書込トランザクションと、ＡＧＰリードやＡＧＰライトやＰＣＩトランザクションのような他のタイプのトランザクションとの間で均等にする。
【００４６】
もう１つの相当な利益は、コアロジックにおける高速書込のインプリメンテーションの単純さであり、それと同時に、それでもなお、在来のＰＣＩライトトランザクションを越えて優に２００％以上の改善を与えるということである。特に、多ブロック転送への対応を排除することによって、最早、ＡＧＰステートマシンは、そうでなければ多ブロック転送のためにモニタする必要のあるいくつかの信号、例えば、ターゲットアボート、マスタアボート、データ付き切断、データなし切断などの種々のアボート状態を検出するために用いられるＤＥＶＳＥＬ＃信号、ＴＲＤＹ＃信号、ＳＴＯＰ＃信号をモニタする必要がなくなる。その結果として、ＡＧＰステートマシン上の追加のゲートカウントが、大幅に減少でき、さらに、そのインプメンテーションは、現存するデザインの大幅な変更を伴うことなく簡単にインプリメントできる故に、より転用可能なものとなる。
【００４７】
例えば、図５は、単一ブロック増速高速書込転送のみに対応したＡＧＰステートマシンを利用した２ｘ増速ＡＧＰ高速書込トランザクションの動作を図示している。そのステートマシンは、データフローを実行するのに、ＩＲＤＹ＃信号およびＦＲＡＭＥ＃信号しか駆動する必要がない。図５に示されている他の信号、即ち、ｃｌｏｃｋ，ＡＧＰ ＡＤ ＢＵＳ， Ｃ／ＢＥ＃， ＡＤ＿ＳＴＢｘ， ＷＢＦ＃の各信号は、従来技術でよく知られているように駆動される。
【００４８】
コアロジックは、ＷＢＦ＃信号が宣言されなければ高速書込転送を開始することができるが、高速書込転送が開始されると、ＡＧＰ適合デバイスは、次のスロットルポイントの前に、少なくとも１つのデータブロックを受信することを必要とされる。１ブロック転送のみを持つことによって、３２バイトのデータが、２ｘモードの４クロックで伝送でき、６４バイトが、４ｘモードの４クロックで伝送できる。１００ＭＨｚの典型的なパワーＰＣ
ＣＰＵが、秒当り８００メガバイトのピークレートで書き込みを発すると仮定すると、高速書込トランザクションは、最も早い時点で宣言されたＩＲＤＹ＃で５クロック、最大遅延を持って宣言されたＩＲＤＹ＃で６クロックを超えないから、本実施例で記述したインプリメンテーションは、残りのＡＧＰデータパス（例えば、ＡＧＰリードやＡＧＰライト）がＡＧＰバスの利用を適性に分担することを確保しながら、このレートのピーク高速書込トラフィックを維持することができる。
【００４９】
容易に察知されるであろうように、図５に図示されているタイミング図を生成するステートマシンおよび他の回路ロジックのインプリメンテーションは、この開示の利益を得た当業者の能力の範囲内に十分にある。
【００５０】
本発明の精神および範囲から逸脱することなく、図示されている実施例に対して、種々の変更をなすことができる。例えば、上述のように、回路ブロック５２は、いくつかの実施例において、完全ＡＧＰ高速書込プロトコルをインプリメントすることができる。さらに、他の実施例において、単一ブロック増速ＡＧＰ高速書込転送のみへの対応は、回路ブロック５０と５２との間への本明細書で記述のデータパス機能の分配を行わずにインプリメントすることもできる。さらに、他のバーストデータ特性がＣＰＵに伴っている例では、他のサイズのブロック（例えば、他のクロック周期数）が、本発明に適合する単一ブロックＡＧＰ高速書込トランザクションに用いられてもよい。
【００５１】
他の変更が、当業者には明らかである。したがって、本発明は、請求項にある。
【図面の簡単な説明】
【図１】本発明に適合する高速書込機能を持つＡＧＰコントローラを調整するコアロジックを含有する装置のブロック図である。
【図２】図１のコアロジック内の主要ＡＧＰパスウェイを図示するブロック図である。
【図３】図１， ２のＡＧＰコントローラのブロック図である。
【図４】図３のＡＧＰコントローラを用いた高速書込転送中のＰＣＩブロックとＡＧＰブロックとの間のコントロール信号の典型的な宣言を図示するタイミング図である。
【図５】図３のＡＧＰコントローラを用いた典型的な単一ブロック高速書込トランザクションを図示するタイミング図である。
【符号の説明】
１２  コアロジック
１４  ＣＰＵ
１６  システムメモリ
１８  グラフィックスコントローラ
２０  ＰＣＩバス
２２  ＣＰＵインターフェース
２４  ＣＰＵバス
２６  メモリインターフェース
２８  メモリバス
３０  ＡＧＰコントローラ
３２  ＡＧＰバス
５０  ＰＣＩ回路ブロック
５２  ＡＧＰ回路ブロック
７０  ＡＧＰアドレスパス
７２， ７４， ７６， ７８   ＡＧＰデータパス
８６  ＰＣＩアドレスパス
９０  ＰＣＩ １ｘ データパス
９２  ＰＣＩ ２ｘ／４ｘ データパス
９６  コントロールパス
【図１】
2004523041.tif 000003
【図２】
2004523041.tif 000004
【図３】
2004523041.tif 000005
【図４】
2004523041.tif 000006
【図５】
2004523041.tif 000007
【国際公開パンフレット】
2004523041.tif 000008
2004523041.tif 000009
2004523041.tif 000010
2004523041.tif 000011
2004523041.tif 000012
2004523041.tif 000013
2004523041.tif 000014
2004523041.tif 000015
2004523041.tif 000016
2004523041.tif 000017
2004523041.tif 000018
2004523041.tif 000019
2004523041.tif 000020
2004523041.tif 000021
2004523041.tif 000022
2004523041.tif 000023
2004523041.tif 000024
2004523041.tif 000025
2004523041.tif 000026
2004523041.tif 000027
2004523041.tif 000028
2004523041.tif 000029
2004523041.tif 000030
2004523041.tif 000031
2004523041.tif 000032
【国際調査報告】
2004523041.tif 000033
2004523041.tif 000034
2004523041.tif 000035
2004523041.tif 000036
2004523041.tif 000037