JPWO2006004065A1 - Moving picture coding processing system, moving picture coding or decoding processing system, moving picture coding processing method, and moving picture coding or decoding processing method - Google Patents

Moving picture coding processing system, moving picture coding or decoding processing system, moving picture coding processing method, and moving picture coding or decoding processing method Download PDF

Info

Publication number
JPWO2006004065A1
JPWO2006004065A1 JP2006528865A JP2006528865A JPWO2006004065A1 JP WO2006004065 A1 JPWO2006004065 A1 JP WO2006004065A1 JP 2006528865 A JP2006528865 A JP 2006528865A JP 2006528865 A JP2006528865 A JP 2006528865A JP WO2006004065 A1 JPWO2006004065 A1 JP WO2006004065A1
Authority
JP
Japan
Prior art keywords
frame
decoding
coding
encoding
calculation amount
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
JP2006528865A
Other languages
Japanese (ja)
Inventor
美和子 金森
美和子 金森
川上 健太郎
健太郎 川上
森田 泰弘
泰弘 森田
英雄 大平
英雄 大平
雅彦 吉本
雅彦 吉本
Original Assignee
有限会社金沢大学ティ・エル・オー
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 有限会社金沢大学ティ・エル・オー filed Critical 有限会社金沢大学ティ・エル・オー
Publication of JPWO2006004065A1 publication Critical patent/JPWO2006004065A1/en
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
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

【課題】 低消費電力化を図りながらも、破綻現象を回避することができる動画像符号化又は復号化処理システム及び動画像符号化又は復号化処理方法を提案する。【解決手段】 所定フレームの符号化又は復号化に必要な必要演算量を計算する必要演算量計算手段2と、所定フレームの符号化処理又は復号化処理に予め割り当てられている時間Te内に前記必要演算量を符号化処理又は復号化処理可能な動作電源電圧及び基板バイアス電圧及び動作周波数を計算する動作決定手段3とを備え、時間Te内は前記プロセッサ1が前記算出された一定の動作周波数及び動作電源電圧及び基板バイアス電圧で動作しながら所定フレームの符号化又は復号化処理を行い、さらに、必要演算量計算手段で算出された必要演算量が実際に必要な演算量よりも小さい場合におこる破綻現象を回避する破綻回避手段を備える。【選択図】 図1PROBLEM TO BE SOLVED: To provide a moving picture coding or decoding processing system and a moving picture coding or decoding processing method capable of avoiding a failure phenomenon while achieving low power consumption. SOLUTION: The necessary calculation amount calculation means 2 for calculating a necessary calculation amount necessary for encoding or decoding a predetermined frame, and the time Te previously allocated for the encoding process or the decoding process of the predetermined frame are described above. An operation power supply voltage capable of encoding or decoding a required amount of calculation, an operation determining means 3 for calculating a substrate bias voltage, and an operating frequency, and the processor 1 performs the constant operating frequency calculated during the time Te. And when performing the encoding or decoding processing of a predetermined frame while operating with the operating power supply voltage and the substrate bias voltage, and when the required calculation amount calculated by the necessary calculation amount calculation means is smaller than the actually required calculation amount. A failure avoidance means for avoiding a failure phenomenon that occurs is provided. [Selection diagram]

Description

本発明は、動作周波数、及び、動作電源電圧及び/又は基板バイアス電圧が変更可能なプロセッサを使用して、連続する複数のフレームから構成される動画像をフレーム単位で順次符号化や復号化を行う動画像符号化処理システム、動画像符号化又は復号化処理システム、動画像符号化処理方法、及び、動画像符号化又は復号化処理方法に関する。   The present invention uses a processor capable of changing an operating frequency and an operating power supply voltage and/or a substrate bias voltage to sequentially encode or decode a moving image composed of a plurality of consecutive frames on a frame-by-frame basis. The present invention relates to a moving picture coding processing system, a moving picture coding or decoding processing system, a moving picture coding processing method, and a moving picture coding or decoding processing method.

近年、伝送路を通じて動画像の送受信を行うことや、動画像を蓄積メディアに蓄積することが可能となっている。一般に、動画像は情報量が大きいため、伝送ビットレートの限られた伝送路を用いて動画像を伝送する場合、あるいは蓄積容量の限られた蓄積メディアに動画像を蓄積する場合には、動画像を符号化・復号化する技術が必要不可欠である。動画像の符号化・復号化方式として、ISO/IECが標準化を進めているMPEG(Moving Picture Experts Group)やH.26Xがある。これらは動画像を構成する経時的に連続した複数のフレームの符号化又は復号化を行うものであり、動画像の時間的相関、空間的相関を利用した冗長性の削減を行うことにより動画像の情報量を減らして符号化し、符号化された動画像を再度元の動画像に復号化する技術である。   In recent years, it has become possible to send and receive moving images via a transmission path and to store moving images in storage media. Generally, a moving image has a large amount of information, and therefore, when transmitting a moving image using a transmission path with a limited transmission bit rate or storing the moving image in a storage medium with a limited storage capacity, Technology for encoding and decoding images is indispensable. As a moving picture encoding/decoding method, there are MPEG (Moving Picture Experts Group) and H.26X, which are being standardized by ISO/IEC. These are for encoding or decoding a plurality of consecutive frames that make up a moving image, and reduce the redundancy by using the temporal correlation and spatial correlation of the moving image. Is a technique for reducing the amount of information of the above, encoding, and decoding the encoded moving image again to the original moving image.

かかる符号化・復号化技術はパーソナルコンピュータやマイクロコンピュータを内蔵する携帯電話等の情報端末機器等に適用されており、符号化・復号化の手段を記述したプログラムに基づいてコンピュータのプロセッサ等を動作させることにより、動画像を送信等する場合は動画像符号化処理システムとして、動画像を受信等する場合は動画像復号化処理システムとして機能させている。しかしながら、かかる動画像符号化又は復号化処理は比較的に演算量が多いため消費電力が大きくなる傾向にあり、ハードウエアよりも汎用性の高いソフトウエアを使用して、符号化・復号化処理における低消費電力化を図ることが大きな課題となっている。   Such encoding/decoding technology is applied to information terminal devices such as mobile phones incorporating a personal computer or a microcomputer, and operates a processor of a computer based on a program describing encoding/decoding means. By doing so, it functions as a moving image coding processing system when transmitting a moving image, and as a moving image decoding processing system when receiving a moving image. However, such a moving image encoding or decoding process tends to consume a large amount of power due to a relatively large amount of calculation, and the encoding/decoding process is performed by using software having higher versatility than hardware. It is a major issue to reduce the power consumption in the.

以下に、ソフトウエアを使用した動画像符号化又は復号化システムにおける従来の低消費電力化の手段を説明する。従来の低消費電力化の手段としては、例えば下記の非特許文献1に開示されている。   The conventional means for reducing power consumption in a moving picture coding or decoding system using software will be described below. A conventional means for reducing power consumption is disclosed in, for example, Non-Patent Document 1 below.

IEEE International Symposium on Circuits and System 2001(May,2001)の予稿集pp918-921 “ An LSI for Vdd-Hopping and MPEG4 System Based on the Chip”(H. Kawaguchi, G. Zhang, S. Lee, and T. Sakurai)Proceedings of IEEE International Symposium on Circuits and System 2001 (May, 2001) pp918-921 “An LSI for Vdd-Hopping and MPEG4 System Based on the Chip”(H. Kawaguchi, G. Zhang, S. Lee, and T. Sakurai)

図22は、非特許文献1で示された、動画像(動画像)符号化処理システムについて従来の低消費電力化を行う手法を示した図である。なお、低消費電力化の手段は、動画像復号化処理システムにおいても同様である。   FIG. 22 is a diagram showing a conventional method for reducing power consumption in the moving image (moving image) encoding processing system shown in Non-Patent Document 1. The means for reducing power consumption is the same in the moving image decoding processing system.

非特許文献1では、動的に動作電源電圧及び動作周波数を変更可能なプロセッサ上で、動画像符号化(特にMPEG)を処理する場合の低消費電力化を行うための動作電源電圧及び動作周波数の制御方法を示している。すなわち非特許文献1の発明は、図23に示すように、動画像符号化を行う場合に、動画像内の動きの激しさなどによりフレーム単位に動画像符号化又は復号化の演算量が異なることに注目し、プロセッサの動作周波数及び動作電源電圧を制御して低消費電力化を図るものである。   In Non-Patent Document 1, an operating power supply voltage and an operating frequency for reducing power consumption when processing moving image coding (especially MPEG) on a processor capable of dynamically changing the operating power supply voltage and the operating frequency. It shows the control method of. That is, according to the invention of Non-Patent Document 1, as shown in FIG. 23, when performing moving image encoding, the amount of calculation of moving image encoding or decoding differs for each frame depending on the intensity of motion in the moving image. With this in mind, the power consumption is reduced by controlling the operating frequency and operating power supply voltage of the processor.

符号化処理は、1フレームの処理時間が符号化方式(MPEGなど)の規定などにより時間Tfに制約されており、その処理時間Tf内に1フレームの符号化処理が完了することが必要とされる。1フレームの処理時間Tf(秒)に対して、それを一定間隔にN個に分割し、一つ一つの間隔(時間)をタイムスロットTslot(Tslot=Tf/N)と定義し、また、タイムスロットTslot1からタイムスロットTslotiが終了した時点の残時間TRiをTRi=Tf−Tslot×iと定義する。一つのタイムスロットTslotで処理する動画像のブロック数(動画像の符号化はブロック単位に処理が行われる)をR(すなわちR×Nが1フレームのブロック数となる)とし、(R×i)ブロック処理にかかった時間(すなわちタイムスロットTslot1からタイムスロットTslotiまでに処理すべきブロック群に対して実際に処理にかかった時間)をTacc(i+1)とする。電圧変更した場合に動作電源電圧及び動作周波数が安定するまでの時間をTrdとする。なお、実タイムスロットRTslotiはタイムスロットTsloti内に完了されるべき処理に対して実際に要した処理時間を示す。図22では、まずタイムスロットTslot1及びタイムスロットTslot2に割り当てられたブロック群の処理に対しては、負荷が最大の場合でもそのタイムスロットTslot1,Tslot2内に十分に処理が完了可能なクロック周波数Fmaxで動作させる。その処理にかかった時間Tacc3がTacc3<(Tf−TR2)である場合、すなわち、割り当てられたブロック群がタイムスロットTslot1,Tslot2内で処理が完了した場合、次のタイムスロットTslot3に割り当てられたブロック群の処理に使用可能な処理時間Ttar3はTtar3=Tf−Tacc3−TR3−Trdであり、この処理時間Ttar3内にTslot3に割り当てられたブロック群の処理が完結すればよいので、このブロック群に対しては動作周波数を下げて動作させる。図22の処理時間Tf1,Tf2,Tf3は、タイムスロットTslot3において負荷が最大の場合に、各動作周波数F1,F2,F3で動作させたときの処理時間を示す。動作周波数としては、図22においてF2=Fmax/2の動作周波数を選択すれば、負荷が最大の場合でもタイムスロットTslot1からタイムスロットTslot3までに完了されるべき処理時間が(Tf−TR3)以内である、次のタイムスロットTslot4に処理が入り込むことはない。一方、動作周波数F3=Fmax/3を選択した場合は、処理時間Tf3が処理時間Ttar3を超えてしまう。したがって、このタイムスロットTslot3で処理すべきブロック群に対してはF2=Fmax/2の動作周波数及びその動作周波数に適する動作電源電圧で動作させる。同様にして、タイムスロットTslot毎にこの処理を行う。   In the encoding process, the processing time of one frame is restricted to the time Tf due to the regulations of the encoding method (MPEG, etc.), and it is necessary to complete the encoding process of one frame within the processing time Tf. It The processing time Tf (second) of one frame is divided into N intervals at a constant interval, and each interval (time) is defined as a time slot Tslot (Tslot=Tf/N). The remaining time TRi at the time when the time slot Tsloti ends from the slot Tslot1 is defined as TRi=Tf-Tslot×i. Let R (that is, R×N be the number of blocks of one frame) be the number of blocks of a moving image to be processed in one time slot Tslot (encoding of moving images is performed in block units), and let (R×i ) Let Tacc(i+1) be the time taken for block processing (that is, the time actually taken for the block group to be processed from time slot Tslot1 to time slot Tsloti). Let Trd be the time until the operating power supply voltage and operating frequency stabilize when the voltage is changed. The real time slot RTsloti indicates the processing time actually required for the processing to be completed within the time slot Tsloti. In FIG. 22, first, with respect to the processing of the block group allocated to the time slot Tslot1 and the time slot Tslot2, at the clock frequency Fmax at which the processing can be sufficiently completed within the time slot Tslot1 and Tslot2 even when the load is maximum. To operate. If the time Tacc3 required for the processing is Tacc3<(Tf-TR2), that is, if the processing of the allocated block group is completed in the time slots Tslot1 and Tslot2, the block allocated to the next time slot Tslot3. The processing time Ttar3 that can be used for processing the group is Ttar3=Tf-Tacc3-TR3-Trd, and the processing of the block group assigned to Tslot3 should be completed within this processing time Ttar3. Lower the operating frequency. Processing times Tf1, Tf2, and Tf3 in FIG. 22 represent processing times when operating at each operating frequency F1, F2, and F3 when the load is maximum in the time slot Tslot3. As the operating frequency, if the operating frequency of F2=Fmax/2 in FIG. 22 is selected, the processing time to be completed from time slot Tslot1 to time slot Tslot3 within (Tf-TR3) even when the load is maximum. Processing does not enter a certain next time slot Tslot4. On the other hand, when the operating frequency F3=Fmax/3 is selected, the processing time Tf3 exceeds the processing time Ttar3. Therefore, the block group to be processed in this time slot Tslot3 is operated at the operating frequency of F2=Fmax/2 and the operating power supply voltage suitable for the operating frequency. Similarly, this processing is performed for each time slot Tslot.

これにより、動的に動作クロック周波数及び動作電源電圧を変更するに際し、所定時間内に所定数のブロック群を処理可能な動作周波数のうち最小の動作周波数を選択することにより、総合的に動作周波数及び動作電源電圧を下げて動作させ、必要処理に応じて電圧を制御することにより、低消費電力化が図られている。   As a result, when dynamically changing the operating clock frequency and the operating power supply voltage, by selecting the minimum operating frequency that can process a predetermined number of block groups within a predetermined time, the overall operating frequency Also, the power consumption is reduced by lowering the operating power supply voltage for operation and controlling the voltage according to the required processing.

ところで、ある一定の処理時間(例えば、ここでは1フレームの処理時間Tf)に完了すべき処理(例えば、ここでは1フレームの処理)に対しては、1フレームの処理時間を通してプロセッサを一定の動作電源電圧及び動作周波数で動作させて処理することが好ましい。すなわち、1フレームの処理時間をTf(秒)とし、演算量Kf(サイクル)とし、動作周波数Ffとすると、動作周波数Ff=Kf/Tf(サイクル/秒)に設定し、1フレームの処理時間Tfを通してプロセッサを一定の動作周波数Ffで動作させることにより、その処理時間Tf内で動作周波数Ffを何回も変動させる場合と比較して、より低消費電力化が可能となる。   By the way, for a process to be completed within a certain processing time (for example, one frame processing time Tf here) (for example, one frame processing here), the processor is operated at a constant operation through the one frame processing time. It is preferable to operate by processing at the power supply voltage and the operating frequency. That is, assuming that the processing time for one frame is Tf (seconds), the calculation amount is Kf (cycle), and the operating frequency is Ff, the operating frequency Ff=Kf/Tf (cycle/second) is set, and the processing time Tf for one frame is set. Through the operation of the processor at a constant operating frequency Ff, the power consumption can be further reduced as compared with the case where the operating frequency Ff is changed many times within the processing time Tf.

しかしながら、非特許文献1では、処理時間Tfの同期する単位が1フレームであるにもかかわらず、1フレーム内で最大N回の動作電源電圧及び動作周波数の変更が行われており、低消費電力が十分に図られていなかった。すなわち、本従来例のように多段階に動作電源電圧及び動作周波数を制御可能なプロセッサでの動画像符号化又は復号化処理の低消費電力化は、1フレームの処理中に何回も動作電源電圧及び動作周波数を変更する必要があった。一方、上述のように、処理時間の制約の単位がフレームであるため、1フレームの処理中は処理を可能にする最低限の一定の周波数で制御するのが好ましい。そのため、1フレームの処理中に最大N回動作電源電圧及び動作周波数が変更される本従来例では十分な低消費電力化ができていなかった。   However, in Non-Patent Document 1, even though the unit of synchronization of the processing time Tf is one frame, the operating power supply voltage and the operating frequency are changed up to N times within one frame, which results in low power consumption. Was not planned sufficiently. That is, the low power consumption of the moving picture coding or decoding process in the processor capable of controlling the operating power supply voltage and the operating frequency in multiple stages as in the conventional example is to reduce the operating power supply many times during the processing of one frame. It was necessary to change the voltage and operating frequency. On the other hand, as described above, since the unit of constraint of processing time is a frame, it is preferable to control at a minimum fixed frequency during which one frame is processed. Therefore, in the conventional example in which the operating power supply voltage and the operating frequency are changed up to N times during the processing of one frame, the power consumption cannot be sufficiently reduced.

そこで、本願発明者等は下記特許文献1の発明を完成させた。この発明は、一定の動作電源電圧・動作周波数でプロセッサ1を動作させながら符号化又は復号化処理を行うことにより低消費電力化を図るものである。
特願2003−48535
Therefore, the inventors of the present application completed the invention of Patent Document 1 below. The present invention is intended to reduce power consumption by performing encoding or decoding processing while operating the processor 1 at a constant operating power supply voltage and operating frequency.
Japanese Patent Application 2003-48535

また、プロセッサの低消費電力化を妨げる他の要因の一つとして、プロセッサを構成するMOSトランジスタのサブスレッショルドリーク電流が挙げられる。サブスレッショルドリーク電流は、半導体基板に形成されるMOSトランジスタのゲート電圧がしきい値電圧以下のとき流れる微少電流である。このサブスレッショルドリーク電流による消費電力は、MOSトランジスタの微細化が高まるにつれて支配的となる傾向にあり、半導体基板にMOSトランジスタが集積されたプロセッサを使用して動画像の符号化又は復号化を行う動画像符号化又は復号化システムにおいて、低消費電力化を妨げる要因の一つとなっている。   Further, one of the other factors that hinder the reduction of the power consumption of the processor is the subthreshold leak current of the MOS transistor that constitutes the processor. The subthreshold leak current is a minute current that flows when the gate voltage of the MOS transistor formed on the semiconductor substrate is equal to or lower than the threshold voltage. The power consumption due to this subthreshold leakage current tends to become dominant as the miniaturization of MOS transistors increases, and a moving image is encoded or decoded using a processor in which MOS transistors are integrated on a semiconductor substrate. This is one of the factors that hinder the reduction of power consumption in a moving image encoding or decoding system.

このサブスレッショルドリーク電流は、1フレームの処理時間Tf内でプロセッサの動作周波数Ffを何回も変動させる場合と比較して、処理時間Tfを通して一定の動作周波数Ffで動作させることにより低減され、プロセッサの低消費電力化が可能となる。上記非特許文献1の発明は、処理時間Tfの同期する単位が1フレームであるにもかかわらず、1フレーム内で最大N回の動作周波数の変更が行われており、動作電源電圧のみならずサブスレッショルドリーク電流の観点からも好ましくなかった。一方、MOSトランジスタに関しては、MOSトランジスタが形成される半導体領域の基板バイアス電圧を制御することにより、サブスレッショルドリーク電流を制御できることが知られている。   This subthreshold leakage current is reduced by operating at a constant operating frequency Ff throughout the processing time Tf, as compared with the case where the operating frequency Ff of the processor is changed many times within the processing time Tf of one frame. It is possible to reduce the power consumption. In the invention of Non-Patent Document 1 described above, the operating frequency is changed up to N times within one frame even though the unit of synchronization of the processing time Tf is one frame. It was also unfavorable from the viewpoint of subthreshold leakage current. On the other hand, regarding the MOS transistor, it is known that the subthreshold leakage current can be controlled by controlling the substrate bias voltage of the semiconductor region in which the MOS transistor is formed.

そこで、本願発明者等は下記特許文献2の発明を完成させた。この発明は、フレームごとに符号化又は復号化に必要な演算量(以下、必要演算量という)を計算し、一定の基板バイアス電圧・動作周波数、又は、一定の基板バイアス電圧・動作電源電圧・動作周波数でプロセッサ1を動作させながら符号化又は復号化処理を行うことにより低消費電力化を図るものである。
特願2003−409641
Therefore, the inventors of the present application completed the invention of Patent Document 2 below. The present invention calculates a calculation amount required for encoding or decoding for each frame (hereinafter, referred to as a necessary calculation amount), and calculates a constant substrate bias voltage/operating frequency or a constant substrate bias voltage/operating power supply voltage/ The power consumption is reduced by performing the encoding or decoding process while operating the processor 1 at the operating frequency.
Japanese Patent Application 2003-409641

しかしながら、上記特許文献1,2においては、必要演算量計算手段で算出された必要演算量Kpが、符号化又は復号化処理に実際に必要となる演算量よりも小さい場合、1フレームの処理に割り当てられた時間Te内に符号化処理又は復号化処理が完了できないという破綻現象が生じる可能性があった。各特許文献1,2においても破綻現象を回避する破綻回避手段について開示したが、さらにいくつかの破綻回避手段が考えられ、特に破綻回避手段に伴う画質の劣化を改善することが強く望まれる。   However, in the above-mentioned Patent Documents 1 and 2, when the required calculation amount Kp calculated by the necessary calculation amount calculation means is smaller than the calculation amount actually required for the encoding or decoding processing, one frame processing is performed. There is a possibility that a failure phenomenon may occur in which the encoding process or the decoding process cannot be completed within the allocated time Te. Although Patent Documents 1 and 2 also disclose the failure avoidance means for avoiding the failure phenomenon, several failure avoidance means are conceivable, and in particular, it is strongly desired to improve the deterioration of image quality due to the failure avoidance means.

そこで本発明は、前記のような課題を解決するためのものであり、基板バイアス電圧や動作電源電圧や動作周波数を制御することにより低消費電力化を実現しながらも、破綻現象を回避可能な動画像符号化処理システム、動画像符号化又は復号化処理システム、動画像符号化処理方法、及び、動画像符号化又は復号化処理方法を提案することにある。   Therefore, the present invention is to solve the above-mentioned problems, and it is possible to avoid the breakdown phenomenon while realizing low power consumption by controlling the substrate bias voltage, the operating power supply voltage, and the operating frequency. Another object is to propose a moving picture coding processing system, a moving picture coding or decoding processing system, a moving picture coding processing method, and a moving picture coding or decoding processing method.

本発明の動画像符号化処理システムは、連続する複数のフレームから構成される動画像をフレーム単位で符号化する動画像符号化手段として機能するプロセッサを備え、
一のフレームの符号化に必要な必要演算量Kpを計算する必要演算量計算手段と、当該一のフレームの符号化処理に予め割り当てられている時間Te内に当該必要演算量Kpを符号化処理可能な動作周波数を決定する動作決定手段とを備え、
当該プロセッサが、予め割り当てられている時間Te内は当該動作決定手段により決定された動作周波数、及び、当該動作周波数に適する動作電源電圧及び/又は基板バイアス電圧で動作しながら当該動画像符号化手段により当該一のフレームの符号化処理を行う動画像符号化処理システムであり、
所定のタイミングで符号化処理の実際の演算量を削減する第1の破綻回避手段を備えることを特徴とする。
また、本発明の動画像符号化処理方法は、プロセッサを使用して連続する複数のフレームから構成される動画像をフレーム単位で符号化する動画像符号化ステップと、一のフレームの符号化に必要な必要演算量Kpを計算する必要演算量計算ステップと、当該一のフレームの符号化処理に予め割り当てられている時間Te内に当該必要演算量Kpを符号化処理可能な動作周波数を決定する動作決定ステップとを備え、
当該プロセッサが、予め割り当てられている時間Te内は当該動作決定ステップにおいて得られた動作周波数、及び、当該動作周波数に適する動作電源電圧及び/又は基板バイアス電圧で動作しながら、動画像符号化又は復号化ステップにおいて当該一のフレームの符号化処理を行う動画像符号化処理方法であり、
所定のタイミングで符号化処理の実際の演算量を削減する第1の破綻回避ステップを備えることを特徴とする。
第1の破綻回避手段や第1の破綻回避ステップは、符号化処理の一部を、それよりも演算量の少ない処理に変更することなどにより、実際の演算量を削減する。
ここで、「符号化処理」とは、動作決定手段・動作決定ステップの処理の後に行われる符号化処理手段・符号化処理ステップの処理を指し、「復号化処理」とは、動作決定手段・動作決定ステップの処理の後に行われる復号化処理手段・復号化処理ステップの処理を指す。
The moving picture coding processing system of the present invention includes a processor that functions as a moving picture coding unit that codes a moving picture composed of a plurality of consecutive frames in frame units,
Necessary calculation amount calculation means for calculating the necessary calculation amount Kp required for encoding one frame, and the necessary calculation amount Kp within the time Te pre-allocated for the encoding process of the one frame. An operation determining means for determining a possible operating frequency,
The moving image encoding means operates while the processor operates at the operating frequency determined by the operation determining means, and the operating power supply voltage and/or the substrate bias voltage suitable for the operating frequency within the time Te that is assigned in advance. Is a moving image coding processing system that performs coding processing of the one frame by
It is characterized by comprising a first failure avoiding means for reducing the actual calculation amount of the encoding process at a predetermined timing.
Further, the moving picture coding processing method of the present invention comprises a moving picture coding step of coding a moving picture composed of a plurality of consecutive frames using a processor on a frame-by-frame basis, and coding a single frame. The necessary calculation amount calculation step of calculating the necessary calculation amount Kp and the operating frequency at which the necessary calculation amount Kp can be coded within the time Te pre-allocated for the coding process of the one frame are determined. And an operation determining step,
While the processor is operating at the operating frequency obtained in the operation determining step and the operating power supply voltage and/or the substrate bias voltage suitable for the operating frequency within the time Te that is assigned in advance, moving image encoding or It is a moving picture coding processing method for carrying out the coding processing of the one frame in the decoding step,
It is characterized by including a first failure avoidance step of reducing the actual calculation amount of the encoding process at a predetermined timing.
The first failure avoidance means and the first failure avoidance step reduce the actual calculation amount by changing a part of the encoding process to a process having a smaller calculation amount.
Here, the “encoding process” refers to the process of the encoding process unit/encoding process step performed after the process of the action determining unit/action determining step, and the “decoding process” refers to the action determining unit/ This refers to the processing of the decoding processing means/decoding processing step performed after the processing of the operation determining step.

本発明の動画像符号化処理システム及び動画像符号化処理方法によれば、時間Te内に完了すべき一のフレームの符号化処理に必要な必要演算量Kpを算出し、プロセッサを時間Te内に必要演算量Kpを処理可能な動作周波数とし、一のフレームを時間Te内に符号化処理可能な最低限の(又は最低限に近い)動作周波数、及び、当該動作周波数に適する動作電源電圧及び/又は基板バイアス電圧で符号化処理を行うため、低消費電力化を図ることができる。たとえ、上記必要演算量計算手段により算出された必要演算量Kpが実際に必要な演算量よりも小さい場合であっても、符号化処理の実際の演算量は第1の破綻回避手段や第1の破綻回避ステップにより削減されるため、破綻現象を回避可能となる。   According to the moving picture coding system and the moving picture coding method of the present invention, the necessary calculation amount Kp necessary for the coding processing of one frame to be completed within the time Te is calculated, and the processor is operated within the time Te. And the minimum operation frequency at which one frame can be coded within the time Te (or close to the minimum), and an operation power supply voltage suitable for the operation frequency. Since the encoding process is performed with the substrate bias voltage, the power consumption can be reduced. Even if the required calculation amount Kp calculated by the required calculation amount calculation unit is smaller than the actually required calculation amount, the actual calculation amount of the encoding process is the first failure avoiding unit or the first calculation unit. Since it is reduced by the failure avoidance step, the failure phenomenon can be avoided.

前記第1の破綻回避手段は、符号化が終了していないマクロブロックのうち、色差信号の情報を持つブロックを無効ブロックとして処理を行うことを特徴とする。   The first failure avoidance means is characterized in that, among macroblocks that have not been coded, blocks having information on color difference signals are processed as invalid blocks.

この発明によれば、輝度信号の情報を持つブロック(以下、輝度ブロックとする)と色差信号の情報を持つブロック(以下、色差ブロックとする)で構成されるマクロブロックに対し、色差ブロックのみを無効ブロック化処理し、輝度ブロックに関しては通常と同様に符号化処理されることから、マクロブロックのうちすべてのブロックを無効ブロック化処理する場合と比較して、破綻現象を回避しながらも画質を確保することができる。ここで、無効ブロック化処理の対象を輝度ブロックではなく色差ブロックとした理由は、色差ブロックの無効ブロック化処理のほうが画質劣化への影響が小さいためである。   According to the present invention, only a color difference block is set for a macro block composed of a block having luminance signal information (hereinafter referred to as a luminance block) and a block having color difference signal information (hereinafter referred to as a color difference block). Since the invalid blocks are processed and the luminance blocks are coded in the same way as usual, compared to the case where all the blocks of the macro blocks are processed as the invalid blocks, the image quality is improved while avoiding the failure phenomenon. Can be secured. Here, the reason why the target of the invalid block formation processing is not the luminance block but the color difference block is that the invalid block formation processing of the color difference block has less influence on the image quality deterioration.

前記第1の破綻回避手段は、符号化が終了していないマクロブロックに対し、フレーム内符号化処理を行うことを特徴とする。   The first failure avoiding means is characterized by performing an intra-frame coding process on a macro block that has not been coded.

フレーム内符号化処理はフレーム間符号化処理よりも演算量が小さい。この発明によれば、符号化が終了していないマクロブロックに対してフレーム内符号化処理を行うことで、符号化処理に実際に必要な演算量を、必要演算量計算手段で算出された必要演算量Kpよりも小さく又は必要演算量Kpに近い値とすることができる。これにより、破綻現象を回避可能となる。   The amount of calculation in the intraframe coding process is smaller than that in the interframe coding process. According to the present invention, by performing the intra-frame coding process on a macro block that has not been coded, the calculation amount actually required for the coding process is calculated by the necessary calculation amount calculation means. The value can be set smaller than the calculation amount Kp or close to the required calculation amount Kp. This makes it possible to avoid the failure phenomenon.

前記第1の破綻回避手段は、符号化が終了していないマクロブロックに対し、動きベクトル検出を行うことなく動きベクトルを0としてフレーム間符号化処理を行うことを特徴とする。   The first failure avoiding means is characterized by performing inter-frame coding processing on a macro block for which coding has not been completed, by setting the motion vector to 0 without performing motion vector detection.

フレーム間符号化処理のうち動きベクトル検出処理に必要な演算量は、符号化処理の演算量の大部分を占める要素である。本発明によれば、動きベクトル検出処理を行わずに動きベクトルを強制的に0としてフレーム間符号化処理を行うため、動きベクトル検出処理を行う通常のフレーム間符号化処理よりも演算量が小さくなり、実際の符号化処理の演算量を、上記必要演算量Kpよりも小さく又は必要演算量Kpに近い値とすることができる。これにより、破綻現象を回避可能となる。   The calculation amount required for the motion vector detection process in the inter-frame encoding process is an element that occupies most of the calculation amount of the encoding process. According to the present invention, since the motion vector is forcibly set to 0 without performing the motion vector detection process and the interframe coding process is performed, the calculation amount is smaller than that of the normal interframe coding process in which the motion vector detection process is performed. Therefore, the actual calculation amount of the encoding process can be set to a value smaller than or close to the required calculation amount Kp. This makes it possible to avoid the failure phenomenon.

前記第1の破綻回避手段は、符号化が終了していないマクロブロックに対し、量子化ステップサイズを大きくして符号化処理を行うことを特徴とする。   The first failure avoidance means is characterized by performing a coding process by increasing the quantization step size for a macroblock that has not been coded.

この発明によれば、符号化が終了していないマクロブロックに対し量子化ステップサイズを大きくして符号化処理を行うことで、当該マクロブロックで発生する有効ブロックの数、有効係数の数を抑制し、有効ブロック、有効係数に対して行われる処理(たとえば、動画像符号化方式としてMPEG4を用いる場合、IDCT処理、IQ処理、VLC処理)の実行回数を削減し、符号化処理の実際の演算量を上記必要演算量Kpよりも小さく又は必要演算量Kpに近い値とすることができる。これにより、破綻現象を回避可能となる。   According to the present invention, the number of effective blocks and the number of effective coefficients generated in the macroblock are suppressed by increasing the quantization step size and performing the encoding process on the macroblock that has not been encoded yet. However, the number of executions of the processing performed on the effective block and the effective coefficient (for example, when MPEG4 is used as the moving image encoding method, IDCT processing, IQ processing, VLC processing) is reduced, and the actual calculation of the encoding processing is performed. The amount can be set smaller than the required calculation amount Kp or close to the required calculation amount Kp. This makes it possible to avoid the failure phenomenon.

また、本発明の動画像符号化処理システムは、前記第1の破綻回避手段により前記一のフレームよりも後に符号化される後続フレームの符号化処理に与えられる影響を緩和する緩和手段を備えることを特徴とする。   Further, the moving picture coding system according to the present invention comprises mitigating means for mitigating an influence given to the coding processing of the subsequent frame coded after the one frame by the first failure avoiding means. Is characterized by.

上記の第1の破綻回避手段は、通常行われるはずの符号化処理の処理内容を変更して破綻回避を行っているため、一のフレームにおいて第1の破綻回避手段が実行された場合、後続フレームの画質は少なからず第1の破綻回避手段による処理の影響を受けることとなる。本発明によれば、一のフレームにおいて第1の破綻回避手段による処理が実行された場合に後続フレームの符号化処理への影響を緩和する緩和手段により緩和処理を行うことで、後続フレームの符号化処理による画質の劣化を抑制することができる。   The first failure avoidance means changes the processing content of the encoding process that should normally be performed to perform the failure avoidance. Therefore, when the first failure avoidance means is executed in one frame, The image quality of the frame is not a little affected by the processing by the first failure avoidance means. According to the present invention, when the processing by the first failure avoiding means is executed in one frame, the relaxing processing is executed by the relaxing means for relaxing the influence on the encoding processing of the subsequent frame, so that the code of the subsequent frame is It is possible to suppress deterioration of image quality due to the digitization processing.

前記緩和手段は、当該一のフレームにおいて第1の破綻回避手段による処理が実行されたマクロブロックに対応する後続フレームのマクロブロックに対し、量子化ステップサイズを小さくすることを特徴とする。   The easing unit reduces the quantization step size for a macroblock of a subsequent frame corresponding to the macroblock on which the processing by the first failure avoiding unit is executed in the one frame.

この発明によれば、量子化ステップサイズを小さくすることで、対応するマクロブロックに割り当てられる符号量を大きくして画質を改善することができ、第1の破綻回避手段による破綻回避処理が行われた場合でも、破綻回避処理が行われた一のフレームよりも後に符号化される後続フレームに対する影響を緩和することができる。   According to the present invention, by reducing the quantization step size, the code amount assigned to the corresponding macroblock can be increased to improve the image quality, and the failure avoidance processing by the first failure avoidance means is performed. Even in the case, it is possible to mitigate the influence on the subsequent frames encoded after the one frame for which the failure avoidance processing has been performed.

また、前記第1の破綻回避手段により前記一のフレームの符号化処理の演算量が削減された場合は、当該一のフレームよりも後に符号化処理される後続フレームの必要演算量を増加させることを特徴とする。たとえば、前記後続フレームの必要演算量、又は、必要演算量の算出に用いられる要素について、m倍(mは1以上の実数)、又は、0より大きい実数nを加算することにより、前記後続フレームの必要演算量を増加させる。   Further, when the calculation amount of the encoding process of the one frame is reduced by the first failure avoiding means, the necessary calculation amount of the subsequent frame to be encoded after the one frame is increased. Is characterized by. For example, for the required amount of calculation of the subsequent frame or an element used to calculate the required amount of calculation, the subsequent frame is added by adding m times (m is a real number of 1 or more) or a real number n larger than 0. Increase the required calculation amount of.

第1の破綻回避手段や第1の破綻回避ステップの処理が実行された場合、後続フレームについて上記必要演算量Kpが実際に必要な演算量よりも小さくなる確率が高い。この発明によれば、第1の破綻回避手段や第1の破綻回避ステップの処理の後に、後続フレームの必要演算量を増加させるため、後続フレームに関して上記必要演算量が実際の演算量を満たす可能性が高くなり、後続フレームにおける破綻現象を回避することができる。   When the processing of the first failure avoidance means or the first failure avoidance step is executed, there is a high probability that the required calculation amount Kp for the subsequent frame will be smaller than the actually required calculation amount. According to the present invention, after the processing of the first failure avoidance means and the first failure avoidance step, the necessary calculation amount of the subsequent frame is increased, so that the necessary calculation amount of the subsequent frame can satisfy the actual calculation amount. Therefore, the failure phenomenon in the subsequent frame can be avoided.

本発明の動画像符号化又は復号化処理システムは、連続する複数のフレームから構成される動画像をフレーム単位で符号化または復号化する動画像符号化又は復号化手段として機能するプロセッサを備え、
一のフレームの符号化又は復号化に必要な必要演算量Kpを計算する必要演算量計算手段と、当該一のフレームの符号化又は復号化処理に予め割り当てられている時間Te内に前記必要演算量Kpを符号化又は復号化処理可能な動作周波数を決定する動作決定手段とを備え、
当該プロセッサが、予め割り当てられている時間Te内は、当該動作決定手段により決定された動作周波数、及び、当該動作周波数に適する動作電源電圧及び/又は基板バイアス電圧で動作しながら当該動画像符号化又は復号化手段により当該一のフレームの符号化又は復号化処理を行う動画像符号化又は復号化処理システムであり、
前記必要演算量算出手段で算出された必要演算量Kpが実際に必要な演算量よりも小さい場合、当該一のフレームよりも後に符号化又は復号化される後続フレームの必要演算量を増加させる第2の破綻回避手段を備えることを特徴とする。
また、本発明の動画像符号化又は復号化処理方法は、プロセッサを使用して連続する複数のフレームから構成される動画像をフレーム単位で符号化又は復号化する動画像符号化又は復号化ステップと、一のフレームの符号化又は復号化に必要な必要演算量Kpを計算する必要演算量計算ステップと、当該一のフレームの符号化又は復号化処理に予め割り当てられている時間Te内に前記必要演算量Kpを符号化又は復号化処理可能な動作周波数を決定する動作決定ステップとを備え、
当該プロセッサが、予め割り当てられている時間Te内は当該動作決定ステップにより得られた動作周波数、及び、当該動作周波数に適する動作電源電圧及び/又は基板バイアス電圧で動作しながら、動画像符号化又は復号化ステップにおいて当該一のフレームの符号化又は復号化処理を行う動画像符号化又は復号化処理方法であり、
前記必要演算量算出手段で算出された必要演算量Kpが実際に必要な演算量よりも小さい場合、当該一のフレームよりも後に符号化又は復号化される後続フレームの必要演算量を増加させる第2の破綻回避ステップを備えることを特徴とする。
A moving image encoding or decoding processing system of the present invention includes a processor that functions as a moving image encoding or decoding unit that encodes or decodes a moving image composed of a plurality of continuous frames in frame units,
Necessary calculation amount calculation means for calculating a necessary calculation amount Kp necessary for encoding or decoding one frame, and the necessary calculation within a time Te pre-allocated for the encoding or decoding process of the one frame. An operation determining means for determining an operating frequency capable of encoding or decoding the quantity Kp,
The moving image encoding is performed while the processor operates at the operation frequency determined by the operation determining means and the operation power supply voltage and/or the substrate bias voltage suitable for the operation frequency within the time Te that is assigned in advance. Or a moving picture coding or decoding processing system for performing coding or decoding processing of the one frame by a decoding means,
When the required calculation amount Kp calculated by the necessary calculation amount calculation means is smaller than the actually required calculation amount, the necessary calculation amount of a subsequent frame encoded or decoded after the one frame is increased. It is characterized in that it is provided with a failure avoidance means of 2.
Further, the moving picture coding or decoding processing method of the present invention is a moving picture coding or decoding step for coding or decoding a moving picture composed of a plurality of consecutive frames using a processor in frame units. And a necessary calculation amount calculation step of calculating a necessary calculation amount Kp necessary for encoding or decoding one frame, and within the time Te pre-allocated for the encoding or decoding process of the one frame. An operation deciding step of deciding an operating frequency capable of encoding or decoding the required calculation amount Kp,
While the processor is operating at the operating frequency obtained by the operation determining step and the operating power supply voltage and/or the substrate bias voltage suitable for the operating frequency within the time Te that is assigned in advance, moving image coding or A moving image encoding or decoding method that performs encoding or decoding of the one frame in the decoding step,
When the required calculation amount Kp calculated by the necessary calculation amount calculation means is smaller than the actually required calculation amount, the necessary calculation amount of a subsequent frame encoded or decoded after the one frame is increased. It is characterized by including the failure avoidance step of 2.

一のフレームについて上記必要演算量Kpが実際に必要な演算量よりも小さい場合、後続フレームについても同様に上記必要演算量Kpが実際に必要な演算量よりも小さくなる確率が高い。この発明によれば、第2の破綻回避手段や第2の破綻回避ステップが、後続フレームの必要演算量を増加させるため、後続フレームに関して上記必要演算量が実際の演算量を満たす可能性が高くなり、後続フレームにおける破綻現象を回避することができる。なお、第2の破綻回避手段・ステップの処理は、第1の破綻回避手段・ステップの有無にかかわらず、所定フレームの必要演算量Kpが実際の演算量よりも小さい場合に行われる。   When the required calculation amount Kp is smaller than the actually required calculation amount for one frame, there is a high probability that the required calculation amount Kp will be smaller than the actually required calculation amount for the subsequent frames as well. According to the present invention, since the second failure avoidance means and the second failure avoidance step increase the required calculation amount of the subsequent frame, it is highly possible that the necessary calculation amount of the subsequent frame satisfies the actual calculation amount. Therefore, the failure phenomenon in the subsequent frame can be avoided. The process of the second failure avoidance means/step is performed when the required operation amount Kp of the predetermined frame is smaller than the actual operation amount regardless of the presence or absence of the first failure avoidance means/step.

前記第2の破綻回避手段や第2の破綻回避ステップは、前記後続フレームの必要演算量、又は、必要演算量の算出に用いられた要素について、m倍(mは1以上の実数)、又は、0より大きい実数nを加算することを特徴とする。   In the second failure avoidance means and the second failure avoidance step, the necessary calculation amount of the subsequent frame or the element used for calculating the necessary calculation amount is multiplied by m (m is a real number of 1 or more), or , And a real number n larger than 0 is added.

この発明によれば、後続フレームの処理における必要演算量計算手段で算出された必要演算量の値、又は、必要演算量の算出に用いられた要素の値について、m倍(mは1以上の実数)又は0より大きい実数nを加算することで、後続フレームの必要演算量Kpを増加させ、後続フレームでの破綻現象の発生を回避することができる。増加対象とする要素、及び、mやnの値としては、予め実験等により適切な要素・値を導出してシステム内に設定するのが好ましい。   According to the present invention, the value of the necessary calculation amount calculated by the necessary calculation amount calculation means in the processing of the subsequent frame or the value of the element used for calculating the necessary calculation amount is multiplied by m (m is 1 or more). By adding a real number) or a real number n larger than 0, it is possible to increase the necessary calculation amount Kp of the subsequent frame and avoid the occurrence of the breakdown phenomenon in the subsequent frame. As the elements to be increased and the values of m and n, it is preferable to derive appropriate elements and values by experiments beforehand and set them in the system.

本発明の動画像符号化又は復号化処理システムは、連続する複数のフレームから構成される動画像をフレーム単位で符号化または復号化する動画像符号化又は復号化手段として機能するプロセッサを備え、
一のフレームの符号化又は復号化に必要な必要演算量Kpを計算する必要演算量計算手段と、当該一のフレームの符号化又は復号化処理に予め割り当てられている時間Te内に前記必要演算量Kpを符号化又は復号化処理可能な動作周波数を決定する動作決定手段とを備え、
当該プロセッサが、予め割り当てられている時間Te内は、当該動作決定手段により決定された動作周波数、及び、当該動作周波数に適する動作電源電圧及び/又は基板バイアス電圧で動作しながら動画像符号化又は復号化手段により当該一のフレームの符号化又は復号化処理を行う動画像符号化又は復号化処理システムであり、
所定のタイミングで前記時間Teを延長する第3の破綻回避手段を備えることを特徴とする。
また、本発明の動画像符号化又は復号化処理方法は、プロセッサを使用して連続する複数のフレームから構成される動画像をフレーム単位で符号化又は復号化する動画像符号化ステップと、一のフレームの符号化又は復号化に必要な必要演算量Kpを計算する必要演算量計算ステップと、当該一のフレームの符号化又は復号化処理に予め割り当てられている時間Te内に前記必要演算量Kpを符号化又は復号化処理可能な動作周波数を決定する動作決定ステップとを備え、
当該プロセッサが、予め割り当てられている時間Te内は当該動作決定ステップにおいて得られた動作周波数、及び、当該動作周波数に適する動作電源電圧及び/又は基板バイアス電圧で動作しながら、動画像符号化又は復号化ステップにおいて当該一のフレームの符号化又は復号化処理を行う動画像符号化又は復号化処理方法であり、
所定のタイミングで当該時間Teを延長する第3の破綻回避ステップを備えることを特徴とする。
A moving image encoding or decoding processing system of the present invention includes a processor that functions as a moving image encoding or decoding unit that encodes or decodes a moving image composed of a plurality of continuous frames in frame units,
Necessary calculation amount calculation means for calculating a necessary calculation amount Kp necessary for encoding or decoding one frame, and the necessary calculation within a time Te pre-allocated for the encoding or decoding process of the one frame. An operation determining means for determining an operating frequency capable of encoding or decoding the quantity Kp,
Within the time Te pre-allocated by the processor, moving image coding or while operating at the operating frequency determined by the operation determining means, and the operating power supply voltage and/or the substrate bias voltage suitable for the operating frequency. A moving image encoding or decoding processing system for performing encoding or decoding processing of the one frame by a decoding means,
A third failure avoiding means for extending the time Te at a predetermined timing is provided.
Further, a moving picture coding or decoding processing method of the present invention includes a moving picture coding step of coding or decoding a moving picture composed of a plurality of consecutive frames using a processor in frame units. Required calculation amount calculation step for calculating the required calculation amount Kp required for encoding or decoding of the frame, and the required calculation amount within the time Te pre-allocated for the encoding or decoding processing of the one frame. An operation determining step of determining an operating frequency at which Kp can be encoded or decoded.
While the processor is operating at the operating frequency obtained in the operation determining step and the operating power supply voltage and/or the substrate bias voltage suitable for the operating frequency within the time Te that is assigned in advance, moving image encoding or A moving image encoding or decoding method that performs encoding or decoding of the one frame in the decoding step,
It is characterized by including a third failure avoidance step of extending the time Te at a predetermined timing.

この発明によれば、一のフレームの符号化又は復号化処理が予め割り当てられた時間Teに完了できない場合は、次の後続フレームの処理に割り当てられている時間を用いて前記一のフレームの処理時間Teを延長し、当該一のフレームの符号化又は復号化処理を完了する。これにより、符号化又は復号化の実際の処理量を削減することなく、かつ画質を劣悪にすることなく、破綻現象を回避することができる。   According to the present invention, when the encoding or decoding processing of one frame cannot be completed within the time Te allocated in advance, the processing of the one frame is performed using the time allocated to the processing of the next subsequent frame. The time Te is extended and the encoding or decoding process of the one frame is completed. As a result, it is possible to avoid the failure phenomenon without reducing the actual processing amount of encoding or decoding and without deteriorating the image quality.

さらに、前記第3の破綻回避手段は、前記一のフレームの符号化処理に予め割り当てられている時間Teを延長した場合に、前記一のフレームよりも後に符号化又は復号化される後続フレームについて、当該後続フレームの符号化処理又は復号化処理に予め割り当てられている時間Teを変更することを特徴とする。   Furthermore, the third failure avoidance means may be configured to detect a subsequent frame that is encoded or decoded after the one frame when the time Te that is previously assigned to the encoding process of the one frame is extended. It is characterized in that the time Te previously assigned to the encoding process or the decoding process of the subsequent frame is changed.

この発明によれば、一のフレームの時間Teを延長することにより、後続フレームに割り当てられる時間が短縮されることとなるが、次の後続フレームの符号化又は復号化処理については、後続フレームの符号化又は復号化処理に割り当てられている時間から、上記一のフレームに割り当てた延長処理時間を差し引いた時間を、後続フレームの符号化又は復号化処理の時間Teとするなどのように時間Teを変更するため、延長時間に応じて変更された時間内で後続フレームの符号化又は復号化処理可能なプロセッサの動作周波数が決定され、その動作周波数及びそれに適する基板バイアス電圧や動作電源電圧でプロセッサが動作する。したがって、後続フレームの符号化又は復号化処理においても低消費電力化が実現される。一のフレームに割り当てられた時間Teの延長により後続フレームに割り当てられた時間Teが短縮されても、後続フレームの時間Teを変更することにより、後続フレームの処理において破綻現象が発生する可能性を低くすることができる。   According to the present invention, by extending the time Te of one frame, the time assigned to the subsequent frame is shortened. However, regarding the encoding or decoding processing of the next subsequent frame, The time Te, which is obtained by subtracting the extension processing time assigned to the one frame from the time assigned to the encoding or decoding processing, is used as the time Te for the encoding or decoding processing of the subsequent frame. The operating frequency of the processor capable of performing the encoding or decoding processing of the subsequent frame is determined within the changed time according to the extension time, and the operating frequency and the substrate bias voltage or the operating power supply voltage suitable for the operating frequency determine the processor. Works. Therefore, low power consumption is realized also in the encoding or decoding process of the subsequent frame. Even if the time Te assigned to the subsequent frame is shortened by extending the time Te assigned to one frame, changing the time Te of the subsequent frame may cause a failure phenomenon in the processing of the subsequent frame. Can be lowered.

前記第3の破綻回避手段は、前記一のフレームの符号化処理に予め割り当てられている時間Teを延長した場合に、次に符号化されるフレームを格納する入力フレームメモリに対して、フレームの書き込み先を変更することを特徴とする。   The third failure avoidance means, when the time Te previously assigned to the encoding process of the one frame is extended, stores the frame in the input frame memory that stores the frame to be encoded next. The feature is that the writing destination is changed.

この発明によれば、第3の破綻回避手段により時間Teが延長されると、順次入力されてくるフレームは、一のフレームを上書きすることなく、書き込み先を変更して格納されるため、入力フレームメモリに前記一のフレームを保持することができ、符号化処理を続行して完了させることが可能となる。   According to the present invention, when the time Te is extended by the third failure avoidance means, the sequentially input frames are stored by changing the write destination without overwriting one frame. The one frame can be held in the frame memory, and the encoding process can be continued and completed.

前記第3の破綻回避手段は、前記一のフレームの符号化処理に予め割り当てられている時間Teを延長した場合に、次に符号化されるフレームを格納する入力フレームメモリに対して書き込み不可とすることを特徴とする。   The third failure avoidance means, when the time Te previously assigned to the encoding process of the one frame is extended, determines that the input frame memory storing the frame to be encoded next cannot be written. It is characterized by doing.

この発明によれば、前記第3の破綻回避手段により時間Teが延長されると、入力フレームメモリはフレームの書き込みが不可となるため、後続のフレームに上書きされることなく一のフレームを保持することができ、符号化処理を続行して完了させることが可能となる。さらに、複数フレームおきにフレームを符号化処理するに際しては、入力フレームメモリに符号化が予定されているフレームが入力される前に、入力フレームメモリが書き込み可能となれば、時間Teが延長されなかった場合と同様のフレームを対象に符号化処理を行うことができる。   According to the present invention, when the time Te is extended by the third failure avoiding means, the input frame memory cannot write the frame, so that one frame is held without being overwritten by the subsequent frame. Therefore, the encoding process can be continued and completed. Further, when the frame is encoded every plural frames, the time Te is not extended if the input frame memory becomes writable before the frame to be encoded is input to the input frame memory. It is possible to perform the encoding process on the same frame as the case.

上記動画像符号化システムや動画像符号化又は復号化システムは、前記一のフレームより前に符号化処理されるフレームを前フレームとすると、動画像符号化処理を行う場合において、前記必要演算量計算手段は、所定フレームと前フレームとの動き量、所定フレームのアクティビティの量、前フレームのアクティビティの量、前フレームの量子化ステップサイズの平均値、前フレームの量子化ステップサイズの平均値とその一つ前のフレームの量子化ステップサイズの平均値の差、前フレームのマクロブロックマッチング回数、前フレームの有効ブロック数、前フレームの有効係数の数、前フレームの符号化に実際に要した演算量、前フレームの発生ビット数、所定フレームの符号化ビットレート、所定フレームについてフレーム内符号化又はフレーム間符号化のいずれであるかの種類、必要演算量計算手段により算出された前フレームの必要演算量のうち、一つ以上の要素を使用して必要演算量を計算することが好ましい。   In the moving picture coding system and the moving picture coding or decoding system, when the frame to be coded before the one frame is a previous frame, the required calculation amount is required when performing the moving picture coding process. The calculating means calculates a motion amount between the predetermined frame and the previous frame, an activity amount of the predetermined frame, an activity amount of the previous frame, an average value of the quantization step size of the previous frame, and an average value of the quantization step size of the previous frame. The difference in the average quantization step size of the previous frame, the number of macroblock matchings in the previous frame, the number of valid blocks in the previous frame, the number of valid coefficients in the previous frame, and the actual coding required for the previous frame The amount of calculation, the number of bits generated in the previous frame, the coding bit rate of the predetermined frame, the type of intra-frame coding or inter-frame coding for the predetermined frame, and the previous frame calculated by the necessary calculation amount calculation means. It is preferable to calculate the required calculation amount using one or more elements of the required calculation amount.

上記動画像符号化又は復号化システムは、上記一のフレームより前に復号化処理されるフレームを前フレームとすると、動画像復号化処理を行う場合において、前記必要演算量計算手段は、所定フレームの符号化データのビット数、前記所定フレームがフレーム内符号化されたものであるか又はフレーム間符号化されたものであるかの種類、所定フレーム若しくは前フレームの動きベクトルの大きさの平均値、所定フレーム若しくは前フレームの動きベクトルの大きさの分散、所定フレーム若しくは前フレームの有効ブロック数、所定フレーム若しくは前フレームの有効係数の数、所定フレーム若しくは前フレームのビットレート、所定フレーム若しくは前フレームの符号量、所定フレーム若しくは前フレームの量子化ステップサイズの平均値、量子化ステップサイズの平均値の差(所定フレームと1つ前のフレームの量子化ステップサイズの差,もしくは1つ前のフレームの量子化ステップサイズと2つ前のフレームの量子化ステップサイズの差)、前フレームの復号化に実際に要した演算量、必要演算量計算手段により算出された前フレームの必要演算量のうち一つ以上の要素を使用して必要演算量を計算することが好ましい。   In the moving picture encoding or decoding system, when the frame to be decoded before the one frame is a previous frame, the necessary calculation amount calculation means is configured to set a predetermined frame when performing the moving picture decoding process. Number of bits of the encoded data, the type of whether the predetermined frame is intra-frame encoded or inter-frame encoded, the average value of the magnitudes of the motion vectors of the predetermined frame or the previous frame , Variance of magnitude of motion vector of predetermined frame or previous frame, number of effective blocks of predetermined frame or previous frame, number of effective coefficients of predetermined frame or previous frame, bit rate of predetermined frame or previous frame, predetermined frame or previous frame Code amount, the average value of the quantization step sizes of the predetermined frame or the previous frame, and the difference of the average value of the quantization step sizes (the difference between the quantization step size of the predetermined frame and the previous frame, or the previous frame Difference between the quantization step size and the quantization step size of the frame two frames before), the amount of calculation actually required for decoding the previous frame, and the required calculation amount of the previous frame calculated by the necessary calculation amount calculation means. It is preferred to calculate the required amount of computation using one or more elements.

前記複数の要素はそれぞれ符号化又は復号化処理において必要演算量Kpに影響を与える要素である。本発明によれば、前記要素のうち一つ以上が必要演算量計算手段の要素として使用されて必要演算量Kpが計算されるため、必要演算量計算手段により計算される必要演算量Kpが現実に符号化又は復号化処理を行ったときの演算量により近い値となる。したがって、算出された必要演算量Kpが現実の演算量よりも大き過ぎて低消費電力化が阻害される可能性が少なく、また、必要演算量Kpが現実の演算量よりも小さくて符号化又は復号化処理が時間内に完了しないという破綻現象が発生しにくい。
例えば1フレームの符号化処理の必要演算量はマクロブロックマッチングなどの要素処理の実行回数によって決定づけられる。要素処理はマクロブロックマッチング回数だけ繰り返し実行される処理,有効ブロックの数だけ繰り返し実行される処理,有効係数の数だけ繰り返し実行される処理に分類され、マクロブロックマッチング回数と有効ブロック数と有効係数の数の全てが最大となるとき1フレームの符号化処理に必要な演算量は最大(最悪)となる。実際の符号化処理においてマクロブロックマッチング回数,有効ブロック数,有効係数の数はフレーム毎に最大値以下で変動するため、フレーム毎に符号化処理に必要な演算量は変動することとなる。本願発明では符号化処理に必要な演算量がフレーム毎に異なるものの、時間的に近いフレーム間ではマクロブロックマッチング回数,有効ブロック数,有効係数の数,符号化処理の必要演算量が近い値となる性質に着目し、符号化処理の必要演算量を予測するために用いるパラメータとして、予測を行う時点ですでに符号化処理を完了している前フレームのマクロブロックマッチング回数,有効ブロック数,有効係数の数,符号化処理の必要演算量などを採用することで各フレームの必要演算量Kを、実際に符号化処理を行ったときの演算量に近似した値とすることができる。
同様に1フレームの復号化処理の必要演算量も復号化処理の要素処理の実行回数によって決定づけられる。要素処理は有効ブロックの数だけ繰り返し実行される処理、有効係数の数だけ繰り返し実行される処理に分類され、有効ブロック数と有効係数の数の全てが最大となるとき1フレームの復号化処理に必要な演算量は最大(最悪)となる。実際の復号化処理において有効ブロック数,有効係数の数はフレーム毎に最大値以下で変動するため、フレーム毎に復号化処理に必要な演算量は変動することとなる。本願発明では復号化処理に必要な演算量がフレーム毎に異なるものの、時間的に近いフレーム間では有効ブロック数,有効係数の数,復号化処理の必要演算量が近い値となる性質に着目し、復号化処理の必要演算量を予測するために用いるパラメータとして、予測を行う時点ですでに復号化処理を完了している前フレームの有効ブロック数,有効係数の数,符号化処理の必要演算量などを採用することで各フレームの必要演算量Kを、実際に復号化処理を行ったときの演算量に近似した値とすることができる。
Each of the plurality of elements is an element that affects the required calculation amount Kp in the encoding or decoding process. According to the present invention, one or more of the above elements are used as elements of the required calculation amount calculation means to calculate the required calculation amount Kp. Therefore, the required calculation amount Kp calculated by the required calculation amount calculation means is a reality. The value becomes closer to the calculation amount when the encoding or decoding process is performed. Therefore, it is less likely that the calculated required calculation amount Kp is too large as compared with the actual calculation amount and the reduction in power consumption is hindered, and the required calculation amount Kp is smaller than the actual calculation amount and is encoded or The failure phenomenon that the decryption process is not completed in time hardly occurs.
For example, the required calculation amount of the encoding process for one frame is determined by the number of times element processing such as macroblock matching is executed. Element processing is classified into processing repeatedly executed by the number of macroblock matching times, processing repeatedly executed by the number of valid blocks, and processing repeatedly executed by the number of valid coefficients. When all the numbers are the maximum, the amount of calculation required for the encoding process of one frame is the maximum (worst). In the actual encoding process, the number of macroblock matchings, the number of effective blocks, and the number of effective coefficients fluctuate below the maximum value for each frame, so the amount of calculation required for the encoding process fluctuates for each frame. In the present invention, although the calculation amount required for the encoding process differs for each frame, the number of macroblock matching times, the number of effective blocks, the number of effective coefficients, and the calculation amount required for the encoding process are close to each other between frames that are close in time. Paying attention to this property, as the parameters used to predict the required calculation amount of the coding process, the number of macroblock matching, the number of valid blocks, and the valid block of the previous frame, which has already completed the coding process at the time of prediction. By adopting the number of coefficients, the required calculation amount of the encoding process, and the like, the required calculation amount K of each frame can be set to a value approximate to the calculation amount when the encoding process is actually performed.
Similarly, the required calculation amount of the decoding process for one frame is also determined by the number of times the element process of the decoding process is executed. Element processing is classified into processing that is repeatedly executed by the number of valid blocks and processing that is repeatedly executed by the number of valid coefficients. When all of the number of valid blocks and the number of valid coefficients are maximum, the processing is performed as one frame of decoding processing. The required amount of calculation is maximum (worst). In the actual decoding process, the number of effective blocks and the number of effective coefficients fluctuate below the maximum value for each frame, so the amount of calculation required for the decoding process fluctuates for each frame. In the present invention, the calculation amount required for the decoding process is different for each frame, but attention is paid to the property that the number of effective blocks, the number of effective coefficients, and the required calculation amount of the decoding process are close values between temporally close frames. , The number of effective blocks of the previous frame that has already completed the decoding process at the time of prediction, the number of effective coefficients, and the necessary calculation of the encoding process, as the parameters used to predict the required calculation amount of the decoding process By adopting the amount or the like, the required calculation amount K of each frame can be set to a value approximate to the calculation amount when the decoding process is actually performed.

以上説明したように、本発明の動画像符号化処理システム、動画像符号化又は復号化処理システム、及び、動画像符号化処理方法、動画像符号化又は復号化処理方法によれば、これから符号化又は復号化する一のフレーム(未来に符号化又は復号化するフレーム)に対して、符号化又は復号化に要する必要演算量Kpを予測する計算を行い、その所定フレームの処理に割り当てられた時間Te内は、必要演算量Kpを処理するに必要な最小限又はそれに近い動作周波数とし、フレーム単位に動作周波数と動作電源電圧、又は、動作周波数と基板バイアス電圧、又は、動作周波数と基板バイアス電圧と動作電源電圧が動的に制御されるため、低消費電力を実現することができる。   As described above, according to the moving picture coding processing system, the moving picture coding or decoding processing system, the moving picture coding processing method, and the moving picture coding or decoding processing method of the present invention, the coding For one frame to be encoded or decoded (frame to be encoded or decoded in the future), calculation for predicting the necessary calculation amount Kp required for encoding or decoding is performed, and the frame is assigned to the processing of the predetermined frame. Within the time Te, the operating frequency and the operating power supply voltage, or the operating frequency and the substrate bias voltage, or the operating frequency and the substrate bias are set to the minimum or near the operating frequency necessary for processing the required calculation amount Kp in frame units. Since the voltage and the operating power supply voltage are dynamically controlled, low power consumption can be realized.

また、破綻回避手段を備えるため、必要演算量計算手段で算出された必要演算量Kpが実際に必要な演算量よりも小さい場合に起きる破綻現象を回避することができ、符号化又は復号化処理された動画像が劣悪になるのを防止することができる。さらに、破綻回避手段による処理が実行された場合に後続フレームの符号化処理への影響を緩和する緩和手段により緩和処理を行うことで、後続フレームの符号化処理による画質の劣化を抑制することができる。   Further, since the failure avoidance means is provided, it is possible to avoid the failure phenomenon that occurs when the required calculation amount Kp calculated by the necessary calculation amount calculation means is smaller than the actually required calculation amount, and the encoding or decoding process is performed. It is possible to prevent the generated moving image from being deteriorated. Further, when the processing by the failure avoidance means is executed, the mitigation processing is mitigated by the mitigation means for mitigating the influence on the encoding processing of the subsequent frame, thereby suppressing the deterioration of the image quality due to the encoding processing of the subsequent frame. it can.

本発明の第1の実施の形態の動画像符号化処理システムの動作を示した概略ブロック図。The schematic block diagram which showed operation|movement of the moving image coding processing system of the 1st Embodiment of this invention. 本発明の第1の実施の形態の動画像符号化処理システムの実装例を示す図。The figure which shows the implementation example of the moving image encoding processing system of the 1st Embodiment of this invention. 上記実施の形態の動画像符号化処理システムとしてコンピュータを機能させる動画像符号化処理プログラムの概略フローチャートを示す図。The figure which shows the schematic flowchart of the moving image encoding processing program which makes a computer function as the moving image encoding processing system of the said embodiment. トリプルウエル構造を示す断面図。Sectional drawing which shows a triple well structure. 上記実施の形態の動画像符号化処理システムに使用されるプロセッサの動作電源電圧・基板バイアス電圧・動作周波数を示す概念図。FIG. 3 is a conceptual diagram showing an operating power supply voltage, a substrate bias voltage, and an operating frequency of a processor used in the moving picture coding system according to the above embodiment. 動作電源電圧及び動作周波数を一定とすることにより低消費電力化を図ることができることを説明する説明図。Explanatory drawing explaining that low power consumption can be achieved by making an operating power supply voltage and an operating frequency constant. 上記実施の形態における割り込みを行う際の時間と演算残量の関係を説明する説明図。FIG. 6 is an explanatory diagram illustrating a relationship between a time when performing an interrupt and a calculation remaining amount in the above-described embodiment. 本発明の第2の実施の形態の動画像符号化処理システムの動作を示した概略ブロック図。The schematic block diagram which showed operation|movement of the moving image coding processing system of the 2nd Embodiment of this invention. 上記実施の形態の動画像符号化処理システムとしてコンピュータを機能させる動画像符号化処理プログラムの概略フローチャートを示す図。The figure which shows the schematic flowchart of the moving image encoding processing program which makes a computer function as the moving image encoding processing system of the said embodiment. 本発明の第3の実施の形態の動画像復号化処理システムの動作を示した概略ブロック図。The schematic block diagram which showed operation|movement of the moving image decoding processing system of the 3rd Embodiment of this invention. 上記実施の形態の動画像符号化処理システムとしてコンピュータを機能させる動画像符号化処置プログラムの概略フローチャートを示す図。The figure which shows the schematic flowchart of the moving image encoding treatment program which makes a computer function as the moving image encoding processing system of the said embodiment. 通常の符号化処理の処理時間推移を示す図。The figure which shows the process time transition of normal encoding processing. 第3の実施の形態における符号化処理の処理時間推移を示す図。The figure which shows the process time transition of the encoding process in 3rd Embodiment. 第3の実施の形態における符号化処理の処理時間推移を示す図。The figure which shows the process time transition of the encoding process in 3rd Embodiment. 第3の実施の形態における符号化処理の処理時間推移を示す図。The figure which shows the process time transition of the encoding process in 3rd Embodiment. 本発明の第4の実施の形態の動画像復号化処理システムの動作を示した概略ブロック図。The schematic block diagram which showed operation|movement of the moving image decoding processing system of the 4th Embodiment of this invention. 本発明の第5の実施の形態の動画像符号化処理システムの動作を示した概略ブロック図。The schematic block diagram which showed operation|movement of the moving image coding processing system of the 5th Embodiment of this invention. 上記実施の形態の動画像符号化処理システムに使用されるプロセッサの動作電源電圧・動作周波数の関係を説明する概念図。FIG. 3 is a conceptual diagram illustrating a relationship between an operating power supply voltage and an operating frequency of a processor used in the moving image coding processing system according to the above embodiment. 本発明の第6の実施の形態の動画像符号化処理システムの動作を示した概略ブロック図。The schematic block diagram which showed operation|movement of the moving image coding processing system of the 6th Embodiment of this invention. 上記実施の形態の動画像符号化処理システムに使用されるプロセッサの基板バイアス電圧・動作周波数の関係を説明する概念図。FIG. 3 is a conceptual diagram illustrating a relationship between a substrate bias voltage and an operating frequency of a processor used in the moving image coding processing system according to the above embodiment. 実施例におけるプロセッサの動作周波数と動作電源電圧、基板バイアス電圧の関係の例を示す図。FIG. 6 is a diagram showing an example of the relationship between the operating frequency of the processor, the operating power supply voltage, and the substrate bias voltage in the embodiment. 動画像符号化処理システムについて従来の低消費電力化を行う手法を示した図。The figure which showed the method of performing the conventional low power consumption about a moving image coding processing system. フレーム単位に動画像符号化又は復号化の演算量が異なる状態を示す概念図。FIG. 6 is a conceptual diagram showing a state in which the amount of calculation for moving image encoding or decoding differs for each frame.

符号の説明Explanation of symbols

S1(S11,S12,S13,S14),S2,S3,S5,S6 動画像符号化処理システム
S4 動画像復号化処理システム
1,51,61 プロセッサ
2,42 必要演算量計算手段
3,53,63 動作決定手段
4,54,64 動作制御手段
5 動画像符号化手段
45 動画像復号化手段
6 局部復号フレームメモリ
7 入力フレームメモリ
8 要素メモリ
91,92,93,94,95 第1の破綻回避手段
96 第2の破綻回避手段
97,98 第3の破綻回避手段
10 処理済マクロブロック数レジスタ
101 入力画像データ
102 動作電源電圧・基板バイアス電圧・動作周波数指示
103 局部復号データ
104 動作電源電圧・基板バイアス電圧・動作周波数指示
105 動作電源電圧・基板バイアス電圧・動作周波数供給
106 符号化データ
107 前フレームの量子化ステップサイズの平均値、
108 各フレームについてフレーム内符号化であるかフレーム間符号化であるかの種類
109 動画像の符号化ビットレート
110 前フレーム(過去のフレーム)のアクティビティの量
111 前フレームのマクロブロックマッチング回数
112 前フレームの有効ブロック数
113 前フレームの有効係数の数
114 前フレームの量子化ステップサイズの平均値とその一つ前のフレームの量子化ステップサイズの平均値の差
115 前フレームの符号化に実際に要した処理量
116 必要演算量計算手段により算出された前フレームの必要演算量
117 処理済マクロブロック数
45 動画像復号化手段
46 局部復号フレームメモリ
401 入力符号化データ
406 復号化データ
502 動作電源電圧・動作周波数指示
505 動作電源電圧・動作周波数供給
602 基板バイアス電圧・動作周波数指示
605 基板バイアス電圧・動作周波数供給
p−sub p型半導体基板
n−well n型ウエル
p−well p型ウエル
S1 (S11, S12, S13, S14), S2, S3, S5, S6 Moving picture coding processing system S4 Moving picture decoding processing system 1, 51, 61 Processor 2, 42 Necessary calculation amount calculating means 3, 53, 63 Operation determining means 4, 54, 64 Operation control means 5 Moving picture coding means 45 Moving picture decoding means 6 Local decoding frame memory 7 Input frame memory 8 Element memories 91, 92, 93, 94, 95 First failure avoiding means 96 Second failure avoidance means 97, 98 Third failure avoidance means 10 Processed macroblock number register 101 Input image data 102 Operating power supply voltage/substrate bias voltage/operating frequency instruction 103 Local decoding data 104 Operating power supply voltage/substrate bias Voltage/operating frequency instruction 105 Operating power supply voltage/substrate bias voltage/operating frequency supply 106 Encoded data 107 Average value of quantization step size of previous frame,
108 Type of intra-frame coding or inter-frame coding for each frame
109 moving image coding bit rate 110 amount of activity of previous frame (past frame) 111 number of macroblock matching of previous frame 112 number of effective blocks of previous frame 113 number of effective coefficients of previous frame 114 quantization step of previous frame The difference between the average value of the sizes and the average value of the quantization step size of the frame immediately before that 115 115 The amount of processing actually required for encoding the previous frame 116 The required amount of calculation of the previous frame calculated by the required amount of calculation calculation means 117 Number of processed macroblocks 45 Moving picture decoding means 46 Local decoding frame memory 401 Input coded data 406 Decoded data 502 Operating power supply voltage/operating frequency instruction 505 Operating power supply voltage/operating frequency supply
602 Substrate bias voltage/operating frequency instruction 605 Substrate bias voltage/operating frequency supply
p-sub p-type semiconductor substrate n-well n-type well p-well p-type well

以下、本発明の動画像符号化又は復号化処理システム及び動画像符号化又は復号化処理方法について説明する。本発明の動画像符号化又は復号化システムは、後述するプロセッサ1が動画像符号化処理及び動画像復号化処理を行うものであり、動画像符号化を行う場合は動画像符号化処理システムとして機能し、動画像復号化を行う場合を動画像復号化処理システムとして機能する。たとえば、本発明の動画像符号化又は復号化処理システムとしては、フレーム単位若しくは時間単位で符号化又は復号化を行うものでも良く、また、復号化処理のみ又は符号化処理のみを行うものでも良い。また,プロセッサ1は動画像符号化処理又は動画像復号化処理をより少ないサイクル数,より小さい消費電力,より小さいプログラムコード量で効率的に実現するための動画像処理専用の演算器(命令)を備えていてもよい.動画像処理専用の演算器(命令)の例として,離散コサイン変換処理などの行列演算で用いる積和演算器(積和演算命令),動きベクトル検出処理でのブロックマッチング演算などの演算で用いる差分絶対値和演算器(差分絶対値和命令)などがあげられる.以下、説明の便宜上、符号化を行う場合を動画像符号化システムとし、復号化を行う場合を動画像復号化システムとし、動画像符号化処理と動画像復号化処理に分けて詳述する。   Hereinafter, a moving picture coding or decoding processing system and a moving picture coding or decoding processing method according to the present invention will be described. In the moving picture coding or decoding system of the present invention, the processor 1 described later performs the moving picture coding processing and the moving picture decoding processing. When performing the moving picture coding, it is used as a moving picture coding processing system. It functions and functions as a moving picture decoding processing system when performing moving picture decoding. For example, the moving picture coding or decoding processing system of the present invention may be one that performs coding or decoding in frame units or time units, or may be one that performs only decoding processing or only coding processing. .. Further, the processor 1 is an arithmetic unit (instruction) dedicated to moving image processing for efficiently realizing moving image encoding processing or moving image decoding processing with a smaller number of cycles, smaller power consumption, and smaller program code amount. May be provided. As an example of an arithmetic unit (instruction) dedicated to moving image processing, a product-sum arithmetic unit (product-sum arithmetic instruction) used in matrix operation such as discrete cosine transform processing, a difference used in operation such as block matching operation in motion vector detection processing Absolute value sum calculator (difference absolute value sum instruction) and so on. Hereinafter, for convenience of description, a case where encoding is performed is referred to as a moving image encoding system, and a case where decoding is performed is referred to as a moving image decoding system, and the moving image encoding process and the moving image decoding process will be separately described in detail.

(第1の実施の形態)
本発明の第1の実施の形態の動画像符号化処理システムS1は、必要演算量計算手段2で算出された必要演算量Kpが所定フレームの現実の演算量よりも小さい場合に生ずる、所定フレームの処理に割り当てられた時間内に処理が完了できないという破綻現象の問題を解決するためのものであり、所定フレームの符号化処理に予め割り当てられている時間内に所定フレームの符号化処理が終了しないと判断した場合には破綻現象を回避する処理を行う第1の破綻回避手段9を備え、動作周波数と基板バイアス電圧と動作電源電圧をフレーム単位に一定に制御する(すなわち、所定フレームの符号化処理または復号化処理に割り当てられた時間内はプロセッサが一定の動作周波数・一定の基板バイアス電圧・一定の動作電源電圧で動作し、所定フレームの符号化処理または復号化処理中は動作周波数や基板バイアス電圧や動作電源電圧を変更しない)ことにより、サブスレッショルドリーク電流と充放電電流とを適度に抑制し、低消費電力化を図るものである。本システムS1は、例えばマイクロコンピュータが内蔵された携帯電話やパーソナルコンピュータ等の情報端末機器であるコンピュータにより実現され、特に、そのコンピュータ内においてマルチメディア信号処理部などの一部として機能するシステムであり、連続する所定数のフレームから構成される動画像をフレーム単位で順次符号化を行うシステムである。
(First embodiment)
The moving picture coding system S1 according to the first embodiment of the present invention has a predetermined frame which occurs when the necessary calculation amount Kp calculated by the necessary calculation amount calculation means 2 is smaller than the actual calculation amount of the predetermined frame. This is to solve the problem of the failure phenomenon in which the processing cannot be completed within the time allotted to the processing of, and the coding processing of the predetermined frame is completed within the time previously allocated to the coding processing of the predetermined frame. If it is determined that the failure does not occur, the first failure avoiding means 9 that performs processing to avoid the failure phenomenon is provided, and the operating frequency, the substrate bias voltage, and the operating power supply voltage are controlled to be constant on a frame-by-frame basis (that is, the code of a predetermined frame). The processor operates at a constant operating frequency/constant substrate bias voltage/constant operating power supply voltage within the time allotted to the encoding or decoding process, and the operating frequency or By not changing the substrate bias voltage or the operating power supply voltage), the subthreshold leakage current and the charging/discharging current are appropriately suppressed, and the power consumption is reduced. The system S1 is realized by a computer that is an information terminal device such as a mobile phone or a personal computer having a microcomputer built therein, and is a system that functions as a part of a multimedia signal processing unit in the computer. , A system that sequentially encodes a moving image composed of a predetermined number of consecutive frames on a frame-by-frame basis.

図1は、本実施の形態の動画像符号化処理システムS1の動作を示した概略ブロック図であり、図3は本システムS1により実現される動画像符号化処理方法である。動画像符号化処理システムS1は、動作電源電圧Vdd及び基板バイアス電圧Vbn,Vbp及び動作周波数Fがr段階(rは2以上の整数)に可変であり(すなわち、r段階の動作電源電圧Vdd及び基板バイアス電圧Vbn、Vbp及び動作周波数Fで動作可能であり)且つプログラムにより動作電源電圧及び基板バイアス電圧及び動作周波数を変更可能なプロセッサ1と、プロセッサ1の動作電源電圧及び基板バイアス電圧及び動作周波数を制御する動作制御手段4と、所定のデータを記憶する記憶領域である局部復号フレームメモリ6と入力フレームメモリ7と要素メモリ8とを少なくとも備えるコンピュータ(特にコンピュータ内のマルチメディア信号処理部)である。ただし、Vbnはn−チャネルMOSトランジスタの基板バイアス電圧、Vbpはp−チャネルMOSトランジスタの基板バイアス電圧である。局部復号メモリ6および入力フレームメモリ7等は、動作制御手段4によりプロセッサ1と同様に動作電圧・動作周波数・基板バイアス電圧が制御されてもよい。本実施の形態では、点線で示される制御領域CAに含まれる要素(プロセッサ1、局部復号フレームメモリ6、要素メモリ8、処理済みマクロブロック数レジスタ10、入力フレームメモリ7a,7b、等)について、動作周波数と動作電圧と基板バイアス電圧が制御される。   FIG. 1 is a schematic block diagram showing the operation of the moving image coding processing system S1 of the present embodiment, and FIG. 3 is a moving image coding processing method realized by the system S1. In the moving image coding processing system S1, the operating power supply voltage Vdd, the substrate bias voltages Vbn and Vbp, and the operating frequency F are variable in r steps (r is an integer of 2 or more) (that is, the operating power supply voltage Vdd in r steps and A processor 1 capable of operating at a substrate bias voltage Vbn, Vbp and an operating frequency F) and capable of changing an operating power supply voltage, a substrate bias voltage and an operating frequency by a program, and an operating power supply voltage, a substrate bias voltage and an operating frequency of the processor 1. A computer (in particular, a multimedia signal processing unit in the computer) that includes at least an operation control unit 4 for controlling the above, a local decoding frame memory 6 that is a storage area for storing predetermined data, an input frame memory 7, and an element memory 8 is there. Here, Vbn is the substrate bias voltage of the n-channel MOS transistor, and Vbp is the substrate bias voltage of the p-channel MOS transistor. In the local decoding memory 6, the input frame memory 7, and the like, the operation voltage, the operation frequency, and the substrate bias voltage may be controlled by the operation control unit 4 similarly to the processor 1. In the present embodiment, regarding the elements (processor 1, local decoding frame memory 6, element memory 8, processed macroblock number register 10, input frame memories 7a, 7b, etc.) included in the control area CA indicated by the dotted line, The operating frequency, operating voltage, and substrate bias voltage are controlled.

プロセッサ1は、トリプルウエル構造をとる半導体素子であり、nMOSトランジスタ、pMOSトランジスタともに基板バイアス電圧が制御可能となっている。局部復号メモリ6及び入力フレームメモリ7は半導体記憶素子であり、動作制御手段4により、プロセッサ1と同様に動作電源電圧・基板バイアス電圧・動作周波数が制御される。
The processor 1 is a semiconductor element having a triple well structure, and the substrate bias voltage can be controlled for both the nMOS transistor and the pMOS transistor. The local decoding memory 6 and the input frame memory 7 are semiconductor memory elements, and the operation control means 4 controls the operating power supply voltage, the substrate bias voltage, and the operating frequency in the same manner as the processor 1.

図4はトリプルウエル構造のプロセッサ1の部分断面図である。プロセッサ1は、P型半導体基板p−subにn型ウエルn−wellを形成し、さらに、n型ウエルn−wellにp型ウエルp−wellを形成することによってトリプルウエル構造としたものである。p型ウエルp−wellには、n−チャネルMOSトランジスタとp型ウエルコンタクト層p−Contactとが形成されている。n−チャネルMOSトランジスタは、n型の不純物層からなるソース/ドレイン層S,Dと、ゲート電極Gとを有する。n型ウエルn−wellには、p−チャネルMOSトランジスタとn型ウエルコンタクト層n−Contactとが形成されている。n−チャネルMOSトランジスタは、p型の不純物層からなるソース/ドレイン層S,Dと、ゲート電極Gとを有する。n−チャネルMOSトランジスタが形成される半導体領域であるp型ウエルp−wellにはp型ウエルコンタクト層p−Contactを介して基板バイアス電圧Vbnが印加される。p−チャネルMOSトランジスタが形成される半導体領域であるn型ウエルn−wellにはn型ウエルコンタクト層n−Contactを介して基板バイアス電圧Vbpが印加される。   FIG. 4 is a partial sectional view of the processor 1 having the triple well structure. The processor 1 has a triple well structure by forming an n-type well n-well on a P-type semiconductor substrate p-sub and further forming a p-type well p-well on the n-type well n-well. .. An n-channel MOS transistor and a p-type well contact layer p-Contact are formed in the p-type well p-well. The n-channel MOS transistor has source/drain layers S and D made of n-type impurity layers and a gate electrode G. A p-channel MOS transistor and an n-type well contact layer n-Contact are formed in the n-type well n-well. The n-channel MOS transistor has source/drain layers S and D made of a p-type impurity layer and a gate electrode G. A substrate bias voltage Vbn is applied to a p-type well p-well, which is a semiconductor region in which an n-channel MOS transistor is formed, via a p-type well contact layer p-Contact. A substrate bias voltage Vbp is applied to an n-type well n-well, which is a semiconductor region in which a p-channel MOS transistor is formed, via an n-type well contact layer n-Contact.

動作制御手段4は、DC−DCコンバータなどを備えた動作電源電圧制御手段4c、n-チャネルMOSトランジスタの基板バイアス電圧を制御するための基板バイアス電圧Vbn発生手段4d、p-チャネルMOSトランジスタの基板バイアス電圧を制御するための基板バイアス電圧Vbp発生手段4e、PLLなどを備えた動作周波数制御手段4bからなる。ただし、動作制御手段4の各要素は動画像符号化処理システムS1の外に存在し、動画像符号化処理システムS1の外から動作電源電圧または基板バイアス電圧または動作周波数を制御してもよい。プロセッサ1、各メモリ6,7、動作制御手段4は互いに配線を介して接続されている。   The operation control unit 4 includes an operation power supply voltage control unit 4c including a DC-DC converter, a substrate bias voltage Vbn generation unit 4d for controlling a substrate bias voltage of an n-channel MOS transistor, and a substrate of a p-channel MOS transistor. It comprises a substrate bias voltage Vbp generating means 4e for controlling the bias voltage, and an operating frequency control means 4b having a PLL and the like. However, each element of the operation control means 4 may exist outside the moving image coding processing system S1, and the operating power supply voltage, the substrate bias voltage, or the operating frequency may be controlled from outside the moving image coding processing system S1. The processor 1, the memories 6 and 7, and the operation control unit 4 are connected to each other via wiring.

プロセッサ1は、プロセッサ1上で動作する手段として、必要演算量計算手段2と、動作決定手段3と、動画像符号化手段5と第1の破綻回避手段9を備える。なお、符号101は入力画像データ、符号102は動作電源電圧及び基板バイアス電圧及び動作周波数指示、符号103は前フレームの局部復号データ、符号105は動作電源電圧・基板バイアス電圧・動作周波数供給、符号106はフレームの符号化データ、符号107は前フレームの量子化ステップサイズの平均値の情報、符号108は各フレームについてフレーム内符号化であるかフレーム間符号化であるかの種類、符号109は動画像の符号化ビットレートの情報、符号110は前フレームのアクティビティ量、符号111は前フレームのマクロブロックマッチング回数、符号112は前フレームの有効ブロック数、符号113は前フレームの有効係数の数、符号114は前フレームの量子化ステップサイズの平均値とその一つ前のフレームの量子化ステップサイズの平均値の差、符号115は前フレームの符号化に実際に要した処理量、符号116は必要演算量計算手段2により算出された前フレームの必要演算量である。要素メモリ8は、後述する必要演算量計算手段2において使用される複数の要素のうち一部の要素(フレーム内符号化であるかフレーム間符号化であるかの種類108や、符号化ビットレート109や、フレームのアクティビティの量110や、必要演算量計算手段2により算出された必要演算量116)が記憶される記憶領域である。処理済マクロブロック数レジスタ10は、符号化処理済みのマクロブロック数117の情報を一時的に蓄積するレジスタである。動画像符号化手段5には符号化方式としてMPEG−4が使用されるが、H.26XやMPEG−1、MPEG−2などの他の符号化方式が使用されていても良い。   The processor 1 includes, as means for operating on the processor 1, a necessary calculation amount calculation means 2, an operation determination means 3, a moving image coding means 5, and a first failure avoidance means 9. Reference numeral 101 is input image data, reference numeral 102 is an operating power supply voltage/substrate bias voltage and operating frequency instruction, reference numeral 103 is locally decoded data of the previous frame, reference numeral 105 is an operating power supply voltage/substrate bias voltage/operating frequency supply, reference numeral Reference numeral 106 is coded data of a frame, reference numeral 107 is information on the average value of the quantization step size of the previous frame, reference numeral 108 is a type of each frame, that is, intra-frame coding or inter-frame coding, and reference numeral 109 is Coded bit rate information of moving image, code 110 is the amount of activity of the previous frame, code 111 is the number of macroblock matching of the previous frame, code 112 is the number of valid blocks of the previous frame, and code 113 is the number of valid coefficients of the previous frame. , Reference numeral 114 represents the difference between the average value of the quantization step size of the previous frame and the average value of the quantization step size of the immediately preceding frame, reference numeral 115 represents the processing amount actually required for the encoding of the previous frame, reference numeral 116 Is the required calculation amount of the previous frame calculated by the required calculation amount calculation means 2. The element memory 8 is a part of a plurality of elements used in a necessary calculation amount calculation unit 2 described later (a type 108 of intra-frame coding or inter-frame coding, a coding bit rate). 109, a frame activity amount 110, and a necessary calculation amount 116 calculated by the necessary calculation amount calculation unit 2) are storage areas. The processed macroblock number register 10 is a register that temporarily stores information on the number of macroblocks 117 that have been encoded. Although MPEG-4 is used as the encoding method for the moving image encoding means 5, the H.264 standard is used. Other encoding methods such as 26X, MPEG-1, MPEG-2 may be used.

図2に動画像符号化処理システムS1の実装例を示す。システムS1は、主にプロセッサ1と、周辺装置として各種メモリMR,7a,7bや各種インタフェースCI,DI,BI、動作制御回路4a、PLL4b、DC−DCコンバータ4c、基板バイアス電圧発生回路4d,4e等を備えたハードウェアにより実現される。上記各構成要素は、バスB1,B2等を介して互いに通信可能となっている。   FIG. 2 shows an implementation example of the moving image coding processing system S1. The system S1 mainly includes the processor 1, various memories MR, 7a and 7b as peripheral devices, various interfaces CI, DI and BI, operation control circuits 4a, PLL4b, DC-DC converter 4c, substrate bias voltage generating circuits 4d and 4e. It is realized by hardware including the above. The above-mentioned components can communicate with each other via buses B1, B2 and the like.

プロセッサ1は、プロセッサコア1aと、命令キャッシュメモリ1bと、データキャッシュメモリ1cと、バスコントローラBCとを備える。必要演算量計算手段2,動作決定手段3,動画像符号化手段5,破綻回避手段9,11は、メモリMRに格納されたプログラムが必要に応じてプロセッサコア1a上で実行されることにより実現される。命令キャッシュメモリ1bおよびデータキャッシュメモリ1cは、プロセッサコア1a上で実行されるプログラムの処理の高速化を図るために設けられたキャッシュメモリである。   The processor 1 includes a processor core 1a, an instruction cache memory 1b, a data cache memory 1c, and a bus controller BC. The required calculation amount calculation means 2, the operation determination means 3, the moving image coding means 5, and the failure avoidance means 9 and 11 are realized by executing the program stored in the memory MR on the processor core 1a as necessary. To be done. The instruction cache memory 1b and the data cache memory 1c are cache memories provided to speed up the processing of the program executed on the processor core 1a.

局部復号フレームメモリ6,要素メモリ8,処理済みマクロブロック数レジスタ10は、図2のメモリMRに集約されるとともに、前フレームの量子化ステップサイズの平均値107,各フレームについてフレーム内符号化であるかフレーム間符号化であるかの種類108,動画像符号化のビットレート109,前フレーム(過去のフレーム)のアクティビティの量110,前フレームのマクロブロックマッチング回数111,前フレームの有効ブロック数112,前フレームの有効係数の数113,前フレームの量子化ステップサイズの平均値とその一つ前のフレームの量子化ステップサイズの平均値の差114,前フレームの符号化に実際に要した処理量115,必要演算量計算手段により算出された前フレームの必要演算量116,処理済みマクロブロック数117はメモリMRにデータとして格納される。局部復号データ103は、バスコントローラBCを介してメモリMRとプロセッサコア1a間で信号100j,100k,100lとして送受信される。   The locally decoded frame memory 6, the element memory 8, and the processed macroblock number register 10 are aggregated in the memory MR of FIG. 2, and the average value 107 of the quantization step size of the previous frame and the intraframe encoding for each frame are performed. Type 108 whether there is inter-frame coding or not, bit rate 109 of moving picture coding, amount of activity 110 of previous frame (past frame), number of macroblock matching 111 of previous frame, number of effective blocks of previous frame 112, the number 113 of effective coefficients of the previous frame, the difference 114 between the average value of the quantization step size of the previous frame and the average value of the quantization step size of the previous frame 114, and the actual coding of the previous frame The processing amount 115, the required calculation amount 116 of the previous frame calculated by the necessary calculation amount calculation means, and the processed macroblock number 117 are stored in the memory MR as data. The locally decoded data 103 is transmitted/received as signals 100j, 100k, 100l between the memory MR and the processor core 1a via the bus controller BC.

二つの入力フレームメモリ7a,7bは、図1の入力フレームメモリ7に相当する。カメラインタフェースCIから入力されたビデオデータ(入力画像データ101)は、バスB2を介して入力フレームメモリ7a(又は入力フレームメモリ7b)に入力される。入力フレームメモリ(#0)7aと入力フレームメモリ(#1)7bは1フレームの処理が終わるごとに用途が入れ替わる。すなわち、i番目のフレームの処理で、信号100hにより入力フレームメモリ(#1)7bに入力画像データが書き込まれ、動画像符号化処理手段による符号化処理のために信号100oにより入力フレームメモリ(#0)7aから入力画像データが読み出されたとき、(i+1)番目のフレームの処理では、信号100iにより入力フレームメモリ(#0)7aに入力画像データが書き込まれ、動画像符号化処理手段による符号化処理のために、信号100pにより入力フレームメモリ(#1)7bから入力画像データが読み出される。したがって、信号100hにより入力フレームメモリ(#1)7bに入力画像データが書き込まれているときは信号100pが発生せず、逆に信号100pにより画像が読み出されているときは信号100hが発生しない。同様に、信号100iにより入力フレームメモリ(#0)7aに入力画像データが書き込まれているときは信号100oが発生せず、信号100oにより入力フレームメモリ(#0)7aから入力画像データが読み出されているときは信号100iが発生しない。このとき、i番目のフレームの処理においては入力フレームメモリ(#0)7aが、(i+1)番目のフレームの処理においては入力フレームメモリ(#1)7bが動作周波数,基板バイアス電圧及び動作電圧の制御対象となる。上記説明のように、入力フレームメモリを2フレーム分用意し、それぞれの動作周波数を独立に設定できるようにすることで、常に一定の動作周波数であるカメラインタフェースCIからの入力画像データの書き込み動作と、必要演算量の算出値に基づいて動作周波数が変動する入力画像データの読み出し動作を、互いに妨げることなく実行することができる。   The two input frame memories 7a and 7b correspond to the input frame memory 7 of FIG. Video data (input image data 101) input from the camera interface CI is input to the input frame memory 7a (or the input frame memory 7b) via the bus B2. The applications of the input frame memory (#0) 7a and the input frame memory (#1) 7b are switched each time one frame is processed. That is, in the processing of the i-th frame, the input image data is written in the input frame memory (#1) 7b by the signal 100h, and the input frame memory (# by the signal 100o for the encoding processing by the moving image encoding processing means. 0) When the input image data is read from 7a, in the processing of the (i+1)th frame, the input image data is written in the input frame memory (#0) 7a by the signal 100i, and the moving image coding processing means For the encoding processing, the input image data is read from the input frame memory (#1) 7b by the signal 100p. Therefore, the signal 100p does not occur when the input image data is written in the input frame memory (#1) 7b by the signal 100h, and conversely, the signal 100h does not occur when the image is read by the signal 100p. .. Similarly, when the input image data is written in the input frame memory (#0) 7a by the signal 100i, the signal 100o is not generated, and the input image data is read from the input frame memory (#0) 7a by the signal 100o. Signal 100i is not generated when the signal is being output. At this time, in the processing of the i-th frame, the input frame memory (#0) 7a, and in the processing of the (i+1)th frame, the input frame memory (#1) 7b stores the operating frequency, the substrate bias voltage, and the operating voltage. It becomes a control target. As described above, by preparing the input frame memories for two frames so that the respective operating frequencies can be set independently, the operation of writing the input image data from the camera interface CI, which is always the constant operating frequency, can be performed. It is possible to execute the read operation of the input image data in which the operating frequency fluctuates based on the calculated value of the necessary calculation amount, without interfering with each other.

動作制御回路4aは、PLL4b,DC−DCコンバータ4c,基板バイアス電圧発生回路4d,4eと互いに信号を送受信可能となっており、これらは動作制御手段4として機能している。動作制御回路4aは、プロセッサコア1aからの信号100eにより動作電源電圧・基板バイアス電圧・動作周波数指示102を受け、その指示102に基づいてPLL4bに対して信号100uを発信し、DC−DCコンバータ4cに対して信号100vを発信し,基板バイアス電圧発生回路4dに対して信号100wを発信し,基板バイアス電圧発生回路4eに対して信号100xを発信する。PLL4bは信号100uに基づいて動作周波数信号100aを発信し、DC−DCコンバータ4cは信号100vに基づいて動作電源電圧100bを供給し,基板バイアス電圧発生回路4dは信号100wに基づいてnMOS基板バイアス電圧100cを供給し,基板バイアス電圧発生回路4eは信号100xに基づいてpMOS基板バイアス電圧100dを供給する。これにより、図2において点線で示される制御領域CAに含まれる要素(プロセッサ1、メモリMR、入力フレームメモリ7a,7b、バスコントローラBC等)について、動作周波数と基板バイアス電圧と動作電源電圧が制御される。信号100e,100j,100k,100l,100m,100o,100p,100q,100r,100sは、PLL4bが出力する動作周波数信号100a,DC−DCコンバータ4cが出力する電源電圧供給100b,基板バイアス電圧発生回路4dが出力するnMOS基板バイアス電圧100c,基板バイアス電圧発生回路4eが出力するpMOS基板バイアス電圧100dの値に応じて周波数と信号レベルが変化する。   The operation control circuit 4a can send and receive signals to and from the PLL 4b, the DC-DC converter 4c, and the substrate bias voltage generation circuits 4d and 4e, and these functions as the operation control means 4. The operation control circuit 4a receives the operating power supply voltage/substrate bias voltage/operating frequency instruction 102 by the signal 100e from the processor core 1a, transmits the signal 100u to the PLL 4b based on the instruction 102, and then the DC-DC converter 4c. To the substrate bias voltage generating circuit 4d, and a signal 100x to the substrate bias voltage generating circuit 4e. The PLL 4b transmits the operating frequency signal 100a based on the signal 100u, the DC-DC converter 4c supplies the operating power supply voltage 100b based on the signal 100v, and the substrate bias voltage generating circuit 4d outputs the nMOS substrate bias voltage based on the signal 100w. 100c, and the substrate bias voltage generation circuit 4e supplies the pMOS substrate bias voltage 100d based on the signal 100x. As a result, the operating frequency, the substrate bias voltage, and the operating power supply voltage are controlled for the elements (processor 1, memory MR, input frame memories 7a and 7b, bus controller BC, etc.) included in the control area CA indicated by the dotted line in FIG. To be done. The signals 100e, 100j, 100k, 100l, 100m, 100o, 100p, 100q, 100r, 100s are the operating frequency signal 100a output by the PLL 4b, the power supply voltage supply 100b output by the DC-DC converter 4c, and the substrate bias voltage generating circuit 4d. Of the nMOS substrate bias voltage 100c output by the above and the pMOS substrate bias voltage 100d output by the substrate bias voltage generation circuit 4e, the frequency and the signal level change.

プロセッサ1上で動作する動画像符号化手段5による符号化後の符号化データ106は、バスB1を介してビットストリームインタフェースBIに信号100mとして送信されて信号100nとして出力され、符号化処理の過程で生成される局部復号データ106は局部復号フレームメモリ6として機能するメモリMRに信号100jとして送信される。また、画像のデータなどは、バスB1を介してメモリから信号100qとして読み出され、ディスプレイインタフェースDIに送信される。ディスプレイインタフェースDIに受信された信号100qは、信号100tによるビデオデータとして出力される。ビデオデータは、ディスプレイインタフェースDIと接続されるモニタを介して、動画像として出力・表示される。   The coded data 106 coded by the moving picture coding means 5 operating on the processor 1 is transmitted as a signal 100m to the bit stream interface BI via the bus B1 and is output as a signal 100n. The locally decoded data 106 generated in 1 is transmitted as a signal 100j to the memory MR functioning as the locally decoded frame memory 6. Further, image data and the like are read out as a signal 100q from the memory via the bus B1 and transmitted to the display interface DI. The signal 100q received by the display interface DI is output as video data by the signal 100t. The video data is output/displayed as a moving image via a monitor connected to the display interface DI.

動作制御回路4a,ディスプレイインタフェースDI,ビットストリームインタフェースBIは常に一定の動作電源電圧で動作するが、これらの間で送受信される信号100e,100q,100mは制御領域CAに含まれる要素(プロセッサ1やメモリMRや入力フレームメモリ7a,7b等)の基板バイアス電圧と動作電源電圧の変更に応じて信号レベルが変動する。この影響を吸収するために、動作制御回路4a,ディスプレイインタフェースDI,ビットストリームインタフェースBIは、受信した信号100e,100q,100mの信号レベルを補正するレベルコンバータを備えることが望ましい。   The operation control circuit 4a, the display interface DI, and the bit stream interface BI always operate at a constant operating power supply voltage, but the signals 100e, 100q, and 100m transmitted and received among them are elements included in the control area CA (processor 1 or The signal level fluctuates according to changes in the substrate bias voltage of the memory MR and the input frame memories 7a and 7b) and the operating power supply voltage. In order to absorb this influence, the operation control circuit 4a, the display interface DI, and the bit stream interface BI preferably include a level converter that corrects the signal levels of the received signals 100e, 100q, 100m.

次に、本実施の形態の動画像符号化処理システムS1の動作を説明する。動画像符号化処理システムS1は、動画像符号化処理プログラムPrg1によりコンピュータ(特にコンピュータ内のマルチメディア信号処理部)を下記の所定の手段として機能させることにより実現される。また、本システムS1により、下記のステップからなる本発明の動画像符号化方法が実現される。以下、順次符号化されるフレームのうちこれから符号化される任意の一のフレームを所定フレーム(すなわち、あるフレームが符号化された時点を基準とすると次に符号化されるフレームであり、換言すると、その時点において未だに符号化処理されておらず未来に符号化処理が行われる予定であるフレーム、現フレームともいう)、所定フレームより前に符号化された一のフレーム(過去に符号化されたフレーム)を前フレームとし、所定フレームを符号化する処理について説明するが、いずれのフレームについても同様の処理が行われる。   Next, the operation of the moving picture coding system S1 of the present embodiment will be described. The moving image coding processing system S1 is realized by causing the computer (in particular, the multimedia signal processing unit in the computer) to function as the following predetermined means by the moving image coding processing program Prg1. Further, the present system S1 realizes the moving picture coding method of the present invention including the following steps. Hereinafter, an arbitrary one frame to be coded from among sequentially coded frames is a predetermined frame (that is, a frame to be coded next when a certain frame is coded as a reference, in other words, , A frame that has not been coded at that point in time and is scheduled to be coded in the future (also called a current frame), one frame coded before a predetermined frame (coded in the past) A process of encoding a predetermined frame with (frame) as the previous frame will be described, but the same process is performed for any frame.

動画像符号化処理プログラムPrg1は、後述するステップ1からステップ5においてコンピュータを下記のように機能させる。(ステップ1)所定フレームの画像情報を入力フレームメモリ7に入力する。(ステップ2)所定フレームの必要演算量Kpを計算させる必要演算量計算手段2として機能させる。(ステップ3)算出された必要演算量Kpに応じてプロセッサの動作周波数F及び動作電源電圧Vdd及び基板バイアス電圧Vbn,Vbpを決定する動作決定手段3として機能させる。(ステップ4)算出された動作周波数F及び動作電源電圧Vdd及び基板バイアス電圧Vbn,Vbpでプロセッサ1を動作させる制御を行わせる動作制御手段4として機能させる。(ステップ5)所定フレームの画像情報を符号化させる動画像符号化手段5として機能させる。以上、ステップ1からステップ5の処理を入力フレームメモリ7に入力されるフレームの順番(すなわち、符号化される順番)に、すべてのフレームに対して行うことで、動画像の符号化を行う。以下、詳細に説明する。   The moving image coding processing program Prg1 causes the computer to function as described below in steps 1 to 5 described later. (Step 1) Input image information of a predetermined frame into the input frame memory 7. (Step 2) Function as the required calculation amount calculation means 2 for calculating the required calculation amount Kp of a predetermined frame. (Step 3) Functions as the operation determining unit 3 that determines the operating frequency F, the operating power supply voltage Vdd, and the substrate bias voltages Vbn and Vbp according to the calculated required calculation amount Kp. (Step 4) It functions as the operation control means 4 for controlling the operation of the processor 1 with the calculated operating frequency F, operating power supply voltage Vdd, and substrate bias voltages Vbn, Vbp. (Step 5) It is made to function as the moving picture coding means 5 for coding the image information of a predetermined frame. As described above, the processing of steps 1 to 5 is performed for all the frames in the order of the frames input to the input frame memory 7 (that is, the encoding order), thereby encoding the moving image. The details will be described below.

(ステップ1)入力された入力画像データは、フレームの同期をとるため、フレームを一時的に記憶する記憶領域である入力フレームメモリ7に一旦格納される。   (Step 1) The input input image data is temporarily stored in the input frame memory 7, which is a storage area for temporarily storing the frame, in order to synchronize the frame.

(ステップ2:必要演算量計算ステップ)必要演算量計算手段2は、入力フレームメモリ7にアクセスして所定フレームの入力画像データ101を取得し、所定フレームの符号化処理に必要な必要演算量Kpを計算する。必要演算量Kpの計算方法は様々な方法が考えられるが、たとえば、所定フレームの符号化処理の演算量に影響を与える要素を一つ以上使用して計算することが望ましい。要素としては、例えば、動画像符号化処理において、処理内容が動き補償である場合は、動きの激しい映像では演算量が多く、一方、動きの少ない映像では演算量が少ないことに注目して、所定フレームと前フレームとの動き量として差分絶対値和で計算される歪み値や、また、各々のフレームのアクティビティ量として隣接画素差分絶対値和で計算される値や、マクロブロックマッチング回数や、有効ブロック数や、有効係数の数や、符号化ビットレートや、発生ビット数や、前フレームの符号化に実際に要した演算量や、必要演算量計算手段2により算出された前フレームの必要演算量が挙げられる。ここで、各要素それぞれについて、一つの要素の値のみ変化し、他の要素の値が変化しないと仮定したときに、その一つの要素の値が大きい場合は小さい場合に比較して必要演算量が相対的に大きくなるようにし、その一つの要素の値が小さい場合は大きい場合と比較して必要演算量が相対的に小さくなるようにする。また、所定フレームがフレーム内符号化である場合はフレーム間符号化である場合と比較して必要演算量Kpが相対的に小さく、フレーム間符号化である場合はフレーム内符号化である場合と比較して必要演算量Kpが相対的に大きくなるようにする。すなわち、これらの複数の要素は所定フレームの符号化処理のために必要な必要演算量に影響を与える要素であるため、必要演算量計算手段2が、これらの要素に応じて必要演算量Kp(サイクル)を増減するように計算を行うことにより、必要演算量計算手段2により計算される必要演算量Kpが現実に符号化処理を行ったときの演算量により近い値となる。   (Step 2: Required calculation amount calculation step) The required calculation amount calculation means 2 accesses the input frame memory 7 to acquire the input image data 101 of a predetermined frame, and the necessary calculation amount Kp required for the encoding process of the predetermined frame. To calculate. There are various possible methods for calculating the required calculation amount Kp. For example, it is desirable to use one or more elements that affect the calculation amount of the encoding process of a predetermined frame. As an element, for example, in the moving image encoding process, when the processing content is motion compensation, paying attention to the fact that the amount of calculation is large for a video with a lot of motion, while the amount of calculation is small for a video with little motion. The distortion value calculated as the sum of absolute differences as the amount of motion between the predetermined frame and the previous frame, and the value calculated as the sum of absolute differences of adjacent pixels as the amount of activity of each frame, the macroblock matching count, and The number of effective blocks, the number of effective coefficients, the encoding bit rate, the number of generated bits, the amount of calculation actually required for encoding the previous frame, and the need for the previous frame calculated by the required calculation amount calculation means 2. The amount of calculation is included. Here, for each element, assuming that only the value of one element changes and the value of the other element does not change, the required amount of calculation is larger when the value of that one element is larger than when it is small. Is relatively large, and when the value of one of the elements is small, the required calculation amount is relatively small as compared with the case where it is large. In addition, when the predetermined frame is intra-frame coding, the required calculation amount Kp is relatively smaller than when it is inter-frame coding, and when it is inter-frame coding, it is intra-frame coding. By comparison, the required calculation amount Kp is made relatively large. That is, since these plurality of elements affect the required calculation amount required for the encoding process of the predetermined frame, the necessary calculation amount calculation means 2 determines the required calculation amount Kp( By performing the calculation so as to increase or decrease the number of cycles, the required calculation amount Kp calculated by the necessary calculation amount calculation means 2 becomes a value closer to the calculation amount when the encoding process is actually performed.

たとえば、本実施の形態では、関数Gを使用して計算し、入力フレームメモリ7に記憶されている所定フレームの入力画像データ101と、局部復号フレームメモリ6に蓄積されている復号化された前フレームの局部復号データ103とを比較して、入力画像の動きの大きさの予測(計算)を行う。この前フレームの局部復号データ103は、所定フレームよりも前に符号化が行われる前フレームの符号化処理において、前フレームを符号化して形成した前フレームの符号化データ106を、ローカルデコーダで復号化することにより形成され、局部復号フレームメモリ6に記憶されている。動きの大きさの予測(計算)の一例として、例えば差分絶対値和を用いる。以下に、差分絶対値和Σと必要演算量Kpの求め方を説明する。なお、前フレームの画像データとしては、符号化後にローカルデコーダにより復号化された局部復号データ106を使用しても良いが、入力された前フレームの入力画像データをそのまま使用しても良い。   For example, in the present embodiment, the input image data 101 of a predetermined frame calculated by using the function G and stored in the input frame memory 7 and the decoded previous image stored in the local decoding frame memory 6 are stored. The size of motion of the input image is predicted (calculated) by comparing with the locally decoded data 103 of the frame. The locally decoded data 103 of the previous frame is the encoded data 106 of the previous frame that is formed by encoding the previous frame in the encoding process of the previous frame that is encoded before the predetermined frame is decoded by the local decoder. And is stored in the local decoding frame memory 6. As an example of prediction (calculation) of the magnitude of motion, for example, the sum of absolute differences is used. Hereinafter, a method of obtaining the sum of absolute differences Σ and the required calculation amount Kp will be described. As the image data of the previous frame, the locally decoded data 106 decoded by the local decoder after encoding may be used, or the input image data of the input previous frame may be used as it is.

入力フレームメモリ7に蓄積された所定フレームの入力画像データ101をX(i,j)(iは画像の水平方向の座標、jは垂直方向の座標)、後述する局部復号フレームメモリ6に蓄積された前フレームの局部復号データ103をY(i,j)(iは画像の水平方向の座標、jは垂直方向の座標)とすると、所定フレームと前フレームとの動き量は、差分絶対値和Z=Σ|X(i,j)−Y(i,j)|をすべての(またはサンプルした)画素に対して計算する。この差分絶対値和の値をZとする。一方、フレームのアクティビティ量においては、X(i,j)において隣接画素差分絶対値和W、つまり、水平方向Wh=Σ|X(i,j)−X(i-1,j)|、垂直方向Wv=Σ|X(i,j)−X(i,j-1)|を計算することにより求められ、全ての(又はサンプルした)入力画像に対して計算する。この隣接画素差分絶対値和の値(すなわち各フレームのアクティビティ量)をWとする。   The input image data 101 of a predetermined frame stored in the input frame memory 7 is stored in a local decoding frame memory 6 described later, where X(i,j) (i is the horizontal coordinate of the image and j is the vertical coordinate). If the locally decoded data 103 of the previous frame is Y(i,j) (i is the coordinate in the horizontal direction of the image and j is the coordinate in the vertical direction), the motion amount between the predetermined frame and the previous frame is the sum of absolute difference values. Calculate Z=Σ|X(i,j)-Y(i,j)| for all (or sampled) pixels. The value of this sum of absolute differences is Z. On the other hand, in the activity amount of the frame, the sum W of adjacent pixel differences in X(i,j), that is, horizontal direction Wh=Σ|X(i,j)−X(i-1,j)|, vertical It is obtained by calculating the direction Wv=Σ|X(i,j)-X(i,j-1)|, and is calculated for all (or sampled) input images. The value of the sum of the absolute values of the adjacent pixel differences (that is, the activity amount of each frame) is W.

差分絶対値和をZ、所定フレームのアクティビティ量をWa、前フレーム(過去のフレーム)のアクティビティ量をWb、前フレームの平均量子化ステップサイズ(量子化ステップサイズの平均値)をQprev、前フレームのマクロブロックマッチング回数をM、前フレームの有効ブロック数をB、前フレームの有効係数の数をC、前フレームの符号化に実際に要した処理量をS、所定フレームの符号化ビットレートをBR、前フレームの量子化ステップサイズの平均値とその一つ前のフレームの量子化ステップサイズの平均値の差をΔQprev、前フレームの実際の発生ビット数をD、必要演算量計算手段により算出された前フレームの必要演算量をKp’とおくと、これらの要素のうち一つ以上の要素を使用して、必要演算量Kpは、
Kp=G(Z,Wa,Wb,Qprev,M,B,C,S,BR,ΔQprev,D,Kp’)
で計算される。ただし、GはZ,Wa,Wb,Qprev,M,B,C,S,BR,ΔQprev,D,Kp’のうち、一以上の要素から導き出される関数である。その一例としては、
Kp=j+αM+βB+γC+δZ+ε△Qprev
が挙げられるが、これに限られるわけではない。また、必要演算量Kpの計算に使用される要素として、所定フレームがフレーム内符号化であるかフレーム間符号化であるかの種類Iが使用される。所定フレームがフレーム内符号化である場合の必要演算量Kpは小さい値と、フレーム間符号化である場合の必要演算量Kpは大きい値となる。すなわち、必要演算量計算手段2は、差分絶対値和Zを使用するときは差分絶対値和Z=Σ|Xij−Yij|を計算した後に、必要演算量Kp=G(Z,Wa,Wb,Qprev,M,B,C,S,BR,ΔQprev,D,Kp’)を計算する。
The sum of absolute differences is Z, the activity amount of a predetermined frame is Wa, the activity amount of the previous frame (past frame) is Wb, the average quantization step size of the previous frame (average value of the quantization step size) is Qprev, and the previous frame , M is the number of effective blocks of the previous frame, C is the number of effective coefficients of the previous frame, S is the processing amount actually required for encoding the previous frame, and S is the encoding bit rate of the predetermined frame. BR, ΔQprev is the difference between the average value of the quantization step size of the previous frame and the average value of the quantization step size of the previous frame, D is the actual number of generated bits of the previous frame, and is calculated by the necessary calculation amount calculation means. Assuming that the required calculation amount of the previous frame is Kp′, the required calculation amount Kp can be calculated by using one or more of these elements.
Kp=G(Z, Wa, Wb, Qprev, M, B, C, S, BR, ΔQprev, D, Kp')
Calculated by. However, G is a function derived from one or more elements of Z, Wa, Wb, Qprev, M, B, C, S, BR, ΔQprev, D, Kp′. As an example,
Kp=j+αM+βB+γC+δZ+εΔQprev
However, the present invention is not limited to this. Further, as an element used for calculating the required calculation amount Kp, type I is used, which indicates whether the predetermined frame is intra-frame coding or inter-frame coding. The required calculation amount Kp is a small value when the predetermined frame is intra-frame coding, and is a large value when the predetermined frame is the inter-frame coding. That is, when using the difference absolute value sum Z, the necessary calculation amount calculation means 2 calculates the difference absolute value sum Z=Σ|Xij−Yij|, and then the necessary calculation amount Kp=G(Z, Wa, Wb, Qprev, M, B, C, S, BR, ΔQprev, D, Kp') are calculated.

以下、上記関数Gについて説明する。前フレームと所定フレームの間で画像の変化が大きい(小さい)場合、すなわち差分絶対値和Zが大きい(小さい)場合、所定フレームで実行されるマクロブロックマッチングの回数は大きく(小さく)なり、所定フレームの動き検出処理に必要な演算量(実行されるマクロブロックマッチング回数に依存する)が大きく(小さく)なる。また、所定フレームのアクティビティ量Waが大きい(小さい)場合、所定フレームは画像の高周波成分を多く(少なく)含むことを意味し、この場合、所定フレームの符号化処理で発生する有効ブロックの数、有効係数の数は大きく(小さく)なり、所定フレームのIDCT処理に必要な演算量(発生する有効ブロックの数に依存する)、IQ処理に必要な演算量(発生する有効係数の数に依存する)、VLC処理に必要な演算量(発生する有効係数の数に依存する)は大きく(小さく)なる。したがって、上記関数GはZ,Waなどのパラメータが大きい(小さい)場合、Kpを大きく(小さく)設定するように構成する。   The function G will be described below. When the image change between the previous frame and the predetermined frame is large (small), that is, when the absolute difference sum Z is large (small), the number of macroblock matching executed in the predetermined frame becomes large (small), The amount of calculation required for frame motion detection processing (depending on the number of times macroblock matching is performed) becomes large (small). Further, if the activity amount Wa of the predetermined frame is large (small), it means that the predetermined frame contains a large amount (small) of high frequency components of the image. In this case, the number of effective blocks generated in the encoding process of the predetermined frame, The number of effective coefficients becomes large (small), the amount of calculation required for IDCT processing of a predetermined frame (depends on the number of effective blocks generated), and the amount of calculation required for IQ processing (depends on the number of effective coefficients generated). ), the amount of calculation required for VLC processing (depending on the number of effective coefficients generated) becomes large (small). Therefore, the function G is configured to set Kp large (small) when parameters such as Z and Wa are large (small).

動画像は連続するフレーム間での相関が大きいため、符号化処理で実行されるマクロブロックマッチング回数、符号化処理で発生する有効ブロック数、有効係数の数、符号化処理で必要となる演算量、アクティビティ量は、時間的に連続するフレーム間で非常に近い値となる。したがって、M,B,C,S,Wbが大きい(小さい)場合、所定フレームにおいてもマクロブロックマッチング回数、有効ブロック数、有効係数の数、符号化処理に必要となる演算量、アクティビティ量が大きく(小さく)なる確率が高い。さらに、必要演算量計算手段で算出される予測演算量が実際の符号化処理に要した演算量に近い値となる場合、S≒Kp’となる。したがって,上記関数GはM,B,C,S,Wb,Kp’などのパラメータが大きい(小さい)場合、Kpを大きく(小さく)設定するように構成する。   Since a moving image has a large correlation between consecutive frames, the number of macroblock matchings executed in the encoding process, the number of effective blocks generated in the encoding process, the number of effective coefficients, and the amount of calculation required in the encoding process , The activity amount becomes a very close value between temporally consecutive frames. Therefore, when M, B, C, S, and Wb are large (small), the number of macroblock matchings, the number of effective blocks, the number of effective coefficients, the amount of calculation required for encoding processing, and the amount of activity are large even in a predetermined frame. There is a high probability that it will become smaller. Furthermore, when the predicted calculation amount calculated by the necessary calculation amount calculation means becomes a value close to the calculation amount required for the actual encoding process, S≈Kp′. Therefore, the function G is configured to set Kp large (small) when parameters such as M, B, C, S, Wb, and Kp' are large (small).

ターゲットビットレートが大きい(小さい)場合、量子化ステップサイズの値は小さく(大きく)設定され、その結果、符号化処理で発生する有効ブロックの数、有効係数の数は大きく(小さく)なる。また、前フレームの発生ビット数がターゲットビットレートと比較して大きい(小さい)場合、所定フレームの量子化ステップサイズの値は小さく(大きく)設定され、符号化処理で発生する有効ブロックの数、有効係数の数は小さく(大きく)なる。したがって、上記関数Gは所定フレームの符号化ビットレートBRが大きい(小さい)場合、Kpを大きく(小さく)設定するように、前フレームの実際の発生ビット数DがBRと比較して大きい(小さい)場合、Kpを小さく(大きく)設定するように構成する。さらに、前フレームの平均量子化ステップサイズQprevや前フレームの量子化ステップサイズの平均値とその一つ前のフレームの量子化ステップサイズの平均値の差ΔQprevを考慮することで、上記関数Gが算出するKpが実際に所定フレームを符号化するために必要となる演算量に近い値とすることができる。   When the target bit rate is large (small), the value of the quantization step size is set small (large), and as a result, the number of effective blocks and the number of effective coefficients generated in the encoding process become large (small). When the number of generated bits in the previous frame is large (small) as compared with the target bit rate, the value of the quantization step size of a predetermined frame is set small (large), and the number of effective blocks generated in the encoding process, The number of effective coefficients becomes small (large). Therefore, when the coding bit rate BR of a predetermined frame is large (small), the above function G is such that the actual number of generated bits D of the previous frame is large (small) as compared with BR so that Kp is set large (small). In this case, Kp is set to be small (large). Further, by considering the average quantization step size Qprev of the previous frame and the difference ΔQprev between the average value of the quantization step size of the previous frame and the average value of the quantization step size of the immediately preceding frame, the above function G is The calculated Kp can be set to a value close to the amount of calculation required to actually encode the predetermined frame.

なお、動画像の符号化ビットレート109や、所定フレーム及び前フレームについてフレーム内符号化であるかフレーム間符号化であるかの種類108や、前フレームのアクティビティの量110や、必要演算量計算手段により算出された前フレームの必要演算量116は要素が記憶される記憶領域である要素メモリ8に予め記憶されており、必要演算量Kpの計算時に必要演算量計算手段2に読み込まれて使用される。前フレームの量子化ステップサイズの平均値107、前フレームのマクロブロックマッチング回数111、前フレームの有効ブロック数112、前フレームの有効係数の数113、前フレームの量子化ステップサイズの平均値とその一つ前のフレームの量子化ステップサイズの平均値との差114、及び前フレームの符号化に実際に要した処理量115は前フレームの符号化処理が行われたときに動画像符号化手段5から必要演算量計算手段2にフィードバックされる。必要演算量計算手段2においては、これらの要素のうち一つの要素のみを使用しても良いし、複数の要素を組み合わせて使用しても良い。   It should be noted that the moving image coding bit rate 109, the type 108 of whether the predetermined frame and the previous frame are intra-frame coding or inter-frame coding, the activity amount 110 of the previous frame, and the necessary calculation amount calculation. The required calculation amount 116 of the previous frame calculated by the means is previously stored in the element memory 8 which is a storage area for storing elements, and is read and used by the required calculation amount calculation means 2 when calculating the required calculation amount Kp. To be done. Average value 107 of quantization step size of previous frame, number of macroblock matching 111 of previous frame, number 112 of effective blocks of previous frame, number 113 of effective coefficients of previous frame, average value of quantization step size of previous frame and its The difference 114 from the average value of the quantization step size of the immediately preceding frame and the processing amount 115 actually required for the encoding of the previous frame are the moving image encoding means when the encoding process of the previous frame is performed. 5 is fed back to the required calculation amount calculation means 2. In the required calculation amount calculation means 2, only one of these elements may be used, or a plurality of elements may be used in combination.

(ステップ3:動作決定ステップ)動作決定手段3は、必要演算量Kpの値をもとに、所定フレームの処理に対する動作周波数Fe(サイクル/秒)を予測する計算を行う。すなわち、符号化方式により処理時間が規定されている最小単位は1フレームであり、所定フレームの符号化処理に割り当てられた時間をTe(秒)とすると、所定フレームに必要とされる動作周波数Fe(サイクル/秒)、すなわち時間Te(秒)内に前記必要演算量Kpを符号化処理可能な動作周波数Fe(サイクル/秒)はFe=Kp/Teで表されることから、動作決定手段3は動作周波数Fe=Kp/Teを計算する。ただし、所定フレームの符号化処理に割り当てられた時間Teは、1フレームの処理の制限時間Tfから、所定フレームに対する演算量を予測する時間Tp及びプロセッサの動作周波数・動作電源電圧・基板バイアス電圧を変更する時間Tsを引いた時間である。図5に示すように、プロセッサ1および(又は)局部復号メモリ6等を含めた周辺装置がサポートする動作電源電圧・基板バイアス電圧・動作周波数がr段階(rは2以上の整数)で変更可能な場合、動作決定手段3は、F(n)>Fe且つFe>F(n−1)となる動作周波数F(n)を所定フレームの符号化処理を行う動作周波数として選択する計算を行い、その動作周波数F(n)に適する動作電源電圧Vdd(n)及び基板バイアス電圧Vbn,Vbp(n)を選択する計算を行い、プロセッサ1および(又は)局部復号メモリ6等を含めた周辺装置をその動作周波数F(n)と動作電源電圧Vdd(n)と基板バイアス電圧Vbn,Vbp(n)で動作させるように、動作電源電圧・基板バイアス電圧・動作周波数を動作制御手段4に指示する(符号102)。なお、nは1以上r以下の整数である。   (Step 3: Operation Determining Step) The operation determining means 3 performs a calculation for predicting the operating frequency Fe (cycles/second) for the processing of the predetermined frame, based on the value of the required calculation amount Kp. That is, the minimum unit in which the processing time is defined by the encoding method is one frame, and assuming that the time assigned to the encoding processing of the predetermined frame is Te (second), the operating frequency Fe required for the predetermined frame is Fe. (Cycle/second), that is, the operating frequency Fe (cycle/second) capable of encoding the required calculation amount Kp within the time Te (second) is represented by Fe=Kp/Te, and therefore the operation determining means 3 Calculates the operating frequency Fe=Kp/Te. However, the time Te assigned to the encoding process of the predetermined frame is the time Tp for predicting the amount of calculation for the predetermined frame from the time limit Tf of the processing of one frame, and the operating frequency/operating power supply voltage/substrate bias voltage It is the time obtained by subtracting the change time Ts. As shown in FIG. 5, the operating power supply voltage, the substrate bias voltage, and the operating frequency supported by the peripheral device including the processor 1 and/or the local decoding memory 6 can be changed in r stages (r is an integer of 2 or more). In this case, the operation determining means 3 performs a calculation to select the operating frequency F(n) that satisfies F(n)>Fe and Fe>F(n−1) as the operating frequency for performing the encoding process of the predetermined frame, A calculation for selecting the operating power supply voltage Vdd(n) and the substrate bias voltages Vbn, Vbp(n) suitable for the operating frequency F(n) is performed, and the peripheral device including the processor 1 and/or the local decoding memory 6 and the like is determined. The operating power supply voltage, the substrate bias voltage, and the operating frequency are instructed to the operation control means 4 so that the operating frequency F(n), the operating power supply voltage Vdd(n), and the substrate bias voltages Vbn, Vbp(n) are used ( Reference numeral 102). Note that n is an integer of 1 or more and r or less.

図5は、動作周波数・動作電源電圧・基板バイアス電圧の関係を示す図である。動作決定手段3において、各動作周波数に対し、プロセッサ1、又は、プロセッサ1及び局部復号メモリ6等を含めた周辺装置で消費される電流が所定値以下となるように動作電源電圧・基板バイアス電圧の組合せが予め設定されている。たとえば、サブスレッショルドリーク電流Istと充放電電流Icdとの関係から、各動作周波数ごとに消費電力Pが最小となる動作電源電圧Vddと基板バイアス電圧Vbn,Vbpを実験や計算等により求め、この動作電源電圧Vddと基板バイアス電圧Vbn,Vbpの組み合わせとすることが望ましい。ここで、電流の最小化を図る際、各電流要素を1つ以上用いて合計した電流を計算に用いる。なお、動作決定手段3に内蔵するハードウエアおよび(又は)プログラムで、動作周波数に応じた動作電源電圧に対し、自動的に基板バイアス電圧が計算されてもよい。また、動作決定手段3に内蔵するハードウエアおよび(又は)プログラムで、動作周波数に対し、動作電源電圧と基板バイアス電圧が計算されてもよい。   FIG. 5 is a diagram showing a relationship among operating frequency, operating power supply voltage, and substrate bias voltage. In the operation determining means 3, for each operating frequency, the operating power supply voltage and the substrate bias voltage are adjusted so that the current consumed by the processor 1 or peripheral devices including the processor 1 and the local decoding memory 6 and the like becomes equal to or less than a predetermined value. Is preset. For example, from the relationship between the subthreshold leakage current Ist and the charge/discharge current Icd, the operating power supply voltage Vdd and the substrate bias voltages Vbn and Vbp that minimize the power consumption P for each operating frequency are obtained by experiments and calculations, and this operation is performed. It is desirable to use a combination of the power supply voltage Vdd and the substrate bias voltages Vbn and Vbp. Here, when the current is minimized, the current obtained by using one or more of each current element is used for the calculation. It should be noted that the substrate bias voltage may be automatically calculated for the operating power supply voltage according to the operating frequency by the hardware and/or the program built in the operation determining means 3. Further, the operating power supply voltage and the substrate bias voltage may be calculated for the operating frequency by the hardware and/or the program built in the operation determining means 3.

(ステップ4)動作制御手段4は、動作決定手段3から指示を受けた動作電源電圧Vdd(n)及び基板バイアス電圧Vbn(n),Vbp(n)及び動作周波数F(n)の値をプロセッサ1および(又は)局部復号メモリ6等を含めた周辺装置に供給し(符号105)、その動作電源電圧Vdd(n)及び基板バイアス電圧Vbn(n),Vbp(n)及び動作周波数F(n)でプロセッサ1と周辺装置を一定に動作させる制御を行う。これにより、プロセッサ1および(又は)局部復号メモリ6等を含めた周辺装置は、一定の動作電源電圧Vdd(n)及び基板バイアス電圧Vbn(n),Vbp(n)及び動作周波数F(n)で動作することになる。具体的には、動作制御手段4に内蔵する動作電源電圧制御手段4cにより一定の動作電源電圧Vdd(n)でプロセッサ1を動作させる制御を行い、基板バイアス電圧Vbn制御手段4dによりn−チャネルMOSトランジスタに対する一定の基板バイアス電圧Vbn(n)でプロセッサ1を動作させる制御を行い、基板バイアス電圧Vbp制御手段4bによりp−チャネルMOSトランジスタに対する一定の基板バイアス電圧Vbp(n)でプロセッサ1を動作させる制御を行い、動作周波数制御手段(PLL)4bにより一定の動作周波数F(n)でプロセッサ1を一定に動作させる制御を行う。   (Step 4) The operation control means 4 uses the values of the operation power supply voltage Vdd(n) and the substrate bias voltages Vbn(n) and Vbp(n) and the operation frequency F(n) instructed by the operation determination means 3 as a processor. 1 and/or a peripheral device including the local decoding memory 6 and the like (reference numeral 105), and its operating power supply voltage Vdd(n) and substrate bias voltages Vbn(n), Vbp(n) and operating frequency F(n). ) Controls the processor 1 and peripheral devices to operate constantly. As a result, the peripheral device including the processor 1 and/or the local decoding memory 6 and the like operates at a constant operating power supply voltage Vdd(n) and substrate bias voltages Vbn(n), Vbp(n) and operating frequency F(n). Will work with. Specifically, the operation power supply voltage control means 4c built in the operation control means 4 controls the processor 1 to operate at a constant operation power supply voltage Vdd(n), and the substrate bias voltage Vbn control means 4d controls the n-channel MOS. Control is performed to operate the processor 1 with a constant substrate bias voltage Vbn(n) for the transistor, and the processor 1 is operated with the constant substrate bias voltage Vbp(n) for the p-channel MOS transistor by the substrate bias voltage Vbp control means 4b. The operating frequency control means (PLL) 4b controls the processor 1 to operate at a constant operating frequency F(n).

基板バイアス電圧制御は、基板バイアス電圧Vbn(n),Vbp(n)に対し、n−チャネルMOSトランジスタに対し適切な基板バイアス電圧Vbn(n)を印加し、p−チャネルMOSトランジスタに対し適切な基板バイアス電圧Vbp(n)を印加することにより行う。具体的には、n−チャネルMOSトランジスタに対する基板バイアス電圧Vbn(n)とグランド電位Vssとの電位差をVbbn(n)とし、p−チャネルMOSトランジスタに対する基板バイアス電圧Vbp(n)と動作電源電圧Vdd(n)との電位差をVbbp(n)とする。すなわち、
Vbn(n)=Vbbn(n)+Vss
Vbp(n)=Vbbp(n)+Vdd(n)
の関係が成り立つ。電圧Vbbn(n)とVbbp(n)と動作電源電圧Vdd(n)は独立に設定できる。ただし、Vbbn(n)は、n−チャネルMOSトランジスタのドレイン−ソース間pn接合に印加された電圧であり、この電圧が拡散電位Vφを超えないようにし、Vbbp(n)は、p−チャネルトランジスタのドレイン−ソース間pn接合に印加された電圧であり、この電圧が拡散電位−Vφを下回らないようにする。拡散電位Vφは通常0.6Vである。
The substrate bias voltage control is performed by applying an appropriate substrate bias voltage Vbn(n) to the n-channel MOS transistor with respect to the substrate bias voltages Vbn(n) and Vbp(n), and an appropriate substrate bias voltage to the p-channel MOS transistor. It is performed by applying the substrate bias voltage Vbp(n). Specifically, the potential difference between the substrate bias voltage Vbn(n) for the n-channel MOS transistor and the ground potential Vss is set to Vbbn(n), and the substrate bias voltage Vbp(n) and the operating power supply voltage Vdd for the p-channel MOS transistor are set. The potential difference from (n) is Vbbp(n). That is,
Vbbn(n)=Vbbn(n)+Vss
Vbp(n)=Vbbp(n)+Vdd(n)
The relationship is established. The voltages Vbbn(n) and Vbbp(n) and the operating power supply voltage Vdd(n) can be set independently. However, Vbbn(n) is a voltage applied to the drain-source pn junction of the n-channel MOS transistor, and this voltage should not exceed the diffusion potential Vφ, and Vbbp(n) is the p-channel transistor. Applied to the pn junction between the drain and the source of the above, so that this voltage does not fall below the diffusion potential −Vφ. The diffusion potential Vφ is usually 0.6V.

(ステップ5:動画像符号化ステップ)動画像符号化手段5は、動画像符号化処理プログラムPrg1によりコンピュータのプロセッサ1上で実現される手段であり、プロセッサ1を使用して入力フレームメモリ7に格納された入力画像データを動画像符号化を行う単位でアクセスし、符号化処理を行う手段である。すなわち、動画像符号化手段5は、入力フレームメモリ7から所定フレームの入力画像データ101を取得し、符号化して符号化データ106を生成する。ステップ4において、プロセッサ1および(又は)局部復号メモリ6等を含めた周辺装置は動作制御手段4から供給された一定の動作電源電圧Vdd(n)及び基板バイアス電圧Vbn(n),Vbp(n)及び動作周波数F(n)で動作している状態となっているため、ステップ5では、動作制御手段4がその一定の動作周波数F(n)及び動作電源電圧Vdd(n)及び基板バイアス電圧Vbn(n),Vbp(n)でプロセッサ1および(又は)局部復号メモリ6等を含めた周辺装置を動作させながら、そのプロセッサ1を使用して符号化を行う動画像符号化手段5が所定フレームの符号化を行うこととなる。たとえば動きの激しい画像(所定フレームの入力画像データ101)に対してはプロセッサ1および(又は)局部復号メモリ6等を含めた周辺装置を高い周波数で一定に動作させ、動きの少ない画像に対しては低い周波数で一定に動作させることにより低消費電力化を図ることが可能になる。さらに、動画像符号化手段5は、符号化データ106を復号する機能を有するローカルデコーダを備えており、所定フレームの符号化データ106はローカルデコーダにより復号されて局部復号フレームメモリ6に局部復号データ103として蓄積される。この所定フレームの局部復号データ103は所定フレームの次に符号化されるフレームについて必要演算量Kpを計算する際に使用される。所定フレームの符号化データ106は伝送路を通じて送信されたり、蓄積メディアに蓄積されたりする。   (Step 5: Moving picture coding step) The moving picture coding means 5 is realized by the moving picture coding processing program Prg1 on the processor 1 of the computer, and is stored in the input frame memory 7 using the processor 1. This is means for accessing the stored input image data in units of moving image encoding and performing encoding processing. That is, the moving picture coding means 5 acquires the input image data 101 of a predetermined frame from the input frame memory 7 and codes it to generate the coded data 106. In step 4, the peripheral devices including the processor 1 and/or the local decoding memory 6 etc. are supplied with constant operating power supply voltage Vdd(n) and substrate bias voltages Vbn(n), Vbp(n). ) And the operating frequency F(n), the operation control means 4 operates in step 5 at the constant operating frequency F(n), operating power supply voltage Vdd(n), and substrate bias voltage. A predetermined moving picture coding means 5 is used to perform coding by using the processor 1 while operating the peripheral devices including the processor 1 and/or the local decoding memory 6 and the like at Vbn(n) and Vbp(n). The frame will be encoded. For example, for an image with a large amount of motion (input image data 101 of a predetermined frame), peripheral devices including the processor 1 and/or the local decoding memory 6 are constantly operated at a high frequency, and for an image with little motion. It is possible to reduce the power consumption by operating constantly at a low frequency. Further, the moving picture coding means 5 is provided with a local decoder having a function of decoding the coded data 106, and the coded data 106 of a predetermined frame is decoded by the local decoder and stored in the locally decoded frame memory 6 as the locally decoded data. It is stored as 103. The locally decoded data 103 of the predetermined frame is used when calculating the necessary calculation amount Kp for the frame to be encoded next to the predetermined frame. The encoded data 106 of a predetermined frame is transmitted through a transmission path or stored in a storage medium.

なお、動作電源電圧及び基板バイアス電圧の制御は、動作周波数Fに応じて動作電源電圧Vdd、p−チャネルMOSトランジスタの基板バイアス電圧Vbp,n−チャネルMOSトランジスタの基板バイアス電圧Vbnのうち少なくとも1つの電圧だけ制御してもよい。   The control of the operating power supply voltage and the substrate bias voltage is performed according to the operating frequency F by at least one of the operating power supply voltage Vdd, the substrate bias voltage Vbp of the p-channel MOS transistor, and the substrate bias voltage Vbn of the n-channel MOS transistor. You may control only a voltage.

また、1フレームの処理に用いられる動作周波数・動作電源電圧・基板バイアス電圧を一定に動作させるだけでなく、動作決定手段3により動作周波数・動作電源電圧・基板バイアス電圧をN組(Nは正の整数)選択してもよい。この場合、N組の動作周波数・動作電源電圧・基板バイアス電圧各々の動作時間を計算し、プロセッサ1を動作させることとなる。   Further, not only the operating frequency, the operating power supply voltage, and the substrate bias voltage used for the processing of one frame are constantly operated, but also the operating frequency, the operating power supply voltage, and the substrate bias voltage are set to N sets (N is positive) by the operation determining means 3. Integer) may be selected. In this case, the operating time of each of the N sets of operating frequencies, operating power supply voltages, and substrate bias voltages is calculated, and the processor 1 is operated.

(第1の破綻回避ステップ)
符号化処理システムS1は破綻現象を回避するための第1の破綻回避手段を備え、第1の破綻回避ステップは動画像符号化ステップに割り込みを行うことで実行される。第1の破綻回避手段は、所定フレームの符号化処理が割り当てられた時間Te内に終了できないと判断された場合、符号化処理が割り当てられた時間Te内に終了できるように、通常の符号化処理の演算量を削減できる処理に切り替えて、破綻現象を回避する。このとき、処理を切り替えるタイミングTiは、割り込み処理を行って符号化処理を一時中断して算出される。また演算量を削減する処理を行うマクロブロックの数を最小限に抑えるため、符号化された処理に応じてタイミングTiの更新を行ってもよい。
(First failure avoidance step)
The encoding processing system S1 includes a first failure avoiding means for avoiding a failure phenomenon, and the first failure avoiding step is executed by interrupting the moving image encoding step. When it is determined that the encoding process of the predetermined frame cannot be completed within the allocated time Te, the first failure avoidance unit performs normal encoding so that the encoding process can be completed within the allocated time Te. The failure phenomenon is avoided by switching to processing that can reduce the amount of calculation of processing. At this time, the timing Ti at which the process is switched is calculated by performing the interrupt process and temporarily interrupting the encoding process. Further, in order to minimize the number of macroblocks that perform the process of reducing the calculation amount, the timing Ti may be updated according to the encoded process.

(切り替えタイミングTiの算出・決定)
第1の破綻回避手段を実行するタイミングTiの決定について具体的に説明する。図7は割り込みを行う際の時間と演算残量の関係を示している。1フレームの符号化処理に割り当てられている時間Te、1フレームのマクロブロック数をMBとし、1つのマクロブロックの最大演算量をKw、1つのマクロブロックで第1の破綻回避手段による処理に必要な演算量をKsとする。プロセッサ1は、処理済マクロブロック数レジスタ10から符号化処理が終了したマクロブロックの数MBi(符号117)の読み出しを行い、切り替えタイミングTiを以下に示す数式で算出する。
Ti=Te−(Ks×(MB−MBi))/F
ただし、(ステップ5)内において、符号化処理を開始する前に、MBi=0としてTiを予め算出する。Tiの更新は、予め算出された時刻Tiで行われ、その際割り込み処理により符号化処理を一時中断し、Tiの更新を行うか否かをKw×(MB−MBi)>F×(Te−Ti)か、Kw×(MB−MBi)<F×(Te−Ti)で判断する。ここで、判断する前提としてMBi≠MBである。Kw×(MB−MBi)<F×(Te−Ti)となれば、演算量に余裕があると判断され、上記の数式によりTiの更新が行われる。Kw×(MB−MBi)>F×(Te−Ti)となれば、演算量に余裕がないと判断され、第1の破綻回避手段9により演算量を削減する処理に切り替える。なお、Tiの更新を行うかの判断をする際にMBi=MBである場合は、処理を切り替えることなく符号化処理ルーチンを終了する。第1の破綻回避手段としては、下記の例1から例4が挙げられる。
(Calculation/determination of switching timing Ti)
The determination of the timing Ti at which the first failure avoidance means is executed will be specifically described. FIG. 7 shows the relationship between the time when an interrupt is made and the remaining calculation amount. The time Te allocated to the encoding processing of one frame is MB, the number of macroblocks in one frame is MB, and the maximum operation amount of one macroblock is Kw. One macroblock is required for the processing by the first failure avoidance means. Let Ks be a calculation amount. The processor 1 reads the number MBi (reference numeral 117) of the macroblocks for which the encoding processing has been completed from the processed macroblock number register 10 and calculates the switching timing Ti by the following mathematical expression.
Ti=Te-(Ks x (MB-MBi))/F
However, in (step 5), Ti is calculated in advance with MBi=0 before starting the encoding process. The update of Ti is performed at a time Ti calculated in advance, at which time the encoding process is temporarily interrupted by the interrupt process and whether Ti is updated is Kw×(MB-MBi)>F×(Te- Ti) or Kw*(MB-MBi)<F*(Te-Ti). Here, MBi≠MB as a premise for the determination. If Kw×(MB−MBi)<F×(Te−Ti), it is determined that there is a margin in the amount of calculation, and Ti is updated by the above formula. If Kw×(MB-MBi)>F×(Te-Ti), it is determined that there is no margin in the amount of calculation, and the first failure avoiding means 9 switches to the process of reducing the amount of calculation. If MBi=MB when deciding whether to update Ti, the encoding processing routine is ended without switching the processing. Examples of the first failure avoidance means include Examples 1 to 4 below.

(第1の破綻回避手段の例1)例1の第1の破綻回避手段91は、ステップ5において動画像符号化手段5が所定フレームの入力画像データ101の符号化処理ルーチンを実行している際に、上記で決定されたタイミングTiで、符号化が終了していないマクロブロックに対して色差ブロックのみを強制的に無効ブロック化する処理を行う。マクロブロックのうち色差ブロックのみ強制的に無効ブロック化する処理を行い、輝度ブロックは通常と同様に符号化処理を行うことで、画質が劣悪になるのを防ぐことができ、すべてのブロックを強制的に無効ブロック化して破綻を回避するよりも画質を改善することができる。   (Example 1 of First Failure Avoidance Means) In the first failure avoidance means 91 of Example 1, the moving picture coding means 5 executes the coding processing routine of the input image data 101 of a predetermined frame in step 5. At this time, at the timing Ti determined as described above, a process of forcibly converting only the color difference block into an invalid block is performed on the macro block that has not been encoded. By performing processing to forcibly invalidate only the color difference blocks of macro blocks and performing encoding processing for luminance blocks in the same way as usual, it is possible to prevent deterioration of image quality and force all blocks. It is possible to improve the image quality rather than to invalidate it to avoid the failure.

(第1の破綻回避手段の例2)例2の第1の破綻回避手段92は、所定フレームの符号化処理ルーチンを実行している際に、上記で決定されるタイミングTiにおいて、符号化が終了していないマクロブロックに対して強制的にフレーム内符号化処理を行う。フレーム間符号化を行う場合に比べ、最も処理量の割合を占める動きベクトル検出処理を行わないので、実際の演算量を削減することができる。また、最後のマクロブロックまで符号化処理を行うので、例1と比較して該当するマクロブロックの数が増えるが、画質をさらに改善することができる。   (Example 2 of First Failure Avoidance Means) The first failure avoidance means 92 of Example 2 performs the encoding at the timing Ti determined above while executing the encoding processing routine of the predetermined frame. The intra-frame coding process is forcibly performed on the unfinished macroblock. As compared with the case of performing inter-frame coding, since the motion vector detection processing that occupies the most processing amount is not performed, the actual calculation amount can be reduced. In addition, since the coding process is performed up to the last macroblock, the number of corresponding macroblocks is increased as compared with Example 1, but the image quality can be further improved.

(第1の破綻回避手段の例3)例3の第1の破綻回避手段93は、所定フレームの符号化処理ルーチンを実行している際に、上記で決定されるタイミングTiにおいて、符号化が終了していないマクロブロックに対し、強制的に動きベクトルの大きさを0としてフレーム間符号化処理を行う。例3は、動きベクトル検出処理を行わずにフレーム間符号化処理を行うため、演算量の削減量は小さく該当するマクロブロックの数は増えるが、次のフレームの符号化処理に与える影響は例2に比べ小さく、画質が劣悪になるのを、さらに改善することができる。   (Example 3 of First Failure Avoidance Means) The first failure avoidance means 93 of Example 3 performs the encoding at the timing Ti determined above while executing the encoding processing routine of the predetermined frame. Inter-frame coding processing is performed on the unfinished macroblock by forcibly setting the magnitude of the motion vector to 0. In the example 3, since the inter-frame coding process is performed without performing the motion vector detection process, the reduction amount of the calculation amount is small and the number of applicable macroblocks is increased, but the influence on the coding process of the next frame is an example. It is smaller than 2 and the deterioration of the image quality can be further improved.

(第1の破綻回避手段の例4)例4の第1の破綻回避手段94は、上記で決定されるタイミングTiにおいて、符号化が終了していないマクロブロックに対して強制的に量子化ステップサイズを大きくして符号化処理を行う。これにより、当該マクロブロックに対して有効ブロック数、有効係数の数の発生が小さくなり、符号化処理のうち、有効ブロックに対して行われる処理、有効係数に対して行われる可変長符号化処理の回数を削減することができる。   (Example 4 of First Failure Avoidance Means) The first failure avoidance means 94 of Example 4 forcibly performs a quantization step on a macroblock that has not been encoded at the timing Ti determined above. Encoding is performed by increasing the size. As a result, the number of valid blocks and the number of valid coefficients are reduced for the macroblock, and among the coding processes, the process performed on the valid block and the variable length coding process performed on the valid coefficient. The number of times can be reduced.

上記第1の破綻回避手段の各例は、通常の符号化処理の内容を省略し、強制的に動きベクトルを0としたり、有効ブロック数、有効係数の発生を抑えることで必要演算量を削減している。このため、所定フレームで第1の破綻回避手段による破綻回避処理を行うことにより、次のフレームの処理において、所定フレームで破綻回避処理を実行したマクロブロックに対応する、次のフレームのマクロブロックでフレーム間符号化処理を行った場合、画質に影響を及ぼす可能性がある。このため、所定フレームで破綻回避処理による画質劣化の防止を図ったにも関わらず、次のフレームに画質が劣悪になる可能性がある。   In each of the examples of the first failure avoidance means described above, the content of normal encoding processing is omitted, and the motion vector is forcibly set to 0, or the number of effective blocks and the generation of effective coefficients are suppressed, thereby reducing the required calculation amount. is doing. Therefore, by performing the failure avoidance processing by the first failure avoidance means in a predetermined frame, in the processing of the next frame, the macro block of the next frame corresponding to the macro block for which the failure avoidance processing is executed in the predetermined frame is performed. When the inter-frame coding process is performed, the image quality may be affected. For this reason, there is a possibility that the image quality will deteriorate in the next frame even though the image quality deterioration is prevented in the predetermined frame by the failure avoidance processing.

そこで、所定フレームにおいて第1の破綻回避手段を実行したマクロブロックに対応する、次のフレームのマクロブロックの符号化処理への影響を緩和するため、当該マクロブロックに対し量子化ステップサイズを小さくして符号化処理を行う緩和手段95により緩和処理を行う。この処理により、対応するマクロブロックに割り当てられる発生符号量が大きくなり、マクロブロックから得られる情報を大きくして画質の改善を図ることができる。   Therefore, in order to mitigate the influence on the encoding process of the macroblock of the next frame corresponding to the macroblock for which the first failure avoidance means is executed in the predetermined frame, the quantization step size is reduced for the macroblock. The relaxation processing is performed by the relaxation means 95 that performs the encoding processing. By this processing, the generated code amount assigned to the corresponding macroblock is increased, the information obtained from the macroblock is increased, and the image quality can be improved.

(証明1)
以下に、プロセッサの動作周波数を複数回変更しながら一のフレームを符号化する従来技術と比較して、本願発明がよりサブスレッショルドリーク電流による消費電力を低減できることを証明する。たとえば、プロセッサ1の基板バイアス電圧及び動作周波数は図5に示すようにr段階に可変とし、任意の一のフレームの必要演算量をKtとし、そのフレームの処理に割り当てられる時間をTtとする。図6(a)に示すように、動作周波数をFtと設定し、プロセッサ1を動作周波数Ftで動作させるときの基板バイアス電圧をVbp、Vbnとし、基板バイアス電圧Vbp、Vbnに適するしきい値電圧をVtとし、時間Ttで必要演算量Ktの処理が終了する場合をCase1とし、図6(b)に示すように、初期値の動作周波数をh*Ftと設定し、プロセッサを動作周波数h*Ftで動作させるときの基板バイアス電圧をVbp1、Vbn1とし、基板バイアス電圧Vbp1、Vbn1に適するしきい値電圧をVt1とし、時間T1が経過した時点でプロセッサの動作周波数をh*Ft/2に変更し、プロセッサ1を動作周波数h*Ft/2で動作させるときの基板バイアス電圧をVbp2、Vbn2とし、基板バイアス電圧Vbp2、Vbn2に適するしきい値電圧をVt2とし、時間T1+T2で必要演算量Ktの処理が終了する場合をCase2とし、各Case1,Case2について前記任意の一のフレームを符号化する場合を考えてみる。ただし、しきい値電圧についてVt1>Vt>Vt2であり、サブスレッショルドリーク電流による消費電力は、
Pst=Vdd×I×10^(−Vt/S)
:定数、Vdd:動作電源電圧、Vgs:ゲート−ソース間電圧、
Vt:しきい値電圧、S:サブスレッショルドswing
と表される。これを用いてCase1のサブスレッショルドリーク電流による消費電力Pst1とCase2のサブスレッショルドリーク電流による消費電力Pst2を計算すると、
Pst1=Vdd×I×10^(−Vt/S)×Tt
Pst2=Vdd×I×10^(−Vt1/S)×T1+I×10^(−Vt2/S)×T2
となり、
Pst1:Pst2=10^(−Vt/S)×Tt:(10^(−Vt1/S)×T1+10^(−Vt1/S)×T2)
となる。ここで、たとえばh=1.5、Ta=1/3×Tt、Tb=2/3×Tt、Vt1=3×S,Vt2=S,Vt=2×Sとすると、
Pst1:Pst2=10−2:(10−3/3+10−1×2/3)
≒0.01:0.07
となり、Pst1<Pst2となる。すなわち、決められた演算量を一定時間で処理する場合、同一演算量Ktにもかかわらず、Case1の場合のように、その時間内で処理が終了可能な最小の動作周波数により、その処理時間を通してプロセッサの基板バイアス電圧を一定に動作させるほうが、従来のように処理時間中に動作周波数を変更するCase2の場合よりも低消費電力であることがわかる。したがって、一定の基板バイアス電圧及び動作周波数でプロセッサ1を動作させながら一のフレームの符号化処理を行う本発明によれば、ブロックごとに基板バイアス電圧及び動作周波数が決定されるため一のフレームの符号化中に何度も動作周波数が変更される従来技術と比較して、低消費電力化が図られることがわかる。
(Proof 1)
Below, it will be proved that the present invention can further reduce the power consumption due to the subthreshold leakage current, as compared with the conventional technique in which one frame is encoded while changing the operating frequency of the processor a plurality of times. For example, the substrate bias voltage and the operating frequency of the processor 1 are variable in r stages as shown in FIG. 5, the required calculation amount of any one frame is Kt, and the time allocated to the processing of that frame is Tt. As shown in FIG. 6A, the operating frequency is set to Ft, the substrate bias voltage when operating the processor 1 at the operating frequency Ft is set to Vbp and Vbn, and the threshold voltage suitable for the substrate bias voltages Vbp and Vbn is set. Is set to Vt, the case where the processing of the required calculation amount Kt ends at time Tt is set to Case 1, and the operating frequency of the initial value is set to h*Ft as shown in FIG. The substrate bias voltage when operating at Ft is Vbp1 and Vbn1, the threshold voltage suitable for the substrate bias voltages Vbp1 and Vbn1 is Vt1, and the operating frequency of the processor is changed to h*Ft/2 when time T1 elapses. Then, the substrate bias voltage when operating the processor 1 at the operating frequency h*Ft/2 is set to Vbp2 and Vbn2, the threshold voltage suitable for the substrate bias voltages Vbp2 and Vbn2 is set to Vt2, and the required calculation amount Kt is calculated at the time T1+T2. Consider the case where the processing is terminated as Case 2, and the case where the arbitrary one frame is encoded for each of Case 1 and Case 2. However, the threshold voltage is Vt1>Vt>Vt2, and the power consumption due to the subthreshold leakage current is
Pst=Vdd×I 0 ×10^(-Vt/S)
I 0 : constant, Vdd: operating power supply voltage, Vgs: gate-source voltage,
Vt: threshold voltage, S: subthreshold swing
Is expressed as Using this, the power consumption Pst1 due to the sub-threshold leakage current of Case1 and the power consumption Pst2 due to the sub-threshold leakage current of Case2 are calculated,
Pst1 = Vdd × I 0 × 10 ^ (- Vt / S) × Tt
Pst2 = Vdd × I 0 × 10 ^ (- Vt1 / S) × T1 + I 0 × 10 ^ (- Vt2 / S) × T2
Next to
Pst1:Pst2=10^(-Vt/S)*Tt: (10^(-Vt1/S)*T1+10^(-Vt1/S)*T2)
Becomes Here, for example, if h=1.5, Ta=1/3×Tt, Tb=2/3×Tt, Vt1=3×S, Vt2=S, Vt=2×S,
Pst1:Pst2=10 −2 :(10 −3 /3+10 −1 ×2/3)
≈0.01:0.07
And Pst1<Pst2. That is, when processing a predetermined amount of calculation for a certain period of time, despite the same amount of calculation Kt, as in the case of Case 1, the minimum operating frequency at which the process can be completed within that period of time results in the entire processing time. It can be seen that operating the substrate bias voltage of the processor at a constant level consumes less power than in the case of Case 2 in which the operating frequency is changed during the processing time as in the conventional case. Therefore, according to the present invention, in which the encoding process for one frame is performed while operating the processor 1 at a constant substrate bias voltage and operating frequency, the substrate bias voltage and operating frequency are determined for each block, so that one frame is processed. It can be seen that the power consumption is reduced as compared with the conventional technology in which the operating frequency is changed many times during encoding.

(証明2)
以下に、プロセッサの動作電源電圧及び動作周波数を複数回変更しながら一のフレームを符号化する従来技術と比較して、本願発明がより低消費電力化を図ることができることを証明する。たとえば、ある特定の時間Ttにある特定の演算量Ktを行う場合、その特定の時間の間は、同一周波数で制御を行い、周波数Ftを
Ft=Kt/Tt
に設定すると低消費電力を実現できる。たとえば、プロセッサ1の動作電源電圧及び動作周波数は図5に示すようにr段階に可変とし、任意の一のフレームの必要演算量をKtとし、そのフレームの処理に割り当てられる時間をTtとする。図6(a)に示すように、動作周波数をFtと設定し、プロセッサ1を動作周波数Ftで動作させるときの動作電源電圧をVddとし、時間Ttで必要演算量Ktの処理が終了する場合(すなわち、動作周波数が一定の場合)をCase1とし、図6(b)に示すように、初期値の動作周波数をh*Ftと設定し、プロセッサを動作周波数h*Ftで動作させるときの動作電源電圧をV1とし、時間T1が経過した時点でプロセッサの動作周波数をh*Ft/2に変更し、プロセッサ1を動作周波数h*Ft/2で動作させるときの動作電源電圧をV2とし、時間T1+T2で必要演算量Ktの処理が終了する場合(すなわち、動作周波数の切り替えが1回行われる場合)をCase2とし、各Case1,Case2について前記任意の一のフレームを符号化する場合を考えてみる。どちらも同一の演算量、すなわちKt(サイクル)となる。一方、消費電力は、
P=α×C×f×Vdd×t
α:係数、C:プロセッサのトランジスタ数
f:動作周波数、Vdd:動作電源電圧、t:動作時間
で表される。これを用いてCase1の消費電力PaとCase2の消費電力Pbを計算すると、
Pa=α×C×Ft×V×Tt
Pb=α×C×(h×Ft)×V1×T1+α×C×(h×Ft/2)×V2×T2
となり、
Pa:Pb=V×Tt:(h×V1×T1+(h/2)×V2×T2)
となる。ここでたとえばh=1.5、T1=1/3×Tt、Tb=2/3×Tt、V=1,V1=1.5,V2=0.75とすると、
Pa:Pb=1:(1.5×1.5/3+(1.5/2)×0.75×(2/3)
≒1:1.41
となり、Pa<Pbとなる。すなわち、決められた演算量を一定時間で処理する場合、同一演算量Ktにもかかわらず、Case1の場合のように、その時間内で処理が終了可能な最小の動作周波数により、その処理時間を通してプロセッサを一定に動作させるほうが、従来のように処理時間中に動作周波数を変更するCase2場合よりも低消費電力であることがわかる。したがって、一定の動作電源電圧及び動作周波数でプロセッサ1を動作させながら一のフレームの符号化処理を行う本発明によれば、ブロックごとに動作電源電圧及び動作周波数が決定されるため一のフレームの符号化中に何度も動作電源電圧及び動作周波数が変更される従来技術と比較して、低消費電力化が図られることがわかる。
(Proof 2)
Below, it will be proved that the present invention can achieve lower power consumption as compared with the conventional technology in which one frame is encoded while changing the operating power supply voltage and operating frequency of the processor a plurality of times. For example, when a certain amount of calculation Kt is performed at a certain time Tt, control is performed at the same frequency during the certain time, and the frequency Ft is Ft=Kt/Tt.
When set to, low power consumption can be realized. For example, the operating power supply voltage and operating frequency of the processor 1 are variable in r stages as shown in FIG. 5, the required calculation amount of any one frame is Kt, and the time allocated to the processing of that frame is Tt. As shown in FIG. 6A, when the operating frequency is set to Ft, the operating power supply voltage when operating the processor 1 at the operating frequency Ft is set to Vdd, and the processing of the required calculation amount Kt ends at time Tt ( That is, (when the operating frequency is constant) is set to Case 1, and the operating frequency of the initial value is set to h*Ft as shown in FIG. 6B, and the operating power supply for operating the processor at the operating frequency h*Ft. The voltage is V1, the operating frequency of the processor is changed to h*Ft/2 when the time T1 has elapsed, the operating power supply voltage when operating the processor 1 at the operating frequency h*Ft/2 is V2, and the time T1+T2 Consider that the case where the processing of the required calculation amount Kt is completed (that is, the operation frequency is switched once) is set as Case 2 and the arbitrary one frame is encoded for each of Case 1 and Case 2. Both have the same calculation amount, that is, Kt (cycle). On the other hand, the power consumption is
P=α×C×f×Vdd 2 ×t
α: coefficient, C: number of transistors of processor f: operating frequency, Vdd: operating power supply voltage, t: operating time. When the power consumption Pa of Case 1 and the power consumption Pb of Case 2 are calculated using this,
Pa=α×C×Ft×V 2 ×Tt
Pb=α×C×(h×Ft)×V1 2 ×T1+α×C×(h×Ft/2)×V2 2 ×T2
Next to
Pa: Pb=V 2 ×Tt: (h×V1 2 ×T1+(h/2)×V2 2 ×T2)
Becomes Here, for example, if h=1.5, T1=1/3×Tt, Tb=2/3×Tt, V=1, V1=1.5, V2=0.75,
Pa:Pb=1 2 : (1.5×1.5 2 /3+(1.5/ 2 )×0.75 2 ×(2/3)
≈ 1:1.41
And Pa<Pb. That is, when processing a predetermined amount of calculation for a fixed time, despite the same amount of calculation Kt, as in Case 1, the minimum operation frequency at which the processing can be completed within that time is used throughout the processing time. It can be seen that the constant power consumption of the processor is lower than that of the case 2 in which the operating frequency is changed during the processing time as in the conventional case. Therefore, according to the present invention in which the encoding processing of one frame is performed while operating the processor 1 at a constant operating power supply voltage and operating frequency, the operating power supply voltage and operating frequency are determined for each block, so that one frame is processed. It can be seen that the power consumption can be reduced as compared with the conventional technique in which the operating power supply voltage and the operating frequency are changed many times during encoding.

なお、プロセッサに用意されている動作周波数において、予測された動作周波数以上の動作周波数と予測された動作周波数より低い動作周波数を選択し、予め定められたタイミングで割り込みを行い、2段階に動作周波数等を制御してもよい。その割り込み時点において、必要演算量計算手段で算出された所定フレームの必要演算量の残量が、符号化又は復号化処理手段による所定フレームの符号化又は復号化処理に実際に必要な演算量の残量よりも小さい場合は、切替タイミングを早めて、高い動作周波数で動作する時間を長くするようにしても良い。   In the operating frequency prepared for the processor, select an operating frequency that is equal to or higher than the predicted operating frequency and an operating frequency that is lower than the predicted operating frequency, interrupt at a predetermined timing, and operate in two steps. Etc. may be controlled. At the time of the interruption, the remaining amount of the necessary calculation amount of the predetermined frame calculated by the necessary calculation amount calculation means is the amount of calculation actually required for the encoding or decoding processing of the predetermined frame by the encoding or decoding processing means. If it is smaller than the remaining amount, the switching timing may be advanced to prolong the time for operating at a high operating frequency.

さらに、動画像符号化処理システムS1は、上記第1の破綻回避手段により所定フレームの符号化処理の演算量が削減された場合に、所定フレームよりも後に符号化処理される後続フレームの必要演算量を増加させるようにしても良い。この後続フレームの必要演算量を増加させる処理は、所定フレームの後に符号化処理が行われる後続フレームの必要演算量計算手段2の処理において、後続フレームの必要演算量Kpを所定値だけ増加させる処理を行うものであり、後続フレームの必要演算量計算ステップ(Step2)内で実行される。具体的には、所定フレームの符号化処理の後に行われる後続フレームの必要演算量計算ステップ内において、必要演算量Kpをm倍(mは1以上の実数)する。たとえばm=1.1とすると、算出した必要演算量Kpに対し、10%の余裕を持たせる(増加させる)ことができる。また、必要演算量Kpに実数n(nは0以上の実数)を加算しても良く、算出された必要演算量の値に関わらず一定の値で余裕を持たせる(増加させる)ことができる。上述の例を用いると、最終的に算出される必要演算量Kpは、
Kp=G(Z)×m ・・・(数式1)
Kp=G(Z)+n ・・・(数式2)
により求められる。2式を組み合わせて、
Kp=G(Z)×m+n ・・・(数式3)
としてもよい。
Furthermore, the moving image coding processing system S1 requires the necessary calculation of the subsequent frame that is coded after the predetermined frame when the calculation amount of the coding process of the predetermined frame is reduced by the first failure avoidance means. The amount may be increased. The process of increasing the necessary calculation amount of the subsequent frame is a process of increasing the necessary calculation amount Kp of the subsequent frame by a predetermined value in the process of the necessary calculation amount calculation unit 2 of the subsequent frame in which the encoding process is performed after the predetermined frame. And is executed in the necessary calculation amount calculation step (Step 2) of the subsequent frame. Specifically, the necessary calculation amount Kp is multiplied by m (m is a real number of 1 or more) in the necessary calculation amount calculation step of the subsequent frame performed after the encoding process of the predetermined frame. For example, if m=1.1, it is possible to allow (increase) a 10% margin with respect to the calculated required calculation amount Kp. Further, a real number n (n is a real number of 0 or more) may be added to the required calculation amount Kp, and a margin can be provided (increased) at a constant value regardless of the calculated value of the required calculation amount. .. Using the above example, the required calculation amount Kp finally calculated is
Kp=G(Z)×m (Formula 1)
Kp=G(Z)+n (Equation 2)
Required by. Combining the two formulas,
Kp=G(Z)×m+n (Equation 3)
May be

また、所定フレームの必要演算量が実際に必要な演算量よりも小さく、第1の破綻回避手段を実行した場合は、後続フレームの必要演算量計算ステップ内において必要演算量を算出する関数G(Z)に用いたいずれかの要素の係数を、m倍(mは1以上の実数)する。たとえば、破綻回避処理を実行したためにマクロブロックマッチング回数Mが小さくなってしまった場合、上述の例を用いると、次のフレームで算出される必要演算量Kpは、
Kp=j+(α×m)×M+βB+γC+δZ+ε△Qprev
Kp=j+(α+n)×M+βB+γC+δZ+ε△Qprev
により求められる。2式を組み合わせて
Kp=j+(α×m+n)×M+βB+γC+δZ+ε△Qprev
としてもよい。また、要素一つだけに限らず、いくつかの要素を増加しても良い。関数に用いるすべての要素をm倍(mは1以上の実数)、あるいはすべての要素に実数n(nは0以上の実数)を加算しても良く、上記の(数式1)、(数式2)、(数式3)のように算出された必要演算量の値に関わらず一定の値で増加させても良い。
Further, when the required calculation amount of the predetermined frame is smaller than the actual calculation amount and the first failure avoidance means is executed, the function G() for calculating the required calculation amount in the necessary calculation amount calculation step of the subsequent frame. The coefficient of any element used for Z) is multiplied by m (m is a real number of 1 or more). For example, when the macroblock matching count M becomes small due to the execution of the failure avoidance process, using the above example, the required calculation amount Kp calculated in the next frame is
Kp=j+(α×m)×M+βB+γC+δZ+εΔQprev
Kp=j+(α+n)×M+βB+γC+δZ+εΔQprev
Required by. Combining two equations Kp=j+(α×m+n)×M+βB+γC+δZ+εΔQprev
May be Further, the number of elements is not limited to one and may be increased. All elements used in the function may be multiplied by m (m is a real number of 1 or more), or all elements may be added with a real number n (n is a real number of 0 or more). ), (3) may be increased by a constant value regardless of the value of the required calculation amount calculated.

(第2の実施の形態)
図8は、本実施の形態の動画像符号化処理システムS2の概略ブロック図であり、図9は、このシステムS2により実現される動画像符号化方法を説明する概略フローチャートである。本実施の形態の動画像符号化処理システムS2は、第2の破綻回避手段96を備える。第2の破綻回避手段96は、所定フレームの符号化処理が終了した後に、所定フレームにおける必要演算量算出手段で算出された必要演算量Kpと所定フレームの符号化処理に実際に要した演算量とを比較して、「必要演算量Kp<実際に要した演算量」である場合は、所定フレームの後に符号化処理が行われる後続フレームの必要演算量計算手段の処理において、後続フレームの必要演算量Kpを増加させる機能を備える。その他の点については第1の実施の形態と同様である。動画像符号化処理システムS2は、第1の破綻回避手段・ステップと第2の破綻回避手段・ステップの両方を備えるようにしても良いし、第2の破綻回避手段・ステップのみを備えても良い。
(Second embodiment)
FIG. 8 is a schematic block diagram of the moving picture coding processing system S2 of the present embodiment, and FIG. 9 is a schematic flowchart explaining a moving picture coding method realized by this system S2. The moving image coding processing system S2 of the present embodiment includes a second failure avoiding means 96. The second failure avoidance means 96, after the encoding process of the predetermined frame is completed, the required operation amount Kp calculated by the required operation amount calculation means in the predetermined frame and the operation amount actually required for the encoding process of the predetermined frame. In the case of "required calculation amount Kp<actually required calculation amount", the following calculation is required in the processing of the calculation amount required calculation means of the subsequent frame in which the encoding process is performed after the predetermined frame. It has a function of increasing the calculation amount Kp. The other points are similar to those of the first embodiment. The moving image coding processing system S2 may include both the first failure avoidance means/steps and the second failure avoidance means/steps, or may include only the second failure avoidance means/steps. good.

(第2の破綻回避ステップ)
第2の破綻回避手段96は、必要演算量計算手段2の一部として機能する手段であり、必要演算量計算ステップ(Step2)内で実行される。具体的には、第2の破綻回避手段96により、所定フレームにおける必要演算量算出手段で算出された必要演算量Kpと所定フレームの符号化処理に実際に要した演算量とを比較して、「必要演算量Kp<実際に要した演算量」である場合は、所定フレームの後に符号化処理が行われる後続フレームの必要演算量計算手段の処理において、後続フレームの必要演算量Kpを増加させる。後続フレームの必要演算量Kpを増加させるには、たとえば、所定フレームよりも後に符号化処理される後続フレームの必要演算量計算ステップ内において、必要演算量Kpをm倍(mは1以上の実数)する。m=1.1とすると、算出した必要演算量Kpに対し、10%の余裕を持たせる(増加させる)ことができる。また、必要演算量Kpに実数n(nは0以上の実数)を加算しても良く、算出された必要演算量の値に関わらず一定の値で余裕を持たせる(増加させる)ことができる。上述の例を用いると、最終的に算出される必要演算量Kpは、
Kp=G(Z)×m ・・・(数式1)
Kp=G(Z)+n ・・・(数式2)
により求められる。2式を組み合わせて、
Kp=G(Z)×m+n ・・・(数式3)
としてもよい。
(Second failure avoidance step)
The second failure avoidance unit 96 is a unit that functions as a part of the required calculation amount calculation unit 2, and is executed within the required calculation amount calculation step (Step 2). Specifically, the second failure avoidance unit 96 compares the required calculation amount Kp calculated by the necessary calculation amount calculation unit in a predetermined frame with the calculation amount actually required for the encoding process of the predetermined frame, When “required calculation amount Kp<actual calculation amount required”, the necessary calculation amount Kp of the subsequent frame is increased in the process of the necessary calculation amount calculation means of the subsequent frame in which the encoding process is performed after the predetermined frame. .. In order to increase the required calculation amount Kp of the subsequent frame, for example, the required calculation amount Kp is multiplied by m (m is a real number of 1 or more) in the calculation step of the required calculation amount of the subsequent frame which is encoded after the predetermined frame. ) Do. If m=1.1, it is possible to allow (increase) a margin of 10% for the calculated required calculation amount Kp. Further, a real number n (n is a real number of 0 or more) may be added to the required calculation amount Kp, and a margin can be provided (increased) at a constant value regardless of the calculated value of the required calculation amount. .. Using the above example, the required calculation amount Kp finally calculated is
Kp=G(Z)×m (Formula 1)
Kp=G(Z)+n (Equation 2)
Required by. Combining the two formulas,
Kp=G(Z)×m+n (Equation 3)
May be

また、所定フレームの必要演算量が実際に必要な演算量よりも小さく、第1の破綻回避手段を実行した場合は、後続フレームの必要演算量計算ステップ内において必要演算量を算出する関数G(Z)に用いたいずれかの要素の係数を、m倍(mは1以上の実数)する。たとえば、破綻回避処理を実行したためにマクロブロックマッチング回数Mが小さくなってしまった場合、上述の例を用いると、次のフレームで算出される必要演算量Kpは、
Kp=j+(α×m)×M+βB+γC+δZ+ε△Qprev
Kp=j+(α+n)×M+βB+γC+δZ+ε△Qprev
により求められる。2式を組み合わせて
Kp=j+(α×m+n)×M+βB+γC+δZ+ε△Qprev
としてもよい。また、要素一つだけに限らず、いくつかの要素を増加しても良い。関数に用いるすべての要素をm倍(mは1以上の実数)、あるいはすべての要素に実数n(nは0以上の実数)を加算しても良く、上記の(数式1)、(数式2)、(数式3)のように算出された必要演算量の値に関わらず一定の値で増加させても良い。
Further, when the required calculation amount of the predetermined frame is smaller than the actual calculation amount and the first failure avoidance means is executed, the function G() for calculating the required calculation amount in the necessary calculation amount calculation step of the subsequent frame. The coefficient of any element used for Z) is multiplied by m (m is a real number of 1 or more). For example, when the macroblock matching count M becomes small due to the execution of the failure avoidance process, using the above example, the required calculation amount Kp calculated in the next frame is
Kp=j+(α×m)×M+βB+γC+δZ+εΔQprev
Kp=j+(α+n)×M+βB+γC+δZ+εΔQprev
Required by. Combining two equations Kp=j+(α×m+n)×M+βB+γC+δZ+εΔQprev
May be Further, the number of elements is not limited to one and may be increased. All elements used in the function may be multiplied by m (m is a real number of 1 or more), or all elements may be added with a real number n (n is a real number of 0 or more). ), (3) may be increased by a constant value regardless of the value of the required calculation amount calculated.

(第3の実施の形態)
本発明の第3の実施の形態の動画像符号化処理システムS3は、第1の破綻回避手段に換えて所定フレームの符号化処理に割り当てられた時間が経過した際に、符号化処理が完了していない場合は破綻現象を回避する処理を行う第3の破綻回避手段を備える。その他の点については第2の実施の形態と同様である。
(Third Embodiment)
The moving picture coding processing system S3 according to the third embodiment of the present invention completes the coding processing when the time allotted for the coding processing of a predetermined frame in place of the first failure avoidance means has elapsed. If not, a third failure avoiding means for performing processing for avoiding the failure phenomenon is provided. The other points are similar to those of the second embodiment.

(第3の破綻回避ステップ)
図10は、第3の破綻回避手段97を備える動画像符号化処理システムS3の概略ブロック図であり、図11は、このシステムS3により実現される動画像符号化処理方法を説明する概略フローチャートである。第3の破綻回避手段97は、ステップ5において動画像符号化手段5が所定フレームの入力画像データ101の符号化処理ルーチンを実行して、割り当てられた時間Teが経過した際に符号化処理が終了しているか終了していないかを判定し、符号化処理が終了していない場合は、次のフレームに割り当てられている時間を用いて符号化処理が完了するまで所定フレームの処理時間を延長することにより、符号化処理が完了できないという破綻現象を回避できるようにしている。
(Third failure avoidance step)
FIG. 10 is a schematic block diagram of a moving picture coding processing system S3 including the third failure avoiding means 97, and FIG. 11 is a schematic flowchart explaining a moving picture coding processing method realized by this system S3. is there. The third failure avoidance means 97 executes the encoding processing routine when the moving image encoding means 5 executes the encoding processing routine of the input image data 101 of the predetermined frame in step 5 and the assigned time Te has elapsed. If the coding process is not finished by judging whether it is finished or not, the processing time of the predetermined frame is extended until the coding process is completed by using the time allocated to the next frame. By doing so, the failure phenomenon that the encoding process cannot be completed can be avoided.

(入力フレームメモリ)
以下に、第3の破綻回避手段97について具体的に説明する。まず、1フレームの処理時間が符号化方式(MPEGなど)の規定などにより時間Tfに制限されている理由の1つとして、入力画像のデータがフレームレートの間隔で入力フレームメモリに1フレームごと記憶され、入力画像のフレームレートの間隔で入力フレームメモリのデータが1フレームずつ更新されるということが挙げられる。入力フレームメモリのデータが更新される間隔はフレームレートによって異なり、1フレームの符号化処理時間は入力画像のフレームレートにより制限された時間が割り当てられる。ここで、入力フレームメモリ7は複数フレーム分(ここでは2フレーム分)のデータを記憶できるメモリであり、データの先頭アドレスはメモリのアドレスで指定されているものとし、データは指定されたアドレスから順次格納されていくものとする。
(Input frame memory)
The third failure avoidance means 97 will be specifically described below. First, as one of the reasons that the processing time of one frame is limited to the time Tf due to the regulation of the encoding method (MPEG, etc.), the data of the input image is stored in the input frame memory at intervals of the frame rate in the input frame memory. That is, the data in the input frame memory is updated frame by frame at intervals of the frame rate of the input image. The interval at which the data in the input frame memory is updated differs depending on the frame rate, and the encoding processing time for one frame is assigned a time limited by the frame rate of the input image. Here, the input frame memory 7 is a memory capable of storing data for a plurality of frames (here, two frames), the start address of the data is designated by the address of the memory, and the data is stored from the designated address. It shall be stored sequentially.

(処理時間制御)
図12は通常の符号化処理の場合の処理時間推移を示す図であり、図13,図14,図15は第3の破綻回避手段によって第3の破綻回避ステップを実行した符号化処理の場合の処理時間推移を示す図である。たとえば、実時間処理において、1秒間に30枚の画像データが入力されれば、外部メモリのデータは1/30秒毎に更新される。動画像符号化処理システムで1秒間に10枚の画像を符号化する場合、3枚に1枚の割合で入力画像が符号化されることになる。ここで、符号化される1フレ−ムに割り当てられる時間はTf=1/10秒であり、入力画像のフレームの番号を#1,#2,#3,#4,・・・とすると、通常符号化されるフレームの番号は,図12で示すように#1,#4,#7,#10,・・・となる。第3の破綻回避手段は、所定フレームにおいて、必要演算量計算手段により算出された必要演算量Kpが実際に必要な演算量Kmよりも小さい場合、つまり、符号化処理に割り当てられた時間が経過したにもかかわらず、符号化処理が終了されない場合に対し、次フレームに割り当てられている符号化処理時間を用いて所定フレームの処理時間Teを延長し、所定フレームの符号化処理を続行して処理を完了させるために、入力フレームメモリの状態信号を制御する手段である。第3の破綻回避手段としては、以下の例1、例2が挙げられる。
(Processing time control)
FIG. 12 is a diagram showing the transition of processing time in the case of normal encoding processing, and FIGS. 13, 14, and 15 are cases of encoding processing in which the third failure avoidance step is executed by the third failure avoidance means. It is a figure which shows the transition of the processing time of. For example, in real-time processing, if 30 image data are input per second, the data in the external memory is updated every 1/30 second. When 10 images are coded per second by the moving picture coding processing system, the input image is coded at a ratio of 1 in 3 images. Here, the time assigned to one frame to be encoded is Tf=1/10 seconds, and the frame numbers of the input image are #1, #2, #3, #4,... The numbers of the normally encoded frames are #1, #4, #7, #10,... As shown in FIG. The third failure avoidance means, when the required calculation amount Kp calculated by the necessary calculation amount calculation means is smaller than the actually required calculation amount Km in a predetermined frame, that is, the time allotted for the encoding process has elapsed. However, even if the coding process is not completed, the processing time Te of the predetermined frame is extended by using the coding process time assigned to the next frame, and the coding process of the predetermined frame is continued. It is a means of controlling the status signal of the input frame memory to complete the process. Examples of the third failure avoidance means include Examples 1 and 2 below.

(第3の破綻回避手段の例1)第3の破綻回避手段97は後述する手順1から手順4を実行する機能を備える。(手順1)所定フレームにおいて符号化処理に割り当てられた時間Teの延長を行うため、入力フレームメモリの状態制御を行い、所定フレームの符号化処理を続行する。(手順2)所定フレームの符号化処理が完了した際に、次フレームの符号化処理可能な時間を算出する。(手順3)入力フレームメモリ状態の切り替え制御を行う。以下、手順1から手順3について詳述する。   (Example 1 of Third Failure Avoidance Means) The third failure avoidance means 97 has a function of executing procedures 1 to 4 described later. (Procedure 1) The state Te of the input frame memory is controlled to extend the time Te allocated to the encoding process in the predetermined frame, and the encoding process of the predetermined frame is continued. (Procedure 2) When the encoding process of the predetermined frame is completed, the time during which the encoding process of the next frame is possible is calculated. (Procedure 3) Input frame memory state switching control is performed. Hereinafter, the procedures 1 to 3 will be described in detail.

(手順1:時間Teの延長)図13に、破綻回避手段97による符号化処理時間の推移を示す。上記の例を用いると、#4のフレームデータは入力フレームメモリ7bに記憶され、#7のフレームデータは入力フレームメモリ7bに記憶されている。ここで、#4の符号化が符号化処理に割り当てられた時間Teにおいて終了できなかった場合、#4の符号化処理時間Teを延長して処理を続行するためには、#4のフレームデータを保持する必要がある。そこで、入力フレームメモリの状態制御を行い、入力フレームメモリ7bは書き込み不可の状態に制御し、入力フレームメモリ7aを書き込み可能な状態に維持し、#8のフレームデータの書き込み先を入力フレームメモリ7aに変更する。入力フレームメモリ7bは#4のフレームデータを保持でき、#4の符号化処理は続行可能となるので、#4の符号化処理が完了するまで時間を延長することができる。   (Procedure 1: Extension of time Te) FIG. 13 shows the transition of the encoding processing time by the failure avoiding means 97. Using the above example, the #4 frame data is stored in the input frame memory 7b, and the #7 frame data is stored in the input frame memory 7b. Here, when the coding of #4 cannot be completed in the time Te allocated to the coding process, in order to extend the coding processing time Te of #4 and continue the process, the frame data of #4 is used. Need to hold. Therefore, the state control of the input frame memory is performed, the input frame memory 7b is controlled to the unwritable state, the input frame memory 7a is maintained in the writable state, and the writing destination of the frame data #8 is set to the input frame memory 7a. Change to. Since the input frame memory 7b can hold the #4 frame data and the #4 coding process can be continued, the time can be extended until the #4 coding process is completed.

(手順2:次のフレーム処理時間の算出)#4の符号化処理が完了した際、割り当てられた時間Te経過後、#4の符号化処理に費やした延長時間Toが求められる。次の符号化対象となるフレームの符号化処理時間Tlは、Tl=Te−Toにより算出される。ここで、時間Tlは、次の符号化対象となるフレームに対し、必要とされる演算量が必要演算量計算手段により算出され、動作決定手段により動作周波数・動作電源電圧および基板バイアス電圧を決定する際に用いるので、時間Tlを算出しておく。なお、時間Tlは次フレームの必要演算量計算手段を実行する際に算出してもよい。   (Procedure 2: Calculation of Next Frame Processing Time) When the coding process of #4 is completed, the extended time To spent in the coding process of #4 is obtained after the allocated time Te has elapsed. The encoding processing time Tl of the next frame to be encoded is calculated by Tl=Te-To. Here, for the time Tl, the required calculation amount is calculated by the necessary calculation amount calculation means for the next frame to be encoded, and the operation frequency/operation power supply voltage and the substrate bias voltage are determined by the operation determination means. The time Tl is calculated in advance because it will be used when performing. The time Tl may be calculated when the necessary calculation amount calculation means for the next frame is executed.

(手順3:メモリ状態の切り替え制御)手順2により算出された延長時間Toにおいて、To<Tf/3の場合は、次の符号化対象フレームは#8となる。#8のフレームデータの書き込みが終了する際に、入力フレームメモリ7の状態の切り替え制御を行うことで、入力フレームメモリ7aは#8のフレームデータの読み込み状態に、入力フレームメモリ7bは次のフレームである#9の書き込み状態に切り替わり、#8の符号化ステップに移行する。また、Tf/3<To<2Tf/3の場合は、図14に示すように、次の符号化対象フレームは#9となり、#9のフレームデータの書き込みが終了する際に、入力フレームメモリ7の状態制御の切り替えが同様に行われ、#9の符号化ステップに移行する。以上の手順をもって、入力フレームメモリの状態を制御することにより、所定フレームの処理時間を変更して時間を延長することができ、所定フレームの符号化処理を完了させることで、破綻を完全に回避できる。   (Procedure 3: Memory State Switching Control) In the extension time To calculated in Procedure 2, if To<Tf/3, the next encoding target frame is #8. By switching the state of the input frame memory 7 when the writing of the #8 frame data is completed, the input frame memory 7a is in the reading state of the #8 frame data and the input frame memory 7b is in the next frame. Then, the writing state of #9 is changed to the coding step of #8. When Tf/3<To<2Tf/3, as shown in FIG. 14, the next encoding target frame is #9, and when the writing of the frame data of #9 ends, the input frame memory 7 The state control is switched in the same manner, and the process proceeds to the encoding step of #9. By controlling the state of the input frame memory according to the above procedure, the processing time of a predetermined frame can be changed and the time can be extended. By completing the encoding processing of the predetermined frame, the failure can be completely avoided. it can.

また、次フレームの符号化処理時間Tlを算出することで、次フレームの符号化に最適な動作周波数・動作電源電圧および基板バイアス電圧を決定することができ、後続フレームに対しても効率良く低消費電力化を図ることができる。なお、時間Tlの算出は、次の符号化対象となるフレームの符号化ステップの必要演算量計算手段を実行する際に算出しても良い。   In addition, by calculating the encoding processing time Tl of the next frame, it is possible to determine the optimum operating frequency, operating power supply voltage and substrate bias voltage for the encoding of the next frame, and it is possible to efficiently reduce the operating frequency to the subsequent frames. Power consumption can be reduced. The time Tl may be calculated when the necessary calculation amount calculation means of the encoding step of the next frame to be encoded is executed.

(第3の破綻回避手段の例2)第3の破綻回避手段98は、第3の破綻回避手段97に対し、入力フレームメモリの状態制御方法のみが異なり、その他の点については、第3の破綻回避手段97と同様である。図15は、第3の破綻回避手段98による符号化処理の時間推移を示したものである。第3の破綻回避手段98は、入力フレームメモリの状態制御において、#4に割り当てられた符号化処理時間Teにおいて処理が終了できなかった場合、少なくとも延長時間Toの間は入力フレームメモリ7a,7bともに書き込み不可の状態に制御し、時間Teを時間Toだけ延長する。入力フレームメモリは、入力フレームメモリ7bに格納されている#4のフレームデータと、入力フレームメモリ7aに格納されている#7のフレームデータが保持された状態となる。#4のフレームについては時間Teの延長により破綻現象が回避される。延長時間To中に入力される#8のフレームは、入力フレームメモリに書き込まれない。#4の符号化処理が完了した時点で、入力フレームメモリ7a,7bの書き込み・読み出しの状態切り替えを行う。書き込み状態に制御された入力フレームメモリ7bは、入力されたフレームデータが書き込み可能となる。入力フレームメモリ7aは#7のフレームデータの読み出しが行われ、入力フレームメモリ7bには#9,#10のフレームが順次書き込まれる。延長時間Toにかかわらず、#4のフレームの符号化処理の後は、#7,#10のフレームデータの符号化処理が順次行われる。通常の符号化処理と等しいフレーム番号を符号化させるため、通常の符号化処理と同等の画質を得ることができる。   (Example 2 of Third Failure Avoidance Means) The third failure avoidance means 98 differs from the third failure avoidance means 97 only in the state control method of the input frame memory, and other points are the same as the third failure avoidance means 97. This is similar to the failure avoidance means 97. FIG. 15 shows the time transition of the encoding process by the third failure avoiding means 98. In the state control of the input frame memory, the third failure avoiding means 98, when the processing cannot be completed within the encoding processing time Te assigned to #4, at least for the extension time To, the input frame memories 7a and 7b. Both are controlled so that they cannot be written, and the time Te is extended by the time To. The input frame memory is in a state in which the #4 frame data stored in the input frame memory 7b and the #7 frame data stored in the input frame memory 7a are held. For the frame of #4, the breakdown phenomenon is avoided by extending the time Te. The frame of #8 input during the extension time To is not written in the input frame memory. When the coding process of #4 is completed, the write/read state of the input frame memories 7a and 7b is switched. The input frame memory 7b, which is controlled to the write state, can write the input frame data. The input frame memory 7a reads the #7 frame data, and the #9 and #10 frames are sequentially written to the input frame memory 7b. Regardless of the extension time To, after the encoding process of the #4 frame, the encoding processes of the #7 and #10 frame data are sequentially performed. Since the same frame number as the normal encoding process is encoded, the image quality equivalent to that of the normal encoding process can be obtained.

また、入力画像データのフレームレートと動画像符号化処理システムのフレームレートが等しい場合は、符号化されるフレームは#1,#2,#3,#4,#5,#6,#7,・・・であり、符号化処理時間を延長できる範囲は最大Tfとなる。#4の符号化処理の延長時間がTfを超える場合は#6を次のフレームとして符号化しても良い。   If the frame rate of the input image data is equal to the frame rate of the moving image coding processing system, the frames to be coded are #1, #2, #3, #4, #5, #6, #7, ... and the range in which the encoding processing time can be extended is the maximum Tf. When the extension time of the encoding process of #4 exceeds Tf, #6 may be encoded as the next frame.

(第4の実施の形態)
本発明の第4の実施の形態の動画像復号化処理システムS4は、符号化された動画像を復号化するシステムである。図16は動画像復号化処理システムS4の動作を示した概略ブロック図である。本実施の形態の動画像復号化処理システムS4は、動作電源電圧及び基板バイアス電圧及び動作周波数がr段階(rは2以上の整数)に用意され且つプログラムにより動作電源電圧及び基板バイアス電圧及び動作周波数を変更可能なプロセッサ1と、前記プロセッサ1の動作電源電圧及び基板バイアス電圧及び動作周波数を制御する動作制御手段4と、前フレームの復号化データを記憶する局部復号フレームメモリ46とを備える。また、局部復号メモリ46は動作制御手段4により,プロセッサ1と同様に動作電源電圧・基板バイアス電圧・動作周波数が制御されてもよい。プロセッサ1は、プロセッサ1上で動作する手段として、必要演算量計算手段42と、動作決定手段3と、動画像復号化手段35と、第3の破綻回避手段97とを備える。符号401は入力符号化データ、符号102は動作電源電圧・基板バイアス電圧・動作周波数指示、符号105は動作電源電圧・基板バイアス電圧・動作周波数供給、符号406は復号化データであり、第1の実施の形態と同一符号は同一機能又はそれ相当の機能を有する部分である。符号化ではなく復号化を行う点及び下記以外の点は第3の実施の形態と同様である。
(Fourth Embodiment)
The moving image decoding processing system S4 according to the fourth embodiment of the present invention is a system for decoding encoded moving images. FIG. 16 is a schematic block diagram showing the operation of the moving picture decoding processing system S4. The moving image decoding processing system S4 of the present embodiment is provided with operating power supply voltage, substrate bias voltage, and operating frequency in r stages (r is an integer of 2 or more), and the operating power supply voltage, substrate bias voltage, and operation are performed by a program. It comprises a processor 1 whose frequency can be changed, an operation control means 4 for controlling the operating power supply voltage, the substrate bias voltage and the operating frequency of the processor 1, and a local decoding frame memory 46 for storing the decoded data of the previous frame. Further, in the local decoding memory 46, the operation power supply voltage, the substrate bias voltage, and the operation frequency may be controlled by the operation control means 4 similarly to the processor 1. The processor 1 includes, as means for operating on the processor 1, a necessary calculation amount calculating means 42, an operation determining means 3, a moving image decoding means 35, and a third failure avoiding means 97. Reference numeral 401 is input encoded data, reference numeral 102 is an operating power supply voltage/substrate bias voltage/operating frequency instruction, reference numeral 105 is an operating power supply voltage/substrate bias voltage/operating frequency supply, and reference numeral 406 is decoded data. The same reference numerals as those in the embodiment are parts having the same function or equivalent functions. The point that decoding is performed instead of encoding and the points other than the following are the same as in the third embodiment.

図16に従って、動画像復号化処理システムS4の動作を説明する。以下、順次復号化されるフレームのうちこれから復号化される任意の一のフレーム(すなわち、あるフレームが復号化された時点を基準とすると次に復号化されるフレームであり、換言すると、その時点において未だに復号化処理されておらず未来に復号化処理が行われる予定であるフレーム)を所定フレーム、所定フレームより前に復号化された一のフレーム(過去に復号化されたフレーム)を前フレームとし、所定フレームを復号化する処理について説明するが、いずれのフレームについても同様の処理が行われる。コンピュータを動画像復号化処理システムS4として機能させる動画像復号化処理プログラムPrg4は、前記動画像符号化処理プログラムPrg1とほぼ同様であるが、ステップ5において、所定フレームの符号化データを復号化させる動画像復号化手段45としてコンピュータ(詳しくはコンピュータに内蔵されるプロセッサ1)を機能させる。動画像復号化処理システムS4に入力されてきた入力符号化データ401は、必要演算量計算手段42に入力される。必要演算量計算手段42は符号化データ401の一フレーム分(すなわち、所定フレームの符号化データ401)の発生情報量(ビット数)FBを計算し、必要計算量Kpを予測する計算を行う(必要演算量計算ステップ)。必要演算量Kpは、
Kp=G(FB,MVa,MVv,B,C,BR,Q,ΔQ,I,E,P)
で表される。ここで、FBは所定フレームもしくは前フレームの符号化データのビット数、MVaは所定フレームもしくは前フレームの動きベクトルの大きさの平均値、MVvは所定フレームもしくは前フレームの動きベクトルの大きさの分散、Bは所定フレームもしくは前フレームの有効ブロック数、Cは所定フレームもしくは前フレームの有効係数の数、BRは所定フレームもしくは前フレームのビットレート、Qは所定フレームもしくは前フレームの量子化ステップサイズの平均値、ΔQは所定フレームと前フレームの量子化ステップサイズの平均値の差もしくは前フレームと前々フレームの量子化ステップサイズの平均値の差、Iは所定フレームがIピクチャであるか,PピクチャであるかBピクチャであるかの種類、Eは前フレームの復号化に要した演算量、Pは必要演算量計算手段により算出された前フレームの必要演算量を表す。以下、上記関数Gについて説明する。
The operation of the moving picture decoding processing system S4 will be described with reference to FIG. Hereinafter, any one of the frames that will be decoded in the future (that is, the frame that will be decoded next based on the time when a certain frame is decoded, in other words, that time) , The frame that has not been decoded yet and is scheduled to be decoded in the future) is the predetermined frame, and the one frame that was decoded before the predetermined frame (the frame that was decoded in the past) is the previous frame. The process of decoding a predetermined frame will be described, but the same process is performed on any frame. The moving picture decoding processing program Prg4 that causes the computer to function as the moving picture decoding processing system S4 is almost the same as the moving picture coding processing program Prg1, but in step 5, it decodes the coded data of a predetermined frame. A computer (specifically, the processor 1 incorporated in the computer) is made to function as the moving image decoding means 45. The input coded data 401 input to the moving image decoding processing system S4 is input to the necessary calculation amount calculation means 42. The required calculation amount calculation means 42 calculates the generated information amount (the number of bits) FB of one frame of the encoded data 401 (that is, the encoded data 401 of a predetermined frame), and performs the calculation to predict the required calculation amount Kp ( Required calculation amount calculation step). The required calculation amount Kp is
Kp=G (FB, MVa, MVv, B, C, BR, Q, ΔQ, I, E, P)
It is represented by. Here, FB is the number of bits of coded data of the predetermined frame or the previous frame, MVa is the average value of the motion vector magnitudes of the predetermined frame or the previous frame, and MVv is the variance of the motion vector magnitudes of the predetermined frame or the previous frame. , B is the number of effective blocks of a predetermined frame or the previous frame, C is the number of effective coefficients of the predetermined frame or the previous frame, BR is the bit rate of the predetermined frame or the previous frame, and Q is the quantization step size of the predetermined frame or the previous frame. The average value, ΔQ is the difference between the average values of the quantization step sizes of the predetermined frame and the previous frame or the difference between the average values of the quantization step sizes of the previous frame and the previous frame, and I is whether the predetermined frame is an I picture or P The type is a picture or a B picture, E is the amount of calculation required for decoding the previous frame, and P is the required amount of calculation for the previous frame calculated by the required amount calculation unit. The function G will be described below.

所定フレームの復号化に必要な演算量は、所定フレームの復号化で実行されるIDCT処理、IQ処理、VLD処理の実行回数に依存する。また、IDCT処理の実行回数は所定フレームに含まれる有効ブロックの数に、IQ処理およびVLD処理の実行回数は所定フレームに含まれる有効係数の数に依存する。すなわち、所定フレームに含まれる有効ブロックの数や有効係数の数が大きい(小さい)場合は、復号化処理に必要な演算量は大きく(小さく)なる。したがって、上記関数Gは、B,Cが大きい(小さい)場合、Kpを大きく(小さく)設定するように構成する。   The amount of calculation required for decoding a predetermined frame depends on the number of times the IDCT process, IQ process, and VLD process are executed in the decoding of the predetermined frame. The number of executions of the IDCT process depends on the number of valid blocks included in a predetermined frame, and the number of executions of the IQ process and the VLD process depends on the number of effective coefficients included in the predetermined frame. That is, when the number of effective blocks or the number of effective coefficients included in a predetermined frame is large (small), the amount of calculation required for the decoding process becomes large (small). Therefore, the function G is configured to set Kp large (small) when B and C are large (small).

前フレームと所定フレームの間で画像の変化が大きい(小さい)場合、動きベクトルの大きさの平均値MVaや動きベクトルの大きさの分散MVvが大きく(小さく)なるが、このとき所定フレームの有効ブロックの数や有効係数の数は大きく(小さく)なり、符号化処理に必要な演算量は大きく(小さく)なる。したがって、上記関数Gは,MVaやMVvが大きい(小さく)場合、Kpを大きく(小さく)設定するように構成する。   When the change in the image between the previous frame and the predetermined frame is large (small), the average value MVa of the motion vector magnitudes and the variance MVv of the motion vector magnitudes are large (small). The number of blocks and the number of effective coefficients are large (small), and the amount of calculation required for encoding processing is large (small). Therefore, the function G is configured to set Kp large (small) when MVa or MVv is large (small).

所定フレームがIピクチャの場合、復号化データを生成するときに予測画像と差分画像の加算を行わなくてよいので、復号化処理に必要な演算量は小さくなる。したがって、上記関数Gは、所定フレームがIピクチャの場合、Kpを小さく設定するように構成する。   When the predetermined frame is an I picture, it is not necessary to add the predicted image and the difference image when generating the decoded data, and thus the amount of calculation required for the decoding process becomes small. Therefore, the function G is configured to set Kp small when the predetermined frame is an I picture.

符号化データのビット数FBやフレームレートBRが大きい(小さい)場合、有効ブロックの数や有効係数の数は大きく(小さく)なる。したがって、上記関数Gは、FBやBRが大きい(小さい)場合、Kpを大きく(小さく)設定するように構成する。また、量子化ステップサイズはビットレートの制御に際して値が変更されるため、量子化ステップサイズの平均値Qや量子化ステップサイズの平均値の差ΔQを考慮することで、上記関数Gが算出するKpが実際に所定フレームを復号化するために必要な演算量に近い値とすることができる。   When the number of bits FB of the encoded data and the frame rate BR are large (small), the number of effective blocks and the number of effective coefficients become large (small). Therefore, the function G is configured to set Kp large (small) when FB and BR are large (small). Since the value of the quantization step size is changed when controlling the bit rate, the function G is calculated by considering the average value Q of the quantization step sizes and the difference ΔQ between the average values of the quantization step sizes. Kp can be set to a value close to the amount of calculation required to actually decode the predetermined frame.

動画像は連続するフレーム間での相関が大きいため、MVa,MVv,B,C,BR,FB,Qは所定フレームと前フレームとで近い値となる。したがって、これらのパラメータを上記関数Gで使用する場合は、所定フレームでの値を用いても良いし、前フレームでの値を用いても良い。所定フレームでの値を用いる場合は、入力符号化データを受信した後、このデータの一部を復号化し、値を取り出して用いる。このとき、所定フレームでの値を用いることで予測演算量Kpを実際の復号化処理に必要な演算量により近い値にすることができるメリットがある。前フレームでの値を用いる場合、所定フレームの入力符号化データを受信する前に予測演算量Kpを算出することができるため、入力符号化データを受信しながら、受信済みのデータ分について復号化処理を同時に行うことができるメリットがある。   Since a moving image has a large correlation between consecutive frames, MVa, MVv, B, C, BR, FB, and Q have a close value between a predetermined frame and the previous frame. Therefore, when these parameters are used in the function G, the values in the predetermined frame may be used, or the values in the previous frame may be used. When using the value in a predetermined frame, after receiving the input encoded data, a part of this data is decoded and the value is extracted and used. At this time, there is an advantage that the predicted calculation amount Kp can be made closer to the calculation amount necessary for the actual decoding process by using the value in the predetermined frame. When the value in the previous frame is used, the predictive calculation amount Kp can be calculated before receiving the input coded data of a predetermined frame. Therefore, while the input coded data is being received, the received data is decoded. There is a merit that processing can be performed simultaneously.

また、動画像は連続するフレーム間での相関が大きいため、所定フレームの復号化処理に必要演算量は前フレームの復号化処理で実際に必要であった演算量Eと近い値となる。さらに、必要演算量計算手段で算出される予測演算量が実際の復号化処理に要した演算量に近い値となる場合,P≒Eとなる。したがって、EやPを考慮することで、上記関数Gが算出するKpが実際に所定フレームを復号化するために必要な演算量に近い値とすることができる。FBは一フレーム分の発生情報量(ビット数)である。ただし、関数Gは要素FB,MVa,MVv,B,C,BR,D,Q,ΔQprev,I,E,Pの一つ以上の要素を用いて導き出される関数である。必要演算量Kpは、所定フレームに必要と予測される演算性能(周波数,サイクル)であり、所定フレーム内のビット数FBが大きければ高い値と、ビット数FBが小さければ低い値となる。また、必要演算量Kpを予測する計算である必要演算量計算手段42の要素として、所定フレームがフレーム内符号化であるかフレーム間符号化であるかの種類も使用することが可能であり、所定フレームがフレーム内符号化である場合の必要演算量Kpは小さい値と、フレーム間符号化である場合の必要演算量Kpは大きい値となる。さらに、必要計算量Kpは、動きベクトルの大きさの平均値(これから復号化するフレームの,もしくは前フレームのもの)MVa、動きベクトルの大きさの分散 (これから復号化するフレームの,もしくは前フレームのもの)MVv、有効ブロック数(これから復号化するフレームの,もしくは前フレームのもの)B、有効係数の数(これから復号化するフレームの,もしくは前フレームのもの)C、ビットレート(これから復号化するフレームの,もしくは前フレームのもの)BR、発生情報量(これから復号化するフレームの,もしくは前フレームのもの)FB、量子化ステップサイズの平均値(これから復号化するフレームの,もしくは前フレームのもの)Q、量子化ステップサイズの平均値の差(これから復号化するフレームのQと1つ前のフレームのQの差,もしくは1つ前のフレームのQと2つ前のフレームのQの差)ΔQ、IピクチャであるかPピクチャであるかBピクチャであるかの種類I、前フレームの復号化に実際に要した演算量E、前フレームの復号化に必要な演算量の予測値(すなわち、必要演算量計算手段により算出された前フレームの必要演算量)Pにも影響され、これらを必要演算量計算手段42において要素として使用しても良い。例えば、動きベクトルの大きさの平均値(これから復号化するフレームの,もしくは前フレームのもの)MVa、動きベクトルの大きさの分散 (これから復号化するフレームの,もしくは前フレームのもの)MVv、有効ブロック数(これから復号化するフレームの,もしくは前フレームのもの)B、有効係数の数(これから復号化するフレームの,もしくは前フレームのもの)Cについては、各要素それぞれについて、他の要素の値が変化しないと仮定したときに、要素の値が大きい場合は小さい場合と比較して必要演算量Kpが相対的に大きくなるようにし、要素の値が小さい場合は大きい場合と比較して必要演算量Kpが相対的に小さくなるようにする。必要演算量計算手段42においては、これらの要素のうち一つの要素のみを使用しても良いし、複数組み合わせて使用しても良い。すなわち、これらの複数の要素は所定フレームの復号化処理のために必要な必要演算量に影響を与える要素であるため、必要演算量計算手段42が、これらの要素に応じて必要演算量Kp(サイクル)を増減させるように計算を行うことにより、必要演算量計算手段42により計算される必要演算量Kpが現実に復号化処理を行ったときの演算量により近い値となる。   Further, since a moving image has a large correlation between consecutive frames, the calculation amount required for the decoding process of a predetermined frame is a value close to the calculation amount E actually required for the decoding process of the previous frame. Further, when the predicted calculation amount calculated by the necessary calculation amount calculation means is a value close to the calculation amount required for the actual decoding process, P≈E. Therefore, by taking E and P into consideration, Kp calculated by the function G can be set to a value close to the amount of calculation required to actually decode the predetermined frame. FB is the generated information amount (bit number) for one frame. However, the function G is a function derived using one or more of the elements FB, MVa, MVv, B, C, BR, D, Q, ΔQprev, I, E, and P. The required calculation amount Kp is a calculation performance (frequency, cycle) predicted to be necessary for a predetermined frame, and has a high value if the number of bits FB in the predetermined frame is large, and a low value if the number of bits FB is small. Further, as the element of the required calculation amount calculation means 42 which is a calculation for predicting the required calculation amount Kp, it is possible to use the type of whether the predetermined frame is intra-frame coding or inter-frame coding, The required calculation amount Kp is a small value when the predetermined frame is intra-frame coding, and is a large value when the predetermined frame is the inter-frame coding. Further, the required calculation amount Kp is the average value of the motion vector magnitudes (of the frame to be decoded or in the previous frame) MVa, the variance of the motion vector magnitudes (of the frame to be decoded or in the previous frame). MVv, the number of effective blocks (of the frame to be decoded or in the previous frame) B, the number of effective coefficients (of the frame to be decoded in the previous frame or of the previous frame) C, bit rate (decoding from now on) BR of the frame to be reproduced, or of the previous frame), generated information amount (of the frame to be decoded or of the previous frame) FB, average value of the quantization step size (of the frame to be decoded or of the previous frame) Q), the difference in the average value of the quantization step size (the difference between the Q of the frame to be decoded and the Q of the frame one before, or the difference between the Q of the frame one before and the Q of the frame two before). ) ΔQ, type I whether it is an I picture, a P picture or a B picture, the amount of calculation E actually required for decoding the previous frame, the predicted value of the amount of calculation required for decoding the previous frame ( That is, the necessary calculation amount of the preceding frame calculated by the necessary calculation amount calculation unit P is also influenced, and these may be used as elements in the necessary calculation amount calculation unit 42. For example, the average value of the motion vector size (of the frame to be decoded or in the previous frame) MVa, the variance of the motion vector size (of the frame to be decoded in the previous frame, or of the previous frame) MVv, valid For the number of blocks (of the frame to be decoded or in the previous frame) B and the number of effective coefficients (of the frame to be decoded in the previous frame or of the previous frame) C, for each element, the value of the other element When the value of the element is large, the required calculation amount Kp is relatively large compared to the case where the element value is small, and when the element value is small, the necessary calculation amount is compared to the case where the element value is large. The quantity Kp is made relatively small. In the necessary calculation amount calculating means 42, only one of these elements may be used, or a plurality of elements may be used in combination. That is, since these plurality of elements affect the required calculation amount required for the decoding processing of the predetermined frame, the necessary calculation amount calculation means 42 determines the necessary calculation amount Kp( By performing the calculation so as to increase or decrease the number of cycles, the required calculation amount Kp calculated by the necessary calculation amount calculation means 42 becomes a value closer to the calculation amount when the decoding process is actually performed.

動作決定手段3(動作決定ステップ)及び動作制御手段4は、前記第1の実施の形態と同様である。動画像復号化手段45は、所定フレームの入力符号化データ401を復号化して復号化データ406を生成する(動画像復号化ステップ)。動画像復号化手段45による復号化処理に際しては、動作制御手段4により動作制御手段4により一定の動作電源電圧及び基板バイアス電圧及び動作周波数でプロセッサ1を動作させながら復号化処理が行われる。フレームごとに、そのフレームの復号化処理の前に必要な必要演算量が算出され、その必要演算量に応じた一定の動作周波数及び動作電源電圧及び基板バイアス電圧でプロセッサを動作させながらそのフレームの復号化が行われるため、低消費電力化を図ることができる。復号化データ406は、携帯電話やパソコンの画像表示部に動画像として表示されたり、ハードディスク等の記憶媒体に記憶されたりする。なお、プロセッサに用意されている動作周波数において、予測された動作周波数以上の動作周波数と予測された動作周波数より低い動作周波数を選択し、予め定められたタイミングで割り込みを行い、2段階に動作周波数等を制御してもよい。   The operation determining means 3 (operation determining step) and the operation control means 4 are the same as those in the first embodiment. The moving picture decoding means 45 decodes the input coded data 401 of a predetermined frame to generate decoded data 406 (moving picture decoding step). In the decoding processing by the moving image decoding means 45, the operation controlling means 4 performs the decoding processing while operating the processor 1 at a constant operating power supply voltage, substrate bias voltage and operating frequency. For each frame, the necessary amount of calculation required before the decoding processing of that frame is calculated, and while operating the processor at a constant operating frequency, operating power supply voltage and substrate bias voltage according to the required amount of calculation, Since decoding is performed, low power consumption can be achieved. The decrypted data 406 is displayed as a moving image on an image display unit of a mobile phone or a personal computer, or stored in a storage medium such as a hard disk. In the operating frequency prepared for the processor, select an operating frequency that is equal to or higher than the predicted operating frequency and an operating frequency that is lower than the predicted operating frequency, interrupt at a predetermined timing, and operate in two steps. Etc. may be controlled.

動画像復号化処理システムS4においても、上記第3の破綻回避手段97,98を備えることが好ましい。各破綻回避手段は第3の実施の形態とほぼ同様であるが、符号化処理の演算量ではなく復号化処理の演算量について判断する点で異なる。第3の破綻回避手段97,98により、破綻現象を回避することができる。   It is preferable that the moving picture decoding system S4 also includes the third failure avoidance means 97, 98. Each failure avoiding means is almost the same as that of the third embodiment, but is different in that it judges not the amount of calculation of the encoding process but the amount of calculation of the decoding process. The third failure avoidance means 97, 98 can avoid the failure phenomenon.

本発明の動画像符号化処理システムは、第1の破綻回避手段91,92,93,94、緩和手段95を伴う第1の破綻回避手段、第2の破綻回避手段96、第3の破綻回避手段97,98をそれぞれ単独で備えても良く、また、各手段を適宜組み合わせて備えても良い。復号化処理システムは、各第2の破綻回避手段96と、第3の破綻回避手段97,98をそれぞれ単独で備えてもよく、また、各手段を適宜組み合わせて備えても良い。たとえば、符号化処理システムの場合は、第1の破綻回避手段91,92,93,94、緩和手段95を伴う第1の破綻回避手段、及び、第2の破綻回避手段96の何れかを備えるようにし、第2の破綻回避手段96により必要演算量を増加させても破綻を回避できない場合は、第1の破綻回避手段91により、色差ブロックのみ無効ブロック化処理を行うか、あるいは第1の破綻回避手段92により、フレーム内符号化処理を行うか、あるいは第1の破綻回避手段93により、動きベクトルの大きさを0としてフレーム間符号化処理を行うか、あるいは第1の破綻回避手段94により、量子化ステップサイズを大きくして符号化処理を行うようにしても良い。また、上記動画像符号化又は復号化処理プログラムは、2段階に動作周波数及び基板バイアス電圧及び動作電圧を制御して低消費電力化を実現しても良いし,プログラムと同様の機能を備えるハードウエアで実現されても良い。   The moving picture coding processing system according to the present invention includes the first failure avoiding means 91, 92, 93, 94, the first failure avoiding means with the mitigating means 95, the second failure avoiding means 96, and the third failure avoiding means. The means 97 and 98 may be provided individually, or each means may be appropriately combined and provided. The decryption processing system may include each of the second failure avoidance means 96 and the third failure avoidance means 97 and 98 independently, or may appropriately include the respective means in combination. For example, the encoding processing system includes any one of the first failure avoiding means 91, 92, 93, 94, the first failure avoiding means with the mitigating means 95, and the second failure avoiding means 96. In this way, if the failure cannot be avoided even if the required calculation amount is increased by the second failure avoiding means 96, the first failure avoiding means 91 performs the invalid blocking processing only on the color difference blocks, or Whether the intra-frame coding process is performed by the corruption avoiding unit 92, or the inter-frame coding process is performed by setting the magnitude of the motion vector to 0 by the first corruption avoiding unit 93, or the first corruption avoiding unit 94. Therefore, the quantization step size may be increased to perform the encoding process. In addition, the moving picture encoding or decoding processing program may realize low power consumption by controlling the operating frequency, the substrate bias voltage, and the operating voltage in two steps, or a hardware having the same function as the program. It may be realized by wear.

(第5の実施の形態)
上記第1の実施の形態乃至第4の実施の形態は、動作電源電圧、基板バイアス電圧及び動作周波数を制御するものであるが、本実施の形態は、動作電源電圧及び動作周波数を制御することにより、低消費電力化を図るものである。なお、本実施の形態は半導体に集積されたシステムに限らない。図17は、本実施の形態の動画像符号化システムS5の動作を示した概略ブロック図であり、図18はプロセッサ51の動作電源電圧・動作周波数の関係を示す概念図である。本実施の形態の動画像符号化処理システムS5は、上記第1の実施の形態のプロセッサ1に代えて、動作電源電圧Vdd及び動作周波数がr段階(rは2上の整数)に可変であり(すなわち、r段階の動作電源電圧Vdd及び動作周波数で動作可能であり)且つプログラムにより動作電源電圧及び動作周波数を変更可能なプロセッサ51とする。また、前記動作制御手段54は、プロセッサ1の動作電源電圧及び動作周波数を制御する。プロセッサ51、又は、プロセッサ1及び周辺装置(局部部復号メモリ6や入力フレームメモリ7等)は動作制御手段52により動作電源電圧・動作周波数が制御される。
(Fifth Embodiment)
The first to fourth embodiments described above control the operating power supply voltage, the substrate bias voltage, and the operating frequency, but the present embodiment controls the operating power supply voltage and the operating frequency. Is intended to reduce power consumption. Note that this embodiment is not limited to a system integrated in a semiconductor. FIG. 17 is a schematic block diagram showing the operation of the moving picture coding system S5 of the present embodiment, and FIG. 18 is a conceptual diagram showing the relationship between the operating power supply voltage and operating frequency of the processor 51. The moving picture coding system S5 of the present embodiment is variable in the operating power supply voltage Vdd and the operating frequency in r stages (r is an integer on 2) instead of the processor 1 of the first embodiment. The processor 51 is capable of operating at the r-stage operating power supply voltage Vdd and operating frequency and capable of changing the operating power supply voltage and operating frequency by a program. The operation control means 54 controls the operation power supply voltage and the operation frequency of the processor 1. The processor 51, or the processor 1 and the peripheral devices (the local decoding memory 6, the input frame memory 7, etc.) are controlled by the operation control means 52 in terms of operating power supply voltage and operating frequency.

動作決定手段53は、F(n)>Feであり、且つFe>F(n−1)となる動作周波数F(n)を所定フレームの符号化処理を行う動作周波数として選択する計算を行い、動作周波数F(n)に適する動作電源電圧Vdd(n)を選択する計算を行い、プロセッサ1及び(又は)局部復号メモリ6等を含めた周辺装置をその動作周波数F(n)及び動作電源電圧Vdd(n)で一定に動作させるように、動作制御手段54に指示する(符号502)。動作制御手段54は、動作決定手段53から指示を受けた動作周波数F(n)及び動作電源電圧Vdd(n)の値をプロセッサ1及び(又は)局部復号メモリ6等を含めた周辺装置に供給し(符号505)、その動作周波数F(n)及び動作電源電圧Vdd(n)でプロセッサ1を一定に動作させる制御を行う。これにより、プロセッサ1及び(又は)局部復号メモリ6等を含めた周辺装置は、動作電源電圧Vdd(n)及び動作周波数F(n)で動作することになる。その他の点については、第1の実施の形態とほぼ同様である。   The operation determining means 53 performs a calculation for selecting an operation frequency F(n) that satisfies F(n)>Fe and Fe>F(n−1) as an operation frequency for performing the encoding process of a predetermined frame, A calculation for selecting an operating power supply voltage Vdd(n) suitable for the operating frequency F(n) is performed, and the peripheral frequencies including the processor 1 and/or the local decoding memory 6 are set to the operating frequency F(n) and the operating power supply voltage. The operation control means 54 is instructed to operate constantly at Vdd(n) (reference numeral 502). The operation control means 54 supplies the values of the operating frequency F(n) and the operating power supply voltage Vdd(n) instructed by the operation determining means 53 to the peripheral devices including the processor 1 and/or the local decoding memory 6 and the like. (Reference numeral 505), the control is performed so that the processor 1 is constantly operated with the operating frequency F(n) and the operating power supply voltage Vdd(n). As a result, the peripheral device including the processor 1 and/or the local decoding memory 6 and the like operates at the operating power supply voltage Vdd(n) and the operating frequency F(n). Other points are almost the same as those of the first embodiment.

本動画像符号化処理システムS5においても、上記第1の破綻回避手段91,92,93,94,95や、上記第2の破綻回避手段96、又は第3の破綻回避手段97,98を備えることが好ましい。   The moving image encoding system S5 also includes the first failure avoidance means 91, 92, 93, 94, 95, the second failure avoidance means 96, or the third failure avoidance means 97, 98. Preferably.

(第6の実施の形態)
上記第1の実施の形態乃至第4の実施の形態は、動作電源電圧、基板バイアス電圧及び動作周波数を制御するものであるが、本実施の形態は、基板バイアス電圧及び動作周波数を制御することにより、低消費電力化を図るものである。図19は、本実施の形態の動画像符号化システムS6の動作を示した概略ブロック図であり、図20はプロセッサ61の基板バイアス電圧・動作周波数の関係を示す概念図である。本実施の形態の動画像符号化処理システムS6は、上記第1の実施の形態のプロセッサ1に代えて、基板バイアス電圧Vbn、Vbp及び動作周波数がr段階(rは2以上の整数)に可変であり(すなわち、r段階の基板バイアス電圧Vbn、Vbp及び動作周波数で動作可能であり)且つプログラムにより基板バイアス電圧及び動作周波数を変更可能なプロセッサ61とする。また、前記動作制御手段64は、プロセッサ1の基板バイアス電圧及び動作周波数を制御する。プロセッサ61、又は、プロセッサ61及び周辺装置(局部部復号メモリ6や入力フレームメモリ7等)は動作制御手段64により基板バイアス電圧・動作周波数が制御される。
(Sixth Embodiment)
Although the first to fourth embodiments described above control the operating power supply voltage, the substrate bias voltage and the operating frequency, the present embodiment controls the substrate bias voltage and the operating frequency. Is intended to reduce power consumption. FIG. 19 is a schematic block diagram showing the operation of the moving picture coding system S6 of the present embodiment, and FIG. 20 is a conceptual diagram showing the relationship between the substrate bias voltage and the operating frequency of the processor 61. The moving picture coding processing system S6 of the present embodiment, in place of the processor 1 of the first embodiment, can change the substrate bias voltages Vbn, Vbp and the operating frequency in r stages (r is an integer of 2 or more). (That is, it can operate with the substrate bias voltages Vbn, Vbp and the operating frequency in the r stage) and can change the substrate bias voltage and the operating frequency by a program. Further, the operation control means 64 controls the substrate bias voltage and the operating frequency of the processor 1. The processor 61, or the processor 61 and peripheral devices (the local decoding memory 6, the input frame memory 7, etc.) are controlled by the operation control means 64 in terms of the substrate bias voltage and the operating frequency.

動作決定手段63は、F(n)>Feであり、且つFe>F(n−1)となる動作周波数F(n)を所定フレームの符号化処理を行う動作周波数として選択する計算を行い、動作周波数F(n)に適する基板バイアス電圧Vbn(n)、Vbp(n)を選択する計算を行い、プロセッサ1及び(又は)局部復号メモリ6等を含めた周辺装置をその動作周波数F(n)及び基板バイアス電圧Vbn(n)、Vbp(n)で動作させるように、基板バイアス電圧・動作周波数を動作制御手段64に指示する(符号602)。動作制御手段64は、動作決定手段63から指示を受けた動作周波数F(n)及び基板バイアス電圧Vbn(n)、Vbp(n)の値をプロセッサ61及び(又は)局部復号メモリ6等を含めた周辺装置に供給し(符号605)、その動作周波数F(n)及び基板バイアス電圧Vbn(n)、Vbp(n)でプロセッサ61を一定に動作させる制御を行う。これにより、プロセッサ61及び(又は)局部復号メモリ6等を含めた周辺装置は、一定の基板バイアス電圧Vbn(n)、Vbp(n)及び動作周波数F(n)で動作することになる。その他の点については、第1の実施の形態とほぼ同様である。   The operation determining means 63 performs a calculation to select an operation frequency F(n) that satisfies F(n)>Fe and Fe>F(n−1) as an operation frequency for performing encoding processing of a predetermined frame, A calculation for selecting the substrate bias voltages Vbn(n) and Vbp(n) suitable for the operating frequency F(n) is performed, and the peripheral devices including the processor 1 and/or the local decoding memory 6 are operated at the operating frequency F(n). ) And the substrate bias voltages Vbn(n) and Vbp(n) to instruct the operation control means 64 about the substrate bias voltage/operating frequency (reference numeral 602). The operation control means 64 includes the values of the operating frequency F(n) and the substrate bias voltages Vbn(n) and Vbp(n) instructed by the operation determining means 63 in the processor 61 and/or the local decoding memory 6 and the like. It is supplied to the peripheral device (reference numeral 605), and the processor 61 is controlled to operate constantly at the operating frequency F(n) and the substrate bias voltages Vbn(n) and Vbp(n). As a result, the peripheral device including the processor 61 and/or the local decoding memory 6 and the like operates at the constant substrate bias voltages Vbn(n) and Vbp(n) and the operating frequency F(n). Other points are almost the same as those of the first embodiment.

本動画像符号化処理システムS6においても、上記第1の破綻回避手段91,92,93,94,95又は第3の破綻回避手段97,98や、上記第2の破綻回避手段96を備えることが好ましい。   The moving picture coding system S6 also includes the first failure avoidance means 91, 92, 93, 94, 95 or the third failure avoidance means 97, 98 and the second failure avoidance means 96. Is preferred.

また、上記第4の実施の形態の動画像復号化システムS4についても、動作周波数に適する動作電源電圧及び基板バイアス電圧を制御することに代えて、動作周波数に適する動作電源電圧、又は基板バイアス電圧を制御することが可能である。   Also in the moving picture decoding system S4 of the fourth embodiment, instead of controlling the operating power supply voltage and the substrate bias voltage suitable for the operating frequency, the operating power supply voltage or the substrate bias voltage suitable for the operating frequency is used. It is possible to control

(実施例)
実施例を説明する。本実施例は、第2の実施の形態の動画像符号化システム2に、第1の破綻回避手段91と第2の破綻回避手段が含まれたシステムについての実施例である。符号化の対象として75枚のフレームから成る動画像データを使用し、符号化されるフレームとして35番目のフレームを例に説明する。各フレームは144行176列の画素配列で構成されている。符号化処理としては、MPEG−4を使用する。図21は、動画像符号化システムS2のプロセッサ1における動作周波数と動作電源電圧、基板バイアス電圧の関係の例を表している。動画像符号化システムS2のプロセッサ1は、動作周波数50MHz〜250MHz、動作電源電圧0.5V〜1.0V、基板バイアス電圧―1.0V〜0.5Vであり、5段階に可変となっている。
(Example)
An example will be described. The present example is an example of a system in which the moving picture coding system 2 of the second embodiment includes a first failure avoiding means 91 and a second failure avoiding means. An example will be described in which moving image data composed of 75 frames is used as an encoding target, and the 35th frame is used as an encoded frame. Each frame is composed of a pixel array of 144 rows and 176 columns. MPEG-4 is used as the encoding process. FIG. 21 shows an example of the relationship between the operating frequency, the operating power supply voltage, and the substrate bias voltage in the processor 1 of the moving image coding system S2. The processor 1 of the moving image coding system S2 has an operating frequency of 50 MHz to 250 MHz, an operating power supply voltage of 0.5 V to 1.0 V, and a substrate bias voltage of −1.0 V to 0.5 V, which is variable in 5 steps. ..

まず、動画像符号化システムS2は、入力フレームメモリ7にアクセスして、35番目のフレームを取得し、必要演算量計算手段2により、そのフレームの必要演算量Kpを計算する。必要演算量Kpは、具体的には、まず、前フレームとして34番目のフレームを使用し下記の数式により差分絶対値和Zを算出する。
Z=Σ|Xij−Yij|=41541
次に、前フレームのマクロブロックマッチング回数M=308、前フレームの量子化ステップサイズ(量子化ステップサイズの平均値)Qprev=3、前フレームの有効ブロック数B=109、前フレームの有効係数の数C=620、前フレームの符号化に実際に要した処理量S=3561303、所定フレームの符号化ビットレートBR=65536を得る。また、前フレームの量子化ステップサイズの平均値とそのひとつ前の33番目のフレームの量子化ステップサイズの平均値の差ΔQprev=0を算出する。また、前フレームの実際の発生ビット数D=56797を得る。次に、各要素を使用して下記の数式により必要演算量Kpを算出する。
Kp=j+αM+βB+γC+δZ+ε△Qprev
以上より、本実施例1では必要演算量Kp=6958217が得られる。
First, the moving image coding system S2 accesses the input frame memory 7 to acquire the 35th frame, and the necessary calculation amount calculation means 2 calculates the necessary calculation amount Kp of the frame. Specifically, as the required calculation amount Kp, first, the 34th frame is used as the previous frame, and the sum Z of absolute differences is calculated by the following formula.
Z=Σ|Xij-Yij|=41541
Next, the number M of macroblock matchings of the previous frame is M=308, the quantization step size of the previous frame (average value of the quantization step size) Qprev=3, the number of effective blocks of the previous frame B=109, and the effective coefficient of the previous frame. The number C=620, the amount of processing S actually required for encoding the previous frame S=3561303, and the encoding bit rate BR=65536 for a predetermined frame are obtained. Further, the difference ΔQprev=0 between the average value of the quantization step size of the previous frame and the average value of the quantization step size of the immediately preceding 33rd frame is calculated. Also, the actual number of generated bits in the previous frame D=56797 is obtained. Next, the required calculation amount Kp is calculated by using the following formula using each element.
Kp=j+αM+βB+γC+δZ+εΔQprev
As described above, in the first embodiment, the required calculation amount Kp=6958217 is obtained.

次に、下記の数式により動作周波数を計算する。
Fe=Kp/Te=6958217/(1/15)=104MHz
F(n)>Feであり且つFe>F(n−1)となるF(n)を計算し、プロセッサ1の5段階に可変な動作周波数のうち、動作周波数F(3)=150MHzを選択し、動作周波数F(3)=150MHzに適する動作電源電圧Vdd(3)=0.8V及び基板バイアス電圧Vbn(3)=0V、Vbp(3)=0.8Vを決定する。プロセッサ1を動作周波数F=150MHz及び動作電源電圧Vdd=0.8V及び基板バイアス電圧Vbn=0V、Vbp=0.8Vで動作させるように、動作制御手段4に指示する。動作制御手段4は、少なくともプロセッサ1を動作電源電圧F=150MHz及び動作電源電圧Vdd=0.8V及び基板バイアス電圧Vbn=0V、Vbp=0.8Vで一定に動作させる制御を行う。また、上記破綻回避手段91を備える場合は、下記の数式より切り替えタイミング時間を算出しておく。
Ti=Te−(Ks×(MB−MBi))/F

=0.06666−(4750×(99−0))/(150000000)
≒0.06353
ここで、Ksは1つのマクロブロックのうち、色差ブロックのみを無効ブロックとして処理するために必要なサイクル数である。動画像符号化手段5は、上記動作周波数F=150MHz及び動作電源電圧Vdd=0.9V及び基板バイアス電圧Vbn=0V、Vbp=0.8Vで一定に動作させられた状態のプロセッサ1を使用して符号化処理を行い、符号化データを生成する。
Next, the operating frequency is calculated by the following formula.
Fe=Kp/Te=6958217/(1/15)=104 MHz
Calculate F(n) such that F(n)>Fe and Fe>F(n-1), and select the operating frequency F(3)=150 MHz from among the five operating frequency variable of the processor 1. Then, the operating power supply voltage Vdd(3)=0.8V, the substrate bias voltage Vbn(3)=0V, and Vbp(3)=0.8V suitable for the operating frequency F(3)=150 MHz are determined. The operation control unit 4 is instructed to operate the processor 1 at the operating frequency F=150 MHz, the operating power supply voltage Vdd=0.8V, the substrate bias voltage Vbn=0V, and Vbp=0.8V. The operation control unit 4 controls at least the processor 1 to operate at a constant operating power supply voltage F=150 MHz, operating power supply voltage Vdd=0.8 V, substrate bias voltage Vbn=0 V, and Vbp=0.8 V. Further, when the failure avoidance means 91 is provided, the switching timing time is calculated by the following mathematical formula.
Ti=Te-(Ks x (MB-MBi))/F

= 0.066666-(4750 x (99-0))/(150000000)
≈ 0.06353
Here, Ks is the number of cycles required to process only the color difference block as an invalid block in one macroblock. The moving image coding means 5 uses the processor 1 in a state in which the operating frequency F=150 MHz, the operating power supply voltage Vdd=0.9 V, the substrate bias voltage Vbn=0 V, and Vbp=0.8 V are constantly operated. Then, encoding processing is performed to generate encoded data.

さらに、符号化処理ルーチンを実行している際に、上記第1の破綻回避手段91を備える場合は、上記Tiが経過したタイミングでKw×(MB−MBi)>F×(Te−Ti)であるか否かの判断をする。本実施例1では、Ti=0.06353のタイミングでKw×(MB−MBi)<F×(Te−Ti)であり、演算量に余裕があると判断し、切り替えタイミングの更新を行う。このときMBi=83であったので、下記の数式によりTiが更新される。
Ti=Te−(Ks×(MB−MBi))/F
=0.06666−(4750×(99−83))/(150000000)
≒0.06662
上記のタイミングにおいては、MBi≠MBであり、Kw×(MB−MBi)>F×(Te−Ti)であることから、残りのマクロブロック全てを色差ブロックのみ無効ブロック化する処理に切り替える。
Furthermore, when the first failure avoiding means 91 is provided during execution of the encoding processing routine, Kw×(MB-MBi)>F×(Te-Ti) at the timing when the Ti has elapsed. Determine whether there is. In the first embodiment, Kw x (MB-MBi) <F x (Te-Ti) at the timing of Ti = 0.06353, it is determined that there is a margin in the amount of calculation, and the switching timing is updated. At this time, since MBi=83, Ti is updated by the following formula.
Ti=Te-(Ks x (MB-MBi))/F
= 0.066666-(4750 x (99-83))/(150000000)
≈ 0.06662
At the above timing, since MBi≠MB and Kw×(MB-MBi)>F×(Te-Ti), all remaining macroblocks are switched to invalid block processing only for color difference blocks.

35番目のフレームのステップが終了し、次の36番目のフレームのステップに移行する。上記第2の破綻回避手段96を備える場合、必要演算量計算手段において、前フレームのマクロブロックマッチング回数M=327、前フレームの量子化ステップサイズ(量子化ステップサイズの平均値)Qprev=3、前フレームの有効ブロック数B=121、前フレームの有効係数の数C=749、前フレームの符号化に実際に要した処理量S=7013933、前フレームの実際の発生ビット数D=83942を得て、且つ1つ前のフレームで破綻回避処理が実行されたか、されていないかをチェックする。破綻回避処理が実行されているため、第2の破綻回避手段96により、必要演算量の予測値を増加する処理を行う。本実施例では、マクロブロックマッチング回数Mと有効ブロック数Bと有効係数の数Cを1.1倍し、下記の数式により必要演算量Kpを算出する。
Kp=j+(α×1.1)M+(β×1.1)B+(γ×1.1)C+δZ+ε△Qprev
以上により、必要演算量Kp=7101472が得られる。
The step of the 35th frame ends, and the process proceeds to the step of the next 36th frame. In the case where the second failure avoidance means 96 is provided, in the necessary calculation amount calculation means, the macroblock matching count M of the previous frame is M=327, the quantization step size of the previous frame (average value of the quantization step size) Qprev=3, The number of effective blocks in the previous frame B=121, the number of effective coefficients in the previous frame C=749, the amount of processing S actually required for encoding the previous frame S=7031333, the number of actually generated bits in the previous frame D=83942 Then, it is checked whether or not the failure avoidance processing has been executed in the immediately preceding frame. Since the failure avoidance processing has been executed, the second failure avoidance means 96 performs processing for increasing the predicted value of the required calculation amount. In the present embodiment, the number of macroblock matching times M, the number of effective blocks B, and the number C of effective coefficients are multiplied by 1.1, and the necessary calculation amount Kp is calculated by the following formula.
Kp=j+(α×1.1)M+(β×1.1)B+(γ×1.1)C+δZ+εΔQprev
From the above, the required calculation amount Kp=7101472 is obtained.

また、第1の破綻回避手段95により、前のフレームで破綻回避処理を実行したマクロブロックに対応する所定フレームのマクロブロックにおいて、量子化ステップサイズQ=4からQ=3とする。これにより、前フレームの画質の影響を緩和し、画質をより改善することができる。   Further, the quantization step sizes Q=4 to Q=3 in the macroblock of the predetermined frame corresponding to the macroblock for which the corruption avoidance processing has been executed in the previous frame by the first corruption avoiding means 95. Thereby, the influence of the image quality of the previous frame can be mitigated and the image quality can be further improved.

Claims (18)

連続する複数のフレームから構成される動画像をフレーム単位で符号化する動画像符号化手段として機能するプロセッサを備え、
一のフレームの符号化に必要な必要演算量Kpを計算する必要演算量計算手段と、当該一のフレームの符号化処理に予め割り当てられている時間Te内に当該必要演算量Kpを符号化処理可能な動作周波数を決定する動作決定手段とを備え、
当該プロセッサが、予め割り当てられている時間Te内は当該動作決定手段により決定された動作周波数、及び、当該動作周波数に適する動作電源電圧及び/又は基板バイアス電圧で動作しながら当該動画像符号化手段により当該一のフレームの符号化処理を行う動画像符号化処理システムであり、
所定のタイミングで符号化処理の演算量を削減する第1の破綻回避手段を備えることを特徴とする動画像符号化処理システム。
A processor functioning as a moving picture coding means for coding a moving picture composed of a plurality of consecutive frames in frame units;
Necessary calculation amount calculation means for calculating the necessary calculation amount Kp required for encoding one frame, and the necessary calculation amount Kp within the time Te pre-allocated for the encoding process of the one frame. An operation determining means for determining a possible operating frequency,
The moving image encoding means operates while the processor operates at the operating frequency determined by the operation determining means, and the operating power supply voltage and/or the substrate bias voltage suitable for the operating frequency within the time Te that is assigned in advance. Is a moving image coding processing system that performs coding processing of the one frame by
A moving image coding processing system, comprising: a first failure avoiding means for reducing a calculation amount of coding processing at a predetermined timing.
前記第1の破綻回避手段は、符号化が終了していないマクロブロックのうち、色差信号の情報を持つブロックを無効ブロックとして処理を行うことを特徴とする請求項1記載の動画像符号化処理システム。   2. The moving picture coding process according to claim 1, wherein the first failure avoiding means processes a block having color difference signal information among macro blocks that have not been coded as an invalid block. system. 前記第1の破綻回避手段は、符号化が終了していないマクロブロックに対し、フレーム内符号化処理を行うことを特徴とする請求項1記載の動画像符号化処理システム。   2. The moving picture coding processing system according to claim 1, wherein the first failure avoiding means performs intraframe coding processing on macroblocks that have not been coded. 前記第1の破綻回避手段は、符号化が終了していないマクロブロックに対し、動きベクトル検出を行うことなく動きベクトルを0としてフレーム間符号化処理を行うことを特徴とする請求項1記載の動画像符号化処理システム。   The first failure avoiding means performs inter-frame coding processing on a macroblock for which coding has not been completed by setting a motion vector to 0 without performing motion vector detection. Video coding processing system. 前記第1の破綻回避手段は、符号化が終了していないマクロブロックに対し、量子化ステップサイズを大きくして符号化処理を行うことを特徴とする請求項1記載の動画像符号化処理システム。   2. The moving picture coding system according to claim 1, wherein the first failure avoiding means performs a coding process with a large quantization step size for a macro block that has not been coded. .. 前記第1の破綻回避手段が前記一のフレームよりも後に符号化される後続フレームの符号化処理に与える影響を緩和する緩和手段を備えることを特徴とする請求項1乃至請求項5のいずれか1項に記載の動画像符号化処理システム。   6. The mitigation means for mitigating the influence of the first failure avoidance means on the coding process of the subsequent frame coded after the one frame, according to any one of claims 1 to 5. The moving image coding processing system according to item 1. 前記緩和手段は、当該一のフレームにおいて第1の破綻回避手段による処理が実行されたマクロブロックに対応する後続フレームのマクロブロックに対し、量子化ステップサイズを小さくすることを特徴とする請求項6に記載の動画像符号化処理システム。   7. The relaxation unit reduces the quantization step size for a macroblock of a subsequent frame corresponding to the macroblock on which the processing by the first failure avoidance unit is executed in the one frame. The moving image coding processing system according to item 1. 前記第1の破綻回避手段により前記一のフレームの符号化処理の演算量が削減された場合、当該一のフレームよりも後に符号化処理される後続フレームの必要演算量を増加させることを特徴とする請求項1乃至請求項7のいずれか1項に記載の動画像符号化処理システム。   When the calculation amount of the coding process of the one frame is reduced by the first failure avoiding means, the necessary calculation amount of a subsequent frame to be coded after the one frame is increased. The moving image coding processing system according to any one of claims 1 to 7. 前記後続フレームの必要演算量、又は、必要演算量の算出に用いられる要素について、m倍(mは1以上の実数)、又は、0より大きい実数nを加算することにより、前記後続フレームの必要演算量を増加させることを特徴とする請求項8記載の動画像符号化又は復号化処理システム。   The required amount of the subsequent frame is calculated by adding m times (m is a real number greater than or equal to 1) or a real number n larger than 0 to the required amount of operation of the subsequent frame or an element used to calculate the required amount of operation. 9. The moving picture coding or decoding processing system according to claim 8, wherein the amount of calculation is increased. 連続する複数のフレームから構成される動画像をフレーム単位で符号化または復号化する動画像符号化又は復号化手段として機能するプロセッサを備え、
一のフレームの符号化又は復号化に必要な必要演算量Kpを計算する必要演算量計算手段と、当該一のフレームの符号化又は復号化処理に予め割り当てられている時間Te内に前記必要演算量Kpを符号化又は復号化処理可能な動作周波数を決定する動作決定手段とを備え、
当該プロセッサが、予め割り当てられている時間Te内は、当該動作決定手段により決定された動作周波数、及び、当該動作周波数に適する動作電源電圧及び/又は基板バイアス電圧で動作しながら当該動画像符号化又は復号化手段により当該一のフレームの符号化又は復号化処理を行う動画像符号化又は復号化処理システムであり、
前記必要演算量算出手段で算出された必要演算量Kpが実際に必要な演算量よりも小さい場合、当該一のフレームよりも後に符号化又は復号化される後続フレームの必要演算量を増加させる第2の破綻回避手段を備えることを特徴とする動画像符号化又は復号化処理システム。
A processor functioning as a moving picture coding or decoding means for coding or decoding a moving picture composed of a plurality of continuous frames in frame units is provided.
Necessary calculation amount calculation means for calculating a necessary calculation amount Kp necessary for encoding or decoding one frame, and the necessary calculation within a time Te pre-allocated for the encoding or decoding process of the one frame. An operation determining means for determining an operating frequency capable of encoding or decoding the quantity Kp,
The moving image encoding is performed while the processor operates at the operation frequency determined by the operation determining means and the operation power supply voltage and/or the substrate bias voltage suitable for the operation frequency within the time Te that is assigned in advance. Or a moving picture coding or decoding processing system for performing coding or decoding processing of the one frame by a decoding means,
When the required calculation amount Kp calculated by the necessary calculation amount calculation means is smaller than the actually required calculation amount, the necessary calculation amount of a subsequent frame encoded or decoded after the one frame is increased. 2. A moving picture coding or decoding processing system, characterized in that it comprises a failure avoiding means (2).
前記第2の破綻回避手段は、前記後続フレームの必要演算量、又は、必要演算量の算出に用いられる要素について、m倍(mは1以上の実数)、又は、0より大きい実数nを加算することを特徴とする請求項10記載の動画像符号化又は復号化処理システム。   The second failure avoidance means adds m times (m is a real number of 1 or more) or a real number n larger than 0 to the required calculation amount of the subsequent frame or an element used for calculating the necessary calculation amount. 11. The moving picture coding or decoding processing system according to claim 10. 連続する複数のフレームから構成される動画像をフレーム単位で符号化または復号化する動画像符号化又は復号化手段として機能するプロセッサを備え、
一のフレームの符号化又は復号化に必要な必要演算量Kpを計算する必要演算量計算手段と、当該一のフレームの符号化又は復号化処理に予め割り当てられている時間Te内に前記必要演算量Kpを符号化又は復号化処理可能な動作周波数を決定する動作決定手段とを備え、
当該プロセッサが、予め割り当てられている時間Te内は、当該動作決定手段により決定された動作周波数、及び、当該動作周波数に適する動作電源電圧及び/又は基板バイアス電圧で動作しながら動画像符号化又は復号化手段により当該一のフレームの符号化又は復号化処理を行う動画像符号化又は復号化処理システムであり、
所定のタイミングで前記時間Teを延長する第3の破綻回避手段を備えることを特徴とする動画像符号化又は復号化処理システム。
A processor functioning as a moving picture coding or decoding means for coding or decoding a moving picture composed of a plurality of continuous frames in frame units is provided.
Necessary calculation amount calculation means for calculating a necessary calculation amount Kp necessary for encoding or decoding one frame, and the necessary calculation within a time Te pre-allocated for the encoding or decoding process of the one frame. An operation determining means for determining an operating frequency capable of encoding or decoding the quantity Kp,
Within the time Te pre-allocated by the processor, moving image coding or while operating at the operating frequency determined by the operation determining means, and the operating power supply voltage and/or the substrate bias voltage suitable for the operating frequency. A moving image encoding or decoding processing system for performing encoding or decoding processing of the one frame by a decoding means,
A moving picture encoding or decoding processing system comprising a third failure avoiding means for extending the time Te at a predetermined timing.
前記第3の破綻回避手段は、前記一のフレームの符号化処理に予め割り当てられている時間Teを延長した場合に、前記一のフレームよりも後に符号化又は復号化される後続フレームについて、当該後続フレームの符号化処理又は復号化処理に予め割り当てられている時間Teを変更することを特徴とする請求項12記載の動画像符号化又は復号化処理システム。   The third failure avoidance means may be configured to detect a subsequent frame that is encoded or decoded after the one frame when the time Te previously assigned to the encoding process of the one frame is extended. 13. The moving picture coding or decoding processing system according to claim 12, wherein the time Te which is previously allocated to the coding processing or the decoding processing of the subsequent frame is changed. 前記第3の破綻回避手段は、前記一のフレームの符号化処理に予め割り当てられている時間Teを延長した場合に、次に符号化されるフレームを格納する入力フレームメモリに対して、フレームの書き込み先を変更することを特徴とする請求項12又は請求項13記載の動画像符号化処理システム。   The third corruption avoiding means, when the time Te pre-allocated for the encoding processing of the one frame is extended, stores the frame in the input frame memory for storing the next frame to be encoded. 14. The moving image coding processing system according to claim 12, wherein the writing destination is changed. 前記第3の破綻回避手段は、前記一のフレームの符号化処理に予め割り当てられている時間Teを延長した場合に、次に符号化されるフレームを格納する入力フレームメモリに対して書き込み不可とすることを特徴とする請求項12又は請求項13記載の動画像符号化処理システム。   The third failure avoidance means, when the time Te previously assigned to the encoding processing of the one frame is extended, determines that the input frame memory storing the next encoded frame cannot be written. 14. The moving picture coding system according to claim 12 or claim 13. プロセッサを使用して連続する複数のフレームから構成される動画像をフレーム単位で符号化する動画像符号化ステップと、一のフレームの符号化に必要な必要演算量Kpを計算する必要演算量計算ステップと、当該一のフレームの符号化処理に予め割り当てられている時間Te内に当該必要演算量Kpを符号化処理可能な動作周波数を決定する動作決定ステップとを備え、
当該プロセッサが、予め割り当てられている時間Te内は当該動作決定ステップにおいて得られた動作周波数、及び、当該動作周波数に適する動作電源電圧及び/又は基板バイアス電圧で動作しながら、動画像符号化又は復号化ステップにおいて当該一のフレームの符号化処理を行う動画像符号化処理方法であり、
所定のタイミングで符号化処理の実際の演算量を削減する第1の破綻回避ステップを備えることを特徴とする動画像符号化処理方法。
A moving picture coding step of coding a moving picture composed of a plurality of consecutive frames using a processor in frame units, and a necessary calculation quantity calculation for calculating a necessary calculation quantity Kp necessary for coding one frame And an operation determining step of determining an operating frequency at which the necessary calculation amount Kp can be encoded within a time Te pre-allocated for encoding the one frame.
While the processor is operating at the operating frequency obtained in the operation determining step and the operating power supply voltage and/or the substrate bias voltage suitable for the operating frequency within the time Te that is assigned in advance, moving image encoding or It is a moving picture coding processing method for performing the coding processing of the one frame in the decoding step,
A moving picture coding method, comprising a first failure avoidance step of reducing an actual calculation amount of the coding processing at a predetermined timing.
プロセッサを使用して連続する複数のフレームから構成される動画像をフレーム単位で符号化又は復号化する動画像符号化又は復号化ステップと、一のフレームの符号化又は復号化に必要な必要演算量Kpを計算する必要演算量計算ステップと、当該一のフレームの符号化又は復号化処理に予め割り当てられている時間Te内に前記必要演算量Kpを符号化又は復号化処理可能な動作周波数を決定する動作決定ステップとを備え、
当該プロセッサが、予め割り当てられている時間Te内は当該動作決定ステップにより得られた動作周波数、及び、当該動作周波数に適する動作電源電圧及び/又は基板バイアス電圧で動作しながら、動画像符号化又は復号化ステップにおいて当該一のフレームの符号化又は復号化処理を行う動画像符号化又は復号化処理方法であり、
前記必要演算量算出手段で算出された必要演算量Kpが実際に必要な演算量よりも小さい場合、当該一のフレームよりも後に符号化又は復号化される後続フレームの必要演算量を増加させる第2の破綻回避ステップを備えることを特徴とする動画像符号化又は復号化処理方法。
A moving picture coding or decoding step of coding or decoding a moving picture composed of a plurality of consecutive frames using a processor in frame units, and necessary operations necessary for coding or decoding one frame A necessary calculation amount calculation step of calculating the amount Kp, and an operating frequency at which the necessary calculation amount Kp can be encoded or decoded within a time Te pre-allocated for the encoding or decoding process of the one frame. And a motion determining step for determining,
While the processor is operating at the operating frequency obtained by the operation determining step and the operating power supply voltage and/or the substrate bias voltage suitable for the operating frequency within the time Te that is assigned in advance, moving image coding or A moving image encoding or decoding method that performs encoding or decoding of the one frame in the decoding step,
When the required calculation amount Kp calculated by the necessary calculation amount calculation means is smaller than the actually required calculation amount, the necessary calculation amount of a subsequent frame encoded or decoded after the one frame is increased. 2. A moving picture coding or decoding processing method, characterized by comprising the step 2 of avoiding a failure.
プロセッサを使用して連続する複数のフレームから構成される動画像をフレーム単位で符号化又は復号化する動画像符号化ステップと、一のフレームの符号化又は復号化に必要な必要演算量Kpを計算する必要演算量計算ステップと、当該一のフレームの符号化又は復号化処理に予め割り当てられている時間Te内に前記必要演算量Kpを符号化又は復号化処理可能な動作周波数を決定する動作決定ステップとを備え、
当該プロセッサが、予め割り当てられている時間Te内は当該動作決定ステップにおいて得られた動作周波数、及び、当該動作周波数に適する動作電源電圧及び/又は基板バイアス電圧で動作しながら、動画像符号化又は復号化ステップにおいて当該一のフレームの符号化又は復号化処理を行う動画像符号化又は復号化処理方法であり、
所定のタイミングで当該時間Teを延長する第3の破綻回避ステップを備えることを特徴とする動画像符号化又は復号化処理方法。
A moving image coding step of coding or decoding a moving image composed of a plurality of consecutive frames by using a processor in frame units, and a necessary calculation amount Kp necessary for coding or decoding one frame. A necessary calculation amount calculation step of calculating, and an operation of determining an operating frequency at which the necessary calculation amount Kp can be encoded or decoded within a time Te pre-allocated to the encoding or decoding process of the one frame. And a decision step,
While the processor is operating at the operating frequency obtained in the operation determining step and the operating power supply voltage and/or the substrate bias voltage suitable for the operating frequency within the time Te that is assigned in advance, moving image encoding or A moving image encoding or decoding method that performs encoding or decoding of the one frame in the decoding step,
A moving picture coding or decoding processing method comprising a third failure avoidance step of extending the time Te at a predetermined timing.
JP2006528865A 2004-07-02 2005-07-01 Moving picture coding processing system, moving picture coding or decoding processing system, moving picture coding processing method, and moving picture coding or decoding processing method Pending JPWO2006004065A1 (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2004197188 2004-07-02
JP2004197188 2004-07-02
PCT/JP2005/012250 WO2006004065A1 (en) 2004-07-02 2005-07-01 Video image encoding system, video image encoding or decoding system, video image encoding method, and video image encoding or decoding method

Publications (1)

Publication Number Publication Date
JPWO2006004065A1 true JPWO2006004065A1 (en) 2008-07-31

Family

ID=35782869

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006528865A Pending JPWO2006004065A1 (en) 2004-07-02 2005-07-01 Moving picture coding processing system, moving picture coding or decoding processing system, moving picture coding processing method, and moving picture coding or decoding processing method

Country Status (2)

Country Link
JP (1) JPWO2006004065A1 (en)
WO (1) WO2006004065A1 (en)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080056373A1 (en) * 2006-08-29 2008-03-06 Newlin John B Method and system for dynamic frequency adjustment during video decoding
JP2008136177A (en) * 2006-10-27 2008-06-12 Matsushita Electric Ind Co Ltd Motion detection apparatus, mos (metal-oxide semiconductor) integrated circuit and video system
US8098898B2 (en) 2006-10-27 2012-01-17 Panasonic Corporation Motion detection device, MOS (metal-oxide semiconductor) integrated circuit, and video system
JP4727557B2 (en) * 2006-11-30 2011-07-20 シャープ株式会社 Decoding device and decoding method
JP6065735B2 (en) * 2013-04-30 2017-01-25 富士通株式会社 Electronic circuit
CN111342937B (en) * 2020-03-17 2022-05-06 北京百瑞互联技术有限公司 Method and device for dynamically adjusting voltage and/or frequency of coding and decoding processor

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002232881A (en) * 2001-01-31 2002-08-16 Toshiba Corp Moving picture decoding method and device

Also Published As

Publication number Publication date
WO2006004065A1 (en) 2006-01-12
WO2006004065A8 (en) 2006-02-23

Similar Documents

Publication Publication Date Title
US7222244B2 (en) Semiconductor device including a prediction circuit to control a power status control circuit which controls the power status of a function circuit
CN1981537B (en) Method and apparatus to enable acquisition of media in streaming applications
JPWO2006004065A1 (en) Moving picture coding processing system, moving picture coding or decoding processing system, moving picture coding processing method, and moving picture coding or decoding processing method
JP3772183B2 (en) Moving picture coding processing system, moving picture decoding processing system, moving picture coding processing program, and moving picture decoding processing program
US11425371B2 (en) Intra/inter mode decision for predictive frame encoding
US20110216829A1 (en) Enabling delta compression and modification of motion estimation and metadata for rendering images to a remote display
US20070030899A1 (en) Motion estimation apparatus
JP4521508B2 (en) Digital VLSI circuit and image processing system incorporating the same
JPWO2004093458A1 (en) Moving image encoding or decoding processing system and moving image encoding or decoding processing method
US20210058623A1 (en) Methods and systems for encoding pictures associated with video data
WO2005096634A1 (en) Multi-task processing system and multi-task processing method
US7881367B2 (en) Method of video coding for handheld apparatus
US20030133504A1 (en) Image coding integrated circuit capable of reducing power consumption according to data to be processed
US20180139439A1 (en) Video processing device for encoding frames constituting hierarchical structure
WO2005062621A1 (en) Moving picture encoding or decoding system and moving picture encoding or decoding method
JP3772184B2 (en) Moving image encoding processing system, moving image decoding processing system, moving image encoding processing method, and moving image decoding processing method
US8170356B2 (en) Linear temporal reference scheme having non-reference predictive frames
Kim et al. Power-aware design with various low-power algorithms for an H. 264/AVC encoder
US20100309981A1 (en) Reuse of a search region in motion estimation of multiple target frames
Hsieh et al. Algorithm and architecture design of bandwidth-oriented motion estimation for real-time mobile video applications
KR101678138B1 (en) Video encoding method, device, and program
Kawakami et al. A feed-forward dynamic VDD-VBB-frequency management for low power motion video compression on 90nm RISC processor
Hsieh et al. Bandwidth-constrained motion estimation for real-time mobile video application
Watanabe et al. H. 264/AVC HDTV Video Codec LSI
TAKEMURA et al. A FEED-FORWARD DYNAMIC VDD-VBB-FREQUENCY MANAGEMENT FOR LOW POWER MOTION VIDEO COMPRESSION ON 90NM RISC PROCESSOR KENTARO KAWAKAMI, MIWAKO KANAMORI, YASUHIRO MORITA