(57)【要約】  共有メモリ装置と複数処理キューとの間を双方向バス経由で通信される映像データを制御するシステム及び方法。該システムは行アドレスを各処理キューと関係させる行アドレス・ジェネレータ；各処理キューの完全性を判定するシステム；共有メモリ装置と通信する処理キューを、各処理キューの判定完全性に基づいて選定する、スケジューリング・システム；及び、共有メモリ装置を選定処理キューと通信させて映像データを共有メモリ装置と選定処理キューとの間でバーストさせるコントローラ；を有する。
2005509922.tif 000002
【特許請求の範囲】
【請求項１】
ディスプレイ・プロセッサ用映像データを処理する回路であって：
共有メモリ装置；
複数処理キュー；及び
メモリ制御システム；
を有し、該複数処理キューが映像データを一時的に記憶する該共有メモリ装置に結合され、各処理キューが該処理キューの完全性を判定するシステムを有し、該メモリ制御システムが各処理キューの前記完全性を検査してデータ・バーストを該処理キューと前記共有メモリ装置との間にスケジュール要求することを特徴とする回路。
【請求項２】
請求項１記載の回路であって、前記共有メモリ装置がダブル・レート・シンクロナス・ダイナミック・ランダム・アクセス・メモリ（DDR-SDRAM）を有することを特徴とする回路。
【請求項３】
請求項２記載の回路であって、各処理キューがシンクロナスFIFOとして実装された先入れ先出し構造を有することを特徴とする回路。
【請求項４】
請求項３記載の回路であって、第１処理キューが映像データの第１バーストを前記共有メモリ装置から受信するよう構成されて、第２処理キューが映像データの第２バーストを前記共有メモリ装置に対して送信するよう構成されることを特徴とする回路。
【請求項５】
請求項３記載の回路であって、第１及び第２処理キューが映像データのバーストを前記共有メモリ装置から受信されるよう構成されて、第３及び第４処理キューが映像データのバーストを前記メモリ装置に対して送信するよう構成されることを特徴とする回路。
【請求項６】
請求項５記載の回路であって、各処理キューが前記DDR-SDRAMに32ビットから128ビットまでの範囲を有する双方向バス経由で結合されることを特徴とする回路。
【請求項７】
請求項６記載の回路であって、映像データの各バーストが少なくとも１０の連続する１２８ビット・ワードを有することを特徴とする回路。
【請求項８】
請求項１記載の回路であって、前記メモリ制御システムが：
完全性の度合いを各処理キューから受信し、該受信した完全性の度合いの各々に基づいて前記処理キューの優先順位を付けて、選定処理キューを出力するスケジューラ；及び
前記共有メモリ装置を選定処理キューと通信させるコントローラ；
を有することを特徴とする回路。
【請求項９】
請求項８記載の回路であって、前記メモリ制御システムが更に各処理キューに対する行アドレスを前記スケジューラに対して送信する行アドレス・ジェネレータを有することを特徴とする回路。
【請求項１０】
請求項８記載の回路であって、前記スケジューラが行アドレス、列アドレス及びバースト・サイズを前記コントローラに対して出力することを特徴とする回路。
【請求項１１】
共有メモリ装置と複数処理キューとの間にて双方向バス経由で通信される映像データを制御する方法であって：
行アドレスを各処理キューと関係させる工程；
各処理キューの完全性を判定する工程；
該処理キュー間で、最高優先度順を有する処理キューを、各処理キューの前記判定完全性に基づいて、選定するよう、調停する工程；
前記共有メモリ装置を前記選定処理キューと通信するよう制御する工程；及び
映像データを前記共有メモリ装置と前記選定処理キューとの間でバーストする工程；
を有することを特徴とする方法。
【請求項１２】
請求項１１記載の方法であって、各処理キューの前記完全性が該処理キューの未読ワード数を算定することによって判定されることを特徴とする方法。
【請求項１３】
請求項１１記載の方法であって、前記処理キュー間で調停する前記工程が各処理キューの前記完全性と各処理キューに対する所定の閾値とを比較する工程を有することを特徴とする方法。
【請求項１４】
請求項１３記載の方法であって、前記所定の閾値は前記処理キューの前記メモリのサイズ及び通信される前記データの前記バーストのサイズに基づくものであることを特徴とする方法。
【請求項１５】
請求項１１記載の方法であって、前記処理キュー間で調停する前記工程が：
最も長く待っている前記処理キューに対して優先度順を付与する工程；及び
同じ期間待っている処理キューについて、最高帯域要件を有する該処理キューに優先度順を付与する工程；
を有することを特徴とする方法。
【請求項１６】
請求項１１記載の方法であって、前記制御する工程が：
信号を前記選定処理キューに対して設けて、該信号にデータを前記バスから読み取らせる、又は、前記バスにデータを書きこませる工程；及び
アドレス及び制御信号を前記共有メモリ装置に対して設けて、該信号に該設けたアドレスにデータを書き込むか、又は、該設けたアドレスからデータを読み取るか、させる工程；
を有することを特徴とする方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ディスプレイ・プロセッサ用映像データを処理する回路及び共有メモリ装置と複数処理キューとの間を双方向バス経由で通信される映像データを制御する方法に関するものである。
【背景技術】
【０００２】
ラップトップ型コンピュータ、携帯電話、携帯情報端末、フラット・ディスプレイ・テレビなどのような、機能の豊富な映像ディスプレイを有する、装置に対する需要が増大し続けるにつれて、映像データを効率的に処理し得るシステムに対するニーズも又、増大した。この課題のひとつは映像ソースから映像ディスプレイまでの映像データの流れを管理することに関係する。特に、システムは複数リアルタイム処理を扱う必要があり得る。
【０００３】
マイクロプロセッサ及びグラフィックス処理システムは複数処理が共有メモリ装置（例えば、バス、メモリ・チップなど）をアクセスしなければならない共有メモリ・システムを利用することが多い。これらの場合においては、各処理は共有メモリ・システムを利用するよう競わなければならなくて、当該処理がメモリに対するアクセス権を付与されるまで一時的に情報を記憶する何らかの装置を有する可能性がある。この処理を促進するよう、共有メモリ・インタフェース用メモリ・コントローラが利用される。今日のシステムは、一般に高帯域、非リアルタイム処理（例えば、CPU命令）、低帯域処理などを有する、競合する処理を実行する。これらのシステムは一般に、競合する処理を調停する、優先度順方式、トークン、又は別の装置を用いる。従来の共有メモリ・コントローラには単一のリアルタイム処理だけを有するシステムに対して調停するものがある（例えば、Apostol他に対して発行された米国特許に関する特許文献１参照。）。更に、共有メモリ・システムにはセット・トップ・ボックス用で複数リアルタイム処理を有するが、処理アクセス間の最小間隔を徹底するブロック・アウト・タイマを必要とし、当該システムの有効性を限定するものもある（例えば、MacInnis他に対して発行された米国特許に関する特許文献２参照。）。
【特許文献１】米国特許第６２４７０８４号明細書
【特許文献２】米国特許第６１８９０６４号明細書
【発明の開示】
【発明が解決しようとする課題】
【０００４】
あいにく、従来技術システムは映像処理システムにおいて必要となるような、複数リアルタイム処理を制御する効率的な解決策を設けることができない。したがって、映像処理システムにおいて複数リアルタイム処理間を調停する効率的なシステムに対するニーズが存在する。
【課題を解決するための手段】
【０００５】
本発明の目的はディスプレイ・プロセッサ用映像データを処理する、映像処理システムにおいて複数リアルタイム映像処理間を効率的に調停する、回路を設けることにある。
【０００６】
この目的は本発明の特許請求の範囲記載によるディスプレイ・プロセッサ用映像データを処理する回路によって実現される。
【０００７】
本発明の目的は更に、共有メモリ装置と複数処理キューとの間を双方向バス経由で通信される映像データを制御する、映像処理システムにおいて複数リアルタイム映像処理間を効率的に調停する、方法を設けることにある。
【０００８】
この目的は本発明の特許請求の範囲記載による映像データを制御する方法によって実現される。
【０００９】
有益な実施例は更に、本発明の特許請求の範囲に記載されている。
【発明を実施するための最良の形態】
【００１０】
本発明のこれら及び他の特徴は本発明の種々の特徴の以下の詳細説明及び添付図面によって更に容易にわかるものである。
【実施例】
【００１１】
図面によれば、図１は映像ディスプレイに対して送信される映像データを処理する例示的映像データ処理回路10を表す。この実施例においては、処理回路10はソース映像12を受信し、該回路上の異なる地点で該映像を処理して、ディスプレイ映像28を出力する。ソース映像１２は24ビット・バス経由で処理回路10に入力されて、32ビット・バス経由で出力される。回路10内の他の通信は全て、128ビット・バス経由で行われる（この選定は以下に説明する）。映像処理はソース処理システム14、中間処理システム17、及びディスプレイ処理システム19によって扱われる。処理回路10は更に128ビット・バス経由でアクセス可能な共有メモリ装置27を有する。共有メモリ装置27は、例えば、処理回路10における２つの地点でフレーム遅延の仕組みを設けるよう、利用し得、例えば、ダブル・データ・レートのシンクロナス・ダイナミック・ランダム・アクセス・メモリ（DDR-SDRAM）のバンクに接続された128ビット幅バスを有し得る。SGRAM(シンクロナス・グラフィック・ランダム・アクセス・メモリ)、SDRAM(シンクロナス・ダイナミック・ランダム・アクセス・メモリ)、RAMBUS（ランバス）などのような、他の大型共有メモリ・システムも同様に利用し得る。
【００１２】
処理回路10は更に、共有メモリ装置27に対するアクセスを得ようと競う、４つの、処理キュー１６、１８、２０、２２を有する。各処理キューは一時的に、共有メモリ装置２７に書き込まれたデータ又は共有メモリ装置２７から読みとられたデータを記憶して、シンクロナスFIFO（先入れ先出し）として実装された256x128ビットのデュアル・ポートのスタティックRAM（SRAM）メモリにおいてデータを記憶する、先入れ先出しアーキテクチャ（FIFO）を用いて実装され得る。４つの処理キューの各々の右側は共有メモリ装置と同様のレート（例えば、200MHｚ）でクロックされることが好適で、その結果、共有メモリと同様の128ビット幅バスを用いる。映像アプリケーションにおいて必要な大容量データ転送を扱うには、DDR-SDRAMデータ２６として表す、データは処理キュー１６、１８、２０、２２と共有メモリ装置２７との間で「バーストされる」。各データ・バーストの典型的なサイズは１０連続128ビット・ワードから８０連続128ビット・ワードまでの間に及び得る。各処理キューの左側は共有メモリ・クロックとは異なるレート（例えば共有メモリ・クロックよりも低いレート）でクロックされ得る。しかしながら、各キューを出入りする平均帯域は、アンダーフロー又はオーバーフローを防止するよう、同様でなければならない。
【００１３】
処理回路10は例示的目的のためだけの理由で表していて、複数リアルタイム処理が共有メモリ装置を得ようと競う、映像処理回路の他の構成は本発明の範囲に入る。特定の構成にかかわらず、そのような回路の課題のひとつには処理キュー間をどのようにして、どの処理キューが共有メモリ装置２７に対してアクセス権を有すべきかを判定するよう、調停するのかである。本発明は各処理キューの完全性を測定するシステムを設けることによってこれを実現する。一例示的実施例においては、完全性は処理キューのメモリにおける未読ワード数として測定される。しかしながら、メモリ装置において記憶されたデータの量を測定する如何なる方法をも利用し得る。各処理キュー１６、１８、２０、２２の完全性に基づいて、いつ各処理キューがデータのバーストを送受信する準備ができたのかの判定を行い得る。
【００１４】
次に図２によって、共有メモリ装置２７へのアクセス及び共有メモリ装置２７からのアクセスを制御するよう、メモリ制御システム30を設ける。メモリ制御システム３０は連続して各処理キューの完全性の度合いを、４つの処理キュー１６、１８、２０、２２を調停して、該処理キューの中から選定された処理キューに対してアクセス権を付与するよう監視する。メモリ制御システム３０は行アドレス・ジェネレータ３６、スケジューラ３２、及びコントローラ３４を有する。行アドレス・ジェネレータ３６は４つの処理キュー１６、１８、２０、２２の各々について行アドレスARA、BRA、CRA、DRAをソース及びディスプレイ・シンク信号４２、４４に基づいて算定する。スケジューラ３２は４つの処理キューAFLNS、BFLNS、CFLNS、DFLNSの完全性を監視して該処理キューの１つ以上がアクセス権を必要とするかを判定する。アクセス権を必要とする場合、スケジューラ３２は共有メモリ装置をアクセスする処理キューを、必要なコマンドをコントローラ３４に発信することによって選定する。該コマンドは開始信号STTR、転送済信号TRDN、通信されるデータのバースト・サイズBSZ、行アドレスRA、及び列アドレスCAを含み得る。これらのコマンドに基づいて、コントローラ３４はバーストを実行するのに必要なタイミング信号の全てを生成する。コントローラ３４はアドレス及び制御情報３８を共有メモリ装置２７に対して発信して、読み取り又は書き込み制御信号４０を適切な処理キューに対して発信する。
【００１５】
スケジューラ３２は処理キュー１６、１８、２０、２２を、各処理キューの完全性と各処理キューに対する所定の閾値とを比較することによって調停する。閾値は各処理キューによって異なり得、メモリのサイズ、バーストのサイズ、及び（各処理キューによって異なり得る）ライン・タイミングに基づき得る。図１でわかるように、共有メモリ装置２７に書き込むデータを保持する２つの処理キュー１６、２０、及び共有メモリ装置２７から読み取られるデータを保持する２つの処理キュー１８、２２がある。書き込むデータを保持する処理キュー１６、２０については、完全性は、データのバーストを送信することを引起す閾値よりも大きくなければならない。データを読み取る処理キュー１８，２２については、完全性はデータのバーストを受信することを引起す閾値よりも小さくなければならない。したがって、スケジューラ３２は１つ以上の処理キューがアクセス権を必要とするかを、各々の閾値を超えるたびに、判定し得る。
【００１６】
各バースト後、スケジューラ３２は別のバーストが必要かを見るよう各処理キューの完全性を確かめる。２つ以上の処理キューが同時にアクセスを必要とする（例えば、両方が閾値を超えた完全性の度合いを有する）場合、最も長い間待っている処理キューが選定される。２つ以上の処理キューが同様の期間待っている（すなわち、それらが同じクロック・サイクルで閾値を超えた）場合、最高帯域要件のある処理キューが選定される。一例示的実施例においては、処理キューは、他の処理キューが待っている場合は、１バーストを超える期間バスをホールドすべきでなくて、開始された全てのバーストは完了されるべきである。更に、どの処理キューもオーバーフォローしたりアンダーフローしたりすることは許されるべきでない。しかしながら、書き込み処理キュー１６，２０は空き状態になることが許されるべきである（例えば、バーティカル・ブランキング中）。読み取り処理キュー１８、２２は空き状態になることが許されるべきでない。
【００１７】
上記のように、この例示的実施例は１２８ビット・バスを利用する。バス幅は特定回路における最悪帯域状況に基づいて選定されるべきである。
【００１８】
図１の回路においては、処理Bのレートが処理Aのレートの２倍で処理Cのレートに等しくて、処理Dのレートが処理Cのレートの３倍の場合、共有メモリデータ・バスの最悪帯域要件（BW）は：
BW=書き込みレートA＋読み取りレートB＋書き込みレートC＋読み取りレートD＋オーバヘッド；
BW=書き込みレートA＋（２*書き込みレートA）＋（２*書き込みレートA）＋（６*書き込みレートA）＋オーバヘッド；
BW=(11*書き込みレートA)＋オーバヘッド；
として算定し得る。
【００１９】
その場合、例えば、ピーク入力レートが画素毎24ビットで75MHz（代表的な高品位テレビ(HDTV)の場合）で、かつ、オーバヘッドが１５％の場合、BW＝11*75,000,000*24*1.15=毎秒22,770,000,000ビットとなる。メモリ・クロック・レートを200MHzとすると、メモリ・バス幅は最小でBW/200,000,000=114ビット幅でなければならない。便宜上、このアプリケーションについてはバス幅128を選定する。しかしながら、他のあまり複雑でないアプリケーションについては、更に小さいバス幅（例えば、32ビット）で十分であり得ることがわかる。
【００２０】
各処理キュー１６、１８、２０、２２におけるメモリ装置のサイズ（すなわち、深度）は、バースト・サイズ及び水平シンク（ライン）タイミングを有する、いくつかの要因によって変わってくることがある。一般に、メモリの深度はコストを削減するよう最小化すべきである。しかしながら、メモリ・バスにおけるオーバヘッドを削減するよう、大きなバースト・サイズが望ましく、そしてそれはより深度の大きいメモリを必要とする。したがって、折衷策が必要になる。更に、各処理のライン・タイミング・パラメータは必ずしも同様でない。例えば、（処理キュー１６に記憶された）ソース映像１２は処理キュー１９に記憶されるのに必要なデータよりも大きなピーク帯域を生じさせる、ライン間の大きなブランキング間隔を有し得る。これらの競合する要件が理由で、メモリの深度はパラメータ設定の範囲にわたったビヘイビア・シミュレーションによって判定し得る。
【００２１】
本発明の好適実施例を上記に、例示及び説明の目的で、説明した。それらは網羅的であること、又は、発明を、開示した形態そのものに、限定すること、を企図するものでなくて、明らかに多くの修正及び変形が上記の教示に鑑みて考えられる。当業者に明白な、そのような修正及び変形は本特許請求の範囲によって明確化された本発明の範囲内にあることを企図する。
【図面の簡単な説明】
【００２２】
【図１】本発明による例示的映像処理回路を表す図である。
【図２】本発明によるディスプレイ・プロセッサ用メモリ制御システムを表す図である。
【図１】
2005509922.tif 000003
【図２】
2005509922.tif 000004
【国際調査報告】
2005509922.tif 000005
2005509922.tif 000006