(57)【特許請求の範囲】
【請求項１】
入力信号の量子化を行う局部量子化器及び、前記局部量子化器の出力範囲を制限するリミッタを有し、かつ与えられた入力のノイズシェーピング演算を行う第１のノイズシェーピング型量子化器と、
前記第１のノイズシェーピング型量子化器が発生する量子化誤差を入力とし、与えられた入力のノイズシェーピングを行う第２のノイズシェーピング型量子化器と、
前記第２のノイズシェーピング型量子化器の出力を第１のノイズシェーピング型量子化器のシェーピング次数に応じて微分する微分器と、
前記リミッタにより発生した量子化誤差を蓄積する誤差蓄積手段とを備え、
前記第２のノイズシェーピング型量子化器からの帰還信号と前記リミッタの動作状態に基づいて、前記誤差蓄積手段へ蓄積した量子化誤差を前記局部量子化器に帰還させて、
前記第１のノイズシェーピング型量子化器出力と前記微分器出力とを加算し、その加算結果を出力として取り出すノイズシェーピング型量子化器。
【請求項２】
前記局部量子化器がオーバーフローするかどうかを検出するオーバーフロー検出手段をさらに備え、
前記オーバーフロー検出手段による前記局部量子化器のオーバーフローの検出状態と前記第２のノイズシェーピング型量子化器からの帰還信号と前記リミッタの動作状態に基づいて、前記誤差蓄積手段へ蓄積した量子化誤差を前記局部量子化器に帰還させて、
前記第１のノイズシェーピング型量子化器出力と前記微分器出力とを加算し、その加算結果を出力として取り出す請求項１記載のノイズシェーピング型量子化器。
【請求項３】
入力信号の量子化を行う局部量子化器及び、前記局部量子化器の出力範囲を制限するリミッタを有し、かつ与えられた入力のノイズシェーピング演算を行う第１のノイズシェーピング型量子化器と、
前記第１のノイズシェーピング型量子化器が発生する量子化誤差を入力とし、与えられた入力のノイズシェーピングを行う第２のノイズシェーピング型量子化器と、
前記第２のノイズシェーピング型量子化器の出力を第１のノイズシェーピング型量子化器のシェーピング次数に応じて微分する微分器と、
前記第２のノイズシェーピング型量子化器からの帰還信号の状態及び、前記リミッタの動作状態をもとに、前記第１のノイズシェーピング型量子化器の動作によって発生する量子化誤差を計算するための自身の出力の出力振幅を制御する振幅制御手段と、
前記振幅制御手段の振幅制御により発生した量子化誤差を蓄積する誤差蓄積手段とを備え、
前記第２のノイズシェーピング型量子化器からの帰還信号と前記リミッタの動作状態に基づいて、前記誤差蓄積手段へ蓄積した量子化誤差を前記局部量子化器に帰還させて、
前記第１のノイズシェーピング型量子化器出力と前記微分器出力とを加算し、その加算結果を出力として取り出すノイズシェーピング型量子化器。
【請求項４】
前記局部量子化器がオーバーフローするかどうかを検出するオーバーフロー検出手段をさらに備え、
前記オーバーフロー検出手段による前記局部量子化器のオーバーフローの検出状態と前記第２のノイズシェーピング型量子化器からの帰還信号と前記リミッタの動作状態に基づいて、前記誤差蓄積手段へ蓄積した量子化誤差を前記局部量子化器に帰還させて、
前記第１のノイズシェーピング型量子化器出力と前記微分器出力とを加算し、その加算結果を出力として取り出す請求項３記載のノイズシェーピング型量子化器。
【請求項５】
前記オーバーフロー検出手段が、前記局部量子化器のオーバーフローを検出した場合、前記誤差蓄積手段が蓄積した量子化誤差を出力しない又は、ゼロを出力するように制御し、前記オーバーフロー検出手段が、前記局部量子化器のオーバーフローを検出しなかった場合、前記第２のノイズシェーピング型量子化器からの帰還信号と前記リミッタの動作状態に基づいて、前記誤差蓄積手段に蓄積した量子化誤差を前記局部量子化器に帰還するように制御する請求項４記載のノイズシェーピング型量子化器。
【請求項６】
前記第１のノイズシェーピング型量子化器に含まれる前記局部量子化器を第１の局部量子化器とし、
前記第２のノイズシェーピング型量子化器に含まれる局部量子化器を第２の局部量子化器とし、
前記第２のノイズシェーピング型量子化器からの帰還信号の符号と前記リミッタへの入力信号の符号を比較した結果に基づいて、前記第１の局部量子化器及び前記第２の局部量子化器がオーバーフローをしない範囲で、
前記誤差蓄積手段に蓄積した量子化誤差を前記第１の局部量子化器に帰還するように制御するとともに、前記第１のノイズシェーピング型量子化器の動作によって発生する量子化誤差を計算するための前記リミッタの出力振幅の大きさを前記振幅制御手段において制限するように制御する請求項４または請求項５記載のノイズシェーピング型量子化器。
【請求項７】
前記第１のノイズシェーピング型量子化器に含まれる前記局部量子化器を第１の局部量子化器とし、
前記第２のノイズシェーピング型量子化器に含まれる局部量子化器を第２の局部量子化器とし、
前記第２のノイズシェーピング型量子化器からの帰還信号の値と前記リミッタへの入力信号の符号に基づいて、前記第１の局部量子化器及び前記第２の局部量子化器がオーバーフローをしない範囲で、
前記誤差蓄積手段に蓄積した量子化誤差を前記第１の局部量子化器に帰還するように制御するとともに、前記第１のノイズシェーピング型量子化器の動作によって発生する量子化誤差を計算するための前記リミッタの出力振幅の大きさを前記振幅制御手段において制限するように制御する請求項４または請求項５記載のノイズシェーピング型量子化器。
【請求項８】
入力信号の量子化を行う局部量子化器と、
前記局部量子化器の出力範囲を制限するリミッタと、
前記リミッタにより発生した量子化誤差を蓄積する誤差蓄積手段とを備え、
前記リミッタの動作状態と前記局部量子化器で発生する量子化誤差と前記誤差蓄積手段に蓄積された量子化誤差の符号とに基づいて、前記誤差蓄積手段へ蓄積した量子化誤差を前記局部量子化器に帰還させて、与えられた入力のノイズシェーピング演算を行うノイズシェーピング型量子化器。
【請求項９】
前記局部量子化器がオーバーフローするかどうかを検出するオーバーフロー検出手段をさらに備え、
前記オーバーフロー検出手段による前記局部量子化器のオーバーフローの検出状態及び、前記リミッタの動作状態と前記局部量子化器で発生する量子化誤差と前記誤差蓄積手段に蓄積された量子化誤差の符号とに基づいて、前記誤差蓄積手段へ蓄積した量子化誤差を前記局部量子化器に帰還させて、与えられた入力のノイズシェーピング演算を行う請求項８記載のノイズシェーピング型量子化器。
【請求項１０】
入力信号の量子化を行う局部量子化器を有し、かつ与えられた入力のノイズシェーピング演算を行う第１のノイズシェーピング型量子化器と、
前記第１のノイズシェーピング型量子化器が発生する量子化誤差を入力とし、与えられた入力のノイズシェーピングを行う第２のノイズシェーピング型量子化器と、
前記第２のノイズシェーピング型量子化器の出力を第１のノイズシェーピング型量子化器のシェーピング次数に応じて微分する微分器と、
前記局部量子化器への入力のオーバーフローする分の量子化誤差を検出するオーバーフロー分誤差検出手段と、
前記オーバーフローする分の量子化誤差を蓄積する誤差蓄積手段とを備え、
前記第２のノイズシェーピング型量子化器からの帰還信号と前記オーバーフロー分誤差検出手段によるオーバーフローの検出に基づいて、前記誤差蓄積手段へ蓄積したオーバーフローする分の量子化誤差を前記局部量子化器に帰還させて、
前記第１のノイズシェーピング型量子化器出力と前記微分器出力とを加算し、その加算結果を出力として取り出すノイズシェーピング型量子化器。
【請求項１１】
入力信号の量子化を行う局部量子化器と、
前記局部量子化器への入力のオーバーフローする分の量子化誤差を検出するオーバーフロー分誤差検出手段と、
前記オーバーフローする分の量子化誤差を蓄積する誤差蓄積手段とを備え、
前記オーバーフロー分誤差検出手段によるオーバーフローの検出と前記局部量子化器で発生する量子化誤差と前記誤差蓄積手段に蓄積された量子化誤差の符号とに基づいて、前記誤差蓄積手段へ蓄積したオーバーフローする分の量子化誤差を前記局部量子化器に帰還させて、与えられた入力のノイズシェーピング演算を行うノイズシェーピング型量子化器。
【請求項１２】
入力信号の量子化を行う局部量子化器及び、前記局部量子化器の出力範囲を制限するリミッタを有し、かつ与えられた入力のノイズシェーピング演算を行う第１のノイズシェーピング型量子化器と、
前記第１のノイズシェーピング型量子化器が発生する量子化誤差を入力とし、与えられた入力のノイズシェーピングを行う第２のノイズシェーピング型量子化器と、
前記第２のノイズシェーピング型量子化器の出力を第１のノイズシェーピング型量子化器のシェーピング次数に応じて微分する微分器と、
前記局部量子化器への入力のオーバーフローする分の量子化誤差を検出するオーバーフロー分誤差検出手段と、
前記リミッタにより発生した量子化誤差および前記オーバーフローする分の量子化誤差を蓄積する誤差蓄積手段とを備え、
前記オーバーフロー分誤差検出手段によるオーバーフローの検出と前記第２のノイズシェーピング型量子化器からの帰還信号と前記リミッタの動作状態に基づいて、前記誤差蓄積手段へ蓄積した量子化誤差を前記局部量子化器に帰還させて、
前記第１のノイズシェーピング型量子化器出力と前記微分器出力とを加算し、その加算結果を出力として取り出すノイズシェーピング型量子化器。
【請求項１３】
入力信号の量子化を行う局部量子化器及び、前記局部量子化器の出力範囲を制限するリミッタを有し、かつ与えられた入力のノイズシェーピング演算を行う第１のノイズシェーピング型量子化器と、
前記第１のノイズシェーピング型量子化器が発生する量子化誤差を入力とし、与えられた入力のノイズシェーピングを行う第２のノイズシェーピング型量子化器と、
前記第２のノイズシェーピング型量子化器の出力を第１のノイズシェーピング型量子化器のシェーピング次数に応じて微分する微分器と、
前記局部量子化器への入力のオーバーフローする分の量子化誤差を検出するオーバーフロー分誤差検出手段と、
前記第２のノイズシェーピング型量子化器からの帰還信号の状態及び、前記リミッタの動作状態をもとに、前記第１のノイズシェーピング型量子化器の動作によって発生する量子化誤差を計算するための自身の出力の出力振幅を制御する振幅制御手段と、
前記振幅制御手段の振幅制御により発生した量子化誤差および前記オーバーフローする分の量子化誤差を蓄積する誤差蓄積手段とを備え、前記オーバーフロー分誤差検出手段によるオーバーフローの検出と前記第２のノイズシェーピング型量子化器からの帰還信号と前記リミッタの動作状態に基づいて、前記誤差蓄積手段へ蓄積した量子化誤差を前記局部量子化器に帰還させて、
前記第１のノイズシェーピング型量子化器出力と前記微分器出力とを加算し、その加算結果を出力として取り出すノイズシェーピング型量子化器。
【請求項１４】
入力信号の量子化を行う局部量子化器と、
前記局部量子化器の出力範囲を制限するリミッタと、
前記局部量子化器への入力のオーバーフローする分の量子化誤差を検出するオーバーフロー分誤差検出手段と、
前記リミッタにより発生した量子化誤差および前記オーバーフローする分の量子化誤差を蓄積する誤差蓄積手段とを備え、
前記オーバーフロー分誤差検出手段によるオーバーフローの検出および前記リミッタの動作状態と前記局部量子化器で発生する量子化誤差と前記誤差蓄積手段に蓄積された量子化誤差の符号とに基づいて、前記誤差蓄積手段へ蓄積した量子化誤差を前記局部量子化器に帰還させて、与えられた入力のノイズシェーピング演算を行うノイズシェーピング型量子化器。
【請求項１５】
前記誤差蓄積手段に蓄積する量子化誤差の量を制限するように前記誤差蓄積手段を制御する請求項１から請求項１４のいずれかに記載のノイズシェーピング型量子化器。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ノイズシェーピング型量子化器の過大入力時の処理方式に関する。
【背景技術】
【０００２】
図７に示す多段型ノイズシェーピング型量子化器に関して説明を行う。図７は加算器７１と加算器７２、局部量子化器７３、リミッタ７４、減算器７５、遅延器７６により１次のノイズシェーピング次数を有する単積分型ノイズシェーピング型量子化器となるメインループ７７が構成されている。また、加算器７８と局部量子化器７９減算器７１０、帰還回路７１１により１次又は２次以上のノイズシェーピング次数を有する多重積分型ノイズシェーピング量子化器となるサブループ７１２が構成されている。このサブループ７１２の出力を減算器７１３と遅延器７１４で構成される微分器７１５によりメインループ７７のノイズシェーピング次数に応じて微分した後、加算器７１６によりメインループ７７の出力と加算すると、（サブループのノイズシェーピング次数＋１）次の多段型ノイズシェーピング量子化器が構成される。この帰還回路７１１は、サブループ７１２が２次以上のノイズシェーピング特性を持つような伝達関数Ｈ（ｚ）の特性を有している。また、サブループ７１２の帰還回路７１１の出力信号７１７は、加算器７２において局部量子化器７３の入力信号に対し帰還信号７１７に応じた所定の値を加減算することによりサブループ７１２へ入力される量子化誤差を抑え正常に動作させるためのものである。
【０００３】
次に図８に示す第１の局部量子化器７３の入力範囲と入力信号に関して説明を行なう。図８の第１の局部量子化器７３の入力範囲８１は、音声信号分８６及び、量子化誤差部分８５、サブループからの帰還入力分８４、マージン分８２からなる。第１の局部量子化器７３への入力信号８７は、音声信号分８６及び、量子化誤差分８５、サブループからの帰還入力分８４、リミッタ７４動作により発生する量子化誤差８８からなる。従来の回路では第１の局部量子化器７３の入力範囲８１を入力信号８７が超えてしまう場合がありオーバーフロー分８３が発生する場合がある。
【０００４】
ここで、メインループ７７のリミッタ７４は、局部量子化器７３の出力を微分器７１５の状態に応じて制限している。リミッタ７４が動作しない場合、メインループ７７で発生する量子化誤差は、第１局部量子化器７３の出力値１個に対応する入力信号の範囲以下になる。リミッタが動作した場合、局部量子化器７３の出力が制限され、リミッタ７４が動作していない場合と比較して、減算器７５で算出される符号の反転した量子化誤差が増加してしまう。このため、遅延器７６と加算器７１により１クロック後に局部量子化器７３へ入力される信号振幅が大きくなり、局部量子化器７３がオーバーフローを発生する可能性がある。第１の局部量子化器７３がオーバーフローした場合は、図８に示す第１の局部量子化器７３の入力範囲８１にマージン分８２を設定し、オーバーフローした量子化誤差分８３は１クロック後へ帰還され複数回で分割処理し動作している。このため、リミッタ７４の動作頻度に応じてマージン分８２の大きさを設定する必要がある。
【特許文献１】特公平８−２０２４号公報
【非特許文献１】Ｊｏｕｒｎａｌ  ｏｆ  ｓｏｌｉｄ  ｓｔａｔｅ  ｃｉｒｃｕｉｔ，Ａｕｇ．１９８９，Ｖｏｌ．２４，Ｎｏ．４
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら上記のような構成では、０ｄＢ入力の様な大振幅の入力信号が継続した場合、第１の局部量子化器のオーバーフローやリミッタの頻繁な動作が起こり、第１のノイズシェーピング型量子化器の発生する量子化誤差が増加してしまう。この量子化誤差の増加によりメインループサブループ共に不安定になり、発振又はオーバーフローに至る可能性がある。
【０００６】
本発明は、かかる課題を解決し、０ｄＢ入力の様な大振幅の入力信号が継続した場合においても、歪率の悪化を抑えつつ、発振又はオーバーフローに至らない安定なノイズシェーピング型量子化器の提供を目的とするものである。
【課題を解決するための手段】
【０００７】
前記従来の課題を解決するために、本発明のノイズシェーピング型量子化器は、発生した量子化誤差を誤差蓄積手段へ蓄積し、誤差蓄積手段へ蓄積した量子化誤差を局部量子化器でオーバーフローが発生しないように、局部量子化器に帰還させて、与えられた入力のノイズシェーピング演算を行う。
【０００８】
本構成によって、発生する量子化誤差を誤差蓄積回路で蓄積し、局部量子化器に帰還させて量子化誤差を制御することができ、局部量子化器がオーバーフローへ至らない安定なノイズシェーピング型量子化器となる。
【発明の効果】
【０００９】
本発明のノイズシェーピング型量子化器の過大入力時の処理方式は、発生する量子化誤差が増加した場合において、量子化誤差を誤差蓄積回路に蓄積して量子化誤差を制御する事で、局部量子化器がオーバーフローへ至らない安定なノイズシェーピング型量子化器を構成する事を可能としている。
【００１０】
また、同時にオーバーフローを起こすことによる歪率の悪化を抑える事も可能となる。
【００１１】
また、局部量子化器の安定度の向上により局部量子化器の入力範囲に設定するマージンを小さく設計する事が可能となる事で、局部量子化器の全入力範囲に対する音楽信号入力の割合が増加し、音楽信号出力の振幅を増加させる事が可能となる。
【発明を実施するための最良の形態】
【００１２】
以下、本発明を実施するための最良の形態について図面を参照しながら説明する。
【００１３】
（実施の形態１）
図１Ａは、本発明の実施の形態１における多段型ノイズシェーピング型量子化器の構成を示すブロック図である。図１Ｂは、図１Ａの誤差蓄積回路１５の構成を示すブロック図である。図１Ｃは、図１Ａの多段型ノイズシェーピング型量子化器を簡略化した単積分型ノイズシェーピング型量子化器である。図１Ｅは、第１の局部量子化器１３の入力範囲及び入力信号を示す説明図である。図１Ｆは、図１Ａのリミッタ１４の部分に振幅制御器を追加し出力制御器とした多段型ノイズシェーピング型量子化器の構成を示すブロック図である。図１Ｇは、図１Ａのリミッタ１４の部分に振幅制御器を追加した構成の出力制御器を示すブロック図である。
【００１４】
図１Ａにおいて、本発明の実施の形態１の多段型ノイズシェーピング型量子化器は、メインループ１９とサブループ１１４と微分器１１７から構成されている。そして、メインループ１９は、加算器１１と加算器１２、局部量子化器１３、リミッタ１４、誤差蓄積回路１５、加算器１６、減算器１７、遅延器１８により構成される１次のノイズシェーピング次数を有する単積分型ノイズシェーピング型量子化器である。また、サブループ１１４は、加算器１１０と局部量子化器１１１、減算器１１２、帰還回路１１３により構成される１次又は２次以上のノイズシェーピング次数を有する多重積分型ノイズシェーピング量子化器である。このサブループ１１４の出力を減算器１１５と遅延器１１６で構成される微分器１１７によりメインループ１９のノイズシェーピング次数に応じて微分した後、加算器１１８によりメインループ１９の出力と加算すると、（サブループのノイズシェーピング次数＋１）次の多段型ノイズシェーピング型量子化器が構成される。この帰還回路１１３は、サブループ１１４が２次以上のノイズシェーピング特性を持つような伝達関数Ｈ（ｚ）の特性を有している。
【００１５】
帰還信号１１９は、サブループ１１４の帰還回路１１３から出力され、加算器１２において局部量子化器１３の入力信号に対し帰還信号１１９に応じた所定の値を加減算する事によりサブループ１１４へ入力される量子化誤差を抑え正常に動作させるためのものである。なお、帰還信号１１９は、サブループ１１４に構成された積分器の出力でも良く、加算器１２において局部量子化器１３の入力信号に対し帰還信号１１９に応じた所定の値を加減算する方法以外に、局部量子化器１３の量子化テーブルを帰還信号１１９に応じてシフトする方法でも良く、サブループ１１４へ入力される量子化誤差を抑え正常に動作させるために、帰還信号１１９に基づいて局部量子化器１３の出力信号を変化させてサブループ１１４への入力信号の範囲を制御する方法であれば良い。
【００１６】
リミッタ１４は、微分器１１７あるいは遅延器１１６からの出力により、第１の局部量子化器１３の出力の振幅を制御して加算器１１８への出力を決定している。つまり、リミッタ１４は、微分器１１７の状態（遅延器１１６からの値）に基づき、微分器１１７の出力値と加算器１１８への出力との和が多段型ノイズシェーピング回路の出力階調数を超えないように、第１の局部量子化器１３から入力される値の上限値及び下限値を制御して出力している。これにより、微分器１１７の出力値に応じて、第１の局部量子化器１３の出力範囲を可変し広げる事が可能となる。
【００１７】
そしてリミッタ１４は、第１の局部量子化器１３から入力される信号を振幅制限して出力すると同時に、振幅制限した分の量子化誤差を、誤差蓄積回路１５に対して出力する。また、リミッタ１４は、第１の局部量子化器１３出力の符号を判別し、誤差蓄積回路１５へ第１の局部量子化器１３出力の符号を示す信号を出力している。なお、第１の局部量子化器１３出力の符号と加算器１１８へ入力するリミッタ１４出力の符号は同じであるためリミッタ１４においてリミッタ１４出力の符号を判別して誤差蓄積回路１５へリミッタ１４出力の符号を出力しても良い。
【００１８】
誤差蓄積回路１５は、第１の局部量子化器１３の出力と微分器１１７の動作状態を参照してリミッタ１４が振幅制限することによって発生する量子化誤差を制御するために、リミッタ１４で制限された分の量子化誤差を入力して蓄積し、リミッタ１４の動作状態の信号とサブループ１１４の帰還回路１１３の出力信号１２０の符号を参照することによって蓄積された量子化誤差分の信号を出力して加算器１６へレベル制限し入力するか否かを制御している。
【００１９】
図１Ａ、図１Ｂ及び図１Ｅを用いて誤差蓄積回路１５について詳細に説明する。
【００２０】
図１Ｂに示すように、誤差蓄積回路１５は、加算器１ｂ３と処理選択回路１ｂ６から構成される。リミッタ１４から出力されるリミッタ１４で振幅制限した分の量子化誤差の信号１ｂ１（新たに発生した量子化誤差入力）が加算器１ｂ３に入力され、処理選択回路１ｂ６からの出力信号１ｂ２（蓄積されていた量子化誤差量）と加算されて、信号１ｂ４（新たに蓄積された量子化誤差量）として処理選択回路１ｂ６へ入力される。処理選択回路１ｂ６は、第１の局部量子化器１３出力の符号を示す信号１ｂ８とサブループ１１４からの帰還信号１ｂ５（帰還信号１２０）を参照して蓄積された量子化誤差量１ｂ２及び出力１ｂ７を制御する。
【００２１】
次に、誤差蓄積回路１５の出力（処理選択回路１ｂ６の出力１ｂ７）の決定方法について説明する。まず、図１Ｅに示す第１の局部量子化器１３の入力範囲及び入力信号について説明する。第１の局部量子化器１３の入力範囲１ｅ１は、音声信号分１ｅ４及び、量子化誤差部分１ｅ３、サブループ１１４からの帰還入力分１ｅ２からなる。そして、第１の局部量子化器への入力信号１ｅ５は、図１Ｅに示すように帰還回路の出力とリミッタの出力が同符号の場合と異符号の場合で異なっており、音声信号分１ｅ４及び、量子化誤差分１ｅ３、サブループ２１２からの帰還入力分１ｅ２、振幅制限されたリミッタ動作により発生する量子化誤差１ｅ６からなる。
【００２２】
まず、第１の局部量子化器１３がオーバーフローしないために、第１の局部量子化器１３出力の符号１ｂ８と、サブループ１１４からの帰還信号１２０とを参照して、二つの符号が同符号の場合はサブループ１１４からの帰還入力分１ｅ２の部分が使用されているので、マージンがゼロの場合には処理選択回路１ｂ６は誤差蓄積回路１５の出力１ｂ７をゼロへリミットする必要がある。
【００２３】
また、第１の局部量子化器１３出力の符号１ｂ８と、サブループ１１４の帰還信号１２０とを参照して、二つの符号が異符号の場合は、サブループ１１４からの帰還入力分１ｅ２の部分が使用されていないので（図１Ｅ参照）、処理選択回路１ｂ６は誤差蓄積回路１５の出力１ｂ７をサブループ１１４からの帰還入力分１ｅ２の範囲におさまるようにリミットする。
【００２４】
次に、第２の局部量子化器１１１がオーバーフローしないための条件を求める。まず、第２の局部量子化器１１１がオーバーフローしない状態を保つことが出来るサブループ１１４の入力として許容される量子化誤差の大きさを、第２の局部量子化器１１１の入力範囲をサブループ１１４の帰還回路１１３のゲインで除算する事により求める。
【００２５】
そして、第１の局部量子化器１３出力の符号１ｂ８と、サブループ１１４の帰還信号１２０とを参照して、二つの符号が同符号の場合はリミッタ１４の動作により発生する量子化誤差とサブループ１１４の帰還入力分との極性が一致するため、サブループ１１４からの帰還入力分１ｅ２を含めて第２の局部量子化器１１１がオーバーフローしない状態を保つことが出来るサブループ１１４の入力として許容される量子化誤差の大きさを超えないように誤差蓄積回路の出力１ｂ７をリミットする必要がある。
【００２６】
また、第１の局部量子化器１３出力の符号１ｂ８と、サブループ１１４の帰還信号１２０とを参照して、二つの符号が異符号の場合はリミッタ１４の動作により発生する量子化誤差がサブループ１１４の帰還入力分と異符号なため、サブループ１１４からの帰還入力分１ｅ２を考慮する必要がなく第２の局部量子化器１１１がオーバーフローしない状態を保つことが出来るサブループ１１４の入力として許容される量子化誤差の大きさを超えないように誤差蓄積回路の出力１ｂ７をリミットする。
【００２７】
そして、第１の局部量子化器１３と第２の局部量子化器１１１の両方が安定であると判断されたとき（第１の局部量子化器１３出力の符号１ｂ８と帰還信号１ｂ５が異符号であると判断されたとき）に、両局部量子化器をオーバーフローさせないためにかけるリミットの大きい方、つまりリミット後の値の小さい方の値を出力１ｂ７として出力する。
【００２８】
このように、処理選択回路１ｂ６は、第１及び第２の局部量子化器が共にオーバーフローしない状態になるような制限値を求め、第１の局部量子化器１３出力の符号と、サブループ１１４の帰還信号１２０の符号とから、誤差蓄積回路の出力１ｂ７を決定する。
【００２９】
なお、本実施の形態において、第１及び第２の局部量子化器が共にオーバーフローしない状態になるような制限値は、回路設計の段階で予め決められた値である。ただし、サブループ１１４からの帰還信号１２０の符号で無く値そのものを参照した場合、制限値を各タイミングにおいて計算し、制限値を切り替えるような構成とすることにより、より高精度に制御する事が可能となる。これは、帰還信号１２０の値により、メインループ１９の第１局部量子化器１３の帰還入力分の余裕分がより正確に得られるからである。同時にサブループ１１４へ入力される量子化誤差の範囲もより高精度に限定する事が可能となる。
【００３０】
次に、図３Ａを用いて、誤差蓄積回路１５の動作について説明する。図３Ａは、図１Ａの誤差蓄積回路１５の動作を示すフローチャートである。
【００３１】
まず、リミッタ１４で新たに発生した量子化誤差入力１ｂ１が誤差蓄積回路１５に入力される（Ｓ３１）。
【００３２】
次に、新たに発生した量子化誤差入力１ｂ１と蓄積された量子化誤差量１ｂ２とを加算する（Ｓ３２）。
【００３３】
そして、処理選択回路１ｂ６は、ステップＳ３２での加算結果１ｂ４の最大値もしくは最小値を振幅制限し蓄積する。この蓄積された値が量子化誤差量１ｂ２となる。なお、ここで振幅制限するための最大値・最小値は、処理選択回路１ｂ６内に蓄積可能な最大値・最小値という意味であり、処理選択回路１ｂ６で蓄積可能な最大値・最小値の範囲内に、入力された１ｂ４が収まっていれば、振幅制限されない（Ｓ３３）。
【００３４】
そして、処理選択回路１ｂ６は、信号１ｂ２と信号１ｂ４とを比較して、新たに発生した量子化誤差入力１ｂ１がゼロであるかどうかを検出する事により、リミッタ１４が動作しているかどうかを判断する（Ｓ３４）。
【００３５】
ステップＳ３４で、リミッタ１４が動作していないと判断されたならば、処理選択回路１ｂ６は、第１の局部量子化器１３出力の符号を示す信号１ｂ８とサブループ１１４からの帰還信号１ｂ５（帰還信号１２０）を参照して、符号が異符号であるかどうかを判断する（Ｓ３５）。
【００３６】
ステップＳ３５で符号が異符号と判断されたならば、処理選択回路１ｂ６内に蓄積されている値が、出力１ｂ７として出力可能な所定の制限値を超えているかどうかを判断する（Ｓ３６）。
【００３７】
ステップＳ３６において、処理選択回路１ｂ６に蓄積されていた値が所定の制限値（誤差蓄積回路１５から１回に返せる量子化誤差量）よりも大きいと判断されたならば、所定の制限値を出力１ｂ７として出力し、処理選択回路１ｂ６に蓄積されていた値から所定の制限値を減算し減算された結果を量子化誤差として蓄積する（Ｓ３７）。
【００３８】
また、ステップＳ３６において、処理選択回路１ｂ６に蓄積されていた値が所定の制限値よりも小さいと判断されたならば、蓄積されていた量子化誤差を出力１ｂ７として、全て出力し、蓄積している量子化誤差を０とする（Ｓ３８）。
【００３９】
また、ステップＳ３４においてリミッタが動作している場合と、ステップＳ３５において信号１ｂ８と帰還信号１ｂ５が同符号である場合は、誤差蓄積回路１５から誤差を出力すると、第１及び第２の局部量子化器がオーバーフローを起こす可能性がある不安定な状態であるため、誤差蓄積回路１５からの出力１ｂ７をゼロにする、もしくは出力しない（Ｓ３９）。ただし、判断処理Ｓ３４は必ずしも必要では無い。
【００４０】
以上のように構成することで、リミッタ１４の動作で発生する量子化誤差による第１の局部量子化器１３のオーバーフローを抑え、メインループ１９を安定に保ちつつ、制限された分の量子化誤差を蓄積・出力制御する事で歪率の劣化を抑える事が可能となる。
【００４１】
ここで、ステップＳ３３における処理選択回路１ｂ６による量子化誤差蓄積量の最大値もしくは最小値を振幅制限する処理は、リミッタ１４が頻繁に動作するような状態で量子化誤差を帰還するタイミングが遅くなり、量子化誤差がノイズとなってしまう事を防ぐためのもので、リミッタ１４が頻繁に動作しない場合はこの処理を行わなくても正常に動作する。
【００４２】
さらに、第１の局部量子化器１３のオーバーフローを抑える事によって、サブループ１１４の帰還回路１１３の出力１１９に応じて第１の局部量子化器１３の入力信号に対し所定の値を加減算して、サブループ１１４へ入力される量子化誤差を抑えサブループ１１４を正常に動作させる事が可能となり、メインループ１９及び、サブループ１１４の安定度を向上させる事が可能となる。
【００４３】
また、第２のノイズシェーピング型量子化器１１４の帰還回路１１３の出力信号１１９に基づき、第１の局部量子化器１３の入力信号に対し所定の値を加減算する事により第２の局部量子化器１１１へ入力される量子化誤差を抑え正常に動作させることによって、この動作を常に維持するように誤差蓄積回路１５で量子化誤差の蓄積及び、誤差蓄積回路１５に蓄積した量子化誤差の帰還を行う事で、第２のノイズシェーピング型量子化器１１４を安定に保つ事が可能となる。
【００４４】
また、メインループ１９へ帰還される量子化誤差を制御してメインループ１９を安定させることによって、第１の局部量子化器１３の入力範囲におけるマージンを無くす、もしくはマージンの割合を小さくできるので、第１の局部量子化器１３の全入力範囲に対する音楽信号入力の割合を増加させることができ、音楽信号出力の振幅を増加させる事が可能となる。
【００４５】
なお、上記説明の構成において、リミッタ１４の部分へ振幅制御器１ｇ６を追加し、二つを併せて出力制御器１Ｆ１とした構成に関しても、本発明の実施の形態１の内容を適用することができる。
【００４６】
ここで、図１Ｆは図１Ａのリミッタ１４の部分に振幅制御器１ｇ６を追加し出力制御器１Ｆ１とした多段型ノイズシェーピング型量子化器の構成を示すブロック図であり、図１Ｆを参照して、図１Ａの多段型ノイズシェーピング型量子化器と同等以上の効果を有する多段型ノイズシェーピング型量子化器について説明する。ただし、図１Ａと同様の構成については同じ番号を付し、説明を省略する。
【００４７】
まず、図１Ｆの多段型ノイズシェーピング型量子化器と図１Ａの多段型ノイズシェーピング型量子化器との違いは、図１Ｆのリミッタ１４の部分に振幅制御器１ｇ６が追加され出力制御器１Ｆ１となっている点である。
【００４８】
図１Ｇは、図１Ａのリミッタ１４の部分に振幅制御器１ｇ６を追加した構成の出力制御器１Ｆ１を示すブロック図である。
【００４９】
出力制御器１Ｆ１は、リミッタ１ｇ３と振幅制御器１ｇ６から構成され、信号１ｇ１、１ｇ２、１ｇ４、１ｇ５、１ｇ７〜１ｇ１０を入出力している。
【００５０】
リミッタ１ｇ３は、微分器１１７あるいは遅延器１１６からの出力１ｇ２により、第１の局部量子化器１３の出力１ｇ１の振幅を制御して加算器１１８への出力１ｇ４を決定している。つまり、リミッタ１ｇ３は、微分器１１７の状態（遅延器１１６からの値）１ｇ２に基づき、微分器１１７の出力値と加算器１１８への出力１ｇ４との和が多段型ノイズシェーピング回路の出力階調数を超えないように、第１の局部量子化器１３から入力される値の上限値及び下限値を制御して出力している。これにより、微分器１１７の出力値に応じて、第１の局部量子化器１３の出力範囲を可変し広げる事が可能となる。
【００５１】
振幅制御器１ｇ６は、リミッタ１ｇ３への入力１ｇ１とリミッタ１ｇ３の動作状態を表す信号１ｇ５とサブループの帰還信号の符号１ｇ７とを入力とし、第１のノイズシェーピング型量子化器の量子化誤差を計算するための出力１ｇ８と出力１ｇ８で出力できなかった新たに発生した量子化誤差量１ｇ９と第１の局部量子化器１３の出力信号の符号１ｇ１０とを出力とする。
【００５２】
リミッタ１ｇ３への入力１ｇ１とリミッタ１ｇ３の動作状態を表す信号１ｇ５から、リミッタ１ｇ３で新たに発生する量子化誤差量を計算し、第１の局部量子化器１３の出力信号の符号１ｇ１０を得る。そして、第１の局部量子化器１３の出力信号の符号１ｇ１０とサブループの帰還信号の符号１ｇ７とから、メインループ１９とサブループ１１４が量子化誤差を加算してもオーバーフローしない状態であるかを判断して、第１のノイズシェーピング型量子化器の量子化誤差を計算するための出力１ｇ８と出力１ｇ８で出力できなかった新たに発生した量子化誤差量１ｇ９が決定されている。
【００５３】
図３Ｂは、誤差蓄積回路１Ｆ５の動作を説明するフローチャートであり、図３Ａの誤差蓄積回路１５の動作を説明するフローチャートと同じ構成については同じ番号を付し、説明を省略する。
【００５４】
ステップＳ３４の判断処理をステップＳ３ｂ４の判断処理へ変更したものが誤差蓄積回路１Ｆ５の動作フローになり、出力制御器１Ｆ１の動作状態にも基づいて誤差蓄積回路１Ｆ５の出力が決定されている。
【００５５】
ステップＳ３ｂ４の判断処理では、処理選択回路１ｂ６が、信号１ｂ２と信号１ｂ４とが一致するかを判断する事により信号１ｂ１がゼロであるかを判断し、出力制御器１Ｆ１が動作しているかどうかを判断する（Ｓ３ｂ４）。
【００５６】
以上のように、本実施の形態１の多段型ノイズシェーピング型量子化器は、振幅制御器５ｇ６を追加する事により、リミッタ１ｇ３部分で発生する誤差の一部をメインループ１９とサブループ１１４の状態に応じて出力し、誤差蓄積回路１５への量子化誤差の蓄積量をより少なく抑える事ができ、より良好な歪率の信号を出力する事が可能となる。
【００５７】
なお、上記説明において、多段型ノイズシェーピング量子化器について説明したが、本発明の実施の形態１の内容は単積分型ノイズシェーピング型量子化器にも適用することができる。
【００５８】
ここで、図１Ｃは単積分型ノイズシェーピング型量子化器のブロック図であり、図１Ｃを参照して、図１Ａの多段型ノイズシェーピング型量子化器と同等の効果を有する単積分型ノイズシェーピング型量子化器について説明する。ただし、図１Ａと同様の構成については同じ番号を付し、説明を省略する。
【００５９】
まず、図１Ｃの単積分型ノイズシェーピング型量子化器と図１Ａの多段型ノイズシェーピング型量子化器との大きな違いは、図１Ｃの単積分型ノイズシェーピング型量子化器には図１Ａのサブループ１１４がなく帰還信号１２０と局部量子化器１３出力の符号を示す信号１ｂ８が誤差蓄積回路に入力されない点と誤差検出回路１ｃ２が追加され、その出力が誤差蓄積回路１ｃ１へ入力されている点である。
【００６０】
図１Ｃの単積分型ノイズシェーピング型量子化器は、加算器１１と、局部量子化器１３、リミッタ１４、誤差蓄積回路１ｃ１、誤差検出回路１ｃ２、加算器１６、減算器１７、遅延器１８により１次のノイズシェーピング次数を有する単積分型ノイズシェーピング型量子化器として構成されている。
【００６１】
図１Ｈは単積分型ノイズシェーピング型量子化器の局部量子化器１３の入力範囲及び入力信号を示しており、図１Ｅの局部量子化器１３の入力範囲及び入力信号の図と同じ構成については同じ番号を付し、説明を省略する。
【００６２】
局部量子化器１３の入力範囲１ｈ１は、音声信号分１ｅ４及び、量子化誤差部分１ｅ３からなる。そして、局部量子化器１３への入力信号１ｈ５は、図１Ｈに示すように誤差検出回路１ｃ２の出力と蓄積されている量子化誤差１ｂ４が同符号の場合と異符号の場合で異なっており、音声信号分１ｅ４及び、量子化誤差分１ｅ３、誤差蓄積回路１ｃ１から出力する量子化誤差分１ｈ２からなる。
【００６３】
追加された誤差検出回路１ｃ２について説明する。誤差検出回路１ｃ２では、二つの入力信号の大小比較する事により局部量子化器１３において発生する量子化誤差の符号の検出又は、局部量子化器１３の前後の値の差を計算することで局部量子化器１３において発生する量子化誤差の値の計算を行なう。
【００６４】
図１Ｄは誤差蓄積回路１ｃ１のブロック図を示しており、図１Ｂの誤差蓄積回路１５のブロック図と同じ構成については同じ番号を付し、説明を省略する。誤差蓄積回路１ｃ１は、誤差検出回路１ｃ２が局部量子化器１３において発生する量子化誤差の符号の検出を行なう場合と局部量子化器１３において発生する量子化誤差の値の計算を行なう場合とで動作が異なるので、それぞれについて説明をする。誤差蓄積回路１ｃ１は、加算器１ｂ３と処理選択回路１ｄ６から構成され、信号１ｂ１、１ｂ２、１ｂ４、１ｂ７，１ｄ８を入出力している。誤差蓄積回路１ｃ１は、リミッタ１４からの入力１ｂ１と誤差検出回路１ｃ２からの入力１ｄ８に基づいて出力する信号１ｂ７を決定している点が、図１Ｂの誤差蓄積回路１５と異なる。
【００６５】
誤差検出回路１ｃ２が局部量子化器１３において発生する量子化誤差の符号の検出を行なう場合には、誤差蓄積回路１ｃ１は、リミッタ１４から入力され蓄積されている量子化誤差量１ｂ４を、信号１ｂ２と信号１ｂ４とが一致するかを判断する事により信号１ｂ１がゼロであるかを判断してリミッタ１４が動作していない場合、且つ蓄積されている量子化誤差量１ｂ４の符号と局部量子化器１３において発生する量子化誤差の符号１ｄ８の符号とを比較して異符号の場合に出力し、同符号の場合又はリミッタ１４が動作する場合は、出力しないように出力信号１ｂ７を制御している。出力する誤差量は、局部量子化器１３で発生する量子化誤差分１ｅ３を使用していない場合なのでマージンがゼロの場合には、量子化誤差分１ｅ３の大きさ分だけ出力する。ただし、リミッタ１４の動作による判断処理は必ずしも必要では無い。
【００６６】
次に、誤差検出回路１ｃ２が局部量子化器１３において発生する量子化誤差の値の計算を行なう場合でマージンがゼロの場合について説明する。まず、局部量子化器１３で発生する量子化誤差分１ｅ３の範囲に局部量子化器１３において発生する量子化誤差の値が含まれている場合は、局部量子化器１３で発生する量子化誤差分１ｅ３の範囲から局部量子化器１３において発生する量子化誤差の値を減算する事により出力可能な量子化誤差量を求めて出力するように出力信号１ｂ７を制御している。また、局部量子化器１３で発生する量子化誤差分１ｅ３の範囲に局部量子化器１３において発生する量子化誤差の値が含まれていない場合は、局部量子化器１３で発生する量子化誤差分１ｅ３の範囲に収まるように、誤差蓄積回路１ｃ１から補正出力を出力信号１ｂ７として出力し、補正出力に相当する誤差分を誤差蓄積回路へ加算する。補正出力分は、局部量子化器１３において発生する量子化誤差の値から局部量子化器１３で発生する量子化誤差分１ｅ３を減算する事により求める。以上の様に出力信号１ｂ７を制御している。
【００６７】
図３Ｃは、誤差蓄積回路１ｃ１の誤差検出回路１ｃ２が局部量子化器１３において発生する量子化誤差の符号の検出を行なう場合の動作を説明するフローチャートであり、図３Ａの誤差蓄積回路１５の動作を説明するフローチャートと同じ構成については同じ番号を付し、説明を省略する。
【００６８】
ステップＳ３５の判断処理をステップＳ３ｃ５へ変更したものが誤差蓄積回路１ｃ１の動作フローになり、リミッタ１４の動作状態と蓄積されている量子化誤差量１ｂ４の符号と局部量子化器１３において発生する量子化誤差の符号１ｄ８とに基づいて誤差蓄積回路１ｃ１の出力が決定されている。
【００６９】
ステップＳ３ｃ５の判断処理では、処理選択回路１ｂ６が、蓄積している量子化誤差量１ｂ４の符号と局部量子化器１３において発生する量子化誤差の符号１ｄ８の符号とを比較して、局部量子化器１３で発生する量子化誤差分１ｅ３を使用しているかを判断する（Ｓ３ｃ５）。
【００７０】
図３Ｄは、誤差蓄積回路１ｃ１の誤差検出回路１ｃ２が局部量子化器１３において発生する量子化誤差の値の計算を行なう場合の動作を説明するフローチャートであり、図３Ａの誤差蓄積回路１５の動作を説明するフローチャートと同じ構成については同じ番号を付し、説明を省略する。
【００７１】
ステップＳ３４の判断処理を削除し、ステップＳ３５の判断処理をステップＳ３ｄ５へ変更し、ステップＳ３８の処理をステップＳ３ｄ８へ変更したものが誤差蓄積回路１ｃ１の動作フローになり、局部量子化器１３において発生する量子化誤差の値１ｄ８に基づいて誤差蓄積回路１ｃ１の出力が決定されている。
【００７２】
ステップＳ３ｄ５の判断処理では、局部量子化器１３において発生する量子化誤差が局部量子化器１３で発生する量子化誤差分１ｅ３の範囲内であるかで、蓄積している量子化誤差１ｂ４を出力するかを判断する（Ｓ３ｄ５）。
【００７３】
ステップＳ３ｄ４において量子化誤差分１ｅ３の範囲外と判断された場合、ステップＳ３ｄ９の処理では、局部量子化器１３において発生する量子化誤差が局部量子化器１３で発生する量子化誤差分１ｅ３の範囲内になるように誤差蓄積回路１ｃ１から補正出力をし、補正出力に相当する誤差分を誤差蓄積回路へ加算する（Ｓ３ｄ９）。
【００７４】
以上のように、本実施の形態１の単積分型ノイズシェーピング型量子化器は、誤差蓄積回路１ｃ１が、リミッタ１４の振幅制限した量子化誤差量を蓄積して、入力１ｂ１と蓄積されている量子化誤差量１ｂ４の符号と誤差検出回路１ｃ２の出力と蓄積されている量子化誤差の符号又は値１ｄ８とリミッタ１４の動作状態とに基づいて、蓄積した量子化誤差を局部量子化器１３に帰還させるように制御することにより、ループ全体を安定に保ちつつ、制限された分の量子化誤差を蓄積する事で歪率の劣化を抑える事が可能となる。
【００７５】
また、帰還される量子化誤差を制御してループを安定させることによって、局部量子化器１３の入力範囲におけるマージンを無くす、もしくはマージンの割合を小さくできるので、局部量子化器１３の全入力範囲に対する音楽信号入力の割合を増加させることができ、音楽信号出力の振幅を増加させる事が可能となる。
【００７６】
（実施の形態２）
図２Ａは、本発明の実施の形態２における多段型ノイズシェーピング型量子化器の構成を示すブロック図である。図２Ｂは、図２Ａの誤差蓄積回路２５の構成を示すブロック図である。図２Ｃは、図２Ａの多段型ノイズシェーピング型量子化器を簡略化した単積分型ノイズシェーピング型量子化器である。
【００７７】
図２Ａにおいて、本発明の実施の形態２の多段型ノイズシェーピング型量子化器は、メインループ２９とサブループ２１４と微分器２１７から構成されている。そして、メインループ２９は、加算器２１と加算器２２、オーバーフロー分誤差検出回路２３、局部量子化器２４、誤差蓄積回路２５、加算器２６、減算器２７、遅延器２８により構成される１次のノイズシェーピング次数を有する単積分型ノイズシェーピング型量子化器である。また、サブループ２１４は、加算器２１０と局部量子化器２１１、減算器２１２、帰還回路２１３により構成される１次又は２次以上のノイズシェーピング次数を有する多重積分型ノイズシェーピング量子化器である。このサブループ２１４の出力を減算器２１５と遅延器２１６で構成される微分器２１７によりメインループ２９のノイズシェーピング次数に応じて微分した後、加算器２１８によりメインループ２９の出力と加算すると、（サブループのノイズシェーピング次数＋１）次の多段型ノイズシェーピング型量子化器が構成される。この帰還回路２１３は、サブループ２１４が２次以上のノイズシェーピング特性を持つような伝達関数Ｈ（ｚ）の特性を有している。
【００７８】
帰還信号２１９は、サブループ２１４の帰還回路２１３から出力され、加算器２２において第１の局部量子化器２４の入力信号に対し帰還信号２１９に応じた所定の値を加減算する事によりサブループ２１４へ入力される量子化誤差抑え正常に動作させるためのものである。なお、帰還信号２１９は、サブループ２１４に構成された積分器の出力でも良く、加算器２２において第１の局部量子化器２４の量子化テーブルを帰還信号２１９に応じてシフトする方法でも良く、サブループ２１４へ入力される量子化誤差を抑え正常に動作させるために、帰還信号２１９に基づいて第１の局部量子化器２４の出力信号を変化させてサブループ２１４への入力信号の範囲を制御する方法であれば良い。
【００７９】
オーバーフロー分誤差検出回路２３は、第１の局部量子化器２４におけるオーバーフローを前もって検出している。これは、加算器２２からの信号が局部量子化器２４への入力範囲を超えているときにオーバーフローを起こすとして、検出を行なう。そして、オーバーフロー分誤差検出回路２３は、オーバーフローを検出したときに、加算器２２からの入力信号を、オーバーフロー分の量子化誤差出力と、オーバーフロー分を差し引いて振幅制限した第１の局部量子化器２４への入力信号とに分割する。
【００８０】
また、オーバーフロー分誤差検出回路は、オーバーフローの検出に関わらず第１の局部量子化器２４への出力信号の符号（第１の局部量子化器２４の出力信号の符号）を判別し、誤差蓄積回路２５へ第１の局部量子化器２４出力の符号を示す信号を出力している。この第１の局部量子化器２４出力の符号を示す信号は、第１の局部量子化器２４の動作状態を意味している。
【００８１】
誤差蓄積回路２５は、オーバーフロー分誤差検出回路２３から出力されるオーバーフロー分の量子化誤差出力を蓄積し、第１の局部量子化器２４の動作状態の信号（第１の局部量子化器２４の出力信号の符号及びオーバーフロー検出状態）とサブループ２１４の帰還回路２１３の出力信号２２０の符号を参照して、蓄積された量子化誤差分の信号を出力制御して、加算器２６へ入力している。
【００８２】
図２Ａ、図２Ｂ及び図１Ｅを用いて誤差蓄積回路２５について詳細に説明する。
【００８３】
図２Ｂに示すように、誤差蓄積回路２５は、加算器２ｂ３と処理選択回路２ｂ６から構成される。オーバーフロー分誤差検出回路２３から出力されるオーバーフロー分の信号２ｂ１が加算器２ｂ３に入力され、処理選択回路２ｂ６からの出力信号２ｂ２（蓄積されていた量子化誤差）と加算されて、信号２ｂ４（新たに蓄積された量子化誤差量）として処理選択回路２ｂ６へ入力される。処理選択回路２ｂ６は、第１の局部量子化器２４出力の符号を示す信号２ｂ８とサブループ２１４からの帰還信号２ｂ５（帰還信号２２０）を参照して蓄積された量子化誤差量２ｂ２及び出力２ｂ７を制御する。
【００８４】
次に、誤差蓄積回路２５の出力（出力２ｂ７）の決定方法について説明する。まず、第１の局部量子化器２４がオーバーフローしないために、第１の局部量子化器２４出力の符号２ｂ８と、サブループ２１４からの帰還信号２ｂ５とを参照して、２つの信号の符号が同符号の場合は、サブループ２１４からの帰還入力分１ｅ２（図１Ｅ参照）の部分が使用されているので、マージンがゼロの場合には処理選択回路２ｂ６は誤差蓄積回路２５の出力２ｂ７をゼロへリミットする必要がある。
【００８５】
また、第１の局部量子化器２４出力の符号２ｂ８と、サブループ２１４の帰還信号２ｂ５とを参照して、２つの信号の符号が異符号の場合は、サブループ２１４からの帰還入力分１ｅ２の部分が使用されていないので、処理選択回路２ｂ６は誤差蓄積回路２５の出力２ｂ７をサブループ２１４からの帰還入力分１ｅ２の範囲に収まるようにリミットする。
【００８６】
次に、第２の局部量子化器２１１がオーバーフローしないための条件を求める。まず、第２の局部量子化器２１１がオーバーフローしない状態を保つことが出来るサブループ２１４の入力として許容される量子化誤差の大きさを、第２の局部量子化器２１１の入力範囲をサブループ２１４の帰還回路２１３のゲインで除算する事により求める。
【００８７】
そして、第１の局部量子化器２４出力の符号を示す信号２ｂ８と、サブループ２１４の帰還信号２ｂ５とを参照して、二つの符号が同符号の場合はオーバーフロー分誤差検出回路２３の動作により発生する量子化誤差とサブループ２１４の帰還入力分との極性が一致するため、サブループ２１４からの帰還入力分１ｅ２を含めて第２の局部量子化器２１１がオーバーフローしない状態を保つことが出来るサブループ２１４の入力として許容される量子化誤差の大きさを超えないように誤差蓄積回路２５の出力２ｂ７をリミットする必要がある。
【００８８】
また、第１の局部量子化器２４出力の符号を示す信号２ｂ８と、サブループ２１４の帰還信号２ｂ５とを参照して、二つの符号が異符号の場合はオーバーフロー分誤差検出回路２３の動作により発生する量子化誤差がサブループ２１４の帰還入力分と異符号なため、サブループ２１４からの帰還入力分１ｅ２を考慮する必要がなく第２の局部量子化器２１１がオーバーフローしない状態を保つことが出来るサブループ２１４の入力として許容される量子化誤差の大きさを超えないように誤差蓄積回路の出力２ｂ７をリミットする。
【００８９】
そして、第１の局部量子化器２４と第２の局部量子化器２１１の両方が安定であると判断されたとき（第１の局部量子化器２４出力の符号２ｂ８と帰還信号２ｂ５が異符号であると判断されたとき）に、両局部量子化器をオーバーフローさせないためにかけるリミットの大きい方、つまりリミット後の値の小さい方の値を出力２ｂ７として出力する。
【００９０】
このように、処理選択回路２ｂ６は、第１の及び第２の局部量子化器が共にオーバーフローしない状態になるような制限値を求め、第１の局部量子化器２４出力の符号とサブループ２１４の帰還信号２２０の符号とから、誤差蓄積回路２５の出力２ｂ７を決定する。
【００９１】
なお、本実施の形態において、第１及び第２の局部量子化器が共にオーバーフローしない状態になるような制限値は、回路設計の段階で予め決められた値である。ただし、サブループ２１４からの帰還信号２２０の符号で無く値そのものを参照した場合、制限値を各タイミングにおいて計算し、制限値を切り替えるような構成とすることにより、より高精度に制御する事が可能となる。これは、帰還信号２２０の値により、メインループ２９の第１局部量子化器２４の帰還入力分の余裕分がより正確に得られるからである。同時にサブループ２１４へ入力される量子化誤差の範囲もより高精度に限定する事が可能となる。
【００９２】
次に、図４Ａを用いて、誤差蓄積回路２５の動作について説明する。図４Ａは、図２Ａの誤差蓄積回路２５の動作を示すフローチャートである。
【００９３】
まず、オーバーフロー分誤差検出回路２３で新たに発生したオーバーフロー分の量子化誤差入力２ｂ１が誤差蓄積回路２５に入力される（Ｓ４１）。
【００９４】
次に、新たに発生した量子化誤差入力２ｂ１と蓄積されていたオーバーフロー分の量子化誤差量２ｂ２とを加算する（Ｓ４２）。
【００９５】
そして、処理選択回路２ｂ６は、ステップＳ４２での加算結果２ｂ４の最大値もしくは最小値を振幅制限し蓄積する。この蓄積された値が量子化誤差量２ｂ２となる。なお、ここで、振幅制限するための最大値・最小値は、処理選択回路２ｂ６内に蓄積可能な最大値・最小値という意味であり、処理選択回路２ｂ６で蓄積可能な最大値・最小値の範囲内に、入力された２ｂ４が収まっていれば振幅制限されない（Ｓ４３）。
【００９６】
そして、処理選択回路２ｂ６は、信号２ｂ２と信号２ｂ４とを比較して、新たに発生した量子化誤差入力２ｂ１がゼロであるかどうかを検出する事により、オーバーフロー分誤差検出回路２３がオーバーフローを検出したかどうかを判断する（Ｓ４４）。
【００９７】
ステップＳ４４で、オーバーフローが検出されていないと判断されたならば、処理選択回路２ｂ６は、第１の局部量子化器２４出力の符号を示す信号２ｂ８とサブループ２１４からの帰還信号２ｂ５（帰還信号２２０）を参照して、符号が異符号であるかどうかを判断する（Ｓ４５）。
【００９８】
ステップＳ４５で符号が異符号と判断されたならば、処理選択回路２ｂ６内に蓄積されている値が、出力２ｂ７として出力可能な所定の制限値を超えているかどうかを判断する（Ｓ４６）。
【００９９】
ステップＳ４６において、処理選択回路２ｂ６に蓄積されていた値が所定の制限値（誤差蓄積回路２５から１回に返せる量子化誤差量）よりも大きいと判断されたならば、所定の制限値を出力２ｂ７として出力し、処理選択回路２ｂ６に蓄積されていた値から所定の制限値を減算し減算された結果を量子化誤差として蓄積する（Ｓ４７）。
【０１００】
また、ステップＳ４６において、処理選択回路２ｂ６に蓄積されていた値が所定の制限値よりも小さいと判断されたならば、蓄積されていた量子化誤差を出力２ｂ７として、全て出力し、蓄積している量子化誤差を０とする（Ｓ４８）。
【０１０１】
また、ステップＳ４４においてリミッタが動作している場合と、ステップＳ４５において信号２ｂ８と帰還信号２ｂ５が同符号である場合は、誤差蓄積回路２５から誤差を出力すると、第１及び第２の局部量子化器がオーバーフローを起こす可能性がある不安定な状態であるため、誤差蓄積回路２５からの出力２ｂ７をゼロにする、もしくは出力しない（Ｓ４９）。
【０１０２】
以上のように構成することで、オーバーフロー分誤差検出回路の動作で発生する量子化誤差による第１の局部量子化器２４のオーバーフローを抑え、メインループ２９を安定に保ちつつ、制限された分の量子化誤差を蓄積・出力制御する事で歪率の劣化を抑える事が可能となる。
【０１０３】
ここで、ステップＳ４３における処理選択回路２ｂ６による量子化誤差蓄積量の最大値もしくは最小値を振幅制限する処理は、オーバーフロー分誤差検出回路２３が頻繁に動作するような状態で量子化誤差を帰還するタイミングが遅くなり、量子化誤差がノイズとなってしまう事を防ぐためのもので、オーバーフロー分誤差検出回路２３が頻繁に動作しない場合はこの処理を行わなくても正常に動作する。
【０１０４】
さらに、第１の局部量子化器２４のオーバーフローを抑える事によって、サブループ２１４の帰還回路２１３の出力２１９に応じて第１の局部量子化器２４の入力信号に対し所定の値を加減算して、サブループ２１４へ入力される量子化誤差を抑えサブループ２１４を正常に動作させる事が可能となり、メインループ２９及び、サブループ２１４の安定度を向上させる事が可能となる。
【０１０５】
また、第２のノイズシェーピング型量子化器２１４の帰還回路２１３の出力信号２１９に基づき、第１の局部量子化器２４の入力信号に対し所定の値を加減算する事により第２の局部量子化器２１１へ入力される量子化誤差を抑え正常に動作させることによって、この動作を常に維持するように誤差蓄積回路２５で量子化誤差の蓄積及び、誤差蓄積回路２５に蓄積した量子化誤差の帰還を行う事で、第２のノイズシェーピング型量子化器２１４を安定に保つ事が可能となる。
【０１０６】
また、メインループ２９へ帰還される量子化誤差を制御してメインループ２９を安定させることによって、第１の局部量子化器２４の入力範囲におけるマージンを無くす、もしくはマージンの割合を小さくできるので、第１の局部量子化器２４の全入力範囲に対する音楽信号入力の割合を増加させることができ、音楽信号出力の振幅を増加させる事が可能となる。
【０１０７】
なお、上記説明において、多段型ノイズシェーピング量子化器について説明したが、本発明の実施の形態２の内容は単積分型ノイズシェーピング型量子化器にも適用することができる。
【０１０８】
ここで、図２Ｃは単積分型ノイズシェーピング型量子化器のブロック図であり、図２Ｃを参照して、図２Ａの多段型ノイズシェーピング型量子化器と同等の効果を有する単積分型ノイズシェーピング型量子化器について説明する。ただし、図２Ａと同様の構成については同じ番号を付し、説明を省略する。
【０１０９】
まず、図２Ｃの単積分型ノイズシェーピング型量子化器と図２Ａの多段型ノイズシェーピング型量子化器との大きな違いは、図２Ｃの単積分型ノイズシェーピング型量子化器には図２Ａのサブループ２１４がなく帰還信号２２０と局部量子化器２４出力の符号を示す信号２ｂ８が誤差蓄積回路に入力されない点と誤差検出回路２ｃ２が追加され、その出力が誤差蓄積回路２ｃ１へ入力されている点である。
【０１１０】
図２Ｃの単積分型ノイズシェーピング型量子化器は、加算器２１と、オーバーフロー分誤差検出回路２３、局部量子化器２４、誤差蓄積回路２ｃ１、誤差検出回路２ｃ２、加算器２６、減算器２７、遅延器２８により１次のノイズシェーピング次数を有する単積分型ノイズシェーピング型量子化器として構成されている。
【０１１１】
追加された誤差検出回路２ｃ２について説明する。誤差検出回路２ｃ２では、二つの入力信号の大小比較する事により局部量子化器２４において発生する量子化誤差の符号の検出又は、局部量子化器２４の前後の値の差を計算することで局部量子化器２４において発生する量子化誤差の値の計算を行なう。
【０１１２】
図２Ｄは誤差蓄積回路２ｃ１のブロック図を示しており、図２Ｂの誤差蓄積回路２５のブロック図と同じ構成については同じ番号を付し、説明を省略する。誤差蓄積回路２ｃ１は、誤差検出回路２ｃ２が局部量子化器２４において発生する量子化誤差の符号の検出を行なう場合と局部量子化器２４において発生する量子化誤差の値の計算を行なう場合とで動作が異なるので、それぞれについて説明をする。誤差蓄積回路２ｃ１は、加算器２ｂ３と処理選択回路２ｄ６から構成され、信号２ｂ１、２ｂ２、２ｂ４、２ｂ７、２ｄ８を入出力している。誤差蓄積回路２ｃ１は、オーバーフロー分誤差検出回路２３からの入力２ｂ１と誤差検出回路２ｃ２からの入力に基づいて出力する信号２ｂ７を決定している点が、図２Ｂの誤差蓄積回路２５と異なる。
【０１１３】
誤差検出回路２ｃ２が局部量子化器２４において発生する量子化誤差の符号の検出を行なう場合には、誤差蓄積回路２ｃ１は、オーバーフロー分誤差検出回路２３から入力され蓄積されている量子化誤差量２ｂ４を、蓄積されている量子化誤差量２ｂ４の符号と局部量子化器２４において発生する量子化誤差の符号２ｄ８の符号とを比較して異符号、且つオーバーフロー分誤差検出回路２３からの入力２ｂ１がゼロの場合には出力し、同符号の場合又はオーバーフロー分誤差検出回路２３からの入力２ｂ１がゼロで無い場合には、出力しないように出力信号２ｂ７を制御している。出力する誤差量は、局部量子化器２４で発生する量子化誤差分１ｅ３を使用していない場合なのでマージンがゼロの場合には、量子化誤差分１ｅ３の大きさ分だけ出力する。
【０１１４】
次に、誤差検出回路２ｃ２が局部量子化器２４において発生する量子化誤差の値の計算を行なう場合でマージンがゼロの場合について説明する。まず、オーバーフロー分誤差検出回路２３からの入力２ｂ１がゼロの場合には、局部量子化器２４で発生する量子化誤差分１ｅ３の範囲から局部量子化器２４において発生する量子化誤差の値を減算する事により出力可能な量子化誤差量を求める事ができ、誤差蓄積回路２ｃ１から出力可能な量子化誤差量を出力するように出力信号２ｂ７を制御している。また、オーバーフロー分誤差検出回路２３からの入力２ｂ１がゼロでない場合には、出力しないように出力信号２ｂ７を制御している。
【０１１５】
図４Ｂは、誤差蓄積回路２ｃ１の誤差検出回路２ｃ２が局部量子化器２４において発生する量子化誤差の符号の検出を行なう場合の動作を説明するフローチャートであり、図４Ａの誤差蓄積回路２５の動作を説明するフローチャートと同じ構成については同じ番号を付し、説明を省略する。
【０１１６】
ステップＳ４５の判断処理をステップＳ４ｃ５へ変更したものが誤差蓄積回路２ｃ１の動作フローになり、オーバーフロー分誤差検出回路２３からの入力２ｂ１と蓄積されている量子化誤差量２ｂ４の符号と局部量子化器２４において発生する量子化誤差の符号２ｄ８とに基づいて誤差蓄積回路２ｃ１の出力が決定されている。
【０１１７】
ステップＳ４ｃ５の判断処理では、処理選択回路２ｂ６が、蓄積している量子化誤差量２ｂ４の符号と局部量子化器２４において発生する量子化誤差の符号２ｄ８の符号とを比較して、局部量子化器２４で発生する量子化誤差分１ｅ３を使用しているかを判断する（Ｓ４ｃ５）。
【０１１８】
図４Ｃは、誤差蓄積回路２ｃ１の誤差検出回路２ｃ２が局部量子化器２４において発生する量子化誤差の値の計算を行なう場合の動作を説明するフローチャートであり、図４Ａの誤差蓄積回路２５の動作を説明するフローチャートと同じ構成については同じ番号を付し、説明を省略する。
【０１１９】
ステップＳ４５の判断処理を削除したものが誤差蓄積回路２ｃ１の動作フローになり、オーバーフロー分誤差検出回路２３からの入力２ｂ１と局部量子化器２４において発生する量子化誤差の値２ｄ８とに基づいて誤差蓄積回路２ｃ１の出力が決定されている。
【０１２０】
以上のように、本実施の形態２の単積分型ノイズシェーピング型量子化器は、誤差蓄積回路２ｃ１が、オーバーフロー分誤差検出回路２３の振幅制限した量子化誤差量を蓄積して、オーバーフロー分誤差検出回路２３からの入力２ｂ１と蓄積されている量子化誤差量２ｂ４の符号と局部量子化器２４において発生する量子化誤差の符号又は値２ｄ８とに基づいて、蓄積した量子化誤差を局部量子化器２４に帰還させるように制御することにより、局部量子化器２４のオーバーフローを抑え、ループ全体を安定に保ちつつ、制限された分の量子化誤差を蓄積する事で歪率の劣化を抑える事が可能となる。
【０１２１】
また、帰還される量子化誤差を制御してループを安定させることによって、局部量子化器２４の入力範囲におけるマージンを無くす、もしくはマージンの割合を小さくできるので、局部量子化器２４の全入力範囲に対する音楽信号入力の割合を増加させることができ、音楽信号出力の振幅を増加させる事が可能となる。
【０１２２】
（実施の形態３）
図５Ａは、本発明の実施の形態３における多段型ノイズシェーピング型量子化器の構成を示すブロック図である。図５Ｂは、図５Ａの誤差蓄積回路５６の構成を示すブロック図である。図５Ｃは、図５Ａの多段型ノイズシェーピング型量子化器を簡略化した単積分型ノイズシェーピング型量子化器である。図５Ｆは、図５Ａのリミッタ５５の部分に振幅制御器を追加し出力制御器とした多段型ノイズシェーピング型量子化器の構成を示すブロック図である。図５Ｇは、図５Ａのリミッタ５５の部分に振幅制御器を追加した構成の図５Ｆの出力制御器を示すブロック図である。
【０１２３】
図５Ａにおいて、本発明の実施の形態３の多段型ノイズシェーピング型量子化器は、メインループ５１０とサブループ５１５と微分器５１８から構成されている。そして、メインループ５１０は、加算器５１と加算器５２、オーバーフロー検出回路５３、局部量子化器５４、リミッタ５５、誤差蓄積回路５６、加算器５７、減算器５８、遅延器５９により構成される１次のノイズシェーピング次数を有する単積分型ノイズシェーピング型量子化器である。また、サブループ５１５は、加算器５１１と局部量子化器５１２、減算器５１３、帰還回路５１４により構成される１次又は２次以上のノイズシェーピング次数を有する多重積分型ノイズシェーピング量子化器である。
【０１２４】
このサブループ５１５の出力を減算器５１６と遅延器５１７で構成される微分器５１８によりメインループ５１０のノイズシェーピング次数に応じて微分した後、加算器５１９によりメインループ５１０の出力と加算すると、（サブループのノイズシェーピング次数＋１）次の多段型ノイズシェーピング型量子化器が構成される。この帰還回路５１４は、サブループ５１５が２次以上のノイズシェーピング特性を持つような伝達関数Ｈ（ｚ）の特性を有している。
【０１２５】
帰還信号５２０は、サブループ５１５の帰還回路５１４から出力され、加算器５２において第１の局部量子化器５４の入力信号に対し帰還信号５２０に応じた所定の値を加減算する事によりサブループ５１５へ入力される量子化誤差を抑え正常に動作させるためのものである。
【０１２６】
なお、帰還信号５２０は、サブループ５１５に構成された積分器の出力でも良く、加算器５２において局部量子化器５４の入力信号に対し帰還信号５２０に応じた所定の値を加減算する方法以外に、第１の局部量子化器５４の量子化テーブルを帰還信号５２０に応じてシフトする方法でも良く、サブループ５１５へ入力される量子化誤差を抑え正常に動作させるために、帰還信号５２０に基づいて局部量子化器５４の出力信号を変化させてサブループ５１５への入力信号の範囲を制御する方法であれば良い。
【０１２７】
リミッタ５５は、微分器５１８あるいは遅延器５１７からの出力により、第１の局部量子化器５４の出力の振幅を制御して加算器５１９への出力を決定している。つまり、リミッタ５５は、微分器５１８の状態（遅延器５１７からの値）に基づき、微分器５１８の出力値と加算器５１９への出力との和が多段型ノイズシェーピング回路の出力階調数を超えないように、第１の局部量子化器５４から入力される値の上限値及び下限値を制御して出力している。これにより、微分器５１８の出力値に応じて、第１の局部量子化器５４の出力範囲を可変し広げる事が可能となる。
【０１２８】
そしてリミッタ５５は、第１の局部量子化器５４から入力される信号を振幅制限して出力すると同時に、振幅制限した分の量子化誤差を、誤差蓄積回路５６に対して出力する。また、リミッタ５５は、第１の局部量子化器５４出力の符号を判別し、誤差蓄積回路５６へ第１の局部量子化器５４出力の符号を示す信号を出力している。
【０１２９】
なお、第１の局部量子化器５４出力の符号と加算器５１９へ入力するリミッタ５５出力の符号は同じであるためリミッタ５５においてリミッタ５５出力の符号を判別して誤差蓄積回路５６へリミッタ５５出力の符号を出力しても良い。
【０１３０】
オーバーフロー検出回路５３は、第１の局部量子化器５４におけるオーバーフローを前もって検出している。これは、加算器５２からの信号が局部量子化器５４への入力範囲を超えているときにオーバーフローを起こすとして、検出を行なう。そして、オーバーフロー検出回路５３は、オーバーフローを検出したときに、オーバーフロー検出状態を誤差蓄積回路５６へ入力する。
【０１３１】
誤差蓄積回路５６は、リミッタ５５が振幅制限することによって発生する量子化誤差を制御するために、オーバーフロー検出回路５３からの出力である第１の局部量子化器５４のオーバーフローの状態と第１の局部量子化器５４の動作状態の信号とサブループ５１５の帰還回路５１４の出力信号５２１の符号とを参照してリミッタ５５で制限された分の量子化誤差を入力して蓄積し、オーバーフロー検出回路５３からの出力である第１の局部量子化器５４のオーバーフローの状態とリミッタ５５の動作状態の信号とサブループ５１５の帰還回路５１４の出力信号５２１の符号を参照することによって蓄積された量子化誤差分の信号を出力して加算器５７へレベル制限し入力するか否かを制御している。
【０１３２】
図５Ａ、図５Ｂ及び図１Ｅを用いて誤差蓄積回路５６について詳細に説明する。
【０１３３】
図５Ｂに示すように、誤差蓄積回路５６は、加算器５ｂ３と処理選択回路５ｂ６から構成される。
【０１３４】
リミッタ５５から出力されるリミッタ５５で振幅制限した分の量子化誤差の信号５ｂ１（新たに発生した量子化誤差入力）が加算器５ｂ３に入力され、処理選択回路５ｂ６からの出力信号５ｂ２（蓄積されていた量子化誤差量）と加算されて、信号５ｂ４（新たに蓄積された量子化誤差量）として処理選択回路５ｂ６へ入力される。処理選択回路５ｂ６は、オーバーフロー検出回路５３からの出力である第１の局部量子化器５４のオーバーフローの状態５ｂ９と第１の局部量子化器５４出力の符号を示す信号５ｂ８とサブループ５１５からの帰還信号５ｂ５（帰還信号５２１）を参照して蓄積された量子化誤差量５ｂ２及び出力５ｂ７を制御する。
【０１３５】
次に、誤差蓄積回路５６の出力（処理選択回路５ｂ６の出力５ｂ７）の決定方法について説明する。まず、図１Ｅに示す第１の局部量子化器５４の入力範囲及び入力信号について説明する。第１の局部量子化器５４の入力範囲１ｅ１は、音声信号分１ｅ４及び、量子化誤差部分１ｅ３、サブループ５１５からの帰還入力分１ｅ２からなる。そして、第１の局部量子化器への入力信号１ｅ５は、図１Ｅに示すように帰還回路の出力とリミッタの出力が同符号の場合と異符号の場合で異なっており、音声信号分１ｅ４及び、量子化誤差分１ｅ３、サブループ５１３からの帰還入力分１ｅ２、振幅制限されたリミッタ動作により発生する量子化誤差１ｅ６からなる。
【０１３６】
まず、第１の局部量子化器５４がオーバーフローしないために、第１の局部量子化器５４出力の符号５ｂ８と、サブループ５１５からの帰還信号５２１とを参照して、二つの符号が同符号の場合はサブループ５１５からの帰還入力分１ｅ２の部分が使用されているので、マージンがゼロの場合に処理選択回路５ｂ６は誤差蓄積回路５６の出力５ｂ７をゼロへリミットする必要がある。
【０１３７】
また、第１の局部量子化器５４出力の符号５ｂ８と、サブループ５１５の帰還信号５２１とを参照して、二つの符号が異符号の場合は、サブループ５１５からの帰還入力分１ｅ２の部分が使用されていないので（図１Ｅ参照）、処理選択回路５ｂ６は誤差蓄積回路５６の出力５ｂ７をサブループ５１５からの帰還入力分１ｅ２の範囲におさまるようにリミットする。
【０１３８】
同時に、オーバーフロー検出回路５３からの出力である第１の局部量子化器５４のオーバーフローの状態を示す信号５ｂ９でオーバーフローが検出されている場合は、量子化誤差部分１ｅ３が正常な状態よりも大きくなっている事が考えられるため、マージンがゼロの場合には処理選択回路５ｂ６は誤差蓄積回路５６の出力５ｂ７をゼロへリミットする必要がある。
【０１３９】
また、オーバーフロー検出回路５３からの出力である第１の局部量子化器５４のオーバーフローの状態５ｂ９でオーバーフローが検出されていない場合は、第１の局部量子化器５４出力の符号５ｂ８と、サブループ５１５の帰還信号５２１とを参照した結果により、処理選択回路５ｂ６は誤差蓄積回路５６の出力５ｂ７を決定する。
【０１４０】
次に、第２の局部量子化器５１２がオーバーフローしないための条件を求める。まず、第２の局部量子化器５１２がオーバーフローしない状態を保つことが出来るサブループ５１５の入力として許容される量子化誤差の大きさを、第２の局部量子化器５１２の入力範囲をサブループ５１５の帰還回路５１４のゲインで除算する事により求める。
【０１４１】
そして、リミッタ５５の出力と、サブループ５１５の帰還信号５２１とを参照して、二つの符号が同符号の場合はリミッタ５５の動作により発生する量子化誤差と極性が一致するため、サブループ５１５からの帰還入力分１ｅ２を含めて第２の局部量子化器５１２がオーバーフローしない状態を保つことが出来るサブループ５１５の入力として許容される量子化誤差の大きさを超えないように誤差蓄積回路の出力５ｂ７をリミットする必要がある。
【０１４２】
また、リミッタ５５の出力と、サブループ５１５の帰還信号５２１とを参照して、二つの符号が異符号の場合はリミッタ５５の動作により発生する量子化誤差が異符号なため、サブループ５１５からの帰還入力分１ｅ２を考慮する必要がなく第２の局部量子化器５１２がオーバーフローしない状態を保つことが出来るサブループ５１５の入力として許容される量子化誤差の大きさを超えないように誤差蓄積回路の出力５ｂ７をリミットする。
【０１４３】
そして、第１の局部量子化器５４と第２の局部量子化器５１２の両方が安定であると判断されたとき（第１の局部量子化器５４出力の符号５ｂ８と帰還信号５ｂ５が異符号であり、オーバーフロー検出回路５３からの出力である第１の局部量子化器５４のオーバーフローの状態を示す信号５ｂ９がオーバーフローしていないと判断されたとき）に、両局部量子化器をオーバーフローさせないためにかけるリミットの大きい方、つまりリミット後の値の小さい方の値を出力５ｂ７として出力する。
【０１４４】
このように、処理選択回路５ｂ６は、第１及び第２の局部量子化器が共にオーバーフローしない状態になるような制限値を求め、第１の局部量子化器５４出力の符号と、サブループ５１５の帰還信号５２１の符号とから、誤差蓄積回路の出力５ｂ７を決定する。
【０１４５】
なお、本実施の形態３において、第１及び第２の局部量子化器が共にオーバーフローしない状態になるような制限値は、回路設計の段階で予め決められた値である。ただし、サブループ５１５からの帰還信号５２１の符号で無く値そのものを参照した場合、制限値を各タイミングにおいて計算し、制限値を切り替えるような構成とすることにより、より高精度に制御する事が可能となる。これは、帰還信号５２１の値により、メインループ５１０の第１局部量子化器５４の帰還入力分の余裕分がより正確に得られるからである。同時にサブループ５１５へ入力される量子化誤差の範囲もより高精度に限定する事が可能となる。
【０１４６】
次に、図５Ｅを用いて、誤差蓄積回路５６の動作について説明する。図５Ｅは、図５Ａの誤差蓄積回路５６の動作を示すフローチャートである。
【０１４７】
まず、リミッタ５５で新たに発生した量子化誤差入力５ｂ１が誤差蓄積回路５６に入力される（Ｓ５１）。
【０１４８】
次に、新たに発生した量子化誤差入力５ｂ１と蓄積された量子化誤差量５ｂ２とを加算する（Ｓ５２）。
【０１４９】
そして、処理選択回路５ｂ６は、ステップＳ５２での加算結果５ｂ４の最大値もしくは最小値を振幅制限し蓄積する。この蓄積された値が量子化誤差量５ｂ２となる。なお、ここで振幅制限するための最大値・最小値は、処理選択回路５ｂ６内に蓄積可能な最大値・最小値という意味であり、処理選択回路５ｂ６で蓄積可能な最大値・最小値の範囲内に、入力された５ｂ４が収まっていれば、振幅制限されない（Ｓ５３）。
【０１５０】
そして、処理選択回路５ｂ６は、信号５ｂ２と信号５ｂ４とを比較して、新たに発生した量子化誤差入力５ｂ１がゼロであるかどうかを検出する事により、リミッタ５５が動作しているかどうかを判断する（Ｓ５４）。
【０１５１】
ステップＳ５４で、リミッタ５５が動作していないと判断されたならば、処理選択回路５ｂ６は、オーバーフロー検出回路５３からの出力である第１の局部量子化器５４のオーバーフローの状態５ｂ９により、第１の局部量子化器５４がオーバーフローしているかどうかを判断する（Ｓ５５）。
【０１５２】
ステップＳ５５で、第１の局部量子化器５４がオーバーフローしていないと判断されたならば、処理選択回路５ｂ６は、第１の局部量子化器５４出力の符号を示す信号５ｂ８とサブループ５１５からの帰還信号５ｂ５（帰還信号５２１）を参照して、符号が異符号であるかどうかを判断する（Ｓ５６）。
【０１５３】
ステップＳ５６で符号が異符号と判断されたならば、処理選択回路５ｂ６内に蓄積されている値が、出力５ｂ７として出力可能な所定の制限値を超えているかどうかを判断する（Ｓ５７）。
【０１５４】
ステップＳ５７において、処理選択回路５ｂ６に蓄積されていた値が所定の制限値（誤差蓄積回路５６から１回に返せる量子化誤差量）よりも大きいと判断されたならば、所定の制限値を出力５ｂ７として出力し、処理選択回路５ｂ６に蓄積されていた値から所定の制限値を減算し減算された結果を量子化誤差として蓄積する（Ｓ５８）。
【０１５５】
また、ステップＳ５７において、処理選択回路５ｂ６に蓄積されていた値が所定の制限値よりも小さいと判断されたならば、蓄積されていた量子化誤差を出力５ｂ７として、全て出力し、蓄積している量子化誤差を０とする（Ｓ５９）。
【０１５６】
また、ステップＳ５４においてリミッタが動作している場合と、ステップＳ５５において第１の局部量子化器５４がオーバーフローしている場合と、ステップＳ５６において信号５ｂ８と帰還信号５ｂ５が同符号である場合は、誤差蓄積回路５６から誤差を出力すると、第１及び第２の局部量子化器がオーバーフローを起こす可能性がある不安定な状態であるため、誤差蓄積回路５６からの出力５ｂ７をゼロにする、もしくは出力しない（Ｓ５１０）。ただし、判断処理Ｓ５４は必ずしも必要では無い。
【０１５７】
以上のように構成することで、リミッタ５５の動作で発生する量子化誤差による第１の局部量子化器５４のオーバーフローを抑え、メインループ５２０を安定に保ちつつ、制限された分の量子化誤差を蓄積・出力制御する事で歪率の劣化を抑える事が可能となる。
【０１５８】
ここで、ステップＳ５３における処理選択回路５ｂ６による量子化誤差蓄積量の最大値もしくは最小値を振幅制限する処理は、リミッタ５５が頻繁に動作するような状態で量子化誤差を帰還するタイミングが遅くなり、量子化誤差がノイズとなってしまう事を防ぐためのもので、リミッタ５５が頻繁に動作しない場合はこの処理を行わなくても正常に動作する。
【０１５９】
さらに、第１の局部量子化器５４のオーバーフローを抑える事によって、サブループ５１５の帰還回路５１４の出力５２０に応じて第１の局部量子化器５４の入力信号に対し所定の値を加減算して、サブループ５１５へ入力される量子化誤差を抑えサブループ５１５を正常に動作させる事が可能となり、メインループ５１０及び、サブループ５１５の安定度を向上させる事が可能となる。
【０１６０】
また、第２のノイズシェーピング型量子化器５１５の帰還回路５１４の出力信号５２０に基づき、第１の局部量子化器５４の入力信号に対し所定の値を加減算する事により第２の局部量子化器５１２へ入力される量子化誤差を抑え正常に動作させることによって、この動作を常に維持するように誤差蓄積回路５６で量子化誤差の蓄積及び、誤差蓄積回路５６に蓄積した量子化誤差の帰還を行う事で、第２のノイズシェーピング型量子化器５１５を安定に保つ事が可能となる。
【０１６１】
また、メインループ５１０へ帰還される量子化誤差を制御してメインループ５１０を安定させることによって、第１の局部量子化器５４の入力範囲におけるマージンを無くす、もしくはマージンの割合を小さくできるので、第１の局部量子化器５４の全入力範囲に対する音楽信号入力の割合を増加させることができ、音楽信号出力の振幅を増加させる事が可能となる。
【０１６２】
シミュレーション結果では、本発明を適用していない場合の出力振幅を１００％とすると、本発明を適用した場合、０ｄＢ・１ｋＨｚの入力信号に対して出力振幅は１１５．３８４％であり、０ｄＢ・１０ｋＨｚの入力信号に対しての出力振幅は１１５．３４５％であった。また、リミッタが動作しない領域の入力信号に対しては、出力振幅は１１５．３８４％であり、マージンをなくしたことによる出力信号振幅のほぼ均一な割合の増大を確認できる。
【０１６３】
また、別のシミュレーション結果として、本発明を適用していない場合、０ｄＢ・１ｋＨｚの入力信号に対して歪率が６．４％であり、０ｄＢ・１０ｋＨｚの入力信号に対して歪率が５．１％であった。次に、本発明を適用した場合、０ｄＢ・１ｋＨｚの入力信号に対して歪率が０．３６％であり、０ｄＢ・１０ｋＨｚの入力信号に対して歪率が０．２７％であり歪率の改善効果が確認された。
【０１６４】
なお、上記説明の構成において、リミッタ５５の部分へ振幅制御器５ｇ６を追加し、二つを併せて出力制御器５Ｆ１とした構成に関しても、本発明の実施の形態３の内容を適用することができる。
【０１６５】
ここで、図５Ｆは図５Ａのリミッタ５５の部分に振幅制御器５ｇ６を追加し出力制御器５Ｆ１とした多段型ノイズシェーピング型量子化器の構成を示すブロック図であり、図５Ｆを参照して、図５Ａの多段型ノイズシェーピング型量子化器と同等以上の効果を有する多段型ノイズシェーピング型量子化器について説明する。ただし、図５Ａと同様の構成については同じ番号を付し、説明を省略する。
【０１６６】
まず、図５Ｆの多段型ノイズシェーピング型量子化器と図５Ａの多段型ノイズシェーピング型量子化器との違いは、図５Ｆのリミッタ５５の部分に振幅制御器５ｇ６が追加され出力制御器５Ｆ１となっている点である。
【０１６７】
図５Ｇは、図５Ａのリミッタ５５の部分に振幅制御器５ｇ６を追加した構成の出力制御器５Ｆ１を示すブロック図である。
【０１６８】
出力制御器５Ｆ１は、リミッタ５ｇ３と振幅制御器５ｇ６から構成され、信号５ｇ１、５ｇ２、５ｇ４、５ｇ５、５ｇ７〜５ｇ１１を入出力している。
【０１６９】
リミッタ５ｇ３は、微分器５１８あるいは遅延器５１７からの出力５ｇ２により、第１の局部量子化器５４の出力５ｇ１の振幅を制御して加算器５１９への出力５ｇ４を決定している。つまり、リミッタ５ｇ３は、微分器５１８の状態（遅延器５１７からの値）５ｇ２に基づき、微分器５１８の出力値と加算器５１９への出力５ｇ４との和が多段型ノイズシェーピング回路の出力階調数を超えないように、第１の局部量子化器５４から入力される値の上限値及び下限値を制御して出力している。これにより、微分器５１８の出力値に応じて、第１の局部量子化器５４の出力範囲を可変し広げる事が可能となる。
【０１７０】
振幅制御器５ｇ６は、リミッタ５ｇ３への入力５ｇ１とリミッタ５ｇ３の動作状態を表す信号５ｇ５とサブループの帰還信号の符号５ｇ７とオーバーフロー検出回路５３からの出力である第１の局部量子化器５４のオーバーフローの状態５ｇ１１とを入力とし、第１のノイズシェーピング型量子化器の量子化誤差を計算するための出力５ｇ８と出力５ｇ８で出力できなかった新たに発生した量子化誤差量５ｇ９と第１の局部量子化器５４の出力信号の符号５ｇ１０とを出力とする。このとき振幅制御器５ｇ６は、リミッタ５ｇ３への入力５ｇ１とリミッタ５ｇ３の動作状態を表す信号５ｇ５から、リミッタ５ｇ３で新たに発生する量子化誤差量を計算し、第１の局部量子化器５４の出力信号の符号５ｇ１０を得ている。
【０１７１】
そして、オーバーフロー検出回路５３からの出力である第１の局部量子化器５４のオーバーフローの状態５ｇ１１と第１の局部量子化器５４の出力信号の符号５ｇ１０とサブループの帰還信号の符号５ｇ７とから、メインループ５１０とサブループ５１５が量子化誤差を加算してもオーバーフローしない状態であるかを判断して、第１のノイズシェーピング型量子化器の量子化誤差を計算するための出力５ｇ８と出力５ｇ８で出力できなかった新たに発生した量子化誤差量５ｇ９が決定されている。
【０１７２】
図５Ｈは、誤差蓄積回路５Ｆ６の動作を説明するフローチャートであり、図５Ｅの誤差蓄積回路５６の動作を説明するフローチャートと同じ構成については同じ番号を付し、説明を省略する。
【０１７３】
ステップＳ５４の判断処理をステップＳ５ｈ４の判断処理へ変更したものが誤差蓄積回路５Ｆ６の動作フローになり、出力制御器５Ｆ１の動作状態にも基づいて誤差蓄積回路５Ｆ６の出力が決定されている。
【０１７４】
ステップＳ５ｈ４の判断処理では、処理選択回路５ｂ６が、信号５ｂ２と信号５ｂ４とが一致するかを判断する事により信号５ｂ１がゼロであるかを判断し、出力制御器５Ｆ１が動作しているかどうかを判断する（Ｓ５ｈ４）。
【０１７５】
以上のように、本実施の形態３の多段型ノイズシェーピング型量子化器は、振幅制御器５ｇ６を追加する事により、リミッタ５ｇ３部分で発生する誤差の一部をメインループ５１０とサブループ５１５の状態に応じて出力し、誤差蓄積回路５６への量子化誤差の蓄積量をより少なく抑える事ができ、より良好な歪率の信号を出力する事が可能となる。
【０１７６】
なお、上記説明において、多段型ノイズシェーピング量子化器について説明したが、本発明の実施の形態３の内容は単積分型ノイズシェーピング型量子化器にも適用することができる。
【０１７７】
ここで、図５Ｃは単積分型ノイズシェーピング型量子化器のブロック図であり、図５Ｃを参照して、図５Ａの多段型ノイズシェーピング型量子化器と同等の効果を有する単積分型ノイズシェーピング型量子化器について説明する。ただし、図５Ａと同様の構成については同じ番号を付し、説明を省略する。
【０１７８】
まず、図５Ｃの単積分型ノイズシェーピング型量子化器と図５Ａの多段型ノイズシェーピング型量子化器との大きな違いは、図５Ｃの単積分型ノイズシェーピング型量子化器には図５Ａのサブループ５１５がなく帰還信号５２１と局部量子化器５４出力の符号５ｂ８が誤差蓄積回路に入力されない点と誤差検出回路５ｃ２が追加され、その出力が誤差蓄積回路５ｃ１へ入力されている点である。
【０１７９】
図５Ｃの単積分型ノイズシェーピング型量子化器は、加算器５１と、オーバーフロー検出回路５３、局部量子化器５４、リミッタ５５、誤差蓄積回路５ｃ１、誤差検出回路５ｃ２、加算器５７、減算器５８、遅延器５９により１次のノイズシェーピング次数を有する単積分型ノイズシェーピング型量子化器として構成されている。
【０１８０】
追加された誤差検出回路５ｃ２について説明する。誤差検出回路５ｃ２では、二つの入力信号の大小比較する事により局部量子化器５４において発生する量子化誤差の符号の検出又は、局部量子化器５４の前後の値の差を計算することで局部量子化器５４において発生する量子化誤差の値の計算を行なう。
【０１８１】
図５Ｄは誤差蓄積回路５ｃ１のブロック図を示しており、図５Ｂの誤差蓄積回路５６のブロック図と同じ構成については同じ番号を付し、説明を省略する。誤差蓄積回路５ｃ１は、加算器５ｂ３と処理選択回路５ｄ６から構成され、信号５ｂ１、５ｂ２、５ｂ４、５ｂ７、５ｄ８、５ｂ９を入出力している。
【０１８２】
誤差蓄積回路５ｃ１は、誤差検出回路５ｃ２が局部量子化器５４において発生する量子化誤差の符号の検出を行なう場合と局部量子化器５４において発生する量子化誤差の値の計算を行なう場合とで動作が異なるので、それぞれについて説明をする。
【０１８３】
誤差蓄積回路５ｃ１は、リミッタ５５からの入力５ｂ１と誤差検出回路５ｃ２からの入力５ｄ８と第１の局部量子化器５４のオーバーフローの状態を示す信号５ｂ９とに基づいて出力する信号５ｂ７を決定している点が、図５Ｂの誤差蓄積回路５６と異なる。誤差検出回路５ｃ２が局部量子化器５４において発生する量子化誤差の符号の検出を行なう場合には、誤差蓄積回路５ｃ１は、リミッタ５５から入力され蓄積されている量子化誤差量５ｂ４を、蓄積されている量子化誤差量５ｂ４の符号と局部量子化器５４において発生する量子化誤差の符号５ｄ８の符号とを比較して異符号、且つオーバーフローの状態を示す信号５ｂ９により第１の局部量子化器５４がオーバーフローしておらず、且つリミッタ５５からの入力５ｂ１がゼロの場合には出力し、同符号の場合又はオーバーフローの状態を示す信号５ｂ９により第１の局部量子化器５４がオーバーフローしている場合又は、リミッタ５５からの入力５ｂ１がゼロで無い場合には、出力しないように出力信号５ｂ７を制御している。出力する誤差量は、局部量子化器５４で発生する量子化誤差分１ｅ３を使用していない場合なのでマージンがゼロの場合には、量子化誤差分１ｅ３の大きさ分だけ出力する。ただし、リミッタ５５の動作による判断処理は必ずしも必要では無い。
【０１８４】
次に、誤差検出回路５ｃ２が局部量子化器５４において発生する量子化誤差の値の計算を行なう場合でマージンがゼロの場合について説明する。まず、オーバーフローの状態を示す信号５ｂ９により第１の局部量子化器５４がオーバーフローしている場合には、局部量子化器５４で発生する量子化誤差分１ｅ３の範囲から局部量子化器５４において発生する量子化誤差の値（誤差検出回路５ｃ２の出力５ｄ８）を減算する事により出力可能な量子化誤差量を求めて出力するように出力信号５ｂ７を制御している。
【０１８５】
また、オーバーフローの状態を示す信号５ｂ９により第１の局部量子化器５４がオーバーフローしている場合は、局部量子化器５４がオーバーフローしない、すなわち、局部量子化器５４で発生する量子化誤差分１ｅ３の範囲に局部量子化器５４において発生する量子化誤差の値収まるように、誤差蓄積回路５ｃ１から補正出力を出力信号５ｂ７として出力し、補正出力に相当する誤差分を誤差蓄積回路へ加算する。補正出力分は、局部量子化器５４において発生する量子化誤差の値から局部量子化器５４で発生する量子化誤差分１ｅ３を減算する事により求める。以上の様に出力信号５ｂ７を制御している。
【０１８６】
図５Ｉは、誤差蓄積回路５ｃ１の誤差検出回路５ｃ２が局部量子化器５４において発生する量子化誤差の符号の検出を行なう場合の動作を説明するフローチャートであり、図５Ｅの誤差蓄積回路５６の動作を説明するフローチャートと同じ構成については同じ番号を付し、説明を省略する。
【０１８７】
ステップＳ５６の判断処理をステップＳ５ｉ６へ変更したものが誤差蓄積回路５ｃ１の動作フローになり、リミッタ５５からの入力５ｂ１とオーバーフローの状態を示す信号５ｂ９と蓄積されている量子化誤差量５ｂ４の符号と局部量子化器５４において発生する量子化誤差の符号５ｄ８とに基づいて誤差蓄積回路５ｃ１の出力が決定されている。
【０１８８】
ステップＳ５ｉ６の判断処理では、処理選択回路５ｂ６が、蓄積している量子化誤差量５ｂ４の符号と局部量子化器５４において発生する量子化誤差の符号５ｄ８の符号とを比較して、局部量子化器５４で発生する量子化誤差分１ｅ３を使用しているかを判断する（Ｓ５ｉ６）。
【０１８９】
図５Ｊは、誤差蓄積回路５ｃ１の誤差検出回路５ｃ２が局部量子化器５４において発生する量子化誤差の値の計算を行なう場合の動作を説明するフローチャートであり、図５Ｅの誤差蓄積回路５６の動作を説明するフローチャートと同じ構成については同じ番号を付し、説明を省略する。
【０１９０】
ステップＳ５４及びステップＳ５６の判断処理を削除し、ステップＳ５１０の処理をステップＳ５ｊ１０へ変更したものが誤差蓄積回路５ｃ１の動作フローになり、オーバーフローの状態を示す信号５ｂ９と局部量子化器５４において発生する量子化誤差の値５ｄ８に基づいて誤差蓄積回路５ｃ１の出力が決定されている。
【０１９１】
ステップＳ５５において局部量子化器５４がオーバーフローしていると判断された場合、ステップＳ５ｊ１０の処理では、局部量子化器５４において発生する量子化誤差が局部量子化器５４で発生する量子化誤差分１ｅ３の範囲内になるように誤差蓄積回路５ｃ１から補正出力をし、補正出力に相当する誤差分を誤差蓄積回路へ加算する（Ｓ５ｊ１０）。
【０１９２】
以上のように、本実施の形態３の単積分型ノイズシェーピング型量子化器は、誤差蓄積回路５ｃ１が、リミッタ５５の振幅制限した量子化誤差量を蓄積して、リミッタ５５の動作状態と局部量子化器５４がオーバーフローしているかどうかと蓄積されている量子化誤差量５ｂ４の符号と局部量子化器５４において発生する量子化誤差の符号又は値５ｄ８とに基づいて、蓄積した量子化誤差を局部量子化器５４に帰還させるように制御することにより、ループ全体を安定に保ちつつ、制限された分の量子化誤差を蓄積する事で歪率の劣化を抑える事が可能となる。
【０１９３】
また、帰還される量子化誤差を制御してループを安定させることによって、局部量子化器５４の入力範囲におけるマージンを無くす、もしくはマージンの割合を小さくできるので、局部量子化器５４の全入力範囲に対する音楽信号入力の割合を増加させることができ、音楽信号出力の振幅を増加させる事が可能となる。
【０１９４】
（実施の形態４）
図６Ａは、本発明の実施の形態４における多段型ノイズシェーピング型量子化器の構成を示すブロック図である。図６Ｂは、図６Ａの誤差蓄積回路６６の構成を示すブロック図である。図６Ｃは、図６Ａの多段型ノイズシェーピング型量子化器を簡略化した単積分型ノイズシェーピング型量子化器である。図６Ｆは、図６Ａのリミッタ６５の部分に振幅制御器６ｇ６を追加し出力制御器６Ｆ１とした多段型ノイズシェーピング型量子化器の構成を示すブロック図である。図６Ｇは、図６Ａのリミッタ６５の部分に振幅制御器６ｇ６を追加した構成の出力制御器６Ｆ１を示すブロック図である。
【０１９５】
図６Ａにおいて、本発明の実施の形態４の多段型ノイズシェーピング型量子化器は、メインループ６１０とサブループ６１５と微分器６１８から構成されている。そして、メインループ６１０は、加算器６１と加算器６２、オーバーフロー分誤差検出回路６３、局部量子化器６４、リミッタ６５、誤差蓄積回路６６、加算器６７、減算器６８、遅延器６９により構成される１次のノイズシェーピング次数を有する単積分型ノイズシェーピング型量子化器である。また、サブループ６１５は、加算器６１１と局部量子化器６１２、減算器６１３、帰還回路６１４により構成される１次又は２次以上のノイズシェーピング次数を有する多重積分型ノイズシェーピング量子化器である。このサブループ６１５の出力を減算器６１６と遅延器６１７で構成される微分器６１８によりメインループ６１０のノイズシェーピング次数に応じて微分した後、加算器６１９によりメインループ６１０の出力と加算すると、（サブループのノイズシェーピング次数＋１）次の多段型ノイズシェーピング型量子化器が構成される。この帰還回路６１４は、サブループ６１５が２次以上のノイズシェーピング特性を持つような伝達関数Ｈ（ｚ）の特性を有している。
【０１９６】
帰還信号６２０は、サブループ６１５の帰還回路６１４から出力され、加算器６２において第１の局部量子化器６４の入力信号に対し帰還信号６２０に応じた所定の値を加減算する事によりサブループ６１５へ入力される量子化誤差抑え正常に動作させるためのものである。なお、帰還信号６２０は、サブループ６１５に構成された積分器の出力でも良く、加算器６２において第１の局部量子化器６４の量子化テーブルを帰還信号６２０に応じてシフトする方法でも良く、サブループ６１５へ入力される量子化誤差を抑え正常に動作させるために、帰還信号６２０に基づいて第１の局部量子化器６４の出力信号を変化させてサブループ６１５への入力信号の範囲を制御する方法であれば良い。
【０１９７】
オーバーフロー分誤差検出回路６３は、第１の局部量子化器６４におけるオーバーフローを前もって検出している。これは、加算器６２からの信号が局部量子化器６４への入力範囲を超えているときにオーバーフローを起こすとし、検出を行なう。そして、オーバーフロー分誤差検出回路６３は、オーバーフローを検出したときに、加算器６２からの入力信号を、オーバーフロー分の量子化誤差出力と、オーバーフロー分を差し引いて振幅制限した第１の局部量子化器６４への入力信号とに分割する。
【０１９８】
また、オーバーフロー分誤差検出回路６３は、オーバーフローの検出に関わらず第１の局部量子化器６４への出力信号の符号（第１の局部量子化器６４の出力信号の符号）を判別し、誤差蓄積回路６６へ第１の局部量子化器６４出力の符号を示す信号を出力してよい。この第１の局部量子化器６４出力の符号を示す信号は、第１の局部量子化器６４の動作状態を意味している。
【０１９９】
リミッタ６５は、微分器６１８あるいは遅延器６１７からの出力により、第１の局部量子化器６４の出力の振幅を制御して加算器６１９への出力を決定している。つまり、リミッタ６５は、微分器６１８の状態（遅延器６１７からの値）に基づき、微分器６１８の出力値と加算器６１９への出力との和が多段型ノイズシェーピング回路の出力階調数を超えないように、第１の局部量子化器６４から入力される値の上限値及び下限値を制御して出力している。これにより、微分器６１８の出力値に応じて、第１の局部量子化器６４の出力範囲を可変し広げる事が可能となる。
【０２００】
そしてリミッタ６５は、第１の局部量子化器６４から入力される信号を振幅制限して出力すると同時に、振幅制限した分の量子化誤差を、誤差蓄積回路６６に対して出力する。また、リミッタ６５は、第１の局部量子化器６４出力の符号を判別し、誤差蓄積回路６６へ第１の局部量子化器６４出力の符号を示す信号を出力している。なお、第１の局部量子化器６４出力の符号と加算器６１９へ入力するリミッタ６５出力の符号は同じであるためリミッタ６５においてリミッタ６５出力の符号を判別して誤差蓄積回路６６へリミッタ６５出力の符号を出力しても良い。また、第１の局部量子化器６４出力の符号の判別はオーバーフロー分誤差検出回路６３でも行なえるため、これらのいずれか一つ以上で検出を行なえば良い。
【０２０１】
誤差蓄積回路６６は、オーバーフロー分誤差検出回路６３から出力されるオーバーフロー分の量子化誤差出力及び、リミッタ６５において新たに発生する量子化誤差を蓄積し、第１の局部量子化器６４の動作状態の信号（第１の局部量子化器６４の出力信号の符号及びオーバーフロー検出状態）とサブループ６１５の帰還回路６１４の出力信号６２１の符号を参照して、蓄積された量子化誤差分の信号を出力制御して、加算器６７へ入力している。
【０２０２】
図６Ａ、図６Ｂ及び図１Ｅを用いて誤差蓄積回路６６について詳細に説明する。図６Ｂに示すように、誤差蓄積回路６６は、加算器６ｂ３，６ｂ１２と処理選択回路６ｂ６、動作状態検出回路６ｂ１４、６ｂ１５から構成され、信号６ｂ１、６ｂ２、６ｂ４、６ｂ５、６ｂ７〜６ｂ１１、６ｂ１３を入出力している。
【０２０３】
オーバーフロー分誤差検出回路６３から出力されるオーバーフロー分の信号６ｂ１０とリミッタ６５において発生する量子化誤差６ｂ１１が加算器６ｂ１２で加算され、新たに発生する量子化誤差６ｂ１として加算器６ｂ３に入力され、処理選択回路６ｂ６からの出力信号６ｂ２（蓄積されていた量子化誤差）と加算されて、信号６ｂ４（新たに蓄積された量子化誤差量）として処理選択回路６ｂ６へ入力される。
【０２０４】
動作状態検出回路６ｂ１４は、オーバーフロー分誤差検出回路６３から出力されるオーバーフロー分の信号６ｂ１０がゼロかどうかを検出する事により、オーバーフロー分誤差検出回路６３が動作しているかどうかを判別して第１の局部量子化器６４のオーバーフロー状態６ｂ９を出力している。
【０２０５】
動作状態検出回路６ｂ１５は、リミッタ６５において発生する量子化誤差６ｂ１１がゼロかどうかを検出する事により、リミッタ６５が動作しているかどうかを判別してリミッタ６５の動作状態を表す信号６ｂ１３を出力している。
【０２０６】
処理選択回路６ｂ６は、第１の局部量子化器６４出力の符号を示す信号６ｂ８とサブループ６１５からの帰還信号６ｂ５（帰還信号６２１）とオーバーフロー分誤差検出回路６３からの出力信号と第１の局部量子化器６４のオーバーフロー状態６ｂ９とリミッタ６５の動作状態を表す信号６ｂ１３とを参照して蓄積された量子化誤差量６ｂ２及び出力６ｂ７を制御する。
【０２０７】
次に、誤差蓄積回路６６の出力（出力６ｂ７）の決定方法について説明する。まず、第１の局部量子化器６４がオーバーフローしないために、第１の局部量子化器６４のオーバーフロー状態６ｂ９の参照及び、第１の局部量子化器６４出力の符号６ｂ８と、サブループ６１５からの帰還信号６ｂ５とを参照する。第１の局部量子化器６４がオーバーフローしている場合は、量子化誤差部分１ｅ３が正常な状態よりも大きくなっている事が考えられ、２つの信号６ｂ８と６ｂ５の符号が同符号の場合は、サブループ６１５からの帰還入力分１ｅ２（図１Ｅ参照）の部分が使用されているので、マージンがゼロの場合には処理選択回路６ｂ６は誤差蓄積回路６６の出力６ｂ７をゼロへリミットする必要がある。
【０２０８】
また、第１の局部量子化器６４のオーバーフローしていない且つ、第１の局部量子化器６４出力の符号６ｂ８と、サブループ６１５の帰還信号６ｂ５とを参照して、２つの信号の符号が異符号の場合は、量子化誤差部分１ｅ３が正常な状態で、サブループ６１５からの帰還入力分１ｅ２の部分が使用されていないので、処理選択回路６ｂ６は誤差蓄積回路６６の出力６ｂ７をサブループ６１５からの帰還入力分１ｅ２の範囲に収まるようにリミットする。
【０２０９】
次に、第２の局部量子化器６１２がオーバーフローしないための条件を求める。まず、第２の局部量子化器６１２がオーバーフローしない状態を保つことが出来るサブループ６１５の入力として許容される量子化誤差の大きさを、第２の局部量子化器６１２の入力範囲をサブループ６１５の帰還回路６１４のゲインで除算する事により求める。
【０２１０】
そして、第１の局部量子化器６４出力の符号６ｂ８と、サブループ６１５の帰還信号６ｂ５とを参照して、二つの符号が同符号の場合はオーバーフロー分誤差検出回路６３から出力されるオーバーフロー分の信号６ｂ１０とリミッタ６５において発生する量子化誤差６ｂ１１を加算した量子化誤差とサブループ６１５の帰還入力分との極性が一致するため、サブループ６１５からの帰還入力分１ｅ２を含めて第２の局部量子化器６１２がオーバーフローしない状態を保つことが出来るサブループ６１５の入力として許容される量子化誤差の大きさを超えないように誤差蓄積回路６６の出力６ｂ７をリミットする必要がある。
【０２１１】
また、第１の局部量子化器６４出力の符号６ｂ８と、サブループ６１５の帰還信号６ｂ５とを参照して、二つの符号が異符号の場合はオーバーフロー分誤差検出回路６３から出力されるオーバーフロー分の信号６ｂ１０とリミッタ６５において発生する量子化誤差６ｂ１１を加算した量子化誤差がサブループ６１５の帰還入力分と異符号なため、サブループ６１５からの帰還入力分１ｅ２を考慮する必要がなく第２の局部量子化器６１２がオーバーフローしない状態を保つことが出来るサブループ６１５の入力として許容される量子化誤差の大きさを超えないように誤差蓄積回路の出力６ｂ７をリミットする。
【０２１２】
そして、第１の局部量子化器６４と第２の局部量子化器６１２の両方が安定であると判断されたとき（第１の局部量子化器６４出力の符号６ｂ８と帰還信号６ｂ５が異符号であると判断されたとき）に、両局部量子化器をオーバーフローさせないためにかけるリミットの大きい方、つまりリミット後の値の小さい方の値を出力６ｂ７として出力する。
【０２１３】
このように、処理選択回路６ｂ６は、第１の及び第２の局部量子化器が共にオーバーフローしない状態になるような制限値を求め、第１の局部量子化器６４出力の符号とサブループ６１５の帰還信号６２１の符号とから、誤差蓄積回路６６の出力６ｂ７を決定する。
【０２１４】
なお、本実施の形態において、第１及び第２の局部量子化器が共にオーバーフローしない状態になるような制限値は、回路設計の段階で予め決められた値である。ただし、サブループ６１５からの帰還信号６２１の符号で無く値そのものを参照した場合、制限値を各タイミングにおいて計算し、制限値を切り替えるような構成とすることにより、より高精度に制御する事が可能となる。これは、帰還信号６２１の値により、メインループ６１０の第１局部量子化器６４の帰還入力分の余裕分がより正確に得られるからである。同時にサブループ６１５へ入力される量子化誤差の範囲もより高精度に限定する事が可能となる。
【０２１５】
次に、図６Ｅを用いて、誤差蓄積回路６６の動作について説明する。図６Ｅは、図６Ａの誤差蓄積回路６６の動作を示すフローチャートである。
【０２１６】
まず、オーバーフロー分誤差検出回路６３から出力されるオーバーフロー分の信号６ｂ１０とリミッタ６５において発生する量子化誤差６ｂ１１を加算した新たに発生した量子化誤差入力６ｂ１が誤差蓄積回路６６に入力される（Ｓ６１）。
【０２１７】
次に、新たに発生した量子化誤差入力６ｂ１と蓄積されていたオーバーフロー分の量子化誤差量６ｂ２とを加算する（Ｓ６２）。
【０２１８】
そして、処理選択回路６ｂ６は、ステップＳ６２での加算結果６ｂ４の最大値もしくは最小値を振幅制限し蓄積する。この蓄積された値が量子化誤差量６ｂ２となる。なお、ここで、振幅制限するための最大値・最小値は、処理選択回路６ｂ６内に蓄積可能な最大値・最小値という意味であり、処理選択回路６ｂ６で蓄積可能な最大値・最小値の範囲内に、入力された６ｂ４が収まっていれば振幅制限されない（Ｓ６３）。
【０２１９】
そして、処理選択回路６ｂ６は、オーバーフロー分誤差検出回路６３から出力されるオーバーフロー分の信号６ｂ１０がゼロであるか否かにより、第１の局部量子化器６４のオーバーフロー状態６ｂ９を求め、オーバーフロー分誤差検出回路６３が第１の局部量子化器６４のオーバーフローを検出したかどうかを判断する（Ｓ６４）。
【０２２０】
そして、ステップＳ６４で、オーバーフローが検出されていないと判断されたならば、処理選択回路６ｂ６は、リミッタ６５において発生する量子化誤差６ｂ１１がゼロであるか否かによりリミッタ６５の動作状態を表す信号６ｂ１３を求め、リミッタ６５が動作しているかどうかを判断する（Ｓ６５）。
【０２２１】
ステップＳ６５で、リミッタ６５が動作していないと判断されたならば、処理選択回路６ｂ６は、第１の局部量子化器６４出力の符号を示す信号６ｂ８とサブループ６１５からの帰還信号６ｂ５（帰還信号６２１）を参照して、符号が異符号であるかどうかを判断する（Ｓ６６）。
【０２２２】
ステップＳ６６で符号が異符号と判断されたならば、処理選択回路６ｂ６内に蓄積されている値が、出力６ｂ７として出力可能な所定の制限値を超えているかどうかを判断する（Ｓ６７）。
【０２２３】
ステップＳ６７において、処理選択回路６ｂ６に蓄積されていた値が所定の制限値（誤差蓄積回路６６から１回に返せる量子化誤差量）よりも大きいと判断されたならば、所定の制限値を出力６ｂ７として出力し、処理選択回路６ｂ６に蓄積されていた値から所定の制限値を減算し減算された結果を量子化誤差として蓄積する（Ｓ６８）。
【０２２４】
また、ステップＳ６７において、処理選択回路６ｂ６に蓄積されていた値が所定の制限値よりも小さいと判断されたならば、蓄積されていた量子化誤差を出力６ｂ７として、全て出力し、蓄積している量子化誤差を０とする（Ｓ６９）。
【０２２５】
また、ステップＳ６４で、オーバーフローが検出されている場合と、ステップＳ６５においてリミッタが動作している場合と、ステップＳ６６において信号６ｂ８と帰還信号６ｂ５が同符号である場合は、誤差蓄積回路６５から誤差を出力すると、第１及び第２の局部量子化器がオーバーフローを起こす可能性がある不安定な状態であるため、誤差蓄積回路６６からの出力６ｂ７をゼロにする、もしくは出力しない（Ｓ６１０）。
【０２２６】
以上のように構成することで、オーバーフロー分誤差検出回路６３及び、リミッタ６５の動作において発生する量子化誤差による第１の局部量子化器６４のオーバーフローを抑え、メインループ６１０を安定に保ちつつ、制限された分の量子化誤差を蓄積・出力制御する事で歪率の劣化を抑える事が可能となる。
【０２２７】
ここで、ステップＳ６３における処理選択回路６ｂ６による量子化誤差蓄積量の最大値もしくは最小値を振幅制限する処理は、オーバーフロー分誤差検出回路６３又はリミッタ６５が頻繁に動作するような状態で量子化誤差を帰還するタイミングが遅くなり、量子化誤差がノイズとなってしまう事を防ぐためのもので、オーバーフロー分誤差検出回路６３又はリミッタ６５が頻繁に動作しない場合はこの処理を行わなくても正常に動作する。
【０２２８】
さらに、第１の局部量子化器６４のオーバーフローを抑える事によって、サブループ６１５の帰還回路６１４の出力６２０に応じて第１の局部量子化器６４の入力信号に対し所定の値を加減算して、サブループ６１５へ入力される量子化誤差を抑えサブループ６１５を正常に動作させる事が可能となり、メインループ６１０及び、サブループ６１５の安定度を向上させる事が可能となる。
【０２２９】
また、第２のノイズシェーピング型量子化器６１５の帰還回路６１４の出力信号６２０に基づき、第１の局部量子化器６４の入力信号に対し所定の値を加減算する事により第２の局部量子化器６１２へ入力される量子化誤差を抑え正常に動作させることによって、この動作を常に維持するように誤差蓄積回路６６で量子化誤差の蓄積及び、誤差蓄積回路６６に蓄積した量子化誤差の帰還を行う事で、第２のノイズシェーピング型量子化器６１５を安定に保つ事が可能となる。
【０２３０】
また、メインループ６１０へ帰還される量子化誤差を制御してメインループ６１０を安定させることによって、第１の局部量子化器６６の入力範囲におけるマージンを無くす、もしくはマージンの割合を小さくできるので、第１の局部量子化器６４の全入力範囲に対する音楽信号入力の割合を増加させることができ、音楽信号出力の振幅を増加させる事が可能となる。
【０２３１】
なお、上記説明の構成において、リミッタ６５の部分へ振幅制御器６ｇ６を追加し、二つを併せて出力制御器６Ｆ１とした構成に関しても、本発明の実施の形態４の内容を適用することができる。
【０２３２】
ここで、図６Ｆは図６Ａのリミッタ６５の部分に振幅制御器６ｇ６を追加し出力制御器６Ｆ１とした多段型ノイズシェーピング型量子化器の構成を示すブロック図であり、図６Ｆを参照して、図６Ａの多段型ノイズシェーピング型量子化器と同等以上の効果を有する多段型ノイズシェーピング型量子化器について説明する。ただし、図６Ａと同様の構成については同じ番号を付し、説明を省略する。
【０２３３】
まず、図６Ｆの多段型ノイズシェーピング型量子化器と図６Ａの多段型ノイズシェーピング型量子化器との違いは、図６Ｆのリミッタ６５の部分に振幅制御器６ｇ６が追加され出力制御器６Ｆ１となっている点である。図６Ｇは、図６Ａのリミッタ６５の部分に振幅制御器６ｇ６を追加した構成の出力制御器６Ｆ１を示すブロック図である。
【０２３４】
出力制御器６Ｆ１は、リミッタ６ｇ３と振幅制御器６ｇ６から構成され、信号６ｇ１、６ｇ２、６ｇ４、６ｇ５、６ｇ７〜６ｇ１１を入出力している。リミッタ６ｇ３は、微分器６１８あるいは遅延器６１７からの出力６ｇ２により、第１の局部量子化器６４の出力６ｇ１の振幅を制御して加算器６１９への出力６ｇ４を決定している。つまり、リミッタ６ｇ３は、微分器６１８の状態（遅延器６１７からの値）６ｇ２に基づき、微分器６１８の出力値と加算器６１９への出力６ｇ４との和が多段型ノイズシェーピング回路の出力階調数を超えないように、第１の局部量子化器６４から入力される値の上限値及び下限値を制御して出力している。これにより、微分器６１８の出力値に応じて、第１の局部量子化器６４の出力範囲を可変し広げる事が可能となる。
【０２３５】
振幅制御器６ｇ６は、リミッタ６ｇ３への入力６ｇ１とリミッタ６ｇ３の動作状態を表す信号６ｇ５とサブループの帰還信号の符号６ｇ７とオーバーフロー分誤差検出回路６３からの出力である第１の局部量子化器６４のオーバーフローの状態を示す信号６ｇ１１とを入力とし、第１のノイズシェーピング型量子化器の量子化誤差を計算するための出力６ｇ８と出力６ｇ８で出力できなかった新たに発生した量子化誤差量６ｇ９と第１の局部量子化器６４の出力信号の符号６ｇ１０とを出力とする。
【０２３６】
振幅制御器６ｇ６は、リミッタ６ｇ３への入力６ｇ１とリミッタ６ｇ３の動作状態を表す信号６ｇ５から、リミッタ６ｇ３で新たに発生する量子化誤差量を計算し、第１の局部量子化器６４の出力信号の符号６ｇ１０を得る。
【０２３７】
そして、オーバーフロー分誤差検出回路６３からの出力である第１の局部量子化器６４のオーバーフローの状態６ｇ１１と第１の局部量子化器６４の出力信号の符号６ｇ１０とサブループの帰還信号の符号６ｇ７とから、メインループ６１０とサブループ６１５が量子化誤差を加算してもオーバーフローしない状態であるかを判断して、第１のノイズシェーピング型量子化器の量子化誤差を計算するための出力６ｇ８と出力６ｇ８で出力できなかった新たに発生した量子化誤差量６ｇ９が決定されている。
【０２３８】
図６Ｈは、誤差蓄積回路６Ｆ６の動作を説明するフローチャートであり、図６Ｅの誤差蓄積回路６６の動作を説明するフローチャートと同じ構成については同じ番号を付し、説明を省略する。
【０２３９】
ステップＳ６５の判断処理をステップＳ６ｈ５の判断処理へ変更したものが誤差蓄積回路６Ｆ６の動作フローになり、出力制御器６Ｆ１の動作状態にも基づいて誤差蓄積回路６Ｆ６の出力が決定されている。
【０２４０】
ステップＳ６ｈ５の判断処理では、処理選択回路６ｂ６が、信号６ｂ２と信号６ｂ４とが一致するかを判断する事により信号６ｂ１がゼロであるかを判断し、出力制御器６Ｆ１が動作しているかどうかを判断する（Ｓ６ｈ５）。
【０２４１】
以上のように、本実施の形態４の多段型ノイズシェーピング型量子化器は、振幅制御器６ｇ６を追加する事により、リミッタ６ｇ３部分で発生する誤差の一部をメインループ６１０とサブループ６１５の状態に応じて出力し、誤差蓄積回路６６への量子化誤差の蓄積量をより少なく抑える事ができ、より良好な歪率の信号を出力する事が可能となる。
【０２４２】
なお、上記説明において、多段型ノイズシェーピング量子化器について説明したが、本発明の実施の形態４の内容は単積分型ノイズシェーピング型量子化器にも適用することができる。
【０２４３】
ここで、図６Ｃは単積分型ノイズシェーピング型量子化器のブロック図であり、図６Ｃを参照して、図６Ａの多段型ノイズシェーピング型量子化器と同等の効果を有する単積分型ノイズシェーピング型量子化器について説明する。ただし、図６Ａと同様の構成については同じ番号を付し、説明を省略する。
【０２４４】
まず、図６Ｃの単積分型ノイズシェーピング型量子化器と図６Ａの多段型ノイズシェーピング型量子化器との大きな違いは、図６Ｃの単積分型ノイズシェーピング型量子化器には図６Ａのサブループ６１５がなく帰還信号６２１と局部量子化器６４出力の符号を示す信号６ｂ８が誤差蓄積回路に入力されない点と誤差検出回路６ｃ２が追加され、その出力が誤差蓄積回路６ｃ１へ入力されている点である。
【０２４５】
図６Ｃの単積分型ノイズシェーピング型量子化器は、加算器６１と、オーバーフロー分誤差検出回路６３、局部量子化器６４、リミッタ６５、誤差蓄積回路６ｃ１、誤差検出回路６ｃ２、加算器６７、減算器６８、遅延器６９により１次のノイズシェーピング次数を有する単積分型ノイズシェーピング型量子化器として構成されている。
【０２４６】
追加された誤差検出回路６ｃ２について説明する。誤差検出回路６ｃ２では、二つの入力信号の大小比較する事により局部量子化器６４において発生する量子化誤差の符号の検出又は、局部量子化器６４の前後の値の差を計算することで局部量子化器６４において発生する量子化誤差の値の計算を行なう。
【０２４７】
図６Ｄは誤差蓄積回路６ｃ１のブロック図を示しており、図６Ｂの誤差蓄積回路６６のブロック図と同じ構成については同じ番号を付し、説明を省略する。誤差蓄積回路６ｃ１は、誤差検出回路６ｃ２が局部量子化器６４において発生する量子化誤差の符号の検出を行なう場合と局部量子化器６４において発生する量子化誤差の値の計算を行なう場合とで動作が異なるので、それぞれについて説明をする。誤差蓄積回路６ｃ１は、加算器６ｂ３と処理選択回路６ｄ６、動作状態検出回路６ｂ１４、６ｂ１５から構成され、信号６ｂ１、６ｂ２、６ｂ４、６ｂ７、６ｄ８、６ｂ９〜６ｂ１１、６ｂ１３を入出力している。誤差蓄積回路６ｃ１は、オーバーフロー分誤差検出回路６３から出力されるオーバーフロー分の信号６ｂ１０とリミッタ６５において発生する量子化誤差６ｂ１１と誤差検出回路６ｃ２からの入力に基づいて出力する信号６ｂ７を決定している点が、図６Ｅの誤差蓄積回路６６と異なる。
【０２４８】
誤差検出回路６ｃ２が局部量子化器６４において発生する量子化誤差の符号の検出を行なう場合には、誤差蓄積回路６ｃ１は、オーバーフロー分誤差検出回路６３とリミッタ６５から入力され蓄積されている量子化誤差量６ｂ４を、蓄積されている量子化誤差量６ｂ４の符号と局部量子化器６４において発生する量子化誤差の符号６ｄ８の符号とを比較して異符号、且つ第１の局部量子化器６４のオーバーフロー状態６ｂ９により局部量子化器６４がオーバーフローしておらず、且つリミッタ６５の動作状態を表す信号６ｂ１３によりリミッタ６５が動作していない場合には出力し、蓄積されている量子化誤差量６ｂ４の符号と局部量子化器６４において発生する量子化誤差の符号６ｄ８の符号とを比較して同符号の場合又は、第１の局部量子化器６４のオーバーフロー状態６ｂ９により局部量子化器６４がオーバーフローしている場合又は、リミッタ６５の動作状態を表す信号６ｂ１３によりリミッタ６５が動作している場合には、出力しないように出力信号６ｂ７を制御している。出力する誤差量は、局部量子化器６４で発生する量子化誤差分１ｅ３を使用していない場合なのでマージンがゼロの場合には、量子化誤差分６ｅ３の大きさ分だけ出力する。ただし、リミッタ６５の動作による判断処理は必ずしも必要では無い。
【０２４９】
次に、誤差検出回路６ｃ２が局部量子化器６４において発生する量子化誤差の値の計算を行なう場合でマージンがゼロの場合について説明する。
【０２５０】
まず、第１の局部量子化器６４のオーバーフロー状態６ｂ９により局部量子化器６４がオーバーフローしていない場合には、局部量子化器６４で発生する量子化誤差分１ｅ３の範囲から局部量子化器６４において発生する量子化誤差の値を減算する事により出力可能な量子化誤差量を求める事ができ、誤差蓄積回路６ｃ１から出力可能な量子化誤差量を出力するように出力信号６ｂ７を制御している。また、第１の局部量子化器６４のオーバーフロー状態６ｂ９により局部量子化器６４がオーバーフローしている場合には、出力しないように出力信号６ｂ７を制御している。
【０２５１】
図６Ｉは、誤差蓄積回路６ｃ１の誤差検出回路６ｃ２が局部量子化器６４において発生する量子化誤差の符号の検出を行なう場合の動作を説明するフローチャートであり、図６Ｅの誤差蓄積回路６６の動作を説明するフローチャートと同じ構成については同じ番号を付し、説明を省略する。
【０２５２】
ステップＳ６６の判断処理をステップＳ６ｉ６へ変更したものが誤差蓄積回路６ｃ１の動作フローになり、オーバーフロー分誤差検出回路６３から出力されるオーバーフロー分の信号６ｂ１０（第１の局部量子化器６４のオーバーフロー状態６ｂ９）とリミッタ６５において発生する量子化誤差６ｂ１１（リミッタ６５の動作状態を表す信号６ｂ１３）と蓄積されている量子化誤差量６ｂ４の符号と局部量子化器６４において発生する量子化誤差の符号６ｄ８とに基づいて誤差蓄積回路６ｃ１の出力が決定されている。
【０２５３】
ステップＳ６ｉ６の判断処理では、処理選択回路６ｂ６が、蓄積している量子化誤差量６ｂ４の符号と局部量子化器６４において発生する量子化誤差の符号６ｄ８の符号とを比較して、局部量子化器６４で発生する量子化誤差分１ｅ３を使用しているかを判断する（Ｓ６ｉ６）。
【０２５４】
図６Ｊは、誤差蓄積回路６ｃ１の誤差検出回路６ｃ２が局部量子化器６４において発生する量子化誤差の値の計算を行なう場合の動作を説明するフローチャートであり、図６Ｅの誤差蓄積回路６６の動作を説明するフローチャートと同じ構成については同じ番号を付し、説明を省略する。
【０２５５】
ステップＳ６５、ステップＳ６６の判断処理を削除したものが誤差蓄積回路６ｃ１の動作フローになり、オーバーフロー分誤差検出回路６３から出力されるオーバーフロー分の信号６ｂ１０（第１の局部量子化器６４のオーバーフロー状態６ｂ９）とリミッタ６５において発生する量子化誤差６ｂ１１と局部量子化器６４において発生する量子化誤差の値６ｄ８とに基づいて誤差蓄積回路６ｃ１の出力が決定されている。
【０２５６】
以上のように、本実施の形態４の単積分型ノイズシェーピング型量子化器は、誤差蓄積回路６ｃ１が、オーバーフロー分誤差検出回路６３の振幅制限した量子化誤差量とリミッタ６５の動作により発生した量子化誤差を蓄積して、オーバーフロー分誤差検出回路６３から出力されるオーバーフロー分の信号６ｂ１０（第１の局部量子化器６４のオーバーフロー状態６ｂ９）とリミッタ６５において発生する量子化誤差６ｂ１１（リミッタ６５の動作状態を表す信号６ｂ１３）と蓄積されている量子化誤差量６ｂ４の符号と局部量子化器６４において発生する量子化誤差の符号又は値６ｄ８に基づいて、蓄積した量子化誤差を局部量子化器６４に帰還させるように制御することにより、局部量子化器６４のオーバーフローを抑え、ループ全体を安定に保ちつつ、制限された分の量子化誤差を蓄積する事で歪率の劣化を抑える事が可能となる。
【０２５７】
また、帰還される量子化誤差を制御してループを安定させることによって、局部量子化器６４の入力範囲におけるマージンを無くす、もしくはマージンの割合を小さくできるので、局部量子化器６４の全入力範囲に対する音楽信号入力の割合を増加させることができ、音楽信号出力の振幅を増加させる事が可能となる。
【０２５８】
なお、上記の説明においては、単積分型を例にとり説明を行なったが、同様の方法でサブループを持たない構成の２次以上のノイズシェーピング型量子化器に関しても適応する事が可能である。
【０２５９】
以上の構成に限らず、量子化誤差を発生する全てのリミッタ及び、所定のレベルで信号を制限し分割するオーバーフロー分誤差検出回路、リミッタやオーバーフロー分誤差検出回路により発生した量子化誤差を蓄積する全ての誤差蓄積回路に適用する事が可能である。
【産業上の利用可能性】
【０２６０】
本発明のノイズシェーピング型量子化器の過大入力時の処理方式は、ノイズシェーピング型量子化器の安定度の向上及び大きな入力信号時の出力信号の歪率の悪化を抑える事が可能であることから、ポータブルオーディオ機器などのヘッドホン出力への適用に適している。
【図面の簡単な説明】
【０２６１】
【図１Ａ】本発明の実施の形態１の多段型ノイズシェーピング型量子化器を示すブロック図
【図１Ｂ】同多段型ノイズシェーピング型量子化器の誤差蓄積回路を示すブロック図
【図１Ｃ】同単積分型ノイズシェーピング型量子化器を示すブロック図
【図１Ｄ】同単積分型ノイズシェーピング型量子化器の誤差蓄積回路を示すブロック図
【図１Ｅ】同多段型ノイズシェーピング型量子化器の第１の局部量子化器の入出力の説明図
【図１Ｆ】同多段型ノイズシェーピング型量子化器を示すブロック図
【図１Ｇ】同多段型ノイズシェーピング型量子化器の出力制御器を示すブロック図
【図１Ｈ】同単積分型ノイズシェーピング型量子化器の局部量子化器の入出力の説明図
【図２Ａ】本発明の実施の形態２の多段型ノイズシェーピング型量子化器を示すブロック図
【図２Ｂ】同多段型ノイズシェーピング型量子化器の誤差蓄積回路を示すブロック図
【図２Ｃ】同単積分型ノイズシェーピング型量子化器を示すブロック図
【図２Ｄ】同単積分型ノイズシェーピング型量子化器の誤差蓄積回路を示すブロック図
【図３Ａ】本発明の実施の形態１の図１Ａの多段型ノイズシェーピング型量子化器の動作を示すフローチャート
【図３Ｂ】本発明の実施の形態１の図１Ｆの多段型ノイズシェーピング型量子化器の動作を示すフローチャート
【図３Ｃ】本発明の実施の形態１の図１Ｃの多段型ノイズシェーピング型量子化器の動作を示すフローチャート
【図３Ｄ】本発明の実施の形態１の図１Ｃの多段型ノイズシェーピング型量子化器の動作を示すフローチャート
【図４Ａ】本発明の実施の形態２の多段型ノイズシェーピング型量子化器の動作を示すフローチャート
【図４Ｂ】同単積分型ノイズシェーピング型量子化器の動作を示すフローチャート
【図４Ｃ】同単積分型ノイズシェーピング型量子化器の動作を示すフローチャート
【図５Ａ】本発明の実施の形態３の多段型ノイズシェーピング型量子化器を示すブロック図
【図５Ｂ】同多段型ノイズシェーピング型量子化器の誤差蓄積回路を示すブロック図
【図５Ｃ】同単積分型ノイズシェーピング型量子化器を示すブロック図
【図５Ｄ】同単積分型ノイズシェーピング型量子化器の誤差蓄積回路を示すブロック図
【図５Ｅ】同多段型ノイズシェーピング型量子化器の動作を示すフローチャート
【図５Ｆ】同多段型ノイズシェーピング型量子化器を示すブロック図
【図５Ｇ】同多段型ノイズシェーピング型量子化器の出力制御器を示すブロック図
【図５Ｈ】同多段型ノイズシェーピング型量子化器の動作を示すフローチャート
【図５Ｉ】同単積分型ノイズシェーピング型量子化器の動作を示すフローチャート
【図５Ｊ】同単積分型ノイズシェーピング型量子化器の動作を示すフローチャート
【図６Ａ】本発明の実施の形態４の多段型ノイズシェーピング型量子化器を示すブロック図
【図６Ｂ】同多段型ノイズシェーピング型量子化器の誤差蓄積回路を示すブロック図
【図６Ｃ】同単積分型ノイズシェーピング型量子化器を示すブロック図
【図６Ｄ】同単積分型ノイズシェーピング型量子化器の誤差蓄積回路を示すブロック図
【図６Ｅ】同多段型ノイズシェーピング型量子化器の動作を示すフローチャート
【図６Ｆ】同多段型ノイズシェーピング型量子化器を示すブロック図
【図６Ｇ】同多段型ノイズシェーピング型量子化器の出力制御器を示すブロック図
【図６Ｈ】同多段型ノイズシェーピング型量子化器の動作を示すフローチャート
【図６Ｉ】同単積分型ノイズシェーピング型量子化器の動作を示すフローチャート
【図６Ｊ】同単積分型ノイズシェーピング型量子化器の動作を示すフローチャート
【図７】従来の多段型ノイズシェーピング型量子化器を示すブロック図
【図８】従来のメインループ局部量子化器の入出力関係図を示す説明図
【符号の説明】
【０２６２】
１１、１２、１６、１１０、１１８    加算器
１３    第１の局部量子化器
１４    リミッタ
１５    誤差蓄積回路
１７、１１２、１１５    減算器
１８、１１６    遅延器
１９    メインループ（第１のノイズシェーピング型量子化器）
１１１    第２の局部量子化器
１１３    帰還回路
１１４    サブループ（第２のノイズシェーピング型量子化器）
１１７    微分器
１１９    帰還回路１１３の出力に応じて第１の局部量子化器１３への入力に加算される信号
１２０    帰還回路１１３の出力信号
１２１    第１のノイズシェーピング型量子化器の量子化誤差を計算するための出力
【図１Ａ】
0004788422.tif 000002
【図１Ｂ】
0004788422.tif 000003
【図１Ｃ】
0004788422.tif 000004
【図１Ｄ】
0004788422.tif 000005
【図１Ｅ】
0004788422.tif 000006
【図１Ｆ】
0004788422.tif 000007
【図１Ｇ】
0004788422.tif 000008
【図１Ｈ】
0004788422.tif 000009
【図２Ａ】
0004788422.tif 000010
【図２Ｂ】
0004788422.tif 000011
【図２Ｃ】
0004788422.tif 000012
【図２Ｄ】
0004788422.tif 000013
【図３Ａ】
0004788422.tif 000014
【図３Ｂ】
0004788422.tif 000015
【図３Ｃ】
0004788422.tif 000016
【図３Ｄ】
0004788422.tif 000017
【図４Ａ】
0004788422.tif 000018
【図４Ｂ】
0004788422.tif 000019
【図４Ｃ】
0004788422.tif 000020
【図５Ａ】
0004788422.tif 000021
【図５Ｂ】
0004788422.tif 000022
【図５Ｃ】
0004788422.tif 000023
【図５Ｄ】
0004788422.tif 000024
【図５Ｅ】
0004788422.tif 000025
【図５Ｆ】
0004788422.tif 000026
【図５Ｇ】
0004788422.tif 000027
【図５Ｈ】
0004788422.tif 000028
【図５Ｉ】
0004788422.tif 000029
【図５Ｊ】
0004788422.tif 000030
【図６Ａ】
0004788422.tif 000031
【図６Ｂ】
0004788422.tif 000032
【図６Ｃ】
0004788422.tif 000033
【図６Ｄ】
0004788422.tif 000034
【図６Ｅ】
0004788422.tif 000035
【図６Ｆ】
0004788422.tif 000036
【図６Ｇ】
0004788422.tif 000037
【図６Ｈ】
0004788422.tif 000038
【図６Ｉ】
0004788422.tif 000039
【図６Ｊ】
0004788422.tif 000040
【図７】
0004788422.tif 000041
【図８】
0004788422.tif 000042