(57)【特許請求の範囲】
【請求項１】
スカラープロセッサおよびベクトルプロセッサを備えたマルチプロセッサマルチメディアシステムのオーディオデコーダにおいて、
オーディオビットストリーム入力信号を同期化するため、前記スカラープロセッサ上で実行するフレーム同期プログラムコードと、
前記オーディオビットストリームから情報を抽出するため、前記スカラープロセッサ上で実行する情報抽出プログラムコードと、
前記抽出されたオーディオビットストリーム情報は非順次なサンプルデータを含み、
前記非順次サンプルデータを順次サンプルデータに変換するため、前記スカラープロセッサ上で実行するベクトル化プログラムコードと、
前記順次サンプルデータを再量子化するため、前記ベクトルプロセッサ上で実行する再量子化プログラムコードと、
フィルタリングされたオーディオサンプル出力信号を生成するため、前記ベクトルプロセッサ上で実行するサブバンドフィルタリングプログラムコードとを有することを特徴とするオーディオデコーダ。
【請求項２】
前記情報抽出プログラムコードは、前記ＭＰＥＧオーディオビットストリームからヘッダ情報を抽出するためのプログラムコードと、前記ＭＰＥＧオーディオビットストリームからビット割当ビットを抽出するためのプログラムコードと、前記ＭＰＥＧオーディオビットストリームからスケール選択情報およびスケールファクタを抽出するためのプログラムコードと、前記ＭＰＥＧオーディオビットストリームからサンプルデータを抽出するためのプログラムコードとを有することを特徴とする請求項１記載のオーディオデコーダ。
【請求項３】
前記ＭＰＥＧオーディオビットストリームからスケールファクタ選択情報およびスケールファクタを抽出するためのプログラムコードは、ＭＰＥＧオーディオビットストリームからスケールファクタ索引を抽出するためのプログラムコードと、前記スケールファクタ索引に基づいた複数個のスケールファクタ係数を計算するためのプログラムコードと、スケールファクタアレイのスケールファクタ係数を記憶するためのプログラムコードとを有することを特徴とする請求項２記載のオーディオデコーダ。
【請求項４】
前記情報抽出プログラムコードは、チャンネル索引およびサブバンド数に対応する全ての順次データとして複数個の量子化係数を配列するためのプログラムコードを有することを特徴とする請求項１記載のオーディオデコーダ。
【請求項５】
前記量子化係数は、マスク機能アレイおよび複数個の再量子化係数データアレイを具備することを特徴とする請求項４記載のオーディオデコーダ。
【請求項６】
前記情報抽出プログラムコードは、チャンネル索引とサブバンド数に対応する全ての順次データアレイとして複数個の量子化係数アレイ、スケールファクタ、およびマスキングデータアレイを配列するためのプログラムコードを包含し、それらアレイはサンプルデータを再量子化するためのプログラムコードにより使用上並列されることを特徴とする請求項１記載のオーディオデコーダ。
【請求項７】
スカラープロセッサとベクトルプロセッサを有するマルチプロセッサマルチメディアシステムで動作するオーディオビットストリームをデコーディングする方法において、
前記オーディオビットストリームを受信するステップと、
前記スカラープロセッサ上で実行するプルグラムコードによりＭＰＥＧオーディオビットストリーム入力に、マルチプロセッサマルチメディアシステムを同期化させるステップと、
前記スカラープロセッサ上で動作するプログラムコードにより前記ＭＰＥＧオーディオビットストリームから情報を抽出するステップと、
前記スカラープロセッサ上で動作するベクトル化プログラムコードにより非順次サンプルデータを順次サンプルデータに変換するステップと、
前記ベクトルプロセッサ上で実行するプログラムコードにより前記サンプルデータを再量子化するステップと、
フィルタリングされたオーディオサンプルを生成するため、前記ベクトルプロセッサ上で実行するプログラムコードにより前記サンプルデータをサブバンドフィルタリングするステップとを有することを特徴とするデコーディング方法。
【請求項８】
前記ＭＰＥＧオーディオビットストリームから情報を抽出するステップは、前記ＭＰＥＧオーディオビットストリームからヘッダ情報を抽出するステップと、前記ＭＰＥＧオーディオビットストリームからビット割当ビットを抽出するステップと、前記ＭＰＥＧビットストリームからスケールファクタ選択情報およびスケールファクタを抽出するステップと、前記ＭＰＥＧオーディオビットストリームからサンプルデータを抽出するステップとを有することを特徴とする請求項７記載のデコーディング方法。
【請求項９】
前記ＭＰＥＧオーディオビットストリームからスケールファクタ選択情報およびスケールファクタを抽出するステップは、前記ＭＰＥＧオーディオビットストリームからスケールファクタ索引を抽出するステップと、前記スケールファクタ索引に基づいた複数個のスケールファクタ係数を計算するステップと、前記スケールファクタアレイにスケールファクタ係数を貯蔵するステップとを有することを特徴とする請求項８記載のデコーディング方法。
【請求項１０】
前記ＭＰＥＧオーディオビットストリームから情報を抽出するステップは、チャンネル索引とサブバンド数に対応する全ての順次データとして複数個の量子化係数を配列するステップを含むことを特徴とする請求項７記載のデコーディング方法。
【請求項１１】
前記量子化係数は、マスク機能アレイと複数個の再量子化係数データアレイを含むことを特徴とする請求項１０記載のデコーディング方法。
【請求項１２】
前記ＭＰＥＧオーディオビットストリームから情報を抽出するステップは、チャンネル索引とサブバンド数に対応する全ての順次データとして複数個の量子化係数アレイ、スケールファクタアレイ、およびマスキングデータアレイを配列するステップを含み、前記サンプルデータを再量子化するためプログラムコードにより使用上配列されることを特徴とする請求項７記載のデコーディング方法。
【請求項１３】
スカラープロセッサと、
前記スカラープロッセさに接続されたベクトルプロセッサと、
オーディオビットストリームをデコードするため、前記スカラープロセッサとベクトルプロセッサとが結合された状態で実行するオーディオデコーダプログラムコードとを有し、
このオーディオデコーダプログラムは、
前記オーディオビットストリームを受信するプログラムコードと、
前記オーディオビットストリームを同期化するため、前記スカラープロセッサ上で実行するフレーム同期化プログラムコードと、
ＭＰＥＧオーディオビットストリームから情報を抽出するため、前記スカラープロセッサ上で実行する情報抽出プログラムコードと、この抽出されたオーディオビットストリーム情報は非順次サンプルデータを含み、
前記非順次サンプルデータを順次サンプルデータに変換するため、前記スカラープロセッサ上で実行するベクトル化プログラムコードと、
前記ベクトルプロセッサ上で実行する前記順次サンプルデータを再量子化するプログラムコードと、
フィルタリングされたオーディオサンプル出力信号を生成するため、前記ベクトルプロセッサ上で実行するサブバンドフィルタリングプログラムコードとを有することを特徴とするマルチプロセッサマルチメディアシステム。
【請求項１４】
前記情報抽出プログラムコードは、前記ＭＰＥＧオーディオビットストリームからヘッダ情報を抽出するためのプログラムコードと、前記ＭＰＥＧオーディオビットストリームからビット割当ビットを抽出するためのプログラムコードと、前記ＭＰＥＧオーディオビットストリームからスケールファクタ選択情報およびスケールファクタを抽出するためのプログラムコードと、前記ＭＰＥＧオーディオビットストリームからサンプルデータを抽出するためのプログラムコードとを有することを特徴とする請求項１３記載のマルチプロセッサマルチメディアシステム。
【請求項１５】
前記ＭＰＥＧオーディオビットストリームからスケールファクタ選択情報およびスケールファクタを抽出するためのプログラムコードは、前記ＭＰＥＧオーディオビットストリームからスケールファクタ索引を抽出するためのプログラムコードと、前記スケールファクタ索引に基づいた複数個のスケールファクタ係数を計算するためのプログラムコードと、前記スケールファクタアレイにスケールファクタ係数を記憶するためのプログラムコードとを有することを特徴とする請求項１４記載のマルチプロセッサマルチメディアシステム。
【請求項１６】
前記情報抽出プログラムコードは、チャンネル索引およびサブバンド数に対応する全ての順次データとして複数個の量子化係数を配列するためのプログラムコードを包含することを特徴とする請求項１３記載のマルチプロセッサマルチメディアシステム。
【請求項１７】
前記量子化係数は、マスク機能アレイおよび複数個の再量子化係数データアレイを具備することを特徴とする請求項１６記載のマルチプロセッサマルチメディアシステム。
【請求項１８】
前記情報抽出プログラムコードは、チャンネル索引とサブバンド数に対応する全ての順次データアレイとして複数個の量子化係数アレイ、スケールファクタ、およびマスキングデータアレイを配列するためのプログラムコードを含み、それらアレイはサンプルデータを再量子化するためのプログラムコードにより使用上配列されることを特徴とする請求項１３記載のマルチプロセッサメディアシステム。
【請求項１９】
スカラープロセッサ及びベクトルプロセッサを備えたマルチプロセッサマルチメディアシステムにオーディオデコーダを提供する方法において、
ＭＰＥＧオーディオビットストリームを受信するコードを提供するステップと、
前記ＭＰＥＧオーディオビットストリーム入力により前記スカラープロセッサ上で実行するフレーム同期化プログラムコードを提供するステップと、
前記ＭＰＥＧオーディオビットストリームから情報を抽出するために前記スカラープロセッサ上で実行する情報抽出プログラムコードを提供するステップと、
前記スカラープロセッサ上で動作するベクトル化プログラムコードにより非順次サンプリングデータを順次サンプリングデータに変換するコードを提供するステップと、
前記ベクトルプロセッサ上で実行する前記順次サンプルデータを再量子化するためのプログラムコードを提供するステップと、
フィルタリングされたオーディオサンプルを生成するために前記ベクトルプロセッサ上で実行するサブバンドフィルタリングプログラムコードを提供するステップと、を含むことを特徴とする方法。
【請求項２０】
マルチプロセッサマルチメディアシステムを提供する方法において、
スカラープロセッサを提供するステップと、
前記スカラープロセッサに連結されたベクトルプロセッサを提供するステップと、
前記スカラープロセッサとベクトルプロセッサ上で結合して実行するためのオーディオデコーダプログラムコードを提供するステップと、を含み、
前記オーディオデコーダプログラムは、オーディオビットストリーム入力信号を同期化するために、前記スカラープロセッサ上で実行するフレーム同期化プログラムコードと、
前記ＭＰＥＧオーディオビットストリームからの情報を抽出するために前記スカラープロセッサ上で実行する情報抽出プログラムコードと、
前記抽出されたオーディオビットストリーム情報は非順次のサンプルデータを含み、前記非順次サンプルデータを順次サンプルデータに変換するために、前記スカラープロセッサ上で実行するベクトル化プログラムコードと、
前記ベクトルプロセッサ上で実行する順次サンプルデータを再量子化するための再量子化プログラムコードと、
フィルタリングされたオーディオサンプル出力信号を生成するため、前記ベクトルプロセッサ上で実行するサブバンドフィルタリングプログラムコードと、を備えることを特徴とする方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ＭＰＥＧ規格におけるオーディオデコーディング装置およびその方法に係るもので、詳しくはスカラーベクトルおよびベクトルプロセッサを具備したマルチプルプロセッサマルチメディアシステムで使用できるオーディオデコーディング装置およびそのデコーディング方法に関する。
【０００２】
【従来の技術】
オーディオ録音、記憶、再生のような録音媒体、装置、および多様データ・ハンドリング方向の規格化は、このテクノロジーとアプリケーションの継続的な成長の上で非常に好ましいことである。ビデオ情報を圧縮および解凍するために広用される圧縮規格は、オーディオとビデオのエンコーディングおよびデコーディング用ＭＰＥＧ(Moving Picture Expert Group）規格である。このＭＰＥＧ規格は国際規格ＩＳＯ／ＩＥＣ11172-1 、“情報技術−約１．５Mbit/sまでのデジタル記憶媒体の動画および関連オーディオのコーディング”、第１版、part1, part2, part3, 1993. 08. 1に定義されている（以下、ＭＰＥＧ国際規格と称する）。
【０００３】
このＭＰＥＧ国際規格は、時間情報を含むオーディオおよびビデオソースから単一の情報ストリームを形成する、１つまたはそれ以上のデータストリームを結合する問題を扱う。一般に、大量の情報データストリームはＭＰＥＧプロセッシングシステムにより処理される。プロセッサの計算能力は安定且つ急速に進歩しているが、高い処理能力や計算能力の要求は、かつて無いような大量データの表示および処理を必要とするマルチメディア分野の積極的な新しいアプリケーションの発展を損なわないために依然としてある。
【０００４】
ＭＰＥＧ国際規格は図１１に示したようなオーディオデコーディングプロセッサを定義する。オーディオデコーディングプロセッサ１０は、エンコードされたビットストリームを入力するステップＳ１２、ビット割当ビットをデコーディングするステップＳ１４、スケールファクタ選択情報をデコーディングするステップＳ１６、サンプルデータを再量子化するステップＳ１８、サブバンドフィルタを合成するステップＳ２０、およびパルスコード変調（ＰＣＭ）されたサンプルを出力するステップＳ２２を順次行う。この場合、サンプルデータの再量子化ステップＳ１８の動作は、ＭＰＥＧオーディオデコーダにより実行される最も激しい計算が行われるオペレーションの１つである。
【０００５】
【発明が解決しようとする課題】
このようなサンプルデータの再量子化のような計算処理のために、ＭＰＥＧ国際規格の下ではオーディオデコーディングをより効率的に行う装置および技術が必要とされている。特に、オーディオデコーダでサンプルデータの再量子化をより効率的に行う装置および技術が必要とされている。
【０００６】
本発明の目的は、非順次データを順次形態に変換して計算速度性を改善し、スカラーベクトルおよびベクトルプロセッサを具備したマルチプルプロセッサマルチメディアシステムで使用できるオーディオデコーディング装置およびその方法を提供しようとするものである。
【０００７】
【課題を解決するための手段】
本発明によれば、スカラープロセッサおよびベクトルプロセッサを備えたマルチプロセッサマルチメディアシステムのオーディオデコーダは、スカラープロセッサ上で実行するフレーム同期化プログラムコードと、スカラープロセッサ上で実行するＭＰＥＧオーディオビットストリームから情報を抽出するための情報抽出プログラムコードと、スカラープロセッサ上で実行する非順次サンプルデータを順次サンプルデータに変換するベクトル化プログラムコードと、ベクトルプロセッサ上で実行するためのサンプルデータを再量子化するプログラムコードと、ベクトルプロセッサ上で実行するためのサブバンドフィルタリングプログラムコードとを有する。
【０００８】
本発明に係るマルチメディアプロセッサのオーディオデコーダは、スカラープロセッサおよびベクトルプロセッサを具備したマルチプル並列プロセッサを使用してデコーディング効率および性能を向上させる。スカラープロセッサはビット操作、索引指定、および条件演算を含むタスクを最も効率的に行う。ベクトルプロセッサは、無制限の演算や連続的に発生する多重データ計算を含む演算を最も効果的に実行する。データが連続的なデータである限り、スカラープロセッサよりもベクトルプロセッサ上で出来るだけ多数の演算を行うことにより改善された性能が得られる。オーディオデコーダは、非連続データを連続データに変換させてデータを“ベクトル化”することにより、データハンドリングの動作をスカラープロセッサからベクトルプロセッサに移行させる再量子化プログラムコードを備える。
【０００９】
このようなオーディオデコーダシステムおよびその方法により多くの利点が得られる。オーディオデコーダは２つのプロセッサを並列に用いることでデコーディング性能の向上を図っている。オーディオデコーダは条件命令およびスカラーベクトルを用いる非連続データ上で動作する命令を容易に実行し、ベクトルプロセッサを用いる配列や連続データ上で動作する命令を実行する。オーディオデコーダは、ベクトルプロセッサの計算能力をより活用するために、非連続データを連続形態に変換して計算速度性能を改善する。
【００１０】
【発明の実施の形態】
以下、本発明の実施の形態を図面を用いて詳細に説明する。なお、図面全体に亘って同じ構成要素には同一の符号を記す。
ＭＰＥＧ１，ＭＰＥＧ２、ビデオ会議、ファクスサポート、およびモデムサポートを含んだマルチメディアアプリケーション動作はマルチプルプロセッサシステムを用いて効率的に行われる。マルチプロセッサシステムの一例はベクトルプロセッサとスカラープロセッサを備えたシステムである。オーディオデコーディングは、スカラープロセッサとベクトルプロセッサ間のデコーディング処理を効率的にステップに割り当てるために、マルチプロセッサシステムの使用やオペレーティング手続きの設計を通じて加速させるオペレーションである。
【００１１】
図１は、ホストプロセッサ１０２およびマルチメディア信号プロセッサ１０４を具備したマルチメディアマルチプロセッサシステムを示したものである。典型的なホストプロセッサ１０２は PentiumTMまたは Pentium ProTMプロセッサのようなｘ８６系プロセッサである。このホストプロセッサ１０２はシステムメモリ１１６の命令とデータに基づいたプログラムを実行し、ＰＣＩバスのようなシステムバス１０６を通してマルチメディア信号プロセッサ１０４と通信する。このマルチメディア信号プロセッサ１０４はオーディオおよび通信CODEC １０８、ビデオA/D 変換器１１０、ビデオD/A 変換器１１２、およびフレームバッファＳＤＲＡＭメモリ１１４のような多様な機能ブロックとインタフェースする。
【００１２】
図２は、マルチメディアマルチプロセッサシステム１００内のマルチメディア信号プロセッサ１０４を示したものである。マルチメディア信号プロセッサ１０４は複数個のマルチメディアインタフェースに接続されたデジタル処理器ＤＳＰコア２０２を備える。
ＤＳＰコア２０２は、マルチメディア信号プロセッサ１０４の計算エンジンであって、スカラープロセッサ２０４、ベクトルプロセッサ２０６、キャッシュサブシステム２０８、高速バス（ＦＢＵＳ）２１０、およびＩ／Ｏバスを備えている。スカラープロセッサ２０４は英国ＡＲＭ会社で設計し製作した３２ビットＡＲＭＴＭ制御プロセッサに基づいたスカラープロセッサであって、リアルタイムオペレーティングシステム演算、割り込みおよび例外ハンドリング、入出力装置管理、ホストコンピュータとの通信のような通常の処理機能を行う。一実施の形態において、スカラープロセッサ２０４は４０ＭＨｚで動作する。スカラープロセッサ２０４は、コプロセッサインタフェース２４２を通してベクトルプロセッサ２０６にインタフェースする。
また、マルチメディア信号プロセッサ１０４は多様なマルチメディア動作を行う。１つのマルチメディア動作はオーディオデコーディングであって、スカラープロセッサ２０４とベクトルプロセッサ２０６がプロセッサ上で動作するプログラムコードと結合してオーディオプロセッサ２０５を形成する。
【００１３】
図３は、命令デコーダおよび制御ロジック３０２により制御されるＡＲＭ７スカラープロセッサ２０４を示し、このスカラープロセッサ２０４は書き込みデータレジスタ３０４と命令パイプラインおよび読み出しデータレジスタ３０６とを通してキャッシュサブシステム２０８と通信する。また、スカラープロセッサ２０４は３１×３２ビットレジスタバンク３１２のデータをアドレシングするアドレスレジスタ３０８およびアドレス増分器３１０と、３２ビットＡＬＵ３１４のような演算ロジック、バレルシフター３１６、およびブース乗算器(Booth's multiplier)３１８を備える。コプロセッサインタフェース２４２は、スカラープロセッサ２０４とベクトルプロセッサ２０６間の演算コードおよび命令因数(argument)を伝達するｎＯＰＣ、ｎＣＰＩ、ＣＰＡ、およびＣＰＢ信号ラインを経由して命令デコーダおよび制御ロジック３０２に直接接続される。
【００１４】
図４は、スカラープロセッサ２０４を示したものである。スカラープロセッサ２０４は索引指定および条件演算を具備したスカラー演算を行い、ベクトルプロセッサ２０６の動作を初期化する。特に、スカラープロセッサ２０４はスカラープロセッサ２０４命令セットの拡張によってベクトルプロセッサ２０６との対話処理を制御する。拡張命令セットは、ＳＴＡＲＴＶＰやＩＮＴＶＰ命令のようなコプロセッサデータ動作、コプロセッサデータ転送、およびベクトルプロセッサ２０６のレジスタに対する読み出し並びに書き込むためのＴＥＳＴＳＥＴ命令とＭＦＶＰ、ＭＴＶＰ、ＭＦＥＲ、ＭＴＥＲ命令のようなコプロセッサレジスタ転送を含んでいる。
【００１５】
ＭＰＥＧデコーディング動作の効率的な動作は、各プロセッサ形態の利点を利用するため、スカラープロセッサ２０４とベクトルプロセッサ２０６間のオーディオデコーディング動作を分担することにより効果的に行われる。図５はＭＰＥＧオーディオデコーディング６１０の処理を説明するフローチャートである。スカラープロセッサ２０４はフレーム同期化（６１２）動作を包含しながらＭＰＥＧオーディオデコーダのビット操作、索引指定、および条件動作を伴う動作と、ヘッダ情報（６１４）の抽出を行いながらＭＰＥＧ信号ストリームからの情報を抽出する動作と、スケールファクタ選択情報並びにスケールファクタ６１８の抽出動作と、サンプルデータ６２０の抽出動作と、を行うためのものである。また、スカラープロセッサ２０４はサンプルデータを再量子化する動作（６２２）を実行するように割り当てられる。ベクトルプロセッサ２０６は、ベクトルプロセッサに適合し且つ大きい計算ロード要求条件を有するサブバンドフィルタリング６２４の実行を行うＭＰＥＧデータストリーム上で動作するマルチプルデータ計算を行うように割り当てられる。
【００１６】
スカラープロセッサ２０４はフレーム同期化動作とヘッダ情報およびビット割当ビットの抽出を行う。ビットストリームから６ビットのコード化されたスケールファクタを抽出する時、スカラープロセッサ２０４はコード化されたサンプルの読み出しを開始する。フレーム同期化６１２動作はオーディオプロセッサ２０５に入力されるビットストリームに同期化させる。オーディオデコーディングプロセスの開始時、フレーム同期化６１２は典型的に１２ビット同期ワード用ビットストリームをサーチすることにより行われる。ヘッダ情報の抽出６１４はＩＤ、レイヤー(layer) 、および保護ステータス情報を具備したヘッダ情報をアクセスする。若しヘッダ情報が予め知られていると、ヘッダ情報の抽出６１４のルーチンは一層信頼性のある同期化用１６ビット同期ワードに使用されるように一番目１６ビットのヘッダをアクセスする。ビット割当ビットの抽出６１６の動作は典型的に複数のマルチプルビット割当テーブルのエントリをアクセスする。規定されたエントリはビットストリーム信号のビット率とサンプリング周波数に基づき選択される。
【００１７】
ビット割当テーブルのデコーディングは次の３段階により行われる。（１）サブバンドのサンプルに割り当てられたビット数を指定する"nb"値が読み出され、ビット割当テーブルの第２コラムに位置される。（２）第１段階でアクセスされた数と現在サブバンド数はサブバンドのサンプルを量子化するために使用されたレベルの数を示すテーブル値を指定するため使用される。（３）量子化分類のテーブルを用いて量子化されたサンプルをコード化するために使用されたビット数と再量子化係数が決定される。また、これら３段階で３つの連続したサブバンドサンプル用コードが１つのコードにグループ化されたかどうかを決定する。若干高いサブバンドは割り当てられたビットを決して持っていない。割り当てられたビットが無い最低のサブバンドの数は識別字“sblimit"に割り当てられる。
【００１８】
スケールファクタ選択情報の抽出とスケールファクタ６１８の動作は、ノンゼロ(nonzero) ビット割当をもつサブバンド用ビットストリームからスケールファクタ情報を読み出す。１つのサブバンドは１つのフレーム内に３６サンプルを含んでいる。１つのサブバンド内の３６サンプルは１２サブバンドサンプルの３つの同様な部分に分割される。スケールファクタ情報は伝送されるスケールファクタの数を示す。ノンゼロビット割当のある各サブバンドに対し、サブバンド用コード化されたスケールファクタがビットストリームからアクセスされて読み出される。スケールファクタ情報は６ビットにコード化され、符号のない整数索引をスケールファクタテーブルに指定する。スケールファクタテーブルは、再量子化された後に多重化されたサブバンドサンプルによるスケールファクタを提供する。
【００１９】
サンプルデータを再量子化する動作６２２において、コード化されたサンプルはビットストリームから読み出される。コード化されたサンプルは同時にコードが３つの連続的なサンプルを含む“トリプレット”の形態である。“量子化分類”の情報を記憶するテーブルは各サブバンド用ビットストリームから１つのトリプレットのために読み出されるビット数を示す。テーブルはまた、コードが３つの連続的な個別コードを含んでいるか、または３サンプルからなる１つのグループ用の結合されたコードを含んでいるかを示す。３サンプルからなったグループを指定するコードの場合、結合されたコードは符号化されない整数（ｃ）に見なされ、アルゴリズムは次のような３個の個別コードｓ〔０〕、ｓ〔１〕、ｓ〔２〕を提供する。
【００２０】
【表１】
0003706230.tif 000002
【００２１】
ここで、nlevels はＭＰＥＧテーブルＢ. ２“レイヤーIIビット割当テーブル”のステップ数である。
コード化されたサンプルはコードが同時に３つの連続的なサンプルを包含するトリプレットに配列される。トリプレットの３サンプルは解除(degroup) され、解除動作後再量子化されたデータは次のような基準ＭＰＥＧ線形公式（数１）を適用して得られる。
【００２２】
【数１】
0003706230.tif 000003
【００２３】
ここで、ｓ''' は小数の数で、ｓ''は再量子化された値で、ｎｂはサブバンドのサンプルに割り当てられたビットの数である。
サンプルデータ再量子化６２２の動作は、ＭＰＥＧオーディオデコーダにより行われる最も計算力を必要とする動作の１つである。サンプルデータの再量子化を行う技術は次の“Ｃ”言語のプログラムコードにより説明される。プログラムコードの実例を示すと、sbはサブバンドを指定し、bound は強烈にステレオコーディングを用いる最低のサブバンドで、sblimit はステレオコーディング（ＭＰＥＧ国際規格、PartIII, Table B. 2a-Table B.2d を参照）を使用する最低のサブバンドで、nbは各サブバンドに割り当てられたビット数で、スケールファクタ［ch］［sb］［z ］はスケールファクタ係数索引である（ＭＰＥＧ国際規格、PartIII,Tabl B.1) 。
【００２４】
フレーム内の１つのサブバンドの３６サンプルは、１２サブバンドサンプルの３つの同じような部分に分割される。各部分は個別的なスケールファクタを持っている。したがって、３つのスケールファクタがある索引（Ｚ）は、グループ（ｇｒ）の反復数に依存する０，１, または２, の因数があることを示している。数Ｚは次のように定義される。グループｇｒが４以下である場合Ｚは０となるように定義される。ｇｒが４〜８までの領域にある場合は１となる。そうではないと、Ｚは２となる。Ｃ２［nb］とＤ２［nb］は量子化係数ＣとＤのレイヤーII分類を指定し（ＭＰＥＧ  PartIII, Table B.4参照）、サンプル［ｓ］［ch］［sb］は解除されたオーディオサンプルデータの配列であり、デサンプル［ｓ］［ch］［sb］は再量子化されたオーディオサンプルデータの配列である。以下に示すプログラムコードは、後に再量子化処理の具体例を検討して修正を行うためのプログラムコードの印である［NOTEn ］のマークをいくつか含んでいる。オーディオデコーディング動作の再量子化動作用プログラムコードは下記のテーブルＩに示されている。
【００２５】
【表２】
0003706230.tif 000004
【００２６】
【表３】
0003706230.tif 000005
【００２７】
テーブルＩに例示されたオーディオデコーダプログラムコードは３サンプルのグループのデータのための再量子化計算を行う。グループの３つのサンプルは３２サブバンドの同一サブバンドに含まれる。テーブルＩで説明されたオーディオデコーダプログラムコードのオーディオサンプル再量子化動作はスカラープロセッサ２０４で行われるが、これは再量子化動作がスカラー形プロセッサにより効率的に行われる索引動作および条件動作を包含するためである。さらに、量子化係数ＣとＤのレイヤーII分類は各サブバンド（パラメータｎｂ）に割り当てられたビット数に従い決定されるため、順次的なデータとして利用不可能になる。
【００２８】
付加的な改良はオーディオデコーディングで得られる。大部分の再量子化動作は、オーディオデコーダプログラムコードの多様な命令の適切な変更によってベクトルプロセッサ２０６上で有利に処理される。このような変更は通常非順次的な形態のデータをベクトル化処理で順次的な形態のデータに変形する。
【００２９】
１つの変更がテーブルＩに示されたプログラムコードの［NOTE1 ］位置に入る。表現factor=sf ［scalefactor ［Z ］［ch］［sb］は、Ｚがグループの数、ｃｈがチャンネル数、ｓｂがサブバンド数をそれぞれ示すスケールファクタ索引を表す。オーディオデコーディング動作のベクトル化された実施の形態で、スケールファクタ索引はスケールファクタ選択情報およびスケールファクタを抽出するステップ６１８でビットストリームから抽出される。複数個のスケールファクタ係数はスケールファクタ索引に基づいて直接計算され、スケールファクタ選択情報およびスケールファクタを抽出するステップ６１８の間アレイスケールファクタ［Z ］［ch］［sb］に位置される。テーブルIIＡは再量子化ステップ６２２の以前にスカラープロセッサ２０４により行われるスケールファクタ選択情報およびスケールファクタ抽出（６１８）を行う段階での演算用プログラムコードを説明する。
【００３０】
【表４】
0003706230.tif 000006
【００３１】
ここで、ｍａｐはビットストリームからのスケールファクタ索引で、ＢＩＴＭＡＰはビットストリームファイルの６ビット行先で、ｓｆ［  ］は６３要素スケールファクタ係数アレイである。スケールファクタ選択情報およびスケールファクタを抽出するステップ６１８の間、テーブルIIＡの命令実行はアレイスケールファクタ［z ］［ch］［sb］のデータをビット索引動作よりはサブバンド数に依存する順次データに変形することである。
【００３２】
他の変更がテーブルＩで例示されたプログラムコードの［NOTE2 ］の位置に入る。表現Ｃ＝Ｃ２［nb］とＤ＝Ｄ２［nb］はすべての反復で計算される量子化係数を指定するが、各サブバンドに共通である。テーブルIIＢは、スケールファクタ選択情報を抽出するステップとスケールファクタ６１８を含むプログラムコードを説明している。このスケールファクタ６１８は、再量子化ステップ６２２の前にスカラープロセッサ２０４によって実行される。テーブルIIＢに示したプログラムコードは各１つのフレーム再現の間一度だけ行われる。各アレイでのデータはチャンネル索引とサブバンド数に対応する排他的な順次データになる。データは、テーブルIIＢに示したプログラムコードの実行が完了された後、ビット割当の索引にはもはや関係しない。
【００３３】
【表５】
0003706230.tif 000007
【００３４】
ここで、Ｑ［ch］［sb］はマスク機能で、Ｃ［ch］［sb］とＤ［ch］［sb］は再量子化係数データを維持する配列である。
また、他の変更がテーブルＩで例示されたプログラムコードの［NOTE3 ］の位置に入る。小数部計算のための式は、０．０または−１．０のいずれかの“少数部”の設定を含み、それからサンプルデータを抽出するステップ６２０の式によって決定される“小数部”は以下の通りである：
【００３５】
【表６】
0003706230.tif 000008
【００３６】
【表７】
0003706230.tif 000009
【００３７】
多くの有利な変更がテーブルＩに示したオーディオデコーダプログラムコードに作られる。たとえば、サンプルデータを抽出するステップ６２０で下記の割り算の演算はテーブルIIＣに示したプログラムコードで無効になる。
【００３８】
【表８】
0003706230.tif 000010
【００３９】
変更された再量子化演算において、sample［s ］［ch］［sb］は、スカラープロセッサ２０４により実行された再同期化ステップの間、１Ｌ<<(nb-1)(=Q ［ch］［sb］) により除算されない。その代わりに、割り算はベクトルプロセッサ２０６によりサブバンドフィルタリングステップ６２４で行われる。
【００４０】
テーブルIII に示したプログラムコード演算は合成サブバンドフィルタリングステップ６２４以前に付加され、配列Ｃ［ch］［sb］, Ｄ［ch］［sb］のすべての量子化係数データ、スケールファクタ［s ］［ch］［sb］およびＱ［ch］［sb］のマスキングデータのすべてが非順次データから順次データに変形されるので、大部分の再量子化動作はベクトルプロセッサ２０６で効果的に実行される。
【００４１】
【表９】
0003706230.tif 000011
【００４２】
ここでｓはグループの数である。
サブバンドフィルタリング６２４の動作はベクトルプロセッサ２０６で実行される。特別なサブバンドに任意のビットが割り当てられないと、サブバンドフィルタリング６２４の動作はサブバンドのサンプルをゼロに設定する。１つのサブバンドの全３２チャンネルの各計算において、サンプリング値は合成サブバンドフィルタに提供され、３２個の連続的なオーディオサンプルは図７のフローチャートにより説明される方法を用いて計算される。マトリックシング動作用Ｎikは下記の式により与えられる。
【００４３】
【数２】
0003706230.tif 000012
【００４４】
ウインドウ動作用係数Ｄi はＭＰＥＧ国際規格の“合成ウインドウ係数Ｄi ”テーブルにより定義される。
【００４５】
図２を参照すると、ベクトルプロセッサ２０６はマルチメディア信号プロセッサ１０４のデジタル信号処理エンジンである。ベクトルプロセッサ２０６は単一命令マルチプルデータアーキテクチャーを備え、離散コサイン変換(DCT, Discrete Cosine Transforms) ，ＦＩＲフィルタリング、畳み込み(convolution) 、動画推定、および他の処理動作のような信号処理機能を並列に実行するためにマルチプルデータ要素上で動作するパイプラインのＲＩＳＣエンジンを具備する。ベクトルプロセッサ２０６はベクトル処理と同様に、複数個のベクトル実行ユニットによりマルチプルデータ要素が並列に動作されるベクトル演算を支援する。ベクトルプロセッサ２０６はスカラー演算および結合されたベクトル−スカラー演算の全てを実行する。ベクトルプロセッサ２０６の多重データ要素は、１サイクル当たり（例えば12.5ns) 、３２の割合で８／９ビットの固定小数点演算処理、１６の割合で１６ビット固定小数点演算処理、または８の割合で３２ビット固定小数点演算処理または浮動小数点演算処理が計算される５７６ビットベクトルにまとめられる。３２ビットスカラー演算の大部分は１サイクル当たり１命令速度でパイプラインされ、一方５７６ビットベクトル演算の大部分は２サイクル内で１命令速度でパイプラインされる。ロードおよび記憶動作は算術動作と並行され、別のロードおよび記憶回路により独立的に実行される。
【００４６】
図７を参照すると、ベクトルプロセッサ２０６は命令フェッチ(fetch) ユニット５０２、命令デコーダと発行者(issuer ）５０４、命令実行データパス５０６、およびロードと記憶ユニット５０８の４つの機能ブロックを有する。命令フェッチユニット５０２および命令デコーダと発行者５０４はベクトルプロセッサ２０６内に包含され、ベクトルプロセッサ２０６をスカラープロセッサ２０４と独立的に動作する。
【００４７】
命令フェッチユニット５０２は命令をプリフェッチしてサブルーチン命令へのブランチ(branch)およびジャンプ(jump)のような制御フロー命令を処理する。命令フェッチユニット５０２は現在実行ストリーム用プリフェッチされた命令の１６−エントリキュー(Queue) とブランチターゲットストリーム用プリフェッチされた命令の８−エントリキューを包含する。命令フェッチユニット５０２は１サイクル内で命令キャッシュから８個の命令まで受ける。命令デコーダと発行者５０４はベクトルプロセッサ２０６により実行された全ての命令をデコーディングしてスケージュリングする(schedule)。デコーダは命令フェッチユニット５０２から受付の順番通り１サイクル内で１命令を処理する反面、発行者は実行資源および被演算者データ使用可能度(availability)の全てに依存する無秩序的な大部分の命令をスケージュリングする。
【００４８】
図８を参照すると、命令実行データパス５０６は４端子レジスタファイル６０２、８つの32×32並列乗算器６０４、および８つの36ビットＡＬＵ６０６を備える。レジスタファイル６０２はサイクル当たり２度の読み出し動作および２度の書き込み動作を支援する。並列乗算器６０４はサイクル当たり整数または浮動小数点フォーマットで８つの32ビット積算、１６の16ビット乗算または３２の８ビット乗算を行う。ＡＬＵ６０６は、サイクル当たり（例えば12.5ns）整数または浮動小数点フォーマットに８の36ビットＡＬＵ演算、１６の16ビットＡＬＵ演算または３２の８ビットＡＬＵ演算の中の一つを実行する。
【００４９】
レジスタファイル６０２は複数個の専用レジスタと複数個のリターンアドレスレジスタを備える。専用レジスタはベクトル制御とステータスレジスタＶＣＳＲ、ベクトルプログラムカウンター、ベクトル例外プログラムカウンターＶＥＰＣ、ベクトル割り込みソースレジスタＶＩＳＲＣ、そしてベクトルとスケールプロセッサ同期レジスタＶＡＳＹＮＣと多様なカウンタ、マスク、オーバーフローおよびブレークポイントレジスタのような他のレジスタを具備する。ベクトルプログラムカウンターＶＰＣはベクトルプロセッサ２０６により実行されるべき次の命令のアドレスである。
【００５０】
図９は、コプロセッサインタフェース２４２の概略ブロック図である。コプロセッサインタフェース２４２は、スカラープロセッサ２０４の機能性を補足してスカラープロセッサ２０４の命令セットを拡張する命令を行うためのレジスタとロジック機能を付加する。コプロセッサインタフェース２４２はスカラープロセッサ２０４とベクトルプロセッサ２０６間の通信のためのレジスタを含み、また、他のクロック速度で動作する構造間のデータとの信号通信のためのバッファとして役割を行う。一実施の形態でスカラープロセッサ２０４は４０ＭＨｚ速度で動作し、ベクトルプロセッサ２０６は８０ＭＨｚで実行する。
【００５１】
コプロセッサインタフェース２４２は、デコーダ７０２、スタートマシン７０４、特権拡張レジスタブロック７０６、および使用者拡張レジスタブロック７０８を具備する。特権拡張レジスタブロック７０６と使用者拡張レジスタブロック７０８内のレジスタは、スカラープロセッサ２０４およびベクトルプロセッサ２０６により読み出しおよび書き込みが可能である。デコーダ７０２はスカラープロセッサの命令をデコードする。スカラープロセッサ命令セットは、スカラープロセッサ２０４上で実行可能な命令と、スカラープロセッサにより実行することはできないがその代わりに特殊なコプロセッサ機能で処理するコプロセッサインタフェース２４２により実行される命令を含んでいる。デコーダ７０２はスカラープロセッサ命令をデコードし拡張された命令を検出して実行のためのステートマシン７０４に検出された拡張命令を提供する。ステートマシン７０４は拡張命令を行うためのロジックを具備する。特権拡張レジスタブロック７０６はスカラープロセッサ２０４による特殊命令の実行の間アクセスされる拡張レジスタである。
【００５２】
図２を参照すると、キャッシュサブシステム２０８はデータキャッシュ２１４（例えば５ＫＢ）、命令キャッシュ２１６（例えば２ＫＢ）、およびキャッシュＲＯＭ２１８（例えば１６ＫＢ）を具備し、典型的にベクトルプロセッサ２０６（８０ＭＨｚ）と同様な速度で動作する。一実施の形態でキャッシュサブシステム２０８はスカラープロセッサ２０４用１Kbyte の命令記憶領域と１Kbyte のデータ記憶領域、ベクトルプロセッサ２０６用１Kbyte の命令記憶領域と４Kbyte のデータ記憶領域、そしてスカラープロセッサ２０４およびベクトルプロセッサ２０６の共用の１６Kbyte 統合命令とデータキャッシュＲＯＭを具備する。また、キャッシュサブシステム２０８は３２ビットデータバスを通してスカラープロセッサ２０４とインタフェースし、１２８ビットデータバスを通してベクトルプロセッサ２０６とインタフェースする。キャッシュＲＯＭ２１８はｕＲＯＭ初期化ソフトウェア、自己診断ソフトウェア、多様なシステム管理ソフトウェア、ライブラリルーチン、および選択された命令とデータ常数用キャッシュを具備する。特に、キャッシュＲＯＭ２１８は命令例外のハンドラーとスカラープロセッサ２０４用入出力デバイス割り込みハンドラー０，１，２，３を具備する。キャッシュＲＯＭ２１８はベクトルプロセッサ割り込みハンドラーとスカラープロセッサ２０４で実行するベクトルプロセッサブレークポイント例外ハンドラーを具備する。
【００５３】
ＦＢＵＳ２１０は例えば３２ビットＰＣＩバスインタフェース２２０、６４ビットＳＤＲＡＭメモリコントローラ２２２、８チャンネルＤＭＡコントローラ２２４、カスタマＡＳＩＣロジックブロック２２６、およびメモリデータムーバ２２８を具備したＦＢＵＳ周辺装置とインタフェースする。ＰＣＩバスインタフェース２２０はシステムバス１０６とインタフェースし、例えば３３ＭＨｚで動作する。カスタマＡＳＩＣロジックブロック２２６は所望の注文機能を行うためにロジックブロックを提供する。カスタマＡＳＩＣロジックブロック２２６は一実施の形態で多様なアナログコーデック(CODEC) およびカスタマ特殊ムーバＩ／Ｏ素子に対するインタフェースを具備した１０Ｋゲートを供給する。メモリデータムーバ２２８は、ホストプロセッサ１０２からのＤＭＡデータを、マルチメディア信号プロセッサ１０４にローカルされるＳＤＲＡＭメモリ２３０に伝送する。
【００５４】
Ｉ／Ｏバス２１２は例えばビットストリームプロセッサ２３２、ＵＡＲＴ直列ライン２３４、タイマー回路２３６、割り込みコントローラ２３８、および特殊レジスタ２４０を具備した複数個のＩ／Ｏバス素子とインタフェースする。ビットストリームプロセッサ２３２はビデオビットストリームを処理する。特殊レジスタ２４０はソフトウェア的に制御された初期化および割り込み処理のために使用される。
【００５５】
図１０は、マルチメディア信号プロセッサ１０４上で実行するＭＳＰシステムコンポーネントソフトウェア８０２とホストプロセッサ１０２上で実行するＰＣアプリケーションおよびオペレーティングソフトウェア８０８とを具備したソフトウェアおよびファームウェアアーキテクチャ８００を示す。マルチメディア信号プロセッサ１０４はベクトルプロセッサ２０６上で実行するベクトル化されたＤＳＰファームウェアライブラリ８０４とスカラープロセッサ２０４上で実行されるシステム管理機能ブロック８０６とを包含するファームウェアにより制御される。ベクトル化されたＤＳＰはファームウェアライブラリ８０４およびシステム管理機能ブロック８０６はＭＳＰシステムコンポーネントソフトウェア８０２内に包含される。アーキテクチャ８００はホストアプリケーション制御動作から信号処理機能を分離させることによりソフトウェア開発を単純化し、ソフトウェアデザイン管理を改善させ、アプリケーション開発および維持費を減少させる。
【００５６】
ＭＳＰシステムコンポーネントソフトウェア８０２は排他的にスカラープロセッサ２０４上で実行し、ＭＳＰリアルタイムカーネル８１０、マルチメディアライブラリモジュール８１２、システム管理機能ブロック８０６およびベクトル化されたＤＳＰのファームウェアライブラリ８０４を含んでいる。ＭＳＰリアルタイムカーネル８１０は、ホストプロセッサ１０２、資源管理、Ｉ／Ｏ装置ハンドリング、そして大部分の割り込みおよび例外処理に対するインタフェースを主に担当する。ＭＳＰリアルタイムカーネル８１０は、ホストプロセッサ１０２で実行するＷｉｎｄｏｗｓTMおよびＷｉｎｄｏｗｓ  ＮＴTMのソフトウェアのインタフェースを備えている。ＭＳＰリアルタイムカーネル８１０はホストプロセッサ１０２から選択されたアプリケーションファームウェアを選択しダウンロードするためのソフトウェア、スカラープロセッサ２０４およびベクトルプロセッサ２０６の実行のためのタスクをスケージュリングのためのソフトウェア、そしてメモリおよびＩ／Ｏ装置を具備したマルチメディア信号プロセッサ１０４のシステム資源を管理するためのソフトウェアを包含する。ＭＳＰリアルタイムカーネル８１０はマルチメディア信号プロセッサ１０４のタスク間通信を同期化させるためのソフトウェアとＭＳＰに関連した割り込み、例外およびステータス条件を報告するためのソフトウェアを具備する。
【００５７】
ベクトル化されたＤＳＰファームウェアライブラリ８０４は実質的に全てのデジタル信号処理機能を実行する。ベクトル化されたＤＳＰファームウェアライブラリ８０４はまた、スカラープロセッサ２０４によりベクトルプロセッサ２０６に提起されるコプロセッサ割り込み、またはベクトルプロセッサ２０６内で発生されたハードウェアスタックオーバーフロー例外のような規定された特殊割り込みを制御する。
【００５８】
マルチメディアライブラリのモジュール８１２はデータ通信、ＭＰＥＧビデオおよびオーディオ、音声コーディングおよび合成、サウンドブラスタ (soundblasterTM）と互換性のあるオーディオを具備した通信ハンドリング機能を実行する。ＭＳＰリアルタイムカーネル８１０は、マルチメディア信号プロセッサ１０４上で実行されるマルチメディアアプリケーションを用いた拡張を具備したリアルタイム、ロバスト(robust)、マルチタスク、強制(pre-emptive) オペレーティングシステムである。
【００５９】
ホストプロセッサ１０２内で実行するＰＣアプリケーションおよびオペレーティングシステムソフトウェア８０８は、システムバス１０６を介してＭＳＰ制御およびステータスレジスタを書き込みおよび読み出しを行うことでマルチメディア信号プロセッサ１０４を制御する。そして、共用データに書き込むことで、システムメモリ１１６に常駐したり、マルチメディア信号プロセッサ１０４に常駐する構造となる。
【００６０】
ＭＳＰプログラム実行は第１実行ストリームを実行するスカラープロセッサ２０４から始まる。スカラープロセッサ２０４はベクトルプロセッサ２０６内の第２独立実行ストリームを初期化させる。スカラープロセッサ２０４とベクトルプロセッサ２０６の動作はスカラープロセッサ２０４内で動作するＳＴＡＲＴＶＰ、ＩＮＴＶＰ、およびＴＥＳＴＶＰ命令を包含した特殊コプロセッサ命令と、ベクトルプロセッサ２０６内で実行するＶＪＯＩＮおよびＶＩＮＴ割り込みを包含した特殊命令を通して同期化される。スカラープロセッサ２０４とベクトルプロセッサ２０６間のデータ伝送はスカラープロセッサ２０４内で実行されたデータ移動命令を用いて実行される。
【００６１】
【発明の効果】
以上、詳細に説明したように本発明に係るＭＰＥＧオーディオデコーディング装置およびそのデコーディング方法では、２つのプロセッサを並列に効率的に用いてデコーディング性能を向上させる。オーディオデコーダは条件命令とスカラーベクトルを用いて非順次上で動作する命令を効率的に実行し、非順次データを順次形態に変換することで、多くの処理をベクトルプロセッサの計算力を利用できるようにする。
【００６２】
本発明を特定の好ましい実施の形態を図面を用いて説明したが、以下の特許請求の範囲に基づく本発明の精神および内容を逸脱しない範囲での当業者による変形および修正は本発明の範疇に含まれる。例えば、本実施の形態では、ペンティアムプロセッサを用いたホストコンピュータと特別なマルチメディアプロセッサを具備したマルチプロセッサシステムを用いるシステムとして説明したが、本発明は特にこれに限定されるものではなく別のプロセッサ構造でも適用可能である。
【図面の簡単な説明】
【図１】本発明の実施の形態に係るマルチメディアマルチプロセッサを示す高水準の概略的ブロック図である。
【図２】図１に示したマルチメディアマルチプロセッサシステムに包含されたマルチメディア信号プロセッサを示す概略的なブロック図である。
【図３】マルチメディアマルチプロセッサシステムのスカラープロセッサを示す概略的なブロック図である。
【図４】スカラープロセッサの機能図である。
【図５】ＭＰＥＧオーディオデコーディングを遂行するための方法の動作を説明するためのフローチャートである。
【図６】サブバンドフィルタリングを行うに適合した方法の動作を説明するための動作を説明するフローチャートである。
【図７】図２のマルチメディア信号プロセッサのベクトルプロセッサを示す概略ブロック図である。
【図８】図７のベクトルプロセッサのベクトルプロセッサ実行データパスを示す概略的なブロック図である。
【図９】図２のマルチメディア信号プロセッサのコプロセッサインタフェースを示す概略的ブロック図である。
【図１０】マルチメディア信号プロセッサのファームウェアアーキテクチャを説明するための概略的ブロック図である。
【図１１】従来のＭＰＥＧオーディオデータストリームをデコーディングするための順番を示すフローチャートである。
【符号の説明】
１００：マルチメディアマルチプロセッサシステム
１０２：ホストコンピュータ
１０４：マルチメディア信号プロセッサ
１０６：システムバス（ＰＣＩバス）
１０８：通信ＣＯＤＥＣ
１１０：ビデオA/D コンバータ
１１２：ビデオD/A コンバータ
１１４：フレームバッファＳＤＲＡＭバッファ
２０２：ＤＳＰコア
２０４：ＲＩＳＣ制御プロセッサ
２０６：ベクトルコプロセッサ
２０８：キャッシュサブシステム
２１０：高速バス（ＦＢＵＳ）
２１２：ＩＯバス
２２０：ＰＣＩバスインタフェース
２２２：メモリコントローラ
２２４：ＤＭＡコントローラ
３０２：命令ロジックおよび制御ロジック
３０４：書き込みデータレジスタ
３０６：命令パイプおよび書き込みデータレジスタ
３０８：アドレスレジスタ
３１０：アドレス増分器
３１２：レジスタバンク
３１４：３２ビットＡＬＵ
３１６：バレルシフト
３１６，６０４：乗算器
５０２：命令フェッチユニット
５０４，６０４：命令デコーダおよび発行者
５０６：実行データバス
５０８：ロードおよび記憶ユニット
６０２：レジスタファイル
７０２：デコーダ
７０４：ステートマシン
７０６：特権拡張レジスタ
７０８：使用者拡張レジスタ
【図１】
0003706230.tif 000013
【図２】
0003706230.tif 000014
【図３】
0003706230.tif 000015
【図４】
0003706230.tif 000016
【図５】
0003706230.tif 000017
【図６】
0003706230.tif 000018
【図７】
0003706230.tif 000019
【図８】
0003706230.tif 000020
【図９】
0003706230.tif 000021
【図１０】
0003706230.tif 000022
【図１１】
0003706230.tif 000023