JP2775857B2 - デジタル信号の帯域圧縮回路 - Google Patents
デジタル信号の帯域圧縮回路Info
- Publication number
- JP2775857B2 JP2775857B2 JP1157339A JP15733989A JP2775857B2 JP 2775857 B2 JP2775857 B2 JP 2775857B2 JP 1157339 A JP1157339 A JP 1157339A JP 15733989 A JP15733989 A JP 15733989A JP 2775857 B2 JP2775857 B2 JP 2775857B2
- Authority
- JP
- Japan
- Prior art keywords
- bits
- processing
- bit
- shift
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F5/00—Methods or arrangements for data conversion without changing the order or content of the data handled
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F5/00—Methods or arrangements for data conversion without changing the order or content of the data handled
- G06F5/01—Methods or arrangements for data conversion without changing the order or content of the data handled for shifting, e.g. justifying, scaling, normalising
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Analogue/Digital Conversion (AREA)
- Reduction Or Emphasis Of Bandwidth Of Signals (AREA)
Description
【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、アナログ信号をデジタル化した信号のビッ
ト数を低減して伝送するためのデジタル信号の帯域圧縮
回路に関する。
ト数を低減して伝送するためのデジタル信号の帯域圧縮
回路に関する。
〔発明の概要〕 本発明は、入力デジタルデータをフローティング処理
してビット圧縮するようなデジタル信号の帯域圧縮回路
において、入力されるデジタルデータのフローティング
処理開始前に、予め最大シフト数の1/2近傍のビット数
だけシフトした後フローティング処理を開始することに
より、該フローティング処理の処理時間を短縮し、マシ
ンサイクルの内の余った時間を他の信号処理に振り分
け、マシンサイクルの低速DSPに適用可能とし、低価格
化及び低消費電力化を図るものである。
してビット圧縮するようなデジタル信号の帯域圧縮回路
において、入力されるデジタルデータのフローティング
処理開始前に、予め最大シフト数の1/2近傍のビット数
だけシフトした後フローティング処理を開始することに
より、該フローティング処理の処理時間を短縮し、マシ
ンサイクルの内の余った時間を他の信号処理に振り分
け、マシンサイクルの低速DSPに適用可能とし、低価格
化及び低消費電力化を図るものである。
近年において、アナログのオーディオ信号やビデオ信
号等をサンプリング(標本化)し量子化及び符号化処理
を行うことによって得られるデジタル信号、いわゆるPC
M(パルス・コード・モジュレーション)信号は、その
統計的性質が偏りを持つことや視聴覚現象からみて重要
度が低い部分があることを利用して、情報量を圧縮する
ことが可能であり、例えば差分・和分処理や、圧縮・伸
張処理(コンパンディング処理)によりビット低減(ビ
ットリダクション)を行っても信号の品質劣化が極めて
少ないことが知られている。
号等をサンプリング(標本化)し量子化及び符号化処理
を行うことによって得られるデジタル信号、いわゆるPC
M(パルス・コード・モジュレーション)信号は、その
統計的性質が偏りを持つことや視聴覚現象からみて重要
度が低い部分があることを利用して、情報量を圧縮する
ことが可能であり、例えば差分・和分処理や、圧縮・伸
張処理(コンパンディング処理)によりビット低減(ビ
ットリダクション)を行っても信号の品質劣化が極めて
少ないことが知られている。
このような情報圧縮あるいは帯域圧縮の技術の一つと
して、フローティング処理がある。このフローティング
処理は、nビットの入力データをその値に応じた量だけ
ビットシフトした後mビット(m<n)を取り出すよう
な局部量子化を施すものである。ここで一例として、1
ワード16ビットで2の補数表示の入力データを8ビット
に圧縮して取り出すようなフローティング処理につい
て、第5図を参照しながら説明する。
して、フローティング処理がある。このフローティング
処理は、nビットの入力データをその値に応じた量だけ
ビットシフトした後mビット(m<n)を取り出すよう
な局部量子化を施すものである。ここで一例として、1
ワード16ビットで2の補数表示の入力データを8ビット
に圧縮して取り出すようなフローティング処理につい
て、第5図を参照しながら説明する。
第5図中(a)〜(i)は、上記1ワード16ビットの
入力データの値(ただし正の値あるいは絶対値のみ考慮
している)の範囲に応じたビットシフト量を示すもので
あり、(a)は入力データの値の範囲が0〜127で16ビ
ット内の有効桁数が7ビット以下の場合を示し、(b)
〜(i)は入力データ16ビット内の有効桁数がそれぞれ
8〜15ビットの場合を示している。すなわち、これらの
第5図中(a)〜(i)中の斜線部が有効桁を示してお
り、第5図中(a)のみは有効桁の上限(最大値)を示
している。
入力データの値(ただし正の値あるいは絶対値のみ考慮
している)の範囲に応じたビットシフト量を示すもので
あり、(a)は入力データの値の範囲が0〜127で16ビ
ット内の有効桁数が7ビット以下の場合を示し、(b)
〜(i)は入力データ16ビット内の有効桁数がそれぞれ
8〜15ビットの場合を示している。すなわち、これらの
第5図中(a)〜(i)中の斜線部が有効桁を示してお
り、第5図中(a)のみは有効桁の上限(最大値)を示
している。
先ず第5図中(a)の場合には、上述したように入力
データ16ビット内の有効桁数が7ビット以下であるか
ら、8ビットシフトして上位8ビットを取り出すことで
上記局部量子化の際の丸め誤差(量子化誤差)無くビッ
ト圧縮が行える。第5図(b)の場合には、入力データ
の値の範囲が、128〜255で16ビット内の有効桁数(図中
斜線部)が8ビットであるから、7ビットシフトして上
位8ビットを取り出すことで上記丸め誤差は1ビットと
なる。以下同様に、第5図中(c)〜(i)の各場合に
は、有効桁数がそれぞれ9〜15ビットであるから、ビッ
トシフト量がそれぞれ6〜0ビットとなり、上記丸め誤
差(図中網線部)はそれぞれ2〜8ビットとなる。な
お、これらの丸め誤差分は、上記局部量子化器の入力側
に帰還(エラーフィードバック)することでいわゆるノ
イズシェービングを行っている。
データ16ビット内の有効桁数が7ビット以下であるか
ら、8ビットシフトして上位8ビットを取り出すことで
上記局部量子化の際の丸め誤差(量子化誤差)無くビッ
ト圧縮が行える。第5図(b)の場合には、入力データ
の値の範囲が、128〜255で16ビット内の有効桁数(図中
斜線部)が8ビットであるから、7ビットシフトして上
位8ビットを取り出すことで上記丸め誤差は1ビットと
なる。以下同様に、第5図中(c)〜(i)の各場合に
は、有効桁数がそれぞれ9〜15ビットであるから、ビッ
トシフト量がそれぞれ6〜0ビットとなり、上記丸め誤
差(図中網線部)はそれぞれ2〜8ビットとなる。な
お、これらの丸め誤差分は、上記局部量子化器の入力側
に帰還(エラーフィードバック)することでいわゆるノ
イズシェービングを行っている。
このようなフローティング処理は、いわゆるDSP(デ
ジタル信号プロセッサ)を用いてソフトウェアプログラ
ムにより実現されることが多く、このソフトウェアプロ
グラムの要部の一例を第1表に示す。
ジタル信号プロセッサ)を用いてソフトウェアプログラ
ムにより実現されることが多く、このソフトウェアプロ
グラムの要部の一例を第1表に示す。
ところでこのようなフローティング処理は、入力デー
タを所定ワード数毎にブロック化し、いわゆるブロック
フローティング処理として実行されることが多く、この
場合にはブロック内のワードのピーク値に基づいて上記
シフト量を求め、当該ブロック内の全ワードに対してそ
れぞれ同じ量だけビットシフトを行っている。
タを所定ワード数毎にブロック化し、いわゆるブロック
フローティング処理として実行されることが多く、この
場合にはブロック内のワードのピーク値に基づいて上記
シフト量を求め、当該ブロック内の全ワードに対してそ
れぞれ同じ量だけビットシフトを行っている。
ここで第6図は、このブロックフローティング処理の
一例として、1ワード16ビットで2の補数表示の入力デ
ータを所定ワード数(例えば28ワード)毎にブロック化
し、このブロック内の全ワードに対して同じシフト量で
シフトして8ビットに圧縮して取り出すようなフローテ
ィング処理に適用したビットシフト処理プログラムの具
体例を示すフローチャートである。この第6図の例にお
いては、入力データの有効桁数が8ビット(値が0〜25
5)の場合に一挙に8ビットあるいは7ビットシフトを
行わせると共に、入力データの有効桁数が9ビット以上
の場合における上記ループプログラムによるビットシフ
ト処理を複数の条件判別ステップに展開して処理の高速
化を図っている。この第6図中のpは、上記1ブロック
内のワードの最大値であるピーク値を示しており、この
ピーク値pの値の範囲を判別して上記シフト量を決定し
ている。
一例として、1ワード16ビットで2の補数表示の入力デ
ータを所定ワード数(例えば28ワード)毎にブロック化
し、このブロック内の全ワードに対して同じシフト量で
シフトして8ビットに圧縮して取り出すようなフローテ
ィング処理に適用したビットシフト処理プログラムの具
体例を示すフローチャートである。この第6図の例にお
いては、入力データの有効桁数が8ビット(値が0〜25
5)の場合に一挙に8ビットあるいは7ビットシフトを
行わせると共に、入力データの有効桁数が9ビット以上
の場合における上記ループプログラムによるビットシフ
ト処理を複数の条件判別ステップに展開して処理の高速
化を図っている。この第6図中のpは、上記1ブロック
内のワードの最大値であるピーク値を示しており、この
ピーク値pの値の範囲を判別して上記シフト量を決定し
ている。
この第6図の最初のステップ80において、上記ピーク
値pが127以下(p≦127)か否か、すなわち上記有効桁
数が7ビット以下か否かが判別される。Yesの場合には
ステップ91に進み、入力データを上記第5図(a)に示
すように8ビット左シフトして上位8ビットを出力す
る。Noの場合はステップ81に進み、上記ピーク値pを25
6で割り、これを新たなピーク値pt(pt=p/256)として
ステップ82に進む。
値pが127以下(p≦127)か否か、すなわち上記有効桁
数が7ビット以下か否かが判別される。Yesの場合には
ステップ91に進み、入力データを上記第5図(a)に示
すように8ビット左シフトして上位8ビットを出力す
る。Noの場合はステップ81に進み、上記ピーク値pを25
6で割り、これを新たなピーク値pt(pt=p/256)として
ステップ82に進む。
ステップ82では、このピーク値ptが0か否かが判別さ
れ、これは元のピーク値pが255以下か否かを判別する
ことに相当する。ステップ82でYesと判別された場合に
は、ステップ80での判別と合わせて、元のピーク値pが
128〜255の範囲内にあることになり、ステップ92に進ん
で入力データを上記第5図中(b)に示すように7ビッ
ト左シフトして上位8ビットを出力する。ステップ82で
Noの場合は次のステップ83に進む。
れ、これは元のピーク値pが255以下か否かを判別する
ことに相当する。ステップ82でYesと判別された場合に
は、ステップ80での判別と合わせて、元のピーク値pが
128〜255の範囲内にあることになり、ステップ92に進ん
で入力データを上記第5図中(b)に示すように7ビッ
ト左シフトして上位8ビットを出力する。ステップ82で
Noの場合は次のステップ83に進む。
ステップ83では、ピーク値ptを2倍した値2ptを127
と比較して、2ptが127より大きい(2pt>127)か否か
を判別する。このステップ83は元のピーク値pが16384
以上か否か、すなわち有効桁数が15ビット以上か否かを
判別することに相当し、Yesの場合はステップ93に進ん
で入力データを上記第5図中(i)に示すように0ビッ
ト左シフトし(すなわち左シフトを行わず)、上位8ビ
ットのみを出力する。ステップ83でNoの場合は次のステ
ップ84に進む。
と比較して、2ptが127より大きい(2pt>127)か否か
を判別する。このステップ83は元のピーク値pが16384
以上か否か、すなわち有効桁数が15ビット以上か否かを
判別することに相当し、Yesの場合はステップ93に進ん
で入力データを上記第5図中(i)に示すように0ビッ
ト左シフトし(すなわち左シフトを行わず)、上位8ビ
ットのみを出力する。ステップ83でNoの場合は次のステ
ップ84に進む。
ステップ84では、ピーク値ptを2倍した値2ptが63よ
り大きい(2pt>63)か否かを判別する。このステップ
84は、ステップ83での判別と合わせて、元のピーク値p
の有効桁数が14ビットか否か(すなわち第5図中(h)
の8192〜16383の範囲内にあるか否か)を判別すること
に相当し、Yesの場合はステップ94に進んで入力データ
を上記第5図中(h)に示すように1ビット左シフトし
て上位8ビットのみを出力する。Noの場合は次のステッ
プ85に進む。
り大きい(2pt>63)か否かを判別する。このステップ
84は、ステップ83での判別と合わせて、元のピーク値p
の有効桁数が14ビットか否か(すなわち第5図中(h)
の8192〜16383の範囲内にあるか否か)を判別すること
に相当し、Yesの場合はステップ94に進んで入力データ
を上記第5図中(h)に示すように1ビット左シフトし
て上位8ビットのみを出力する。Noの場合は次のステッ
プ85に進む。
ここで、以下の条件判別ステップ85〜88は、それぞれ
元のピーク値pの有効桁数13〜10ビットであるか否かを
判別するものであり、それぞれの判別ステップ85〜88で
Yesと判別されたときには、各ステップ95〜98に進んで
第5図中(g)〜(d)に示すように入力データをそれ
ぞれ2〜5ビット左シフトし、上記8ビットを出力して
いる。各条件判別ステップ85〜87でNoと判別されたとき
にはそれぞれ次の条件判別ステップ86〜88に進むが、ス
テップ88でNoと判別されたときにはステップ99に進ん
で、第5図中(c)に示すように入力データを6ビット
左シフトし、上位8ビットを出力している。
元のピーク値pの有効桁数13〜10ビットであるか否かを
判別するものであり、それぞれの判別ステップ85〜88で
Yesと判別されたときには、各ステップ95〜98に進んで
第5図中(g)〜(d)に示すように入力データをそれ
ぞれ2〜5ビット左シフトし、上記8ビットを出力して
いる。各条件判別ステップ85〜87でNoと判別されたとき
にはそれぞれ次の条件判別ステップ86〜88に進むが、ス
テップ88でNoと判別されたときにはステップ99に進ん
で、第5図中(c)に示すように入力データを6ビット
左シフトし、上位8ビットを出力している。
ところで、上記第1表に示すようなループプログラム
によりフローティング処理を行う場合、上記DSPの1マ
シンサイクルを例えば100nsとすると、上記第1表のプ
ログラムの1ループ当たりの実行時間は500nsとなり、
上記最大シフト量8ビットのときのトータル実行時間は
500ns×8=4μsにも及ぶことになる。なお現実の処
理形態においては、入力データの有効桁数が下位8ビッ
ト(0〜255)以内で上記シフト量が8ビットあるいは
7ビットのときには、いわゆるバレルシフタ等を用いて
1マシンサイクル内で上記シフトを行っているが、この
ような現実の処理形態においても、入力データが256〜5
11で上記シフト値が最大の6ビットとなるときには、上
記ループ処理のみのために500ns×6=3μsもの実行
時間が必要とされる。実際には、上記第1表の処理以外
に、シフト情報(あるいはレンジング情報)を他のメモ
リにストアする処理や上記ノイズシェーピング処理等が
同じループ内に入るため、実行時間は2倍〜2.5倍にも
達する。この問題は、特に1サンプル周期以内に複数の
チャンネルの処理を時分割で行う場合に顕著であり、例
えばサンプリング周波数32KHzで2チャンネルの圧縮処
理を行うとすると、フローティング処理のみで約50%の
実行時間を費やしてしまい、上記他の信号処理に費やす
時間が制限されてしまう。
によりフローティング処理を行う場合、上記DSPの1マ
シンサイクルを例えば100nsとすると、上記第1表のプ
ログラムの1ループ当たりの実行時間は500nsとなり、
上記最大シフト量8ビットのときのトータル実行時間は
500ns×8=4μsにも及ぶことになる。なお現実の処
理形態においては、入力データの有効桁数が下位8ビッ
ト(0〜255)以内で上記シフト量が8ビットあるいは
7ビットのときには、いわゆるバレルシフタ等を用いて
1マシンサイクル内で上記シフトを行っているが、この
ような現実の処理形態においても、入力データが256〜5
11で上記シフト値が最大の6ビットとなるときには、上
記ループ処理のみのために500ns×6=3μsもの実行
時間が必要とされる。実際には、上記第1表の処理以外
に、シフト情報(あるいはレンジング情報)を他のメモ
リにストアする処理や上記ノイズシェーピング処理等が
同じループ内に入るため、実行時間は2倍〜2.5倍にも
達する。この問題は、特に1サンプル周期以内に複数の
チャンネルの処理を時分割で行う場合に顕著であり、例
えばサンプリング周波数32KHzで2チャンネルの圧縮処
理を行うとすると、フローティング処理のみで約50%の
実行時間を費やしてしまい、上記他の信号処理に費やす
時間が制限されてしまう。
また、第6図に示すように上記ループ処理を多くの条
件判別ステップに展開して処理の高速化を図っても、上
記ピーク値pの有効桁数が9ビット(256〜511)あるい
は10ビット(512〜1023)の場合には、ステップ80〜88
までと、シフト処理ステップ98あるいは99との計10ステ
ップが、ピーク値pに応じたビットシフト処理だけのた
めに必要となっており、他の処理に関する時間制約が厳
しくなっているのが現状である。
件判別ステップに展開して処理の高速化を図っても、上
記ピーク値pの有効桁数が9ビット(256〜511)あるい
は10ビット(512〜1023)の場合には、ステップ80〜88
までと、シフト処理ステップ98あるいは99との計10ステ
ップが、ピーク値pに応じたビットシフト処理だけのた
めに必要となっており、他の処理に関する時間制約が厳
しくなっているのが現状である。
本発明は上述の実情に鑑みてなされたものであり、フ
ローティング処理の際のビットシフト処理に要する時間
を大幅に短縮し得るようなデジタル信号の帯域圧縮回路
の提供を目的とする。
ローティング処理の際のビットシフト処理に要する時間
を大幅に短縮し得るようなデジタル信号の帯域圧縮回路
の提供を目的とする。
本発明に係るデジタル信号の帯域圧縮回路によれば、
入力デジタルデータをフローティング処理し、ビット圧
縮処理を行うようなデジタル信号の帯域圧縮回路におい
て、上記フローティング処理前に、上記入力デジタルデ
ータを、フローティング処理時の最大シフト量の約半分
近傍のビット数だけシフトするビットシフト手段と、上
記ビットシフト手段にてシフト処理したデジタルデータ
と最大値とを比較する比較手段と、上記比較手段の比較
結果に応じてフローティング処理の開始時のデータシフ
ト量を切り換える切換手段とを有することにより、上述
の課題を解決している。
入力デジタルデータをフローティング処理し、ビット圧
縮処理を行うようなデジタル信号の帯域圧縮回路におい
て、上記フローティング処理前に、上記入力デジタルデ
ータを、フローティング処理時の最大シフト量の約半分
近傍のビット数だけシフトするビットシフト手段と、上
記ビットシフト手段にてシフト処理したデジタルデータ
と最大値とを比較する比較手段と、上記比較手段の比較
結果に応じてフローティング処理の開始時のデータシフ
ト量を切り換える切換手段とを有することにより、上述
の課題を解決している。
ここで、上記比較手段にて上記シフト処理したデジタ
ルデータが上記最大値より大きいときには上記入力され
たデジタルデータを1ビット毎にシフト処理をした後に
フローティング処理を施すことが挙げられる。
ルデータが上記最大値より大きいときには上記入力され
たデジタルデータを1ビット毎にシフト処理をした後に
フローティング処理を施すことが挙げられる。
また、上記比較手段にて上記シフト処理したデジタル
データが上記最大値より小さいときには上記ビットシフ
ト手段にて最大シフト量の約半分近傍のビット数だけビ
ットシフトしたデジタルデータを1ビット毎にシフト処
理しながらフローティング処理を施すことが挙げられ
る。
データが上記最大値より小さいときには上記ビットシフ
ト手段にて最大シフト量の約半分近傍のビット数だけビ
ットシフトしたデジタルデータを1ビット毎にシフト処
理しながらフローティング処理を施すことが挙げられ
る。
予め入力デジタルデータを最大シフト値の1/2の近傍
のビット数だけ左シフトして最大値と比較し、最大値を
超えた場合は元のシフト前のデータに対して通常のシフ
ト処理を行うが、最大値より小さい場合はこのシフトさ
れた状態のデータに対して通常のシフト処理を続行する
ことで、最大シフト値の1/2の近傍に達するまでのシフ
ト処理ステップを省略し、処理の高速化を実現する。
のビット数だけ左シフトして最大値と比較し、最大値を
超えた場合は元のシフト前のデータに対して通常のシフ
ト処理を行うが、最大値より小さい場合はこのシフトさ
れた状態のデータに対して通常のシフト処理を続行する
ことで、最大シフト値の1/2の近傍に達するまでのシフ
ト処理ステップを省略し、処理の高速化を実現する。
〔実施例〕 第1図は、本発明の基本的な実施例を説明するための
フローチャートである。
フローチャートである。
この第1図のステップ1において、フローティング処
理の際の最大シフト値をmとするとき、入力データをm/
2ビット(あるいはその近傍のビット数)だけ左シフト
する。
理の際の最大シフト値をmとするとき、入力データをm/
2ビット(あるいはその近傍のビット数)だけ左シフト
する。
次のステップ2では、このシフトされたデータをデー
タ最大値と比較し、該最大値よりも大きい場合(オーバ
ーフローした場合)はステップ3に進み、最大値以下の
場合はステップ4に進む。
タ最大値と比較し、該最大値よりも大きい場合(オーバ
ーフローした場合)はステップ3に進み、最大値以下の
場合はステップ4に進む。
ステップ3では、元の入力データ(上記シフト前の入
力データ)に対して、例えば1ビットずつ左シフトしな
がら最大値と比較するような通常のフローティング処理
を行う。
力データ)に対して、例えば1ビットずつ左シフトしな
がら最大値と比較するような通常のフローティング処理
を行う。
ステップ4では、上記m/2ビット左シフトした入力デ
ータに対して、例えば1ビットずつ左シフトしながら通
常のフローティング処理を行う。
ータに対して、例えば1ビットずつ左シフトしながら通
常のフローティング処理を行う。
このような手順でフローティング処理を行うことによ
って、フローティング処理のためのシフト回数は、従来
のm回から略々(1+m/2)回にまで低減され、処理の
高速化が達成できる。
って、フローティング処理のためのシフト回数は、従来
のm回から略々(1+m/2)回にまで低減され、処理の
高速化が達成できる。
以上の基本動作の具体例について第2図を参照しなが
ら説明する。この第2図の例においては、入力デジタル
データを16ビットの2の補数表示データとし、その値に
応じて最大8ビットまでの所定ビットだけ左シフトして
上位8ビットを取り出すようなフローティング処理を行
っている。入力データの最大値は16進数表示で7FFF(10
進数の32767)であり、最大シフト値の1/2であるm/2
(あるいはその近傍の値)は4ビットで、入力データに
対して先ずこの4ビットだけ左シフトしている。
ら説明する。この第2図の例においては、入力デジタル
データを16ビットの2の補数表示データとし、その値に
応じて最大8ビットまでの所定ビットだけ左シフトして
上位8ビットを取り出すようなフローティング処理を行
っている。入力データの最大値は16進数表示で7FFF(10
進数の32767)であり、最大シフト値の1/2であるm/2
(あるいはその近傍の値)は4ビットで、入力データに
対して先ずこの4ビットだけ左シフトしている。
ここで、例えば第2図中(a)に示すようにいわゆる
有効桁(図中斜線部)の桁数が9ビットの、256〜511の
範囲の値を有するデジタルデータが入力されるとき、上
記4ビット左シフト(16倍)した値は、第2図中(b)
に示すように4096〜8176の範囲の値(ただし16の倍数)
として表される。この値は上記最大値32767以下である
から、この4ビット左シフトされたデータに対して通常
のフローティング処理、例えば1ビットずつシフトを行
いながら最大値と比較してシフト値を求める処理、が行
われる。すなわち、第2図中(b)に示すような既に4
ビット左シフトされたデータを1ビット左シフトし、第
2図中(c)に示すような8192〜16352の範囲の値(た
だし32の倍数)のデータとする。この第2図中(c)に
示すデータは上記最大値32767以下であるから、これを
さらに1ビット左シフトして第2図中(d)に示すよう
な16348〜32704の範囲の値(ただし64の倍数)のデータ
とする。この第2図中(d)のデータは、さらに1ビッ
ト左シフトすると上記最大値32767を超える(オーバー
フローする)から、これでシフト処理を終了し、上位8
ビットを取り出して出力(局部量子化あるいは再量子
化)する。なお、下位8ビットの丸め誤差あるいは量子
化誤差の分(図中網線部)については、局部量子化器の
入力側に帰還(エラーフィードバック)することによ
り、いわゆるノイズシェーピングを施している。この場
合、従来において第5図中(c)に示すように6ビット
分で6回のシフト処理が必要であったものが、第2図中
(a)〜(d)に示すように、最初の4ビットシフトを
含めて3回のシフト処理で済み、処理の高速化が図れ
る。
有効桁(図中斜線部)の桁数が9ビットの、256〜511の
範囲の値を有するデジタルデータが入力されるとき、上
記4ビット左シフト(16倍)した値は、第2図中(b)
に示すように4096〜8176の範囲の値(ただし16の倍数)
として表される。この値は上記最大値32767以下である
から、この4ビット左シフトされたデータに対して通常
のフローティング処理、例えば1ビットずつシフトを行
いながら最大値と比較してシフト値を求める処理、が行
われる。すなわち、第2図中(b)に示すような既に4
ビット左シフトされたデータを1ビット左シフトし、第
2図中(c)に示すような8192〜16352の範囲の値(た
だし32の倍数)のデータとする。この第2図中(c)に
示すデータは上記最大値32767以下であるから、これを
さらに1ビット左シフトして第2図中(d)に示すよう
な16348〜32704の範囲の値(ただし64の倍数)のデータ
とする。この第2図中(d)のデータは、さらに1ビッ
ト左シフトすると上記最大値32767を超える(オーバー
フローする)から、これでシフト処理を終了し、上位8
ビットを取り出して出力(局部量子化あるいは再量子
化)する。なお、下位8ビットの丸め誤差あるいは量子
化誤差の分(図中網線部)については、局部量子化器の
入力側に帰還(エラーフィードバック)することによ
り、いわゆるノイズシェーピングを施している。この場
合、従来において第5図中(c)に示すように6ビット
分で6回のシフト処理が必要であったものが、第2図中
(a)〜(d)に示すように、最初の4ビットシフトを
含めて3回のシフト処理で済み、処理の高速化が図れ
る。
次に入力データが例えば第2図中(e)に示すように
2048〜4095の範囲(有効桁数12ビット)の値を有すると
き、上記4ビット左シフト(16倍)した値は第2図中
(f)に示すように上記最大値32767を超える(オーバ
ーフローする)から、この4ビット左シフトする前の元
のデータに対して通常のフローティング処理を行う。す
なわち、第2図中(e)に示す元の入力データを1ビッ
ト左シフトして得られた第2図中(g)に示すような40
96〜8190の範囲の値(ただし2の倍数)のデータを上記
最大値32767と比較し、該最大値以下のときさらに1ビ
ット左シフトして、第2図中(h)に示すような8192〜
16380の範囲の値(ただし4の倍数)のデータを上記最
大値32767と比較する。このような処理を順次繰り返す
ことにより、第2図中(i)に示すような16384〜32760
の範囲の値(ただし8の倍数)のデータを得る。この第
2図中(i)のデータは、さらに1ビット左シフトする
と上記最大値32767を超える(オーバーフローする)か
ら、これでシフト処理を終了し、局部量子化として上位
8ビットを取り出して出力する。
2048〜4095の範囲(有効桁数12ビット)の値を有すると
き、上記4ビット左シフト(16倍)した値は第2図中
(f)に示すように上記最大値32767を超える(オーバ
ーフローする)から、この4ビット左シフトする前の元
のデータに対して通常のフローティング処理を行う。す
なわち、第2図中(e)に示す元の入力データを1ビッ
ト左シフトして得られた第2図中(g)に示すような40
96〜8190の範囲の値(ただし2の倍数)のデータを上記
最大値32767と比較し、該最大値以下のときさらに1ビ
ット左シフトして、第2図中(h)に示すような8192〜
16380の範囲の値(ただし4の倍数)のデータを上記最
大値32767と比較する。このような処理を順次繰り返す
ことにより、第2図中(i)に示すような16384〜32760
の範囲の値(ただし8の倍数)のデータを得る。この第
2図中(i)のデータは、さらに1ビット左シフトする
と上記最大値32767を超える(オーバーフローする)か
ら、これでシフト処理を終了し、局部量子化として上位
8ビットを取り出して出力する。
以上の処理を行うことにより、従来の最大シフト処理
回数として第5図中(a)に示すように8ビット分の8
回必要であったものが、第2図に示すように、最初の4
ビットシフトを含めて、最大でも4回のシフト処理で済
み、処理の高速化が図れる。なお、バレルシフタ等を用
いて第5図中(a)の8ビットシフトや(b)の7ビッ
トシフトを1回の処理で行うとしても、最大6ビットで
6回のシフト処理を必要としたものが略々半分の処理で
済む。
回数として第5図中(a)に示すように8ビット分の8
回必要であったものが、第2図に示すように、最初の4
ビットシフトを含めて、最大でも4回のシフト処理で済
み、処理の高速化が図れる。なお、バレルシフタ等を用
いて第5図中(a)の8ビットシフトや(b)の7ビッ
トシフトを1回の処理で行うとしても、最大6ビットで
6回のシフト処理を必要としたものが略々半分の処理で
済む。
このような処理をいわゆるDSP(デジタル信号プロセ
ッサ)を用いてソフトウェア的に行う場合のプログラム
の要部(ビットシフト処理ループ近傍)の一例を次の第
2表に示す。
ッサ)を用いてソフトウェア的に行う場合のプログラム
の要部(ビットシフト処理ループ近傍)の一例を次の第
2表に示す。
次に、この第2表に示すループ処理をそれぞれ複数の
条件判別ステップに展開すると共に、入力データの有効
桁数が8ビット(値が0〜255)の場合に一挙に8ビッ
トあるいは7ビットシフトを行わせて処理の高速化を図
った具体的なプログラムの一例について、第3図のフロ
ーチャートを参照しながら説明する。この第3図におい
ては、1ワード16ビットで2の補数表示の入力データを
所定ワード数(例えば28ワード)毎にブロック化し、こ
のブロック内の全ワードに対して共通のシフト量でシフ
トして8ビットに圧縮して取り出す(局部量子化する)
ような、いわゆるブロックフローティング処理に適用し
たビットシフト処理プログラムの具体例を示している。
すなわち、この第3図中のpは上記1ブロック内のワー
ドの最大値であるピーク値を示しており、このピーク値
pに応じてブロック単位のフローティング処理量あるい
はデータシフト量が決定される。なお、上記最大シフト
量の1/2(m/2)の近傍のシフト量としては、4ビットを
採用している。
条件判別ステップに展開すると共に、入力データの有効
桁数が8ビット(値が0〜255)の場合に一挙に8ビッ
トあるいは7ビットシフトを行わせて処理の高速化を図
った具体的なプログラムの一例について、第3図のフロ
ーチャートを参照しながら説明する。この第3図におい
ては、1ワード16ビットで2の補数表示の入力データを
所定ワード数(例えば28ワード)毎にブロック化し、こ
のブロック内の全ワードに対して共通のシフト量でシフ
トして8ビットに圧縮して取り出す(局部量子化する)
ような、いわゆるブロックフローティング処理に適用し
たビットシフト処理プログラムの具体例を示している。
すなわち、この第3図中のpは上記1ブロック内のワー
ドの最大値であるピーク値を示しており、このピーク値
pに応じてブロック単位のフローティング処理量あるい
はデータシフト量が決定される。なお、上記最大シフト
量の1/2(m/2)の近傍のシフト量としては、4ビットを
採用している。
先ず、第3図に示すステップ10において、上記ピーク
値pが127以下(p≦127)か否か、すなわち、上記有効
桁数が7ビット以下か否かが判別される。Yesの場合に
はステップ22に進み、入力データを8ビット左シフトし
て上位8ビットを出力する。Noの場合はステップ11に進
み、上記ピーク値pを256で割ることで上位8ビットを
取り出し、これを新たなピーク値pt(pt=p/256)とし
てステップ12に進む。
値pが127以下(p≦127)か否か、すなわち、上記有効
桁数が7ビット以下か否かが判別される。Yesの場合に
はステップ22に進み、入力データを8ビット左シフトし
て上位8ビットを出力する。Noの場合はステップ11に進
み、上記ピーク値pを256で割ることで上位8ビットを
取り出し、これを新たなピーク値pt(pt=p/256)とし
てステップ12に進む。
ステップ12では、このピーク値ptを、上記最大シフト
量の略々1/2のシフト量に相当する4ビット分だけ左シ
フト(すなわち16倍)し、この4ビット左シフトした値
16ptが127より大きい(16pt>127)か否かを判別する。
これは、この4ビット左シフトした値16ptがオーバーフ
ローしていないか否かを判別することに相当する。そし
て、このステップ12でYesと判別されたとき、すなわ
ち、オーバーフローと判断されたときには、後述するス
テップ18に進み、Noの場合はステップ13に進む。
量の略々1/2のシフト量に相当する4ビット分だけ左シ
フト(すなわち16倍)し、この4ビット左シフトした値
16ptが127より大きい(16pt>127)か否かを判別する。
これは、この4ビット左シフトした値16ptがオーバーフ
ローしていないか否かを判別することに相当する。そし
て、このステップ12でYesと判別されたとき、すなわ
ち、オーバーフローと判断されたときには、後述するス
テップ18に進み、Noの場合はステップ13に進む。
ステップ13では、このピーク値16ptを新たなピーク値
pf(pf=16pt)としてステップ14に進む。
pf(pf=16pt)としてステップ14に進む。
ステップ14では、このピーク値pfが0か否かが判別さ
れ、これは元のピーク値pが255以下か否かを判別する
ことに相当する。ステップ14でYesと判別された場合に
は、ステップ10での判別と合わせて、元のピーク値pが
128〜255の範囲内にあることになり、ステップ23に進ん
で入力データを7ビット左シフトして上位8ビットを出
力する。ステップ14でNoの場合は次のステップ15に進
む。
れ、これは元のピーク値pが255以下か否かを判別する
ことに相当する。ステップ14でYesと判別された場合に
は、ステップ10での判別と合わせて、元のピーク値pが
128〜255の範囲内にあることになり、ステップ23に進ん
で入力データを7ビット左シフトして上位8ビットを出
力する。ステップ14でNoの場合は次のステップ15に進
む。
ステップ15では入力データ自体を16倍(4ビット左シ
フト)してステップ16に進む。
フト)してステップ16に進む。
ステップ16ではピーク値pfを2倍した値2pfが127よ
り大きい(2pf>127)か否かを判別する。このステッ
プ16は、これ以前のステップ10、12、14での判別動作と
合わせて、元のピーク値pが1024〜2047の範囲内か否
か、すなわち有効桁数が11ビットか否かを判別すること
に相当し、Yesの場合はステップ26に進み入力データを
0ビット左シフトして、すなわち先のステップ15でデー
タを4ビット左シフトした状態のままで、上位8ビット
のみを出力する。
り大きい(2pf>127)か否かを判別する。このステッ
プ16は、これ以前のステップ10、12、14での判別動作と
合わせて、元のピーク値pが1024〜2047の範囲内か否
か、すなわち有効桁数が11ビットか否かを判別すること
に相当し、Yesの場合はステップ26に進み入力データを
0ビット左シフトして、すなわち先のステップ15でデー
タを4ビット左シフトした状態のままで、上位8ビット
のみを出力する。
Noの場合はステップ17に進み、ピーク値pfを2倍した
値2pfが63より大きい(2pf>63)か否かを判別する。
このステップ17はステップ16での判別と合わせて、元の
ピーク値pの有効桁数が10ビットか否か、すなわち512
〜1023の範囲内にあるか否かを判別することに相当し、
Yesの場合はステップ25に進み入力データを1ビット左
シフト(すなわち先にステップ15でデータを4ビット左
シフトしているから計5ビットの左シフト)して上記8
ビットのみを出力し、Noの場合はステップ24に進み2ビ
ットの左シフトを行い上位8ビットのみを出力する。
値2pfが63より大きい(2pf>63)か否かを判別する。
このステップ17はステップ16での判別と合わせて、元の
ピーク値pの有効桁数が10ビットか否か、すなわち512
〜1023の範囲内にあるか否かを判別することに相当し、
Yesの場合はステップ25に進み入力データを1ビット左
シフト(すなわち先にステップ15でデータを4ビット左
シフトしているから計5ビットの左シフト)して上記8
ビットのみを出力し、Noの場合はステップ24に進み2ビ
ットの左シフトを行い上位8ビットのみを出力する。
一方上記ステップ12でYesの場合、すなわち上記4ビ
ット左シフトした値16ptがオーバーフローした場合に
は、ステップ18に進み、ピーク値ptを新たなピーク値pf
としてステップ19に進む。
ット左シフトした値16ptがオーバーフローした場合に
は、ステップ18に進み、ピーク値ptを新たなピーク値pf
としてステップ19に進む。
ここで、以下の条件判別ステップ19〜21は、それぞれ
元のピーク値pの有効桁数が15〜12ビットであるか否か
を判別するものであり、それぞれの判別ステップ19〜21
でYesと判別されたときには、各ステップ27〜30に進ん
で入力データをそれぞれ0〜3ビット左シフトし、上位
8ビットを出力している。各条件判別ステップ19〜21で
Noと判別されたときにはそれぞれ次の条件判別ステップ
20,ステップ21に進むが、ステップ21でNoと判別された
場合には、ステップ27に進んで入力データを3ビット左
シフトし、上位8ビットのみを出力している。ここで、
上記ステップ18の変数の置き換え処理は、上述したステ
ップ16以降の処理ステップを、ステップ19以降の処理ス
テップとまとめるためのものであり、具体的には、上記
ステップ12での判別結果に応じて、Yesのときにはステ
ップ13、14、15を介した後にステップ19に飛ぶようにす
れば、ステップ16、17、24、25、26を省略することがで
きる。
元のピーク値pの有効桁数が15〜12ビットであるか否か
を判別するものであり、それぞれの判別ステップ19〜21
でYesと判別されたときには、各ステップ27〜30に進ん
で入力データをそれぞれ0〜3ビット左シフトし、上位
8ビットを出力している。各条件判別ステップ19〜21で
Noと判別されたときにはそれぞれ次の条件判別ステップ
20,ステップ21に進むが、ステップ21でNoと判別された
場合には、ステップ27に進んで入力データを3ビット左
シフトし、上位8ビットのみを出力している。ここで、
上記ステップ18の変数の置き換え処理は、上述したステ
ップ16以降の処理ステップを、ステップ19以降の処理ス
テップとまとめるためのものであり、具体的には、上記
ステップ12での判別結果に応じて、Yesのときにはステ
ップ13、14、15を介した後にステップ19に飛ぶようにす
れば、ステップ16、17、24、25、26を省略することがで
きる。
このような本発明に係る帯域圧縮回路が適用されるビ
ットリダクションシステムについて、第3図を参照しな
がら説明する。
ットリダクションシステムについて、第3図を参照しな
がら説明する。
この第3図において、ビットリダクションシステムは
送信側(あるいは記録側)のエンコーダ50と、受信側
(あるいは再生側)のデコーダ70とより成っている。
送信側(あるいは記録側)のエンコーダ50と、受信側
(あるいは再生側)のデコーダ70とより成っている。
エンコーダ50の入力端子51には、例えばアナログオー
ディオ信号を周波数fsでサンプリングし、量子化及び符
号化を施して得られるオーディオPCM信号x(n)が供
給されている。この入力信号x(n)は、予測器52及び
加算器53にそれぞれ送られている。
ディオ信号を周波数fsでサンプリングし、量子化及び符
号化を施して得られるオーディオPCM信号x(n)が供
給されている。この入力信号x(n)は、予測器52及び
加算器53にそれぞれ送られている。
従って、加算器53においては、上記入力信号x(n)
から上記予測信号(n)が減算されることによって、
予測誤差信号あるいは(広義の)差分出力d(n)、す
なわち、 d(n)=x(n)−(n) ……(1) が出力される。
から上記予測信号(n)が減算されることによって、
予測誤差信号あるいは(広義の)差分出力d(n)、す
なわち、 d(n)=x(n)−(n) ……(1) が出力される。
ここで予測器52は、一般に過去のp個の入力x(n−
p),x(n−p+1)……x(n−1)の1次結合によ
り予測値(n)を算出するものであり、 となる。ただし、αk(k=1、2……p)は係数であ
る。したがって、上記予測誤差出力あるいは広義の差分
出力d(n)は、 と表される。
p),x(n−p+1)……x(n−1)の1次結合によ
り予測値(n)を算出するものであり、 となる。ただし、αk(k=1、2……p)は係数であ
る。したがって、上記予測誤差出力あるいは広義の差分
出力d(n)は、 と表される。
また、この信号伝送装置においては、入力デジタル信
号の一定時間内のデータ、すなわち入力データの一定ワ
ード数l毎にブロック化すると共に、各ブロック毎に最
適の予測フィルタ特性が得られるように上記係数αkの
組を選択している。これは、互いに異なる特性の予測
器、あるいは加算器も含めて差分出力(予測誤差出力)
を得るためのフィルタが複数設けられていると見なすこ
とができ、これらの複数の差分処理フィルタのうちの最
適のフィルタを上記各ブロック毎に選択する。この最適
のフィルタの選択は、複数の各差分処理フィルタからの
出力のブロック内最大値(ピーク値)または該最大値
(ピーク値)に係数を乗算した値を、予測・レンジ適応
回路61において互いに比較することによって行われ、具
体的には各最大値(またはその係数乗算値)のうち値が
最小となるような差分処理フィルタが当該ブロックに対
して最適のフィルタとして選択される。このときの最適
フィルタ選択情報は、モード選択情報として、予測・レ
ンジ適応回路61から出力され、予測器52に送られる。
号の一定時間内のデータ、すなわち入力データの一定ワ
ード数l毎にブロック化すると共に、各ブロック毎に最
適の予測フィルタ特性が得られるように上記係数αkの
組を選択している。これは、互いに異なる特性の予測
器、あるいは加算器も含めて差分出力(予測誤差出力)
を得るためのフィルタが複数設けられていると見なすこ
とができ、これらの複数の差分処理フィルタのうちの最
適のフィルタを上記各ブロック毎に選択する。この最適
のフィルタの選択は、複数の各差分処理フィルタからの
出力のブロック内最大値(ピーク値)または該最大値
(ピーク値)に係数を乗算した値を、予測・レンジ適応
回路61において互いに比較することによって行われ、具
体的には各最大値(またはその係数乗算値)のうち値が
最小となるような差分処理フィルタが当該ブロックに対
して最適のフィルタとして選択される。このときの最適
フィルタ選択情報は、モード選択情報として、予測・レ
ンジ適応回路61から出力され、予測器52に送られる。
次に、上記予測誤差として差分出力d(n)は、加算
器54を介し、利得Gのあるいはレンジングアンプ55(あ
るいはビットシフタ)と量子化器56とよりなるビット圧
縮手段(レンジング処理回路またはフローティング処理
回路)に送られ、例えば浮動小数点(フローティング・
ポイント)表示形態における指数部が上記利得Gに、仮
数部が量子化器56からの出力にそれぞれ対応するような
圧縮処理あるいはレンジング処理が施される。すなわ
ち、レンジングアンプ(ビットシフタ)55は、デジタル
2進データを上記利得Gに応じたビット数だけシフト
(算術シフト)することにより、いわゆるレンジを切り
換えるものであり、量子化器56はこのビットシフタされ
たデータの一定ビット数を取り出すような再量子化を行
っている。次に、ノイズシェイピング回路(ノイズシェ
イパ)57は、量子化器56の出力と入力との誤差分、いわ
ゆる量子化誤差を加算器58で得て、この量子化誤差を利
得G-1のアンプ(またはシフタ)59を介し予測器60に送
って、量子化誤差の予測信号を加算器54に減算信号とし
て帰還するような、いわゆるエラーフィードバックを行
う。
器54を介し、利得Gのあるいはレンジングアンプ55(あ
るいはビットシフタ)と量子化器56とよりなるビット圧
縮手段(レンジング処理回路またはフローティング処理
回路)に送られ、例えば浮動小数点(フローティング・
ポイント)表示形態における指数部が上記利得Gに、仮
数部が量子化器56からの出力にそれぞれ対応するような
圧縮処理あるいはレンジング処理が施される。すなわ
ち、レンジングアンプ(ビットシフタ)55は、デジタル
2進データを上記利得Gに応じたビット数だけシフト
(算術シフト)することにより、いわゆるレンジを切り
換えるものであり、量子化器56はこのビットシフタされ
たデータの一定ビット数を取り出すような再量子化を行
っている。次に、ノイズシェイピング回路(ノイズシェ
イパ)57は、量子化器56の出力と入力との誤差分、いわ
ゆる量子化誤差を加算器58で得て、この量子化誤差を利
得G-1のアンプ(またはシフタ)59を介し予測器60に送
って、量子化誤差の予測信号を加算器54に減算信号とし
て帰還するような、いわゆるエラーフィードバックを行
う。
次に、予測・レンジ適応回路61は、上記選択されたモ
ードのフィルタからの差分出力のブロック内最大値に基
づきレンジ情報を出力し、このレンジ情報をレンジング
アンプ(ビットシフタ)55及びアンプ59に送ってブロッ
ク毎に上記各利得G及びG-1を決定するわけである。
ードのフィルタからの差分出力のブロック内最大値に基
づきレンジ情報を出力し、このレンジ情報をレンジング
アンプ(ビットシフタ)55及びアンプ59に送ってブロッ
ク毎に上記各利得G及びG-1を決定するわけである。
予測・レンジ適応回路61は、予測器60に上記モード情
報を送って最適のフィルタ特性を選択するようにしてい
る。なお、予測・レンジ適応回路61からの上記レンジ情
報は出力端子63より、また上記モード選択情報は出力端
子64よりそれぞれ取り出される。
報を送って最適のフィルタ特性を選択するようにしてい
る。なお、予測・レンジ適応回路61からの上記レンジ情
報は出力端子63より、また上記モード選択情報は出力端
子64よりそれぞれ取り出される。
次に加算器54以降のノイズの予測処理の基本動作につ
いて説明すると、加算器54からの出力d′(n)は、上
記差分出力d(n)よりノイズシェイパ57からの量子化
誤差の予測信号(n)を減算した、 d′(n)=d(n)−(n) ……(4) となり、利得Gのシフタからの出力d″(n)は、 d″(n)=G・d′(n) ……(5) となる。また、量子化器56からの出力(n)は、量子
化の過程における量子化誤差をe(n)とすると、 (n)=d′(n)+e(n) ……(6) となり、ノイズシェイパ57の加算器58において上記量子
化誤差e(n)が取り出され、利得G-1のシフタ59を介
し、過去のr個の入力の一次結合をとる予測器60を介し
て得られる量子化誤差の予測信号(n)は、 となる。この(7)式は、上述の(2)式と同様の形と
なっており、予測器52及び60は、それぞれシステム関数
が、 のFIR(有限インパルス応答)フィルタである。
いて説明すると、加算器54からの出力d′(n)は、上
記差分出力d(n)よりノイズシェイパ57からの量子化
誤差の予測信号(n)を減算した、 d′(n)=d(n)−(n) ……(4) となり、利得Gのシフタからの出力d″(n)は、 d″(n)=G・d′(n) ……(5) となる。また、量子化器56からの出力(n)は、量子
化の過程における量子化誤差をe(n)とすると、 (n)=d′(n)+e(n) ……(6) となり、ノイズシェイパ57の加算器58において上記量子
化誤差e(n)が取り出され、利得G-1のシフタ59を介
し、過去のr個の入力の一次結合をとる予測器60を介し
て得られる量子化誤差の予測信号(n)は、 となる。この(7)式は、上述の(2)式と同様の形と
なっており、予測器52及び60は、それぞれシステム関数
が、 のFIR(有限インパルス応答)フィルタである。
これらの(4)〜(7)式より、量子化器56からの出
力d(n)は、 この(9)式のd(n)に上記(3)式を代入して、 となり、この出力(n)が出力端子62を介して取り出
される。ここで、上記x(n),e(n),(n)のz
変換をそれぞれX(z),E(z),(z)とすると、 となる。
力d(n)は、 この(9)式のd(n)に上記(3)式を代入して、 となり、この出力(n)が出力端子62を介して取り出
される。ここで、上記x(n),e(n),(n)のz
変換をそれぞれX(z),E(z),(z)とすると、 となる。
次に、受信側あるいは再生側のデコーダ70の入力端子
71には、上記エンコーダ50の出力端子62からの出力
(n)が伝送され、あるいは記録再生されることによっ
て得られた信号′(n)が供給されている。この入力
信号′(n)は、利得G-1のアンプ(シフタ)72を介
して加算器73に送られている。加算器73からの出力′
(n)は、予測器74に送られて予測信号′(n)とな
り、この予測信号′(n)は加算器73に送られて上記
アンプ(シフタ)72からの出力″(n)と加算され
る。この加算出力がデコード出力′(n)として出力
端子75より出力される。
71には、上記エンコーダ50の出力端子62からの出力
(n)が伝送され、あるいは記録再生されることによっ
て得られた信号′(n)が供給されている。この入力
信号′(n)は、利得G-1のアンプ(シフタ)72を介
して加算器73に送られている。加算器73からの出力′
(n)は、予測器74に送られて予測信号′(n)とな
り、この予測信号′(n)は加算器73に送られて上記
アンプ(シフタ)72からの出力″(n)と加算され
る。この加算出力がデコード出力′(n)として出力
端子75より出力される。
また、エンコーダ50の各出力端子63及び64より出力さ
れ、伝送あるいは記録・再生された上記レンジ情報及び
モード選択情報は、デコーダ70の各入力端子76及び77に
それぞれ入力されている。そして、入力端子76からのレ
ンジ情報はアンプ(シフタ)72に送られて利得G-1を決
定し、入力端子77からのモード選択情報は予測器74に送
られて予測特性を決定する。この予測器74の予測特性は
エンコーダ50の予測器52の特性に等しいものが選択され
る。
れ、伝送あるいは記録・再生された上記レンジ情報及び
モード選択情報は、デコーダ70の各入力端子76及び77に
それぞれ入力されている。そして、入力端子76からのレ
ンジ情報はアンプ(シフタ)72に送られて利得G-1を決
定し、入力端子77からのモード選択情報は予測器74に送
られて予測特性を決定する。この予測器74の予測特性は
エンコーダ50の予測器52の特性に等しいものが選択され
る。
このような構成のデコーダ70において、アンプ(シフ
タ)72からの出力″(n)は、 ″(n)=′(n)・G-1 ……(12) であり、加算器73の出力′(n)は、 ′(n)=″(n)+′(n) ……(13) となる。ここで、予測器74は、エンコーダ50の予測器52
に等しい特性が選択されることにより、 であるから、(12),(13)式より、 となる。次に、′(n),′(n)のz変換をそれ
ぞれ′(z),′(z)とすると、 したがって、 となる。
タ)72からの出力″(n)は、 ″(n)=′(n)・G-1 ……(12) であり、加算器73の出力′(n)は、 ′(n)=″(n)+′(n) ……(13) となる。ここで、予測器74は、エンコーダ50の予測器52
に等しい特性が選択されることにより、 であるから、(12),(13)式より、 となる。次に、′(n),′(n)のz変換をそれ
ぞれ′(z),′(z)とすると、 したがって、 となる。
このようなビットリダクションシステムのエンコーダ
側のレンジングアンプ55及び量子化器56におけるフロー
ティング処理をいわゆるDSPを用いて実現する際に本発
明を適用して、好ましい結果が得られるものである。
側のレンジングアンプ55及び量子化器56におけるフロー
ティング処理をいわゆるDSPを用いて実現する際に本発
明を適用して、好ましい結果が得られるものである。
以上の説明から明らかなように、本発明に係る帯域圧
縮回路の実施例の効果としては、16ビットの入力データ
を一旦、最大シフト数の1/2ビットである4ビットシフ
トし、それからフローティング処理を開始することによ
り、また、該4ビットのシフトによりオーバーフローが
生じた場合は、元のデータ信号の位置から1ビット左へ
シフトした位置に戻り、そこからフローティング処理を
開始することにより、特に、入力データが256〜511の場
合、従来は上述したフローチャートのフローティング処
理が6ループ必要であったが、本実施例にかかる帯域圧
縮回路によれば2ループに短縮することができ、フロー
ティング処理の高速化をはかることができる。これは、
例えば前処理の時間を0.8μsec,1ループのフローティン
グ処理の時間を500nsecとすると、最大の演算時間は前
処理0.8μsec+フローティング処理500nsec×2ループ
となり、従来の演算時間の60%とフローティング処理の
時間を大幅に短縮することができる。そして、上述の効
果は、入出力語長が変化して必要シフト量が増加するほ
ど顕著となる。
縮回路の実施例の効果としては、16ビットの入力データ
を一旦、最大シフト数の1/2ビットである4ビットシフ
トし、それからフローティング処理を開始することによ
り、また、該4ビットのシフトによりオーバーフローが
生じた場合は、元のデータ信号の位置から1ビット左へ
シフトした位置に戻り、そこからフローティング処理を
開始することにより、特に、入力データが256〜511の場
合、従来は上述したフローチャートのフローティング処
理が6ループ必要であったが、本実施例にかかる帯域圧
縮回路によれば2ループに短縮することができ、フロー
ティング処理の高速化をはかることができる。これは、
例えば前処理の時間を0.8μsec,1ループのフローティン
グ処理の時間を500nsecとすると、最大の演算時間は前
処理0.8μsec+フローティング処理500nsec×2ループ
となり、従来の演算時間の60%とフローティング処理の
時間を大幅に短縮することができる。そして、上述の効
果は、入出力語長が変化して必要シフト量が増加するほ
ど顕著となる。
また、フローティング処理にかかる時間を大幅に短縮
することができるゆえに、1つのDSPで複数のチャンネ
ルの圧縮処理が可能となり、他の信号処理(例えば予測
フィルタ処理やシフト情報を他のメモリにストアする処
理等)に振り分ける時間が増加するため高度な信号圧縮
処理のアルゴリズムが適用できる。そして、低速DSPに
適用することにより、これまでの演算処理時間を高速化
することができ、高価な高速DSPに代わることができる
ためシステムの低価格が可能となる。
することができるゆえに、1つのDSPで複数のチャンネ
ルの圧縮処理が可能となり、他の信号処理(例えば予測
フィルタ処理やシフト情報を他のメモリにストアする処
理等)に振り分ける時間が増加するため高度な信号圧縮
処理のアルゴリズムが適用できる。そして、低速DSPに
適用することにより、これまでの演算処理時間を高速化
することができ、高価な高速DSPに代わることができる
ためシステムの低価格が可能となる。
なお、上述の実施例では入力データが16ビットでこの
データを上位及び下位の8ビットに分け上位8ビットの
みを出力する場合を例に取り説明したが、量子化ビット
数は任意に選べ、またこの場合の予めシフトするシフト
数を最大シフト数の1/2の近傍であればよく、例えば上
述の実施例の場合では4ビットとしたが3ビットでも5
ビットでもよいこと等は勿論である。
データを上位及び下位の8ビットに分け上位8ビットの
みを出力する場合を例に取り説明したが、量子化ビット
数は任意に選べ、またこの場合の予めシフトするシフト
数を最大シフト数の1/2の近傍であればよく、例えば上
述の実施例の場合では4ビットとしたが3ビットでも5
ビットでもよいこと等は勿論である。
本発明に係る帯域圧縮回路は、入力データを予め最大
シフト数の1/2近傍のビット数だけシフトした値とデー
タ最大値とを比較し、その比較結果に応じて例えば通常
のフローティング処理の開始時のデータのシフト量を異
ならせることにより、フローティング処理に要する時間
を大幅に短縮することができる。
シフト数の1/2近傍のビット数だけシフトした値とデー
タ最大値とを比較し、その比較結果に応じて例えば通常
のフローティング処理の開始時のデータのシフト量を異
ならせることにより、フローティング処理に要する時間
を大幅に短縮することができる。
従って、例えば1つのDSPで複数のチャンネルの圧縮
処理が可能となり、他の信号処理(例えば予測フィルタ
処理やシフト情報を他のメモリにストアする処理等)に
振り分ける時間が増加するため高度な信号圧縮処理のア
ルゴリズムが適用できる。また、低速DSPのアルゴリズ
ムに適用することにより、演算処理時間の高速化を達成
でき、高価な高速DSPに代わることができるためシステ
ムの低価格化を図ることができる。
処理が可能となり、他の信号処理(例えば予測フィルタ
処理やシフト情報を他のメモリにストアする処理等)に
振り分ける時間が増加するため高度な信号圧縮処理のア
ルゴリズムが適用できる。また、低速DSPのアルゴリズ
ムに適用することにより、演算処理時間の高速化を達成
でき、高価な高速DSPに代わることができるためシステ
ムの低価格化を図ることができる。
第1図は本発明に係る帯域圧縮回路の基本的な実施例の
フローティング処理の動作を説明するためのフローチャ
ート、第2図は実施例のフローティング処理の具体的な
動作を説明するための説明図、第3図は実施例のフロー
ティング処理の詳細な動作を説明するためのフローチャ
ート、第4図は実施例の帯域圧縮回路を一般的な信号伝
送装置に適用したブロック図である。 第5図は従来の帯域圧縮回路のフローティング処理の動
作を説明するための説明図、第6図は従来の帯域圧縮回
路のフローティング処理を説明するためのフローチャー
トである。 55……レンジングアンプ 56……量子化器 57……ノイズシェイピング回路 62……出力端子
フローティング処理の動作を説明するためのフローチャ
ート、第2図は実施例のフローティング処理の具体的な
動作を説明するための説明図、第3図は実施例のフロー
ティング処理の詳細な動作を説明するためのフローチャ
ート、第4図は実施例の帯域圧縮回路を一般的な信号伝
送装置に適用したブロック図である。 第5図は従来の帯域圧縮回路のフローティング処理の動
作を説明するための説明図、第6図は従来の帯域圧縮回
路のフローティング処理を説明するためのフローチャー
トである。 55……レンジングアンプ 56……量子化器 57……ノイズシェイピング回路 62……出力端子
Claims (3)
- 【請求項1】入力デジタルデータをフローティング処理
し、ビット圧縮処理を行うようなデジタル信号の帯域圧
縮回路において、 上記フローティング処理前に、上記入力デジタルデータ
を、フローティング処理時の最大シフト量の約半分近傍
のビット数だけシフトするビットシフト手段と、 上記ビットシフト手段にてシフト処理したデジタルデー
タと最大値とを比較する比較手段と、 上記比較手段の比較結果に応じてフローティング処理の
開始時のデータシフト量を切り換える切換手段と を有することを特徴とするデジタル信号の帯域圧縮回
路。 - 【請求項2】上記比較手段にて上記シフト処理したデジ
タルデータが上記最大値より大きいときには上記入力さ
れたデジタルデータを1ビット毎にシフト処理をした後
にフローティング処理を施すことを特徴とする請求項1
記載のデジタル信号の帯域圧縮回路。 - 【請求項3】上記比較手段にて上記シフト処理したデジ
タルデータが上記最大値より小さいときには上記ビット
シフト手段にて最大シフト量の約半分近傍のビット数だ
けビットシフトしたデジタルデータを1ビット毎にシフ
ト処理しながらフローティング処理を施すことを特徴と
する請求項1記載のデジタル信号の帯域圧縮回路。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP1157339A JP2775857B2 (ja) | 1989-06-20 | 1989-06-20 | デジタル信号の帯域圧縮回路 |
US07/538,265 US5041830A (en) | 1989-06-20 | 1990-06-14 | Band compression circuit |
DE69029685T DE69029685T2 (de) | 1989-06-20 | 1990-06-20 | Bandbreitekompressionsgerät |
EP90306716A EP0404535B1 (en) | 1989-06-20 | 1990-06-20 | Bandwidth compression device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP1157339A JP2775857B2 (ja) | 1989-06-20 | 1989-06-20 | デジタル信号の帯域圧縮回路 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH0322708A JPH0322708A (ja) | 1991-01-31 |
JP2775857B2 true JP2775857B2 (ja) | 1998-07-16 |
Family
ID=15647529
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP1157339A Expired - Fee Related JP2775857B2 (ja) | 1989-06-20 | 1989-06-20 | デジタル信号の帯域圧縮回路 |
Country Status (4)
Country | Link |
---|---|
US (1) | US5041830A (ja) |
EP (1) | EP0404535B1 (ja) |
JP (1) | JP2775857B2 (ja) |
DE (1) | DE69029685T2 (ja) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5357278A (en) * | 1993-01-14 | 1994-10-18 | Sony Electronics, Inc. | Integrated linear/non-linear static and controllable dynamic companding |
US5335019A (en) * | 1993-01-14 | 1994-08-02 | Sony Electronics, Inc. | Digital video data quantization error detection as applied to intelligent dynamic companding |
US5832490A (en) * | 1996-05-31 | 1998-11-03 | Siemens Medical Systems, Inc. | Lossless data compression technique that also facilitates signal analysis |
US5790705A (en) * | 1996-09-13 | 1998-08-04 | Apple Computer, Inc. | Compression techniques for substantially lossless digital image data storage |
EP1060573B1 (en) * | 1998-01-12 | 2002-09-18 | STMicroelectronics Asia Pacific Pte Ltd. | Method and apparatus for spectral exponent reshaping in a transform coder for high quality audio |
SG96225A1 (en) * | 2001-06-04 | 2003-05-23 | Oki Techno Ct Singapore Pte | A method and apparatus for normalizing cdma rake output |
JP3748261B2 (ja) * | 2003-06-17 | 2006-02-22 | 沖電気工業株式会社 | Adpcm方式復号器 |
JP2012522459A (ja) * | 2009-03-31 | 2012-09-20 | アギア システムズ インコーポレーテッド | デルタシグマ変調器を用いてrf信号を直接合成するための方法および装置 |
US9467199B1 (en) * | 2014-06-25 | 2016-10-11 | Altera Corporation | Compression using mu-law approximation |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3931596A (en) * | 1974-09-30 | 1976-01-06 | Bell Telephone Laboratories, Incorporated | Adaptive quantizer apparatus using training mode |
US4059800A (en) * | 1976-06-30 | 1977-11-22 | International Business Machines Corporation | Digital multi-line companded delta modulator |
NL190093C (nl) * | 1979-12-17 | 1993-10-18 | Victor Company Of Japan | Comprimeer- en expandeerstelsel. |
US4682152A (en) * | 1981-04-20 | 1987-07-21 | Hitachi, Ltd. | Digital data companding |
JPS60537A (ja) * | 1983-06-17 | 1985-01-05 | Fujitsu Ltd | 正規化回路 |
US4797902A (en) * | 1984-12-29 | 1989-01-10 | Sony Corporation | Digital signal transmission device |
JPS63136826A (ja) * | 1986-11-28 | 1988-06-09 | Fujitsu Ltd | 音声符号化装置 |
US4922537A (en) * | 1987-06-02 | 1990-05-01 | Frederiksen & Shu Laboratories, Inc. | Method and apparatus employing audio frequency offset extraction and floating-point conversion for digitally encoding and decoding high-fidelity audio signals |
-
1989
- 1989-06-20 JP JP1157339A patent/JP2775857B2/ja not_active Expired - Fee Related
-
1990
- 1990-06-14 US US07/538,265 patent/US5041830A/en not_active Expired - Lifetime
- 1990-06-20 EP EP90306716A patent/EP0404535B1/en not_active Expired - Lifetime
- 1990-06-20 DE DE69029685T patent/DE69029685T2/de not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
EP0404535A2 (en) | 1990-12-27 |
EP0404535A3 (en) | 1992-08-26 |
DE69029685T2 (de) | 1997-05-07 |
US5041830A (en) | 1991-08-20 |
JPH0322708A (ja) | 1991-01-31 |
DE69029685D1 (de) | 1997-02-27 |
EP0404535B1 (en) | 1997-01-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP0182915B1 (en) | Apparatus for transmitting digital signals | |
US4870685A (en) | Voice signal coding method | |
JP3339335B2 (ja) | 圧縮符号化復号方式 | |
JP2775857B2 (ja) | デジタル信号の帯域圧縮回路 | |
US20050143981A1 (en) | Compressing method and apparatus, expanding method and apparatus, compression and expansion system, recorded medium, program | |
JP2597987B2 (ja) | ブロツク化伝送信号のデコード装置 | |
US7224294B2 (en) | Compressing device and method, decompressing device and method, compressing/decompressing system, program, record medium | |
US6480550B1 (en) | Method of compressing an analogue signal | |
JP2958742B2 (ja) | 波形データ圧縮装置、波形データ伸長装置、量子化装置および浮動小数点によるデータ作成方法 | |
US4783792A (en) | Apparatus for transmitting digital signal | |
US5808923A (en) | Denormalization device and method for multichannel audio decoder | |
JP2805078B2 (ja) | ビットリダクション装置 | |
KR100359037B1 (ko) | 디지탈 데이타의 부호화 방법 및 부호화 장치 | |
JP2730029B2 (ja) | 線形予測符号化方法 | |
JP2785822B2 (ja) | テレビジョン信号の高能率符号化装置及び復号装置 | |
JPS58197918A (ja) | 適応差分復号器 | |
JPH061903B2 (ja) | 信号伝送装置 | |
JPH06101709B2 (ja) | デイジタル信号伝送装置 | |
JP2652371B2 (ja) | 音声符号化方法 | |
JPH0642631B2 (ja) | 信号伝送装置 | |
JP2730028B2 (ja) | 線形予測符号化方法 | |
JP4319895B2 (ja) | 時系列信号の符号化装置 | |
JP3092331B2 (ja) | 信号処理装置 | |
JP2508483B2 (ja) | ディジタル画像信号のバッファリング装置 | |
JPH11195991A (ja) | アナログ信号のデータ圧縮・復元方法及びその装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
LAPS | Cancellation because of no payment of annual fees |