JP2900895B2 - デコード方法 - Google Patents
デコード方法Info
- Publication number
- JP2900895B2 JP2900895B2 JP25258696A JP25258696A JP2900895B2 JP 2900895 B2 JP2900895 B2 JP 2900895B2 JP 25258696 A JP25258696 A JP 25258696A JP 25258696 A JP25258696 A JP 25258696A JP 2900895 B2 JP2900895 B2 JP 2900895B2
- Authority
- JP
- Japan
- Prior art keywords
- value
- processing step
- digit
- output
- processing
- 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
Landscapes
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Description
【0001】
【発明が属する技術分野】本発明は、主にオーディオビ
デオ信号(AV信号)の符号化信号の中に含まれる、グ
ルーピングされた量子化信号を、逆グルーピングする方
法に関するものである。
デオ信号(AV信号)の符号化信号の中に含まれる、グ
ルーピングされた量子化信号を、逆グルーピングする方
法に関するものである。
【0002】
【従来の技術】近年、音響機器、映像機器などの技術分
野では、従来行なわれていたアナログ信号処理からディ
ジタル信号処理へと移行してきている。これにより、音
響信号や映像信号などのアナログ信号はディジタル信号
処理に適するように量子化、符号化処理等が施される。
以下には、まず、映像信号、音響信号などの符号化信号
中に含まれる、グルーピングされた量子化信号について
説明する。
野では、従来行なわれていたアナログ信号処理からディ
ジタル信号処理へと移行してきている。これにより、音
響信号や映像信号などのアナログ信号はディジタル信号
処理に適するように量子化、符号化処理等が施される。
以下には、まず、映像信号、音響信号などの符号化信号
中に含まれる、グルーピングされた量子化信号について
説明する。
【0003】例えばここに、3値で量子化された3個の
量子化信号(a,b,c)があるとする。3値で量子化
された量子化信号は通常2bitで表現されるので、3値
で量子化された3個の量子化信号(a,b,c)を表現
するためには2bit×3=6bitの符号量が必要である
(例えばオーディオ符号化のMPEG1;layer1ではこの方
法がとられている(ISO/IEC 11172-3,p23参照)。
量子化信号(a,b,c)があるとする。3値で量子化
された量子化信号は通常2bitで表現されるので、3値
で量子化された3個の量子化信号(a,b,c)を表現
するためには2bit×3=6bitの符号量が必要である
(例えばオーディオ符号化のMPEG1;layer1ではこの方
法がとられている(ISO/IEC 11172-3,p23参照)。
【0004】しかしながら、例えばオーディオ符号化の
MPEG1;layer2では、以下のような工夫を施すことによ
って、3値で量子化された3個の量子化信号(a,b,
c)を5ビットで表現することに成功している。
MPEG1;layer2では、以下のような工夫を施すことによ
って、3値で量子化された3個の量子化信号(a,b,
c)を5ビットで表現することに成功している。
【0005】即ち、a,b,cをそれぞれ0、1、2の
3値で表現し、更に、(9×a+3×b+c)の値を算
出する。つまり、3桁の3進数で上記(a,b,c)を
まとめて表した事になる。
3値で表現し、更に、(9×a+3×b+c)の値を算
出する。つまり、3桁の3進数で上記(a,b,c)を
まとめて表した事になる。
【0006】さてここで、(9×a+3×b+c)の値
は、最大でも9×2+3×2+2=26であるので、こ
れは5ビットで表現できる。よって、3値で量子化され
た3個の量子化信号(a,b,c)をまとめて5ビット
で表現できた事になる。
は、最大でも9×2+3×2+2=26であるので、こ
れは5ビットで表現できる。よって、3値で量子化され
た3個の量子化信号(a,b,c)をまとめて5ビット
で表現できた事になる。
【0007】このような処理のことを“グルーピング”
の処理と言う。ちなみに、オーディオ符号化のMPEG1;l
ayer2では、上記のような3進数によるグルーピングの
他に、5進数によるグルーピング、9進数によるグルー
ピングがある(ISO/IEC 11172-3,p23,p24参照)。
の処理と言う。ちなみに、オーディオ符号化のMPEG1;l
ayer2では、上記のような3進数によるグルーピングの
他に、5進数によるグルーピング、9進数によるグルー
ピングがある(ISO/IEC 11172-3,p23,p24参照)。
【0008】上記のようにグルーピングされた量子化信
号を、逆グルーピングする方法としては、原理的には、
割り算と剰余計算を用いれば容易に求められる。3進数
によってグルーピングされた信号を逆グルーピングする
方法を例にとれば、 a=G/9 b=(G%9)/3 c=G%3 となる。ここで、記号“/”は割り算における商を求め
る演算子であり、記号”%”は割り算における剰余を求
める演算子である。ところが、通常、ハードウエアによ
って、割り算及び剰余計算を行うと、ハードウエア規模
の増大を招くので以下のような工夫を施して実施してい
る。
号を、逆グルーピングする方法としては、原理的には、
割り算と剰余計算を用いれば容易に求められる。3進数
によってグルーピングされた信号を逆グルーピングする
方法を例にとれば、 a=G/9 b=(G%9)/3 c=G%3 となる。ここで、記号“/”は割り算における商を求め
る演算子であり、記号”%”は割り算における剰余を求
める演算子である。ところが、通常、ハードウエアによ
って、割り算及び剰余計算を行うと、ハードウエア規模
の増大を招くので以下のような工夫を施して実施してい
る。
【0009】その方法として、従来は以下の2種類の方
法の何れかがとられていた。以下、3進数によってグル
ーピングされた信号を逆グルーピングする方法を例にと
って従来の方法を説明する。
法の何れかがとられていた。以下、3進数によってグル
ーピングされた信号を逆グルーピングする方法を例にと
って従来の方法を説明する。
【0010】図4は、逆グルーピング処理の際にテーブ
ルを用いる場合の従来例を表している。図4のように、
テーブルのアドレス値としては、グルーピングされた信
号を直接与え、それに対応するデータを予め記憶させて
ある。このテーブルをもとに、グルーピングされた信号
から対応データを取得し、この取得したデータ6ビット
を2ビットずつ3つに分解する事によって、逆グルーピ
ング処理後のデータを抽出する事ができる。例えば、グ
ルーピングされた量子化信号の値が8の場合、図4のテ
ーブルのアドレス値8に対応する値が参照される。その
値は、”001010”であるので、逆グルーピング処
理後の値は、”00”、”10”、”10”となる。
ルを用いる場合の従来例を表している。図4のように、
テーブルのアドレス値としては、グルーピングされた信
号を直接与え、それに対応するデータを予め記憶させて
ある。このテーブルをもとに、グルーピングされた信号
から対応データを取得し、この取得したデータ6ビット
を2ビットずつ3つに分解する事によって、逆グルーピ
ング処理後のデータを抽出する事ができる。例えば、グ
ルーピングされた量子化信号の値が8の場合、図4のテ
ーブルのアドレス値8に対応する値が参照される。その
値は、”001010”であるので、逆グルーピング処
理後の値は、”00”、”10”、”10”となる。
【0011】図5は、もう一つの従来例による逆グルー
ピング処理を行う場合のフローチャートである。即ち、
入力の、グルーピングされた信号Gが 18より大きいなら値a=2 上記以外で9より大きければ値a=1 それ以外ならa=0 また、G−a*9の値が 6より大きければ値b=2 上記以外で3より大きければ値b=1 それ以外ならb=0 さらに、c=G−9*a−3*b による判定を、加算、減算のみを用いて実現している。
ピング処理を行う場合のフローチャートである。即ち、
入力の、グルーピングされた信号Gが 18より大きいなら値a=2 上記以外で9より大きければ値a=1 それ以外ならa=0 また、G−a*9の値が 6より大きければ値b=2 上記以外で3より大きければ値b=1 それ以外ならb=0 さらに、c=G−9*a−3*b による判定を、加算、減算のみを用いて実現している。
【0012】
【発明が解決しようとする課題】しかしながら、図4に
示したテーブルを用いる方法では、例えば3進数による
グルーピングを解く場合には、テーブル(ROM)のサ
イズとしては、アドレス数(32×2+31×2+30×
2+1=27)×3進数を表すに必要なビット数(2bi
t)×3桁=162bitのデータ領域が必要となる。ま
た、5進数によるグルーピングを解くような場合には、
テーブルのサイズ(ROMのサイズ)は、アドレス数
(52×4+51×4+50×4+1=125)×5進数
を表すに必要なビット数(3bit)×3桁=1125bit
のデータ領域が必要となる。さらに、9進数によるグル
ーピングを解くような場合には、テーブルのサイズ(R
OMのサイズ)は、アドレス数(92×8+91×8+9
0×8+1=729)×9進数を表すに必要なビット数
(4bit)×3桁=8748bitのデータ領域が必要とな
り、ハードウエアコストの増大を招く。
示したテーブルを用いる方法では、例えば3進数による
グルーピングを解く場合には、テーブル(ROM)のサ
イズとしては、アドレス数(32×2+31×2+30×
2+1=27)×3進数を表すに必要なビット数(2bi
t)×3桁=162bitのデータ領域が必要となる。ま
た、5進数によるグルーピングを解くような場合には、
テーブルのサイズ(ROMのサイズ)は、アドレス数
(52×4+51×4+50×4+1=125)×5進数
を表すに必要なビット数(3bit)×3桁=1125bit
のデータ領域が必要となる。さらに、9進数によるグル
ーピングを解くような場合には、テーブルのサイズ(R
OMのサイズ)は、アドレス数(92×8+91×8+9
0×8+1=729)×9進数を表すに必要なビット数
(4bit)×3桁=8748bitのデータ領域が必要とな
り、ハードウエアコストの増大を招く。
【0013】また、図5のフローチャートに従う場合に
は、例えば3進数によるグルーピングを解く場合、大小
判断を1ステップとして含めると演算ステップ数が最大
16ステップ(入力信号が0の場合)となる。また、5
進数によるグルーピングを解く場合、大小判断を1ステ
ップとして含めると演算ステップ数が最大26ステップ
(入力信号が0の場合)となる。さらに、9進数による
グルーピングを解く場合、大小判断を1ステップとして
含めると演算ステップ数が最大52ステップ(入力信号
が0の場合)となる。このようなステップ数の増大は演
算手順がループ構成となっている事にも起因しており、
このような従来手法では演算ステップ数の増大を招いて
しまう。
は、例えば3進数によるグルーピングを解く場合、大小
判断を1ステップとして含めると演算ステップ数が最大
16ステップ(入力信号が0の場合)となる。また、5
進数によるグルーピングを解く場合、大小判断を1ステ
ップとして含めると演算ステップ数が最大26ステップ
(入力信号が0の場合)となる。さらに、9進数による
グルーピングを解く場合、大小判断を1ステップとして
含めると演算ステップ数が最大52ステップ(入力信号
が0の場合)となる。このようなステップ数の増大は演
算手順がループ構成となっている事にも起因しており、
このような従来手法では演算ステップ数の増大を招いて
しまう。
【0014】よって、小さなテーブルサイズで、しか
も、少ない演算ステップ数で逆グルーピング処理を行え
る方法が望まれている。
も、少ない演算ステップ数で逆グルーピング処理を行え
る方法が望まれている。
【0015】本発明は上記課題に鑑み、小さなテーブル
サイズで、かつ少ない演算ステップ数で逆グルーピング
処理が行えるデコード方法を提供することを目的とする
ものである。
サイズで、かつ少ない演算ステップ数で逆グルーピング
処理が行えるデコード方法を提供することを目的とする
ものである。
【0016】
【課題を解決するための手段】上記目的を達成するため
に、本発明のデコード方法は、第N桁目の値を求める第
1の処理ステップ、第(N−1)桁目の値を求める第2
の処理ステップ、・・・、第1桁目の値を求める第Nの
処理ステップ、のN個の処理ステップを有し、各処理ス
テップでは、それぞれ、2個のテーブル値と2回の掛け
算と1回のビットシフトダウン処理と1回の減算のみに
よって逆グルーピング処理を行う。
に、本発明のデコード方法は、第N桁目の値を求める第
1の処理ステップ、第(N−1)桁目の値を求める第2
の処理ステップ、・・・、第1桁目の値を求める第Nの
処理ステップ、のN個の処理ステップを有し、各処理ス
テップでは、それぞれ、2個のテーブル値と2回の掛け
算と1回のビットシフトダウン処理と1回の減算のみに
よって逆グルーピング処理を行う。
【0017】本発明は上記の構成によって、上記第1の
処理ステップでは、入力された信号の値と、第1の処理
ステップに対し予め定められた定数とを掛け合わせた値
をLビットシフトダウンした値を算出し、該値を第1の
処理ステップの第1出力とし、上記入力された値から上
記第1の処理ステップの第1出力にMの(N−1)乗を
掛けた値を引いた値を第1の処理ステップの第2出力と
し、以降、第iの処理ステップ(但し、2≦i<N ;
iは整数)では、第(i−1)の処理ステップの出力2
と、第iの処理ステップに対し予め定められた定数とを
掛け合わせた値をLビットシフトダウンした値を算出
し、該値を第iの処理ステップの第1出力とし、第(i
−1)の処理ステップの第2出力から第iの処理ステッ
プの第1出力にMの(N−i)乗を掛けた値を引いた値
を第iの処理ステップの第2出力とし、第Nの処理ステ
ップでは、第(N−1)の処理ステップの第2出力を第
Nの処理ステップの第1出力とし、上記各処理ステップ
(第kステップ; 1≦k≦N)の第1出力を第(N−
k+1)桁目の値とする。ここで上記各処理ステップ
(第jステップ; 1≦j<N)に対して予め与えられ
ている値は、2のL乗をMの(N−j)乗で割った値を
表す整数値であり、とりわけ、2のL乗をMの(N−
j)乗で割った値に対し少数点以下を切り上げることに
よって整数化した値である。また、上記Lは、あまり小
さすぎる値の場合には演算誤差が発生するので上記Mが
3の場合には8以上の値であり、上記Mが5の場合には
10以上の値であり、上記Mが9の場合には15以上の
値であることが必要である。また、あまり大きすぎる値
の場合には回路規模が大きくなるので、上記Mが3の場
合は8、上記Mが5の場合は10、上記Mが9の場合は
15であることが望ましい。
処理ステップでは、入力された信号の値と、第1の処理
ステップに対し予め定められた定数とを掛け合わせた値
をLビットシフトダウンした値を算出し、該値を第1の
処理ステップの第1出力とし、上記入力された値から上
記第1の処理ステップの第1出力にMの(N−1)乗を
掛けた値を引いた値を第1の処理ステップの第2出力と
し、以降、第iの処理ステップ(但し、2≦i<N ;
iは整数)では、第(i−1)の処理ステップの出力2
と、第iの処理ステップに対し予め定められた定数とを
掛け合わせた値をLビットシフトダウンした値を算出
し、該値を第iの処理ステップの第1出力とし、第(i
−1)の処理ステップの第2出力から第iの処理ステッ
プの第1出力にMの(N−i)乗を掛けた値を引いた値
を第iの処理ステップの第2出力とし、第Nの処理ステ
ップでは、第(N−1)の処理ステップの第2出力を第
Nの処理ステップの第1出力とし、上記各処理ステップ
(第kステップ; 1≦k≦N)の第1出力を第(N−
k+1)桁目の値とする。ここで上記各処理ステップ
(第jステップ; 1≦j<N)に対して予め与えられ
ている値は、2のL乗をMの(N−j)乗で割った値を
表す整数値であり、とりわけ、2のL乗をMの(N−
j)乗で割った値に対し少数点以下を切り上げることに
よって整数化した値である。また、上記Lは、あまり小
さすぎる値の場合には演算誤差が発生するので上記Mが
3の場合には8以上の値であり、上記Mが5の場合には
10以上の値であり、上記Mが9の場合には15以上の
値であることが必要である。また、あまり大きすぎる値
の場合には回路規模が大きくなるので、上記Mが3の場
合は8、上記Mが5の場合は10、上記Mが9の場合は
15であることが望ましい。
【0018】
【発明の実施の形態】以下、本発明の第1の実施形態に
係るデコード方法について、図面を参照しながら説明す
る。なお、以下に述べる第1の実施形態では、従来例で
説明した例と同様に3桁の3進数でグルーピングされた
信号を逆グルーピング処理する方法(デコード方法)に
ついて説明する。
係るデコード方法について、図面を参照しながら説明す
る。なお、以下に述べる第1の実施形態では、従来例で
説明した例と同様に3桁の3進数でグルーピングされた
信号を逆グルーピング処理する方法(デコード方法)に
ついて説明する。
【0019】図1は本発明の第1の実施形態におけるデ
コード方法の処理の流れを示すフローチャートである。
図1において、処理ステップ11は、テーブル、その他
のデータを初期化する初期設定処理ステップである。処
理ステップ12は、3桁の3進数でグルーピングされた
信号Gの3桁目の値aを抽出する第1の処理ステップで
あり、このステップで変数aに3桁目の値が格納され
る。処理ステップ13は、2桁目の値bを抽出する第2
の処理ステップであり、このステップで変数bに2桁目
の値が格納される。処理ステップ14は、1桁目の値c
を抽出する第3の処理ステップであり、このステップで
変数cに1桁目の値が格納される。
コード方法の処理の流れを示すフローチャートである。
図1において、処理ステップ11は、テーブル、その他
のデータを初期化する初期設定処理ステップである。処
理ステップ12は、3桁の3進数でグルーピングされた
信号Gの3桁目の値aを抽出する第1の処理ステップで
あり、このステップで変数aに3桁目の値が格納され
る。処理ステップ13は、2桁目の値bを抽出する第2
の処理ステップであり、このステップで変数bに2桁目
の値が格納される。処理ステップ14は、1桁目の値c
を抽出する第3の処理ステップであり、このステップで
変数cに1桁目の値が格納される。
【0020】以上のフローチャートに示す処理手順で規
定される本実施形態のデコード方法について、以下その
詳細を図1を用いて説明する。
定される本実施形態のデコード方法について、以下その
詳細を図1を用いて説明する。
【0021】まず図1における、初期設定処理ステップ
11において、tableA[・]、tableB[・]、Lを初期化す
る。ここで、tableA[1]は、256/9の値の小数点以
下を切り上げる事によって整数化した値(=29)であ
る。tableA[2]は、256/3の値の小数点以下を切り
上げる事によって整数化した値(=86)である。tabl
eB[1]は3の2乗(=9)であり、tableB[2]は3の1乗
(=3)である。Lは、2のL乗が256となるところ
の値(=8)である。
11において、tableA[・]、tableB[・]、Lを初期化す
る。ここで、tableA[1]は、256/9の値の小数点以
下を切り上げる事によって整数化した値(=29)であ
る。tableA[2]は、256/3の値の小数点以下を切り
上げる事によって整数化した値(=86)である。tabl
eB[1]は3の2乗(=9)であり、tableB[2]は3の1乗
(=3)である。Lは、2のL乗が256となるところ
の値(=8)である。
【0022】次に、第1の処理ステップ12で、入力信
号GにtableA[1]の値を掛け、さらにその掛け算後のデ
ータをLビットシフトダウンする(図1における“>>
L”はLビットシフトダウンを意味している)。ここ
で、tableA[1]の値は、256/9を整数値で表したも
のであり、またLビット(ここでは8ビット)シフトダ
ウンする事は256で割る事に相当するので、結局この
処理は、入力信号の値を9で割ったときの商を求めてい
る事と等価である。つまり、3桁の3進数の3桁目の値
aを求めた事になる。
号GにtableA[1]の値を掛け、さらにその掛け算後のデ
ータをLビットシフトダウンする(図1における“>>
L”はLビットシフトダウンを意味している)。ここ
で、tableA[1]の値は、256/9を整数値で表したも
のであり、またLビット(ここでは8ビット)シフトダ
ウンする事は256で割る事に相当するので、結局この
処理は、入力信号の値を9で割ったときの商を求めてい
る事と等価である。つまり、3桁の3進数の3桁目の値
aを求めた事になる。
【0023】ここでLの値は、あまり小さすぎると演算
誤差が発生するので、本実施形態においては8以上の値
がよい。しかし、あまり大きすぎる値の場合には回路規
模が大きくなるので、本実施形態の場合は8が望まし
い。
誤差が発生するので、本実施形態においては8以上の値
がよい。しかし、あまり大きすぎる値の場合には回路規
模が大きくなるので、本実施形態の場合は8が望まし
い。
【0024】また、第1の処理ステップ12では、上記
の様にして求められた値aにtableB[1]の値を掛け、こ
の掛け算結果の値を入力信号値Gから引いた値を求め
る。ここで、tableB[1]の値は9であるので、この計算
によって、入力信号値Gを9で割ったときの剰余を求め
ていることになる。
の様にして求められた値aにtableB[1]の値を掛け、こ
の掛け算結果の値を入力信号値Gから引いた値を求め
る。ここで、tableB[1]の値は9であるので、この計算
によって、入力信号値Gを9で割ったときの剰余を求め
ていることになる。
【0025】次に、第2の処理ステップ13で、前段の
第1の処理ステップ12で求められた剰余の値に、tabl
eA[2]の値を掛け、その掛け算後のデータをLビットシ
フトダウンする(図1における“>>L”はLビットシフ
トダウンを意味している)。ここで、tableA[2]の値
は、256/3を整数値で表したものであり、またLビ
ット(ここでは8ビット)シフトダウンする事は256
で割る事に相当するので、結局この処理は、上記剰余の
値を3で割ったときの商を求めている事と等価である。
つまり、3桁の3進数の2桁目bの値を求めた事にな
る。
第1の処理ステップ12で求められた剰余の値に、tabl
eA[2]の値を掛け、その掛け算後のデータをLビットシ
フトダウンする(図1における“>>L”はLビットシフ
トダウンを意味している)。ここで、tableA[2]の値
は、256/3を整数値で表したものであり、またLビ
ット(ここでは8ビット)シフトダウンする事は256
で割る事に相当するので、結局この処理は、上記剰余の
値を3で割ったときの商を求めている事と等価である。
つまり、3桁の3進数の2桁目bの値を求めた事にな
る。
【0026】また、第2の処理ステップ13では、上記
のようにして求められた値bにtableB[2]の値を掛け、
上記剰余の値からその値を引いた値を求める。ここで、
tableB[2]の値は3であるので、この計算によって、上
記剰余の値を3で割ったときの剰余を求めていることに
なる。
のようにして求められた値bにtableB[2]の値を掛け、
上記剰余の値からその値を引いた値を求める。ここで、
tableB[2]の値は3であるので、この計算によって、上
記剰余の値を3で割ったときの剰余を求めていることに
なる。
【0027】次に、第3の処理ステップ14では、前段
の第2の処理ステップ13で算出された剰余の値をもっ
て、3桁の3進数の1桁目の値aとして決定される。
の第2の処理ステップ13で算出された剰余の値をもっ
て、3桁の3進数の1桁目の値aとして決定される。
【0028】なお、以上の処理において、tableB[・]の
値は、各処理ステップ毎に計算によって逐次求めても良
い。
値は、各処理ステップ毎に計算によって逐次求めても良
い。
【0029】以上のように、本実施形態は、3桁の3進
数でグルーピングされた信号値の、第3桁目の値を求め
る第1の処理ステップ、第2桁目の値を求める第2の処
理ステップ、第1桁目の値を求める第3の処理ステップ
を有し、各処理ステップでは、それぞれ、2個のテーブ
ル値と2回の掛け算と1回のビットシフトダウン処理と
1回の減算のみによって逆グルーピング処理を実現して
いる。即ち、上記第1の処理ステップでは、入力信号の
値と、第1の処理ステップに対し予め定められた値(=
29)とを掛け合わせた値をL(=8)ビットシフトダ
ウンした値を算出し、該値を第1の処理ステップの出力
1とし、上記入力信号値から上記出力1に3の2乗を掛
けた値を引いた値を第1の処理ステップの出力2とし、
第2の処理ステップでは、第1の処理ステップの出力2
と、第2の処理ステップに対し予め定められた値(=8
6)とを掛け合わせた値をL(=8)ビットシフトダウ
ンした値を算出し、該値を第2の処理ステップの出力1
とし、第1の処理ステップの出力2から第2の処理ステ
ップの出力1に3の1乗を掛けた値を引いた値を第2の
処理ステップの出力2とし、第3の処理ステップでは、
第2の処理ステップの出力2を第3の処理ステップの出
力1とし、上記各処理ステップの出力1を第3、第2、
第1桁目の値としている。
数でグルーピングされた信号値の、第3桁目の値を求め
る第1の処理ステップ、第2桁目の値を求める第2の処
理ステップ、第1桁目の値を求める第3の処理ステップ
を有し、各処理ステップでは、それぞれ、2個のテーブ
ル値と2回の掛け算と1回のビットシフトダウン処理と
1回の減算のみによって逆グルーピング処理を実現して
いる。即ち、上記第1の処理ステップでは、入力信号の
値と、第1の処理ステップに対し予め定められた値(=
29)とを掛け合わせた値をL(=8)ビットシフトダ
ウンした値を算出し、該値を第1の処理ステップの出力
1とし、上記入力信号値から上記出力1に3の2乗を掛
けた値を引いた値を第1の処理ステップの出力2とし、
第2の処理ステップでは、第1の処理ステップの出力2
と、第2の処理ステップに対し予め定められた値(=8
6)とを掛け合わせた値をL(=8)ビットシフトダウ
ンした値を算出し、該値を第2の処理ステップの出力1
とし、第1の処理ステップの出力2から第2の処理ステ
ップの出力1に3の1乗を掛けた値を引いた値を第2の
処理ステップの出力2とし、第3の処理ステップでは、
第2の処理ステップの出力2を第3の処理ステップの出
力1とし、上記各処理ステップの出力1を第3、第2、
第1桁目の値としている。
【0030】したがって、テーブル容量としてはtableA
[1],tableA[2],tableB[1],tableB[2]のみでよく、本実
施形態の例ではtableA[1]=29→5bit, tableA[2]=86→
7bit,tableB[1]=9→4bit, tableB[2]=3→2bit とな
り、合計18bitで足り、従来例で述べた162bitに比
べて十分少ないテーブル容量で実現できる。また、ルー
プ処理がないため少ない演算量と少ない演算回路規模で
逆グルーピング処理を行う事ができる。特に演算ステッ
プ数について言えば、本実施形態によればビットシフト
を1ステップと数えて含めたとしても、8ステップで可
能であり、従来例で述べた16ステップに比べて少ない
演算ステップで実現できる。
[1],tableA[2],tableB[1],tableB[2]のみでよく、本実
施形態の例ではtableA[1]=29→5bit, tableA[2]=86→
7bit,tableB[1]=9→4bit, tableB[2]=3→2bit とな
り、合計18bitで足り、従来例で述べた162bitに比
べて十分少ないテーブル容量で実現できる。また、ルー
プ処理がないため少ない演算量と少ない演算回路規模で
逆グルーピング処理を行う事ができる。特に演算ステッ
プ数について言えば、本実施形態によればビットシフト
を1ステップと数えて含めたとしても、8ステップで可
能であり、従来例で述べた16ステップに比べて少ない
演算ステップで実現できる。
【0031】以下、本発明の第2の実施形態に係るデコ
ード方法について、図面を参照しながら説明する。な
お、本実施形態では、3桁の5進数でグルーピングされ
た信号を逆グルーピング処理する方法(デコード方法)
について説明する。
ード方法について、図面を参照しながら説明する。な
お、本実施形態では、3桁の5進数でグルーピングされ
た信号を逆グルーピング処理する方法(デコード方法)
について説明する。
【0032】図2は本発明の第2の実施形態におけるデ
コード方法の処理の流れを示すフローチャートである。
図2において、処理ステップ21は、テーブル、その他
のデータを初期化する初期設定処理ステップである。処
理ステップ22は、3桁の5進数でグルーピングされた
信号Gの3桁目の値aを抽出する第1の処理ステップで
あり、このステップで変数aに3桁目の値が格納され
る。処理ステップ23は、2桁目の値bを抽出する第2
の処理ステップであり、このステップで変数bに2桁目
の値が格納される。処理ステップ24は、1桁目の値c
を抽出する第3の処理ステップである。このステップで
変数cに1桁目の値が格納される。
コード方法の処理の流れを示すフローチャートである。
図2において、処理ステップ21は、テーブル、その他
のデータを初期化する初期設定処理ステップである。処
理ステップ22は、3桁の5進数でグルーピングされた
信号Gの3桁目の値aを抽出する第1の処理ステップで
あり、このステップで変数aに3桁目の値が格納され
る。処理ステップ23は、2桁目の値bを抽出する第2
の処理ステップであり、このステップで変数bに2桁目
の値が格納される。処理ステップ24は、1桁目の値c
を抽出する第3の処理ステップである。このステップで
変数cに1桁目の値が格納される。
【0033】以上のフローチャートに示す処理手順で規
定される本実施形態のデコード方法について、以下その
詳細を図2を用いて説明する。
定される本実施形態のデコード方法について、以下その
詳細を図2を用いて説明する。
【0034】まず図2における、初期設定処理ステップ
21において、tableA[・]、tableB[・]、Lを初期化す
る。ここで、tableA[1]は、1024/25の少数点以
下を切り上げる事によって整数化した値(=41)であ
る。tableA[2]は、1024/5の値の小数点以下を切
り上げる事によって整数化した値(=205)である。
tableB[1]は、5の2乗(=25)であり、tableB[2]
は、5の1乗(=5)である。Lは、2のL乗が102
4となるところの値(=10)である。
21において、tableA[・]、tableB[・]、Lを初期化す
る。ここで、tableA[1]は、1024/25の少数点以
下を切り上げる事によって整数化した値(=41)であ
る。tableA[2]は、1024/5の値の小数点以下を切
り上げる事によって整数化した値(=205)である。
tableB[1]は、5の2乗(=25)であり、tableB[2]
は、5の1乗(=5)である。Lは、2のL乗が102
4となるところの値(=10)である。
【0035】次に、第1の処理ステップ22で、入力信
号GにtableA[1]の値を掛け、さらにその掛け算後のデ
ータをLビットシフトダウンする(図2における“>>
L”はLビットシフトダウンを意味している)。ここ
で、tableA[1]の値は、1024/25を整数値で表し
たものであり、またLビット(ここでは10ビット)シ
フトダウンする事は1024で割る事に相当するので、
結局この処理は、入力信号の値を25で割ったときの商
を求めている事と等価である。つまり、3桁の5進数の
3桁目の値aを求めた事になる。
号GにtableA[1]の値を掛け、さらにその掛け算後のデ
ータをLビットシフトダウンする(図2における“>>
L”はLビットシフトダウンを意味している)。ここ
で、tableA[1]の値は、1024/25を整数値で表し
たものであり、またLビット(ここでは10ビット)シ
フトダウンする事は1024で割る事に相当するので、
結局この処理は、入力信号の値を25で割ったときの商
を求めている事と等価である。つまり、3桁の5進数の
3桁目の値aを求めた事になる。
【0036】ここでLの値は、あまり小さすぎると演算
誤差が発生するので、本実施形態においては10以上の
値がよい。しかし、あまり大きすぎる値の場合には回路
規模が大きくなるので、本実施形態の場合は10が望ま
しい。
誤差が発生するので、本実施形態においては10以上の
値がよい。しかし、あまり大きすぎる値の場合には回路
規模が大きくなるので、本実施形態の場合は10が望ま
しい。
【0037】また、第1の処理ステップ22では、上記
の様にして求められた値aにtableB[1]の値を掛け、こ
の掛け算結果の値を入力信号値Gから引いた値を求め
る。ここで、tableB[1]の値は25であるので、この計
算によって、入力信号値Gを25で割ったときの剰余を
求めていることになる。
の様にして求められた値aにtableB[1]の値を掛け、こ
の掛け算結果の値を入力信号値Gから引いた値を求め
る。ここで、tableB[1]の値は25であるので、この計
算によって、入力信号値Gを25で割ったときの剰余を
求めていることになる。
【0038】次に、第2の処理ステップ23で、前段の
第1の処理ステップ22で求められた剰余の値に、tabl
eA[2]の値を掛け、その掛け算後のデータをLビットシ
フトダウンする(図2における“>>L”はLビットシフ
トダウンを意味している)。ここで、tableA[2]の値
は、1024/5を整数値で表したものであり、またL
ビット(ここでは10ビット)シフトダウンする事は1
024で割る事に相当するので、結局この処理は、上記
剰余の値を5で割ったときの商を求めている事と等価で
ある。つまり3桁の5進数の2桁目bの値を求めた事に
なる。
第1の処理ステップ22で求められた剰余の値に、tabl
eA[2]の値を掛け、その掛け算後のデータをLビットシ
フトダウンする(図2における“>>L”はLビットシフ
トダウンを意味している)。ここで、tableA[2]の値
は、1024/5を整数値で表したものであり、またL
ビット(ここでは10ビット)シフトダウンする事は1
024で割る事に相当するので、結局この処理は、上記
剰余の値を5で割ったときの商を求めている事と等価で
ある。つまり3桁の5進数の2桁目bの値を求めた事に
なる。
【0039】また、第2の処理ステップ23では、上記
のようにして求められた値bにtableB[2]の値を掛け、
上記剰余の値からその値を引いた値を求める。ここで、
tableB[2]の値は5であるので、この計算によって、上
記剰余の値を5で割ったときの剰余を求めていることに
なる。
のようにして求められた値bにtableB[2]の値を掛け、
上記剰余の値からその値を引いた値を求める。ここで、
tableB[2]の値は5であるので、この計算によって、上
記剰余の値を5で割ったときの剰余を求めていることに
なる。
【0040】次に、第3の処理ステップ24では、前段
の第2の処理ステップ23で算出された剰余の値をもっ
て、3桁の5進数の1桁目の値aとして決定される。
の第2の処理ステップ23で算出された剰余の値をもっ
て、3桁の5進数の1桁目の値aとして決定される。
【0041】なお、以上の処理において、tableB[・]の
値は、各処理ステップ毎に計算によって逐次求めても良
い。
値は、各処理ステップ毎に計算によって逐次求めても良
い。
【0042】以上のように、本実施形態は、3桁の5進
数でグルーピングされた信号値の、第3桁目の値を求め
る第1の処理ステップ、第2桁目の値を求める第2の処
理ステップ、第1桁目の値を求める第3の処理ステップ
を有し、各処理ステップでは、それぞれ、2個のテーブ
ル値と2回の掛け算と1回のビットシフトダウン処理と
1回の減算のみによって逆グルーピング処理を行なって
いる。即ち、上記第1の処理ステップでは、入力された
信号の値と、第1の処理ステップに対し予め定められた
値(=41)とを掛け合わせた値をL(=10)ビット
シフトダウンした値を算出し、該値を第1の処理ステッ
プの出力1とし、上記入力された値から上記出力1に5
の2乗を掛けた値を引いた値を第1の処理ステップの出
力2とし、第2の処理ステップでは、第1の処理ステッ
プの出力2と、第2の処理ステップに対し予め定められ
た値(=205)とを掛け合わせた値をL(=10)ビ
ットシフトダウンした値を算出し、該値を第2の処理ス
テップの出力1とし、第1の処理ステップの出力2から
第2の処理ステップの出力1に5の1乗を掛けた値を引
いた値を第2の処理ステップの出力2とし、第3の処理
ステップでは、第2の処理ステップの出力2を第3の処
理ステップの出力1とし、上記各処理ステップの出力1
を第3、第2、第1桁目の値としている。
数でグルーピングされた信号値の、第3桁目の値を求め
る第1の処理ステップ、第2桁目の値を求める第2の処
理ステップ、第1桁目の値を求める第3の処理ステップ
を有し、各処理ステップでは、それぞれ、2個のテーブ
ル値と2回の掛け算と1回のビットシフトダウン処理と
1回の減算のみによって逆グルーピング処理を行なって
いる。即ち、上記第1の処理ステップでは、入力された
信号の値と、第1の処理ステップに対し予め定められた
値(=41)とを掛け合わせた値をL(=10)ビット
シフトダウンした値を算出し、該値を第1の処理ステッ
プの出力1とし、上記入力された値から上記出力1に5
の2乗を掛けた値を引いた値を第1の処理ステップの出
力2とし、第2の処理ステップでは、第1の処理ステッ
プの出力2と、第2の処理ステップに対し予め定められ
た値(=205)とを掛け合わせた値をL(=10)ビ
ットシフトダウンした値を算出し、該値を第2の処理ス
テップの出力1とし、第1の処理ステップの出力2から
第2の処理ステップの出力1に5の1乗を掛けた値を引
いた値を第2の処理ステップの出力2とし、第3の処理
ステップでは、第2の処理ステップの出力2を第3の処
理ステップの出力1とし、上記各処理ステップの出力1
を第3、第2、第1桁目の値としている。
【0043】したがって、テーブル容量としてはtableA
[1],tableA[2],tableB[1],tableB[2]のみでよく、本実
施形態の例ではtableA[1]=41→6bit, tableA[2]=205→
8bit, tableB[1]=25→5bit, tableB[2]=5→3bit と
なり、合計22bitで足り、従来例で述べた1125bit
に比べて極めて少ないテーブル容量で実現できる。ま
た、ループ処理がないため少ない演算量と少ない演算回
路規模で逆グルーピング処理を行う事ができる。特に演
算ステップ数について言えば、本実施形態によればビッ
トシフトを1ステップと数えて含めたとしても、8ステ
ップで可能であり、従来例で述べた26ステップに比べ
て十分少ない演算ステップで実現できる。
[1],tableA[2],tableB[1],tableB[2]のみでよく、本実
施形態の例ではtableA[1]=41→6bit, tableA[2]=205→
8bit, tableB[1]=25→5bit, tableB[2]=5→3bit と
なり、合計22bitで足り、従来例で述べた1125bit
に比べて極めて少ないテーブル容量で実現できる。ま
た、ループ処理がないため少ない演算量と少ない演算回
路規模で逆グルーピング処理を行う事ができる。特に演
算ステップ数について言えば、本実施形態によればビッ
トシフトを1ステップと数えて含めたとしても、8ステ
ップで可能であり、従来例で述べた26ステップに比べ
て十分少ない演算ステップで実現できる。
【0044】以下、本発明の第3の実施形態のデコード
方法について、図面を参照しながら説明する。本実施形
態では、3桁の9進数でグルーピングされた信号を逆グ
ルーピング処理する方法を述べる。
方法について、図面を参照しながら説明する。本実施形
態では、3桁の9進数でグルーピングされた信号を逆グ
ルーピング処理する方法を述べる。
【0045】図3は本発明の第3の実施形態におけるデ
コード方法の処理の流れを示すフローチャートである。
図3において、処理ステップ31は、テーブル、その他
のデータを初期化する初期設定処理ステップである。処
理ステップ32は、3桁の3進数でグルーピングされた
信号Gの3桁目の値aを抽出する第1の処理ステップで
あり、このステップで変数aに3桁目の値が格納され
る。処理ステップ33は、2桁目の値bを抽出する第2
の処理ステップであり、このステップで変数bに2桁目
の値が格納される。処理ステップ34は、1桁目の値c
を抽出する第3の処理ステップであり、このステップで
変数cに1桁目の値が格納される。
コード方法の処理の流れを示すフローチャートである。
図3において、処理ステップ31は、テーブル、その他
のデータを初期化する初期設定処理ステップである。処
理ステップ32は、3桁の3進数でグルーピングされた
信号Gの3桁目の値aを抽出する第1の処理ステップで
あり、このステップで変数aに3桁目の値が格納され
る。処理ステップ33は、2桁目の値bを抽出する第2
の処理ステップであり、このステップで変数bに2桁目
の値が格納される。処理ステップ34は、1桁目の値c
を抽出する第3の処理ステップであり、このステップで
変数cに1桁目の値が格納される。
【0046】以上のフローチャートに示す処理手順で規
定される本実施形態のデコード方法について、以下その
詳細を図3を用いて説明する。
定される本実施形態のデコード方法について、以下その
詳細を図3を用いて説明する。
【0047】まず図3における、初期設定処理ステップ
31において、tableA[・]、tableB[・]、Lを初期化す
る。ここで、tableA[1]は、32768/81の小数点
以下を切り上げる事によって整数化した値(=405)
である。tableA[2]は、32768/9の値の小数点以
下を切り上げる事によって整数化した値(=3641)
である。tableB[1]は9の2乗(=81)であり、table
B[2]は9の1乗(=9)である。Lは、2のL乗が32
768となるところの値(=15)である。
31において、tableA[・]、tableB[・]、Lを初期化す
る。ここで、tableA[1]は、32768/81の小数点
以下を切り上げる事によって整数化した値(=405)
である。tableA[2]は、32768/9の値の小数点以
下を切り上げる事によって整数化した値(=3641)
である。tableB[1]は9の2乗(=81)であり、table
B[2]は9の1乗(=9)である。Lは、2のL乗が32
768となるところの値(=15)である。
【0048】次に、第1の処理ステップ32で、入力信
号GにtableA[1]の値を掛け、さらにその掛け算後のデ
ータをLビットシフトダウンする(図3における“>>
L”はLビットシフトダウンを意味している)。ここ
で、tableA[1]の値は、32768/81を整数値で表
したものであり、またLビット(ここでは15ビット)
シフトダウンする事は32768で割る事に相当するの
で、結局この処理は、入力信号の値を81で割ったとき
の商を求めている事と等価である。つまり、3桁の9進
数の3桁目aの値を求めた事になる。
号GにtableA[1]の値を掛け、さらにその掛け算後のデ
ータをLビットシフトダウンする(図3における“>>
L”はLビットシフトダウンを意味している)。ここ
で、tableA[1]の値は、32768/81を整数値で表
したものであり、またLビット(ここでは15ビット)
シフトダウンする事は32768で割る事に相当するの
で、結局この処理は、入力信号の値を81で割ったとき
の商を求めている事と等価である。つまり、3桁の9進
数の3桁目aの値を求めた事になる。
【0049】ここでLの値は、あまり小さすぎると演算
誤差が発生するので、本実施形態においては15以上の
値がよい。しかし、あまり大きすぎる値の場合には回路
規模が大きくなるので、本実施形態の場合は15が望ま
しい。
誤差が発生するので、本実施形態においては15以上の
値がよい。しかし、あまり大きすぎる値の場合には回路
規模が大きくなるので、本実施形態の場合は15が望ま
しい。
【0050】また、第1の処理ステップ32では、上記
の様にして求められた値aにtableB[1]の値を掛け、こ
の掛け算結果の値を入力信号値Gから引いた値を求め
る。ここで、tableB[1]の値は81であるので、この計
算によって、入力信号値Gを81で割ったときの剰余を
求めていることになる。
の様にして求められた値aにtableB[1]の値を掛け、こ
の掛け算結果の値を入力信号値Gから引いた値を求め
る。ここで、tableB[1]の値は81であるので、この計
算によって、入力信号値Gを81で割ったときの剰余を
求めていることになる。
【0051】次に、第2の処理ステップ33で、前段の
第1の処理ステップ32で求められた剰余の値に、tabl
eA[2]の値を掛け、その掛け算後のデータをLビットシ
フトダウンする(図3における“>>L”はLビットシフ
トダウンを意味している)。ここで、tableA[2]の値
は、32768/9を整数値で表したものであり、また
Lビット(ここでは15ビット)シフトダウンする事は
32768で割る事に相当するので、結局この処理は、
上記剰余の値を9で割ったときの商を求めている事と等
価である。つまり、3桁の9進数の2桁目bの値を求め
た事になる。
第1の処理ステップ32で求められた剰余の値に、tabl
eA[2]の値を掛け、その掛け算後のデータをLビットシ
フトダウンする(図3における“>>L”はLビットシフ
トダウンを意味している)。ここで、tableA[2]の値
は、32768/9を整数値で表したものであり、また
Lビット(ここでは15ビット)シフトダウンする事は
32768で割る事に相当するので、結局この処理は、
上記剰余の値を9で割ったときの商を求めている事と等
価である。つまり、3桁の9進数の2桁目bの値を求め
た事になる。
【0052】また、第2の処理ステップ33では、上記
のようにして求められた値bにtableB[2]の値を掛け、
上記剰余の値からその値を引いた値を求める。ここで、
tableB[2]の値は9であるので、この計算によって、上
記剰余の値を9で割ったときの剰余を求めていることに
なる。
のようにして求められた値bにtableB[2]の値を掛け、
上記剰余の値からその値を引いた値を求める。ここで、
tableB[2]の値は9であるので、この計算によって、上
記剰余の値を9で割ったときの剰余を求めていることに
なる。
【0053】次に、第3の処理ステップ34では、前段
の第2の処理ステップ33で算出された剰余の値をもっ
て、3桁の9進数の1桁目のaとして決定される。
の第2の処理ステップ33で算出された剰余の値をもっ
て、3桁の9進数の1桁目のaとして決定される。
【0054】なお、以上の処理において、tableB[・]の
値は、各処理ステップ毎に計算によって逐次求めても良
い。
値は、各処理ステップ毎に計算によって逐次求めても良
い。
【0055】以上のように、本実施形態は、3桁の9進
数でグルーピングされた信号値の、第3桁目の値を求め
る第1の処理ステップ、第2桁目の値を求める第2の処
理ステップ、第1桁目の値を求める第3の処理ステップ
を有し、各処理ステップでは、それぞれ、2個のテーブ
ル値と2回の掛け算と1回のビットシフトダウン処理と
1回の減算のみによって逆グルーピング処理を実現して
いる。即ち、上記第1の処理ステップでは、入力された
信号の値と、第1の処理ステップに対し予め定められた
値(=405)とを掛け合わせた値をL(=15)ビッ
トシフトダウンした値を算出し、該値を第1の処理ステ
ップの出力1とし、上記入力信号値から上記出力1に9
の2乗をかけた値を引いた値を第1の処理ステップの出
力2とし、第2の処理ステップでは、第1の処理ステッ
プの出力2と、第2の処理ステップに対し予め定められ
た値(=3641)とを掛け合わせた値をL(=15)
ビットシフトダウンした値を算出し、該値を第2の処理
ステップの出力1とし、第1の処理ステップの出力2か
ら第2の処理ステップの出力1に9の1乗を掛けた値を
引いた値を第2の処理ステップの出力2とし、第3の処
理ステップでは、第2の処理ステップの出力2を第3の
処理ステップの出力1とし、上記各処理ステップの出力
1を第(4−i:i=1、2、3)桁目の値としてい
る。
数でグルーピングされた信号値の、第3桁目の値を求め
る第1の処理ステップ、第2桁目の値を求める第2の処
理ステップ、第1桁目の値を求める第3の処理ステップ
を有し、各処理ステップでは、それぞれ、2個のテーブ
ル値と2回の掛け算と1回のビットシフトダウン処理と
1回の減算のみによって逆グルーピング処理を実現して
いる。即ち、上記第1の処理ステップでは、入力された
信号の値と、第1の処理ステップに対し予め定められた
値(=405)とを掛け合わせた値をL(=15)ビッ
トシフトダウンした値を算出し、該値を第1の処理ステ
ップの出力1とし、上記入力信号値から上記出力1に9
の2乗をかけた値を引いた値を第1の処理ステップの出
力2とし、第2の処理ステップでは、第1の処理ステッ
プの出力2と、第2の処理ステップに対し予め定められ
た値(=3641)とを掛け合わせた値をL(=15)
ビットシフトダウンした値を算出し、該値を第2の処理
ステップの出力1とし、第1の処理ステップの出力2か
ら第2の処理ステップの出力1に9の1乗を掛けた値を
引いた値を第2の処理ステップの出力2とし、第3の処
理ステップでは、第2の処理ステップの出力2を第3の
処理ステップの出力1とし、上記各処理ステップの出力
1を第(4−i:i=1、2、3)桁目の値としてい
る。
【0056】したがって、テーブル容量としてはtableA
[1],tableA[2],tableB[1],tableB[2]のみでよく、本実
施形態の例ではtableA[1]=405→9bit, tableA[2]=3641
→12bit, tableB[1]=81→7bit, tableB[2]=9→4bit
となり、合計32bitで足り、従来例で述べた8748
bitに比べて極めて少ないテーブル容量で実現できる。
また、ループ処理がないため少ない演算量と少ない演算
回路規模で逆グルーピング処理を行う事ができる。特に
演算ステップ数について言えば、本実施形態によればビ
ットシフトを1ステップと数えて含めたとしても、8ス
テップで可能であり、従来例で述べた52ステップに比
べて十分少ない演算ステップで実現できる。
[1],tableA[2],tableB[1],tableB[2]のみでよく、本実
施形態の例ではtableA[1]=405→9bit, tableA[2]=3641
→12bit, tableB[1]=81→7bit, tableB[2]=9→4bit
となり、合計32bitで足り、従来例で述べた8748
bitに比べて極めて少ないテーブル容量で実現できる。
また、ループ処理がないため少ない演算量と少ない演算
回路規模で逆グルーピング処理を行う事ができる。特に
演算ステップ数について言えば、本実施形態によればビ
ットシフトを1ステップと数えて含めたとしても、8ス
テップで可能であり、従来例で述べた52ステップに比
べて十分少ない演算ステップで実現できる。
【0057】以上の説明から明らかなように、本発明に
よる効果はn桁(nは正の整数)のm進数(mは正の整
数)によるグルーピングにおいてn、mが大きくなれば
なるほど、従来例に比べて、メモリ容量、演算ステップ
数等において、優れた作用効果を発揮するものである。
よる効果はn桁(nは正の整数)のm進数(mは正の整
数)によるグルーピングにおいてn、mが大きくなれば
なるほど、従来例に比べて、メモリ容量、演算ステップ
数等において、優れた作用効果を発揮するものである。
【0058】なお、本実施形態においては、3桁の3進
数、5進数、9進数の場合について説明したが、以下の
ように変形してもかまわない。すなわち、本発明の技術
思想としては、入力された信号の値をN桁(但し、Nは
正の整数)のM進数(但し、Mは正の整数)で表現した
ときの各桁の値をそれぞれ抽出してデコードする場合に
は、第N桁目の値を求める第1の処理ステップ、第(N
−1)桁目の値を求める第2の処理ステップ、・・・、
第1桁目の値を求める第Nの処理ステップ、のN個の処
理ステップを有し、第1の処理ステップでは、入力され
た信号の値と、第1の処理ステップに対し予め定められ
た定数とを掛け合わせた値をLビットシフトダウンした
値を算出し、該値を第1の処理ステップの第1出力と
し、上記入力された信号の値から上記第1の処理ステッ
プの第1出力に上記Mの(N−1)乗を掛けた値を引い
た値を上記第1の処理ステップの第2出力とし、以降、
第iの処理ステップ(但し、2≦i<N ;iは整数)
では、第(i−1)の処理ステップの第2出力と、第i
の処理ステップに対し予め定められた定数とを掛け合わ
せた値をLビットシフトダウンした値を算出し、該値を
前記第iの処理ステップの第1出力とし、前記第(i−
1)の処理ステップの第2出力から前記第iの処理ステ
ップの第1出力に上記Mの(N−i)乗を掛けた値を引
いた値を前記第iの処理ステップの第2出力とし、第N
の処理ステップでは、第(N−1)の処理ステップの第
2出力を第Nの処理ステップの第1出力とし、第kの処
理ステップ(但し、1≦k≦N ;kは整数)の第1出
力を第(N−k+1)桁目の値として抽出すればよい。
数、5進数、9進数の場合について説明したが、以下の
ように変形してもかまわない。すなわち、本発明の技術
思想としては、入力された信号の値をN桁(但し、Nは
正の整数)のM進数(但し、Mは正の整数)で表現した
ときの各桁の値をそれぞれ抽出してデコードする場合に
は、第N桁目の値を求める第1の処理ステップ、第(N
−1)桁目の値を求める第2の処理ステップ、・・・、
第1桁目の値を求める第Nの処理ステップ、のN個の処
理ステップを有し、第1の処理ステップでは、入力され
た信号の値と、第1の処理ステップに対し予め定められ
た定数とを掛け合わせた値をLビットシフトダウンした
値を算出し、該値を第1の処理ステップの第1出力と
し、上記入力された信号の値から上記第1の処理ステッ
プの第1出力に上記Mの(N−1)乗を掛けた値を引い
た値を上記第1の処理ステップの第2出力とし、以降、
第iの処理ステップ(但し、2≦i<N ;iは整数)
では、第(i−1)の処理ステップの第2出力と、第i
の処理ステップに対し予め定められた定数とを掛け合わ
せた値をLビットシフトダウンした値を算出し、該値を
前記第iの処理ステップの第1出力とし、前記第(i−
1)の処理ステップの第2出力から前記第iの処理ステ
ップの第1出力に上記Mの(N−i)乗を掛けた値を引
いた値を前記第iの処理ステップの第2出力とし、第N
の処理ステップでは、第(N−1)の処理ステップの第
2出力を第Nの処理ステップの第1出力とし、第kの処
理ステップ(但し、1≦k≦N ;kは整数)の第1出
力を第(N−k+1)桁目の値として抽出すればよい。
【0059】その際、第jの処理ステップ(但し、1≦
j<N ;jは整数)に対して予め与えられている定数
は、2のL乗をMの(N−j)乗で割った値を表す整数
値、もしくは、2のL乗をMの(N−j)乗で割って得
られる値に対し少数点以下を切り上げることによって整
数化した値であればよい。
j<N ;jは整数)に対して予め与えられている定数
は、2のL乗をMの(N−j)乗で割った値を表す整数
値、もしくは、2のL乗をMの(N−j)乗で割って得
られる値に対し少数点以下を切り上げることによって整
数化した値であればよい。
【0060】
【発明の効果】以上の説明より明らかなように、本発明
のデコード方法は、入力された信号の値をN桁(但し、
Nは正の整数)のM進数(但し、Mは正の整数)で表現
したときの各桁の値をそれぞれ抽出するデコード方法で
あって、第N桁目の値を求める第1の処理ステップ、第
(N−1)桁目の値を求める第2の処理ステップ、・・
・、第1桁目の値を求める第Nの処理ステップ、のN個
の処理ステップを有し、第1の処理ステップでは、入力
された信号の値と、第1の処理ステップに対し予め定め
られた定数とを掛け合わせた値をLビットシフトダウン
した値を算出し、該値を第1の処理ステップの第1出力
とし、上記入力された信号の値から上記第1の処理ステ
ップの第1出力に上記Mの(N−1)乗を掛けた値を引
いた値を上記第1の処理ステップの第2出力とし、以
降、第iの処理ステップ(但し、2≦i<N ;iは整
数)では、第(i−1)の処理ステップの第2出力と、
第iの処理ステップに対し予め定められた定数とを掛け
合わせた値をLビットシフトダウンした値を算出し、該
値を前記第iの処理ステップの第1出力とし、前記第
(i−1)の処理ステップの第2出力から前記第iの処
理ステップの第1出力に上記Mの(N−i)乗を掛けた
値を引いた値を前記第iの処理ステップの第2出力と
し、第Nの処理ステップでは、第(N−1)の処理ステ
ップの第2出力を第Nの処理ステップの第1出力とし、
第kの処理ステップ(但し、1≦k≦N ;kは整数)
の第1出力を第(N−k+1)桁目の値として抽出する
ことを特徴とするものであり、これにより、各処理ステ
ップでは、それぞれ、2個のテーブル値と2回のかけ算
と1回のビットシフトダウン処理と1回の減算のみによ
って逆グルーピング処理を行う事ができ、よって、小さ
なテーブルサイズで、かつ少ない演算ステップ数、小さ
な回路規模で逆グルーピング処理が実現でき、その効果
は大なるものがある。
のデコード方法は、入力された信号の値をN桁(但し、
Nは正の整数)のM進数(但し、Mは正の整数)で表現
したときの各桁の値をそれぞれ抽出するデコード方法で
あって、第N桁目の値を求める第1の処理ステップ、第
(N−1)桁目の値を求める第2の処理ステップ、・・
・、第1桁目の値を求める第Nの処理ステップ、のN個
の処理ステップを有し、第1の処理ステップでは、入力
された信号の値と、第1の処理ステップに対し予め定め
られた定数とを掛け合わせた値をLビットシフトダウン
した値を算出し、該値を第1の処理ステップの第1出力
とし、上記入力された信号の値から上記第1の処理ステ
ップの第1出力に上記Mの(N−1)乗を掛けた値を引
いた値を上記第1の処理ステップの第2出力とし、以
降、第iの処理ステップ(但し、2≦i<N ;iは整
数)では、第(i−1)の処理ステップの第2出力と、
第iの処理ステップに対し予め定められた定数とを掛け
合わせた値をLビットシフトダウンした値を算出し、該
値を前記第iの処理ステップの第1出力とし、前記第
(i−1)の処理ステップの第2出力から前記第iの処
理ステップの第1出力に上記Mの(N−i)乗を掛けた
値を引いた値を前記第iの処理ステップの第2出力と
し、第Nの処理ステップでは、第(N−1)の処理ステ
ップの第2出力を第Nの処理ステップの第1出力とし、
第kの処理ステップ(但し、1≦k≦N ;kは整数)
の第1出力を第(N−k+1)桁目の値として抽出する
ことを特徴とするものであり、これにより、各処理ステ
ップでは、それぞれ、2個のテーブル値と2回のかけ算
と1回のビットシフトダウン処理と1回の減算のみによ
って逆グルーピング処理を行う事ができ、よって、小さ
なテーブルサイズで、かつ少ない演算ステップ数、小さ
な回路規模で逆グルーピング処理が実現でき、その効果
は大なるものがある。
【0061】また、第jの処理ステップ(1≦j<N;
jは整数)に対して予め与えられている値は、2のL
乗をMの(Nーj)乗で割った値を表す整数値であり、
とりわけ、2のL乗をMの(Nーj)乗で割った値に対
し少数点以下を切り上げることによって整数化した値で
ある。上記Lは、あまり小さすぎる値の場合演算誤差が
発生するので上記Mが3の場合8以上の値であり、上記
Mが5の場合10以上の値であり、上記Mが9の場合1
5以上の値であることが必要である。この際、あまり大
きすぎる値の場合には回路規模が大きくなるので、上記
Mが3の場合は8、上記Mが5の場合は10、上記Mが
9の場合は15であれば、演算誤差が発生せずかつ、回
路規模を抑えて実現することができる。
jは整数)に対して予め与えられている値は、2のL
乗をMの(Nーj)乗で割った値を表す整数値であり、
とりわけ、2のL乗をMの(Nーj)乗で割った値に対
し少数点以下を切り上げることによって整数化した値で
ある。上記Lは、あまり小さすぎる値の場合演算誤差が
発生するので上記Mが3の場合8以上の値であり、上記
Mが5の場合10以上の値であり、上記Mが9の場合1
5以上の値であることが必要である。この際、あまり大
きすぎる値の場合には回路規模が大きくなるので、上記
Mが3の場合は8、上記Mが5の場合は10、上記Mが
9の場合は15であれば、演算誤差が発生せずかつ、回
路規模を抑えて実現することができる。
【図1】本発明の第1の実施形態に係る処理の流れを示
すフローチャート
すフローチャート
【図2】本発明の第2の実施形態に係る処理の流れを示
すフローチャート
すフローチャート
【図3】本発明の第3の実施形態に係る処理の流れを示
すフローチャート
すフローチャート
【図4】従来例における、逆グルーピング処理の際に用
いられるテーブルを示した図
いられるテーブルを示した図
【図5】従来例における逆グルーピング処理のフローチ
ャート
ャート
11,21,31 初期設定処理ステップ 12,22,32 第1の処理ステップ 13,23,33 第2の処理ステップ 14,24,34 第3の処理ステップ
───────────────────────────────────────────────────── フロントページの続き (56)参考文献 特開 昭59−168543(JP,A) 特開 昭57−187742(JP,A) 特開 昭50−154058(JP,A) (58)調査した分野(Int.Cl.6,DB名) H03M 7/12
Claims (5)
- 【請求項1】入力された信号の値をN桁(但し、Nは正
の整数)のM進数(但し、Mは正の整数)で表現したと
きの各桁の値をそれぞれ抽出するデコード方法であっ
て、 第N桁目の値を求める第1の処理ステップ、第(N−
1)桁目の値を求める第2の処理ステップ、・・・、第
1桁目の値を求める第Nの処理ステップ、のN個の処理
ステップを有し、 第1の処理ステップでは、入力された信号の値と、第1
の処理ステップに対し予め定められた定数とを掛け合わ
せた値をLビットシフトダウンした値を算出し、該値を
第1の処理ステップの第1出力とし、上記入力された信
号の値から上記第1の処理ステップの第1出力に上記M
の(N−1)乗を掛けた値を引いた値を上記第1の処理
ステップの第2出力とし、 以降、第iの処理ステップ(但し、2≦i<N ;iは
整数)では、第(i−1)の処理ステップの第2出力
と、第iの処理ステップに対し予め定められた定数とを
掛け合わせた値をLビットシフトダウンした値を算出
し、該値を前記第iの処理ステップの第1出力とし、前
記第(i−1)の処理ステップの第2出力から前記第i
の処理ステップの第1出力に上記Mの(N−i)乗を掛
けた値を引いた値を前記第iの処理ステップの第2出力
とし、 第Nの処理ステップでは、第(N−1)の処理ステップ
の第2出力を第Nの処理ステップの第1出力とし、 第kの処理ステップ(但し、1≦k≦N ;kは整数)
の第1出力を第(N−k+1)桁目の値として抽出する
ことを特徴とするデコード方法。 - 【請求項2】第jの処理ステップ(但し、1≦j<N
;jは整数)に対して予め与えられている定数は、2
のL乗をMの(N−j)乗で割った値を表す整数値であ
ることを特徴とする請求項1記載のデコード方法。 - 【請求項3】第jの処理ステップ(但し、1≦j<N
;jは整数)に対して予め与えられている定数は、2
のL乗をMの(N−j)乗で割って得られる値に対し少
数点以下を切り上げることによって整数化した値である
ことを特徴とする請求項1記載のデコード方法。 - 【請求項4】Lの値はMに応じて予め定められているこ
とを特徴とする請求項1から3のいずれかに記載のデコ
ード方法。 - 【請求項5】Lの値は、Mが3の場合は8以上の値であ
り、Mが5の場合は10以上の値であり、Mが9の場合
は15以上の値であることを特徴とする請求項1から4
のいずれかに記載のデコード方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP25258696A JP2900895B2 (ja) | 1996-09-25 | 1996-09-25 | デコード方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP25258696A JP2900895B2 (ja) | 1996-09-25 | 1996-09-25 | デコード方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH1098388A JPH1098388A (ja) | 1998-04-14 |
JP2900895B2 true JP2900895B2 (ja) | 1999-06-02 |
Family
ID=17239440
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP25258696A Expired - Fee Related JP2900895B2 (ja) | 1996-09-25 | 1996-09-25 | デコード方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2900895B2 (ja) |
-
1996
- 1996-09-25 JP JP25258696A patent/JP2900895B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JPH1098388A (ja) | 1998-04-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5329475A (en) | Data round-off device for rounding-off m-bit digital data into (m-n) bit digital data | |
US4802222A (en) | Data compression system and method for audio signals | |
KR100498457B1 (ko) | 메모리를 감소시키는 개선된 룩업 테이블 압축방법 및이를 이용하여 압축된 룩업 테이블을 가지는 비선형 함수발생장치 및 그 발생방법 | |
JP5366363B2 (ja) | Mをnより小さいとしてnビット語をmビット語にトランスコードする方法および装置 | |
EP0935203A2 (en) | Exponential calculation device | |
KR950015183B1 (ko) | 2진 샘플 제곱근 계산 장치 | |
NO143776B (no) | Digital/analog omformer. | |
JPS5838023A (ja) | 第1および第2の2進数の2進減算を行うデジタルフイルタを含む装置 | |
WO2001095496A1 (fr) | Procede et appareil de compression, procede et appareil d'expansion, systeme de compression expansion | |
US5987487A (en) | Methods and apparatus for the processing of digital signals | |
TW201028013A (en) | Method and system for encoded video compression | |
US6480550B1 (en) | Method of compressing an analogue signal | |
JPH09325955A (ja) | 二乗和の平方根演算回路 | |
CN111711431B (zh) | 减少数字滤波器csd系数中非零位的方法 | |
JP2900895B2 (ja) | デコード方法 | |
JP4665099B2 (ja) | デジタル・フィルタのフィルタ係数を決定する方法およびデジタル・フィルタ | |
JP2775857B2 (ja) | デジタル信号の帯域圧縮回路 | |
JPS60251733A (ja) | デイジタル信号伝送装置 | |
JP3014330B2 (ja) | 多チャンネルオーディオデコーダの逆正規化装置及びそれに用いる逆正規化方法 | |
KR100852220B1 (ko) | 가변길이 다중비트 코딩을 이용하여 최소 부호수를 구하는방법 | |
WO2005085990A1 (en) | A high speed shifter circuit | |
FI92778B (fi) | Digitaalisignaalin amplitudinsäätöjärjestelmä digitaalisignaalien muuttamiseksi jokseenkin tasaisin dB-askelin | |
JP2621535B2 (ja) | 符号変換回路 | |
JP2725524B2 (ja) | 波形データの圧縮方法および波形データの再生装置 | |
JPH0732349B2 (ja) | デコーダ装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
LAPS | Cancellation because of no payment of annual fees |