JP3217576B2 - Integrated audio decoder device and method of operation - Google Patents

Integrated audio decoder device and method of operation

Info

Publication number
JP3217576B2
JP3217576B2 JP2272994A JP2272994A JP3217576B2 JP 3217576 B2 JP3217576 B2 JP 3217576B2 JP 2272994 A JP2272994 A JP 2272994A JP 2272994 A JP2272994 A JP 2272994A JP 3217576 B2 JP3217576 B2 JP 3217576B2
Authority
JP
Grant status
Grant
Patent type
Prior art keywords
step
data
audio
bit
value
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
Application number
JP2272994A
Other languages
Japanese (ja)
Other versions
JPH07143010A (en )
Inventor
エル ウォーカー カレン
アール シア ケニス
バンバサ ジェラール
ワイ カム シュー
エル ローランズ ジョナサン
エイチ リ スティーヴン
エル ラズコ フランク
Original Assignee
テキサス インスツルメンツ インコーポレイテツド
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Grant date

Links

Description

【発明の詳細な説明】 DETAILED DESCRIPTION OF THE INVENTION

【0001】 [0001]

【産業上の利用分野】本発明は、一般的には電子システムの分野に関し、具体的には改良された集積オーディオデコーダシステム及び動作方法に関する。 The present invention relates, in general to the field of electronic systems, in particular to an improved integrated audio decoder system and method of operation.

【0002】 [0002]

【従来の技術】映画専門家グループ ( Motion Picture BACKGROUND OF THE INVENTION movie Expert Group (Motion Picture
Experts Group : MPEG )は、ISO-11172 でオーディオ(もしくは音響)及びビデオ(もしくは映像)放送のディジタル送信及び受信に使用する圧縮及び圧縮解除アルゴリズムのための MPEG オーディオ及びビデオ標準(以後“ MPEG 標準”と称する)を公表した。 Experts Group: MPEG) is an audio (or audio-in ISO-11172) and video (or video) MPEG audio and video standards for compression and decompression algorithms used for digital transmission and reception of the broadcast (hereinafter "MPEG standard" referred to as) was published. MPEG 標準は、確立されている音響心理学モデルに従ってデータを効率的に圧縮し、CD品質の音響及びビデオ画像の実時間圧縮、圧縮解除、及び放送を可能にする。 MPEG standard is to efficiently compress the data according to psychoacoustic model being established, real-time compression, decompression of CD quality audio and video images, and enables the broadcast. MPEG 標準は、考え得る3つのデータ転送モードを提供する。 MPEG standard provides three data transfer modes possible. 第1 First
のモードは、オーディオ及びビジュアル(もしくは視覚)データの他に、オーディオ及びビデオ部分の放送を同期させるために使用される情報を含む。 Mode, in addition to audio and visual (or visual) data, including information used to synchronize the broadcast audio and video portions. 考え得るデータ伝送の第2のモードは、オーディオ情報、及びこのオーディオ情報と並列動作しているビデオシステムとを同期させるために使用できる情報を含む。 The second mode of possible data transmission includes information that can be used to synchronize the audio information, and a video system running in parallel with the audio information. 考え得るデータ伝送の第3の、そして最後のモードは、オーディオデータだけからなる。 Third data transmission possible, and the last mode consists only audio data. MPEG 圧縮/圧縮解除標準は、15 メガビット/秒までの速度で受信し、処理しなければならないデータストリームを用いる。 MPEG compression / decompression standards receives at speeds up to 15 Mbit / sec, using a data stream must be processed. MPEG 圧縮解除動作を実現するために使用されていた従来のシステムは、高価なディジタル信号処理装置及び拡張された支援メモリを必要としていた。 Conventional systems that have been used to implement the MPEG decompression operation, have required expensive digital signal processor and extended support memory. 間もなく MPEG オーディオ及びビデオ標準がテレビジョン及びラジオ放送のための大規模伝送システムに使用されるようになろう。 Shortly MPEG audio and video standard will become to be used in large-scale transmission systems for television and radio broadcasting.

【0003】 [0003]

【発明の概要】従って、プログラム可能なディジタル信号処理装置の周囲に集中されているシステムに伴う費用よりも低い費用で、定義された MPEG オーディオ圧縮解除動作を遂行することができるシステムを実現する要望が存在している。 SUMMARY OF THE INVENTION Accordingly, at a lower cost than costs associated with systems that are concentrated around a programmable digital signal processor, desire to realize a system capable of performing the MPEG audio decompression operation defined there has been an existence. 本発明の教示によれば、従来のシステムに伴う欠陥を実質的に減少乃至は排除した集積オーディオデコーダシステムと、MPEG オーディオ圧縮解除動作を実現する方法とが開示される。 According to the teachings of the present invention, to substantially reduce the defects associated with conventional systems and integrated audio decoder system that eliminates, and a method of realizing the MPEG audio decompression operation is disclosed. 本発明の一実施例によるデータ処理システムは、マイクロプロセッサホストシステムと、オーディオデコーダシステムと、ディジタル・アナログ変換器とを備えている。 Data processing system according to an embodiment of the present invention includes a micro-processor host system, and the audio decoder system, and a digital-analog converter. オーディオデコーダは、符号化されたデータストリームを受信し、選択された符号化されたオーディオデータを抽出して復号し、 Audio decoder receives the encoded data stream, and decodes the extracted audio data encoded selected,
そしてデータを濾波してディジタル・アナログ変換器へ入力データとして供給するように動作可能である。 And it is operable to provide as input data to the digital-to-analog converter by filtering the data. 本発明の代替実施例によるオーディオデコーダシステムは、 Audio decoder system in accordance with an alternative embodiment of the present invention,
単一の半導体サブストレート上に実現されたシステムデコーダと、オーディオデコーダと、演算ユニットとを備えている。 It includes a system decoder which is realized on a single semiconductor substrate, and an audio decoder, and an arithmetic unit. システムデコーダは、符号化され圧縮ビットストリームを受信して、このビットストリームを形成するのに使用された圧縮アルゴリズムをシステムの残余部分に指示する情報を抽出するように動作可能である。 System decoder receives the compressed bit stream is encoded, is operable to extract the information indicating the compression algorithm used to form the bit stream to the remainder of the system. オーディオデコーダは、このビットストリームを離散したサンプル及びサブバンドフィルタ係数に変換するように動作可能なマイクロ符号化エンジンを備えている。 The audio decoder includes an operable micro encoding engine to convert the bit stream into discrete samples and a subband filter coefficients. 演算ユニットは、サンプル及びサブバンドフィルタ係数を受信して PCM データを生成し、このデータをシステムからの出力としてディジタル・アナログ変換器へ供給するように動作可能である。 Arithmetic unit receives the sample and sub-band filter coefficients to generate PCM data, is operable to supply to the digital-to-analog converter as the output of the data from the system.

【0004】添付図面に基づく以下の説明から、本発明の技術的長所がより完全に理解されるであろう。 [0004] from the following description taken in conjunction with the accompanying drawings, will technical advantages of the present invention may be more fully understood. 添付図面では同一の要素に対しては同一の番号を付してある。 In the accompanying drawings are denoted by the same numerals for the same elements.

【0005】 [0005]

【実施例】 本発明は、MPEG 構文を使用して符号化され、圧縮されたデータのストリームを効率的に復号するように動作可能なシステムからなる。 EXAMPLES Introduction The present invention is encoded by using the MPEG syntax, comprising a stream of compressed data from system operable to efficiently decoded. データストリームの実時間処理を達成するためには、本発明のシステムが 15 メガビット/秒までの可変ビットレートで伝送可能なビットストリームを受信でき、またそのビットストリーム内の他のデータと共に時分割されている特定のオーディオデータ集合を識別し、検索することができなければならない。 To achieve real-time processing of the data stream, the system of the present invention can receive a bit stream can be transmitted at variable bit rates up to 15 Mbit / s, also time-divided with other data in the bit stream identify a particular audio data set and must be able to search.
次いでシステムは、検索されたデータを復号し、普通のパルス符号変調 ( PCM )されたデータをディジタル・アナログ変換器へ供給しなければならない。 The system then decodes the retrieved data must be supplied to the digital-to-analog converter ordinary pulse code modulation (PCM) data. このディジタル・アナログ変換器は、他のディジタルオーディオ技術に比して遜色のない普通のアナログオーディオ信号を生成する。 The digital-to-analog converter generates in no way inferior ordinary analog audio signal relative to other digital audio technology. 本発明のシステムは、ビットストリーム内の同期、及び復号されたオーディオデータと、この復号されたオーディオデータと同時に提示しなければならない(例えばオーディオに関連付けられ、ディジタル的に符号化されたビデオ画像のような)他のデータストリームとの間の同期をも監視しなければならない。 The system of the present invention, in the bit stream synchronization, and the decoded audio data, associated must simultaneously presented with the decoded audio data (for example audio, the digitally encoded video image such) must also monitor the synchronization between the other data streams. 更に、MPEG In addition, MPEG
データストリームは、システム制御情報として、もしくは歌のタイトル等のような関連データを送信するために使用することができる補助データを含むこともできる。 Data stream may also include auxiliary data that can be used as the system control information, or to send the relevant data such as song title. 本発明のシステムは、この補助データを認識し、他のシステムにその存在を警告しなければならない。 The system of the present invention recognizes this auxiliary data must warn its existence to other systems. 一般的アーキテクチャ図1に示すオーディオ復号システム10は、集積オーディオデコーダシステム14に結合されているマイクロプロセッサホスト12を備えている。 Audio decoding system 10 shown generally Architecture Figure 1 includes a microprocessor host 12 coupled to an integrated audio decoder system 14. オーディオデコーダシステム14は、マイクロプロセッサホスト12から直列ビットストリームか、もしくはホスト12が直列データを並列フォーマットに変換した後の並列データの何れかを受信する。 Audio decoder system 14, either serial bit stream from the microprocessor host 12 or the host 12 receives one of the parallel data after converting the serial data to parallel format. 何れの場合も、オーディオデコーダシステム14が受信するデータは、MPEG オーディオビジュアル圧縮アルゴリズムを使用して符号化されているオーディオ及びビジュアルデータからなっている。 In either case, the data received by the audio decoder system 14 consists of audio and visual data that has been encoded using the MPEG audiovisual compression algorithm. オーディオデコーダシステム14は、そのビットストリームのオーディオ部分のフーマットを指示する適切な情報を検索し、この情報を使用してオーディオデータを復号してパルス符号変調 ( PCM )されたデータを生成し、図1に示すディジタル・アナログ変換器16へ出力する。 Audio decoder system 14 retrieves the appropriate information for instructing Fumatto the audio portion of the bit stream, decodes the audio data to generate pulse code modulation (PCM) data using this information, FIG. output to a digital-to-analog converter 16 shown in 1.

【0006】本発明の一実施例によれば、オーディオデコーダシステム14は単一の半導体サブストレート上のモノリシック構造として形成されている。 According to one embodiment of the [0006] present invention, an audio decoder system 14 is formed as a monolithic structure on a single semiconductor substrate. オーディオデコーダシステム14は、マイクロプロセッサホスト12 Audio decoder system 14, a microprocessor host 12
からの制御信号と、符号化されたビットストリームとを受信するホストインタフェースブロック18を備えている。 A control signal from, a host interface block 18 for receiving a bit stream encoded. ホストインタフェースブロック18は、符号化されたビットストリームをシステムデコーダブロック20へ渡す。 Host interface block 18 passes the encoded bit stream to the system decoder block 20. ホストインタフェースブロック18は、マイクロプロセッサホスト12への、及びホスト12からの、圧縮されたオーディオデータ及び制御情報の両者のための全ての通信の経路を指定する。 Host interface block 18 specifies to the microprocessor host 12, and from the host 12, the path of all communications for both compressed audio data and control information. ホストインタフェースブロック18は、例えば、普通の8ビットマイクロプロセッサインタフェースと、直接メモリアクセス( DMA ) インタフェースと、直列データ入力インタフェースと、複数の制御線とからなることができる。 Host interface block 18, for example, a normal 8-bit microprocessor interface, a Direct Memory Access (DMA) interface, may consist of a serial data input interface, a plurality of control lines. またホストインタフェースブロック18は、割込み信号をマイクロプロセッサホスト12へ通信するが、この件の詳細に関しては後述する。 The host interface block 18, which communicates an interrupt signal to the microprocessor host 12, will be described later detail this matter of. 圧縮されたオーディオストリームは3つのモードの1つを使用して入力することができる。 Compressed audio stream can be entered using one of three modes. この入力は、ホストインタフェースブロック18の直列データ入力を通る直列ビットストリームとすることができる。 This input may be a serial bit stream through the serial data input of the host interface block 18. 更に、データは、ホストインタフェースブロック18に結合されている8データピン上にバイト並列フォーマットで入力することもできる。 Furthermore, data can also be entered in byte parallel format on 8 data pins being coupled to the host interface block 18. 並列データ Parallel data

【0007】 [0007]

【外1】 [Outside 1] マイクロプロセッサホスト12による普通の DMA に類似している。 It is similar to an ordinary DMA by the microprocessor host 12. もし並列データを DATA If the parallel data DATA IN レジスタ内へ書込むのであれば、各バイトが普通のレジスタアドレス指定を使用してアクセスされる前に、データをアドレス指定しなければならない。 If the writing to the IN register, before each byte is accessed using an ordinary register address specified, it must address the data. ホストインタフェースブロック18によって受信される圧縮されたデータは、3つのフォーマットの1つであることができる。 Compressed data is received by the host interface block 18 may be one of three formats. このフォーマットは、制御状態レジスタブロック22内の2ビット This format, two bits of control status register block 22
STR STR SEL レジスタの内容を変更することによって、ホスト12により制御される。 By changing the contents of the SEL register is controlled by the host 12. 圧縮されたデータストリームは、MPEGオーディオ情報だけ、 MPEG オーディオパケット、もしくは1またはそれ以上のオーディオ及びビデオストリームを含むことができる完全多重化された MPE Compressed data stream, only MPEG audio information, has been fully multiplexed may include MPEG audio packet or one or more audio and video streams, MPE
G システムストリームからなることができる。 It may consist of G system stream. 完全多重化された MPEG システムストリームの場合には、付加的な制御レジスタがオーディオ識別フィールドの復号を動作可能にしたり、動作不能にしたりする。 In the case of fully multiplexed MPEG system stream, additional control registers or to enable the decoding of the audio identification field, or inoperable. もしこの機能が動作可能にされれば、MPEG システムストリーム内の識別フィールドが AUD If If this feature is operational, the identification field in an MPEG system stream AUD ID レジスタの内容と比較され、識別フィールドが整合すればオーディオだけが復号される。 Is compared with the contents of the ID register, the identification field only audio is decoded if matching. 一般的に言えば、制御状態レジスタブロック2 Generally speaking, the control status register block 2
2内のレジスタは、マイクロプロセッサホスト12によって書込まれてオーディオデコーダシステム14の動作を制御する。 Register in 2 is written by the microprocessor host 12 controls the operation of the audio decoder system 14. オーディオ識別機能を動作可能にしたり、 Or to enable the audio identification function,
動作不能にしたりするのは、この制御の一例である。 It is to or inoperable, is an example of this control.

【0008】 [0008]

【外2】 [Outside 2] SADDR を使用して制御状態レジスタブロック22内のレジスタにアクセスする Using the SADDR in access registers in the control status register block 22

【0009】 [0009]

【外3】 [Outside 3] ロック22内の制御状態レジスタの省略時セッティングは存在しない。 The default setting of the control status register in the lock 22 is not present. 集積オー Integrated O

【0010】 [0010]

【外4】 [Outside 4] ジスタブロック22内の RESET レジスタへホスト書込みすることによってリセットすることができる。 To the RESET register in register block 22 can be reset by the host write. 何れの場合も、集積オーディオデコーダシステム14内の割込みバッファ及び全てのデータバッファはクリアされる。 In either case, the interrupt buffer and all of the data buffer in the integrated audio decoder system 14 is cleared.
システムデコーダブロック20は、ビットストリームから適切な符号化されたデータを識別し、検索して、この情報を図1に示す入力バッファ24内へロードする。 System decoder block 20 identifies the appropriate encoded data from the bit stream, find and be loaded into the input buffer 24 in indicating this information in FIG. 入力バッファ24は、オーディオデコーダシステム14内の残余の構造と同一の半導体サブストレート上に配置されており、そのことから比較的小さいものである。 Input buffer 24 is disposed in the audio decoder system remaining structures on the same semiconductor substrate in 14, it is relatively small due to its. 本発明の重要な長所は、例えばダイナミックランダムアクセスメモリ( DRAM )からなることができる外部バッファ2 An important advantage of the present invention are for example external buffer 2 which can consist of dynamic random access memory (DRAM)
6を付加することによって、システムの記憶容量を増強できるという事実によって得られる。 By adding 6, obtained by the fact that it enhances the storage capacity of the system. 外部バッファ26 External buffer 26
を付加することによって、集積オーディオデコーダシステム14はビデオ復号システムと共に動作可能になる。 By adding, integrated audio decoder system 14 becomes operational with the video decoding system.
ビデオ情報の復号にはオーディオ情報の復号よりも遥かに長い時間を必要とするので、オーディオ復号システム10とビデオ復号システムとを一緒に動作させる場合には、オーディオ復号システム10は復号プロセスに遅延を挿入できなければならない。 Because it requires a much longer time than the decoding of the audio information to the decoding of video information, when operating the audio decoding system 10 and the video decoding system together, the audio decoding system 10 delays the decoding process It must be inserted. 外部バッファ26はオーディオデコーダシステム14が留まることを可能にし、 External buffer 26 allows the audio decoder system 14 remains,
それによってビデオ復号が進行できるようにする。 Whereby the video decoding to be able to proceed. 更に、外部バッファ26は、それが誤りを全く含まない最後のオーディオ情報フレームを記憶する能力を有していれば、オーディオデコーダシステム14が極めて巧妙な誤り隠し戦略を遂行することをも可能にする。 Furthermore, the external buffer 26, it is if it has the capacity to store the last audio information frame contains no errors, also allows the audio decoder system 14 to perform very sophisticated error concealment strategy . もし外部バッファ26が使用可能であれば、オーディオデコーダシステム14はオーディオ情報の最後の良好なフレーム If the external buffer 26 is available, the last good frame of an audio decoder system 14 audio information
( last good frame : LGF ) を再生し、伝送プロセス中に劣化した中間フレームを隠すことができる。 (Last good frame: LGF) plays a, can hide an intermediate frame degraded during transmission process. 集積オーディオデコーダシステム14は、外部バッファ26が存在するか否かを自動的に検出し、それに相応して誤り隠し戦略を調整する。 Integrated audio decoder system 14 automatically detects whether the external buffer 26 is present, then correspondingly adjust the error concealment strategy. 換言すれば、もし最後の劣化していないフレームを記憶するための記憶容量が存在すれば、 In other words, if there is storage capacity for storing a frame that is not if last degradation,
集積オーディオデコーダシステム14はその容量の長所を取入れてより巧妙な誤り隠し戦略を実現するのである。 Integrated audio decoder system 14 is to achieve a more sophisticated error concealment strategy incorporates the advantages of its capacity.

【0011】符号化されたオーディオデータは、入力バッファ24及び外部バッファ26からオーディオデコーダブロック28によって検索される。 [0011] encoded audio data is retrieved by the audio decoder block 28 from the input buffer 24 and the external buffer 26. オーディオデコーダブロック28はプログラム可能な演算論理ユニット( Audio decoder block 28 programmable arithmetic logic unit (
ALU ) を備えている。 Has an ALU). このユニットは、バッファ24及び26からビットストリームを検索し、そのビットストリームを断ち切って符号化及び圧縮プロセスに使用したサブバンドに関連付けられた符号化されたサンプルにする。 This unit retrieves the bit stream from the buffer 24, and 26, to a sample that is encoded associated with the sub-band used for encoding and compression process cut off the bit stream. またオーディオデコーダブロック28は、最終 PCM The audio decoder block 28, the last PCM
出力データを生成するために使用されたサブバンドフィルタ係数をも検索する。 Also search for the subband filter coefficients used to generate the output data. 符号化及び圧縮フォーマット中に、オーディオ情報は PCM オーディオからフレームと呼ばれる単位のサブバンドデータに変換される。 Coding and during the compression format, the audio information is converted into sub-band data unit called a frame from PCM audio. フレームは、設定された間隔の(例えば 24 ミリ秒程度のオーディオ再生時間に対応する)実時間オーディオ情報からなる。 Frame, (corresponding to the audio reproduction time of, for example, about 24 ms) of the set interval consisting realtime audio information. フレームは 12 のブロックに細分されている。 Frame is subdivided into blocks of 12.
データ伝送の一形状によれば、単一のブロックは3つの組に細分される。 According to one form of data transmission, a single block is subdivided into three sets. 各組は、32 のステレオサンプルからなる。 Each set consists of 32 of the stereo sample. 各サンプルは、16 もしくは 18 の何れかの情報ビットであり、0 kHz 乃至 20 kHz にわたる周波数域の概ね 750 Hz のサブバンド断片(もしくはスライス) Each sample is 16 or 18 one of the information bits, generally 750 Hz sub-band fragments frequency range over 0 kHz to 20 kHz (or slices)
に対応する。 Corresponding to. これは、おおよそ可聴周波数範囲に対応している。 This corresponds to approximately the audible frequency range. MPEG 圧縮アルゴリズムは、サンプルを先ずサブバンドサンプルに変換し、次いで縮尺されたサンプルが+1から−1までの範囲に入るようにそれらを正規化もしくは「縮尺」( scale ) する。 MPEG compression algorithm, converts the sample first into sub-band samples, and then samples scales them to normalize or "scale" (scale) to fall in the range from +1 to -1. 更に、各サンプルは、可変数のビットを使用して特定のサンプルを符号化することができる。 Moreover, each sample can be encoded certain samples using variable number of bits. 例えば、若干の周波数帯域では、その周波数帯域内の量子化雑音が人間の耳には聞こえないので、精密な 16 の全ビットを使用する必要はない。 For example, in some frequency bands, since the quantization noise in the frequency band can not hear the human ear, it is not necessary to use all the bits of precision 16. これらの場合、より少数のビットを使用いてサンプルを符号化することができる。 In these cases, it is possible to encode the samples had using fewer bits. オーディオデコーダブロック2 Audio decoder block 2
8はこれらのサンプルを 16 ビット値まで拡張し、これらのサンプルと、これらのサンプルに関連付けられた縮尺係数索引値とを図1に示す演算ユニット(AU )バッファ30内に記憶する。 8 extend these samples up to 16-bit values, and these samples and stores the scale factor index values ​​associated with these samples to the arithmetic unit (AU) buffer 30 shown in FIG. 縮尺係数索引値は、サブバンドデータを「正規化解除」もしくは量子化解除するための縮尺係数を検索するために使用することができる。 Scale factor index values ​​may be used subband data to find the scale factor for releasing or quantized "normalized release". 演算ユニットバッファ30は、図1に示すハードウェアフィルタ演算ユニットブロック32へサンプル及び縮尺係数索引を出力する。 Arithmetic unit buffer 30 outputs the sample and scale factor index to hardware filter arithmetic unit block 32 shown in FIG. ハードウェアフィルタ演算ユニットブロック32は、サブバンドサンプルを量子化解除し、変換し、そして濾波して普通のPCMオーディオ情報を形成することによって、16ビットからのオーディオ情報の復号を完了させるように機能する。 Hardware filter operational unit block 32, the subband samples and dequantized, transformed, and then filtered by forming an ordinary PCM audio information, functions to complete the decoding of the audio information from the 16-bit to. この PCM オーディオ情報は図1に示す PCM バッファ34へ出力される。 The PCM audio information is output to the PCM buffer 34 shown in FIG. PC PC
M バッファ34は、PCM バッファ34からデータを検索してそのデータを普通のディジタル・アナログ変換器1 M buffer 34, ordinary digital-to-analog converter the data by searching the data from the PCM buffer 34 1
6へ出力する PCM 出力ブロック36によってアクセスされる。 It is accessed by the PCM output block 36 for outputting to 6.

【0012】演算ユニットバッファ30から後段のオーディオデコーダシステム14の成分はハードワイヤードシステムからなる。 [0012] The components of the rear stage of the audio decoder system 14 from the arithmetic unit buffer 30 consists of a hardwired system. MPEG データストリームが時分割されているために、演算ユニットバッファ30から前段の全成分は、ホストインタフェースブロック18が受信する未知の瞬時ビットレートを処理することができなければならない。 For MPEG data stream is divided up, all components of the front stage from the arithmetic unit buffer 30 must be able to handle unknown instantaneous bitrate host interface block 18 receives. 演算ユニットバッファ30は、PCM オーディオ情報をディジタル・アナログ変換器16へ定常的に供給し続けることができるように、データストリームを緩衝する。 Arithmetic unit buffer 30, so that it can continue to constantly supply the PCM audio information to a digital-to-analog converter 16, to buffer the data stream. ディジタル・アナログ変換器16は 1.5 メガビット/秒程度で PCM オーディオデータを要求する。 Digital-to-analog converter 16 requires the PCM audio data in the order of 1.5 Mbits / sec. 一方、ホストインタフェースブロック18が受信するビットストリームの瞬時ビットレートは、MPEG 標準では 15 メガビット/秒程度に高くすることができる。 On the other hand, the instantaneous bit rate of the bit stream by the host interface block 18 receives, in MPEG standard may be as high as 15 Mbit / sec.
PCM オーディオ情報をディジタル・アナログ変換器16 Digital PCM audio information to analog converter 16
に定常的に供給し続けるために、オーディオデコーダシステム14は、何等かの PCM データがディジタル・アナログ変換器16へ出力されるまでに PCM バッファ3 To continue to constantly supplied to the audio decoder system 14, PCM buffer 3 by some kind of PCM data is output to the digital-to-analog converter 16
4内に4ブロックのデータを挿入するのに十分なデータを復号する。 Decoding the data sufficient to insert the data of four blocks in the 4. この4ブロックのクッションを設けたために、PCM バッファ34は決して空にならず、また PCM To provided a cushion for the four blocks, PCM buffer 34 does not become never empty, also PCM
オーディオデータが常にディジタル・アナログ変換器1 Always-analog audio data converter 1
6へ出力されるようになる。 It will be output to 6. 制御及び状態レジスタ制御状態レジスタブロック22は、前述した DATA Control and status register control status register block 22, the aforementioned DATA IN IN
レジスタを含んでいる。 It includes a register. マイクロプロセッサホスト1 Microprocessor host 1
2は、メモリ写像モード中に DATA 2, DATA in the memory mapping mode IN レジスタを使用してデータをオーディオデコーダシステム14へ入力することができる。 Data can be input to the audio decoder system 14 using the IN registers. 制御状態レジスタブロック22は、 Control status register block 22,
CRC 誤りを処理するためにオーディオデコーダシステム14が使用する「誤り隠しモード」を指定する「CRC 誤り隠しモード」もしくは CRC Audio decoder system 14 to process the CRC error is used to specify the "error concealment mode" "CRC error concealment mode" or CRC ECM レジスタをも含んでいる。 Also it includes the ECM register. マイクロプロセッサホスト12は、CRC 検出を動作不能にさせたり、CRC 誤りが検出された場合に出力を沈黙( mute )させたり、CRC 誤りが検出された場合にオーディオデータの最後の有効フレームを繰り返させたり、もしくは CRC 誤りが検出された場合に何れかのフレームを飛ばさせたり( skip )するように、オーディオデコーダシステム14をプログラムすることができる。 Microprocessor host 12, or it is inoperable for CRC detection, or silenced (mute) the output when the CRC error is detected, so repeat the last valid frame of audio data if the CRC error is detected or or either to or (skip) was skipped frames when the CRC error is detected, it is possible to program the audio decoder system 14.

【0013】同様に、マイクロプロセッサホスト12 [0013] Similarly, the microprocessor host 12
は、同期誤りを処理するためにオーディオデコーダシステム14が使用する「誤り隠しモード」を指定するのに、制御状態レジスタブロック22内の「同期誤り隠しモード」もしくは SINC It is to specify the "error concealment mode" in which the audio decoder system 14 to process a synchronization error using "synchronization error concealment mode" control state register block 22 or SINC ECM レジスタを使用する。 Using the ECM register. 同期誤りが検出された場合に同期誤りを無視させるか、または主力を沈黙させたり、同期誤りが検出された場合にオーディオデータの最後の有効フレームを繰り返させたり、もしくは同期誤りが検出された場合に何れかのフレームを飛ばさせたりするように、オーディオデコーダシステム14に命令することができる。 Or synchronization error to ignore a synchronization error when it is detected or or to silence mainstay, if or to repeat the last valid frame of audio data or synchronization error is detected when the synchronization error is detected as or to skip any of the frames, it is possible to instruct the audio decoder system 14. 制御状態レジスタブロック22内の PLAY レジスタは復号され PLAY register of the control status register block 22 is decoded

【0014】 [0014]

【外5】 [Outside 5] 力線の両者がマイクロプロセッサホスト12によって表明されている場合に限り、オーディオデコーダシステム14からオーディオデータを出力することが可能になる。 Only when both the field lines are asserted by the microprocessor host 12, it is possible to output the audio data from the audio decoder system 14. PLAY レジスタの値が、沈黙させられたオーディオデータ出力に影響を与えることはない。 The value of the PLAY register, does not affect the audio data output which is silenced. これに対して制御状態レジスタブロック22内の MUTE レジスタは PCM MUTE register of the control status register block 22 whereas PCM
データの出力の沈黙を強制する。 To force the silence of the output of data. MUTE レジスタか、 Or MUTE register,
もしくはオーディオデコーダシ Or audio decoder Shea

【0015】 [0015]

【外6】 [Outside 6] 表明されている場合には、オーディオデコーダシステム14からの出力は沈黙させられる。 If it is asserted, the output from the audio decoder system 14 is silenced. 出力データの沈黙が、オーディオデコーダシステム14内で行われている復号プロセスに影響を与えることはない。 Silence of the output data, does not affect the decoding process taking place in the audio decoder within the system 14. マイクロプロセッサホスト12は、SKIP レジスタを使用して次のオーディオフレームを飛ばすようにオーディオデコーダシステム14に命令することができる。 Microprocessor host 12 may use the SKIP register instructs the audio decoder system 14 to skip the next audio frame. 次のオーディオフレームを飛ばした後に、オーディオデコーダシステム1 After skipping the next audio frame, the audio decoder system 1
4は REPEAT レジスタをリセットする。 4 resets the REPEAT register. REPEAT レジスタは、入力バッファ24もしくは外部バッファメモリ2 REPEAT register, an input buffer 24 or external buffer memory 2
6の容量が十分である場合に限って活動になる。 Capacity of 6 becomes active only if it is sufficient. 前述したように、制御状態レジスタブロック22内の RESET As described above, RESET control state register block 22
レジスタはオーディオデコーダシステム14をリセット Register resets the audio decoder system 14

【0016】 [0016]

【外7】 [Outside 7] 入力線の何れかが表明されるとリセットされる。 When one of the input lines is asserted to reset. このリセットにより、割込み(INTR )レジスタがリセットされ、全てのデータバッファがフラッシュ (flush )される。 This reset, interrupt (INTR) register is reset, all the data buffers are flushed (flush). 更に、リセット時にオーディオデコーダシステム1 Furthermore, the audio decoder system 1 at reset
4は、外部バッファ26(もし存在していれば)を探知し、その大きさを調べる。 4 is to detect external buffer 26 (if present), examine its size. 制御状態レジスタブロック2 Control status register block 2
2内の RESTART レジスタは、制御レジスタに影響を与えることなくオーディオデコーダシステム14に全てのデータバッファをフラッシュさせる。 RESTART register in 2 to flush all data buffers to the audio decoder system 14 without affecting the control register. マイクロプロセッサホスト12は、制御状態レジスタブロック22内のストリング選択即ち STR Microprocessor host 12, string selection i.e. STR control state register block 22 SEL レジスタを使用して任意の1時点におけるビットストリームの MPEG フォーマットを識別する。 Identifying the MPEG format of the bit stream at any one time by using the SEL register. 本発明の集積システムの重要な技術的長所は、リセットを必要とすることなく異なるビットストリームフォーマット間を切り換えるその能力にある。 An important technical advantage of the integrated system of the present invention is its ability to switch between different bitstreams format without the need for resetting. MPEG MPEG
オーディオ圧縮/圧縮解除標準によれば、ビットストリームのフォーマットが変化した場合にはシステムをリセットすることが許される。 According to the audio compression / decompression standards, if the format of the bit stream is changed are allowed to reset the system. たとえフォーマットがこのようなリセットを許したとしても、本発明のシステムはフレーム単位で、実時間で復号プロセスを変化させる独特の能力を有している。 Even if the format is allowed such a reset, the system of the present invention is a frame-by-frame basis, and has a unique ability to alter the decoding process in real time. 制御状態レジスタブロック22 Control status register block 22
内の「オーディオ識別可能化」もしくは AUD "Audio identifiable" of the inner or AUD ID ID EN EN
レジスタは、上述したオーディオストリーム識別機能を動作可能にしたり、もしくは動作不能にしたりする。 Register, or to enable the audio stream identification function described above, or or inoperable.
「オーディオ識別」もしくは AUD "Audio identification" or AUD ID レジスタは5ビットのレジスタであり、MPEG システム層内の復号すべき1乃至 32 の考え得るオーディオストリームを指定する。 ID register is a 5-bit register that specifies an audio stream conceivable 1 to 32 to be decoded in the MPEG system layer. このレジスタは、もしオーディオストリーム識別機能が動作可能にされていなければ無視される。 This register is ignored unless if audio stream identification function is operable.

【0017】マイクロプロセッサホスト12は「PCM 順序」もしくは PCM [0017] The microprocessor host 12 "PCM order" or PCM ORD レジスタを使用して、PCM 出力データの順序を指定する。 Use ORD register, specifies the order of the PCM output data. このレジスタは最初に出力するのは各 PCM サンプルの最上位ビットか、もしくは最下位ビットかを指定する。 This register to output first is whether the most significant bit of each PCM sample, or specify whether the least significant bit. 「同期状態」もしくは SYNC "Synchronization state" or SYNC
ST レジスタは、オーディオデコーダシステム14の同期状態を通信する絶えず更新されるレジスタである。 ST register is a register that is updated continuously communicating synchronization state of the audio decoder system 14.
システムは、同期にロックしている、ロックしていない、もしくはロックしていないで同期を回復しようと試みている、の何れかであり得る。 System, is locked in sync, not locked, or is attempting to recover the synchronization is not locked, can be either. 制御状態レジスタブロック22内の「同期ロック」もしくは SYNC "Sync lock" or SYNC control state register block 22 LCK レジスタは、システム14自体がロックされた状態であると見做すことができるようになるまでに、見出さなければならない十分な同期語の数を指定する。 LCK register system 14 before itself will be able to be regarded If it is locked, that specifies the number of enough synchronization words which must be found. 圧縮された入力ビットストリームは、復号プロセスが正確に発生するようになるまでに同期されていなければならない。 Compressed input bitstream, the decoding process must be synchronized to until the generated accurately. 同期は、符号化の際にデータストリーム内に挿入される同期語を探すことによって達成される。 Synchronization is achieved by looking for sync word to be inserted into the data stream during encoding. 同期は、オーディオフレームと、システム層レベル(もしこの層が存在するならば)とにおいて遂行されなければならない。 Synchronization, and audio frames, must be performed in the system layer level (if this layer is present). オーディオデコーダシステム14は初期始動時に、及びデータストリーム内の誤りのために同期が失われると何時でも、同期取得を遂行する。 Audio decoder system 14 at the initial startup and for error in the data stream at any time when the synchronization is lost, performs synchronization acquisition. 同期取得に使用されるデータを探知するために用いられるプロセスに関しては、図2 For the process used to detect data which is used for synchronization acquisition, Figure 2
に基づくシステムデコーダブロック20の説明の際に詳述する。 Detail in the description of the system decoder block 20 based on.

【0018】制御状態レジスタブロック22内の HEADE [0018] HEADE of control status register block 22
R レジスタは 20 ビットのレジスタであり、現在復号中のフレームの見出しを記憶するために使用される。 R register is a register of 20 bits, is used to store the heading of the frame currently being decoded. 33 33
ビットの PTS レジスタも制御状態レジスタブロック2 Bit of the PTS register also control status register block 2
2内に含まれており、現在復号中のフレームに関連付けられた提示(もしくはプレゼンテーション)タイムスタンプ(time stamp)を含む。 Is contained within the 2, includes presentation associated with the frame currently being decoded (or presentation) time stamp (time stamp). 制御状態レジスタブロック22内の 15 ビットのレジスタである「バッファ」もしくは BUFF レジスタは、 32 ビット語インクリメントで入力バッファ内に保持中のデータの量を含む。 A register 15 bits of the control status register block 22 "buffer" or BUFF register contains the amount of data being held in the input buffer 32-bit word increments. このレジスタ内の値は、32 ビットのデータが入力バッファ24 The value in this register, the input 32-bit data buffer 24
へ書込まれる毎に更新される。 It is updated each time it is written fart statement. 制御状態レジスタブロック22内の BALE BALE control state register block 22 LIM レジスタは 15 ビットのレジスタであり、マイクロプロセッサホスト12はこのレジスタを使用して入力バッファ24の「殆ど一杯」限界を設定する。 LIM registers are 15-bit registers, the microprocessor host 12 sets "full most" limits of the input buffer 24 with this register. 同様に、マイクロプロセッサホスト12は BAL Similarly, the microprocessor host 12 BAL
E E LIM レジスタを使用して入力バッファ24の「殆ど空」限界を設定する。 Use the LIM register to set the "almost empty" limit of the input buffer 24. 制御状態レジスタブロック22内の「補助データ」レジスタもしくは ANC レジスタはデータストリーム内の補助データの最後の 32 ビットを保持する 32 ビットの FIFO (もしくは、先入れ先出し) "Auxiliary data" register or ANC register of 32 bits for holding the last 32 bits of auxiliary data in the data stream FIFO in the control status register block 22 (or first-in-first-out)
レジスタである。 It is a register. MPEG 標準では、同一データストリーム内にオーディオ及びビデオデータとして補助データを伝送することを許している。 The MPEG standard, which allows to transmit the auxiliary data as the audio and video data in the same data stream. 補助データレジスタはシステムの活動を監視し、制御するために使用でき、そのためオーディオデコーダシステム14は注意深く処理しなければならない。 Auxiliary data register monitors system activity, can be used to control, therefore the audio decoder system 14 must be carefully treated. 補助データバッファは、一杯になった時にビット単位で新しいデータと置換することができ、 Auxiliary data buffer can be replaced with new data bit by bit when it becomes full,
または補助データが ANC レジスタから読出されるか、 Or the auxiliary data is read from the ANC register,
もしくは割込みがマスクされるまで、マイクロプロセッサホスト12への一杯割込みを生成してオーディオデータのさらなる処理を停止させることもできる。 Or until the interrupt is masked, it is also possible to stop the further processing of the audio data to generate a full interrupt to the microprocessor host 12. ANC ANC AV AV
レジスタは、ANC レジスタ内の使用可能な補助データのビット数を保持する。 Register holds the number of bits of the auxiliary data available in the ANC register. ANC ANC AV レジスタは、ANC レジスタが読出される前にマイクロプロセッサホスト12 AV register, the microprocessor host 12 before the ANC register is read
によって読出されなければならない。 It must be read by.

【0019】オーディオデコーダシステム14は、圧縮されたオーディオビットストリームに外部的に同期されているクロック入力 ( PCM The audio decoder system 14 externally has a clock input that is synchronized to the compressed audio bit stream (PCM CLK ) を使用する。 Using the CLK). このクロック信号は、実際の PCM 出力ビットレートであってもよいし、もしくはそのビットレートの整数倍であってもよい。 This clock signal may be a real PCM output bit rate, or may be an integer multiple of the bit rate. オーディオデコーダシステム14は、PCM Audio decoder system 14, PCM CLK CLK
入力を制御状態レジスタブロック22内に記憶されている PCM PCM stored in the input control condition register block 22 DIV レジスタの値で除すことによって( PCM (PCM by dividing the value of DIV register
CLK 入力から) 導出される。 From the CLK input) it is derived. PCM PCM DIV レジスタは 11 DIV register 11
ビットのレジスタであり、1から 1,024 までの整数値を記憶している。 A register bit stores an integer value from 1 to 1,024. PCM PCM CLK 入力から PCM ビットクロックを導出することによって、オーバサンプリングディジタル・アナログ変換器を使用することができる。 By deriving the PCM bit clock from CLK input, it can be used oversampling digital-to-analog converter. LATE LATE
NCY レジスタは、本発明の同期先取り機能を動作可能にする効果を有するデコーダ待ち時間を選択するために使用される。 NCY register is used to select the decoder latency which has the effect of allowing operation of the synchronous prefetch function of the present invention. 同期先取り機能が動作可能になると、オーディオデコーダシステム14はデータのフレームを復号する前に複数の同期語を検出する。 When synchronization prefetch function is operational, the audio decoder system 14 detects a plurality of synchronization word before decoding a frame of data. 制御状態レジスタブロック22内の FREE FREE control state register block 22 FORM レジスタは 11 ビットのレジスタであり、自由フォーマット復号が進行中である場合にマイクロプロセッサホスト12はこのレジスタを使用してフレーム長(もし既知であれば)を指定する。 FORM registers are 11-bit registers, the microprocessor host 12 when the free format decoding is underway specifies the frame length by using this register (if if known). マイクロプロセッサホスト12は SIN Microprocessor host 12 SIN EN レジスタを使用して、オーディオデコーダシステム14内へ並列データを入力させるのか、もしくは直列データを入力させるのかを指定する。 Use EN register, whether to input the parallel data to the audio decoder system 14, or specify whether to input the serial data.

【0020】制御状態レジスタブロック22内の ATTEN [0020] ATTEN control state register block 22
L レジスタ及び ATTEN L register and ATTEN R レジスタは各々6ビットのレジスタであり、それぞれ左もしくは右チャネルの減衰に関する0乃至 63 の整数値を保持するように機能する。 R register are each 6-bit register functions to respectively hold integer values ​​from 0 to 63 relating to the attenuation of the left or right channel. これらのレジスタは復号及び圧縮解除プロセス中に使用され、ステレオオーディオデータの左チャネルと右チャネルとの間のバランスをプログラム可能にする。 These registers are used during the decoding and decompression process, allowing programs to balance between the left and right channels of stereo audio data. 制御状態レジスタブロック22内の PCM PCM control state register block 22 18 レジスタは、PCM 出力ブロック36の出力の精細度を指定するために使用される。 18 registers are used to specify the resolution of the output of the PCM output block 36. 出力の精細度は、16 ビットPCM 出力もしくは 18 ビット PCM 出力の何れかを選択可能である。 Resolution output can be selected one of the 16-bit PCM output or 18-bit PCM output. PCM PCM FSレジスタは2ビットのレジスタであり、サンプリングレートを 32 kHz 、44.1 kHz、もしくは 48 FS register is a 2-bit register, a sampling rate 32 kHz, 44.1 kHz or 48,
kHz の何れかに指定する。 Specified in any of kHz. DMPH レジスタは2ビットのレジスタであり、オーディオストリームの符号化中に使用されたデエンファシスのモードを指定する。 DMPH register is the 2-bit register, specifying the mode of deemphasis used during encoding of the audio stream. SRC 及び SRC and
IRC レジスタは共に 33 ビットのレジスタであり、それぞれシステム基準クロック値及び内部基準クロック値を記憶するために使用される。 IRC register are both 33-bit register is used to store system reference clock value and the internal reference clock values. IRC IRC LOAD レジスタは、復号されたシステム基準クロック値を IRC レジスタへロードする。 LOAD register loads the decoded system reference clock value to IRC register.

【0021】DRAM [0021] DRAM EXT レジスタは、外部バッファ26 EXT register, the external buffer 26
が存在するか否かを指定するために使用される。 There are used to specify whether present. もし外部バッファ26が存在しなければ、256 バイトの内部入力バッファ24だけが使用される。 If no external buffer 26 is present, only the internal input buffer 24 of the 256 bytes are used. 前述したように、このレジスタ内の値はオーディオデコーダブロック28が使用する(特にオーディオデコーダブロック28が誤りが無く復号された最後のフレームを再生する能力を有しているか否かに依存して使用する)誤り隠し戦略を変化させる。 As described above, using the value in the register audio decoder block 28 is used (especially audio decoder block 28 depending on whether it has the ability to play last frame where an error is not decoded to) to change the error concealment strategy. EOS レジスタは、ストリームコードの終わりを検出したか否かを指示する。 EOS register indicates whether it has detected the end of the stream code. 「割込み」もしくは INTR "Interrupt" or INTR
レジスタは 16 ビットのレジスタであり、種々の割込みをマイクロプロセッサホスト12へ通信する。 Registers are 16-bit registers, communicates various interrupt to the microprocessor host 12. INTR レジスタのビット0は、オーディオデコーダシステム14 Bit 0 of the INTR register audio decoder system 14
の同期状態に変化が発生するとセットされる。 Change in the synchronization state is set to occur in. INTR レジスタのビット1は、有効見出し(header)がオーディオデコーダシステム14によって登録されるとセットされる。 Bit 1 of the INTR register valid heading (header) is set and registered by the audio decoder system 14. INTR レジスタのビット2は、有効提示タイムスタンプがオーディオデコーダシステム14によって登録されるとセットされる。 Bit 2 of the INTR register effective presentation time stamp is set and registered by the audio decoder system 14. INTR レジスタのビット3は、 Bit 3 of the INTR register,
入力バッファが前述した BALE BALE the input buffer has been described above LIM レジスタ内に記憶されている殆ど空限界以下になるとセットされる。 Most stored in LIM register is set and becomes equal to or less than the empty limit. INTR INTR
レジスタのビット4は、入力バッファが前述した BAL Bit 4 of the register, the input buffer has been described above BAL
E E LIM レジスタ内に記憶されている殆ど一杯限界を超えるとセットされる。 Most stored in LIM register is set when full exceeds the limit. INTR レジスタのビット5は、CR Bit 5 of the INTR register, CR
C 誤りが検出されるとセットされる。 C error is set when it is detected. INTR レジスタのビット6は、補助データがオーディオデコーダシステム14によって登録されるとセットされる。 Bit 6 of the INTR register auxiliary data is set and registered by the audio decoder system 14. INTRレジスタのビット7は、補助レジスタが一杯になるとセットされる。 Bit 7 of the INTR register is set when the auxiliary register is full. INTR レジスタのビット7がセットされると、その補助データがマイクロプロセッサホスト12によって読出されるか、もしくはを割込みビット7がマスクされるまで、さらなる補助データを補助データ FIFO 内へ配置することが禁止される。 When bit 7 of the INTR register is set, it prohibited that the auxiliary data is either read by the microprocessor host 12, or until an interrupt bit 7 is masked, placing additional auxiliary data to the auxiliary data FIFO in It is. INTRレジスタのビット8は、PC Bit 8 of the INTR register, PC
M バッファ34が下位けたあふれ状態になるとセットされる。 M buffer 34 is set becomes lower digit overflow state. INTR レジスタのビット9は、ビットストリームのサンプリング周波数が変化するとセットされる。 Bit 9 of the INTR register is set when the sampling frequency of the bit stream changes. 同様に、 INTR レジスタのビット10は、ビットストリームのデエンファシスモードが変化するとセットされる。 Similarly, bits 10 INTR register is set when the de-emphasis mode bit stream is changed. IN IN
TR レジスタのビット11は、ストリーム文字の終わりが検出されるとセットされる。 Bit 11 of the TR register is the end of the stream character is set when it is detected. INTR INTR ENレジスタは、IN EN register, IN
TR レジスタに対応する 16 ビットのレジスタである。 A register 16 bits corresponding to the TR register.
INTR INTR EN レジスタの何れかの位置が1になると、INTR When any position of the EN register is 1, INTR
レジスタ内のそれに対応するビットが可能にされる。 Bits corresponding to that of the register is enabled. システムデコーダブロック図2は、システムデコーダブロック20のより詳細な回路図である。 System decoder block diagram 2 is a more detailed circuit diagram of the system decoder block 20. 図2に示すように、システムデコーダブロック20はホストインタフェースブロック18からのデータを FIFO 38内に受信する。 2, the system decoder block 20 receives data from the host interface block 18 within the FIFO 38. FIFO 38は5つの8 FIFO 38 is five 8
ビット語を記憶することができる。 It can store bit word. FIFO 38の底の語はシフトレジスタ40内へロードされる。 The bottom of the word of the FIFO 38 is loaded into the shift register 40. 次いでこのデータは、一時に1ビットずつシフトレジスタ40からシフタ検出器42内へけた送り(もしくはシフト)される。 Then this data is Ketaokuri (or shift) from the shift register 40 temporarily by one bit to the shifter detector 42. システムデコーダブロック20が受信したデータは、検出しなければならない種々のデータシーケンスを含んでいる。 Data system decoder block 20 receives includes various data sequence to be detected. これらのデータシーケンスは可変長であり、従ってデータはシフタ検出器42において一時に1 These data sequence has a variable length, thus the data in a temporary in the shifter detector 42 1
ビットずつ調べなければならない。 It must be examined one by bit. シフトレジスタ40 Shift register 40
は制御論理ブロック46を通して制御カウンタ50によって制御される。 It is controlled by the control counter 50 through the control logic block 46. シフトレジスタ40内にどれ程多くのビットが残されているかを追跡するためにシフタカウンタ44が使用されている。 Shifter counter 44 is used to keep track of how much more bits in the shift register 40 are left. 図2に示すように、シフタカウンタ44、シフトレジスタ40、及びシフタ検出器4 As shown in FIG. 2, the shifter counter 44, a shift register 40, and the shifter detector 4
2は全て制御論理ブロック46によって制御される。 2 is controlled by all the control logic block 46.

【0022】動作を説明する。 [0022] The operation will be described. 次の予測されるデータフィールドのビットの長さは制御カウンタ50内へロードされ、制御カウンタ50が0までデクレメントするまでシフトレジスタ40は一時に1ビットずつシフタ検出器42へけた送りする。 Length in bits of the data fields to be predicted next is loaded into the control counter 50, the control counter 50 is a shift register 40 until the decremented to 0 is Ketaokuri to the shifter detector 42 one bit at a time. シフタ検出器42は 33 ビット幅である。 Shifter detector 42 is 33 bits wide. シフタ検出器42へけた送りされたビット数の複写を保持するためにシフタ複写レジスタ48が使用されている。 Shifter copy register 48 for holding a copy of the number of bits Ketaokuri to the shifter detector 42 is used. シフタ複写レジスタ48はビットストリームの終わりに使用され、さらなるデータを受信してシフタ検出器42が完全にロードされるようになるまで、不完全なデータシーケンスを一時的に記憶する。 Shifter copy register 48 is used at the end of the bit stream, until the shifter detector 42 receives the additional data is fully loaded, and temporarily stores the incomplete data sequence. 例えば、32 For example, 32
ビットのデータ構造の 16 ビットだけがシフタ検出器42内へけた送りされた時にそのデータストリームが終わりになる場合がある。 Only 16-bit data structure of a bit in some cases the data stream is at the end when they are Ketaokuri into the shifter detector 42. 32ビットのデータ構造の残余のビットが探知されるまで、これらの 16 ビットがシフタ複写レジスタ48内へロードされるのである。 32 until the remaining bits of the bit data structure is detected, it is that these 16 bits is loaded into the shifter copy register 48. 残余のビットが探知されると、シフタ複写レジスタ48の内容はシフタ検出器42内へ再ロードされ、データ構造の残余のビットがシフトレジスタ40からけた送りされる。 When the residual bit is detected, the content of the shifter copy register 48 is reloaded into the shifter detector 42, the remaining bits of the data structure is Ketaokuri from the shift register 40. シフタ複写レジスタ48は、制御カウンタ50及び制御カウンタ複写レジスタ52を使用して制御される。 Shifter copy register 48 is controlled using the control counter 50 and control counter copying register 52.

【0023】シフタ検出器42が 32 ビットの情報を受信すると、データは並列にバッファインタフェースブロック54へロードされ、このデータは該ブロック54から入力バッファ24もしくは外部バッファ26内へロードすることができる。 [0023] shifter detector 42 receives the 32 bits of information, the data is loaded into the buffer interface block 54 in parallel, the data can be loaded from the block 54 to the input buffer 24 or external buffer 26. 入力バッファ24内の何処へデータを書込むのかを指示するアドレスは、データアドレスカウンタ56もしくは PTS アドレスカウンタ58から検索される。 Address instructing somewhere for writing the data into the input buffer 24 is retrieved from the data address counter 56 or PTS address counter 58. 通常のオーディオデータはデータアドレスカウンタ56を使用してロードされる。 Normal audio data is loaded using the data address counter 56. このデータアドレスカウンタ56はデータの各 32 ビット部分が入力バッファ24内へ書込まれるとインクリメントされる。 The data address counter 56 is incremented as each 32-bit portion of data is written to the input buffer 24.
「提示タイムスタンプ」は入力バッファ24の異なる部分に記憶され、この部分は PTS アドレスカウンタ58 "Presentation time stamp" is stored in different portions of the input buffer 24, this portion PTS address counter 58
内の値によって指示される。 It is indicated by the value of the inner. 制御論理ブロック46は、 Control logic block 46,
システムデコーダブロック20の総合的な実行を制御する状態機械制御装置を備えている。 And a state machine controller for controlling the overall execution of the system decoder block 20. 制御論理ブロック4 Control logic block 4
6の第1の機能は、図2のブロック60で指示されている開始コード検出を遂行することである。 The first function of 6 is to perform the start code detection is indicated at block 60 of FIG. シフタ検出器42は、例えば開始コードの構文として 23 個の0と、 Shifter detector 42, and 0 23 atoms such as the syntax of the start code,
それに続く特定のコードとを検出する。 Detecting a specific code that follows. 開始コードを検出するとシフタ検出器42は、この事実を制御論理ブロック46へ通信する。 Shifter detector 42 detects a start code, communicates this fact to the control logic block 46.

【0024】システムデコーダブロック20は、3つの異なるモードのデータを復号することができる。 The system decoder block 20 is capable of decoding the three different modes of data. データストリームは、オーディオストリームであっても、パケットストリームであっても、もしくは完全システムストリームであってもよい。 Data stream may be a audio stream, even in the packet stream, or may be a complete system stream. システムデコーダブロック20 System decoder block 20
は、マイクロプロセッサホスト12によってセットされた STR It is set by the microprocessor host 12 STR SEL レジスタを読出すことによって、適切なモードに対して構成される。 By reading the SEL register is configured for the appropriate mode. オーディオだけのストリームの場合には、システムデコーダブロック20は単にデータを FIFO 38内に受信し、それをシフトレジスタ40 If only the stream audio, system decoder block 20 simply receives the data in the FIFO 38, shift register 40 it
及びシフタ検出器42を通して直接入力バッファ24へ渡すだけである。 And just pass directly to the input buffer 24 through the shifter detector 42. オーディオだけのストリームの場合には、システムデコーダブロック20は検出を遂行することはない。 If only the stream audio, system decoder block 20 does not perform the detection. 図2の制御論理ブロック46内の流れ図は、 Flow diagram of the control logic block 46 in FIG. 2,
残余の2つのモード、即ち、MPEGパケットストリームもしくは MPEG 完全システムストリームの何れかにおけるシステムデコーダブロック20の動作を示している。 Two modes of the residual, that is, the operation of the system decoder block 20 in either of the MPEG packet stream or MPEG complete system stream. MP MP
EG 完全システムストリームの場合には、制御論理ブロック46は図2のブロック62においてパック見出し及びシステム基準クロックを探す。 In the case of EG complete system stream, the control logic block 46 Find packs headings and system reference clock at block 62 of FIG. MPEG 標準によれば、 According to the MPEG standard,
パックは複数のオーディオ及びビデオパケットと、提示タイムスタンプ及びシステム基準クロックを含む同期情報とを含む。 Pack and a synchronization information including a plurality of audio and video packets, a presentation time stamp and system reference clock. パック内の各パケットはオーディオデータだけを、もしくはビデオデータだけを、提示タイムスタンプと共に含む。 Each packet in the pack only audio data, or only video data, together with presentation time stamps. 完全システムモードでは、本発明のシステムデコーダブロック20はパック及び SRC を復号した後に段階64へ進み、システム見出し情報を復号する。 The full system mode, the system decoder block 20 of the present invention proceeds to step 64 after the decoding of the pack and SRC, decodes the system header information. 次いで、本発明のシステムデコーダブロック20は段階66においてパケット開始コードを探し始める。 Then, the system decoder block 20 of the present invention begins to look for packet start code in step 66.

【0025】MPEG パケットストリーム、即ち第2の動作モードの場合には、制御論理ブロック46は直接段階66へ進んでパケット開始コードを探索し始める。 [0025] MPEG packet stream, if i.e. the second mode of operation, the control logic block 46 starts searching the packet start code proceeds directly to step 66. 本発明のシステムは、ユーザがどのような手法を望んでも、 The system of the present invention, also wants any method users,
マイクロプロセッサホスト12と共に動作して復号タスクを分割するように十分に柔軟である。 It is sufficiently flexible so as to divide the decoding task operates in conjunction with the microprocessor host 12. もしマイクロプロセッサホスト12が全ての復号タスクを遂行し、所望のオーディオストリームだけをシステムデコーダブロック20へ送るのであれば、マイクロプロセッサホスト1 If performing all decoding tasks microprocessor host 12, if the send only desired audio stream to the system decoder block 20, the microprocessor host 1
2は STR 2 STR SEL レジスタを使用してデータを単に渡すことをシステムデコーダブロック20に命令することができる。 That simply pass data using the SEL register may instruct the system decoder block 20. これに対して、マイクロプロセッサホスト12はシステム復号機能を何等遂行することなく、全 MPEG システムストリームをシステムデコーダブロック20へ渡すこともできる。 In contrast, the microprocessor host 12 does not perform anything like the system decoding function can also pass the entire MPEG system stream to the system decoder block 20. この場合には、制御論理ブロック46 In this case, the control logic block 46
はデータのパックの始まりを検出し、パックの始まりを検出すると、マイクロプロセッサホスト12に復号するように命令された所望のオーディオストリームのパケット見出し(header)を探索し始める。 Detects the start of the pack data, when detecting the beginning of the pack begins to explore the packet heading desired audio stream instruction to decode the microprocessor host 12 (header). パケット見出しは、図2の段階68において復号される。 Packet heading is decoded at step 68 of FIG. 段階68は、 Stage 68,
提示タイムスタンプをも復号し、パケット見出し内のタイムスタンプを復号する。 It presented also decode time stamp, decode time stamp in the packet header. MPEG 標準では、パケット見出しは、補助データ、ビデオデータ、及び他のオーディオデータの間に多重化することができる1組のオーディオデータを識別するために使用される。 In the MPEG standard, the packet heading, auxiliary data, is used to identify a set of audio data that can be multiplexed between video data and other audio data. 段階68において制御論理ブロック46は、オーディオ識別と、AUD Control logic block 46 at step 68, the audio identification, AUD
ID レジスタ内に記憶されている値とを比較し、探知したパケットが復号すべきオーディオストリームの一部分であるか否かを決定する。 The comparator compares the value stored in the ID register, detecting packet to determine whether the portion of the audio stream to be decoded. もしそのパケットが復号すべきものであれば、制御論理ブロック46は図2の段階7 If if it should be decoding the packet, step 7 of the control logic block 46 2
0へ進んでそのパケット内のデータを入力バッファ2 Enter the data in the packet proceeds to 0 buffer 2
4、もしくは外部バッファ26(もし存在していれば) 4 or the external buffer 26, (if present)
内へ書込む。 Write to the inner. 段階70においてはパケットデータバイト計数がパケット見出しから抽出され、図2のパケットバイトカウンタ72内へロードされる。 The packet data byte count in step 70 is extracted from the packet heading, it is loaded into the 2 packets byte counter 72.

【0026】システム基準クロックは、段階62においてパック見出し(header)から検索されて CRCレジスタ内へロードされ、90 kHz のレートでインクリメントされる。 The system reference clock is loaded is retrieved from the pack heading (header) at step 62 to the CRC register is incremented at a rate of 90 kHz. これによりオーディオデコーダシステム14は、 Thus audio decoder system 14,
復号される各新しいパックを用いて更新される外部システム基準クロックの複写を維持する。 Maintaining a copy of the external system reference clock is updated with each new pack to be decoded. 同様にして、段階68においてパケット見出しから PTS が抽出され、入力バッファ24内の PTS アドレスカウンタ58によって指示されるアドレスにロードされる。 Similarly, extracted PTS from the packet heading in step 68, it is loaded into the address indicated by the PTS address counter 58 of the input buffer 24. 提示タイムスタンプは、システム基準クロックに対してオーディオ情報の特定フレームを再生すべき時点を指示する。 Presentation time stamp indicates when to play certain frames of audio information to system reference clock. システムデコーダブロック20は、少なくとも 0.07 秒置きにシステム基準クロックと共にパック見出しを受信し、システムの残余との正確な同期を維持する。 System decoder block 20 receives a pack heading with a system reference clock to every at least 0.07 seconds, to maintain accurate synchronization between the rest of the system. 本発明のシステムは、システムデコーダブロック20へ送った全パケットが復号すべき正しいオーディオストリームであることを STR The system of the present invention, STR that all packets sent to the system decoder block 20 is the correct audio stream to be decoded SEL レジスタの値に指示させるような任意選択的な動作モードをも有している。 Also has an optional mode of operation, such as to instruct the value of the SEL register. この場合には、パケット見出しは段階68において識別されるが、パケット見出し内のオーディオストリーム識別と、AUD In this case, although the packet heading is identified at step 68, the audio stream identification in the packet heading, AUD ID レジスタ内に記憶されている値とを比較する必要はない。 There is no need to compare the value stored in the ID register. これらの環境の下では、マイクロプロセッサホスト12もしくは他の外部システムは、既にそのビットストリームを復号し、特定のオーディオストリームに関するパケットを抽出し、そしてこれらのパケットをそれらのパケット見出しと共にオーディオデコーダシステム14へ送信を済ましている。 Under these circumstances, the microprocessor host 12 or other external systems, already decode the bit stream, to extract the packet for a particular audio stream, and an audio decoder system 14 these packets with their packet heading and spoofing to send to.

【0027】段階70においては、パケット内のバイトの数がシフタ検出器42からパケットバイトカウンタ7 [0027] In step 70, the packet byte counter 7 from the number of bytes in the packet shifter detector 42
2へロードされる。 It is loaded into the 2. パケットバイトカウンタ72は、カウンタの最下位端に3ビットの拡張を含んでいて、各ビットがシフトレジスタ40によってけた送りされるとデクレメントできるようになっている。 Packet byte counter 72, including the extension of 3 bits to the least significant end of the counter, each bit is enabled to decrement when it is Ketaokuri by the shift register 40. 3ビットを拡張したことにより、パケットバイト計数をパケットビット計数に変える効果がもたらされる。 By extension of the 3 bits results in the effect of changing the packet byte count in the packet bit count. パケットバイトカウンタ72は、ビット計数が全て0であることを検出する能力を含む。 Packet byte counter 72 includes the ability to detect that all the bits count is zero. パケットバイトカウンタ72の内容が全て0 The contents of the packet byte counter 72 are all 0
である時には、制御論理ブロック46は段階60へ戻って開始コードを探索する。 The time is, the control logic block 46 searches for a start code returns to step 60. 制御論理ブロック46はストリームの終わりハンドラ(handler )74をも含む。 Control logic block 46 also includes an end handler (handler) 74 of the stream. パケットの終わりに、制御論理ブロック46はデータストリーム内のストリームの終わりコードを探索する。 At the end of the packet, the control logic block 46 searches the code end of the stream in the data stream. もしこのコードが見出されれば、制御論理ブロック46は段階60へ戻り、新しいパックに関して開始コード検出を開始する。 If you found the code, the control logic block 46 returns to step 60 to start the start code detected for the new pack. もしパケットの終わりに到達してもストリームの終わりコードが存在しなければ制御論理ブロック4 Control logic block 4 also have to exist at the end code streams if reached the end of the packet
6は段階66へ戻され、復号すべき次のパケットに関して次の適切な開始コードを探索する。 6 is returned to step 66 to search for the next appropriate start code for the next packet to be decoded. ブロック74が段階60乃至70と並列に示してあるのは、ストリームの終わりがオーディオストリームの途中で非同期状態で提示されるかも知れないからである。 The block 74 is shown in parallel with the steps 60 to 70 is that the end of the stream may be presented asynchronously state in the middle of an audio stream. 例えば、マイクロプロセッサホスト12はストリームの終わり状態を送信して、以下に続くデータがストリームの終わりに先行するデータには無関係であることをオーディオデコーダシステム14に指示することができる。 For example, the microprocessor host 12 can instruct to send the status end of the stream, that the data that follows is independent of the data preceding the end of the stream to the audio decoder system 14. この場合、制御論理ブロック46はシフタ検出器42内のデータを入力バッファ24内へロードし、次いでデータアドレスの値をデータアドレスカウンタ56内に保管する。 In this case, the control logic block 46 loads the data in the shifter detector 42 to the input buffer 24, then stores the value of the data address in the data address counter 56.

【0028】オーディオデコーダブロック28が、ストリームの終わりコードのアドレスに位置しているデータにアドレスすることを試みる場合には、オーディオデコーダブロック28は再始動を遂行してハードウェアフィルタ演算ユニットブロック32をゼロ化させる。 The audio decoder block 28, when attempting to address data located in the address of the stream at the end code, the audio decoder block 28 hardware filter arithmetic unit block 32 by performing restart to be zeroed. これにより、ストリームの終わりに先行するデータがストリームの終わり以降のデータに影響を与えることはなくなる。 Thus, data preceding the end of the stream is no longer affect the subsequent data end of the stream. もしストリームの終わり文字をマイクロプロセッサホスト12から受信すれば、システムデコーダブロック20はストリームの終わり処理を遂行する前に FIFO 3 If by receiving a stream of end character from the microprocessor host 12, the system decoder block 20 FIFO 3 before performing the end processing of the stream
8をクリアする。 8 to clear. シフタA複写レジスタ48は、受信したデータストリームが 32 ビットより少なく、中間制御情報がそのビットストリーム内にある時にそれらのデータビットをシフタA複写レジスタ48内に記憶するために使用される。 Shifter A copy register 48, the received data stream is less than 32 bits, is used to store those data bits in the shifter A copy register 48 when the intermediate control information is within the bit stream. 例えば、フレームの終わりは、次のフレームのフレーム見出しに先行する 32 ビットグループの中の16 ビットだけしか含まないことがあり得る。 For example, the end of the frame may not include only 16 bits of the 32-bit group that precedes the frame heading in the next frame. これらの 16 ビットがシフタA複写レジスタ48内に記憶されるのである。 These 16 bits is being stored in the shifter A copy register 48. 制御論理ブロック46は制御カウンタ5 Control logic block 46 controls the counter 5
0を使用してシフタ検出器42内の情報が完全な 32 ビット値であるか否かを決定する。 Use 0 for determining whether the information in the shifter detector 42 is a full 32-bit value. これは、数 32 を制御カウンタ50内にロードし、次いで1つのビットがシフタ検出器42内へけた送りされる度に制御カウンタ50 This control counter 50 every time the load the number 32 into the control counter 50, then one bit is Ketaokuri into the shifter detector 42
をデクレメントさせることによって達成する。 The be achieved by de Clement. 制御カウンタ50が0に到達した時に、シフタ検出器42の内容をバッファインタフェースブロック54へ並列にロードする。 When the control counter 50 reaches 0, load the contents of the shifter detector 42 in parallel to the buffer interface block 54. シフタ検出器42内に 32 ビットより少ない不完全な値が存在する場合には、制御カウンタ50の内容が制御カウンタ複写レジスタ52内へ複写される。 If the incomplete value less than 32 bits in the shifter detector 42 is present, the contents of the control counter 50 is copied into the control counter copy register 52. 制御カウンタ50は、見出しから指定されたビット長フィールドを検索するためにも使用される。 Control counter 50 is also used to find the bit length field specified by the heading. 例えば、もしシステムパケット、パック、もしくはフレーム見出しから6ビットフィールドを要求されれば、値6を制御カウンタ5 For example, if it is required the system packet, pack or 6-bit field from the frame heading, control values ​​6 counter 5
0内にロードし、シフトレジスタ40が新しいビットがシフタ検出器42内へけた送りされる度にデクレメントさせる。 Was loaded into 0, a new bit shift register 40 causes decremented each time it is Ketaokuri into the shifter detector 42. 制御カウンタ50が6から0まで計数してしまうと、シフタ検出器42の内容はビットストリームからの所望の6ビットを含むことになる。 When the control counter 50 will be counted from 6 to 0, the contents of the shifter detector 42 will contain a desired 6 bits from the bit stream. オーディオデコーダブロック図3はオーディオデコーダブロック28の考え得る一実施例の回路図である。 Audio decoder block diagram 3 is a circuit diagram of one possible embodiment of the audio decoder block 28. オーディオデコーダブロック28 Audio decoder block 28
は、マイクロプログラム読出し専用メモリ(もしくは R The microprogram read only memory (or R
OM )80を備え、この ROM 80は命令マルチプレクサ84を通して命令パイプレジスタ82へ 18 ビットの命令を供給する。 OM) comprising a 80, the ROM 80 supplies an instruction to the pipe register 82 18-bit instruction through the instruction multiplexer 84. 命令マルチプレクサ84は、定数記憶装置86、データバス88、及び累算器バス90からの入力をも受信している。 Instruction multiplexer 84 is constant storage unit 86, and also receives inputs from the data bus 88 and the accumulator bus 90. マイクロプログラム読出し専用メモリ80は、プログラムカウンタ92内に記憶されている値を使用してアクセスされる。 Microprogram read only memory 80 is accessed using a value stored in the program counter 92. プログラムカウンタ92は、11 ビットのポインタをマイクロプログラム読出し専用メモリ80内に記憶させる。 The program counter 92 stores the 11-bit pointer to a microprogram read only memory 80. プログラムカウンタ92は、インクリメンタ96、定数記憶装置98、サブルーチンスタック100、及び分岐バス102から入力を受信するプログラムカウンタマルチプレクサ94を通してロードされる。 The program counter 92, incrementer 96, constant storage device 98, is loaded through the program counter multiplexer 94 receiving input from a subroutine stack 100 and the branch bus 102. プログラムカウンタ92の出力は、インクリメンタ96と、サブルーチンスタック10 The output of the program counter 92, an incrementer 96, a subroutine stack 10
0とに任意選択的にロードすることができる。 It can optionally be loaded into the 0 and. 定数記憶装置98は、リセット及び再始動動作のためのアドレスを記憶し、またオーディオデコーダブロック28の動作中に分岐点をセットするために使用できる複数のプログラム可能な区切り点を記憶する。 Constant storage unit 98 stores an address for resetting and restarting operation, also stores a plurality of programmable breakpoint can be used to set the branch point during the operation of the audio decoder block 28. 命令マルチプレクサ8 Instruction multiplexer 8
4及びプログラムカウンタマルチプレクサ94は、実行制御状態機械104によって制御される。 4 and a program counter multiplexer 94 is controlled by the execution control state machine 104.

【0029】オーディオデコーダブロック28が使用する 18 ビットの命令フォーマットは、演算論理ユニット106を制御するために制御マルチプレクサ108を通して送られる5ビットの命令を含む。 The instruction format of 18-bit audio decoder block 28 uses, including 5 bits of the instruction sent through the control multiplexer 108 to control the arithmetic logic unit 106. 制御マルチプレクサ108は、命令パイプレジスタ82もしくは実行制御状態機械104の何れかから5ビットの命令を受信する。 Control multiplexer 108 receives the 5 bits of the instruction from one of the instruction pipe register 82 or execution control state machine 104. 演算論理ユニット106は 16 ビットの全機能演算論理ユニットであって、累算器110に結合されている累算器バス90から1つのオペランド(もしくは演算数)を受信する。 Arithmetic logic unit 106 is a full function arithmetic logic unit of 16 bits, for receiving the one from accumulator bus 90 which is coupled to an accumulator 110 an operand (or operands). 演算論理ユニット106の他方の入力は、データバス88に結合されているデータレジスタ1 The other input of the arithmetic logic unit 106, the data register 1 coupled to the data bus 88
14から1つの入力を受信しているマルチプレクサ11 Multiplexer 11 which receives one input from the 14
2から受ける。 Receive from the 2. マルチプレクサ112の残余の入力は、 The remainder of the input of the multiplexer 112,
定数レジスタ118及びアドレスバス120から受信する。 It received from the constant register 118 and address bus 120. マルチプレクサ112は、定数レジスタ118及びアドレスバス120から受信した値を連結することもできる。 Multiplexer 112 can also be linked to the value received from the constant register 118 and address bus 120. マルチプレクサ112は、実行制御状態機械10 Multiplexer 112, the execution control state machine 10
4によって制御されている。 It is controlled by 4. マルチプレクサ112の出力は、分岐バス102を通してプログラムカウンタマルチプレクサ94の入力に結合されている。 The output of the multiplexer 112 is coupled to an input of the program counter multiplexer 94 through branch bus 102. 更に、マルチプレクサ112の出力はバイパスマルチプレクサ122 Furthermore, the output of the multiplexer 112 bypass multiplexers 122
を通して累算器110に渡され、演算論理ユニット10 It passed to the accumulator 110 through the arithmetic logic unit 10
6をバイパスする経路を提供している。 It provides a path for bypassing the 6. 累算器110の内容はマルチプレクサ124を通してデータバス88へ転送することができる。 The contents of the accumulator 110 may be transferred through the multiplexer 124 to the data bus 88. 累算器110は、32ビット長であるデータシフタ126からのビットを受信するように動作することもできる。 Accumulator 110 may operate to receive the bits from the data shifter 126 is 32 bits long. データシフタ126は、マルチプレクサ112を通してデータレジスタ114から 16 Data shifter 126, the data register 114 through multiplexer 112 16
ビットインクリメントでロードすることができる。 It can be loaded in bit increments. データシフタ126はけた送りカウンタ128によって制御され、けた送りカウンタ128は実行制御状態機械10 Data shifter 126 is controlled by Ketaokuri counter 128, Ketaokuri counter 128 executes the control state machine 10
4によって制御される。 4 is controlled by the. データシフタ126からどれ程多くのビットがけた送りされたかを追跡するために、6 To keep track of how much more bits from the data shifter 126 is Ketaokuri, 6
ビットのロードカウンタ130を使用している。 We are using a load counter 130 of the bit. ロードカウンタ130は実行制御状態機械104によって制御される。 Load counter 130 is controlled by the execution control state machine 104. ロードカウンタ130内の値はマルチプレクサ124を通してデータバス88へ転送することができる。 The value of the load counter 130 may be transferred through the multiplexer 124 to the data bus 88.

【0030】動作を説明する。 The operation will be described. オーディオデコーダブロック28は、DRAM/SRAM 制御装置132及び DRAM インタフェース134を通して入力バッファ24から 32 ビットのデータフィールドを受信する。 Audio decoder block 28 receives the 32-bit data field from the input buffer 24 through the DRAM / SRAM controller 132 and the DRAM interface 134. 32 ビットのデータフィールドは 16 ビット順次読出し動作でアクセスされる。 32-bit data field is accessed in 16-bit sequential read operations. 処理データは演算ユニットバッファ30内へロードされる。 Process data is loaded into the arithmetic unit buffer 30. 更に、演算ユニットバッファ30をスクラッチパッドメモリ(もしくは作業用記憶装置)として使用し、データバス88を通して値を検索することができる。 Furthermore, by using the arithmetic unit buffer 30 as a scratch pad memory (or working memory), it is possible to find the values ​​through the data bus 88. 演算ユニットバッファ30は、アドレスマルチプレクサ136を通してアドレスバス120からアドレスされる。 Arithmetic unit buffer 30 is addressed from the address bus 120 through address multiplexer 136. アドレスマルチプレクサ136は、演算ユニットバッファ30がオーディオデコーダブロック28によってアクセスされるのか、もしくはハードウェアフィルタ演算ユニットブロック32によってアクセスされるのかを決定する。 Address multiplexer 136 determines whether the arithmetic unit buffer 30 is accessed by the one or hardware filter arithmetic unit block 32 is accessed by the audio decoder block 28. データバス88及びアドレスバス120はそれぞれ、制御状態レジスタブロック22に結合されている。 Each data bus 88 and address bus 120 is coupled to the control status register block 22. 更に、データバス88及びアドレスバス120 Furthermore, the data bus 88 and address bus 120
は、CRC レジスタ、サブバンドカウンタ、ストリームの終わりレジスタ等からなる特別レジスタブロック138 Is, CRC register, subband counter, special register block consists of a stream end such as a register 138
に結合されている。 It is coupled to. 要するに、特別レジスタブロック1 In short, special register block 1
38はオーディオデコーダシステム14が内部的に使用するレジスタを含み、制御状態レジスタブロック22はオーディオデコーダシステム14及びマイクロプロセッサホスト12の両者がアクセスするレジスタを含んでいるのである。 38 includes a register that audio decoder system 14 uses internally, the control status register block 22 are to contain registers both to access the audio decoder system 14 and microprocessor host 12. 例えば特別レジスタブロック138は、復号中のフレームの現見出しを記憶するレジスタを含む。 For example a special register block 138 includes a register for storing a current heading of the frame being decoded.
この見出しからの情報は、nBAL 及び BPCW 読出し専用メモリテーブル140及び読出し専用メモリテーブル1 Information from this heading, NBAL and BPCW read only memory table 140 and read only memory table 1
44にアクセスするために使用される。 It is used to access the 44. 更に、特別レジスタブロック138は、サブバンド計数を記憶するレジスタを含む。 Furthermore, special register block 138 includes a register for storing a subband count. このカウンタは、各サブバンドが動作させられるとインクリメントされる。 This counter, each subband is incremented when is operated. サブバンド数はメモリ140及び144にアクセスするためにも使用される。 Number subbands are also used to access the memory 140 and 144.
更に、データレジスタ88、及びアドレスレジスタ12 Further, the data register 88 and address register 12,
0、及び累算器バス90は、オーディオビットストリームの復号中に使用されるサンプル毎に割当てられているビットの数と、コードワード当たりのビット(ビット/ 0, and accumulator bus 90 includes a number of bits allocated for each sample to be used during the decoding of the audio bit stream, per codeword bits (bits /
コードワード)に関する値を記憶するために使用される It is used to store a value for code words)
nBAL 及び BPCW 読出し専用メモリテーブル140に結合されている。 Coupled to nBAL and BPCW read only memory table 140.

【0031】データバス88及びアドレスバス120 [0031] The data bus 88 and the address bus 120
は、256 の 16 ビット語を記憶するメモリからなるランダムアクセスメモリスクラッチパッド142にも結合されている。 It is also coupled to a random access memory scratch pad 142 comprising a memory for storing a 16-bit word of 256. またデータバス88及びアドレスバス120 The data bus 88 and the address bus 120
は、オーディオビットストリームの復号中に使用されるフレーム長及び他の定数を計算するために使用される値を記憶する読出し専用メモリテーブル144にも結合されている。 It is also coupled to a read only memory table 144 for storing a value used to calculate the frame length, and other constants that are used during the decoding of the audio bit stream. 動作を説明する。 The operation will be described. オーディオデコーダブロック28は、5ビットの命令フィールド、オペランド型を指定する2ビットのフィールド、及び即値オペランドもしくは正則または間接アドレス参照を含むことができる Audio decoder block 28 may include a 5-bit instruction field, 2-bit field that specifies an operand type, and an immediate operand or regular or indirect address references
11 ビットフィールドを有する 18 ビットのマイクロコード命令を実行する。 Executing a 18-bit microcode instruction with 11-bit field. オーディオデコーダブロック28 Audio decoder block 28
は、以下の命令集合を実行して、入力バッファ24から受信したビットストリームを復号するのに必要なルーチンを遂行する。 Executes the following instruction set, performs a routine needed to decode the bit stream received from the input buffer 24. 命令簡 命令 Op. 型 (10) 動作の説明 略記号 ビット (00) (01) Indir. Reg. Imm. ADD 00000 yyy Acc + Op −> Acc SUB 00001 yyy Acc − Op −> Acc AND 00010 yyy Acc AND Op −> Acc OR 00011 yyy Acc OR Op −> Acc XOR 00100 yyy Acc XOR Op −> Acc GSYN 00101 yyy 同期語探索 SRL 01000 yyy 論理右けた送り Acc SLL 01001 yyy 論理左けた送り Acc SRC 01010 yyy 循環右けた送り Acc SRA 01011 yyy 算術右けた送り Acc GBT 01100 yyy 入力バッファ、または外部バッ ファからビットを入手 GBTC 01101 yyy 入力バッファ、または外部バッ ファからビットを入手し、CRC 検査 GBTF 01110 yyy シフタをフラッシュ/ 入力バッ ファ、または外部バッファから ビットを入手 GANC 01111 yyy ビットを入手し、ANC バッファへ書込み . Instruction easy instructions Op type (10) Description Abbreviations bit operation (00) (01) Indir Reg Imm ADD 00000 yyy Acc + Op -...> Acc SUB 00001 yyy Acc - Op -> Acc AND 00010 yyy Acc AND Op -> Acc OR 00011 yyy Acc OR Op -> Acc XOR 00100 yyy Acc XOR Op -> Acc GSYN 00101 yyy synchronizing word search SRL 01000 yyy logical right Ketaokuri Acc SLL 01001 yyy logical left Ketaokuri Acc SRC 01010 yyy circulation right digit feed Acc SRA 01011 yyy arithmetic right Ketaokuri Acc GBT 01100 yyy input buffer or an external buffer bits available GBTC 01101 yyy input buffer from or obtain the bit from an external buffer, CRC inspection GBTF 01110 yyy shifter flash / input, buffer or bits to obtain the available GANC 01111 yyy bit from the external buffer, writing the ANC buffer, 命令簡 命令 Op. 型 (10) 動作の説明 略記号 ビット (00) (01) Indir. Reg. Imm. ADD 00000 yyy Acc + Op −> Acc SUB 00001 yyy Acc − Op −> Acc BZ 10000 yyy 0で分岐 BNZ 10001 yyy 非0で分岐 BO 10010 yyy あふれで分岐 BNEG 10011 yyy 負で分岐 BC 10100 yyy けた上げアウトで分岐 BPOS 10101 yyy 0より大で分岐 B 10110 yyy 無条件分岐 CALL 10111 yyy 分岐し、PC をスタックへプッ シュ READ 11000 yny バッファ読出し WRT 11001 yny バッファ書込み RET 11010 nnn スタックから PC を取出し GTBL 11101 nnn ROM テーブル −> Acc (テーブル入手) LDA 11110 yyy Op −> Acc STA 11111 yny Acc −メモリ入力バッファ24がアクセスされる度に、DRAM/SRAM . Instruction easy instructions Op type (10) Description Abbreviations bit operation (00) (01) Indir Reg Imm ADD 00000 yyy Acc + Op -.. In> Acc BZ 10000 yyy 0 -. > Acc SUB 00001 yyy Acc - Op branched BNZ in 10001 yyy nonzero branch BO 10010 yyy full of branches BNEG 10011 yyy negative branched BC 10100 yyy carry out in branches B 10110 yyy unconditional branch CALL 10111 yyy branches larger than branch BPOS 10101 yyy 0, the PC taken out PC from push rEAD 11000 yny buffer read WRT 11001 yny buffer write RET 11010 nnn stack to stack GTBL 11101 nnn ROM table -> Acc (table available) LDA 11110 yyy Op -> Acc STA 11111 yny Acc - memory input buffer 24 to but every time it is accessed, DRAM / SRAM
制御装置132及び DRAM インタフェース134は 32 Controller 132 and the DRAM interface 134 is 32
ビットを戻し、これらのビットは連続 16 ビットロード動作によりデータレジスタ114及びマルチプレクサ1 Return bits, these bits are the data register 114 and multiplexer 1 by successive 16-bit load operation
12を通してデータシフタ126へロードされる。 12 is loaded into the data shifter 126 through. 例えば、「ビット入手」もしくは GBT 命令では、検索すべきビットの数が実行制御状態機械104によってロードカウンタ130内へロードされる。 For example, in the "Bit available" or GBT instruction, the number of bits to be searched is loaded into the load counter 130 in the execution control state machine 104. 次いでデータシフタ126は、入力バッファ24からの次の 32 ビットで満たされる。 Then the data shifter 126 is filled with the next 32 bits from the input buffer 24. ロードカウンタ130が0までデクレメントされると、指定されたビット数がデータシフタ126から累算器110内へけた送りされている。 When the load counter 130 is decremented to zero, the specified number of bits are Ketaokuri from the data shifter 126 into the accumulator 110. 要求されたビット数が累算器110内に入ると、これらのビットは論理演算ユニット( もしくは ALU )によって操作されるか、または望む通りに経路指定される。 If the number of requested bits fall within accumulator 110, these bits are routed as or desires operated by logic unit (or ALU). このようにして、指定された如何なるビット数も、単一の命令によって入力バッファ24から検索することができる。 In this way, the number of any bits that are specified, can be retrieved from the input buffer 24 by a single instruction. オーディオデコーダブロック28は、入力バッファ24から 3 Audio decoder block 28, from the input buffer 24 3
2 ビットを常に読出してシステムトラフィックを減少させている。 2 bits are always reduces system traffic is read. これは、システムデコーダブロック20もまた入力バッファ24にアクセスしなければならないという事実の故である。 This is due to the fact that the system decoder block 20 must also be accessed in the input buffer 24. 実際に、システムデコーダブロック20が 15 メガビット/ 秒までの入力データのバーストを処理できるようにするために、システムデコーダブロック20は入力バッファ24へのアクセスに対してオーディオデコーダブロック28よりも優先順位を有していなければならない。 Indeed, in order for the system decoder block 20 to be able to handle bursts of input data up to 15 Mbit / sec, the system decoder block 20 priority than the audio decoder block 28 for access to the input buffer 24 It must have. データシフタ126は 32 ビットバッファとして働くので、オーディオデコーダブロック2 Since the data shifter 126 serves as a 32 bit buffer, the audio decoder block 2
8は入力バッファ24へのアクセスを何回も要求することなくその中の演算を続行することができるのである。 8 it is possible to continue the operation of the therein without also requires many times access to the input buffer 24.

【0032】GBT 命令は、入力バッファ24内に記憶されている到来するビットストリームから次のNビットを抽出する。 The GBT instruction extracts the next N bits from the incoming stream stored in the input buffer 24. この命令は先ず 16 ビット語を戻し、それを累算器110 内に記憶させる。 This instruction is first returned to 16-bit word, and stores it in the accumulator 110. この命令は先ず累算器11 This instruction is first accumulator 11
0をクリアし、次いで必要なデータビット数を累算器からデータシフタ126内へけた送りする。 0 Clear and Ketaokuri to data shifter 126. The then number of data bits required from accumulator. もしデータシフタ126内に十分なビットが存在していなければ、入力バッファ24の読出しが自動的に開始される。 If not present enough bits in the data shifter 126 is if reading of the input buffer 24 is started automatically. 命令が実行されてしまうと、ロードカウンタ130内の値が保管される。 When the instruction from being executed, stored value of the load counter 130. この値は RAM スクラッチパッド142内に保管され、データストリームのビットオフセットを計算するために使用される。 This value is stored in the RAM scratchpad 142, it is used to calculate the bit offset of the data stream. 新しい 32 ビットが入力バッファ24から読出されると、数 32 がロードカウンタ13 When a new 32 bits are read from the input buffer 24, the number 32 is loaded counter 13
0内へロードされる。 It is loaded into the 0. GBTC 命令は、入力バッファ24 GBTC instruction, input buffer 24
から検索されたビットの CRC 誤りが自動的に調べられることを除いて GBT命令と同一である。 It is identical to GBT instruction except that the CRC error of the retrieved bits are automatically checked from. GBTF 命令も、 GBTF instruction is also,
データシフタ126内に存在するデータビットが先ずフラッシュされ、命令が入力バッファ24の新しい 32 ビットを読出し始めることを除いて GBT 命令と同一である。 Data bits in the data shifter 126 is first flushed, it is identical to GBT instruction except that the instruction starts reading a new 32-bit input buffer 24. GSYN 命令は、入力ビットストリーム内の同期語を探すために使用される。 GSYN instruction is used to locate the synchronization word in the input bit stream. この命令は、同期語が検出されるか、もしくはけた送りカウンタ128内の値が0になると停止することを除いて GBT 命令と同じように動作する。 This instruction is either sync word is detected, or the value of Ketaokuri counter within 128 operates in the same manner as GBT instruction except to stop and becomes zero. 同期語の検出は累算器110によって遂行される。 Detection of the synchronization word is performed by the accumulator 110. GANC 命令は、補助データを検索するために使用される。 GANC instruction is used to retrieve the auxiliary data. この命令は、ビットも制御状態レジスタブロック22内の補助バッファレジスタ内に記憶されることを除いて GBT命令と同じように動作する。 This instruction bits except be stored in the auxiliary buffer register control state register block 22 operates in the same manner as GBT instruction. この命令は、もし補助バッファがあふれれば、実行の途中で停止させることもできる。 This instruction, if the auxiliary buffer Afurere, can be stopped in the middle of execution. 後述するように、GANC 命令は、もし補助バッファがあふれるか、もしくは補助データの 16 ビットが使用可能になる度に、適切な割込みをセットする。 As described below, GANC instruction, if either auxiliary buffer overflows, or every time the 16-bit auxiliary data is available, set the appropriate interrupt.

【0033】GTBL 命令は、読出し専用メモリ140及び144内のテーブルから、種々のMPEG オーディオ関連定数を戻すために使用される。 [0033] GTBL instruction, from the table in read-only memory 140 and 144, is used to return the various MPEG audio-related constants. GTBL 命令は、nBAL、 GTBL instruction, nBAL,
BPCW、束縛長もしくはフレーム長の値を戻すことができる。 BPCW, it is possible to return the value of the binding length or frame length. この命令に関して必要とされる情報は、特別レジスタブロック138内の見出しレジスタ内に記憶されている値から取出される。 Information required for this instruction is taken out from and stored in a special register block header register in 138 values. 付加的に、BPCW 値を検索する場合には、BAL に関する数が累算器110内に存在していなければならない。 Additionally, when searching for BPCW value, the number relates BAL must be present in the accumulator 110. 命令集合内の残余の命令は普通の通りに動作する。 The remainder of the instructions in the instruction set is operated in a normal street. GANC 命令は、指定された数の補助データビットをオーディオデコーダブロック28に検索させ、それらを制御状態レジスタブロック22内の補助データバッファ内に配置させる。 GANC instruction to search the supplemental data bits of a specified number to the audio decoder block 28 to place them in the control status register block auxiliary data buffer in 22. このバッファレジスタは This buffer register
32 ビット長であり、FIFOとして機能する。 A 32-bit length, and functions as a FIFO. 所定数のビットがバッファ内にロードされると、補助データが存在していることをマイクロプロセッサホスト12に通報する割込みが行われる。 When a predetermined number of bits is loaded into the buffer, the interrupt to notify that the auxiliary data is present in the microprocessor host 12 is performed. マイクロプロセッサホスト12が補助データの読出しを試みると、バッファ内の補助データは補助データレジスタ内へ転送される。 When the microprocessor host 12 attempts to read the auxiliary data, the auxiliary data in the buffer is transferred to the auxiliary data register. このプロセスによって、より多くの補助データをバッファ内へロードすることが可能になる。 This process makes it possible to load more ancillary data into the buffer. 一つの任意選択的な動作モードでは、もし補助バッファが一杯であれば、マイクロプロセッサホスト12が補助データを読出すまで全ての処理を停止させる割込みが発生する。 In one optional mode of operation, if it auxiliary buffer is full, interrupt the microprocessor host 12 stops all processing auxiliary data reading Suma occurs. このモードでは補助データバッファが FIFO 的な動作をするので、補助データが失われることがない。 Since the auxiliary data buffer in this mode is a FIFO operations, auxiliary data is not lost. どれ程多くの補助データビットの計数が補助データバッファ内にあるかを保持するために、別のレジスタが使用されている。 How much to the counting of the number of auxiliary data bits to hold the it is within the auxiliary data buffer, another register is used. マイクロプロセッサホスト12がこの計数を読出す場合、補助データバッファ内の値は制御状態レジスタブロック22内の補助データレジスタ内へ転送される。 If the microprocessor host 12 reads the count value in the auxiliary data buffer is forwarded in the control status register block 22 to the auxiliary data register.

【0034】以下に、データストリームの復号、データストリームとの同期の取得、データストリーム内の誤り隠し、及びバッファ管理、及び他の制御機能におけるオーディオデコーダブロック28の動作を、特に図11乃至38に詳細を示してある流れ図に基づいて説明する。 [0034] Hereinafter, the decoded data stream, synchronization acquisition of the data stream, a hidden error in the data stream, and buffer management, and operation of the audio decoder block 28 in the other control functions, in particular in FIGS. 11 to 38 will be described with reference to flow diagram is shown the details. ハードウェアフィルタ演算ユニット図4は、ハードウェアフィルタ演算ユニットブロック3 Hardware filter operational unit 4 is a hardware filter arithmetic unit block 3
2の一実施例の回路図である。 It is a circuit diagram of a second embodiment. 要約すれば、演算ユニットブロック32は演算ユニットバッファ30から検索したサンプルを量子化解除し、結果を図4に示すサンプルメモリ150内に記憶するように機能する。 In summary, the arithmetic unit block 32 the samples retrieved from the arithmetic unit buffer 30 and dequantized, and functions to store the result in sample memory 150 in shown in FIG. 次いで演算ユニットブロック32はサンプルメモリ150からサンプルを検索し、データに対して高速余弦変換を遂行し、 Then the arithmetic unit block 32 retrieves the samples from the sample memory 150, it performs a fast cosine transform on data,
変換の結果を図4に示す有限インパルス応答 ( FIR )メモリ152内へ書込む。 Writing to a finite impulse response (FIR) memory 152 that indicates the result of the conversion in FIG. 次に演算ユニットブロック32 Then arithmetic unit block 32
は、FIR メモリ152からデータを検索し、データに対して FIR フィルタ動作を遂行し、結果を PCM バッファ34へ書込む。 Retrieves the data from the FIR memory 152, performs a FIR filter operation on the data, writes the result to the PCM buffer 34. MPEG 仕様には、この量子化解除プロセスは、大型 32 × 32 行列演算であると記載されている。 The MPEG specification, the dequantization process is described as being large 32 × 32 matrix operation. 本発明の教示によれば、大型の行列演算は、図4に示すシステムで実現される高速フーリエ変換演算によって置換されている。 According to the teachings of the present invention, a large matrix operation is replaced by a fast Fourier transform operation implemented by the system shown in FIG. ハードウェアフィルタ演算ユニットのハードウェアの説 Hardware of the theory of the hardware filter arithmetic unit
演算ユニットブロック32は、累算器156から1つのオペランドを、またレジスタ158から第2のオペランドを受けている数学ユニット154を備えている。 Akira arithmetic unit block 32, one operand from the accumulator 156, also includes a math unit 154 from the register 158 has received the second operand. 累算器156はマルチプレクサ160を通してロードされる。 Accumulator 156 is loaded through the multiplexer 160. マルチプレクサ160の1つの入力は数学ユニット154の出力に結合されている。 One input of the multiplexer 160 is coupled to the output of the math unit 154. マルチプレクサ160 Multiplexer 160
の第2の入力は、演算ユニットブロック32を演算ユニットバッファ30へ接続している 16 ビットバスに結合されている。 The second input of is coupled to the arithmetic unit blocks 32 to 16-bit bus that is connected to the arithmetic unit buffer 30. マルチプレクサ160の第3の入力は、サンプルメモリもしくは SBB RAM 150からの値を受けている。 A third input of the multiplexer 160 receives the value from the sample memory or SBB RAM 0.99. マルチプレクサ160の第4の入力は、一定の0を入力するか、または累算器156の出力からのフィードバック経路を提供するように機能するマルチプレクサ162から検索される。 Fourth input of the multiplexer 160 is retrieved from the multiplexer 162 which functions to provide a feedback path from the output of either type the constant 0 or accumulator 156,.

【0035】レジスタ158はマルチプレクサ164を通してロードされる。 The register 158 is loaded through the multiplexer 164. マルチプレクサ164は、FIR RA Multiplexer 164, FIR RA
M 152の出力に結合されている第1の入力を有している。 It has a first input coupled to the output of the M 152. マルチプレクサ164の第2の入力は、SBB RAM 1 The second input of multiplexer 164, SBB RAM 1
50の出力に結合されている。 It is coupled to an output of 50. マルチプレクサ164の第3の入力は、数学ユニット154の出力に結合されている。 The third input of the multiplexer 164 is coupled to the output of the math unit 154. マルチプレクサ164の第4の、そして最後の入力は、マルチプレクサ166の出力に結合されている。 Fourth, and final input of the multiplexer 164 is coupled to the output of the multiplexer 166.
マルチプレクサ166の第1の入力は、マルチプレクサ164の出力に結合されている。 The first input of multiplexer 166 is coupled to the output of the multiplexer 164. マルチプレクサ166 Multiplexer 166
の第2の入力は、縮尺係数読出し専用メモリ168の出力に結合されている。 The second input of is coupled to the output of the scale factor read only memory 168. 縮尺係数読出し専用メモリ168 Scale factor read-only memory 168
は 64 の 28 ビット値を含み、サブバンド値の合成に使用される縮尺係数のテーブルである。 Includes a 28-bit value of 64, which is a scale factor used in the synthesis subband value table. 縮尺係数読出し専用メモリ168は、オーディオデコーダブロック28が生成して演算ユニットバッファ30内に配置されている縮尺係数索引値を使用してアクセスされる。 Scale factor read only memory 168 is accessed using the scale factor index value the audio decoder block 28 is disposed generated by the arithmetic unit buffer 30. マルチプレクサ166の第3の、そして最後の入力は、C/D 係数読出し専用メモリ170の出力に結合されている。 Third, and finally input of the multiplexer 166 is coupled to the output of the C / D coefficient read only memory 170. 読出し専用メモリ170は、これもまたサブバンドデータの合成に使用されるC及びD係数を記憶している。 Read only memory 170, which also stores the C and D coefficients are used in the synthesis of the sub-band data. 読出し専用メモリ170は、アドレスレジスタ172内に記憶されている値を使用してアドレスされる。 Read only memory 170 is addressed using the value stored in the address register 172. 縮尺係数読出し専用メモリ168は、アドレスレジスタ174内に記憶されている値を使用してアドレスされる。 Scale factor read only memory 168 is addressed using the value stored in the address register 174. レジスタ17 Register 17
2、174内へ入力される値は、演算ユニットバッファ30から出力される値の 12 ビットから検索される。 Value input into the 2,174 is retrieved from the 12-bit value output from the arithmetic unit buffer 30. 演算ユニットバッファ30は、9ビットからなる CSBB Arithmetic unit buffer 30 is comprised of 9 bits CSBB
ADDR アドレスを使用してアクセスされる。 It is accessed using the ADDR address.

【0036】数学ユニット154は、乗算器部分と、それに並列の加算器/減算器部分とを備えている。 The mathematical unit 154 includes a multiplier section, and an adder / subtracter portion parallel to it. 数学ユニット154の乗算器部分は、第1の入力をレジスタ1 Multiplier part math unit 154, register 1 a first input
58から直接受け、第2の入力をマルチプレクサ176 It received directly from the 58, the second input multiplexer 176
から受けている。 It has received from. マルチプレクサ176の第1の入力は累算器156の出力に結合され、第2の入力は係数メモリ178の出力に結合されている。 The first input of multiplexer 176 is coupled to the output of the accumulator 156, the second input is coupled to the output of the coefficient memory 178. 係数メモリ178 Coefficient memory 178
は、464 の 22 ビットの係数を記憶し、9ビットの係数 Stores 22 bits of the coefficient of 464, the coefficient of 9 bits
COEFF COEFF ADDR値を使用してアドレスされる。 Use the ADDR value is the address. 数学ユニット154は、3ビットの CMD フィールドと、2ビットの STATE フィールドとを使用するように構成されている。 Math unit 154 is configured to use the CMD field 3 bits, 2 bits and a STATE field. 数学ユニット154の出力はバッファレジスタ18 The output of math unit 154 is used as the buffer register 18
0にも供給され、これらの値はバッファレジスタ180 0 is also supplied to these values ​​is used as the buffer register 180
から PCMバッファ34内へ転送される。 It is transferred to the PCM buffer 34 from. 図5は、図4に示す演算ユニット32が使用するアドレスを生成するために使用されるシステムのブロック線図である。 Figure 5 is a block diagram of a system used to generate the address calculation unit 32 shown in FIG. 4 is used. 図5に全体を182で示すアドレスジェネレータはシーケンスジェネレータ184を備えている。 Address generator shown generally at 182 in FIG. 5 is provided with a sequence generator 184. シーケンスジェネレータ184は、アドレス読出し専用メモリ186へ出力される状態値を生成するように動作可能な状態機械(もしくはステートマシン)を備えている。 Sequence generator 184 is provided with an operable state machine (or state machine) to generate a status value output to the address read only memory 186. アドレス読出し専用メモリ186は、3組のアドレス論理ブロックへ出力される 416 の5ビット索引値を含む。 Address read only memory 186, includes a 5-bit index value of 416 is output to three sets of address logic block. 第1のアドレス論理ブロックは、シーケンスジェネレータ184から出力される STATE 値と、アドレス読出し専用メモリ1 First address logic block includes a STATE value output from the sequence generator 184, address read only memory 1
86から出力される索引出力とから9ビットの CSBB 86 9 bits from the index output outputted from CSBB
ADDR 値を生成する CSBB アドレス論理ブロック188 CSBB address logic block 188 to generate the ADDR value
である。 It is. 同様に FIR アドレス論理ブロック190は、 Similarly FIR address logic block 190,
10ビットの FIR 10-bit FIR ADDR 値を生成し、SBB アドレス論理ブロック192は5ビットの SBB It generates ADDR value, SBB address logic block 192 of 5 bits SBB ADDR 値を生成する。 To generate the ADDR value. 係数アドレス論理ブロック194は、シーケンスジェネレータ184が生成する STATE 値から直接9ビットの COEF Coefficient address logic block 194, COEF from STATE value sequence generator 184 generates a direct 9 bits ADDR 値を生成する。 To generate the ADDR value.

【0037】図6は、図4に基づいて説明済の数学ユニットブロック154の一つの考え得る実施例のブロック線図である。 [0037] FIG. 6 is a block diagram of one possible embodiment of the description already math unit block 154 with reference to FIG. 数学ユニット154の乗算器部分はBオペランドを受信する。 Multiplier part math unit 154 receives the B operand. このBオペランドは 22 ビット値であり、6ビット値に分割されてマルチプレクサ200へ入力される。 The B operand is a 22-bit value, are input is divided into 6-bit value to the multiplexer 200. マルチプレクサ200は7ビット値をブース( Booth ) エンコーダ202へ出力する。 Multiplexer 200 outputs a 7-bit value to the booth (Booth) encoder 202. ブースエンコーダ202は、部分積ジェネレータ204、206、 Booth encoder 202, partial product generators 204, 206,
及び208を駆動する。 And driving the 208. 部分積ジェネレータ204はけた上げ/保管加算器210に結合されている。 Partial product generator 204 is coupled to the carry / save adder 210. 同様に、 Similarly,
部分積ジェネレータ206はけた上げ/保管加算器21 Partial product generator 206 carry / save adder 21
2に結合され、部分積ジェネレータ208はけた上げ/ Coupled to 2, partial product generators 208 carry /
保管加算器214に結合されている。 It is coupled to storage adder 214. Aオペランドは部分積ジェネレータ204、206、及び208へ入力される。 A operands are input to the partial product generators 204, 206, and 208. けた上げ/保管加算器214は、29 ビットのけた上げ出力と、30 ビットの保管出力とを 34 ビットパイプラインレジスタ216へ出力する。 Carry / save adder 214 outputs the carry output of the 29 bits, and a storage output 30-bit to 34-bit pipeline register 216. パイプラインレジスタ216は、マルチプレクサ218への1つのけた上げ出力と、マルチプレクサ220への 30 ビットの保管出力とを出力する。 Pipeline register 216 outputs and one carry output to the multiplexer 218, and a storage output of 30 bits to the multiplexer 220. パイプラインレジスタ216のけた上げ及び保管出力は、部分積ジェネレータ204の入力へも供給される。 Carry and storage output of the pipeline register 216 is also supplied to the input of the partial product generator 204.

【0038】マルチプレクサ218は、パイプラインレジスタ216からのけた上げ出力と、図4に関して説明した累算器156から受信する加算器Aオペランドの何れかを選択するように機能する。 The multiplexer 218 functions to select the carry output from the pipeline register 216, one of the adder A operands received from accumulator 156 as described with respect to FIG. マルチプレクサ218 Multiplexer 218
は選択した値をけた上げ/保管加算器222へ出力する。 Outputs the selected value to the carry / save adder 222. けた上げ/保管加算器222はマルチプレクサ22 Carry / save adder 222 multiplexer 22
0から第2の入力を受信しており、マルチプレクサ22 0 and received a second input, the multiplexer 22
0はパイプラインレジスタ216からのけた上げ出力と、0に等しい定数の何れかを選択する。 0 selects the carry output from the pipeline register 216, one of the constant equal to 0. けた上げ/保管加算器222はマルチプレクサ224から第3の入力を受信しており、マルチプレクサ224は定数記憶装置225と、図4に関して説明した R1 レジスタ158から受信する加算器Bオペランドとの何れかを選択する。 Carry / save adder 222 is receiving a third input from the multiplexer 224, the multiplexer 224 and the constant storage unit 225, one of the adder B operands received from R1 register 158 described with respect to FIG. 4 select.
けた上げ/保管加算器222は、けた上げ伝播加算器2 Carry / save adder 222, the carry propagate adder 2
26へけた上げ出力と、保管出力とを出力する。 And the carry output to 26, and outputs the stored output. けた上げ伝播加算器226は飽和検出・0強制ブロック228 Carry propagate adder 226 saturation detection-0 forcing block 228
へ 31ビット値を供給する。 It supplies a 31-bit value to. 飽和検出・0強制ブロック228は、 CMD 信号を受信してその出力を0にするか、もしくは飽和条件または CMD 信号に応答して 28 Saturation detection · 0 forcing block 228, or receives a CMD signal to its output to 0, or in response to a saturated condition or CMD signal 28
ビットフィールドによって表現可能な最高または最小数にすることができる。 It can be the maximum or minimum number that can be represented by the bit field. けた上げ伝播加算器226はけた上げイン論理ブロック230から信号を受信する。 Carry propagate adder 226 receives a signal from the carry-in logic block 230. けた上げイン論理ブロック230は、けた上げ記憶レジスタ232からの信号と、CMD 信号とを受信する。 Carry-in logic block 230 receives a signal from the carry storage register 232, and a CMD signal. けた上げ記憶レジスタ232は、パイプラインレジスタ216内に記憶されている2つの分離した6ビットフィールドに結合されているけた上げ論理ブロック234からの信号を受信する。 Carry storage register 232 receives a signal from the carry logic block 234 coupled to two separate 6-bit field that is stored in the pipeline register 216.

【0039】数学ユニット154は、加算及び減算の機能を遂行する。 The math unit 154 performs a function of addition and subtraction. 数学ユニット154は、変化させてないAオペランドを通過させるか、もしくはその出力を0にすることもできる。 Math unit 154 either passes the A operand not changed, or its output may be zero. また数学ユニット154は、A及びBオペランドを乗じて、28ビットもしくは 22 ビットの結果を発生することもできる。 The math unit 154 multiplies the A and B operands, it is also possible to generate a 28-bit or 22-bit result. 更に数学ユニット154 In addition math unit 154
はその入力における値を 16 もしくは 18 ビットに丸めることができる。 You can round the value at its input to the 16 or 18 bits. 数学ユニット154の加算器/減算器部分へのオペランドは共に、3つのビットが全体数を表し、 25 ビットがその数の小数部分を表すことを指示する 3.25フォーマットである。 The operands to the adder / subtractor portion of the mathematical units 154 together, the three bits represent the total number, a 3.25 format indicating that 25 bits represent the fractional part of the number. 数学ユニット154の乗算器部分へのAオペランドも 3.25 フォーマットの数である。 A operand to the multiplier portion of the math unit 154 is the number of 3.25 format. 乗算器部分へのBオペランドは、2.20 フォーマットの数である。 B operands to the multiplier portion is the number of 2.20 format. 加算/減算、A通過、0強制、及び全乗算は全て 3.25 フォーマットの結果をもたらす。 Addition / subtraction, A passage, 0 forced, and the total multiplication results in all 3.25 format. 22 twenty two
ビット乗算は 2.20 フォーマットの結果をもたらす。 Bit multiplication results in the 2.20 format. 16 16
ビットの丸め及び 18 ビットの丸め動作は、それぞれ Bit rounding and 18-bit rounding operation, respectively
1.15 及び 1.17フォーマットの数をもたらす。 It brings the number of 1.15 and 1.17 format. 数学ユニット154の乗算器部分は、5サイクルの待ち時間を有する複サイクル乗算器である。 Multiplier part math unit 154 is a multi-cycle multiplier having a five cycle latency. 4クロックサイクルがパイプラインレジスタ216に先行する動作に費やされ、1サイクルが数学ユニット154の残りに費やされる。 4 clock cycles spent operation that precedes the pipeline register 216, one cycle is spent in the rest of the math unit 154. けた上げ/保管加算器222及びけた上げ伝播加算器226は全けた上げ先取り加算演算を遂行し、最終結果を発生する。 Carry / save adder 222 and carry propagate adder 226 performs a full carry look ahead addition operation to generate a final result. 数学ユニット154のボトム部分も加算/減算、A通過、0強制、及び 16 及び 18 ビット丸め動作に使用される。 Bottom part of the math unit 154 also addition / subtraction, A pass is used to zero force, and 16 and 18-bit rounding operation. 乗算の結果は、最下位ビット位置の次のビット位置に1を加算することによって丸められる。 The result of the multiplication is rounded by adding 1 to the next bit position of the least significant bit position. 16 への丸め及び 18 への丸め動作も、最下位ビット位置の次のビット位置に1を加算し、次いで結果の範囲の検査を遂行し、そして出力を最大の正の数もしくは最小の負の数にする。 Even rounding behavior of the round and 18 to 16, the least significant bit position by adding 1 to the next bit position, then performing check ranging results, and the maximum output of the positive number or minimum negative to the number. ハードウェアフィルタ演算ユニットの動作要約すれば、ハードウェアフィルタ演算ユニットブロック32は3つのモードで使用される。 If operation summary of a hardware filter operational unit, a hardware filter arithmetic unit block 32 is used in three modes. 第1の動作モードは、ビットストリームから検索された縮尺係数索引値と、読出し専用メモリテーブル内に記憶されている係数とを使用する符号化サンプルの量子化解除である。 The first operation mode is a dequantization of the coded samples using the scale factor index values ​​retrieved from the bit stream, and a coefficient stored in the read only memory table. 第2 The second
の動作モードは、高速余弦変換である。 Mode of operation is a fast cosine transform. 第3の動作モードは、有限インパルス応答濾波である。 The third mode of operation is a finite impulse response filter. これら3つの順次動作によって PCM 出力データが得られ、このデータは PCM 出力ブロック36による検索のために PCM バッファ34内に記憶される。 These PCM output data obtained by three sequential operation, this data is stored in the PCM buffer 34 for retrieval by the PCM output block 36.

【0040】以下の説明で使用する表記法では、Subban [0040] In the notation used in the following description, Subban
d 〔k〕は復号後の入力サブバンドベクトルである。 d [k] is the input sub-band vector after decoding. N
〔i〕〔k〕は合成マトリクスであり、v〔i〕はマトリクスNとベクトル Subband〔k〕との乗算の結果である。 [I] [k] is a synthetic matrix, v [i] is the result of the multiplication of matrix N and vector Subband [k]. vはディメンジョン 64のベクトルである。 v is a vector of dimension 64. 本発明の MPEG オーディオデコーダでは、以下に説明するようにvはディメンジョン 32 のv′によって置換される。 The MPEG audio decoder of the present invention, v is replaced by v 'dimension 32 as described below.
この置換によって2つの利点がもたらされる。 This results in two advantages by substitution. 即ち、解くべき問題のディメンジョン(乗算・加算の数及びメモリの大きさ)が半分に減少し、またマトリクスが直接余弦変換のものであることから、積は高速直接余弦変換を使用して実現することが可能になり、これが乗算・加算の数及びメモリの大きさを更に減少させる。 That is, the problem to be solved dimension (number and size of the memory of the multiply-add) is reduced by half, and since the matrix is ​​of the direct cosine transform, the product is implemented using a high-speed direct cosine transform it allows, which further reduces the number and size of the memory of the multiply-add. サブバンド合成 MPEG 仕様は以下の変換を規定している。 Sub-band synthesis MPEG specification defines the following conversion. i=〔 0, 6 i = [0, 6
3〕に対して、 v〔i〕= SUM{N〔i〕〔k〕* Subband〔k〕}/k=〔 0, 31〕 但し、 N〔i〕〔k〕= cos(( i+16 )*( 2 * k+1 )*( pi/64 ) = detCoef〔 i+16 〕〔k〕 故に、i=〔 0, 63〕に対して v〔i〕= SUM{ detCoef〔 i+16 〕〔k〕* Subband〔k〕}/k=〔 0 , 31〕 等価形状は、次の通りである。i=〔 0, 31〕に対して、 v′〔i〕= SUM{ detCoef〔i〕〔k〕* Subband〔k〕}/k=〔 0, 31 〕 これは以下のようにして実効的に実現される。 Against 3], v [i] = SUM {N [i] [k] * Subband [k]} / k = [0, 31] However, N [i] [k] = cos ((i + 16) * (2 * k + 1) * (pi / 64) = detCoef [i + 16] [k] Accordingly, i = relative [0, 63] v [i] = SUM {detCoef [i + 16] [k] * Subband [k] } / k = [0, 31] equivalent shape with respect to is: .i = [0, 31], v '[i] = SUM {detCoef [i] [k] * Subband [k] } / k = [0, 31] which is effectively achieved as follows.

【0041】 v′〔 32 〕= Fast . [0041] v '[32] = Fast. Cosine. Cosine. Transform { Subband〔k〕} 但し v′=v′〔 i+16 〕 0≦i≦ 15 v〔i〕=0 i== 16 v〔i〕=−v′〔 48 −i〕 17≦i≦ 48 v〔i〕=−v〔i− 48 〕 49≦i≦ 63 DCT 係数の対称性のために、v′は以下の対称を呈する。 Transform {Subband [k]} where v '= v' [i + 16] 0 ≦ i ≦ 15 v [i] = 0 i == 16 v [i] = - v '[48 -i] 17 ≦ i ≦ 48 v [i] = - v [i-48] for symmetry of 49 ≦ i ≦ 63 DCT coefficients, v 'exhibits the following symmetrical. v′〔i〕 =v′〔−i〕 v′〔 64 −i〕=−v′〔i〕 v′〔 32 〕 =0。 v '[i] = v' [- i] v '[64 -i] = - v' [i] v '[32] = 0. 以下の説明では、Vは MPEG 仕様のサブバンド合成流れ図に記載されているディメンジョン 1024 のアレイである。 In the following description, V is an array of dimensions 1024 that is described in the sub-band synthesis flow diagram of the MPEG specification. Vは 16 タップ FIR フィルタへの入力である。 V is the input to the 16-tap FIR filter. ディメンジョン 512 のベクトルUは FIR フィルタのメモリである。 Vector U dimension 512 is a memory of the FIR filter. 本発明のハードウェアフィルタの動作においては、Vはディメンジョン 512のV′によって置換され、Uは不変である。 In operation of the hardware filter of the present invention, V is substituted by V of dimensions 512 ', U is unchanged. 濾波動作 MPEG 仕様は、16 の連続ベクトルv〔 64 〕のシーケンスを含む FIFO として構成されているベクトルV〔 1 Filtering operations MPEG specification, 16 of the continuous vector v vector V that is configured as a FIFO comprising the sequence of [64] [1
024 〕を定義している。 It defines the 024].

【0042】ベクトルU〔 512〕は、以下のように定義されている。 The vector U [512] is defined as follows. i=〔 0, 31〕及びj=〔 0, 7 〕に対して、 U〔i+ 64 * j 〕=V〔i+ 128 * j〕 またi=〔 32, 63 〕及びj=〔 0, 7 〕に対して、 U〔i+ 64 * j 〕=V〔i+ 64 + 128 * j〕 故に、出力サンプルSはi=〔 0, 31〕に対して、 S〔i〕= SUM{U〔i+ 32 * j 〕* D〔i+ 32 * j 〕}/j=〔 0, 15 〕 実際の具体化は以下のようにして導出される。 i = [0, 31] and j = relative [0, 7], U [i + 64 * j] = V [i + 128 * j] The i = [32, 63] and j = [0, 7] respect, U [i + 64 * j] = V [i + 64 + 128 * j] Thus, the output sample S is i = relative [0, 31], S [i] = SUM {U [i + 32 * j] * D [i + 32 * j]} / j = [0, 15] actual implementation are derived as follows. Vの関数としてのUは次のように書き直すことができる。 U as a function of V can be rewritten as follows. i= i =
〔 0, 31〕、j=〔 0, 14〕、及びjが偶数の場合、 U〔i+ 32 * j 〕=V〔i+ 64 * j 〕 i=〔 0, 31〕、j=〔 0, 15〕、及びjが奇数の場合、 U〔i+ 32 * j 〕=V〔i+ 64 * j −32〕 Vと同様に、V′〔 512〕も 16 の連続ベクトルV′ [0, 31], j = [0, 14], and when j is an even number, U [i + 32 * j] = V [i + 64 * j] i = [0, 31], j = [0, 15 ], and when j is an odd number, U [i + 32 * j] = V [i + 64 * j -32] as with V, V '[512] is also 16 consecutive vector V'
〔 32 〕のシーケンスを表している(上に定義されているように)。 Represents the sequence of [32] (as defined above).

【0043】上式及びV′の対称性を使用すれば、以下の式によってUをV′の関数として表すことができる。 [0043] 'With the symmetry, V and U by the following equation' above equation and V can be expressed as a function of.
i=〔 0, 15〕、j=〔 0, 14〕、及びjが偶数の場合、 U〔i+ 32 * j 〕=V′〔i+ 16 + 32 * j 〕 i= 16 、j=〔 0, 14〕、及びjが偶数の場合、 U〔i+ 32 * j 〕=0 i=〔 0, 16〕、j=〔 1, 15〕、及びjが奇数の場合、 U〔i+ 32 * j 〕=−V′〔 16 −i+ 32 * j 〕 i=〔 17, 31 〕、j=〔 0, 14〕、及びjが偶数の場合、 U〔i+ 32 * j 〕=−V′〔 48 −i+ 32 * j 〕 i=〔 17, 31 〕、j=〔 0, 15〕、及びjが奇数の場合、 U〔i+ 32 * j 〕=−V′〔i− 16 + 32 * j 〕 FIR フィルタの動作中、アドレステーブルを使用することによって、FIR RAM 152のアドレス指定は簡略化される。 i = [0, 15], j = [0, 14], and when j is an even number, U [i + 32 * j] = V '[i + 16 + 32 * j] i = 16, j = [0, 14], and when j is an even number, U [i + 32 * j] = 0 i = [0, 16], j = [1, 15], and when j is an odd number, U [i + 32 * j] = -V '[16 -i + 32 * j] i = [17, 31], j = [0, 14], and when j is an even number, U [i + 32 * j] = -V' [48 -i + 32 * j] i = [17, 31], j = [0, 15], and when j is an odd number, U [i + 32 * j] = -V '[i-16 + 32 * j] operation of the FIR filter among, by using an address table, addressing FIR RAM 152 is simplified. FIR フィルタの式では、 S〔i〕= SUM{U〔i+ 32 * j 〕* D〔i+ 32 * j 〕}/j=〔 0, 15 〕 もしくは、 S〔i〕= SUM{( ± )V′〔 index+ 32 * j 〕* D〔i+ 32 * j 〕}/ j=〔 0, 15〕 索引は以下のようにして計算される。 The expression of the FIR filter, S [i] = SUM {U [i + 32 * j] * D [i + 32 * j]} / j = [0, 15] or, S [i] = SUM {(±) V '[index + 32 * j] * D [i + 32 * j]} / j = [0, 15] index is calculated as follows. i=〔 0, 16〕及びjが偶数の場合、 index =i+ 16 i=〔 0, 16〕及びjが奇数の場合、 index = 16 −i i=〔 17, 31 〕及びjが偶数の場合、 index = 48 −i i=〔 17, 31 〕及びjが奇数の場合、 index =i− 16 Vindextable 〔 32 〕はi=〔 0, 31〕に対する索引を含んでいる。 If i = [0, 16] and j is an even number, index = when i + 16 i = [0, 16] and j is an odd number, when index = 16 -i i = [17, 31] and j is an even number If index = 48 -i i = [17, 31] and j is an odd number, index = i- 16 Vindextable [32] is i = contains an index for [0, 31].

【0044】FIR フィルタの式では、 S〔i〕= SUM{( ± )V′〔 index+ 32 * j 〕* D〔i+ 32 * j 〕}/ j=〔 0, 15〕 索引の値に依存する(V'の関数としてのUの式に従う)加算/減算演算は、FIR 係数のDを変更することによって連続した加算に置換することができる。 [0044] In the formulas of the FIR filter depends on the value of S [i] = SUM {(±) V '[index + 32 * j] * D [i + 32 * j]} / j = [0, 15] Index (according to the formula of U as a function of V ') addition / subtraction operation may be replaced by adding a continuous by changing the D of FIR coefficients. 更に係数テーブルの大きさは反対称、即ちD〔i〕=−D〔 512 Furthermore the size of the coefficient table antisymmetric, i.e. D [i] = - D [512
−i〕を使用することによって半分まで減少させることができる。 It can be reduced to half by using -i]. その結果、256 の要素の係数テーブルは以下のようにして計算される。 As a result, the coefficient table of elements 256 is calculated as follows. i=〔 0, 15〕、j=〔 0, i = [0, 15], j = [0,
14〕、及びjが偶数の場合、 firCoef 〔i+ 32 * j〕=D〔i+ 32 * j〕 i=〔 0, 16〕、j=〔 1, 15〕、及びjが奇数の場合、及びi=〔 17, 31 〕、j=〔 0, 15〕の場合、 firCoef 〔i+ 32 * j〕=−D〔i+ 32 * j〕 j=〔 0, 14〕、及びjが偶数の場合に firCoef〔 16 14], and when j is an even number, FirCoef [i + 32 * j] = D [i + 32 * j] i = [0, 16], j = [1, 15], and when j is an odd number, and i = [17, 31], j = for [0, 15], firCoef [i + 32 * j] = - D [i + 32 * j] j = [0, 14], and firCoef when j is an even number [ 16
+ 32 j〕=0である事実を、例外として FIR フィルタ内に入れなければならない。 + A 32 j] = true 0, must take into FIR filter as an exception.

【0045】そこで、FIR 濾波は以下のように具体化される。 [0045] Therefore, FIR filtering is embodied as follows. i+ 32 * j≦ 256 に対して、 S〔i〕= SUM{V′〔Vindextable 〔i〕〕+ 32 * j〕* firCoef 〔i+ 32 *j〕 i+ 32 * j> 256 に対して、 S〔i〕= SUM{V′〔Vindextable 〔i〕〕+ 32 * j〕* firCoef { 512 −(i+32 *j)} また、i= 16 及びj=0、2、4、6、8、10、12、 Against i + 32 * j ≦ 256, with respect to S [i] = SUM {V '[Vindextable [i]] + 32 * j] * FirCoef [i + 32 * j] i + 32 * j> 256, S [ i] = SUM {V '[Vindextable [i]] + 32 * j] * firCoef {512 - (i + 32 * j)} Further, i = 16 and j = 0,2,4,6,8,10,12 ,
または 14 の時には firCoef は強制的に0にされる。 Or firCoef when the 14 is forced to zero. 高速余弦変換の演算本実施例は係数テーブルを1kから 32 要素まで減少させ、また計算の量を大幅に減少させており、従ってクロック速度をより遅くすることができるから、マトリクス方式とは異なり、流れ・グラフ手法を使用する。 Calculating embodiment of fast cosine transform reduces the coefficient table to 32 elements from 1k, also the amount of computation is greatly reduced, thus because it is possible to slower clock speed, unlike the matrix, using the flow graph technique. 以上に説明した特定の演算は、含まれている係数が+1と−1 The specific operation explained above, the coefficient that contains the +1 and -1
との範囲内にあり、所与の所要精度に対して固定小数点を採用できるので選択されているのである。 In the range of, it is what is selected because it employs a fixed point for a given required accuracy.

【0046】計算の流れは2つの演算子、即ち“バタフライ(butterfly )”演算子と“減算”演算子とを含む。 The calculation of flow and two operators, namely "Butterfly (butterfly)" operator and "subtract" operator. “バタフライ”演算子は y1=x1+x2 y2=(x1−x2)*d の形状であり、“減算”演算子は y1=x1 y2=x2−x1 の形状である。 "Butterfly" operator is in the form of a y1 = x1 + x2 y2 = (x1-x2) * d, "subtraction" operator is in the form of a y1 = x1 y2 = x2-x1. ここに、ベクトルx〔 32 〕は先行繰り返しの結果であり、ベクトルy〔 32 〕はこの繰り返しの結果である。 Here, the vector x [32] is the result of the previous iteration, the vector y [32] is the result of this repetition. 5回の繰り返しが存在している。 5 iterations are present. ベクトルx〔 32 〕は、その数量化解除の後にサブバンドベクトルによって初期化される。 Vector x [32] it is initialized by the sub-band vector after the quantification released. しかしながら、その後のx However, subsequent x
/yベクトルのアドレス指定を簡易化するために、先ず“ハダマード( Hadamard )順序”に再順序付けする。 / Addressing y vectors to simplify, first reordered "Hadamard (Hadamard) order". x〔i〕= subband〔h〔i〕〕 ここに、h〔i〕は以下のアルゴリズムを用いて構成される。 x [i] = subband [h [i]] Here, h [i] is constructed using the following algorithm. (k=1;k< 32 ;k *=2)に対して、 h (K = 1; k <32; k * = 2) with respect to, h

〔0〕=0、 (i=k−1;i≧0;i…)に対して、 h〔2* i〕=h〔i〕; h〔2* i+1〕=2* k−1−h〔i〕; このテーブルはある ROM 内に記憶され、サブバンドサンプルを数量化解除する時にそれらを再順序付けするためにhwに使用する。 [0] = 0, (i = k-1; i ≧ 0; i ...) against, h [2 * i] = h [i]; h [2 * i + 1] = 2 * k-1-h [i]; this table is stored within a ROM, the use in hw to reorder them when to release quantify subband samples.

【0047】そこで、各繰り返し時にベクトルx〔 32 [0047] Therefore, the vector x [32 at the time of each iteration
〕及びy〔 32 〕を非順次にアドレスしなければならない。 ] And must be non-sequentially addresses the y [32]. hw実施例では繰り返しの各段階におけるアドレス計算も、簡易化のために、テーブルを表引きすることに置換される。 Address calculation in each iteration stage of the hw embodiment also, for simplicity, is substituted to look-up tables. バタフライ及び減算演算子は、以下のようにして順次に、そして繰り返し適用される。 Butterfly and subtraction operator, sequentially and repeatedly applied in the following manner. for ( channel =0;channel <2;chanell ++) { for (k=0;k<5;k++) { for (i=0;i< 16 ;i++) butterflyOperator( &subbandVector 〔 channel〕〔butterflyOp1〔k〕〔i 〕, &subbandVector 〔 channel〕〔butterflyOp2〔k〕〔i〕, &subbandVector 〔 channel〕〔butterflyOp1〔k〕〔i〕, &subbandVector 〔 channel〕〔butterflyOp2〔k〕〔i〕, &FCTcoef〔k〕〔i〕); for (i=0;i< 16 ;i++) if (subOp1 〔k〕〔1〕) subOperator( &subbandVector 〔 channel〕〔subOp1〔k〕〔1 〕〕, &subbandVector 〔 channel〕〔subOp2〔k〕〔i〕, &subbandVector 〔 channel〕〔subOp1〔k〕〔i〕, &subbandVector 〔 channel〕〔subOp2〔k〕〔i〕; } } ここに、チャネル( channel ) とは左及び右チャネルのことであり、“butterflyOperator ”及び“subOperato for (channel = 0; channel <2; chanell ++) {for (k = 0; k <5; k ++) {for (i = 0; i <16; i ++) butterflyOperator (& subbandVector [channel] [butterflyOp1 [k] [i], & subbandVector [channel] [butterflyOp2 [k] [i], & subbandVector [channel] [butterflyOp1 [k] [i], & subbandVector [channel] [butterflyOp2 [k] [i], & FCTcoef [k] [i] ); for (i = 0; i <16; i ++) if (subOp1 [k] [1]) subOperator (& subbandVector [channel] [subOp1 [k] [1]], & subbandVector [channel] [subOp2 [k] [ i], & SubbandVector [channel] [subOp1 [k] [i], & SubbandVector [channel] [subOp2 [k] [i];}} here, the channel (channel) is that of the left and right channels, " butterflyOperator "and" subOperato
r ”の最初の2つの独立変数はy1及びy2のことであり、しして最後の2つの独立変数はx1及びx2のことである。 The first of the two independent variables of r "is that of y1 and y2, the last two independent variables teeth is that of x1 and x2.

【0048】kは、0から4までの繰り返しカウンタであり。 [0048] k is an repetition counter of from 0 to 4. butterflyOp1、butterflyOp2、subOp1、及び sub butterflyOp1, butterflyOp2, subOp1, and sub
Op2 は、ハードウェア演算ユニット内に実現されているアドレステーブルである。 Op2 is an address table which is implemented in the hardware arithmetic unit. これらのテーブルは以下のようにして構成されている。 These tables are constructed as follows. ButterflyOp1 and butterflyOp2 : for(k=1,stage =0;k< 32 ;k *=2,stage ++) for(j=0;j< 32 −k;j +=2* k ) for(i=0;i<k;i++) { butterflyOp1 〔stage 〕〔i+j/2〕=i+j; butterflyOp2 〔stage 〕〔i+j/2〕=i+j+k; } subOp1 and subOp2: for(k=1,stage =0;k< 32 ;k *=2,stage ++) for(j=0;j< 32 −k;j +=2* k ) { subOp1〔stage 〕〔j/2〕=0; subOp2〔stage 〕〔j/2〕=0; for( i=1;i<k;i++) { subOp1〔stage 〕〔i+j/2〕=i+j; subOp2〔stage 〕〔i+j/2〕=j+2* k−i; } } バタフライ演算子に使用されているd係数もある ROM ButterflyOp1 and butterflyOp2: for (k = 1, stage = 0; k <32; k * = 2, stage ++) for (j = 0; j <32 -k; j + = 2 * k) for (i = 0 ; i <k; i ++) {butterflyOp1 [stage] [i + j / 2] = i + j; butterflyOp2 [stage] [i + j / 2] = i + j + k;} subOp1 and subOp2: for (k = 1, stage = 0; k <32 ; k * = 2, stage ++) for (j = 0; j <32 -k; j + = 2 * k) {subOp1 [stage] [j / 2] = 0; subOp2 [stage] [j / 2] = 0; the} butterfly operator for (i = 1; i <k; i ++) {subOp1 [stage] [i + j / 2] = i + j;; subOp2 [stage] [i + j / 2] = j + 2 * k-i} there is also d factors used ROM
内に記憶されており、以下のようにして計算されている。 It is stored within, and is calculated as follows.

【0049】 [0049] サブバンドサンプルの数量化解除 FCT 内で使用する前に、ビットストリームから抽出されたサブバンドサンプルコードは以下のようにして量子化解除される。 Prior to use in the quantification release FCT subband samples, subband samples code extracted from the bit stream is dequantized as follows. s′=c* scf(s+d) s =( サンプルコード) / 2^( n−1) c =2^n / 段階 d =−( 段階−1) / 2^n n =サンプルコードのビット数 scf =サンプルに関連する縮尺係数 段階=サブバンドサンプルの符号化に使用された段階の最大数 段階の値は、特定のデータストリーム及びグループ化条件に関連付けられた層nに依存する。 s' = c * scf (s + d) s = (sample code) / 2 ^ (n-1) c = 2 ^ n / step d = - (step -1) / 2 ^ n n = the number of bits of sample code scf = maximum number stages of the value of scale factor step = step used for encoding the subband samples associated with the sample depends on the layer n associated with a particular data stream and the grouping condition. 段階テーブルは M The stage table M
PEG 仕様に与えられている。 It has been given to the PEG specification.

【0050】係数c及びdは、層、ビット数、及びグループ化(もしくはグループ化せず)で完成されたコードでアドレスされる ROM テーブル内に記憶されている。 The coefficients c and d are stored layer number bits, and the ROM table which is addressed by the complete code by grouping (or not grouping).
係数c及びdは以下のようにして計算される。 Coefficients c and d are calculated as follows. if ( layer==LAYER1 )j= 15 ; else if ( layer ==LAYER2 )j= 19 ; for ( i=1;i<j;i++) { if ( layer==LAYER1 )n= bit if (layer == LAYER1) j = 15; else if (layer == LAYER2) j = 19; for (i = 1; i <j; i ++) {if (layer == LAYER1) n = bit tbl 〔1〕; else if ( smp tbl [1]; else if (smp tbl 〔1〕! =3) n= bit tbl [1]! = 3) n = bit tbl 〔i〕/ 3; else n= bit tbl [i] / 3; else n = bit tbl 〔i〕+2/ 3; c〔i〕=( 1<<n) / step tbl [i] + 2/3; c [i] = (1 << n) / step tbl 〔i〕; d〔i〕=( 1− step tbl [i]; d [i] = (1-step tbl 〔i〕/ ( 1<<n) ; } 各索引i毎に、step tbl [i] / (1 << n);} for each index i, step tbl は、サブバンドサンプルの符号化に使用可能な段階の数を表し、bit tbl represents the number of available stages in the encoding of sub-band samples, bit tbl は、サブバンドサンプルを符号化するために使用されるビット数を表し、smp tbl represents the number of bits used to encode the sub-band samples, Smp tbl は、もし符号化がグループ化されるのであれば=3、そうでなければ1である。 tbl that if if the coding is grouped = 3, 1 otherwise. そして、 And,
iは、各サブバンドサンプルの符号化の特性である。 i is a characteristic of the coding of each sub-band samples. これは、ビットストリームから抽出された「ビット割当て This was extracted from the bit stream "bit allocation
( BAL )」情報から回復される。 (BAL) "is recovered from the information.

【0051】これら3つのテーブルは、MPEG 仕様に与えられている。 [0051] These three tables are given in the MPEG specification. 縮尺係数復号テーブル縮尺係数は、ビットストリームから抽出された時には符号化されている。 Scale factor decoding table scale factor, when extracted from the bit stream is encoded. これらは、以下のように構成されている復号テーブルを使用してハードウェアフィルタ演算ユニット32によって復号される。 These are decoded by the hardware filter arithmetic unit 32 uses the decoding table is constructed as follows. rs=1/ 2^(1/ 3) scftbl rs = 1/2 ^ (1/3) scftbl

〔0〕=2; for ( i=1;i< 63 ;i++) scfTbl〔i〕=scfTbl〔i−1〕/ rs; 数量化解除プロセス数量化解除プロセスは、式s= scf×c×( SBB [0] = 2; for (i = 1 ; i <63; i ++) scfTbl [i] = ScfTbl [i-1] / rs; Quantity decryption process quantification release process, wherein s = scf × c × ( SBB CODE CODE
−d )を遂行する。 Perform -d). 数学ユニット154は、演算ユニットバッファ30から索引値を受信し、この索引値を図4 Math unit 154 receives the index value from the arithmetic unit buffer 30, Fig. 4 this index value
で説明したレジスタ172及び174内に記憶することによって、この演算を遂行する。 In by storing the described registers 172 and 174, it performs this operation. 索引値は、ROM テーブル170と168とのそれぞれから、c及びd係数と、 Index value from each of the ROM tables 170 and 168, and c and d coefficients,
縮尺係数とに関する値を検索する。 Search for a value for the scale factor. 符号化されたサンプルが演算ユニットバッファ30から検索され、数学ユニット154は減算を遂行した後に連続乗算を遂行して量子化解除されたサンプルを計算する。 Coded samples are retrieved from the arithmetic unit buffer 30, math unit 154 calculates the samples dequantized by performing continuous multiplication after performing a subtraction. 量子化解除されたサンプルは、図4で説明した SBB RAM 150内に記憶される。 Samples dequantized is stored in the SBB RAM 0.99 described in FIG. 各サンプルは 32の量子化されたサンプルの全てが SBB RAM 150内に挿入されるまで量子化解除される。 Each sample all quantized samples of 32 are dequantized to be inserted into the SBB RAM 0.99.

【0052】図7は、ハードウェアフィルタ演算ユニットブロック32が遂行する量子化解除演算を示す流れ図である。 [0052] Figure 7 is a flow diagram a hardware filter arithmetic unit block 32 indicates dequantization operation performed. 演算は、計数を0に等しく初期化する段階25 Operation is equal initializes the count to zero stage 25
0から開始される。 0 is started from. 段階252では、演算ユニットバッファ30から検索された索引値を使用して符号化されたサンプルを選択し、選択した符号化されたサンプルを累算器156内へロードする。 In step 252, select the sample that is coded using the index-value search from the arithmetic unit buffer 30 and loads the selected sample coded into accumulator 156. 段階254においては、索引値を使用してD係数が ROM 170から検索され、R In step 254, D coefficients are retrieved from the ROM 170 by using the index value, R
1レジスタ158内へロードされる。 It is loaded into the first register 158. 次の段階256では、数学ユニット154は、累算器156内の値からR In the next step 256, mathematical unit 154, R from the value in the accumulator 156
1レジスタ158内の値を減算し、その差を累算器15 The value in the first register 158 is subtracted, the accumulator 15 and the difference
6内へロードする。 To load into the 6. 段階258では、索引値を使用してC係数が ROM 170から検索され、C係数の値がR1 In step 258, C coefficients using the index value is retrieved from the ROM 170, the value of C factor R1
レジスタ158内へロードされる。 It is loaded into the register 158. 段階260においては、数学ユニット154は累算器156内に記憶された値とR1レジスタ158内に記憶された値との積を求める。 In step 260, mathematical unit 154 obtains a product of the value stored in the stored in the accumulator 156 values ​​and R1 register 158. この積は再び累算器156内に記憶される。 This product is stored in the accumulator 156 again. 次の段階262では、適切な縮尺係数が縮尺係数 ROM 168 In the next step 262, the appropriate scale factor is the scale factor ROM 168
からR1メモリ158内へロードされる。 It is loaded from into the R1 memory 158. 段階264において、数学ユニット154は累算器156内の値とR In step 264, mathematical unit 154 values ​​and R in the accumulator 156
1レジスタ158内の値との積を求め、最終的な量子化解除されたサンプルを、SSB RAM 150内の第1の値が検索された位置にロードする。 Obtains the product of the value in the first register 158, a final dequantized samples, the first value in the SSB RAM 0.99 is loaded to the position search. 次の段階266では、CO In the next step 266, CO
UNT 変数がインクリメントされる。 UNT variable is incremented. 段階268では COU In step 268 COU
NT 変数を調べ、それが 32 に等しいか否かを決定する。 Examine the NT variable to determine whether it is equal to 32. もしCOUNT 変数が未だ 32 に等しくなっていなければ、段階252へ戻って新しい索引値を演算ユニットバッファ30から検索する。 If it is not equal to COUNT variable is still 32, it returns to step 252 to search for new index value from the arithmetic unit buffer 30. もし COUNT 変数が 32 に等しければ、図8を参照して以下に説明する高速余弦変換を遂行する。 If equal to COUNT variable is 32, performs fast cosine transform which will be described below with reference to FIG. 演算ユニットバッファ30内への索引値は非線形であり、適切な符号化されたサンプルを適切な順序で選択する普通のハダマード順序を使用して決定されることを理解されたい。 Index value to the arithmetic unit buffer 30 is non-linear, it is to be understood to be determined using conventional Hadamard sequence selecting an appropriate coded samples in the proper order. C及びD係数、及び縮尺係数は、ハダマード索引を使用して演算ユニットバッファ3 C and D coefficients and scale coefficients computation unit buffer 3 using a Hadamard index
0から検索された値に索引付けされる。 0 is indexed to the retrieved value from. 高速余弦変換プロセス量子化解除されたサンプルの全てが SSB RAM 150内に挿入された後、演算ユニットブロックはモードを変化させて高速余弦変換プロセスを遂行し始める。 After all fast cosine transform process dequantized sample is inserted into the SSB RAM 0.99, arithmetic unit block begins to perform fast cosine transform process by changing the mode. 高速余弦変換プロセスは、単一の時点における 32 の異なる周波数レベルを表す32 の 28 ビットサンプルを 32 のサンプルに効果的に変換する。 Fast cosine transform process, to effectively convert the 32 28-bit samples representing the frequency level with different 32 at a single point in time 32 samples. これらのサンプルを順次に使用して 22 ミリ秒の時間の間外部スピーカを駆動することができる。 It is possible to drive the time Magaibu speaker these samples sequentially using to 22 milliseconds. 32 の順次サンプルは、16 もしくは 18 32 sequential samples of the 16 or 18
ビットの何れかの PCM データフォーマットで出力される。 It is output in either PCM data format bits.

【0053】図8は、ハードウェアフィルタ演算ユニットブロック32が遂行する高速余弦変換演算を示す流れ図である。 [0053] Figure 8 is a flow diagram a hardware filter arithmetic unit block 32 indicates the fast cosine transform operation performed. この方法は、 COUNT1 変数を0に等しくセットする段階270から開始される。 The method begins at step 270 is set equal to COUNT1 variable to 0. 次の段階272では In the next stage 272
COUNT2 変数も0に等しくセットされる。 COUNT2 variables are set equal to 0. 段階274 Stage 274
は、索引値X及びYを初期化する。 Initializes the index value X and Y. 段階276では、SS In step 276, SS
B RAM 150内の位置Xに記憶されているサンプルが累算器156内にロードされる。 Samples stored in the position X in the B RAM 0.99 is loaded into accumulator 156. 次の段階278では、SS In the next step 278, SS
B RAM 150内の位置Yに記憶されているサンプルが R Sample R stored in the position Y in B RAM 0.99
1 レジスタ158内にロードされる。 It is loaded into the first register 158. 段階280において数学ユニット154は、累算器156及びR1レジスタ158内に記憶された値の和を求め、この和を SSB R Step math unit 154 at 280 determines the sum of the values ​​stored in the accumulator 156 and the R1 register 158, the sum SSB R
AM 150内の位置Xに戻してロードする。 To load back to the position X of the AM 150. 段階282 Stage 282
では数学ユニット154は、累算器156及び R1 レジスタ158内に記憶された値の差を求め、この差を R1 Mathematics unit 154 obtains a difference between the values ​​stored in the accumulator 156 and the R1 register 158, this difference R1
レジスタ158に戻す。 Back to the register 158. 段階284において数学ユニット154は、R1 レジスタ158内に記憶された差と、 Math unit 154 in step 284, the difference stored in the R1 register 158,
係数メモリ178から検索された係数との積を求める。 Obtaining the product of the retrieved coefficients from the coefficient memory 178.
この積は SSB RAM 150内の位置Yに記憶される。 This product is stored in the position Y in the SSB RAM 0.99. 段階286では、X及びY変数の次の値がセットされる。 In step 286, the next value of X and Y variables are set.
段階288において、COUNT2 変数がインクリメントされる。 In step 288, COUNT2 variable is incremented. 段階290では、COUNT2 の値が値 16に達したか否かが調べられる。 In step 290, a check is whether or not the value of the COUNT2 reaches the value 16. もし達していなければ段階276 Stage 276 if not if reached
へ戻され、もしCOUNT2 変数が 16 に達していれば段階292へ進んで COUNT2 変数が再び0に等しくセットされる。 Back to, if willing COUNT2 variable COUNT2 variables into long as step 292 reached 16 is set equal to zero again.

【0054】段階294においては、変数X及びYが再び初期化される。 [0054] In step 294, the variable X and Y are initialized again. 段階296では、SSB RAM 150内の位置Xに記憶されているサンプルが累算器156内にロードされる。 In step 296, the sample stored in the position X in the SSB RAM 0.99 is loaded into accumulator 156. 次の段階298では、位置Yに記憶されているサンプルが R1 レジスタ158内にロードされる。 In the next step 298, the sample stored in the position Y is loaded into the R1 register 158.
段階300では数学ユニット154は、累算器156または R1 レジスタ158内に記憶された値の差を求め、 Step 300 Mathematics unit 154 obtains a difference between the values ​​stored in the accumulator 156 or the R1 register 158,
この差を SSB RAM 150内の位置Y内へロードする。 This difference is loaded into the position Y in the SSB RAM 150.
段階302では、X及びY変数の次の値がセットされる。 In step 302, the next value of X and Y variables are set. 段階304において、COUNT2 変数がインクリメントされる。 In step 304, COUNT2 variable is incremented. 段階306では、COUNT2 の値が値 16 に達したか否かを判定する。 At step 306, it determines whether the value of the COUNT2 reaches the value 16. もし達していなければ段階29 Stage 29 If not, if reached
6へ戻される。 It is returned to the 6. もし COUNT2 変数が 16 に達していれば段階308へ進んで COUNT1 変数がインクリメントされる。 If COUNT2 variable COUNT1 variable proceeds to step 308 if reached 16 is incremented. 段階310では、COUNT1 変数が値5に達したか否かが決定される。 In step 310, whether COUNT1 variable reaches the value 5 is determined. もし値5に達していなければ、段階2 If not, if reached the value 5, stage 2
72へ戻される。 It is returned to the 72. もし COUNT1 変数が値5に達していれば FCT 演算は完了したのであり、図9に示す FIR 演算が開始される。 If COUNT1 variable has reached a value 5 FCT calculation is than complete, FIR calculation shown in FIG. 9 is started. 有限インパルス応答濾波動作データの高速余弦変換が完了すると、演算ユニットブロック32はそのデータに対してその最後の動作、即ち有限インパルス応答濾波動作を遂行する。 When fast cosine transform of a finite impulse response filtering operation data is completed, the arithmetic unit block 32 the last operation on the data, i.e. performs a finite impulse response filtering operation. 有限インパルス応答濾波動作の最初の段階は、1024 の 24 ビット値を記憶する FIR RAMブロック152(図4参照)内へ SSB The first stage of a finite impulse response filtering operation, SSB to FIR RAM block 152 (see FIG. 4) in which to store the 24-bit value of 1024
RAM 150の内容を複写することである。 It is to copy the contents of the RAM 150. SSB RAM 1 SSB RAM 1
50内に記憶されている 32 の各値の 24 の最上位ビットが FIRRAM ブロック152内へ複写される。 The most significant bit of 24 for each value of 32 stored in 50 is copied into FIRRAM block 152. FIR 濾波は、現在復号中のフレームだけではなく、所定数の先行フレームをも使用することによって PCM バッファへ実際に出力される信号を効果的に平均化し、演算ユニット32から出力される実際の PCM データを計算する。 FIR filtering is not only the frame currently being decoded, effectively averages the signals that are actually output to the PCM buffer by also using a predetermined number of preceding frames, the actual PCM is output from the operation unit 32 to calculate the data.
復号が開始されると、FIR RAM 152は0で満たされる。 When the decoding is started, FIR RAM 152 is filled with zero. 従って演算ユニット32から PCM バッファへの最初のサンプル出力は、必然的に FIR RAM 152内に記憶された0を濾波することになる。 Thus the first sample output from the arithmetic unit 32 to the PCM buffer would filter the 0 stored inevitably the FIR RAM 152. 本発明のデコーダシステムによる音響出力は、有限インパルス応答濾波の動作のために徐々に上昇して行くようになる。 Audio output of the decoder system of the present invention gradually becomes rises for operation of the finite impulse response filtering. 同様に、ビットストリームに符号化されたオーディオ内の鋭い変化は、演算ユニットブロック32によって遂行される有限インパルス応答によって緩和される。 Likewise, sharp changes in the audio encoded bit stream is mitigated by a finite impulse response is performed by the arithmetic unit block 32. FIR RAM 152は循環バッファとして動作し、RAM152内に記憶されているサンプルの最古の集合の上に受信したサンプルの最新の集合を書込むことによって RAM 内に記憶している値を絶えず更新し続ける。 FIR RAM 152 operates as a circular buffer, constantly updating the values ​​stored in the RAM by writing the latest set of samples received over the oldest set of samples stored in the RAM152 to continue. FIR RAM 152は、それぞれが 512 の 24 ビットの値からなる2つの区分に分離されている。 FIR RAM 152 is separated into two sections of 24-bit value of 512. 左チャネルは一方の区分内に記憶され、右チャネルは他方の区分内に記憶される。 Left channel is stored in one segment, the right channel is stored in the other partition.

【0055】演算ユニットブロック32が遂行する動作は、一方のチャネル、そして次に他方のチャネルで順次に遂行されることを理解されたい。 The arithmetic unit block 32 is performed operation is understood to be sequentially performed in one channel and then the other channel. 換言すれば、一組の In other words, a set of
32サンプルは一方のチャネルのみに対応するのであり、左チャネルに対応する 32サンプルを処理する前に、右チャネル用の 32 サンプルが量子化解除され、変換され、そして濾波されるのである。 32 samples are than corresponding only to one channel, before processing the 32 samples corresponding to the left channel, the 32 samples dequantized for the right channel are converted, and is being filtered. FIR 濾波は、累算器156内へ0をロードすることから開始される。 FIR filtering begins by loading a 0 into accumulator 156. 次いで、FIR RAM 152からサンプルが順次に検索され、係数メモリ178から検索された係数が乗ぜられ、累算器156内へ加算されて行く。 Then, samples are sequentially retrieved from the FIR RAM 152, the retrieved coefficients multiplied by the coefficient memory 178, go is added into the accumulator 156. 次いで、累算器156内の値が 16 ビットに丸められる。 Then, the value in accumulator 156 is rounded to 16 bits. 丸めの後、この値は、それが累算プロセス中に飽和したか否かを調べられる。 After rounding, the value is examined whether it is saturated during the accumulation process. 次に重み付けされた和が 16 ビット PCM サンプルとして Then weighted sum as the 16-bit PCM samples
PCM バッファ34へ出力される。 Is output to the PCM buffer 34. 濾波は、FIR RAM 1 Filtering is, FIR RAM 1
52内に記憶されている各 32 サンプル毎に遂行される。 It is performed for each 32 samples stored in the 52. 従って、各サンプルはそのサンプル自体の値を使用して、先に出力された他の 15 の重みを付けられた和に加算される。 Thus, each sample value of the sample itself using, is added to the sum which is weighted for other 15 output first. 図9は、ハードウェアフィルタ演算ユニットブロック32が遂行する有限インパルス応答濾波演算を示す流れ図である。 Figure 9 is a flow diagram a hardware filter arithmetic unit block 32 indicates a finite impulse response filtering operation performed. FIR 演算は、COUNT1 変数を0にセットする段階312から開始される。 FIR operation is started from step 312 to set the COUNT1 variable to 0. 段階314では、COUNT1 変数によって識別される SBB RAM 150 In step 314, SBB RAM 150 identified by the COUNT1 variable
内の位置に記憶されている値が〔 COUNT1 変数+ LAST The value stored in the position of the inner is [COUNT1 variable + LAST B B
LOCK 変数〕に等しい FIR RAM 152内のアドレスへ移動される。 It is moved to the address equal in FIR RAM 152 the LOCK variable]. LAST LAST BLOCK 変数は、図9に示す FIR 動作が遂行された先行時点から FIR RAM 152へ書込まれた最後の値のアドレス以降の1つの位置を指し示している。 BLOCK variable points to one position since the address of the last value that was written from the prior time the FIR operation is performed to the FIR RAM 152 shown in FIG. LAST LAST BLOCK 変数は、0に等しいかもしくは大きく、512 よりは小さい。 BLOCK variable is equal to or larger to 0, is less than 512. FIR RAM 152へ書込まれる 2 2 to be written to the FIR RAM 152
4 ビットの値は、SSB RAM 150内に記憶されている 2 4-bit value is stored in the SSB RAM 0.99 in 2
8 ビット値の 24 の最上位ビットからなっている。 It is made from the most significant bit of the 24 8-bit values.

【0056】ルーチンは段階314から段階316へ進み、COUNT1 変数がインクリメントされる。 [0056] routine proceeds from step 314 to step 316, COUNT1 variable is incremented. 段階318 Stage 318
において、COUNT1 変数が値 32 に到達したか否かを判断する。 In, it is determined whether COUNT1 variable has reached the value 32. もし COUNT1 変数が値 32 に到達していなければ、SSB RAM 150内に記憶されている値の全ては未だ If not reached if COUNT1 variable value 32, all values ​​stored in the SSB RAM 0.99 in is still
FIR RAM 152内へ複写されていないのであり、段階312へ戻される。 There because they are not copied into FIR RAM 152 is returned to step 312. もし COUNT1 変数が値 32 に到達していれば、段階320において LAST If if reached COUNT1 variable to the value 32, LAST at step 320 BLOCK 変数がその最後の値に加算されて更新される。 BLOCK variable is updated is added to the end of the value. 次の段階322では、COUNT1 変数が0にセットされる。 In the next step 322, it is set to COUNT1 variable 0. 段階324において COUNT2 変数が0にセットされる。 COUNT2 variable is set to 0 in step 324. 次いで段階32 Then stage 32
6においては、値0が累算器156内へロードされる。 In 6, the value 0 is loaded into the accumulator 156.
段階328においては、INDEX 変数によって指定される In step 328, as specified by the INDEX variable
FIR RAM 152内の位置からある値が検索される。 Values ​​from the position of the FIR RAM 152 is retrieved. この値は R1 レジスタ158内へロードされる。 This value is loaded into the R1 register 158. INDEX 変数は〔 COUNT1 変数+ ( COUNT2 変数×値 32 ) 〕に等しい。 INDEX variable is equal to [COUNT1 variable + (COUNT2 variable × value 32)]. 段階328は、FIR RAM 152内に存在する各組の 32 値から1つのサンプルを効果的に検索する。 Step 328 effectively search for one sample from 32 value of each set existing in the FIR RAM 152. 段階330では、R1 レジスタ158内の値に係数メモリ1 In step 330, the coefficient memory 1 to the value of the R1 register 158
78から検索された係数が乗ぜられ、その積が R1 レジスタ158内に記憶される。 Coefficients retrieved from 78 multiplied, the product is stored in the R1 register 158. 段階332では、累算器1 In step 332, the accumulator 1
56内の値が R1 レジスタ158内の値に加算され、その和が累算器156内へ戻される。 Value of 56 is added to the value of the R1 register 158 and the sum is returned to the accumulator 156. 段階332は、FIR Stage 332, FIR
RAM 152から検索された全ての値(係数メモリ178 All values ​​retrieved from RAM 152 (the coefficient memory 178
から検索した係数によって適切に縮尺してある)の和を効果的に累算する。 Effectively accumulate sum of are scaled appropriately) by the found coefficients from.

【0057】次に段階334へ進み、COUNT2 変数がインクリメントされる。 [0057] then proceeds to step 334, COUNT2 variable is incremented. 段階336はCOUNT2 変数が値 1 Stage 336 COUNT2 variable value 1
6 に到達したか否かを調べる。 Check whether the host vehicle has reached the 6. もし到達していなければ、段階328へ戻される。 If not reached if, it returned to the stage 328. もし COUNT2 変数が値 16 If COUNT2 variable value 16
に到達していれば、段階338において累算器156内に記憶されている値が丸められ、数学ユニット154において飽和が検査される。 If reached, rounded value stored in the accumulator 156 in step 338, the saturation is tested in mathematics unit 154. 段階340では、丸められた値が PCM バッファ34内に記憶される。 In step 340, the rounded value is stored in the PCM buffer 34. 次の段階34 The next step 34
2では、COUNT1 変数がインクリメントされる。 In 2, COUNT1 variable is incremented. 段階3 Stage 3
44は、COUNT1 変数が値 32 に達したか否かを調べる。 44 checks whether COUNT1 variable reaches the value 32. もし COUNT1 変数が未だ値 32 に達していなければ、段階324に戻る。 If If COUNT1 variable has not yet reached the value 32, the flow returns to step 324. もし 32 に達していればルーチンは完了し、次の 32 サンプルのブロックに対して図7 Routine is complete if if reached 32, 7 with respect to the next block of 32 samples
で説明した量子化解除プロセスが開始される。 In dequantization process described is started. 次のブロックは、今まで処理してきたブロックに対応するそのチャネルのための残りであるか、もしくは量子化解除、変換、及び濾波すべき反対側のチャネルの次の組のオーディオサンプルの何れかである。 The next block is either a rest for the channel corresponding to the block which has been processed up to now, or dequantization, transformation, and in either of the following set of audio samples of the opposite side of the channel to be filtered is there. 図10は、本発明のシステムを収容することができる一つの考え得るパッケージを示すピン・アウト図である。 Figure 10 is a pin-out diagram of a package to one possible which can accommodate the system of the present invention. 次表は、このピン・アウト図に示されている信号の内容を記述している。 The following table describes the contents of the signal shown in the pin-out diagram. ピン名 ピン番号 I/O 説 明 A9 58 A8 63 A7 64 A6 65 A5 66 O DRAMアドレスバス出力 A4 68 A3 69 A2 71 A1 72 A0 74 〔BOF 〕バー 27 O フレーム信号の始まり 〔CAS 〕バー 48 O DRAM列アドレスストローブ CLK90 28 I 90 kHz 基準クロック入力 CLKOUT 8 O バッファ付き 24 MHz 発振器出力 D3 51 D2 52 I/O DRAMデータバス D1 56 D0 57 〔DCS 〕バー) 94 I チップ選択 Pin Name Pin No. I / O Description A9 58 A8 63 A7 64 A6 65 A5 66 O DRAM address bus output A4 68 A3 69 A2 71 A1 72 A0 74 [BOF] bar 27 O start of frame signal [CAS] Bar 48 O DRAM column address strobe CLK90 28 I 90 kHz reference clock input CLKOUT 8 O buffered 24 MHz oscillator output D3 51 D2 52 I / O DRAM data bus D1 56 D0 57 [DCS] bar) 94 I chip select ピン名 ピン番号 I/O 説 明 DMPH1 26 O 復号済デエンファシス選択出力DMPH0 25 〔DSTRB 〕バー 93 I データストローブ FS1 23 O 復号済サンプリング周波数出力FS0 22 GND(図面参照) 接地 〔IRQ 〕バー 101 O 割込み要求 LRCLK 17 O 左/右チャネル選択出力 〔MUTE〕バー 117 I オーディオ出力沈黙強制 〔OE〕バー 44 O DRAM出力可能化 〔OSCEN 〕バー 6 I バッファ付き発振器出力可能化 OSCIN 3 I 24 MHz 発振器入力または水晶接続 OSCOUT 4 O 水晶接続(水晶低側) PCMCLK 14 I PCMクロック入力 PCMDATA 20 O PCM直列データ出力 〔PLAY〕バー 118 I 復号済オーディオの出力可能化 〔PTS 〕バー 11 O PCM出力にオーディオ関連PTSの存在を Pin Name Pin No. I / O Description DMPH1 26 O decoded deemphasis selected output DMPH0 25 [DSTRB] bar 93 I data strobe FS1 23 O decoded sampling frequency output FS0 22 GND (see drawing) ground [IRQ] Bar 101 O interrupt request LRCLK 17 O left / right channel selection output [MUTE] bar 117 I audio output silence force [OE] bar 44 O DRAM output enable [OSCEN] bar 6 I buffered oscillator output enable OSCIN 3 I 24 MHz oscillator input or crystal connection OSCOUT 4 O crystal connection (crystal low side) PCMCLK 14 I PCM clock input PCMDATA 20 O PCM serial data output [PLAY] audio associated with the output enable [PTS] bar 11 O PCM output bar 118 I decoded audio the presence of PTS 〔RAS 〕バー 50 O DRAM行アドレスストローブ 〔REQ 〕バー) 99 O データ要求 〔RESET 〕バー116 I リセット信号 RD/〔WR〕バー 95 I 読出し/書込み選択 No. [RAS] bar 50 O DRAM row address strobe [REQ] bar) 99 O data request [RESET] bar 116 I reset signal RD / [WR] bar 95 I read / write select ピン名 ピン番号 I/O 説 明 SADDR6 114 SADDR5 112 SADDR4 111 SADDR3 109 I レジスタアドレスバス SADDR2 108 SADDR1 107 SADDR0 103 SCLK 19 O PCMクロック出力 SDATA7 77 SDATA6 78 SDATA5 80 SDATA4 81 I/O レジスタ及びデータ入力/出力用 SDATA3 83 8ビット並列データバス SDATA2 85 SDATA1 86 SDATA0 87 SIN 88 I 直列圧縮オーディオデータ入力 TCK 35 I JTAGクロック入力 TDI 40 I JTAGデータ入力 TDO 37 O JTAGデータ出力 TEST 42 I 試験可能化 TMS 39 I JTAGモード選択入力 VCC(図面参照) I 5V電力 〔WAIT〕バー 100 Pin Name Pin No. I / O Description SADDR6 114 SADDR5 112 SADDR4 111 SADDR3 109 I register address bus SADDR2 108 SADDR1 107 SADDR0 103 SCLK 19 O PCM clock output SDATA7 77 SDATA6 78 SDATA5 80 SDATA4 81 I / O registers and the data input / output use SDATA3 83 8-bit parallel data bus SDATA2 85 SDATA1 86 SDATA0 87 SIN 88 I serial compressed audio data input TCK 35 I JTAG clock input TDI 40 I JTAG data input TDO 37 O JTAG data output tEST 42 I tests enabling TMS 39 I JTAG mode selection input VCC (see drawing) I 5V power [WAIT] bar 100 O 待機要求…3状態出力 〔WE〕バー 43 O DRAM読出し/〔書込み〕バー制御 オーディオ復号動作流れ図 動作の概要 O standby request ... 3-state output [WE] bar 43 O DRAM read / [Write] Summary of the bar control the audio decoding operation flow operation

【0058】図11はオーディオデコーダブロック28 [0058] Figure 11 is an audio decoder block 28
の高レベルアクティビティを示す流れ図である。 It is a flow diagram illustrating a high-level activity. 処理は、リセットの後に、外部バッファ26の存否をシステムが調べる段階400から開始される。 Process, after the reset is initiated the presence or absence of external buffer 26 from step 400 the system checks. ブロック400 Block 400
を完了させるために使用されるプロセスに関しては図1 Figure respect process used to complete the 1
2を参照して後述する。 2 with reference to the later. 段階402において、オーディオデコーダブロック28が使用する複数の変数がリセットされる。 In step 402, the audio decoder block 28 are a plurality of variables to be used is reset. 変数をリセットするために使用されるプロセスに関しては図13を参照して後述する。 With respect to the process used to reset the variables will be described later with reference to FIG. 13. 判断段階40 Decision stage 40
4においてオーディオデコーダブロック28は、復号すべきデータが入力バッファ24もしくは外部バッファ2 Audio decoder block 28 in 4, the data to be decoded is input buffer 24 or external buffer 2
6内に存在するか否かを決定する。 Determining whether present in the 6. もし使用可能なデータが存在しなければ、データが使用可能になるまでシステムは検査し続け、次いで段階406へ進んでシステムはデータストリーム内の同期を回復することを試みる。 If there are available data if the system until the data is available continues to test, the system proceeds to step 406 and then attempts to recover the synchronization in the data stream.
オーディオデコーダブロック28が同期を回復するために使用するプロセスは図14及び15を参照して後述する。 Process audio decoder block 28 is used to recover the synchronization will be described later with reference to FIGS. 14 and 15. 同期を回復した後の段階408では、オーディオデコーダブロック28が受信したビットストリームが復号され、演算ユニットバッファ30へ渡される。 In step 408 after the return of synchronization, the decrypted bitstream audio decoder block 28 receives are passed to the arithmetic unit buffer 30. 図11の段階408を完了させるために使用するプロセスに関しては図36を参照して後述する。 For the process to be used to complete the steps 408 of FIG. 11 will be described later with reference to FIG. 36. 復号ループ408は入力バッファ24もしくは外部バッファ26内の全てのデータが復号されるか、もしくはストリームの終わり状態が発生するまで続けられる。 Decoding loop 408 whether all data in the input buffer 24 or the external buffer 26 is decoded, or the stream of the end state is continued until the generation. 初期 DRAM 検査プロセス図12は、使用可能なバッファメモリの大きさを検査するためにオーディオデコーダブロック28が使用するプロセスの詳細を示す。 Initial DRAM inspection process 12 show details of the process of the audio decoder block 28 to check the size of the buffer memory available to use. プロセスは DRAM フラグをセットする段階410から開始される。 The process begins at step 410 to set the DRAM flag. 段階412では、所定のビット列(もしくはストリング)P2及びP1の 32 In step 412, a predetermined bit sequence (or string) of P2 and P1 32
ビット値が3つの異なるアドレスへ書込まれる。 Bit value is written to three different addresses. 次に段階414において、第1のアドレスからの READ 動作が遂行される。 Next, at step 414, READ operation from the first address is performed. 段階416においては、アドレス 149 から検索された値とP2変数とを比較する。 In step 416, comparing the retrieved value from the address 149 and P2 variable. もしこの比較が有効でなければ、それはアドレス 149 が存在せず、 If not the comparison is valid, it is not present the address 149,
また外部 DRAM が存在していないことを表している。 Also it indicates that the external DRAM does not exist. 従って段階418へ分岐し、プロセスは内部 SRAM バッファ24を使用するようにセットアップされる。 Accordingly branches to step 418, the process is set up to use the internal SRAM buffer 24. PTSバッファの大きさは、入力バッファ24内に単一 PTS を記憶するように動作可能な2語に等しくセットされる。 The size of the PTS buffer is set equal to the operable one word to store a single PTS in the input buffer 24. プロセスは段階418から段階420へ進み、DRAM フラグがクリアされる。 The process proceeds from step 418 to step 420, DRAM flag is cleared. DRAM 検査プロセスは段階420で完了する。 DRAM inspection process is completed in step 420.

【0059】段階416において、もしアドレス位置 1 [0059] In step 416, if the address location 1
49 からP2値が検索されれば、プロセスは段階422 If 49 searches the P2 value, process step 422
へ進んでシステムは 600 バイトバッファを使用するようにセットアップされる。 To willing system is set up to use 600 byte buffers. PTS バッファの大きさが、60 The size of the PTS buffer, 60
0 バイトバッファ内で4語にセットされる。 0 is set to 4 words in the byte buffer. 段階424 Stage 424
において、アドレス位置 8191 から読出すことを試みることによってシステムは、さらなる DRAM アドレス位置の存在を検査する。 In the system by attempting to read from the address position 8191 checks the presence of additional DRAM address location. 段階426では、アドレス 8191 から検索された値とP1値とが比較される。 In step 426, the retrieved value and the P1 value from address 8191 are compared. もしこの比較が有効でなければ、段階434へ分岐して TEST If this comparison is not valid, then branches to step 434 TEST REG REG
変数が試験される。 Variable is tested. もしTEST If TEST REG 変数が1に等しくなければ、このプロセスは終了する。 If REG variable is not equal to 1, the process ends. もしTEST If TEST REG 変数が1に等しければ、段階436へ進んで PTS バッファの大きさが 32 語に等しくセットされる。 Equal REG variable to 1, the routine proceeds to step 436 the size of the PTS buffer is set equal to 32 words. もし段階42 If step 42
6における比較が有効であれば、段階428においてシステムは256 キロビットのバッファの大きさを使用するように設定される。 If the comparison is valid in 6, the system in step 428 is set to use the magnitude of 256 kilobit buffer. PTS バッファの大きさは 256 キロビットバッファ内で 1640 語にセットされる。 The size of the PTS buffer is set to 1640 words in 256 kg bit buffer. 次の段階430は、アドレス 32767 を読出すことによってより多くの DRAM が存在するか否かを試験する。 The next step 430 tests whether more DRAM is present by reading the address 32767. 段階432 Stage 432
において、アドレス 32767 から検索された値とP2変数とを比較する。 In, and compares the values ​​retrieved from the address 32767 and P2 variable. もし段階432における比較が有効でなければ、再度段階434へ進められ、TEST If no valid comparison in step 432, proceed to step 434 again, TEST REG 変数が試験される。 REG variable is tested. もし段階432における比較が有効であば、段階433においてシステムは1メガビットバッファを使用するように設定される。 If the comparison is valid der in if step 432, the system in step 433 is set to use a 1 megabit buffer. PTS バッファの大きさは1メガビットバッファ内で 6554 語にセットされる。 The size of the PTS buffer is set to 6554 words in the 1 megabit buffer.
これで段階434へ進み、TEST This continues to step 434, TEST REG 変数が試験される。 REG variable is tested. 変数初期化及びリセット図13に、オーディオデコーダブロック28が遂行するレジスタ及びオーディオ復号プロセスに使用する変数のクリア及び初期化のプロセスを示す。 The variable initialization and reset Figure 13 illustrates a process of clearing and initialization of variables used in the audio decoder block 28 performs register and audio decoding process. このプロセスは、 This process,
見出しレジスタを0に等しくセットする段階438から開始される。 Begins at step 438 is set equal headings register to zero. 段階440では PTS レジスタが0にセットされる。 In step 440 PTS register is set to 0. 段階442において、オーディオ入力語計数 In step 442, the audio input word count
AIWC が0に等しくセットされ、また第2のオーディオ入力語計数 AIWC2 が1に等しくセットされる。 AIWC is set equal to 0, and the second audio input word count AIWC2 is set equal to 1. 次の段階444では、INTERNAL FLAG レジスタが0に等しくセットされる。 In the next step 444, INTERNAL FLAG register is set equal to 0. この INTERNAL FLAG レジスタは、NO The INTERNAL FLAG register, NO RE RE
AD、REPLAY、REPEAT、MUTE、EC、SYNTAX、及び PTS フラグを含む。 AD, including REPLAY, REPEAT, MUTE, EC, SYNTAX, and PTS flag. 段階446では、オーディオバッファの大きさが PTS ポインタ( PTS In step 446, the size of the audio buffer is PTS pointer (PTS PTR ) 内へ入力される。 It is input to the PTR) within.
これは、提示タイムスタンプ値を記憶するために使用可能な第1の位置に PTS PTS to the first position that can be used to store the presentation time stamp value PTR を配置する。 To place the PTR.

【0060】INTERNAL FLAG レジスタは、オーディオデコーダが使用するオーディオデコーダ RAM 148の専用部分である。 [0060] INTERNAL FLAG register is a dedicated portion of the audio decoder RAM 148 used by the audio decoder. NO NO READ フラグは、フレームを読出さない場合にセットされる。 READ flag is set if no out read the frame. REPLAY フラグは、オーディオデコーダブロック28が最後の良好なフレームを再生中であることを指示する。 REPLAY flag instructs the audio decoder block 28 is playing the last good frame. REPEAT フラグは、通常は同期を再び取得するためにある遅延を導入できるように最後の良好フレームを繰り返させるマイクロプロセッサホスト12からの命令である。 REPEAT flag is usually a command from the microprocessor host 12 to repeat the last good frame to be able introduce a delay in order to re-acquire synchronization. MUTE フラグは、オーディオデコーダブロック28が「無音」( no sound )もしくは0フレームを出力する時には必ずセットされる。 MUTE flag is always set when the audio decoder block 28 outputs a "silent" (no sound) or 0 frame. 誤り隠し( EC )フラグは、オーディオデコーダブロック28 Error concealment (EC) flag, an audio decoder block 28
が誤りを検出し、ある種の誤り隠しを遂行する時にセットされる。 But detects an error, is set at the time of performing some sort of error concealment. SYNTAX フラグは、オーディオデコーダブロック28が構文誤りを検出するとセットされる。 SYNTAX flag, audio decoder block 28 is set upon detecting a syntax error. PTS フラグは、提示タイムスタンプがビットストリーム内に検出されるとセットされる。 PTS flag presentation time stamp is set when it is detected in the bitstream. 段階448において、オーディオポインタ( AUDIO In step 448, the audio pointer (AUDIO PTR ) が0にセットされる。 PTR) is set to 0. 次の段階450では、最後の良好フレームポインタ( LGF In the next step 450, the last good frame pointer (LGF
PTR ) 及び最後の良好フレームの大きさ( LGF PTR) and the size of the last good frame (LGF SIZE SIZE
)の両フィールドが0に等しくセットされる。 Both fields) is set equal to 0. 段階45 Stage 45
2においては、現フレームポインタ( CF In 2, the current frame pointer (CF PTR ) 変数及び現フレームの大きさ( CF PTR) variables and the size of the current frame (CF SIZE )変数が0に等しくセットされる。 SIZE) variable is set equal to 0. 段階454では、次のフレームポインタ( In step 454, the next frame pointer (
NF NF PTR ) 変数及び次のフレームの大きさ( NF PTR) variables and the size of the next frame (NF SIZE ) SIZE)
変数が0に等しくセットされる。 Variable is set equal to 0. 段階456では、再生計数( REPLAY In step 456, playback count (REPLAY CNT ) 及びスキップ計数( SKIP CNT) and skip counting (SKIP CNT ) CNT)
の両変数が0に等しくセットされる。 Both variable is set equal to zero. 段階458では、 In step 458,
不良ビット計数( BAD The faulty bit count (BAD BIT BIT CNT ) 値が0に等しくセットされる。 CNT) value is set equal to 0. 最終段階460では、先行見出しレジスタが0に等しくセットされる。 In the final step 460, the preceding heading register is set equal to 0. これでオーディオデコーダブロック28は変数をリセットするために使用されるプロセスから出て図11で説明した段階404へ進み、オーディオデコーダは「オーディオ入力語計数」( AIWC ) This audio decoder block 28 proceeds to step 404 described in FIG. 11 out of the process used to reset the variables, the audio decoder "audio input word count" (AIWC)
変数(この変数は、復号すべきデータをシステムデコーダブロック20が入力バッファ24もしくは外部バッファ26内へ配置したことを指示する)を繰り返して試験することによって、復号すべきデータを待機する。 Variable (This variable data to be decoded system decoder block 20 to indicate that arranged to the input buffer 24 or external buffer 26) by testing repeatedly, to wait for data to be decoded. 同期取得図14及び15は、オーディオデコーダブロック28が同期文字を探索して到来するビットストリーム内の同期を取得する手法を示す。 Synchronization acquisition 14 and 15 show a method of acquiring synchronization in the bit stream the audio decoder block 28 arrives searches the synchronization character. プロセスは、同期計数( SYNC The process, synchronization count (SYNC
CNT ) 変数として〔 SYNC As CNT) variable [SYNC LCK レジスタ値+1〕をロードする段階462から開始される。 It is started from step 462 to load the LCK register values ​​+1]. SYNC SYNC LCK レジスタ値は、オーディオデコーダブロック28が自分自身を同期にロックさせたと見做すことができるまでに、オーディオデコーダブロック28がどれ程多くの同期語を探知しなければならないかを指定するためにマイクロプロセッサホスト12が使用する値である。 LCK register value, before it can be regarded as the audio decoder block 28 was locked to synchronize themselves, in order to specify whether must track the number of synchronization word audio decoder block 28 is how much microprocessor host 12 is a value used. 段階464では、GSYN命令が 65,535 ビットのパラメタを用いて実行される。 In step 464, GSYN instruction is executed using a 65,535 bit parameters. 前述したように、GSYN 命令は、同期語を探知するまで、もしくは即値オペランド内に指定されている値に到達するまで、ビットストリーム内のビットを順次に検索する。 As described above, GSYN instruction, until detecting the synchronization word, or until it reaches the value specified in the immediate the operand sequentially searches the bits in the bit stream. 65,535はGSYN 命令の即値オペランドの最大値である。 65,535 is the maximum value of the immediate operand of GSYN instruction.

【0061】段階466においては、段階464において同期語を見出したか否かの判断が行われる。 [0061] In step 466, a determination whether or not found synchronization word in step 464 is performed. もし同期語が見出されていなければ、段階468において自動語計数機能が可能にされているか否かの判断が行われる。 If not if synchronization word found, the judgment whether the automatic word count function is enabled at step 468 is performed.
もし自動語計数機能が可能にされていれば、段階478 If if it is possible to automatic word count function, stage 478
へ進んで AUDIO Proceed to the AUDIO PTR が 11 ビット分後退する。 PTR is retracted 11 bits. AUDIO AUDIO
PTR は、入力バッファ24もしくは外部バッファ26 PTR is an input buffer 24 or external buffer 26
内を指し示すポインタであって、オーディオデコーダブロック28が現在読出し中の位置を指示する。 A pointer to an internal audio decoder block 28 indicates the position of the currently read. (もし同期語を見出せば、GSYN 命令は制御状態レジスタブロック22内のけた上げビットをセットする。)自動語計数機能は、システムが良好なフレームを保管しておらず、 (If if find a synchronization word, GSYN instruction sets the carry bit in the control status register block 22.) Automatic language counting function, the system has not stored a good frame,
また図14に詳述されているマイクロコードを使用して Also using the microcode that is detailed in FIG. 14
BAD BAD BIT BIT CNT を追跡していないことを指示する。 To indicate that no tracking CNT. 従って、もし自動語計数機能が可能にされていれば、プロセスは単に段階464へ戻されて別の GSYN 命令が遂行されるだけである。 Therefore, if it is if possible automatic word counting function, the process is only another GSYN instruction simply returned to step 464 is performed. 段階468において、もし自動語計数機能が可能にされていないと判断されれば、入力バッファ24内の不良ビットは、システムデコーダブロック20がこれらのビット上に重ね書きできるように解放しなければならない。 In step 468, if it is determined not to be if possible automatic word counting function, defective bit input buffer 24, the system decoder block 20 must be released for overwritten on these bits . 従って段階470へ進み、 BAD Therefore, the process proceeds to step 470, BAD BI BI
T T CNT 及び LGF CNT and LGF SIZE 変数を使用して入力バッファ24内の複数のビットを解放する。 Use SIZE variable to release the plurality of bits of the input buffer 24. 次に段階472では、入力バッファ24もしくは外部バッファ26内の 6 Next in step 472, the input buffer 24 or the external buffer 26 6
5,524 ビットが解放される。 5,524 bits are released. 数 65,524は GSYN 命令の独立変数として使用される数よりも小さい 11 ビットである。 The number 65,524 is a small 11 bit than the number to be used as independent variables GSYN instructions. 同期語は 12 ビット長であるから、この検索される最後の 11 ビットは同期語内の11 ビットであることができる。 Since the synchronization word is 12 bits long, it is possible this search last 11 bits are the 11 bits in the synchronization word.

【0062】段階474では BAD [0062] In step 474 BAD BIT BIT CNT 変数が0 CNT variable is 0
に等しくセットされ、段階476では LGF It is set equal to, the step 476 LGF SIZE 変数が0に等しくセットされる。 SIZE variable is set equal to 0. 段階478においては、入力バッファ24もしくは外部バッファ26を指し示すポインタがビットストリーム内を 11 ビット分後退するように操作される。 In step 478, the pointer to the input buffer 24 or external buffer 26 is operated to retract the the bitstream 11 bits. 前述したように、最後の 11 ビット読出しは不完全同期の部分であり得るので、段階464へ戻された時にはこれらの 11 ビットを再検査しなければならない。 As described above, since the last 11-bit read may be incomplete synchronization parts must be re-examined these 11 bits when returned to step 464. 段階466においてもし同期語を探知していれば、段階480では CF If the if detected synchronization word in step 466, at step 480 CF PTRが〔 AUDIO PTR is [AUDIO PTR − 12 PTR - 12
ビット〕に等しくセットされる。 It is set equal to bits]. CF CF PTR は、実際には同期語から始まるフレームの始まりを指し示すために使用される。 PTR is, in fact, be used to indicate the beginning of a frame starting from the synchronization word. 段階482では GBT 及び GBTL 命令を使用して、見出し情報からなるビットストリームの次の 2 Use In step 482 GBT and GBTL instruction, the next bit streams of index information 2
0 ビットを検索する。 0 Search bit. これらの 20 ビットは制御状態レジスタブロック22内の見出しレジスタ内に記憶される。 These 20 bits are stored in the heading register of the control status register block 22. 段階484では、フレームをセットアップするために必要なルーチンが遂行される。 In step 484, the routine required to set up the frame is performed. これらのルーチンに関しては図16及び17を参照して後述する。 Regarding these routines will be described later with reference to FIGS. 16 and 17. セットアップされたフレームルーチンは、オーディオデコーダブロック28がオーディオフレームを復号し始めることが可能になるまでに、必要な全ての計算を遂行する。 Setup frame routine until the audio decoder block 28 it is possible to start decoding the audio frames, performs all necessary calculations.

【0063】段階486においては、SYNTAX フラグが調べられる。 [0063] In step 486, SYNTAX flag is examined. もし SYNTAX フラグが1であれば、段階4 If SYNTAX flag is 1, step 4
88へ進む。 It advances to 88. SYNTAX フラグは、この経路の段階484 SYNTAX flag stages of this pathway 484
においてフレームをセットアップ中に構文誤りが検出されたことを指示する。 It indicates that the syntax error is detected the frame during setup in. 段階488では、AUDIO In step 488, AUDIO PTR が PTR is
31 ビット位置だけ減少される。 Only 31-bit position is reduced. プロセスは段階489 By process step 489
に進み、BAD Proceed to, BAD BIT BIT CNT が1だけインクリメントされて段階462へ戻される。 CNT is returned to the incremented by step by step 462 1. 段階488は、段階464において探知された同期語の始まりから1ビット過ぎた位置までポインタを効果的に戻す。 Step 488, effectively returning the pointer to a position past one bit from the beginning of the synchronization word is detected in step 464. もし段階486において SYNTAX フラグがセットされていなければ段階490 Step 490 if it is not SYNTAX flag set in if step 486
へ進み、SYNC To proceed, SYNC LOOKAHEAD フラグがセットされているか否かに依存して分岐が発生する。 LOOKAHEAD flag depending on whether it is set branch occurs. もし SYNC If SYNC LOOKAHEA LOOKAHEA
D フラグがセットされていれば、段階492において A If D flag is set, A in step 492
UDIO UDIO PTR に NF NF to PTR PTR の値がロードされる。 PTR value is loaded. 次いで段階494において、次の 12 ビットが検索され、これらのビットが同期語からなるか否かが決定される。 In Then step 494, it searches the next 12 bits, whether these bits are the sync word is determined. もしこれらのビットが同期語からなっていなければ、段階49 If not, if made these bits from the synchronization word, stage 49
6において AUDIO AUDIO In 6 PTR が〔 CF PTR is [CF PTR +1ビット〕の値にセットされる。 It is set to the value of the PTR +1 bits]. プロセスは段階489へ進んで BAD The process BAD proceeds to step 489
BIT BIT CNT が1だけインクリメントされた後、段階4 After CNT is incremented by 1, step 4
62へ戻されて再び同期語を探索する。 Back to 62 again to search for the sync word is. 段階494において、もし次の 12 ビットが同期語であったならば、段階498において AUDIO In step 494, if the next 12 bits are the synchronous word, AUDIO in step 498 PTR が〔 CF PTR is [CF PTR + 32 ビット〕の値にセットされる。 It is set to the value of the PTR + 32 bit]. 次に段階500において、 Next, in step 500,
同期計数がデクレメントされる。 Synchronization count is decremented. 段階490において、 In step 490,
もしSYNC If SYNC LOOKAHEAD フラグがセットされていなければ、プロセスは直接段階500へ進められる。 If LOOKAHEAD flag is not set, the process proceeds directly to step 500.

【0064】プロセスは図15へ進み段階502において同期計数変数を調べそれが0に等しいか否かを決定する。 [0064] The process checks the synchronization count variable in step 502 proceeds to Figure 15 to determine whether it is equal to zero. もし段階500におけるデクレメント後の同期計数変数が0に等しければ、段階504は同期状態変数を 1 If equal to the synchronization count variable is zero after decrement in step 500, step 504 is a synchronous state variable 1
1 に等しくセットする。 It is set equal to 1. この同期状態変数の値は、必要数の同期語を検出したこと、及びそれによりシステムがロックされた同期状態にあることをシステムの残余の部分に指示する。 The value of the synchronization state variables, the detection of the required number of sync words, and thereby to indicate that there is a synchronization state the system is locked to the remainder of the system. もし段階502において同期計数変数が0に等しくなければ、段階506において誤り隠しモード( ECM ) 変数に、マイクロプロセッサホスト12によってセットされた同期誤り隠しモードレジスタの内容がロードされる。 Be equal to the synchronization count variable is zero in if step 502, the error concealment mode (ECM) variables in step 506, the contents of the synchronization error concealment mode register set by the microprocessor host 12 is loaded. 同期誤り隠しモードはオーディオデコーダブロック28が同期ロック状態に到達するまでに必要な数の同期語を探索している間に、存在しているデータで何をなすべきかを指定する。 During synchronization error concealment mode audio decoder block 28 is searching for synchronization word number required to reach the sync lock state, to specify what to do with data that exists. 隠しモードがセットされた後、段階508において誤り隠しルーチンが遂行される。 After the hidden mode is set, the error concealment routine is performed at step 508. 誤り隠しルーチンに関しては図19を参照して後述する。 It will be described below with reference to FIG. 19 with respect to error concealment routine. 要約すれば、誤り隠しは、データの最後の良好フレームを用いたり、現フレームを用いたり、現フレームをスキップさせたり、もしくは現フレームの間出力を沈黙させたりすることができる。 In summary, error concealment may or using the last good frame of data, or using the current frame, or can silenced or to skip the current frame, or between the output of the current frame. 以下に説明するように、 As described below,
これらのオプションは、誤り隠しモード変数によって、 These options, by the error concealment mode variable,
もしくは外部バッファ26の存否によって指定される。 Or as specified by the presence or absence of external buffer 26.
段階510において、誤り隠しモード変数が調べられる。 In step 510, a check is an error concealment mode variable. もし誤り隠しモードが MUTE、REPLAY もしくは何もせず、であれば段階512においてオーディオフレームが復号される。 If the error concealment mode MUTE, the audio frame is decoded at step 512 if not REPLAY or nothing. オーディオデコーダブロック28が使用するプロセスに関しては図20及び21を参照して後述する。 For the process of the audio decoder block 28 is used will be described below with reference to FIGS. 20 and 21. プロセスは段階512から段階514へ進んで、オーディオデコーダブロック28はバッファ管理を遂行する。 The process proceeds from step 512 to step 514, the audio decoder block 28 performs a buffer management. もしそのオーディオフレームをスキップすることを誤り隠しモードが指示していれば、プロセスは段階510から段階514へ進められる。 If the instruction is an error concealment mode to skip the audio frame if the process proceeds from step 510 to step 514. バッファ管理を遂行するためにオーディオデコーダブロック28が使用する方法は、図34及び35を参照して後述する。 How audio decoder block 28 to perform the buffer management is used it will be described later with reference to FIGS. 34 and 35.

【0065】段階516においては、SYNC [0065] In step 516, SYNC LOOKAHEAD LOOKAHEAD
フラグが調べられる。 Flag is checked. もし SYNC If SYNC LOOKAHEAD フラグがセットされていれば、段階518はオーディオビットストリーム内の次の 12 ビットをスキップさせる。 If LOOKAHEAD flag is set, step 518 is skipped for the next 12 bits in the audio bit stream. 次いでプロセスは、分岐点Cから図14の段階482へ戻される。 Then process is returned from the branch point C to step 482 in FIG. 14. もし段階516において SYNC If SYNC at step 516 LOOKAHEAD フラグがセットされていないと判断されれば、段階520は次の 12 ビットを調べてそれらが同期語を含むか否かを決定する。 If it is determined that LOOKAHEAD flag is not set, step 520 determines whether they contain a synchronization word by examining the following 12 bits. もし次の 12 ビットが同期語を含んでいれば、 If if it contains the following 12-bit synchronization word,
プロセスは分岐点Cから図14の段階482へ戻される。 The process is returned to step 482 of FIG. 14 from the branch point C. もし次の 12ビットが同期語を含んでいなければ、 If if the next 12 bits contain a synchronization word,
段階522においてオーディオポインタが〔オーディオポインタ− 11 〕に等しい値にリセットされる。 In step 522 the audio pointer - is reset to a value equal to [audio pointer 11]. これでプロセスは接続点Bから図14の段階489へ戻される。 This process is returned to step 489 of FIG. 14 from the connection point B. フレームセットアップ動作図16は、ビットストリーム内に見出しが探知された時にフレームをセットアップするためにオーディオデコーダブロック28が使用するプロセスを示す。 Frame setup operation Figure 16 illustrates the process of the audio decoder block 28 is used to set up the frame when heading in the bitstream is detected. このプロセスは、見出し割込みをセットする段階524から開始される。 This process begins from step 524 to set the heading interrupt. 段階526ではフレームの大きさが計算され、CF The size of the frame in step 526 is calculated, CF
SIZE フィールド内へロードされる。 It is loaded into the SIZE field. フレームの大きさの計算に使用されるプロセスに関しては、図18を参照して詳述する。 For the process used to calculate the size of the frame will be described in detail with reference to FIG. 18. 段階528では、CF In step 528, CF SIZE が値0と比較される。 SIZE is compared to the value 0. もし CF If CF SIZE が0に等しければ、それは見出しがフレームの大きさを指定しておらず、またマイクロプロセッサホスト12がフレームの大きさを指定していなかったことを指示しており、従ってビットストリームがフレームの大きさを指定されることなく自由フォーマットであることを意味している。 Equal to SIZE is 0, it is heading frame does not specify the size, also has instructed the microprocessor host 12 does not specify a size of the frame, thus the bit stream of the frame it is meant to be a free format without the specified size. 段階530では、同期計数変数が1に等しくセットされ、次いで段階532において SYNC In step 530, the synchronization count variable is set equal to 1, then SYNC at step 532 LOOKAHEAD フラグがクリアされる。 LOOKAHEAD flag is cleared. SYNC SYNC LOOKAHEAD フラグは、オーディオデコーダブロック28が現フレームの終わりに別の同期語を見出すために先取りをするか否かを指示する。 LOOKAHEAD flag, audio decoder block 28 indicates whether the prefetch to find another synchronization word at the end of the current frame. オーディオデコーダブロック28は現フレームの大きさを知っていないから、SYNC Since the audio decoder block 28 does not know the size of the current frame, SYNC LOOKAHEAD プロセスを遂行できる方法は存在しない。 Method that can carry out the LOOKAHEAD process does not exist. そこで段階534では外部 DRAM が存在するか否かを決定する。 In Therefore step 534 determines whether or not the external DRAM is present. もし DRAM が存在していれば、入力バッファ内に記憶することができるフレームの数に等しい変数Nが、段階536において5に等しくセットされ、もし DRAM が存在していなければ、段階538において変数Nは0に等しくセットされる。 If if it exists DRAM, equal to the number variable N frames that can be stored in the input buffer is set equal to 5 in step 536, if unless DRAM is present, variables in step 538 N It is set equal to 0.

【0066】段階528に戻ってもし CF [0066] Returning to step 528 if CF SIZE が0 SIZE is 0
でなければ、段階540は変数Nを〔バッファの大きさ÷ CF Otherwise, step 540 the variable N [buffer size ÷ CF SIZE〕の商を丸めた最寄りの整数に等しくセットする。 It is set equal to the nearest integer rounding the quotient of the SIZE]. 次の段階542では変数Nが値1と比較される。 The next step 542 the variable N is compared to the value 1. もしNが1よりも小さければ、良好フレームを記憶するための十分なメモリが存在しないことを意味しているので、段階544において MAX If N is less than 1, so that enough memory to store the good frame which means that there is no, MAX at step 544 REPLAY 変数が0に等しくセットされ、またSYNC REPLAY variable is set equal to 0, also SYNC LOOKAHEAD フラグが0に等しくセットされる。 LOOKAHEAD flag is set equal to 0. もしNが1に等しいか、もしくは大きければ、段階546において SYNC If either N is equal to 1 or greater, SYNC at step 546 LOOKAHEAD フラグはマイクロプロセッサホスト12によってセットされた SYNC LOOKAHEAD flag was set by the microprocessor host 12 SYNC LOOKAHEAD 制御レジスタに等しくセットされる。 It is set equal to LOOKAHEAD control register. 段階548においては、現フレームが層1 MPEG In step 548, the current frame is a layer 1 MPEG
オーディオデータを含むのか、含まない(もしくは層2 Whether containing audio data, it does not include (or layer 2
MPEG オーディオデータを含む)のかが決定される。 MPEG including audio data) of either can be determined. もしフレームが層2 MPEG オーディオデータを含んでいれば、段階550は変数Kを3に等しくセットする。 If long frame comprises a layer 2 MPEG audio data, step 550 is set equal to the variable K 3. 段階548においてもし現フレームが層1 MPEG オーディオデータを含んでいれば、段階552において変数Kは5 If it contains if the current frame is a layer 1 MPEG audio data in step 548, the variable K in step 552 5
に等しくセットされる。 It is set equal to. Kは、最大再生を可能にするために入力バッファ24もしくは外部バッファ26内に記憶することができなければならないフレームの数を表している。 K represents the number of frames that must be stored in the input buffer 24 or external buffer 26 to allow for maximum regeneration.

【0067】プロセスは段階550及び552から段階554へ進み、変数Nと変数Kとを比較する。 [0067] The process proceeds from step 550 and 552 to step 554 and compares the variable N and the variable K. もしNがKより小さければ、段階556は MAX If N is less than K, stage 556 MAX REPLAY 変数を0に等しくセットする。 The REPLAY variable is set equal to 0. NがKより小さいことは、データの最後の良好なフレームを再生することができるメモリが十分に存在していないことを意味する。 It N is smaller than K means that the memory can be reproduced last good frame of data is not sufficiently present. もしNがK If N is K
に等しいか、もしくは大きければ、段階558において Equal to, or greater, in step 558
MAX MAX REPLAY 変数はK−2に等しくセットされる。 REPLAY variable is set equal to K-2. MA MA
X X REPLAY 変数は、段階558において遂行される動作の結果として常に1もしくは3の何れかである。 REPLAY variable is either always 1 or 3 as a result of the operations performed in step 558. プロセスは段階556、558及び544から図17の段階560へ進む。 The process continues from step 556, 558 and 544 to step 560 in FIG. 17. 段階560は、SYNC Stage 560, SYNC LOOKAHEAD フラグ及び MAX LOOKAHEAD flag and MAX REPLAY 変数が共に0に等しいか否かを決定する。 REPLAY variable to determine whether both equal to zero. もし共に0であれば、段階562では、「自動バッファ大きさ」( ABS ) フラグを調べることによって A If both zero, at step 562, A by examining "autobuffered size" the (ABS) flag
BS 機能が可能にされているか否かの決定がなされる。 BS function possible has been that a determination is made whether.
もしこの機能が不能にされていれば、段階564において LGF If it is if this feature is disabled, LGF in step 564 SIZE が調べられる。 SIZE is examined. もし LGF If LGF SIZE が0に等しくなければ、段階566において自動入力語計数がデクレメントされる。 Be equal to the 0 SIZE, automatic input word count is decremented in step 566. この計数は、見出しが既に読出されているのでデクレメントされるのである。 This counting is being decremented because heading is already read. 段階564 Stage 564
においてもし LGF If LGF in SIZE が0に等しいと判断されれば、段階568において入力バッファ24もしくは外部バッファ26内の複数のビットが解放される。 If SIZE is determined that is equal to 0, the plurality of bits of the input buffer 24 or the external buffer 26 in step 568 is released. 解放されるビットの数は、〔 AUDIO The number of bits to be released, [AUDIO PTR − LGF PTR - LGF PTR 〕に等しい。 Equal to PTR]. 次いで段階570において BAD BAD In step 570 then BIT BIT CNT が0に等しくセットされ、段階572においては LGF CNT is set equal to 0, LGF in step 572 SIZE SIZE
が0に等しくセットされる。 There is set equal to 0. プロセスは段階566及び段階572から段階574へ進み、ABS フラグが1に等しくセットされる。 The process proceeds from step 566 and step 572 to step 574, ABS flag is set equal to 1. 次の段階576では、NF In the next step 576, NF PTR が〔 CF PTR is [CF PTR +フレームの大きさ〕に等しくセットされる。 It is set equal to the size of the PTR + frame]. もし段階562において ABS フラグが1に等しいと判断された場合にも段階576へ到達する。 If at step 562 ABS flag also reaches to step 576 if it is determined to be equal to 1. 段階56 Stage 56
0において SYNC SYNC in 0 LOOKAHEAD フラグ及び MAX LOOKAHEAD flag and MAX REPLAY REPLAY
変数が同時に0に等しくなければ、段階578は再び If the variable is not equal to 0 at the same time, step 578 is again
ABS フラグを調べる。 Examine the ABS flag. もし ABS フラグが0に等しければ、プログラムは段階576へ直接進められる。 If equal ABS flag is 0, the program proceeds directly to step 576. もし if
ABS フラグが1に等しければ、段階580はオーディオ入力語計数をインクリメントさせ、段階582は ABS Equal ABS flag is 1, step 580 is incremented audio input word count, step 582 ABS
フラグをクリアする。 To clear the flag. これでプロセスは段階576へ進む。 This process proceeds to step 576. フレームの大きさの計算図18は、フレームの大きさを計算するためにオーディオデコーダブロック28が使用するプロセスを示す。 Calculating view of the size of the frame 18 illustrates the process of the audio decoder block 28 to calculate the size of the frame is used. プロセスは見出し内の MPEG オーディオビットを調べる段階584から開始される。 The process begins at step 584 to examine the MPEG audio bit in heading. もし MPEG オーディオビットがセットされておらず、そのフレームが MPEG オーディオビットを含んでいないことを指示していれば、段階5 If MPEG audio bit is not set, if it instructs that the frame does not contain the MPEG audio bit, step 5
90において SYNTAX ERROR フラグがセットされる。 SYNTAX ERROR flag is set at 90. もし MPEGオーディオビットがセットされていれば、段階586はサンプリング周波数コードを調べる。 If it is set MPEG audio bit, step 586 examines the sampling frequency code. もしサンプリング周波数コードが 11 に等しければ、プロセスは再度590へ戻って SYNTAX ERROR フラグをセットする。 If equal to the sampling frequency code 11, the process sets the SYNTAX ERROR flag returns to again 590. サンプリング周波数コードが 11 であることは無効コードであることを意味している。 It sampling frequency code is 11 which means that it is a invalid code. もしサンプリング周波数コードが 11 でなければ、段階588において層コードが検査される。 If unless sampling frequency code 11, the layer code in step 588 is examined. 層コードが 00 及び 01 ならば、段階590へ戻して SYNTAX ERROR フラグをセットさせる。 If the layer code 00 and 01, to set the SYNTAX ERROR flag is returned to step 590. 層コードが 00 及び 01 ならば、その層コードは無効である。 If the layer code is 00 and 01, the layer code is invalid. もし層コードが有効であれば、段階592はビットレート索引を試験する。 If it layer code is valid, step 592 tests the bit rate index. ビットレート索引が 111 Bit rate index 111
1 であればプロセスは再び段階590へ戻されて SYNTA If one process is returned again to step 590 SYNTA
X ERROR フラグがセットされる。 X ERROR flag is set. 1111 のビットレート索引は無効である。 1111 of the bit rate index is invalid. もしビットレート索引が全て0であれば、段階594において CF If the bit rate index is all a 0, CF at step 594 SIZE 変数に、マイクロプロセッサホスト12によって指定されたフレームの大きさ制御レジスタの内容がロードされる。 The SIZE variable, the content of the size control registers of the frame specified by the microprocessor host 12 is loaded. ビットレート索引値が全て0ということは、そのビットストリームが自由フォーマットビットストリームであることを意味している。 That the bit rate index values ​​are all 0, the bit stream is meant to be a free format bitstream. マイクロプロセッサホスト12はフレームの大きさ制御レジスタを使用して、オーディオデコーダブロック28へフレームの実際の大きさを通信することができる。 Microprocessor host 12 uses the magnitude of the control registers of the frame, it is possible to communicate the actual size of the frame to the audio decoder block 28. もしマイクロプロセッサホスト12がフレームの大きさ制御レジスタ内へ値を挿入しなければ、段階5 If no microprocessor host 12 inserts the value into the frame of the size control register, step 5
94は、フレームの大きさ制御レジスタの内容が CF 94, the contents of the size control register frame CF
SIZE 変数内へロードされる時に CF CF when it is loaded into the SIZE in the variable SIZE 変数を0 The SIZE variable 0
に等しくセットする。 It is set equal to. ビットレートが他の値である全ての場合にはプロセスは段階592から段階596へ進められ、GET TABLE 命令を使用して見出し情報からフレームの大きさを検索する。 Bit rate in the case of all of the other values ​​the process is advanced from step 592 to step 596, retrieves the size of the frame from the header information by using the GET TABLE instruction. この動作が完了する時にはフレームの大きさが累算器110内に存在していよう。 The size of the frame that will prevent exists in the accumulator 110 when this operation is completed. 段階596は、累算器110の内容を CF Step 596, the contents of the accumulator 110 CF SIZE 変数内にロードさせる。 To be loaded into the SIZE variable. 誤り隠し動作図19は、あるフレーム内に誤りを検出した時、もしくは未だに同期ロック状態が達成されない時の何れかにオーディオデコーダブロック28が使用する誤りを隠すプロセスを示す。 Error concealment operation Figure 19 illustrates a process to hide the error used by the audio decoder block 28 to one of the time when an error is detected, the or are still sync lock state is not achieved within a frame. プロセスは、誤り隠しモード変数と、再生モードを表す値 10 とを比較する段階600から開始される。 Process begins from step 600 to compare the error concealment mode variable and the value 10 representing the playback mode. もし再生モードが、現誤り隠しモードであれば、段階602は LGF If the playback mode, if the current error concealment mode, stage 602 LGF SIZE を検査する。 To check the SIZE. もし LGF If LGF
SIZE が0に等しくなければ、段階604において REP It is equal to the 0 SIZE, REP at step 604
LAY LAY CNT が1もしくは3の何れかである最大再生値に等しいか否かを決定する。 CNT determines whether equal to the maximum reproduction value is either 1 or 3. もし REPLAY If REPLAY CNT が最大再生値に等しくなければ、段階606において、オーディオデコーダブロック28は LGF If CNT is not equal to the maximum reproduction value, at step 606, the audio decoder block 28 LGF PTR の値を AUDIO The PTR of value AUDIO PT PT
R 内へロードすることによってビットストリーム内を後退させる。 Retracting the bit stream by loading into R. 段階608は、REPLAY Stage 608, REPLAY CNT 変数をインクリメントさせる。 To increment the CNT variable. 次いでプロセスは段階610へ進み、見出し制御レジスタに次の 32 ビットをロードする。 Control then proceeds to step 610 to load the next 32-bit in the header control register. 段階612では再生フラグがセットされ、誤り隠しフラグがセットされる。 Regeneration flag at step 612 is set, the error concealment flag is set.

【0068】段階600において、もし再生に関して誤り隠しフラグがセットされていないと判断されれば段階614において、沈黙モードが 01 値によって指示されているか否かについて誤り隠しモードを調べる。 [0068] In step 600, if at step 614 if it is determined that the error concealment flag is not set with respect to the reproduction, whether silence mode is indicated by 01 values ​​examining the error concealment mode. もし誤り隠しモードが沈黙モードであれば、段階616において NO If it is an error concealment mode is silence mode, NO in step 616 READ フラグがセットされる。 READ flag is set. もし段階602 If stage 602
において LGF LGF in SIZE が0に等しいか、もしくは段階6 Or SIZE is equal to 0, or step 6
04において REPLAY REPLAY at 04 CNT が最大再生に等しい場合にも段階616へ到達する。 CNT reaches the stage 616 even if equal to the maximum reproduction. 従って本発明の誤り隠し方式は、段階602が最後の良好なフレームが存在しないと判断すれば現フレームの出力を沈黙させ、または、段階604において再生が最大数に到達していると決定すれば出力を沈黙させるようになる。 Thus the error concealment method of the present invention, when it is judged that the step 602 is the last good frame is not present silenced the output of the current frame, or, if determined to play in step 604 has reached the maximum number of so to silence the output. プロセスは段階616 By process step 616
から段階618へ進み、COUNT 変数が0に等しくセットされる。 Proceeds from the step 618, COUNT variable is set equal to 0. 段階620では、値 H003F が演算ユニットバッファ内のアドレス0に書込まれる。 In step 620, the value H003F is written into address 0 of the arithmetic unit buffer. 値 H003F ( 16 進数の 003F )は、2つの連結値に対応する。 (003F hexadecimal) value H003F corresponds to two concatenated value. H3F は縮尺係数索引値からなり、縮尺係数0を検索した場合にはハードウェアフィルタ演算ユニットブロック32内のSSB H3F consists scale factor index value, SSB hardware filter arithmetic unit block 32 in the case of searching the scale factor 0
値を乗じた時に出力を効果的に沈黙させる。 Effectively silence the output when multiplied by the value. H00 は、コードワード当たりのビット値が0であることに対応している。 H00 corresponds to the bit value per codeword is zero.

【0069】段階622では、COUNT 変数及び ADDRESS [0069] In step 622, COUNT variable and ADDRESS
変数がインクリメントされる。 Variable is incremented. 次の段階644においては、COUNT 変数が値 192 と比較される。 In the next step 644, COUNT variable is compared with the value 192. もし未だ値 If you still value
192に到達していなければ、段階620へ戻されて H00 If not reach the 192, it is returned to step 620 H00
3F が演算ユニットバッファ30内の次のアドレスされた位置に書込まれる。 3F is written to the next address location in the arithmetic unit buffer 30. もし段階644において計数が19 If counted in step 644 is 19
2 に等しいか、もしくは大きければ、段階646は誤り隠しフラグを1に等しくセットする。 Equal to 2 or greater, step 646 is set equal error concealment flag to 1. 段階648では、 In step 648,
誤り隠蔽モードをコード 01 に等しくセットして沈黙を選択したことを指示する。 Indicating that the selected silence sets equal error concealment mode code 01. このようにして、もし再生もしくはスキップの何れかの動作における障害から沈黙動作に到達したものとすれば、誤り隠しモードがリセットされて今後沈黙動作を続けるべきであることを指示する。 In this way, if it is assumed that reaches the silent operation from a failure in any of the operations of the playback or skip, to indicate that the error concealment mode should continue in the future silent operation are reset. もし段階614が誤り隠しモード値が 01 に等しくないことを決定すれば、段階650は誤り隠しモードがスキッププロセスを指示する 11 に等しいか否かを決定する。 If be determined that step 614 is not equal to the error concealment mode value is 01, step 650 determines whether or equal to 11 an error concealment mode instructs the skip process. もし誤り隠しモードが 11 に等しくなければ、それは誤り隠しモードが 00 に等しいものと見做されて何等の動作も発生せずにプロセスを終了する。 If not equal to the error concealment mode is 11, it terminates the process without generating even operation of many such are regarded as an error concealment mode is equal to 00. 段階650 Stage 650
において、もし誤り隠しモードが 11 に等しいと決定されれば、段階652は、最大数のフレームがスキップされたか否かを決定する。 In, if it is determined that the error concealment mode is equal to 11, step 652 determines whether the maximum number of frames is skipped. もし最大数のフレームがスキップされていれば、プロセスは段階616へ進められて上述した沈黙動作が実行される。 If if it is skipped maximum number of frames, the process silent operation described above is underway to step 616 is executed. もし最大数のフレームがスキップされていなければ、段階654は SKIP If not skipped maximum number of frames if step 654 SKIP CNT CNT
をインクリメントさせる。 It is allowed to increment. 次の段階656において、SK In the next step 656, SK
IPフラグ及び EC フラグがセットされる。 IP Flag and EC flag is set. オーディオフレーム復号プロセス図20及び21は、オーディオフレームを復号するためにオーディオデコーダブロック28が使用するプロセスを示す流れ図である。 Audio frame decoding process diagram 20 and 21 is a flow diagram illustrating a process used by an audio decoder block 28 to decode the audio frame. このプロセスは、オーディオデコーダブロック28が沈黙制御レジスタを調べる段階66 This process step 66 where the audio decoder block 28 checks silence control register
0から開始される。 0 is started from. もしマイクロプロセッサホスト12 If the microprocessor host 12
が沈黙制御レジスタをセットしていれば、段階662は内部沈黙フラグをセットする。 There If set to silent control register, step 662 sets an internal silence flag. もし沈黙制御レジスタがセットされていなければ、もしくは段階662において沈黙フラグがセットされれた後に、段階664においてオーディオデコーダブロック28はマイクロプロセッサホスト12がスキップ制御レジスタをセットしているか否かを検査する。 If one has yet to be set is silence control register, or after the silence flag is set in step 662, the audio decoder block 28 in step 664 determines whether the microprocessor host 12 is set to skip control register . もしマイクロプロセッサホスト12がスキップ制御レジスタをセットしていれば、この状態はフレームをスキップさせることを指示している。 If the microprocessor host 12 if set the skip control register, this state is indicated to be skipped frame. 従ってプロセスは段階666へ進み、スキップ制御レジスタをクリアする。 Therefore, the process proceeds to step 666, to clear the skip control register. もしスキップ制御レジスタがセットされていなければ、段階668は見出し(header)サイド情報を復号する。 If one has yet to be set the skip control register, step 668 decodes the heading (header) side information. 見出しサイド情報を復号するために使用されるプロセスの詳細に関しては図22を参照して後述する。 For details of the process used to decode the heading side information will be described later with reference to FIG. 22. 見出しサイド情報を復号した後に、段階670においてオーディオデコーダブロック28は、ビットストリームが CRC 保護されているか否かを決定する。 After decoding the heading side information, the audio decoder block 28 in step 670, the bit stream to determine whether it is CRC protected. もしオーディオビットストリームが CRC 保護されていれば、 If If the audio bit stream is CRC protected,
段階672は GBT 命令を使用して CRC 語を検索し、 Step 672 retrieves the CRC word using the GBT instruction,
データストリーム内の次の 16 ビットを検索する。 Search for the next 16-bit in the data stream. これらの 16 ビットは CRC 語変数内に記憶されている。 These 16 bits are stored in the CRC word variable. プロセスは段階672から、もしくはもしデータストリームが CRC 保護されていなければ段階670から、段階674へ進んでデータストリームの層が調べられる。 The process from step 672, or if the data stream from step 670 if not CRC protected, the layer of the data stream is examined proceeds to step 674. もしデータストリームが層1データであれば、段階676 If the data stream is a layer 1 data, phase 676
が第1のプロセスを使用してビット割当てデータを復号する。 There decodes the bit allocation data using a first process. このプロセスに関しては図23を参照して後述する。 In this process it will be described later with reference to FIG. 23. もしデータストリームが層2データであれば、段階678が第2のプロセスを使用してビット割当てデータを復号する。 If If the data stream is a layer 2 data, step 678 decodes the bit allocation data using the second process. このプロセスに関しては図24を参照して後述する。 In this process it will be described later with reference to FIG. 24. 次いで段階680において、尺度係数選択情報( SCFSI ) が復号される。 Then, in step 680, scale factor selection information (SCFSI) is decoded. 尺度係数選択情報を復号するために使用されるプロセスに関しては図24を参照して後述する。 With respect to the process used to decode the scale factor selection information will be described later with reference to FIG. 24.

【0070】プロセスは段階676もしくは段階680 [0070] The process step 676 or step 680
から段階682へ進み、オーディオデコーダブロック2 Proceeds from the step 682, the audio decoder block 2
8は NO 8 NO READ、REPEAT、及び REPLAY フラグを調べる。 READ, REPEAT, and REPLAY flag examined. もしこれらのフラグの何れかがセットされていれば、プロセスは分岐点Bから図21へ進められる。 If it is if one set of these flags, the process proceeds to Figure 21 from the branch point B. もしどのフラグもセットされていなければ、段階684が C If any of the flags are set if step 684 is C
RC誤り隠しモードを調べる。 Examine the RC error concealment mode. もし CRC 誤り隠しモードが0に等しければ、プロセスは分岐点Bへ進む。 If equal to CRC error concealment mode is 0, the process proceeds to branch point B. CRC 誤り隠しモードが0に等しいということは、マイクロプロセッサホスト12がオーディオデコーダブロック28に That CRC error concealment mode is equal to 0, the microprocessor host 12 to the audio decoder block 28
CRC 誤りを無視するように命令していることを意味する。 It means that the instruction to ignore the CRC error. もし CRC 誤り隠しモードが0に等しくなければ、 If there is no equal to the CRC error concealment mode is 0 if,
段階686は見出しを調べて CRC 語が存在しているか否かを決定する。 Step 686 determines whether the CRC word checks headlines exists. もし CRC 語が存在していなければプロセスは分岐点Bへ進み、もし CRC語が存在していればプロセスは分岐点Aから図21へ進められる。 If no CRC word is present the process proceeds to the branch point B, the process proceeds to Figure 21 from the branch point A if if CRC word is present. 図21を参照する。 Referring to FIG. 21. プロセスが分岐点Aから段階688へ進み、 The process proceeds to step 688 from the branch point A,
ビットストリームから検索された記憶されている CRC CRC stored retrieved from the bit stream
語と、計算された CRC 語とが比較される。 With the term, and the calculated CRC word is compared. もし CRC If the CRC
語と計算された CRC 語とが整合しなければ、そのビットストリーム内に CRC 誤りが存在するのである。 Unless calculated CRC word and is aligned with the word, it is the CRC error is present in the bit stream. 従って、段階690において CRC誤り割込みがセットされる。 Accordingly, CRC error interrupt is set at step 690. 段階692では、誤り隠しモードが CRC 誤り隠しモードに等しくセットされる。 In step 692, the error concealment mode is set equal to the CRC error concealment mode. 段階694では、図19 In step 694, as shown in FIG. 19
を参照して説明したプロセスに従って誤り隠しが遂行される。 Error concealment is performed according to the reference to the process described by the.

【0071】段階694における誤り隠しプロセスに続く段階696は、ECM 変数を検査する。 [0071] step 696 subsequent to the error concealment process in step 694, to inspect the ECM variable. もし ECM 変数が現フレームをスキップすることを指示していれば、このプロセスは終了する。 If the ECM variable is if instructed to skip the current frame, the process ends. もし ECM 変数が最後の良好なフレームを再生することを指示していれば、プロセスは分岐点Cを通して図20の段階660へ戻る。 If if the instruction that ECM variable play the last good frame, the process returns to step 660 in FIG. 20 through branch point C. もし ECM If ECM
変数が現フレームのための出力を沈黙させることを指示していれば、段階698が層を調べる。 If the variable is long and instructing to silence the output for the current frame, step 698 examines the layers. もし現フレームが層1オーディオデータであれば、プロセスは分岐点Dから本図(図21)の段階716へ進められる。 If it is the current frame is a layer 1 audio data, the process proceeds from the branch point D to step 716 of the diagram (Fig. 21). もし現フレームが層1 MPEG オーディオでなければ、図示のように層2オーディオデータのサブバンド情報を復号する段階720へ進む。 If not the current frame is a layer 1 MPEG audio If the process proceeds to step 720 for decoding the subband information layer 2 audio data as shown. 段階688においてもし CRC 語と計算された CRC 語とが整合すれば、プロセスは段階700へ進む。 If If the calculated CRC word and is aligned with the CRC word in step 688, the process proceeds to step 700. 段階700へは分岐点Bからも到達する。 It is to step 700 to reach from the branch point B. 段階700では、デエンファシス値が変化したか否かの決定がなされる。 In step 700, determination of whether a de-emphasis value changes are made. もしデエンファシス値が変化していれば段階702はデエンファシス制御レジスタを更新し、見出しレジスタから検索した新しいデエンファシスビットをロードする。 If de If emphasis value if changed step 702 updates the de-emphasis control register to load the new deemphasis bits retrieved from the heading register. 次の段階704では、デエンファシス変化割込みがセットされる。 In the next step 704, the de-emphasis change interrupt is set. デエンファシスモードはビットストリーム内でフレーム単位で変化し得るから、オーディオデコーダブロック28はデエンファシス値を検査し、何等かの変化があればマイクロプロセッサホスト12へ通知しなければならない。 Since deemphasis mode may vary on a frame-by-frame basis in the bitstream, the audio decoder block 28 examines the de-emphasis value, shall inform the microprocessor host 12 if any some kind of change. 同様に、サンプリング周波数もフレーム単位で変化し得る。 Similarly, the sampling frequency may also vary on a frame-by-frame basis. 従って、プロセスは段階704もしくは段階700から段階706 Thus, the process steps from step 704 or step 700 706
へ進められ、サンプリング周波数が変化したか否かの決定がなされる。 Advanced to, determination of whether a sampling frequency is changed is made. もしサンプリング周波数が変化していれば、段階708はサンプリング周波数制御レジスタに見出しレジスタから検索した新しいサンプリング周波数ビットをロードする。 If If the sampling frequency is changed, step 708 loads the new sampling frequency bit retrieved from heading register the sampling frequency control register. 次いで段階710はサンプリング周波数変化割込みをセットし、マイクロプロセッサホスト12にサンプリング周波数の変化を検出したことを通知する。 Then step 710 sets the sampling frequency change interrupt, and notifies the detection of the change in the sampling frequency to the microprocessor host 12. プロセスは段階710もしくは段階706から段階712へ進み、現フレームが関連付けられている層に基づいて分岐させる。 The process proceeds from step 710 or step 706 to step 712 diverts based on the layer to which the current frame is associated. 即ち、もし現データが層1オーディオデータであればプロセスは段階714へ進められ、 That is, the process is advanced to step 714 If the current data layer 1 audio data,
第1のプロセスを使用して縮尺係数情報が復号される。 Scale factor information is decoded using the first process.
このプロセスの詳細に関しては図26を参照して後述する。 For details of this process will be described later with reference to FIG. 26. プロセスは段階714及び分岐点Dから段階716 The process steps from step 714 and the branch point D 716
へ進み、第1のプロセスを使用してサブバンド情報が復号される。 Proceeds to the sub-band information is decoded using the first process. このプロセスの詳細に関しては図27及び2 FIG regard to details of this process 27 and 2
8を参照して後述する。 8 referring to the later. 段階716でプロセスは終了する。 Process in step 716 is completed.

【0072】もし現データが層2オーディオデータであればプロセスは段階718へ進められ、第2のプロセスを使用して縮尺係数情報が復号される。 [0072] If the current data is if the layer 2 audio data process is advanced to step 718, scale factor information is decoded using the second process. このプロセスの詳細に関しては図29及び30を参照して後述する。 For details of this process will be described later with reference to FIGS. 29 and 30. プロセスは段階718または段階698から段階720へ進み、第2のプロセスを使用してサブバンド情報が復号される。 The process proceeds from step 718 or step 698 to step 720, the subband information is decoded using the second process. このプロセスの詳細に関しては図31及び32 31 and 32 for details of this process
を参照して後述する。 With reference to which will be described later. 段階720でこのプロセスは終了する。 The process ends at step 720. サイド情報復号プロセス図22に、見出し内に含まれるサイド情報を復号するためにオーディオデコーダブロック28が使用するプロセスの流れ図を示す。 The side information decoding process diagram 22 shows a flow diagram of a process for the audio decoder block 28 to decode side information contained in the headings used. このプロセスは、オーディオデコーダブロック28が見出しレジスタ内に記憶されている見出し内に含まれるモードを検査する段階722から開始される。 This process begins from step 722 to check the mode in which the audio decoder block 28 is included in the headings stored in the heading register. もし見出し内のモードフィールドが 00 もしくは 10 を含んでいれば、それはオーディオフレーム内にステレオもしくは二重チャネルデータが含まれていることを表している。 If at if include mode field 00 or 10 in the headline, it indicates that the stereo or dual channel data is included in the audio frame. 段階724においては、チャネル数( In step 724, the number of channels (
#CHANNELS ) 変数が2に等しくセットされる。 #Channels) variable is set equal to 2. 段階72 Stage 72
6は、BOUND 変数を 32 に等しくセットする。 6, is set equal to BOUND variable 32. もし段階722においてモードフィールドが 11 を含むと判断すれば、オーディオフレームがモノラル情報を含んでいることを意味している。 If it is determined that the mode field in step 722 contains 11, the audio frame is meant to include the mono information. 従って、プロセスは段階722から段階728へ進められ、#CHANNELS 変数が1に等しくセットされる。 Therefore, the process is advanced from step 722 to step 728, # CHANNELS variable is set equal to 1. 段階730においては、BOUND 変数が0 In step 730, BOUND variable is 0
に等しくセットされる。 It is set equal to. もし段階722においてモードフィールドが01 を含むと判断すれば、オーディオフレームは結合( joint ) ステレオオーディオデータを含む。 If it is determined that the mode field in step 722 contains 01, the audio frame comprises coupling (joint) stereo audio data. 完全な( full )ステレオデータは、32 の周波数範囲全てにおいて分離したサンプルを含む。 Complete (full) stereo data includes samples separated at all the frequency range of 32. これに対してモノラルオーディオデータは、32の周波数範囲全てにおいて右及び左のチャネルに同一のサンプルを使用する。 Mono audio data contrast, using the same samples to the right and left channels in the frequency range all 32.
結合ステレオデータは、若干の周波数帯においては同一のサンプルを使用し、他の周波数帯においては右及び左チャネルに分離したサンプルを使用することによって、 Binding stereo data, by in some frequency bands using the same sample, in other frequency bands using a sample separated into right and left channel,
ビットストリームの圧縮を達成している。 It has achieved compressed bit stream. BOUND 変数は BOUND variable
R> 32 の周波数帯のどれだけが分離して符号化されているかを指示している。 Much of the band R> 32 is indicated whether the coded separately. 従って、プロセスは段階722から段階732へ進められ、#CHANNELS 変数を2に等しくセットする。 Therefore, the process is advanced from step 722 to step 732, it is set equal to # CHANNELS variable to 2. 段階734では、GET TABLE 命令を使用して現オーディオフレームに関連付けられた BOUND 値を検索する。 In step 734, it searches the BOUND value associated with the current audio frame by using the GET TABLE instruction. 段階726、段階730、もしくは段階73 Step 726, step 730 or step 73,
4でこのプロセスが終了する。 This process is completed in 4. 層1ビット割当て復号プロセス図23は、ビットストリームが層1オーディオデータである場合に、ビット割当て情報を復号するためにオーディオデコーダブロック28が使用するプロセスを示す。 Layer 1 bit allocation decoding process diagram 23, when the bit stream is a layer 1 audio data, showing a process of the audio decoder block 28 to decode the bit allocation information is used.
このプロセスは、SBB 変数を0に等しくセットする段階736から開始される。 This process begins from step 736 is set equal to SBB variable to 0. 段階738では、チャネル変数 In step 738, the channel variable
( CH )が0に等しくセットされる。 (CH) is set equal to 0. 段階740は、内部 Stage 740, internal
NO NO READ フラグを調べる。 Examine the READ flag. もし NO If NO READ フラグが1に等しくセットされていれば、段階742においてビット/コードワード( BPC ) 変数が0に等しくセットされる。 If READ flag long as it is set equal to 1, bit / code word (BPC) variables in step 742 is set equal to 0. もし NO If NO READ フラグがセットされていなければ、段階744は GBTC 命令を使用して次の4ビットを検索させ、それらをビット割当て( BAL ) 変数内に記憶させる。 Unless READ flag is set, step 744 uses the GBTC instruction to search for the next 4 bits, cause them to be stored in the bit allocation (BAL) in a variable. 段階746では、GET TABLE 命令を使用し、 In step 746, using the GET TABLE instruction,
BAL 変数内に記憶させた4ビットを使用して BPC を検索する。 Using four bits are stored in BAL in a variable to find the BPC. GET TABLE命令によって戻された値は BPC 変数内に記憶される。 The value returned by the GET TABLE instruction is stored in the BPC variable. 段階748では、BPC 変数が6ビットだけ左へけた送りされ、そのサンプルに関連付けられた縮尺計数索引に連結することが可能になる。 In step 748, the Ketaokuri left by 6 bits BPC variables, it is possible to couple to scale the counting index associated with the samples. 段階75 Stage 75
0では、けた送りされた BPC 値がオーディオデコーダブロック28のスクラッチ RAM 内の、CH 及び SBB In 0, Ketaokuri been BPC value in scratch RAM audio decoder block 28, CH and SBB
変数によって与えられたベクトル位置に記憶される。 It is stored in the vector location given by variable.

【0073】段階752においては、チャネル値に基づいて判断がなされる。 [0073] In step 752, determines based on the channel value is made. もしチャネルが0に等しければ、 If equal to channel 0,
段階754において CH 変数がインクリメントされる。 CH variable is incremented in step 754.
次いで段階756において、SBB 値が BOUND 変数と比較される。 Then, in step 756, SBB value is compared to the BOUND variable. もし SBB 変数がBOUND 変数より小さければ、それは SBB 値が未だ結合ステレオデータ集合のステレオ範囲内にあることを意味しており、プロセスはループバックしてその SBB値に関連付けられた第2のチャネルについて同一の動作を遂行する。 If If SBB variable is less than BOUND variable, it is meant to be within the stereo range of binding stereo data set SBB value is still, the process for the second channel associated with the SBB value loops back perform the same operation. もし段階756において SBB 値が BOUND 変数より大きいか、もしくは等しいと判断されれば、それは SBB 値が結合ステレオスペクトルのモノラル範囲内にあることを意味している。 If if either SBB value in step 756 is greater than BOUND variable, or equal to the judgment, it means that the SBB value is in mono range of binding stereo spectrum. そこで段階758は、スクラッチ(scratch ) RAM Then stage 758, scratch (scratch) RAM
内の、同一SBB 及びチャネル1に従ってベクトル化された位置に、チャネル0及びその SBB 値に関連付けられた値を複写する。 The inner, the vectored position according to the same SBB and channel 1 copies the values ​​associated with the channel 0 and SBB value. プロセスは段階758から、もしくはもし CH 値が1に等しければ段階752から直接段階760へ進み、CH 値が0にリセットされる。 The process proceeds from step 758 or if CH value directly stage 760 from stage 752 equal to 1, CH value is reset to 0. 次の段階762では SBB 値がインクリメントされる。 SBB value in the next step 762 is incremented. 段階7 Step 7
64では、SBB 値と数 32 とを比較する。 In 64 compares the SBB value and the number 32. もし SBB 値が 32 より小さければ、プロセスは段階740へループバックし、そうでない場合にはこのプロセスは終了する。 If If less than SBB value is 32, the process loops back to step 740, otherwise the process terminates. 図23に示すプロセスは、左位置調整された 64 BP The process shown in FIG. 23, 64 BP that is left justified
C 値をオーディオデコーダブロック28内のスクラッチ Scratch in the audio decoder block 28 the C value
RAM 内に記憶させることによって完了する。 Completed by storing in the RAM. 層2ビット割当て復号プロセス図24は、フレームが層2オーディオデータである場合にビット割当てデータを復号するために使用されるプロセスを示す。 Layer 2 bit allocation decoding process Figure 24 illustrates a process which frames are used to decode the bit allocation data when a layer 2 audio data. このプロセスは段階766から始まり、CH The process begins from the stage 766, CH
変数が0に等しくセットされる。 Variable is set equal to 0. 段階768では、SB In step 768, SB
B 変数が0にセットされる。 B variable is set to 0. 段階770では、NO In step 770, NO READ READ
フラグが調べられる。 Flag is checked. もし NO If NO READフラグがセットされていれば、段階772において BPC 値が0に等しくセットされる。 If READ flag is set, BPC value in step 772 is set equal to 0. 段階770において NO NO in step 770 READ フラグがセットされていないと判断されれば、段階774は If it is determined that the READ flag is not set, step 774
GET TABLE 命令を使用し、SBB 値及び見出しからの情報を使用して nBAL の値を探す。 Use the GET TABLE instruction, look for the value of the nBAL using the information from the SBB value and heading. 段階776は GBTC 命令を使用して、段階774において検索した nBAL の値に対応するビットストリーム内の複数のデータビットを検索する。 Step 776 uses the GBTC instruction, retrieving a plurality of data bits in the bit stream corresponding to the value of nBAL retrieved in step 774. 次の段階778は BAL 変数の値を使用して The next step 778 uses the value of the BAL variable
GET TABLE 命令を出し、グループ化ビット/コードワード( GBPC )値を検索させて、検索すべきビットを指定する。 It issues a GET TABLE instruction, by searching for groups of bits / codeword (GBPC) value, that specifies the bit to be retrieved. 層2 MPEG オーディオデータでは、単一の BPC The layer 2 MPEG audio data, a single BPC
値と、3組のサンプルのグループとを結合することによって付加的な圧縮を達成する。 To achieve additional compression by combining the values, and a group of three sets of samples. 従ってBPC がグループ化ビット/コードワードになるのである。 Therefore it BPC to become grouped bits / codeword.

【0074】段階780においては、GBPC 値を左へ6 [0074] In step 780, to the left of the GBPC value 6
ビット位置けた送りする。 Bit position Ketaokuri. 層2では3組の 32 対の SBB Layer 2 in three sets 32 pairs of SBB
値が1つのブロックにグループ化される(グラニュールとも呼ぶ)。 Values ​​are grouped into one block (also called granules). 従って段階782では、組番号、チャネル数、及び SBB 値でベクトル化された GBPC 値がスクラッチ RAM の位置に記憶される。 In thus step 782, the set number, GBPC values ​​vectored channel number, and SBB value is stored in the position of the scratch RAM. 段階784では、第2及び第3のグラニュールに関する GBPC 値が、段階7 In step 784, GBPC values ​​for the second and third granule, stage 7
82において記憶された値から複写される。 It is copied from the stored value in 82. 段階786 Stage 786
においては、NO In, NO READ フラグが再度検査される。 READ flag is checked again. もし if
NO NO READフラグがセットされていれば、段階788において GBPC 値が0に等しくセットされる。 If READ flag is set, GBPC value in step 788 is set equal to 0. もし NO If NO
READフラグがセットされていなければ、段階790において現 SBB 値と BOUND 値とが比較される。 Unless READ flag is set, and the current SBB value and BOUND value is compared in step 790. もし SBB If SBB
値が BOUND 値よりも小さくなければ、その SBB 値は結合ステレオスペクトルのモノラル範囲内にあり、段階792において GBPC 値は先行チャネルに関連付けられた GBPC 値に等しくセットされる。 Be smaller than the value BOUND value, the SBB value is in the mono range of binding stereo spectrum, GBPC value in step 792 is set equal to GBPC value associated with the prior channel. もし SBB 値が B If the SBB value is B
OUND 値よりも小さければ、現 SBB 値は結合ステレオスペクトルのステレオ範囲内にある。 Is smaller than OUND value, current SBB value is within a stereo range of binding stereo spectrum. 従って段階794 Therefore stage 794
において GBTC命令を使用し、nBAL 変数に等しい数のビットをビットストリームから検索する。 In using the GBTC instruction, it retrieves the number of bits equal to nBAL variable from the bit stream. 検索されたビットは BAL 変数として記憶される。 Retrieved bits are stored as BAL variables. 段階796は、GE Stage 796, GE
T TABLE命令を使用して BAL 変数から GBPC 値を検索する。 Search GBPC value from the BAL variable using the T TABLE command. 段階798においては、段階796において検索された GBPC 値が左へ6ビットだけけた送りされる。 In step 798, GBPC value retrieved at step 796 is Ketaokuri only 6 bits to the left. プロセスは段階788、段階792、及び段階798から段階800へ進み、段階782において遂行された動作と同様に、スクラッチ RAM の組番号、チャネル数、及び SBB 値のベクトルに GBPC 値が記憶される。 Process step 788, the process proceeds from step 792, and step 798 to step 800, similar to the operation which is performed in step 782, the set number of the scratch RAM, the number of channels, and GBPC value vector of SBB value is stored. 段階8 Step 8
02では第2及び第3の組の GBPC 変数の値が、段階8 In 02 the value of the second and third set of GBPC variables, step 8
00において第1の組が記憶した値から複写される。 The first set is copied from the value stored in 00. 第2及び第3の組の値は、スクラッチ RAM にも記憶される。 The second and third set values ​​are stored in the scratch RAM. 段階804では SBB 値がインクリメントされる。 SBB value in step 804 is incremented.
段階806において、SBB 値が数 32より大きいかもしくは等しいかが判断される。 In step 806, whether SBB value is the number 32 greater than or equal to is determined. もし SBB 値が数 32 より大きいか、もしくは等しれば、プロセスは終了する。 If either SBB value is greater than the number 32, or if Re equal, the process ends. もし SBB 値が数 32 より小さければ、プロセスは段階7 If If less than SBB value is the number 32, the process step 7
70へ戻されて次の SBB 値についての動作を遂行する。 Back to 70 performs an operation for the next SBB value. 縮尺係数選択情報検索プロセス図25は、層2 MPEG オーディオデータに関連付けられた縮尺係数選択情報を検索するために使用されるプロセスを示す。 Scale factor selection information retrieval process Figure 25 illustrates the process used to find the scale factor selection information associated with the layer 2 MPEG audio data. 層2オーディオデータのブロック内の3組は独立した縮尺係数を使用することも、もしくはサブバンド毎にブロック内の他の組と縮尺係数を共有することもできる。 3 sets of blocks of layer 2 audio data is also possible to use a separate scale factor, or can also share other sets and scaling coefficients in the block for each sub-band. 縮尺係数選択情報は、2ビットフィールドを使用して、その各サブバンドが共用している縮尺係数のモードを指示する。 Scale factor selection information, using the 2-bit fields, each sub-band to indicate the mode of the scale factor that is shared. プロセスは、SBB 変数を0に等しくセットする段階808から開始される。 Process begins from step 808 is set equal to SBB variable to 0. 段階810では、 In step 810,
CH 変数が0に等しくセットされる。 CH variable is set equal to 0. 段階812においては、 CH 変数が #CHANNELS 変数と比較される。 In step 812, CH variable is compared with #CHANNELS variable. もし if
CH 変数が #CHANNELS 変数より大きければ段階814 If CH variable is greater than #CHANNELS variable stage 814
は SBB 値をインクリメントさせる。 It is to increment the SBB value. 次いで段階816 Then stage 816
において CH 変数が0に等しくセットされる。 CH variable is set equal to 0 at. もし CH If CH
変数が #CHANNELS変数より小さければ、段階818は特定のグラニュール(granule )、チャネル、及びサブバンド数に関する GBPC 値が値0と比較される。 Smaller than variable #CHANNELS variable, step 818 is specific granule (granule), the channel, and GBPC values ​​for the number of sub-bands is compared to the value 0. もしこの値が0に等しければ、それはそのサブバンドに割当てられているビット/コードワードが存在しないことを意味し、プロセスはどのような縮尺係数選択情報も検索する必要はない。 Equal if this value 0, it is the means that sub-band assigned to that bit / code word does not exist, the process need not be looking any scale factor selection information. もし所与の組、チャネル、及びサブバンドの GBPC 値が0でなければ、段階820はGBTC 命令を使用してビットストリームから次の2ビットを検索することによって、その組、チャネル、及びサブバンドの縮尺係数選択情報を検索する。 If a given set, the channel, and GBPC value of the sub-band is not 0, step 820 by retrieving the next 2 bits from the bit stream using the GBTC instruction, the set, the channel, and sub-band Search of the scale factor selection information. これらの2ビットは、スクラッチ RAM 内の #CHANNELS 及び SBB 数によってベクトル化された位置に記憶されている。 These two bits are stored in a vectored position by #CHANNELS and SBB number of the scratch RAM. 段階822では In step 822
CH 変数がインクリメントされる。 CH variable is incremented. 段階818において In step 818
GBPC 値が0に等しいと判断された場合にも、プロセスは段階822へ直接到達する。 If the GBPC value is determined to be equal to 0. The process reaches directly to step 822. プロセスは段階822から、及び段階816から段階824へ進み、SBB 値が値 The process proceeds from step 822, and from step 816 to step 824, SBB value is a value
32 と比較される。 32 to be compared. もし SBB 値が 32 より小さければ、段階812へ戻って反対側のチャネルの縮尺係数選択情報を検索するか、もしくは SBB 数をインクリメントさせる。 If SBB value is less than 32, or returns to step 812 to search the scale factor selection information of the opposite channel, or increments the SBB number. 層1縮尺係数索引復号プロセス図26は、オーディオデコーダブロック28が層1 MPE Layer 1 scale factor index decoding process FIG. 26, the audio decoder block 28 is the layer 1 MPE
G オーディオデータの縮尺係数索引を復号するために使用するプロセスを示す。 Showing the process used to decode the scale factor index of G audio data. プロセスは、SBB 変数を0に等しくセットする段階826から開始される。 Process begins from step 826 is set equal to SBB variable to 0. 段階828 Stage 828
では、CH 変数が0に等しくセットされる。 In, CH variable is set equal to 0. 段階830 Stage 830
において、CH 変数及び SBB 変数上に索引付けられた In was indexed on CH variables and SBB variable
BPC の値がスクラッチパッドメモリから読出され、その位置に記憶されていた BPC が0に等しいか否かの判断がなされる。 The value of BPC is read from the scratchpad memory, a determination whether BPC that was stored at that location is equal to 0 is performed. もし値が0であれば、段階832は 63 If the value is 0, step 832 is 63
の値をセット、即ち H3F を SCF 索引変数に等しくセットする。 It is set equal to the value set, i.e. the H3F the SCF index variable. 縮尺索引値を 63 にセットすると、ハードウェアフィルタ演算ユニット32がこの縮尺索引を使用してメモリから縮尺係数を検索した時に、そのサブバンドが沈黙させられることになる。 Setting the scale index value to 63, the hardware filter arithmetic unit 32 when searching for scale factor from memory using this scale index, so that the sub-bands are silenced. 縮尺索引値が0である場合にはハードウェアフィルタ演算ユニット32に関連付けられた縮尺係数 ROM から最大の縮尺係数が検索され、また縮尺索引値が 63 である場合には0の縮尺係数が検索される。 Maximum scale factor from the scale factor ROM associated with a hardware filter operational unit 32 is retrieved when the scale index value is 0, and scale factor of 0 is searched when the scale index value is 63 that. 段階830において検索された BPC 値が0に等しくなければ、段階834は SCF 索引変数をビットストリーム内の次の6ビットに等しくセットする。 If there is no retrieved BPC value in step 830 is equal to 0, step 834 is set equal to SCF index variable to the next 6 bits in the bit stream. 段階836は、 MUTE フラグを調べる。 Stage 836, examine the MUTE flag. もし MUTE If MUTE
フラグがセットされていればそのサブバンドは沈黙させられ、プロセスは前述したように SCF 索引変数として数 63 を記憶させる段階832へ進められる。 Flag is that subband if set is silenced, the process proceeds to step 832 to store the number 63 as the SCF index variable as described above.

【0075】もし段階836において MUTE フラグはセットされていないと判断されれば、段階838において [0075] If it MUTE flag is determined not to be set in step 836, in step 838
CH 変数に従って選択された減衰制御レジスタの値に縮尺索引が加算される。 Scale the value of the selected attenuation control register in accordance CH variable index is added. 減衰制御レジスタは、マイクロプロセッサホスト12によってセット可能なある値を含んでいる。 Attenuation control register contains a value that can be set by the microprocessor host 12. ある値が縮尺索引に加算されると特定のサブバンドのための(検索される)最終縮尺係数が大きくなり、そのサブバンドの音量が小さくなって一方のチャネルが他方のチャネルに対して減衰されるようになる。 (To be searched) final scale factor for a particular sub-band and a value is added to the scale index is increased, one of the channels volume of that sub-band is reduced is attenuated with respect to the other channel Become so. 段階838は、チャネルの関数として減衰制御レジスタを選択する。 Step 838 selects the attenuation control register as a function of the channel. つまり減衰制御レジスタは、マイクロプロセッサホスト12によってプログラム可能な右・左バランススイッチと考えることができるのである。 That attenuation control register, it is possible to consider a programmable right-left balance switch by the microprocessor host 12. 本発明の代替実施例によれば、減衰制御レジスタはチャネル及びサブバンドに基づいて選択される。 According to an alternative embodiment of the present invention, the attenuation control register is selected based on the channel and subband. このようにして、マイクロプロセッサホスト12は第1及び第2のチャネル内の種々のサブバンドを減衰させることによって、プログラム可能な 64 チャネル等化器を制御することができる。 In this manner, the microprocessor host 12 by attenuating the various subbands in the first and second channels, it is possible to control the programmable 64 channel equalizer. またこのようにすることによって、64 チャネル等化器をディジタル域において実現する可能であり、それによりアナログ域において実現される等化器に伴う損失及びひずみを防ぐことができる。 Also by doing so, it is possible to realize the digital band 64 channel equalizer may be prevented thereby loss and distortion caused by the equalizer to be implemented in the analog domain.

【0076】段階840においては、減衰された縮尺係数索引が 63 より大きいか否かが決定される。 [0076] In step 840, whether greater than the attenuated scale factor index 63 is determined. 減衰制御レジスタの内容を加算した後の縮尺係数索引が 63 より大きければ、段階832において SCF 索引変数に 63 If the scale factor index after adding the contents of the attenuation control register is greater than 63, the SCF index variable in step 832 63
がロードされる。 There is loaded. プロセスは段階832及び段階840 By process step 832 and step 840
から段階842へ進み、特定のチャネル及びサブバンドの縮尺係数索引が、スクラッチ RAM 内に記憶済の BFC Proceeds from the step 842, the scale factor index of the particular channel and subband, the already stored in the scratch RAM BFC
に連結される。 It is connected to. この連結された対はスクラッチ RAM The concatenated pair scratch RAM
内の同一アドレス位置に再挿入される。 It is reinserted into the same address location of the inner. プロセスは段階842から段階844へ進み、 CH 変数が検査される。 The process proceeds from step 842 to step 844, CH variable is examined.
もし CH 変数が1に等しくなければ、プロセスは段階8 If not equal CH variable to 1, the process steps 8
46へ分岐して CH 変数が1に等しくされる。 CH variable is equal to 1 and branches to 46. 次の段階848において、オーディオストリームが2つのチャネルを使用しているか否かが決定される。 In the next step 848, whether the audio stream is using two channels is determined. もしオーディオストリームが2つのチャネルを使用していれば、プロセスは段階830へ戻されてチャネル1のサブバンドに関連付けられた縮尺係数索引が検索される。 If if using an audio stream of two channels, process scale factor index returned to step 830 associated with the sub-band of the channel 1 is retrieved. もし2つのチャネルを使用していなければ、プロセスは段848から850へ進められ、チャネル0のための BPC と縮尺係数索引との対が、チャネル1の同一サブバンドに関連付けられたアドレス位置へ複写される。 If not if using two channels, the process is advanced from the step 848 to 850, BPC and scale factor index and the pairs for channel 0, copied to the address location associated with the same subband of channel 1 It is. 次いでプロセスは段階844へ戻される。 Then the process is returned to step 844.

【0077】段階844において、もし CH 変数が1に等しければ、段階852は CH 変数を0にリセットする。 [0077] In step 844, if equal CH variable to 1, step 852 resets the CH variable to 0. 段階854では、SBB 変数がインクリメントされる。 In step 854, SBB variable is incremented. 段階856においては、SBB 変数が 32 と比較される。 In step 856, SBB variable is compared with 32. もし SBB 変数が 32 より小さければ、プロセスは段階830へ戻されて次のサブバンドの縮尺係数索引が復号される。 If less than SBB variable 32, the process is returned to step 830 scale factor index of the next sub-band it is decoded. 段階856においてもし SBB 変数が 32 If the SBB variable in step 856 is 32
より大きいか、もしくは等しければ、プロセスは終了する。 Or greater than, or equal, the process ends. 層1サブバンド情報復号プロセス図27及び28は、層1 MPEG オーディオデータのサブバンド情報を復号するためにオーディオデコーダブロック28が使用するプロセスを示す。 Layer 1 sub-band information decoding process diagram 27 and 28 show the process of using the audio decoder block 28 to decode the sub-band information of the layer 1 MPEG audio data. このプロセスは、ハードウェアフィルタ演算ユニットブロック32が演算ユニットバッファ30を空にしたか否かを決定する段階8 This process step 8 the hardware filter arithmetic unit block 32 to determine whether the operation unit buffer 30 to empty
58から開始される。 It is started from 58. この決定は、オーディオデコーダブロック28の特別レジスタブロック内のレジスタを調べることによってなされる。 This determination is made by examining the registers in the special register block of the audio decoder block 28. 演算ユニットバッファ30 Arithmetic unit buffer 30
が空であることを見出した場合には、段階860は連結された BPC と縮尺係数索引とを、オーディオデコーダブロック28に関連付けられたスクラッチ RAM から演算ユニットバッファ30へ移動させる。 There when found to be empty, step 860 is a scale factor index and coupled BPC, is moved from the scratch RAM associated with the audio decoder block 28 to the arithmetic unit buffer 30. 段階862では、BLOCK In step 862, BLOCK CNT が0に等しくセットされる。 CNT is set equal to 0. 段階86 Stage 86
4では、CH 変数が0に等しくセットされる。 In 4, CH variable is set equal to 0. 段階86 Stage 86
6では、SBB 変数が0に等しくセットされる。 In 6, SBB variable is set equal to 0. 段階86 Stage 86
8においては、CH 変数及び SBB 変数によって選択された BPC の値が変数 NUM In 8, the value of BPC selected by CH variables and SBB variable variable NUM BITS 内にロードされる。 It is loaded into the BITS.
次の段階870は、GBT 命令を使用して NUM The next step 870, using the GBT instruction NUM BITS の値に等しい数のビットをビットストリームから検索させ、検索したビットを SAMPLE 変数内に記憶させる。 The number of bits equal to the value of BITS is retrieved from the bit stream, and stores the retrieved bits SAMPLE variable. 段階872は〔 16 − NUM Stage 872 [16 - NUM BITS 変数の値〕に等しいビット数だけ SAMPLE 変数を左へけた送りさせる。 Only equal the number of bits BITS value of the variable] is Ketaokuri the SAMPLE variable to the left. このプロセスは 16 ビットフィールド内のサブバンドサンプルを左位置調整する。 This process subband samples left justified in the 16-bit field.

【0078】段階874においては分岐がなされる。 A branch is made in the [0078] stage 874. もしブロック計数( BLOCK If the block count (BLOCK CNT ) 変数が0に等しければ、けた送りされたサンプルは段階876において演算ユニットバッファ30内に直接記憶される。 Equal CNT) variable to zero, samples Ketaokuri is stored directly in the arithmetic unit buffer 30 at step 876. もしBLOCK If BLOCK
CNT 変数が0に等しくなければ、けた送りされたサンプルは、段階878においてオーディオデコーダブロック28に関連付けられたスクラッチ RAM 内に記憶される。 If there is no CNT variable is equal to 0, samples Ketaokuri is stored in the scratch RAM associated with the audio decoder block 28 in step 878. プロセスは段階876から、もしくは段階878から段階880へ進み、CH 変数に依存して分岐が行われる。 The process from step 876, or proceeds from step 878 to step 880, a branch is made depending on the CH variable. もし CH 変数が1に等しくなければ、段階882は Not equal CH variable to 1 if stage 882
CH 変数を1に等しくセットする。 It is set equal to CH variable to 1. 段階884は、SBB Stage 884, SBB
変数と BOUND 変数とを比較する。 And it compares the variables and BOUND variable. もし SBB 変数が B If the SBB variable B
OUND 変数より小さければ、現サブバンドは結合スペクトルのステレオ範囲内にあり、プロセスは段階868へ戻されて第2のチャネルに関連付けられたサンプルが検索される。 Smaller than OUND variable current sub-band is in the stereo range of binding spectrum, processes the samples associated with the second channel returns to step 868 is searched. もし SBB 変数が BOUND 変数より大きければ、段階886へ進んでメモリへ書込まれたけた送りされたサンプルが、反対側のチャネルに関連付けられたスクラッチ RAM もしくは演算ユニットバッファ30内の何れかの第2の位置へ複写される。 If If SBB variable is greater than BOUND variables, samples Ketaokuri that written into the memory proceeds to step 886, of any of the scratch RAM or arithmetic unit buffer 30 associated with the opposite channel second It is copied to the position. プロセスは段階88 The process stage 88
6もしくは段階880から段階888へ進められ、CH Underway from 6 or step 880 to step 888, CH
変数が0に等しくセットされる。 Variable is set equal to 0. 段階890では SBB In step 890 SBB
変数がインクリメントされる。 Variable is incremented. 段階892において、SB In step 892, SB
B 変数が値 32と比較される。 B variable is compared to the value 32. もし SBB 値が 32 より大きくないか、もしくは等しくなけければ、プロセスは段階868へ戻される。 If either SBB value is not greater than 32, or if Kere cry equal, the process is returned to step 868. 段階892においてもし SBB If SBB in stage 892
値が 32より大きいか、もしくは等しければ、プロセスは図28に続く接続点Aに進められる。 Value is 32 or greater, or equal, the process proceeds to a connection point A which is subsequent to FIG. 28.

【0079】図28の段階894では、BLOCK [0079] In step 894 of FIG. 28, BLOCK CNT 変数がインクリメントされる。 CNT variable is incremented. 段階896では、BLOCK In step 896, BLOCK
CNT 変数に依存して分岐がなされる。 Branch is made depending on the CNT variable. もし段階894においてインクリメントされた BLOCK BLOCK that if is incremented at step 894 CNT 変数が1に等しければ、プロセスは段階898へ進んで PTS フラグが調べられる。 Equal CNT variable to 1, the process PTS flag is checked proceeds to step 898. もし PTS フラグがセットされていれば、段階900において PTS 割込みが検査される。 If if it is PTS flag set, PTS interrupt is tested in step 900. もし PTS 割込みが可能にされていれば、段階902において PTS タグがセットされる。 If if it is possible to PTS interrupt is set PTS tag in step 902. 次いで段階904においてフレームの始まり( BOF ) タグがセットされる。 Start of frame (BOF) tag is set in the subsequently step 904. PC PC
M 出力ブロック36はデータを PCM データピン上に出力する時に PTS 及び BOF タグを使用して BOF 信号及び PTS 割込みをセットする。 M output blocks 36 sets the BOF signal and PTS interrupt using PTS and BOF tags when outputting data to the PCM data pin on. 段階898においてもし PTS フラグがセットされていないか、もしくは段階900において PTS 割込みが可能にされていなければ、プロセスは直接段階904へ進められる。 Or if PTS flag is not set in step 898, or if it is not possible to PTS interrupt at step 900, the process proceeds directly to step 904. もし段階896が BLOCK If stage 896 BLOCK CNT は1に等しくないと決定すれば、 CNT is be determined not to be equal to 1,
プロセスは段階906へ進んで演算ユニットバッファ3 The process proceeds to step 906 in the arithmetic unit buffer 3
0が空になるまで待機する。 0 to wait until it is empty. 演算ユニットバッファ30 Arithmetic unit buffer 30
がハードウェアフィルタ演算ユニットブロック32によって空にされると、段階908はスクラッチ RAM 内に記憶しているサンプルを演算ユニットバッファ30へ転送する。 There Once emptied by the hardware filter arithmetic unit block 32, step 908 transfers the samples stored in the scratch RAM to the arithmetic unit buffer 30. 段階910では、PTS 及び BOF タグがクリアされる。 In step 910, PTS and BOF tags are cleared. プロセスは段階904もしくは段階910から段階912へ進み、演算ユニットバッファ30が一杯であることを指示するフラグをセットする。 The process proceeds from step 904 or step 910 to step 912, sets a flag to indicate that the arithmetic unit buffer 30 is full. 次の段階91 The next step 91
4では、 BLOCK In 4, BLOCK CNT が値 12 と比較される。 CNT is compared to the value 12. もし BLO If BLO
CK CK CNT が 12 より小さいか、もしくは等しければ、プロセスは前述した図27の段階866へ戻される。 CNT is 12 or less, or equal, the process is returned to step 866 of FIG. 27 described above. 段階914において、もし BLOCK In step 914, if BLOCK CNT が 12 より大きければプロセスは終了する。 CNT is greater than 12 process is completed. 層2縮尺係数索引復号プロセス図29及び30に、層2 MPEG オーディオデータの縮尺係数索引情報を復号するためにオーディオデコーダブロック28が使用するプロセスの詳細を示す。 The layer 2 scale factor index decoding process 29 and 30, showing details of the process used by the audio decoder block 28 to decode the scale factor index information layer 2 MPEG audio data. プロセスは、SBB 変数を0に等しくセットする段階916から開始される。 Process begins from step 916 is set equal to SBB variable to 0. 段階918では、SBB 変数が数 32 と比較される。 In step 918, SBB variable is compared to the number 32. もし SBB 変数が 32 より小さくなければプロセスは終了する。 If the process is not less than SBB variable 32 is terminated. もし SBB 変数が 32 より小さければ、 If if SBB variable is less than 32,
段階920において CH 変数が0に等しくセットされる。 CH variable is set equal to 0 in step 920. 段階922では、CH 変数と2とを比較する。 In step 922, it compares the CH variables and 2. もし if
CH 変数が2より小さくなければ、段階924において If there is no CH variable is less than 2, in step 924
SBB変数がインクリメントされ段階918へ戻される。 SBB variable is returned to the increment step 918.
もし CH 変数が2より小さければ、段階926において If if CH variable is less than 2, in step 926
CH 変数が #CHANNELS 変数と比較される。 CH variable is compared with #CHANNELS variable. もし CH変数が #CHANNELS 変数よりも小さくなければ、それはデータがモノラルデータであることを意味しており、段階928においてチャネル0の縮尺係数索引情報が複写されてチャネル1の縮尺係数索引情報が形成される。 It is smaller than if CH variable #CHANNELS variables, it is meant, in the step 928 scale factor index information for channel 0 is copied scale factor index information for channel 1 forming the data is monaural data It is. 図2 Figure 2
9の段階928に示すように、オーディオデータのブロックの各組内の各チャネル内の各サブバンドには1つの縮尺係数索引が存在する。 As shown in step 928 of 9, each sub-band in each channel in each set of blocks of audio data there is one scale factor index. プロセスは段階928から段階930へ進められて CH 変数がインクリメントされる。 Process CH variable is incremented advanced from step 928 to step 930. 次いでプロセスは段階922へ戻される。 Then the process is returned to step 922.

【0080】段階926においてもし CH 変数が #CHAN [0080] If the CH variable in step 926 is #CHAN
NELS 変数よりも小さければ、段階932においてはサブバンドの現チャネルの組0の GBPC 値が0と比較される。 Is smaller than NELS variable, GBPC value set 0 of the current channel subbands in step 932 is compared with zero. もし指示された GBPC 値が0に等しければ、プロセスは分岐点Bから図30へ進められる。 If equal to the indicated GBPC value 0, the process proceeds to Figure 30 from the branch point B. もし指示された If you are instructed
GBPC 値が0に等しくなければプロセスは4分岐段階9 If there is no GBPC value equal to 0 the process 4 branch stage 9
34へ進む。 It advances to 34. この段階934は、図25に関して前述したプロセスを使用して検索された縮尺係数選択情報オーディオデータに基づいて分岐する。 The step 934 branches based on the scale factor selection information audio data retrieved using the process described above with respect to FIG. 25. 既に詳述したように、縮尺係数選択情報は層2オーディオデータのあるブロック内のどの組が同一縮尺係数索引値を共有しているかを識別する。 As already described, the scale factor selection information identifies which set of the block of layers 2 audio data share the same scale factor index value. 縮尺係数選択値が 00 である場合には、 If the scale factor selected value is 00,
あるブロック内の各組が独立した縮尺係数索引値を有していることを表している。 It represents that it has a scale factor index values ​​each set are independent of one block. この場合にはプロセスは段階936へ進み、3つの連続した GBT命令が実行されて指示されたチャネル及びサブバンド値に関連する組0、 The process proceeds to step 936, if three consecutive pairs 0 GBT instruction is associated with the channel and subband values ​​indicated by the executed,
1、及び2のための縮尺係数索引情報が検索される。 1, and scale factor index information for 2 are searched. 6
ビットの縮尺係数索引値は、それらがビットストリームから検索されるとスクラッチ RAM 内に記憶される。 Scale factor index values ​​of the bits, they are stored when it is retrieved from the bit stream into the scratch RAM. 縮尺係数選択情報の値が 01 である場合には、プロセスは段階934から段階938へ進められ、次の6ビットが検索されて所与のチャネル及び所与のサブバンドの組0 If the value of scale factor selection information is 01, the process is advanced from step 934 to step 938, it is searched next 6 bits of a given channel and a given subband set 0
の縮尺係数索引として記憶される。 It is stored as the scale factor index. 次いで、同じ6ビットが所与のチャネル及びサブバンドの組1の縮尺係数索引として複写される。 Then, the same six bits are copied as scale factor index set 1 of a given channel and subband. 次の6ビットが検索され、指示されたチャネル及びサブバンドの組2の縮尺係数索引として記憶される。 The following 6 bits are retrieved and stored as the scale factor index set 2 of the indicated channel and subband.

【0081】縮尺係数選択情報の値が 10 である場合には、3つの全ての組が同一縮尺係数索引値を使用していることを意味している。 [0081] When the value of scale factor selection information is 10, it means that all three sets are using the same scale factor index value. この場合プロセスは段階934 In this case the process stage 934
から段階940へ進み、ビットストリームから次の6ビットが検索され、指示されたチャネル及びサブバンドに関連する組0、1、及び2の縮尺係数索引に対応する3 From the process proceeds to step 940, the next 6 bits from the bit stream is searched, corresponding to the set 0, 1, and 2 of the scale factor index associated with the indicated channel and subband 3
つの位置に縮尺係数索引として記憶される。 One of are stored as the scale factor index position. 最後に、縮尺係数選択情報値が 11 である場合には、第2及び第3 Finally, if the scale factor selection information value is 11, the second and third
の組が縮尺係数索引値を共有し、第1の組は分離した縮尺係数索引値を有していることを示している。 Set share the scale factor index values ​​of the first set indicates that it has a scale factor index values ​​separated. 従ってプロセスは段階934から段階942へ進み、次の6ビットを検索して関連するチャネル及びサブバンドの組0の縮尺係数索引として記憶する。 Therefore the process proceeds from step 934 to step 942, and stored as the scale factor index set 0 of the channel and subband associated with searching for the next 6 bits. 次いで、次の6ビットが検索され指示されたチャネル及びサブバンドに関連する組1及び2の縮尺係数索引値に対応する2つの位置に記憶される。 Then stored in the two corresponding to the scale factor index values ​​of the set 1 and 2 associated with the next 6 bits are retrieved indicated channel and subband position. プロセスは段階936、938、940、もしくは942から、図30へ続く接続点Cへ進む。 The process from step 936,938,940 or 942, and proceeds to the connection point C which leads to Figure 30. 図3 Figure 3
0の段階944へは接続点Cから到達し、MUTE フラグが検査される。 0 to stage 944 arrived from the connection point C, MUTE flag is examined. もし MUTE フラグがセットされていれば、それは現フレームの出力を沈黙させることを指示している。 If it is if MUTE flag set, it is indicated that silencing the output of the current frame. 従ってプロセスは段階946へ進められ、指示されたチャネル及びサブバンドに関連する各組0、1、 Thus the process is advanced to step 946, each set associated with the indicated channel and subband 0,1,
及び2の縮尺係数索引情報に値 63 が重ね書きされる。 And the value 63 is overwritten second scale factor index information.
前述したように、縮尺係数索引値が 63 である場合にはハードウェアフィルタ演算ユニットブロック32によって処理された時に0の縮尺係数が検索され、出力が沈黙させられる。 As mentioned above, scale factor of 0 when it is processed by the hardware filter arithmetic unit block 32 is searched when scale factor index value is 63, the output is silenced.

【0082】もし MUTE フラグがセットされていなければ、段階948は組番号変数を0に等しくセットする。 [0082] If no MUTE flag is not set, step 948 is set equal to the set number variable to 0.
段階950では、指示された組番号、チャネル数、及びサブバンドの縮尺係数索引が指示されたチャネルの減衰制御レジスタの値に加算される。 In step 950, the indicated set number, the number of channels, and scale factor index of the sub-band is added to the value of the attenuation control register of the indicated channel. このプロセスは図26 This process is 26
の段階838に関して説明したプロセスに類似している。 It is similar to the process described with respect to the stage 838. 減衰制御レジスタ値は、右もしくは左チャネルの何れかを選択的に減衰させるためのバランス制御として働く。 Attenuation control register values ​​serve as a balance control for selectively attenuating one of the right or left channel. 縮尺係数索引値にある数を加算することによって、 By adding the number in the scale factor index value,
所与のサブバンドの出力の音量が最終的に小さくされる。 Volume of the output of a given sub-band is finally reduced. これも前述したように、本発明の代替実施例によれば、ディジタル域においてプログラム可能な64 チャネル等化器を実現することができるように減衰制御値を各サブバンド毎にプログラムすることが可能である。 As also described above, according to an alternative embodiment of the present invention, it is possible to program the attenuation control values ​​for each sub-band to be able to realize a programmable 64 channel equalizer in digital domain it is. プロセスは段階950から段階952へ進んで、減衰された縮尺係数索引が値63 と比較される。 The process proceeds from step 950 to step 952, the attenuated scale factor index is compared to the value 63. もし調整された縮尺係数索引が 63 より大きければ段階954は、所与の組番号、チャネル数、及びサブバンド値の縮尺係数索引値として数63 をロードする。 If step 954 adjusted scale factor index is greater than 63, loads given set number, the number of channels, and the number 63 as the scale factor index values ​​of the sub-band values. 段階952においてもし調整された縮尺係数索引が 63 より大きくないと決定されれば、段階956は組番号をインクリメントさせる。 If it is determined that if adjusted scale factor index in step 952 is not greater than 63, step 956 increments the group number.
段階958においては、組番号と値3とが比較される。 In step 958, a set number and value 3 are compared.
もし組番号が3より小さければ、プロセスは段階950 If the set number is less than 3, the process step 950
へ戻され、次の組に対して減衰制御が遂行される。 Back to the damping control is performed for the next set. 段階960へは段階958において組番号は3より小さくないと決定されれば、もしくは段階946から直接到達し、所与の組番号、チャネル数、及びサブバンドの縮尺係数索引が、その組番号、チャネル数、及びサブバンドの GBPC 値と連結される。 If it is determined at step 958 to step 960 and set number is not less than 3, or arrive directly from step 946, a given set number, the number of channels, and scale factor index of the sub-bands, the set number, number of channels, and is connected to the GBPC value of the sub-band. 連結された値はオーディオデコーダブロック28に関連するスクラッチRAM 内に記憶される。 Concatenated values ​​are stored in a scratch RAM associated with the audio decoder block 28. 次いでプロセスは接続点Aから図29の段階9 The process then steps 9 of FIG. 29 from the connecting point A
30へ戻される。 It is returned to the 30. 層2サブバンド情報復号プロセス図31及び32は、層2 MPEG オーディオデータのサブバンド情報を復号するためにオーディオデコーダブロック28が使用するプロセスを示す。 Layer 2 sub-band information decoding process diagram 31 and 32 show the process of using the audio decoder block 28 to decode the sub-band information of the layer 2 MPEG audio data. プロセスは演算ユニットバッファ30がハードウェアフィルタ演算ユニットブロック32によって空にされるまでオーディオデコーダブロック28が待機する段階962から開始される。 Process audio decoder block 28 is started from step 962 to wait until the operation unit buffer 30 is emptied by the hardware filter arithmetic unit block 32.
演算ユニットバッファ30が空になると、段階964において GBPC 値と縮尺係数索引値の連結された対がオーディオデコーダブロック28に関連付けられたスクラッチ RAM から演算ユニットバッファ30へ転送される。 When the calculation unit buffer 30 is empty, linked pairs GBPC value and scale factor index value in step 964 is transferred from the scratch RAM associated with the audio decoder block 28 to the arithmetic unit buffer 30.
段階966では、BLOCK In step 966, BLOCK CNT 変数が0に等しくセットされる。 CNT variable is set equal to 0. 次の段階968においてもし BLOCK If BLOCK In the next step 968 CNT 変数が 12 より小さくなければプロセスは終了する。 If there is no CNT variable is less than 12 the process ends. もし B If B
LOCK LOCK CNT 変数が 12 より小さければ、段階970において SBB 変数が0に等しくセットされる。 If CNT variable is less than 12, SBB variable in step 970 is set equal to 0. 段階972 Stage 972
では、SBB 変数が 32 と比較される。 In, SBB variable is compared with 32. もし SBB 変数が If the SBB variable is
32 より小さければ、プロセスは分岐点Bから図32へ進められる。 Smaller than 32, the process proceeds to Figure 32 from the branch point B. もし SBB 変数が 32 より小さくなければ、段階974において BLOCK Be less than SBB variable 32 if, BLOCK at step 974 CNT 変数がインクリメントされる。 CNT variable is incremented. 段階976では、インクリメントされた B In step 976, the incremented B
LOCK LOCK CNT 変数が1と比較される。 CNT variable is compared to one. もし BLOCK If BLOCK CNT 変数が1に等しければ、プロセスは段階978へ進んで P Equal CNT variable is to 1, the process proceeds to step 978 P
TS フラグを調べる。 Examine the TS flag. もし PTS フラグがセットされていれば、段階980は PTS 割込みが可能にされているか否かを決定する。 If If PTS flag is set, step 980 determines whether it is possible PTS interrupt. もし PTS 割込みが可能であれば、 If PTS interrupt is possible,
段階982は PTS タグをセットする。 Step 982 sets the PTS tag. 段階984へは、段階978において PTS フラグがセットされていないか、もしくは段階980において PTS 割込みが可能にされていなければ、もしくは段階982から直接進められ、BOF タグがセットされる。 To the stage 984, or PTS flag is not set in step 978, or if it is not possible to PTS interrupt at step 980, or proceed directly from step 982, BOF tag is set. PTS タグ及び BOF PTS tag and BOF
タグは、PCM 出力ブロック36によって使用され、データを PCM データピンに出力する時に BOF 信号及び P Tag is used by the PCM output block 36, BOF signal and P when outputting data to the PCM data pin
TS 割込みをセットする。 To set the TS interrupt.

【0083】段階976においてもし BLOCK [0083] If BLOCK in step 976 CNT 変数が1に等しくなければ、段階986においてオーディオデコーダブロック28は、演算ユニットバッファ30がハードウェアフィルタ演算ユニットブロック32によって空にされるまで待機する。 If CNT variable is not equal to 1, the audio decoder block 28 in step 986, the arithmetic unit buffer 30 waits until it is emptied by the hardware filter arithmetic unit block 32. 演算ユニットバッファ30 Arithmetic unit buffer 30
が空になると、段階988はサブバンドサンプルをオーディオデコーダブロック28に関連付けられたスクラッチ RAM から演算ユニットバッファ30へ転送する。 There becomes empty, step 988 is transferred from the scratch RAM associated subband samples to the audio decoder block 28 to the arithmetic unit buffer 30. 段階990では PTS 及び BOF タグが共にクリアされる。 PTS and BOF tag in step 990 are both cleared. プロセスは段階990もしくは段階984から段階992へ進み、演算ユニットバッファ30が一杯であることを指示するフラグがセットされる。 The process proceeds from step 990 or step 984 to step 992, a flag indicating that calculation unit buffer 30 is full is set. プロセスは段階992から段階968へ戻される。 The process is returned from step 992 to step 968. 図32の CH 変数を0に等しくセットする段階994へは、分岐点Bから到達する。 The CH Variables Figure 32 to step 994 to set equal to 0, to arrive from the branch point B. 段階996は CH 変数と2とを比較する。 Step 996 compares the CH variables and 2. もし if
CH 変数が2より小さくなければ、段階998は SBB If there is no CH variable is less than 2, step 998 SBB
変数をインクリメントさせる。 Increments the variable. 次いでプロセスは分岐点Aから図31の段階972へ戻される。 Then the process is returned to step 972 of FIG. 31 from the branch point A. 段階996において、もし CH 変数が2より小さければ段階1000において CH 変数が1と比較される。 In step 996, CH variable is compared to 1 in step 1000 if if CH variable is less than 2. もし CH変数が1に等しければ、段階1002は SBB 変数の現値と BOUND Equal CH variable to 1 if stage 1002 and the current value of the SBB variable BOUND
変数とを比較する。 It is compared with the variable. もし SBB 変数の現値が BOUND If the current value of the SBB variable is BOUND
変数より小さければ、段階1004はGBPC の最上位ビットと1とを比較する。 Smaller than the variable, step 1004 compares the 1 and the most significant bit of GBPC. GBPC の最上位ビット位置が1 The most significant bit position of GBPC 1
であることは、オーディオデータがグループ化されていることを指示している。 It is has been instructed that the audio data is grouped. もしオーディオデータがグループ化されていれば、段階1006においてグループ復号が遂行される。 If If the audio data are grouped, the group decoding is performed in step 1006. オーディオデコーダブロック28がグループ復号を遂行するために使用するプロセスは、図33 Process audio decoder block 28 is used to perform a group decoding, Figure 33
を参照して後述する。 With reference to which will be described later.

【0084】もし GBPC 値の最上位ビットがビットストリームはグループ化されていないことを指示すれば段階1008は、指示されたチャネル及びサブバンドのための GBPC 値を使用して GBT 命令を遂行することによって、指示されたチャネル及び指示されたサブバンドの第1の組のサンプルをビットストリームから検索し、GBT [0084] If step 1008 if indicates that the most significant bit of GBPC value is not bitstream grouping is to perform GBT instructions using GBPC values ​​for the indicated channel and subband by searching a first set of samples of the indicated channel and indicated subbands from the bitstream, GBT
命令によって検索すべきビット数を供給する。 Supplying the number of bits to be searched by the instruction. 次の段階1010は、検索されたビットを〔16− GBPC 値〕だけ左へけた送りすることによって、検索されたビットを左位置調整する。 The next step 1010, by Ketaokuri the retrieved bits to the left by [16- GBPC value] to adjust left position the retrieved bits. 段階1012においては、段階1008 In stage 1012, stage 1008
と同じ手法で、指示されたチャネル及び指示されたサブバンドの第2の組のサンプルが検索される。 In the same manner as the second set of samples of the indicated channel and indicated subbands is searched. 段階101 Stage 101
4は、前述したように左けた送りを遂行することによって、検索されたサンプルを左位置調整する。 4 by performing a left Ketaokuri as described above, is left justified the retrieved samples. 段階101 Stage 101
6においては、段階1008及び段階1012と同じ手法で指示されたチャネル及び指示されたサブバンドに対応する第3の組のサンプルが検索される。 In 6, a third set of samples corresponding to the designated channel and the designated subband in the same manner as steps 1008 and step 1012 are retrieved. 段階1018 Stage 1018
では同じ左けた送り手法を使用して検索されたサンプルの左位置調整が行われる。 In the left alignment of the sample retrieved performed using the same left Ketaokuri techniques. 段階1002において SBB SBB in step 1002
値が BOUND 値より小さくないと決定された場合には、 If the value is determined to not less than BOUND value,
指示された SBB 値は結合ステレオのモノラル範囲内にあり、プロセスは段階1020へ進んで組0、1、及び2の指示された SBB 値のチャネル0のサンプルが複写されて組0、1、及び2の指示された SBB 値のチャネル1のサンプルが作られる。 Indicated SBB value is in the mono range of binding stereo process sample is copied set 0,1 for channel 0 of the indicated SBB value set 0, 1, and 2 proceeds to step 1020 and, the channel 1 samples of 2 of the indicated SBB value is made. 段階1020において作られたサンプル、及び段1010、1014、及び101 Samples made in step 1020, and steps 1010, 1014, and 101
8において作られたサンプルは、図31において説明済の段階988に到達するまでオーディオデコーダブロック28に関連付けられたスクラッチ RAM 142内に記憶され、その時点に達するとサンプルは演算ユニットバッファ30へ転送される。 Samples made in 8 are stored in the scratch RAM 142 associated with the audio decoder block 28 until it reaches the described already stage 988 in FIG. 31, the sample is reached that point is transferred to the arithmetic unit buffer 30 that. プロセスは段階1020、1 The process stage 1020,1
006、及び段階1018から段階1022へ進み、CH 006, and proceeds from step 1018 to step 1022, CH
変数がインクリメントされる。 Variable is incremented. プロセスは段階102 By process step 102
2から段階966へ戻される。 It is returned from the 2 to the stage 966. グループ復号プロセス図33は、グループ復号を遂行するためにオーディオデコーダブロック28が使用するプロセスを示す。 Group decoding process Figure 33 illustrates the process of the audio decoder block 28 to perform the group decoding is used. 同一チャネル及びサブバンドの3つの連続サンプルが一緒にグループ化される時にサンプルはグループ符号化され、 Samples are grouped coded when three consecutive samples of the same channel and sub-band are grouped together,
5、7、もしくは10 ビット長の単一の値を使用してコード化される。 5,7, or is encoded using a single value of 10-bit length. 図33に示すプロセスは、5、7、もしくは 10 ビットフィールドを検索し、そのフィールドを復号して所与のチャネル及びサブバンドの組0、組1、 The process shown in FIG. 33, 5, 7, or searches the 10-bit field, set 0 for a given channel and subband decodes the field, set 1,
及び組2に関連付けられたサンプルを作る。 And create a sample that is associated with a set of 2. プロセスは、GBT 命令を使用して現チャネル及びサブバンドの B Process uses the GBT instruction of the current channel and sub-band B
PC 値に等しいビット数を、ビットストリームから検索する段階1024から開始される。 The number of bits equal to the PC value is started from step 1024 to search from the bit stream. BPC 値は GBPC 値の5つの最下位ビットである。 BPC value is 5 least significant bits of GBPC values. これらのビットは CODE 変数内にロードされる。 These bits are loaded into the CODE variable. 段階1026では、再度 BPC 値を使用して種々に分岐させる。 In step 1026, it is branched to the various uses again BPC value. 即ち、もし BPC 値が5 In other words, if BPC value is 5
に等しければ、プロセスは段階1028へ進み、整数除算を使用して CODE 変数を〔 CODE 変数÷3〕に等しくセットする。 Equal to, the process proceeds to step 1028 to set equal CODE variable [CODE variable ÷ 3] using integer division. この商は新しい CODE 変数として再び保管される。 This quotient is stored again as a new CODE variable. 段階1030において、整数除算の剰余は保管され、所与のチャネル及びサブバンドの組0に関連付けられたサンプルとして記憶される。 In step 1030, the remainder of the integer division is stored, is stored as a sample associated with the set 0 for a given channel and subband. 段階1032では、 In step 1032,
サンプルが 14 ビットだけ左へけた送りされ、サンプルが左位置調整される。 Sample is Ketaokuri left by 14 bits, the sample is left justified. 段階1034では、整数除算を使用して CODE 変数が再度3で除される。 In step 1034, CODE variable using the integer division is divided by 3 again. この商を新しい This quotient new
CODE 変数として記憶する。 It is stored as a CODE variable. 段階1036に示すように、整数除算の剰余は所与のチャネル及びサブバンド値の組1のサンプルを構成する。 As shown in step 1036, the remainder of the integer division constitutes the sample set 1 of a given channel and sub-band values. 段1038では、次のサンプルが 14 ビット位置だけ左へけた送りされて再び左位置調整される。 In stage 1038, the next sample is adjusted again left position is Ketaokuri left by 14 bit positions. 段階1040において、CODE変数の最終値が最後に保管され、所与のチャネル及びサブバンドの組2のサンプルを構成する。 In step 1040, the final value of the CODE variable last saved, constituting the sample set 2 of a given channel and subband. 段階1042では、最終サンプルが 14 ビット位置だけ左へけた送りされ、サンプルの左位置調整が行われる。 In step 1042, the final sample is Ketaokuri left by 14 bit positions, left position adjustment of the sample is performed. プロセスは段階1042 The process stage 1042
の後に終了する。 It ends after.

【0085】もし所与のチャネル及びサブバンドのための BPC 値が7に等しければ、プロセスは段階1044 [0085] If equal to BPC value for a given channel and subband 7, process steps 1044
へ進み、整数除算によって CODE 変数は〔 CODE 変数÷ Advances to, the CODE variable by an integer division [CODE variable ÷
5〕に等しくセットされる。 It is set equal to 5]. 段階1046では、所与のチャネル及びサブバンドの組0のサンプルが段階104 In step 1046, the sample stage set 0 for a given channel and subband 104
4で遂行された除算の剰余に等しくセットされる。 It is set equal to the remainder of the Committed divided by 4. 段階1048では、13 ビット位置だけ左へけた送りすることによってサンプルの左位置調整を行う。 In step 1048, it performs left position adjustment of the sample by Ketaokuri to the left by 13 bit positions. 段階1050 Stage 1050
では、整数除算によって CODE 変数が再び5で除される。 In, CODE variable by an integer division is divided by 5 again. この商は新しい CODE 変数として記憶される。 This quotient is stored as a new CODE variable. 段階1052では所与のチャネル及びサブバンドの組1のサンプルが、段階1050で遂行された整数除算の剰余に等しくセットされる。 Sample set 1 given in step 1052 the channel and subband is set equal to the remainder of performing integer division in step 1050. 段階1054では、サンプルが 1 In step 1054, the sample 1
3 ビット位置だけ左へけた送りされ、再度サンプルの左位置調整が行われる。 Is Ketaokuri left by 3 bit positions, left position adjustment of the sample is performed again. 段階1056においては、所与のチャネル及びサブバンドの組2のサンプルが、CODE 変数の最終値に等しくセットされる。 In step 1056, the sample set 2 of a given channel and subband is set equal to the final value of the CODE variable. 段階1058において、最終サンプルが 13 ビット位置だけ左へけた送りされ、左位置調整が行われる。 In step 1058, the final sample is Ketaokuri left by 13 bit positions, left position adjustment is performed. このプロセスは段階105 This process stage 105
8で終了する。 It ends at 8. 段階1026において、もし所与のチャネル及びサブバンドのための BPC 値が 10 に等しければプロセスは段階1060へ進み、整数除算演算によって CODE 変数は〔 CODE 変数÷9〕に等しくセットされる。 In step 1026, if BPC value for a given channel and subband advances to equal, the process steps 1060 to 10, CODE variable by an integer division operation is set equal to [CODE variable ÷ 9]. 段階1062では、所与のチャネル及びサブバンドの組0のサンプルが除算の剰余に等しくセットされる。 In step 1062, the sample set 0 for a given channel and subband is set equal to the remainder of the division.
段階1064では、12 ビット位置だけ左へけた送りすることによってサンプルの左位置調整を行う。 In step 1064, it performs left position adjustment of the sample by Ketaokuri to the left by 12 bit positions. 段階10 Stage 10
66では、整数除算によって CODE 変数が再び9で除される。 In 66, CODE variable by an integer division is divided again by 9. この商は新しい CODE 変数として記憶される。 This quotient is stored as a new CODE variable. 段階1068では所与のチャネル及びサブバンドの組1のサンプルが、段階1066で遂行された整数除算の剰余に等しくセットされる。 Sample set 1 given in step 1068 the channel and subband is set equal to the remainder of performing integer division in step 1066. 段階1070では、サンプルが In step 1070, the sample is
12 ビット位置だけ左へけた送りされ、サンプルの左位置調整が行われる。 Is Ketaokuri left by 12 bit positions, left position adjustment of the sample is performed. 段階1072においては、CODE 変数の最終値が所与のチャネル及びサブバンドの組2のサンプルの値を供給する。 In step 1072, the final value of the CODE variable supplies the value of the sample pairs 2 of a given channel and subband. 段階1074において、最終サンプルが 12 ビット位置だけ左へけた送りされ、左位置調整が行われる。 In step 1074, the final sample is Ketaokuri left by 12 bit positions, left position adjustment is performed. このプロセスは段階1074で終了する。 The process ends at step 1074. 図33に示したグループ復号プロセスによって生成されたサンプルは、図31の段階988で説明したようにそれらが演算ユニットバッファ30へ転送されるまでオーディオデコーダブロック28に関連付けられたスクラッチ RAM 内に記憶される。 Samples generated by the group decoding process shown in FIG. 33 is stored in the scratch RAM associated with the audio decoder block 28 until they, as described in step 988 of FIG. 31 is transferred to the arithmetic unit buffer 30 that. バッファ管理プロセスオーディオデコーダブロック28が入力バッファ24及び外部バッファ26に関してバッファ管理を遂行するために使用するプロセスを、図34及び35に示す。 The process used to perform buffer management with respect to the input buffer management processes audio decoder block 28 buffer 24 and the external buffer 26, shown in FIGS. 34 and 35. プロセスは段階1076から開始され、段階1076では R The process starts at step 1076, at step 1076 R
EPEAT 制御レジスタが試験される。 EPEAT control register is tested. REPEAT 制御レジスタは、同期誤りが存在していること、及びオーディオデコーダブロックがビットストリーム内の遥か前方にあり過ぎて同期を再入手するのを援助するにはあるフレームを繰り返す必要があることをマイクロプロセッサホスト12がオーディオデコーダブロック28に通告することによってセットすることができる。 REPEAT control register, a micro that the synchronization error be present, and the audio decoder block needs to repeat the frame that is to assist in re-obtain synchronization too much far ahead in the bitstream it can be a processor host 12 is set by notification to the audio decoder block 28. もし REPEAT 制御レジスタがセットされていれば、プロセスは分岐点Bから図35へ進められる。 If it is set if REPEAT control register, the process proceeds to Figure 35 from the branch point B. もし REPEAT 制御レジスタがセットされていなければ、段階1078において REPLAY フラグが調べられる。 If it is not set if REPEAT control register, REPLAY flag is checked in step 1078. もし REPLAY フラグがセットされていれば、段階1080は REPLAY If if the REPLAY flag is set, stage 1080 REPLAY CNT と最大許容再生計数とを比較する。 Comparing the CNT and the maximum allowable reproduction count. もし REPLAY If REPLAY CNT が最大許容再生計数より大きいか、もしくは等しければ、段階1082 CNT is the maximum allowable reproduction count is greater than, or equal, step 1082
において〔 GF In [GF SIZE+CF SIZE + CF SIZE+BAD SIZE + BAD BIT BIT CNT 〕 CNT]
に等しいビット数が入力バッファ24もしくは外部バッファ26において解放される。 Number of bits are released in the input buffer 24 or external buffer 26 equals. 段階1084では、GF In step 1084, GF
SIZE が0に等しくセットされ、良好フレームポインタ SIZE is set equal to 0, good frame pointer
( GF (GF PTR ) が0に等しくセットされ、そして BAD PTR) is set equal to 0, and BAD BI BI
T T CNT が0に等しくセットされる。 CNT is set equal to 0.

【0086】段階1080においてもし REPLAY [0086] If in step 1080 REPLAY CNT CNT
が最大許容再生計数より小さければプロセスは段階10 Step 10 but the process smaller than the maximum allowable reproduction count
80から段階1086へ進み、BAD Proceeds from 80 to stage 1086, BAD BIT BIT CNT が〔古い BAD CNT is [old BAD BIT BIT CNT +現フレームの大きさ〕に等しくなるように更新される。 CNT + is updated to be equal to the size] of the current frame. もし段階1078において REPLA If REPLA in step 1078
Y フラグがセットされていなければ、段階1088は R If no Y flag is not set, step 1088 is R
EPLAY EPLAY CNT 変数を0に等しくセットする。 The CNT variable is set equal to zero. 段階109 Stage 109
0では、SKIPフラグが検査される。 In 0, SKIP flag is examined. もし SKIP フラグがセットされていなければ、段階1092において SKIP If not if SKIP flag set, SKIP in step 1092
CNT 変数が0に等しくセットされる。 CNT variable is set equal to 0. もし段階109 If stage 109
0において SKIP フラグがセットされていれば、または段階1092から直接、プロセスは段階1094へ進み、AUTO Long as SKIP flag is set at 0, or directly from step 1092, the process proceeds to step 1094, AUTO BUFFER BUFFER SIZE フラグが調べられる。 SIZE flag is checked. 段階1 Stage 1
094においてもし AUTO If in 094 AUTO BUFFER BUFFER SIZE 機能が可能にされていれば、段階1096において AUDIO If it is possible SIZE function, AUDIO in step 1096 PTR が PTR is
NF NF PTR に等しくセットされる。 It is set equal to the PTR. プロセスは段階10 The process stage 10
84及び段階1086からも段階1096へ到達する。 84 and reaches the stage 1096 from step 1086.
段階1098では、現フレームポインタが CF In step 1098, the current frame pointer CF PTR に等しくセットされる。 It is set equal to the PTR. プロセスは、段階1100において REPEAT 、SKIP、REPLAY、NO Process, REPEAT at step 1100, SKIP, REPLAY, NO READ、MUTE、及び EC READ, MUTE, and EC
フラグをクリアして終了する。 To exit and clear flag.

【0087】段階1094においてもし AUTO [0087] If in step 1094 AUTO BUFFER BUFFER
SIZE フラグがセットされていなければ、段階110 If SIZE flag is not set, step 110
2において MAX MAX in 2 REPLAY 値が0と比較される。 REPLAY value is compared to 0. もし M If M
AX AX REPLAY 値が0に等しければ、段階1104において Equal REPLAY value is 0, in step 1104
GF GF SIZE 変数が調べられる。 SIZE variable is examined. もし GF If GF SIZE が0 SIZE is 0
に等しくなければ、段階1106は、〔 GF It is equal to, step 1106, [GF SIZE+ C SIZE + C
F F SIZE+ BAD SIZE + BAD BIT BIT CNT 〕に等しいビット数が入力バッファ24もしくは外部バッファ26において解放される。 Number of bits equal to CNT] is released in the input buffer 24 or external buffer 26. プロセスは段階1106から1108へ進み、GF The process proceeds from step 1106 to 1108, GF
SIZE が0に等しくセットされ、 BAD SIZE is set equal to a 0, BAD BIT BIT CNT が0に等しくセットされる。 CNT is set equal to 0. 次に段階1112へ進んで、 Then proceed to step 1112,
GF GF PTR が0に等しくセットされる。 PTR is set equal to 0. プロセスは段階1 By process step 1
112から上記段階1096へ進められる。 112 proceeds to the step 1096 from. 段階110 Stage 110
4において、もし GF In 4, if GF SIZE が0に等しければ段階1 If SIZE is equal to 0 stage 1
110において、現フレームの大きさに等しい数のビットが入力バッファ24もしくは外部バッファ26において解放される。 In 110, the bit number equal to the size of the current frame is released in the input buffer 24 or external buffer 26. 次いで上記段階1112へ進む。 Next, the routine proceeds to the step 1112. もし段階1102において MAX If MAX in step 1102 REPLAY 値が0に等しくないと決定されれば段階1114は NO If it is determined that the REPLAY value is not equal to 0 steps 1114 NO READ フラグを調べる。 Examine the READ flag. もし NO If NO READ フラグがセットされていれば、 If the READ flag is set,
プロセスは上記段階1104へ進められる。 The process proceeds to the step 1104. 段階111 Stage 111
4においてもし NO If NO in 4 READ フラグがセットされていないと決定されれば、段階1116は GF If it is determined that the READ flag is not set, step 1116 GF SIZE を調べる。 Examine the SIZE. もし GF If GF SIZE が0に等しくなければ、段階11 If there is no SIZE is equal to 0, step 11
18は入力バッファ24もしくは外部バッファ26内で〔 GF 18 denotes an input buffer 24 or within the external buffer 26 [GF SIZE+ BAD SIZE + BAD BIT BIT CNT 〕に等しい数のビットが解放される。 The number of bits to be released is equal to CNT]. 段階1120においては、BAD In stage 1120, BAD BIT BIT CN CN
T 変数が0に等しくセットされる。 T variable is set equal to 0. 段階1116においてもし GF If GF in step 1116 SIZEが0に等しければ、もしくは段階11 If SIZE is equal to 0, or step 11
20から直接、段階1122へ進み、GF Directly from the 20, the process proceeds to stage 1122, GF PTR が現フレームポインタに等しくセットされ、 GF PTR is set equal to the current frame pointer, GF SIZE が現フレームの大きさに等しくセットされる。 SIZE is set equal to the size of the current frame. プロセスは段階1 By process step 1
122から上記段階1096へ進められる。 122 proceeds to the step 1096 from.

【0088】図35の段階1124へは分岐点Bから到達し、REPEAT フラグが1に等しくセットされる。 [0088] The to step 1124 of FIG. 35 is reached from the branch point B, REPEAT flag is set equal to 1. 段階1126では、REPEAT 制御レジスタが0に等しくセットされる。 In step 1126, REPEAT control register is set equal to 0. 次の段階1128では、AUDIO In the next step 1128, AUDIO PTR 値が保管される。 PTR values ​​to be stored. 段階1130においては、REPLAY フラグが調べられる。 In step 1130, REPLAY flag is checked. もし REPLAY フラグがセットされていれば、段階1132は AUDIO If if the REPLAY flag is set, stage 1132 AUDIO PTR を〔 LGF The PTR [LGF PTR + 32 PTR + 32
ビット〕に等しくセットする。 It is set equal to bits]. 段階1130においてもし REPLAY フラグがセットされていなければ、段階11 If If REPLAY flag is not set in step 1130, steps 11
34は AUDIO 34 AUDIO PTR を〔現フレームポインタ+ 32 ビット〕に等しくセットする。 It is set equal to PTR to [the current frame pointer + 32 bit]. プロセスは段階1132もしくは段階1134から段階1136へ進んで、SKIP フラグを検査する。 The process proceeds from step 1132 or step 1134 to step 1136, it examines the SKIP flag. もし SKIP フラグがセットされていれば、段階1138は NO If it is if set SKIP flag, step 1138 NO READ フラグを1に等しくセットする。 It is set equal to READ flag to 1. プロセスは、段階1136において SKIP フラグがセットされていなければ、もしくは段階1138 Process, if SKIP flag is not set in step 1136, or step 1138
から直接段階1140へ進み、オーディオバッファレジスタの大きさが調べられる。 Proceeds from directly step 1140, the size of the audio buffer register is examined. もしオーディオバッファの大きさ機能が可能にされていれば、段階1142は NO If if it is possible to size function of the audio buffer, step 1142 NO
READ フラグを1に等しくセットする。 It is set equal to READ flag to 1. 段階1140 Stage 1140
においてオーディオバッファの大きさ機能が可能にされていなければ、もしくは段階1142から直接段階11 If it is not possible to size function of the audio buffer in or directly out from step 1142 11
44へ進み、オーディオフレームが復号される。 Advances to 44, the audio frame is decoded. オーディオフレームを復号するプロセスに関しては、図20及び21を参照して説明済である。 For the process of decoding the audio frame, it is already described with reference to FIGS. 20 and 21. プロセスは段階114 By process step 114
4から1146へ進み、AUDIO Proceeds from 4 to 1146, AUDIO PTR の保管された値が復元される。 The stored value of the PTR is restored. 次いでプロセスは接続点Aから図34の段階1076へ戻される。 Then the process is returned to step 1076 of FIG. 34 from the connecting point A. 一般的な復号動作図36はオーディオデコーダブロック28が遂行する一般的な復号動作を示している。 Common decoding operation Figure 36 is an audio decoder block 28 indicates a typical decoding operation performed. プロセスは、オーディオデコーダブロック28が提示タイムスタンプ(PTS ) 情報を処理する段階1150から開始される。 Process begins from step 1150 where the audio decoder block 28 handles the presentation time stamp (PTS) information. PTS データを処理するために使用されるプロセスに関しては図37 Figure respect process used to process the PTS data 37
を参照して後述する。 With reference to which will be described later. プロセスは段階1150から11 The process from the stage 1150 11
52へ進み、オーディオデコーダブロック28はオーディオフレームを復号する。 Advances to 52, the audio decoder block 28 decodes the audio frames. オーディオフレームを復号するためにオーディオデコーダブロック28が使用するプロセスに関しては、図20及び21を参照して説明済である。 For the process to be used by the audio decoder block 28 to decode the audio frame, it is already described with reference to FIGS. 20 and 21. 段階1154においてオーディオデコーダブロック28は、存在し得る補助データを処理する。 Audio decoder block 28 in step 1154, processes the auxiliary data that may be present. 補助データを処理するために使用されるプロセスに関しては図3 3 with respect to the process used to process the auxiliary data
8を参照して後述する。 8 referring to the later. 段階1156では、オーディオデコーダブロック28はバッファ管理を遂行する。 In step 1156, the audio decoder block 28 performs a buffer management. バッファ管理を遂行するために使用されるプロセスに関しては図34及び35を参照して説明済である。 With respect to the process used to perform the buffer management is already described with reference to FIGS. 34 and 35. 段階115 Stage 115
8では、先行HEADER レジスタに HEADER レジスタからの値がロードされる。 In 8, the value of the HEADER register prior HEADER register is loaded. 段階1160においては、SYNC In stage 1160, SYNC
LOOKAHEAD 機能が可能にされているか否かの決定がなされる。 LOOKAHEAD function possible has been that a determination is made whether. もし SYNC If SYNC LOOKAHEAD が可能にされていれば、 If LOOKAHEAD been possible,
段階1162において HEADERレジスタにビットストリーム内の次の 32 ビットがロードされる。 The next 32 bits in the bitstream HEADER register is loaded in step 1162. 段階1164 Stage 1164
では、オーディオデコーダは復号のためにフレームをセットアップする。 In the audio decoder sets up the frame for decoding. フレームをセットアップするために使用されるプロセスは、図16及び17を参照して説明済である。 Process used to set up the frame is already described with reference to FIGS. 16 and 17. プロセスは段階1164から段階1165へ進められて構文フラグが検査される。 Process syntax flag is tested advanced from step 1164 to step 1165. もし構文フラグが1 If syntax flag is 1
であれば、プロセスは後述する段階1180へ進む。 If, the process proceeds to step 1180, which will be described later. もし構文フラグが0であれば段階1166は、次のフレームの最初の語が入力バッファ24もしくは外部バッファ26内に存在しているか否かを決定する。 If step 1166 if the syntax flag is 0 determines whether the first word of the next frame is present at the input buffer 24 or external buffer 26. もし次のフレームの最初の語が入力バッファ24内に存在しなければ、段階1168は END If not present in the first word input buffer 24 in the next frame, step 1168 END OF OF STREAM フラグを調べる。 Examine the STREAM flag. もし END If END OF OF STREAM フラグがセットされていなければプロセスは段階1166へ戻される。 Unless STREAM flag is set the process is returned to step 1166. もし END If END
OF OF STREAM フラグがセットされていれば、段階1170 If STREAM flag is set, stage 1170
は SYNC SYNC is LOOKAHEAD フラグをクリアする。 To clear the LOOKAHEAD flag. 次いでプロセスは段階1172へ進み、MUTE フラグが1に等しくセットされる。 Then the process proceeds to step 1172, MUTE flag is set equal to 1. これでプロセスは段階1152へ戻る。 This process returns to step 1152.

【0089】段階1166においてもし次のフレームの最初の語が入力バッファ24内に存在していれば、段階1174は AUDIO [0089] if present in the first word input buffer 24 of the next frame in step 1166, stage 1174 AUDIO PTR を NF The PTR NF PTR の値に等しくセットする。 It is set equal to the PTR of value. 段階1176においては、ビットストリーム内の次の 12 ビットを調べて、それらが同期語を含むか否かを決定する。 In step 1176, examines the next 12 bits in the bit stream, they determine whether to include a synchronization word. もし次の 12 ビットが同期語を含んでいれば、段階1178は AUDIO If if is the next 12 bits contain the synchronization word, step 1178 AUDIO PTR を〔 CF The PTR [CF PTR + 3 PTR + 3
2 ビット〕の値にセットする。 To set the value of the 2 bit]. もし次の 12 ビットが同期語を含んでいなければ、プロセスは段階1176から段階1180へ進み、AUDIO If the next 12 bits does not contain a sync word, the process proceeds from step 1176 to step 1180, AUDIO PTR は〔 CF PTR is [CF PTR +1 PTR +1
ビット〕の値にセットされる。 Is set to the value of the bit]. 段階1181では、BAD In step 1181, BAD
BIT BIT CNT が1だけインクリメントされる。 CNT is incremented by 1. もし SYN If SYN
C C LOOKAHEAD 機能は可能にされているのに SYNC SYNC to LOOKAHEAD functions are possible LO LO
OKAHEAD機能に失敗すれば、プロセスは段階1180及び段階1181へ進められる。 If it fails to OKAHEAD function, the process proceeds to step 1180 and step 1181. 次いでプロセスは段階1 The process then stage 1
181 から段階1182へ進んで LOST Proceeds from 181 to step 1182 LOST SYNC 割込みをセットしなければならない。 You must set the SYNC interrupt. 段階1184において、 In step 1184,
オーディオデコーダブロック28は同期回復を遂行する。 Audio decoder block 28 performs a synchronization recovery. 同期回復手順に関しては、図14及び15を参照して説明済である。 For the synchronization recovery procedure is already described with reference to FIGS. 14 and 15. 同様に、段階1160においてもし S Similarly, if S in step 1160
YNC YNC LOOKAHEAD 機能が可能にされていなければ、段階1186は次の 12 ビットを調べ、それらが同期語を含むか否かを決定する。 If it is not possible LOOKAHEAD function, step 1186 examines the next 12 bits, they determine whether to include a synchronization word. もし次の 12 ビットが同期語を含んでいなければ、プロセスは段階1180へ進められて If you have not the next 12 bits contain the synchronization word, the process is advanced to step 1180
AUDIO AUDIO PTR は〔現フレームポインタ+1ビット〕にセットされる。 PTR is set to [current frame pointer +1 bit]. 段階1186において、もし次の 12 ビットが同期語を含んでいれば段階1188は HEADER レジスタに次の 20 ビットをロードする。 In step 1186, if the next 12 bits long contains synchronization word step 1188 loads the next 20 bits HEADER register. 段階1190では、図16及び17を参照して説明したようにしてフレームのセットアップ動作が遂行される。 In step 1190, frame setup operation is performed in the manner described with reference to FIGS. 16 and 17. 段階1191において、構文フラグが検査される。 In step 1191, the syntax flag is examined. もし構文フラグがセットされていれば、プロセスは段階1180へ進む。 If long syntax flag is set, the process proceeds to step 1180. そうでない場合にはプロセスは段階1150へ戻される。 If not, the process is returned to step 1150. 提示タイムスタンプ復号プロセス図37は、提示タイムスタンプを処理するためにオーディオデコーダブロック28が使用するプロセスを示す。 Presentation time stamp decryption process Figure 37 illustrates the process of the audio decoder block 28 is used to process the presentation time stamp.
このプロセスは、PTS フラグをクリアする段階1192 This process comprises the steps to clear the PTS flag 1192
から開示される。 It is disclosed from. 段階1194では、PTS In step 1194, PTS PTR 変数によって指し示されたアドレスからある値が読出され、提示タイムスタンプオーディオポインタ(PTS Value in the address pointed to by PTR variables are read, presented timestamp audio pointer (PTS AUDIO AUDIO P P
TR ) として記憶される。 Is stored as a TR). 段階1196においては PTS PTS in step 1196
AUDIO AUDIO PTR 値が調べられ、最上位ビット位置が1であることによってそれが無効であることを指示しているか否かが決定される。 PTR value is examined, whether it by the most significant bit position is 1 is instructed to be invalid is determined. もし PTS If PTS AUDIO AUDIO PTR が無効であればプロセスは終了する。 PTR is the process ends if the invalid. もし PTS If PTS AUDIO AUDIO PTR が有効アドレスであれば、段階1198は PTS If the PTR is valid address, stage 1198 PTS AUDIO AUDIO PTR PTR
と CF And CF PTR の値とを比較する。 It is compared with the PTR value. もし PTS If PTS AUDIO AUDIO PT PT
R が CF R is CF PTR より大きければ、オーディオデコーダブロック28は未だ PTS に達していないのであり、従ってプロセスは終了する。 Larger than PTR, there since the audio decoder block 28 has not yet reached the PTS, thus the process ends. もし PTS If PTS AUDIO AUDIO PTR が CF PTR is CF
PTR より小さいか、もしくは等しければ、オーディオデコーダブロック28は PTS に関連付けられたデータに達したか、もしくはそれを通過しており、従って段階1200において PTS が読出される。 Or PTR less than or equal, the audio decoder block 28 has been reached to the data associated with the PTS, or have passed through it, PTS is read Thus at step 1200. 段階1202ではPTS がオーディオデコーダブロック28に関連付けられた特別レジスタ内の PTS保持レジスタ内に記憶される。 In step 1202 PTS is stored in the PTS holding register in special registers associated with the audio decoder block 28. この PTS は、この PTS に関連付けられたフレームが PCM 出力ブロック36に達するまで PTS 保持レジスタ内に留まり、その時点になると PTS は PTS 保持レジスタから制御状態レジスタブロック22内の PTS This PTS is, PTS of the up PTS to the associated frame reaches PCM output block 36 remains in PTS holding register, the PTS in the control status register block 22 from the PTS holding register becomes to that point
レジスタへ転送される。 It is transferred to the register. 段階1204では、PTS オーディオポインタが最上位ビット位置に1を有する−1にセットされる。 In step 1204, is set to -1 PTS audio pointer has 1 to the most significant bit position. この値は無効値であり、プロセスを段階1196で終了せしめる。 This value is an invalid value, allowed to terminate the process at step 1196. 段階1206では、PTS フラグが1に等しくセットされる。 In step 1206, PTS flag is set equal to 1. 段階1208においては、PTS In stage 1208, PTS PTR が2だけインクリメントされる。 PTR is incremented by 2. プロセスは段階1210へ進み、新しい PTS The process proceeds to step 1210, the new PTS PTR が PTS トップ値と比較される。 PTR is compared with the PTS top value. もし PTS If PTS PTR が未だ PTS のトップ値に到達していなければプロセスは段階1194へ直接戻される。 If PTR is not yet reached the top value of the PTS process is directly returned to step 1194. PTS PTS PTR が PTS トップより大きければ、段階1212において PTS If PTR is greater than PTS top, PTS in step 1212 PTR が AUDIO PTR is AUDIO BUFFER BUFFER
SIZE レジスタ内に記憶されている値に等しくセットされる。 It is set equal to the value stored in SIZE register. これでプロセスは段階1212から段階119 Step 119 This process from step 1212
4へ戻る。 Back to 4. 補助データ処理プロセス図38は、ビットストリーム内に存在し得る補助データを復号し、処理するためにオーディオデコーダブロック28が使用するプロセスを示す。 Auxiliary data processing process Figure 38 decodes the auxiliary data that may be present in the bitstream, show a process of the audio decoder block 28 to process is used. プロセスは段階121 By process step 121
4から開始され、CF 4 is started from, CF SIZE が0と比較される。 SIZE is compared with 0. もし C If C
F F SIZE が0に等しく、ビットストリームが自由フォーマットであることを指示していれば、プロセスは段階1215へ進んで REPLAY 、REPEAT、NO SIZE is equal to 0, if the bit stream if it indicates that a free format, the process proceeds to step 1215 REPLAY, REPEAT, NO READ、SKIP、 READ, SKIP,
及び ECフラグが検査される。 And EC flags are examined. もしこれらのどのフラグもセットされていなければ、段階1216において自動語計数機能が終了させられる。 If not even if set any of these flags, the automatic word count function in step 1216 is terminated. 次いで段階1218は、 Then stage 1218,
AUDIO AUDIO PTR を SAVED AUDIO The PTR SAVED AUDIO PTR と名付けたある変数内に保管する。 Store in within a variable named PTR. 段階1220では、次の同期語が探知されるまで GSYN 命令が実行される。 In step 1220, GSYN instruction is executed until the next synchronization word is detected. 段階1222においては、 ANC In stage 1222, ANC SIZE 変数が〔 AUDIO SIZE variable [AUDIO PTR − SAVED AUD PTR - SAVED AUD
IO IO PTR − 12 〕に等しくセットされる。 PTR - is set equal to 12]. 次の段階12 The next step 12
24では、AUDIO At 24, AUDIO PTR が SAVED AUDIO PTR is SAVED AUDIO PTR 内に記憶されている値にリセットされる。 It is reset to the value stored in the PTR. 段階1225では、CF In step 1225, CF
SIZE が〔BIT SIZE is [BIT CNT + ANC CNT + ANC SIZE〕に等しくセットされる。 It is set equal to SIZE]. これでシステムは ANC The system is ANC SIZE変数に基づいて G G based on the SIZE variable
ET ANCILLARY 命令を使用して補助データを検索する準備が整う。 Ready to search for auxiliary data using the ET ANCILLARY instruction is ready.

【0090】段階1215において、もし REPLAY 、RE [0090] In step 1215, if REPLAY, RE
PEAT、NO PEAT, NO READ、SKIP、または ECフラグの何れかがセットされていれば、段階1217はこれらのフラグをクリアする。 READ, SKIP, or if it is either a set of EC flag, step 1217 clears these flags. 段階1219では BAD BAD In step 1219 BIT BIT CNT が BIT CNT is BIT
CNT だけインクリメントされる。 CNT is incremented by. 段階1221では、BI In step 1221, BI
T T CNT が0に等しくセットされる。 CNT is set equal to 0. 次いでプロセスは段階1223へ進み、図14及び15を参照して説明済の同期回復プロセスを遂行する。 Then the process proceeds to step 1223 and performs a synchronization recovery process described already with reference to FIGS. 14 and 15. 段階1214においてもし CF If CF in step 1214 SIZE が0に等しくなければ、段階1226 If there is no SIZE is equal to 0, stage 1226
は NO NO, READ、REPLAY、REPEAT、SKIP、及び EC フラグを調べる。 READ, REPLAY, REPEAT, SKIP, and the EC flag examined. もしこれらのフラグの何れかがセットされていれば、プロセスは終了する。 If it is if one set of these flags, the process ends. もしこれらのどのフラグもセットされていなければ、段階1228において補助データ及び補助あふれ割込みが調べられる。 If not even if set any of these flags, the auxiliary data and the auxiliary overflow interrupt is checked in step 1228. もしこれらの何れも可能にされていなければ、プロセスは終了する。 If it is not allowing any of these, the process ends. もし何れかの割込みが可能にされていれば、段階1 If it is possible to either interrupt if step 1
230において、ビット計数が CF In 230, the bit count is CF SIZE と比較される。 It is compared with the SIZE. もしビット計数が CF If the bit count is CF SIZE より大きければ、プロセスは終了する。 Greater than SIZE, the process ends. もしビット計数が CF If the bit count is CF SIZE より小さいか、もしくは等しければ段階1232において A SIZE is smaller than or equal, in stage 1232 A
NC NC SIZE 変数が〔 NF SIZE variable [NF PTR− AUDIO PTR- AUDIO PTR 〕に等しくセットされる。 Is set equal to the PTR]. 段階1234では、GET ANCILLARY (G In step 1234, GET ANCILLARY (G
ANC )データ命令を使用して ANC ANC Use the ANC) data instruction SIZE 変数に基づいてビットストリームから補助データを検索する。 Search for auxiliary data from the bit stream based on the SIZE variable. 段階1 Stage 1
234へは、上記段階1225からも到達する。 To 234 arrives from said step 1225. 次の段階1236では、補助割込みが調べられる。 In the next step 1236, the auxiliary interrupt is examined. もし補助割込みが可能にされていれば、段階1238において補助割込みがセットされる。 If it is possible if the auxiliary interrupt, the auxiliary interrupt is set in step 1238.

【0091】補助データの処理は、補助レジスタ及び補助使用可能レジスタの内容及び割込み6及び7によって制御される。 [0091] processing of the auxiliary data is controlled by the contents of the auxiliary register and the auxiliary register available and interrupts 6 and 7. もし割込み6もしくは7が可能にされていれば、到来補助データは補助レジスタ内へ挿入される。 If it is in interruptible 6 or 7 if the incoming auxiliary data is inserted into the auxiliary register.
前述したように、補助レジスタは少なくとも 32 ビットの補助データを保持する FIFO として機能する。 As described above, the auxiliary register serves as a FIFO for holding at least 32 bits of auxiliary data. もし割込み7がマスクされていれば、最も古いデータがビット単位で新しいデータと置換される。 If it is if the interrupt 7 is masked, the oldest data is replaced with the new data bit by bit. もし割込み7が可能にされていれば、補助データが一杯になるとシステム1 If it is in interruptible 7 if the auxiliary data is full when the system 1
4によって割込みが生成される。 4 interrupt is generated by the. もし割込みが生成されれば、マイクロプロセッサホスト12がデータを読出すか、もしくは割込みがマスクされるまでオーディオデータのさらなる処理は停止される。 If If interrupt is generated, the microprocessor host 12 further processes the audio data to read carded data or interrupt, is masked is stopped. 補助使用可能レジスタは、補助レジスタ内の使用可能なビット数を常に保持している。 Auxiliary registers available is always holds the number of bits available in the auxiliary register. 補助レジスタ内で 16 もしくは 32 ビットの補助データが使用可能である時、もしくはフレームの終わりに達した時には、割込み6が生成される。 Auxiliary data of 16 or 32-bit auxiliary register is time is available, or when it reaches the end of the frame, interrupt 6 is generated. 補助例を読出す前に、マイクロプロセッサホスト12は補助使用可能レジスタを読出して、使用可能な有効補助データビットの数を決定する。 Before reads auxiliary example, the microprocessor host 12 reads the auxiliary available registers, determines the number of available valid auxiliary data bits. マイクロプロセッサホスト12が補助使用可能レジスタを読出す時に、補助レジスタの内容が一時レジスタへ転送される。 When the microprocessor host 12 read the auxiliary available registers, the contents of the auxiliary register is transferred to a temporary register. マイクロプロセッサホスト12は、補助レジスタアドレスにアクセスすることによって一時レジスタから補助データを読出すことができる。 Microprocessor host 12, the auxiliary data from the temporary register by accessing the auxiliary register address can be read. 従ってマイクロプロセッサホスト12は、読出しプロセス中に補助レジスタ内へロードされ得る付加的な補助データの何れとも競合することなく補助データを使用することができる。 Thus the microprocessor host 12 may use the auxiliary data without any both conflicts additional auxiliary data that may be loaded during the read process to the auxiliary registers.

【0092】以上の記載に関連して、以下の各項を開示する。 [0092] In connection with the above described, discloses the following sections. 1. 1. マイクロプロセッサホスト回路と、上記マイクロプロセッサホスト回路に結合され、符号化されたデータを受信して上記符号化されたデータから選択された符号化されたオーディオデータを抽出するように動作可能であり、また上記選択された符号化されたオーディオデータを復号し、上記復号されたオーディオデータを出力するようにも動作可能な集積されたオーディオデコーダシステムと、上記集積されたオーディオデコーダシステムに結合され、上記復号されたオーディオデータをアナログ信号に変換するように動作可能なディジタル・アナログ変換器とを具備することを特徴とするデータ処理装置。 A microprocessor host circuit, coupled to said microprocessor host circuit, receives the encoded data is operable to extract the audio data selected coded from the coded data, the decoded audio data encoded that is the selected, and operable integrated audio decoder system also to output the audio data the decoded, is coupled to the integrated audio decoder system, the the data processing apparatus according to claim decoded audio data to and a operable digital-to-analog converter to convert the analog signal. 2. 2. 上記集積されたオーディオデコーダシステムが、 The integrated audio decoder system,
上記集積されたオーディオデコーダシステムを上記マイクロプロセッサホスト回路に結合するように動作可能なホストインタフェース回路と、上記ホストインタフェース回路に結合され、上記符号化されたデータを受信し、 The integrated audio decoder system and operable host interface circuit to be coupled to said microprocessor host circuit, coupled to said host interface circuit, receiving the encoded data,
上記符号化されたデータから上記符号化されたオーディオデータを抽出し、そして上記符号化されたオーディオデータを出力するように動作可能なシステムデコーダ回路と、上記システムデコーダに結合され、上記符号化されたオーディオデータを受信し、記憶し、そして出力するように動作可能な入力バッファ回路と、上記入力バッファ回路に結合され、上記入力バッファ回路から上記符号化されたオーディオデータを検索し、上記符号化されたオーディオデータを復号し、そして復号されたオーディオデータを出力するように動作可能なオーディオデコーダ回路と、上記オーディオデコーダに結合され、上記復号されたオーディオデータを受信し、記憶し、そして出力するように動作可能な演算ユニットバッファ回路と、上記演算ユニッ Extracting audio data said coded from the coded data, and a system decoder circuit operable to output the encoded audio data, is coupled to the system decoder is the coding receiving the audio data, stored, and a operable input buffer circuit to output, coupled to said input buffer circuit, it searches the audio data said coded from the input buffer circuit, the coding by decoding the audio data, and the operable audio decoder circuit to output the decoded audio data, coupled to said audio decoder, it receives the audio data the decoded, stored, and output and operable arithmetic unit buffer circuit as, the arithmetic unit バッファ回路に結合され、上記演算ユニットバッファ回路から上記復号されたオーディオデータを検索し、上記復号されたオーディオデータを量子化解除し、変換し、そして濾波し、そして濾波されたオーディオデータを出力するように動作可能な演算ユニット回路と、上記演算ユニット回路に結合され、上記濾波されたオーディオデータを受信し、記憶し、そして出力するように動作可能な出力バッファ回路と、上記出力バッファ回路と上記ディジタル・アナログ変換器とに結合され、上記出力バッファ回路から上記濾波されたデータを検索し、上記濾波されたデータを上記ディジタル・ Coupled to the buffer circuit, it searches the audio data the decoded from the arithmetic unit buffer circuit, the audio data the decoded dequantized, transformed and filtered, and then outputs the filtered audio data and operable arithmetic unit circuit as coupled to the arithmetic unit circuit, receiving the audio data the filtered, stored, and a operable output buffer circuit to output, the output buffer circuit and the coupled to a digital-to-analog converter, to find the filtered data from the output buffer circuit, the digital to the filtered data
アナログ変換器へ出力するように動作可能な出力回路とを備えている上記1項に記載のデータ処理装置。 The data processing apparatus according to claim 1 wherein that a operable output circuit so as to output to analog converter. 3. 3. 上記ホストインタフェース回路、上記システムデコーダ回路、上記入力バッファ回路、上記オーディオデコーダ回路、上記演算バッファ回路、上記演算ユニット回路、上記出力バッファ回路、及び上記出力回路が全て単一の半導体サブストレート上に配置されている上記2 Said host interface circuit, the system decoder circuit, the input buffer circuit, the audio decoder circuit, the arithmetic buffer circuit, the arithmetic unit circuit, the output buffer circuit, and the arrangement the output circuit are all on a single semiconductor substrate It has been above 2
項に記載のデータ処理装置。 The data processing apparatus according to claim. 4. 4. 上記オーディオデコーダブロックが、マイクロプログラムされた回路と、上記オーディオデコーダ回路が遂行する動作を定義するマイクロコードルーチンを記憶するように動作可能なマイクロプログラムメモリとを備えている上記2項に記載のデータ処理装置。 The audio decoder block, the data according to the circuit is a microprogram, to the two terms and a operable microprogram memory to store the microcode routine which the audio decoder circuit to define the behavior performed processing apparatus. 5. 5. 上記演算ユニットが、上記復号されたオーディオデータを順次に量子化解除し、変換し、そして濾波して上記濾波されたオーディオデータを形成するように動作可能な状態機械駆動回路を備えている上記2項に記載のデータ処理装置。 The arithmetic unit, the audio data the decoded sequentially dequantized, transformed and filtered to has a operable state machine drive circuit so as to form the audio data the filtered above 2 the data processing apparatus according to claim. 6. 6. 上記システムデコーダ回路と上記オーディオデコーダ回路とに結合され、付加的な符号化されたオーディオデータを受信し、記憶し、そして出力するように動作可能な外部バッファ回路をも備え、上記システムデコーダ回路及び上記オーディオデコーダ回路は上記外部バッファ回路の存在を検知するように動作可能であり、もし上記外部バッファ回路が存在すれば付加的な符号化されたオーディオデータを記憶するために上記外部バッファ回路を使用する上記2項に記載のデータ処理装置。 Coupled to the said system decoder circuit and the audio decoder circuit receives an additional encoded audio data, stored, and also includes an operable external buffer circuit to output, the system decoder circuit and the audio decoder circuit is operable to sense the presence of the external buffer circuitry, if using the external buffer circuitry for storing additional encoded audio data if there is the external buffer circuitry the data processing apparatus according to the above item 2 to. 7. 7. 上記システムデコーダ回路、上記入力バッファ回路、及び上記オーディオデコーダ回路が第1の半導体サブストレート上に配置され、上記外部バッファ回路が第2の半導体サブストレート上に配置されている上記6項に記載のデータ処理装置。 The system decoder circuit, the input buffer circuit, and the audio decoder circuit is disposed on the first semiconductor substrate, said external buffer circuit according to the second above item 6, which is disposed on a semiconductor substrate data processing equipment. 8. 8. 上記演算ユニット回路は、上記出力バッファ回路内に記憶させるためにパルス符号変調されたデータを形成して出力するように動作可能であり、上記ディジタル・アナログ変換器回路は、上記パルス符号変調されたデータを受信して上記パルス符号変調されたデータをアナログ信号に変換するように動作可能である上記2項に記載のデータ処理装置。 The arithmetic unit circuit is operable to output to form a pulse code modulated data to be stored in the output buffer circuit, said digital-to-analog converter circuit has been said pulse code modulation receiving data data processing apparatus according to the item 2 is operable to convert said pulse code modulated data into an analog signal. 9. 9. 上記集積されたオーディオデコーダシステムは、 The integrated audio decoder system,
上記マイクロプロセッサホスト回路及び上記オーディオデコーダ回路がアクセス可能な複数の制御及び状態レジスタをも備えている上記2項に記載のデータ処理装置。 The data processing apparatus according to item 2 in which the microprocessor host circuit and the audio decoder circuit is also provided with a plurality of control and status registers accessible. 10. 10. 上記マイクロプロセッサホスト回路は、直列符号化されたビットストリームを受信して上記直列符号化されたビットストリーム内に含まれる情報を複数の並列信号ラインを通して上記オーディオデコーダシステムへ出力するように動作可能であり、上記オーディオデコーダシステムは上記並列信号ラインを通して上記符号化されたデータを受信するように動作可能である上記1項に記載のデータ処理装置。 The microprocessor host circuitry operable information receives the serial coded bit stream included in the series encoded in the bit stream through a plurality of parallel signal lines so as to output to the audio decoder system There, the audio decoder system data processing apparatus according to claim 1 wherein is operable to receive the coded data through the parallel signal line. 11. 11. 上記オーディオデコーダシステムは、上記オーディオデコーダシステムへの直列符号化されたビットストリーム入力を通して上記符号化されたデータを受信するように動作可能である上記1項に記載のデータ処理装置。 The audio decoder system, the data processing apparatus according to claim 1 wherein is operable to receive the coded data through a series encoded bit stream input to the audio decoder system. 12. 12. 符号化されたデータを含む外部信号を受信するように動作可能なホストインタフェース回路と、上記ホストインタフェース回路に結合され、上記符号化されたデータを受信し、上記符号化されたデータから符号化されたオーディオデータを抽出し、そして上記符号化されたオーディオデータを出力するように動作可能なシステムデコーダ回路と、上記システムデコーダ回路に結合され、上記符号化されたオーディオデータをを受信し、記憶し、そして出力するように動作可能な入力バッファ回路と、上記出力バッファ回路に結合され、上記出力バッファ回路から上記符号化されたオーディオデータを検索し、上記符号化されたオーディオデータを復号し、そして復号されたオーディオデータを出力するように動作可能なオーディオデコーダ回 And operable host interface circuit to receive an external signal containing encoded data, coupled to said host interface circuit, receiving the encoded data, encoded from the encoded data the audio data extracted was, and the coded and operable system decoder circuit to output the audio data, coupled to said system decoder circuit receives the encoded audio data, stores and the operable input buffer circuit to output, coupled to said output buffer circuit, searches the audio data said coded from the output buffer circuit, and decodes the encoded audio data, and operable audio decoder times to output the decoded audio data と、上記オーディオデコーダに結合され、上記復号されたオーディオデータを受信し、記憶し、そして出力するように動作可能な演算ユニットバッファ回路と、上記演算ユニットバッファ回路に結合され、上記演算ユニットバッファ回路から上記復号されたオーディオデータを検索し、上記復号されたオーディオデータを量子化解除し、変換し、そして濾波し、 If, coupled to said audio decoder, receives the audio data the decoded, stored, and a operable arithmetic unit buffer circuit to output, coupled to said arithmetic unit buffer circuit, the arithmetic unit buffer circuit Find the audio data the decoded from the audio data the decoded dequantized, transformed, and filtering,
そして濾波されたオーディオデータを出力するように動作可能な演算ユニット回路と、上記演算ユニット回路に結合され、上記濾波されたオーディオデータを受信し、 Then the operable arithmetic unit circuits so as to output the filtered audio data, coupled to said arithmetic unit circuit, receiving the audio data the filtered,
記憶し、そして出力するように動作可能な出力バッファ回路と、上記出力バッファ回路に結合され、上記出力バッファ回路から上記濾波されたオーディオデータを検索し、上記濾波されたデータを出力するように動作可能な出力回路とを具備することを特徴とするオーディオ復号装置。 Stored, and the operable output buffer circuit to output, coupled to said output buffer circuit, searches the filtered audio data from the output buffer circuit, operable to output said filtered data audio decoding device characterized by comprising an output circuit capable. 13. 13. 上記ホストインタフェース回路、上記システムデコーダ回路、上記入力バッファ回路、上記オーディオデコーダ回路、上記演算バッファ回路、上記演算ユニット回路、上記出力バッファ回路、及び上記出力回路が全て単一の半導体サブストレート上に配置されている上記12項に記載のオーディオ復号装置。 Said host interface circuit, the system decoder circuit, the input buffer circuit, the audio decoder circuit, the arithmetic buffer circuit, the arithmetic unit circuit, the output buffer circuit, and the arrangement the output circuit are all on a single semiconductor substrate audio decoding device according to the item 12 being. 14. 14. 上記オーディオデコーダ回路が、マイクロプログラムされた回路と、上記オーディオデコーダ回路が遂行する動作を定義するマイクロコードルーチンを記憶するように動作可能なマイクロプログラムメモリとを備えている上記12項に記載のオーディオ復号装置。 The audio decoder circuit, audio according to the circuit is a microprogram, to the item 12, which has a operable microprogram memory to store the microcode routine which the audio decoder circuit to define the behavior performed decoding device. 15. 15. 上記演算ユニットが、上記復号されたオーディオデータを順次に量子化解除し、変換し、そして濾波して上記濾波されたオーディオデータを形成するように動作可能な状態機械駆動回路を備えている上記12項に記載のオーディオ復号装置。 The arithmetic unit, the has a operable state machine drive circuit as sequentially dequantized audio data the decoded, converted, and filtered to form the audio data the filtered 12 audio decoding apparatus according to claim. 16. 16. 上記システムデコーダ回路と上記オーディオデコーダ回路とに結合され、付加的な符号化されたオーディオデータを受信し、記憶し、そして出力するように動作可能な外部バッファ回路をも備え、上記システムデコーダ回路及び上記オーディオデコーダ回路は上記外部バッファ回路の存在を検知するように動作可能であり、もし上記外部バッファ回路が存在すれば付加的な符号化されたオーディオデータを記憶するために上記外部バッファ回路を使用する上記12項に記載のオーディオ復号装置。 Coupled to the said system decoder circuit and the audio decoder circuit receives an additional encoded audio data, stored, and also includes an operable external buffer circuit to output, the system decoder circuit and the audio decoder circuit is operable to sense the presence of the external buffer circuitry, if using the external buffer circuitry for storing additional encoded audio data if there is the external buffer circuitry audio decoding device according to the item 12 to be. 17. 17. 上記システムデコーダ回路、上記入力バッファ回路、及び上記オーディオデコーダ回路が第1の半導体サブストレート上に配置され、上記外部バッファ回路が第2の半導体サブストレート上に配置されている上記1 The said system decoder circuit, the input buffer circuit, and the audio decoder circuit is disposed on the first semiconductor substrate, said external buffer circuit is disposed on the second semiconductor substrate 1
6項に記載のオーディオ復号装置。 Audio decoding apparatus according to paragraph 6. 18. 18. 上記演算ユニット回路は、上記出力バッファ回路内に記憶させるためにパルス符号変調されたデータを形成して出力するように動作可能であり、上記オーディオ復号システムは上記出力回路に結合されているディジタル・アナログ変換器回路をも備え、上記ディジタル・ The arithmetic unit circuit is operable to output to form a pulse code modulated data to be stored in the output buffer circuit, digital the audio decoding system coupled to said output circuit also includes an analog converter circuit, the digital
アナログ変換器回路は、上記パルス符号変調されたデータを受信して上記パルス符号変調されたデータをアナログ信号に変換するように動作可能である上記12項に記載のオーディオ復号装置。 Analog converter circuit, an audio decoding apparatus according to the item 12 is operable to convert the received the pulse code modulated data is the pulse code modulated data into an analog signal. 19. 19. マイクロプロセッサホスト回路及び上記オーディオデコーダ回路がアクセス可能な複数の制御及び状態レジスタをも備えている上記2項に記載のオーディオ復号装置。 Audio decoding apparatus according to the above item 2 the microprocessor host circuit and the audio decoder circuit is also provided with a plurality of control and status registers accessible. 20. 20. 上記オーディオ復号システムは、上記ホストインタフェース回路への直列符号化されたビットストリーム入力を通して上記符号化されたデータを受信するように動作可能である上記12項に記載のオーディオ復号装置。 The audio decoding system, the audio decoding apparatus described throughout the series encoded bit stream input to the paragraph 12 is operable to receive the encoded data to the host interface circuit. 21. 21. 上記ホストインタフェース回路に結合され、直列符号化されたビットストリームを受信して上記直列符号化されたビットストリーム内に含まれる情報を複数の並列信号ラインを通して上記ホストインタフェース回路へ出力するように動作可能なマイクロプロセッサホスト回路をも備え、上記ホストインタフェース回路は、複数の並列信号ラインを通して上記符号化されたデータを受信するように動作可能である上記12項に記載のオーディオ復号装置。 Coupled to said host interface circuit, operable to receive and output serially encoded bit stream information contained in the series encoded in the bit stream through a plurality of parallel signal lines to said host interface circuit such also comprise a microprocessor host circuit, the host interface circuit, an audio decoding apparatus according through a plurality of parallel signal lines in the paragraph 12 is operable to receive the encoded data. 22. 22. 符号化されたデータを復号する方法であって、 A method for decoding encoded data,
符号化されたデータを含む外部信号を受信する段階と、 The method comprising: receiving an external signal containing encoded data,
符号化されたデータから符号化されたオーディオデータをシステムデコーダ回路内において抽出する段階と、符号化されたオーディオデータをオーディオデコーダ回路内において復号し、復号されたオーディオデータを生成する段階と、復号されたオーディオデータを演算ユニット回路内において量子化解除し、量子化解除されたオーディオデータを生成する段階と、量子化解除されたオーディオデータを演算ユニット回路内において変換し、変換されたオーディオデータを生成する段階と、変換されたオーディオデータを演算ユニット回路内において濾波し、濾波されたオーディオデータを形成する段階と、濾波されたオーディオデータを出力する段階とを具備することを特徴とする方法。 A step of extracting encoded audio data from the encoded data in the system decoder circuit, the method comprising the encoded audio data by decoding in the audio decoder to generate the decoded audio data, decoding released quantization in the arithmetic unit circuit the audio data, and generating the audio data dequantized, converts the audio data dequantized in the arithmetic unit circuit, the converted audio data how to the steps to be generated, the converted audio data filtering in the arithmetic unit circuit, forming a filtered audio data, characterized by comprising the step of outputting the filtered audio data. 23. 23. システムデコーダ回路、オーディオデコーダ回路、及び演算ユニット回路が全て単一の半導体サブストレート上に配置されている上記22項に記載の方法。 System decoder circuit, an audio decoder, and methods described above 22, wherein the arithmetic unit circuits are all disposed on a single semiconductor substrate. 24. 24. 濾波されたオーディオデータをディジタル・アナログ変換器回路内においてアナログ信号に変換する段階をも備えている上記22項に記載の方法。 The method according to the above 22, wherein, also comprising the step of converting the analog signals in the filtered digital-to-analog converter circuit audio data. 25. 25. 符号化されたオーディオデータを復号する上記段階は、符号化されたオーディオデータを、マイクロプログラムされた回路と、オーディオデコーダ回路が遂行する動作を定義するマイクロコードルーチンを記憶するように動作可能なマイクロプログラムメモリとからなるオーディオデコーダ回路内において復号する段階を備えている上記22項に記載の方法。 Said step of decoding the encoded audio data, the encoded audio data, and microprogrammed circuit, operable micro to store microcode routine audio decoder circuit to define the behavior performed the method according to the above 22, wherein the includes a step of decoding in the audio decoder circuit comprising a program memory. 26. 26. 上記量子化解除、変換、及び濾波の諸段階は、 It said dequantization, transformation, and stages of filtering are
状態機械によって駆動される回路を備えた演算ユニット回路を使用して量子化解除し、変換し、そして濾波する諸段階からなる上記22項に記載の方法。 And dequantized using an arithmetic unit circuit including a circuit driven by a state machine, converted, and method according to the 22 Section consisting stages of filtering. 27. 27. 符号化されたオーディオデータを入力バッファ回路内に記憶する段階と、復号されたオーディオデータを演算ユニットバッファ回路内に記憶する段階と、濾波されたオーディオデータを出力バッファ回路内に記憶する段階をも備えている上記22項に記載の方法。 And storing the encoded audio data in the input buffer circuit, and storing the decoded audio data to the arithmetic unit buffer circuit, a step of storing the filtered audio data to the output buffer circuit also the method according to the above 22, wherein the includes. 28. 28. 第1のバッファ回路内の記憶装置から検索された符号化されたビットストリームを処理し、処理したデータを第2のバッファ回路へ出力するデータ処理装置であって、演算及び論理演算を遂行するように動作可能な演算論理ユニットと、上記演算論理ユニットに結合され、上記演算及び論理演算の遂行を指示するように動作可能な実行制御状態機械と、符号化されたビットストリームを処理するためにシステムが実行可能なマイクロコード命令のシーケンスを記憶する命令メモリとを具備し、上記命令メモリは、上記演算論理ユニット及び上記実行制御状態機械を含むシステムが実行することによって第1のバッファ回路からデータを検索させ、検索されたデータを復号させ、そして縮尺係数情報及び符号化されたサンプル情報を第2のバッ Processing the encoded bit stream retrieved from the storage device in the first buffer circuit, a data processing apparatus for outputting the processed data to the second buffer circuit, so performing the operation and logical operations system for processing and arithmetic logic unit operable, coupled to said arithmetic logic unit, an execution control state machine operable to instruct the execution of the arithmetic and logic operations, the encoded bit stream There comprising an instruction memory for storing a sequence of executable microcode instructions, said instruction memory, the data from the first buffer circuit by the system including the arithmetic logic unit and said execution control state machine is executed to search, the search data is decoded to and scale factor information and the encoded sample information second back ァ回路へ出力させるように動作可能な上記マイクロコード命令の集合を記憶することを特徴とするデータ処理装置。 A data processing device and to store the set of operable the microcode instructions to be outputted to § circuit. 29. 29. 上記データ処理装置が処理中のデータのフレームのフォーマットを指示する情報を記憶するフォーマットレジスタをも備え、上記命令メモリは符号化されたデータの異なるフォーマットの処理に関連付けられた処理ルーチンを記憶し、上記データ処理装置はフォーマットを識別する上記データに応答して上記命令メモリ内に記憶されている指示されたフォーマットに関連付けられた適切なルーチンを選択し、実行する上記28項に記載のデータ処理装置。 Also includes a format register storing information indicating a format of the frame data in the data processing device processing said instruction memory stores a processing routine associated with the processing of the different formats of data encoded, the data processor selects the appropriate routines associated with an instruction format in response to the data identifying the format stored in said instruction memory, a data processing apparatus according to 28, wherein executing . 30. 30. 上記データのフレームはMPEG標準構文を使用して所定のビットレートで符号化されたオーディオデータからなり、上記フォーマットレジスタはデータ処理装置が処理中のオーディオデータのフレームを符号化するために使用されたビットレートを識別するデータを記憶するように動作可能である上記29項に記載のデータ処理装置。 Frame of the data is made from the encoded audio data at a predetermined bit rate by using the MPEG standard syntax, the format register was used to encode a frame of audio data in the data processing apparatus processing the data processing apparatus according to the above 29, wherein it is operable to store data identifying the bit rate. 31. 31. 上記データのフレームはMPEG標準構文に関連付けられた特定の層を使用して符号化されたオーディオデータからなり、上記フォーマットレジスタは上記データ処理装置が処理中のオーディオデータのフレームを符号化するために使用された特定の層を識別するデータを記憶するように動作可能であり、上記命令メモリは符号化されたデータの異なる層の処理に関連付けられた処理ルーチンを記憶し、上記データ処理は特定の層を識別する上記データに応答して上記命令メモリ内に記憶されている指示された層に関連付けられた適切なルーチンを選択し、実行する上記29項に記載のデータ処理装置。 Frame of the data consists of encoded audio data using a specific layer associated with the MPEG standard syntax, the format register is to encode a frame of audio data in the data processing apparatus processing is operable to store data identifying specific layer used, the instruction memory stores a processing routine associated with the processing of different layers of data encoded, said data processing certain in response to the data identifying a layer selects the appropriate routines associated with a layer which is instructed is stored in the instruction memory, the data processing apparatus according to clause 29 to run. 32. 32. 上記データのフレームは符号化されたオーディオデータからなり、上記命令メモリは、現在処理中のフレームが誤りを含んでいることをデータ処理装置が決定した場合には、上記現在処理中のフレーム以外のデータを出力させるようにデータ処理装置が選択可能な、そして実行可能な誤り隠しルーチンを記憶するように動作可能である上記28項に記載のデータ処理装置。 Frame of the data consists of audio data encoded, said instruction memory, when that the data processing device to determine a frame currently being processed contains a error, other than the frame in the current process the data processing apparatus so as to output the data can be selected, and the data processing apparatus according to the 28 term is operable to store executable error concealment routine. 33. 33. 上記データ処理装置は、上記誤り隠しルーチンに使用される有効データフレームを第1のバッファ内に記憶することができるか否かを決定するために第1のバッファの大きさを決定するように動作可能であり、上記データ処理装置は、第1のバッファの大きさに応答してもし第1のバッファの決定された大きさが上記有効データフレームの記憶が可能であればデータ処理装置が処理中のフレームの記憶の他に有効データフレームの記憶をも必要とする特定の誤り隠しルーチンを選択し、実行する上記32項に記載のデータ処理装置。 Said data processor, operates to determine the size of the first buffer to determine whether it is possible to store the valid data frames to be used for the above-mentioned error concealment routine first buffer are possible, the data processing apparatus, if determinable magnitude of if the first buffer in response to the magnitude of the first buffer storage of the valid data frame the data processor is processing also select a specific error concealment routines that require in addition to the storage of valid data frames stored in the frame, the data processing apparatus according to 32, wherein executing. 34. 34. 上記誤り隠しルーチンの1つは、データ処理装置が現在処理中のフレームが誤りを含むことをデータ処理装置が見出した場合には、データ処理装置が現在処理中のフレームの代わりに最後に処理した有効フレームをデータ処理装置に出力させる上記33項に記載のデータ処理装置。 One of the error concealment routine, the data processing apparatus when the frame currently being processed is heading data processing apparatus that includes an error, the data processing device has processed the last place of the frame currently being processed the data processing apparatus according to the above 33, wherein for outputting the valid frame to the data processing device. 35. 35. 上記誤り隠しルーチンの1つは、沈黙したオーディオ出力に対応するデータをデータ処理装置に出力させる上記32項に記載のデータ処理装置。 It said one of the error concealment routine, the data processing apparatus according to 32, wherein to output the data corresponding to the audio output silence to the data processor. 36. 36. 上記誤り隠しルーチンの1つは、オーディオデータのあるフレームをデータ処理装置に破棄させ、オーディオデータの新しいフレームの処理を開始させる上記32項に記載のデータ処理装置。 One of the error concealment routine is discarded frames with audio data to the data processing apparatus, data processing apparatus according to 32, wherein for starting the processing of a new frame of audio data. 37. 37. 上記データのフレームはサブバンドに分割可能な符号化されたオーディオデータからなり、上記命令メモリはデータ処理装置が選択可能な、そして実行可能な処理ルーチンを記憶するように動作可能であり、上記処理ルーチンは、各サブバンドに関係付けられた所定の係数にアクセスさせ、上記所定の係数と上記オーディオデータのフレームとを結合させ、そして各サブバンドに関係付けられた音量を上記所定の係数を使用して独立的に調整できるようにサブバンドを所定の係数によって縮尺した処理済のデータを第2のバッファへ出力させる上記28項に記載のデータ処理装置。 Frame of the data is made dividable encoded audio data into sub-band, the instruction memory data processing apparatus can be selected, and is operable to store executable processing routine, the process routine is accessed a predetermined coefficient associated with each subband is bound and the predetermined coefficient and the audio data frame, and using the predetermined coefficient the volume associated with each sub-band the data processing apparatus according to the above 28, wherein for outputting the processed data that is scaled to the second buffer by the subband predetermined coefficient so as to be independently adjusted. 38. 38. 上記データのフレームはステレオチャネルに分割可能な符号化されたオーディオデータからなり、上記命令メモリはデータ処理装置が選択可能な、そして実行可能な処理ルーチンを記憶するように動作可能であり、 Frame of the data is made dividable encoded audio data in stereo channel, the instruction memory data processing apparatus can be selected, and is operable to store executable processing routines,
上記処理ルーチンは、各ステレオチャネルに関係付けられた所定の係数にアクセスさせ、上記所定の係数と上記オーディオデータのフレームとを結合させ、そして各ステレオチャネルに関係付けられた音量を上記所定の係数を使用して独立的に調整できるように上記ステレオチャネルを上記所定の係数によって縮尺したデータを第2のバッファへ出力させる上記28項に記載のデータ処理装置。 The above processing routine is accessed predetermined coefficients associated with each stereo channel, the predetermined coefficient and the a frame of audio data is bound, and the volume of the predetermined coefficients associated with each stereo channel the data processing apparatus according to the stereo channels to allow independent adjustable to the 28 term of outputting data scaled by said predetermined factor to the second buffer using. 39. 39. 上記マイクロコード命令の少なくとも1つは、 At least one of said microcode instructions,
データ処理装置に第1のバッファからデータの所定数のビットを検索させるように動作可能な命令からなる上記28項に記載のデータ処理装置。 The data processing apparatus according to the above 28, wherein consisting instructions operable from the first buffer to the data processing apparatus for searching a predetermined number of bits of data. 40. 40. 上記マイクロコード命令の少なくとも1つは、 At least one of said microcode instructions,
データ処理装置に第1のバッファからデータの所定数のビットを検索させ、検索されたビットに関係付けられた巡回冗長コード値を計算させるように動作可能な命令からなる上記28項に記載のデータ処理装置。 Data processing apparatus to search a predetermined number of bits of data from the first buffer, the data according to the above 28, wherein consisting instructions operable to calculate the retrieved cyclic redundancy code value associated with the bit processing apparatus. 41. 41. 上記マイクロコード命令の少なくとも1つは同期命令からなり、上記同期命令は、データ処理装置に第1のバッファからデータのビットを検索させ、データ処理装置が上記同期命令を実行することによって第1のバッファ内に記憶されているビットシーケンス内で同期を取得できるように、検索されたビットを所定のビットパターンについて探索させるように動作可能である上記2 At least one of said microcode instructions consist synchronization instruction, the synchronization instruction to search the bit data from the first buffer to the data processing apparatus, data processing apparatus first performs the above synchronization command as can acquire the synchronization within the bit sequence stored in the buffer it is operable to search bit so as to search for a given bit pattern above 2
8項に記載のデータ処理装置。 The data processing apparatus according to item 8. 42. 42. 補助データレジスタをも備え、上記マイクロコード命令の少なくとも1つは、データ処理装置に、第1 Also includes an auxiliary data register, at least one of said microcode instructions, the data processing apparatus, the first
のバッファからデータの所定数の補助データビットを検索させ、上記補助データビットを上記補助データレジスタ内に記憶させるように動作可能な補助データ命令からなる上記28項に記載のデータ処理装置。 Of to search a predetermined number of auxiliary data bits of the data from the buffer, the data processing apparatus according to the auxiliary data bits in the 28 paragraph consisting operable auxiliary data instructed to be stored in the auxiliary data register. 43. 43. データ処理装置は、上記補助データレジスタ内に補助データが存在していることを指示する情報を選択可能に出力するように動作可能である上記42項に記載のデータ処理装置。 Data processing apparatus, data processing apparatus according to the above 42, wherein it is operable to the information for instructing to output selectable for the existence of the auxiliary data to the auxiliary data register. 44. 44. データ処理装置は、上記補助データレジスタ内に記憶されている補助データを新しい補助データで重ね書きする前に、オーディオデータの処理を選択可能に停止させるように動作可能である上記42項に記載のデータ処理装置。 Data processing apparatus, before overwriting the auxiliary data stored in the auxiliary data register in the new auxiliary data, according to the above 42, wherein it is operable to stop selectable processing of audio data data processing equipment. 45. 45. 第1のバッファ回路内の記憶装置から検索された符号化されたオーディオビットストリームを処理し、 Processing the encoded audio bit stream retrieved from the storage device in the first buffer circuit,
処理されたデータを第2のバッファ回路へ出力するデータ処理装置であって、演算及び論理演算を遂行するように動作可能な演算論理ユニットと、上記演算論理ユニットに結合され、上記演算及び論理演算の遂行を指示するように動作可能な実行制御状態機械と、符号化されたビットストリームを処理するためにデータ処理装置が実行可能なマイクロコード命令のシーケンスを記憶する命令メモリとを具備し、上記命令メモリは、上記演算論理ユニット及び実行制御状態機械を含むシステムが実行することによって第1のバッファ回路からデータのフレームを検索させ、検索されたデータを復号させ、そして縮尺係数情報及び符号化されたサンプル情報を第2のバッファ回路へ出力させるように動作可能な上記マイクロコード命令の集合を記 A data processing apparatus for outputting the processed data to the second buffer circuit, calculation and the operable arithmetic logic unit to perform a logical operation, is coupled to the arithmetic logic unit, the arithmetic and logical operations and operable execution control state machine to indicate the performance of, includes an instruction memory for storing a sequence of data processing devices execute microcode instructions in order to process the encoded bit stream, the instruction memory, to search the frame of data from the first buffer circuit by the system including the arithmetic logic unit and an execution control state machine is executed, to decode the retrieved data and the scale factor information and coding came operable set of the microcode instructions as to output the sample data to the second buffer circuit し、データ処理装置は更に、データ処理装置が処理中のオーディオデータのフレームの層及びサンプリングレートを指示する情報を記憶するフォーマットレジスタをも具備し、上記命令メモリは符号化されたデータの異なる層の処理に関係付けられた処理ルーチンを記憶し、データ処理装置は層を識別する上記データに応答して上記命令メモリ内に記憶されている指示された層に関係付けられた適切なルーチンを選択して実行し、上記命令メモリは、データ処理装置が選択可能な、 And further data processing apparatus, comprising also the format register for storing information indicating the layer and the sampling rate of a frame of audio data in the data processing apparatus is processing, the instruction memory is different data encoded layer stores a processing routine associated with the process, select the appropriate routine data processing apparatus which is related to the layer indicated in response to the data identifying a layer stored in said instruction memory and running, the instruction memory, the data processing apparatus can select,
そして実行可能な誤り隠しルーチンを記憶するように動作可能であり、上記誤り隠しルーチンは、データ処理装置が現在処理中のフレームが誤りを含んでいることをデータ処理装置が決定した場合にはデータ処理装置が現在処理中のフレーム以外のデータを出力させ、データ処理装置は、上記誤り隠しルーチンに使用されるオーディオデータの有効フレームを第1のバッファ内に記憶することができるか否かを決定するために第1のバッファの大きさを決定するように動作可能であり、データ処理装置は第1のバッファの大きさに応答してもし第1のバッファの決定された大きさが上記有効データフレームの記憶が可能であればデータ処理装置が処理中のフレームの記憶の他に有効データフレームの記憶をも必要とする特定の誤り隠しルーチ And is operable to store executable error concealment routine, the error concealment routine, when the frame being processed data processor currently determined data processing unit that contains the error data processing device to output the data other than the frame currently being processed, the data processing apparatus determines whether it is possible to store a valid frame of audio data used for the error concealment routine first buffer to operable to determine the size of the first buffer to the data processing apparatus if the first size is the effective data determined in the buffer in response to the magnitude of the first buffer specific error concealment routine as long as capable of storing the frame data processing device which also requires storage of valid data frames to other storage frame being processed を選択し、実行することを特徴とするデータ処理装置。 Select, data processing apparatus and executes. 46. 46. データ処理装置は、可変長のフレームに適応できる誤り隠しを行うために、各フレーム毎のオーディオデータを処理する前に第1のバッファの上記決定された大きさと各フレームの大きさとを比較するように動作可能である上記45項に記載のデータ処理装置。 Data processing apparatus, to perform error concealment to adapt to variable-length frames, so as to compare the size of the first of the determined size of the buffer and each frame before processing the audio data for each frame the data processing apparatus according to the above 45, wherein it is operable. 47. 47. 上記誤り隠しルーチンの1つは、データ処理装置が現在処理中のフレームが誤りを含むことをデータ処理装置が見出した場合には、データ処理装置が現在処理中のフレームの代わりに最後に処理した有効フレームをデータ処理装置に出力させる上記45項に記載のデータ処理装置。 One of the error concealment routine, the data processing apparatus when the frame currently being processed is heading data processing apparatus that includes an error, the data processing device has processed the last place of the frame currently being processed the data processing apparatus according to 45, wherein the to output the valid frame to the data processing device. 48. 48. 上記誤り隠蔽ルーチンの1つは、沈黙したオーディオ出力に対応するデータをデータ処理装置に出力させる上記47項に記載のデータ処理装置。 It said one of the error concealment routine, the data processing apparatus according to 47, wherein to output the data corresponding to the audio output silence to the data processor. 49. 49. 上記データのフレームはステレオチャネルに分割可能な符号化されたオーディオデータからなり、上記命令メモリは、データ処理装置が選択可能な、そして実行可能な処理ルーチンを記憶するように動作可能であり、上記処理ルーチンは、各ステレオチャネルに関係付けられた所定の係数にアクセスさせ、上記所定の係数と上記オーディオデータのフレームとを結合させ、そして各ステレオチャネルに関係付けられた音量を上記所定の係数を使用して独立的に調整できるように上記ステレオチャネルを上記所定の係数によって縮尺したデータを第2のバッファへ出力させる上記45項に記載のデータ処理装置。 Frame of the data is made dividable encoded audio data in stereo channel, the instruction memory, the data processing device is selectable, and is operable to store executable processing routines, the processing routine is accessed predetermined coefficients associated with each stereo channel, to combine the above predetermined coefficient and the audio data frames, and the predetermined coefficients the volume associated with each stereo channel the data processing apparatus according to 45, wherein the to output the data to the stereo channels as possible independently adjusted using the scale by the predetermined coefficient to the second buffer. 50. 50. 上記マイクロコード命令は、データ処理装置に第1のバッファからデータの所定数のビットを検索させ、データ処理装置に第1のバッファからデータの所定数のビットを検索させて検索されたビットに関係付けられた巡回冗長コード値を計算させ、データ処理装置に第1のバッファからデータの1つのビットを検索させてデータ処理装置が同期命令を実行することによって第1のバッファ内に記憶されているビットシーケンス内で同期を取得できるように、検索されたビットを所定のビットパターンについて探索させるように動作可能な異なる命令からなる上記45項に記載のデータ処理装置。 The microcode instructions from the first buffer to the data processing apparatus to search a predetermined number of bits of data, the data processing device to the first relation from the buffer to the bit retrieved by searching a predetermined number of bits of data to calculate the Tagged cyclic redundancy code value, from the first buffer by searching one-bit data the data processing apparatus is stored in the first buffer by performing a synchronization instruction to the data processing device as can acquire the synchronization within the bit sequence, the data processing apparatus according to 45, wherein consisting operable different instructions so as to explore the retrieved bits for a given bit pattern. 51. 51. 補助データレジスタをも備え、上記マイクロコード命令の少なくとも1つは、データ処理装置に、第1 Also includes an auxiliary data register, at least one of said microcode instructions, the data processing apparatus, the first
のバッファからデータの所定数の補助データビットを検索させ、上記補助データビットを上記補助データレジスタ内に記憶させるように動作可能な補助データ命令からなる上記45項に記載のデータ処理装置。 Of to search a predetermined number of auxiliary data bits of the data from the buffer, the data processing apparatus according to 45, wherein consisting operable auxiliary data commanded to store the auxiliary data bits in the auxiliary data register. 52. 52. 第1のデータバッファ内に記憶されている符号化されたオーディオデータを処理し、処理されたデータを第2のデータバッファ内に記憶させる方法であって、 Processing the coded audio data stored in the first data buffer, a method of storing the processed data in the second data buffer,
演算及び論理演算を演算論理ユニット内において遂行する段階と、演算論理ユニットに結合されている実行制御状態機械を用いて演算及び論理演算の遂行を指示する段階と、符号化されたビットストリームを処理するために装置が実行可能なマイクロコード命令のシーケンスを命令メモリ内に記憶する段階と、符号化されたオーディオデータを第1のバッファ回路から検索する段階と、縮尺係数情報及び符号化されたサンプル情報を第2のバッファ回路へ出力する段階と、装置が処理中のオーディオデータのフレームの層及びサンプリングレートを指示する情報をフォーマットレジスタ内に記憶する段階と、符号化されたデータの異なる層の処理に関係付けられた異なる処理ルーチンを記憶する段階と、命令メモリ内に記憶されている指示さ Treatment and the step of performing arithmetic and logical operations in the arithmetic logic unit, the method comprising instructing the operation and performance of the logical operation using the execution control state machine coupled to the arithmetic logic unit, an encoded bit stream and storing in the instruction memory a sequence of microcode instructions executable device to the steps of searching the audio data encoded from the first buffer circuit, the scale factor information and coded samples and outputting the information to the second buffer circuit, device and storing the information for instructing in format register layer and a sampling rate of a frame of audio data being processed, the different layers of encoded data and storing the different processing routines associated with the process, an instruction is stored in the instruction memory た層に関連付けられた適切なルーチンを選択して実行する段階と、誤り隠しルーチンに使用されるオーディオデータの有効フレームを第1のバッファ内に記憶することができるか否かを決定するために第1のバッファの大きさを決定する段階と、現在処理中のフレームが誤りを含んでいることが決定された場合には、現在処理中のフレーム以外のデータを出力させる誤り隠しルーチンを選択し、実行する段階とを具備し、上記誤り隠しルーチンを選択して実行する段階は、第1のバッファの大きさに応答し、処理中のフレームの記憶の他に有効データフレームの記憶をも必要とする特定の誤り隠しルーチンを選択し、実行することを特徴とする方法。 Comprising the steps of selecting and executing the appropriate routines associated with the layer was, in order to determine whether it is possible to store a valid frame of audio data to be used for error concealment routine first buffer determining a size of the first buffer, if it is determined that the frame currently being processed contains an error, select the error concealment routine to output the data other than the frame currently being processed , comprising a step of performing the steps of selecting and executing the error concealment routine is responsive to the magnitude of the first buffer, the need to store in addition to valid data frames stored in the frame being processed select a specific error concealment routine and, wherein the executing. 53. 53. 上記誤り隠しルーチンを選択して実行する段階は、現在処理中のフレームが誤りを含むことを見出した場合には、現在処理中のフレームの代わりに最後に処理した有効フレームを出力させる段階からなる上記52項に記載の方法。 Step selecting and executing the error concealment routine, when the frame currently being processed is found to contain errors comprises the step of outputting the effective frame processed last instead of the frame currently being processed the method described in 52, wherein. 54. 54. 上記誤り隠しルーチンを選択して実行する段階は、沈黙したオーディオ出力に対応するデータを出力させる段階からなる上記52項に記載の方法。 Step method described in 52, wherein comprising a step of outputting the data corresponding to the audio output was silence selecting and executing the error concealment routine. 55. 55. 第1のバッファ回路から検索された符号化されたデータを復号して濾波し、そして処理されたデータを第2のバッファ回路へ出力するデータ処理装置であって、第1のバッファ内に記憶されている符号化されたデータの第1のブロック内から符号化されたサンプルデータ及び縮尺係数情報を検索する回路と、縮尺係数情報を使用してサンプルデータを量子化解除し、量子化解除されたサンプルデータを形成する回路と、量子化解除されたサンプルデータを記憶する回路と、量子化解除されたサンプルデータを高速余弦プロセスを使用して変換し、 It decodes the encoded data retrieved from the first buffer circuit filters and the processed data to a data processing apparatus for outputting to the second buffer circuit, stored in the first buffer and that the first block of encoded data and a circuit for retrieving the coded sample data and scale factor information, the sample data dequantized using the scale factor information, it is dequantized a circuit for forming the sample data, a circuit for storing the sample data dequantized, the sample data dequantized and converted using a fast cosine process,
変換されたサンプルデータを形成する回路と、変換された量子化解除されたサンプルデータを記憶する回路と、 A circuit for forming the converted sample data, a circuit for storing the converted dequantized sample data,
上記第1のブロックの前に処理されたデータのブロックに関係付けられたパルス符号変調されたデータを使用して上記変換された量子化解除されたサンプルデータを濾波し、パルス符号変調されたデータを形成する回路と、 Filtering the sample data dequantized which is the transformed using pulse code modulated data associated with the block of the processed data prior to said first block, pulse code modulated data and a circuit to form,
上記パルス符号変調されたデータを第2のバッファ回路へ出力する回路とを具備することを特徴とするデータ処理装置。 The data processing apparatus characterized by comprising a circuit for outputting the pulse code modulated data to the second buffer circuit. 56. 56. 上記量子化解除回路、変換回路、及び濾波回路は、加算回路及び乗算回路を備えた数学ユニット回路を構成している上記55項に記載のデータ処理装置。 The dequantization circuit, converter circuit, and filtering circuits, data processing apparatus according to 55, wherein constituting the mathematical unit circuit having a summing circuit and a multiplier circuit. 57. 57. 上記数学ユニット回路は、第1、第2、及び第3のオペランドを受信し、上記数学ユニット回路を通る単一のパスで、上記第1及び第2のオペランドの積を形成し、そして上記積と上記第3のオペランドとの和を形成する上記56項に記載のデータ処理装置。 The math unit circuit includes first, receives the second and third operand, in a single pass through the math unit circuit to form the product of the first and second operands, and the product a data processing apparatus according to the above paragraph 56 which forms the sum of the third operand. 58. 58. 上記乗算回路は、ブースエンコーダ回路と、上記ブースエンコーダ回路に結合されている複数の部分積ジェネレータ回路を備えている上記56項に記載のデータ処理装置。 The multiplication circuit, the data processing apparatus according a Booth encoder circuit, the above paragraph 56 which has a plurality of partial product generators circuit coupled to the Booth encoder circuit. 59. 59. 上記濾波回路は、乗算の数及び記憶される係数の数が、マトリクス乗算に関連付けられたそれらよりも少なくなるように、バタフライ演算子を使用して線形変換を遂行する回路からなる上記55項に記載のデータ処理装置。 The filter circuit, the number of numbers and stored by the coefficient of the multiplier is to be less than those associated with the matrix multiplication, in the 55, wherein the using the butterfly operators consisting performing circuit linear transformation the data processing apparatus according. 60. 60. 上記濾波回路は、濾波係数を記憶する係数回路と、上記係数回路にアクセスするための回路とからなる上記55項に記載のデータ処理装置。 It said filter circuit includes a coefficient circuit for storing the filter coefficient, the data processing apparatus according to 55, wherein comprising a circuit for accessing the coefficient circuit. 61. 61. 上記濾波回路は、複数の濾波係数を必要とする線形変換を遂行する回路からなり、オーディオデータのブロックの濾波中に遂行される少なくとも2つの分離した演算に同一の係数がそれぞれ使用されるように上記複数の濾波係数は対称である上記55項に記載のデータ処理装置。 The filtering circuit comprises a linear transformation that requires a plurality of filter coefficients from performing circuit, such that at least two separate identical coefficient computation is performed in the filtering of blocks of audio data are respectively used the data processing apparatus of the plurality of filter coefficients according to the 55 term is symmetrical. 62. 62. 上記量子化解除回路及び変換回路がアクセス可能な係数を記憶する読出し専用メモリテーブルをも備えている上記55項に記載のデータ処理装置。 The data processing apparatus according to the above 55, wherein, also includes a read only memory table in which the dequantization circuit and conversion circuit stores accessible coefficients. 63. 63. 第1のバッファ、第2のバッファ、及び上記読出し専用メモリテーブルにアクセスするためにデータ処理装置が使用するアドレスを生成するアドレスジェネレータ回路をも備えている上記62項に記載のデータ処理装置。 The first buffer, the second buffer, and a data processing apparatus according to the above 62, wherein, also includes an address generator circuit for generating an address used by the data processor to access the read-only memory table. 64. 64. 上記符号化されたデータは、サブバンドサンプルデータ、縮尺係数情報、及び各サブバンドサンプルに関係付けられたビットの数に関係付けられていて量子化解除の目的に使用される情報からなり、オーディオデータのビットストリームに関係付けられた上記符号化されたデータはMPEG標準構文を使用して符号化されている上記55項に記載のデータ処理装置。 The encoded data becomes the subband sample data, scale factor information, and have been implicated in the number of bits associated with each sub-band samples from the information used for the purposes of dequantization, audio the encoded data associated with the bit stream data is a data processing apparatus according to 55, wherein that has been encoded using the MPEG standard syntax. 65. 65. 第1のバッファ回路から検索された符号化されたデータを復号して濾波し、処理したデータを第2のバッファへ出力するデータ処理装置であって、第1のバッファ内に記憶されている符号化されたデータの第1のブロック内から符号化されたサンプルデータ及び縮尺係数情報を検索する回路と、縮尺係数情報を使用してサンプルデータを量子化解除し、量子化解除されたサンプルデータを形成する数学ユニット回路と、量子化解除されたサンプルデータを記憶する回路と、を具備し、上記数学ユニット回路は、量子化解除されたサンプルデータを高速余弦プロセスを使用して変換し、変換されたサンプルデータを形成するようにも動作可能であり、変換された量子化解除されたサンプルデータを記憶する回路をも具備し、上記数学ユニット回 Decodes the encoded data retrieved from the first buffer circuit filters, there is provided a data processing apparatus for outputting the processed data to the second buffer, the code stored in the first buffer a circuit for retrieving the coded sample data and scale factor information from the first block of the encrypted data, the sample data dequantized using the scale factor information, the sample data dequantized comprising a mathematical unit circuit to be formed, a circuit for storing the sample data dequantized, and the math unit circuit, a sample data dequantized and converted using a fast cosine process is converted sample data is operable to form a, also comprising a circuit for storing the converted dequantized sample data, the mathematical unit dose は、上記第1のブロックの前に処理されたデータのブロックに関係付けられたパルス符号変調されたデータを使用して上記変換された量子化解除されたサンプルデータを濾波し、パルス符号変調されたデータを形成するようにも動作可能であり、上記数学ユニット回路がアクセス可能な係数を記憶する読出し専用メモリテーブルと、上記パルス符号変調されたデータを第2のバッファ回路へ出力する回路と、第1のバッファ、第2のバッファ、及び上記読出し専用メモリテーブルにアクセスするためにデータ処理装置が使用するアドレスを生成するアドレスジェネレータ回路をも具備することを特徴とするデータ処理装置。 Filters the sample data dequantized which is the transformed using pulse code modulated data associated with the block of the processed data prior to the first block, the pulse code modulation data is operable to form a, a read only memory table the math unit circuit stores accessible coefficients, a circuit for outputting the pulse code modulated data to the second buffer circuit, the first buffer, the second buffer, and a data processing apparatus characterized by comprising also an address generator circuit for generating an address used by the data processor to access the read-only memory table. 66. 66. 上記数学ユニット回路は乗算回路と加算回路とからなり、上記数学ユニット回路は、第1、第2、及び第3のオペランドを受信し、上記数学ユニット回路を通る単一のパスで、上記第1及び第2のオペランドの積を形成し、そして上記積と上記第3のオペランドとの和を形成する上記65項に記載のデータ処理装置。 The math unit circuit comprises a multiplier circuit and the adder circuit, the math unit circuit includes first, receives the second and third operand, in a single pass through the math unit circuit, the first and the product of the second operand is formed, and the data processing apparatus described in 65, wherein forming the sum of the product and the third operand. 67. 67. 上記乗算回路は、ブースエンコーダ回路と、上記ブースエンコーダ回路に結合されている複数の部分積ジェネレータ回路を備えている上記66項に記載のデータ処理装置。 The multiplication circuit, the data processing apparatus according a Booth encoder circuit, the above 66, wherein comprising a plurality of partial product generators circuit coupled to the Booth encoder circuit. 68. 68. 上記符号化されたデータは、サブバンドサンプルデータ、縮尺係数情報、及び各サブバンドサンプルに関係付けられたビットの数に関係付けられた情報からなり、オーディオデータのビットストリームに関係付けられた上記符号化されたデータはMPEG標準構文を使用して符号化されている上記66項に記載のデータ処理装置。 The encoded data, the subband sample data, scale factor information, and consists of information related to the number of bits associated with each sub-band samples, above associated with the bit stream of audio data the encoded data is data processing apparatus according to 66, wherein that has been encoded using the MPEG standard syntax. 69. 69. 第1のバッファ回路から検索された符号化されたデータを復号して濾波し、そして処理されたデータを第2のバッファ回路へ出力する方法であって、第1のバッファ内に記憶されている符号化されたデータの第1のブロック内から符号化されたサンプルデータ及び縮尺係数情報を検索する段階と、縮尺係数情報を使用してサンプルデータを量子化解除し、量子化解除されたサンプルデータを形成する段階と、量子化解除されたサンプルデータを記憶する段階と、量子化解除されたサンプルデータを高速余弦プロセスを使用して変換し、変換されたサンプルデータを形成する段階と、変換された量子化解除されたサンプルデータを記憶する段階と、上記第1のブロックの前に処理されたデータのブロックに関係付けられたパルス符号変調された Decodes the encoded data retrieved from the first buffer circuit filters and the processed data to a method for outputting to the second buffer circuit, it is stored in the first buffer a step of searching the first sample data and the scale factor information encoded from a block of coded data, the sample data dequantized using the scale factor information, sample data dequantized forming and a step of storing the sample data dequantized, the steps of the sample data dequantized and converted using a fast cosine process, to form a transformed sample data are converted and a step of storing the dequantized sample data was pulse code modulation associated with the block of the processed data prior to the first block ータを使用して上記変換された量子化解除されたサンプルデータを濾波し、パルス符号変調されたデータを形成する段階と、上記パルス符号変調されたデータを第2のバッファ回路へ出力する段階とを具備することを特徴とする方法。 Use over data filtering the sample data dequantized which is the conversion, and forming a pulse code modulated data, the step of outputting the pulse code modulated data to the second buffer circuit method characterized by comprising and. 70. 70. 上記量子化解除段階、変換段階、及び濾波段階は、加算回路及び乗算回路を備えた数学ユニット回路を使用して遂行される上記69項に記載の方法。 The dequantization step, conversion step, and filtering step, the method according to the above 69, wherein being accomplished using a mathematical unit circuit having a summing circuit and a multiplier circuit. 71. 71. 上記量子化解除段階は、上記数学ユニット回路において第1、第2、及び第3のオペランドを受信する段階と、上記数学ユニット回路を通る単一のパスで、上記第1及び第2のオペランドの積を形成し、そして上記積と上記第3のオペランドとの和を形成する段階とを備えている上記70項に記載の方法。 The dequantization stage, first in the mathematics unit circuit, receiving a second, and a third operand, in a single pass through the math unit circuit, the first and second operand forming a product, and the product and process according to the 70 paragraph that a step of forming a sum of the third operand. 72. 72. 上記量子化解除段階及び変換段階中に読出し専用メモリテーブルから係数を検索する段階をも備えている上記69項に記載の方法。 The method according to the above 69, wherein, also comprising the step of searching the coefficients from the read-only memory table during the dequantization stage and conversion stage. 73. 73. 第1のバッファ、第2のバッファ、及び読出し専用メモリテーブルにアクセスするためのアドレスを生成する段階をも備えている上記69項に記載の方法。 The first buffer, the second buffer, and methods described above 69, wherein, also comprising the step of generating an address for accessing the read only memory table. 74. 74. 上記符号化されたデータは、サブバンドサンプルデータ、縮尺係数情報、及び各サブバンドサンプルに関係付けられたビットの数に関係付けられた情報からなり、オーディオデータのビットストリームに関係付けられた上記符号化されたデータはMPEG標準構文を使用して符号化されている上記69項に記載の方法。 The encoded data, the subband sample data, scale factor information, and consists of information related to the number of bits associated with each sub-band samples, above associated with the bit stream of audio data encoded data method described in 69, wherein that has been encoded using the MPEG standard syntax. 75. 75. ビットシーケンスを受信して処理するデータ処理装置であって、受信されたビットシーケンスのデータビットを受信し、各々が受信されたビットシーケンスの複数のデータビットからなる複数の語として記憶するように動作可能な先入れ先出し(FIFO)レジスタと、 A data processing apparatus for receiving and processing the bit sequence, and receives data bits of the received bit sequence, operative to store a plurality of words each consisting of a plurality of data bits of the received bit sequence and first-in-first-out (FIFO) register that can be,
上記FIFO回路に結合され、上記語を受信して上記受信した語内のビットを直列に出力するように動作可能なシフタ回路と、上記シフタ回路に結合され、ビットシーケンス内に符号化されている所定のビットパターンを検出するように動作可能であり、またビットシーケンス内で検出された選択されたビットのグループを並列に出力するようにも動作可能な検出器回路と、上記シフタ回路と上記検出器回路とに結合され、上記シフタ回路及び上記検出器回路の動作を指示するように動作可能な制御論理回路と、上記検出器回路に結合され、上記検出器回路が出力した選択されたビットのグループを受信するように動作可能なバッファインタフェース回路とを具備することを特徴とするデータ処理装置。 Coupled to said FIFO circuit, and operable shifter circuit to output the bits in a word thus received serially receiving the word, coupled to said shifter circuit, it is encoded in the bit sequence It is operable to detect a predetermined bit pattern, also the operable detector circuits to output a group of bits selected is detected in the bit sequence in parallel, the shifter circuit and the detection coupled to the vessel circuit, and operable control logic to direct the operation of the shifter circuit and the detector circuit, coupled to said detector circuit, the bits the detector circuit is selected and output the data processing apparatus characterized by comprising the operable buffer interface circuitry to receive the group. 76. 76. 上記シフタ回路と上記制御論理回路とに結合され、けた送り計数値を記憶するように動作可能であり、 Coupled to the said shifter circuit and the control logic is operable to store Ketaokuri count,
また上記シフタ回路が上記検出器回路へビットを直列に出力すると上記けた送り計数値を変更するようにも動作可能なけた送りカウンタ回路をも備えている上記75に記載のデータ処理装置。 The data processing apparatus according to the 75 which the shifter circuit is also provided with a Ketaokuri counter circuit operable also to change the above Ketaokuri count value and outputs a bit serially to the detector circuit. 77. 77. 上記制御論理回路は所定のけた送り計数値を上記けた送りカウンタ回路へロードするように動作可能であり、上記けた送りカウンタ回路は各ビットが上記検出器回路へ出力されると上記けた送り計数値をデクレメントさせるように動作可能であり、それにより上記制御論理回路は上記検出器回路内へロードすべき特定のビットシーケンスの長さを上記所定のけた送り計数値を使用して指定できる上記76項に記載のデータ処理装置。 The control logic circuit is operable a predetermined Ketaokuri count to load into the Ketaokuri counter circuit, the Ketaokuri counter circuit as each bit is output to the detector circuit above Ketaokuri count is operable to decrement the, thereby the control logic can be specified using Ketaokuri counts the length of the predetermined specific bit sequence to be loaded into the detector circuit above 76 the data processing apparatus according to claim. 78. 78. データ処理装置が受信するビットシーケンスはMPEG標準構文を使用して符号化されたビットシーケンスからなり、上記制御論理回路はデータ処理装置が受信中のビットシーケンスの符号化層を指示する情報を受信するように動作可能である上記75に記載のデータ処理装置。 Bit sequence the data processing device receives consists bit sequence is encoded using the MPEG standard syntax, the control logic circuit receives information indicating an encoding layer of the bit sequence in the received data processing apparatus the data processing apparatus according to the 75 is operable. 79. 79. 上記制御論理回路及び上記検出器回路は、ビットシーケンス内の符号化されたデータのパケットの始まりを指示する開始コードを検出するように動作可能である上記75に記載のデータ処理装置。 The control logic circuit and the detector circuit, a data processing apparatus according to the 75 is operable to detect a start code indicating the beginning of a packet of the encoded data in the bit sequence. 80. 80. 上記ビットシーケンスは、ビットパケットに分割され且つビットシーケンスを形成するように互いに時分割された複数の異なるビットストリームを含む時分割直列ビットストリームを構成し、上記制御論理回路は複数のビットストリームのどれを復号するのかを指示する情報を受信するように動作可能であり、上記制御論理回路及び上記検出器回路は指示されたビットストリームを構成しているパケットを時分割直列ビットストリームから検出し、そして検索するように動作可能である上記7 The bit sequence constitutes the split serial bit stream when it contains a plurality of different bit streams which are divided at each other to and form a bit sequence is divided into bit packet, the control logic which of the plurality of bit streams is operable to receive information indicating whether to decode, the control logic circuit and the detector circuit detects a packet constituting the bit stream designated by the time division serial bit stream, and it is operable to search the 7
5に記載のデータ処理装置。 Data processing apparatus as claimed in 5. 81. 81. 上記制御論理回路及び上記検出器回路は、ビットシーケンス内の提示タイムスタンプを検出するように動作可能である上記75に記載のデータ処理装置。 The control logic circuit and the detector circuit, a data processing apparatus according to the 75 is operable to detect the presentation time stamp in the bit sequence. 82. 82. 上記制御論理回路及び上記検出器回路は、ビットシーケンス内の復号すべきビットストリームの部分の終わりを指示するストリームの終わりコードを検出するように動作可能であり、装置は上記検出器回路に結合されている一時ビット記憶回路をも備え、上記一時ビット記憶回路は上記ストリームコードの終わりの1つによって割込まれた不完全なグループをビットストリームから受信し、上記不完全なビットのグループの残余がビットシーケンスから検索されて上記不完全なビットのグループに連結できるようになるまで記憶するように動作可能である上記75に記載のデータ処理装置。 The control logic circuit and the detector circuit is operable to detect a stream end code which indicates the end of the portion of the decoded to be a bit stream in the bit sequence, the device is coupled to the detector circuit also includes a temporary bit storage circuits, the temporary bit storage circuit receives an incomplete group interrupted by one of the end of the stream code from the bit stream, the remainder of the group of the incomplete bit are retrieved from the bit sequence data processing apparatus according to the 75 is operable to store until it can be connected to a group of the incomplete bit. 83. 83. 上記制御論理回路及び上記検出器回路に結合され、復号すべきビットストリームの一部分の終わりを指示する情報を受信するように動作可能なストリームの終わりレジスタと、上記検出器回路に結合され、上記復号すべきビットストリームの一部分の終わりを指示する情報によって割込まれた不完全なグループをビットストリームから受信し、上記不完全なビットのグループの残余がビットシーケンスから検索されて上記不完全なビットのグループに連結できるようになるまで記憶するように動作可能な一時ビット記憶回路をも備えている上記75 Coupled to said control logic circuit and the detector circuit, and a register at the end of operable streams to receive information indicating the end of a portion of the bit stream to be decoded, coupled to said detector circuit, the decoding incomplete groups interrupted by information indicating the end of a portion of the should do the bit stream received from the bit stream, said incomplete bit groups remaining is retrieved from the bit sequence of the incomplete bit the also has an operable temporary bit storage circuits to store until it can be connected to a group 75
に記載のデータ処理装置。 The data processing apparatus according to. 84. 84. 上記バッファインタフェース回路に結合され、 Coupled to said buffer interface circuit,
バッファインタフェース回路から受信したビットを記憶するように動作可能なバッファ回路と、上記バッファインタフェース回路から上記バッファ回路へ出力されるビットを上記バッファ回路内の何処へ記憶させるかを指示する第1のアドレス値を生成するように動作可能な第1 First address instructions and operable buffer circuit to store bits received from the buffer interface circuit, the bits output from the buffer interface circuit to said buffer circuit or be stored anywhere in the buffer circuit the operable to generate the value 1
のアドレスカウンタ回路をも備えている上記75に記載のデータ処理装置。 The data processing apparatus according to the 75, also provided with the address counter circuit. 85. 85. 上記ビットシーケンスは提示タイムスタンプコードを含み、上記制御論理回路及び上記検出器回路はビットシーケンスから検索されるビットシーケンスの一部分に関連付けられた上記提示タイムスタンプコードを検出するように動作可能であり、データ処理装置が更に、 The bit sequence includes a presentation time stamp code, the control logic circuit and the detector circuit is operable to detect the presentation time stamp code associated with the portion of the bit sequence to be retrieved from the bit sequence, the data processing apparatus further
上記バッファインタフェース回路から上記バッファ回路へ出力される検出され検索された提示タイムスタンプコードを上記バッファ回路内の何処へ記憶させるかを指示する提示タイムスタンプアドレス値を生成するように動作可能な提示タイムスタンプアドレス回路をも備えている上記84に記載のデータ処理装置。 Operable presentation time to generate a presentation time stamp address value indicating whether to store the detected retrieved presentation time stamp code output from the buffer interface circuit to the buffer circuits to anywhere in the buffer circuit the data processing apparatus according to the 84, also includes a stamped address circuit. 86. 86. 完全MPEG構文多重化システムストリーム、 Complete MPEG syntax multiplexing system stream,
MPEG構文オーディオパケットからなるストリーム、 Stream of MPEG syntax audio packet,
及び圧縮されていないパルス符号変調されたオーディオデータからなるストリームからなるグループから選択された何れかの符号化構文を使用して符号化されたビットシーケンスを識別して処理するように動作可能である上記75に記載のデータ処理装置。 It is operable to process to identify the encoded bit sequence using one of the coding syntax and selected from the group consisting of compressed a pulse code modulated audio data is not stream the data processing apparatus according to the 75. 87. 87. 完全MPEG構文多重化システムストリーム、 Complete MPEG syntax multiplexing system stream,
MPEG構文オーディオパケットからなるストリーム、 Stream of MPEG syntax audio packet,
MPEG構文オーディオフレームからなるストリーム、 Stream of MPEG syntax audio frame,
及び圧縮されていないパルス符号変調されたオーディオデータからなるストリームからなる考え得るビットシーケンス構文のグループの少なくとも2つのビットシーケンスを識別して処理するように動作可能である上記75 The 75 and is operable to identify and process the at least two bit sequences of a group of compressed consists of a stream consisting of pulse code modulated audio data is not possible bit sequences Syntax
に記載のデータ処理装置。 The data processing apparatus according to. 88. 88. MPEG標準構文を使用して符号化されたビットシーケンスを受信して処理するデータ処理装置であって、受信されたビットシーケンスのデータビットを受信し、各々が受信されたビットシーケンスの複数のデータビットからなる複数の語として記憶するように動作可能な先入れ先出し(FIFO)レジスタと、上記FIFO A data processing apparatus for receiving and processing the encoded bit sequence using MPEG standard syntax, receives data bits of the received bit sequence, a plurality of data bits that are each received bit sequence and operable first-in-first-out (FIFO) register to store a plurality of words consisting of the FIFO
回路に結合され、上記語を受信して上記受信した語内のビットを直列に出力するように動作可能なシフタ回路と、上記シフタ回路に結合され、上記シフタ回路から出力されたビットシーケンスを受信するように動作可能であり、上記ビットシーケンス内に符号化されている所定のビットパターンを検出するようにも動作可能であり、 Coupled to circuit, receiving and operable shifter circuit to output the bits in a word thus received serially receiving the word, coupled to said shifter circuit, a bit sequence output from the shifter circuit operable to, and also operable to detect a predetermined bit pattern which is coded within the bit sequence,
またビットシーケンス内で検出された選択されたビットのグループを並列に出力するようにも動作可能な検出器回路と、上記シフタ回路と上記検出器回路とに結合され、上記シフタ回路及び上記検出器回路の動作を指示するように動作可能な制御論理回路と、上記検出器回路に結合され、上記検出器回路が出力した選択されたビットのグループを受信するように動作可能なバッファインタフェース回路と上記シフタ回路と上記制御論理回路とに結合され、けた送り計数値を記憶するように動作可能であり、また上記シフタ回路が上記検出器回路へビットを直列に出力すると上記けた送り計数値をデクレメントするように動作可能であり、それにより上記制御論理回路が上記検出器回路内へロードすべき特定のビットシーケンスの長さを上記け Further and operable detector circuit also outputs a selected group of bits is detected in the bit sequence in parallel, it is coupled to the said shifter circuit and the detector circuit, the shifter circuit and the detector and operable control logic to direct the operation of the circuit, coupled to said detector circuit, operable buffer interface circuit and the to receive a group of bits selected the detector circuit has an output coupled to a shifter circuit and the control logic is operable to store Ketaokuri count, also de the Ketaokuri count value when the shifter circuit outputs a bit serially to the detector circuit Clement operable to it by the length of a particular bit sequence the control logic circuit to be loaded into the detector circuit 送り計数値を使用して指定できるようにするけた送りカウンタ回路とを具備し、上記制御論理回路は、データ処理装置が受信しているビットシーケンスの符号化層を指示する情報を受信するように動作可能であり、上記制御論理回路及び上記検出器回路は、 Use feed count; and a Ketaokuri counter circuit that can be specified, the control logic to receive information indicating a coding layer of a bit sequence of the data processing apparatus is receiving operable, the control logic circuit and the detector circuit,
ビットシーケンス内の符号化されたデータのパケットの始まりを指示する開始コードを検出するように動作可能であり、上記制御論理回路及び上記検出器回路は、ビットシーケンス内の提示タイムスタンプを検出するようにも動作可能であることを特徴とするデータ処理装置。 Is operable to detect a start code indicating the beginning of a packet of data encoded in the bit sequence, said control logic circuit and the detector circuit is to detect the presentation time stamp in the bit sequence data processing apparatus, characterized in that also is operable. 89. 89. 上記ビットシーケンスは、ビットパケットに分割され且つビットシーケンスを形成するように互いに時分割された複数の異なるビットストリームを含む時分割直列ビットストリームを構成し、上記制御論理回路は複数のビットストリームのどれを復号するのかを指示する情報を受信するように動作可能であり、上記制御論理回路及び上記検出器回路は指示されたビットストリームを構成しているパケットを時分割直列ビットストリームから検出し、そして検索するように動作可能である上記8 The bit sequence constitutes the split serial bit stream when it contains a plurality of different bit streams which are divided at each other to and form a bit sequence is divided into bit packet, the control logic which of the plurality of bit streams is operable to receive information indicating whether to decode, the control logic circuit and the detector circuit detects a packet constituting the bit stream designated by the time division serial bit stream, and it is operable to search for the 8
8に記載のデータ処理装置。 The data processing apparatus according to 8. 90. 90. 上記制御論理回路及び上記検出器回路は、ビットシーケンス内の復号すべきビットストリームの部分の終わりを指示するストリームの終わりコードを検出するように動作可能であり、装置は上記検出器回路に結合されている一時ビット記憶回路をも備え、上記一時ビット記憶回路は上記ストリームコードの終わりの1つによって割込まれた不完全なグループをビットストリームから受信し、上記不完全なビットのグループの残余がビットシーケンスから検索されて上記不完全なビットのグループに連結できるようになるまで記憶するように動作可能である上記88に記載のデータ処理装置。 The control logic circuit and the detector circuit is operable to detect a stream end code which indicates the end of the portion of the decoded to be a bit stream in the bit sequence, the device is coupled to the detector circuit also includes a temporary bit storage circuits, the temporary bit storage circuit receives an incomplete group interrupted by one of the end of the stream code from the bit stream, the remainder of the group of the incomplete bit are retrieved from the bit sequence data processing apparatus according to the 88 is operable to store until it can be connected to a group of the incomplete bit. 91. 91. 上記バッファインタフェース回路に結合され、 Coupled to said buffer interface circuit,
バッファインタフェース回路から受信したビットを記憶するように動作可能なバッファ回路と、上記バッファインタフェース回路から上記バッファ回路へ出力されるビットを上記バッファ回路内の何処へ記憶させるかを指示する第1のアドレス値を生成するように動作可能な第1 First address instructions and operable buffer circuit to store bits received from the buffer interface circuit, the bits output from the buffer interface circuit to said buffer circuit or be stored anywhere in the buffer circuit the operable to generate the value 1
のアドレスカウンタ回路をも備えている上記88に記載のデータ処理装置。 The data processing apparatus according to the 88, also provided with the address counter circuit. 92. 92. 上記ビットシーケンスは提示タイムスタンプコードを含み、上記制御論理回路及び上記検出器回路はビットシーケンスから検索されるビットシーケンスの一部分に関連付けられた上記提示タイムスタンプコードを検出するように動作可能であり、装置が更に、上記バッファインタフェース回路から上記バッファ回路へ出力される検出され検索された提示タイムスタンプコードを上記バッファ回路内の何処へ記憶させるかを指示する提示タイムスタンプアドレス値を生成するように動作可能な提示タイムスタンプアドレス回路をも備えている上記84 The bit sequence includes a presentation time stamp code, the control logic circuit and the detector circuit is operable to detect the presentation time stamp code associated with the portion of the bit sequence to be retrieved from the bit sequence, device further operable to generate the presentation time stamp address value indicating whether to store the detected retrieved presentation time stamp code output from the buffer interface circuit to the buffer circuits to anywhere in the buffer circuit also it includes a presentation time stamp address circuit capable of the above-mentioned 84
に記載のデータ処理装置。 The data processing apparatus according to. 93. 93. ビットシーケンスを受信して処理する方法であって、受信されたビットシーケンスのデータビットを受信し、各々が受信されたビットシーケンスの複数のデータビットからなる複数の語として先入れ先出し(FIF A method for receiving and processing the bit sequence, and receives data bits of the received bit sequence, first-in first-out as a plurality of words each consisting of a plurality of data bits of the received bit sequence (FIF
O)レジスタ内に記憶する段階と、上記FIFOレジスタ回路に結合されているシフタ回路で上記語を受信し、 O) and storing in a register, receives the word in the shifter circuit coupled to said FIFO register circuit,
上記シフタ回路から受信した語内のビットを直列に出力する段階と、上記シフタ回路から上記シフタ回路に結合されている検出器回路へ出力されるビットを受信し、上記ビットシーケンス内に符号化されている所定のビットパターンを検出し、そしてビットシーケンス内で検出された選択されたビットのグループを並列に出力する段階と、上記シフタ回路と上記検出器回路とに結合されている制御論理回路を使用して上記シフタ回路及び上記検出器回路の動作を指示する段階と、上記検出器回路が出力した選択されたビットのグループを受信し、上記検出器回路に結合されているバッファインタフェース回路内に記憶する段階とを具備することを特徴とする方法。 And outputting the bits in a word received from the shifter circuit in series, receives the bits outputted from the shifter circuit to the detector circuit coupled to said shifter circuit, encoded in the bit sequence detecting a predetermined bit pattern which, and a step of outputting the group of bits selected is detected in the bit sequence in parallel, a control logic circuit coupled to the said shifter circuit and the detector circuit a step of directing the operation of the shifter circuit and the detector circuit using, receiving a group of bits the detector circuit is selected and output, in a buffer interface circuit coupled to said detector circuit method characterized by comprising the step of storing. 94. 94. 上記シフタ回路及び制御論理回路に結合されているけた送りカウンタ回路内にけた送り計数値を記憶し、シフタ回路が検出器回路へビットを直列に出力するとけた送り計数値を変更する段階をも含む上記93に記載の方法。 Storing Ketaokuri count in Ketaokuri counter in circuit coupled to said shifter circuit and the control logic circuit also comprises shifter circuit changes the Ketaokuri counts and outputs the bit serially to the detector circuit the method described in the above 93. 95. 95. けた送りカウンタ回路内に所定のけた送り計数値を記憶し、各ビットが上記検出器回路へ直列に出力されると上記けた送り計数値をデクレメントし、それにより上記検出器回路内へロードすべき特定のビットシーケンスの長さを上記所定のけた送り計数値を使用して指定できるようにする段階をも備えている上記93に記載の方法。 Storing a predetermined Ketaokuri count in Ketaokuri counter in the circuit, as each bit is output serially to the detector circuit to decrement the Ketaokuri count value, thereby to load into the detector circuit the method according to length of a particular bit sequence to the 93, also comprising the step to be specified using the predetermined Ketaokuri count should. 96. 96. 受信されるビットシーケンスはMPEG標準構文を使用して符号化されたビットシーケンスからなり、 Bit sequence received consists bit sequence is encoded using the MPEG standard syntax,
受信されるビットシーケンスの符号化された層を指示する情報を受信する段階をも備えている上記93に記載の方法。 The method according to the 93, also comprising the step of receiving information indicating the encoded layers of the bit sequence to be received. 97. 97. 符号化されたデータのパケットの始まりを指示する開始コード及び提示タイムスタンプをビットシーケンス内で検出する段階をも備えている上記93に記載の方法。 The method according to the 93 that also includes a start code and detecting a presentation time stamp in the bit sequence indicating the beginning of a packet of encoded data. 98. 98. 上記ビットシーケンスは、ビットパケットに分割され且つビットシーケンスを形成するように互いに時分割された複数の異なるビットストリームを含む時分割直列ビットストリームを構成し、上記方法が更に、複数のビットストリームのどれを復号するのかを指示する情報を受信する段階と、指示されたビットストリームを構成しているパケットを時分割直列ビットストリームから検出し、そして検索する段階をも備えている上記93に記載の方法。 The bit sequence constitutes the split serial bit stream when it contains a plurality of different bit streams which are divided at each other to and form a bit sequence is divided into bit packets, the method further which of a plurality of bit streams and receiving information indicating whether to decode, it detects a packet constituting the instruction bit stream from the time-division serial bit stream, and the method described in the above 93, also comprising the step of searching . 99. 99. ビットシーケンス内の復号すべきビットストリームの部分の終わりを指示するストリームの終わりコードを検出する段階と、上記ストリームコードの終わりの1つによって割込まれた不完全なグループをビットストリームから受信し、上記不完全なビットのグループの残余がビットシーケンスから検索されて上記不完全なビットのグループに連結できるようになるまで上記検出器回路に結合されている一時ビット記憶回路内に記憶する段階をも備えている上記93に記載の方法。 Receiving and detecting the end code of the stream indicate the end portion of the decoding to be a bit stream in the bit sequence, an incomplete group interrupted by one of the end of the stream code from the bit stream, also the step of residual groups of the incomplete bit is stored in the one o'clock bit storage circuit coupled to said detector circuit to be retrieved from the bit sequence will allow connection to a group of the incomplete bit the method according to the 93 that are provided. 100. 100. 復号システム(14)に結合されているマイクロプロセッサホスト(12)を含むデータ処理装置(10)が開示されている。 Data processing apparatus including a microprocessor host (12) coupled to the decoding system (14) (10) is disclosed. ホストインタフェースブロック(18)はビットストリームを受信し、ビットストリームをシステムデコーダブロック(20)へ渡す。 Host interface block (18) receives the bit stream and passes the bit stream to the system decoder block (20). システムデコーダブロック(20)はビットストリームから適切なデータを抽出して入力バッファ(24)または任意選択の外部バッファ(26)へロードする。 System decoder block (20) is loaded from the bit stream to the input buffer to extract the appropriate data (24) or an optional external buffer (26). オーディオデコーダブロック(28)は入力バッファ(24) Audio decoder block (28) is the input buffer (24)
からデータを検索し、縮尺計数索引、ビット/コードワード値、及びサブバンドサンプルを生成して演算ユニットバッファ(30)内に記憶させる。 From searching data, scale count index bits / codeword value, and generates a sub-band sample is stored in the arithmetic unit buffer (30). ハードウェアフィルタ演算ユニットブロック(32)は演算ユニットバッファ(30)から情報を検索し、データを量子化解除し、変換し、そして濾波してPCM出力データを生成してPCMバッファ(34)内へロードする。 Hardware filter operational unit block (32) retrieves the information from the arithmetic unit buffer (30), the data dequantized, transformed and filtered to generate the PCM output data to the PCM buffer (34) to load. PCMバッファ(34)内のデータはPCM出力ブロック(36) PCM buffer (34) data in the PCM output block (36)
によってディジタル・アナログ変換器(16)へ出力される。 It is output to the digital-to-analog converter (16) by.

【0093】以上に本発明を詳細に説明したが、上述した実施例には本発明の思想及び範囲から逸脱することなく種々の変化、置換及び変更を施すことが可能であり、 [0093] have been described above the present invention in detail, various changes without the embodiments described above departing from the spirit and scope of the present invention, it is possible to perform the substitutions and changes,
本発明は特許請求の範囲によってのみ限定されるものであることを理解されたい。 The present invention is to be understood that the invention is limited only by the appended claims.

【図面の簡単な説明】 BRIEF DESCRIPTION OF THE DRAWINGS

【図1】本発明の集積されたオーディオデコーダシステムを含むオーディオ復号システムのブロック線図である。 1 is a block diagram of an audio decoding system that includes an integrated audio decoder system of the present invention.

【図2】本発明の集積されたオーディオデコーダ内に使用されているシステムデコーダのブロック線図である。 2 is a block diagram of a system decoder which is used in the integrated audio in the decoder of the present invention.

【図3】本発明の集積されたオーディオデコーダ内に使用されているオーディオデコーダのブロック線図である。 3 is a block diagram of the audio decoder used in the integrated audio in the decoder of the present invention.

【図4】本発明の集積されたオーディオデコーダシステム内に使用されているハードウェアフィルタ演算ユニットのブロック線図である。 4 is a block diagram of a hardware filter arithmetic unit used in the integrated audio decoder system of the present invention.

【図5】本発明のハードウェアフィルタ演算ユニットによって使用されるアドレスジェネレーションシステムを示すブロック線図である。 5 is a block diagram showing an address generation system for use by the hardware filter operational unit of the present invention.

【図6】本発明のハードウェアフィルタ演算ユニット内に使用されている数学ユニットのより詳細なブロック線図である。 6 is a more detailed block diagram of the mathematical units used in the hardware filter arithmetic unit of the present invention.

【図7】ハードウェアフィルタ演算ユニットが遂行する量子化解除動作を示す流れ図である。 7 is a flow diagram illustrating a hardware filter operation unit performs dequantization operation.

【図8】ハードウェアフィルタ演算ユニットが遂行する高速余弦変換動作を示す流れ図である。 8 is a flow diagram illustrating a hardware filter operation unit performs fast cosine transform operation.

【図9】ハードウェアフィルタ演算ユニットが遂行する有限インパルス応答濾波動作の流れ図である。 9 is a flow diagram of a hardware filter operation unit performs a finite impulse response filtering operation.

【図10】本発明のオーディオデコーダシステムの一実施例のピンアウトの上面図である。 Figure 10 is a top view of a pin-out of an embodiment of an audio decoder system of the present invention.

【図11】オーディオデコーダブロックの高レベルアクティビティを示す流れ図である。 11 is a flow diagram illustrating a high-level activity of the audio decoder block.

【図12】使用可能なバッファメモリの大きさを調べるためにオーディオデコーダブロックが使用するプロセスを示す流れ図である。 12 is a flow diagram showing a process for the audio decoder block to examine the amount of available buffer memory is used.

【図13】オーディオ復号プロセス内に使用されているレジスタ及び変数をクリアし、初期化するためにオーディオデコーダブロックが遂行するプロセスを示す流れ図である。 [13] clears registers and variables are used in audio decoding in the process, is a flow diagram illustrating the audio decoder block performs a process to initialize.

【図14】オーディオデコーダブロックが到来ビットストリーム内の同期文字を探索し、同期を取得するプロセスを示す流れ図の一部分である。 [14] The audio decoder block searched synchronization character in the incoming bit stream is a portion of a flow diagram showing the process of obtaining the synchronization.

【図15】図14の流れ図の残余の部分である。 15 is a remaining portion of the flow diagram of FIG 14.

【図16】ビットストリーム内に見出しが探知された時にフレームをセットアップするためにオーディオデコーダブロックが使用するプロセスの流れ図の一部分である。 Figure 16 is a part of a flow diagram of the process of the audio decoder block is used to set up the frame when heading in the bitstream is detected.

【図17】図16の流れ図の残余の部分である。 17 is a remaining portion of the flow diagram of FIG 16.

【図18】フレームの大きさを計算するためにオーディオデコーダブロックが使用するプロセスの流れ図である。 [18] The audio decoder block in order to calculate the size of the frame is a flow diagram of the process used.

【図19】フレーム内に誤りを検出したか、同期ロック状態に到達しない場合にオーディオデコーダブロックが使用する誤り隠しプロセスの流れ図である。 [19] it has detected an error in the frame, is a flow diagram of an error concealment process audio decoder block uses when it does not reach the sync lock state.

【図20】オーディオフレームを復号するためにオーディオデコーダブロックが使用するプロセスの流れ図の一部分である。 Figure 20 is a part of a flow diagram of the process of the audio decoder block is used to decrypt the audio frame.

【図21】図20の流れ図の残余の部分である。 21 is a remaining portion of the flow diagram of Figure 20.

【図22】見出し内に含まれるサイド情報を復号するためにオーディオデコーダブロックが使用するプロセスの流れ図である。 22 is a flow diagram of a process for the audio decoder block uses to decode side information included in the heading.

【図23】ビットストリームが層1オーディオデータである場合にビット割当て情報を復号するためにオーディオデコーダブロックが使用するプロセスの流れ図である。 Figure 23 is a flow diagram of a process for bitstream audio decoder block is used to decode the bit allocation information when a layer 1 audio data.

【図24】フレームが層1オーディオデータである場合にビット割当て情報を復号するために使用されるプロセスの流れ図である。 [Figure 24] frame is a flow diagram of a process used to decode the bit allocation information when a layer 1 audio data.

【図25】層2MPEGオーディオデータに関連付けられた縮尺係数選択情報を検索するために使用されるプロセスの流れ図である。 It is a flow diagram of a process used to find the [25] layer 2MPEG scale factor selection information associated with the audio data.

【図26】層1MPEGオーディオデータのための縮尺係数索引を復号するためにオーディオデコーダブロックが使用するプロセスの流れ図である。 Audio decoder block to decode the scale factor index for FIG. 26 layer 1MPEG audio data is a flow diagram of the process used.

【図27】層1MPEGオーディオデータのサブバンド情報を復号するためにオーディオデコーダブロックが使用するプロセスの流れ図の一部分である。 [27] layer 1MPEG audio decoder block to decode the sub-band information of the audio data is part of a flow diagram of a process used.

【図28】図27の流れ図の残余の部分である。 Figure 28 is a remaining portion of the flow diagram of Figure 27.

【図29】層2MPEGオーディオデータのための縮尺係数索引を復号するためにオーディオデコーダブロックが使用するプロセスの流れ図の一部分である。 Audio decoder block to decode the scale factor index for [29] layer 2MPEG audio data is part of a flow diagram of a process used.

【図30】図29の流れ図の残余の部分である。 FIG. 30 is a remaining portion of the flow diagram of Figure 29.

【図31】層2MPEGオーディオデータのサブバンド情報を復号するためにオーディオデコーダブロックが使用するプロセスの流れ図の一部分である。 [Figure 31] layer 2MPEG audio decoder block to decode the sub-band information of the audio data is part of a flow diagram of a process used.

【図32】図31の流れ図の残余の部分である。 32 is a remaining portion of the flow diagram of Figure 31.

【図33】グループ復号を遂行するためにオーディオデコーダブロックが使用するプロセスの流れ図である。 33 is a flow diagram of a process for the audio decoder block to perform the group decoding is used.

【図34】入力バッファ及び外部バッファに関するバッファ管理を遂行するためにオーディオデコーダブロックが使用するプロセスの流れ図の一部分である。 FIG. 34 is a part of a flow diagram of the process of the audio decoder block is used to perform buffer management for the input buffer and the external buffer.

【図35】図34の流れ図の残余の部分である。 35 is a remaining portion of the flow diagram of Figure 34.

【図36】オーディオデコーダブロックが遂行する一般的な復号動作の流れ図である。 FIG. 36 is a flow diagram of a typical decoding operation audio decoder block performed.

【図37】提示タイムスタンプを処理するためにオーディオデコーダブロックが使用するプロセスの流れ図である。 [Figure 37] audio decoder block for processing the presentation time stamp is a flow diagram of the process used.

【図38】ビットストリーム内に存在し得る補助データを復号し、処理するためにオーディオデコーダブロックが使用するプロセスの流れ図である。 [Figure 38] decodes the auxiliary data that may be present in the bitstream, a flow diagram of a process of the audio decoder block is used for processing.

【符号の説明】 DESCRIPTION OF SYMBOLS

10 オーディオ復号システム 12 マイクロプロセッサホスト 14 オーディオデコーダシステム 16 ディジタル・アナログ変換器 18 ホストインタフェースブロック 20 システムデコーダブロック 22 制御状態レジスタブロック 24 入力バッファ 26 外部バッファ 28 オーディオデコーダブロック 30 演算ユニットバッファ 32 ハードウェアフィルタ演算ユニットブロック 34 PCMバッファ 36 PCM出力ブロック 38 FIFO 40 シフトレジスタ(シフタ) 42 シフタ検出器 44 シフタカウンタ 46 制御論理ブロック 48 シフタ複写レジスタ 50 制御カウンタ 52 制御カウンタ複写レジスタ 54 バッファインタフェースブロック 56 データアドレスカウンタ 58 PTSアドレスカウンタ 72 パケットバ 10 Audio decoding system 12 microprocessor host 14 audio decoder system 16 digital-to-analog converter 18 the host interface block 20 the system decoder block 22 control status register block 24 the input buffer 26 external buffer 28 audio decoder block 30 arithmetic unit buffer 32 hardware filter arithmetic BU 34 PCM buffer 36 PCM output block 38 FIFO 40 shift register (shifter) 42 shifter detector 44 shifter counter 46 the control logic block 48 shifter copy register 50 control counter 52 controls the counter copying register 54 buffer interface block 56 data address counter 58 PTS address counter 72 Pakettoba トカウンタ 80 マイクロプログラムROM 82 命令パイプレジスタ 84 命令マルチプレクサ 86 定数記憶装置 88 データバス 90 累算器バス 92 プログラムカウンタ 94 プログラムカウンタマルチプレクサ 96 インクリメンタ 98 定数記憶装置 100 サブルーチンスタック 102 分岐バス 104 実行制御状態機械 106 演算論理ユニット 108 制御マルチプレクサ 110 累算器 112 マルチプレクサ 114 データレジスタ 118 定数レジスタ 120 アドレスバス 122 バイパスマルチプレクサ 124 マルチプレクサ 126 データシフタ 128 けた送りカウンタ 130 ロードカウンタ 132 DRAM/SRAM制御装置 134 DRAMインタフェース 136 アドレスマルチプレクサ 138 特別レジス Tokaunta 80 microprogram ROM 82 instruction pipe register 84 instruction multiplexer 86 constant storage unit 88 data bus 90 accumulator bus 92 the program counter 94 the program counter multiplexer 96 incrementer 98 constant storage device 100 subroutine stack 102 branch bus 104 executes the control state machine 106 arithmetic logic unit 108 controls the multiplexer 110 accumulator 112 multiplexer 114 data register 118 constant register 120 the address bus 122 bypass multiplexers 124 multiplexer 126 data shifter 128 Ketaokuri counter 130 loads the counter 132 DRAM / SRAM controller 134 DRAM interface 136 address multiplexer 138 special Regis ブロック 140 nBAL及びBPCW ROM 142 RAMスクラッチパッド 144 ROM 150 サンプルメモリ 152 有限インパルス応答(FIR)メモリ 154 数学ユニット 156 累算器 158 レジスタ 160、162、164、166 マルチプレクサ 168 縮尺係数ROM 170 C/D係数ROM 172、174 アドレスレジスタ 176 マルチプレクサ 178 係数メモリ 180 バッファレジスタ 182 アドレスジェネレータ 184 シーケンスジェネレータ 186 アドレスROM 188 CSBBアドレス論理ブロック 190 FIRアドレス論理ブロック 192 SBBアドレス論理ブロック 194 係数アドレス論理ブロック 200 マルチプレクサ 202 ブースエンコーダ 204、206、208 部分積 Block 140 NBAL and BPCW ROM 142 RAM scratchpad 144 ROM 0.99 Sample memory 152 Finite Impulse Response (FIR) memory 154 math unit 156 accumulator 158 registers 160, 162, 164, 166 multiplexer 168 scale factor ROM 170 C / D coefficient ROM 172,174 address register 176 multiplexer 178 coefficient memory 180 buffer register 182 address generator 184 sequence generator 186 addresses ROM 188 CSBB address logic block 190 FIR address logic block 192 SBB address logic block 194 the coefficient address logic block 200 the multiplexer 202 booth encoder 204, 206 , 208 partial products ェネレータ 210、212、214 けた上げ/保管加算器 216 パイプラインレジスタ 218、220 マルチプレクサ 222 けた上げ/保管加算器 224 マルチプレクサ 225 定数記憶装置 226 けた上げ伝播加算器 228 飽和検出0強制ブロック 230 けた上げイン論理ブロック 232 けた上げ記憶レジスタ 234 けた上げ論理ブロック Enereta 210, 212, 214 carry / save adder 216 pipeline registers 218, 220 multiplexer 222 carry / save adder 224 multiplexer 225 constant storage device 226 carry propagate adder 228 saturation detection 0 forcing block 230 carry-in logic block 232 carry storage register 234 carry logic blocks

───────────────────────────────────────────────────── フロントページの続き (31)優先権主張番号 08/054127 (32)優先日 平成5年4月28日(1993.4.28) (33)優先権主張国 米国(US) (72)発明者 ジェラール バンバサ フランス 06570 サン ポール ド ヴァンス シュマン ド サン エティ アンヌ 746 (72)発明者 ケニス アール シア アメリカ合衆国 テキサス州 75007 キャロルトン コローニュ ドライヴ 2054 (72)発明者 スティーヴン エイチ リ アメリカ合衆国 テキサス州 75040 ガーランド キングスブリッジ ドライ ヴ 142 (72)発明者 ジョナサン エル ローランズ アメリカ合衆国 テキサス州 75229 ダラスタウンゼンド ドライヴ 3247 (72)発明者 シュー ワイ カム アメリカ合衆国 テキサス州 75082 リ ────────────────────────────────────────────────── ─── of the front page continued (31) priority claim number 08/054127 (32) priority date 1993 April 28 (1993.4.28) (33) priority country the United States (US) (72) inventor Gerard Banbasa France 06570 Saint-Paul-de-Vence Chemin de Saint Etty Anne 746 (72) inventor Kenneth Earl shea United States, Texas 75007 Carrollton Cologne DRIVE 2054 (72) inventor Steven H. Li United States, Texas 75040 Garland Kingsbridge dry Vu 142 (72) inventor Jonathan El Rowlands United States, Texas 75229 Dallas Townsend DRIVE 3247 (72) inventor shoe Wai cam United States, Texas 75082 Li チャードソン ウッドバリー プレイ ス 2101 (72)発明者 カレン エル ウォーカー アメリカ合衆国 テキサス州 75082 リチャードソン ウッドグレン ドライ ヴ 2305 (56)参考文献 特開 昭61−201526(JP,A) 特開 昭63−7023(JP,A) 特開 昭63−200633(JP,A) 特開 平3−263925(JP,A) 特開 平4−104617(JP,A) 特開 昭63−201700(JP,A) 特開 平4−104606(JP,A) 特開 平3−109824(JP,A) 特開 平3−171827(JP,A) (58)調査した分野(Int.Cl. 7 ,DB名) H03M 7/30 G10L 19/00 Chadoson Woodbury play scan 2101 (72) inventor Karen El Walker United States, Texas 75082 Richardson Wood Glen dry Vu 2305 (56) Reference Patent Sho 61-201526 (JP, A) JP Akira 63-7023 (JP, A) Patent Akira 63-200633 (JP, A) Patent Rights 3-263925 (JP, A) Patent Rights 4-104617 (JP, A) JP Akira 63-201700 (JP, A) Patent Rights 4 -104606 (JP, a) JP flat 3-109824 (JP, a) JP flat 3-171827 (JP, a) (58 ) investigated the field (Int.Cl. 7, DB name) H03M 7/30 G10L 19/00

Claims (3)

    (57)【特許請求の範囲】 (57) [the claims]
  1. 【請求項1】 音響心理学的モデルによるサブバンド符号化オーディオデータを含むデータストリームをデータ処理装置に取り込み、 前記の符号化オーディオデータを前記のデータストリームから分離してサブバンド符号化データのフレームのストリームを形成し、そのサブバンド符号化データの個々のフレームは複数のサブバンドサンプルコードを含んでおり、 前記のビットストリームから取り出されたスケール係数値を使用することにより、そしてデータ処理装置内の第1の記憶回路部分に記憶された係数表を使用することにより最新フレームのサブバンド符号化オーディオデータを量子化解除してディメンジョンnを有する最新のサブバンド・ベクトルを形成し、 高速直接余弦変換を使って前記の最新のサブバンド・ベクトルを変換し 1. A capture data stream containing sub-band encoded audio data according to the psychoacoustic model to the data processing apparatus, the subband coding data by separating the encoded audio data from said data stream a frame a stream formation, the individual frames of the subband coding data includes a plurality of sub-band samples encoded by using the scale factor values ​​retrieved from the bit stream, and the data processing device the first sub-band encoded audio data of the latest frame to form the latest sub-band vector with dimension n by dequantization by using the coefficient table stored in the storage circuit section, high-speed direct cosine of use the conversion to convert the latest of sub-band vector of the てディメンジョンnと同じディメンジョンmを有する最新v'ベクトルを形成し、 所定数の前のv'ベクトルと前記の最新のv'ベクトルとを含ませてV'ベクトルを形成し、そして一組の有限インパルスフイルタを使って前記のV'ベクトルを濾波して前記のデータ処理装置から出力するため一組のパルスコード変調(PCM)サンプルを形成することを特徴とするデータ処理装置内でデータのストリームを復号する方法。 'To form a vector, prior to v a predetermined number' latest v having the same dimension m and dimension n Te 'by including a vector V' latest v of the vector to form a vector, and a set of finite a stream of data in a data processing apparatus characterized by forming a set of pulse code modulation (PCM) samples for filters the aforementioned V 'vector with the impulse filter output from the data processing device of the method for decoding.
  2. 【請求項2】 前記の高速直接余弦変換は32ポイント高速直接余弦変換であり、そして前記の最新のv'ベクトルは32のディメンジョンmを有する請求項1に記載の方法。 Wherein said a high-speed direct cosine transform 32 point Fast direct cosine transformation, and the method of claim 1 wherein the latest v 'vector having a dimension m of 32.
  3. 【請求項3】 高速直接余弦変換は、シーケンシャルで、イテレートな仕方でバタフライ・オペレータを加え、そしてサブトラクト・オペレータを加える段階を備え、 前記のバタフライ・オペレータは、 y1=x1+x2と y2=(x1−x2)*d[i]の形 の一組の式(y1は最新のサブバンド・ベクトルの第1 3. A high-speed direct cosine transform, sequential, butterfly operator added iterate manner, and comprises a step of adding a subtraction operator, the butterfly operator, y1 = x1 + x2 and y2 = (X1- x2) * d [i] form of a set of equations (y1 is the first of the latest sub-band vector
    の要素に対する新しい値、y2は最新のサブバンド・ベクトルの第2の要素に対する新しい値、x1は最新のサブバンド・ベクトルの第1の要素に対する前の値、x2 The new values ​​for the elements, y2 is a new value for the second element of the latest sub-band vector, x1 the previous value for the first element of the latest sub-band vector, x2
    は最新のサブバンド・ベクトルの第2の要素に対する前の値、そしてd[i]は正と負の値によって挟まれている範囲内の一つの値を有する係数)に相当する仕方で前記の最新のサブバンド・ベクトルに作用し、そして前記のサブトラクト・オペレータは y1=x1と y2=x2−x1の形 の一組の式に相当する請求項2に記載の方法。 Before the value for the second element of the latest sub-band vector and d [i] is said in a manner corresponding to the coefficient) having one value in the range sandwiched by the positive and negative values acts on the latest sub-band vector, and method of claim 2 wherein the subtraction operator is equivalent to a set of equations of the form y1 = x1 and y2 = x2-x1.
JP2272994A 1992-02-22 1994-02-21 Integrated audio decoder device and method of operation Expired - Fee Related JP3217576B2 (en)

Priority Applications (8)

Application Number Priority Date Filing Date Title
US2100793 true 1993-02-22 1993-02-22
US08054768 US5657423A (en) 1993-02-22 1993-04-26 Hardware filter circuit and address circuitry for MPEG encoded data
US08054126 US5642437A (en) 1992-02-22 1993-04-26 System decoder circuit with temporary bit storage and method of operation
US08054127 US5729556A (en) 1993-02-22 1993-04-26 System decoder circuit with temporary bit storage and method of operation
US08/054768 1993-04-28
US08/054126 1993-04-28
US08/054127 1993-04-28
US08/021007 1993-04-28

Publications (2)

Publication Number Publication Date
JPH07143010A true JPH07143010A (en) 1995-06-02
JP3217576B2 true JP3217576B2 (en) 2001-10-09

Family

ID=27486974

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2272994A Expired - Fee Related JP3217576B2 (en) 1992-02-22 1994-02-21 Integrated audio decoder device and method of operation

Country Status (1)

Country Link
JP (1) JP3217576B2 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3427149B2 (en) * 1996-01-26 2003-07-14 三菱電機株式会社 Decoding circuit and the synchronization control method of a coded signal, the synchronization detecting circuit and a synchronization detection method
JPH10271082A (en) * 1997-03-21 1998-10-09 Mitsubishi Electric Corp Voice data decoder
DE102004059979B4 (en) * 2004-12-13 2007-11-22 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Device and method for calculating a signal power of an information signal

Also Published As

Publication number Publication date Type
JPH07143010A (en) 1995-06-02 application

Similar Documents

Publication Publication Date Title
US5794060A (en) General purpose, multiple precision parallel operation, programmable media processor
US5199078A (en) Method and apparatus of data reduction for digital audio signals and of approximated recovery of the digital audio signals from reduced data
US6446037B1 (en) Scalable coding method for high quality audio
US6058408A (en) Method and apparatus for multiplying and accumulating complex numbers in a digital filter
US6311161B1 (en) System and method for merging multiple audio streams
US6006318A (en) General purpose, dynamic partitioning, programmable media processor
US5949410A (en) Apparatus and method for synchronizing audio and video frames in an MPEG presentation system
US6081783A (en) Dual processor digital audio decoder with shared memory data transfer and task partitioning for decompressing compressed audio data, and systems and methods using the same
US6885992B2 (en) Efficient PCM buffer
US5893066A (en) Fast requantization apparatus and method for MPEG audio decoding
US7130952B2 (en) Data transmit method and data transmit apparatus
EP0957639A2 (en) Digital audio signal decoding apparatus, decoding method and a recording medium storing the decoding steps
US6282631B1 (en) Programmable RISC-DSP architecture
US6119091A (en) DVD audio decoder having a direct access PCM FIFO
US5835793A (en) Device and method for extracting a bit field from a stream of data
US6430533B1 (en) Audio decoder core MPEG-1/MPEG-2/AC-3 functional algorithm partitioning and implementation
US5777992A (en) Decoder for decoding and encoded digital signal and a receiver comprising the decoder
US6587823B1 (en) Data CODEC system for computer
US5845249A (en) Microarchitecture of audio core for an MPEG-2 and AC-3 decoder
US5860060A (en) Method for left/right channel self-alignment
US6145007A (en) Interprocessor communication circuitry and methods
US6774820B2 (en) Matrix improvements to lossless encoding and decoding
US6032081A (en) Dematrixing processor for MPEG-2 multichannel audio decoder
US6272153B1 (en) DVD audio decoder having a central sync-controller architecture
US7359006B1 (en) Audio module supporting audio signature

Legal Events

Date Code Title Description
R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20070803

Year of fee payment: 6

FPAY Renewal fee payment (prs date is renewal date of database)

Year of fee payment: 7

Free format text: PAYMENT UNTIL: 20080803

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080803

Year of fee payment: 7

FPAY Renewal fee payment (prs date is renewal date of database)

Year of fee payment: 8

Free format text: PAYMENT UNTIL: 20090803

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090803

Year of fee payment: 8

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100803

Year of fee payment: 9

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110803

Year of fee payment: 10

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110803

Year of fee payment: 10

FPAY Renewal fee payment (prs date is renewal date of database)

Year of fee payment: 11

Free format text: PAYMENT UNTIL: 20120803

LAPS Cancellation because of no payment of annual fees