(57)【要約】  プロデューサ回路とコンシューマ回路（１２Ｐ，１２Ｃ）との間のデータのダイレクトストリーミングを容易にし、それとは別にアドレスベースのネットワーク（１８）で通信するように構成した回路装置及び方法。プロデューサ回路（１２Ｐ）によって出力され、且つコンシューマ回路（１２Ｃ）によって期待されるデータ・ストリームを通信するリクエストへと符号化したアドレス情報から、プロデューサ回路及びコンシューマ回路（１２Ｐ，１２Ｃ）の各々用の同期信号を発生させる。次に、プロデューサ回路及びコンシューマ回路（１２Ｐ，１２Ｃ）用の同期信号（４６，５６）を用いて、プロデューサ回路（１２Ｐ）によって出力されたデータ・ストリームをコンシューマ回路（１２Ｃ）によって期待されるフォーマットに選択的に変更する。典型的には、このような変更は、コンシューマ回路（１２Ｃ）がプロデューサ回路（１２Ｐ）によって出力されたものよりも多いデータを期待するときには、データをデータ・ストリームに挿入する方法を取るようにし、コンシューマ回路がプロデューサ回路（１２Ｐ）によって出力したものよりも少ないデータを期待するときには、プロデューサ回路（１２Ｐ）によって通信されたデータを捨てる方法を取るようにする。
2008544390.tif 000002
【特許請求の範囲】
【請求項１】
プロデューサ回路とコンシューマ回路との間でデータを通信する方法であって、
前記プロデューサ回路及び前記コンシューマ回路の各々は、メモリアドレス空間にてアドレスを特定するメモリアクセス・リクエストを用いて、アドレスベースのネットワークでデータを通信するように構成されており、
前記プロデューサ回路から前記プロデューサ回路によって出力したデータ・ストリームに関連付けられた複数のメモリアクセス・リクエストを受信して、前記プロデューサ回路から受信した複数のメモリアクセス・リクエストの各々によって関連付けられたアドレスを特定するステップと、
前記コンシューマ回路から前記コンシューマ回路によって期待されるデータ・ストリームに関連付けられた複数のメモリアクセス・リクエストを受信して、前記コンシューマ回路から受信した複数のメモリアクセス・リクエストの各々によって関連付けられたアドレスを特定するステップと、
前記プロデューサ回路から受信した複数のメモリアクセス・リクエストに応じて特定したアドレスから、第１の同期信号を生成するステップと、
前記コンシューマ回路から受信した複数のメモリアクセス・リクエストに応じて特定したアドレスから、第２の同期信号を生成するステップと、
前記第１及び第２の同期信号に応じて、前記プロデューサ回路によって出力されたデータ・ストリームを前記コンシューマ回路によって期待されるフォーマットに選択的に変更するステップを含む、前記プロデューサ回路によって出力されたデータ・ストリームからのデータを前記コンシューマ回路に通信リンクで通信するステップとを含むデータ通信方法。
【請求項２】
前記第１の同期信号を生成するステップは、前記プロデューサ回路からの現在のメモリアクセス・リクエストによって特定したアドレスと前記プロデューサ回路からの以前のメモリアクセス・リクエストによって特定したアドレスとを比較して、前記比較に基づいて前記第１の同期信号を選択的にアサートするステップを含み、
前記第２の同期信号を生成するステップは、前記コンシューマ回路からの現在のメモリアクセス・リクエストによって特定したアドレスと前記コンシューマ回路からの以前のメモリアクセス・リクエストによって特定したアドレスとを比較して、前記比較に基づいて前記第２の同期信号を選択的にアサートするステップを含み、
前記プロデューサ回路によって出力されたデータ・ストリームを選択的に変更するステップは、前記第２の同期信号をアサートする前に前記第１の同期信号をアサートする場合に、前記第１の同期信号をアサートする間、前記コンシューマ回路から受信したメモリアクセス・リクエストに応じて、前記通信リンクで補充データを前記コンシューマ回路に通信するステップと、前記第１の同期信号をアサートする前に前記第２の同期信号をアサートする場合に、前記第２の同期信号をアサートする間、前記プロデューサ回路から受信したメモリアクセス・リクエストに関連付けられたデータを捨てて、前記通信リンクでのデータの通信を閉塞するステップとを含む、請求項１に記載のデータ通信方法。
【請求項３】
前記第２の同期信号をアサートする前に前記第１の同期信号をアサートする場合に、前記プロデューサ回路が更なるメモリアクセス・リクエストを発行するのを一時的に引き止めるステップと、前記第１の同期信号をアサートする前に前記第２の同期信号をアサートする場合に、前記コンシューマ回路が更なるメモリアクセス・リクエストを発行するのを一時的に引き止めるステップとを更に含む、請求項２に記載のデータ通信方法。
【請求項４】
前記第１の同期信号を選択的にアサートするステップは、前記プロデューサ回路からの現在のメモリアクセス・リクエストで特定したアドレスが、前記プロデューサ回路からの以前のメモリアクセス・リクエストで特定したアドレス以下であるとした決定に基づいている、請求項２に記載のデータ通信方法。
【請求項５】
前記第２の同期信号を選択的にアサートするステップは、前記コンシューマ回路からの現在のメモリアクセス・リクエストで特定したアドレスが、前記コンシューマ回路からの以前のメモリアクセス・リクエストで特定したアドレス以下であるとした決定に基づいている、請求項２に記載のデータ通信方法。
【請求項６】
前記第１及び第２の同期信号のうちの一方を前記第１及び第２の同期信号のうちの他方をアサートする前にアサートするときに、通知を生成するステップを更に含む、請求項２に記載のデータ通信方法。
【請求項７】
前記通知は割り込みを含む、請求項６に記載のデータ通信方法。
【請求項８】
前記補充データは、前記プロデューサ回路からの以前のメモリアクセス・リクエストに関連付けられたデータを含む、請求項２に記載のデータ通信方法。
【請求項９】
前記補充データは、デフォルトのデータ値を含む、請求項２に記載のデータ通信方法。
【請求項１０】
前記補充データは、プログラマブルのデフォルトのデータ値を含む、請求項２に記載のデータ通信方法。
【請求項１１】
前記第１の同期信号を生成するステップは、前記プロデューサ回路からの現在のメモリアクセス・リクエストによって特定したアドレスから、前記現在のメモリアクセス・リクエストが前記プロデューサ回路によって出力されるメモリブロックの第１のアドレスを指示していることを検出するステップを含み、
前記第２の同期信号を生成するステップは、前記コンシューマ回路からの現在のメモリアクセス・リクエストによって特定したアドレスから、前記現在のメモリアクセス・リクエストが前記コンシューマ回路によって取り出されるメモリブロックの第１のアドレスを指示していることを検出するステップを含む、請求項１に記載のデータ通信方法。  
【請求項１２】
前記プロデューサ回路及び前記コンシューマ回路は、同一の集積回路デバイスに設けられ、前記プロデューサ回路及び前記コンシューマ回路の各々は、アドレスベースのネットワークでデータを通信するように構成したＩＰブロックを備え、前記通信リンクは、非アドレスベースの通信リンクである、請求項１に記載のデータ通信方法。
【請求項１３】
前記プロデューサ回路及び前記コンシューマ回路の各々は、ビデオ処理のＩＰブロックを備え、前記プロデューサ回路からのメモリアクセス・リクエストは、前記通信リンクでビデオストリームを通信するように構成した、請求項１に記載のデータ通信方法。
【請求項１４】
前記プロデューサ回路及び前記コンシューマ回路の各々のモードを、アドレスベースのネットワークの代わりに前記通信リンクでデータを通信するように、可能化するステップを更に含む、請求項１に記載のデータ通信方法。
【請求項１５】
前記データは、ビデオデータであり、前記第１及び第２の同期信号の各々は、水平同期信号を含み、
当該データ通信方法は、前記プロデューサ回路及び前記コンシューマ回路から受信したメモリアクセス・リクエストに応じて、第１及び第２の垂直同期信号を生成するステップを更に含み、
前記プロデューサ回路によって出力されたデータ・ストリームを前記コンシューマ回路によって期待されるフォーマットに選択的に変更するステップは、更に、前記第１及び第２の垂直同期信号に応じて選択的に変更するステップである、請求項１に記載のデータ通信方法。
【請求項１６】
前記プロデューサ回路から受信した複数のメモリアクセス・リクエストの各々は、書き込みリクエストを含み、前記コンシューマ回路から受信した複数のメモリアクセス・リクエストの各々は、読み取りリクエストを含む、請求項１に記載のデータ通信方法。
【請求項１７】
プロデューサ回路から受信したデータをコンシューマ回路に通信するように構成した通信リンクを備える回路装置であって、
前記プロデューサ回路及び前記コンシューマ回路の各々は、メモリアドレス空間にてアドレスを特定するメモリアクセス・リクエストを用いて、アドレスベースのネットワークでデータを通信可能とするタイプのものであり、  
前記プロデューサ回路から前記プロデューサ回路によって出力したデータ・ストリームに関連付けられた複数のメモリアクセス・リクエストを受信して、特定したアドレスから第１の同期信号を生成するように構成した第１の同期信号生成ロジックと、
前記コンシューマ回路から前記コンシューマ回路によって期待されるデータ・ストリームに関連付けられた複数のメモリアクセス・リクエストを受信して、特定したアドレスから第２の同期信号を生成するように構成した第２の同期信号生成ロジックと、
前記プロデューサ回路によって出力されたデータ・ストリームからのデータを前記コンシューマ回路に通信リンクで通信するように構成した制御ロジックとを備え、
前記制御ロジックは、前記第１及び第２の同期信号に応じて、前記プロデューサ回路によって出力されたデータ・ストリームを前記コンシューマ回路によって期待されるフォーマットに選択的に変更するように構成した、回路装置。
【請求項１８】
前記第１の同期信号生成ロジックは、前記プロデューサ回路からの現在のメモリアクセス・リクエストによって特定したアドレスと前記プロデューサ回路からの以前のメモリアクセス・リクエストによって特定したアドレスとを比較して、前記比較に基づいて前記第１の同期信号を選択的にアサートすることにより、前記第１の同期信号を生成するように構成し、
前記第２の同期信号生成ロジックは、前記コンシューマ回路からの現在のメモリアクセス・リクエストによって特定したアドレスと前記コンシューマ回路からの以前のメモリアクセス・リクエストによって特定したアドレスとを比較して、前記比較に基づいて前記第２の同期信号を選択的にアサートすることにより、前記第２の同期信号を生成するように構成した、請求項１７に記載の回路装置。
【請求項１９】
前記制御ロジックは、前記第２の同期信号をアサートする前に前記第１の同期信号をアサートする場合に、前記第１の同期信号をアサートする間、前記コンシューマ回路から受信したメモリアクセス・リクエストに応じて、前記通信リンクで補充データを前記コンシューマ回路に通信し、前記第１の同期信号をアサートする前に前記第２の同期信号をアサートする場合に、前記第２の同期信号をアサートする間、前記プロデューサ回路から受信したメモリアクセス・リクエストに関連付けられたデータを捨てて、前記通信リンクでのデータの通信を閉塞することにより、前記プロデューサ回路によって出力されたデータ・ストリームを選択的に変更するように構成した、請求項１８に記載の回路装置。  
【請求項２０】
前記制御ロジックは、更に、前記第２の同期信号をアサートする前に前記第１の同期信号をアサートする場合に、前記プロデューサ回路が更なるメモリアクセス・リクエストを発行するのを一時的に引き止め、前記第１の同期信号をアサートする前に前記第２の同期信号をアサートする場合に、前記コンシューマ回路が更なるメモリアクセス・リクエストを発行するのを一時的に引き止めように構成した、請求項１９に記載の回路装置。
【請求項２１】
前記補充データは、前記プロデューサ回路からの以前のメモリアクセス・リクエストに関連付けられたデータを含む、請求項１９に記載の回路装置。
【請求項２２】
前記補充データは、デフォルトのデータ値を含む、請求項１９に記載の回路装置。
【請求項２３】
前記補充データは、プログラマブルのデフォルトのデータ値を含む、請求項１９に記載の回路装置。
【請求項２４】
前記第１の同期信号生成ロジックは、前記プロデューサ回路からの現在のメモリアクセス・リクエストで特定したアドレスが、前記プロデューサ回路からの以前のメモリアクセス・リクエストで特定したアドレス以下であるとした決定に基づいて、前記第１の同期信号を選択的にアサートするように構成した、請求項１８に記載の回路装置。
【請求項２５】
前記第２の同期信号生成ロジックは、前記コンシューマ回路からの現在のメモリアクセス・リクエストで特定したアドレスが、前記コンシューマ回路からの以前のメモリアクセス・リクエストで特定したアドレス以下であるとした決定に基づいて、前記第２の同期信号を選択的にアサートするように構成した、請求項１８に記載の回路装置。
【請求項２６】
前記制御ロジックは、更に、前記第１及び第２の同期信号のうちの一方を前記第１及び第２の同期信号のうちの他方をアサートする前にアサートするときに、通知を生成するように構成した、請求項１８に記載の回路装置。
【請求項２７】
前記通知は割り込みを含む、請求項１８に記載の回路装置。
【請求項２８】
前記データは、ビデオデータであり、前記第１及び第２の同期信号の各々は、水平同期信号を含み、
当該回路装置は、更に、前記プロデューサ回路及び前記コンシューマ回路から受信したメモリアクセス・リクエストに応じて、第１及び第２の垂直同期信号を生成するように構成し、
前記制御ロジックは、更に、前記第１及び第２の垂直同期信号に応じて、前記プロデューサ回路によって出力されたデータ・ストリームを前記コンシューマ回路によって期待されるフォーマットに選択的に変更するように構成した、請求項１８に記載の回路装置。
【請求項２９】
前記第１の同期信号生成ロジックは、前記プロデューサ回路からの現在のメモリアクセス・リクエストによって特定したアドレスから、前記現在のメモリアクセス・リクエストが前記プロデューサ回路によって出力されるメモリブロックの第１のアドレスを指示していることを検出することによって、前記第１の同期信号を生成するように構成し、
前記第２の同期信号生成ロジックは、前記コンシューマ回路からの現在のメモリアクセス・リクエストによって特定したアドレスから、前記現在のメモリアクセス・リクエストが前記コンシューマ回路によって取り出されるメモリブロックの第１のアドレスを指示していることを検出することによって、前記第２の同期信号を生成するように構成した、請求項１７に記載の回路装置。  
【請求項３０】
前記プロデューサ回路及び前記コンシューマ回路の各々は、アドレスベースのネットワークでデータを通信するように構成したＩＰブロックを備え、前記通信リンクは、非アドレスベースの通信リンクである、請求項１７に記載の回路装置。
【請求項３１】
前記プロデューサ回路及び前記コンシューマ回路の各々は、ビデオ処理のＩＰブロックを備え、前記プロデューサ回路からのメモリアクセス・リクエストは、前記通信リンクでビデオストリームを通信するように構成した、請求項１７に記載の回路装置。
【請求項３２】
前記プロデューサ回路から受信した複数のメモリアクセス・リクエストの各々は、書き込みリクエストを含み、前記コンシューマ回路から受信した複数のメモリアクセス・リクエストの各々は、読み取りリクエストを含む、請求項１７に記載の回路装置。
【請求項３３】
前記プロデューサ回路、前記コンシューマ回路、及び請求項１７に記載の回路装置を備える集積回路デバイス。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電子設計の分野に関し、特にメモリアクセスシステム及び電子設計における回路間のデータストリーミング方法に関する。
【背景技術】
【０００２】
電子設計における回路間のデータ通信は、電子設計の総合的な性能において重要な要素になることがよくある。特に、システムオンチップ（ＳＯＣ）設計などの高性能集積回路は複雑で、ＩＰブロックなどの回路間のデータ通信は、このような設計の処理能力における重要な役割を担う。
【０００３】
多くの場合、ＩＰブロックは、他のＩＰブロックへのデータ通信、及び他のＩＰブロックからのデータ通信のために、アドレスベースのネットワークに頼っている。アドレスベースのネットワークでは、データ・パケットは、メモリアドレス空間の特定のアドレスに関連付けられており、特定のアドレスは、データを送信するプロデューサ回路とデータを受信するコンシューマ回路との双方に認識可能なように、各データ・パケットを特定するのに効果的に作用する。幾つかの例では、プッシュ型通信を用いてマスターとして作用するデータのプロデューサは、データをスレーブとして作用するデータのコンシューマに押し込むことができる。他の例では、プル型通信を用いて、マスターとして作用するデータのコンシューマは、データをスレーブとして作用するプロデューサから引っ張ることができる。
【０００４】
更に別の例では、ＩＰブロック間のデータ通信を容易にする共有メモリを用いることができる。共有メモリに結合したＩＰブロック間のデータ通信のために、データのプロデューサとして作用する或るＩＰブロックは、アドレスベースのネットワークでアドレスベースの通信を用いてデータを共有メモリに書き込む。次に、データのコンシューマとして作用する別のＩＰブロックは、同一のアドレスベースのネットワークで再びアドレスベースの通信を用いて、共有メモリから現在格納されているデータを読み取る。
【０００５】
共有メモリベースの通信は、設計の柔軟性と再利用に関して多くの利益を提示する。各データ・パケットは、特定のアドレスに関連付けられているので、データ・パケットは、プロデューサのＩＰブロックとコンシューマのＩＰブロックとの間で相関をとりやすい。 更に、特定のＩＰブロックは、標準化したインタフェースを利用するように設計することができ、これは特定の設計でＩＰブロックを利用するのに必要なカスタマイズ化の量を減少させる。
【０００６】
更に、典型的には共有メモリアーキテクチャにおけるプロデューサ及びコンシューマのＩＰブロックの動作をきつめに調整する必要はないし、同期させる必要もない。この柔軟性の故に、共有メモリアーキテクチャは、ビデオデータ・ストリームなどのデータ・ストリーム処理に関して特に役立つ。プロデューサのＩＰブロックは、ビデオデータのフレームを共有メモリに書き込み、その一方で、コンシューマのＩＰブロックは、ビデオデータのフレームを読み取って、データの追加処理を行うことがよくある。更に、幾つかの例では、例えばビデオフレームの一部だけを表示するのが望ましいときなど、コンシューマのＩＰブロックは、プロデューサのＩＰブロックによって格納したビデオフレームの全てを読み取ることさえ必要としないようにすることもできる。
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、共有メモリアーキテクチャの使用による１つの欠点は、共有メモリへのバンド幅、及び共有メモリからのバンド幅のリソースが、限られていることである。プロデューサ及びコンシューマのＩＰブロック、並びに回路設計における潜在的な他のＩＰブロックは、メモリへのアクセスを共有することが要求される。このため、あまりに多くのＩＰブロックが同時に共有メモリにアクセスすると、各ブロックのスループットが悪化する。
【０００８】
従って、これらの制限の故に、幾つかのＩＰブロック間で専用化し、取り決めた接続を利用するのが望ましく、又は幾つかの設計で必要にさえなる。そうすることによって、共有メモリへのアクセス上の衝突を低減させ、これにより高い通信レート及び大きいデータスループットを可能にする。しかしながら、専用化した接続により、アドレス情報は使用されず、且つプロデューサによって通信されたデータがコンシューマによって適切に受信するのを確実にするのに厳格な同期が必要であり、典型的には、プロデューサ側のデータ量が、コンシューマ側のデータ量と同一になるのを確実にすることによって行われる。例えば、ビデオデータの場合では、プロデューサによって送られたビデオデータの各フレームが、コンシューマによってビデオデータの完全なフレームとして認識されるのを確実にするのに厳格な同期が必要となることがよくある。例えば、プロデューサがコンシューマによって期待される量よりも多いか、又は少ないフレームのデータを送信した場合、ビデオデータの１つのフレーム向けのデータが、コンシューマによってビデオデータの隣接フレームに組み入れるものとして解釈されうる。一旦、フレームが非整列になると、擬似的な人工物、即ち映画でさえディスプレイ化したビデオ描写をもたらす。 
【０００９】
専用化した接続によるＩＰブロックは、エンドユースの狭い用途の、より限られた適用範囲になる傾向がある。更に、典型的に専用化した接続上で通信するプロデューサ及びコンシューマのＩＰブロックは、プロデューサ及びコンシューマにおけるデータ・ストリームの適切な整列を確実にするように特に構成しなければならない。他方では、多くの状況にて、アドレスベースの通信にとって、専用化した接続上で通信するように構成した既存のＩＰブロックを、容易に適合させることができるようにするのが望ましい。このようなＩＰブロックを専用化した接続の使用に適合させる従来の試みは、アドレス情報を簡単に捨ててしまい、且つプロデューサ及びコンシューマのデータ・ストリームの継続的な整列と同期を確実にするように被通信データ量の厳格な制御を必要としていた。一旦、データ・ストリームが同期を失って非整列になると、データ・ストリームの同期を回復するのにリセットが必要になることがよくある。従って、アドレスベースの通信をサポートするＩＰブロックが、専用化した接続上で通信するのを可能にする方法のニーズが、当該分野で存続している。
【課題を解決するための手段】
【００１０】
本発明は、従来技術に関連付けられた上述及び他の問題を、プロデューサ回路とコンシューマ回路との間のデータのダイレクトストリーミングを容易にし、それとは別にアドレスベースのネットワークで通信するように構成した回路装置及び方法を提供することによって処理する。特に、本発明による実施例は、プロデューサ回路によって出力され、且つコンシューマ回路によって期待されるデータ・ストリームを通信するリクエストに符号化したアドレス情報から、プロデューサ回路及びコンシューマ回路の各々用の同期信号を生成する。次に、プロデューサ回路及びコンシューマ回路用の同期信号を用いて、プロデューサ回路によって出力したデータ・ストリームをコンシューマ回路によって期待されるフォーマットに選択的に変更する。典型的には、このような変更は、コンシューマ回路がプロデューサ回路によって出力されたものよりも多いデータを期待するときには、データをデータ・ストリームに挿入する方法を取るようにし、コンシューマ回路がプロデューサ回路によって出力したものよりも少ないデータを期待するときには、プロデューサ回路によって通信されたデータを捨てる方法を取るようにする。
【００１１】
本発明を特徴付ける、これら及び他の利点と特徴は、添付され、且つ更なる要素を構成した請求の範囲に記載される。しかしながら、本発明、及び本発明によって達成する利点及び目的を十分に理解するのに、図面及びその付随の説明を参酌すべきであり、以下、本発明の模範的な実施例を説明する。
【発明を実施するための最良の形態】
【００１２】
以下、自己同期を利用して、電子設計におけるプロデューサ回路とコンシューマ回路との間のデータのダイレクトストリーミングを容易にする実施例を説明する。特に、データ・ストリームの出力及び受信のそれぞれに関連して、プロデューサ回路及びコンシューマ回路によって生成したメモリアクセスのリクエストへと符号化したアドレス情報を用いて、プロデューサ及びコンシューマの同期信号を生成する。これらの信号を順番に用いて、プロデューサ回路によって出力したデータ・ストリームをコンシューマ回路によって期待されるデータに自己同期する。
【００１３】
このような自己同期には、プロデューサ回路によって出力したデータ・ストリームをコンシューマ回路によって期待されるフォーマットに選択的に変更することを組み入れている。典型的には、このような変更は、コンシューマ回路がプロデューサ回路によって出力されたものよりも多いデータを期待するときには、データをデータ・ストリームに挿入する方法を取るようにし、コンシューマ回路がプロデューサ回路によって出力したものよりも少ないデータを期待するときには、プロデューサ回路によって通信されたデータを捨てる方法を取るようにする。
【００１４】
同期信号の生成は、データ・ストリームに組み入れたデータのブロック間の境界の検出に基づくことがよくある。このようなものとして、例えばプロデューサ回路によって出力するか、又はコンシューマ回路によって受信するメモリブロックにおける第１のアドレスの検出に応じて、同期信号をアサートする。以下、更に詳細に説明するように、例えば、幾つかの環境で、メモリブロックは隣接範囲のメモリアドレスを含むと想定することができるため、現在のリクエスト用のアドレスが、以前のリクエストのアドレス以下（即ち、大きくない）であると分かるときはいつも、同期信号をアサートするようにする。更に、ビデオストリーミング・アプリケーションでは、ビデオデータのラインの端、並びにビデオデータのフレームの端を検出して、二次元（即ち、水平及び垂直）の自己同期を提供するのが望ましい。アドレス情報から同期信号を導出する他の方法は、本発明開示によって瞬時の恩恵を受ける当業者に明らかである。
【００１５】
本発明によるプロデューサ回路は、データ・ストリームを出力可能な如何なる回路であってもよく、本発明によるコンシューマ回路も、データ・ストリームを受信可能な如何なる回路であってもよい。また、プロデューサ回路は、コンシューマ回路として機能することもできるのは明らかであり、その逆も同様である。図示した実施例では、プロデューサ回路及びコンシューマ回路は、ＳＯＣ設計などの同一の集積回路設計への組み込みに適したＩＰブロックとして実現している。しかしながら、このような回路は、モジュラ・ブロックとして実現するのが必要とされるわけではなく、このような回路を同一の集積回路デバイスに必ずしも設ける必要はないことは明らかである。従って、本発明は、以下に説明する特定の実施例に限定されない。 
【００１６】
上述したように、プロデューサ回路及びコンシューマ回路の各々は、アドレスベースのネットワーク上で通信するように構成され、典型的には、データに関連付けられたアドレス情報を組み入れる、読み取り又は書き込みリクエストの発行を経て、該リクエストの結果として、該データを読み取り又は書き込みするようにする。アドレス情報を専用の相互接続線で提供するか、又は通信すべきリクエスト及び／又はデータと同一の相互接続線で通信することができることは明らかである。更に、プロデューサ回路又はコンシューマ回路は、アドレスベースのネットワーク上で依然として通信することができ、以下に説明するように、自己同期に専用化した接続を介して別の回路と並行して通信することもできる。
【００１７】
以下、同一の参照番号がめいめいの図中の要素を指示する図面を参照するに、図１は、例えばＩＰブロックなどの複数の回路１２を組み入れる集積回路１０を示す。複数の回路１２の各々は、専用化したアドレスベースのメモリインタフェース１４を有する。メモリインタフェース１４は、関連付けられた回路１２をアドレスベースのネットワーク１８を介して共有メモリ１６に結合するのに用いる。アドレスベースのネットワーク１８は、例えばＰＣＴ公報第ＷＯ２００４０９９９９５号に開示されるような、パイプライン化メモリアクセスネットワーク（ＰＭＡＮ）として実現することができ、この文献の内容は本内容に組み入れる。別の例において、例えばプル型アーキテクチャ、プッシュ型アーキテクチャ、マルチドロップバスアーキテクチャなどの、他のタイプのアドレスベースのネットワークを代わりに用いることができる。
【００１８】
上述のように、各回路（即ちＩＰブロック）１２は、典型的には、アドレスベースのネットワークで通信するように構成する。包括的に、アドレス情報と関連付けられ、且つアドレス情報によって特定されるデータを送信及び／又は受信するためのリクエストを生成する全ての回路は、アドレスベースのネットワークで通信するように構成していると考えてよい。この点で、各メモリインタフェース１４は、ネットワーク１８におけるコマンド及びアドレス情報（及び、書き込みリクエストとして、データの書き込み）を含むメモリアクセス・リクエストを出力するように構成する。更に、読み取りリクエストの場合には、各メモリインタフェース１４は、各回路１２によって発行されたリクエストに応じてネットワーク１８から読み取りデータを受信するように構成する。
【００１９】
また、上述したように、ＩＰブロック間の自己同期型ダイレクトデータストリーミングを提供することにより、ＩＰブロック（例えば、１２Ｐで特定したプロデューサＩＰブロックと１２Ｃで特定したコンシューマＩＰブロックとの）間のデータを通信するのに共有メモリを利用する必要性をバイパスさせるのが望ましい。このような機能性を実現するために、中間ＩＰブロック１２Ｐ，１２Ｃを結合したストリームインタフェース回路２０は、詳細に後述する態様で構成したダイレクト通信リンクを提供する。このように構成したＩＰブロック１２Ｐ，１２Ｃは、一連の書き込みメモリアクセス・リクエスト及び読み取りメモリアクセス・リクエストをストリームインタフェース回路２０に発行することによって、データ・ストリームをＩＰブロック１２ＰからＩＰブロック１２Ｃに通信することができる。
【００２０】
図示した実施例では、ストリームインタフェース回路２０は、ＩＰブロック１２Ｐ，１２Ｃ用のメモリインタフェース回路１４で規定された追加ポートに結合する。このようなポートは、アドレスベースのネットワーク１８に結合するためのポートと共に設けられ、これにより、アドレスベースの通信とダイレクトデータストリーミングの双方を、このようなＩＰブロックの各々で利用することが可能となる。しかしながら、他の実施例では、アドレスベースのネットワークで通信するように構成したＩＰブロックを、事実上、集積回路設計におけるいずれのアドレスベースのネットワークにも結合しないようにすることもできる。従って、アドレスベースのネットワークで通信するように構成したＩＰブロックは、動作設計への組み入れ時に、必ずしもこのようなネットワークで積極的に通信しなければならないわけではない。
【００２１】
ここで、図２を参照するに、ストリームインタフェース回路２０の模範的な実現例をより詳細に示す。回路２０は、一対の同期生成回路、即ちプロデューサ同期生成回路２４及びコンシューマ同期生成回路２６を組み入れており、これらをストリーム制御回路２８に結合する。プロデューサ同期生成回路２４は、プロデューサＩＰブロック１２Ｐに結合し、データ・ストリームにおけるデータのパケットがアドレス相互接続３２で受信した関連のアドレス情報と相関がある状態で、データ相互接続３０におけるデータ・ストリームを受信するように構成する。同様に、コンシューマ同期生成回路２６は、コンシューマＩＰブロック１２Ｃに結合し、アドレス相互接続３６で受信した関連のアドレス情報に応じて、データ相互接続３４にてデータ・ストリームを出力するように構成する。また、本発明による回路２０によって、例えばコマンド情報、読み取り／書き込み情報、優先度情報などの追加のリクエスト情報を受信し、搬送し、及び／又は利用することもできる。
【００２２】
プロデューサ同期生成回路２４は、データ・ストリームにおけるデータのメモリブロックの始まりを指示する同期信号を選択的にアサートするように構成する。本実施例では、ＩＰブロック１２Ｐによって通信されるメモリブロックは、メモリアドレス空間における隣接範囲のメモリアドレスにアドレスされた一組のリクエストを含む場合を想定する。このような場合に、ＩＰブロック１２Ｐによって出力された各リクエストに関連付けられたアドレスとＩＰブロック１２Ｐによって出力された以前のリクエストに関連付けられたアドレスとを比較することによって、データのメモリブロックの始まりを検出することができる。
【００２３】
結果として、ＩＰブロック１２Ｐから受信した各リクエストに対して、回路２４は、このようなリクエスト用のデータを、データ相互接続３０を介して相互接続３８で変化することなく、ストリーム制御回路２８に通すようにする。しかしながら、各リクエストに関連付けられたアドレスの場合、このアドレスは、最終アドレスレジスタ４２と比較器４４に通される。レジスタ４２は、比較器４４によって以前のリクエストのアドレス（即ち、最終アドレス）と現在のリクエストのアドレスとの比較に使用するために、以前のリクエストに関連付けられたアドレスを格納する。現在のリクエストのアドレスをレジスタ４２に通すことによって、該アドレスを、回路２４で受信する次のリクエストと比較するのに使用するレジスタに格納することができる。比較器４４は、最終リクエストのアドレス以下である、現在のリクエストに関連付けられたアドレスに応じて、プロデューサ同期信号４６を選択的にアサートして、現在のリクエストが、いつ新たなメモリブロックの第１のアドレスに向けられるかを指示するようにする。
【００２４】
同様に、コンシューマ同期生成回路２６は、コンシューマＩＰブロック１２Ｃによって期待されるデータ・ストリームにおけるデータのメモリブロックの始まりを指示する同期信号を選択的にアサートするように構成する。ＩＰブロック１２Ｃから受信した各リクエストに対して、回路２６は、このようなリクエスト用のデータをストリーム制御回路２８から相互接続４８，５０でＩＰブロック１２Ｃに通すようにする。しかしながら、各リクエストに関連付けられたアドレスの場合、該アドレスは、最終アドレスレジスタ５２及び比較器５４に通され、これらは、最終アドレスレジスタ４２及び比較器４４と同様に動作し、比較器５４は、最終リクエストのアドレス以下である、現在のリクエストに関連付けられたアドレスに応じて、コンシューマ同期信号５６を選択的にアサートして、現在のリクエストが、いつ新たなメモリブロックの第１のアドレスに向けられるかを指示する。
【００２５】
図３の状態図７０に関連して、各同期回路２４，２６が動作する態様を更に説明する。状態図７０は、各回路２４，２６が初期状態に設定されるリセット状態７２を含む。リセット状態７２は、それぞれの同期信号４６，５６をアサートする、同期状態７４に遷移する。同期信号４６，５６をアサートしない、データ状態７６への遷移は、以前のリクエストのアドレス（レジスタ４２，５２に格納され、ＡＴ‐１として表す）に対して、次の連続アドレスを表すアドレス（ＡＴ）を有するリクエストを受信するときに起こる。次に、以前のリクエストのアドレス以下のアドレスを有するリクエストを受信すると、新たなメモリブロックの開始を指示する同期信号４６，５６を再びアサートするために、同期状態７４への遷移が起こる。更に、リセットがあれば、各状態７４，７６は、リセット状態７２に遷移する。
【００２６】
図２を再び参照するに、相互接続４０でプロデューサのデータ・ストリームからデータを受信し、相互接続５０でデータをコンシューマのデータ・ストリームに出力する、ストリーム制御回路２８の構成を示している。回路２８は、同期信号４６，５６に応じて、ドレイン／フィル（ｄｒａｉｎ／ｆｉｌｌ）回路６０を制御する状態マシン５８を備え、ドレイン／フィル回路６０は、プロデューサＩＰブロック１２Ｐから受信したプロデューサのデータ・ストリームに対して、コンシューマＩＰブロック１２Ｃへと出力されるコンシューマのデータ・ストリームに選択的に変更する。特に、ドレイン／フィル回路６０は、プロデューサのデータ・ストリームからのデータを選択的に排出する、即ち捨てるようにし、及び／又は、データをプロデューサのデータ・ストリームに補充する、即ち挿入するようにして、プロデューサ及びコンシューマのデータ・ストリームを整列させるように構成することができる。更に、状態マシン５８は、随意、配列不良が生じるときはいつも、状態又は割り込み信号６２を出力し、本設計における他の回路（例えば、図１に示すような割り込みコントローラ２２）に通知するように構成することができる。
【００２７】
図４を参照するに、状態マシン５８の動作を、更に状態図８０に示す。まず、状態マシン５８は、リセット状態８２で始まり、次に、状態８４でデータを通す状態に遷移する。各通信サイクルの間、プロデューサ同期信号４６（ＳＹＮＣＩＮ）及びコンシューマ同期信号５６（ＳＹＮＣＯＵＴ）をアサートするか否かに基づいて、状態マシンは、状態８４のままでいるか、又は排出着信（ｄｒａｉｎ ｉｎｃｏｍｉｎｇ）の状態８６及び補充発信（ｆｉｌｌ ｏｕｔｇｏｉｎｇ）の状態８８のうちの１つに遷移する。特に、同期信号４６，５６が同一状態にある場合には、状態マシン５８は、状態８４のままでいることになり、これによって、プロデューサのデータ・ストリームから転送されたデータを、変化がない状態でコンシューマのデータ・ストリームに通す。
【００２８】
しかしながら、コンシューマ同期信号５６をプロデューサ同期信号４６より前にアサートする場合には、状態８６への遷移が起こる。状態８６は、状態マシン５８において、ドレイン／フィル回路６０を制御して、プロデューサＩＰブロック１２Ｐからのデータを捨てることにより、このようなデータがコンシューマＩＰブロック１２Ｃに向かうのを防ぐようにする。更に、この時点で、当該分野で既知の方法を用いて（例えば、ハンドシェイクによって）、コンシューマＩＰブロック１２Ｃが何らかの更なるリクエストを発行するのを引き止めるようにするのが望ましい。状態マシン５８は、同期信号４６，５６が再度等しくなり、状態８４へと戻す遷移をもたらすまで、この状態のままでいる。
【００２９】
プロデューサ同期信号４６を、コンシューマ同期信号５６より前にアサートする場合には、状態８８への遷移が起こる。状態８８は、状態マシン５８において、ドレイン／フィル回路６０を制御して、補充データをコンシューマのデータ・ストリームに挿入するようにする。更に、この時点で、プロデューサＩＰブロック１２Ｐが何らかの更なるリクエストを発行するのを引き止めるようにするのが望ましい。状態マシン５８は、同期信号４６，５６が再度等しくなり、状態８４へと戻す遷移をもたらすまで、この状態のままでいる。更に、リセットがあれば、状態８４，８６，８８の各々は、状態８２に遷移する。 
【００３０】
回路６０によってデータ・ストリームに挿入すべき補充データは、種々の実施例にて変えることができる。例えば、固定値を補充データ用に用いるか、或いは、それとは別に、プロデューサＩＰブロックから通された最終データ値を単に繰り返すようにすることもできる。更に、幾つかの実施例では、補充データをプログラマブルにすることを許容するのが望ましい。例えば、ビデオ処理アプリケーションでは、ブラックの画素か、又はグレーの画素を表す補充データの使用を可能にするのが望ましい。
【００３１】
従って、信号４６，５６に応じた状態マシン５８の動作によって、プロデューサＩＰブロック１２Ｐによりデータ・ストリームにて通信されたデータ量が、コンシューマＩＰブロック１２Ｃによって期待されるデータ量に合わせるように、必要とされるときに選択的に変更されることが分かる。更に、この自己同期によって、それぞれのプロデューサ及びコンシューマのデータ・ストリームを、各メモリブロック境界で効果的に整列させる。尚、プロデューサ及びコンシューマのＩＰブロックからの各リクエストに関連付けられたアドレス情報は、他のブロックに通すことがない。むしろ、それぞれの同期信号の生成に使用すること以外では、アドレス情報を効果的に捨てるようにし、これにより、ＩＰブロック間のダイレクト接続でデータ・ストリームを通信するのにアドレスベースのプロトコルを効果的に用いることが可能となる。
【００３２】
図５及び図６を参照するに、上述したように、アドレスベースのネットワークで通信するようにまだ構成されている際に、自己同期型データストリーミングを利用するようにＩＰブロックを構成する態様は、様々な実施例にて異なるものとできる。例えば、図５は、ＩＰブロック１２のメモリインタフェース回路１４の模範的な一実現例を示しており、そこでは、アクセスリクエストに関連付けられたコマンド及びアドレス情報、並びにデータを通信するリクエスト通信リンク９０が、マルチプレクサ／デマルチプレクサ９６を介して一対の通信リンク９２，９４に結合される。図示した実施例では、例えば、通信リンク９２を用いてアドレスベースのネットワークで通信することができ、その一方で通信リンク９４を用いてストリームインタフェース回路２０との結合を介して自己同期型データストリーミングによって通信することができる。また、メモリインタフェース１４は、ハンドシェイクを提供する機能性、並びに、リクエスト及びデータの伝送が何らかの必要な通信プロトコルに準拠するのを確実にする機能性を組み入れることもできることは明らかである。
【００３３】
図５の実施例では、マルチプレクサ／デマルチプレクサ９６は、ＩＰブロック１２によって生成したモード信号９８に応じて、ＩＰブロック１２によって使用するための２つの通信リンク９２，９４のうちの１つを効果的に選択するように用いる。特定のリンクでの通信が所望されるときはいつも、動的な方法で選択的にモード信号をアサートすることができることは明らかである。それとは別に、モード信号をソフトウェア又はＩＰブロックのカスタム化のいずれかの結果として固定値に設定して、恒常的に通信リンク９２，９４のいずれかを選択することもできる。
【００３４】
さらに別の態様として、図６に示すように、ＩＰブロック１２’用の別のメモリインタフェース１４’は、通信リンク９０，９２，９４及びマルチプレクサ／デマルチプレクサ９６を備えることができるが、マルチプレクサ／デマルチプレクサ９６での制御により、通信リンク９０からの１つ以上のアドレス信号１００をデコーダブロック１０２に通すことによって制御信号１０４を生成するように実現することができる。こうすることによって、設計者は、リクエストを通信リンク９２，９４のいずれかに向けるための或るメモリ範囲を指定することができる。一実施例では、例えば、通信リンク９２，９４間の選択のために、最上位アドレスビットを単に利用するのが望ましい。従って、例えば、最上位アドレスビットをアサートするリクエストを発行することにより、簡単にダイレクトデータストリーミングを利用することが可能となる。異なる通信リンク間の選択について、プログラムに従った方法による他の態様は、本発明開示によって瞬時の恩恵を受ける当業者に明らかである。 
【００３５】
図７を参照するに、幾つかの実施例では、図２〜６に関連して説明したような一次元の同期よりも、二次元の同期を行うことが望ましいことがある。特に、多くのビデオ処理環境で、水平及び垂直面のプロデューサ及びコンシューマのビデオフレームの双方に応じてデータ・ストリームを同期させることが望ましい。
【００３６】
図７は、プロデューサ同期生成回路２４’、コンシューマ同期生成回路２６’、及びストリーム制御回路２８’を備えるインタフェース回路２０’を示している。プロデューサ同期生成回路２４’は、図２のストリームインタフェース回路２０の回路２４と同様に構成しているが、水平及び垂直同期生成回路１１０，１１２を用いて、ＩＰブロック１２Ｐによって発行された各リクエストに関連付けられたアドレス情報から、個別の水平及び垂直同期信号１１４，１１６を生成する点で相違する。同様に、コンシューマ同期生成回路２６’は、ストリームインタフェース回路２０の回路２６と同様に構成しているが、水平及び垂直同期生成回路１１８，１２０を用いて、ＩＰブロック１２Ｃによって発行された各リクエストに関連付けられたアドレス情報から、個別の水平及び垂直同期信号１２２，１２４を生成する点で相違する。同様に、ストリーム制御回路２８’は、ストリームインタフェース回路２０の回路２８と同様に構成しているが、回路２８’は、４つの同期信号１１４，１１６，１２２，１２４の全てに応答する状態マシン５８’を組み入れている。
【００３７】
図８の状態図１２０に関連して、各同期回路２４’，２６’が動作する態様を更に説明する。状態図１２０は、各回路２４’，２６’が初期状態として設定されているリセット状態１２２を含む。リセット状態１２２は、それぞれの垂直同期信号１１６，１２４をアサートする間、ｖ−ｓｙｎｃ状態１２４に遷移する。同期信号１１４，１１６，１２２，１２４をアサートしない、データ状態１２６への遷移は、以前のリクエストのアドレス（ＡＴ‐１として表す）に対して、次の連続アドレスを表すアドレス（ＡＴ）を有するリクエストを受信するときに起こる。
【００３８】
それぞれの回路２４’，２６’は、ラインリクエストの開始か、又はフレームリクエストの開始のいずれかを検出するまで状態１２６のままでいる。ラインリクエストの開始は、現在のリクエストのアドレスに対する次の連続アドレス以外のアドレスへと転移するジャンプを検出することによって検出され（即ち、ＡＴ＞ＡＴ‐１＋１）、それぞれの水平同期信号１１４、１２２をアサートする、ｈ−ｓｙｎｃ状態１２８への遷移をもたらす。フレームリクエストの開始は、以前のリクエストのアドレス以下であるアドレスを検出することによって検出され、それぞれの垂直同期信号１１６，１２４をアサートするｖ−ｓｙｎｃ状態１２４へと戻す遷移をもたらす。
【００３９】
尚、状態１２４のときに、ラインリクエストの開始の検出は、状態１２８への遷移をもたらす。同様に、状態１２８のときに、フレームリクエストの開始の検出は、状態１２４への遷移をもたらし、その一方で次の連続アドレスの検出は、状態１２６への遷移をもたらす。更に、リセットがある場合に、状態１２４，１２６及び１２８の各々は、状態１２２へと遷移する。
【００４０】
プロデューサ回路及びコンシューマ回路のアプリケーション・ソフトは、プロデューサ及びコンシューマのデータ・ストリームのアドレスパターンをプログラムして、例えば、各新たなラインの開始が、以前のラインからの次の連続アドレス以外のアドレスに転移するジャンプを表し、各新たなフレームの開始が、アドレス空間におけるジャンプし戻しを表すような、ストリームインタフェース回路の要件に従うようにすることに留意する。この点で、隣接ライン間のギャップを創出するプログラマブルか、又はハードコード化したストライドを提供するのが望ましい。また、デュアルバッファを用いる場合には、各バッファ用のアドレスを同一のアドレスに設定するように要求するのが望ましい。他の実現例において、他のロジックを用いて、ラインの開始及び／又はフレームの開始を決定できることは明らかである。
【００４１】
次に、図９を参照するに、状態マシン５８’の動作を状態図１３０によって更に示す。まず、状態マシン５８’は、リセット状態１３２で始まり、データを通すための状態１３４に遷移する。各通信サイクルの間、プロデューサの水平又は垂直同期信号１１４，１１６（ＨＩＮ及びＶＩＮ）とコンシューマの水平又は垂直同期信号１２２，１２４（ＨＯＵＴ及びＶＯＵＴ）をアサートするか否かに基づいて、状態マシンは、状態１３４のままでいるか、又は排出着信状態１３６及び補充発信状態１３８のうちの１つに遷移する。特に、４つの同期信号１１４，１１６，１２２，１２４の全てが、同一状態にある場合、状態マシン５８’は、状態１３４のままでいる。これによって、プロデューサのデータ・ストリームから転送されたデータは、変化することなく、コンシューマのデータ・ストリームに通される。
【００４２】
しかしながら、コンシューマにおける水平同期信号１２２か、又は垂直同期信号１２４のいずれかを、プロデューサの同期信号１１４，１１６のいずれかより前にアサートする場合、状態１３６への遷移が起こる。状態１３６は、状態マシン５８’において、ドレイン／フィル回路６０を制御して、プロデューサＩＰブロック１２Ｐからのデータを捨てることにより、このようなデータがコンシューマＩＰブロック１２Ｃに向かうのを防ぐようにする。更に、この時点で、当該分野で既知の方法を何回か用いて、コンシューマＩＰブロック１２Ｃが何らかの更なるリクエストを発行するのを引き止めるようにするのが望ましい。状態マシン５８’は、同期信号１１４，１１６，１２２，１２４が再度等しくなり、状態１３４へと戻す遷移をもたらすまで、この状態のままでいる。
【００４３】
プロデューサにおける水平同期信号１１４か、又は垂直同期信号１１６のいずれかを、コンシューマの同期信号１２２，１２４のいずれかより前にアサートする場合、状態１３８への遷移が起こる。状態１３８は、状態マシン５８’において、ドレイン／フィル回路６０を制御して、補充データをコンシューマのデータ・ストリームに挿入する。更に、この時点で、コンシューマＩＰブロック１２Ｐが何らかの更なるリクエストを発行するのを引き止めるようにするのが望ましい。状態マシン５８’は、同期信号１１４，１１６，１２２，１２４が再度等しくなり、状態１３４へと戻す遷移をもたらすまで、この状態のままでいる。更に、リセットがある場合には、状態１３４，１３６，１３８の各々は、状態１３２に遷移する。また、追加の状態１４０を提供して、ソフトリセット又は例外処理を作動させて、プロデューサ及びコンシューマ回路をアクティブに保つ状態をサポートすることができる。状態１４０では、全てのプロデューサのデータを捨てて、コンシューマ回路に提供したフレームの残りを補充データで終了させ、次のフレームの始まりで、状態１３４へと戻す遷移をもたらす（垂直同期信号１１６，１２４の双方をアサートする）。
【００４４】
本発明の趣旨及び範囲から逸脱することなく、様々な変更をすることができる。例えば、書き込み及び又は読み取りのブロック処理をサポートすることができ、これによって、同期信号を発生させるための決定ロジックを、このようなブロック処理に収容させるようにすることができる。更に、例えばピッチ値（ピッチは、垂直に隣接した画素間のアドレスの差である）をプログラムすることによってプログラマブルな同期をサポートするのが望ましい。ビデオフレームでは、例えば、ピッチ値をゼロに設定することは、１ライン毎に同期をとるのに用いることができ、その代わりに、ピッチ値を１ラインあたりのアドレス数より大きい値に設定することは、１フレーム毎に同期をとるのに用いることができる。別の例として、ストリームインタフェース回路内（例えば、プロデューサ同期生成回路とストリーム制御回路との間）にバッファ又はＦＩＦＯを備え、プロデューサ回路及びコンシューマ回路を、定型的に動作しなければならないことから切り離すようにすることが望ましい。
【００４５】
上記の説明は、単に本発明の原理を示すものである。従って、上記において明らかに説明しないか、又は示していなくとも、当業者が本発明の趣旨及び範囲内で本発明の原理を実施するのに、様々な構成を工夫することができることは明らかである。更に、上述した適切な論理設計において説明した様々な機能の実現例が、本発明開示によって瞬時の恩恵を受ける当業者の能力内で十分であることは明らかである。これら及び他のシステム構成、及び最適化した特徴は、本発明開示によって瞬時の恩恵を受ける当業者にとって明白であり、請求の範囲内に含まれている。
【図面の簡単な説明】
【００４６】
【図１】アドレスベースのネットワークで互いに結合した複数の回路を組み入れるとともに、本発明による自己同期型データストリーミングを組み入れる集積回路の一例を示すブロック図である。
【図２】図１のストリームインタフェース回路の模範的な実現例を示すブロック図である。
【図３】図２のプロデューサ及びコンシューマ同期回路の動作の一例を示す状態図である。
【図４】図２のストリーム制御回路における状態マシンの動作の一例を示す状態図である。
【図５】図１のメモリインタフェース回路の模範的な実現例を示すブロック図である。
【図６】図１のメモリインタフェース回路の別の模範的な実現例を示すブロック図である。
【図７】水平及び垂直同期での使用に適した、図１のストリームインタフェース回路の別の模範的な実現例を示すブロック図である。
【図８】図７のプロデューサ及びコンシューマ同期回路の動作の一例を示す状態図である。
【図９】図７のストリーム制御回路における状態マシンの動作の一例を示す状態図である。
【図１】
2008544390.tif 000003
【図２】
2008544390.tif 000004
【図３】
2008544390.tif 000005
【図４】
2008544390.tif 000006
【図５】
2008544390.tif 000007
【図６】
2008544390.tif 000008
【図７】
2008544390.tif 000009
【図８】
2008544390.tif 000010
【図９】
2008544390.tif 000011
【国際調査報告】
2008544390.tif 000012
2008544390.tif 000013