JP3682863B2 - Speech decoding method and speech decoding apparatus - Google Patents
Speech decoding method and speech decoding apparatus Download PDFInfo
- Publication number
- JP3682863B2 JP3682863B2 JP2001212432A JP2001212432A JP3682863B2 JP 3682863 B2 JP3682863 B2 JP 3682863B2 JP 2001212432 A JP2001212432 A JP 2001212432A JP 2001212432 A JP2001212432 A JP 2001212432A JP 3682863 B2 JP3682863 B2 JP 3682863B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- data string
- point
- string
- fifo buffer
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
Description
【0001】
【発明の属する技術分野】
この発明はMPEG音声符号化復号化方法に準処した音声復号化方法及び音声復号化装置に関し、特に複数トラック(チャンネル)の同時再生機能を廉価、かつコンパクトなシステム上に実装する方法及び装置に関する。
【0002】
【従来の技術】
図4は4トラックのマルチトラックレコーダを構成した場合のデコーダ部(復号化部)の構成を示している。記憶媒体100から読み出された例えば各楽器別に記録されている4トラック分のビットストリーム(圧縮されているデータ列)がそれぞれ復号器101に入力され、出力されたPCMデータをミキサー102でミックスし、DA変換器103で2チャンネルのステレオ信号として再現し、音声信号1及び2を得る。
【0003】
復号器101はモノラルビットストリームを復号する復号器である。4トラックマルチトラックレコーダの場合、同じ構成のものが4つ並列に並ぶ。MPEGオーディオ勧告書(ISO/IEC11172−3Information t−echnonogy‐Coding of moving picturesand associated audio for digital sto−rage media at up to about 1.5 Mbit/s‐Part3:Audio 以下MPEG勧告書)で示される実装方法によれば、復号化処理においてサブバンドフィルタバンク処理で使用するメモリ使用量は復号器101で使用するメモリ使用量の大半を占める。しかも、サブバンドフィルタバンク処理で利用されるメモリ領域はフィルタリング処理の中間結果を保持するものであるためスタティックな領域に確保する必要がある。従って、他のトラックと共用することができない。
【0004】
図5は一つの復号器101の構成例である。MPEGオーディオLayerIIの場合、1152サンプルを1固まりとしてこれを1フレームと呼ぶ。1トラック分のビットストリームが圧縮データバッファ200にストアされ、1フレーム分のデータが溜まった時点でビットストリーム展開処理器201へ入力される。ビットストリーム展開処理器201では上述の勧告書で定められているフレームのアンパッキング処理、ビットアロケーション処理、スケールファクタ処理、サブバンドサンプル構成処理を経てサブバンドサンプルを出力する。210はサブバンドフィルタリング処理部を示す。このサブバンドフィルタリング処理部210で施される処理はMPEG勧告書に詳細が示されており、以下にその手順を示す。
手順1:j=0〜31について新しい32個のサブバンドデータSs[j]を入力する。
手順2:n=1023〜64についてV[n]=V[n−64]の処理を行うことでFIFOバッファ203の古い64個のデータを破棄し、次の手順3で得られる64個のデータのためのスペースを作る。
手順3:マトリクス演算処理を行う。マトリクス演算はn=0〜63について
【0005】
【数1】
【0006】
を算出することにより得られる。ただし、
【0007】
【数2】
【0008】
である。
手順4:i=0〜7、j=0〜31について512サンプルのベクトルUを構成する。Uは
U[64i+j]=V[128i+j] (3)
U[64i+32+j]=V[128i+96+j] (4)
の式で計算される。
手順5:512個の係数で窓掛けを行ってベクトルWを構成する。Wはm=0〜511について
W[m]=U[m]*D[m] (5)
を算出することで得られる。ただし、D[m]はMPEG勧告書の表B.3(Table B.3 Coefficients Di of systhesis window)で示されている512点の係数である。
手順6:j=0〜31について
【0009】
【数3】
【0010】
を計算して32個のPCMサンプル出力Sp[j]を得る。以下では図5に示したサブバンドフィルタリング処理部210で施される処理を上記手順と対応させて図5及び図6を用いて説明する。
手順1ではビットストリーム展開処理器201から得られたサブバンドデータを32個のデータ毎にマトリクス演算処理器202へ入力する。
手順2は1024点FIFOバッファ203−1を64点シフトして最も古い64個のデータを破棄する。この処理は通常は1024点FIFOバッファ203−1をFIFO(先入れ先出し)バッファとして構成することにより簡単に構成することができる。FIFOバッファは汎用DSP(デジタル・シグナル・プロセッサ)の機能として実装されているサーキュラアドレッシング(巡回アドレッシング)機能を使って容易に実現することができる。
【0011】
手順3はマトリクス演算処理器202に入力された32個のデータの入力に対してマトリクス演算処理を施し64個のデータを計算する処理である。マトリクス演算処理はcos係数の対称性、周期性を利用することにより、実装対象DSPにとって最も実行サイクルが少ない計算方式を選択して実装する。
式(2)は係数メモリ205(図5参照)上にcos係数のテーブルを保持しておくことで処理の度に計算することなく利用できる。手順4、手順5、手順6はメモリ節約のため中間結果であるベクトルUおよびベクトルWをバッファ上にとらず、1024点FIFOバッファ203−1から直接計算結果を得る。(3)式、(4)式で計算されるベクトルUはアドレス選択部301でアドレスを選択することで得られる。アドレス選択部302では係数メモリ206内のアドレスを選択しこれらの出力を使って乗算器303において(5)式に相当する乗算が行われる。アドレス選択部301および302はj(j=0〜31)によって32のアドレスを順番に選択する事を示している。i=0〜15についての乗算器303の出力結果を累積器304で累積した結果がPCM出力Sp[j]である。このSp[j]をj=0〜31について算出すれば32個のデータが得られる。
【0012】
【発明が解決しようとする課題】
MPEGオーディオ符号化復号方式を利用したマルチトラックレコーダの場合、トラック数を多く採るとトラック数に比例して利用するメモリ量が増加する。従って、高速なアクセス速度を持つDSPの内部RAMのみを利用して上記サブバンドフィルタリング処理部210を構成することが困難になる。
その結果としてアクセス速度の遅い外部RAM(DSPの外部にRAMを接続した場合、DSPとRAMとの間のデータの授受に時間がかかり、アクセス速度が遅くなる欠点がある)を利用するか、内部に大容量のRAM領域を装備した高価なDSPを選択せざるを得なくなるという問題があった。
【0013】
つまり、MPEGオーディオ勧告書で定義されている実装方法によれば、1024点FIFOバッファ203−1は(図6に示したように)アドレス32〜95、160〜223、288〜351、416〜479、544〜607、672〜735、800〜863、928〜991の全部で64×8=512アドレス分の領域がデータに遅延時間を与えるためのバッファとして流用されるから、無駄が多い。
ここで1024点FIFOバッファ203−1に空き領域が存在する理由を説明する。1024点FIFOバッファ203−1に1回に入力されるデータは64個のデータ列である。この64個のデータ列は図11に示すように前半の32個をAデータ列、後半の32個のデータ列をBデータ列と表記する。FIFOバッファ203−1は1024点のアドレスを有していることから、16回分のマトリクス演算結果を格納することができる。
【0014】
アドレス選択部301の各読み出し点i0〜i15では読出点i0は0〜31アドレス分読み出す。つまり最新のAデータ列を読み出す。
読出点i1では2個目に古いBデータ列を0〜31アドレス分読み出す。
読出点i2では3個目に古いAデータ列を0〜31アドレス分読み出す。
読出点i3では4個目に古いBデータ列を0〜31アドレス分読み出す。
従って、先に説明した勧告書に従ってFIFOバッファ203−1と読出点i0〜i15の読み出しを実行するためには各読出点i0〜i15ではAデータ列とBデータ列を交互に選び、且つデータ列の取り込み順序を1番ずつ繰上げて順番に選択することになる。図7に乗算器303の各入力端子X0〜X15に入力されるデータの配列を示す。各データ名A、Bのカッコ内はデータの取り込み順序に付した番号を表す。このデータの配列を得るためにFIFOバッファ203−1上に余分な記憶領域が必要となる。
【0015】
この発明の目的はFIFOバッファ203−1に無駄が生じることなく、従って最小アドレス容量で実現可能とした音声復号化方法及びこの復号化方法を用いて動作する音声復号装置を提案しようとするものである。
【0016】
この発明の請求項1では、帯域分割されたサブバンドデータにマトリクス演算処理を施し、マトリクス演算処理結果として所定サンプル数で構成され、データ値の配置形状がデータ列の所定サンプル点において前半部と後半部とで点対称となるAデータ列及び所定のサンプル点において前半部と後半部とで線対称となるBデータ列を求め、このAデータ列とBデータ列がマトリクス演算処理部から算出される毎にAデータ列とBデータ列の各データをFIFOバッファに蓄積し、FIFOバッファには過去複数回のマトリクス演算結果を配列し、新たにマトリクス演算結果がFIFOバッファに投入される毎にN回前に蓄積されたAデータ列とBデータ列をFIFOバッファから排出すると共に、このFIFOバッファに配列されたN回分のAデータ列とBデータ列を各取り込み回数の順序に従ってAデータ列とBデータ列を交互に抽出し、この抽出された各データに係数を乗算して窓掛け演算処理を施し、その演算結果を累積加算してPCM信号を生成する音声復号化方法において、マトリクス演算結果として得られるAデータ列の点対称となるデータ配列の前半部又は後半部の何れか一方及びBデータ列の線対称となるデータ配列の前半部又は後半部の何れか一方を切除し、残されたデータ量が半分のaデータ列とbデータ列をFIFOバッファに所定のマトリクス演算処理回数分蓄積させ、各蓄積回毎のaデータ列は点対称となるサンプル点を折返点として往復にわたり一方の読み出し時と他方の読み出し時は符号を異ならせて読み出すことにより元のデータ量を持つAデータ列を生成し、bデータ列は線対称となるサンプル点を折返点として往復にわたって読み出すことによって元のデータ量を持つBデータ列を生成し、生成された元のAデータ列及びBデータ列に窓掛け演算処理を実行してPCM信号を生成する音声復号化方法を提案する。
【0017】
この発明の請求項2では、記憶媒体から読み出された圧縮データを蓄積する圧縮データバッファと、この圧縮データバッファに所定量の圧縮データ列が読み出される毎に、圧縮された音声データ列にビットストリーム展開処理を施すビットストリーム展開処理器と、このビットストリーム展開処理器で展開され帯域分割されたサブバンドデータ列にマトリクス演算処理を施すマトリクス演算処理器と、このマトリクス演算処理器で演算処理された所定サンプル数のデータ列で構成され、データ値の配列形状がデータ列の所定サンプル点において前半部と後半部とで点対称となるAデータ列及び所定のサンプル点において前半部と後半部とで線対称となるBデータ列のそれぞれのデータ列の中から前半部又は後半部で構成される対称型の一方の部分を切除するデータ切除器と、
【0018】
このデータ切除器でデータの一部を切除した残りのaデータ列及びbデータ列をN回のマトリクス演算回数分配列して記憶するFIFOバッファと、このFIFOバッファから、aデータ列は点対称となるサンプル点を折返点とし往と復で異符号を付して往復にわたって読み出し、元のデータ量を持つAデータ列を生成し、bデータ列は線対称となるサンプル点を折返点として往復にわたって読み出し、元のデータ量を持つBデータ列を生成する読み出し手段と、この読み出し手段で生成したAデータ列及びBデータ列に係数を乗算し窓掛演算処理する乗算器と、この乗算器の乗算結果を累積加算し、PCM信号を生成する累積加算器と、によって構成したことを特徴とする音声復号装置を提案する。
【0019】
この縮小された配列からaデータ列及びbデータ列を読み出す際にその各aデータ列及びbデータ列を複数回読み出すことにより切除前の元のAデータ列及びBデータ列を再生し、この再生されたAデータ列及びBデータ列に窓掛け演算を施すことにより正規の音声信号を復号する。
従って、この発明によればaデータ列及びbデータ列を配列して記憶しておくFIFOバッファの記憶容量を半減させることができる。この結果、DSPの内部に装備しているRAMの容量でも、充分多チャンネルの復号装置を構成できることになる。従って、廉価なDSPで多チャンネルの音声再生器を構成することができる利点が得られる。
【0020】
ここでマトリクス演算処理されてFIFOバッファに投入されるAデータ列及びBデータ列が対称形になっていることについて説明する。
図5及び図6に示した係数メモリ205には(2)式に示すcos関数を表す係数が格納されている。図8及び図9に係数メモリ205に記憶している係数の一部を示す。この係数は(2)式にnの値と、kの値を代入して求めた値である。
因みに、図8に示すn=0とk=0の欄では(2)式にn=0とk=0を代入すると、
cos[(16+0)(1)]π/64=cos(16/64)π
となる。これを図10に示すcos曲線状に当て嵌めるとπ/4となりcos45°の値を意味する。
【0021】
n=0、k=1の場合は
となる。これをcos曲線上に当て嵌めるとπ/4の逆極性の値を採ることが分かる。従って、ここでは−cos(16/64)πと表記している。
図8及び図9に示す係数表で特異な点はn=16の点である。n=16の点ではkの値が0〜31(図では0〜7までを示す)の全てに対して−cos(32/64)πとなる。この値はcos(π/2)を意味し、cosπ/2=0となる。従って、ここではn=16で与えられるデータをD0と称することにする。
【0022】
更に、図9に示すn=48の点ではkの値に関係なく、係数は全て−cos(0/64)πとなる。つまり−cos0°を意味し、常に一定値−1となる。従って、ここではn=48で得られるデータをDCと称することにする。図8及び図9に示した係数を解析すると、マトリクス演算処理して求められる64個のデータの値は図11に示すように前半のAデータ列はゼロとなるデータD0を中心に点対称形となり、また後半のBデータ列は中央のデータDCを境に線対称形となることが解る。
【0023】
データD0はどの時点で出力されるAデータ列であってもゼロとなる。
この出願の発明者はこの点に着目し、対称型のデータ列の一方を切除してFIFOバッファに記憶させ、読出時に記憶しているデータ列を複数回読み出す(アドレスを逆向きに読み出す)ことにより元のデータ列を再現することを思いついた。
【0024】
【発明の実施の形態】
図1にこの発明による音声復号装置の一実施例を示す。この実施例を説明することにより、この発明の音声復号化方法についても説明する。図5と対応する部分には同一符号を付して示す。この発明の特徴とする構成はマトリクス演算処理器202の出力側にデータ切除器207を設けた点と、FIFOバッファ203−2を図6に示したFIFOバッファ203−1の半分の容量512点のFIFOバッファとした点と、このFIFOバッファ203−2の読出側にデータ再生器208を設けた構成とした点である。
【0025】
マトリクス演算処理器202で演算処理されて出力される64個のデータは図11で説明したように前半のAデータ列はデータD0を境に点対称である、後半のBデータ列は中央のデータDCを境に線対称であることから、データ切除器207はAデータ列の後半とゼロ値を与えるデータD0を切除し、更にBデータ列の最初のデータ(図11に示したデータSP33)とデータDC以後の15個のデータを切除する。
先ず、この発明の理解を助けるために、図11に示したAデータ列及びBデータ列のそれぞれからどの部分のデータを切除し、どの部分のデータをFIFOバッファ203−2に記憶し、FIFOバッファ203−2からデータを読み出す際にどのようにして元のAデータ列及びBデータ列を再現するかについて説明する。
【0026】
図11に示したAデータ列とBデータ列においてAデータ列では先頭のデータSP1から16サンプル目のデータSP16までをFIFOバッファ203−2に書き込み、データDOから32サンプル目のデータSP32までのデータを切除する。
Bデータ列では33サンプル目のデータSP33を除いて34サンプル目のデータSP34からデータDCまでをFIFOバッファ203−2に書き込み、他を切除する。
【0027】
この結果FIFOバッファ203−2に書き込むデータはAデータ列から16サンプル、Bデータ列から16サンプルの合計32サンプルのデータがFIFOバッファ203−2に書き込まれる。従って、FIFOバッファ203−2に書き込むそれぞれ16サンプルで構成されるデータ列をここではaデータ列及びbデータ列と表記することにする。図2にaデータ列とbデータ列を抜き出して示す。
次に、図11を用いて図2に示したaデータ列とbデータ列から元のAデータ列及びBデータ列を再現する方法について説明する。先ずaデータ列について説明する。FIFOバッファFIFO203−2には図11に破線で囲んだ先頭のデータSP1から16サンプル目のデータSP16が格納される。データSP1からSP16までを読み出し、データSP16を読み出した後にデータDOを挿入して再びデータSP16から1アドレスずつ逆向に読み出しを行なう。逆向に読み出しを行なう場合、読み出したデータに「−」符号を付し、極性を反転させ、先頭から1個手前のデータSP2までを読み出す。この読み出しにより図11に示す32サンプルで構成されるAデータ列が再現される。
【0028】
次にbデータ列について説明する。bデータ列は34サンプル目のデータSP34からデータDCまでがFIFOバッファ203−2に書き込まれる。従って、このbデータ列を往復読み出すことにより、図11に示す34サンプル目のデータSP34から最終の64サンプル目のデータSP64までが再現できる。然し乍らこの場合、再現されたデータ列は31サンプル数となる。
つまり、Bデータ列の先頭のデータSP33が再現されていないことになる。データSP33はAデータ列の先頭のデータSP1を極性反転させたデータである。このため、bデータ列を読み出す際にはFIFOバッファ203−2において、aデータ列の先頭のアドレスからデータSP1を読み出し、この読み出したデータSP1を極性反転させて1サンプルを生成し、この1サンプルに続いてFIFOバッファ203−2からデータSP34〜データDCまでを読み出すと共に、データDCから逆向に先頭のデータSP34までを読み出すと、Bデータ列の後半のb′データ列が再現される。データSP34からデータDCまでを往復読み出すと、データDCは読み出しが1度であるから全部で31サンプルとなる。この31サンプルのデータ列の先頭にaデータ列の先頭から読み出したデータSP33(データSP1を極性反転させて加える)を加えることにより全体で32サンプルのBデータ列を再現することができる。
【0029】
ここでデータSP33の取扱いについて説明する。データSP33はAデータ列の先頭のデータを極性反転させたデータである。従って本来はAデータ列に属することが望ましいのであるが、Aデータ列は先頭から32サンプル目のデータSP32で既にサンプル数が32となる。図6で説明したように乗算器303では図6に示した各入力端子X0〜X15に32サンプルずつデータを入力することを演算処理の都合上要求するから、Aデータ列及びBデータ列は32サンプルずつに揃える必要がある。このような理由からデータSP33をBデータ列に含ませたものである。
【0030】
以上の説明から明らかなようにFIFOバッファ203−2には図2に示すAデータ列の半分のデータ量となったaデータ列と、Bデータ列の半分のデータ量となったbデータ列を書き込む。aデータ列とbデータ列はそれぞれ16サンプルのデータで構成されるため、FIFOバッファ203−2には一度に32個のデータが書き込まれる。
FIFOバッファ203−2には512点の記憶容量を持たせる。従って、FIFOバッファ203−2には図3に示すように、16回分のマトリックス演算結果が格納される。
【0031】
データ再生器208はアドレス選択部301とこのアドレス選択部301を制御するアドレスコントローラ305と、読出回路に設けた付加回路306とによって構成することができる。アドレスコントローラ305はアドレス選択部301を制御する。アドレス選択部301は16個の読出点i0〜15の読出アドレスを制御する。各読出点i0〜i15は512点のFIFOバッファのアドレス領域を16等分した各領域に割付けられたアドレス0〜31を読み出すように制御される。ここで特に偶数番目の読出点i0、i2、i4、i6、i8、i10、i12、i14は各領域の前半のアドレス0〜15を読み出す。また奇数番目の読出点i1、i3、i5、i7、i9、i11、i13、i15は各領域のaデータ列の先頭のアドレスと後半のアドレス16〜31を読み出す。
【0032】
この結果偶数番目の読出点i0、i2、…i14はFIFOバッファ203−2に書き込まれているaデータ列を読み出すことになり、また奇数番目の読出点i1、i3、…i15はFIFOバッファ203−2に書き込まれているaデータ列の先頭のデータとbデータ列を読み出すことになる。
更に、aデータ列を読み出す偶数番目の読出点i0、i2、…i14は各自己に割当てられた領域の0〜15のアドレスを0〜15まで読み出した後、今度は逆向きにアドレスを15〜1までの読出を実行する。このとき復路の読み出しは、復路の読出の実行を開始する時点でゼロを与えるデータD0を付加回路306で付加し、更にマイナス符号「−」を付加して読み出すことにより、図11に示した本来の32サンプルで構成されるAデータ列を再現することができる。
【0033】
一方、奇数番目の読出点i1、i3、…i15では各領域に記憶したaデータ列の先頭のアドレスとbデータ列を記憶しているアドレスを16〜31まで読み出し、aデータ列から読み出したデータを極性反転することにより、図11に示したbデータ列(33サンプル目のデータSP33を含む)を読み出すことができる。更にその最大アドレス31から逆向きにアドレス16までを読み出せば、図11に示した本来の32サンプルで構成されるBデータ列を再現することができる。
【0034】
アドレスコントローラ305がアドレス選択部301の各読出点i0〜i15を上述のように制御することにより、各読出点i0〜i15は
(1)読出点i0は最新のaデータ列を読み出して本来の32サンプルで構成されるデータ列Aを再現する。
(2)読出点i1は2番目に古いaデータ列の先頭とbデータ列を読み出して本来の32サンプルで構成されるデータ列Bを再現する。
(3)読出点i2は3番目に古いaデータ列を読み出して本来の32サンプルで構成されるデータ列Aを再現する。
(4)読出点i3は4番目に古いaデータ列の先頭とbデータ列を読み出して本来の32サンプルで構成されるデータ列Bを再現する。
(5)読出点i4は5番目に古いaデータ列を読み出して本来の32サンプルで構成されるデータ列Aを再現する。
【0035】
・
・
・
(16)読出点i15は16番目に古いaデータ列の先頭とbデータ列を読み出して本来の32サンプルで構成されるデータ列Bを再現するように動作する。
この動作の結果は図6で説明した動作と等価であり、図7に示したデータの配列と同じデータの配列となる。従来は1024点のFIFOバッファを用いて実現している窓掛演算に出力するデータ列の読出を、512点のFIFOバッファで実現することができる。
【0036】
つまり、窓掛演算を実行する乗算器303の各入力端子X0〜X15には図7に示したように、
X0に最新のAデータ列A(1)が入力され、
X1に2番目に古いBデータ列B(2)が入力され、
X2に3番目に古いAデータ列A(3)が入力され、
X3に4番目に古いBデータ列B(4)が入力され、
・
・
・
X15に16番目に古いBデータ列B(16)が入力される。
【0037】
乗算器303の他の入力端子には係数メモリ206から従来と同様の窓掛係数が入力され、その乗算値を累積器304で累積することによりPCM信号を出力することができる。このPCM信号は図4に示したDA変換器103でDA変換され、アナログ信号として出力される。
【0038】
【発明の効果】
以上説明したように、この発明によれば1チャンネルのデコーダを512点のFIFOバッファ203−2で構成することができるから、4チャンネルのデコーダを構成する場合でもFIFOバッファ203−2としては512×4=2048点のFIFOバッファが存在すれば実現することができる。2048点のFIFOバッファを装備しているDSP(デジタル・シグナル・プロセッサ)は比較的安価に入手することができるから、この発明によれば廉価なDSPを用いて多チャンネル(例えば4チャンネル)の音声復号装置を構成することができる。この結果、小型で廉価な多チャンネル音声復号装置を提供できる利点が得られる。
【図面の簡単な説明】
【図1】この発明の一実施例を説明するためのブロック図。
【図2】この発明の要部の動作を説明するための図。
【図3】この発明の要部の構成を説明するための接続図。
【図4】一般的な多チャンネル音声復号装置の全体の構成を説明するためのブロック図。
【図5】従来の技術を説明するためのブロック図。
【図6】従来の音声復号装置の要部の構成を説明するためのブロック図。
【図7】図6に示した従来の音声信号装置でFIFOバッファ203−1から読み出されるデータの配列を説明するための図。
【図8】図5に示した係数メモリ205に格納したCOS係数の一部を示す図。
【図9】図5に示した係数メモリ205に格納したCOS係数の一部を示す図。
【図10】図8と図9に示したCOS係数の意味するところを説明するための図。
【図11】図8及び図9に示したCOS係数を利用してマトリックス演算を施したデータ列の様子を説明する図。
【符号の説明】
200 圧縮データバッファ
201 ビットストリーム展開処理器
202 マトリクス演算処理器
203−1 1024点FIFOバッファ
203−2 512点FIFOバッファ
204 窓掛け演算処理器
205、206 係数メモリ
207 データ切除器
208 データ再生器
301、302 アドレス選択部
303 乗算器
304 累積器
305 アドレスコントローラ
306 付加回路[0001]
BACKGROUND OF THE INVENTION
The present invention relates to an audio decoding method and an audio decoding apparatus that are processed in accordance with the MPEG audio encoding and decoding method, and more particularly to a method and apparatus for implementing a simultaneous reproduction function of a plurality of tracks (channels) on an inexpensive and compact system. .
[0002]
[Prior art]
FIG. 4 shows a configuration of a decoder unit (decoding unit) when a 4-track multi-track recorder is configured. For example, a 4-track bit stream (compressed data sequence) recorded for each instrument read from the
[0003]
The
[0004]
FIG. 5 is a configuration example of one
Procedure 1: 32 new subband data Ss [j] are input for j = 0 to 31.
Procedure 2: The process of V [n] = V [n-64] is performed for n = 1023 to 64, so that the old 64 data in the FIFO buffer 203 is discarded, and the 64 data obtained in the
Procedure 3: Perform matrix calculation processing. Matrix operation for n = 0 to 63
[0005]
[Expression 1]
[0006]
It is obtained by calculating. However,
[0007]
[Expression 2]
[0008]
It is.
Procedure 4: Construct a 512-sample vector U for i = 0-7 and j = 0-31. U is
U [64i + j] = V [128i + j] (3)
U [64i + 32 + j] = V [128i + 96 + j] (4)
It is calculated by the following formula.
Procedure 5: A vector W is constructed by windowing with 512 coefficients. W is about m = 0 to 511
W [m] = U [m] * D [m] (5)
It is obtained by calculating. However, D [m] is the value in Table B. of the MPEG recommendation. 3 (Table B.3 Coefficients Di of synthesis window) is a 512-point coefficient.
Procedure 6: For j = 0 to 31
[0009]
[Equation 3]
[0010]
To obtain 32 PCM sample outputs Sp [j]. Hereinafter, processing performed by the subband filtering processing unit 210 illustrated in FIG. 5 will be described with reference to FIGS. 5 and 6 in association with the above procedure.
In the
[0011]
The
Expression (2) can be used without calculating each time by storing a cos coefficient table on the coefficient memory 205 (see FIG. 5). In
[0012]
[Problems to be solved by the invention]
In the case of a multi-track recorder using the MPEG audio encoding / decoding method, if a large number of tracks are taken, the amount of memory used increases in proportion to the number of tracks. Therefore, it is difficult to configure the subband filtering processing unit 210 using only the DSP internal RAM having a high access speed.
As a result, use an external RAM with a slow access speed (if the RAM is connected to the outside of the DSP, it takes time to exchange data between the DSP and the RAM, resulting in a slow access speed), or an internal RAM However, there is a problem that an expensive DSP equipped with a large capacity RAM area must be selected.
[0013]
That is, according to the implementation method defined in the MPEG audio recommendation, the 1024-point FIFO buffer 203-1 has
Here, the reason why there is an empty area in the 1024-point FIFO buffer 203-1 will be described. The data input to the 1024-point FIFO buffer 203-1 at a time is 64 data strings. As shown in FIG. 11, the 64 data strings are represented as 32 data strings in the first half and 32 data strings in the second half as B data strings. Since the FIFO buffer 203-1 has 1024 addresses, it can store the matrix operation results for 16 times.
[0014]
At each read point i0 to i15 of the
At the read point i1, the second old B data string is read for 0 to 31 addresses.
At the read point i2, the third old A data string is read for 0 to 31 addresses.
At the read point i3, the fourth old B data string is read for 0 to 31 addresses.
Therefore, in order to execute reading of the FIFO buffer 203-1 and the reading points i0 to i15 according to the recommendation described above, the A data string and the B data string are alternately selected at the reading points i0 to i15, and the data string is selected. Are sequentially selected one by one. FIG. 7 shows an arrangement of data input to the input terminals X0 to X15 of the multiplier 303. The numbers in the parentheses of the data names A and B represent numbers assigned to the data fetching order. In order to obtain this data arrangement, an extra storage area is required on the FIFO buffer 203-1.
[0015]
An object of the present invention is to propose a speech decoding method that can be realized with a minimum address capacity without waste in the FIFO buffer 203-1, and a speech decoding device that operates using this decoding method. is there.
[0016]
In
[0017]
According to a second aspect of the present invention, a compressed data buffer for accumulating compressed data read from a storage medium, and each time a predetermined amount of compressed data string is read into the compressed data buffer, a bit is added to the compressed audio data string. Bitstream expansion processor that performs stream expansion processing, and expansion using this bitstream expansion processor Subband A matrix arithmetic processor that performs matrix arithmetic processing on the data string, and the matrix arithmetic processor And the array shape of the data values is point-symmetric between the first half and the second half at a predetermined sample point of the data sequence. A data string and The first half and the second half are line symmetric at a given sample point. B data string Each de Data column Consists of the first half or second half A data ablator that excises one part of the symmetry,
[0018]
A FIFO buffer that stores and stores the remaining a data strings and b data strings obtained by excising a part of data by this data excision device for the number of times of N matrix operations, and from the FIFO buffer , A Data column Uses a point symmetric sample point as a turning point, adds a different sign for forward and backward, reads back and forth, generates an A data string with the original amount of data, and b data string returns a line symmetric sample point. Read back and forth as points to generate a B data string with the original amount of data Reading means and this Generated by reading means A multiplier that multiplies the A data string and the B data string by a coefficient and performs a windowed operation process, and a cumulative adder that cumulatively adds multiplication results of the multiplier and generates a PCM signal. A speech decoding device is proposed.
[0019]
When the a data string and the b data string are read from the reduced array, the original A data string and B data string before excision are reproduced by reading each a data string and b data string a plurality of times. A normal audio signal is decoded by performing a windowing operation on the A data string and the B data string.
Therefore, according to the present invention, it is possible to halve the storage capacity of the FIFO buffer in which the a data string and the b data string are arranged and stored. As a result, a sufficiently multi-channel decoding device can be configured even with the capacity of the RAM provided in the DSP. Therefore, there is an advantage that a multi-channel audio player can be configured with an inexpensive DSP.
[0020]
Here, a description will be given of the fact that the A data string and the B data string that are subjected to matrix calculation processing and are input to the FIFO buffer are symmetrical.
The
Incidentally, in the column of n = 0 and k = 0 shown in FIG. 8, if n = 0 and k = 0 are substituted into the equation (2),
cos [(16 + 0) (1)] π / 64 = cos (16/64) π
It becomes. When this is applied to the cos curve shown in FIG. 10, it becomes π / 4, which means a value of
[0021]
When n = 0 and k = 1
It becomes. When this is applied to the cos curve, it can be seen that a value of π / 4 reverse polarity is taken. Accordingly, it is expressed as -cos (16/64) π here.
A unique point in the coefficient table shown in FIGS. 8 and 9 is a point of n = 16. At the point of n = 16, the value of k is −cos (32/64) π for all of 0 to 31 (showing 0 to 7 in the figure). This value means cos (π / 2), and cos π / 2 = 0. Therefore, the data given by n = 16 is referred to as D0 here.
[0022]
Furthermore, at the point of n = 48 shown in FIG. 9, all the coefficients are −cos (0/64) π regardless of the value of k. In other words, it means -
[0023]
The data D0 is zero regardless of the A data string output at any time.
The inventor of this application pays attention to this point, cuts one of the symmetrical data strings and stores it in the FIFO buffer, and reads the data string stored at the time of reading a plurality of times (reads the address in the reverse direction). Came up with the idea of reproducing the original data string.
[0024]
DETAILED DESCRIPTION OF THE INVENTION
FIG. 1 shows an embodiment of a speech decoding apparatus according to the present invention. By describing this embodiment, the speech decoding method of the present invention will also be described. Parts corresponding to those in FIG. 5 are denoted by the same reference numerals. The feature of the present invention is that a
[0025]
As described with reference to FIG. 11, the 64 data outputted by the
First, in order to help understanding of the present invention, which part of data is cut out from each of the A data string and B data string shown in FIG. 11, and which part of data is stored in the FIFO buffer 203-2, the FIFO buffer A description will be given of how to reproduce the original A data string and B data string when reading data from 203-2.
[0026]
In the A data string and the B data string shown in FIG. 11, in the A data string, the first data SP1 to the 16th sample data SP16 are written to the FIFO buffer 203-2, and the data from the data DO to the 32nd sample data SP32 are written. Excise.
In the B data string, except for the 33rd sample data SP33, the 34th sample data SP34 to the data DC are written in the FIFO buffer 203-2 and the others are cut off.
[0027]
As a result, the data to be written into the FIFO buffer 203-2 is a total of 32 samples of data from the A data string and 16 samples from the B data string, and is written into the FIFO buffer 203-2. Accordingly, a data string composed of 16 samples written to the FIFO buffer 203-2 is represented as an a data string and a b data string here. FIG. 2 shows an extracted a data string and b data string.
Next, a method for reproducing the original A data sequence and B data sequence from the a data sequence and the b data sequence shown in FIG. 2 will be described with reference to FIG. First, the a data string will be described. The FIFO buffer FIFO 203-2 stores data SP16 of the 16th sample from the top data SP1 surrounded by a broken line in FIG. Data SP1 to SP16 are read out, data SP16 is read out, data DO is inserted, and data SP16 is again read in reverse from the data SP16 one address at a time. When reading in the reverse direction, a “−” sign is added to the read data, the polarity is inverted, and the data SP2 immediately before the head is read. By this reading, the A data string composed of 32 samples shown in FIG. 11 is reproduced.
[0028]
Next, the b data string will be described. In the b data string, data SP34 to data DC of the 34th sample are written in the FIFO buffer 203-2. Therefore, by reading this b data string back and forth, the data from the 34th sample data SP34 to the final 64th sample data SP64 shown in FIG. 11 can be reproduced. However, in this case, the reproduced data string is 31 samples.
That is, the top data SP33 of the B data string is not reproduced. Data SP33 is data obtained by inverting the polarity of the first data SP1 of the A data string. For this reason, when reading the b data string, the FIFO buffer 203-2 reads the data SP1 from the head address of the a data string, and inverts the polarity of the read data SP1 to generate one sample. Subsequently, when data SP34 to data DC are read from the FIFO buffer 203-2 and the head data SP34 is read backward from the data DC, the second half b 'data string of the B data string is reproduced. When the data SP34 to the data DC are read back and forth, the data DC is read once, so there are 31 samples in total. By adding the data SP33 (added by reversing the polarity of the data SP1) read from the head of the a data string to the head of the 31 sample data string, a total of 32 samples of the B data string can be reproduced.
[0029]
Here, handling of the data SP33 will be described. Data SP33 is data obtained by reversing the polarity of the top data of the A data string. Accordingly, it is desirable that the data belongs to the A data string, but the A data string is the data SP32 of the 32nd sample from the beginning, and the number of samples is already 32. As described with reference to FIG. 6, the multiplier 303 requires 32 samples of data to be input to the input terminals X0 to X15 shown in FIG. It is necessary to prepare for each sample. For this reason, the data SP33 is included in the B data string.
[0030]
As is clear from the above description, the FIFO buffer 203-2 includes the a data string having half the data amount of the A data string and the b data string having half the data amount of the B data string shown in FIG. Write. Since the a data string and the b data string are each composed of 16 samples of data, 32 pieces of data are written into the FIFO buffer 203-2 at a time.
The FIFO buffer 203-2 has a storage capacity of 512 points. Therefore, as shown in FIG. 3, the FIFO buffer 203-2 stores the matrix operation results for 16 times.
[0031]
The data regenerator 208 can be configured by an
[0032]
As a result, the even-numbered read points i0, i2,... I14 read the a data string written in the FIFO buffer 203-2, and the odd-numbered read points i1, i3,. The first data of the a data string written in 2 and the b data string are read out.
Further, the even-numbered read points i0, i2,..., I14 for reading the a data string read
[0033]
On the other hand, at the odd-numbered reading points i1, i3,..., I15, the leading address of the a data string stored in each area and the address storing the b data string are read from 16 to 31, and the data read from the a data string is read. Is reversed, the b data string (including the data SP33 of the 33rd sample) shown in FIG. 11 can be read out. Further, by reading from the
[0034]
The
(1) The reading point i0 reads the latest a data string and reproduces the original data string A composed of 32 samples.
(2) The read point i1 reads the head of the second oldest a data string and the b data string to reproduce the original data string B composed of 32 samples.
(3) The reading point i2 reads the third oldest a data string to reproduce the original data string A composed of 32 samples.
(4) The reading point i3 reads the head of the fourth oldest a data string and the b data string to reproduce the original data string B composed of 32 samples.
(5) The reading point i4 reads the fifth oldest a data string and reproduces the original data string A composed of 32 samples.
[0035]
・
・
・
(16) The read point i15 operates to read the head of the 16th oldest a data string and the b data string to reproduce the original data string B composed of 32 samples.
The result of this operation is equivalent to the operation described with reference to FIG. 6, and has the same data arrangement as that shown in FIG. Reading of a data string to be output to a windowing operation that has been realized using a 1024-point FIFO buffer in the past can be realized with a 512-point FIFO buffer.
[0036]
That is, as shown in FIG. 7, the input terminals X0 to X15 of the multiplier 303 that performs the windowing operation are as follows.
The latest A data string A (1) is input to X0,
The second oldest B data string B (2) is input to X1,
The third oldest A data string A (3) is input to X2,
The fourth oldest B data string B (4) is input to X3,
・
・
・
The 16th oldest B data string B (16) is input to X15.
[0037]
A windowing coefficient similar to the conventional one is input from the
[0038]
【The invention's effect】
As described above, according to the present invention, a 1-channel decoder can be configured by a 512-point FIFO buffer 203-2. Therefore, even when a 4-channel decoder is configured, the FIFO buffer 203-2 has 512 × This can be realized if there are 4 = 2048 FIFO buffers. Since a DSP (digital signal processor) equipped with a 2048-point FIFO buffer can be obtained at a relatively low cost, according to the present invention, a multi-channel (for example, 4 channels) audio signal can be obtained using an inexpensive DSP. A decoding device can be configured. As a result, there is an advantage that a small and inexpensive multi-channel speech decoding apparatus can be provided.
[Brief description of the drawings]
FIG. 1 is a block diagram for explaining an embodiment of the present invention.
FIG. 2 is a view for explaining the operation of the main part of the present invention.
FIG. 3 is a connection diagram for explaining a configuration of a main part of the present invention.
FIG. 4 is a block diagram for explaining the overall configuration of a general multi-channel audio decoding apparatus.
FIG. 5 is a block diagram for explaining a conventional technique.
FIG. 6 is a block diagram for explaining a configuration of a main part of a conventional speech decoding apparatus.
7 is a diagram for explaining an arrangement of data read from a FIFO buffer 203-1 in the conventional audio signal device shown in FIG.
FIG. 8 is a view showing a part of COS coefficients stored in the
FIG. 9 is a view showing a part of COS coefficients stored in the
10 is a diagram for explaining what the COS coefficients shown in FIGS. 8 and 9 mean; FIG.
11 is a diagram for explaining a state of a data string that has been subjected to matrix calculation using the COS coefficients shown in FIGS. 8 and 9. FIG.
[Explanation of symbols]
200 Compressed data buffer
201 Bitstream development processor
202 Matrix processor
203-1 1024-point FIFO buffer
203-2 512-point FIFO buffer
204 Windowing processor
205, 206 Coefficient memory
207 Data excisor
208 Data regenerator
301, 302 Address selection unit
303 multiplier
304 Accumulator
305 Address controller
306 Additional circuit
Claims (2)
上記マトリクス演算結果として得られるAデータ列の点対称となるデータ配列の前半部又は後半部の何れか一方及びBデータ列の線対称となるデータ配列の前半部又は後半部の何れか一方を切除し、残されたデータ量が半分のaデータ列とbデータ列を上記FIFOバッファに所定のマトリクス演算処理回数分蓄積させ、各蓄積回毎のaデータ列は上記点対称となるサンプル点を折返点として往復にわたり一方の読み出し時と他方の読み出し時は符号を異ならせて読み出すことにより元のデータ量を持つAデータ列を生成し、bデータ列は上記線対称となるサンプル点を折返点として往復にわたって読み出すことによって元のデータ量を持つBデータ列を生成し、生成された元のAデータ列及びBデータ列に窓掛け演算処理を実行して上記PCM信号を生成する音声復号化方法。Matrix operation processing is performed on the band-divided subband data, and the matrix operation processing result is configured with a predetermined number of samples. The arrangement of data values is point-symmetric between the first half and the second half at a predetermined sample point of the data string. A data string and a B data string that is axisymmetric in the first half and the second half at a predetermined sample point are obtained , and the A data string is calculated each time the A data string and the B data string are calculated from the matrix processing unit. and the B data data sequence accumulated in the FIFO buffer, the FIFO buffer arranged matrix calculation result of a past plurality of times, a new matrix calculation result is stored before N times each time it is put into the FIFO buffer The A data string and the B data string are discharged from the FIFO buffer and N times of A data arranged in the FIFO buffer. And B data strings are extracted alternately according to the order of the number of times of acquisition, and the extracted data is multiplied by a coefficient to perform a windowing calculation process, and the calculation results are cumulatively added. In a speech decoding method for generating a PCM signal,
Either the first half or the second half of the data array that is point-symmetric of the A data string obtained as a result of the matrix operation and the first half or the second half of the data array that is axisymmetric of the B data string are excised. Then, the a data string and the b data string with the remaining data amount being half are accumulated in the FIFO buffer for a predetermined number of times of matrix calculation processing, and the a data string for each accumulation time is used to fold the sample points that are point-symmetric. As a point, A data string having the original data amount is generated by reading with different signs at the time of one reading and the other reading as a point, and b data string has the above-mentioned sample points that are line symmetric as turning points By reading back and forth, a B data string having the original data amount is generated, and a windowing operation process is performed on the generated original A data string and B data string. Speech decoding method for generating M signals.
B.この圧縮データバッファに所定量の圧縮データ列が読み出される毎に、圧縮された音声データ列にビットストリーム展開処理を施すビットストリーム展開処理器と、
C.このビットストリーム展開処理器で展開され帯域分割されたサブバンドデータ列にマトリクス演算処理を施すマトリクス演算処理器と、
D.このマトリクス演算処理器で演算処理された所定サンプル数のデータ列で構成され、データ値の配列形状がデータ列の所定サンプル点において前半部と後半部とで点対称となるAデータ列及び所定のサンプル点において前半部と後半部とで線対称となるBデータ列のそれぞれのデータ列の中から上記前半部又は後半部で構成される対称型の一方の部分を切除するデータ切除器と、
E.このデータ切除器でデータの一部を切除した残りのaデータ列及びbデータ列をN回のマトリクス演算回数分配列して記憶するFIFOバッファと、
F.このFIFOバッファから、aデータ列は上記点対称となるサンプル点を折返点とし往と復で異符号を付して往復にわたって読み出し、元のデータ量を持つAデータ列を生成し、bデータ列は上記線対称となるサンプル点を折返点として往復にわたって読み出し、元のデータ量を持つBデータ列を生成する読み出し手段と、
G.この読み出し手段で生成したAデータ列及びBデータ列に係数を乗算し窓掛演算処理する乗算器と、
H.この乗算器の乗算結果を累積加算し、PCM信号を生成する累積加算器と、
によって構成したことを特徴とする音声復号装置。A. A compressed data buffer for storing compressed data read from the storage medium;
B. A bitstream decompression processor that performs a bitstream decompression process on the compressed audio data sequence each time a predetermined amount of the compressed data sequence is read into the compressed data buffer;
C. A matrix operation processor that performs matrix operation processing on the sub-band data sequence that is expanded and band-divided by the bit stream expansion processor;
D. An A data sequence composed of a data sequence of a predetermined number of samples subjected to arithmetic processing by this matrix arithmetic processing unit, and an array shape of data values being point-symmetric between the first half and the second half at a predetermined sample point of the data sequence, and a predetermined a data ablation instrument to ablate one of the symmetric type composed within each of the data columns in the first half is line symmetrical with the latter half portion and the B data sequence by the first half or the latter half portion at the sample point ,
E. A FIFO buffer for storing the remaining a data strings and b data strings obtained by excising a part of the data with this data excisor, and arranging them for N matrix operations;
F. From this FIFO buffer , the a data string is read back and forth with the above-mentioned point-symmetric sample points as turning points, with different signs added in the forward and backward directions, to generate an A data string having the original data amount, and the b data string Reads out the sample points that are line-symmetric with respect to a round trip point as a turning point, and reads out means for generating a B data string having the original data amount ;
G. A multiplier for multiplying the A data sequence and the B data sequence generated by the reading means by a coefficient and performing a windowing operation;
H. A cumulative adder that cumulatively adds the multiplication results of the multiplier and generates a PCM signal;
A speech decoding apparatus characterized by comprising:
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2001212432A JP3682863B2 (en) | 2001-07-12 | 2001-07-12 | Speech decoding method and speech decoding apparatus |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2001212432A JP3682863B2 (en) | 2001-07-12 | 2001-07-12 | Speech decoding method and speech decoding apparatus |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2003029788A JP2003029788A (en) | 2003-01-31 |
| JP3682863B2 true JP3682863B2 (en) | 2005-08-17 |
Family
ID=19047594
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2001212432A Expired - Fee Related JP3682863B2 (en) | 2001-07-12 | 2001-07-12 | Speech decoding method and speech decoding apparatus |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP3682863B2 (en) |
-
2001
- 2001-07-12 JP JP2001212432A patent/JP3682863B2/en not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| JP2003029788A (en) | 2003-01-31 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP3682863B2 (en) | Speech decoding method and speech decoding apparatus | |
| KR100300887B1 (en) | A method for backward decoding an audio data | |
| JP3639424B2 (en) | Address generation circuit | |
| CN1071475C (en) | Digital signal processor | |
| JP2943636B2 (en) | Signal processing device | |
| JP2852270B2 (en) | Frame coded data decoding / playback device | |
| JP2014021162A (en) | Decoding device, decoding method, and program | |
| JP3852890B2 (en) | Recording / playback device | |
| JP3581431B2 (en) | MPEG audio decoder | |
| JP2005242126A (en) | Acoustic signal playback device | |
| JP3258526B2 (en) | Compressed audio decompression device | |
| JP3922289B2 (en) | Sound generator | |
| JP2822388B2 (en) | Digital filter | |
| JP3479999B2 (en) | Waveform data generator | |
| JPS6128224A (en) | Coder and decoder | |
| JP2002258895A (en) | Multi-channel recording and playback device | |
| JPH11311997A (en) | Audio reproduction speed conversion apparatus and method | |
| JP2009116685A (en) | Data processing apparatus and data transfer method using the same | |
| JP4552211B2 (en) | Speech encoding method and speech decoding method | |
| JPH0785599A (en) | Signal playback device | |
| JP2005326894A (en) | Speech encoding method and speech decoding method | |
| JPS6059398A (en) | Voice synthesizer | |
| JPH09219064A (en) | Disc playback device | |
| JPH0769720B2 (en) | Voice recording / playback device | |
| JPH04345997A (en) | Voice processor |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20050121 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20050215 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050331 |
|
| TRDD | Decision of grant or rejection written | ||
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20050426 |
|
| RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20050519 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20050519 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 3682863 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080603 Year of fee payment: 3 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090603 Year of fee payment: 4 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090603 Year of fee payment: 4 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100603 Year of fee payment: 5 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100603 Year of fee payment: 5 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110603 Year of fee payment: 6 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110603 Year of fee payment: 6 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120603 Year of fee payment: 7 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120603 Year of fee payment: 7 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130603 Year of fee payment: 8 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130603 Year of fee payment: 8 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140603 Year of fee payment: 9 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| LAPS | Cancellation because of no payment of annual fees |