JP2010519652A

On-demand multi-thread multimedia processor

Abstract

Devices include multimedia processors that can simultaneously support multiple applications for various types of multimedia such as graphics, audio, video, cameras, games, and so on. A multimedia processor includes a storage resource that can be configured to store information about an application, data and state information, and an assignable processor for performing various types of processing about the application. Configurable storage resources include an instruction cache for accumulating instructions about the application, a register bank for accumulating data about the application, a context register for accumulating state information about threads of the application, and the like. The processing device includes an arithmetic logic unit (ALU) core, an elementary function core, a logic core, a texture sampler, a load control device, a flow controller, and the like. The multimedia processor allocates a configurable portion of storage resources to each application and dynamically allocates a processor to the application when requested by these applications. [Selection diagram] Fig. 1

JP2010519652A, drawing sheet 1
Sheet 1 of 11

Term

1.4 yearsto projected expiry

Projected expiry 21 February 2028, counted from filing; an application has no term until it is granted.

  1. Priority
  2. Filed
  3. Published
  4. Today
  5. Projected expiry

27 claims: 7 independent, 20 dependent

  1. 1
    複数のアプリケーションを同時にサポートするためのマルチメディア・プロセッサを含むデバイスであって、前記マルチメディア・プロセッサは、 前記複数のアプリケーションに関する命令、データ、状態情報を蓄積するための構成可能な記憶リソースと、 前記複数のアプリケーションに関する処理を実行するための割り当て可能な処理装置と、 を具備し、 前記マルチメディア・プロセッサは、各アプリケーションに前記記憶リソースの構成可能な一部分を割り当て、前記アプリケーションによって要求された際、前記複数のアプリケーションに前記処理装置を動的に割り当てることを特徴とするデバイス。
  2. 2
    前記構成可能な記憶リソースは、前記複数のアプリケーションに関するデータを格納するための命令キャッシュを有し、 各アプリケーションは、前記命令キャッシュの構成可能な一部分を割り当てられることを特徴とする請求項1に記載のデバイス。
  3. 3
    前記構成可能な記憶リソースは、前記複数のアプリケーションに関するデータを格納するためのレジスタ・バンクを有し、 各アプリケーションは、前記レジスタ・バンクの構成可能な一部分に割り当てられることを特徴とする請求項1に記載のデバイス。
  4. 4
    前記構成可能な記憶リソースは、 前記複数のアプリケーションに関する命令、又はデータを格納するための記憶装置であって、仮想メモリ及び物理メモリと関連付けられる記憶装置と、なお、各アプリケーションは、前記仮想メモリの構成可能な一部分を割り当てられる、 各アプリケーションに対して割り当てられた前記仮想メモリの一部分を前記物理メモリの対応した一部分にマッピングするための少なくとも1つのテーブルと、を有することを特徴とする請求項1に記載のデバイス。
  5. 5
    前記マルチメディア・プロセッサは、前記アプリケーションに割り当てられた前記記憶リソースの一部分内の記憶に関するキャッシュ・メモリ、又はメイン・メモリから、要求された際に、各アプリケーションに関する命令及びデータを取り出すためのロード制御装置を更に具備することを特徴とする請求項1に記載のデバイス。
  6. 6
    前記処理装置は、独立に動作し、各処理装置は、与えられたタイム・スロット内で前記複数のアプリケーションの任意の一つに対して割り当て可能であることを特徴とする請求項1に記載のデバイス。
  7. 7
    前記マルチメディア・プロセッサは、前記マルチメディア・アプリケーションの任意の一つに割り当てられなかった処理装置の電力を落とすことを特徴とする請求項1に記載のデバイス。
  8. 8
    前記処理装置は、演算論理装置(ALU)コア、初等関数コア、論理コア、テクスチャ・サンプラ、ロード制御装置及びフロー・コントローラの少なくとも1つを有することを特徴とする請求項1に記載のデバイス。
  9. 9
    前記マルチメディア・プロセッサは、前記複数のアプリケーションからスレッドを非同期に受信するためのインプット・インターフェース装置と、 前記複数のアプリケーションに結果を非同期に供給するためのアウトプット・インターフェース装置と、 を更に具備することを特徴とする請求項1に記載のデバイス。
  10. 10
    前記マルチメディア・プロセッサは、電力消費を削減するために前記マルチメディア・プロセッサの読み込みに基づいてクロックの速度を調節することを特徴とする請求項1に記載のデバイス。
  11. 11
    前記マルチメディア・プロセッサは、前記処理装置がある特定の時間間隔に割り当てられた時間の割合に基づいて読み込みを決定することを特徴とする請求項10に記載のデバイス。
  12. 12
    前記マルチメディア・プロセッサは、前記複数のアプリケーションに関する複数のスレッドを同時にサポートすることを特徴とする請求項12に記載のデバイス。
  13. 13
    前記構成可能な記憶リソースは、前記複数のスレッドに関する複数のコンテキスト・レジスタを具備し、 各コンテキスト・レジスタは、関連付けられたスレッドに関する状態情報を格納することを特徴とする請求項12に記載のデバイス。
  14. 14
    各スレッドに関する前記状態情報は、プログラム・カウンタ、ダイナミック・フロー・コントロールに関するポインタを格納するためのスタック、関連したアドレス指定に関するアドレス・レジスタ、条件の計算結果を格納するための述語レジスタ及びロード要求及びデータバック条件を追跡するためのロード参照カウンタの少なくとも1つを有することを特徴とする請求項13に記載のデバイス。
  15. 15
    。 各スレッドは、前もって決められたサイズまでのデータ単位で処理することを特徴とする請求項12に記載のデバイス。
  16. 16
    各スレッドはイメージ内の4つのピクセルまで、又は4つの頂点までで処理することを特徴とする請求項12に記載のデバイス。
  17. 17
    前記マルチメディア・プロセッサは、前記複数のアプリケーションに適用可能な単一の命令セットをサポートすることを特徴とする請求項1に記載のデバイス。
  18. 18
    前記複数のアプリケーションは、グラフィックス・アプリケーション、オーディオ・アプリケーション、ビデオ・アプリケーション、カメラ・アプリケーション、ゲーム・アプリケーションの少なくとも一つを有することを特徴とする請求項1に記載のデバイス。
  19. 19
    複数のアプリケーションを同時にサポートすることと、 前記アプリケーションに関する命令、データ及び状態情報を蓄積するため各アプリケーションに記憶リソースの構成可能な一部を割り当てることと、 前記アプリケーションによって要求された際、前記複数のアプリケーションに処理装置を動的に割り当てることと、 を具備することを特徴とする方法。
  20. 20
    前記割り当てることは、前記アプリケーションに関する命令を蓄積するために各アプリケーションに命令キャッシュの構成可能な一部分を割り当てることを具備することを特徴とする請求項19に記載の方法。
  21. 21
    前記割り当てることは、前記アプリケーションに関するデータを蓄積するために各アプリケーションにレジスタ・バンクの構成可能な一部分を割り当てることを具備することを特徴とする請求項19に記載の方法。
  22. 22
    前記複数のアプリケーションからスレッドを非同期に受信することと、 前記複数のアプリケーションに非同期に結果を与えることと、 を更に具備することを特徴とする請求項19に記載の方法。
  23. 23
    複数のアプリケーションを同時にサポートする手段と、 前記アプリケーションに関する情報、データ、状態情報を格納するために各アプリケーションに記憶リソースの構成可能な一部分を割り当てる手段と、 前記アプリケーションによって要求された際、前記複数のアプリケーションに処理装置を動的に割り当てる手段と、 を具備することを特徴とする装置。
  24. 24
    割り当てるための前記手段は、前記アプリケーションに関する命令を蓄積するために各アプリケーションに命令キャッシュの構成可能な一部分を割り当てるための手段を具備することを特徴とする請求項23に記載の装置。
  25. 25
    前記割り当てるための前記手段は、前記アプリケーションに関するデータを蓄積するために各アプリケーションにレジスタ・バンクの構成可能な一部分を割り当てるための手段を具備することを特徴とする請求項23に記載の装置。
  26. 26
    前記複数のアプリケーションから非同期にスレッドを受信する手段と、 前記複数のアプリケーションに非同期にスレッドを送信する手段と、 を更に具備することを特徴とする請求項23に記載の装置。
  27. 27
    複数のアプリケーションを同時にサポートするためのマルチメディア・プロセッサを具備する無線装置であって、 前記マルチメディア・プロセッサは、 前記複数のアプリケーションに関する命令、データ及び状態情報を格納するための構成可能な記憶リソースと、 前記複数のアプリケーションに関する処理を実行するための割り当て可能な処理装置と、なお、前記マルチメディア・プロセッサは、各アプリケーションに前記記憶リソースの構成可能な一部分を割り当て、前記アプリケーションによって要求された際、前記複数のアプリケーションに前記処理装置を動的に割り当てる、 前記記憶リソースに読み込むための命令とデータを格納するためのキャッシュ・メモリと、 を具備することを特徴とする無線装置。
Independent claims27