JP2002041285A - データ処理装置およびデータ処理方法 - Google Patents
データ処理装置およびデータ処理方法Info
- Publication number
- JP2002041285A JP2002041285A JP2000229153A JP2000229153A JP2002041285A JP 2002041285 A JP2002041285 A JP 2002041285A JP 2000229153 A JP2000229153 A JP 2000229153A JP 2000229153 A JP2000229153 A JP 2000229153A JP 2002041285 A JP2002041285 A JP 2002041285A
- Authority
- JP
- Japan
- Prior art keywords
- processing
- data
- memory
- audio
- decoding
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04S—STEREOPHONIC SYSTEMS
- H04S1/00—Two-channel systems
- H04S1/007—Two-channel systems in which the audio signals are in digital form
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Physics & Mathematics (AREA)
- Acoustics & Sound (AREA)
- Signal Processing (AREA)
- Advance Control (AREA)
- Executing Machine-Instructions (AREA)
- Memory System (AREA)
- Stored Programmes (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
(57)【要約】
【課題】DSPなどを用いた従来のオーディオ処理装置
よりも小さな回路規模で、オーディオ符号化・復号化処
理を実現する。 【解決手段】1チップに収められ、外部に存在するメモ
リをビデオ処理とオーディオ処理とで共有するUMA方
式に基づくビデオ・オーディオ処理装置において、オー
ディオ処理プロセッサ10,11に小容量のローカルメモリ1
3,14を接続する。オーディオ処理プロセッサは次に行わ
れる処理を予測して、必要なデータやプログラムを前も
って外部メモリ1からローカルメモリに転送するように
DMAコントローラ15を制御する。逆にしばらく使用し
ないと判断されるデータは、生成直後にローカルメモリ
から外部メモリに退避する。
よりも小さな回路規模で、オーディオ符号化・復号化処
理を実現する。 【解決手段】1チップに収められ、外部に存在するメモ
リをビデオ処理とオーディオ処理とで共有するUMA方
式に基づくビデオ・オーディオ処理装置において、オー
ディオ処理プロセッサ10,11に小容量のローカルメモリ1
3,14を接続する。オーディオ処理プロセッサは次に行わ
れる処理を予測して、必要なデータやプログラムを前も
って外部メモリ1からローカルメモリに転送するように
DMAコントローラ15を制御する。逆にしばらく使用し
ないと判断されるデータは、生成直後にローカルメモリ
から外部メモリに退避する。
Description
【0001】
【発明の属する技術分野】本発明は、放送や蓄積メディ
アから入力される符号化されたオーディオ信号を伸張す
るオーディオ復号化装置、及びオーディオ信号を符号化
する符号化装置に関する。
アから入力される符号化されたオーディオ信号を伸張す
るオーディオ復号化装置、及びオーディオ信号を符号化
する符号化装置に関する。
【0002】
【従来の技術】近年、ディジタル動画データ及びディジ
タルオーディオデータの符号化技術が確立し、放送や蓄
積メデイアでの活用が一般的になり、同時にLSI技術
のさらなる発展に伴い、1チップ上に数百万〜数千万ゲ
ートもの回路を実装することが可能になってきている。
タルオーディオデータの符号化技術が確立し、放送や蓄
積メデイアでの活用が一般的になり、同時にLSI技術
のさらなる発展に伴い、1チップ上に数百万〜数千万ゲ
ートもの回路を実装することが可能になってきている。
【0003】このことから、ディジタル圧縮された動画
像およびオーディオデータの伸張処理とグラフィックス
などのバックエンド処理、さらに伸張された動画像およ
びオーディオデータの再圧縮処理などを1チップで行う
LSI素子のニーズが高まってきている。このようなL
SIの構成は、外部に十数Mビットから数十Mビット程
度の容量をもつメモリを接続し、ビデオ処理やオーディ
オ処理がそのメモリを共有するようなUMA(Unified
Memory Architecture)とされることが多い。
像およびオーディオデータの伸張処理とグラフィックス
などのバックエンド処理、さらに伸張された動画像およ
びオーディオデータの再圧縮処理などを1チップで行う
LSI素子のニーズが高まってきている。このようなL
SIの構成は、外部に十数Mビットから数十Mビット程
度の容量をもつメモリを接続し、ビデオ処理やオーディ
オ処理がそのメモリを共有するようなUMA(Unified
Memory Architecture)とされることが多い。
【0004】今、特にオーディオ処理に着目した場合、
DVDビデオ向けのアプリケーションではDolby
AC−3規格、リニアPCM規格、Digital T
heater System(DTS)規格などが存在
し、それらすべてを復号できることが望ましい。さら
に、日本のディジタルBS放送においては、MPEG−
2AAC規格に基づいた復号化処理を行う必要があるな
ど、アプリケーションに応じて様々な方式に対応する必
要がある。
DVDビデオ向けのアプリケーションではDolby
AC−3規格、リニアPCM規格、Digital T
heater System(DTS)規格などが存在
し、それらすべてを復号できることが望ましい。さら
に、日本のディジタルBS放送においては、MPEG−
2AAC規格に基づいた復号化処理を行う必要があるな
ど、アプリケーションに応じて様々な方式に対応する必
要がある。
【0005】このような背景から、従来の1チップオー
ディオ・ビデオ(AV)デコーダでは、オーディオ処理
のために専用の信号処理プロセッサ(DSP)を搭載
し、ソフトウエアベースで復号処理を行うことが多かっ
た。一方で、コストを抑制する目的から、LSIの回路
規模を削減する要求もある。DSPではオーディオ処理
で使われる周波数変換(FFT;高速フーリエ変換)や
フィルタ処理を高速に実行できるため、低い動作周波数
でオーディオ処理を実現できる一方、演算処理を効率的
に実行させるために2個以上のローカルメモリおよびメ
モリアクセスユニット、アドレス更新のための演算器を
備える必要があり、メモリを含めた回路規模は決して小
さくない。
ディオ・ビデオ(AV)デコーダでは、オーディオ処理
のために専用の信号処理プロセッサ(DSP)を搭載
し、ソフトウエアベースで復号処理を行うことが多かっ
た。一方で、コストを抑制する目的から、LSIの回路
規模を削減する要求もある。DSPではオーディオ処理
で使われる周波数変換(FFT;高速フーリエ変換)や
フィルタ処理を高速に実行できるため、低い動作周波数
でオーディオ処理を実現できる一方、演算処理を効率的
に実行させるために2個以上のローカルメモリおよびメ
モリアクセスユニット、アドレス更新のための演算器を
備える必要があり、メモリを含めた回路規模は決して小
さくない。
【0006】また、オーディオ処理以外の例えばホスト
CPUとの通信や外部ハードウェアモジュールの制御な
どを行う場合には、DSPでは非効率であり、余分なハ
ードウェア資源を消費することが多い。このため、LS
I(集積回路素子)全体のコストを引き上げる要因とな
る。
CPUとの通信や外部ハードウェアモジュールの制御な
どを行う場合には、DSPでは非効率であり、余分なハ
ードウェア資源を消費することが多い。このため、LS
I(集積回路素子)全体のコストを引き上げる要因とな
る。
【0007】このような問題に対して、特開平8−11
1642号公報に示されるMPEG規格の映像音声デコ
ーダでは、バス上に配した1個のプロセッサと映像およ
びオーディオデータの逆離散コサイン変換(IDCT)
を行うための信号処理ユニットを設け、プロセッサと信
号処理ユニットを同時に動作させることにより、オーデ
ィオ処理とビデオ処理を同じハードウェア上で実現する
方法が提案されている。
1642号公報に示されるMPEG規格の映像音声デコ
ーダでは、バス上に配した1個のプロセッサと映像およ
びオーディオデータの逆離散コサイン変換(IDCT)
を行うための信号処理ユニットを設け、プロセッサと信
号処理ユニットを同時に動作させることにより、オーデ
ィオ処理とビデオ処理を同じハードウェア上で実現する
方法が提案されている。
【0008】この方法の概略を図6に示す。図6の構成
においてはプロセッサ21は、信号処理ユニット29の
前後に設けられたローカルメモリ25および27上に、
データを供給したり読み出したりする制御を行うと共
に、ビットストリームの内容に応じて信号処理ユニット
29ヘコマンドを送り、デコード処理を行う。
においてはプロセッサ21は、信号処理ユニット29の
前後に設けられたローカルメモリ25および27上に、
データを供給したり読み出したりする制御を行うと共
に、ビットストリームの内容に応じて信号処理ユニット
29ヘコマンドを送り、デコード処理を行う。
【0009】信号処理ユニット29では、一般的なプロ
セッサと同様にコマンドに対応するマイクロプログラム
を命令メモリ31から読み出し、順次バタフライユニッ
トや乗算・累積加算(MAC)ユニットを用いて演算処
理を行う。
セッサと同様にコマンドに対応するマイクロプログラム
を命令メモリ31から読み出し、順次バタフライユニッ
トや乗算・累積加算(MAC)ユニットを用いて演算処
理を行う。
【0010】そして、その演算処理の際の途中結果は、
ローカルメモリ32および33に格納される。ここで、
ビデオ・オーディオのデコード処理は、ビットストリー
ムの解読処理と、バタフライ演算に代表されるデータに
対する演算処理に分割できる。
ローカルメモリ32および33に格納される。ここで、
ビデオ・オーディオのデコード処理は、ビットストリー
ムの解読処理と、バタフライ演算に代表されるデータに
対する演算処理に分割できる。
【0011】このうち、ビットストリームの解読処理は
VLD処理部24で実行され、演算処理には乗算・累積
加算ユニット26,バタフライユニット30,命令メモ
リ31等からなる信号処理ユニット29にて実行され
る。
VLD処理部24で実行され、演算処理には乗算・累積
加算ユニット26,バタフライユニット30,命令メモ
リ31等からなる信号処理ユニット29にて実行され
る。
【0012】このため、ビットストリームの解読処理と
演算処理、そしてプロセッサ21によるデータ供給処理
は並列に実行されることとなる。さらに、この従来の提
案では、MPEG−2ビデオ規格に基づいたビットスト
リームのデコードも同じハードウェア上で実行すること
を想定している。この場合、図6には図示していない動
き補償のためのハードウェアユニットも利用して、並列
の度合いを高めることができる。
演算処理、そしてプロセッサ21によるデータ供給処理
は並列に実行されることとなる。さらに、この従来の提
案では、MPEG−2ビデオ規格に基づいたビットスト
リームのデコードも同じハードウェア上で実行すること
を想定している。この場合、図6には図示していない動
き補償のためのハードウェアユニットも利用して、並列
の度合いを高めることができる。
【0013】また、特開平10−341422号公報に
示される映像音声処理装置においては、デコード処理と
は非同期に発生するビットストリームの入力と映像・オ
ーディオ情報の出力部を分割し、独立したプロセッサで
制御することにより、デコード処理部め負担を低減して
リアルタイム処理を実現する方法が提案されている。
示される映像音声処理装置においては、デコード処理と
は非同期に発生するビットストリームの入力と映像・オ
ーディオ情報の出力部を分割し、独立したプロセッサで
制御することにより、デコード処理部め負担を低減して
リアルタイム処理を実現する方法が提案されている。
【0014】そして、MPEG−2ビデオ規格に基づい
たビデオデコード処理を想定した場合、一般的なテレビ
受像機向けの解像度で1秒間に27[MByte](メガバ
イト)ものデータを送出しなければならない上、この処
理はデコード処理とは非同期に一定間隔で行われなけれ
ばならないため、この処理を別プロセッサに担当させる
ようにしている。これによってデコード処理部の効率的
な実行を可能にする。その一方で、オーディオ信号の出
力は、1秒間に数百K[バイト]程度である。
たビデオデコード処理を想定した場合、一般的なテレビ
受像機向けの解像度で1秒間に27[MByte](メガバ
イト)ものデータを送出しなければならない上、この処
理はデコード処理とは非同期に一定間隔で行われなけれ
ばならないため、この処理を別プロセッサに担当させる
ようにしている。これによってデコード処理部の効率的
な実行を可能にする。その一方で、オーディオ信号の出
力は、1秒間に数百K[バイト]程度である。
【0015】それ故、このような遅いオーディオ信号の
処理に専用のプロセッサを用いるのは、あまりにもった
いない。
処理に専用のプロセッサを用いるのは、あまりにもった
いない。
【0016】
【発明が解決しようとする課題】このように、上記従来
技術によれば、ビデオとオーディオの両方のデータを処
理するのに、一つのプロセッサにより実施させる方式
と、入出力の処理に対して専用のプロセッサを用いて別
々に処理させる方式があった。
技術によれば、ビデオとオーディオの両方のデータを処
理するのに、一つのプロセッサにより実施させる方式
と、入出力の処理に対して専用のプロセッサを用いて別
々に処理させる方式があった。
【0017】前者の場合、プロセッサはビデオとオーデ
ィオの両方を処理しなければならないため、高い処理能
力が要求される。このために、高い動作周波数が要求さ
れ、コストの上昇を招く。そして、この方式では、周辺
に配置されたメモリが占める面積も大きくなる傾向があ
り、コストの増大を招く。さらに、信号処理プロセッサ
自体が自律して動作するため、CPUと同程度の制御回
路が必要である上、演算器も高機能なものが必要とな
る。
ィオの両方を処理しなければならないため、高い処理能
力が要求される。このために、高い動作周波数が要求さ
れ、コストの上昇を招く。そして、この方式では、周辺
に配置されたメモリが占める面積も大きくなる傾向があ
り、コストの増大を招く。さらに、信号処理プロセッサ
自体が自律して動作するため、CPUと同程度の制御回
路が必要である上、演算器も高機能なものが必要とな
る。
【0018】すなわち、オーディオ用のバタフライ演算
では24ビツト程度の演算精度が必要である一方、バタ
フライ演算の回数は1秒間に数百万回のレベルであるの
に対し、ビデオ用の場合の精度は12ビット程度でも良
いが、1秒間に数千万回も行う必要がある。これら2つ
の演算を両立させるためには、信号処理ユニットは高い
精度と高速性を良質しなければならず、回路規模の大き
いコストの高いものとなる可能性が高い。
では24ビツト程度の演算精度が必要である一方、バタ
フライ演算の回数は1秒間に数百万回のレベルであるの
に対し、ビデオ用の場合の精度は12ビット程度でも良
いが、1秒間に数千万回も行う必要がある。これら2つ
の演算を両立させるためには、信号処理ユニットは高い
精度と高速性を良質しなければならず、回路規模の大き
いコストの高いものとなる可能性が高い。
【0019】また、後者の方式は、画像、音声の情報を
入出力する専用のプロセッサを用いて処理するようにす
るが、ビデオとオーディオの処理をデコード部で交互に
しなければならないことは変わらず、高い精度を要求さ
れるオーディオ処理と高速性を要求されるビデオ処理と
を両立させるために高性能なハードウェアを要求するこ
ととなる。オーディオ処理だけを独立させた場合には、
オーディオの入出力レートは十分に低いため、入出力部
とデコード処理部を分けたことによる効果はほとんどな
い。さらに、デコード処理部と入出力部とを分けたこと
により、必要なメモリ量は増大するため、それによるチ
ップ面積の増加という問題もある。
入出力する専用のプロセッサを用いて処理するようにす
るが、ビデオとオーディオの処理をデコード部で交互に
しなければならないことは変わらず、高い精度を要求さ
れるオーディオ処理と高速性を要求されるビデオ処理と
を両立させるために高性能なハードウェアを要求するこ
ととなる。オーディオ処理だけを独立させた場合には、
オーディオの入出力レートは十分に低いため、入出力部
とデコード処理部を分けたことによる効果はほとんどな
い。さらに、デコード処理部と入出力部とを分けたこと
により、必要なメモリ量は増大するため、それによるチ
ップ面積の増加という問題もある。
【0020】メモリ量を削減するため、局所的に配置さ
れたメモリの代わりに外部に接続されたメモリを一次記
憶媒体に用い、キャッシュメモリによってメモリアクセ
ススピードを改善する方法が考えられるが、キャッシュ
メモリがミスヒットした場合には、外部メモリを参照し
なけれぱならい。外部メモリは、元々内部のメモリより
もアクセススピードが遅い上、例えばビデオ処理などと
共有されるためにキャッシュがミスヒットした時には大
きな遅延が発生する。これは、リアルタイム処理を行わ
なければならないオーディオ処理のようなアプリケーシ
ョンでは致命的になる。
れたメモリの代わりに外部に接続されたメモリを一次記
憶媒体に用い、キャッシュメモリによってメモリアクセ
ススピードを改善する方法が考えられるが、キャッシュ
メモリがミスヒットした場合には、外部メモリを参照し
なけれぱならい。外部メモリは、元々内部のメモリより
もアクセススピードが遅い上、例えばビデオ処理などと
共有されるためにキャッシュがミスヒットした時には大
きな遅延が発生する。これは、リアルタイム処理を行わ
なければならないオーディオ処理のようなアプリケーシ
ョンでは致命的になる。
【0021】本発明は、上記の点に鑑みてなされたもの
であり、オーディオ処理が固定的な順を追って処理がな
されることに着目し、それを利用することで、プロセッ
サなどのランダムゲートのみならず、内蔵するメモリの
容量まで考慮し、両者の合計のハードウェア量を小さく
した上で、効率的にオーディオ処理等のデータ処理を実
現するアーキテクチャとするデータ処理装置を提供する
ことを目的とする。
であり、オーディオ処理が固定的な順を追って処理がな
されることに着目し、それを利用することで、プロセッ
サなどのランダムゲートのみならず、内蔵するメモリの
容量まで考慮し、両者の合計のハードウェア量を小さく
した上で、効率的にオーディオ処理等のデータ処理を実
現するアーキテクチャとするデータ処理装置を提供する
ことを目的とする。
【0022】
【課題を解決するための手段】本発明は、上述の目的を
達成するために、本発明は次のように構成する。
達成するために、本発明は次のように構成する。
【0023】[1]第1には、与えられるデータに対し
て、複数種の処理を順序を追って実施する処理装置にお
いて、前記各処理を、処理単位でモジュール化してなる
プログラムモジュールを保持する外部記憶手段と、必要
最小限の容量の内部メモリと、前記処理のうちのいずれ
かの処理の実施中に、次の処理用のモジュールおよび処
理対象のデータを前記外部記憶手段より読み込み、前記
内部メモリに保持させる制御手段と、前記内部メモリの
保持内容に従った処理を実施する処理手段とを具備する
ことを特徴とする。
て、複数種の処理を順序を追って実施する処理装置にお
いて、前記各処理を、処理単位でモジュール化してなる
プログラムモジュールを保持する外部記憶手段と、必要
最小限の容量の内部メモリと、前記処理のうちのいずれ
かの処理の実施中に、次の処理用のモジュールおよび処
理対象のデータを前記外部記憶手段より読み込み、前記
内部メモリに保持させる制御手段と、前記内部メモリの
保持内容に従った処理を実施する処理手段とを具備する
ことを特徴とする。
【0024】このような構成の本発明装置は、与えられ
るデータに対して、複数種の処理を順序を追って実施す
るが、各処理は予め各処理単位でプログラムモジュール
化した形態を採用している。そして、内部メモリにこの
処理単位分のプログラムモジュールを保持させ、処理手
段にはこの内部メモリの内容対応に処理を実施していく
が、前記制御手段は前記処理手段が処理実施中に次の処
理用のモジュールおよび処理対象のデータを読み込み、
前記内部メモリに保持させる。
るデータに対して、複数種の処理を順序を追って実施す
るが、各処理は予め各処理単位でプログラムモジュール
化した形態を採用している。そして、内部メモリにこの
処理単位分のプログラムモジュールを保持させ、処理手
段にはこの内部メモリの内容対応に処理を実施していく
が、前記制御手段は前記処理手段が処理実施中に次の処
理用のモジュールおよび処理対象のデータを読み込み、
前記内部メモリに保持させる。
【0025】従って、すなわち、さしあたって現在処理
しようとする必要分だけの必要情報を内部メモリに取り
込み、処理を実施させることで、内部メモリは最小限の
容量にとどめることができるようになり、メモリ資源の
節約を図ることが出来るようにすると共に、現在の処理
の実施中に次の先取りをしておくことで、読み込みの遅
れによる処理の遅延を防止することができる。
しようとする必要分だけの必要情報を内部メモリに取り
込み、処理を実施させることで、内部メモリは最小限の
容量にとどめることができるようになり、メモリ資源の
節約を図ることが出来るようにすると共に、現在の処理
の実施中に次の先取りをしておくことで、読み込みの遅
れによる処理の遅延を防止することができる。
【0026】[2]また第2には、本発明は、符号化ま
たは復号化のためのデータ処理を行うプロセッサと、符
号化または復号化を行うプログラム・入出力データ・ワ
ークデータ・テーブルデータ等を保持する外部メモリ
と、プロセッサに命令を供給するための小容量のインス
トラクションメモリと、前記インストラクションメモリ
及びデータメモリと前記外部メモリ間のデータ転送をプ
ロセッサの動作と平行して行うDMAコントローラと、
を備えたことを特徴とする。
たは復号化のためのデータ処理を行うプロセッサと、符
号化または復号化を行うプログラム・入出力データ・ワ
ークデータ・テーブルデータ等を保持する外部メモリ
と、プロセッサに命令を供給するための小容量のインス
トラクションメモリと、前記インストラクションメモリ
及びデータメモリと前記外部メモリ間のデータ転送をプ
ロセッサの動作と平行して行うDMAコントローラと、
を備えたことを特徴とする。
【0027】本発明によれば、オーディオ処理を実行す
る上でプロセッサが必要とするデータおよび命令群を、
DMAコントローラを介して前もって小容量のインスト
ラクションメモリおよびデータメモリに読み出してお
き、また、所定の処理が終了したデータは、DMAコン
トローラを介して外部メモリに書き戻す処理を行うこと
により、オーディオ処理に必要となるメモリの容量を削
減することができる。プロセッサは、該インストラクシ
ョンメモリまたは該データメモリのアクセスが該DMA
コントローラと干渉しない限り、演算処理を続行できる
ため、メモリ削減による処理能力の低下はDMAコント
ローラによるメモリ転送量未満に抑えることができる。
さらに、プロセッサは安価な汎用プロセッサを使用した
としても、それに乗算−累積加算器(MAC)程度のご
く簡単な演算器を付加することでオーディオ処理に十分
な処理能力を確保することができる。
る上でプロセッサが必要とするデータおよび命令群を、
DMAコントローラを介して前もって小容量のインスト
ラクションメモリおよびデータメモリに読み出してお
き、また、所定の処理が終了したデータは、DMAコン
トローラを介して外部メモリに書き戻す処理を行うこと
により、オーディオ処理に必要となるメモリの容量を削
減することができる。プロセッサは、該インストラクシ
ョンメモリまたは該データメモリのアクセスが該DMA
コントローラと干渉しない限り、演算処理を続行できる
ため、メモリ削減による処理能力の低下はDMAコント
ローラによるメモリ転送量未満に抑えることができる。
さらに、プロセッサは安価な汎用プロセッサを使用した
としても、それに乗算−累積加算器(MAC)程度のご
く簡単な演算器を付加することでオーディオ処理に十分
な処理能力を確保することができる。
【0028】
【発明の実施の形態】本発明は、1チップに収められ、
外部に存在するメモリをビデオ処理とオーディオ処理と
で共有するようにしたUMA方式に基づくビデオ・オー
ディオ処理装置において、基本概念としては、オーディ
オ処理プロセッサに小容量のローカルメモリ(データメ
モリ、インストラクションメモリ)を接続するように
し、このオーディオ処理プロセッサには次に行われる処
理を予測して、必要なデータ・プログラムを前もって外
部メモリからローカルメモリに転送するようにDMAコ
ントローラの制御をさせるようにし、逆にしばらく使用
しないと判断されるデータは、生成直後にローカルメモ
リから外部メモリに退避させるようにし、また、ローカ
ルメモリ中の不要となったデータやプログラムの格納領
域は解放するというものである。
外部に存在するメモリをビデオ処理とオーディオ処理と
で共有するようにしたUMA方式に基づくビデオ・オー
ディオ処理装置において、基本概念としては、オーディ
オ処理プロセッサに小容量のローカルメモリ(データメ
モリ、インストラクションメモリ)を接続するように
し、このオーディオ処理プロセッサには次に行われる処
理を予測して、必要なデータ・プログラムを前もって外
部メモリからローカルメモリに転送するようにDMAコ
ントローラの制御をさせるようにし、逆にしばらく使用
しないと判断されるデータは、生成直後にローカルメモ
リから外部メモリに退避させるようにし、また、ローカ
ルメモリ中の不要となったデータやプログラムの格納領
域は解放するというものである。
【0029】以下、本発明の実施例について図面を参照
して説明する。
して説明する。
【0030】図1は本発明の一実施の形態を示すブロッ
ク図である。図1において、1は外部メモリ、2はメモ
リコントローラ、3はバス、4はシステム処理部、5は
ビデオ処理部、6はオーディオ処理部である。このオー
ディオ処理部6は、汎用プロセッサ10、オーディオ処
理用プロセッサ11、ローカルバス12、インストラク
ションメモリ13、データメモリ14、DMAコントロ
ーラ(Direct MemoryAccess Controler)15、オーデ
ィオ入出力インタフェース16、小容量メモリ17を備
えて構成される。
ク図である。図1において、1は外部メモリ、2はメモ
リコントローラ、3はバス、4はシステム処理部、5は
ビデオ処理部、6はオーディオ処理部である。このオー
ディオ処理部6は、汎用プロセッサ10、オーディオ処
理用プロセッサ11、ローカルバス12、インストラク
ションメモリ13、データメモリ14、DMAコントロ
ーラ(Direct MemoryAccess Controler)15、オーデ
ィオ入出力インタフェース16、小容量メモリ17を備
えて構成される。
【0031】汎用プロセッサ10、DMAコントローラ
15、オーディオ入出力インタフェース16はローカル
バス12を介して接続され、また、システム処理部4、
ビデオ処理部5、オーディオ処理部6は、バス3を介し
て接続される。
15、オーディオ入出力インタフェース16はローカル
バス12を介して接続され、また、システム処理部4、
ビデオ処理部5、オーディオ処理部6は、バス3を介し
て接続される。
【0032】上述の外部メモリ1は、システム処理部4
やビデオ処理部5およびオーディオ処理部6が共用する
メモリであり、システム処理部4にて処理されて出力さ
れたビデオストリームやオーディオストリームなどのデ
ータの格納、さらには汎用プロセッサ10に実行させる
ための演算・処理などの命令(プログラム)や演算処理
に必要なデータ類などを保持に使用される。
やビデオ処理部5およびオーディオ処理部6が共用する
メモリであり、システム処理部4にて処理されて出力さ
れたビデオストリームやオーディオストリームなどのデ
ータの格納、さらには汎用プロセッサ10に実行させる
ための演算・処理などの命令(プログラム)や演算処理
に必要なデータ類などを保持に使用される。
【0033】メモリコントローラ2は、この外部メモリ
1のアクセスをコントロールするためのものである。
1のアクセスをコントロールするためのものである。
【0034】システム処理部4は、入力信号として入力
されたストリーム(例えば、MPEG−2のデータスト
リーム)をビデオストリームとオーディオストリームに
分離し、それぞれ外部メモリ1の異なる独立したメモリ
領域に書き込むように処理するものであり、ビデオ処理
部5は、外部メモリ1に書き込まれたビデオストリーム
を伸張処理し、所定のタイミングで外部へ出力するもの
である。
されたストリーム(例えば、MPEG−2のデータスト
リーム)をビデオストリームとオーディオストリームに
分離し、それぞれ外部メモリ1の異なる独立したメモリ
領域に書き込むように処理するものであり、ビデオ処理
部5は、外部メモリ1に書き込まれたビデオストリーム
を伸張処理し、所定のタイミングで外部へ出力するもの
である。
【0035】また、オーディオ処理部6は、外部メモリ
1に書き込まれたオーディオストリームを処理し、所定
のタイミングで外部へ出力するものである。
1に書き込まれたオーディオストリームを処理し、所定
のタイミングで外部へ出力するものである。
【0036】このオーディオ処理部6は、汎用プロセッ
サ10、オーディオ処理用プロセッサ11、ローカルバ
ス12、インストラクションメモリ13、データメモリ
14、DMAコントローラ15、オーディオ入出力イン
タフェース16、小容量メモリ17を備えて構成される
が、これらのうち、オーディオ処理用プロセッサ11
は、汎用プロセッサ10に対するコプロセッサであっ
て、当該汎用プロセッサ10を介して得られたオーディ
オデータを復元する処理をするものであり、国際標準の
圧縮符号化技術のひとつであるMPEG−2 AACビ
ットストリームのデコードの場合、その処理はビットス
トリームデータの解読処理、ノイズレスデコーディング
処理、逆量子化処理、スケールファクタ処理、TNS処
理(ノイズリダクション処理)、フィルタバンク処理
(オーディオ成分に対するフィルタリング処理)、ブロ
ックスイッチング処理を順に実施してオーディオデータ
を復元する。
サ10、オーディオ処理用プロセッサ11、ローカルバ
ス12、インストラクションメモリ13、データメモリ
14、DMAコントローラ15、オーディオ入出力イン
タフェース16、小容量メモリ17を備えて構成される
が、これらのうち、オーディオ処理用プロセッサ11
は、汎用プロセッサ10に対するコプロセッサであっ
て、当該汎用プロセッサ10を介して得られたオーディ
オデータを復元する処理をするものであり、国際標準の
圧縮符号化技術のひとつであるMPEG−2 AACビ
ットストリームのデコードの場合、その処理はビットス
トリームデータの解読処理、ノイズレスデコーディング
処理、逆量子化処理、スケールファクタ処理、TNS処
理(ノイズリダクション処理)、フィルタバンク処理
(オーディオ成分に対するフィルタリング処理)、ブロ
ックスイッチング処理を順に実施してオーディオデータ
を復元する。
【0037】また、インストラクションメモリ13は、
汎用プロセッサ10に対する命令コードを保持するため
のメモリであり、また、データメモリ14は、汎用プロ
セッサ10の処理対象となる各種のデータを保持するた
めのメモリである。
汎用プロセッサ10に対する命令コードを保持するため
のメモリであり、また、データメモリ14は、汎用プロ
セッサ10の処理対象となる各種のデータを保持するた
めのメモリである。
【0038】また、汎用プロセッサ10は、インストラ
クションメモリ13に保持されている命令コードに従っ
て処理を実行するものであって、ここでは、主としてオ
ーディオ処理用コプロセッサ11での処理に際して、必
要なデータ(オーディオストリーム)の取り込みやバッ
ファリング、そして、各種テーブルやフィルタバンク係
数等、オーディオデータ復元処理におけるその処理の進
行段階対応に、必要とするデータをデータメモリ14に
取り込んでオーディオ処理用コプロセッサ11に渡した
り、オーディオ処理用コプロセッサ11が得たデータを
データメモリ14に格納させたり、DMAコントローラ
15を制御したりするといったことを行うものである。
クションメモリ13に保持されている命令コードに従っ
て処理を実行するものであって、ここでは、主としてオ
ーディオ処理用コプロセッサ11での処理に際して、必
要なデータ(オーディオストリーム)の取り込みやバッ
ファリング、そして、各種テーブルやフィルタバンク係
数等、オーディオデータ復元処理におけるその処理の進
行段階対応に、必要とするデータをデータメモリ14に
取り込んでオーディオ処理用コプロセッサ11に渡した
り、オーディオ処理用コプロセッサ11が得たデータを
データメモリ14に格納させたり、DMAコントローラ
15を制御したりするといったことを行うものである。
【0039】また、DMAコントローラ15は、汎用プ
ロセッサ10による指示に基づき、外部メモリ1やイン
ストラクションメモリ13およびデータメモリ14に対
して指定のメモリアドレス領域をCPUを介することなく
直接、アクセスしてデータの書き込みあるいは読み出し
を制御する(DMA(Direct Memory Access)転送を制御
する)ためのコントローラである。
ロセッサ10による指示に基づき、外部メモリ1やイン
ストラクションメモリ13およびデータメモリ14に対
して指定のメモリアドレス領域をCPUを介することなく
直接、アクセスしてデータの書き込みあるいは読み出し
を制御する(DMA(Direct Memory Access)転送を制御
する)ためのコントローラである。
【0040】オーディオ入出力インタフェース16は、
オーディオ信号の入出力のためのインタフェースであ
り、小容量メモリ17はオーディオ入出力インタフェー
ス16によるオーディオ信号の入出力の際のバッファと
なるメモリである。
オーディオ信号の入出力のためのインタフェースであ
り、小容量メモリ17はオーディオ入出力インタフェー
ス16によるオーディオ信号の入出力の際のバッファと
なるメモリである。
【0041】本実施形態に示した装置は、DVD再生装
置(DVDは、Digital VersatileDiscまたはDigital V
ersatile Diskの略で、動画、音声、データなどをデジ
タル記録できる大容量光ディスク)などに備えられ、M
PEG−2システムストリームに基づく圧縮ビデオ・オ
ーディオストリームをデコードし、得られたビデオおよ
びオーディオ信号を外部へ出力するものである。また、
図中において、外部メモリ1以外は1つのLSIの中で
構成されることを想定している。
置(DVDは、Digital VersatileDiscまたはDigital V
ersatile Diskの略で、動画、音声、データなどをデジ
タル記録できる大容量光ディスク)などに備えられ、M
PEG−2システムストリームに基づく圧縮ビデオ・オ
ーディオストリームをデコードし、得られたビデオおよ
びオーディオ信号を外部へ出力するものである。また、
図中において、外部メモリ1以外は1つのLSIの中で
構成されることを想定している。
【0042】外部メモリ1はこのLSIの外に接続され
るので、LSIの内部に組み込まれている要素であるシ
ステム処理部4、ビデオ処理部5、オーディオ処理部6
は1つの外部メモリ1を共有するかたちになる。
るので、LSIの内部に組み込まれている要素であるシ
ステム処理部4、ビデオ処理部5、オーディオ処理部6
は1つの外部メモリ1を共有するかたちになる。
【0043】また、図には表されていないが、ビデオバ
ックエンド処理など、他の処理を行う部分も当該外部メ
モリ1を共有する構成である場合も考えられる。外部メ
モリ1は、例えば同期型ダイナミックメモリ(SDRA
M)などで構成され、比較的大きな容量を持つが、各部
(システム処理部4、ビデオ処理部5、オーディオ処理
部6など)が同じメモリを共有するために、各部がアク
セスを開始するためにメモリコントローラ2にリクエス
トを発行してから、実際にアクセスが行われるまでの間
に遅延が発生するという特徴を有している。
ックエンド処理など、他の処理を行う部分も当該外部メ
モリ1を共有する構成である場合も考えられる。外部メ
モリ1は、例えば同期型ダイナミックメモリ(SDRA
M)などで構成され、比較的大きな容量を持つが、各部
(システム処理部4、ビデオ処理部5、オーディオ処理
部6など)が同じメモリを共有するために、各部がアク
セスを開始するためにメモリコントローラ2にリクエス
トを発行してから、実際にアクセスが行われるまでの間
に遅延が発生するという特徴を有している。
【0044】この実施例においては、オーディオ処理部
6の特徴として、処理単位別プログラムモジュールを処
理の進行に合わせて取り込むようにすることで、当該オ
ーディオ処理部6での処理に必要な内部メモリのメモリ
資源を最小限にとどめるようにすると共に、プログラム
モジュールを処理に先駆けて先取りすることで上記遅延
を実質的に抑制するようにしている。
6の特徴として、処理単位別プログラムモジュールを処
理の進行に合わせて取り込むようにすることで、当該オ
ーディオ処理部6での処理に必要な内部メモリのメモリ
資源を最小限にとどめるようにすると共に、プログラム
モジュールを処理に先駆けて先取りすることで上記遅延
を実質的に抑制するようにしている。
【0045】例えば、MPEG-2 AACに基づいた
ビットストリームのデコード処理の場合、処理手順とし
ては、ビットストリームデータの解読処理、ノイズレス
デコーディング処理、逆量子化処理、スケールファクタ
処理、TNS処理、フィルタバンク処理、ブロックスイ
ッチング処理の順番を踏んでオーディオデータ復元する
ことから、現在行っている処理の後に何の処理を行うか
は予測可能である。従って、この事実を根拠に、本発明
システムにおいては、現在行っている処理を続けなが
ら、次の処理に必要なデータや命令群を、予め用意する
ようにDMAコントローラ15に要求すると云った形態
が実現できるような処理単位のプログラムモジュール
を、外部メモリ1に用意し、且つ、このプログラムモジ
ュールには、次の処理に用いるプログラムモジュールを
外部メモリ1から読み込むべく、その格納エリアを指定
してのDMA転送による読み込みを実施することのでき
るDMA転送命令を付加したかたちにしておくことで、
その処理の進行に伴って必要なプログラムモジュールを
先読みして取り込んでおき、このプログラムモジュール
を構成するプログラムの示す命令群を汎用プロセッサ1
0が実行することで、その時々の処理の進行に合わせ
て、次の処理に必要な処理単位分のプログラムモジュー
ルや必要データを読み込むべく、DMAコントローラ1
5に命令することができる仕組みを得ている。
ビットストリームのデコード処理の場合、処理手順とし
ては、ビットストリームデータの解読処理、ノイズレス
デコーディング処理、逆量子化処理、スケールファクタ
処理、TNS処理、フィルタバンク処理、ブロックスイ
ッチング処理の順番を踏んでオーディオデータ復元する
ことから、現在行っている処理の後に何の処理を行うか
は予測可能である。従って、この事実を根拠に、本発明
システムにおいては、現在行っている処理を続けなが
ら、次の処理に必要なデータや命令群を、予め用意する
ようにDMAコントローラ15に要求すると云った形態
が実現できるような処理単位のプログラムモジュール
を、外部メモリ1に用意し、且つ、このプログラムモジ
ュールには、次の処理に用いるプログラムモジュールを
外部メモリ1から読み込むべく、その格納エリアを指定
してのDMA転送による読み込みを実施することのでき
るDMA転送命令を付加したかたちにしておくことで、
その処理の進行に伴って必要なプログラムモジュールを
先読みして取り込んでおき、このプログラムモジュール
を構成するプログラムの示す命令群を汎用プロセッサ1
0が実行することで、その時々の処理の進行に合わせ
て、次の処理に必要な処理単位分のプログラムモジュー
ルや必要データを読み込むべく、DMAコントローラ1
5に命令することができる仕組みを得ている。
【0046】つまり、オンデマンド方式を採用するもの
であって、処理の進行状況に従って、次の処理に必要な
手当を、必要最小単位分づつ、細切れに先取りして準備
し、利用していくと云う細切れ先読み方式で処理を繋い
でいく形態であって、メモリ資源特にインストラクショ
ンメモリ13,データメモリ14の節約を図ると共に、
読み込みに必要な時間を節約する仕組みを具現化してい
る。インストラクションメモリ13,データメモリ14
を含め、汎用プロセッサ10とDMAコントローラ15
はそのために用意されたものである。
であって、処理の進行状況に従って、次の処理に必要な
手当を、必要最小単位分づつ、細切れに先取りして準備
し、利用していくと云う細切れ先読み方式で処理を繋い
でいく形態であって、メモリ資源特にインストラクショ
ンメモリ13,データメモリ14の節約を図ると共に、
読み込みに必要な時間を節約する仕組みを具現化してい
る。インストラクションメモリ13,データメモリ14
を含め、汎用プロセッサ10とDMAコントローラ15
はそのために用意されたものである。
【0047】次に、上記構成の本システムの作用を説明
する。
する。
【0048】入力信号であるMPEG−2システムスト
リームはシステム処理部4に入力される。システム処理
部4では、入力されたストリームをビデオストリームと
オーディオストリームに分離し、それぞれ外部メモリ1
の異なる独立したメモリ領域に書き込む。そして、外部
メモリ1に書き込まれたビデオストリームはビデオ処理
部5で伸張処理がなされ、所定のタイミングで外部へ出
力される。
リームはシステム処理部4に入力される。システム処理
部4では、入力されたストリームをビデオストリームと
オーディオストリームに分離し、それぞれ外部メモリ1
の異なる独立したメモリ領域に書き込む。そして、外部
メモリ1に書き込まれたビデオストリームはビデオ処理
部5で伸張処理がなされ、所定のタイミングで外部へ出
力される。
【0049】同様に、外部メモリ1に書き込まれたオー
ディオストリームは、オーディオ処理部6で伸張処理が
なされ、所定のタイミングで外部へ出力される。
ディオストリームは、オーディオ処理部6で伸張処理が
なされ、所定のタイミングで外部へ出力される。
【0050】上述したように、オーディオ処理部6に
は、汎用プロセッサ10が設けられているが、このオー
ディオ処理部6の汎用プロセッサ10は、一般に機器組
み込み用に使用されるCPUコアが使われる。汎用プロ
セッサ10が実行すべき命令群および処理の対象となる
データ群は外部メモリ1に格納され、汎用プロセッサ1
0は、当該外部メモリ1に格納された命令群およびデー
タ群を、適宜、DMAコントローラ15を制御すること
によって命令群はインストラクションメモリ13に、そ
して、データ群はデータメモリ14に転送する。
は、汎用プロセッサ10が設けられているが、このオー
ディオ処理部6の汎用プロセッサ10は、一般に機器組
み込み用に使用されるCPUコアが使われる。汎用プロ
セッサ10が実行すべき命令群および処理の対象となる
データ群は外部メモリ1に格納され、汎用プロセッサ1
0は、当該外部メモリ1に格納された命令群およびデー
タ群を、適宜、DMAコントローラ15を制御すること
によって命令群はインストラクションメモリ13に、そ
して、データ群はデータメモリ14に転送する。
【0051】次に、汎用プロセッサ10はインストラク
ションメモリ13に格納された命令群に基づきデータメ
モリ14に格納されたデータを利用して、オーディオ処
理を実行させるべく、オーディオ処理用コプロセッサ1
1に指示を与え、これにより、オーディオ処理用コプロ
セッサ11は指示された内容のオーディオ処理を実施す
る。処理された結果は、汎用プロセッサ10の制御のも
とに、一時的に外部メモリ1にバッファリングされた
後、オーディオ処理部6内の小容量メモリ17に順次書
き込まれ、オーディオ入出カインタフェース16を通し
て外部へ出力される。
ションメモリ13に格納された命令群に基づきデータメ
モリ14に格納されたデータを利用して、オーディオ処
理を実行させるべく、オーディオ処理用コプロセッサ1
1に指示を与え、これにより、オーディオ処理用コプロ
セッサ11は指示された内容のオーディオ処理を実施す
る。処理された結果は、汎用プロセッサ10の制御のも
とに、一時的に外部メモリ1にバッファリングされた
後、オーディオ処理部6内の小容量メモリ17に順次書
き込まれ、オーディオ入出カインタフェース16を通し
て外部へ出力される。
【0052】汎用プロセッサ10は、保存しておくべき
演算の途中結果については、適宜DMAコントローラ1
5を用いて外部メモリ1へ転送させ、保持させる。
演算の途中結果については、適宜DMAコントローラ1
5を用いて外部メモリ1へ転送させ、保持させる。
【0053】<音声データのデコード処理>ここで、オ
ーディオ処理部6によるオーディオストリームのデコー
ド処理について説明する。図1に示す構成の場合、この
オーディオストリームデコード処理はオーディオ処理用
コプロセッサ11が担うが、その処理内容は次の通りで
ある。
ーディオ処理部6によるオーディオストリームのデコー
ド処理について説明する。図1に示す構成の場合、この
オーディオストリームデコード処理はオーディオ処理用
コプロセッサ11が担うが、その処理内容は次の通りで
ある。
【0054】例えば、オーディオストリームのデコード
処理の例として、MPEG-2 AACに基づいたビッ
トストリームのデコード処理の流れを図2に示す。MP
EG−2 AACビットストリームのデコードの場合、
その処理は[1]ビットストリームデータの解読40、
[2]ノイズレスデコーディング41、[3]逆量子化
42、[4]スケールファクタ43、[5]TNS(ノ
イズリダクション処理)44、[6]フィルタバンク
(オーディオ成分に対するフィルタリング処理)45、
[6]ブロックスイッチング46の順で行われる。
処理の例として、MPEG-2 AACに基づいたビッ
トストリームのデコード処理の流れを図2に示す。MP
EG−2 AACビットストリームのデコードの場合、
その処理は[1]ビットストリームデータの解読40、
[2]ノイズレスデコーディング41、[3]逆量子化
42、[4]スケールファクタ43、[5]TNS(ノ
イズリダクション処理)44、[6]フィルタバンク
(オーディオ成分に対するフィルタリング処理)45、
[6]ブロックスイッチング46の順で行われる。
【0055】この処理順はほぼ固定的であるため、現在
行っている処理の後に何の処理を行うかを予測すること
は容易である。従って、現在行っている処理を続けなが
ら、次の処理に必要なデータや命令群を、予め用意する
ようにDMAコントローラ15に要求することができ
る。
行っている処理の後に何の処理を行うかを予測すること
は容易である。従って、現在行っている処理を続けなが
ら、次の処理に必要なデータや命令群を、予め用意する
ようにDMAコントローラ15に要求することができ
る。
【0056】従って、本発明システムにおいては、汎用
プロセッサ10は、このような予測を実施し、次の処理
に必要なデータや命令群を予め用意するためにDMAコ
ントローラ15に要求するといったことを、現在実行中
の処理の内容と進行状況を見計らった最適タイミングで
実施する機能を持たせておく。
プロセッサ10は、このような予測を実施し、次の処理
に必要なデータや命令群を予め用意するためにDMAコ
ントローラ15に要求するといったことを、現在実行中
の処理の内容と進行状況を見計らった最適タイミングで
実施する機能を持たせておく。
【0057】具体的には、例えば、次のような処理を実
施させる。
施させる。
【0058】いま、データメモリ14、インストラクシ
ョンメモリ13の容量をそれぞれD[バイト]およびI
[バイト]とし、現在、実行中の処理としてビットスト
リームデータの解読40を行っているとする。このため
に必要なデータは、VLC(Variab1e Length Coding=
可変長符号)テーブルおよびビットストリームデータで
あり、これらはデータメモリ14に格納されているもの
とする。
ョンメモリ13の容量をそれぞれD[バイト]およびI
[バイト]とし、現在、実行中の処理としてビットスト
リームデータの解読40を行っているとする。このため
に必要なデータは、VLC(Variab1e Length Coding=
可変長符号)テーブルおよびビットストリームデータで
あり、これらはデータメモリ14に格納されているもの
とする。
【0059】このときのデータメモリ14の占有量をD
i0[バイト]とする。また、同様にビットストリームデ
ータの解読に必要な命令群は予めインストラクションメ
モリ13に格納されているものとする。
i0[バイト]とする。また、同様にビットストリームデ
ータの解読に必要な命令群は予めインストラクションメ
モリ13に格納されているものとする。
【0060】このときのインストラクションメモリ13
の占有量をI0[バイト]とする。ビットストリームデ
ータの解読40の処理は、ビットストリームを読み出し
て所定の処理を行うことで、データメモリ14上のDw0
[バイト]のワークエリアを使用し、Do0[バイト]の
データを生成する。
の占有量をI0[バイト]とする。ビットストリームデ
ータの解読40の処理は、ビットストリームを読み出し
て所定の処理を行うことで、データメモリ14上のDw0
[バイト]のワークエリアを使用し、Do0[バイト]の
データを生成する。
【0061】従って、ビットストリームデータ解読40
の処理において使用するデータメモリ14の占有容量
は、Di0+Dw0+Do0[バイト]であり、インストラク
ションメモリ13での占有容量はIi0[バイト]であ
る。
の処理において使用するデータメモリ14の占有容量
は、Di0+Dw0+Do0[バイト]であり、インストラク
ションメモリ13での占有容量はIi0[バイト]であ
る。
【0062】このときのそれぞれのメモリ状態を図3に
示す。すなわち、インストラクションメモリ13上での
占有状況は図3(a)の如きであり、データメモリ14
上での占有状況は図3(b)の如きである。
示す。すなわち、インストラクションメモリ13上での
占有状況は図3(a)の如きであり、データメモリ14
上での占有状況は図3(b)の如きである。
【0063】この状態で、次の処理においては必要なメ
モリは次のように増える。すなわち、ビットストリーム
データ解読処理の次はノイズレスコーディング41の処
理であるが、当該ノイズレスコーディング処理に必要な
データは、ビットストリームの解読によって得られたD
o0[バイト]のデータと、ノイズレスデコーディングに
必要なDf1[バイト]のテーブルデータ(べき乗を計算
するためのテーブル)であり、さらにはこの処理でデー
タメモリ14上のDw1[バイト]分のワークエリアを使
用し、Do1=Do0[バイト]のデータを置き換える。ま
た、ノイズレスデコーディングの処理に必要な命令群の
サイズはI1[バイト]とする。
モリは次のように増える。すなわち、ビットストリーム
データ解読処理の次はノイズレスコーディング41の処
理であるが、当該ノイズレスコーディング処理に必要な
データは、ビットストリームの解読によって得られたD
o0[バイト]のデータと、ノイズレスデコーディングに
必要なDf1[バイト]のテーブルデータ(べき乗を計算
するためのテーブル)であり、さらにはこの処理でデー
タメモリ14上のDw1[バイト]分のワークエリアを使
用し、Do1=Do0[バイト]のデータを置き換える。ま
た、ノイズレスデコーディングの処理に必要な命令群の
サイズはI1[バイト]とする。
【0064】従って、この段階ではデータメモリ14で
は更にDi0[バイト]分のメモリ空間が必要となり、イ
ンストラクションメモリ13ではI0[バイト]分のメ
モリ空間が必要となるわけである。
は更にDi0[バイト]分のメモリ空間が必要となり、イ
ンストラクションメモリ13ではI0[バイト]分のメ
モリ空間が必要となるわけである。
【0065】すなわち、データメモリ14においてはメ
モリ容量Dが D>Di0+Dw0+Do0+Di1 を満たし、かつ 、インストラクションメモリ13にお
いてはメモリ容量Iが I>I0+I1 を満たしていれば、ノイズレスデコーディング処理に使
用する命令群およびデータ群は前段のビットストリーム
解読処理中に前もって転送しておくことが可能である。
モリ容量Dが D>Di0+Dw0+Do0+Di1 を満たし、かつ 、インストラクションメモリ13にお
いてはメモリ容量Iが I>I0+I1 を満たしていれば、ノイズレスデコーディング処理に使
用する命令群およびデータ群は前段のビットストリーム
解読処理中に前もって転送しておくことが可能である。
【0066】そこで、ビットストリーム解読処理を開始
するときに、汎用プロセッサ10にはDMAコントロー
ラ15に対してコマンドを送り、インストラクションメ
モリ13の空きエリアにノイズレスデコーディング処理
に必要なI1[バイト]の命令群を転送し、データメモ
リ14の空きエリアにノイズレスデコーディング処理に
必要なDi1[バイト]のデータを読み込ませるための予
約を行うように制御させるようにする。
するときに、汎用プロセッサ10にはDMAコントロー
ラ15に対してコマンドを送り、インストラクションメ
モリ13の空きエリアにノイズレスデコーディング処理
に必要なI1[バイト]の命令群を転送し、データメモ
リ14の空きエリアにノイズレスデコーディング処理に
必要なDi1[バイト]のデータを読み込ませるための予
約を行うように制御させるようにする。
【0067】ノイズレスデコーディング処理の段階では
なく、ビットストリーム解読処理を開始するときに、こ
のような制御を汎用プロセッサ10に実施させるという
点が重要なのである。
なく、ビットストリーム解読処理を開始するときに、こ
のような制御を汎用プロセッサ10に実施させるという
点が重要なのである。
【0068】一般に、外部メモリ1をビデオ処理部5、
システム処理部4などと共有するUMA構成の場合、外
部メモリ1へのアクセスにはある程度遅延が発生する。
システム処理部4などと共有するUMA構成の場合、外
部メモリ1へのアクセスにはある程度遅延が発生する。
【0069】このため、DMAコントローラ15へのコ
マンド送出後、実際にメモリ転送が開始されるまでに遅
延が発生する。仮に、ノイズレスデコーディング処理を
開始する直前に、DMAコントローラ15へ必要なメモ
リ転送を行うようにコマンドを送ったとすると、この遅
延の間、汎用プロセッサ10は処理を行えなくなる。こ
の遅延の時間分が無駄時間となるわけである。
マンド送出後、実際にメモリ転送が開始されるまでに遅
延が発生する。仮に、ノイズレスデコーディング処理を
開始する直前に、DMAコントローラ15へ必要なメモ
リ転送を行うようにコマンドを送ったとすると、この遅
延の間、汎用プロセッサ10は処理を行えなくなる。こ
の遅延の時間分が無駄時間となるわけである。
【0070】しかし、本発明のように、ノイズレスデコ
ーディング処理よりも1つ前の段階での処理であるビッ
トストリーム解読処理の時点で予めDMAコントローラ
15にコマンドを送出しておけば、この遅延を隠し、汎
用プロセッサ10は2つの処理の間、動作しつづけるこ
とができるようになり、無駄時間がなくなって、処理速
度が向上することになる。
ーディング処理よりも1つ前の段階での処理であるビッ
トストリーム解読処理の時点で予めDMAコントローラ
15にコマンドを送出しておけば、この遅延を隠し、汎
用プロセッサ10は2つの処理の間、動作しつづけるこ
とができるようになり、無駄時間がなくなって、処理速
度が向上することになる。
【0071】さらに、ビットストリーム解読処理で生成
したデータのうち、次段のノイズレスデコーディング処
理で使用せず、後段の処理で使用するために保存してお
くべきデータが存在する場合、それらはビットストリー
ム解読処理直後に、外部メモリ1へ退避するように汎用
プロセッサ10からDMAコントローラ15にコマンド
送出させるようにする。
したデータのうち、次段のノイズレスデコーディング処
理で使用せず、後段の処理で使用するために保存してお
くべきデータが存在する場合、それらはビットストリー
ム解読処理直後に、外部メモリ1へ退避するように汎用
プロセッサ10からDMAコントローラ15にコマンド
送出させるようにする。
【0072】こうすることで、ノイズレスデコーディン
グ処理以後に、退避された領域を新たなデータ領域とし
て使用することができる。
グ処理以後に、退避された領域を新たなデータ領域とし
て使用することができる。
【0073】以後、同様に、汎用プロセッサ10には、
k番目の処理を開始するときに、k−1番目の処理結果
のうち、k番目の処理に不必要なデータメモリ14内容
を外部メモリ1に退避し、k+1番目の処理のために必
要な命令群とデータを外部メモリ1からインストラクシ
ョンメモリ13およびデータメモリ14に転送するよう
に制御させる。
k番目の処理を開始するときに、k−1番目の処理結果
のうち、k番目の処理に不必要なデータメモリ14内容
を外部メモリ1に退避し、k+1番目の処理のために必
要な命令群とデータを外部メモリ1からインストラクシ
ョンメモリ13およびデータメモリ14に転送するよう
に制御させる。
【0074】これにより、オーディオ処理用コプロセッ
サ11がオーディオストリームに対してオーディオ処理
を実行する上で必要なメモリ量を削減することが可能と
なる。なお、kは任意の整数を示す。
サ11がオーディオストリームに対してオーディオ処理
を実行する上で必要なメモリ量を削減することが可能と
なる。なお、kは任意の整数を示す。
【0075】MPEG−2 AACデコード処理におけ
るデータメモリ14の時間遷移の例を図4に示す。図中
横軸はメモリアドレス、縦軸は時間をそれぞれ表し、ま
た、黒マル印で示される点はそれぞれの処理の開始時点
を、また、黒四角印はDMA転送の開始時点を示してい
る。そして、当該図4中のグラフはどの時点からどの時
点まではどの処理におけるデータ等がデータメモリ14
中のどのアドレス空間を占有し、…ということを示して
おり、従って、図4は処理の変遷に伴うデータメモリ1
4におけるメモリ空間の状態遷移を示した図でとなって
いる。
るデータメモリ14の時間遷移の例を図4に示す。図中
横軸はメモリアドレス、縦軸は時間をそれぞれ表し、ま
た、黒マル印で示される点はそれぞれの処理の開始時点
を、また、黒四角印はDMA転送の開始時点を示してい
る。そして、当該図4中のグラフはどの時点からどの時
点まではどの処理におけるデータ等がデータメモリ14
中のどのアドレス空間を占有し、…ということを示して
おり、従って、図4は処理の変遷に伴うデータメモリ1
4におけるメモリ空間の状態遷移を示した図でとなって
いる。
【0076】図4では、処理単位を〔段階1〕ビットス
トリーム解読処理、〔段階2〕ノイズレスデコーディン
グ・逆量子化・スケールファクタ処理、〔段階3〕TN
S処理、〔段階4〕フィルタバンク処理、〔段階5〕ブ
ロックスイッチング処理、の5段階に分割している。
トリーム解読処理、〔段階2〕ノイズレスデコーディン
グ・逆量子化・スケールファクタ処理、〔段階3〕TN
S処理、〔段階4〕フィルタバンク処理、〔段階5〕ブ
ロックスイッチング処理、の5段階に分割している。
【0077】例えば、t5の時点において、〔段階4〕
での処理であるフィルタバンクの処理が始まるが、当該
フィルタバンクの処理に必要なフィルタバンク係数は、
t3の時点で開始される〔段階2〕での処理であるノイ
ズレスデコーディング処理が開始されるときにDMAコ
ントローラ15が制御され(図中の黒マル印で示される
時点)、外部メモリ1から読み出しが開始される。外部
メモリ1から読み出されるフィルタバンク係数のデータ
メモリ14上の格納先は、アドレスK1からアドレスL
0までのメモリ空間である。
での処理であるフィルタバンクの処理が始まるが、当該
フィルタバンクの処理に必要なフィルタバンク係数は、
t3の時点で開始される〔段階2〕での処理であるノイ
ズレスデコーディング処理が開始されるときにDMAコ
ントローラ15が制御され(図中の黒マル印で示される
時点)、外部メモリ1から読み出しが開始される。外部
メモリ1から読み出されるフィルタバンク係数のデータ
メモリ14上の格納先は、アドレスK1からアドレスL
0までのメモリ空間である。
【0078】フィルタバンク処理が行われることによっ
て、生成されるデータはデータメモリ14上のアドレス
M1からM6のメモリ空間に格納される。そして、当該
フィルタバンク処理が行われた後、このアドレスM1か
らM6のメモリ空間に格納されている生成データは時点
t6から開始される次の〔段階5〕での処理であるブロ
ックスイッチング処理で使われると同時に、1ブロック
(1024サンプル)後の処理でも使用されるため、ブ
ロックスイッチング処理が開始される前にDMAコント
ローラ15を制御(図中の黒四角印)して外部メモリ1
に転送書き込みが開始される。従って、〔段階5〕での
処理であるブロックスイッチング処理が実行されるのと
平行して、外部メモリ1への転送が行われる。
て、生成されるデータはデータメモリ14上のアドレス
M1からM6のメモリ空間に格納される。そして、当該
フィルタバンク処理が行われた後、このアドレスM1か
らM6のメモリ空間に格納されている生成データは時点
t6から開始される次の〔段階5〕での処理であるブロ
ックスイッチング処理で使われると同時に、1ブロック
(1024サンプル)後の処理でも使用されるため、ブ
ロックスイッチング処理が開始される前にDMAコント
ローラ15を制御(図中の黒四角印)して外部メモリ1
に転送書き込みが開始される。従って、〔段階5〕での
処理であるブロックスイッチング処理が実行されるのと
平行して、外部メモリ1への転送が行われる。
【0079】なお、前記DMAコントローラ15によっ
て前記インストラクションメモリ13または前記データ
メモリ14がアクセスされるときは、前記汎用プロセッ
サ10による前記インストラクションメモリ13または
データメモリ14へのアクセスが競合する場合に、その
競合の間、プロセッサ動作を一時的に停止させるように
する。DMA転送の時間は短時間で済むので、オーディ
オ処理に及ぼす影響の度合いはプロセッサ10によるア
クセスを停止させる方が小さいからである。
て前記インストラクションメモリ13または前記データ
メモリ14がアクセスされるときは、前記汎用プロセッ
サ10による前記インストラクションメモリ13または
データメモリ14へのアクセスが競合する場合に、その
競合の間、プロセッサ動作を一時的に停止させるように
する。DMA転送の時間は短時間で済むので、オーディ
オ処理に及ぼす影響の度合いはプロセッサ10によるア
クセスを停止させる方が小さいからである。
【0080】ここで、本実施の形態におけるオーディオ
処理装置は、従来、広く用いられてきた信号処理プロセ
ッサ(DSP)に適用したものではなく、汎用のプロセ
ッサを使用した構成に適用している。その理由は、DS
Pでは、高い演算効率を実現するために、メモリ効率が
犠牲になるからである。
処理装置は、従来、広く用いられてきた信号処理プロセ
ッサ(DSP)に適用したものではなく、汎用のプロセ
ッサを使用した構成に適用している。その理由は、DS
Pでは、高い演算効率を実現するために、メモリ効率が
犠牲になるからである。
【0081】例えば、DSPでは、2要素の乗算を毎ク
ロック実行するために、最低でも2つのメモリロードユ
ニットを装備するのが一般的であり、従って、DSPで
十分な性能を実現するにはデータメモリが2個以上必要
になる。
ロック実行するために、最低でも2つのメモリロードユ
ニットを装備するのが一般的であり、従って、DSPで
十分な性能を実現するにはデータメモリが2個以上必要
になる。
【0082】これに対して、本実施の形態においてはオ
ーディオ処理に用いるプロセッサは、汎用プロセッサで
あるためにデータメモリ14は1個で良い。また、汎用
プロセッサはDSPに比べ、乗算・累積加算(MAC)
演算に対する処理性能が劣るが、この乗算・累積加算
(MAC)演算の高性能化を図るために、本実施の形態
では汎用プロセッサ10にその機能補助用としてのオー
ディオ処理用のコプロセッサを配する。
ーディオ処理に用いるプロセッサは、汎用プロセッサで
あるためにデータメモリ14は1個で良い。また、汎用
プロセッサはDSPに比べ、乗算・累積加算(MAC)
演算に対する処理性能が劣るが、この乗算・累積加算
(MAC)演算の高性能化を図るために、本実施の形態
では汎用プロセッサ10にその機能補助用としてのオー
ディオ処理用のコプロセッサを配する。
【0083】このコプロセッサは、例えばVLIW(Ve
ry Long Instruction Word;プログラムをコンパイルす
る際、あらかじめ同時に実行できる命令を並列に並べて
おく手法の1つ。)などの方法により駆動される。
ry Long Instruction Word;プログラムをコンパイルす
る際、あらかじめ同時に実行できる命令を並列に並べて
おく手法の1つ。)などの方法により駆動される。
【0084】汎用プロセッサ10のデータ供給能力は、
メモリロードユニットがDSPの半分であるから、コプ
ロセッサの能力も半分程度、すなわち、2クロックに1
回の演算ができる程度のスループットで良い。
メモリロードユニットがDSPの半分であるから、コプ
ロセッサの能力も半分程度、すなわち、2クロックに1
回の演算ができる程度のスループットで良い。
【0085】このような構成により、最もDSPが効率
的に動作する乗算・累積加算が連続した場合でもDSP
に比べ1/2程度の性能差とすることができる。しか
も、一般的なオーディオ処理ではすべてが乗算・累積加
算で占められることはなく、論理演算やアドレスの加算
・減算なども含まれるため、DSPと本実施の形態にお
けるオーディオ処理装置の性能差の開きは、より小さく
なる。例えば、MPEG−2 AACデコード処理の場
合、TNS、フィルタバンク、ブロックスイッチングで
は、処理の多くが乗算・累積加算で占められるため、性
能の差は大きいが、ビットストリーム解読40の処理、
ノイズレスデコーディング41の処理、逆量子化42の
処理、スケールファクタ43の処理での性能差は大きく
ない。
的に動作する乗算・累積加算が連続した場合でもDSP
に比べ1/2程度の性能差とすることができる。しか
も、一般的なオーディオ処理ではすべてが乗算・累積加
算で占められることはなく、論理演算やアドレスの加算
・減算なども含まれるため、DSPと本実施の形態にお
けるオーディオ処理装置の性能差の開きは、より小さく
なる。例えば、MPEG−2 AACデコード処理の場
合、TNS、フィルタバンク、ブロックスイッチングで
は、処理の多くが乗算・累積加算で占められるため、性
能の差は大きいが、ビットストリーム解読40の処理、
ノイズレスデコーディング41の処理、逆量子化42の
処理、スケールファクタ43の処理での性能差は大きく
ない。
【0086】従って、本発明の構成におけるDSPとの
実際の性能差は2/3程度となる。しかも、上述したメ
モリ転送方式により、本実施の形態におけるオーディオ
処理装置において必要となるインストラクションメモリ
13とデータメモリ14の必要量は、DSPに比べ大幅
に削減することができる上、本質的に汎用プロセッサ1
0を利用する本実施の形態の方式の方が、必要ハードウ
ェア量も小さく、高クロックでの動作も容易であるた
め、この程度の性能差は問題にならないと言える。
実際の性能差は2/3程度となる。しかも、上述したメ
モリ転送方式により、本実施の形態におけるオーディオ
処理装置において必要となるインストラクションメモリ
13とデータメモリ14の必要量は、DSPに比べ大幅
に削減することができる上、本質的に汎用プロセッサ1
0を利用する本実施の形態の方式の方が、必要ハードウ
ェア量も小さく、高クロックでの動作も容易であるた
め、この程度の性能差は問題にならないと言える。
【0087】なお、本実施例ではオーディオ符号化方式
としてMPEG−2 AACデコード処理を例に説明し
たが、他の符号化方式であるMPEG1オーディオやD
olby AC−3などのデコード処理やエンコード処
理についても同様な制御を行うことができる。
としてMPEG−2 AACデコード処理を例に説明し
たが、他の符号化方式であるMPEG1オーディオやD
olby AC−3などのデコード処理やエンコード処
理についても同様な制御を行うことができる。
【0088】また、上述の実施例では、オーディオ処理
部6はオーディオビットストリームのデコード処理しか
行わない例を示したが、プロセッサの処理許容量に余裕
がある場合には、図5に示すように、1つのプロセッサ
がオーディオ処理とビデオ処理を兼ねるような構成にす
ることもできる。すなわち、図5に示す構成において
は、外部メモリ51、メモリコントローラ52、バス5
3、システム処理部54、ビデオ・オーディオ処理部5
5から構成される。外部メモリ51、メモリコントロー
ラ52、バス53、システム処理部54、はそれぞれ図
1の外部メモリ1、メモリコントローラ5、バス3、シ
ステム処理部4に該当する。
部6はオーディオビットストリームのデコード処理しか
行わない例を示したが、プロセッサの処理許容量に余裕
がある場合には、図5に示すように、1つのプロセッサ
がオーディオ処理とビデオ処理を兼ねるような構成にす
ることもできる。すなわち、図5に示す構成において
は、外部メモリ51、メモリコントローラ52、バス5
3、システム処理部54、ビデオ・オーディオ処理部5
5から構成される。外部メモリ51、メモリコントロー
ラ52、バス53、システム処理部54、はそれぞれ図
1の外部メモリ1、メモリコントローラ5、バス3、シ
ステム処理部4に該当する。
【0089】ビデオ・オーディオ処理部55は、ビデオ
処理機能とオーディオ処理機能を併せ持つものであっ
て、図1におけるビデオ処理部5とオーディオ処理部6
を合体させたものである。
処理機能とオーディオ処理機能を併せ持つものであっ
て、図1におけるビデオ処理部5とオーディオ処理部6
を合体させたものである。
【0090】ビデオ・オーディオ処理部55は、汎用プ
ロセッサ60、オーディオ処理用コプロセッサ61、ロ
ーカルバス62、インストラクションメモリ63、デー
タメモリ64、DMAコントローラ65、小容量メモリ
66〜70、オーディオ入出力インタフェース71、そ
して、ビットストリームの解読処理を行うVLD処理部
72、逆量子化処理を行うIQ(逆量子化部)73、逆
離散コサイン変換処理をするIDCT(逆離散コサイン
変換部)74、動き補償処理をする動き補償部75等か
ら構成される。
ロセッサ60、オーディオ処理用コプロセッサ61、ロ
ーカルバス62、インストラクションメモリ63、デー
タメモリ64、DMAコントローラ65、小容量メモリ
66〜70、オーディオ入出力インタフェース71、そ
して、ビットストリームの解読処理を行うVLD処理部
72、逆量子化処理を行うIQ(逆量子化部)73、逆
離散コサイン変換処理をするIDCT(逆離散コサイン
変換部)74、動き補償処理をする動き補償部75等か
ら構成される。
【0091】すなわち、図5に示すビデオ・オーディオ
処理部55は、オーディオビットストリームのデコード
と共にMPEG−2ビットストリームのデコードを行う
場合の構成を示している。
処理部55は、オーディオビットストリームのデコード
と共にMPEG−2ビットストリームのデコードを行う
場合の構成を示している。
【0092】MPEG−2ビデオビットストリームの場
合にも、その処理順は固定的であるため、前述したデー
タやテーブルなどの格納に用いるデータメモリ64、命
令を格納するインストラクションメモリ63へ、外部メ
モリ51から前もって読み込む処理が適用できる。
合にも、その処理順は固定的であるため、前述したデー
タやテーブルなどの格納に用いるデータメモリ64、命
令を格納するインストラクションメモリ63へ、外部メ
モリ51から前もって読み込む処理が適用できる。
【0093】ビデオ処理の場合には、その演算量が大き
いため、多数の小容量メモリ67〜70を用意し、ま
た、これら小容量メモリ67〜70を介してMPEG−
2ビデオビットストリームデコードに必要な演算を行う
演算器(VLD処理部72、IQ(逆量子化部)73、
IDCT(逆離散コサイン変換部)74、動き補償部7
5)を用意し、汎用プロセッサ60はDMAコントロー
ラ65を制御して、外部メモリ51と小容量メモリ67
〜70の間、および小容量メモリ67〜70間のデータ
転送を行わせる。
いため、多数の小容量メモリ67〜70を用意し、ま
た、これら小容量メモリ67〜70を介してMPEG−
2ビデオビットストリームデコードに必要な演算を行う
演算器(VLD処理部72、IQ(逆量子化部)73、
IDCT(逆離散コサイン変換部)74、動き補償部7
5)を用意し、汎用プロセッサ60はDMAコントロー
ラ65を制御して、外部メモリ51と小容量メモリ67
〜70の間、および小容量メモリ67〜70間のデータ
転送を行わせる。
【0094】これにより、汎用プロセッサ60の演算量
の極端な増加を抑えてビデオおよびオーディオのデコー
ドが実現される。
の極端な増加を抑えてビデオおよびオーディオのデコー
ドが実現される。
【0095】なお、実施形態に示した例は、本発明装置
をDVD再生装置に適用した場合を説明したが、受信装
置に適用したり、送信装置や符号化装置に適用すること
もできる。要は、外部から提供される符号化されたビッ
トストリームをデコード(復号化)し、デコード結果を
外部に一定間隔で出力する復号化装置、または外部から
提供されるディジタルデータをエンコード(符号化処
理)し、エンコード結果を外部に出力する符号化装置に
適用できる。
をDVD再生装置に適用した場合を説明したが、受信装
置に適用したり、送信装置や符号化装置に適用すること
もできる。要は、外部から提供される符号化されたビッ
トストリームをデコード(復号化)し、デコード結果を
外部に一定間隔で出力する復号化装置、または外部から
提供されるディジタルデータをエンコード(符号化処
理)し、エンコード結果を外部に出力する符号化装置に
適用できる。
【0096】また、本願発明は、上記各実施形態に示さ
れる例に限定されるものではなく、実施段階ではその要
旨を逸脱しない範囲で種々に変形することが可能であ
る。更に、上記実施形態には種々の段階の発明が含まれ
ており、開示される複数の構成要件における適宜な組み
合わせにより種々の発明が抽出され得る。例えば、実施
形態に示される全構成要件から幾つかの構成要件が削除
されても、発明が解決しようとする課題の欄で述べた課
題の少なくとも1つが解決でき、発明の効果の欄で述べ
られている効果の少なくとも1つが得られる場合には、
この構成要件が削除された構成が発明として抽出され得
る。
れる例に限定されるものではなく、実施段階ではその要
旨を逸脱しない範囲で種々に変形することが可能であ
る。更に、上記実施形態には種々の段階の発明が含まれ
ており、開示される複数の構成要件における適宜な組み
合わせにより種々の発明が抽出され得る。例えば、実施
形態に示される全構成要件から幾つかの構成要件が削除
されても、発明が解決しようとする課題の欄で述べた課
題の少なくとも1つが解決でき、発明の効果の欄で述べ
られている効果の少なくとも1つが得られる場合には、
この構成要件が削除された構成が発明として抽出され得
る。
【0097】以上、本発明は、与えられるデータに対し
て、複数種の処理を順序を追って実施する例えば、符号
化されたオーディオストリームデータの復号化、あるい
はオーディオストリームデータの符号化などの処理をす
るデータ処理装置において、前記各処理を、処理単位で
モジュール化してなるプログラムモジュールを保持する
外部記憶手段(外部メモリ)と、必要最小分の容量の内
部メモリ(インストラクションメモリ、データメモリ)
と、前記処理のうちのいずれかの処理の実施中に、次の
処理用のモジュールおよび処理対象のデータを前記外部
記憶手段より読み込み、前記内部メモリに保持させる制
御手段(DMAコントローラ、汎用プロセッサ)と、前
記内部メモリの保持内容に従った処理を実施する処理手
段(オーディオ処理用コプロセッサ)とを具備して構成
したものである。内部メモリ中における処理の用済みと
なった格納領域はメモリを解放する。
て、複数種の処理を順序を追って実施する例えば、符号
化されたオーディオストリームデータの復号化、あるい
はオーディオストリームデータの符号化などの処理をす
るデータ処理装置において、前記各処理を、処理単位で
モジュール化してなるプログラムモジュールを保持する
外部記憶手段(外部メモリ)と、必要最小分の容量の内
部メモリ(インストラクションメモリ、データメモリ)
と、前記処理のうちのいずれかの処理の実施中に、次の
処理用のモジュールおよび処理対象のデータを前記外部
記憶手段より読み込み、前記内部メモリに保持させる制
御手段(DMAコントローラ、汎用プロセッサ)と、前
記内部メモリの保持内容に従った処理を実施する処理手
段(オーディオ処理用コプロセッサ)とを具備して構成
したものである。内部メモリ中における処理の用済みと
なった格納領域はメモリを解放する。
【0098】そして、このような構成において、与えら
れるデータに対して、複数種の処理を順序を追って実施
するが、本発明では各処理は予め各処理単位でプログラ
ムモジュール化した形態を採用しており、そして、内部
メモリにこの処理単位分のプログラムモジュールを保持
させ、処理手段にはこの内部メモリの内容対応に処理を
実施していくが、前記制御手段は前記処理手段が処理実
施中に次の処理用のモジュールおよび処理対象のデータ
を読み込み、前記内部メモリに保持させるようにした。
すなわち、本発明は、さしあたって現在処理しようとす
る必要分だけの必要情報を内部メモリに取り込み、処理
を実施させることで、内部メモリは最小限の容量にとど
めることができるようになって、メモリ資源の節約を図
ることが出来るようになり、また、現在の処理の実施中
に次の先取りをしておくことで、読み込みの遅れによる
処理の遅延を防止することができるようになる。
れるデータに対して、複数種の処理を順序を追って実施
するが、本発明では各処理は予め各処理単位でプログラ
ムモジュール化した形態を採用しており、そして、内部
メモリにこの処理単位分のプログラムモジュールを保持
させ、処理手段にはこの内部メモリの内容対応に処理を
実施していくが、前記制御手段は前記処理手段が処理実
施中に次の処理用のモジュールおよび処理対象のデータ
を読み込み、前記内部メモリに保持させるようにした。
すなわち、本発明は、さしあたって現在処理しようとす
る必要分だけの必要情報を内部メモリに取り込み、処理
を実施させることで、内部メモリは最小限の容量にとど
めることができるようになって、メモリ資源の節約を図
ることが出来るようになり、また、現在の処理の実施中
に次の先取りをしておくことで、読み込みの遅れによる
処理の遅延を防止することができるようになる。
【0099】
【発明の効果】以上説明したように、本発明によれば、
例えば、オーディオ処理のアルゴリズムのように、処理
順序がほぼ一定であるアルゴリズムを用いるデータ処理
の場合に、この処理順序が定まっていることに着目し、
汎用プロセッサに回路量を必要としないコプロセッサを
付加した演算装置と、内部ローカルメモリと外部メモリ
とのメモリ転送を行うDMAコントローラを配置し、次
の処理に必要なデータや命令群をあらかじめ前の処理の
間に転送するようにDMAコントローラを制御すること
により、従来よりも低コストなオーディオ処理装置など
のデータ処理装置を実現することが可能となる。
例えば、オーディオ処理のアルゴリズムのように、処理
順序がほぼ一定であるアルゴリズムを用いるデータ処理
の場合に、この処理順序が定まっていることに着目し、
汎用プロセッサに回路量を必要としないコプロセッサを
付加した演算装置と、内部ローカルメモリと外部メモリ
とのメモリ転送を行うDMAコントローラを配置し、次
の処理に必要なデータや命令群をあらかじめ前の処理の
間に転送するようにDMAコントローラを制御すること
により、従来よりも低コストなオーディオ処理装置など
のデータ処理装置を実現することが可能となる。
【図1】本発明を説明するための図であって、本発明の
第一の実施の形態の構成を示すブロック図である。
第一の実施の形態の構成を示すブロック図である。
【図2】本発明システムで用いるオーディオストリーム
のデコード処理の例として、MPEG-2 AACに基
づいたビットストリームのデコード処理の流れを説明す
るための図である。
のデコード処理の例として、MPEG-2 AACに基
づいたビットストリームのデコード処理の流れを説明す
るための図である。
【図3】本発明を説明するための図であって、本発明の
システムにおけるビットストリーム解読開始時のローカ
ルメモリの状態を示す図である。
システムにおけるビットストリーム解読開始時のローカ
ルメモリの状態を示す図である。
【図4】本発明を説明するための図であって、本発明の
ビットストリームデコード処理におけるデータメモリの
変化を示す図である。
ビットストリームデコード処理におけるデータメモリの
変化を示す図である。
【図5】本発明の別の実施形態を説明するための図であ
って、オーディオ処理部がビデオデコードも兼ねる場合
の構成例を示したブロック図である。
って、オーディオ処理部がビデオデコードも兼ねる場合
の構成例を示したブロック図である。
【図6】従来のビデオ・オーディオデコーダーの構成を
示す図である。
示す図である。
1,20,51…外部メモリ 2,22,52…メモリコントローラ 3,53…バス 4,54…システム処理部 5…ビデオ処理部 6…オーディオ処理部 10,21,60…汎用プロセッサー1 11,61…オーディオ処理用コプロセッサ 12,62…ローカルバス 13,14,17,25,27,32,33,63,6
4,66,67,68, 69,70…ローカルメモリ 15,65…DMAコントローラ 16,71…オーディオ入出カインタフェース 23…FIFOメモリ 24,72…VLD処理部 26…乗算・累積加算(MAC)ユニット 28…レジスタファイル 29…信号処理ユニット 30…バタフライユニット 31…命令メモリ 40…ビットストリーム解読処理 41…ノイズレスデコーディング処理 42…逆量子化処理 43…スケールファクタ処理 44…TNS処理 45…フィルタバンク処理 46…ブロックスイッチング処理 56…ビデオ・オーディオ処理部 73…逆量子化部 74…IDCT処理部 75…動き補償部
4,66,67,68, 69,70…ローカルメモリ 15,65…DMAコントローラ 16,71…オーディオ入出カインタフェース 23…FIFOメモリ 24,72…VLD処理部 26…乗算・累積加算(MAC)ユニット 28…レジスタファイル 29…信号処理ユニット 30…バタフライユニット 31…命令メモリ 40…ビットストリーム解読処理 41…ノイズレスデコーディング処理 42…逆量子化処理 43…スケールファクタ処理 44…TNS処理 45…フィルタバンク処理 46…ブロックスイッチング処理 56…ビデオ・オーディオ処理部 73…逆量子化部 74…IDCT処理部 75…動き補償部
───────────────────────────────────────────────────── フロントページの続き (51)Int.Cl.7 識別記号 FI テーマコート゛(参考) G10L 19/00 G10L 9/18 M
Claims (5)
- 【請求項1】与えられるデータに対して、複数種の処理
を順序を追って実施する処理装置において、 前記各処理を、処理単位でモジュール化してなるプログ
ラムモジュールを保持する外部記憶手段と、 内部メモリと、 前記処理のうちのいずれかの処理の実施中に、次の処理
用のモジュールおよび処理対象のデータを前記外部記憶
手段より読み込み、前記内部メモリに保持させる制御手
段と、 前記内部メモリの保持内容対応の処理を実施する処理手
段と、を具備することを特徴とするデータ処理装置。 - 【請求項2】外部から提供される符号化されたビットス
トリームをデコードし、デコード結果を外部に一定間隔
で出力する復号化装置、または外部から提供されるデー
タをエンコードし、エンコード結果を外部に出力する符
号化装置に用いられるデータ処理装置であって、 符号化または復号化のためのデータ処理を行うプロセッ
サと、 符号化または復号化を行うプログラム,入出力データ,
ワークデータ,テーブルデータ等を保持する外部メモリ
と、 前記プロセッサに命令を供給するためのインストラクシ
ョンメモリと、 前記プロセッサにデータを供給するためのデータメモリ
と、 前記インストラクションメモリ及びデータメモリと前記
外部メモリ間のデータ転送を行うDMAコントローラ
と、を備え、 前記プロセッサは、データの符号化処理及び復号化処理
を行うと共に、次に行う処理に応じて前もって必要なプ
ログラム及びデータを前記外部メモリから読み出すよう
に、また、処理が終了したデータを前記外部メモリに書
き戻すように前記DMAコントローラを制御することを
特徴とするデータ処理装置。 - 【請求項3】前記プロセッサは、汎用のプロセッサに少
なくとも乗算・加算処理を高速化する演算装置を付加し
た構成とすることを特徴とする請求項2記載のデータ処
理装置。 - 【請求項4】前記DMAコントローラによって前記イン
ストラクションメモリまたは前記データメモリがアクセ
スされるとき、前記プロセッサによる前記インストラク
ションメモリまたはデータメモリへのアクセスが競合す
る間、前記プロセッサ動作を一時的に停止させるように
することを特徴とする請求項2記載のデータ処理装置。 - 【請求項5】与えられるデータに対して、複数種の処理
を順序を追って実施する処理装置に適用する処理方法で
あって、 前記各処理を、処理単位でモジュール化してなるプログ
ラムモジュールを用意し、 前記処理のうちのいずれかの処理の実施中に、次の処理
用のモジュールおよび処理対象のデータを先行して読み
込み、 前記プログラムモジュール対応の処理を実施することを
特徴とするデータ処理方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000229153A JP2002041285A (ja) | 2000-07-28 | 2000-07-28 | データ処理装置およびデータ処理方法 |
US09/915,348 US20020013633A1 (en) | 2000-07-28 | 2001-07-27 | Audio processor and audio data processing method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000229153A JP2002041285A (ja) | 2000-07-28 | 2000-07-28 | データ処理装置およびデータ処理方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2002041285A true JP2002041285A (ja) | 2002-02-08 |
Family
ID=18722322
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000229153A Pending JP2002041285A (ja) | 2000-07-28 | 2000-07-28 | データ処理装置およびデータ処理方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US20020013633A1 (ja) |
JP (1) | JP2002041285A (ja) |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7043717B2 (en) | 2002-05-27 | 2006-05-09 | Kabushiki Kaisha Toshiba | Debugging apparatus and method |
US7139849B2 (en) | 2002-08-07 | 2006-11-21 | Matsushita Electric Industrial Co., Ltd. | Semiconductor integrated circuit device |
KR100715735B1 (ko) * | 2003-03-13 | 2007-05-09 | 소니 픽쳐스 엔터테인먼트, 인크. | 디지털 안면 모델을 애니메이팅하기 위한 시스템 및 방법 |
CN1321386C (zh) * | 2003-02-20 | 2007-06-13 | 松下电器产业株式会社 | 集成电路和使用它的电子设备 |
JP2008117230A (ja) * | 2006-11-06 | 2008-05-22 | Sanyo Electric Co Ltd | プログラム処理装置及びプログラム処理方法 |
JP2008225669A (ja) * | 2007-03-09 | 2008-09-25 | Nec Corp | メモリ管理装置、メモリ管理方法およびプログラム |
JP2009211540A (ja) * | 2008-03-05 | 2009-09-17 | Internatl Business Mach Corp <Ibm> | コンピュータ使用可能コードを実行する装置及び方法 |
JP2010055629A (ja) * | 2009-11-30 | 2010-03-11 | Panasonic Corp | 画像音声信号処理装置及びそれを用いた電子機器 |
JP2016212680A (ja) * | 2015-05-11 | 2016-12-15 | 富士通株式会社 | 情報処理装置、コード実行方法及びプログラム |
JP2018518760A (ja) * | 2015-09-09 | 2018-07-12 | ▲騰▼▲訊▼科技(深▲セン▼)有限公司 | アプリケーション加速方法およびデバイス |
US10230991B2 (en) | 2003-08-21 | 2019-03-12 | Socionext Inc. | Signal-processing apparatus including a second processor that, after receiving an instruction from a first processor, independantly controls a second data processing unit without further instrcuction from the first processor |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040161039A1 (en) * | 2003-02-14 | 2004-08-19 | Patrik Grundstrom | Methods, systems and computer program products for encoding video data including conversion from a first to a second format |
US20050096918A1 (en) * | 2003-10-31 | 2005-05-05 | Arun Rao | Reduction of memory requirements by overlaying buffers |
US20050094003A1 (en) * | 2003-11-05 | 2005-05-05 | Per Thorell | Methods of processing digital image and/or video data including luminance filtering based on chrominance data and related systems and computer program products |
US9462333B2 (en) * | 2010-09-27 | 2016-10-04 | Intel Corporation | Method for processing multimedia streams |
US20060253857A1 (en) * | 2005-05-04 | 2006-11-09 | Ulead Systems, Inc. | Method for processing a data stream by utilizing multi-processor |
US20080016112A1 (en) * | 2006-07-07 | 2008-01-17 | Honeywell International Inc. | Supporting Multiple Languages in the Operation and Management of a Process Control System |
KR100874439B1 (ko) * | 2007-03-29 | 2008-12-16 | (주)부리멀티미디어 | 마이크로 컨트롤러를 기반으로 한 음성 디코딩 장치 및이를 이용한 음성 디코딩 방법 |
FR2990814B1 (fr) * | 2012-05-18 | 2014-05-16 | Assistance Tech Et Etude De Materiels Electroniques | Procede et systeme de traitement pour generer au moins deux flux video compresses |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6331856B1 (en) * | 1995-11-22 | 2001-12-18 | Nintendo Co., Ltd. | Video game system with coprocessor providing high speed efficient 3D graphics and digital audio signal processing |
AU3407497A (en) * | 1996-06-24 | 1998-01-14 | Van Koevering Company | Musical instrument system |
EP0919953B1 (en) * | 1997-11-28 | 2004-08-18 | Matsushita Electric Industrial Co., Ltd | Audio-video decoding system |
US6275239B1 (en) * | 1998-08-20 | 2001-08-14 | Silicon Graphics, Inc. | Media coprocessor with graphics video and audio tasks partitioned by time division multiplexing |
US6748020B1 (en) * | 2000-10-25 | 2004-06-08 | General Instrument Corporation | Transcoder-multiplexer (transmux) software architecture |
-
2000
- 2000-07-28 JP JP2000229153A patent/JP2002041285A/ja active Pending
-
2001
- 2001-07-27 US US09/915,348 patent/US20020013633A1/en not_active Abandoned
Cited By (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7043717B2 (en) | 2002-05-27 | 2006-05-09 | Kabushiki Kaisha Toshiba | Debugging apparatus and method |
US7139849B2 (en) | 2002-08-07 | 2006-11-21 | Matsushita Electric Industrial Co., Ltd. | Semiconductor integrated circuit device |
US7533196B2 (en) | 2002-08-07 | 2009-05-12 | Panasonic Corporation | Semiconductor integrated circuit device |
CN1321386C (zh) * | 2003-02-20 | 2007-06-13 | 松下电器产业株式会社 | 集成电路和使用它的电子设备 |
KR100715735B1 (ko) * | 2003-03-13 | 2007-05-09 | 소니 픽쳐스 엔터테인먼트, 인크. | 디지털 안면 모델을 애니메이팅하기 위한 시스템 및 방법 |
US10230991B2 (en) | 2003-08-21 | 2019-03-12 | Socionext Inc. | Signal-processing apparatus including a second processor that, after receiving an instruction from a first processor, independantly controls a second data processing unit without further instrcuction from the first processor |
US11563985B2 (en) | 2003-08-21 | 2023-01-24 | Socionext Inc. | Signal-processing apparatus including a second processor that, after receiving an instruction from a first processor, independantly controls a second data processing unit without further instruction from the first processor |
JP2008117230A (ja) * | 2006-11-06 | 2008-05-22 | Sanyo Electric Co Ltd | プログラム処理装置及びプログラム処理方法 |
US8732443B2 (en) | 2006-11-06 | 2014-05-20 | Semiconductor Components Industries, Llc | Program processing device and program processing method which is able to control writing into an internal memory |
JP2008225669A (ja) * | 2007-03-09 | 2008-09-25 | Nec Corp | メモリ管理装置、メモリ管理方法およびプログラム |
JP2009211540A (ja) * | 2008-03-05 | 2009-09-17 | Internatl Business Mach Corp <Ibm> | コンピュータ使用可能コードを実行する装置及び方法 |
JP2010055629A (ja) * | 2009-11-30 | 2010-03-11 | Panasonic Corp | 画像音声信号処理装置及びそれを用いた電子機器 |
JP2016212680A (ja) * | 2015-05-11 | 2016-12-15 | 富士通株式会社 | 情報処理装置、コード実行方法及びプログラム |
JP2018518760A (ja) * | 2015-09-09 | 2018-07-12 | ▲騰▼▲訊▼科技(深▲セン▼)有限公司 | アプリケーション加速方法およびデバイス |
US10664436B2 (en) | 2015-09-09 | 2020-05-26 | Tencent Technology (Shenzhen) Company Limited | Application acceleration method and application acceleration device |
Also Published As
Publication number | Publication date |
---|---|
US20020013633A1 (en) | 2002-01-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2002041285A (ja) | データ処理装置およびデータ処理方法 | |
JP5379122B2 (ja) | マルチプロセッサ | |
US6643329B1 (en) | Method and apparatus for dynamic pipelining | |
JP3729540B2 (ja) | 画像処理装置 | |
JP4279317B2 (ja) | データ処理方法及びデータ処理装置 | |
JP2007299279A (ja) | 演算装置、プロセッサシステム、及び映像処理装置 | |
US8612981B2 (en) | Task distribution method | |
US20030222877A1 (en) | Processor system with coprocessor | |
JPH10108199A (ja) | 画像符号化装置 | |
KR100440715B1 (ko) | 비디오 디코딩 방법 및 장치 | |
US20060088279A1 (en) | Reproduction apparatus, data processing system, reproduction method, program, and storage medium | |
US7848610B2 (en) | Data processing system, reproduction apparatus, computer, reproduction method, program, and storage medium | |
JP4626707B2 (ja) | 情報処理装置および方法 | |
US8280220B2 (en) | Reproduction apparatus, data processing system, reproduction method, program, and storage medium | |
US9075620B2 (en) | Instruction execution circuit | |
JP2008097430A (ja) | ストリームデータ再生システム | |
JP3273926B2 (ja) | ディジタル信号処理装置 | |
JP2000059232A (ja) | オーディオデコーダ | |
JP3996982B2 (ja) | プロセッサ | |
US7903885B2 (en) | Data converting apparatus and method | |
KR100450844B1 (ko) | 비디오 코덱 프로세서의 아키텍쳐 | |
US20060088278A1 (en) | Data processing apparatus, reproduction apparatus, data processing system, reproduction method, program, and storage medium | |
US7627232B2 (en) | Reproduction apparatus, data processing system, reproduction method, program, and storage medium | |
JP2005190332A (ja) | データ転送制御装置 | |
JPH0764730A (ja) | 画像・音声データの転送方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20040824 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20041221 |