JP2004153553A - Motion picture decoder and method therefor - Google Patents

Motion picture decoder and method therefor Download PDF

Info

Publication number
JP2004153553A
JP2004153553A JP2002316274A JP2002316274A JP2004153553A JP 2004153553 A JP2004153553 A JP 2004153553A JP 2002316274 A JP2002316274 A JP 2002316274A JP 2002316274 A JP2002316274 A JP 2002316274A JP 2004153553 A JP2004153553 A JP 2004153553A
Authority
JP
Japan
Prior art keywords
decoding
voltage
picture
mpeg stream
unit
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
JP2002316274A
Other languages
Japanese (ja)
Inventor
Masato Hirose
正人 広瀬
Kengo Nishimura
憲吾 西村
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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co Ltd
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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP2002316274A priority Critical patent/JP2004153553A/en
Publication of JP2004153553A publication Critical patent/JP2004153553A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To reduce power consumption by dynamically controlling an operational voltage or a clock signal according to the characteristic of an MPEG stream in decoding the MPEG stream. <P>SOLUTION: A decoding block 2 decides a picture type PT. A processing amount decider 23 receives the picture type PT and a decoding time DT, finds an average processing time NT for each picture type, and stores it in a storage memory 18. A processing load analyzer 24 on the basis of the picture type PT refers to information stored in the memory 18, and finds a voltage/clock control value CV. A voltage/clock controller 15 receives the voltage/clock control value CV, and controls at least one of the operational voltage and operational clock frequency of the decoder 1. <P>COPYRIGHT: (C)2004,JPO

Description

【0001】
【発明の属する技術分野】
本発明は、MPEGストリームの再生を行う動画像復号化に関するものであり、特に、復号処理における消費電力の削減に関する技術に属する。
【0002】
【従来の技術】
デジタルTV放送に代表されるMPEGストリームの再生システムでは、送信側でAVデータ(音声(Audio)と映像(Video))をMPEG規格に基づきパケット符号化し、受信側でその復号化処理を行い、再生を行う。
【0003】
従来技術として、MPEGストリームのビットレート情報から最適周波数を制御することによって、装置の消費電力を削減する方法が、特許文献1に開示されている。
【0004】
【特許文献1】
特開平11−68881号公報
【0005】
【発明が解決しようとする課題】
ところで、受信側機器のモバイル化が進むことによって、MPEGストリームの再生において、消費電力のさらなる削減の必要性が、より一層高まってきている。これに対して、特許文献1に示された方法では、単に、ビットレート情報から最適周波数を制御しているだけであり、消費電力削減の面では未だ十分とはいえない。
【0006】
前記の問題に鑑み、本発明は、MPEGストリームの復号化において、動作電圧やクロック周波数を、MPEGストリームの特性に応じて動的に制御し、消費電力をより削減することを課題とする。
【0007】
【課題を解決するための手段】
前記の課題を解決するために、本発明は、MPEGストリームを復号化する動画像復号化装置として、MPEGストリームをデコードするとともに、各ピクチャについてピクチャ種別を判定する復号化ブロックと、前記復号化ブロックにおけるピクチャ種別毎の過去の平均処理時間を示す蓄積情報を蓄積するための蓄積メモリと、当該動画像復号化装置の動作電圧および動作クロック周波数のうち少なくとも一方の制御を行う電圧・クロック制御部と、前記復号化ブロックからピクチャ種別を受け、このピクチャ種別を基にして、前記蓄積メモリに格納された蓄積情報を参照して、前記電圧・クロック制御部に制御内容を指示するための電圧・クロック制御値を求める処理負荷解析部とを備えたものである。
【0008】
この発明によると、当該動画像復号化装置の動作電圧および動作クロック周波数のうち少なくとも一方の制御内容を指示するための電圧・クロック制御値が、処理負荷解析部によって、ピクチャ種別を基にして、ピクチャ種別毎の過去の平均処理時間を示す蓄積情報を参照して、求められる。すなわち、MPEGストリーム内の様々なピクチャ構成に応じて、当該装置の動作電圧やクロック周波数を動的に制御することが可能になり、したがって、消費電力をより的確に削減することができる。
【0009】
そして、前記本発明に係る動画像復号化装置は、前記復号化ブロックから、ピクチャ種別と、当該ピクチャのデコード時間とを受けて、前記蓄積メモリに蓄積された蓄積情報を更新する処理量判定部を備えたものである。
【0010】
また、前記本発明に係る動画像復号化装置におけるピクチャ種別は、Iピクチャ、Pピクチャ、およびBピクチャであるのが好ましい。
【0011】
また、前記本発明に係る動画像復号化装置は、MPEGストリームの切り替えを検出するストリーム解析部を備え、前記ストリーム解析部によってMPEGストリームの切り替えが検出されたとき、前記蓄積メモリに格納された前記蓄積情報を削除するのが好ましい。これにより、MPEGストリームの切り替えが生じたとき、誤った蓄積情報に基づいた処理負荷解析を防ぐことができる。
【0012】
また、本発明は、MPEGストリームを復号化する動画像復号化装置として、復号化ブロックと、前記復号化ブロックにおける所定単位時間当たりの処理時間の履歴を示す蓄積情報を蓄積するための蓄積メモリと、前記復号化ブロックにおける処理量を判定し、これを基にして、前記蓄積メモリに格納された蓄積情報を更新する処理量判定部と、当該動画像復号化装置の動作電圧および動作クロック周波数のうち少なくとも一方の制御を行う電圧・クロック制御部と、前記所定単位時間毎に、前記蓄積メモリに格納された蓄積情報を参照して、前記電圧・クロック制御部に制御内容を指示するための電圧・クロック制御値を求める処理負荷解析部とを備えたものである。
【0013】
この発明によると、当該動画像復号化装置の動作電圧および動作クロック周波数のうち少なくとも一方の制御内容を指示するための電圧・クロック制御値が、処理負荷解析部によって、所定単位期間当たりの処理時間の履歴を示す蓄積情報を参照して、求められる。すなわち、MPEGストリームの復号処理における処理量の変化に応じて、当該装置の動作電圧やクロック周波数を動的に制御することが可能になり、したがって、消費電力をより的確に削減することができる。
【0014】
そして、前記本発明に係る動画像復号化装置における処理負荷解析部は、所定単位時間当たりの処理時間の増減値および変動値を用いて、前記電圧・クロック制御値を求めるものが好ましい。
【0015】
また、前記本発明に係る動画像復号化装置は、復号化前のMPEGストリームを一時的に蓄積するバッファメモリと、前記バッファメモリに格納されたMPEGストリームのデータ量を監視し、このデータ量が所定の閾値を超えたとき、前記電圧・クロック制御部に、当該動画像復号化装置の動作電圧および動作クロック周波数のうち少なくとも一方を、上げるよう指示するバッファ監視部とを備えテいるのが好ましい。これにより、バッファメモリに格納されたMPEGストリームのデータ量が閾値を越えたとき、当該装置の動作電圧や動作クロック周波数が上げられるので、バッファメモリのオーバーフローを未然に回避することができ、したがって、MPEGストリームを、データの欠落を招くことなく、確実に再生することができる。
【0016】
また、前記本発明に係る動画像復号化装置は、復号化前のMPEGストリームを一時的に蓄積するバッファメモリと、前記バッファメモリに格納されたMPEGストリームのデータ量を監視し、このデータ量が所定の閾値を超えたとき、前記処理負荷解析部に、新たな電圧・クロック制御値を求めるよう指示するバッファ監視部とを備えているのが好ましい。これにより、バッファメモリに格納されたMPEGストリームのデータ量が閾値を越えたとき、処理負荷解析部によって新たな電圧・クロック制御値が求められるので、バッファメモリのオーバーフローを未然に回避することができ、したがって、MPEGストリームを、データの欠落を招くことなく、確実に再生することができる。
【0017】
また、本発明は、動画像復号化装置において、MPEGストリームを復号化する方法として、前記MPEGストリームについて復号化を行いつつ、各ピクチャについてピクチャ種別を判定するステップと、前記ピクチャ種別と、当該ピクチャのデコード時間とを基にして、ピクチャ種別毎の過去の平均処理時間を蓄積情報として蓄積するステップと、前記蓄積情報を参照して、当該動画像復号化装置の動作電圧および動作クロック周波数のうち少なくとも一方の制御を行うステップとを備えたものである。
【0018】
また、本発明は、動画像復号化装置において、MPEGストリームを復号化する方法として、前記MPEGストリームについて復号化を行いつつ、所定単位時間当たりの処理時間の履歴を蓄積情報として蓄積するステップと、前記蓄積情報を参照して、当該動画像復号化装置の動作電圧および動作クロック周波数のうち少なくとも一方の制御を行うステップとを備えたものである。
【0019】
【発明の実施の形態】
以下、本発明の実施の形態について、図面を参照して説明する。
【0020】
(第1の実施形態)
図1は本発明に係る動画像復号化装置のハード構成の一例を示す図である。具体的には例えば、動画像表示機能付き携帯電話、PDA(Personal Digital Assistant)またはデジタルTVなどに相当する。
【0021】
図1に示すように、動画像復号化装置1は、外部からのMPEGストリームの入力処理を行う入力部(StreamIn)11と、装置1全体をコントロールするCPU12と、メモリ13と、外部表示装置へのAV信号(音声(Audio)信号と映像(Video)信号)の出力処理を行う表示プロセッサ14と、指定された電圧・クロック制御処理を行う電圧・クロック制御部15とを備えている。メモリ13は用途に応じて、デコード後の映像データを蓄えるフレームバッファ13と、デコード前のMPEGストリームを蓄えるVBB(Video Bit Buffer)17と、MPEGストリーム負荷解析用の蓄積情報を蓄える蓄積メモリ18とが、構成される。また電圧・クロック制御部15は、装置1の動作電圧および動作クロック周波数のうち少なくとも一方を制御する。なお、本願明細書において、「電圧・クロック」とは、動作電圧および動作クロック周波数のうち、制御の対象となる少なくとも一方のことをいうものとする。
【0022】
図1の構成において、データの流れと各構成要素との関係を、番号順に説明する。図1では、データの流れが破線によって示されている。入力部11は外部からMPEGストリームが入力されると、これをVBB17へ転送する(▲1▼)。VBB17に蓄えられたデータは、CPU12によってパーサ処理(ヘッダ部分の解析)が行われ、さらにデコード処理が行われた後、映像信号データとしてフレームバッファ16へ転送される(▲2▼)。このCPU12の処理において得られたMPEGストリームのピクチャ種別情報や復号時間情報は、蓄積情報として蓄積メモリ18に蓄えられ(▲3▼)、CPU12はこの蓄積情報を参照して負荷解析を行い、電圧・クロック制御部15に電圧・クロックの変更指示を行う(▲4▼)。表示プロセッサ14は、フレームバッファ16に蓄えられた映像信号を外部へ出力する(▲5▼)。
【0023】
このような動作によって、外部から入力されたMPEGストリームを映像信号に変換して出力するとともに、装置1自体の電圧・クロックを適切に制御することが可能となる。
【0024】
図2は本実施形態に係る動画像復号化装置の構成を機能的に示すブロック図である。図2はハード的には図1の構成からなり、図1と共通の構成要素には図1と同一の符号を付している。図2において、パーサ部21、デコード部22、処理量判定部23および処理負荷解析部24は、CPU12とプログラムによって実現される。パーサ部21およびデコード部22によって、復号化ブロック2が構成されている。
【0025】
パーサ部21はVBB17から送られたMPEGストリームのヘッダ解析を行い、ピクチャデータを抽出し、そのピクチャデータをデコード部22に送る。また、ヘッダ解析によって得られたピクチャ種別PTを、処理量判定部23および処理負荷解析部24に通知する。
【0026】
デコード部22はパーサ部21から送られたピクチャデータの復号化を行い、復号したデータをフレームバッファ16に送る。また、復号化に要した処理時間すなわちデコード時間DTを処理量判定部23に通知する。
【0027】
処理量判定部23は、パーサ部21から通知されたピクチャ種別PTおよびデコード部22から通知されたデコード時間DTに基づいて、ピクチャ種別毎の過去の平均処理時間を算出する。ここでの処理時間は、実際に処理に要したデコード時間を、本装置が理想状態、すなわち動作電圧が最大であり、かつ、クロック周波数が最大の状態で動作した場合の時間に換算したものとする。
【0028】
蓄積メモリ18は、処理量判定部23によって算出されたピクチャ種別毎の平均処理時間NTを蓄積情報として格納する。
【0029】
処理負荷解析部24は、パーサ部21からピクチャ種別PTの通知を受けると、蓄積メモリ18に格納された蓄積情報AIを参照して、処理負荷解析を実施する。そしてその解析結果に基づいて、電圧・クロック制御部15に電圧・クロック制御値CVを送る。
【0030】
図2に示す動画像復号化装置1の動作を、図3のフローチャートに従って説明する。まずステップS11において、入力部11が外部からMPEGストリームを入力する。次にステップS12において、ピクチャデータのデコードを行うために十分な量のMPEGストリームがVBB17に蓄積されているか否かを判定する。十分な量のMPEGストリームが格納されているときは(Yes)、ステップS13にすすむ一方、そうでないときは(No)、入力部11から入力されたMPEGストリームをVBB17に充填する(S13)。
【0031】
次にステップS14において、パーサ部21は、VBB17に格納されたMPEGストリームのヘッダ情報を解析し、デコードを行うピクチャのピクチャ種別PTを判定する。そしてステップS15において、処理負荷解析部24は蓄積メモリ18へのアクセス権を取得した後、パーサ部21によって判定されたピクチャ種別PTを基にして、蓄積メモリ18に蓄積された蓄積情報AIを参照して、電圧・クロック制御値CVを計算する。
【0032】
ステップS15における処理を具体的に説明する。図4は蓄積メモリ18の蓄積情報AIと電圧・クロック制御値CVとの関係の一例を示す図である。図4の例では、蓄積情報AIとして、ピクチャ種別毎の平均処理時間だけでなく、各ピクチャ種別の到着数も併せて蓄積している。もちろん、これ以外の情報を併せて蓄積してもよい。処理負荷解析部24は、例えば図4(a)に示す蓄積情報AIを参照して処理負荷解析を実行する場合において、ピクチャ種別PTとしてPピクチャが通知されたとき、Pピクチャの平均処理時間「290」と、平均処理時間が最大となるIピクチャの平均処理時間「362」とを取得する。そして解析結果として、Iピクチャの平均処理時間に対するPピクチャの平均処理時間の相対比、すなわち290÷362=0.80(=80(%))を得て、この80(%)を電圧・クロック制御値CVとして電圧・クロック制御部15に指示する。
【0033】
なお、電圧・クロック制御値CVは、処理量判定の際に、デコード時間DTを理想状態での値に換算するためにも必要となる。したがって、処理負荷解析部24は電圧・クロック制御値CVを処理量判定部23にも通知する。
【0034】
そしてステップS16において、電圧・クロック制御部15は、ステップS15で求められた電圧・クロック制御値CVを受けて、動画像復号化装置1に供給される動作電圧、および/または、供給される動作クロックの周波数を制御する。
【0035】
またステップS17において、デコード部22はパーサ部21から送られたピクチャデータをデコードする。このときのデコード時間DTは処理量判定部23に送られる。そしてステップS18において、処理量判定部23は蓄積メモリ18へのアクセス権を取得した後に、デコード部22から受けたデコード時間DTを用いて、蓄積メモリ18の蓄積情報に含まれた平均処理時間を計算して更新する。また、図4に示すように、蓄積情報にピクチャ種別毎の到達数が蓄積されている場合には、パーサ部21から受けたピクチャ種別PTに従って、ピクチャ種別毎毎の到達数をカウントアップする。
【0036】
以上のように本実施形態によると、ピクチャ種別毎の平均処理時間に基づいて、適切な電圧・クロック制御を行うことが可能となり、したがって、装置の消費電力を削減することができる。
【0037】
なお、本実施形態では、処理量判定部23は常時動作するものとしたが、処理量判定は、必ずしも常時行う必要はなく、一時的に行うだけでもよい。例えば、装置の電源がONされた初期動作時に、所定時間実行したり、所定のタイミングでサンプリング的に実行したり、あるいは、動画像が表す場面が変化した時を検知して、実行するようにしてもよい。処理量判定を実行しないときは、処理量判定部23の動作を停止しておけばよいので、さらに消費電力を削減することができる。
【0038】
さらに、処理量判定を、復号化処理と並列には実行しないようにしてもよい。この場合は例えば、蓄積情報を、過去の動作実績データから直接読み込むようにしたり、MPEGストリームに付随したデータを用いるようにすればよい。
【0039】
(第2の実施形態)
図5は本発明の第2の実施形態に係る動画像復号化装置の構成を機能的に示すブロック図である。図5において、図2と共通の構成要素には図2と同一の符号を付している。図5を図2と対比すると、本実施形態に係る動画像復号化装置1Aは、パーサ部21に代えて、これと異なる機能を備えたパーサ部21Aを備えた点と、ストリーム解析部25を新たに備えた点が、第1の実施形態と異なっている。
【0040】
パーサ部21Aは、第1の実施形態と同様に、VBB17から送られたMPEGストリームのヘッダ解析を行い、そこで得られたピクチャ種別PTを処理量判定部23および処理負荷解析部24に通知するとともに、ピクチャデータを抽出してデコード部22に送る。パーサ部21Aはさらに、MPEGストリーム切り替え情報SCをストリーム解析部25に通知する。MPEGストリーム切り替え情報SCとは、MPEGストリームデータのサイズ変更やアスペクト比の変更、またはプロファイルの変更に関する情報のことをいう。アスペクト比の変更の例としては、16:9から4:3への変更などがあり、プロファイルの変更の例としては、HDからSDへの変更などがある。
【0041】
ストリーム解析部25は、MPEGストリーム切り替え情報SCを受けて、MPEGストリームの切り替えを検出する。すなわち、MPEGストリームデータのサイズの変更、アスペクト比の変更、またはプロファイルの変更が生じたとき、MPEGストリームの切り替えが発生したと判断する。そして、MPEGストリームの切り替えを検出したとき、蓄積メモリ18に格納された蓄積情報の削除を行う。ここでは、蓄積メモリ18のメモリアクセススイッチ18aを切り替えて、蓄積メモリ18にリセット信号RSを送る。
【0042】
図5に示す動画像復号化装置1Aの動作を、図6のフローチャートに従って説明する。なお、図3と共通のステップについては図3と同一の符号を付しており、ここでは説明を省略する。
【0043】
VBB17に十分な量のMPEGストリームがあるとき(S12でYes)、ステップS21において、ストリーム解析部25はMPEGストリームの切り替えが発生したか否かを判定する。発生しなかったときは(S21でNo)、ステップS14にすすみ、第1の実施形態と同様の処理を行う。
【0044】
一方、MPEGストリームの切り替えが発生したときは(S21でYes)、ステップS22にすすみ、ストリーム解析部25が、蓄積メモリ18へのアクセス権を取得した後にリセット信号RSを送り、蓄積情報を削除する。さらにステップS23において、電圧・クロック制御値CVを最大に設定する。これにより、別のMPEGストリームに変化した場合でも、デコード処理が時間的に間に合うようにできる。
【0045】
図7は本実施形態における蓄積情報AIの変化の一例を示しており、同図中、(a)は蓄積情報AIの量の時間的な変化を示すグラフ、(b)は蓄積情報AI(ピクチャの到着数および平均処理時間)と電圧・クロック制御値CVの遷移を示す図である。図7では、時刻Snにおいてプロファイルの変更が生じ、時刻Smにおいてアスペクト比の変更が生じている。このため、時刻Sn,SmにおいてMPEGストリームの切り替えが検出され、それまでに蓄積された蓄積情報は全て削除されているとともに、電圧・クロック制御値CVとして最大値「100」が与えられている。なお、MPEGストリームの切り替え発生後は、再び、ピクチャ到着数と平均処理時間の情報が蓄積され、この蓄積情報を基にして、次ピクチャにおける電圧・クロック制御値CVが求められる。
【0046】
以上のように本実施形態によると、ストリーム解析部25によってMPEGストリームの切り替えの発生を検知したとき、過去の蓄積情報が削除されるので、ストリーム切り替え時に、誤った蓄積情報に基づいた負荷解析を行うことを防ぐことができる。
【0047】
(第3の実施形態)
図8は本発明の第3の実施形態に係る動画像復号化装置の構成を機能的に示すブロック図である。図8において、図5と共通の構成要素には図5と同一の符号を付している。本実施形態では、蓄積メモリ18Aに蓄積される蓄積情報の内容が第1および第2の実施形態と異なっており、このため、第1および第2の実施形態とは異なる動作を行う処理量判定部23Aおよび処理負荷解析部24Aが設けられている。
【0048】
本実施形態では、蓄積メモリ18Aは、復号化ブロック2Aの過去の復号化処理における、所定の単位時間当たりの処理時間の履歴を、蓄積情報として蓄積する。ここでの処理時間は、第1および第2の実施形態と同様に、実際に処理に要したデコード時間を、本装置が理想状態、すなわち動作電圧が最大であり、かつ、クロック周波数が最大の状態で動作した場合の時間に換算したもの(絶対処理時間)とする。また本実施形態では、蓄積情報として、単位時間当たりの処理時間を最新のものを含めて複数個保持するものとし、さらに、各処理時間について、前回の処理時間との差分を増加・減少値として保持するものとする。
【0049】
処理量判定部23Aは、デコード部22から通知されたデコード時間DTに基づいて、絶対処理時間を算出し、一定時間T毎に絶対処理時間の総和を算出し、蓄積メモリ18Aに蓄積情報として格納する。なおここでは、一定時間Tは例えば1sec程度とする。処理負荷解析部24Aは蓄積メモリ18Aに格納された蓄積情報AIを取得し、処理負荷解析を実施する。そしてその解析結果に基づいて、電圧・クロック制御部15に電圧・クロック制御値CVを送る。処理量判定部23Aおよび処理負荷解析部24Aは、内部に有するタイマーを用いて、時間管理を行う。
【0050】
図8に示す動画像復号化装置1Bの動作を、図9のフローチャートに従って説明する。なお、図3と共通のステップについては図3と同一の符号を付しており、ここではその説明を省略する。また、ストリーム解析部25に関するステップについては、説明を簡単にするために割愛している。
【0051】
VBB17に十分な量のMPEGストリームがあるとき(S12でYes)、ステップS31において、処理量判定部23Aは、一定時間Tが経過したか否かを判定する。経過していないときはステップS17にすすみ、デコード処理を実行する。
【0052】
デコード処理の後、処理量判定部23Aは、デコード部22からデコード時間DTを受け、蓄積メモリ18Aへのアクセス権を取得した後、蓄積情報に含まれた最新の,単位時間当たり処理時間を、デコード時間DTから換算した絶対処理時間を用いて、更新する。また、前回の単位時間当たり処理時間との差分を再計算して、増加・減少値を更新する。
【0053】
一方、一定時間Tが経過したときは(S31でYes)ステップS32にすすみ、処理負荷解析部24Aは、蓄積メモリ18Aへのアクセス権を取得した後、蓄積情報AIに含まれた最新の単位時間当たり処理時間およびその増加・減少値を基にして、電圧・クロック制御値CVを計算する。そしてステップS33において、電圧・クロック制御部15は、ステップS32で求められた電圧・クロック制御値CVを受けて、動画像復号化装置1Bに供給される動作電圧および供給される動作クロックの周波数を制御する。
【0054】
ステップS32における処理を具体的に説明する。図10(a)は蓄積メモリ18の蓄積情報AIと電圧・クロック制御値CVとの関係の一例を示す図、図10(b)は電圧・クロック制御値CVの時間変化を示すグラフである。処理負荷解析部24Aは蓄積情報AIを参照して、例えば次のように電圧・クロック制御値CVを計算する。最新の単位時間当たり処理時間γnに、増加・減少値αすなわち前回との差分値と、過去n個の単位時間当たり処理時間の標準偏差値σの3倍に相当する値とを加え、その和を次の単位時間当たり処理時間の推定値γn+1とする。すなわち、
γn+1=γn+α+3σ
とする。そして、一定時間Tにおける最大絶対処理時間MAXに対する処理時間推定値γn+1の比率、すなわち、
CV=γn+1/MAX
により算出した値CVを、電圧・クロック制御値として求める。この場合、αおよび3σが、単位時間当たり処理時間の増減値および変動値に、それぞれ相当する。
【0055】
以上のように本実施形態によると、所定の単位時間当たりの処理時間の履歴に基づいて、適切な電圧・クロック制御を行うことが可能となり、したがって、装置の消費電力を削減することができる。
【0056】
(第4の実施形態)
図11は本発明の第4の実施形態に係る動画像復号化装置の構成を機能的に示すブロック図である。図11において、図8と共通の構成要素には図8と同一の符号を付している。本実施形態では、バッファメモリとしてのVBB17に蓄積されたMPEGストリームのデータ量を監視するバッファ監視部31が、設けられている。
【0057】
バッファ監視部31はVBB17に蓄積されたMPEGストリームのデータ量が所定の閾値を超えたとき、電圧・クロックを最大(MAX)にするよう電圧・クロック制御部15に指示を行う。ここでは、アクセススイッチ15aを切り替えて、処理負荷解析部24Aの出力を無効にし、電圧・クロック制御部15に指示を行う。また、蓄積メモリ18Aのメモリアクセススイッチ18bを切り替えて、蓄積メモリ18Aの蓄積情報のうち不要なものを削除する。
【0058】
図11に示す動画像復号化装置1Cの動作を、図12のフローチャートに従って説明する。なお、図9と共通のステップについては図9と同一の符号を付しており、ここではその説明を省略する。また、ストリーム解析部25に関するステップについては、説明を簡単にするために割愛している。
【0059】
ステップS41において、バッファ監視部31は、VBB17に蓄積されたMPEGストリームのデータ量が閾値を超えたか否かを判定し、閾値を超えたとき(Yes)はステップS42にすすみ、電圧・クロック制御部15に対して電圧・クロック制御値CVを最大に設定する。これにより、MPEGストリームの復号化処理が時間的に間に合わなくなることを未然に防ぐことができる。なお、電圧・クロックは必ずしも最大にする必要はなく、現在の値よりも上げるよう指示すれば、効果は得られる。
【0060】
図13(a)はVBB17に蓄積されたMPEGストリームのデータ量と電圧・クロック制御値CVの遷移を示すグラフである。MPEGストリームの蓄積データ量が閾値以下のときは、電圧・クロック制御値CVは、第3の実施形態と同様に、一定時間T毎に処理負荷解析部24Aによって指示される。ただし、MPEGストリームの蓄積データ量が閾値を超えたとき(時刻Tr)、電圧・クロック制御値CVはバッファ監視部31の指示によって最大となる。図13(b)は時刻Trの前後での電圧・クロック制御値CVと蓄積メモリ18Aに蓄えられた蓄積情報AI(単位時間当たり処理時間および増加・減少量)の変化を示している。
【0061】
以上のように本実施形態によると、MPEGストリームの蓄積データ量が閾値を越えたとき、電圧・クロックを上げることができるので、MPEGストリームの再生処理をデータの欠落なしに確実に行うことが可能になる。
【0062】
(第5の実施形態)
図14は本発明の第5の実施形態に係る動画像復号化装置の構成を機能的に示すブロック図である。図14において、図11と共通の構成要素には図11と同一の符号を付している。本実施形態では、第4の実施形態とは異なる動作を行う処理負荷解析部24Bおよびバッファ監視部31Aが設けられている。
【0063】
バッファ監視部31AはVBB17に蓄積されたMPEGストリームのデータ量が所定の閾値を超えたとき、処理負荷解析部24Bに処理の低下を通知する。処理負荷解析部24Bは、バッファ監視部31Aから処理の低下が通知されると、次の負荷解析タイミングを待たずに、すなわち所定の単位時間Tの経過を待たずに、即時に負荷解析を実施する。言い換えると、バッファ監視部31Aは処理負荷解析部24Bに、新たな電圧・クロック制御値CVを求めるよう指示する。
【0064】
図14に示す動画像復号化装置1Dの動作を、図15のフローチャートに従って説明する。なお、図12と共通のステップについては図12と同一の符号を付しており、ここではその詳細な説明を省略する。またストリーム解析部25に関するステップについては、説明を簡単にするために割愛している。
【0065】
バッファ監視部31AがVBB17に蓄積されたMPEGストリームのデータ量が閾値を越えたと判定したとき(S41でYes)、ステップS51にすすみ、処理負荷解析部24Bは蓄積メモリ18Aへのアクセス権を取得した後、蓄積メモリ18Aの蓄積情報AIを参照して負荷解析を行い、電圧・クロック制御値CVを計算する。
【0066】
図16(a)はVBB17に蓄積されたMPEGストリームのデータ量と電圧・クロック制御値CVの遷移を示すグラフである。MPEGストリームの蓄積データ量が閾値以下のときは、電圧・クロック制御値CVは第3の実施形態と同様に、一定時間T毎に処理負荷解析部24Bによって指示されている。ただし、MPEGストリームの蓄積データ量が時刻Trにおいて閾値を超えたとき、処理負荷解析部24Bは、時刻Trから蓄積情報を遡り、現在の時刻Trから時間Tだけ戻った時刻Tr−1から時刻Trまでの単位期間当たりの処理時間と、その前の単位期間当たり処理時間に対する増加・減少値とを求め、これらの値から、次の時間Tr〜Tr+1における電圧・クロック制御値CVを求める。このとき、第3の実施形態と同様に、時刻Trを基準にした過去の単位時間T毎の処理時間の標準偏差σを用いてもよい。図16(b)は時刻Trの前後での電圧・クロック制御値CVと蓄積メモリ18Aに蓄えられた蓄積情報AI{処理時間総和および増加・減少量}の変化の一例を示している。このように、本実施形態では、蓄積データ量が閾値を越えた時刻Trを起点として、負荷解析が開始される。
【0067】
そしてステップS52において、電圧・クロック制御部15は、ステップS51で求められた電圧・クロック制御値CVを受けて、動画像復号化装置1Dに供給される動作電圧、および供給される動作クロックの周波数を制御する。さらにステップS53において、処理量判定部23Aにおける判定の際の所定時間Tについて、計測タイミングをリセットし、時刻Trを起点とするようにする。
【0068】
以上のように本実施形態によると、MPEGストリームの蓄積データ量が閾値を超えたとき、負荷解析を実施することができるので、MPEGストリームの再生処理をデータの欠落なしに確実に行うことが可能になる。
【0069】
【発明の効果】
以上のように本発明によると、ピクチャ種別や、単位期間当たりの処理時間に応じて、当該装置の動作電圧やクロック周波数が動的に制御されるので、MPEGストリームの特性に応じた必要最小限の消費電力での処理が可能になる。
【図面の簡単な説明】
【図1】本発明に係る動画像復号化装置のハード構成の一例を示す図である。
【図2】本発明の第1の実施形態に係る動画像復号化装置の構成を機能的に示すブロック図である。
【図3】図2の動画像復号化装置の動作を示すフローチャートである。
【図4】本発明の第1の実施形態における蓄積情報と電圧・クロック制御値との関係を示す図である。
【図5】本発明の第2の実施形態に係る動画像復号化装置の構成を機能的に示すブロック図である。
【図6】図5の動画像復号化装置の動作を示すフローチャートである。
【図7】本発明の第2の実施形態における蓄積情報の変化を示す図である。
【図8】本発明の第3の実施形態に係る動画像復号化装置の構成を機能的に示すブロック図である。
【図9】図8の動画像復号化装置の動作を示すフローチャートである。
【図10】本発明の第3の実施形態における蓄積情報と電圧・クロック制御値の変化を示す図である。
【図11】本発明の第4の実施形態に係る動画像復号化装置の構成を機能的に示すブロック図である。
【図12】図11の動画像復号化装置の動作を示すフローチャートである。
【図13】本発明の第4の実施形態におけるMPEGストリーム蓄積データ量と電圧・クロック制御値の変化を示す図である。
【図14】本発明の第5の実施形態に係る動画像復号化装置の構成を機能的に示すブロック図である。
【図15】図14の動画像復号化装置の動作を示すフローチャートである。
【図16】本発明の第5の実施形態におけるMPEGストリーム蓄積データ量と電圧・クロック制御値の変化を示す図である。
【符号の説明】
1,1A,1B,1C,1D 動画像復号化装置
2,2A 復号化ブロック
15 電圧・クロック制御部
17 VBB(バッファメモリ)
18,18A 蓄積メモリ
23,23A 処理量判定部
24,24A、24B 処理負荷解析部
25 ストリーム解析部
31,31A バッファ監視部
PT ピクチャ種別
DT デコード時間
AI 蓄積情報
CV 電圧・クロック制御値
[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates to moving picture decoding for reproducing an MPEG stream, and particularly to a technique for reducing power consumption in decoding processing.
[0002]
[Prior art]
2. Description of the Related Art In a reproduction system of an MPEG stream represented by digital TV broadcasting, AV data (audio (Audio) and video (Video)) is packet-coded based on the MPEG standard on a transmission side, and a decoding process is performed on a reception side for reproduction. I do.
[0003]
As a conventional technique, Patent Document 1 discloses a method for reducing the power consumption of an apparatus by controlling an optimum frequency from bit rate information of an MPEG stream.
[0004]
[Patent Document 1]
JP-A-11-68881
[0005]
[Problems to be solved by the invention]
By the way, as the reception side device becomes mobile, the necessity of further reducing power consumption in the reproduction of an MPEG stream has been further increased. On the other hand, in the method disclosed in Patent Document 1, the optimum frequency is simply controlled based on the bit rate information, and it cannot be said that the power consumption reduction is still sufficient.
[0006]
In view of the above problems, it is an object of the present invention to reduce power consumption by dynamically controlling an operating voltage and a clock frequency in accordance with the characteristics of an MPEG stream in decoding an MPEG stream.
[0007]
[Means for Solving the Problems]
In order to solve the above-mentioned problems, the present invention provides a moving picture decoding apparatus for decoding an MPEG stream, which decodes an MPEG stream and determines a picture type for each picture; An accumulation memory for accumulating accumulation information indicating a past average processing time for each picture type, and a voltage / clock control unit for controlling at least one of an operation voltage and an operation clock frequency of the video decoding device. Receiving a picture type from the decoding block, and referring to the storage information stored in the storage memory based on the picture type, a voltage / clock for instructing the voltage / clock control unit to perform control. And a processing load analysis unit for obtaining a control value.
[0008]
According to the present invention, a voltage / clock control value for instructing at least one of the control contents of the operation voltage and the operation clock frequency of the video decoding device is processed by the processing load analysis unit based on the picture type. It is obtained by referring to accumulated information indicating the past average processing time for each picture type. That is, it becomes possible to dynamically control the operation voltage and the clock frequency of the device according to various picture configurations in the MPEG stream, and thus it is possible to more accurately reduce power consumption.
[0009]
The moving image decoding apparatus according to the present invention further includes a processing amount determination unit that receives a picture type and a decoding time of the picture from the decoding block, and updates stored information stored in the storage memory. It is provided with.
[0010]
Preferably, the picture types in the video decoding device according to the present invention are I picture, P picture, and B picture.
[0011]
The moving picture decoding apparatus according to the present invention further includes a stream analyzing unit that detects switching of the MPEG stream, and when the switching of the MPEG stream is detected by the stream analyzing unit, the stream stored in the storage memory. It is preferable to delete the accumulated information. This makes it possible to prevent processing load analysis based on incorrect accumulated information when switching of the MPEG stream occurs.
[0012]
According to the present invention, there is provided a moving picture decoding apparatus for decoding an MPEG stream, comprising: a decoding block; and a storage memory for storing storage information indicating a history of processing time per predetermined unit time in the decoding block. A processing amount determining unit that determines the processing amount in the decoding block, and updates the storage information stored in the storage memory based on the processing amount; and an operating voltage and an operating clock frequency of the video decoding device. A voltage / clock control unit that performs at least one of the control operations, and a voltage for instructing the voltage / clock control unit to specify control contents with reference to the storage information stored in the storage memory for each predetermined unit time. A processing load analysis unit for obtaining a clock control value;
[0013]
According to the present invention, the voltage / clock control value for instructing at least one of the operation voltage and the operation clock frequency of the moving picture decoding apparatus is processed by the processing load analysis unit by the processing time per predetermined unit period. Is obtained by referring to the accumulated information indicating the history. That is, it becomes possible to dynamically control the operation voltage and the clock frequency of the device in accordance with the change in the amount of processing in the decoding processing of the MPEG stream, and thus it is possible to more accurately reduce the power consumption.
[0014]
It is preferable that the processing load analysis unit in the video decoding device according to the present invention obtains the voltage / clock control value using an increase / decrease value and a fluctuation value of the processing time per predetermined unit time.
[0015]
Further, the moving picture decoding apparatus according to the present invention monitors a buffer memory for temporarily storing an MPEG stream before decoding, and a data amount of the MPEG stream stored in the buffer memory. It is preferable that the voltage / clock control unit includes a buffer monitoring unit that instructs the voltage / clock control unit to increase at least one of an operation voltage and an operation clock frequency of the video decoding device when the threshold value is exceeded. . Thereby, when the data amount of the MPEG stream stored in the buffer memory exceeds the threshold, the operation voltage and the operation clock frequency of the device are increased, so that the overflow of the buffer memory can be avoided beforehand. The MPEG stream can be reliably reproduced without causing data loss.
[0016]
Further, the moving picture decoding apparatus according to the present invention monitors a buffer memory for temporarily storing an MPEG stream before decoding, and a data amount of the MPEG stream stored in the buffer memory. Preferably, a buffer monitoring unit is provided which instructs the processing load analysis unit to obtain a new voltage / clock control value when a predetermined threshold value is exceeded. Accordingly, when the data amount of the MPEG stream stored in the buffer memory exceeds the threshold, a new voltage / clock control value is obtained by the processing load analysis unit, so that the buffer memory can be prevented from overflowing. Therefore, it is possible to reliably reproduce the MPEG stream without causing data loss.
[0017]
Also, the present invention provides a method for decoding an MPEG stream in a video decoding apparatus, comprising the steps of: determining a picture type for each picture while decoding the MPEG stream; Accumulating the past average processing time for each picture type as accumulation information based on the decoding time of the picture type, and referring to the accumulation information to determine the operating voltage and the operating clock frequency of the video decoding apparatus. Performing at least one control.
[0018]
Also, the present invention provides a method for decoding an MPEG stream in a moving picture decoding apparatus, wherein the step of accumulating a history of processing time per predetermined unit time as accumulation information while decoding the MPEG stream; Referring to the accumulated information and controlling at least one of an operation voltage and an operation clock frequency of the video decoding device.
[0019]
BEST MODE FOR CARRYING OUT THE INVENTION
Hereinafter, embodiments of the present invention will be described with reference to the drawings.
[0020]
(1st Embodiment)
FIG. 1 is a diagram showing an example of a hardware configuration of a video decoding device according to the present invention. Specifically, for example, it corresponds to a mobile phone with a moving image display function, a PDA (Personal Digital Assistant), a digital TV, or the like.
[0021]
As shown in FIG. 1, the moving picture decoding apparatus 1 includes an input unit (StreamIn) 11 for inputting an MPEG stream from the outside, a CPU 12 for controlling the entire apparatus 1, a memory 13, and an external display device. A display processor 14 for performing output processing of AV signals (audio (Audio) signal and video (Video) signal), and a voltage / clock control unit 15 for performing designated voltage / clock control processing. The memory 13 includes a frame buffer 13 for storing video data after decoding, a VBB (Video Bit Buffer) 17 for storing an MPEG stream before decoding, and a storage memory 18 for storing storage information for MPEG stream load analysis, depending on the application. Is configured. Further, the voltage / clock control unit 15 controls at least one of the operation voltage and the operation clock frequency of the device 1. In the specification of the present application, the term “voltage / clock” refers to at least one of an operation voltage and an operation clock frequency to be controlled.
[0022]
In the configuration of FIG. 1, the relationship between the data flow and each component will be described in numerical order. In FIG. 1, the data flow is indicated by broken lines. When an MPEG stream is input from the outside, the input unit 11 transfers this to the VBB 17 ((1)). The data stored in the VBB 17 is subjected to a parser process (analysis of a header portion) by the CPU 12, and further subjected to a decoding process, and then transferred to the frame buffer 16 as video signal data ((2)). The picture type information and decoding time information of the MPEG stream obtained in the processing of the CPU 12 are stored as storage information in the storage memory 18 ((3)), and the CPU 12 performs load analysis with reference to the storage information and performs voltage analysis. Instruct the clock control unit 15 to change the voltage and clock (4). The display processor 14 outputs the video signal stored in the frame buffer 16 to the outside ([5]).
[0023]
By such an operation, it is possible to convert the MPEG stream input from the outside into a video signal and output it, and to appropriately control the voltage and clock of the device 1 itself.
[0024]
FIG. 2 is a block diagram functionally showing the configuration of the video decoding device according to the present embodiment. FIG. 2 has the hardware configuration of FIG. 1, and the same components as those in FIG. 1 are denoted by the same reference numerals as in FIG. 2, a parser unit 21, a decoding unit 22, a processing amount determination unit 23, and a processing load analysis unit 24 are realized by the CPU 12 and a program. The parsing unit 21 and the decoding unit 22 constitute a decoding block 2.
[0025]
The parser unit 21 analyzes the header of the MPEG stream sent from the VBB 17, extracts picture data, and sends the picture data to the decoding unit 22. Further, the picture type PT obtained by the header analysis is notified to the processing amount determination unit 23 and the processing load analysis unit 24.
[0026]
The decoding unit 22 decodes the picture data sent from the parser unit 21 and sends the decoded data to the frame buffer 16. Further, it notifies the processing amount determination unit 23 of the processing time required for decoding, that is, the decoding time DT.
[0027]
The processing amount determination unit 23 calculates a past average processing time for each picture type based on the picture type PT notified from the parser unit 21 and the decoding time DT notified from the decoding unit 22. The processing time here is a value obtained by converting the decoding time actually required for the processing into a time when the present apparatus is operated in an ideal state, that is, when the operating voltage is the maximum and the clock frequency is the maximum. I do.
[0028]
The storage memory 18 stores the average processing time NT for each picture type calculated by the processing amount determination unit 23 as storage information.
[0029]
Upon receiving the notification of the picture type PT from the parser unit 21, the processing load analysis unit 24 performs a processing load analysis with reference to the accumulated information AI stored in the accumulation memory 18. Then, based on the analysis result, the voltage / clock control value CV is sent to the voltage / clock control unit 15.
[0030]
The operation of the video decoding device 1 shown in FIG. 2 will be described with reference to the flowchart in FIG. First, in step S11, the input unit 11 inputs an MPEG stream from outside. Next, in step S12, it is determined whether a sufficient amount of MPEG stream for decoding the picture data is accumulated in the VBB 17. If a sufficient amount of the MPEG stream is stored (Yes), the process proceeds to step S13. If not (No), the VBB 17 is filled with the MPEG stream input from the input unit 11 (S13).
[0031]
Next, in step S14, the parser unit 21 analyzes the header information of the MPEG stream stored in the VBB 17, and determines the picture type PT of the picture to be decoded. Then, in step S15, the processing load analysis unit 24 acquires the access right to the storage memory 18, and then refers to the storage information AI stored in the storage memory 18 based on the picture type PT determined by the parser unit 21. Then, the voltage / clock control value CV is calculated.
[0032]
The processing in step S15 will be specifically described. FIG. 4 is a diagram showing an example of the relationship between the stored information AI in the storage memory 18 and the voltage / clock control value CV. In the example of FIG. 4, as the accumulation information AI, not only the average processing time for each picture type but also the number of arrivals of each picture type is accumulated. Of course, other information may be stored together. For example, when the processing load analysis unit 24 performs the processing load analysis with reference to the accumulated information AI shown in FIG. 4A, when the P picture is notified as the picture type PT, the average processing time of the P picture 290 ”and the average processing time“ 362 ”of the I picture that maximizes the average processing time. As a result of the analysis, a relative ratio of the average processing time of the P picture to the average processing time of the I picture, that is, 290 ÷ 362 = 0.80 (= 80 (%)) is obtained. It instructs the voltage / clock control unit 15 as the control value CV.
[0033]
Note that the voltage / clock control value CV is also required to convert the decoding time DT to a value in an ideal state when determining the processing amount. Therefore, the processing load analysis unit 24 also notifies the processing amount determination unit 23 of the voltage / clock control value CV.
[0034]
Then, in step S16, the voltage / clock control unit 15 receives the voltage / clock control value CV obtained in step S15, and supplies the operating voltage supplied to the video decoding device 1 and / or the supplied operation. Control the frequency of the clock.
[0035]
In step S17, the decoding unit 22 decodes the picture data sent from the parser unit 21. The decoding time DT at this time is sent to the processing amount determination unit 23. Then, in step S18, after obtaining the access right to the storage memory 18, the processing amount determination unit 23 uses the decoding time DT received from the decoding unit 22 to calculate the average processing time included in the storage information of the storage memory 18. Calculate and update. In addition, as shown in FIG. 4, when the number of arrivals for each picture type is stored in the storage information, the number of arrivals for each picture type is counted up according to the picture type PT received from the parser unit 21.
[0036]
As described above, according to the present embodiment, it is possible to perform appropriate voltage / clock control based on the average processing time for each picture type, and therefore, it is possible to reduce the power consumption of the device.
[0037]
Note that, in the present embodiment, the processing amount determination unit 23 always operates, but the processing amount determination does not always need to be performed, but may be performed only temporarily. For example, at the time of the initial operation when the power of the apparatus is turned on, the apparatus is executed for a predetermined time, is executed at a predetermined timing in a sampling manner, or detects when a scene represented by a moving image changes and executes the apparatus. You may. When the processing amount determination is not performed, the operation of the processing amount determination unit 23 may be stopped, so that the power consumption can be further reduced.
[0038]
Further, the processing amount determination may not be performed in parallel with the decoding processing. In this case, for example, the stored information may be directly read from the past operation result data, or data attached to the MPEG stream may be used.
[0039]
(Second embodiment)
FIG. 5 is a block diagram functionally showing the configuration of the video decoding device according to the second embodiment of the present invention. 5, the same components as those of FIG. 2 are denoted by the same reference numerals as those of FIG. When FIG. 5 is compared with FIG. 2, the moving picture decoding apparatus 1A according to the present embodiment includes a parser unit 21A having a function different from the parser unit 21 in place of the parser unit 21; The point provided newly is different from the first embodiment.
[0040]
As in the first embodiment, the parser unit 21A analyzes the header of the MPEG stream sent from the VBB 17, notifies the obtained picture type PT to the processing amount determination unit 23 and the processing load analysis unit 24, and , And extracts the picture data and sends it to the decoding unit 22. The parser unit 21A further notifies the stream analysis unit 25 of the MPEG stream switching information SC. The MPEG stream switching information SC is information relating to a change in the size or aspect ratio of the MPEG stream data, or a change in the profile. Examples of the change of the aspect ratio include a change from 16: 9 to 4: 3, and examples of the change of the profile include a change from HD to SD.
[0041]
The stream analysis unit 25 receives the MPEG stream switching information SC and detects switching of the MPEG stream. That is, when a change in the size of the MPEG stream data, a change in the aspect ratio, or a change in the profile occurs, it is determined that switching of the MPEG stream has occurred. When the switching of the MPEG stream is detected, the storage information stored in the storage memory 18 is deleted. Here, the reset signal RS is sent to the storage memory 18 by switching the memory access switch 18a of the storage memory 18.
[0042]
The operation of the video decoding device 1A shown in FIG. 5 will be described with reference to the flowchart in FIG. Note that steps common to those in FIG. 3 are denoted by the same reference numerals as those in FIG. 3, and description thereof is omitted here.
[0043]
When there is a sufficient amount of MPEG streams in the VBB 17 (Yes in S12), in step S21, the stream analysis unit 25 determines whether switching of the MPEG streams has occurred. If no error has occurred (No in S21), the process proceeds to step S14, and the same processing as in the first embodiment is performed.
[0044]
On the other hand, when the switching of the MPEG stream has occurred (Yes in S21), the process proceeds to step S22, where the stream analysis unit 25 sends a reset signal RS after acquiring the access right to the storage memory 18, and deletes the storage information. . Further, in step S23, the voltage / clock control value CV is set to the maximum. As a result, even when the stream is changed to another MPEG stream, the decoding process can be performed in time.
[0045]
FIGS. 7A and 7B show an example of a change in the accumulated information AI in the present embodiment, in which FIG. 7A is a graph showing a temporal change in the amount of the accumulated information AI, and FIG. (Arrival number and average processing time) and voltage / clock control value CV transition. In FIG. 7, the profile is changed at the time Sn, and the aspect ratio is changed at the time Sm. Therefore, the switching of the MPEG stream is detected at times Sn and Sm, all the accumulated information accumulated so far is deleted, and the maximum value “100” is given as the voltage / clock control value CV. After the switching of the MPEG stream, information on the number of arrivals of pictures and the average processing time is accumulated again, and the voltage / clock control value CV for the next picture is obtained based on the accumulated information.
[0046]
As described above, according to the present embodiment, when the stream analysis unit 25 detects the occurrence of the switching of the MPEG stream, the past accumulated information is deleted. Therefore, when the stream is switched, the load analysis based on the erroneous accumulated information is performed. Can be prevented.
[0047]
(Third embodiment)
FIG. 8 is a block diagram functionally showing the configuration of the video decoding device according to the third embodiment of the present invention. 8, the same components as those in FIG. 5 are denoted by the same reference numerals as in FIG. In the present embodiment, the contents of the storage information stored in the storage memory 18A are different from those in the first and second embodiments. Therefore, the processing amount determination for performing an operation different from the first and second embodiments is performed. A unit 23A and a processing load analysis unit 24A are provided.
[0048]
In the present embodiment, the accumulation memory 18A accumulates, as accumulation information, a history of processing time per unit time in the past decoding processing of the decoding block 2A. The processing time in this case is the same as in the first and second embodiments, except that the decoding time actually required for the processing is set to the ideal state of the apparatus, that is, the operation voltage is the maximum and the clock frequency is the maximum. It is the value converted to the time when operating in the state (absolute processing time). Further, in the present embodiment, as the accumulated information, a plurality of processing times per unit time including the latest processing time are held, and for each processing time, the difference from the previous processing time is set as an increase / decrease value. Shall be retained.
[0049]
The processing amount determination unit 23A calculates the absolute processing time based on the decoding time DT notified from the decoding unit 22, calculates the total sum of the absolute processing time at regular time intervals T, and stores the sum as the storage information in the storage memory 18A. I do. Here, the fixed time T is, for example, about 1 sec. The processing load analysis unit 24A acquires the storage information AI stored in the storage memory 18A and performs the processing load analysis. Then, based on the analysis result, the voltage / clock control value CV is sent to the voltage / clock control unit 15. The processing amount determination unit 23A and the processing load analysis unit 24A perform time management using an internal timer.
[0050]
The operation of the video decoding device 1B shown in FIG. 8 will be described with reference to the flowchart in FIG. Note that the same steps as those in FIG. 3 are denoted by the same reference numerals as those in FIG. 3, and description thereof is omitted here. Also, steps relating to the stream analysis unit 25 are omitted for simplification of description.
[0051]
When there is a sufficient amount of MPEG stream in the VBB 17 (Yes in S12), in step S31, the processing amount determination unit 23A determines whether or not a predetermined time T has elapsed. If not, the process proceeds to step S17, where the decoding process is executed.
[0052]
After the decoding process, the processing amount determination unit 23A receives the decoding time DT from the decoding unit 22, obtains the right to access the storage memory 18A, and then calculates the latest processing time per unit time included in the storage information. Update is performed using the absolute processing time converted from the decoding time DT. Further, the difference from the previous processing time per unit time is recalculated to update the increase / decrease value.
[0053]
On the other hand, if the predetermined time T has elapsed (Yes in S31), the process proceeds to step S32, in which the processing load analysis unit 24A acquires the right to access the storage memory 18A, and then obtains the latest unit time included in the storage information AI. The voltage / clock control value CV is calculated based on the hit processing time and the increase / decrease value thereof. In step S33, the voltage / clock control unit 15 receives the voltage / clock control value CV obtained in step S32, and changes the operation voltage supplied to the moving picture decoding device 1B and the frequency of the supplied operation clock. Control.
[0054]
The processing in step S32 will be specifically described. FIG. 10A is a diagram showing an example of the relationship between the stored information AI in the storage memory 18 and the voltage / clock control value CV, and FIG. 10B is a graph showing the time change of the voltage / clock control value CV. The processing load analysis unit 24A calculates the voltage / clock control value CV, for example, as follows with reference to the accumulated information AI. An increase / decrease value α, that is, a difference value from the previous time, and a value corresponding to three times the standard deviation value σ of the past n processing times per unit time are added to the latest processing time γn per unit time, and the sum thereof is calculated. Is the next estimated processing time per unit time γn + 1. That is,
γn + 1 = γn + α + 3σ
And Then, the ratio of the processing time estimated value γn + 1 to the maximum absolute processing time MAX in the fixed time T, that is,
CV = γn + 1 / MAX
Is obtained as a voltage / clock control value. In this case, α and 3σ correspond to an increase / decrease value and a fluctuation value of the processing time per unit time, respectively.
[0055]
As described above, according to the present embodiment, appropriate voltage and clock control can be performed based on the history of the processing time per predetermined unit time, and therefore, the power consumption of the device can be reduced.
[0056]
(Fourth embodiment)
FIG. 11 is a block diagram functionally showing the configuration of the video decoding device according to the fourth embodiment of the present invention. 11, the same components as those in FIG. 8 are denoted by the same reference numerals as those in FIG. In the present embodiment, a buffer monitoring unit 31 that monitors the data amount of the MPEG stream stored in the VBB 17 as a buffer memory is provided.
[0057]
When the data amount of the MPEG stream stored in the VBB 17 exceeds a predetermined threshold value, the buffer monitoring unit 31 instructs the voltage / clock control unit 15 to maximize the voltage / clock (MAX). Here, the access switch 15a is switched to invalidate the output of the processing load analysis unit 24A, and the voltage / clock control unit 15 is instructed. Further, the memory access switch 18b of the storage memory 18A is switched to delete unnecessary information from the storage information of the storage memory 18A.
[0058]
The operation of the video decoding device 1C shown in FIG. 11 will be described with reference to the flowchart in FIG. Note that the same steps as those in FIG. 9 are denoted by the same reference numerals as in FIG. 9, and the description thereof will not be repeated. Also, steps relating to the stream analysis unit 25 are omitted for simplification of description.
[0059]
In step S41, the buffer monitoring unit 31 determines whether or not the data amount of the MPEG stream stored in the VBB 17 has exceeded a threshold. If the data amount has exceeded the threshold (Yes), the process proceeds to step S42, and the voltage / clock control unit For 15, the voltage / clock control value CV is set to the maximum. As a result, it is possible to prevent the decoding process of the MPEG stream from being out of time. Note that the voltage / clock does not necessarily need to be maximized, and an effect can be obtained if an instruction is given to increase the voltage / clock from the current value.
[0060]
FIG. 13A is a graph showing the data amount of the MPEG stream stored in the VBB 17 and the transition of the voltage / clock control value CV. When the amount of data stored in the MPEG stream is equal to or smaller than the threshold value, the voltage / clock control value CV is instructed by the processing load analysis unit 24A at regular time intervals T, as in the third embodiment. However, when the amount of data stored in the MPEG stream exceeds the threshold value (time Tr), the voltage / clock control value CV becomes maximum according to an instruction from the buffer monitoring unit 31. FIG. 13B shows changes in the voltage / clock control value CV and the stored information AI (processing time per unit time and increase / decrease amount) stored in the storage memory 18A before and after the time Tr.
[0061]
As described above, according to the present embodiment, when the amount of data stored in the MPEG stream exceeds the threshold value, the voltage and clock can be increased, so that the MPEG stream can be reliably reproduced without data loss. become.
[0062]
(Fifth embodiment)
FIG. 14 is a block diagram functionally showing the configuration of the video decoding device according to the fifth embodiment of the present invention. 14, the same components as those in FIG. 11 are denoted by the same reference numerals as those in FIG. In the present embodiment, a processing load analysis unit 24B and a buffer monitoring unit 31A that perform operations different from those of the fourth embodiment are provided.
[0063]
When the data amount of the MPEG stream stored in the VBB 17 exceeds a predetermined threshold, the buffer monitoring unit 31A notifies the processing load analysis unit 24B of a decrease in processing. When notified of the processing drop from the buffer monitoring unit 31A, the processing load analysis unit 24B immediately executes the load analysis without waiting for the next load analysis timing, that is, without waiting for a predetermined unit time T to elapse. I do. In other words, the buffer monitoring unit 31A instructs the processing load analysis unit 24B to obtain a new voltage / clock control value CV.
[0064]
The operation of the video decoding device 1D shown in FIG. 14 will be described with reference to the flowchart in FIG. Steps common to those in FIG. 12 are denoted by the same reference numerals as those in FIG. 12, and detailed description thereof will be omitted. Also, steps relating to the stream analysis unit 25 are omitted for simplicity of description.
[0065]
When the buffer monitoring unit 31A determines that the data amount of the MPEG stream stored in the VBB 17 has exceeded the threshold (Yes in S41), the process proceeds to step S51, and the processing load analysis unit 24B acquires the access right to the storage memory 18A. Thereafter, load analysis is performed with reference to the stored information AI in the storage memory 18A, and the voltage / clock control value CV is calculated.
[0066]
FIG. 16A is a graph showing the data amount of the MPEG stream stored in the VBB 17 and the transition of the voltage / clock control value CV. When the amount of data stored in the MPEG stream is equal to or smaller than the threshold value, the voltage / clock control value CV is instructed by the processing load analysis unit 24B at regular time intervals T as in the third embodiment. However, when the amount of data stored in the MPEG stream exceeds the threshold value at the time Tr, the processing load analysis unit 24B traces back the stored information from the time Tr and returns from the time Tr-1 to the time Tr from the current time Tr by the time T. The processing time per unit period up to and the increase / decrease value with respect to the processing time per unit period before that are obtained, and the voltage / clock control value CV at the next time Tr to Tr + 1 is obtained from these values. At this time, similarly to the third embodiment, the standard deviation σ of the processing time for each unit time T in the past based on the time Tr may be used. FIG. 16B shows an example of changes in the voltage / clock control value CV and the accumulated information AI {sum of processing time and increase / decrease} before and after time Tr. As described above, in the present embodiment, the load analysis is started from the time Tr at which the accumulated data amount exceeds the threshold.
[0067]
Then, in step S52, the voltage / clock control unit 15 receives the voltage / clock control value CV obtained in step S51, and supplies the operation voltage supplied to the video decoding device 1D and the frequency of the supplied operation clock. Control. Further, in step S53, the measurement timing is reset for a predetermined time T at the time of the determination by the processing amount determination unit 23A, and the time Tr is set as a starting point.
[0068]
As described above, according to the present embodiment, when the amount of data stored in the MPEG stream exceeds the threshold value, load analysis can be performed, so that it is possible to reliably perform MPEG stream reproduction processing without data loss. become.
[0069]
【The invention's effect】
As described above, according to the present invention, the operating voltage and the clock frequency of the device are dynamically controlled according to the picture type and the processing time per unit period. Processing with low power consumption.
[Brief description of the drawings]
FIG. 1 is a diagram illustrating an example of a hardware configuration of a video decoding device according to the present invention.
FIG. 2 is a block diagram functionally showing a configuration of a video decoding device according to the first embodiment of the present invention.
FIG. 3 is a flowchart illustrating an operation of the video decoding device of FIG. 2;
FIG. 4 is a diagram illustrating a relationship between accumulated information and a voltage / clock control value according to the first embodiment of the present invention.
FIG. 5 is a block diagram functionally showing a configuration of a video decoding device according to a second embodiment of the present invention.
FIG. 6 is a flowchart showing an operation of the moving picture decoding apparatus of FIG. 5;
FIG. 7 is a diagram illustrating a change in accumulated information according to a second embodiment of the present invention.
FIG. 8 is a block diagram functionally showing the configuration of a video decoding device according to a third embodiment of the present invention.
FIG. 9 is a flowchart showing the operation of the video decoding device of FIG. 8;
FIG. 10 is a diagram showing changes in accumulated information and voltage / clock control values according to a third embodiment of the present invention.
FIG. 11 is a block diagram functionally showing the configuration of a video decoding device according to a fourth embodiment of the present invention.
FIG. 12 is a flowchart showing the operation of the video decoding device of FIG. 11;
FIG. 13 is a diagram showing changes in the amount of data stored in an MPEG stream and voltage / clock control values according to a fourth embodiment of the present invention.
FIG. 14 is a block diagram functionally showing a configuration of a video decoding device according to a fifth embodiment of the present invention.
FIG. 15 is a flowchart showing the operation of the video decoding device of FIG. 14;
FIG. 16 is a diagram illustrating changes in the amount of data stored in an MPEG stream and voltage / clock control values according to a fifth embodiment of the present invention.
[Explanation of symbols]
1,1A, 1B, 1C, 1D video decoding device
2,2A decoding block
15 Voltage / clock control unit
17 VBB (buffer memory)
18, 18A storage memory
23, 23A processing amount determination unit
24, 24A, 24B Processing load analysis unit
25 Stream analysis unit
31, 31A buffer monitoring unit
PT picture type
DT decoding time
AI accumulated information
CV voltage / clock control value

Claims (10)

MPEGストリームを復号化する動画像復号化装置であって、
MPEGストリームをデコードするとともに、各ピクチャについてピクチャ種別を判定する復号化ブロックと、
前記復号化ブロックにおける,ピクチャ種別毎の過去の平均処理時間を示す蓄積情報を蓄積するための蓄積メモリと、
当該動画像復号化装置の動作電圧および動作クロック周波数のうち少なくとも一方の制御を行う電圧・クロック制御部と、
前記復号化ブロックからピクチャ種別を受け、このピクチャ種別を基にして、前記蓄積メモリに格納された蓄積情報を参照して、前記電圧・クロック制御部に制御内容を指示するための電圧・クロック制御値を求める処理負荷解析部とを備えた
ことを特徴とする動画像復号化装置。
A moving picture decoding apparatus for decoding an MPEG stream,
A decoding block for decoding an MPEG stream and determining a picture type for each picture;
A storage memory for storing storage information indicating a past average processing time for each picture type in the decoding block;
A voltage / clock control unit that controls at least one of an operation voltage and an operation clock frequency of the video decoding device;
A voltage / clock control for instructing the voltage / clock control unit to control contents by receiving a picture type from the decoding block, referring to the storage information stored in the storage memory, based on the picture type. A moving picture decoding apparatus comprising: a processing load analysis unit for obtaining a value.
請求項1において、
前記復号化ブロックから、ピクチャ種別と、当該ピクチャのデコード時間とを受けて、前記蓄積メモリに蓄積された蓄積情報を更新する処理量判定部を備えたことを特徴とする動画像復号化装置。
In claim 1,
A moving picture decoding apparatus, comprising: a processing amount determining unit that receives a picture type and a decoding time of the picture from the decoding block and updates accumulated information stored in the accumulation memory.
請求項1において、
前記ピクチャ種別は、Iピクチャ、Pピクチャ、およびBピクチャである
ことを特徴とする動画像復号化装置。
In claim 1,
The picture decoding device is characterized in that the picture types are an I picture, a P picture, and a B picture.
請求項1において、
MPEGストリームの切り替えを検出するストリーム解析部を備え、
前記ストリーム解析部によってMPEGストリームの切り替えが検出されたとき、前記蓄積メモリに格納された前記蓄積情報を削除する
ことを特徴とする動画像復号化装置。
In claim 1,
A stream analysis unit for detecting switching of the MPEG stream;
A moving picture decoding apparatus characterized in that when the switching of an MPEG stream is detected by the stream analyzer, the storage information stored in the storage memory is deleted.
MPEGストリームを復号化する動画像復号化装置であって、
復号化ブロックと、
前記復号化ブロックにおける,所定単位時間当たりの処理時間の履歴を示す蓄積情報を蓄積するための蓄積メモリと、
前記復号化ブロックにおける処理量を判定し、これを基にして、前記蓄積メモリに格納された蓄積情報を更新する処理量判定部と、
当該動画像復号化装置の動作電圧および動作クロック周波数のうち少なくとも一方の制御を行う電圧・クロック制御部と、
前記所定単位時間毎に、前記蓄積メモリに格納された蓄積情報を参照して、前記電圧・クロック制御部に制御内容を指示するための電圧・クロック制御値を求める処理負荷解析部とを備えた
ことを特徴とする動画像復号化装置。
A moving picture decoding apparatus for decoding an MPEG stream,
A decryption block;
A storage memory for storing storage information indicating a history of processing time per predetermined unit time in the decoding block;
A processing amount determining unit that determines a processing amount in the decoding block, and updates a storage information stored in the storage memory based on the processing amount;
A voltage / clock control unit that controls at least one of an operation voltage and an operation clock frequency of the video decoding device;
A processing load analysis unit for obtaining a voltage / clock control value for instructing the voltage / clock control unit to control the content by referring to the storage information stored in the storage memory for each predetermined unit time; A moving picture decoding apparatus characterized in that:
請求項5において、
前記処理負荷解析部は、所定単位時間当たりの処理時間の,増減値および変動値を用いて、前記電圧・クロック制御値を求めるものである
ことを特徴とする動画像復号化装置。
In claim 5,
The moving picture decoding apparatus according to claim 1, wherein the processing load analysis unit obtains the voltage / clock control value using an increase / decrease value and a fluctuation value of a processing time per a predetermined unit time.
請求項5において、
復号化前のMPEGストリームを一時的に蓄積するバッファメモリと、
前記バッファメモリに格納されたMPEGストリームのデータ量を監視し、このデータ量が所定の閾値を超えたとき、前記電圧・クロック制御部に、当該動画像復号化装置の動作電圧および動作クロック周波数のうち少なくとも一方を、上げるよう指示するバッファ監視部とを備えた
ことを特徴とする動画像復号化装置。
In claim 5,
A buffer memory for temporarily storing an MPEG stream before decoding,
The amount of data of the MPEG stream stored in the buffer memory is monitored, and when the amount of data exceeds a predetermined threshold, the voltage / clock control unit informs the voltage / clock control unit of the operating voltage and operating clock frequency of the video decoding device. A moving picture decoding apparatus comprising: a buffer monitoring unit that instructs at least one of them to be raised.
請求項5において、
復号化前のMPEGストリームを一時的に蓄積するバッファメモリと、
前記バッファメモリに格納されたMPEGストリームのデータ量を監視し、このデータ量が所定の閾値を超えたとき、前記処理負荷解析部に、新たな電圧・クロック制御値を求めるよう指示するバッファ監視部とを備えた
ことを特徴とする動画像復号化装置。
In claim 5,
A buffer memory for temporarily storing an MPEG stream before decoding,
A buffer monitoring unit that monitors a data amount of the MPEG stream stored in the buffer memory and, when the data amount exceeds a predetermined threshold, instructs the processing load analysis unit to obtain a new voltage / clock control value; And a moving picture decoding apparatus.
動画像復号化装置において、MPEGストリームを復号化する方法であって、
前記MPEGストリームについて復号化を行いつつ、各ピクチャについてピクチャ種別を判定するステップと、
前記ピクチャ種別と、当該ピクチャのデコード時間とを基にして、ピクチャ種別毎の過去の平均処理時間を蓄積情報として蓄積するステップと、
前記蓄積情報を参照して、当該動画像復号化装置の動作電圧および動作クロック周波数のうち少なくとも一方の制御を行うステップとを備えた
ことを特徴とする動画像復号化方法。
A method for decoding an MPEG stream in a video decoding device, comprising:
Determining a picture type for each picture while decoding the MPEG stream;
Storing the past average processing time for each picture type as storage information based on the picture type and the decoding time of the picture;
Performing a control of at least one of an operation voltage and an operation clock frequency of the video decoding device with reference to the accumulated information.
動画像復号化装置において、MPEGストリームを復号化する方法であって、
前記MPEGストリームについて復号化を行いつつ、所定単位時間当たりの処理時間の履歴を蓄積情報として蓄積するステップと、
前記蓄積情報を参照して、当該動画像復号化装置の動作電圧および動作クロック周波数のうち少なくとも一方の制御を行うステップとを備えた
ことを特徴とする動画像復号化方法。
A method for decoding an MPEG stream in a video decoding device, comprising:
Storing a history of processing time per unit time as storage information while decoding the MPEG stream;
Performing a control of at least one of an operation voltage and an operation clock frequency of the video decoding device with reference to the accumulated information.
JP2002316274A 2002-10-30 2002-10-30 Motion picture decoder and method therefor Pending JP2004153553A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002316274A JP2004153553A (en) 2002-10-30 2002-10-30 Motion picture decoder and method therefor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002316274A JP2004153553A (en) 2002-10-30 2002-10-30 Motion picture decoder and method therefor

Publications (1)

Publication Number Publication Date
JP2004153553A true JP2004153553A (en) 2004-05-27

Family

ID=32460029

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002316274A Pending JP2004153553A (en) 2002-10-30 2002-10-30 Motion picture decoder and method therefor

Country Status (1)

Country Link
JP (1) JP2004153553A (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100772502B1 (en) 2004-12-21 2007-11-01 한국전자통신연구원 Apparatus for MPEG playback using dynamic working frequency and voltage scaling with decoding time prediction and method thereof
JP2009302597A (en) * 2008-06-10 2009-12-24 Fujitsu Ltd Image decoder
KR101042614B1 (en) 2009-07-06 2011-06-20 인하대학교 산학협력단 Low-power video playback method based on decoding time estimation
US8126058B2 (en) 2006-07-24 2012-02-28 Industrial Technology Research Institute Power aware method and apparatus of video decoder on a multi-core platform
KR101574433B1 (en) 2014-08-29 2015-12-04 인하대학교 산학협력단 Method and Apparatus for Optimal Dynamic Voltage Scaling in Buffered Video Playback

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100772502B1 (en) 2004-12-21 2007-11-01 한국전자통신연구원 Apparatus for MPEG playback using dynamic working frequency and voltage scaling with decoding time prediction and method thereof
US8126058B2 (en) 2006-07-24 2012-02-28 Industrial Technology Research Institute Power aware method and apparatus of video decoder on a multi-core platform
JP2009302597A (en) * 2008-06-10 2009-12-24 Fujitsu Ltd Image decoder
KR101042614B1 (en) 2009-07-06 2011-06-20 인하대학교 산학협력단 Low-power video playback method based on decoding time estimation
KR101574433B1 (en) 2014-08-29 2015-12-04 인하대학교 산학협력단 Method and Apparatus for Optimal Dynamic Voltage Scaling in Buffered Video Playback

Similar Documents

Publication Publication Date Title
US6028631A (en) Portable terminal apparatus for multimedia communication
WO2019101089A1 (en) Video sending and receiving method, device, and terminal
JP2001245294A (en) Moving image reproduction method and moving image reproducing system
MX2013004481A (en) Dynamic encode setting adjustment.
WO2010032457A1 (en) Image pickup device and method for creating video data
JPH09233231A (en) Data transmission method and device therefor
JP3802521B2 (en) Encoding apparatus, encoding control method, and encoding control program
US7158187B2 (en) Audio video reproduction apparatus, audio video reproduction method, program, and medium
US20070127437A1 (en) Medium signal transmission method, reception method, transmission/reception method, and device
US20090285564A1 (en) Reproduction device, reproduction method, and program
US5572654A (en) Method and apparatus for graceful degradation of image playback frames rates
JPH10285529A (en) Image editing device and image editing method
US6728312B1 (en) Adaptive video decoding and rendering with respect to processor congestion
JP2004153553A (en) Motion picture decoder and method therefor
JP4305055B2 (en) Image recording device
US6751404B1 (en) Method and apparatus for detecting processor congestion during audio and video decode
JPH10164503A (en) Video-processing device and method therefor
US5530477A (en) Method and apparatus for selectively omitting video frames during playback
US20040267985A1 (en) Information processor, method therefor, program therefor, recording medium storing the program and reproducing device
KR102510865B1 (en) Signal processing device, signal processing method, and program
JPH1169349A (en) Image communication device
JP2003249948A (en) Transfer controller
JP2004254186A (en) Audio/video synchronous control method and device
JP2002218458A (en) Video reproducing device
JP3165661B2 (en) Audio synchronized playback device