JP2008104153A - ビデオ復号時に動的周波数調整する方法及び装置 - Google Patents

ビデオ復号時に動的周波数調整する方法及び装置 Download PDF

Info

Publication number
JP2008104153A
JP2008104153A JP2007196284A JP2007196284A JP2008104153A JP 2008104153 A JP2008104153 A JP 2008104153A JP 2007196284 A JP2007196284 A JP 2007196284A JP 2007196284 A JP2007196284 A JP 2007196284A JP 2008104153 A JP2008104153 A JP 2008104153A
Authority
JP
Japan
Prior art keywords
frequency
decoding
decoding time
video
time
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.)
Pending
Application number
JP2007196284A
Other languages
English (en)
Inventor
John B Newlin
ビー. ニューリン ジョン
Benedictus I Tjandrasuwita
アイ. ティジャンドラスウィタ ベネディクタス
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nvidia Corp
Original Assignee
Nvidia Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Nvidia Corp filed Critical Nvidia Corp
Publication of JP2008104153A publication Critical patent/JP2008104153A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

【課題】ビデオ復号中の動的周波数調整のための方法及びシステムを提供する。
【解決手段】オーディオ/ビデオプロセッサAVPにおいて、ビデオクリップの一部に対してハードウェア可変長復号(VLD)を実行する復号時間が測定される。ビデオ復号中にプロセッサを制御する周波数は、その復号時間に少なくとも一部に基づいて調整される。不使用の処理周波数を減少することによりAVPの電力消費を減少する。
【選択図】図4

Description

発明の分野
[0001] 本発明の分野は、ビデオ復号に関する。より詳しくは、本発明は、ビデオ復号中に動的周波数調整する方法に関する。
発明の背景
[0002] 多くのビデオ標準、例えば、ムービング・ピクチャ・エキスパート・グループ(MPEG)標準規格(MPEG3、MPEG4など)及びH.264標準規格は、ビデオ復号中に可変長復号(VLD)動作を行うことについても定めている。ハードウェアビデオ復号において、VLDオペレーションは、オーディオ/ビデオプロセッサ(AVP)のような特別なプロセッサによって実行されるようにできる。MPEG及びH.264ビデオ復号は複雑であるため、圧縮率に依存してビットレートに変動が起こることがある。ビットレートの変動は、VLDオペレーションを実行するのにAVPがどのように速くクロックされる必要があるかに関して、ばらつきを生じさせる。言い換えると、ビデオフレームは、VLDオペレーションを実行する処理時間の可変値を必要とするかもしれない。
[0003] 典型的なハードウェアビデオ復号システムにおいて、VLDオペレーションは、ビデオクリップを復号するのに必要な最高の処理速度においてシステムに復号させることによって実行される。最高の処理速度は、「ワーストケース」処理速度であり、システムによって復号され得るビデオクリップの最高ビットレートを決定することにより選択される。例えば、ワーストケース周波数は、発送前に製造施設においてシステムに組み込まれる。ワーストケース周波数を、ハードウェアビデオ復号システムの設計中にカスタマーから受けるビデオクリップの解析に基づいて選択することができる。特に、典型的なハードウェアビデオ復号システムは、ビデオ復号オペレーション中にAVPを動作する周波数を変化させることに対応していない。
[0004] デスクトップコンピュータのように定電源を有するコンピュータシステム内に実装されるハードウェアビデオ復号システムにおいては、最高の周波数でAVPをクロッキングすると、使用時間を減少させる結果になるが、電力消費の増加も招くことになる。しかしながら、バッテリ源を有するポータブルコンピューティング装置内に実装された典型的なハードウェアビデオ復号システムは、そのような高周波数での復号を必要としないビデオクリップに対してでさえ、AVPがワーストケースビデオクリップを復号するのに必要な電力を消費することから、過度の不要な電力消費が生じる。バッテリが最チャージをすぐに必要とするため、過度の電力消費は、ポータブルコンピューティング装置の使用時間を効果的に減少する。これはさらに、他のハードウェアビデオ復号システムが電力を節約するためにゲートするクロックを使用する一方で、これらのシステムのクロックツリーはトグルし続け、過度の不要な電力消費も招く。
発明の概要
[0005] 本発明の実施形態は、ビデオ復号中の動的周波数調整を提供する。本発明の実施形態は、ビデオ復号中のオーディオ/ビデオプロセッサ(AVP)の周波数を適応的に調整することができる。本発明の実施形態は、不使用の処理周波数を減少することによりAVPの電力消費を減少する。
[0006] ある実施形態では、本発明は、ビデオ復号中に動的周波数調整を行う方法を提供する。プロセッサにおいてビデオクリップの一部に対してハードウェア可変長復号(VLD)を実行する復号時間が測定される。ある実施形態では、プロセッサは、画像処理ユニット(GPU)のオーディオ/ビデオプロセッサである。ある実施形態では、上記一部は、ビデオクリップの複数のフレームを有し、複数のフレームそれぞれに関する復号時間が該複数のフレームの復号時間を平均化することによって定められる。
[0007] ビデオクリップのビデオ復号中にプロセッサを制御する周波数は、少なくとも一部は上記復号時間に基づいて調整される。ある実施形態では、復号時間は周波数に基づく割当復号時間と比較される。復号時間が割当復号時間と異なる場合に、周波数を調整する。復号時間が割当復号時間よりも大きい場合は、周波数を増加させ、復号時間が割当復号時間よりも小さい場合は、周波数を減少させる。ある実施形態では、最大周波数調整制限を有する条件下で周波数が調整される。ある実施形態では、平均復号時間に従って周波数を直線的にスケーリングされる。ある実施形態では、周波数はホストプロセッサのクロックで生成される。
[0008] ある実施形態では、本発明は、ビデオクリップの一部に対して可変長復号(VLD)を実行するオーディオ/ビデオプロセッサと、ビデオクリップの一部に関して、VLDオペレーションを実行する復号時間を測定する復号タイマと、オーディオ/ビデオプロセッサがVLDオペレーションを実行する周波数を生成するクロックと、復号時間に少なくとも一部基づいて、周波数を調整する適応クロック周波数コントロールと、を備えるビデオ復号システムを提供する。ある実施形態では、クロック及び適応クロック周波数コントロールは、ホストプロセッサ内に設けられており、オーディオ/ビデオプロセッサは画像処理ユニット(GPU)に設けられている。
[0009] ある実施形態では、ビデオクリップの一部は、ビデオクリップの複数のフレームを有しており、適応クロック周波数コントロールは、複数のフレームについての復号時間を平均化することによって、複数のフレームそれぞれの平均復号時間を決定するように作動する。ある実施形態では、適応クロック周波数コントロールは、複数のフレームについての平均復号時間を決定する移動平均フィルタを含む。ある実施形態では、適応クロック周波数コントロールは、適応クロック周波数コントロールは、復号時間を周波数に基づく割当復号時間と比較し、復号時間が割当復号時間と異なる場合に、周波数を調整するように作動する。ある実施形態では、適応クロック周波数コントロールは、復号時間が割当復号時間よりも大きい場合は、周波数を増加させるように作動し、復号時間が割当復号時間よりも小さい場合は、周波数を減少させるように作動する。ある実施形態では、最大周波数調整制限を有する条件下で周波数が調整される。ある実施形態では、平均復号時間に従って周波数を直線的にスケーリングされる。
[0010] 他の実施形態では、本発明は、ビデオクリップの複数のフレームについて平均復号時間を決定する平均復号時間モジュールを含み、該平均復号時間は、複数のフレームにより分割された複数のフレームに対してオーディオ/ビデオプロセッサにて可変長復号(VLD)を実行するための合計時間であり、更に、少なくとも平均復号時間に少なくとも一部基づくVLDを制御する周波数を調整する適応周波数アジャスタを備える、オーディオ/ビデオプロセッサに関する適応クロック周波数コントロールを提供する。
[0011] ある実施形態では、平均復号時間モジュールは、移動平均フィルタを有する。ある実施形態では、適応周波数アジャスタは、復号時間を周波数に基づく割当復号時間と比較し、復号時間が割当復号時間と異なる場合に、周波数を調整するように作動する。ある実施形態では、適応クロック周波数コントロールは、復号時間が割当復号時間よりも大きい場合は、周波数を増加させるように作動し、復号時間が割当復号時間よりも小さい場合は、周波数を減少させるように作動する。ある実施形態では、最大周波数調整制限を有する条件下で周波数が調整される。ある実施形態では、平均復号時間に従って周波数を直線的にスケーリングされる。ある実施形態では、適応クロック周波数コントロールは、ホストプロセッサ内に設けられており、オーディオ/ビデオプロセッサは画像処理ユニット(GPU)に設けられている。
[0012] 本発明は、例示として、制限されることなく、添付図面に開示されており、類似の要素には同様の参照番号を付す。
発明の詳細な説明
[0017] 添付図面に例を示し、本発明の好適な実施形態を説明する。発明は好適な実施形態に関連して説明するが、発明をこれらの実施形態に制限する意図ではないことが理解される。一方、発明は代替、修正及び均等の範囲を包含し、これらは特許請求の範囲の精神と範囲に含まれる。更に、本発明の実施形態に関する以下の詳細な説明において、多くの具体的な詳細が本発明の充分な理解を提供するために述べられる。しかしながら、当業者であれば、これらの具体的な詳細が無くても本発明を実施することができる。他の形態では、公知の方法、手順、要素、及び回路は、本発明の実施形態の形態を不必要に曖昧にしないようにするために、詳細には述べていない。
[表記及び用語]
[0018] 以下の詳細な説明の幾つかの箇所は、手順、ステップ、論理ブロック、処理、及び、コンピュータメモリ内のデータビットに対する動作の他のシンボル表示である。これらの説明及び表示は、データ処理技術分野の当業者が他の当業者に彼らの業務の実態を最大の効率で伝えるために用いられる手段である。ここに説明する手順、コンピュータ実行ステップ、論理ブロック、処理等は、一般的に、所望の結果に導くステップ又は命令のセルフコンシステントのシーケンスとして考えられる。必ずではないが通常は、これらの数量は、コンピュータシステムにおいて、格納、伝送、結合、比較、及び他の操作可能な電気信号又は磁気信号の形態を採っている。これらの信号をビット、値、要素、記号、特性、用語、番号等として証することがしばしば便利であると立証されており、主に共通使用の理由によるものである。
[0019] しかしながら、これらの用語及び類似の用語のすべては、適切な物理的数量に関するものであり、これらの数量に適用される単に便利なラベルである。以下の記述と具体的に反することを述べない限り、本発明の全体を通じて、「実行」、「測定」、「調整」、「決定」、「比較」、「増加」、「減少」、「制御」、「スケーリング」、「バッファ」、「オーダー」、「転送」、「解析」、「インタリーブ」、「ロテート」、「再配置」、又は「格納」などの用語を用いた説明は、動作及びビデオ復号システムのプロセッサに言及する。このプロセッサは、例えば、図1,2のホストプロセッサ101、及び、図1,3の画像処理ユニット(GPU)109、又は、類似の電子コンピューティング装置であり、これらは、コンピュータシステムのレジスタ内で物理的(電子的)数量として示されるデータを操作し、コンピュータシステムのメモリ又はレジスタ、或いは、他のそのような情報ストレージ、伝送、又は表示装置内の物理的数量として同様に示される他のデータに変換する。
[コンピュータシステムプラットフォーム]
[0020] 図1は、本発明の実施形態を実現する典型的なコンピュータシステム100を示す。一般的に、コンピュータシステム100は、情報を伝達するバス110と、バス110と結合され情報及び命令を処理するプロセッサ101と、バス110に結合されプロセッサ101のための情報及び命令を格納しランダムアクセスメモリ(RAM)としても呼ばれる揮発性メモリ102と、バス110に結合されプロセッサ101のための固定の情報及び命令を格納しリードオンリーメモリ(ROM)としても呼ばれる不揮発性メモリ103とを備える。
[0021] ある実施形態においては、コンピュータシステム100は、バス110に結合された情報及び命令を格納するための磁気又は光学ディスク及びディスク装置のような任意のデータストレージ装置104を有する。ある実施形態では、コンピュータシステム100は、コンピュータのユーザに対して情報を表示するバス110に結合されたディスプレイ装置105などの任意のユーザ出力装置、情報とコマンド選択をプロセッサ101と通信するバス110に結合された英数字及びファンクションキーを含む英数字入力装置106などの任意のユーザ入力装置、及び/又は、プロセッサ101に対してユーザ入力情報及びコマンド選択を通信するバス110に結合されたカーソル制御装置107などの任意のユーザ入力装置を備える。更に、任意の入力/出力(I/O)装置108がコンピュータシステム100を例えばネットワークに接続するために用いられる。
[0022] ある実施形態において、コンピュータシステム100は、専用画像レンダリング機能のためのGPU120も含む。GPU120は、復号オペレーションのための複数のハードウェア復号ブロックを有し、この復号オペレーションは可変長復号(VLD)オペレーションと逆分散コサイン変換(iDCT)オペレーションなどの逆変換オペレーションとを備える。GPU120は、ビデオを復号するVLDオペレーションを用いた如何なるビデオ復号標準規格にも従ってビデオを復号するように構成することができる。例えば、GPU120は、ムービング・ピクチャ・エキスパート・グループ(MPEG)標準規格(MPEG3、MPEG4など)、又はH.264標準規格を用いて符号化されたビデオを復号化するように構成できる。
[0023] GPU120は、分散コンポーネント、コネクタ(AGPスロット、PCI−EXPRESSスロット等)を介してコンピュータシステム100に結合されるように設計された分散画像カード、分散集積回路ダイ(例えば、マザーボードに直接搭載される)、又は、コンピュータシステムチップセットコンポーネントの集積回路ダイ内に含まれる集積復号装置として実装することができる。更に、ローカル画像メモリは、データストレージのためにGPU120に含まれる。
[ビデオ復号中の動的周波数調整]
[0024] 図2は、本発明の一実施形態に従った、クロック周波数を動的に制御するホストプロセッサ101のブロック図である。ある実施形態では、ホストプロセッサ101は、ハードウェアVLDオペレーションを実行するためにプロセッサ(例えば図3のAVP310)が要する時間に基づいて、クロック225の周波数228を調整できる適応クロック周波数制御装置220を備える。ある実施形態では、ホストプロセッサ101は、縮小命令セットコンピュータ(RISC)プロセッサである。しかしながら、ホストプロセッサ101は、ハードウェアビデオデコーダを制御する周波数を計算する如何なるマイクロプロセッサでもよい。
[0025] ホストプロセッサ101のクロック225は、周波数信号228を生成する。周波数228は、ビデオクリップを復号するハードウェアビデオ復号システム(例えばGPU120)のコンポーネントによって用いられる。クロック225は、動的に制御可能であり、ホストプロセッサ101のハードリセットを必要とすることなく、周波数228をホストプロセッサ101の動作中に調整することができる。特に、周波数228は、ハードウェアビデオ復号システムのビデオ復号オペレーションの最中に調整することができる。ある実施形態では、クロック225は増加するように調整され、例えば、0.5倍、2.0倍、2.5倍となる。他の実施形態では、クロック225は複数の特定の周波数で作動し、動作周波数はこれらの間、例えば333MHz、666MHz、1.0GHz、1.33GHzの間でスイッチされる。
[0026] ビデオフォワーダ205は、ビデオクリップ又はビデオストリームなどのビデオ206の部分を、復号のためにハードウェアビデオ復号システムに転送するように作動する。ある実施形態では、その部分は、ビデオクリップのフレームである。他の実施形態では、その部分は、ビデオクリップのマクロブロックである。その部分はビデオクリップの如何なるユニットでもよいことを理解すべきである。一般的に、その部分が小さくなると、処理を必要とする部分の数が大きくなり、ビデオ復号を実行するのに必要な処理スピードが高くなる。本発明の実施形態をビデオクリップのフレームを用いて説明するが、当業者であれば、この実施形態がビデオストリームの他の部分、例えばマクロブロックにもどのように適用されるかを理解することができる。また、ビデオフォワーダ205は、ホストプロセッサ101のハードウェアコンポーネント、ファームウェアコンポーネント、ソフトウェアコンポーネント、又はこれらの如何なる組み合わせとして実装されることも理解される。
[0027] ビデオフォワーダ205は、表示のためのフレームに時間的に先立ち、復号のためのフレームを転送するように作動する。例えば、適応クロック周波数調整は、3つのフレームの平均復号時間に基づいて周波数228を調整するように作動し、3つのフレームは復号され、復号時間は、フレームが表示されるのに先立って決定される。
[0028] タイマ210は、ハードウェアビデオ復号システム上でVLDオペレーションを実行するのに必要な復号時間を測定するように作動する。ある実施形態では、ビデオフォワーダ205は、ハードウェアビデオ復号システムにビデオを転送する際に、タイマ210に通知する。タイマ210は、ビデオフォワーダ205からビデオ転送時刻208を受け取る。ある実施形態では、ビデオ転送時刻208はミリセコンドの時間であり、この間に特別の部分がハードウェアビデオ復号システムに転送される。しかしながら、ビデオ転送時刻208の形式は、オペレーティングシステムに依存することがあり、このため、オペレーティングシステムによって異なるかもしれない。
[0029] ある実施形態では、タイマ210は、特定のフレームに関してVLDオペレーションが完了した際に、ハードウェアビデオ復号システムからVLD完了時刻213の情報を受け取る。タイマ210は、特定のフレームに関する復号時間を、そのフレームに関するVLD完了時刻213からそのフレームに関するビデオ転送時刻208を差し引くことによって求める。ある実施形態では、フレームに関する復号時間は、タイマ210に関連するレジスタに格納される。タイマ210は、複数のフレームについての復号時間のいかなる情報をも格納できるように構成され、タイマ210は、レジスタをいくつ備えてもよい。ある実施形態では、タイマ210は、複数のフレームに関する復号時間のヒストグラムを維持するように作動する。
[0030] 適応クロック周波数制御装置220は、ホストプロセッサ101の動作中に、フレームの復号時間に少なくとも一部は基づいて、クロック225の周波数228を調整する。ある実施形態では、適応クロック周波数制御装置220は、平均復号時間モジュール230、例えば平均化器を備え、これは複数のビデオフレームの平均復号時間を求める。ある実施形態では、平均復号時間モジュール230は、移動平均フィルタ、例えばボックスフィルタである。平均復号時間モジュール230は、他のタイプのフィルタでもよいことが理解される。しかしながら、フィルタの選択は、典型的には、ホストプロセッサの処理能力に部分的に依存する設計選択である。
[0031] 平均復号時間は、複数のビデオフレームについての合計復号時間を、複数のフレームを含むフレームの数で割ったものである。例えば、タイマ210は、13、14、及び18ミリセコンドの復号時間をそれぞれ持った3つのフレームに関する復号時間を格納し、その平均時間が15ミリセコンドとなるかもしれない。
[0032] 適応周波数アジャスタ235は、フレームの復号時間に少なくとも部分的に基づいて、クロック225の周波数228を調整する。ある実施形態では、適応周波数アジャスタ235は、複数のビデオフレームについての平均復号時間に少なくとも部分的に基づいてクロック225の周波数228を調整するように作動する。ある実施形態では、適応周波数アジャスタ235は、周波数228の現在の値に基づいて、平均復号時間を割り当てられた復号時間(割当復号時間)と比較する。割当復号時間は、VLDオペレーションを実行するために割り当てられた時間であり、周波数228に基づいている。例えば、毎秒30フレームを復号するための割当復号時間は、フレームあたり30ミリセコンドである。
[0033] 適応周波数アジャスタ235は、割当復号時間が平均復号時間と異なる場合に、周波数228を調整するように作動する。ある実施形態では、適応周波数アジャスタ235は、復号時間が割当復号時間よりも長い場合に、周波数を増加するように作動する。これは、その割り当てられた時間がそのフレームを充分に復号するのに充分でないからである。或いは、復号時間が割当復号時間よりも短い場合に、適応周波数アジャスタ235は、周波数228を減少させるように作動し、これにより、VLDオペレーションを実行するのに必要でない過度の処理スピードを減少させる。ある実施形態では、適応周波数アジャスタ235は、次の最も低い周波数インクリメントが低すぎてフレームを復号できない場合に、周波数を減少する。
[0034] ある実施形態では、適応周波数アジャスタ235は、平均復号時間に従って周波数228を直線的にスケールするように作動する。ある実施形態では、周波数は、平均使用時間、例えば、割当復号時間で平均復号時間を除したものに基づいて直線的にスケールされる。例えば、割当復号時間がフレーム当たり30ミリセコンドであって、平均復号時間が15ミリセコンドである場合に、周波数228は半分にスケールダウンされる。ある実施形態では、周波数228の新しい値は、線形補間を実行することで定められ、以前の複数のフレームを復号するためにプロセッサをどの程度速く又は遅く作動させるかを決定する。
[0035] ある実施形態では、適応周波数アジャスタは、最大周波数調整制限を有する条件下で、周波数228を調整するように作動する。最大周波数調整制限は、周波数が復号中に変動しすぎないことを確実にするために用いられる。ある実施形態では、最大周波数調整制限は、パーセンテージ変化への周波数調整を制限する。ある実施形態では、最大周波数調整制限は周波数の減少を制限し、周波数228が遅くなり過ぎないようにする。例えば、周波数調整は、周波数228の25パーセントの減少までに制限することができる。最大周波数調整制限は、周波数228がそれよりも低くなることができない最小周波数を含むようにもできる。
[0036] 図3は、本発明の一実施形態に係る、画像処理ユニット(GPU)120のブロック図を示す。GPU120は、ビデオ復号オペレーションを実行するためのハードウェアコンポーネントを有する。ある実施形態では、GPU120はハードウェアVLD315を有するAVP310を備える。GPU120が他のビデオ復号オペレーション、例えば、逆変換オペレーションを実行する他のコンポーネントを備えてもよい。これらの他のコンポーネントは、当業者によって十分に理解されており、本発明の実施形態の態様を不明確にするようには述べられていない。
[0037] AVP310は、上述のようにホストプロセッサ101からビデオ206を受け取る。VLD315は、クロック225により生成された周波数228に従ってビデオ206に対してハードウェアVLDオペレーションを実行する。VLD315は、動的周波数に従ってVLDオペレーションを実行するように構成されていることを理解すべきである。VLDオペレーションが完了すると、AVP310は、VLD完了時刻213をホストプロセッサ101に転送する。
[0038] ある実施形態では、GPU120は、フレームをバッファするためのフレームバッファを有する。AVP310は、表示する前にフレームを復号するため、フレームバッファはフレームをバッファする。ある実施形態では、ビデオは、AVP310においてオーディオ復号の前に復号される。復号されたフレームは、表示するのに先立ち、復号されたオーディオと合わせられる。フレームバッファは、フレームが現在の周波数よりも復号するのに時間を要するならば、インパクトを減少するためにも役立つ。ある実施形態では、フレームバッファは、複数のフレームをバッファすることができ、これらのための復号時間はホストプロセッサ101に定数として格納される。例えば、4つのフレームについて復号時間が格納されている場合に、フレームバッファは2つのフレームをバッファするように構成することができる。
[0039] 図4は、本発明の実施形態に従った、ビデオ復号中の動的周波数調整のプロセス400のフローチャートを示す。特定のステップがプロセス400に開示されているが、各ステップは例示的なものである。すなわち、本発明の実施形態は、図4に示された各ステップの他のステップ又は変形を実行するようにもできる。ある実施形態では、プロセス400は、ビデオ復号システム、例えば図3のGPU120を制御する図2のホストプロセッサ101を制御するプロセッサによって実行することができる。
[0040] プロセス400のステップ405において、プロセッサにおいてビデオクリップの一部に対してハードウェア可変長復号(VLD)を実行するための復号時間が測定される。ある実施形態では、ステップ410に示すように、フレームが復号のために転送される時刻の情報が記憶される(例えばフレーム転送時刻208)。ある実施形態では、ステップ412に示すように、各フレームについてVLDが完了した時刻の情報を受け取る(例えばVLD完了時刻213)。本実施形態では、各フレームの復号時間は、復号のためにフレームが転送された時刻から、VLDが完了した時刻を引くことによって、各フレームの復号時間が決定される。ステップ410,412は任意であり、フレームについてVLDを実行する復号時間は他の方法で実行可能であることが理解される。
[0041] ある実施形態では、ステップ415に示すように、複数のフレームに関する平均復号時間は、複数のフレームの復号時間を平均することによって決定される。本発明の各実施形態は、如何なる正の数のフレームを用いて実行してもよく、平均復号時間は、割当復号時間と比較するために用いられることが理解される。
[0042] ステップ420において、復号時間、例えば平均復号時間は、割当復号時間と比較される。割当復号時間は、VLDを制御する周波数に基づいてVLDを実行するために割り当てられた時間である。復号時間が割当復号時間と異なる場合は、周波数が調整される。ある実施形態では、周波数は、平均使用時間、例えば複合時間を割当復号時間で除したものに基づいて、直線的にスケールされる。ある実施形態では、ステップ425に示すように、復号時間が割当復号時間よりも大きい場合に、周波数が増加される。ステップ430に示すように、復号時間が割当復号時間よりも小さい場合は、周波数は減少される。
[0043] ステップ428に示すように、復号時間が割当復号時間と実質的に等しい場合は、周波数は維持され変更されない。復号時間及び割当復号時間は、特定のインクリメントで周波数を与えるように作動するクロックの同一の最小周波数インクリメントを両者が必要とするなら、実質的に同一である。例えば、割当復号時間が800MHzの周波数を必要とし、復号時間が750MHzであり、クロックが666MHz及び1.0GHzで作動するなら、割当復号時間及び復号時間はともに周波数1.0GHzを必要とするため、実質的に同一である。
[0044] ステップ435において、調整が最大周波数調整制限以内であるか否かを判定する。例えば、最大周波数調整制限は、25パーセントよりも大きく周波数を増加することを制限するようにできる。周波数が最大周波数調整制限以内であれば(例えば、25パーセントよりも大きくない)、プロセス400はステップ445に進む。調整が最大周波数調整制限以内でないなら(例えば25パーセントよりも大きい)、ステップ440に示すように、調整は最大周波数調整制限に従って制限される。
[0045] ステップ445において、周波数は、調整を受けて、ホストプロセッサンクロックで生成される。
[0046] 本発明の実施形態は、ビデオ復号中の動的周波数調整のための方法及びシステムを提供する。本発明の各実施形態は、ビデオ復号中のハードウェアVLDを制御する周波数を適応的に調整することができる。本発明の各実施形態は、フレームレベル精度において周波数を調整することができる。本発明の他の実施形態は、マクロブロックレベル精度において周波数を調整することができる。VLDを実行するのに要した時間に関する最近の履歴に基づいてビデオ復号中に周波数を適応的に調整することにより、使用されない処理スピードにより引き起こされる過剰の電力ロスが抑えられる。必要な速度よりも速く復号が起こる場合、周波数はVLDを遅くするように減少され、電力消費を図ることができる。
[0047] 以上の本発明の具体的な各実施形態は、例示及び説明のために開示したものである。これらがすべての実施形態ではなく、また、本発明を開示した形態と同じものに限定するものでもなく、多くの修正及び変形が上記の教示に基づいて可能である。各実施形態は、本発明の原理を説明する上で最善となるように選択及び説明されており、これにより、目的とする特定の使用に適切となるように、本発明及び各実施形態に様々な修正を施したものを当業者が最善に実施することが可能となる。本発明の範囲は、特許請求の範囲及びその均等物によって定められる。
本発明の一実施形態に係るコンピュータシステムの基礎コンポーネントの概観図を示す。 本発明の一実施形態に係るクロック周波数を適応的に制御するホストプロセッサのブロック図である。 本発明の一実施形態に係る可変長復号(VLD)を含む画像処理ユニットのブロック図である。 本発明の一実施形態に係るビデオ復号中に動的周波数調整を行うプロセスのフローチャートを示す。
符号の説明
100…コンピュータシステム、101…ホストプロセッサ、102…揮発性メモリ、103…不揮発性メモリ、104…データストレージ装置、105…ディスプレイ装置、106…英数字入力装置、107…カーソル制御装置、108…I/O装置、110…バス、205…ビデオフォワーダ、206…ビデオ、208…ビデオ転送時刻210…タイマ213…VLD完了時刻、220…適応クロック周波数制御装置、225…クロック、228…周波数信号、230…平均復号時間モジュール、235…適応周波数アジャスタ、315…ハードウェアVLD。

Claims (10)

  1. ビデオ復号中に動的周波数調整を行う方法であって、
    ビデオクリップの一部に対してハードウェア可変長復号(VLD)をプロセッサにおいて実行する復号時間を測定するステップと、
    前記復号時間に少なくとも一部基づいて、前記ビデオクリップの前記ビデオ復号中に前記プロセッサを制御する周波数を調整するステップと、
    を含む方法。
  2. ビデオクリップの前記一部は、前記ビデオクリップの複数のフレームを有しており、
    前記複数のフレームについての前記復号時間を平均化することによって、前記複数のフレームそれぞれの平均復号時間を決定するステップを更に含む請求項1記載の方法。
  3. 前記復号時間に基づいて前記プロセッサを制御する周波数を調整する前記ステップは、前記復号時間を前記周波数に基づく割当復号時間と比較し、前記復号時間が前記割当復号時間と異なる場合に、前記周波数を調整する請求項1記載の方法。
  4. 前記復号時間が前記割当復号時間よりも大きい場合は、前記周波数を増加させ、
    前記復号時間が前記割当復号時間よりも小さい場合は、前記周波数を減少させることを更に含む請求項3記載の方法。
  5. 前記周波数を調整する前記ステップは、最大周波数調整制限を有する条件下で前記周波数を調整することを含む請求項3記載の方法。
  6. 前記復号時間に少なくとも一部基づいて前記プロセッサを制御する周波数を調整する前記ステップは、前記平均復号時間に従って前記周波数を直線的にスケーリングすることを含む請求項2記載の方法。
  7. ビデオクリップの一部に対して可変長復号(VLD)を実行するオーディオ/ビデオプロセッサと、
    ビデオクリップの前記一部に関して、前記VLDオペレーションを実行する復号時間を測定する復号タイマと、
    前記オーディオ/ビデオプロセッサが前記VLDオペレーションを実行する周波数を生成するクロックと、
    前記復号時間に少なくとも一部基づいて、前記周波数を調整する適応クロック周波数コントロールと、
    を備えるビデオ復号システム。
  8. ビデオクリップの前記一部は、前記ビデオクリップの複数のフレームを有しており、
    前記適応クロック周波数コントロールは、前記複数のフレームについての前記復号時間を平均化することによって、前記複数のフレームそれぞれに関する平均復号時間を決定するように作動する請求項7記載のビデオ復号システム。
  9. 前記適応クロック周波数コントロールは、前記復号時間を前記周波数に基づく割当復号時間と比較し、前記復号時間が前記割当復号時間と異なる場合に、前記周波数を調整するように作動する請求項7記載のビデオ復号システム。
  10. 前記適応クロック周波数コントロールは、
    前記復号時間が前記割当復号時間よりも大きい場合は、前記周波数を増加させるように作動し、
    前記復号時間が前記割当復号時間よりも小さい場合は、前記周波数を減少させるように作動する請求項9記載のビデオ復号システム。
JP2007196284A 2006-08-29 2007-07-27 ビデオ復号時に動的周波数調整する方法及び装置 Pending JP2008104153A (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US11/512,873 US20080056373A1 (en) 2006-08-29 2006-08-29 Method and system for dynamic frequency adjustment during video decoding

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2011247761A Division JP2012075145A (ja) 2006-08-29 2011-11-11 ビデオ復号時に動的周波数調整する方法及び装置

Publications (1)

Publication Number Publication Date
JP2008104153A true JP2008104153A (ja) 2008-05-01

Family

ID=39151493

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2007196284A Pending JP2008104153A (ja) 2006-08-29 2007-07-27 ビデオ復号時に動的周波数調整する方法及び装置
JP2011247761A Pending JP2012075145A (ja) 2006-08-29 2011-11-11 ビデオ復号時に動的周波数調整する方法及び装置

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2011247761A Pending JP2012075145A (ja) 2006-08-29 2011-11-11 ビデオ復号時に動的周波数調整する方法及び装置

Country Status (5)

Country Link
US (1) US20080056373A1 (ja)
JP (2) JP2008104153A (ja)
KR (2) KR101050578B1 (ja)
CN (1) CN101137064B (ja)
TW (2) TWI448161B (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014507897A (ja) * 2011-02-10 2014-03-27 インテル コーポレイション 共有ビデオ−オーディオパイプライン

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7818444B2 (en) 2004-04-30 2010-10-19 Move Networks, Inc. Apparatus, system, and method for multi-bitrate content streaming
US8868772B2 (en) * 2004-04-30 2014-10-21 Echostar Technologies L.L.C. Apparatus, system, and method for adaptive-rate shifting of streaming content
US8370514B2 (en) 2005-04-28 2013-02-05 DISH Digital L.L.C. System and method of minimizing network bandwidth retrieved from an external network
US8683066B2 (en) 2007-08-06 2014-03-25 DISH Digital L.L.C. Apparatus, system, and method for multi-bitrate content streaming
JP5013893B2 (ja) * 2007-01-31 2012-08-29 キヤノン株式会社 画像読取装置及び画像読取方法
GB0821459D0 (en) * 2008-11-24 2008-12-31 Icera Inc Active power management
US9578354B2 (en) 2011-04-18 2017-02-21 Verizon Patent And Licensing Inc. Decoupled slicing and encoding of media content
US20140204101A1 (en) * 2011-11-30 2014-07-24 Murali Ramadoss Adaptive frame rate control for a graphics subsystem
US9609340B2 (en) 2011-12-28 2017-03-28 Verizon Patent And Licensing Inc. Just-in-time (JIT) encoding for streaming media content
US8752085B1 (en) 2012-02-14 2014-06-10 Verizon Patent And Licensing Inc. Advertisement insertion into media content for streaming
US20140297869A1 (en) 2012-10-11 2014-10-02 Uplynk, LLC Adaptive streaming cost management
CN103051899B (zh) * 2012-12-31 2015-12-02 青岛中星微电子有限公司 一种视频解码的方法及装置
CN105981386B (zh) * 2013-12-06 2019-02-26 华为技术有限公司 图像解码装置、图像编码装置及编码数据变换装置
CN107426200B (zh) * 2017-07-13 2020-10-23 广州市百果园网络科技有限公司 一种多媒体数据处理方法和装置
CN108769699B (zh) * 2018-05-10 2019-11-19 天津瑞发科半导体技术有限公司 一种视频传输系统及方法
CN108777881B (zh) * 2018-05-31 2021-01-19 海能达通信股份有限公司 一种应答时隙预留方法、系统及设备
US10817190B1 (en) * 2019-07-15 2020-10-27 Amazon Technologies, Inc. System and method for managing memory compression security
CN115579013B (zh) * 2022-12-09 2023-03-10 深圳市锦锐科技股份有限公司 一种低功耗音频解码器

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002099432A (ja) * 2000-09-22 2002-04-05 Sony Corp 演算処理システム及び演算処理制御方法、タスク管理システム及びタスク管理方法、並びに記憶媒体
JP2004355599A (ja) * 2003-05-07 2004-12-16 Sony Corp 周波数制御装置、情報処理装置及びプログラム
JP2005346301A (ja) * 2004-06-01 2005-12-15 Sony Computer Entertainment Inc タスク管理方法、タスク管理装置、半導体集積回路、電子装置、およびタスク管理システム
WO2006004065A1 (ja) * 2004-07-02 2006-01-12 Kanazawa University Technology Licensing Organization Ltd. 動画像符号化処理システム、動画像符号化又は復号化処理システム、動画像符号化処理方法、及び、動画像符号化又は復号化処理方法
JP2006222648A (ja) * 2005-02-09 2006-08-24 Sony Corp 復号方法、復号装置およびそのプログラム

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0614437B2 (ja) * 1987-11-17 1994-02-23 日本電気株式会社 可変速デコード回路
JP3302726B2 (ja) * 1992-07-31 2002-07-15 株式会社東芝 半導体記憶装置
JP2862064B2 (ja) * 1993-10-29 1999-02-24 三菱電機株式会社 データ復号装置及びデータ受信装置及びデータ受信方法
US6771824B1 (en) * 1999-12-28 2004-08-03 Lucent Technologies Inc. Adaptive variable length decoding method
JP2002111504A (ja) * 2000-09-28 2002-04-12 Sony Corp ディジタル信号処理装置及びその方法
JPWO2002050645A1 (ja) * 2000-12-20 2004-04-22 株式会社日立製作所 低消費電力の電子回路及び消費電力低減方法
JP2002215599A (ja) * 2001-01-18 2002-08-02 Mitsubishi Electric Corp マルチプロセッサシステムおよびその制御方法
JP3862143B2 (ja) * 2001-01-19 2006-12-27 株式会社リコー 復号化装置及びその制御方法、プログラム
US7158900B2 (en) * 2002-01-07 2007-01-02 Siemens Energy & Automation, Inc. Pulse output function for programmable logic controller
US7006709B2 (en) * 2002-06-15 2006-02-28 Microsoft Corporation System and method deghosting mosaics using multiperspective plane sweep
US7634668B2 (en) * 2002-08-22 2009-12-15 Nvidia Corporation Method and apparatus for adaptive power consumption
US7372999B2 (en) * 2002-09-09 2008-05-13 Ricoh Company, Ltd. Image coder and image decoder capable of power-saving control in image compression and decompression
KR20060009840A (ko) * 2003-04-15 2006-02-01 가나자와 유니버시티 테크놀러지 라이센싱 오가니제이션 엘티디. 동영상 부호화 또는 복호화 처리 시스템 및 동영상 부호화 또는 복호화 처리방법
US7433524B2 (en) * 2003-05-08 2008-10-07 Ricoh Company, Ltd. Processing system with frame rate and image quality optimized
US7639743B2 (en) * 2004-03-25 2009-12-29 Sony Corporation Image decoder and image decoding method and program
JP2006065993A (ja) * 2004-08-30 2006-03-09 Fuji Photo Film Co Ltd 記録ディスクカートリッジ
CN100480960C (zh) * 2004-10-14 2009-04-22 上海环达计算机科技有限公司 调整微处理器工作频率的控制方法和系统
US20060136764A1 (en) * 2004-12-22 2006-06-22 Munguia Peter R Methods and apparatus to manage power consumption of a system

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002099432A (ja) * 2000-09-22 2002-04-05 Sony Corp 演算処理システム及び演算処理制御方法、タスク管理システム及びタスク管理方法、並びに記憶媒体
JP2004355599A (ja) * 2003-05-07 2004-12-16 Sony Corp 周波数制御装置、情報処理装置及びプログラム
JP2005346301A (ja) * 2004-06-01 2005-12-15 Sony Computer Entertainment Inc タスク管理方法、タスク管理装置、半導体集積回路、電子装置、およびタスク管理システム
WO2006004065A1 (ja) * 2004-07-02 2006-01-12 Kanazawa University Technology Licensing Organization Ltd. 動画像符号化処理システム、動画像符号化又は復号化処理システム、動画像符号化処理方法、及び、動画像符号化又は復号化処理方法
JP2006222648A (ja) * 2005-02-09 2006-08-24 Sony Corp 復号方法、復号装置およびそのプログラム

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014507897A (ja) * 2011-02-10 2014-03-27 インテル コーポレイション 共有ビデオ−オーディオパイプライン
US9942593B2 (en) 2011-02-10 2018-04-10 Intel Corporation Producing decoded audio at graphics engine of host processing platform

Also Published As

Publication number Publication date
TW201342929A (zh) 2013-10-16
KR20090128356A (ko) 2009-12-15
CN101137064A (zh) 2008-03-05
US20080056373A1 (en) 2008-03-06
TWI413418B (zh) 2013-10-21
CN101137064B (zh) 2011-02-09
JP2012075145A (ja) 2012-04-12
KR101050578B1 (ko) 2011-07-19
KR20080020525A (ko) 2008-03-05
TW200829031A (en) 2008-07-01
TWI448161B (zh) 2014-08-01

Similar Documents

Publication Publication Date Title
JP2008104153A (ja) ビデオ復号時に動的周波数調整する方法及び装置
US8225112B2 (en) Using historic load profiles to dynamically adjust operating frequency and available power to a handheld multimedia device processor core
US8106804B2 (en) Video decoder with reduced power consumption and method thereof
US9582060B2 (en) Battery-powered device with reduced power consumption based on an application profile data
US8897365B2 (en) Video rate control processor for a video encoding process
US7054964B2 (en) Method and system for bit-based data access
US7639743B2 (en) Image decoder and image decoding method and program
US9268723B2 (en) Dram compression scheme to reduce power consumption in motion compensation and display refresh
JPWO2007089014A1 (ja) デジタルvlsi回路およびそれを組み込んだ画像処理システム
US7307550B2 (en) Decoding method, decoding device, and program for the same
KR101651027B1 (ko) 콘텐츠 적응적 고정밀 매크로블록 레이트 제어
US10412386B2 (en) System on chip and data processing system including the same
US8737467B2 (en) Information processing apparatus and method
US7941005B2 (en) Information processing apparatus and resolution enhancement processing control program
EP2490103A2 (en) Video decoder and/or battery-powered device with reduced power consumption and methods thereof
US20060190514A1 (en) Data processing apparatus
JP2008199657A (ja) 画像圧縮システム及び画像圧縮方法
JP2006236325A (ja) データ処理装置
US20110291866A1 (en) Variable-length decoding device
US10063873B2 (en) Method for adaptively performing video decoding, and associated adaptive complexity video decoder and adaptive audio/video playback system
JP2004135067A (ja) 動画像再生処理方法、動画像再生装置および動画像再生処理プログラム
JP2009232360A (ja) 情報処理装置
JP2007233881A (ja) 動作速度制御プログラム、動作速度制御装置、動作速度制御方法

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100518

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100818

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110125

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20110425

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20110428

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110524

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20110712