JP3706230B2 - MPEG audio decoding apparatus and decoding method thereof - Google Patents
MPEG audio decoding apparatus and decoding method thereof Download PDFInfo
- Publication number
- JP3706230B2 JP3706230B2 JP28721797A JP28721797A JP3706230B2 JP 3706230 B2 JP3706230 B2 JP 3706230B2 JP 28721797 A JP28721797 A JP 28721797A JP 28721797 A JP28721797 A JP 28721797A JP 3706230 B2 JP3706230 B2 JP 3706230B2
- Authority
- JP
- Japan
- Prior art keywords
- program code
- processor
- scale factor
- data
- sample data
- 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.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title claims description 31
- 239000013598 vector Substances 0.000 claims abstract description 93
- 238000003491 array Methods 0.000 claims description 13
- 238000013139 quantization Methods 0.000 claims description 13
- 238000001914 filtration Methods 0.000 claims description 8
- 230000000873 masking effect Effects 0.000 claims description 4
- 238000005070 sampling Methods 0.000 claims description 4
- 239000000284 extract Substances 0.000 claims description 3
- YGSDEFSMJLZEOE-UHFFFAOYSA-M salicylate Chemical compound OC1=CC=CC=C1C([O-])=O YGSDEFSMJLZEOE-UHFFFAOYSA-M 0.000 claims 2
- 229960001860 salicylate Drugs 0.000 claims 2
- 235000017304 Ruaghas Nutrition 0.000 claims 1
- 241000554738 Rusa Species 0.000 claims 1
- 238000004364 calculation method Methods 0.000 abstract description 10
- 238000006243 chemical reaction Methods 0.000 abstract 1
- 238000012545 processing Methods 0.000 description 18
- 230000006870 function Effects 0.000 description 12
- 238000010586 diagram Methods 0.000 description 9
- 238000004891 communication Methods 0.000 description 8
- 238000000605 extraction Methods 0.000 description 8
- 230000008569 process Effects 0.000 description 7
- 238000007726 management method Methods 0.000 description 6
- 230000008859 change Effects 0.000 description 4
- 230000014509 gene expression Effects 0.000 description 4
- 230000015572 biosynthetic process Effects 0.000 description 3
- 238000003786 synthesis reaction Methods 0.000 description 3
- 238000013500 data storage Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000007667 floating Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 101000969688 Homo sapiens Macrophage-expressed gene 1 protein Proteins 0.000 description 1
- 102100021285 Macrophage-expressed gene 1 protein Human genes 0.000 description 1
- METKIMKYRPQLGS-UHFFFAOYSA-N atenolol Chemical compound CC(C)NCC(O)COC1=CC=C(CC(N)=O)C=C1 METKIMKYRPQLGS-UHFFFAOYSA-N 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000011017 operating method Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 230000002194 synthesizing effect Effects 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/02—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
- G10L19/032—Quantisation or dequantisation of spectral components
- G10L19/038—Vector quantisation, e.g. TwinVQ audio
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04B—TRANSMISSION
- H04B1/00—Details of transmission systems, not covered by a single one of groups H04B3/00 - H04B13/00; Details of transmission systems not characterised by the medium used for transmission
- H04B1/66—Details of transmission systems, not covered by a single one of groups H04B3/00 - H04B13/00; Details of transmission systems not characterised by the medium used for transmission for reducing bandwidth of signals; for improving efficiency of transmission
- H04B1/665—Details of transmission systems, not covered by a single one of groups H04B3/00 - H04B13/00; Details of transmission systems not characterised by the medium used for transmission for reducing bandwidth of signals; for improving efficiency of transmission using psychoacoustic properties of the ear, e.g. masking effect
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/04—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
- G10L19/16—Vocoder architecture
- G10L19/167—Audio streaming, i.e. formatting and decoding of an encoded audio signal representation into a data stream for transmission or storage purposes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/233—Processing of audio elementary streams
- H04N21/2335—Processing of audio elementary streams involving reformatting operations of audio signals, e.g. by converting from one coding standard to another
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- Multimedia (AREA)
- Computational Linguistics (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Health & Medical Sciences (AREA)
- Acoustics & Sound (AREA)
- Computer Networks & Wireless Communication (AREA)
- Spectroscopy & Molecular Physics (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Complex Calculations (AREA)
Abstract
Description
【0001】
【発明の属する技術分野】
本発明は、MPEG規格におけるオーディオデコーディング装置およびその方法に係るもので、詳しくはスカラーベクトルおよびベクトルプロセッサを具備したマルチプルプロセッサマルチメディアシステムで使用できるオーディオデコーディング装置およびそのデコーディング方法に関する。
【0002】
【従来の技術】
オーディオ録音、記憶、再生のような録音媒体、装置、および多様データ・ハンドリング方向の規格化は、このテクノロジーとアプリケーションの継続的な成長の上で非常に好ましいことである。ビデオ情報を圧縮および解凍するために広用される圧縮規格は、オーディオとビデオのエンコーディングおよびデコーディング用MPEG(Moving Picture Expert Group)規格である。このMPEG規格は国際規格ISO/IEC11172-1 、“情報技術−約1.5Mbit/sまでのデジタル記憶媒体の動画および関連オーディオのコーディング”、第1版、part1, part2, part3, 1993. 08. 1に定義されている(以下、MPEG国際規格と称する)。
【0003】
このMPEG国際規格は、時間情報を含むオーディオおよびビデオソースから単一の情報ストリームを形成する、1つまたはそれ以上のデータストリームを結合する問題を扱う。一般に、大量の情報データストリームはMPEGプロセッシングシステムにより処理される。プロセッサの計算能力は安定且つ急速に進歩しているが、高い処理能力や計算能力の要求は、かつて無いような大量データの表示および処理を必要とするマルチメディア分野の積極的な新しいアプリケーションの発展を損なわないために依然としてある。
【0004】
MPEG国際規格は図11に示したようなオーディオデコーディングプロセッサを定義する。オーディオデコーディングプロセッサ10は、エンコードされたビットストリームを入力するステップS12、ビット割当ビットをデコーディングするステップS14、スケールファクタ選択情報をデコーディングするステップS16、サンプルデータを再量子化するステップS18、サブバンドフィルタを合成するステップS20、およびパルスコード変調(PCM)されたサンプルを出力するステップS22を順次行う。この場合、サンプルデータの再量子化ステップS18の動作は、MPEGオーディオデコーダにより実行される最も激しい計算が行われるオペレーションの1つである。
【0005】
【発明が解決しようとする課題】
このようなサンプルデータの再量子化のような計算処理のために、MPEG国際規格の下ではオーディオデコーディングをより効率的に行う装置および技術が必要とされている。特に、オーディオデコーダでサンプルデータの再量子化をより効率的に行う装置および技術が必要とされている。
【0006】
本発明の目的は、非順次データを順次形態に変換して計算速度性を改善し、スカラーベクトルおよびベクトルプロセッサを具備したマルチプルプロセッサマルチメディアシステムで使用できるオーディオデコーディング装置およびその方法を提供しようとするものである。
【0007】
【課題を解決するための手段】
本発明によれば、スカラープロセッサおよびベクトルプロセッサを備えたマルチプロセッサマルチメディアシステムのオーディオデコーダは、スカラープロセッサ上で実行するフレーム同期化プログラムコードと、スカラープロセッサ上で実行するMPEGオーディオビットストリームから情報を抽出するための情報抽出プログラムコードと、スカラープロセッサ上で実行する非順次サンプルデータを順次サンプルデータに変換するベクトル化プログラムコードと、ベクトルプロセッサ上で実行するためのサンプルデータを再量子化するプログラムコードと、ベクトルプロセッサ上で実行するためのサブバンドフィルタリングプログラムコードとを有する。
【0008】
本発明に係るマルチメディアプロセッサのオーディオデコーダは、スカラープロセッサおよびベクトルプロセッサを具備したマルチプル並列プロセッサを使用してデコーディング効率および性能を向上させる。スカラープロセッサはビット操作、索引指定、および条件演算を含むタスクを最も効率的に行う。ベクトルプロセッサは、無制限の演算や連続的に発生する多重データ計算を含む演算を最も効果的に実行する。データが連続的なデータである限り、スカラープロセッサよりもベクトルプロセッサ上で出来るだけ多数の演算を行うことにより改善された性能が得られる。オーディオデコーダは、非連続データを連続データに変換させてデータを“ベクトル化”することにより、データハンドリングの動作をスカラープロセッサからベクトルプロセッサに移行させる再量子化プログラムコードを備える。
【0009】
このようなオーディオデコーダシステムおよびその方法により多くの利点が得られる。オーディオデコーダは2つのプロセッサを並列に用いることでデコーディング性能の向上を図っている。オーディオデコーダは条件命令およびスカラーベクトルを用いる非連続データ上で動作する命令を容易に実行し、ベクトルプロセッサを用いる配列や連続データ上で動作する命令を実行する。オーディオデコーダは、ベクトルプロセッサの計算能力をより活用するために、非連続データを連続形態に変換して計算速度性能を改善する。
【0010】
【発明の実施の形態】
以下、本発明の実施の形態を図面を用いて詳細に説明する。なお、図面全体に亘って同じ構成要素には同一の符号を記す。
MPEG1,MPEG2、ビデオ会議、ファクスサポート、およびモデムサポートを含んだマルチメディアアプリケーション動作はマルチプルプロセッサシステムを用いて効率的に行われる。マルチプロセッサシステムの一例はベクトルプロセッサとスカラープロセッサを備えたシステムである。オーディオデコーディングは、スカラープロセッサとベクトルプロセッサ間のデコーディング処理を効率的にステップに割り当てるために、マルチプロセッサシステムの使用やオペレーティング手続きの設計を通じて加速させるオペレーションである。
【0011】
図1は、ホストプロセッサ102およびマルチメディア信号プロセッサ104を具備したマルチメディアマルチプロセッサシステムを示したものである。典型的なホストプロセッサ102は PentiumTMまたは Pentium ProTMプロセッサのようなx86系プロセッサである。このホストプロセッサ102はシステムメモリ116の命令とデータに基づいたプログラムを実行し、PCIバスのようなシステムバス106を通してマルチメディア信号プロセッサ104と通信する。このマルチメディア信号プロセッサ104はオーディオおよび通信CODEC 108、ビデオA/D 変換器110、ビデオD/A 変換器112、およびフレームバッファSDRAMメモリ114のような多様な機能ブロックとインタフェースする。
【0012】
図2は、マルチメディアマルチプロセッサシステム100内のマルチメディア信号プロセッサ104を示したものである。マルチメディア信号プロセッサ104は複数個のマルチメディアインタフェースに接続されたデジタル処理器DSPコア202を備える。
DSPコア202は、マルチメディア信号プロセッサ104の計算エンジンであって、スカラープロセッサ204、ベクトルプロセッサ206、キャッシュサブシステム208、高速バス(FBUS)210、およびI/Oバスを備えている。スカラープロセッサ204は英国ARM会社で設計し製作した32ビットARMTM制御プロセッサに基づいたスカラープロセッサであって、リアルタイムオペレーティングシステム演算、割り込みおよび例外ハンドリング、入出力装置管理、ホストコンピュータとの通信のような通常の処理機能を行う。一実施の形態において、スカラープロセッサ204は40MHzで動作する。スカラープロセッサ204は、コプロセッサインタフェース242を通してベクトルプロセッサ206にインタフェースする。
また、マルチメディア信号プロセッサ104は多様なマルチメディア動作を行う。1つのマルチメディア動作はオーディオデコーディングであって、スカラープロセッサ204とベクトルプロセッサ206がプロセッサ上で動作するプログラムコードと結合してオーディオプロセッサ205を形成する。
【0013】
図3は、命令デコーダおよび制御ロジック302により制御されるARM7スカラープロセッサ204を示し、このスカラープロセッサ204は書き込みデータレジスタ304と命令パイプラインおよび読み出しデータレジスタ306とを通してキャッシュサブシステム208と通信する。また、スカラープロセッサ204は31×32ビットレジスタバンク312のデータをアドレシングするアドレスレジスタ308およびアドレス増分器310と、32ビットALU314のような演算ロジック、バレルシフター316、およびブース乗算器(Booth's multiplier)318を備える。コプロセッサインタフェース242は、スカラープロセッサ204とベクトルプロセッサ206間の演算コードおよび命令因数(argument)を伝達するnOPC、nCPI、CPA、およびCPB信号ラインを経由して命令デコーダおよび制御ロジック302に直接接続される。
【0014】
図4は、スカラープロセッサ204を示したものである。スカラープロセッサ204は索引指定および条件演算を具備したスカラー演算を行い、ベクトルプロセッサ206の動作を初期化する。特に、スカラープロセッサ204はスカラープロセッサ204命令セットの拡張によってベクトルプロセッサ206との対話処理を制御する。拡張命令セットは、STARTVPやINTVP命令のようなコプロセッサデータ動作、コプロセッサデータ転送、およびベクトルプロセッサ206のレジスタに対する読み出し並びに書き込むためのTESTSET命令とMFVP、MTVP、MFER、MTER命令のようなコプロセッサレジスタ転送を含んでいる。
【0015】
MPEGデコーディング動作の効率的な動作は、各プロセッサ形態の利点を利用するため、スカラープロセッサ204とベクトルプロセッサ206間のオーディオデコーディング動作を分担することにより効果的に行われる。図5はMPEGオーディオデコーディング610の処理を説明するフローチャートである。スカラープロセッサ204はフレーム同期化(612)動作を包含しながらMPEGオーディオデコーダのビット操作、索引指定、および条件動作を伴う動作と、ヘッダ情報(614)の抽出を行いながらMPEG信号ストリームからの情報を抽出する動作と、スケールファクタ選択情報並びにスケールファクタ618の抽出動作と、サンプルデータ620の抽出動作と、を行うためのものである。また、スカラープロセッサ204はサンプルデータを再量子化する動作(622)を実行するように割り当てられる。ベクトルプロセッサ206は、ベクトルプロセッサに適合し且つ大きい計算ロード要求条件を有するサブバンドフィルタリング624の実行を行うMPEGデータストリーム上で動作するマルチプルデータ計算を行うように割り当てられる。
【0016】
スカラープロセッサ204はフレーム同期化動作とヘッダ情報およびビット割当ビットの抽出を行う。ビットストリームから6ビットのコード化されたスケールファクタを抽出する時、スカラープロセッサ204はコード化されたサンプルの読み出しを開始する。フレーム同期化612動作はオーディオプロセッサ205に入力されるビットストリームに同期化させる。オーディオデコーディングプロセスの開始時、フレーム同期化612は典型的に12ビット同期ワード用ビットストリームをサーチすることにより行われる。ヘッダ情報の抽出614はID、レイヤー(layer) 、および保護ステータス情報を具備したヘッダ情報をアクセスする。若しヘッダ情報が予め知られていると、ヘッダ情報の抽出614のルーチンは一層信頼性のある同期化用16ビット同期ワードに使用されるように一番目16ビットのヘッダをアクセスする。ビット割当ビットの抽出616の動作は典型的に複数のマルチプルビット割当テーブルのエントリをアクセスする。規定されたエントリはビットストリーム信号のビット率とサンプリング周波数に基づき選択される。
【0017】
ビット割当テーブルのデコーディングは次の3段階により行われる。(1)サブバンドのサンプルに割り当てられたビット数を指定する"nb"値が読み出され、ビット割当テーブルの第2コラムに位置される。(2)第1段階でアクセスされた数と現在サブバンド数はサブバンドのサンプルを量子化するために使用されたレベルの数を示すテーブル値を指定するため使用される。(3)量子化分類のテーブルを用いて量子化されたサンプルをコード化するために使用されたビット数と再量子化係数が決定される。また、これら3段階で3つの連続したサブバンドサンプル用コードが1つのコードにグループ化されたかどうかを決定する。若干高いサブバンドは割り当てられたビットを決して持っていない。割り当てられたビットが無い最低のサブバンドの数は識別字“sblimit"に割り当てられる。
【0018】
スケールファクタ選択情報の抽出とスケールファクタ618の動作は、ノンゼロ(nonzero) ビット割当をもつサブバンド用ビットストリームからスケールファクタ情報を読み出す。1つのサブバンドは1つのフレーム内に36サンプルを含んでいる。1つのサブバンド内の36サンプルは12サブバンドサンプルの3つの同様な部分に分割される。スケールファクタ情報は伝送されるスケールファクタの数を示す。ノンゼロビット割当のある各サブバンドに対し、サブバンド用コード化されたスケールファクタがビットストリームからアクセスされて読み出される。スケールファクタ情報は6ビットにコード化され、符号のない整数索引をスケールファクタテーブルに指定する。スケールファクタテーブルは、再量子化された後に多重化されたサブバンドサンプルによるスケールファクタを提供する。
【0019】
サンプルデータを再量子化する動作622において、コード化されたサンプルはビットストリームから読み出される。コード化されたサンプルは同時にコードが3つの連続的なサンプルを含む“トリプレット”の形態である。“量子化分類”の情報を記憶するテーブルは各サブバンド用ビットストリームから1つのトリプレットのために読み出されるビット数を示す。テーブルはまた、コードが3つの連続的な個別コードを含んでいるか、または3サンプルからなる1つのグループ用の結合されたコードを含んでいるかを示す。3サンプルからなったグループを指定するコードの場合、結合されたコードは符号化されない整数(c)に見なされ、アルゴリズムは次のような3個の個別コードs〔0〕、s〔1〕、s〔2〕を提供する。
【0020】
【表1】
【0021】
ここで、nlevels はMPEGテーブルB. 2“レイヤーIIビット割当テーブル”のステップ数である。
コード化されたサンプルはコードが同時に3つの連続的なサンプルを包含するトリプレットに配列される。トリプレットの3サンプルは解除(degroup) され、解除動作後再量子化されたデータは次のような基準MPEG線形公式(数1)を適用して得られる。
【0022】
【数1】
【0023】
ここで、s''' は小数の数で、s''は再量子化された値で、nbはサブバンドのサンプルに割り当てられたビットの数である。
サンプルデータ再量子化622の動作は、MPEGオーディオデコーダにより行われる最も計算力を必要とする動作の1つである。サンプルデータの再量子化を行う技術は次の“C”言語のプログラムコードにより説明される。プログラムコードの実例を示すと、sbはサブバンドを指定し、bound は強烈にステレオコーディングを用いる最低のサブバンドで、sblimit はステレオコーディング(MPEG国際規格、PartIII, Table B. 2a-Table B.2d を参照)を使用する最低のサブバンドで、nbは各サブバンドに割り当てられたビット数で、スケールファクタ[ch][sb][z ]はスケールファクタ係数索引である(MPEG国際規格、PartIII,Tabl B.1) 。
【0024】
フレーム内の1つのサブバンドの36サンプルは、12サブバンドサンプルの3つの同じような部分に分割される。各部分は個別的なスケールファクタを持っている。したがって、3つのスケールファクタがある索引(Z)は、グループ(gr)の反復数に依存する0,1, または2, の因数があることを示している。数Zは次のように定義される。グループgrが4以下である場合Zは0となるように定義される。grが4〜8までの領域にある場合は1となる。そうではないと、Zは2となる。C2[nb]とD2[nb]は量子化係数CとDのレイヤーII分類を指定し(MPEG PartIII, Table B.4参照)、サンプル[s][ch][sb]は解除されたオーディオサンプルデータの配列であり、デサンプル[s][ch][sb]は再量子化されたオーディオサンプルデータの配列である。以下に示すプログラムコードは、後に再量子化処理の具体例を検討して修正を行うためのプログラムコードの印である[NOTEn ]のマークをいくつか含んでいる。オーディオデコーディング動作の再量子化動作用プログラムコードは下記のテーブルIに示されている。
【0025】
【表2】
【0026】
【表3】
【0027】
テーブルIに例示されたオーディオデコーダプログラムコードは3サンプルのグループのデータのための再量子化計算を行う。グループの3つのサンプルは32サブバンドの同一サブバンドに含まれる。テーブルIで説明されたオーディオデコーダプログラムコードのオーディオサンプル再量子化動作はスカラープロセッサ204で行われるが、これは再量子化動作がスカラー形プロセッサにより効率的に行われる索引動作および条件動作を包含するためである。さらに、量子化係数CとDのレイヤーII分類は各サブバンド(パラメータnb)に割り当てられたビット数に従い決定されるため、順次的なデータとして利用不可能になる。
【0028】
付加的な改良はオーディオデコーディングで得られる。大部分の再量子化動作は、オーディオデコーダプログラムコードの多様な命令の適切な変更によってベクトルプロセッサ206上で有利に処理される。このような変更は通常非順次的な形態のデータをベクトル化処理で順次的な形態のデータに変形する。
【0029】
1つの変更がテーブルIに示されたプログラムコードの[NOTE1 ]位置に入る。表現factor=sf [scalefactor [Z ][ch][sb]は、Zがグループの数、chがチャンネル数、sbがサブバンド数をそれぞれ示すスケールファクタ索引を表す。オーディオデコーディング動作のベクトル化された実施の形態で、スケールファクタ索引はスケールファクタ選択情報およびスケールファクタを抽出するステップ618でビットストリームから抽出される。複数個のスケールファクタ係数はスケールファクタ索引に基づいて直接計算され、スケールファクタ選択情報およびスケールファクタを抽出するステップ618の間アレイスケールファクタ[Z ][ch][sb]に位置される。テーブルIIAは再量子化ステップ622の以前にスカラープロセッサ204により行われるスケールファクタ選択情報およびスケールファクタ抽出(618)を行う段階での演算用プログラムコードを説明する。
【0030】
【表4】
【0031】
ここで、mapはビットストリームからのスケールファクタ索引で、BITMAPはビットストリームファイルの6ビット行先で、sf[ ]は63要素スケールファクタ係数アレイである。スケールファクタ選択情報およびスケールファクタを抽出するステップ618の間、テーブルIIAの命令実行はアレイスケールファクタ[z ][ch][sb]のデータをビット索引動作よりはサブバンド数に依存する順次データに変形することである。
【0032】
他の変更がテーブルIで例示されたプログラムコードの[NOTE2 ]の位置に入る。表現C=C2[nb]とD=D2[nb]はすべての反復で計算される量子化係数を指定するが、各サブバンドに共通である。テーブルIIBは、スケールファクタ選択情報を抽出するステップとスケールファクタ618を含むプログラムコードを説明している。このスケールファクタ618は、再量子化ステップ622の前にスカラープロセッサ204によって実行される。テーブルIIBに示したプログラムコードは各1つのフレーム再現の間一度だけ行われる。各アレイでのデータはチャンネル索引とサブバンド数に対応する排他的な順次データになる。データは、テーブルIIBに示したプログラムコードの実行が完了された後、ビット割当の索引にはもはや関係しない。
【0033】
【表5】
【0034】
ここで、Q[ch][sb]はマスク機能で、C[ch][sb]とD[ch][sb]は再量子化係数データを維持する配列である。
また、他の変更がテーブルIで例示されたプログラムコードの[NOTE3 ]の位置に入る。小数部計算のための式は、0.0または−1.0のいずれかの“少数部”の設定を含み、それからサンプルデータを抽出するステップ620の式によって決定される“小数部”は以下の通りである:
【0035】
【表6】
【0036】
【表7】
【0037】
多くの有利な変更がテーブルIに示したオーディオデコーダプログラムコードに作られる。たとえば、サンプルデータを抽出するステップ620で下記の割り算の演算はテーブルIICに示したプログラムコードで無効になる。
【0038】
【表8】
【0039】
変更された再量子化演算において、sample[s ][ch][sb]は、スカラープロセッサ204により実行された再同期化ステップの間、1L<<(nb-1)(=Q [ch][sb]) により除算されない。その代わりに、割り算はベクトルプロセッサ206によりサブバンドフィルタリングステップ624で行われる。
【0040】
テーブルIII に示したプログラムコード演算は合成サブバンドフィルタリングステップ624以前に付加され、配列C[ch][sb], D[ch][sb]のすべての量子化係数データ、スケールファクタ[s ][ch][sb]およびQ[ch][sb]のマスキングデータのすべてが非順次データから順次データに変形されるので、大部分の再量子化動作はベクトルプロセッサ206で効果的に実行される。
【0041】
【表9】
【0042】
ここでsはグループの数である。
サブバンドフィルタリング624の動作はベクトルプロセッサ206で実行される。特別なサブバンドに任意のビットが割り当てられないと、サブバンドフィルタリング624の動作はサブバンドのサンプルをゼロに設定する。1つのサブバンドの全32チャンネルの各計算において、サンプリング値は合成サブバンドフィルタに提供され、32個の連続的なオーディオサンプルは図7のフローチャートにより説明される方法を用いて計算される。マトリックシング動作用Nikは下記の式により与えられる。
【0043】
【数2】
【0044】
ウインドウ動作用係数Di はMPEG国際規格の“合成ウインドウ係数Di ”テーブルにより定義される。
【0045】
図2を参照すると、ベクトルプロセッサ206はマルチメディア信号プロセッサ104のデジタル信号処理エンジンである。ベクトルプロセッサ206は単一命令マルチプルデータアーキテクチャーを備え、離散コサイン変換(DCT, Discrete Cosine Transforms) ,FIRフィルタリング、畳み込み(convolution) 、動画推定、および他の処理動作のような信号処理機能を並列に実行するためにマルチプルデータ要素上で動作するパイプラインのRISCエンジンを具備する。ベクトルプロセッサ206はベクトル処理と同様に、複数個のベクトル実行ユニットによりマルチプルデータ要素が並列に動作されるベクトル演算を支援する。ベクトルプロセッサ206はスカラー演算および結合されたベクトル−スカラー演算の全てを実行する。ベクトルプロセッサ206の多重データ要素は、1サイクル当たり(例えば12.5ns) 、32の割合で8/9ビットの固定小数点演算処理、16の割合で16ビット固定小数点演算処理、または8の割合で32ビット固定小数点演算処理または浮動小数点演算処理が計算される576ビットベクトルにまとめられる。32ビットスカラー演算の大部分は1サイクル当たり1命令速度でパイプラインされ、一方576ビットベクトル演算の大部分は2サイクル内で1命令速度でパイプラインされる。ロードおよび記憶動作は算術動作と並行され、別のロードおよび記憶回路により独立的に実行される。
【0046】
図7を参照すると、ベクトルプロセッサ206は命令フェッチ(fetch) ユニット502、命令デコーダと発行者(issuer )504、命令実行データパス506、およびロードと記憶ユニット508の4つの機能ブロックを有する。命令フェッチユニット502および命令デコーダと発行者504はベクトルプロセッサ206内に包含され、ベクトルプロセッサ206をスカラープロセッサ204と独立的に動作する。
【0047】
命令フェッチユニット502は命令をプリフェッチしてサブルーチン命令へのブランチ(branch)およびジャンプ(jump)のような制御フロー命令を処理する。命令フェッチユニット502は現在実行ストリーム用プリフェッチされた命令の16−エントリキュー(Queue) とブランチターゲットストリーム用プリフェッチされた命令の8−エントリキューを包含する。命令フェッチユニット502は1サイクル内で命令キャッシュから8個の命令まで受ける。命令デコーダと発行者504はベクトルプロセッサ206により実行された全ての命令をデコーディングしてスケージュリングする(schedule)。デコーダは命令フェッチユニット502から受付の順番通り1サイクル内で1命令を処理する反面、発行者は実行資源および被演算者データ使用可能度(availability)の全てに依存する無秩序的な大部分の命令をスケージュリングする。
【0048】
図8を参照すると、命令実行データパス506は4端子レジスタファイル602、8つの32×32並列乗算器604、および8つの36ビットALU606を備える。レジスタファイル602はサイクル当たり2度の読み出し動作および2度の書き込み動作を支援する。並列乗算器604はサイクル当たり整数または浮動小数点フォーマットで8つの32ビット積算、16の16ビット乗算または32の8ビット乗算を行う。ALU606は、サイクル当たり(例えば12.5ns)整数または浮動小数点フォーマットに8の36ビットALU演算、16の16ビットALU演算または32の8ビットALU演算の中の一つを実行する。
【0049】
レジスタファイル602は複数個の専用レジスタと複数個のリターンアドレスレジスタを備える。専用レジスタはベクトル制御とステータスレジスタVCSR、ベクトルプログラムカウンター、ベクトル例外プログラムカウンターVEPC、ベクトル割り込みソースレジスタVISRC、そしてベクトルとスケールプロセッサ同期レジスタVASYNCと多様なカウンタ、マスク、オーバーフローおよびブレークポイントレジスタのような他のレジスタを具備する。ベクトルプログラムカウンターVPCはベクトルプロセッサ206により実行されるべき次の命令のアドレスである。
【0050】
図9は、コプロセッサインタフェース242の概略ブロック図である。コプロセッサインタフェース242は、スカラープロセッサ204の機能性を補足してスカラープロセッサ204の命令セットを拡張する命令を行うためのレジスタとロジック機能を付加する。コプロセッサインタフェース242はスカラープロセッサ204とベクトルプロセッサ206間の通信のためのレジスタを含み、また、他のクロック速度で動作する構造間のデータとの信号通信のためのバッファとして役割を行う。一実施の形態でスカラープロセッサ204は40MHz速度で動作し、ベクトルプロセッサ206は80MHzで実行する。
【0051】
コプロセッサインタフェース242は、デコーダ702、スタートマシン704、特権拡張レジスタブロック706、および使用者拡張レジスタブロック708を具備する。特権拡張レジスタブロック706と使用者拡張レジスタブロック708内のレジスタは、スカラープロセッサ204およびベクトルプロセッサ206により読み出しおよび書き込みが可能である。デコーダ702はスカラープロセッサの命令をデコードする。スカラープロセッサ命令セットは、スカラープロセッサ204上で実行可能な命令と、スカラープロセッサにより実行することはできないがその代わりに特殊なコプロセッサ機能で処理するコプロセッサインタフェース242により実行される命令を含んでいる。デコーダ702はスカラープロセッサ命令をデコードし拡張された命令を検出して実行のためのステートマシン704に検出された拡張命令を提供する。ステートマシン704は拡張命令を行うためのロジックを具備する。特権拡張レジスタブロック706はスカラープロセッサ204による特殊命令の実行の間アクセスされる拡張レジスタである。
【0052】
図2を参照すると、キャッシュサブシステム208はデータキャッシュ214(例えば5KB)、命令キャッシュ216(例えば2KB)、およびキャッシュROM218(例えば16KB)を具備し、典型的にベクトルプロセッサ206(80MHz)と同様な速度で動作する。一実施の形態でキャッシュサブシステム208はスカラープロセッサ204用1Kbyte の命令記憶領域と1Kbyte のデータ記憶領域、ベクトルプロセッサ206用1Kbyte の命令記憶領域と4Kbyte のデータ記憶領域、そしてスカラープロセッサ204およびベクトルプロセッサ206の共用の16Kbyte 統合命令とデータキャッシュROMを具備する。また、キャッシュサブシステム208は32ビットデータバスを通してスカラープロセッサ204とインタフェースし、128ビットデータバスを通してベクトルプロセッサ206とインタフェースする。キャッシュROM218はuROM初期化ソフトウェア、自己診断ソフトウェア、多様なシステム管理ソフトウェア、ライブラリルーチン、および選択された命令とデータ常数用キャッシュを具備する。特に、キャッシュROM218は命令例外のハンドラーとスカラープロセッサ204用入出力デバイス割り込みハンドラー0,1,2,3を具備する。キャッシュROM218はベクトルプロセッサ割り込みハンドラーとスカラープロセッサ204で実行するベクトルプロセッサブレークポイント例外ハンドラーを具備する。
【0053】
FBUS210は例えば32ビットPCIバスインタフェース220、64ビットSDRAMメモリコントローラ222、8チャンネルDMAコントローラ224、カスタマASICロジックブロック226、およびメモリデータムーバ228を具備したFBUS周辺装置とインタフェースする。PCIバスインタフェース220はシステムバス106とインタフェースし、例えば33MHzで動作する。カスタマASICロジックブロック226は所望の注文機能を行うためにロジックブロックを提供する。カスタマASICロジックブロック226は一実施の形態で多様なアナログコーデック(CODEC) およびカスタマ特殊ムーバI/O素子に対するインタフェースを具備した10Kゲートを供給する。メモリデータムーバ228は、ホストプロセッサ102からのDMAデータを、マルチメディア信号プロセッサ104にローカルされるSDRAMメモリ230に伝送する。
【0054】
I/Oバス212は例えばビットストリームプロセッサ232、UART直列ライン234、タイマー回路236、割り込みコントローラ238、および特殊レジスタ240を具備した複数個のI/Oバス素子とインタフェースする。ビットストリームプロセッサ232はビデオビットストリームを処理する。特殊レジスタ240はソフトウェア的に制御された初期化および割り込み処理のために使用される。
【0055】
図10は、マルチメディア信号プロセッサ104上で実行するMSPシステムコンポーネントソフトウェア802とホストプロセッサ102上で実行するPCアプリケーションおよびオペレーティングソフトウェア808とを具備したソフトウェアおよびファームウェアアーキテクチャ800を示す。マルチメディア信号プロセッサ104はベクトルプロセッサ206上で実行するベクトル化されたDSPファームウェアライブラリ804とスカラープロセッサ204上で実行されるシステム管理機能ブロック806とを包含するファームウェアにより制御される。ベクトル化されたDSPはファームウェアライブラリ804およびシステム管理機能ブロック806はMSPシステムコンポーネントソフトウェア802内に包含される。アーキテクチャ800はホストアプリケーション制御動作から信号処理機能を分離させることによりソフトウェア開発を単純化し、ソフトウェアデザイン管理を改善させ、アプリケーション開発および維持費を減少させる。
【0056】
MSPシステムコンポーネントソフトウェア802は排他的にスカラープロセッサ204上で実行し、MSPリアルタイムカーネル810、マルチメディアライブラリモジュール812、システム管理機能ブロック806およびベクトル化されたDSPのファームウェアライブラリ804を含んでいる。MSPリアルタイムカーネル810は、ホストプロセッサ102、資源管理、I/O装置ハンドリング、そして大部分の割り込みおよび例外処理に対するインタフェースを主に担当する。MSPリアルタイムカーネル810は、ホストプロセッサ102で実行するWindowsTMおよびWindows NTTMのソフトウェアのインタフェースを備えている。MSPリアルタイムカーネル810はホストプロセッサ102から選択されたアプリケーションファームウェアを選択しダウンロードするためのソフトウェア、スカラープロセッサ204およびベクトルプロセッサ206の実行のためのタスクをスケージュリングのためのソフトウェア、そしてメモリおよびI/O装置を具備したマルチメディア信号プロセッサ104のシステム資源を管理するためのソフトウェアを包含する。MSPリアルタイムカーネル810はマルチメディア信号プロセッサ104のタスク間通信を同期化させるためのソフトウェアとMSPに関連した割り込み、例外およびステータス条件を報告するためのソフトウェアを具備する。
【0057】
ベクトル化されたDSPファームウェアライブラリ804は実質的に全てのデジタル信号処理機能を実行する。ベクトル化されたDSPファームウェアライブラリ804はまた、スカラープロセッサ204によりベクトルプロセッサ206に提起されるコプロセッサ割り込み、またはベクトルプロセッサ206内で発生されたハードウェアスタックオーバーフロー例外のような規定された特殊割り込みを制御する。
【0058】
マルチメディアライブラリのモジュール812はデータ通信、MPEGビデオおよびオーディオ、音声コーディングおよび合成、サウンドブラスタ (soundblasterTM)と互換性のあるオーディオを具備した通信ハンドリング機能を実行する。MSPリアルタイムカーネル810は、マルチメディア信号プロセッサ104上で実行されるマルチメディアアプリケーションを用いた拡張を具備したリアルタイム、ロバスト(robust)、マルチタスク、強制(pre-emptive) オペレーティングシステムである。
【0059】
ホストプロセッサ102内で実行するPCアプリケーションおよびオペレーティングシステムソフトウェア808は、システムバス106を介してMSP制御およびステータスレジスタを書き込みおよび読み出しを行うことでマルチメディア信号プロセッサ104を制御する。そして、共用データに書き込むことで、システムメモリ116に常駐したり、マルチメディア信号プロセッサ104に常駐する構造となる。
【0060】
MSPプログラム実行は第1実行ストリームを実行するスカラープロセッサ204から始まる。スカラープロセッサ204はベクトルプロセッサ206内の第2独立実行ストリームを初期化させる。スカラープロセッサ204とベクトルプロセッサ206の動作はスカラープロセッサ204内で動作するSTARTVP、INTVP、およびTESTVP命令を包含した特殊コプロセッサ命令と、ベクトルプロセッサ206内で実行するVJOINおよびVINT割り込みを包含した特殊命令を通して同期化される。スカラープロセッサ204とベクトルプロセッサ206間のデータ伝送はスカラープロセッサ204内で実行されたデータ移動命令を用いて実行される。
【0061】
【発明の効果】
以上、詳細に説明したように本発明に係るMPEGオーディオデコーディング装置およびそのデコーディング方法では、2つのプロセッサを並列に効率的に用いてデコーディング性能を向上させる。オーディオデコーダは条件命令とスカラーベクトルを用いて非順次上で動作する命令を効率的に実行し、非順次データを順次形態に変換することで、多くの処理をベクトルプロセッサの計算力を利用できるようにする。
【0062】
本発明を特定の好ましい実施の形態を図面を用いて説明したが、以下の特許請求の範囲に基づく本発明の精神および内容を逸脱しない範囲での当業者による変形および修正は本発明の範疇に含まれる。例えば、本実施の形態では、ペンティアムプロセッサを用いたホストコンピュータと特別なマルチメディアプロセッサを具備したマルチプロセッサシステムを用いるシステムとして説明したが、本発明は特にこれに限定されるものではなく別のプロセッサ構造でも適用可能である。
【図面の簡単な説明】
【図1】本発明の実施の形態に係るマルチメディアマルチプロセッサを示す高水準の概略的ブロック図である。
【図2】図1に示したマルチメディアマルチプロセッサシステムに包含されたマルチメディア信号プロセッサを示す概略的なブロック図である。
【図3】マルチメディアマルチプロセッサシステムのスカラープロセッサを示す概略的なブロック図である。
【図4】スカラープロセッサの機能図である。
【図5】MPEGオーディオデコーディングを遂行するための方法の動作を説明するためのフローチャートである。
【図6】サブバンドフィルタリングを行うに適合した方法の動作を説明するための動作を説明するフローチャートである。
【図7】図2のマルチメディア信号プロセッサのベクトルプロセッサを示す概略ブロック図である。
【図8】図7のベクトルプロセッサのベクトルプロセッサ実行データパスを示す概略的なブロック図である。
【図9】図2のマルチメディア信号プロセッサのコプロセッサインタフェースを示す概略的ブロック図である。
【図10】マルチメディア信号プロセッサのファームウェアアーキテクチャを説明するための概略的ブロック図である。
【図11】従来のMPEGオーディオデータストリームをデコーディングするための順番を示すフローチャートである。
【符号の説明】
100:マルチメディアマルチプロセッサシステム
102:ホストコンピュータ
104:マルチメディア信号プロセッサ
106:システムバス(PCIバス)
108:通信CODEC
110:ビデオA/D コンバータ
112:ビデオD/A コンバータ
114:フレームバッファSDRAMバッファ
202:DSPコア
204:RISC制御プロセッサ
206:ベクトルコプロセッサ
208:キャッシュサブシステム
210:高速バス(FBUS)
212:IOバス
220:PCIバスインタフェース
222:メモリコントローラ
224:DMAコントローラ
302:命令ロジックおよび制御ロジック
304:書き込みデータレジスタ
306:命令パイプおよび書き込みデータレジスタ
308:アドレスレジスタ
310:アドレス増分器
312:レジスタバンク
314:32ビットALU
316:バレルシフト
316,604:乗算器
502:命令フェッチユニット
504,604:命令デコーダおよび発行者
506:実行データバス
508:ロードおよび記憶ユニット
602:レジスタファイル
702:デコーダ
704:ステートマシン
706:特権拡張レジスタ
708:使用者拡張レジスタ[0001]
BACKGROUND OF THE INVENTION
The present invention relates to an audio decoding apparatus and method thereof in the MPEG standard, and more particularly to an audio decoding apparatus and decoding method that can be used in a multiple processor multimedia system having scalar vectors and vector processors.
[0002]
[Prior art]
Standardization of recording media, devices such as audio recording, storage and playback, and diverse data handling directions is highly desirable for the continued growth of this technology and application. A widely used compression standard for compressing and decompressing video information is the Moving Picture Expert Group (MPEG) standard for audio and video encoding and decoding. This MPEG standard is an international standard ISO / IEC 11172-1, “Information technology-Coding of video and related audio on digital storage media up to about 1.5 Mbit / s”, 1st edition,
[0003]
This MPEG International Standard addresses the problem of combining one or more data streams that form a single information stream from audio and video sources that contain temporal information. In general, a large amount of information data stream is processed by an MPEG processing system. While the computing power of processors is stable and rapidly advancing, the demand for high processing power and computing power is the development of aggressive new applications in the multimedia field that require the display and processing of massive data like never before. Is still in order not to damage.
[0004]
The MPEG international standard defines an audio decoding processor as shown in FIG. The
[0005]
[Problems to be solved by the invention]
For calculation processing such as requantization of sample data, an apparatus and a technique for performing audio decoding more efficiently are required under the MPEG international standard. In particular, there is a need for an apparatus and technique for more efficiently requantizing sample data in an audio decoder.
[0006]
An object of the present invention is to provide an audio decoding apparatus and method which can be used in a multiple processor multimedia system having scalar vectors and vector processors by improving non-sequential data into a sequential form to improve calculation speed. To do.
[0007]
[Means for Solving the Problems]
In accordance with the present invention, an audio decoder for a multiprocessor multimedia system comprising a scalar processor and a vector processor receives information from a frame synchronization program code executing on the scalar processor and an MPEG audio bitstream executing on the scalar processor. Information extraction program code to extract, Vectorized program code for converting nonsequential sample data executed on a scalar processor into sequential sample data; and Program code for requantizing sample data for execution on the vector processor and subband filtering program code for execution on the vector processor.
[0008]
The audio decoder of the multimedia processor according to the present invention improves decoding efficiency and performance using a multiple parallel processor including a scalar processor and a vector processor. Scalar processors perform tasks that include bit manipulation, indexing, and conditional operations most efficiently. Vector processors most effectively perform operations including unlimited operations and continuously generated multiple data calculations. As long as the data is continuous, improved performance can be obtained by performing as many operations as possible on the vector processor rather than on the scalar processor. The audio decoder includes re-quantization program code that shifts data handling operations from a scalar processor to a vector processor by converting non-continuous data into continuous data and “vectorizing” the data.
[0009]
There are many advantages to such an audio decoder system and method. The audio decoder uses two processors in parallel to improve decoding performance. The audio decoder easily executes conditional instructions and instructions that operate on non-continuous data using scalar vectors, and executes instructions that operate on arrays and continuous data using vector processors. The audio decoder converts the non-continuous data into a continuous form to improve the calculation speed performance in order to make better use of the calculation capability of the vector processor.
[0010]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings. Note that the same components are denoted by the same reference numerals throughout the drawings.
Multimedia application operations, including MPEG1, MPEG2, video conferencing, fax support, and modem support are efficiently performed using multiple processor systems. An example of a multiprocessor system is a system including a vector processor and a scalar processor. Audio decoding is an operation that is accelerated through the use of multiprocessor systems and the design of operating procedures in order to efficiently assign the decoding process between the scalar processor and the vector processor to steps.
[0011]
FIG. 1 illustrates a multimedia multiprocessor system that includes a
[0012]
FIG. 2 shows a
The DSP
Also, the
[0013]
FIG. 3 shows an ARM7
[0014]
FIG. 4 shows the
[0015]
The efficient operation of the MPEG decoding operation is effectively performed by sharing the audio decoding operation between the
[0016]
The
[0017]
The bit allocation table is decoded in the following three steps. (1) An “nb” value designating the number of bits allocated to the subband samples is read out and positioned in the second column of the bit allocation table. (2) The number accessed in the first stage and the current number of subbands are used to specify a table value indicating the number of levels used to quantize the subband samples. (3) The number of bits and the requantization coefficient used to code the quantized sample using the quantization classification table are determined. Further, in these three steps, it is determined whether or not three consecutive subband sample codes are grouped into one code. Slightly higher subbands never have assigned bits. The lowest number of subbands with no assigned bit is assigned to the identifier “sblimit”.
[0018]
The extraction of the scale factor selection information and the operation of the
[0019]
In
[0020]
[Table 1]
[0021]
Here, nlevels is the number of steps in the MPEG table B.2 “Layer II bit allocation table”.
The coded samples are arranged in a triplet where the code simultaneously contains three consecutive samples. Three samples of the triplet are degrouped, and the requantized data after the release operation is obtained by applying the following standard MPEG linear formula (Equation 1).
[0022]
[Expression 1]
[0023]
Here, s ′ ″ is a decimal number, s ″ is a requantized value, and nb is the number of bits assigned to the subband samples.
The operation of sample data requantization 622 is one of the most computationally intensive operations performed by the MPEG audio decoder. The technique for requantizing the sample data is described by the following “C” language program code. As an example of the program code, sb specifies a subband, bound is the lowest subband that strongly uses stereo coding, and sblimit is stereo coding (MPEG International Standard, Part III, Table B. 2a-Table B.2d Nb is the number of bits allocated to each subband, and scale factor [ch] [sb] [z] is the scale factor coefficient index (MPEG International Standard, Part III, Tabl B.1).
[0024]
The 36 samples of one subband in the frame are divided into three similar parts of 12 subband samples. Each part has an individual scale factor. Thus, an index (Z) with three scale factors indicates that there are factors of 0, 1, or 2, depending on the number of iterations of the group (gr). The number Z is defined as follows: When the group gr is 4 or less, Z is defined to be 0. When gr is in the region from 4 to 8, it is 1. Otherwise, Z is 2. C2 [nb] and D2 [nb] specify layer II classification of quantization coefficients C and D (see MPEG PartIII, Table B.4), and samples [s] [ch] [sb] are canceled audio samples Desampling [s] [ch] [sb] is an array of re-quantized audio sample data. The program code shown below includes some [NOTEn] marks, which are marks of the program code for examining and revising a specific example of the requantization processing later. The program code for the requantization operation of the audio decoding operation is shown in Table I below.
[0025]
[Table 2]
[0026]
[Table 3]
[0027]
The audio decoder program code illustrated in Table I performs a requantization calculation for a group of 3 sample data. The three samples of the group are contained in the same subband of 32 subbands. The audio sample requantization operation of the audio decoder program code described in Table I is performed by the
[0028]
Additional improvements can be obtained with audio decoding. Most requantization operations are advantageously handled on the
[0029]
One change enters the [NOTE1] position of the program code shown in Table I. The expression factor = sf [scalefactor [Z] [ch] [sb] represents a scale factor index in which Z is the number of groups, ch is the number of channels, and sb is the number of subbands. In a vectorized embodiment of the audio decoding operation, the scale factor index is extracted from the bitstream in
[0030]
[Table 4]
[0031]
Where map is the scale factor index from the bitstream, BITMAP is the 6 bit destination of the bitstream file, and sf [] is a 63 element scale factor coefficient array. During
[0032]
Another change enters the [NOTE2] position of the program code illustrated in Table I. The expressions C = C2 [nb] and D = D2 [nb] specify the quantized coefficients that are calculated in all iterations, but are common to each subband. Table IIB describes the program code including steps for extracting scale factor selection information and
[0033]
[Table 5]
[0034]
Here, Q [ch] [sb] is a mask function, and C [ch] [sb] and D [ch] [sb] are arrays for maintaining requantized coefficient data.
Another change enters the position of [NOTE3] in the program code exemplified in Table I. The formula for the fractional part calculation includes a “fractional part” setting of either 0.0 or −1.0, from which the “decimal part” determined by the formula of
[0035]
[Table 6]
[0036]
[Table 7]
[0037]
Many advantageous changes can be made to the audio decoder program code shown in Table I. For example, in the
[0038]
[Table 8]
[0039]
In the modified requantization operation, sample [s] [ch] [sb] is 1L during the resynchronization step performed by
[0040]
The program code operation shown in Table III is added before the synthesis
[0041]
[Table 9]
[0042]
Here, s is the number of groups.
The operation of
[0043]
[Expression 2]
[0044]
Window operation coefficient D i Is the “composition window coefficient D” of the MPEG international standard. i "Defined by table.
[0045]
Referring to FIG. 2,
[0046]
Referring to FIG. 7, the
[0047]
The instruction fetch
[0048]
Referring to FIG. 8, the instruction
[0049]
The
[0050]
FIG. 9 is a schematic block diagram of the
[0051]
The
[0052]
Referring to FIG. 2, the cache subsystem 208 includes a data cache 214 (eg, 5 KB), an instruction cache 216 (eg, 2 KB), and a cache ROM 218 (eg, 16 KB) and is typically similar to the vector processor 206 (80 MHz). Work at speed. In one embodiment, the cache subsystem 208 includes a 1 Kbyte instruction storage area and a 1 Kbyte data storage area for the
[0053]
The
[0054]
The I /
[0055]
FIG. 10 shows a software and
[0056]
The MSP
[0057]
The vectorized
[0058]
The
[0059]
PC application and
[0060]
MSP program execution begins with a
[0061]
【The invention's effect】
As described above in detail, in the MPEG audio decoding apparatus and decoding method according to the present invention, two processors are efficiently used in parallel to improve decoding performance. The audio decoder efficiently executes instructions that operate non-sequentially using conditional instructions and scalar vectors, and converts non-sequential data into a sequential form so that many processes can use the computing power of the vector processor. To.
[0062]
While the invention has been described with reference to the drawings, it will be understood that variations and modifications within the scope of the invention may be made by those skilled in the art without departing from the spirit and scope of the invention based on the following claims. included. For example, although the present embodiment has been described as a system using a multiprocessor system including a host computer using a pentium processor and a special multimedia processor, the present invention is not particularly limited to this, and another processor is used. The structure can also be applied.
[Brief description of the drawings]
FIG. 1 is a high-level schematic block diagram illustrating a multimedia multiprocessor according to an embodiment of the present invention.
FIG. 2 is a schematic block diagram illustrating a multimedia signal processor included in the multimedia multiprocessor system shown in FIG. 1;
FIG. 3 is a schematic block diagram illustrating a scalar processor of a multimedia multiprocessor system.
FIG. 4 is a functional diagram of a scalar processor.
FIG. 5 is a flowchart for explaining an operation of a method for performing MPEG audio decoding;
FIG. 6 is a flowchart illustrating an operation for explaining an operation of a method suitable for performing subband filtering;
7 is a schematic block diagram illustrating a vector processor of the multimedia signal processor of FIG.
8 is a schematic block diagram illustrating a vector processor execution data path of the vector processor of FIG.
FIG. 9 is a schematic block diagram illustrating a coprocessor interface of the multimedia signal processor of FIG. 2;
FIG. 10 is a schematic block diagram for explaining a firmware architecture of a multimedia signal processor.
FIG. 11 is a flowchart illustrating an order for decoding a conventional MPEG audio data stream.
[Explanation of symbols]
100: Multimedia multiprocessor system
102: Host computer
104: Multimedia signal processor
106: System bus (PCI bus)
108: Communication CODEC
110: Video A / D converter
112: Video D / A converter
114: Frame buffer SDRAM buffer
202: DSP core
204: RISC control processor
206: Vector coprocessor
208: Cache subsystem
210: High-speed bus (FBUS)
212: IO bus
220: PCI bus interface
222: Memory controller
224: DMA controller
302: Instruction logic and control logic
304: Write data register
306: Instruction pipe and write data register
308: Address register
310: Address incrementer
312: Register bank
314: 32-bit ALU
316: Barrel shift
316, 604: Multiplier
502: Instruction fetch unit
504, 604: Instruction decoder and issuer
506: Execution data bus
508: Load and storage unit
602: Register file
702: Decoder
704: State machine
706: Privilege extension register
708: User extension register
Claims (20)
オーディオビットストリーム入力信号を同期化するため、前記スカラープロセッサ上で実行するフレーム同期プログラムコードと、
前記オーディオビットストリームから情報を抽出するため、前記スカラープロセッサ上で実行する情報抽出プログラムコードと、
前記抽出されたオーディオビットストリーム情報は非順次なサンプルデータを含み、
前記非順次サンプルデータを順次サンプルデータに変換するため、前記スカラープロセッサ上で実行するベクトル化プログラムコードと、
前記順次サンプルデータを再量子化するため、前記ベクトルプロセッサ上で実行する再量子化プログラムコードと、
フィルタリングされたオーディオサンプル出力信号を生成するため、前記ベクトルプロセッサ上で実行するサブバンドフィルタリングプログラムコードとを有することを特徴とするオーディオデコーダ。In an audio decoder of a multiprocessor multimedia system comprising a scalar processor and a vector processor,
Frame synchronization program code executing on the scalar processor to synchronize the audio bitstream input signal ;
To extract information from the audio bitstream, the information extraction program code executing on said scalar processor,
The extracted audio bitstream information includes non-sequential sample data;
Vectorized program code executing on the scalar processor to convert the nonsequential sample data into sequential sample data;
Re-quantization program code executing on the vector processor to re-quantize the sequential sample data ;
To generate the filtered audio samples output signal, the audio decoder and having a salicylate Bed band filtering program code run on said vector processor.
前記オーディオビットストリームを受信するステップと、
前記スカラープロセッサ上で実行するプルグラムコードによりMPEGオーディオビットストリーム入力に、マルチプロセッサマルチメディアシステムを同期化させるステップと、
前記スカラープロセッサ上で動作するプログラムコードにより前記MPEGオーディオビットストリームから情報を抽出するステップと、
前記スカラープロセッサ上で動作するベクトル化プログラムコードにより非順次サンプルデータを順次サンプルデータに変換するステップと、
前記ベクトルプロセッサ上で実行するプログラムコードにより前記サンプルデータを再量子化するステップと、
フィルタリングされたオーディオサンプルを生成するため、前記ベクトルプロセッサ上で実行するプログラムコードにより前記サンプルデータをサブバンドフィルタリングするステップとを有することを特徴とするデコーディング方法。In a method for decoding an audio bitstream operating in a multiprocessor multimedia system having a scalar processor and a vector processor,
Receiving the audio bitstream;
Synchronizing a multiprocessor multimedia system to an MPEG audio bitstream input by a program code executing on the scalar processor;
Extracting information from the MPEG audio bitstream by program code running on the scalar processor;
Sequentially converting non-sequential sample data into sample data by vectorized program code running on the scalar processor;
Requantizing the sample data with program code executing on the vector processor;
To generate the filtered audio samples, decoding method characterized by comprising the steps of: subband filtering the sample data by the program code to be executed on the vector processor.
前記スカラープロッセさに接続されたベクトルプロセッサと、
オーディオビットストリームをデコードするため、前記スカラープロセッサとベクトルプロセッサとが結合された状態で実行するオーディオデコーダプログラムコードとを有し、
このオーディオデコーダプログラムは、
前記オーディオビットストリームを受信するプログラムコードと、
前記オーディオビットストリームを同期化するため、前記スカラープロセッサ上で実行するフレーム同期化プログラムコードと、
MPEGオーディオビットストリームから情報を抽出するため、前記スカラープロセッサ上で実行する情報抽出プログラムコードと、この抽出されたオーディオビットストリーム情報は非順次サンプルデータを含み、
前記非順次サンプルデータを順次サンプルデータに変換するため、前記スカラープロセッサ上で実行するベクトル化プログラムコードと、
前記ベクトルプロセッサ上で実行する前記順次サンプルデータを再量子化するプログラムコードと、
フィルタリングされたオーディオサンプル出力信号を生成するため、前記ベクトルプロセッサ上で実行するサブバンドフィルタリングプログラムコードとを有することを特徴とするマルチプロセッサマルチメディアシステム。A scalar processor;
A vector processor connected to the scalar processor;
To decode the audio bit stream, and a audio decoder program code for performing a state where said scalar processor and the vector processor are coupled,
This audio decoder program
Program code for receiving the audio bitstream;
For synchronizing the audio bit stream, and frame synchronization program code that executes on the scalar processor,
To extract information from the M PEG audio bitstream, the audio bit stream information and information extraction program code that executes on a scalar processor, which is the extract comprises non-sequential sample data,
Vectorized program code executing on the scalar processor to convert the nonsequential sample data into sequential sample data;
Program code for re-quantizing the sequential sample data to run on said vector processor,
To generate the filtered audio samples output signals, multiprocessor multimedia system characterized by having a salicylate Bed band filtering program code run on said vector processor.
MPEGオーディオビットストリームを受信するコードを提供するステップと、
前記MPEGオーディオビットストリーム入力により前記スカラープロセッサ上で実行するフレーム同期化プログラムコードを提供するステップと、
前記MPEGオーディオビットストリームから情報を抽出するために前記スカラープロセッサ上で実行する情報抽出プログラムコードを提供するステップと、
前記スカラープロセッサ上で動作するベクトル化プログラムコードにより非順次サンプリングデータを順次サンプリングデータに変換するコードを提供するステップと、
前記ベクトルプロセッサ上で実行する前記順次サンプルデータを再量子化するためのプログラムコードを提供するステップと、
フィルタリングされたオーディオサンプルを生成するために前記ベクトルプロセッサ上で実行するサブバンドフィルタリングプログラムコードを提供するステップと、を含むことを特徴とする方法。In a method for providing an audio decoder in a multiprocessor multimedia system comprising a scalar processor and a vector processor,
Providing code for receiving an MPEG audio bitstream;
Providing a frame synchronization program code executing on the scalar processor by the MPEG audio bit stream input,
And providing information extraction program code executing on the scalar processor to extract information from the MPEG audio bit stream,
Providing code for converting non-sequential sampling data into sequential sampling data by vectorized program code running on the scalar processor;
Providing program code for requantizing the sequential sample data for execution on the vector processor;
Method characterized by comprising the steps of providing a sub-band filtering program code executing on the vector processor to generate a filtered audio sample.
スカラープロセッサを提供するステップと、
前記スカラープロセッサに連結されたベクトルプロセッサを提供するステップと、
前記スカラープロセッサとベクトルプロセッサ上で結合して実行するためのオーディオデコーダプログラムコードを提供するステップと、を含み、
前記オーディオデコーダプログラムは、オーディオビットストリーム入力信号を同期化するために、前記スカラープロセッサ上で実行するフレーム同期化プログラムコードと、
前記MPEGオーディオビットストリームからの情報を抽出するために前記スカラープロセッサ上で実行する情報抽出プログラムコードと、
前記抽出されたオーディオビットストリーム情報は非順次のサンプルデータを含み、前記非順次サンプルデータを順次サンプルデータに変換するために、前記スカラープロセッサ上で実行するベクトル化プログラムコードと、
前記ベクトルプロセッサ上で実行する順次サンプルデータを再量子化するための再量子化プログラムコードと、
フィルタリングされたオーディオサンプル出力信号を生成するため、前記ベクトルプロセッサ上で実行するサブバンドフィルタリングプログラムコードと、を備えることを特徴とする方法。In a method for providing a multiprocessor multimedia system,
Providing a scalar processor;
Providing a vector processor coupled to the scalar processor;
Comprises the steps of providing an audio decoder program code for performing bound on the scalar processor and a vector processor,
The audio decoder program includes a frame synchronization program code executed on the scalar processor to synchronize an audio bitstream input signal ;
An information extraction program code executing on the scalar processor to extract information from the MPEG audio bit stream,
The extracted audio bitstream information includes non-sequential sample data, and vectorized program code executed on the scalar processor to convert the non-sequential sample data into sequential sample data;
A requantization capsules program code for re-quantizing the sequential sample data executing on the vector processor,
To generate the filtered audio samples output signal, method characterized by and an Rusa blanking band filtering program code run on said vector processor.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US08/732,543 US5893066A (en) | 1996-10-15 | 1996-10-15 | Fast requantization apparatus and method for MPEG audio decoding |
US08/732,543 | 1996-10-18 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH10222476A JPH10222476A (en) | 1998-08-21 |
JP3706230B2 true JP3706230B2 (en) | 2005-10-12 |
Family
ID=24943942
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP28721797A Expired - Fee Related JP3706230B2 (en) | 1996-10-15 | 1997-10-20 | MPEG audio decoding apparatus and decoding method thereof |
Country Status (4)
Country | Link |
---|---|
US (1) | US5893066A (en) |
JP (1) | JP3706230B2 (en) |
KR (1) | KR100218255B1 (en) |
TW (1) | TW384618B (en) |
Families Citing this family (44)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6108584A (en) * | 1997-07-09 | 2000-08-22 | Sony Corporation | Multichannel digital audio decoding method and apparatus |
US6310918B1 (en) * | 1997-07-31 | 2001-10-30 | Lsi Logic Corporation | System and method for motion vector extraction and computation meeting 2-frame store and letterboxing requirements |
EP1027781B1 (en) * | 1997-10-31 | 2004-12-29 | STMicroelectronics Asia Pacific Pte Ltd. | Apparatus and method for depacketizing and aligning packetized input data |
KR100335611B1 (en) * | 1997-11-20 | 2002-10-09 | 삼성전자 주식회사 | Scalable stereo audio encoding/decoding method and apparatus |
US6009436A (en) * | 1997-12-23 | 1999-12-28 | Ricoh Company, Ltd. | Method and apparatus for mapping structured information to different structured information |
JP3784993B2 (en) * | 1998-06-26 | 2006-06-14 | 株式会社リコー | Acoustic signal encoding / quantization method |
US6119092A (en) * | 1998-06-26 | 2000-09-12 | Lsi Logic Corporation | Audio decoder bypass module for communicating compressed audio to external components |
US6560674B1 (en) * | 1998-10-14 | 2003-05-06 | Hitachi, Ltd. | Data cache system |
KR100300887B1 (en) * | 1999-02-24 | 2001-09-26 | 유수근 | A method for backward decoding an audio data |
EP1290690A1 (en) * | 2000-05-30 | 2003-03-12 | Koninklijke Philips Electronics N.V. | Coded information on cd audio |
US7003450B2 (en) * | 2000-10-20 | 2006-02-21 | Pts Corporation | Methods and apparatus for efficient vocoder implementations |
JP2002182693A (en) * | 2000-12-13 | 2002-06-26 | Nec Corp | Audio ending and decoding apparatus and method for the same and control program recording medium for the same |
US6584356B2 (en) * | 2001-01-05 | 2003-06-24 | Medtronic, Inc. | Downloadable software support in a pacemaker |
US6986023B2 (en) * | 2002-08-09 | 2006-01-10 | Intel Corporation | Conditional execution of coprocessor instruction based on main processor arithmetic flags |
AU2003256870A1 (en) * | 2002-08-09 | 2004-02-25 | Intel Corporation | Multimedia coprocessor control mechanism including alignment or broadcast instructions |
US7392368B2 (en) * | 2002-08-09 | 2008-06-24 | Marvell International Ltd. | Cross multiply and add instruction and multiply and subtract instruction SIMD execution on real and imaginary components of a plurality of complex data elements |
US7283968B2 (en) | 2003-09-29 | 2007-10-16 | Sony Corporation | Method for grouping short windows in audio encoding |
US7325023B2 (en) * | 2003-09-29 | 2008-01-29 | Sony Corporation | Method of making a window type decision based on MDCT data in audio encoding |
US7426462B2 (en) * | 2003-09-29 | 2008-09-16 | Sony Corporation | Fast codebook selection method in audio encoding |
US7349842B2 (en) * | 2003-09-29 | 2008-03-25 | Sony Corporation | Rate-distortion control scheme in audio encoding |
KR100571824B1 (en) * | 2003-11-26 | 2006-04-17 | 삼성전자주식회사 | Method for encoding/decoding of embedding the ancillary data in MPEG-4 BSAC audio bitstream and apparatus using thereof |
WO2006055546A2 (en) * | 2004-11-15 | 2006-05-26 | Nvidia Corporation | A video processor having a scalar component controlling a vector component to implement video processing |
US8725990B1 (en) | 2004-11-15 | 2014-05-13 | Nvidia Corporation | Configurable SIMD engine with high, low and mixed precision modes |
EP1905004A2 (en) | 2005-05-26 | 2008-04-02 | LG Electronics Inc. | Method of encoding and decoding an audio signal |
US8082157B2 (en) | 2005-06-30 | 2011-12-20 | Lg Electronics Inc. | Apparatus for encoding and decoding audio signal and method thereof |
WO2007004831A1 (en) | 2005-06-30 | 2007-01-11 | Lg Electronics Inc. | Method and apparatus for encoding and decoding an audio signal |
AU2006266655B2 (en) | 2005-06-30 | 2009-08-20 | Lg Electronics Inc. | Apparatus for encoding and decoding audio signal and method thereof |
TWI412021B (en) * | 2005-06-30 | 2013-10-11 | Lg Electronics Inc | Method and apparatus for encoding and decoding an audio signal |
US8577483B2 (en) | 2005-08-30 | 2013-11-05 | Lg Electronics, Inc. | Method for decoding an audio signal |
JP5108767B2 (en) | 2005-08-30 | 2012-12-26 | エルジー エレクトロニクス インコーポレイティド | Apparatus and method for encoding and decoding audio signals |
JP5173811B2 (en) | 2005-08-30 | 2013-04-03 | エルジー エレクトロニクス インコーポレイティド | Audio signal decoding method and apparatus |
US7788107B2 (en) | 2005-08-30 | 2010-08-31 | Lg Electronics Inc. | Method for decoding an audio signal |
US7672379B2 (en) | 2005-10-05 | 2010-03-02 | Lg Electronics Inc. | Audio signal processing, encoding, and decoding |
ES2478004T3 (en) | 2005-10-05 | 2014-07-18 | Lg Electronics Inc. | Method and apparatus for decoding an audio signal |
US7646319B2 (en) | 2005-10-05 | 2010-01-12 | Lg Electronics Inc. | Method and apparatus for signal processing and encoding and decoding method, and apparatus therefor |
US7696907B2 (en) | 2005-10-05 | 2010-04-13 | Lg Electronics Inc. | Method and apparatus for signal processing and encoding and decoding method, and apparatus therefor |
US7751485B2 (en) | 2005-10-05 | 2010-07-06 | Lg Electronics Inc. | Signal processing using pilot based coding |
KR100857111B1 (en) | 2005-10-05 | 2008-09-08 | 엘지전자 주식회사 | Method and apparatus for signal processing and encoding and decoding method, and apparatus therefor |
US9092170B1 (en) | 2005-10-18 | 2015-07-28 | Nvidia Corporation | Method and system for implementing fragment operation processing across a graphics bus interconnect |
US7447874B1 (en) * | 2005-10-18 | 2008-11-04 | Qlogic, Corporation | Method and system for designing a flexible hardware state machine |
US7653533B2 (en) | 2005-10-24 | 2010-01-26 | Lg Electronics Inc. | Removing time delays in signal paths |
US7752053B2 (en) | 2006-01-13 | 2010-07-06 | Lg Electronics Inc. | Audio signal processing using pilot based coding |
US9024957B1 (en) | 2007-08-15 | 2015-05-05 | Nvidia Corporation | Address independent shader program loading |
EP2758867A4 (en) * | 2011-10-27 | 2015-07-08 | Lsi Corp | Digital processor having instruction set with complex exponential non-linear function |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5418973A (en) * | 1992-06-22 | 1995-05-23 | Digital Equipment Corporation | Digital computer system with cache controller coordinating both vector and scalar operations |
DE69421103T2 (en) * | 1993-01-22 | 2000-06-08 | Matsushita Electric Industrial Co., Ltd. | Program controlled processor |
KR100269213B1 (en) * | 1993-10-30 | 2000-10-16 | 윤종용 | Method for coding audio signal |
US5576765A (en) * | 1994-03-17 | 1996-11-19 | International Business Machines, Corporation | Video decoder |
JP3190204B2 (en) * | 1994-04-12 | 2001-07-23 | ユナイテッド・モジュール・コーポレーション | MPEG standard audio signal decoder |
KR100289733B1 (en) * | 1994-06-30 | 2001-05-15 | 윤종용 | Device and method for encoding digital audio |
-
1996
- 1996-10-15 US US08/732,543 patent/US5893066A/en not_active Expired - Lifetime
-
1997
- 1997-05-02 KR KR1019970016966A patent/KR100218255B1/en not_active IP Right Cessation
- 1997-09-13 TW TW086113321A patent/TW384618B/en not_active IP Right Cessation
- 1997-10-20 JP JP28721797A patent/JP3706230B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
US5893066A (en) | 1999-04-06 |
KR100218255B1 (en) | 1999-09-01 |
KR19980032102A (en) | 1998-07-25 |
JPH10222476A (en) | 1998-08-21 |
TW384618B (en) | 2000-03-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3706230B2 (en) | MPEG audio decoding apparatus and decoding method thereof | |
Peleg et al. | Intel MMX for multimedia PCs | |
RU2273044C2 (en) | Method and device for parallel conjunction of data with shift to the right | |
CA2190797C (en) | High speed digital video decompression | |
US7272622B2 (en) | Method and apparatus for parallel shift right merge of data | |
US6502117B2 (en) | Data manipulation instruction for enhancing value and efficiency of complex arithmetic | |
Lee | Accelerating multimedia with enhanced microprocessors | |
Bhargava et al. | Evaluating MMX technology using DSP and multimedia applications | |
RU2263947C2 (en) | Integer-valued high order multiplication with truncation and shift in architecture with one commands flow and multiple data flows | |
US8412917B2 (en) | Data exchange and communication between execution units in a parallel processor | |
US5835793A (en) | Device and method for extracting a bit field from a stream of data | |
JPH10116268A (en) | Single-instruction plural data processing using plural banks or vector register | |
US5880979A (en) | System for providing the absolute difference of unsigned values | |
US5719998A (en) | Partitioned decompression of audio data using audio decoder engine for computationally intensive processing | |
KR100261374B1 (en) | Image processing device | |
US6192427B1 (en) | Input/output buffer managed by sorted breakpoint hardware/software | |
Golston | Single-chip H. 324 videoconferencing | |
US5781134A (en) | System for variable length code data stream position arrangement | |
US5742529A (en) | Method and an apparatus for providing the absolute difference of unsigned values | |
Tung et al. | MMX-based DCT and MC algorithms for real-time pure software MPEG decoding | |
Basoglu et al. | The MAP1000A VLIM mediaprocessor | |
US6230278B1 (en) | Microprocessor with functional units that can be selectively coupled | |
KR19980018065A (en) | Single Instruction Combined with Scalar / Vector Operations Multiple Data Processing | |
Yoshida et al. | A new generation 16-bit general purpose programmable DSP and its video rate application | |
Eyre et al. | DSPs court the consumer |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20040622 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20040921 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20041109 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20050202 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20050207 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050506 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20050705 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20050728 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080805 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090805 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100805 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110805 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120805 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130805 Year of fee payment: 8 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |