JP2004078889A - Multitasking control device and music data reproducing device - Google Patents
Multitasking control device and music data reproducing device Download PDFInfo
- Publication number
- JP2004078889A JP2004078889A JP2003050482A JP2003050482A JP2004078889A JP 2004078889 A JP2004078889 A JP 2004078889A JP 2003050482 A JP2003050482 A JP 2003050482A JP 2003050482 A JP2003050482 A JP 2003050482A JP 2004078889 A JP2004078889 A JP 2004078889A
- Authority
- JP
- Japan
- Prior art keywords
- task
- operation mode
- processor
- control device
- processing
- 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.)
- Withdrawn
Links
Images
Landscapes
- Mobile Radio Communication Systems (AREA)
- Telephone Function (AREA)
Abstract
Description
【0001】
【発明の属する技術分野】
本発明は、複数のタスクをプロセッサに並行して処理させるマルチタスク制御装置および音楽データ再生装置に関する。
【0002】
【従来の技術】
近年、音声、オーディオ、画像等のデータ圧縮処理を高速(例えば、285MIPS)に処理することができるプログラム制御方式の汎用デジタルシグナルプロセッサ(DSP)が開発され、デジタル携帯電話機や、モバイルAV機器などの他、モデム装置、CD装置、MD装置、DVC装置、DVD装置などに幅広く用いられている。このようなプロセッサを搭載したコンピュータ装置、例えば携帯電話機では、通話用のプログラムをプロセッサに実行させることによって通話機能を実現させているが、この携帯電話機に対して、例えば音楽録音・再生装置としても利用したい、TV受信機としても利用したい、しかも音楽を録音しながらTVを視聴している最中に電話がかかってくると通話も並行して行いたいといった要望がよせられている。このため、この種のコンピュータ装置に機能の拡張・変更が容易なマルチタスク制御装置を実装し、種々の機能を実現する複合化が図られつつある。
【0003】
このマルチタスク制御装置は、例えば、音楽録音や再生用のタスク、TV受信用のタスク、通話用のタスクの3つのタスクのそれぞれを処理能力が高いプロセッサに並行して処理させるものであって、タスクの起動および停止を管理するタスク管理装置等から成り、このタスク管理装置等はプロセッサ上で動作するリアルタイムOSが提供する機能により実現される。
【0004】
ところで、音楽を録音や、再生しながらTVを視聴している最中に通話もしたいといった上記要望に応えるためには、TV受信用のタスクの処理に例えば150MIPS、通話用のタスクの処理に例えば100MIPSの負荷がプロセッサにかかると仮定すると、プロセッサの余力は35MIPSとなる。
【0005】
そこで、従来では、輻輳したタスク処理の破綻を回避すべく、30MIPS程度の負荷で収まるように命令数をできるだけ少なくした音楽録音や再生用のタスクを作成し、プロセッサの処理能力の範囲内で、音楽録音・再生や、TV受信、通話を輻輳して処理することができるようにしている。
【0006】
なお、デジタルオーディオ信号を複数の周波数帯域に分割し、各帯域ごとに符号化を行う音声符号化方式であって、上記分割された各帯域に対するビット割り当て情報を生成し、それぞれ処理量の異なるビット割り当て手段を複数有する音声符号化方式がある。そして、外部からの制御情報に基づいて、上記複数のビット割り当て手段の中から、所定のビット割り当て手段を用いて処理がなされるように、使用するビット割り当て手段を切り替えてビット割り当てを実行して、符号化を行うことを特徴とする音声符号化方式がある(例えば、特許文献1参照。)。これによって、この音声符号化方式では、パソコンのCPU処理能力および他のアプリケーションのCPU占有率に左右されず、実時間で音のときれがない高音質の符号化データの作成を実現している。
【0007】
【特許文献1】
特開2000−78018号公報(第1頁、第1図)
【0008】
【発明が解決しようとする課題】
しかしながら、このようなマルチタスク制御装置や、このマルチタスク制御装置を実装する音楽データ再生装置においても、音楽を録音・再生しながらTVを視聴している最中に通話もするといった事態は、非常にまれにしか起こらないケースであり、音楽の録音・再生機能等単機能だけを使う使われ方が通常行われる。このような単機能だけの利用時、例えば音楽録音・再生時には、その音楽録音/再生のタスクの処理に30MIPSの負荷がプロセッサにかかるだけで、255MIPSもの処理能力を余した贅沢な使い方がなされている。
【0009】
ところで、音声信号のエンコード処理やデコード処理はスケーラビリティが非常に高い。例えば、エンコード処理やデコード処理に要する命令数が少なく、プロセッサに対する負荷が上記のような30MIPS程度の低さであると音質が低いが、エンコード処理に要する命令数が多くなり、プロセッサに対する負荷が200MIPS程度にまで高くなるほど、原音と差がないほどにまで音質が高くなる性質を有している。
【0010】
従って、従来では、わざわざ処理能力の高いプロセッサが搭載されているにも拘わらず、その性能が十分に発揮されておらず、プロセッサにかかる負荷が低い分、品質(音質)が悪いという問題があった。
【0011】
この問題を解決するために、音楽録音・再生用のタスクの命令数を多くし、音楽録音用のタスクの処理に200MIPSの負荷がプロセッサにかかるようにすることで、プロセッサの性能を十分に発揮させ、音質を高めることが考えられる。
【0012】
しかしながら、この場合には、音楽録音・再生中にTVを視聴したり、通話したりすると、負荷が処理能力を超えてしまい、破綻状態となってしまう。
このような事態は、タスクの種別の如何に拘わらずいえることであって、破綻と品質とのトレードオフが生じる。
【0013】
なお、上記公報に開示される音声符号化方式は、携帯電話のプロセッサよりも数十倍〜数百倍の処理能力を有するCPUの下で利用されるので、上記の問題点が生じることはほとんどないと考えられるのに対して、処理能力が高くなったとはいってもパソコンに用いられるCPUの数十分の1〜数百分の1の処理能力のプロセッサを用いざるを得ない場合には、上記の問題点は重要な課題となる。
【0014】
本発明は、このような従来の問題点に鑑みてなされたものであって、タスクの輻輳状態の如何に拘わらず、比較的処理能力が低いプロセッサの破綻を回避しつつ品質を向上することができるマルチタスク制御装置および音楽データ再生装置を提供することを目的とする。
【0015】
【課題を解決するための手段】
上記の課題を解決するため、本発明に係るマルチタスク制御装置は、複数の動作モードを有する第1タスクを含む複数のタスクをプロセッサに並行して処理させるマルチタスク制御装置であって、前記第1タスクを起動すべきか否かを判断する判断手段と、前記判断手段が前記第1タスクを起動すべきと判断した場合に、前記プロセッサの処理能力の範囲内で処理できる機能に対応する動作モードで第1タスクをプロセッサに処理させるモード制御手段とを備えることを特徴とする。具体的には、前記第1タスクは、デジタルオーディオ信号を再生処理するタスクであり、前記機能は、音質を制御する機能であり、前記モード制御手段は、前記判断手段が前記第1タスクを起動すべきと判断した場合に、前記プロセッサの処理能力の範囲内で、かつ最も高い音質に対応する動作モードで第1タスクをプロセッサに処理させることを特徴とすることができる。
【0016】
この結果、プロセッサに余力がある場合には第1タスクの処理できる機能の選択の範囲(選択の幅)が広がり、余力がない場合には選択の幅が狭まることになる。これにより、前記モード制御手段は、前記プロセッサの処理能力の範囲内で、かつ最も高い機能に対応する動作モードで第1タスクをプロセッサに処理させることができる。従って、タスクの輻輳状態の如何に拘わらず、プロセッサの破綻を確実に回避しつつ、再生された音質を向上することができる。
【0017】
ここで、前記機能は、前記プロセッサの処理能力の範囲内で、かつ最も高い機能であり、前記モード制御手段は、前記最も高い機能に対応する動作モードで第1タスクをプロセッサに処理させることを特徴としてもよい。また、前記機能は、前記プロセッサにかかる負荷が大きくなると共に高くなり、前記モード制御手段は、前記判断手段が前記第1タスクを起動すべきと判断した場合に、前記プロセッサの処理能力の範囲内で、かつ最も大きい負荷に対応する動作モードで第1タスクをプロセッサに処理させることを特徴としてもよい。
【0018】
また、前記機能は、前記プロセッサが処理する命令数が多くなると共に高くなり、前記モード制御手段は、前記判断手段が前記第1タスクを起動すべきと判断した場合に、前記プロセッサの処理能力の範囲内で、かつ最も多い命令数に対応する動作モードで第1タスクをプロセッサに処理させることを特徴としてもよい。さらに、前記機能は、前記プロセッサの処理能力の範囲内で、かつ最も高い音質を制御するフィルタ機能であり、前記モード制御手段は、前記判断手段が前記第1タスクを起動すべきと判断した場合に、前記プロセッサの処理能力の範囲内で、かつ最も多いタップ数のフィルタ処理に対応する動作モードで第1タスクをプロセッサに処理させることを特徴としてもよい。
【0019】
また、前記モード制御手段は、前記プロセッサに処理される対象タスクの状態変化を検出する状態変化検出手段と、前記状態変化後に起動させるタスクを特定する特定手段と、前記特定手段によって特定されたタスクの中に第1タスクが含まれている場合、第1タスクの動作モードを決定する動作モード決定手段とを備えることを特徴とすることができる。これによって、対象タスクの状態変化が生じる場合に、第1タスクの動作モードの決定を適切なタイミングに行うことができる。
【0020】
この場合、前記動作モード決定手段は、前記特定手段によって特定されたタスクと前記状態変化後に起動させる第1タスクの動作モードとを対応させた動作モード設定テーブルを有し、前記動作モード決定手段は、前記動作モード設定テーブルに基づいて、第1タスクの動作モードを決定するようにしてもよい。また、前記動作モード決定手段は、前記特定手段によって特定されたタスクの数と前記状態変化後に起動させる第1タスクの動作モードとを対応させた動作モード設定テーブルを有し、前記動作モード決定手段は、前記動作モード設定テーブルに基づいて、第1タスクの動作モードを決定するようにしてもよい。従って、第1タスクの動作モードを簡単に決定することができる。
【0021】
また、前記動作モード決定手段は、前記状態変化後に起動させる第1タスクの処理に対して割り当て可能な負荷を算出する負荷算出手段と、前記負荷算出手段が算出した負荷と前記第1タスクの各動作モードの処理に要する負荷とをそれぞれ比較する比較手段とを備え、前記動作モード決定手段は、前記比較手段による比較結果に基づいて、第1タスクの動作モードを決定するようにしてもよい。この場合、前記動作モード決定手段は、さらに各前記タスクの起動要求を受け付ける起動要求受付手段と、前記第1タスクの処理中に前記起動要求受付手段が第1タスク以外の他のタスクの起動要求を受け付けた場合において、前記負荷算出手段が算出した負荷が第1タスクの最も低い機能の動作モードに対して設定されたしきい値未満であるとき、前記他のタスクの起動を禁止する起動禁止手段とを備えることを特徴とすることができる。これによって、第1タスクの最も低い機能の動作モードが継続してリアルタイムに処理することが確実に確保され、音のとぎれを防止することができる。
【0022】
また、前記動作モード決定手段は、さらに各前記タスクの起動要求を受け付ける起動要求受付手段と、前記第1タスクの処理中に前記起動要求受付手段が第1タスク以外の他のタスクの起動要求を受け付けた場合、前記他のタスクの起動を禁止する起動禁止手段とを備えることを特徴とすることができる。これによって、第1タスクの動作モードの変更が防止され、一定音質での音楽再生処理を継続することができる。
【0023】
また、前記動作モード決定手段は、前記状態変化後に起動させる第1タスクの処理に対して割り当て可能な命令数を算出する命令数算出手段と、前記命令数算出手段が算出した命令数と前記第1タスクの各動作モードの処理に要する命令数とをそれぞれ比較する比較手段とを備え、前記動作モード決定手段は、前記比較手段による比較結果に基づいて、動作モードを決定することを特徴としてもよい。この場合に、前記動作モード決定手段は、さらに各前記タスクの起動要求を受け付ける起動要求受付手段と、前記第1タスクの処理中に前記起動要求受付手段が第1タスク以外の他のタスクの起動要求を受け付けた場合において、前記命令数算出手段が算出した命令数が第1タスクの最も低い機能の動作モードに対して設定されたしきい値未満であるとき、前記他のタスクの起動を禁止する禁止手段とを備えることを特徴とすることができる。これによっても、第1タスクの最も低い機能の動作モードが継続してリアルタイムに処理することが確実に確保され、音のとぎれを防止することができる。
【0024】
また、前記動作モード決定手段は、さらに各前記タスクの起動要求を受け付ける起動要求受付手段と、前記第1タスクの処理中に前記起動要求受付手段が第1タスク以外の他のタスクの起動要求を受け付けた場合、前記他のタスクの起動を禁止する禁止手段とを備えることを特徴とすることができる。これによっても、第1タスクの動作モードの変更が防止され、一定音質での音楽再生処理を継続することができる。
【0025】
さらに、前記モード制御手段は、前記動作モード決定手段が決定した動作モードに対応付けられたパラメータを第1タスクに設定し、当該パラメータに対応する動作モードで第1タスクをプロセッサに処理させることを特徴とすることもできる。これによって、パラメータの設定という簡単な処理で第1タスクの動作モードを容易に遷移させ、負荷や命令数を変えることができる。
【0026】
また、上記の課題を解決するため、本発明に係る音楽データ再生装置は、複数の動作モードを有する音楽再生タスクを含む複数のタスクをプロセッサに並行して処理させるマルチタスク制御装置を備える音楽データ再生装置であって、前記マルチタスク制御装置は、前記音楽再生タスクを起動すべきか否かを判断する判断手段と、前記判断手段が前記音楽再生タスクを起動すべきと判断した場合に、前記プロセッサの処理能力の範囲内で処理できる最も音質の高い機能に対応する動作モードで第1タスクをプロセッサに処理させるモード制御手段とを備えることを特徴とする。具体的には、前記音楽データ再生装置は、携帯性を有し、前記プロセッサに並行して処理される音楽再生タスク以外の他のタスクは、TVビュー、ブラウジング、メールおよび通話の少なくともいずれか1つであることを特徴とすることができる。これによって、携帯電話機等の携帯性の高い装置を、音質の高い音楽データ再生装置として使用しながら、TVビューや、ブラウジング、メールおよび通話を並行して行うことができる。
【0027】
以上のように本願発明によれば、演算資源に余裕のあるときは、高音質なオーディオ信号処理が行え、演算資源に余裕がないときでも、演算資源を軽減し、破綻を生じない範囲でかつ最も高い音質で処理を円滑に行うことができるので、本願発明の実用的価値は極めて高い。
【0028】
なお、本発明は、上記マルチタスク制御装置が備える全ての手段を、ステップとするマルチタスク制御方法として実現したり、その全ての手段としてコンピュータに機能させるプログラムとして実現したりすることもできる。そして、そのプログラムをDVD等の記録媒体やインターネット等の伝送媒体を介して広く流通させることができるのはいうまでもない。
【0029】
【発明の実施の形態】
以下、本発明の実施の形態に係るマルチタスク制御装置を図面に基づいて説明する。
(実施の形態1)
図1は、本実施の形態1に係るマルチタスク制御装置1aの全体構成を示すブロック図である。
【0030】
このマルチタスク制御装置1aは、例えば携帯電話機を複合化するための複数(図示3つ)のタスク(第1のタスク101a、第2のタスク102aおよび第3のタスク103a)のそれぞれをプロセッサ10に並行して処理させるものであって、タスク管理装置20aと、モード設定装置30aとから構成され、プロセッサ10上で動作するリアルタイムOSに組み込まれる機能によって実現される。
【0031】
プロセッサ10によって処理される第1のタスク101aは、第1の機能(例えば、音楽録音(オーディオ信号のエンコード))を実現する1つのプログラムであって、ISO/IEC 13818−7 Advanced Audio Coding(これを以下、単に「AAC」とも記載する。)の規格に従い、モード設定装置30aによって設定されるパラメータの値に応じて、オーディオ信号のエンコード処理に用いる符号化のツール(例えば、聴覚モデル、TNS(Temporal Noise Shaping)、予測、M/S(Middle/Side)ステレオ、AAC量子化・符号化等)のアルゴリズムを変化させ、音質が高、中、低の3段階に変化する3つの動作モード(動作モードA、動作モードBおよび動作モードC)からなる。即ち、動作モードAは、動作モードBや動作モードCより多くの負荷をプロセッサ10にかけて音質向上を図る動作モードである。より詳しくは、動作モードC、動作モードB、動作モードAの順番に最高音質に対する追求する度合いが高くなるアルゴリズムが使用される結果、この順番に演算量(命令数)が多くなってプロセッサ10に対する負荷が大きくなり、この順に再生される音質が高くなる。
【0032】
具体的には、パラメータの値が「1」である場合、第1のタスク101aは、プロセッサ10に対して200MIPSの負荷N11をかける動作モードAを実行する。この動作モードAの場合には、第1のタスク101aは、原音と差がない程度の最高音質の再生音が得られる圧縮音声データを生成する。また、パラメータの値が「2」である場合、第1のタスク101aは、プロセッサ10に対して50MIPSの負荷N12をかける動作モードBを実行する。この動作モードBの場合には、第1のタスク101aは、動作モードAの場合よりも少し劣る音質(中音質)の再生音が得られる圧縮音声データを生成する。
【0033】
さらに、パラメータの値が「3」である場合、第1のタスク101aは、プロセッサ10に対して30MIPSの負荷N13をかける動作モードCを実行する。この動作モードCの場合には、第1のタスク101aは、動作モードBの場合よりも少し劣る音質(低音質)の再生音が得られる圧縮された音声データを生成する。
【0034】
第2のタスク102aは、プロセッサ10に対して例えば単位時間当たり150MIPSの負荷N2をかけることによって、第2の機能(例えば、TV受信、即ちビデオデコード(Vdec)およびオーディオデコード(Adec))を実現するためのプログラムである。
【0035】
さらに、第3のタスク103aは、プロセッサ10に対して例えば単位時間当たり100MIPSの負荷N3をかけることによって、第3の機能(例えば、(通話(SpeachおよびEcho Cancel))を実現するプログラムである。
【0036】
プロセッサ10は、第1のタスク101a〜第3のタスク103aのいずれか1つ或いは2以上の組み合わせを、例えば単位時間当たり285MIPS=Nmaxで処理する能力を有するプロセッサである。
【0037】
タスク管理装置20aは、各タスク101a〜103aの起動および停止を管理する。より詳しくは、タスク管理装置20aは、各タスクの状態を示す区分コードと、各タスクの先頭番地・処理を中断したときのフラグやレジスタの退避領域などから構成されるタスク・コントロール・ブロック(TCB)や、ディスパッチャー、スケジューラ等を備えており、音楽を録音するためのボタンが操作されたり、TVを視聴するためのボタンが操作されたり、電話がかかってきてオフフックボタンが操作されるようなイベントが発生した場合や、終了した場合に、次に起動すべきタスクや停止すべきタスクを特定し、この特定によってプロセッサ10に処理される対象タスクの状態変化を検出し、検出された対象タスクの状態変化をモード設定装置30aに通知したり、TCBによって各タスク101a〜103aを予定通りに起動したり停止したりする。
【0038】
モード設定装置30aは、動作モード設定テーブル31aを備えており、タスク管理装置20aから対象タスクの状態変化、即ちタスクの起動や停止の予定の通知があり、起動予定のタスクの中に第1のタスク101aが含まれていると、動作モード設定テーブル31aを参照し、第1のタスク101a以外のタスクが輻輳しているか否か等によって、第1のタスク101aの動作モードを決定し、決定した動作モードに応じたパラメータを第1のタスク101aに設定する。
【0039】
図2は、図1に示される動作モードA〜動作モードCのプロセッサ10に対する単位時間当たりの負荷と音質との関係を示す図である。
ここで、AACは、オーディオ信号の符号化されたビットストリームの一部分が用いられても音声が再生可能なように、階層化(スケーラビリティ)された構造を持っており、異なる複数のアルゴリズム、即ち全てのツールを組み合わせることにより、業務用のエンコーダのように最高品質を追求したアルゴリズムを採用したり、ツールの一部(例えば予測ツール)を省略したり、簡略化したりすることにより、SDプレーヤのように業務用のエンコーダよりも品質を落としたアルゴリズムや、ポータブルCDプレーヤのようにSDプレーヤよりも品質を落としたアルゴリズムを採用したりすることができる。
【0040】
例えば、高音質なオーディオのエンコード処理では、聴感的な音質向上のために、聴覚のマスキング現象などを模擬した聴覚モデルという処理が行われる(AAC参照)。ところが、原音と差がない再生音を得るためのエンコード処理を行うと、命令数が膨大となり、この処理には多大の負荷が必要となる。これに対して、この処理を簡略化すると、簡略化の度合いに応じて音質の劣化が徐々に進む一方、命令数が大幅に減少し、この処理に要する負荷を大幅に削減できる。このような場合、聴覚モデルを十分に考慮し、この原音と差がない再生音を得るためのエンコード処理を行うためのプログラムが動作モードAである。そして、第1タスク101aの処理を動作モードAより簡略化した動作モードが「B」であり、この動作モードBをさらに簡略化した動作モードが「C」である。
【0041】
また、高音質なオーディオエンコードでは、エンコード時の圧縮歪をできるだけ聴感上気にならないレベルに押さえ込むために、エンコードパラメータを繰り返し変更したり、修正したりしながら圧縮処理が行われる(AAC参照)。これにも多大の負荷が必要である。これに対して、この処理を簡略化すると、簡略化の度合いに応じて音質の劣化が徐々に進む一方、負荷を大幅に削減できる。このような場合、例えば、エンコードパラメータ変更、修正の繰り返し回数を多数行うモードが動作モードAであり、それを簡略化したモードが動作モードB,動作モードCということになる。
【0042】
これらの具体例として、動作モードAのプログラムでは、聴覚特性として周波数成分ごとに最低可聴レベルが異なること(いわゆるラウドネス特性があること)、マスキング特性があること、絶対時間のずれや位相の違いに鈍感であること等が考慮されており、例えば、音声信号のレベルに応じてフィルタ特性を変更し、低周波域および高周波域のレベル増強度を変えたり、音声信号のレベル(振幅)に応じてその信号を周波数軸の目盛がバーク尺度となったマスキング特性(即ち、周波数が低い部分ではマスキングの及ぶ範囲を狭く、高い部分では広げたマスキング特性)に合わせて畳み込み、その信号近傍のレベルの低い信号をマスキング処理することにより量子化雑音を低減したりする。
【0043】
また、動作モードBのプログラムでは、例えば、上記マスキング特性について、周波数が低い部分と高い部分とで同じマスキングの及ぶ範囲とすることで、単位時間当たりの負荷を動作モードAの場合よりも大幅に低減している。さらに、動作モードCのプログラムでは、例えば、音声信号のレベルの如何に拘わらず同じフィルタ特性を用い、低周波域および高周波域のレベルを増強することで、単位時間当たりの負荷を動作モードBの場合よりも少し低減している。
【0044】
図3は図1に示される動作モード設定テーブル31aの詳細を示す図であり、図4はプロセッサの処理能力と、第1のタスク101aの動作モードとの関係を示す図である。特に、図4(a)は第1のタスク101aだけが起動された場合の状態を、図4(b)は第1のタスク101aと第2のタスク102aとが輻輳して起動された場合の状態を、図4(c)は第1のタスク101aと第2のタスク102aと第3のタスク103aとの3つのタスクが輻輳して起動された場合の状態を、それぞれ示している。
【0045】
図3に示される動作モード設定テーブル31aは、実行させなければならないタスクと、実行される第1のタスク101aの動作モードとの関係を示すものである。なお、図中に示される「○」はタスクの起動状態を、「×」はタスクの停止状態を、「−」は第1のタスク101aに対する動作モードを設定しないことを示しており、第1のタスク101aが起動されない場合もあわせて図示されている。
【0046】
この動作モード設定テーブル31aにおいては、タスク管理装置20aから第1のタスク101aだけを起動させる旨の通知を受けた場合、モード設定装置30aは、第1のタスク101aに対して最も負荷が高い動作モードA(単位時間当たりの負荷N11、例えば200MIPS)で動作させることが示されている。この動作モードAで動作させる理由は、次の通りである。プロセッサ10の処理能力Nmax=285MIPSを図4(a)に示される枠で表すと、プロセッサ10の処理能力の全てを第1のタスク101aの処理に充てることができる。この場合、動作モードA〜動作モードCのいずれもプロセッサ10の処理能力の範囲に収まるので、いずれをも設定することができるが、各動作モードの内では動作モードAの音質が一番高い。そこで、第1のタスク101aとして、最高音質の動作モードAで動作させることとしたものである。即ち、プロセッサ10が破綻を来さない範囲で一番品質の高い動作モードAで動作させることとしたものである。
【0047】
また、この動作モード設定テーブル31aにおいては、タスク管理装置20aから第2のタスク102a(150MIPS)と、第1のタスク101aとの2つのタスクを輻輳して起動させる旨の通知を受けた場合、モード設定装置30aは、第1のタスク101aに対して動作モードAよりも負荷が軽い動作モードB(50MIPS)で動作させることが示されている。この動作モードBで動作させる理由は次の通りである。図4(b)に示されるように、プロセッサ10の処理能力の内、第2のタスク102aの処理にN2=150MIPSの負荷かがかかる。このため、第1のタスク101aの処理に充てることができるのは、135MIPSである。このため、破綻を来さないのは動作モードB,動作モードCの2つであり、両モードのいずれをも設定することができるが、両モードの中では動作モードBが一番音質的に優れている。そこで、第1のタスク101aとして、動作モードBで動作させることとしたものである。即ち、プロセッサ10が破綻を来さない範囲で一番品質の高い動作モードBで動作させることとしたものである。
【0048】
なお、この動作モード設定テーブル31aにおいては、タスク管理装置20aから第3のタスク(100MIPS)と、第1のタスク101aとの2つのタスクを輻輳して起動させる旨の通知を受けた場合も、第2のタスク102a(150MIPS)と、第1のタスク101aとが起動される場合と同様な理由から、モード設定装置30aは、第1のタスク101aに対して動作モードB(50MIPS)で動作させるように構成されている。
【0049】
さらに、この動作モード設定テーブル31aにおいては、タスク管理装置20aから第1のタスク101a、第2のタスク102aおよび第3のタスク103aの全てを輻輳して起動させる旨の通知を受けた場合、モード設定装置30aは、第1のタスク101aに対して動作モードC(単位時間当たりの負荷N13、例えば30MIPS)で動作させることが示されている。この動作モードCが設定される理由は、破綻を来さないのは動作モードCだけであるからである。即ち、プロセッサ10が破綻を来さない範囲で一番品質の高い動作モードCで動作させることとしたものである。
【0050】
図5は、マルチタスク制御装置1aによる動作を示す図である。
タスク管理装置20aは、イベントの発生によって新たなタスクを起動したりタスクの停止が行われるような対象タスクの状態変化を検出すると(S11)、状態変化後に起動させるタスクを特定する(S12)。そして、タスク管理装置20aは、この特定によって得られた次に実行させなければならないタスクを、モード設定装置30aに通知する。
【0051】
通知を受けたモード設定装置30aは、対象タスクの中に第1のタスク101aが含まれている場合、動作モード設定テーブル31aを用いて第1のタスクの動作モードを決定し、決定した動作モードに対応したパラメータを第1のタスク101aに設定する(S13)。第1のタスク101aに対するパラメータの設定が終わると、タスク管理装置20aは、プロセッサ10に対象タスクを時分割で実行させる(S14)。
【0052】
マルチタスク制御装置1aは、このような処理(S11〜14)を繰り返すことにより、プロセッサ10の使用効率を高めつつ、第1のタスク101a〜第3のタスク103aを時分割で並行に処理し、プロセッサ10が破綻を来さない範囲で、かつ一番品質の高い動作モードで第1のタスク101aを動作させる。
【0053】
図6は、第1のタスク101aだけが起動される場合の状態遷移とプロセッサ10にかかる負荷の遷移との関係を示す図である。
図6に示される時刻T1以前は、何もタスクが起動されていない状態である。この状態で、時刻T1にタスク管理装置20aによって第1のタスク101aだけが起動される場合、モード設定装置30aは、第1のタスク101aに対してパラメータ「1」を設定することにより、動作モードAで動作させる。これによって、プロセッサ10に対する負荷は、N11=200MIPSということになり、最高品質の音声が得られる。即ち、この場合は、プロセッサ10に対する負荷に余裕があり、プロセッサ10の処理能力を全て第1のタスク101aの処理に回すことができるので、第1のタスク101aの処理について高音質なエンコードモード、動作モードAでエンコードすることを指示したのである。
【0054】
従って、従来では上記したように30MIPSの負荷がかかるだけで、低音質であったが、本実施の形態1では、従来よりも非常に大きな負荷200MIPSをかける動作モードAで第1のタスク101aを処理させるので、プロセッサ10の使用効率を大幅に上げることができ、最高の音質を得ることができる。
【0055】
図7は、第2のタスク102aが起動された後に第1のタスク101aがさらに起動された場合の状態遷移と、プロセッサ10にかかる負荷の遷移との関係を示す図である。
【0056】
図7に示される時刻T2において、タスク管理装置20aによって第2のタスク102aだけが起動された場合、第2のタスク102aが必要とする負荷N2=150MIPSがプロセッサ10にかかることになる。次に、時刻T3において、第1のタスク101aがタスク管理装置20aによってさらに起動された場合、第2のタスク102aの処理に150MIPSの負荷が必要であるので、第1のタスク101aにさくことができる処理量は(Nmax−N2)=135MIPSとなる。そして、図3に示される動作モード設定テーブル31aを参照すると、第1のタスク101aの動作モードとして動作モードB(50MIPS)が指定されている。これにより、モード設定装置30aは、動作モードBと決定し、第1のタスク101aに対してパラメータ「2」を設定し、動作モードBで動作させる。この場合、第1のタスク101aの動作モードBが必要とする負荷N12がプロセッサ10に加わることになる。即ち、この場合は、プロセッサ10の処理能力に図7の場合ほど余裕がないので、プロセッサ10が破綻を来さない範囲で、かつ一番音質の高い動作モードBを設定したのである。これによって、プロセッサ10に対する演算負荷は、(N2+N12)=200MIPSということになる。
【0057】
従って、従来では上記したように30MIPS+150MIPS=180MIPSの負荷がかかるだけであったが、本実施の形態1では、従来よりも大きな負荷をかけ、プロセッサ10の使用効率を上げることができ、しかも、従来より高い音質を得ることができる。
【0058】
図8は、第1のタスク101aが起動された後に第2のタスク102aおよび第3のタスク103aが順次さらに起動された場合の状態遷移と、プロセッサ10にかかる負荷の遷移との関係を示す図である。
【0059】
図8に示される時刻T4以前は、何もタスクが起動されていない状態である。この状態で、時刻T4において、タスク管理装置20aによって第1のタスク101aが起動された場合、第2のタスク102aおよび第3のタスク103aが起動されていないので、モード設定装置30aは、第1のタスク101aに対し、動作モードAを設定する。これによって、プロセッサ10に対する負荷は、N11=200MIPSということになる。即ち、この場合は、プロセッサ10に対する負荷に余裕があるので、高音質なエンコードモードでエンコードすることを第1のタスク101aに指示したのである。
【0060】
次に、時刻T5において、タスク管理装置20aによって第2のタスク102aがさらに起動されたとする。この場合、第2のタスク102aが必要とする演算負荷N2=150MIPSがプロセッサ10に加わることになる。この場合、第1のタスク101aの動作モードを「A」のままに維持すると、プロセッサ10にかかる負荷が350MIPSと過大となり破綻することになる。そこで、モード設定装置30aは、動作モード設定テーブル31aを参照し、動作モードを「B」(50MIPS)に決定し、第1のタスク101aに対し、動作モードBを設定する。これにより、全体では(N12+N2)=200MIPSの負荷がプロセッサ10にかかることになる。即ち、この場合は、プロセッサ10に対する負荷に動作モードAを割り当てる余裕がないので、プロセッサ10が破綻を来さない範囲で、かつ一番音質の高く、高速なエンコードモード、動作モードBでエンコードすることを第1のタスク101aに指示したのである。
【0061】
次に、時刻T6において、第3のタスク103aがタスク管理装置20aによってさらに起動されたとする。この場合、第3のタスク103aが必要とする負荷N3=100MIPSがプロセッサ10に加わることになる。この場合、第1のタスク101aの動作モードを「B」のままにしておくと、プロセッサ10にかかる負荷が300MIPSとなり、プロセッサ10が破綻状態となる。
【0062】
そこで、モード設定装置30aは、動作モード設定テーブル31aを参照し動作モードを「C」(30MIPS)と決定し、第1のタスク101aに対し、動作モードCを設定する。これにより、全体では(N13+N2+N3)=280MIPSの負荷がプロセッサ10にかかることになる。
【0063】
即ち、この場合は、動作モードBを割り当てるほどの負荷に余裕がないので、モード設定装置30aは、プロセッサ10が破綻を来さない範囲で、かつ一番音質の高く、さらに高速処理可能で負荷の軽いエンコードモード、動作モードCでエンコードすることを第1のタスク101aに指示したのである。
【0064】
次に、時刻T7において、第3のタスク103a(通話)がタスク管理装置20aによって停止されたと仮定する。この場合、第1のタスク101aと、第2のタスク102aとだけが起動されるので、モード設定装置30aは、動作モード設定テーブル31aを参照し、第1のタスク101aに対し、動作モードBを設定する。即ち、この場合は、プロセッサ10に対する演算負荷に余裕が生じるので、プロセッサ10が破綻を来さない範囲で、かつ一番音質の高いエンコードモードである動作モードBでエンコードすることを第1のタスク101aに指示したのである。これによって、プロセッサ10に対する演算負荷は、(N12+N2)=200MIPSということになる。
【0065】
次に、時刻T8において、第2のタスク102aがタスク管理装置20aによって停止されたとする。この場合、モード設定装置30aは、第1のタスク101aだけが起動されるので、モード設定装置30aは、第1のタスク101aに対し、動作モードAを設定する。即ち、この場合は、プロセッサ10に対する負荷に余裕が生じるので、高音質なエンコードモードである動作モードAでエンコードすることを第1のタスク101aに指示したのである。これによって、プロセッサ10に対する演算負荷は、N11=200MIPSということになる。
【0066】
以上のように本実施の形態1に係る発明によれば、第1のタスク101aについて高音質用、中音質用、低音質用等プロセッサ10における単位時間当たりの負荷が異なる動作モードが予め用意されており、モード設定装置30aは、タスク管理装置20aの第2のタスク102aおよび第3のタスク103aの起動・停止の状態変化ごとに第1のタスク101aの動作モードを破綻が生じない範囲で負荷の高い動作モードに設定しなおすようにしている。即ち、タスクが輻輳し多大の処理負荷がプロセッサにかかる場合は、前記第1のタスクの処理負荷を軽減するようにしている。このため、第1のタスク101aが起動されている限り、プロセッサ10の処理能力Nmaxを超えることなく、単位時間当たりの負荷をプロセッサ10にかけることができる。即ち、全体の負荷を軽減でき、かつ、負荷に余裕がある場合は、第1のタスク101aに多くの処理資源を割り当て高性能な機能を実現できることとなる。従って、プロセッサの処理能力を超えない範囲で一番高い負荷の動作モードを第1のタスク101aに設定するので、プロセッサの処理能力を最大限に利用することができ、プロセッサ10の使用効率を高めることができる。
【0067】
なお、上記実施の形態1では、3つのタスクが輻輳する場合について、その動作を説明したが、2つのタスクが輻輳する場合や、4つ以上のタスクか輻輳する場合であっても、上記実施の形態1と同じ考え方で本発明を適用できる。即ち、処理に必要な単位時間当たりの負荷が異なる複数の動作モードを備えた第1のタスクに対して、輻輳状態に応じて動作モードを切り替えるのである。もちろん、第1のタスクに対する動作モードの切り替えにおける判断の指標は、第1のタスク以外の起動しているタスクの負荷の総和である。負荷の総和が、プロセッサが備えている処理能力に対して余裕がある場合は、第1のタスクに対して余裕内の最大の負荷を与えて高性能な処理を行うようにし、負荷の総和が、プロセッサが備えている処理能力に対して余裕がない場合は、第1のタスクに対して余裕内に収まるものの内、最大の負荷を与えて高速な処理を行うように設定する。
【0068】
また、上記実施の形態1では、モード設定装置30aは動作モード設定テーブル31aを用いて第1のタスク101aの動作モードを決定したが、動作モード設定テーブル31aを使用することなく、状態変化後に第1のタスク101aに割り当て可能な処理量を特定し、プロセッサ10が破綻しない範囲で最も大きな負荷をかける第1のタスクの動作モードを決定するようにしてもよい。
【0069】
また、上記実施の形態1では、第1のタスクに対する動作モードの切り替えにおける判断の指標として、第1のタスク以外の起動しているタスクの負荷の総和を用いたが、第1のタスク以外の起動しているタスクの処理に必要な演算量の総和を用いるようにしてもよく、第1のタスク以外の起動しているタスクを構成するプログラムの命令数の総和を用いてもよい。
【0070】
また、第1のタスク以外の起動しているタスクの数を用いてもよい。この場合には、他のタスクの数が「0」であれば動作モードA、「1」であれば動作モードB、「2」であれば動作モードCというように決定、設定を行えばよく、非常に簡単に決定、設定を行える。
【0071】
また、上記実施の形態1では、第1のタスク101aについて3つの動作モードを用意したが、2つの動作モードや、4つ以上の動作モードを用意してもよい。
【0072】
また、上記実施の形態1では第1のタスク101aだけに負荷が異なる複数の動作モードを用意したが、第2のタスク102a等の他のタスクについても負荷が異なる複数の動作モードを用意してもよい。この場合には、動作モードの切り替えにおける判断の指標として、状態変化後のタスクの輻輳数等を用いればよい。
【0073】
また、上記実施の形態1では第1のタスク101aをパラメータによって動作モードを変える1つのプログラムで構成したが、同一範疇に属し、異なる複数の機能に対応したプログラムのそれぞれを第1タスクとし、第1タスクを起動すべきと判断した場合に、プロセッサの処理能力の範囲内で、かつ最も高い機能に対応する1つの第1タスクを複数の第1タスクの中から選択してプロセッサに処理させるようにしてもよい。具体的には、DVD装置などに向けて作成された業務用エンコーダ(200MIPS)と、SDプレーヤなど向けて作成されたエンコーダ、SDジュークボックス(50MIPS)と、ポータブルCDプレーヤなどに向けて作成されたエンコーダ、CDリッパー(30MIPS)との同一範疇に属する3本のプログラムがすでにある場合、これら3本のプログラム業務用エンコーダ(200MIPS)、SDジュークボックス(50MIPS)、CDリッパー(30MIPS)それぞれを第1タスクとし、第1タスクを起動すべきと判断した場合に、プロセッサの処理能力の範囲内で、かつ最も高い機能に対応する1つの第1タスクを複数の第1タスク、即ち業務用エンコーダ(200MIPS)、SDジュークボックス(50MIPS)、CDリッパー(30MIPS)の中から選択してプロセッサに処理させるようにしてもよい。
【0074】
この場合には、パラメータによって動作モードを変える1つのプログラムをわざわざ作成する必要がなく、既存のソフトを再利用することができ、既存の資源の再利用が促進される。
【0075】
さらに、上記実施の形態1では、第1のタスクが音声信号のエンコード処理である場合に適用したが、音声信号の再生処理においてもスケーラビリティが高いので、本発明を適用できる。例えば、音声信号の再生処理におけるバーチャルサラウンド機能に本発明を適用する。バーチャルサラウンド機能は、多タップのデジタルフィルタで実現するが、タップ数(FIRフィルタの係数の数)を例えば動作モードAでは8192(2の13乗)タップ、動作モードBでは128(2の7乗)タップ、動作モードCでは32(2の5乗)タップ、となるようにプログラムを構成し、タスクの輻輳数が少なければ動作モードAを設定して負荷を大きくし、音場を拡大するバーチャルサラウンド効果を最大にすればよい。一方、タスクの輻輳数が多くなれば、動作モードB、動作モードCの順に設定して負荷を小さくし、バーチャルサラウンド効果を徐々に少なくするようにすればよい。
【0076】
(実施の形態2)
図9は、本発明の実施の形態2に係るマルチタスク制御装置1bの全体構成を示すブロック図である。なお、実施の形態1に係るマルチタスク制御装置1aと対応する部分に同じ番号を付し、その説明を省略する。
【0077】
このマルチタスク制御装置1bは、実施の形態1に係るマルチタスク制御装置1aと略同構成であり、例えば携帯電話機を複合化するための複数(図示4つ)のタスク(第1のタスク101b、第2のタスク102b、第3のタスク103bおよび第4のタスク104b)をプロセッサ10に並行して処理させるものであって、タスク管理装置20bと、モード設定装置30bとから構成され、プロセッサ10上で動作するリアルタイムOSに組み込まれる機能によって実現される。
【0078】
ここで、実施の形態1のマルチタスク制御装置1aでは、第1のタスク101aと他のタスク102a,103aとが常に輻輳できるように構成され、モード設定装置30aの動作モード設定テーブル31aで第1のタスク101aの動作モードを設定していた。これに対して、この実施の形態2に係るマルチタスク制御装置1bでは、ユーザ設定によって第1のタスク101bと第1のタスク101b以外の他のタスク(第2のタスク102b、第3のタスク103b、第4のタスク104b)との輻輳を禁止したり、許可したりできるように構成され、タスク管理装置20bに設けられた動作モード設定テーブル22に基づいて第1のタスク101bの動作モードが決定される点が、実施の形態1の場合と大きく異なっている。なお、第1のタスク101bと第2のタスク102b〜第4のタスク104bとの輻輳を禁止するモードを以下「輻輳禁止モード」と、輻輳を許可するモードを以下「輻輳許可モード」とも記す。
【0079】
タスク管理装置20bは、ユーザによって設定された輻輳モード(輻輳禁止モード/輻輳許可モード)を示すフラグを格納するフラグ格納部21と、第1のタスク101bの動作モード等を決定するための動作モード設定テーブル22とを備える。このフラグ格納部21に格納されたフラグが輻輳禁止モードを表している場合には、タスク管理装置20bは、第1のタスク101bが起動された後に他のタスクの起動要求があったとき、この他のタスクの起動を禁止する。また、タスク管理装置20bは、フラグが輻輳許可モードを表している場合において、対象タスクの状態変化、即ちタスクの起動や停止の要求があり、起動予定のタスクの中に第1のタスク101bが含まれていると、動作モード設定テーブル22を参照し、第1のタスク101b以外のタスクが輻輳しているか否か等によって、第1のタスク101bの動作モードを決定し、決定した動作モードをモード設定装置30bに通知したり、要求された他のタスクを起動すると起動中の第1のタスク101bの処理量が所定のしきい値未満となるおそれがある場合には、タスク管理装置20bは要求された他のタスクの起動を禁止する。
【0080】
モード設定装置30bは、タスク管理装置20bから通知された動作モードに従うパラメータを第1のタスク101bに設定し、そのパラメータに応じたモードで動作させる。
【0081】
図10は、図9に示される動作モード設定テーブル22の構成例を示す図である。
同図に示されるように動作モード設定テーブル22は、プロセッサ10の処理能力が格納されるレコード221と、プロセッサ10により実行される第1のタスク101b〜第4のタスク104bの負荷が格納されるレコード222〜225と、第1のタスク101bの実行に必要な最低限の処理量を示すしきい値が格納されるレコード226とから構成される。
【0082】
プロセッサ10によって処理される第1のタスク101bは、第1の機能(音楽再生)を行う1つのプログラムであって、オーディオ信号のデコード処理の他、モード設定装置30bによって設定されるパラメータの値に応じて、バーチャルサラウンド再生に用いるデジタルフィルタの段数を変化させ、再生音質が高、中、低の3段階に変化する3つの動作モード(動作モードA、動作モードBおよび動作モードC)を変える。具体的には動作モードAは、デコード処理を行った後、8192タップ数のデジタルフィルタでバーチャルサラウンド再生を行うプログラムであって、プロセッサ10に250MIPSの負荷をかける。動作モードBは、デコード処理を行った後、128タップ数のデジタルフィルタでバーチャルサラウンド再生を行うプログラムであって、プロセッサ10に200MIPSの負荷をかける。動作モードCは、デコード処理を行った後、32タップ数のデジタルフィルタでバーチャルサラウンド再生を行うプログラムであって、プロセッサ10に150MIPSの負荷をかける。
【0083】
また、第2のタスク102bは、デジタル衛星放送の映像をデコードし、モニタに表示(TVビュー)するためのプログラムであって、プロセッサ10に50MIPSの負荷をかける。第3のタスク103bは、インターネットを介して所望のサーバに接続し、当該サーバにアップロードされている情報を閲覧(ブラウジング)するためのプログラムであって、プロセッサ10に50MIPSの負荷をかける。第4のタスク104bは、例えばインターネットを介して受信した動画付きメールを閲覧するためのプログラムであって、プロセッサ10に50MIPSの負荷をかける。
【0084】
さらに、しきい値は、例えば音声データのデコードがリアルタイムに行え、再生音がとぎれることがない値(140MIPS)に設定される。
図11は、図9に示されるマルチタスク制御装置1bが実装される携帯電話機の外観構成例を示す図である。
【0085】
同図に示されるように携帯電話機ex115は、不図示の基地局や、衛星との間で電波を送受信するためのアンテナex201と、本体表面に装着され、ユーザによって操作される複数の操作キーからなる操作部ex204と、CCDカメラ等を含み、動画や、静止画を撮ることが可能なカメラ部ex203と、液晶ディスプレイ等を含み、カメラ部ex203で撮影した映像や、アンテナex201を介して受信したTV映像等を表示する表示部ex202と、マイク等を含み、音声を入力をするための音声入力部ex205と、複数のスピーカ等を含み、音声を再生したり、音楽をサラウンド再生したりするための音声出力部ex208と、ヘッドフォンや外部スピーカを接続するためのピンジャックコネクタex209と、記録メディアex207を装着するためのスロット部ex206等とを備える。
【0086】
ここで、記録メディアex207は、SDカード等のプラスチックケース内に電気的に書換えや消去が可能な不揮発性メモリであるEEPROM(ElectricallyErasable and Programmable Read Only Memory)の一種であるフラッシュメモリ素子を格納したものであって、撮影した動画もしくは静止画のデータ、受信したメールのデータ、動画のデータもしくは静止画のデータ等、符号化された音声データまたは復号化された音声データ等を保持する。
【0087】
なお、マルチタスク制御装置1bを構成するタスク管理装置20bやモード設定装置30bは、この携帯電話機ex115本体内部に設けられたプロセッサ、プロセッサによって実行されるマルチタスクOSや、このOS上で実行されるアプリケーション(MPEGエンコーダ・デコーダ用ソフト、ブラウザソフト、メーラソフト等)のプログラム等を予め格納するROM、OSやアプリケーションのプログラム等の実行時にワークエリアを提供したり、ユーザによって設定された輻輳禁止/許可を示すフラグや、動作モード設定テーブル22等を一時的に格納するメモリ等によって実現される。
【0088】
次いでマルチタスク制御装置1bを構成するタスク管理装置20bおよびモード設定装置30bの動作を説明する。
図12は、タスク管理装置20bおよびモード設定装置30bによって実行されるタスク起動・停止処理の詳細を示すフローチャートである。
【0089】
このタスク起動・停止処理は、所定時間ごとに定期的に実行される。
タスク起動・停止処理においては、タスク管理装置20bは、先ずタスク起動要求が有ったか否か判断する(S10)。タスク起動要求が有った場合(S10でYes)、タスク管理装置20bはそのタスクが音楽再生タスクであるか否か判断する(S20)。音楽再生タスクであれば(S20でYes)、タスク管理装置20bはモード設定装置30bと協働して音楽再生タスク起動制御処理を実行し(S30)、タスク起動・停止処理を終了する。これに対して、音楽再生タスクでなければ(S20でNo)、タスク管理装置20bはモード設定装置30bと協働して他のタスク起動制御処理を実行し(S40)、タスク起動・停止処理を終了する。
【0090】
一方、タスク起動要求がなかった場合(S10でNo)、タスク管理装置20bは、タスク停止要求が有ったか否か判断する(S50)。タスク停止要求が有った場合(S50でYes)、タスク管理装置20bは、そのタスクが音楽再生タスクであるか否か判断する(S60)。音楽再生タスクであれば(S60でYes)タスク管理装置20bは、音楽再生タスクを停止し(S70)、タスク起動・停止処理を終了する。これに対して、音楽再生タスクでなければ(S60でNo)、タスク管理装置20bはモード設定装置30bと協働して他のタスク停止制御処理を実行し(S80)、タスク起動・停止処理を終了する。
【0091】
他方、タスク停止要求でもなければ(S50でNo)、タスク管理装置20bはタスク起動・停止処理を終了する。
図13は、図12に示される音楽再生タスク起動制御処理(S30)のサブルーチンの処理を示すフローチャートである。
【0092】
この音楽再生タスク起動制御処理においては、タスク管理装置20bは先ず、起動中の他のタスクないか否か判断する(S301)。起動中の他のタスクない場合(S310でYes)、タスク管理装置20bは音楽再生タスクの動作モードを「A」(高品質)に決定し(S302)、モード設定装置30bに動作モードAを選択させる。そしてタスク管理装置20bは、フラグ格納部21を参照し輻輳禁止モードが設定されているか否か判断する(S303)。輻輳禁止モードが設定されている場合(S303でYes)、タスク管理装置20bは音楽再生タスク(動作モード「A」)を輻輳禁止モードで起動し(S304)、メインルーチンにリターンする。これに対して、輻輳禁止モードが設定されていない場合(S303でNo)、即ち輻輳許可モードが設定されている場合、タスク管理装置20bは、音楽再生タスクを輻輳許可モードで起動し(S305)、メインルーチンにリターンする。
【0093】
一方、起動中の他のタスクがある場合(S301でNo)、タスク管理装置20bは、プロセッサ10の処理能力から他のタスクの処理量を減算することにより、音楽再生タスクに割り当てることができる処理量(割り当て可能処理量)を算出し(S306)、算出した割り当て可能処理量がしきい値以上であるか否かを判断する(S307)。しきい値以上である場合(S307でYes)、割り当て処理量に基づいて音楽再生タスクの動作モードを「B」および「C」(中・低品質)のいずれかに決定し(S308)、モード設定装置30bに動作モードBおよびCのいずれかを選択させる。この決定は、次のように行われる。割り当て処理量が動作モードBの処理量以上であれば、動作モードBに決定し、割り当て処理量が動作モードBの処理量未満であれば、動作モードCに決定する。
【0094】
動作モードの決定が終わると、タスク管理装置20bは、輻輳禁止モードが設定されているか否か判断する(S309)。輻輳禁止モードが設定されている場合(S309でYes)、タスク管理装置20bは、音楽再生タスク(動作モード「B」,「C」)を輻輳禁止モードで起動し(S310)、メインルーチンにリターンする。これに対して、輻輳禁止モードが設定されていない場合(S309でNo)、タスク管理装置20bは、音楽再生タスク(動作モード「B」,「C」)を輻輳許可モードで起動し(S311)、メインルーチンにリターンする。
【0095】
他方、割り当て可能処理量がしきい値以上でない場合、即ち割り当て可能処理量がしきい値未満である場合(S307でNo)、タスク管理装置20bは、音楽再生タスクの起動を禁止し(S312)、メインルーチンにリターンする。これは、音楽再生タスクを起動させてもリアルタイムのデコード処理が行えず、音がとぎれた音楽再生しかできないためである。
【0096】
図14は、図12に示される他のタスク起動制御処理(S40)のサブルーチンの処理を示すフローチャートである。
他のタスク起動要求があった場合、タスク管理装置20bは先ず音楽再生タスクが実行中か否か判断する(S401)。判断の結果音楽再生タスクが実行中である場合(S401でYes)、タスク管理装置20bはこの音楽再生タスクが輻輳禁止モードで起動中であるか否か判断する(S402)。輻輳禁止モードで起動されている場合(S402でYes)、要求された他のタスクの起動を禁止し(S403)、メインルーチンにリターンする。この処理により、起動中の音楽再生タスクの動作モードが変更されることがない。従って、音質が変化することのない音楽再生が最後まで継続される。
【0097】
一方、起動中の音楽再生タスクが輻輳禁止モードでない、即ち輻輳許可モードで起動されている場合(S402でNo)、タスク管理装置20bは、動作モード設定テーブル22を参照し、要求された他のタスクを起動した場合に音楽再生タスクに対して割り当てることができる処理量(割り当て可能処理量)を算出し(S404)、算出した割り当て可能処理量がしきい値未満であるか否か判断する(S405)。しきい値未満であると(S405でYes)、タスク管理装置20bは、要求された他のタスクの起動を禁止し、メインルーチンにリターンする。この処理により、音楽再生タスクに対して割り当てられる処理量が必ずしきい値以上であることが確保される。従って、音がとぎれることなく音楽再生が継続される。
【0098】
これに対して割り当て可能処理量がしきい値未満でなければ(S405でNo)、即ちしきい値以上あれば、ステップS404で算出した割り当て可能処理量に基づいて音楽再生タスクの動作モードを「B」または「C」を決定し、モード設定装置30bは動作モードを「B」または「C」に遷移させる(S407)。具体的には、この遷移は、次のように行われる。割り当て処理量が動作モードBの処理量以上であれば、動作モードBに遷移させ、割り当て処理量が動作モードBの処理量未満であれば、動作モードCに遷移させる。この場合には、負荷の軽い動作モードに遷移されるため、音質が低下する。動作モードの遷移が終わると、タスク管理装置20bは、要求された他のタスクの起動を許可し(S408)、メインルーチンにリターンする。これにより、音楽再生タスクとともに、要求された他のタスクが時分割で実行される。
【0099】
他方、音楽再生タスクが起動していない場合(S401でNo)、要求された他のタスクの起動を許可し(S409)、メインルーチンにリターンする。これにより、要求された他のタスクの処理が行われる。
【0100】
図15は、図12に示される他のタスク停止制御処理(S80)のサブルーチンの処理を示すフローチャートである。
他のタスク停止要求があった場合、タスク管理装置20bは、先ず他のタスクを停止させ(S801)、音楽再生タスクが起動中か否か判断する(S802)。起動中でなければ(S802でNo)、メインルーチンにリターンする。
【0101】
一方、起動中であれば(S802でYes)、音楽再生タスクが輻輳禁止モードで起動されているか否か判断する(S803)。輻輳禁止モードで起動されている場合(S803でYes)、メインルーチンにリターンする。即ち、処理能力に余裕ができても音楽再生タスクにその処理能力を回さないでメインルーチンにリターンする。従って、起動中の音楽再生タスクの動作モードが変更されることがないので、音質が変化することなく音楽再生が最後まで継続される。
【0102】
他方、輻輳禁止モードでない場合(S803でNo)、即ち、輻輳許可モードである場合、タスク管理装置20bは、音楽再生タスクに対して割り当て可能な処理量(割り当て可能処理量)を算出し(S804)、音楽再生タスクを動作モード「A」または「B」を決定し、モード設定装置30bは動作モードを「B」または「C」に遷移させ(S805)、メインルーチンにリターンする。具体的には、この遷移は、次のように行われる。割り当て処理量が動作モードAの処理量以上であれば動作モードAに遷移させ、割り当て処理量が動作モードAの処理量未満であれば動作モードBに遷移させる。この場合には、負荷の重い動作モードに遷移されるため、音質が向上する。
【0103】
図16は、輻輳許可モードにおけるタスクの遷移状態に応じた負荷の遷移を示す図である。具体的には、音楽再生タスクが輻輳許可モードで起動された後に他のタスクが順次さらに起動された場合の状態遷移と、プロセッサ10にかかる負荷の遷移との関係が示されている。
【0104】
図16に示される時刻T10以前は、タスクが何も起動されていない状態である。この状態で、時刻T10において、音楽再生タスクがタスク管理装置20bによって起動された場合、他のタスクが何も起動されていないので、モード設定装置30bは、音楽再生タスクに対し、動作モードAを設定する。これによって、プロセッサ10に対する負荷は、250MIPSということになる。即ち、この場合は、プロセッサ10に対する負荷に余裕があるので、高音質なバーチャルサラウンドモードで音楽再生するパラメータを音楽再生タスクにセットさせたのである。このような音楽再生タスクだけが実行される場合には、図17(a)に示されるように携帯電話機の画面にその動作モード「A」と、再生された音楽の曲名や歌手等が表示される。
【0105】
次に、時刻T11において、他のタスク(例えば、TVビュー)がタスク管理装置20bによってさらに起動されたとする。この場合、TVビューが必要とする演算負荷50MIPSがプロセッサ10に加わることになる。この場合、音楽再生タスクの動作モードを「A」のままに維持すると、プロセッサ10にかかる負荷が300MIPSと過大となり破綻することになる。そこで、タスク管理装置20bは、動作モード設定テーブル22を参照し、動作モードを「B」(200MIPS)に決定し、音楽再生タスクを動作モードBで動作させる。これにより、全体では250MIPSの負荷がプロセッサ10にかかることになる。
【0106】
即ち、この場合は、プロセッサ10に対する負荷に動作モードAだけのような余裕がないので、プロセッサ10が破綻を来さない範囲で一番音質の高い動作モード、中音質なバーチャルサラウンドモードで音楽再生するパラメータを音楽再生タスクにセットさせたのである。このような音楽再生タスクとTVビューとが輻輳した場合には、図17(b)に示されるように画面に例えば野球中継の映像とともにその動作モード「B」が表示される。
【0107】
次に、時刻T12において、さらに他のタスク(例えば、ブラウジング)がタスク管理装置20bによってさらに起動されたとする。この場合、ブラウジングが必要とする負荷50MIPSがプロセッサ10に加わることになる。この場合、音楽再生タスク101bの動作モードを「B」のままにしておくと、プロセッサ10にかかる負荷が300MIPSとなり、プロセッサ10が破綻状態となる。そこで、タスク管理装置20bは、動作モード設定テーブル22を参照し動作モードを「C」(150MIPS)と決定し、音楽再生タスクを動作モードCで動作させる。これにより、全体では250MIPSの負荷がプロセッサ10にかかることになる。
【0108】
即ち、この場合は、プロセッサ10が破綻を来さない範囲で一番音質の高い動作モード、低音質なバーチャルサラウンドモードで音楽再生するパラメータを音楽再生タスクにセットさせたのである。このような音楽再生タスクとTVビューとブラウジングとが輻輳した場合には、図17(c)に示されるように画面に例えば野球中継の映像、ブラウジングにより得られた情報とともにその動作モード「C」が表示される。
【0109】
次に、時刻T13において、さらに他のタスク(例えば、動画付きメールの閲覧)の起動要求がタスク管理装置20bにあったものとする。この場合、動画付きメールの閲覧が必要とする負荷50MIPSがプロセッサ10にさらに加わることになる。この場合、音楽再生タスクの動作モードを「C」からさらに下げると、しきい値未満になり、再生音がとぎれることになる。そこで、タスク管理装置20bは、動画付きメールの閲覧のタスクを起動禁止にしたのである。これによって、音楽再生タスクの動作モードが「C」に維持され、音がとぎれることなく再生される。このような音楽再生タスクとTVビューとブラウジングとが輻輳しているときにさらに動画付きメールの閲覧要求があったときに起動が禁止された場合には、図17(d)に示されるように画面に禁止の理由等がさらに表示される。
【0110】
次に、時刻T14において、ブラウジングがタスク管理装置20bによって停止されたと仮定する。この場合、音楽再生タスクと、TVビューとだけが起動されるので、タスク管理装置20bは、動作モード設定テーブル22を参照し動作モードを「B」(200MIPS)と決定し、音楽再生タスクを動作モードBで動作させる。
【0111】
次に、時刻T15において、動画付きメールの閲覧がタスク管理装置20bによって起動されたとする。この場合、動画付きメールの閲覧が必要とする負荷50MIPSがプロセッサ10に加わることになる。そこで、タスク管理装置20bは、動作モード設定テーブル22を参照し動作モードを「C」(150MIPS)と決定し、音楽再生タスクを動作モードCで動作させる。
【0112】
次に、時刻T16において、動画付きメールの閲覧がタスク管理装置20bによって停止されたと仮定する。この場合、音楽再生タスクと、TVビューとだけが起動されるので、タスク管理装置20bは、動作モード設定テーブル22を参照し動作モードを「B」(200MIPS)と決定し、音楽再生タスクを動作モードBで動作させる。
【0113】
次に、時刻T17において、TVビューがタスク管理装置20bによって停止されたと仮定する。この場合、音楽再生タスクだけが起動されるので、タスク管理装置20bは、音楽再生タスクを動作モードAで動作させる。即ち、この場合は、プロセッサ10に対する負荷に余裕が生じるので、高音質なバーチャルサラウンドモードで音楽再生するパラメータを音楽再生タスクにセットさせたのである。
【0114】
次に、時刻T18において、音楽再生タスクがタスク管理装置20bによって停止されたと仮定する。この場合、処理すべきタスクがないので、タスク管理装置20bは、モード設定装置30bに音楽再生タスクに対する動作モードの設定を中止させ、タスクを全て停止する。即ち、この場合は、プロセッサ10に対する負荷が0(アイドリング)となり、プロセッサ10に対する演算負荷は、0MIPSということになる。
【0115】
図18は、音楽再生タスクが輻輳禁止モードで起動された後に他のタスクの起動要求がされた場合の状態遷移と、プロセッサ10にかかる負荷の遷移との関係を示す図である。
【0116】
図18に示される時刻T20以前は、何もタスクが起動されていない状態である。この状態で、時刻T20において、音楽再生タスクを起動する場合、他のタスクが何も起動されていないので、タスク管理装置20bは、音楽再生タスクを動作モードAで動作させる。即ち、この場合は、プロセッサ10に対する負荷に余裕があるので、高音質なバーチャルサラウンドモードで音楽再生するパラメータを音楽再生タスクにセットさせたのである。
【0117】
次に、時刻T21において、他のタスク(例えば、TVビュー)の起動要求がタスク管理装置20bにされたとする。この場合、音楽再生タスクが輻輳禁止モードで起動されているので、タスク管理装置20bは、TVビューの起動を禁止する。これによって、音楽再生タスクが他のタスクと輻輳されることがない。また、モード設定装置30bは、音楽再生タスクの動作モードを変更することなく、「A」に維持したままにする。この結果、音質が変更されることなく、一定に維持される。
【0118】
次に、時刻T22において、音楽再生タスクがタスク管理装置20bによって停止されたと仮定する。この場合、処理すべきタスクがないので、タスク管理装置20bは、モード設定装置30bに音楽再生タスクに対する動作モードの設定を中止させ、タスクを全て停止する。即ち、この場合は、プロセッサ10に対する負荷が0(アイドリング)となり、プロセッサ10に対する演算負荷は、0MIPSということになる。
【0119】
以上のように本実施の形態2に係る発明によれば、音楽再生タスクについて高音質用、中音質用、低音質用等プロセッサ10における単位時間当たりの負荷が異なる動作モードが予め用意されており、タスク管理装置20bは、輻輳許可モードにおいて他のタスクの起動・停止の状態変化ごとに音楽再生タスクの動作モードを破綻が生じない範囲で負荷の高い動作モードに設定しなおすようにしている。即ち、タスクが輻輳し多大の処理負荷がプロセッサにかかる場合は、しきい値未満とならない範囲で音楽再生タスクの処理負荷を軽減するようにしている。このため、音楽再生タスクが起動されている限り、プロセッサ10の処理能力Nmbxを超えることなく、単位時間当たりの負荷をプロセッサ10にかけることができる。
【0120】
即ち、全体の負荷を軽減でき、かつ、負荷に余裕がある場合は、音楽再生タスクに多くの処理資源を割り当て高性能な機能を実現できることとなる。従って、プロセッサの処理能力を超えない範囲で一番高い負荷の動作モードを音楽再生タスクに設定するので、プロセッサの処理能力を最大限に利用することができ、プロセッサ10の使用効率を高めることができる。しかも、音楽再生タスクの処理量がしきい値未満になる場合には他のタスクの起動を禁止し、しきい値未満とならない範囲で音楽再生タスクの処理負荷を軽減するようにしているので、再生音がとぎれることもない。
【0121】
また、タスク管理装置20bは、輻輳禁止モードにおいて音楽再生タスクが起動された後に他のタスクの起動要求があった場合、その他のタスクの起動を禁止するので、再生音が最後まで一定に保たれる。
【0122】
なお、この実施の形態2においては、タスク管理装置20bは動作モード設定テーブル22に基づいて第1のタスク101bの動作モードを決定したが、図19に示される動作モード設定テーブル31bに基づいて第1のタスク101bの動作モードを決定してもよい。なお、図3に示される動作モード設定テーブル31aと同様、この動作モード設定テーブル31bの図中に示される「○」はタスクの起動状態を、「×」はタスクの停止状態を、「−」は第1のタスク101bに対する動作モードを設定しないことを、それぞれ示しており、さらに「△」は起動禁止を示しており、第1のタスク101bが起動されない場合もあわせて図示されている。この動作モード設定テーブル31bによっても第1のタスク101bの動作モードを簡単に決定することができる。
【0123】
また、この動作モード設定テーブル31bをモード設定装置30bに設けるようにしてもよい。この場合には、輻輳許可モードにおいてタスク管理装置20bは対象タスクの状態変化、即ちタスクの起動や停止の予定をモード設定装置30bに通知し、モード設定装置30bは起動予定のタスクの中に第1のタスク101bが含まれていると、動作モード設定テーブル31bを参照し、第1のタスク101b以外のタスクが輻輳しているか否か等によって、第1のタスク101bの動作モードを決定し、決定した動作モードに応じたパラメータを第1のタスク101bに設定したり、要求された他のタスクをタスク管理装置20bが起動すると起動中の第1のタスク101bの処理量が所定のしきい値未満となるおそれがある場合には、モード設定装置30bは要求された他のタスクの起動を禁止するようタスク管理装置20bに通知し、通知を受けたタスク管理装置20bは要求された他のタスクの起動を禁止すればよい。
【0124】
【発明の効果】
以上の説明から明らかなように、本発明に係るマルチタスク制御装置によれば、プロセッサに余力がある場合には第1タスクの処理できる機能の選択の範囲(選択の幅)が広がり、余力がない場合には選択の幅が狭まることになるので、モード制御手段は、プロセッサの処理能力の範囲内で、かつ最も高い機能に対応する動作モードで第1タスクをプロセッサに処理させることができる。従って、タスクの輻輳状態の如何に拘わらず、プロセッサの破綻を確実に回避しつつ、再生された音質を向上することができるという効果が奏される。
【0125】
また、前記モード制御手段は、前記プロセッサに処理される対象タスクの状態変化を検出する状態変化検出手段と、前記状態変化後に起動させるタスクを特定する特定手段と、前記特定手段によって特定されたタスクの中に第1タスクが含まれている場合、第1タスクの動作モードを決定する動作モード決定手段とを備えるようにしているので、対象タスクの状態変化が生じる場合に、第1タスクの動作モードの決定を適切なタイミングに行うことができる。
【0126】
また、前記動作モード決定手段は、前記特定手段によって特定されたタスクと前記状態変化後に起動させる第1タスクの動作モードとを対応させた動作モード設定テーブルを有し、前記動作モード決定手段は、前記動作モード設定テーブルに基づいて、第1タスクの動作モードを決定したり、また、前記動作モード決定手段は、前記特定手段によって特定されたタスクの数と前記状態変化後に起動させる第1タスクの動作モードとを対応させた動作モード設定テーブルを有し、前記動作モード決定手段は、前記動作モード設定テーブルに基づいて、第1タスクの動作モードを決定するようにしたりしているので、第1タスクの動作モードを簡単に決定することができる。
【0127】
また、前記動作モード決定手段は、前記状態変化後に起動させる第1タスクの処理に対して割り当て可能な負荷を算出する負荷算出手段と、前記負荷算出手段が算出した負荷と前記第1タスクの各動作モードの処理に要する負荷とをそれぞれ比較する比較手段とを備え、前記動作モード決定手段は、前記比較手段による比較結果に基づいて、第1タスクの動作モードを決定するようにしたり、前記動作モード決定手段は、さらに各前記タスクの起動要求を受け付ける起動要求受付手段と、前記第1タスクの処理中に前記起動要求受付手段が第1タスク以外の他のタスクの起動要求を受け付けた場合において、前記負荷算出手段が算出した負荷が第1タスクの最も低い機能の動作モードに対して設定されたしきい値未満であるとき、前記他のタスクの起動を禁止する起動禁止手段とを備えるようにしてているので、第1タスクの最も低い機能の動作モードが継続してリアルタイムに処理することが確実に確保され、音のとぎれを防止することができる。
【0128】
また、前記動作モード決定手段は、さらに各前記タスクの起動要求を受け付ける起動要求受付手段と、前記第1タスクの処理中に前記起動要求受付手段が第1タスク以外の他のタスクの起動要求を受け付けた場合、前記他のタスクの起動を禁止する起動禁止手段とを備えるので、第1タスクの動作モードの変更が防止され、一定音質での音楽再生処理を継続することができる。
【0129】
また、前記動作モード決定手段は、前記状態変化後に起動させる第1タスクの処理に対して割り当て可能な命令数を算出する命令数算出手段と、前記命令数算出手段が算出した命令数と前記第1タスクの各動作モードの処理に要する命令数とをそれぞれ比較する比較手段とを備え、前記動作モード決定手段は、前記比較手段による比較結果に基づいて、動作モードを決定するようにしたり、前記動作モード決定手段は、さらに各前記タスクの起動要求を受け付ける起動要求受付手段と、前記第1タスクの処理中に前記起動要求受付手段が第1タスク以外の他のタスクの起動要求を受け付けた場合において、前記命令数算出手段が算出した命令数が第1タスクの最も低い機能の動作モードに対して設定されたしきい値未満であるとき、前記他のタスクの起動を禁止する禁止手段とを備えるようにしているので、これによっても、第1タスクの最も低い機能の動作モードが継続してリアルタイムに処理することが確実に確保され、音のとぎれを防止することができる。
【0130】
また、前記動作モード決定手段は、さらに各前記タスクの起動要求を受け付ける起動要求受付手段と、前記第1タスクの処理中に前記起動要求受付手段が第1タスク以外の他のタスクの起動要求を受け付けた場合、前記他のタスクの起動を禁止する禁止手段とを備えるので、これによっても、第1タスクの動作モードの変更が防止され、一定音質での音楽再生処理を継続することができる。
【0131】
さらに、前記モード制御手段は、前記動作モード決定手段が決定した動作モードに対応付けられたパラメータを第1タスクに設定し、当該パラメータに対応する動作モードで第1タスクをプロセッサに処理させるので、これによって、パラメータの設定という簡単な処理で第1タスクの動作モードを容易に遷移させ、負荷や命令数を変えることができる。
【0132】
また、上記の課題を解決するため、本発明に係る音楽データ再生装置は、複数の動作モードを有する音楽再生タスクを含む複数のタスクをプロセッサに並行して処理させるマルチタスク制御装置を備える音楽データ再生装置であって、前記マルチタスク制御装置は、前記音楽再生タスクを起動すべきか否かを判断する判断手段と、前記判断手段が前記音楽再生タスクを起動すべきと判断した場合に、前記プロセッサの処理能力の範囲内で処理できる最も音質の高い機能に対応する動作モードで第1タスクをプロセッサに処理させるモード制御手段とを備え、具体的には、前記音楽データ再生装置は、携帯性を有し、前記プロセッサに並行して処理される音楽再生タスク以外の他のタスクは、TVビュー、ブラウジング、メールおよび通話の少なくともいずれか1つであることを特徴とするので、これによって、携帯電話機等の携帯性の高い装置を、音質の高い音楽データ再生装置として使用しながら、TVビューや、ブラウジング、メールおよび通話を並行して行うことができる。
【0133】
以上のように本願発明によれば、演算資源に余裕のあるときは、高音質なオーディオ信号処理が行え、演算資源に余裕がないときでも、演算資源を軽減し、破綻を生じない範囲でかつ最も高い音質で処理を円滑に行うことができるので、本願発明の実用的価値は極めて高い。
【図面の簡単な説明】
【図1】本発明の実施の形態1に係るマルチタスク制御装置1aの構成を示すブロック図である。
【図2】図1に示される第1のタスク101aの動作モードA〜動作モードCのプロセッサ10に対する負荷と音質との関係を示す図である。
【図3】図1に示される動作モード設定テーブル31aの詳細構成を示す図である。
【図4】プロセッサの処理能力と、第1のタスク101aの動作モードA〜動作モードCとの関係を示す図である。
【図5】マルチタスク制御装置1aによる動作を示す図である。
【図6】タスクの遷移状態に応じた負荷の遷移を示す図である。
【図7】タスクの遷移状態に応じた負荷の遷移を示す図である。
【図8】タスクの遷移状態に応じた負荷の遷移を示す図である。
【図9】本発明の実施の形態2に係るマルチタスク制御装置1bの構成を示すブロック図である。
【図10】図9に示される動作モード設定テーブル22の詳細構成を示す図である。
【図11】図9に示されるマルチタスク制御装置が実装される携帯電話機の外観構成例を示す図である。
【図12】タスク管理装置20bおよびモード設定装置30bによって実行されるタスク起動・停止処理の詳細を示すフローチャートである。
【図13】図12に示される音楽再生タスク起動制御処理(S30)のサブルーチンの処理を示すフローチャートである。
【図14】図12に示される他のタスク起動制御処理(S40)のサブルーチンの処理を示すフローチャートである。
【図15】図12に示される他のタスク停止制御処理(S80)のサブルーチンの処理を示すフローチャートである。
【図16】輻輳許可モードにおけるタスクの遷移状態に応じた負荷の遷移を示す図である。
【図17】携帯電話機の画面の表示例を示す図であり、特に図17(a)は音楽再生タスク実行時の表示例を示す図であり、図17(b)は音楽再生タスクとTVビューとが輻輳した場合の表示例を示す図であり、図17(c)は音楽再生タスクとTVビューとブラウジングとが輻輳した場合の表示例を示す図であり、図17(d)は音楽再生タスクとTVビューとブラウジングとが輻輳した場合においてさらに動画付きメールの閲覧要求があったときの表示例を示す図である。
【図18】輻輳禁止モードにおけるタスクの遷移状態に応じた負荷の遷移を示す図である。
【図19】動作モード設定テーブルの他の詳細構成を示す図である。
【符号の説明】
1a,1b マルチタスク制御装置
10 プロセッサ
20a,20b タスク管理装置
21 フラグ格納部
22,31a,31b 動作モード設定テーブル
30a,30b モード設定装置
101a,101b 第1のタスク
102a,102b 第2のタスク
103a,103b 第3のタスク
104b 第4のタスク[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates to a multitask control device and a music data reproduction device that cause a processor to process a plurality of tasks in parallel.
[0002]
[Prior art]
In recent years, a general-purpose digital signal processor (DSP) of a program control system capable of processing data compression processing of voice, audio, images, and the like at high speed (for example, 285 MIPS) has been developed, and has been developed for digital mobile phones and mobile AV devices. In addition, it is widely used in modem devices, CD devices, MD devices, DVC devices, DVD devices, and the like. In a computer device equipped with such a processor, for example, a mobile phone, a call function is realized by causing a processor to execute a call program, but the mobile phone can also be used as, for example, a music recording / playback device. There has been a demand that the user wants to use it as a TV receiver, and also wants to make a call in parallel while receiving music while watching TV while recording music. For this reason, a multitask control device in which functions can be easily expanded and changed is mounted on this kind of computer device, and a combination for realizing various functions is being developed.
[0003]
This multi-task control device causes, for example, a processor having a high processing capability to process each of three tasks of a task for music recording and reproduction, a task for TV reception, and a task for telephone conversation in parallel. It comprises a task management device and the like for managing the start and stop of a task, and this task management device and the like are realized by a function provided by a real-time OS operating on a processor.
[0004]
By the way, in order to respond to the above-mentioned demand that the user wants to make a call while recording or playing back music while watching TV, for example, 150 MIPS is used for processing the task for receiving TV, and for example, processing is performed for task for talking. Assuming a load of 100 MIPS on the processor, the processor has a remaining capacity of 35 MIPS.
[0005]
Therefore, conventionally, in order to avoid the failure of the congested task processing, create a task for music recording and playback with the number of instructions as small as possible so as to fit in a load of about 30 MIPS, and within the processing capability of the processor, Music recording / playback, TV reception, and telephone conversation can be congested and processed.
[0006]
It is to be noted that this is a voice encoding method in which a digital audio signal is divided into a plurality of frequency bands, and encoding is performed for each band. There is a speech coding system having a plurality of allocating units. Then, based on control information from outside, from among the plurality of bit allocating means, the bit allocating means to be used is switched to execute the bit allocating so that the processing is performed using the predetermined bit allocating means. There is a speech coding method characterized by performing coding (for example, see Patent Document 1). As a result, in this audio encoding method, it is possible to generate encoded data of high sound quality with real-time sound quality without being affected by the CPU processing capacity of a personal computer and the CPU occupancy of other applications. .
[0007]
[Patent Document 1]
JP-A-2000-78018 (
[0008]
[Problems to be solved by the invention]
However, even in such a multi-task control device and a music data reproducing device in which the multi-task control device is mounted, a situation in which a user talks while watching / listening to a TV while recording / reproducing music is extremely difficult. This is a rare case, and is usually performed using only a single function such as a music recording / playback function. When only such a single function is used, for example, when recording and reproducing music, the processing of the music recording / reproducing task only requires a load of 30 MIPS to be applied to the processor. I have.
[0009]
By the way, the encoding process and the decoding process of the audio signal have very high scalability. For example, if the number of instructions required for encoding and decoding is small and the load on the processor is as low as about 30 MIPS as described above, the sound quality is low, but the number of instructions required for encoding is large and the load on the processor is 200 MIPS. The higher the level, the higher the quality of the sound so that there is no difference from the original sound.
[0010]
Therefore, in the related art, despite the fact that a processor with a high processing capability is mounted, the performance is not sufficiently exhibited, and the quality (sound quality) is poor because the load on the processor is low. Was.
[0011]
In order to solve this problem, the number of instructions for the task for music recording / playback is increased, and the processing of the task for music recording is processed by applying a load of 200 MIPS to the processor, so that the performance of the processor is fully exhibited. To enhance the sound quality.
[0012]
However, in this case, if the user watches or talks to the TV during the music recording / reproduction, the load exceeds the processing capacity, and the state is broken.
Such a situation is irrespective of the type of task, and there is a trade-off between failure and quality.
[0013]
Note that the speech encoding method disclosed in the above publication is used under a CPU having a processing power of several tens to several hundreds of times that of a processor of a mobile phone, so that the above problems hardly occur. If it is thought that there is no need to use a processor with a processing capacity of one-hundredths to one-hundredths of CPUs used in personal computers even though the processing capacity has increased, The above problems are important issues.
[0014]
The present invention has been made in view of such a conventional problem, and it is possible to improve the quality while avoiding the failure of a processor having a relatively low processing capability regardless of the task congestion state. It is an object of the present invention to provide a multitask control device and a music data reproduction device that can perform the same.
[0015]
[Means for Solving the Problems]
In order to solve the above problem, a multitask control device according to the present invention is a multitask control device that causes a processor to process a plurality of tasks including a first task having a plurality of operation modes in parallel, Determining means for determining whether to start one task; and an operation mode corresponding to a function capable of processing within the processing capability of the processor when the determining means determines to start the first task. And mode control means for causing the processor to process the first task. Specifically, the first task is a task of playing back a digital audio signal, the function is a function of controlling sound quality, and the mode control unit is configured to determine that the determination unit activates the first task. When it is determined that the first task should be performed, the first task is processed by the processor in an operation mode corresponding to the highest sound quality within the processing capability of the processor.
[0016]
As a result, when the processor has the spare capacity, the range of selection of the function that can be processed in the first task (the selection range) is widened, and when there is no spare capacity, the selection range is narrowed. Thereby, the mode control means can cause the processor to process the first task in the operation mode corresponding to the highest function within the processing capability of the processor. Therefore, regardless of the congestion state of the task, it is possible to improve the reproduced sound quality while reliably avoiding the failure of the processor.
[0017]
Here, the function is the highest function within the processing capability of the processor, and the mode control means causes the processor to process the first task in an operation mode corresponding to the highest function. It may be a feature. Further, the function increases as the load on the processor increases, and the mode control means falls within the processing capability of the processor when the determination means determines that the first task should be started. And causing the processor to process the first task in an operation mode corresponding to the largest load.
[0018]
Further, the function increases as the number of instructions processed by the processor increases, and the mode control unit determines the processing capability of the processor when the determination unit determines that the first task should be started. The first task may be processed by the processor in an operation mode within the range and corresponding to the largest number of instructions. Further, the function is a filter function for controlling the highest sound quality within the range of the processing capability of the processor, and the mode control unit determines that the determination unit determines that the first task should be started. The method may further include causing the processor to process the first task in an operation mode within a range of the processing capability of the processor and corresponding to a filter process with the largest number of taps.
[0019]
Further, the mode control means includes state change detection means for detecting a state change of the target task processed by the processor, identification means for identifying a task to be activated after the state change, and a task identified by the identification means. When the first task is included in the first task, an operation mode determining means for determining an operation mode of the first task can be provided. Thus, when the state of the target task changes, the operation mode of the first task can be determined at an appropriate timing.
[0020]
In this case, the operation mode determining means has an operation mode setting table in which the task specified by the specifying means is associated with the operation mode of the first task to be started after the state change. The operation mode of the first task may be determined based on the operation mode setting table. Further, the operation mode determining means has an operation mode setting table in which the number of tasks specified by the specifying means is associated with an operation mode of a first task to be activated after the state change. May determine an operation mode of the first task based on the operation mode setting table. Therefore, the operation mode of the first task can be easily determined.
[0021]
Further, the operation mode determining means includes a load calculating means for calculating a load that can be allocated to the processing of the first task started after the state change, and a load calculated by the load calculating means and each of the first task. Comparing means for respectively comparing loads required for processing in the operation mode may be provided, and the operation mode determining means may determine an operation mode of the first task based on a comparison result by the comparing means. In this case, the operation mode determining unit further includes a start request receiving unit that receives a start request of each of the tasks, and the start request receiving unit receives a request for starting a task other than the first task during the processing of the first task. And when the load calculated by the load calculating means is smaller than a threshold value set for the operation mode of the lowest function of the first task, the start of the other task is prohibited. Means. As a result, it is ensured that the operation mode of the lowest function of the first task is continuously processed in real time, and the sound can be prevented from being interrupted.
[0022]
Further, the operation mode determining means further includes a start request receiving means for receiving a start request of each of the tasks, and the start request receiving means receives a start request of another task other than the first task during the processing of the first task. When the request is accepted, a start prohibition unit for prohibiting the start of the other task may be provided. As a result, the change of the operation mode of the first task is prevented, and the music reproduction processing with a constant sound quality can be continued.
[0023]
Further, the operation mode determining means includes an instruction number calculating means for calculating the number of instructions that can be allocated to the processing of the first task started after the state change, and an instruction number calculated by the instruction number calculating means. Comparison means for respectively comparing the number of instructions required for processing in each operation mode of one task, wherein the operation mode determination means determines an operation mode based on a comparison result by the comparison means. Good. In this case, the operation mode determining means further includes a start request receiving means for receiving a start request of each of the tasks, and the start request receiving means activates another task other than the first task during the processing of the first task. In a case where the request is accepted, if the number of instructions calculated by the number-of-instructions calculating means is less than a threshold set for the operation mode of the lowest function of the first task, the activation of the other task is prohibited. And a prohibition unit for performing the operation. This also ensures that the operation mode of the lowest function of the first task is continuously processed in real time, thereby preventing the sound from being interrupted.
[0024]
Further, the operation mode determining means further includes a start request receiving means for receiving a start request of each of the tasks, and the start request receiving means receives a start request of another task other than the first task during the processing of the first task. When the request is accepted, a prohibition unit for prohibiting the activation of the other task may be provided. This also prevents the change of the operation mode of the first task, and can continue the music reproduction process with a constant sound quality.
[0025]
Further, the mode control means sets a parameter associated with the operation mode determined by the operation mode determination means in the first task, and causes the processor to process the first task in the operation mode corresponding to the parameter. It can also be a feature. As a result, the operation mode of the first task can be easily changed by a simple process of setting parameters, and the load and the number of instructions can be changed.
[0026]
Further, in order to solve the above problem, a music data reproducing apparatus according to the present invention provides a music data reproducing apparatus comprising: A playback device, wherein the multitask control device determines whether or not the music playback task should be started; and the processor, when the determination unit determines that the music playback task should be started, And a mode control means for causing the processor to process the first task in an operation mode corresponding to a function with the highest sound quality that can be processed within the processing capability range. Specifically, the music data reproducing apparatus has portability, and the other task other than the music reproducing task processed in parallel with the processor includes at least one of a TV view, browsing, mail, and a telephone call. It can be characterized by one. As a result, while using a highly portable device such as a mobile phone as a high-quality music data reproducing device, a TV view, browsing, mail, and a telephone call can be performed in parallel.
[0027]
As described above, according to the present invention, when there is enough computing resources, high-quality audio signal processing can be performed, and even when there is no computing resources, the computing resources are reduced, and a range that does not cause breakdown is achieved. Since the processing can be performed smoothly with the highest sound quality, the practical value of the present invention is extremely high.
[0028]
In addition, the present invention can be realized as a multitask control method in which all means provided in the multitask control device are steps, or as a program that causes a computer to function as all the means. It goes without saying that the program can be widely distributed via a recording medium such as a DVD or a transmission medium such as the Internet.
[0029]
BEST MODE FOR CARRYING OUT THE INVENTION
Hereinafter, a multitask control device according to an embodiment of the present invention will be described with reference to the drawings.
(Embodiment 1)
FIG. 1 is a block diagram showing an overall configuration of a multitask control device 1a according to the first embodiment.
[0030]
The multi-task control device 1a sends, to the
[0031]
The
[0032]
Specifically, when the value of the parameter is “1”, the
[0033]
Further, when the value of the parameter is “3”, the
[0034]
The
[0035]
Further, the
[0036]
The
[0037]
The
[0038]
The
[0039]
FIG. 2 is a diagram showing the relationship between the load per unit time and the sound quality on the
Here, the AAC has a layered (scalable) structure so that sound can be reproduced even when a part of a coded bit stream of an audio signal is used. By combining these tools, the algorithm that pursues the highest quality like an encoder for business use can be adopted, or some of the tools (for example, a prediction tool) can be omitted or simplified so that it can be used as an SD player. It is possible to employ an algorithm whose quality is lower than that of a commercial encoder, or an algorithm whose quality is lower than that of an SD player such as a portable CD player.
[0040]
For example, in the encoding process of high-quality audio, a process called an auditory model that simulates an auditory masking phenomenon or the like is performed in order to improve auditory sound quality (see AAC). However, if the encoding process is performed to obtain a reproduced sound having no difference from the original sound, the number of instructions becomes enormous, and this process requires a large load. On the other hand, when this processing is simplified, while the sound quality gradually deteriorates in accordance with the degree of simplification, the number of instructions is greatly reduced, and the load required for this processing can be greatly reduced. In such a case, the operation mode A is a program for performing an encoding process for obtaining a reproduced sound that does not differ from the original sound by sufficiently considering the auditory model. The operation mode in which the processing of the
[0041]
Also, in audio encoding with high sound quality, compression processing is performed while repeatedly changing or correcting encoding parameters in order to suppress compression distortion during encoding to a level that does not affect the audibility as much as possible (see AAC). This also requires a large load. On the other hand, if this processing is simplified, the deterioration of the sound quality gradually progresses according to the degree of simplification, while the load can be significantly reduced. In such a case, for example, a mode in which the number of repetitions of the encoding parameter change and correction is large is the operation mode A, and the simplified modes are the operation mode B and the operation mode C.
[0042]
As specific examples of these, in the program of the operation mode A, the auditory characteristics include a difference in minimum audible level for each frequency component (so-called loudness characteristic), a masking characteristic, an absolute time shift and a phase difference. Consideration is given to insensitivity, for example, by changing the filter characteristics according to the level of the audio signal, changing the level enhancement in the low frequency range and the high frequency range, or changing the level (amplitude) of the audio signal. The signal is convolved with the masking characteristic whose scale on the frequency axis is a bark scale (that is, the range of the masking is narrow at low frequency portions and widened at high frequency portions), and the level near the signal is low. Masking processing of a signal reduces quantization noise.
[0043]
Further, in the program of the operation mode B, for example, by setting the above-mentioned masking characteristic to the same range of the masking in the low frequency portion and the high frequency portion, the load per unit time is significantly larger than in the case of the operation mode A. Has been reduced. Further, in the program of the operation mode C, for example, by using the same filter characteristics regardless of the level of the audio signal and increasing the levels in the low frequency range and the high frequency range, the load per unit time is reduced in the operation mode B. A little less than if.
[0044]
FIG. 3 is a diagram showing details of the operation mode setting table 31a shown in FIG. 1, and FIG. 4 is a diagram showing a relationship between the processing capability of the processor and the operation mode of the
[0045]
The operation mode setting table 31a shown in FIG. 3 shows the relationship between the task to be executed and the operation mode of the
[0046]
In the operation mode setting table 31a, when a notification that only the
[0047]
Further, in the operation mode setting table 31a, when a notification that the two tasks of the
[0048]
In the operation mode setting table 31a, when the
[0049]
Further, in the operation mode setting table 31a, when a notification that all of the
[0050]
FIG. 5 is a diagram illustrating the operation of the multitask control device 1a.
When detecting a state change of the target task such that a new task is started or the task is stopped due to the occurrence of an event (S11), the
[0051]
When the target task includes the
[0052]
The multitask control device 1a processes the
[0053]
FIG. 6 is a diagram illustrating a relationship between a state transition when only the
Before the time T1 shown in FIG. 6, no task has been started. In this state, when only the
[0054]
Therefore, in the related art, the sound quality is low only with the load of 30 MIPS as described above, but in the first embodiment, the
[0055]
FIG. 7 is a diagram illustrating a relationship between a state transition in a case where the
[0056]
At time T2 shown in FIG. 7, when only the
[0057]
Therefore, in the related art, a load of 30 MIPS + 150 MIPS = 180 MIPS is applied as described above. However, in the first embodiment, a larger load is applied than in the related art, and the use efficiency of the
[0058]
FIG. 8 is a diagram illustrating a relationship between a state transition when the
[0059]
Before time T4 shown in FIG. 8, no tasks are activated. In this state, when the
[0060]
Next, it is assumed that the
[0061]
Next, it is assumed that the
[0062]
Therefore, the
[0063]
That is, in this case, there is no margin for the load to allocate the operation mode B, so that the
[0064]
Next, it is assumed that the
[0065]
Next, it is assumed that the
[0066]
As described above, according to the invention according to the first embodiment, the operation modes in which the loads per unit time in the
[0067]
In the first embodiment, the operation has been described for the case where three tasks are congested. However, even when two tasks are congested or when four or more tasks are congested, the above operation is performed. The present invention can be applied in the same way as in
[0068]
In the first embodiment, the
[0069]
Further, in the first embodiment, the sum of the loads of the activated tasks other than the first task is used as the index of the determination in switching the operation mode for the first task. The sum of the computation amounts required for processing the activated task may be used, or the sum of the number of instructions of the programs constituting the activated task other than the first task may be used.
[0070]
Further, the number of activated tasks other than the first task may be used. In this case, the operation mode A may be determined and set if the number of other tasks is “0”, the operation mode B if “1”, and the operation mode C if “2”. It is very easy to determine and set.
[0071]
In the first embodiment, three operation modes are prepared for the
[0072]
In the first embodiment, a plurality of operation modes having different loads are prepared only for the
[0073]
Further, in the first embodiment, the
[0074]
In this case, there is no need to create one program that changes the operation mode according to the parameters, and the existing software can be reused, and the reuse of existing resources is promoted.
[0075]
Further, in the first embodiment, the present invention is applied to the case where the first task is the encoding process of the audio signal. However, the present invention can be applied to the reproduction process of the audio signal because the scalability is high. For example, the present invention is applied to a virtual surround function in audio signal reproduction processing. The virtual surround function is realized by a multi-tap digital filter. The number of taps (the number of coefficients of the FIR filter) is, for example, 8192 (2 13) taps in the operation mode A and 128 (2 7) taps in the operation mode B. ) The tap is set to 32 (2 5) taps in the operation mode C. If the number of task congestion is small, the operation mode A is set to increase the load, and the virtual field for expanding the sound field is set. You only need to maximize the surround effect. On the other hand, if the number of task congestions increases, the operation mode B and the operation mode C may be set in this order to reduce the load and gradually reduce the virtual surround effect.
[0076]
(Embodiment 2)
FIG. 9 is a block diagram showing an overall configuration of a
[0077]
The
[0078]
Here, in the multitask control device 1a according to the first embodiment, the
[0079]
The
[0080]
The
[0081]
FIG. 10 is a diagram showing a configuration example of the operation mode setting table 22 shown in FIG.
As shown in the figure, the operation mode setting table 22 stores a
[0082]
The
[0083]
The
[0084]
Further, the threshold value is set to a value (140 MIPS) at which, for example, audio data can be decoded in real time and the reproduced sound is not interrupted.
FIG. 11 is a diagram illustrating an example of an external configuration of a mobile phone on which the
[0085]
As shown in the figure, the mobile phone ex115 includes an antenna ex201 for transmitting and receiving radio waves to and from a base station (not shown) and a satellite, and a plurality of operation keys mounted on the main body surface and operated by a user. Including an operation unit ex204, a CCD camera and the like, a camera unit ex203 capable of taking moving images and still images, and a liquid crystal display and the like, and images received by the camera unit ex203 and received via the antenna ex201. Including a display unit ex202 for displaying TV images and the like, a microphone and the like, an audio input unit ex205 for inputting audio, and a plurality of speakers and the like, for reproducing audio and reproducing music in surround. Audio output unit ex208, a pin jack connector ex209 for connecting headphones or external speakers, and a recording medium. And a like slot portion ex206 for attaching the ex207.
[0086]
Here, the recording medium ex207 stores a flash memory element, which is a kind of electrically erasable and programmable read only memory (EEPROM), which is a nonvolatile memory that can be electrically rewritten and erased, in a plastic case such as an SD card. And holds encoded audio data, decoded audio data, and the like, such as captured moving image or still image data, received mail data, moving image data or still image data, and the like.
[0087]
The
[0088]
Next, the operations of the
FIG. 12 is a flowchart illustrating details of the task start / stop processing executed by the
[0089]
The task start / stop processing is periodically executed at predetermined time intervals.
In the task start / stop processing, the
[0090]
On the other hand, when there is no task activation request (No in S10), the
[0091]
On the other hand, if the request is not a task stop request (No in S50), the
FIG. 13 is a flowchart showing the subroutine processing of the music reproduction task activation control processing (S30) shown in FIG.
[0092]
In the music playback task activation control process, the
[0093]
On the other hand, when there is another running task (No in S301), the
[0094]
When the operation mode is determined, the
[0095]
On the other hand, if the allocatable processing amount is not equal to or larger than the threshold value, that is, if the allocatable processing amount is smaller than the threshold value (No in S307), the
[0096]
FIG. 14 is a flowchart showing a subroutine process of another task activation control process (S40) shown in FIG.
When there is another task activation request, the
[0097]
On the other hand, if the activated music playback task is not in the congestion prohibition mode, that is, has been activated in the congestion permission mode (No in S402), the
[0098]
On the other hand, if the allocatable processing amount is not less than the threshold value (No in S405), that is, if the allocatable processing amount is equal to or more than the threshold value, the operation mode of the music reproducing task is set to “based on the allocatable processing amount calculated in step S404. The
[0099]
On the other hand, if the music reproduction task has not been activated (No in S401), the activation of the other requested task is permitted (S409), and the process returns to the main routine. As a result, the processing of the other requested task is performed.
[0100]
FIG. 15 is a flowchart showing a subroutine process of another task stop control process (S80) shown in FIG.
If there is another task stop request, the
[0101]
On the other hand, if the music playback task is running (Yes in S802), it is determined whether the music playback task is running in the congestion prohibition mode (S803). If it is started in the congestion prohibition mode (Yes in S803), the process returns to the main routine. That is, even if the processing capacity is sufficient, the processing returns to the main routine without transferring the processing capacity to the music reproduction task. Therefore, since the operation mode of the activated music reproduction task is not changed, the music reproduction is continued to the end without changing the sound quality.
[0102]
On the other hand, if the mode is not the congestion prohibition mode (No in S803), that is, if the mode is the congestion permission mode, the
[0103]
FIG. 16 is a diagram illustrating a transition of a load according to a transition state of a task in the congestion permission mode. Specifically, a relationship between a state transition when another task is sequentially activated after the music reproduction task is activated in the congestion permission mode and a transition of a load applied to the
[0104]
Before the time T10 shown in FIG. 16, no task is activated. In this state, when the music playback task is started by the
[0105]
Next, it is assumed that another task (for example, a TV view) is further activated by the
[0106]
That is, in this case, since the load on the
[0107]
Next, at time T12, it is assumed that another task (for example, browsing) is further activated by the
[0108]
That is, in this case, the parameters for reproducing music in the operation mode with the highest sound quality and the virtual surround mode with the lowest sound quality within a range where the
[0109]
Next, at time T13, it is assumed that a request to start another task (for example, browsing of a mail with a moving image) has been made to the
[0110]
Next, it is assumed that the browsing is stopped by the
[0111]
Next, it is assumed that the browsing of the mail with the moving image is started by the
[0112]
Next, at time T16, it is assumed that the browsing of the mail with the moving image is stopped by the
[0113]
Next, it is assumed that at time T17, the TV view is stopped by the
[0114]
Next, at time T18, it is assumed that the music playback task is stopped by the
[0115]
FIG. 18 is a diagram illustrating a relationship between a state transition when a start request of another task is made after the music reproduction task is started in the congestion prohibition mode, and a transition of a load applied to the
[0116]
Before time T20 shown in FIG. 18, no task is activated. In this state, when the music playback task is started at time T20, no other task has been started, so the
[0117]
Next, it is assumed that at time T21, a request to start another task (for example, a TV view) is made to the
[0118]
Next, it is assumed that the music playback task is stopped by the
[0119]
As described above, according to the invention according to the second embodiment, the operation modes having different loads per unit time in the
[0120]
That is, when the overall load can be reduced and the load has a margin, a large amount of processing resources are allocated to the music reproduction task, and a high-performance function can be realized. Therefore, since the operation mode with the highest load within the range not exceeding the processing capability of the processor is set for the music reproduction task, the processing capability of the processor can be used to the maximum, and the usage efficiency of the
[0121]
Further, when there is a start request of another task after the music reproduction task is started in the congestion prohibition mode, the
[0122]
In the second embodiment, the
[0123]
The operation mode setting table 31b may be provided in the
[0124]
【The invention's effect】
As is clear from the above description, according to the multitask control device of the present invention, when the processor has spare capacity, the range of selection of the function that can process the first task (the range of selection) is expanded, and the spare capacity is increased. Otherwise, the range of selection is narrowed, so that the mode control means can cause the processor to process the first task in an operation mode corresponding to the highest function within the processing capability of the processor. Therefore, regardless of the congestion state of the task, there is an effect that the reproduced sound quality can be improved while reliably avoiding the failure of the processor.
[0125]
Further, the mode control means includes state change detection means for detecting a state change of the target task processed by the processor, identification means for identifying a task to be activated after the state change, and a task identified by the identification means. Includes an operation mode determining means for determining the operation mode of the first task when the first task is included in the first task. The mode can be determined at an appropriate timing.
[0126]
Further, the operation mode determining means has an operation mode setting table in which the task specified by the specifying means is associated with an operation mode of a first task to be started after the state change, and the operation mode determining means includes: The operation mode of the first task is determined based on the operation mode setting table, and the operation mode determination unit determines the number of tasks specified by the specification unit and the first task to be activated after the state change. An operation mode setting table corresponding to the operation mode; and the operation mode determining means determines the operation mode of the first task based on the operation mode setting table. The operation mode of the task can be easily determined.
[0127]
Further, the operation mode determining means includes a load calculating means for calculating a load that can be allocated to the processing of the first task started after the state change, and a load calculated by the load calculating means and each of the first task. Comparing means for respectively comparing loads required for processing in the operation mode, wherein the operation mode determination means determines an operation mode of the first task based on a comparison result by the comparison means, The mode determining means further includes: a start request receiving means for receiving a start request of each of the tasks; and a mode in which the start request receiving means receives a start request for a task other than the first task during the processing of the first task. When the load calculated by the load calculating means is less than a threshold set for the operation mode of the lowest function of the first task, And a start prohibition unit for prohibiting the start of the task, so that it is ensured that the operation mode of the lowest function of the first task is continuously processed in real time, and that the sound is not interrupted. be able to.
[0128]
Further, the operation mode determining means further includes a start request receiving means for receiving a start request of each of the tasks, and the start request receiving means receives a start request of another task other than the first task during the processing of the first task. In the case of accepting, since the start-up inhibiting means for inhibiting the activation of the other task is provided, the change of the operation mode of the first task is prevented, and the music reproduction processing with a constant sound quality can be continued.
[0129]
Further, the operation mode determining means includes an instruction number calculating means for calculating the number of instructions that can be allocated to the processing of the first task started after the state change, and an instruction number calculated by the instruction number calculating means. Comparing means for respectively comparing the number of instructions required for processing in each operation mode of one task, wherein the operation mode determination means determines an operation mode based on a comparison result by the comparison means; The operation mode determining unit further includes a start request receiving unit that receives a start request of each of the tasks, and a case where the start request receiving unit receives a start request of a task other than the first task during the processing of the first task. In the above, when the number of instructions calculated by the number-of-instructions calculation means is less than a threshold value set for the operation mode of the lowest function of the first task, The prohibition means for prohibiting the activation of the task is provided, so that it is ensured that the operation mode of the lowest function of the first task is continuously processed in real time, and the sound is interrupted. Can be prevented.
[0130]
Further, the operation mode determining means further includes a start request receiving means for receiving a start request of each of the tasks, and the start request receiving means receives a start request of another task other than the first task during the processing of the first task. When the reception is accepted, a prohibition unit that prohibits the activation of the other task is provided, so that the change of the operation mode of the first task is also prevented, and the music reproduction process with a constant sound quality can be continued.
[0131]
Further, the mode control means sets a parameter associated with the operation mode determined by the operation mode determination means in the first task, and causes the processor to process the first task in the operation mode corresponding to the parameter. As a result, the operation mode of the first task can be easily changed by a simple process of setting parameters, and the load and the number of instructions can be changed.
[0132]
Further, in order to solve the above problem, a music data reproducing apparatus according to the present invention provides a music data reproducing apparatus having a multitask control apparatus for causing a processor to process a plurality of tasks including a music reproducing task having a plurality of operation modes in parallel. A playback device, wherein the multitask control device determines whether or not the music playback task should be started; and the processor, when the determination unit determines that the music playback task should be started, Mode control means for causing the processor to process the first task in an operation mode corresponding to the highest sound quality function that can be processed within the processing capability of the music data reproducing device. The tasks other than the music playback task, which is performed in parallel with the processor, include a TV view, browsing, mail, and a call. At least one of them is used, so that a portable device such as a mobile phone can be used as a music data reproducing device with high sound quality while using a TV view, browsing, mail, and call. Can be performed in parallel.
[0133]
As described above, according to the present invention, when there is enough computing resources, high-quality audio signal processing can be performed, and even when there is no computing resources, the computing resources are reduced, and a range that does not cause breakdown is achieved. Since the processing can be performed smoothly with the highest sound quality, the practical value of the present invention is extremely high.
[Brief description of the drawings]
FIG. 1 is a block diagram showing a configuration of a multitask control device 1a according to
FIG. 2 is a diagram illustrating a relationship between a load on a
FIG. 3 is a diagram showing a detailed configuration of an operation mode setting table 31a shown in FIG.
FIG. 4 is a diagram illustrating a relationship between a processing capability of a processor and operation modes A to C of a
FIG. 5 is a diagram illustrating an operation of the multitask control device 1a.
FIG. 6 is a diagram illustrating a transition of a load according to a transition state of a task.
FIG. 7 is a diagram illustrating a transition of a load according to a transition state of a task.
FIG. 8 is a diagram illustrating a transition of a load according to a transition state of a task.
FIG. 9 is a block diagram showing a configuration of a
10 is a diagram showing a detailed configuration of an operation mode setting table 22 shown in FIG.
11 is a diagram illustrating an example of an external configuration of a mobile phone in which the multitask control device illustrated in FIG. 9 is mounted.
FIG. 12 is a flowchart showing details of task start / stop processing executed by the
13 is a flowchart showing a subroutine process of a music reproduction task activation control process (S30) shown in FIG.
14 is a flowchart showing a subroutine process of another task activation control process (S40) shown in FIG.
15 is a flowchart showing a subroutine process of another task stop control process (S80) shown in FIG.
FIG. 16 is a diagram showing a transition of a load according to a transition state of a task in a congestion permission mode.
17A and 17B are diagrams illustrating a display example of a screen of a mobile phone, in particular, FIG. 17A is a diagram illustrating a display example when a music reproduction task is executed, and FIG. 17B is a diagram illustrating a music reproduction task and a TV view; FIG. 17 (c) is a diagram showing a display example when the music reproduction task, the TV view and the browsing are congested, and FIG. 17 (d) is a diagram showing a music reproduction task. FIG. 11 is a diagram illustrating a display example when a request for browsing a mail with a moving image is further made when a task, a TV view, and browsing are congested.
FIG. 18 is a diagram illustrating a transition of a load according to a transition state of a task in the congestion inhibition mode.
FIG. 19 is a diagram showing another detailed configuration of the operation mode setting table.
[Explanation of symbols]
1a, 1b Multitask control device
10 processor
20a, 20b Task management device
21 Flag storage unit
22, 31a, 31b Operation mode setting table
30a, 30b mode setting device
101a, 101b First task
102a, 102b Second task
103a, 103b Third task
104b Fourth task
Claims (20)
前記第1タスクを起動すべきか否かを判断する判断手段と、
前記判断手段が前記第1タスクを起動すべきと判断した場合に、前記プロセッサの処理能力の範囲内で処理できる機能に対応する動作モードで第1タスクをプロセッサに処理させるモード制御手段と
を備えることを特徴とするマルチタスク制御装置。A multitask control device that causes a processor to process a plurality of tasks including a first task having a plurality of operation modes in parallel,
Determining means for determining whether to start the first task;
A mode control unit that, when the determination unit determines that the first task should be started, causes the processor to process the first task in an operation mode corresponding to a function that can be processed within the processing capability of the processor. A multitask control device characterized by the above-mentioned.
前記機能は、音質を制御する機能であり、
前記モード制御手段は、前記判断手段が前記第1タスクを起動すべきと判断した場合に、前記プロセッサの処理能力の範囲内で、かつ最も高い音質に対応する動作モードで第1タスクをプロセッサに処理させる
ことを特徴とする請求項1記載のマルチタスク制御装置。The first task is a task of playing back a digital audio signal.
The function is a function of controlling sound quality,
The mode control means, when the determination means determines that the first task should be started, sends the first task to the processor in an operation mode corresponding to the highest sound quality within the processing capability of the processor. 2. The multi-task control device according to claim 1, wherein the multi-task control device performs processing.
前記モード制御手段は、前記最も高い機能に対応する動作モードで第1タスクをプロセッサに処理させる
ことを特徴とする請求項1記載のマルチタスク制御装置。The function is the highest function within the processing capability of the processor, and
The multitask control device according to claim 1, wherein the mode control means causes the processor to process the first task in an operation mode corresponding to the highest function.
前記モード制御手段は、前記判断手段が前記第1タスクを起動すべきと判断した場合に、前記プロセッサの処理能力の範囲内で、かつ最も大きい負荷に対応する動作モードで第1タスクをプロセッサに処理させる
ことを特徴とする請求項3記載のマルチタスク制御装置。The function increases as the load on the processor increases,
The mode control means, when the determination means determines that the first task should be started, sends the first task to the processor in an operation mode corresponding to the largest load within the processing capability of the processor. 4. The multi-task control device according to claim 3, wherein the multi-task control device performs processing.
前記モード制御手段は、前記判断手段が前記第1タスクを起動すべきと判断した場合に、前記プロセッサの処理能力の範囲内で、かつ最も多い命令数に対応する動作モードで第1タスクをプロセッサに処理させる
ことを特徴とする請求項3記載のマルチタスク制御装置。The function increases as the number of instructions processed by the processor increases,
The mode control means, when the determining means determines that the first task should be started, executes the first task in an operation mode corresponding to the largest number of instructions within the processing capability of the processor. 4. The multi-task control device according to claim 3, wherein the multi-task control device is configured to perform processing.
前記モード制御手段は、前記判断手段が前記第1タスクを起動すべきと判断した場合に、前記プロセッサの処理能力の範囲内で、かつ最も多いタップ数のフィルタ処理に対応する動作モードで第1タスクをプロセッサに処理させる
ことを特徴とする請求項1記載のマルチタスク制御装置。The function is a filter function that controls the highest sound quality within the processing capability of the processor,
The mode control means, when the determination means determines that the first task should be started, sets the first operation mode in the operation mode corresponding to the filter processing with the largest number of taps within the processing capability of the processor. 2. The multi-task control device according to claim 1, wherein the task is processed by a processor.
前記プロセッサに処理される対象タスクの状態変化を検出する状態変化検出手段と、
前記状態変化後に起動させるタスクを特定する特定手段と、
前記特定手段によって特定されたタスクの中に第1タスクが含まれている場合、第1タスクの動作モードを決定する動作モード決定手段と
を備えることを特徴とする請求項1記載のマルチタスク制御装置。The mode control means includes:
State change detecting means for detecting a state change of the target task processed by the processor,
Specifying means for specifying a task to be started after the state change;
2. The multi-task control according to claim 1, further comprising: an operation mode determining unit that determines an operation mode of the first task when the first task is included in the tasks specified by the specifying unit. apparatus.
前記動作モード決定手段は、前記動作モード設定テーブルに基づいて、第1タスクの動作モードを決定する
ことを特徴とする請求項7記載のマルチタスク制御装置。The operation mode determination means has an operation mode setting table in which the task specified by the specification means and the operation mode of the first task to be activated after the state change are associated with each other;
8. The multitask control device according to claim 7, wherein the operation mode determination unit determines an operation mode of the first task based on the operation mode setting table.
前記動作モード決定手段は、前記動作モード設定テーブルに基づいて、第1タスクの動作モードを決定する
ことを特徴とする請求項7記載のマルチタスク制御装置。The operation mode determination means has an operation mode setting table in which the number of tasks specified by the specification means and the operation mode of the first task to be activated after the state change are associated with each other,
8. The multitask control device according to claim 7, wherein the operation mode determination unit determines an operation mode of the first task based on the operation mode setting table.
前記状態変化後に起動させる第1タスクの処理に対して割り当て可能な負荷を算出する負荷算出手段と、
前記負荷算出手段が算出した負荷と前記第1タスクの各動作モードの処理に要する負荷とをそれぞれ比較する比較手段とを備え、
前記動作モード決定手段は、前記比較手段による比較結果に基づいて、第1タスクの動作モードを決定する
ことを特徴とする請求項7記載のマルチタスク制御装置。The operation mode determining means,
Load calculation means for calculating a load that can be allocated to the processing of the first task started after the state change;
Comparing means for comparing the load calculated by the load calculating means with the load required for processing in each operation mode of the first task,
8. The multi-task control device according to claim 7, wherein the operation mode determination unit determines an operation mode of the first task based on a comparison result by the comparison unit.
各前記タスクの起動要求を受け付ける起動要求受付手段と、
前記第1タスクの処理中に前記起動要求受付手段が第1タスク以外の他のタスクの起動要求を受け付けた場合において、前記負荷算出手段が算出した負荷が第1タスクの最も低い機能の動作モードに対して設定されたしきい値未満であるとき、前記他のタスクの起動を禁止する起動禁止手段と
を備えることを特徴とする請求項10記載のマルチタスク制御装置。The operation mode determining unit further includes a start request receiving unit that receives a start request of each of the tasks,
An operation mode in which the load calculated by the load calculating unit is the lowest function of the first task when the start request receiving unit receives a start request of another task other than the first task during the processing of the first task; 11. The multi-task control device according to claim 10, further comprising: activation prohibition means for prohibiting activation of the other task when the threshold value is smaller than a threshold value set for the task.
各前記タスクの起動要求を受け付ける起動要求受付手段と、
前記第1タスクの処理中に前記起動要求受付手段が第1タスク以外の他のタスクの起動要求を受け付けた場合、前記他のタスクの起動を禁止する起動禁止手段と
を備えることを特徴とする請求項10記載のマルチタスク制御装置。The operation mode determining unit further includes a start request receiving unit that receives a start request of each of the tasks,
When the activation request accepting unit accepts an activation request for a task other than the first task during the processing of the first task, an activation inhibiting unit for inhibiting activation of the other task is provided. The multitask control device according to claim 10.
前記状態変化後に起動させる第1タスクの処理に対して割り当て可能な命令数を算出する命令数算出手段と、
前記命令数算出手段が算出した命令数と前記第1タスクの各動作モードの処理に要する命令数とをそれぞれ比較する比較手段とを備え、
前記動作モード決定手段は、前記比較手段による比較結果に基づいて、動作モードを決定する
ことを特徴とする請求項7記載のマルチタスク制御装置。The operation mode determining means,
Instruction number calculating means for calculating the number of instructions that can be allocated to the processing of the first task started after the state change;
Comparing means for comparing the number of instructions calculated by the number of instructions calculating means with the number of instructions required for processing in each operation mode of the first task,
8. The multitask control device according to claim 7, wherein said operation mode determining means determines an operation mode based on a comparison result by said comparing means.
各前記タスクの起動要求を受け付ける起動要求受付手段と、
前記第1タスクの処理中に前記起動要求受付手段が第1タスク以外の他のタスクの起動要求を受け付けた場合において、前記命令数算出手段が算出した命令数が第1タスクの最も低い機能の動作モードに対して設定されたしきい値未満であるとき、前記他のタスクの起動を禁止する禁止手段と
を備えることを特徴とする請求項13記載のマルチタスク制御装置。The operation mode determining unit further includes a start request receiving unit that receives a start request of each of the tasks,
In a case where the activation request accepting unit accepts an activation request for a task other than the first task during the processing of the first task, the number of instructions calculated by the instruction number calculating unit is the lowest function of the first task. 14. The multitask control device according to claim 13, further comprising a prohibition unit that prohibits activation of the other task when the threshold value is smaller than a threshold value set for the operation mode.
各前記タスクの起動要求を受け付ける起動要求受付手段と、
前記第1タスクの処理中に前記起動要求受付手段が第1タスク以外の他のタスクの起動要求を受け付けた場合、前記他のタスクの起動を禁止する禁止手段と
を備えることを特徴とする請求項13記載のマルチタスク制御装置。The operation mode determining unit further includes a start request receiving unit that receives a start request of each of the tasks,
If the activation request accepting unit accepts an activation request for a task other than the first task during the processing of the first task, the activation request accepting unit inhibits activation of the other task. Item 14. The multitask control device according to item 13.
ことを特徴とする請求項7記載のマルチタスク制御装置。The mode control means sets a parameter associated with the operation mode determined by the operation mode determination means in a first task, and causes the processor to process the first task in an operation mode corresponding to the parameter. The multitask control device according to claim 7, wherein
コンピュータを、
前記マルチタスク制御装置が備える、前記第1タスクを起動すべきか否かを判断する判断手段および前記判断手段が前記第1タスクを起動すべきと判断した場合に、前記プロセッサの処理能力の範囲内で処理できる機能に対応する動作モードで第1タスクをプロセッサに処理させるモード制御手段
として機能させるプログラム。A program that causes a computer to function as a multitask control device that causes a processor to process a plurality of tasks including a first task having a plurality of operation modes in parallel.
Computer
Within the range of the processing capability of the processor when the determining means provided in the multi-task control device for determining whether to start the first task and the determining means determine that the first task should be started. A program that functions as mode control means for causing a processor to process a first task in an operation mode corresponding to a function that can be processed by the processor.
前記第1タスクを起動すべきか否かを判断する判断ステップと、
前記判断ステップで前記第1タスクを起動すべきと判断した場合に、前記プロセッサの処理能力の範囲内で処理できる機能に対応する動作モードで第1タスクをプロセッサに処理させるモード制御ステップと
を含むことを特徴とするマルチタスク制御方法。A multitask control method for causing a processor to process a plurality of tasks including a first task having a plurality of operation modes in parallel,
A determining step of determining whether to activate the first task;
A mode control step of causing the processor to process the first task in an operation mode corresponding to a function that can be processed within the processing capability of the processor when the determination step determines that the first task should be started. A multitask control method characterized by the above-mentioned.
前記マルチタスク制御装置は、
前記音楽再生タスクを起動すべきか否かを判断する判断手段と、
前記判断手段が前記音楽再生タスクを起動すべきと判断した場合に、前記プロセッサの処理能力の範囲内で処理できる最も音質の高い機能に対応する動作モードで音楽再生タスクをプロセッサに処理させるモード制御手段とを備える
ことを特徴とする音楽データ再生装置。A music data playback device including a multitask control device that causes a processor to process a plurality of tasks including a music playback task having a plurality of operation modes in parallel,
The multi-task control device,
Determining means for determining whether to start the music playback task,
Mode control for causing the processor to process the music reproduction task in an operation mode corresponding to the highest sound quality function that can be processed within the processing capability of the processor when the determination unit determines that the music reproduction task should be started. Means for reproducing music data.
前記プロセッサに並行して処理される音楽再生タスク以外の他のタスクは、TVビュー、ブラウジング、メールおよび通話の少なくともいずれか1つである
ことを特徴とする請求項19記載の音楽データ再生装置。The music data playback device has portability,
20. The music data reproducing apparatus according to claim 19, wherein the task other than the music reproducing task processed in parallel with the processor is at least one of a TV view, browsing, mail, and a telephone call.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003050482A JP2004078889A (en) | 2002-06-20 | 2003-02-27 | Multitasking control device and music data reproducing device |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002180629 | 2002-06-20 | ||
JP2003050482A JP2004078889A (en) | 2002-06-20 | 2003-02-27 | Multitasking control device and music data reproducing device |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004078889A true JP2004078889A (en) | 2004-03-11 |
Family
ID=32032580
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003050482A Withdrawn JP2004078889A (en) | 2002-06-20 | 2003-02-27 | Multitasking control device and music data reproducing device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2004078889A (en) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006056171A (en) * | 2004-08-20 | 2006-03-02 | Ricoh Co Ltd | Setting management device and image forming device |
JP2008249971A (en) * | 2007-03-30 | 2008-10-16 | Kenwood Corp | Speech signal processor, speech signal processing method and program |
WO2009034609A1 (en) * | 2007-09-11 | 2009-03-19 | Panasonic Corporation | Portable terminal device and application execution control method |
JP2010108295A (en) * | 2008-10-30 | 2010-05-13 | Ntt Docomo Inc | Mobile unit and switching method for application |
JP2012531677A (en) * | 2009-06-26 | 2012-12-10 | ヴイエムウェア インク | Control usage of virtual mobile devices |
JP2016507173A (en) * | 2013-01-15 | 2016-03-07 | コーニンクレッカ フィリップス エヌ ヴェKoninklijke Philips N.V. | Binaural audio processing |
-
2003
- 2003-02-27 JP JP2003050482A patent/JP2004078889A/en not_active Withdrawn
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006056171A (en) * | 2004-08-20 | 2006-03-02 | Ricoh Co Ltd | Setting management device and image forming device |
JP2008249971A (en) * | 2007-03-30 | 2008-10-16 | Kenwood Corp | Speech signal processor, speech signal processing method and program |
WO2009034609A1 (en) * | 2007-09-11 | 2009-03-19 | Panasonic Corporation | Portable terminal device and application execution control method |
JP2010108295A (en) * | 2008-10-30 | 2010-05-13 | Ntt Docomo Inc | Mobile unit and switching method for application |
US8789064B2 (en) | 2008-10-30 | 2014-07-22 | Ntt Docomo, Inc. | Mobile device and application switching method |
JP2012531677A (en) * | 2009-06-26 | 2012-12-10 | ヴイエムウェア インク | Control usage of virtual mobile devices |
JP2016507173A (en) * | 2013-01-15 | 2016-03-07 | コーニンクレッカ フィリップス エヌ ヴェKoninklijke Philips N.V. | Binaural audio processing |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3437337B1 (en) | Application programing interface for adaptive audio rendering | |
US8549525B2 (en) | Method for tuning service performance of multi-task system and multi-task system thereof | |
CN108062215A (en) | Vehicle source of sound control method and system, vehicle and its car-mounted terminal | |
US9191417B2 (en) | Cross-process media handling in a voice-over-internet protocol (VOIP) application platform | |
EP1514182A2 (en) | Multitask control device and music data reproduction device | |
KR100690854B1 (en) | Portable terminal capable of multitasking and multitasking processing method thereof | |
EP1958064A2 (en) | Resource control | |
JP2007251553A (en) | Real-time processing device and its method | |
US20120179793A1 (en) | Resource Allocation | |
JP2009536752A (en) | Prioritizing audio streams for audio decoding adapted to the audio platform | |
CN110321096A (en) | A kind of MCVF multichannel voice frequency intelligent control method and relevant apparatus and equipment | |
JP2004078889A (en) | Multitasking control device and music data reproducing device | |
EP2107737A1 (en) | Method for controlling a buffer memory | |
US7398528B2 (en) | Method and system for efficient multiprocessor processing in a mobile wireless communication device | |
CN105808198A (en) | Audio file processing method and apparatus applied to android system and terminal | |
US7707610B2 (en) | Telecommunication device and method of multimedia data processing via the telecommunication device having at least two processors | |
JP2010102587A (en) | Information processor | |
JP4609113B2 (en) | Processor | |
CN109151784B (en) | Network connection method, device and electronic device | |
US20040261077A1 (en) | Media processing apparatus and media processing method | |
US20060069457A1 (en) | Dynamically adjustable shared audio processing in dual core processor | |
CN110915223A (en) | Sending device, sending method, receiving device, receiving method and program | |
CN112202961A (en) | Audio channel switching method and device and computer readable storage medium | |
KR100517723B1 (en) | TASK SCHEDULLING METHOD FOR MAINTAINING QoS OF MULTIMEDIA TASK IN WIRELESS TERMINAL | |
JP2012060524A (en) | Reproduction apparatus, reproduction method, and program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050905 |
|
A761 | Written withdrawal of application |
Free format text: JAPANESE INTERMEDIATE CODE: A761 Effective date: 20060623 |