(57)【特許請求の範囲】
【請求項１】
少なくともｓｃｆｓｉ情報及びスケールファクタ情報を含み、上記ｓｃｆｓｉ情報より後に上記スケールファクタ情報が入力されるようにしたビットストリームで構成されるＭＰＥＧ規格のオーディオ圧縮データが入力されるＭＰＥＧオーディオデコーダであって、
一時記憶手段の所定記憶領域に上記ｓｃｆｓｉ情報を記憶させる書き込み手段と、
上記書き込み手段により上記一時記憶手段に記憶されたｓｃｆｓｉ情報を読み出す読み出し手段と、
上記読み出し手段により読み出されたｓｃｆｓｉ情報に応じてそれより後に入力されるスケールファクタ情報の数を認識した後、その数のスケールファクタ情報を、上記ｓｃｆｓｉ情報が記憶されていた記憶領域に上書きするようにして上記一時記憶手段に記憶させる上書き手段とを具備することを特徴とするＭＰＥＧオーディオデコーダ。
【請求項２】
上記ｓｃｆｓｉ情報の所定記憶領域は、上記スケールファクタ情報の記憶領域の一部分であることを特徴とする請求項１に記載のＭＰＥＧオーディオデコーダ。
【発明の詳細な説明】
【０００１】
【産業上の利用分野】
本発明は、ＭＰＥＧによって圧縮されたオーディオデータをデコードするＭＰＥＧオーディオデコーダに関するものである。
【０００２】
【従来の技術】
近年、ＭＰＥＧ（Ｍｏｖｉｎｇ  Ｐｉｃｔｕｒｅ  Ｉｍａｇｅ  Ｃｏｄｉｎｇ  Ｅｘｐｅｒｔｓ  Ｇｒｏｕｐ  ）オーディオと称されるディジタル音声信号の圧縮技術が開発されてきている。現在、このＭＰＥＧオーディオにはＭＰＥＧ１が規格化されている。このＭＰＥＧ１の規格には、要求される音質や回路規模によってレイヤＩ，レイヤＩＩ，レイヤＩＩＩ  の３つの方式が用意されている。
【０００３】
また、ＭＰＥＧオーディオにおいては、音声信号のチャネルモードとして、シングルチャネル、デュアルチャネル、ステレオ、ジョイントステレオなどの各モードが規定されている。さらに、ＭＰＥＧオーディオでは、各レイヤの各チャネルモード毎に使用可能な伝送レート（ビットレート）や、再生後の音声信号の出力レート（サンプリング周波数）が種々規定されている。
【０００４】
図３は、ＭＰＥＧ１のレイヤＩＩによって圧縮されたオーディオデータのビットストリームを示す図である。この図３に示したように、オーディオ圧縮データの１フレームは、ヘッダ情報（ＨＥＡＤＥＲ）、ＣＲＣ（Ｃｙｃｌｉｃ  Ｒｅｄｕｎｄａｎｃｙ  Ｃｈｅｃｋ  ）情報、アロケーション（Ａｌｌｏｃａｔｉｏｎ）情報、ｓｃｆｓｉ  情報、スケールファクタ（Ｓｃａｌｅ  Ｆａｃｔｏｒ）情報およびサンプルもしくはサンプルコード（Ｓａｍｐｌｅ  ／  Ｓａｍｐｌｅ  Ｃｏｄｅ）情報（以下では、これらをまとめてサンプルデータという）で構成され、この順番でＭＰＥＧオーディオデコーダに入力されるようになっている。
【０００５】
ここで、上記ヘッダ情報は、ビットレートやサンプリング周波数、あるいはステレオ／モノラルのチャネルモード等のような基本的な情報によって構成されるものである。また、ＣＲＣ情報は、ビットストリーム中にエラーがないかどうかを調べるためのものである。
【０００６】
また、アロケーション情報、スケールファクタ情報およびサンプルデータは、オーディオ圧縮データ本体を構成する情報である。上記アロケーション情報およびスケールファクタ情報によってサンプルデータが加工されることにより、オーディオ圧縮データが復号され、ＰＣＭデータが生成されるようになっている。
【０００７】
すなわち、アロケーション情報は、復号時における逆量子化演算の際に用いられる情報であり、主としてサンプルデータに何ビットが割り当てられているかを表すものである。また、スケールファクタ情報は、上記逆量子化演算の後の逆スケーリング演算の際に用いられる情報であり、おおよその出力レベルを与えるスケーリング係数値を表すものである。
【０００８】
ところで、レイヤＩＩのステレオモードでは、オーディオデータは３２個のサブバンドに分割され、各サブバンド毎にサンプル情報が３個ずつまとめて符号化されており、各サブバンドには２個のチャネルが含まれている。上述したアロケーション情報は、各サブバンドの各チャネル毎に１個ずつ含まれている。また、スケールファクタ情報は、各サブバンドの各チャネルにそれぞれ１〜３個含まれている。ｓｃｆｓｉ  情報は、このスケールファクタ情報が各サブバンドの各チャネルに何個存在するかを示すパラメータであり、レイヤＩＩにおいてのみ用いられる。
【０００９】
以上のようなビットストリームを有するオーディオデータのデコード処理は、上述した逆量子化処理および逆スケーリング処理に続いて合成サブバンドフィルタ処理が行われることによって実現される。一般に、従来のＭＰＥＧオーディオデコーダにおいては、入力される図３のようなビットストリームや、上述のような一連の処理過程で得られるデータを一時記憶しておくためのバッファメモリが幾つか設けられている。
【００１０】
【発明が解決しようとする課題】
上述のように、従来のＭＰＥＧオーディオデコーダでは、その入力段に、図３のようなビットストリームからなるオーディオ圧縮データを一時記憶しておくためのバッファメモリが設けられていた。そして、そのバッファメモリは、ビットストリーム中の各情報を記憶するために、それぞれに専用のメモリが個々に設けられていた。
【００１１】
このため、これらの各情報を記憶するためのバッファメモリは、各情報のデータ量の合計に相当する大きなメモリ容量が必要となり、その全メモリ容量が大きくなってしまうという問題があった。
【００１２】
本発明は、このような問題を解決するために成されたものであり、ＭＰＥＧ規格のオーディオ圧縮データ中に存在する各情報を一時記憶しておくためのバッファメモリの記憶容量を小さくすることができるようにすることを目的とする。
【００１３】
【課題を解決するための手段】
本発明のＭＰＥＧオーディオデコーダは、少なくともｓｃｆｓｉ情報及びスケールファクタ情報を含み、上記ｓｃｆｓｉ情報より後に上記スケールファクタ情報が入力されるようにしたビットストリームで構成されるＭＰＥＧ規格のオーディオ圧縮データが入力されるＭＰＥＧオーディオデコーダであって、一時記憶手段の所定記憶領域に上記ｓｃｆｓｉ情報を記憶させる書き込み手段と、上記書き込み手段により上記一時記憶手段に記憶されたｓｃｆｓｉ情報を読み出す読み出し手段と、上記読み出し手段により読み出されたｓｃｆｓｉ情報に応じてそれより後に入力されるスケールファクタ情報の数を認識した後、その数のスケールファクタ情報を、上記ｓｃｆｓｉ情報が記憶されていた記憶領域に上書きするようにして上記一時記憶手段に記憶させる上書き手段とを具備している。
【００１４】
本発明の他の特徴とするところは、上記  ｓｃｆｓｉ情報の所定記憶領域が上記スケールファクタ情報の記憶領域の一部分であることを特徴としている。
【００１５】
【作用】
本発明は上記技術手段より成るので、各サブバンドにスケールファクタ情報が何個存在するのかを表すために一時記憶手段から一度読み出された後は不要となり、消去してもデコード処理の動作上何の問題も生じないという  ｓｃｆｓｉ情報の性質を有効に利用することにより、上記一時記憶手段の一部の記憶領域を、ｓｃｆｓｉ  情報を一時記憶しておくための記憶領域として使用するとともに、その後に入力されるスケールファクタ情報を上書きして一時記憶しておくための記憶領域としても使用することができるようにし、ｓｃｆｓｉ  情報用の記憶領域とスケールファクタ情報用の記憶領域とを個々に設けなくても済むようにする。
【００１６】
【実施例】
以下、本発明のＭＰＥＧオーディオデコーダの一実施例を図面に基づいて説明する。
図１は、本実施例によるＭＰＥＧオーディオデコーダの構成を示す機能ブロック図である。
【００１７】
図１において、１はデータ入力部であり、図３に示したビットストリームで構成されるＭＰＥＧ規格のオーディオ圧縮データを入力する。先にも述べたように、上記オーディオ圧縮データは、図３に示したビットストリームの順番でこのデータ入力部１に入力されるようになっている。データ入力部１の内部には、ヘッダレジスタ１ａが備えられており、上記ビットストリームの最初に含まれているヘッダ情報が記憶される。
【００１８】
２はＣＲＣチェック部であり、ＣＲＣ情報（ＣＲＣチェックワード）に基づいてビットストリーム中のエラーを検出する。すなわち、ＣＲＣチェック部２は、１６ビットのＣＲＣチェックワードの値と、それ以前に入力されたヘッダ情報および上記ＣＲＣチェックワードの後に入力されるアロケーション情報、  ｓｃｆｓｉ情報、スケールファクタ情報の各値をもとに所定の演算が施された結果得られる１６ビットの値とを比較する。そして、それら両者の値が一致するかどうかを調べることにより、エラー検出を行う。
【００１９】
３はシリアル／パラレル変換部（Ｓ／Ｐ変換部）であり、上記データ入力部１からシリアルデータの形で送られてくるアロケーション情報、ｓｃｆｓｉ  情報、スケールファクタ情報およびサンプル（もしくはサンプルコード）情報を、それぞれパラレルデータの形に変換するものである。４はアロケーション変換部であり、入力されるアロケーション情報を後述するような所定のデータに変換するものである。５はサンプル変換部であり、入力されるサンプルコード情報を分解して３つのサンプル情報に変換するものである。
【００２０】
６はＡＳ−ＲＡＭ（Ａｌｌｏｃａｔｉｏｎ・Ｓｃａｌｅ  Ｆａｃｔｏｒ−ＲＡＭ）であり、上述のアロケーション情報、ｓｃｆｓｉ  情報およびスケールファクタ情報を一時記憶するものである。後述するように、このＡＳ−ＲＡＭ６においては、一度記憶された  ｓｃｆｓｉ情報がそれより後に入力されるスケールファクタ情報によって上書きされる。したがって、最終的にはアロケーション情報およびスケールファクタ情報のみがこのＡＳ−ＲＡＭ６に記憶されることになる。７はサンプルＲＡＭであり、上述のサンプル情報を一時記憶するものである。
【００２１】
８は書き込み部であり、アロケーション情報、ｓｃｆｓｉ  情報およびスケールファクタ情報を上述のＡＳ−ＲＡＭ６に書き込んだり、サンプル情報を上述のサンプルＲＡＭ７に書き込んだりするものである。書き込み部８は、上書き手段８ａを備えている。この上書き手段８ａは、ｓｃｆｓｉ  情報が既に書き込まれたＡＳ−ＲＡＭ６のメモリエリアに、それより後に入力されるスケールファクタ情報を上書きするようにして記憶させていく。
【００２２】
９は読み出し部であり、ＡＳ−ＲＡＭ６からアロケーション情報、ｓｃｆｓｉ  情報およびスケールファクタ情報を読み出したり、サンプルＲＡＭ７からサンプル情報を読み出したりするものである。この読み出し部９によってＡＳ−ＲＡＭ６から読み出されるアロケーション情報、ｓｃｆｓｉ  情報およびスケールファクタ情報は、上述したサンプル変換部５や書き込み部８における処理において利用あるいは参照される。
【００２３】
１０は乗加算器であり、上記ＡＳ−ＲＡＭ６およびサンプルＲＡＭ７から読み出されるアロケーション情報、スケールファクタ情報およびサンプル情報に基づいて、逆量子化処理、逆スケーリング処理および合成サブバンドフィルタ処理を行うことにより、ＰＣＭデータを生成する復号処理を実行する。
【００２４】
次に、上記のように構成したＭＰＥＧオーディオデコーダの動作を説明する。なお、ここでは、データ入力部１に入力される図３のようなビットストリーム中に含まれる各情報についての動作を、入力される順番に沿って順に説明していくことにする。
【００２５】
まず最初に、ヘッダ情報がデータ入力部１より入力され、それがデータ入力部１内のヘッダレジスタ１ａに記憶される。次に、ＣＲＣ情報がデータ入力部１より入力され、それがＣＲＣチェック部２に転送される。そして、ＣＲＣチェック部２によって、そのフレーム内にビット・エラーが存在するかどうかが調べられる。
【００２６】
次に、アロケーション情報がデータ入力部１より入力され、それがシリアルデータの形でＳ／Ｐ変換部３に転送される。Ｓ／Ｐ変換部３では、アロケーション情報がシリアルデータの形からパラレルデータの形に１ワード毎に変換される。そして、このようにしてパラレル変換されたアロケーション情報が、アロケーション変換部４を通って書き込み部８に与えられ、ＡＳ−ＲＡＭ６内のアロケーション情報用のフィールドに記憶される。
【００２７】
図２は、上記ＡＳ−ＲＡＭ６に記憶される各情報のフィールドの一例を示す図である。図２から明らかなように、本実施例においては、１つのＲＡＭをアロケーション情報用のフィールド（図中でＡｌｌｏｃａｔｉｏｎと表記）と  ｓｃｆｓｉ情報用のフィールド（図中で（ｓｃｆｓｉ）  と表記）とスケールファクタ情報用のフィールド（図中でＳｃａｌｅ  Ｆａｃｔｏｒ０，Ｓｃａｌｅ  Ｆａｃｔｏｒ１，Ｓｃａｌｅ  Ｆａｃｔｏｒ２と表記）とに分けて使用している。
【００２８】
また、上述したように、レイヤＩＩのステレオモードでは、オーディオデータは３２個のサブバンド（サブバンド番号ｓｂ＝０〜３１）に分割され、各サブバンド毎に符号化されており、各サブバンドには２個のチャネル（チャネル番号ｃｈ＝０または１）が含まれている。そこで、上記した各情報用のフィールドには、各サブバンドの各チャネルについての情報を記憶するためのアドレスが０〜６３まで用意されている。
【００２９】
上述のアロケーション情報は、各サブバンドの各チャネル毎に１個ずつ用意されていて、図２に示したように〔ｓｂ０，ｃｈ０〕、〔ｓｂ０，ｃｈ１〕、〔ｓｂ１，ｃｈ０〕、………の順でＡＳ−ＲＡＭ６の専用フィールドに記憶されていく。ただし、レイヤＩＩでは、サブバンドｓｂ３０，ｓｂ３１についてはアロケーション情報は存在せず、最大でサブバンドｓｂ２９までアロケーション情報が記憶される。
【００３０】
なお、このアロケーション情報は、後に入力されるサンプルデータが何ビット幅であるかという情報と、そのサンプルデータがサンプル情報なのかサンプルコード情報なのかという情報とを含んでいる。これらの情報は、ＩＳＯ／ＩＥＣ
１１１７２  ＭＰＥＧ１オーディオ  レイヤＩＩの規格に従って、アロケーション情報の値とサブバンド番号とをもとにして表１のようなテーブル情報を参照することにより知ることができる。
【００３１】
【表１】
0003576266.tif 000002
【００３２】
表１において、ｎｂａｌで示される項目は、アロケーション情報のビット幅を示すものであり、アロケーション情報が４ビット幅のとき（サブバンドｓｂ０〜ｓｂ１０）は、アロケーション情報は０〜１５の１６個の値をとる。また、アロケーション情報が３ビット幅のとき（サブバンドｓｂ１１〜ｓｂ２２）は、アロケーション情報は０〜７の８個の値をとる。また、アロケーション情報が２ビット幅のとき（サブバンドｓｂ２３〜ｓｂ２９）は、アロケーション情報は０〜３の４個の値をとる。
【００３３】
例えば、サブバンド番号がｓｂ＝２で、アロケーション情報の値が５である場合は、サンプルデータのとり得る値は６３通りであり、サンプルデータのビット幅は６ビットであることが分かる。また、サブバンド番号がｓｂ＝２０で、アロケーション情報の値が５である場合は、サンプルデータのとり得る値は１５通りであり、サンプルデータのビット幅は４ビットであることが分かる。
【００３４】
また、サンプルデータのとり得る値が３通り、５通りまたは９通りである場合は、サンプルデータは、サンプルコードという形でデータ入力部１に入力されている。したがって、表１を参考にしてサンプルデータのとり得る値が何通りであるかを見ることによって、そのサンプルデータがサンプル情報なのかサンプルコード情報なのかを知ることもできる。
【００３５】
ここで、サンプルコードとは、各サブバンド単位で、時間軸方向に連続して存在する３個のサンプル情報を１つのコードにまとめたものである。例えば、１つのサンプル情報のとり得る値が３通りである場合、通常は３個のサンプル情報で６ビットとなるが、１つのコードにまとめると５ビットで済む。また、１つのサンプル情報のとり得る値が５通りまたは９通りである場合、通常は３個のサンプル情報でそれぞれ９ビット、１２ビットとなるが、１つのコードにまとめると、それぞれ７ビット、１０ビットで済む。
【００３６】
アロケーション情報は、それより後に入力される  ｓｃｆｓｉ情報、スケールファクタ情報およびサンプルデータの要素分割処理や、ＰＣＭデータを生成するための復号処理など、種々の処理に利用されるデータである。このため、それらの処理を行うたびに、表１のような複雑なテーブル情報を参照するのは不便である。そこで、本実施例ではこのような不便を解消するために、アロケーション変換部４を用いてアロケーション情報を、例えば表２のようなアロケーションコードにあらかじめ変換した上でＡＳ−ＲＡＭ６に記憶するようにしている。
【００３７】
【表２】
0003576266.tif 000003
【００３８】
表２に示したアロケーションコードは、その最上位ビット（ＭＳＢ）でサンプル情報であるかサンプルコード情報であるかを示しており、下位４ビットでサンプル情報のビット幅を示している。すなわち、最上位ビットが“０”の場合はそのサンプルデータがサンプル情報であることを示し、“１”の場合はサンプルコード情報であることを示している。また、下位４ビットで示される２進数の値がサンプル情報のビット幅を示している。
【００３９】
なお、先に示した表１からも明らかなように、サンプル情報のビット幅が１ビットということはないので、下位４ビットの０００１（２）  には、サンプル情報のビット幅が１６ビットであるという情報を割り当てている。また、アロケーションコードが０００００（２）  の場合は、対応するサブバンド、チャネルには  ｓｃｆｓｉ情報、スケールファクタ情報およびサンプル情報の何れも存在しないことを示している。
【００４０】
次に、ｓｃｆｓｉ  情報がデータ入力部１より入力され、それがシリアルデータの形でＳ／Ｐ変換部３に転送される。Ｓ／Ｐ変換部３では、ｓｃｆｓｉ  情報がシリアルデータの形からパラレルデータの形に要素単位（２ビット）毎に変換される。そして、このようにしてパラレル変換された  ｓｃｆｓｉ情報は、書き込み部８に与えられ、ＡＳ−ＲＡＭ６に記憶される。
【００４１】
上述したように、この  ｓｃｆｓｉ情報は、それより後に入力されるスケールファクタ情報が各サブバンドの各チャネルに何個存在するか（１〜３個）を示すパラメータである。すなわち、上記スケールファクタ情報は、サンプル情報を逆量子化した後の逆スケーリング処理に用いられるスケーリング係数値を表すものであり、上記サンプル情報は、レイヤＩＩの場合、１フレーム単位で見ると各サブバンドの各チャネル毎に時間軸方向に３６個存在している。
【００４２】
そして、上記３６個のサンプル情報は、連続する１２個毎に異なるスケールファクタの値をとり得る。すなわち、時間軸方向で見て０〜１１番目、１２〜２３番目、２４〜３５番目のサンプル情報に対するスケールファクタ情報を、それぞれスケールファクタ０，スケールファクタ１，スケールファクタ２とすると、次の表３に示すように、スケールファクタ０〜２にはそれぞれａ，ｂ，ｃの何れかのスケールファクタの値が与えられる。上記  ｓｃｆｓｉ情報は、表３に示した４パターンのうち、何れのパターンに該当するかを示している。
【００４３】
【表３】
0003576266.tif 000004
【００４４】
この  ｓｃｆｓｉ情報の書き込み時には、読み出し部９によって、ＡＳ−ＲＡＭ６に既に記憶されているアロケーション情報が若いアドレスから順に読み出され、それが“０”でないことが確認されてから書き込まれる。上述したように、アロケーション情報が“０”の場合は、対応するサブバンド、チャネルには  ｓｃｆｓｉ情報が存在しないからである。
【００４５】
すなわち、図２において、まず、アドレス０のデータ（サブバンドｓｂ０、チャネルｃｈ０のアロケーション情報が含まれる）が読み出される。そして、その読み出されたアロケーション情報が“０”でない場合は、そのアロケーション情報と、上記要素単位にパラレル変換された  ｓｃｆｓｉ情報とがアドレス０に再度書き込まれる。また、アロケーション情報が“０”の場合は、そのアロケーション情報のみがアドレス０に再度書き込まれる。
【００４６】
以下、同様の処理がアドレス６３まで（ただし、レイヤＩＩの場合はアドレス５９まで）繰り返し行われる。これにより、ＡＳ−ＲＡＭ６には、アロケーション情報と  ｓｃｆｓｉ情報とがそれぞれ専用のフィールド（図２において、Ａｌｌｏｃａｔｉｏｎ、（ｓｃｆｓｉ）  で示された領域）に記憶される。
【００４７】
次に、スケールファクタ情報がデータ入力部１より入力され、それがシリアルデータの形でＳ／Ｐ変換部３に転送される。Ｓ／Ｐ変換部３では、スケールファクタ情報がシリアルデータの形からパラレルデータの形に変換される。そして、このようにしてパラレル変換されたスケールファクタ情報は、書き込み部８に与えられ、ＡＳ−ＲＡＭ６に記憶される。
【００４８】
このスケールファクタ情報の書き込み時には、読み出し部９によって、ＡＳ−ＲＡＭ６に既に記憶されているアロケーション情報と  ｓｃｆｓｉ情報とが若いアドレスから順に読み出され、それらの内容を確認しながら書き込まれる。すなわち、まず最初に、アドレス０のデータ（サブバンドｓｂ０、チャネルｃｈ０のアロケーション情報および  ｓｃｆｓｉ情報が含まれる）が読み出される。そして、その読み出されたアロケーション情報が“０”でないかどうかが確認される。
【００４９】
ここで、読み出されたアロケーション情報が“０”ならば、対応するサブバンドｓｂ０、チャネルｃｈ０にスケールファクタ情報は存在しないので、そのアドレス０にはスケールファクタ情報は書き込まれない。一方、アロケーション情報が“０”でないならば、続けて  ｓｃｆｓｉ情報の値が確認され、そのサブバンドｓｂ０、チャネルｃｈ０にスケールファクタ情報が何個存在するかが判断される。
【００５０】
そして、このような判断が行われた後、シリアルデータの形で入力されたスケールファクタ情報がＳ／Ｐ変換部３でパラレル変換され、このパラレル変換されたスケールファクタ情報と上記読み出し部９によって読み出されたアロケーション情報とが、アドレス０に再度書き込まれる。
【００５１】
このときスケールファクタ情報は、図２に示したＡＳ−ＲＡＭ６内のＳｃａｌｅ  Ｆａｃｔｏｒ０，Ｓｃａｌｅ  Ｆａｃｔｏｒ１，Ｓｃａｌｅ  Ｆａｃｔｏｒ２の全てのフィールドに書き込まれる。例えば、表３から分かるように、ｓｃｆｓｉ  情報の値が１０（２）  の場合、スケールファクタ情報は１個しか存在しないが、その１個の値ａがＳｃａｌｅ  Ｆａｃｔｏｒ０〜２の全てのフィールドに書き込まれる。
【００５２】
ところで、ｓｃｆｓｉ  情報は、それより後に入力されるスケールファクタ情報が各サブバンドの各チャネルに何個存在するかを示すだけものである。したがって、この  ｓｃｆｓｉ情報を一度読み出してスケールファクタ情報の個数を確認すれば、その後は不要なものとなる。
【００５３】
そこで、本実施例では、スケールファクタ情報の書き込みに際して、上記アロケーション情報と共に読み出された  ｓｃｆｓｉ情報は、アドレス０に再度書き込まないようにしている。そして、図２に示したように、Ｓｃａｌｅ  Ｆａｃｔｏｒ０のフィールドの一部を上記  ｓｃｆｓｉ情報のフィールドに重複させてスケールファクタ情報を書き込むようにしている。すなわち、本実施例では、ｓｃｆｓｉ  情報が既に書き込まれたフィールドにスケールファクタ情報の一部を上書きするようにして記憶させるようにしている。
【００５４】
以下、同様の処理がアドレス６３まで（ただし、レイヤＩＩの場合はアドレス５９まで）繰り返し行われる。これにより、ＡＳ−ＲＡＭ６には、アロケーション情報とスケールファクタ情報とがそれぞれ専用のフィールド（図２において、Ａｌｌｏｃａｔｉｏｎ、Ｓｃａｌｅ  Ｆａｃｔｏｒ０，Ｓｃａｌｅ  Ｆａｃｔｏｒ１，Ｓｃａｌｅ  Ｆａｃｔｏｒ２で示された領域）に記憶される。
【００５５】
次に、サンプルデータがデータ入力部１より入力され、それがシリアルデータの形でＳ／Ｐ変換部３に転送される。Ｓ／Ｐ変換部３では、上記サンプルデータがシリアルデータの形からパラレルデータの形に２バイト毎に変換される。そして、このパラレル変換されたサンプルデータがサンプル変換部５を通って書き込み部８に与えられ、サンプルＲＡＭ７に記憶される。
【００５６】
このサンプルデータの書き込み時には、読み出し部９によって、ＡＳ−ＲＡＭ６に既に記憶されているアロケーション情報が若いアドレスから順に読み出され、それらの内容を確認しながら書き込まれる。すなわち、上記読み出されたアロケーション情報をもとにサンプルデータのビット幅や、そのサンプルデータがサンプル情報であるのかサンプルコード情報であるのかが確認される。
【００５７】
そして、入力されたサンプルデータがサンプルコード情報である場合は、そのサンプルコード情報は、サンプル変換部５によって３つのサンプル情報に分解された後で、上記サンプルＲＡＭ７に記憶される。サンプルコード情報から３つのサンプル情報を抽出するには、以下のような処理が行われる。
【００５８】
0003576266.tif 000005
ただし、ｓ［ｉ］  （ｉ＝  ０〜２）：３つのサンプル情報
ｃ  ：初期値はサンプルコード情報
ｎｅｌｖｅｌｓ  ：３ｏｒ５ｏｒ９
％  ：余り
ｄｉｖ  ：商
【００５９】
以上のようにして、アロケーション情報、スケールファクタ情報およびサンプル情報がＡＳ−ＲＡＭ６およびサンプルＲＡＭ７に順に記憶されていき、ある程度の量が記憶されると、それらが読み出し部９によって読み出され、乗加算器１０に与えられる。そして、この乗加算器１０において、逆量子化処理、逆スケーリング処理および合成サブバンドフィルタ処理によるデコード処理が行われることにより、ＰＣＭデータが生成される。
【００６０】
図４は、以上のような本実施例のＭＰＥＧオーディオデコーダにおけるデータ処理の流れを概念的に示す図である。また、この本実施例におけるデータ処理の流れの特徴を分かりやすくするために、その比較例として、従来のＭＰＥＧオーディオデコーダにおけるデータ処理の流れを図５に示す。
【００６１】
図５から分かるように、従来は、アロケーション情報、ｓｃｆｓｉ  情報、スケールファクタ情報およびサンプル情報を記憶するためのバッファメモリ（ＲＡＭ）がそれぞれ専用に設けられていた。そして、それぞれのバッファメモリにそれぞれの情報が記憶されるようになされていた。
【００６２】
これに対して、図４に示した本実施例では、１つのＡＳ−ＲＡＭ６をアロケーション情報用のフィールドと  ｓｃｆｓｉ情報用のフィールドとスケールファクタ情報用のフィールド（その一部を上記  ｓｃｆｓｉ情報のフィールドと重複させている）とに分けて使用し、ｓｃｆｓｉ  情報を一度読み出した後は、その後に入力されるスケールファクタ情報で上書きするようにしている。
【００６３】
このように、本実施例によれば、ＡＳ−ＲＡＭ６の全記憶領域の中の一部を、ｓｃｆｓｉ  情報を一時記憶するためのメモリエリアとスケールファクタ情報の一部を一時記憶するためのメモリエリアとで共用することができる。このため、ｓｃｆｓｉ  情報専用のバッファメモリを用意しなくても済むので、ｓｃｆｓｉ  情報専用のバッファメモリが別個に設けられていた従来技術に比べて、全体のメモリ容量を削減することができるようになる。
【００６４】
なお、以上の実施例では、アロケーション情報、ｓｃｆｓｉ  情報およびスケールファクタ情報を１つのＡＳ−ＲＡＭ６に記憶していくようにしている。しかし、本発明においては、１つのＲＡＭに少なくとも  ｓｃｆｓｉ情報とスケールファクタ情報とを記憶するようにすれば良く、必ずしもアロケーション情報を同じＲＡＭ内に記憶させる必要はない。
【００６５】
また、ＡＳ−ＲＡＭ６とサンプルＲＡＭ７との２つのＲＡＭを設け、サンプル情報のみを別のＲＡＭ内に記憶させるようにしている。しかし、本発明では上述したように、１つのＲＡＭに少なくとも  ｓｃｆｓｉ情報とスケールファクタ情報とを記憶するようにすれば良いので、サンプル情報も同じＲＡＭ内に記憶させるようにしても良い。
【００６６】
【発明の効果】
本発明は上述したように、入力されるＭＰＥＧ規格のオーディオ圧縮データに含まれる各種情報のうち、少なくとも  ｓｃｆｓｉ情報およびスケールファクタ情報を一時記憶する一時記憶手段と、上記  ｓｃｆｓｉ情報が既に記憶された上記一時記憶手段の所定記憶領域に、その後に入力されるスケールファクタ情報の一部を上書きするようにして上記スケールファクタ情報を記憶させる上書き手段とを設け、上記一時記憶手段の記憶領域の一部を、ｓｃｆｓｉ  情報を一時記憶しておくための記憶領域と、スケールファクタ情報の一部を一時記憶しておくための記憶領域とで共用させるようにしたので、ｓｃｆｓｉ  情報専用のバッファメモリを設けなくても済み、上記オーディオ圧縮データ中に存在する各情報を一時記憶しておくためのメモリ容量を、ｓｃｆｓｉ  情報を記憶するための専用の記憶領域を設けなくても済む分だけ削減することができる。
【図面の簡単な説明】
【図１】本発明の一実施例によるＭＰＥＧオーディオデコーダの構成を示す機能ブロック図である。
【図２】ＡＳ−ＲＡＭに記憶される各情報のフィールドの一例を示す図である。
【図３】ＭＰＥＧ１オーディオのレイヤＩＩによるオーディオ圧縮データのビットストリームを示す図である。
【図４】本実施例のＭＰＥＧオーディオデコーダにおけるデータ処理の流れを示す図である。
【図５】従来のＭＰＥＧオーディオデコーダにおけるデータ処理の流れを示す図である。
【符号の説明】
１  データ入力部
１ａ  ヘッダレジスタ
２  ＣＲＣチェック部
３  Ｓ／Ｐ変換部
４  アロケーション変換部
５  サンプル変換部
６  ＡＳ−ＲＡＭ
７  サンプルＲＡＭ
８  書き込み部
８ａ  上書き手段
９  読み出し部
１０  乗加算器
【図１】
0003576266.tif 000006
【図２】
0003576266.tif 000007
【図３】
0003576266.tif 000008
【図４】
0003576266.tif 000009
【図５】
0003576266.tif 000010