(57)【特許請求の範囲】
【請求項１】
入力データの取り込み周波数より高い周波数のクロックでフィルタリングするオーバサンプリングＦＩＲフィルタであって、
縦続接続された複数の保持部を有し、入力データを順次に受けるシフトレジスタと、
前記保持部に対応してそれぞれ形成され、複数のタップ係数のうち所定のタップ係数を前記クロックに同期して順次に選択する複数のセレクタと、
前記保持部に対応してそれぞれ形成され、該保持部に保持された前記入力データと、該保持部に対応する前記セレクタで選択された前記タップ係数とを乗算する複数の乗算器と、
前記乗算器の乗算結果を加算し、出力データとして出力する加算器とを備え、
互いに隣接する一対の前記保持部に対応する一対の前記セレクタがそれぞれ選択可能な前記複数のタップ係数の一部は、重複しており、
前記複数のセレクタ全体で前記複数のタップ係数を順次に選択するために、前記各セレクタは、１つの前記入力データに対して乗算されるタップ係数の数であるオーバサンプリング数の変更に応じて、選択する前記所定のタップ係数を変更することを特徴とするオーバサンプリングＦＩＲフィルタ。
【請求項２】
請求項１記載のオーバサンプリングＦＩＲフィルタにおいて、
前記オーバサンプリング数の変更に応じて、前記入力データの取り込み後に前記セレクタが最初に選択する前記タップ係数を該セレクタに指示するタップ制御部を備えていることを特徴とするオーバサンプリングＦＩＲフィルタ。
【請求項３】
請求項１記載のオーバサンプリングＦＩＲフィルタにおいて、
前記タップ制御部は、前記オーバサンプリング数が変更されたとき、前記入力データの取り込み毎に、順次入力側の前記保持部に対応する前記セレクタから、前記セレクタが選択する前記タップ係数を前記オーバサンプリング数の変更前の前記所定のタップ係数に戻す制御を行うことを特徴とするオーバサンプリングＦＩＲフィルタ。
【請求項４】
入力データの取り込み周波数より高い周波数のクロックでフィルタリングするオーバサンプリングＦＩＲフィルタの制御方法であって、
縦続接続された複数の保持部を有するシフトレジスタで、入力データを順次に受け、
前記保持部に対応してそれぞれ形成された複数のセレクタで、複数のタップ係数のうち所定のタップ係数を前記クロックに同期して順次に選択し、
前記保持部に保持された前記入力データと、該保持部に対応する前記セレクタで選択された前記タップ係数とを乗算し、
前記乗算の結果を加算して出力データとして出力し、
互いに隣接する一対の前記保持部に対応する一対の前記セレクタがそれぞれ選択可能な前記複数のタップ係数の一部は、重複しており、
前記複数のセレクタ全体で前記複数のタップ係数を順次に選択するために、前記各セレクタが選択する前記所定のタップ係数を、１つの前記入力データに対して乗算されるタップ係数の数であるオーバサンプリング数の変更に応じて変更することを特徴とするオーバサンプリングＦＩＲフィルタの制御方法。
【請求項５】
請求項４記載のオーバサンプリングＦＩＲフィルタの制御方法であって、
前記オーバサンプリング数の変更に応じて、前記入力データの取り込み後に前記セレクタが最初に選択する前記タップ係数を該セレクタに指示することを特徴とするオーバサンプリングＦＩＲフィルタの制御方法。
【請求項６】
請求項４記載のオーバサンプリングＦＩＲフィルタの制御方法であって、
前記オーバサンプリング数が変更されたとき、前記入力データの取り込み毎に、順次入力側の前記保持部に対応する前記セレクタから、前記セレクタが選択する前記タップ係数を前記オーバサンプリング数の変更前のタップ係数に戻す制御を行うことを特徴とするオーバサンプリングＦＩＲフィルタの制御方法。
【請求項７】
オーサンプリングＦＩＲフィルタを有する半導体集積回路であって、
前記オーバサンプリングＦＩＲフィルタは、
縦続接続された複数の保持部を有し、入力データを順次に受けるシフトレジスタと、
前記保持部に対応してそれぞれ形成され、複数のタップ係数のうち所定のタップ係数を前記クロックに同期して順次に選択する複数のセレクタと、
前記保持部に対応してそれぞれ形成され、該保持部に保持された前記入力データと、該保持部に対応する前記セレクタで選択された前記タップ係数とを乗算する複数の乗算器と、
前記乗算器の乗算結果を加算し、出力データとして出力する加算器とを備え、
互いに隣接する一対の前記保持部に対応する一対の前記セレクタがそれぞれ選択可能な前記複数のタップ係数の一部は、重複しており、
前記複数のセレクタ全体で前記複数のタップ係数を順次に選択するために、前記各セレクタは、１つの前記入力データに対して乗算されるタップ係数の数であるオーバサンプリング数の変更に応じて、選択する前記所定のタップ係数を変更することを特徴とするオーサンプリングＦＩＲフィルタを有する半導体集積回路。
【請求項８】
オーバサンプリングＦＩＲフィルタでフィルタリングされたデータを送信する通信システムであって、
前記オーバサンプリングＦＩＲフィルタは、
縦続接続された複数の保持部を有し、入力データを順次に受けるシフトレジスタと、
前記保持部に対応してそれぞれ形成され、複数のタップ係数のうち所定のタップ係数を前記クロックに同期して順次に選択する複数のセレクタと、
前記保持部に対応してそれぞれ形成され、該保持部に保持された前記入力データと、該保持部に対応する前記セレクタで選択された前記タップ係数とを乗算する複数の乗算器と、
前記乗算器の乗算結果を加算し、出力データとして出力する加算器とを備え、
互いに隣接する一対の前記保持部に対応する一対の前記セレクタがそれぞれ選択可能な前記複数のタップ係数の一部は、重複しており、
前記複数のセレクタ全体で前記複数のタップ係数を順次に選択するために、前記各セレクタは、１つの前記入力データに対して乗算されるタップ係数の数であるオーバサンプリング数の変更に応じて、選択する前記所定のタップ係数を変更することを特徴とするオーバサンプリングＦＩＲフィルタでフィルタリングされたデータを送信する通信システム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、移動通信システムの携帯機等に使用されるオーバサンプリングＦＩＲフィルタに関する。
【０００２】
【従来の技術】
ＦＩＲ（Finete Impulse Response）フィルタは、アナログフィルタでは実現できない直線位相特性、伝達関数、安定性を有しているため、通信装置、オーディオ装置などの様々な用途に利用されている。特に、ディジタル移動通信方式の一つであるCDMA（符号分割多元接続; Code Division Multiple Access）等のフィルタに適用する場合に有効である。ＦＩＲフィルタでは、フィルタの阻止域の安定性を図るためオーバサンプリング方式が主流になっている。
【０００３】
この種のオーバサンプリングＦＩＲフィルタとして、例えば、特開平８−３７４４４号公報に開示されるものが知られている。
この公報に開示されるオーバサンプリングＦＩＲフィルタは、入力データを保持する複数の遅延子を備えたシフトレジスタと、係数選択回路と、加算器とを備えている。係数選択回路は、シフトレジスタの遅延子からの出力値とタイミング信号とに応じて所定のタップ係数を発生する。加算器は、係数選択回路から出力される複数のタップ係数の和を求める。
【０００４】
オーバサンプリングＦＩＲフィルタを上記のように構成にすることで、シフトレジスタの遅延子の数を、入力データのサンプリングの数に対応する数だけ持つ必要がなくなる。この結果、加算器の規模が低減され、通常のオーバサンプリングＦＩＲフィルタに比べ、ハードウエア構成を簡単にできる。なお、以下の説明では、この種のオーバサンプリングＦＩＲフィルタを、タップ切替式のオーバサンプリングＦＩＲフィルタとも称する。
【０００５】
【発明が解決しようとする課題】
ところで、CDMA方式では、携帯機は、送信する信号を拡散コードを用いて拡散し、拡散したデータを基地局に向けて出力する。この際、基地局での受信データの位相を合わせるため、携帯機は、ＦＩＲフィルタにおけるオーバサンプリングの数を、携帯機と基地局との距離に応じて変えなくてはならない。上述したタップ切替式のＦＩＲフィルタは、入力データのオーバサンプリングの数に対応する数の遅延子を持っていない。このため、オーバサンプリングの数が変更された場合、その出力応答が不連続になるという問題があった。このため、オーバサンプリング数が変化するCDMA方式の携帯機に、タップ切替式のＦＩＲフィルタを採用することはできなかった。これに対して、オーバサンプリング数分の遅延子を有するオーバサンプリングＦＩＲフィルタは、タップ切替式のオーバサンプリングＦＩＲフィルタに比べ回路規模は大きいが、オーバサンプリング数に応じて入力データに付加するゼロデータの数を変えられるため、出力応答を連続にできる。
【０００６】
本発明の目的は、タップ切替式のオーバサンプリングＦＩＲフィルタにおいて、フィルタの動作中にオーバサンプリングの数が変更されても、フィルタの出力応答の連続性を保持することにある。
本発明の別の目的は、オーバサンプリングＦＩＲフィルタの回路規模を低減することにある。
【０００７】
【課題を解決するための手段】
請求項１のオーバサンプリングＦＩＲフィルタ、請求項５のオーバサンプリングＦＩＲフィルタの制御方法、請求項９のオーバサンプリングＦＩＲフィルタを有する半導体集積回路、および請求項１０のオーバサンプリングＦＩＲフィルタでフィルタリングされたデータを送信する通信システムでは、FIRフィルタにおける縦続接続された複数の保持部を有するシフトレジスタは、入力データを受け、受けた入力データを順次にシフトし、各保持部から出力する。保持部に対応してそれぞれ形成された複数のセレクタは、複数のタップ係数のうち所定のタップ係数をクロックに同期して順次に選択する。ここで、オーバサンプリング数は、入力データが変化する周期において、乗算されるタップ係数の数の和である。換言すれば、オーバサンプリング数は、データに対して１つのセレクタが選択するタップ係数の数の和である。乗算器は、保持部に保持された入力データと、保持部に対応するセレクタで選択されたタップ係数とを乗算する。乗算の結果は、加算器で加算され出力データとして出力される。
【０００８】
このオーバサンプリングＦＩＲフィルタでは、オーバサンプリング数の変更に応じて、セレクタが選択するタップ係数を変更することで、出力データの連続性が保持される。従来は、出力データの連続性を保持するためにオーバサンプリング数に対応する数の保持部を備える必要があった。本発明では、オーバサンプリング数に対応する数の保持部を備える必要がないため、オーバサンプリングＦＩＲフィルタの回路規模が低減される。
【０００９】
請求項２のオーバサンプリングＦＩＲフィルタおよび請求項６のオーバサンプリングＦＩＲフィルタの制御方法では、セレクタが選択可能な複数のタップ係数の一部は、重複している。このため、オーバサンプリング数の変更に応じて、セレクタが選択するタップ係数が変更された場合にも、入力データとの乗算が必要なタップ係数は、セレクタ全体で確保される。この結果、出力データの連続性が保持される。
【００１０】
請求項３のオーバサンプリングＦＩＲフィルタおよび請求項７のオーバサンプリングＦＩＲフィルタの制御方法では、オーバサンプリング数に応じて、入力データの取り込み後にセレクタが最初に選択するタップ係数が、セレクタに指示される。この指示は、フィルタ内のタップ制御部、フィルタ外のタップ制御部、あるいはソフトウエアが行う。セレクタは、上記指示に従いタップ係数を選択すればよい。このため、制御機構が簡易になる。したがって、高速なフィルタリング動作が可能になる。また、制御機構が簡易なため、本発明の適用によりコストが上昇することはない。
【００１１】
請求項４のオーバサンプリングＦＩＲフィルタおよび請求項８のオーバサンプリングＦＩＲフィルタの制御方法では、オーバサンプリング数が変更されたとき、入力データの取り込み毎に、順次入力側の保持部に対応するセレクタから、セレクタが選択するタップ係数をオーバサンプリング数の変更前の所定のタップ係数に戻す制御が行われる。このため、オーバサンプリング数の変更後に、各セレクタは、入力データに応じた正しいタップ係数を選択することができる。この結果、オーバサンプリング数の変更の前後において、出力データの連続性が保持される。
【００１２】
【発明の実施の形態】
以下、本発明の実施形態を図面を用いて説明する。
図１は、本発明のオーバサンプリングＦＩＲフィルタ、オーバサンプリングＦＩＲフィルタの制御方法、およびオーバサンプリングＦＩＲフィルタを有する半導体集積回路、オーバサンプリングＦＩＲフィルタでフィルタリングされたデータを送信する通信システムの第１の実施形態を示している。この実施形態は、請求項１ないし請求項１０に対応している。
【００１３】
オーバサンプリングＦＩＲフィルタ２は、例えば、CDMA方式あるいはW-CDMA(Wideband-CDMA）方式の通信システムにおける携帯機４の送信回路６に使用される。送信回路６は、半導体製造技術を使用して、Si基板上にCMOSトランジスタ等を集積して１チップで形成されている。携帯機４から送信された信号は、基地局８で受信される。
【００１４】
図２は、オーバサンプリングＦＩＲフィルタ２の詳細を示している。
オーバサンプリングＦＩＲフィルタ２は、入力データを保持するフリップフロップFF0、FF1、FF2、FF3、FF4を入力側から直列に接続したシフトレジスタ１０と、フリップフロップFF0〜FF4に対応してそれぞれ形成されたセレクタSEL0、SEL1、SEL2、SEL3、SEL4および乗算器MLT0、MLT1、MLT2、MLT3、MLT4と、加算器ADTと、タップ制御部１２とを有している。
【００１５】
シフトレジスタ１０は、初段のフリップフロップFF0で入力データDIN受け、サンプリングトリガ信号STRGに同期して、受けたデータを順次出力側にシフトする。セレクタSEL0は、タップ係数C1、C2、C3、C4、C5を受け、タップ制御部１２からの制御信号に応じていずれかのタップ係数を順次選択し、出力する。セレクタSEL1は、タップ係数C4、C5、C6、C7、C8、C9を受け、タップ制御部１２からの制御信号に応じていずれかのタップ係数を順次選択し、出力する。セレクタSEL2は、タップ係数C8、C9、C10、C11、C12、C13を受け、タップ制御部１２からの制御信号に応じていずれかのタップ係数を順次選択し、出力する。セレクタSEL3は、タップ係数C12、C13、C14、C15、C16、“０”を受け、タップ制御部１２からの制御信号に応じていずれかのタップ係数を順次選択し、出力する。セレクタSEL4は、タップ係数C16または“０”を受け、タップ制御部１２からの制御信号に応じていずれかのタップ係数を選択し、出力する。ここで、例えば、セレクタSEL0、SEL1は、ともにタップ係数C4、C5を受けている。セレクタSEL1、SEL2は、ともにタップ係数C8、C9を受けている。このように、本実施形態では、互いに隣接するセレクタは、受けるタップ係数の一部が重複されている。すなわち、セレクタSEL0〜SEL4の構成は、従来と大きく異なる。
【００１６】
乗算器MLT0〜MLT4は、フリップフロップFF0〜FF4から出力される入力データDINと、セレクタSEL0〜SEL4から出力されるタップ係数とをそれぞれ乗算し、乗算結果を加算器ADTに出力している。加算器ADTは、乗算器MLT0からMLT4からの乗算結果を順次加算し、加算結果を出力データDOUTとして出力している。
タップ制御部１２は、サンプリングトリガ信号STRG、クロック信号CLK、およびタップトリガ信号TTRGを受け、セレクタSEL0〜SEL4にそれぞれ制御信号を出力している。サンプリングトリガ信号STRGは、入力データDINをシフトレジスタ１０内でシフトするための信号である。クロック信号CLKは、セレクタSEL〜SEL4においてタップ係数を順次に切り替えるための信号である。タップトリガ信号TTRGは、オーバサンプリング数を１だけ増加または減少させるための信号である。この実施形態では、タップトリガ信号TTRGの周波数は、クロック信号CLKの周波数の４倍にされている。すなわち、このＦＩＲフィルタ２は、１６タップ４倍オーバサンプリングのＦＩＲフィルタとして動作する。換言すれば、シフトレジスタ１０が入力データDINを１回シフトする毎に、セレクタSEL0〜SEL4は、タップ係数の選択動作をそれぞれ４回実行する。
【００１７】
図３は、タップトリガ信号TTRGの発生回路の例を示している。この発生回路１６は、例えば、図１に示した送信回路６内に形成されている。
この発生回路１６は、サンプリングトリガ信号STRGでリセットされクロック信号CLKでカウントアップする２進カウンタ１６ａと、タップトリガ信号TTRG(-)、TTRG(+)をそれぞれ生成するアンド回路１６ｂ、１６ｃとを有している。アンド回路１６ｂは、サンプリングトリガ信号STRGおよびカウンタ１６ａのカウンタ値“３”の活性化中に、タップトリガ信号TTRG(-)を出力する。アンド回路１６ｃは、サンプリングトリガ信号STRGおよびカウンタ１６ａのカウンタ値“５”の活性化中に、タップトリガ信号TTRG(+)を出力する。タップトリガ信号TTRG(-)、TTRG(+)は、タップトリガ信号TTRGとして図２に示したタップ制御部１２に供給される。そして、オーバサンプリング数が４回（標準）から３回、または４回から５回に変更されたとき、タップトリガ信号TTRG(-)、またはTTRG(+)がそれぞれ活性化される。
【００１８】
次に、上述したＦＩＲフィルタの動作を説明する。
図４は、ＦＩＲフィルタの動作中に、オーバサンプリング数が４回から３回に変更された場合を示している。
図２に示したセレクタSEL0〜SEL4は、タップ制御部１２の制御を受け、クロック信号CLKに同期してタップ係数を順次切り替える。また、セレクタSEL0〜SEL4は、タップ制御部１２の制御を受け、サンプリングトリガ信号STRGに同期して所定のタップ係数を選択する。枠内の数字は、セレクタSEL0〜SEL4が選択するタップ係数の番号を示している。
【００１９】
例えば、タップトリガ信号TTRGの非活性化中に、セレクタSEL0〜SEL4は、サンプリングトリガ信号STRGに同期してそれぞれタップ係数C1、C5、C9、C13、“０”を選択する（図４（ａ））。以後、セレクタSEL0〜SEL4は、サンプリングトリガ信号STRGが活性化されるまで、図２に示したタップ係数を図の左側から順に選択する。この結果、破線の太枠で示したように、セレクタSEL0〜SEL3は、１６個の連続したタップ係数C1〜C16を選択する。選択されたタップ係数C1〜C16は、入力データ（DIN）とそれぞれ乗算される。そして、乗算結果が加算させ、出力データ（DOUT）として出力される。
【００２０】
一方、オーバサンプリング数を１つ減少させる場合、サンプリングトリガ信号STRGの活性化間隔が１クロック分短くされる。そして、サンプリングトリガ信号STRGに同期してタップトリガ信号TTRG(-)が活性化される（図４（ｂ））。このとき、セレクタSEL0〜SEL4は、それぞれタップ係数C1、C4、C8、C12、C16を選択する（図４（ｃ））。すなわち、図２に示したタップ制御部１２は、オーバサンプリング数の変更に応じて、入力データDINの取り込み後にセレクタSEL0〜SEL4が最初に選択するタップ係数を、これ等セレクタSEL0〜SEL4に指示する。セレクタSEL1、SEL2、SEL3が選択するタップ係数C4、C8、C12は、各セレクタのオーバサンプリング数が４回（標準）のときに選択されるタップ係数C5、C9、C13より１つ前の値である。
【００２１】
この結果、タップトリガ信号TTRG(-)の活性化の前後において、セレクタSEL0は、タップ係数を順次C1、C2、C3、C1、C2、...に切り替える。セレクタSEL1は、タップ係数を順次C5、C6、C7、C4、C5、...に切り替える。セレクタSEL2は、タップ係数を順次C9、C10、C11、C8、C9、...に切り替える。セレクタSEL3は、タップ係数を順次C13、C14、C15、C12、C13、...に切り替える。セレクタSEL4は、タップ係数を順次“０”、“０”、“０”、C16、“０”、...に切り替える。セレクタSEL3がタップ係数をC16ではなくC12を選択するため、対応する入力データのオーバサンプリング数は３回になる。
【００２２】
次のサンプリングトリガ信号STRGの活性化時に、セレクタSEL0、SEL1は、それぞれ標準のタップ係数C1、C5を選択する（図４（ｄ））。セレクタSEL2、SEL3、SEL4は、それぞれ前回と同一のタップ係数C8、C12、C16を選択する。次のサンプリングトリガ信号STRGの活性化時に、セレクタSEL0〜SEL2は、それぞれ標準のタップ係数C1、C5、C9（図４（ｅ））を選択する。セレクタSEL3、SEL4は、それぞれ前回と同一のタップ係数C12、C16を選択する。次のサンプリングトリガ信号STRGの活性化時に、セレクタSEL0〜SEL3は、それぞれ標準のタップ係数C1、C5、C9、C13（図４（ｆ））を選択する。セレクタSEL4は、前回と同一のタップ係数C16を選択する。そして、次のサンプリングトリガ信号STRGの活性化時に、セレクタSEL0〜SEL4は、それぞれ標準のタップ係数C1、C5、C9、C13、“０”を選択する。
【００２３】
このように、サンプリングトリガ信号STRGの活性化の都度、図２に示した入力側のフリップフロップに対応するセレクタから順次タップ係数を標準の値に戻していくことで、オーバサンプリング数を減少させた後、実線の太枠で示したように、入力データ（DIN）は、順次にタップ係数C1〜C16と乗算され、出力データ（DOUT）として出力される。すなわち、出力応答の連続性が保持される。
【００２４】
図５は、ＦＩＲフィルタの動作中に、オーバサンプリング数が４回から５回に変更された場合を示している。なお、オーバサンプリング数が増加する場合、セレクタSEL4は、常に“０”を選択している。
オーバサンプリング数が４回のときの各セレクタSEL0〜SEL4の動作は、図４と同一であるため、説明を省略する。
【００２５】
一方、オーバサンプリング数を１つ増加させる場合、サンプリングトリガ信号STRGの活性化間隔が１クロック分長くされる。そして、サンプリングトリガ信号STRGに同期してタップトリガ信号TTRG(+)が活性化される（図５（ａ））。この後、セレクタSEL0〜SEL3は、それぞれタップ係数C1、C6、C10、C14を選択する（図５（ｂ））。セレクタSEL1〜SEL3が選択するタップ係数C6、C10、C14は、各セレクタのオーバサンプリング数が４回（標準）のときに選択されるタップ係数C5、C9、C13より一つ後の値である。
【００２６】
セレクタSEL3がタップ係数“０”を１回選択することで、対応する入力データのオーバサンプリング数は５回になる。
タップトリガ信号TTRG(+)の活性化の前後で、セレクタSEL0は、タップ係数を順次C1、C2、C3、C4、C5、C1、C2、...に切り替える。セレクタSEL1は、タップ係数を順次C5、C6、C7、C8、C9、C6、C7、...に切り替える。セレクタSEL2は、タップ係数を順次C9、C10、C11、C12、C13、C10、C11、...に切り替える。セレクタSEL3は、タップ係数を順次C13、C14、C15、C16、“０”、C14、C15、...に切り替える。セレクタSEL3がタップ係数“０”を選択するため、対応する入力データのオーバサンプリング数は５回になる。
【００２７】
次のサンプリングトリガ信号STRGの活性化時に、セレクタSEL0、SEL1は、それぞれ標準のタップ係数C1、C5を選択する（図５（ｃ））。セレクタSEL2、SEL3は、それぞれ前回と同一のタップ係数C10、C14、“０”を選択する。次のサンプリングトリガ信号STRGの活性化時に、セレクタSEL0〜SEL2は、それぞれ標準のタップ係数C1、C5、C9（図５（ｄ））を選択する。セレクタSEL3は、前回と同一のタップ係数C14を選択する。次のサンプリングトリガ信号STRGの活性化時に、セレクタSEL0〜SEL3は、それぞれ標準のタップ係数C1、C5、C9、C13を選択する（図５（ｅ））。
【００２８】
このように、サンプリングトリガ信号STRGの活性化の都度、図２に示した入力側のフリップフロップに対応するセレクタから順次タップ係数を標準の値に戻していくことで、オーバサンプリング数を増加させた後、太枠で示したように、入力データ（DIN）は、順次にタップ係数C1〜C16と乗算され、出力データ（DOUT）として出力される。すなわち、出力応答の連続性が保持される。
【００２９】
なお、この実施形態では、１つの入力データDINに対してフィルタの応答が続く期間に、オーバサンプリング数を１回だけ変更可能である。すなわち、図４において、１６回のオーバサンプリング期間（破線の太枠を含む期間）に、オーバサンプリング数を１だけ減少または増加できる。
【００３０】
以上、この実施形態では、オーバサンプリング数の変化に応じてセレクタSEL0〜SEL4が選択するタップ係数を変更した。このため、出力データDOUTの連続性を保持できる。オーバサンプリング数に対応する数の保持部を備える必要がないため、オーバサンプリングＦＩＲフィルタの回路規模を低減できる。
セレクタSEL0〜SEL4が選択可能なタップ係数の一部を重複させた。このため、入力データDINに対して選択すべきタップ係数を、セレクタ全体で確保でき、出力データDOUTの連続性を保持できる。
【００３１】
タップ制御部１２は、オーバサンプリング数に応じて、入力データDINの取り込み後にセレクタSEL0〜SEL4が最初に選択するタップ係数を指示した。セレクタSEL0〜SEL4は、上記指示に従いタップ係数を選択すればよいため、制御機構を簡易にできる。したがって、高速なフィルタリング動作が可能になる。また、制御機構が簡易なため、本発明の適用によりコストが上昇することを防止できる。
【００３２】
タップ制御部１２は、タップ係数の指示後におけるシフトレジスタ１０のシフト動作に対応して、セレクタSEL0〜SEL4が選択する所定のタップ係数を、順次入力側の保持部FF0〜FF4に対応するセレクタSEL0〜SEL4からオーバサンプリング数の変更前の所定のタップ係数に戻す制御を行った。このため、オーバサンプリング数の変更の前後において、出力データDOUTの連続性を保持できる。
【００３３】
図６は、本発明の第２の実施形態におけるオーバサンプリングＦＩＲフィルタ１８を示している。この実施形態は、請求項１ないし請求項１０に対応している。第１の実施形態で説明した回路・信号と同一の回路・信号については、同一の符号を付し、これ等については、詳細な説明を省略する。
オーバサンプリングＦＩＲフィルタ１８は、第１の実施形態と同様、例えば、CDMA方式あるいはW-CDMA(Wideband-CDMA）方式の通信システムにおける携帯機の送信回路（半導体集積回路）に使用される。この実施形態では、第１の実施形態のタップ制御部１２の代わりに、タップ制御部２０が形成されている。その他の構成は、第１の実施形態と同一である。
【００３４】
また、セレクタSEL0〜SEL4が選択可能なタップ係数は、次式（１）、（２）により求められる。式（１）、（２）は、標準の４つのタップ係数（例えば、SEL1では、タップ係数C5〜C8）に対して、前後にそれぞれ必要なタップ係数の数を表している。
OVR×(SL＋1)−{(OVR−１)×SL＋OVR}        ‥‥‥（１）
OVR×(SL＋1)−(OVR−１)×(SL＋1)        ‥‥‥（２）
（OVR：オーバサンプリング数、SL：セレクタSELの番号）
すなわち、セレクタSEL0は、標準のタップ係数C1、C2、C3、C4に対して前に０、後に１つ付加したタップ係数C1、C2、C3、C4、C5を選択可能である。セレクタSEL1は、標準のタップ係数C5、C6、C7、C8に対して前に１つ、後に２つ付加したタップ係数C4、C5、C6、C7、C8、C9、C10を選択可能である。セレクタSEL2は、標準のタップ係数C9、C10、C11、C12に対して前に２つ、後に３つ付加したタップ係数タップ係数C7、C8、C9、C10、C11、C12、C13、C14、C15を選択可能である。セレクタSEL3は、標準のタップ係数C13、C14、C15、C16に対して前に３つ、後に４つ付加したタップ係数C10、C11、C12、C13、C14、C15、C16、“０”、“０”、“０”、“０”を選択可能である。セレクタSEL4は、標準のタップ係数“０”、“０”、“０”、“０”に対して前に４つ、後に５つ付加したタップ係数“０”、．．．を選択可能である。上記のように、タップ係数C16の後は、全て“０”になる。
【００３５】
タップ制御部２０は、シフトレジスタ１０のフリップフロップFF0〜FF4に対応するフリップフロップ（図示せず）を有し、受けたタップトリガ信号TTRG(-)、TTRG(+)およびその時間を保持している。タップ制御部２０は、フリップフロップに保持された情報に基づいて、セレクタSEL0〜SEL4が選択するタップ係数を制御する。
【００３６】
この実施形態では、１つの入力データDINに対してフィルタの応答が続く期間に、オーバサンプリング数を１ずつ複数回にわたり減少または増加可能である。
ここで、上述した式（１）、（２）から求められる選択可能なタップ係数の数は、フィルタの応答が続く範囲において最大の変化量分が必要な数である。
図７は、ＦＩＲフィルタの動作中に、オーバサンプリング数が連続して２回減少された場合を示している。すなわち、タップトリガ信号TTRG(-)は、サンプリングトリガ信号STRGに同期して連続して２回活性化される。最初のタップトリガ信号TTRG(-)の活性化に伴う動作（図７（ａ））は、上述した図４と同一のため、説明を省略する。
【００３７】
２番目のタップトリガ信号TTRG(-)が活性化されたとき（図７（ｂ））、セレクタSEL0〜SEL4は、最初のタップトリガ信号TTRG(-)の活性化に伴って選択したタップ係数とは異なるタップ係数を選択する。
まず、セレクタSEL0〜SEL4は、それぞれタップ係数C1、C4、C7、C11、C15を選択する（図７（ｃ））。セレクタSEL1が選択するタップ係数C4、は、オーバサンプリング数が４回（標準）のときに選択されるタップ係数C5より１つ前の値である。セレクタSEL2、SEL3が選択するタップ係数C7、C11は、オーバサンプリング数が標準のときに選択されるタップ係数C9、C13より２つ前の値である。
【００３８】
この結果、タップトリガ信号TTRG(-)の活性化の前後において、セレクタSEL0は、タップ係数を順次C1、C2、C3、C1、C2、...に切り替える。セレクタSEL1は、タップ係数を順次C4、C5、C6、C4、C5、...に切り替える。セレクタSEL2は、タップ係数を順次C8、C9、C10、C7、C8、...に切り替える。セレクタSEL3は、タップ係数を順次C12、C13、C14、C11、C12、...に切り替える。セレクタSEL4は、タップ係数を順次C16、“０”、“０”、C15、C16、...に切り替える。セレクタSEL3がタップ係数をC15ではなくC11を選択するため、対応する入力データのオーバサンプリング数が“３”のデータ区間は２回になる。
【００３９】
次のサンプリングトリガ信号STRGの活性化時に、セレクタSEL0、SEL1は、それぞれ標準のタップ係数C1、C5を選択する。セレクタSEL2は、前回選択したタップ係数C7より１つ後のタップ係数C8を選択する（図７（ｄ））。セレクタSEL3、SEL4は、それぞれ前回と同一のタップ係数C11、C15を選択する。次のサンプリングトリガ信号STRGの活性化時に、セレクタSEL0〜SEL2は、それぞれ標準のタップ係数C1、C5、C9を選択する（図７（ｅ））。セレクタSEL3は、前回選択したタップ係数C11より１つ後のタップ係数C12を選択する。セレクタSEL4は、前回と同一のタップ係数C15を選択する。次のサンプリングトリガ信号STRGの活性化時に、セレクタSEL0〜SEL3は、それぞれ標準のタップ係数C1、C5、C9、C13を選択する（図７（ｆ））。セレクタSEL4は、前回選択したタップ係数C15より１つ後のタップ係数C16を選択する。そして、次のサンプリングトリガ信号STRGの活性化時に、セレクタSEL0〜SEL4は、それぞれ標準のタップ係数C1、C5、C9、C13、“０”を選択する（図７（ｇ））。
【００４０】
この結果、オーバサンプリング数が連続して複数回減少される場合にも、出力応答の連続性が保持される。
図８は、ＦＩＲフィルタの動作中に、オーバサンプリング数が連続して２回増加された場合を示している。すなわち、タップトリガ信号TTRG(+)は、サンプリングトリガ信号STRGに同期して連続して２回活性化される。最初のタップトリガ信号TTRG(+)の活性化に伴う動作（図８（ａ））は、上述した図５と同一のため、説明を省略する。また、タップトリガ信号TTRG(+)が活性化される場合、セレクタSEL4には、常に“０”が供給される。このため、セレクタSEL4の説明は省略する。
【００４１】
２番目のタップトリガ信号TTRG(+)が活性化されたとき（図８（ｂ））、セレクタSEL0、SEL1、SEL2、SEL3は、最初のタップトリガ信号TTRG(+)の活性化に伴って選択したタップ係数とは異なるタップ係数を選択する。これらの制御は、タップ制御部２６が行う。
まず、セレクタSEL0〜SEL3は、それぞれタップ係数C1、C6、C11、C15を選択する（図８（ｃ））。セレクタSEL1が選択するタップ係数C6およびセレクタSEL2、SEL3が選択するタップ係数C11、C15は、各セレクタのオーバサンプリング数が４回（標準）のときに選択されるタップ係数C5より一つ後、およびタップ係数C9、C13より二つ後の値である。
【００４２】
タップトリガ信号TTRG(+)の活性化の前後で、セレクタSEL0は、タップ係数を順次C2、C3、C4、C5、C1、C2、...に切り替える。セレクタSEL1は、タップ係数を順次C7、C8、C9、C10、C6、C7、...に切り替える。セレクタSEL2は、タップ係数を順次C11、C12、C13、C14、C11、C12、...に切り替える。セレクタSEL3は、タップ係数を順次C15、C16、“０”、“０”、C15、C16、...に切り替える。セレクタSEL3がタップ係数“０”を２回選択することで、対応する入力データのオーバサンプリング数が“５”のデータ区間が２回になる。
【００４３】
次のサンプリングトリガ信号STRGの活性化時に、セレクタSEL0、SEL1は、それぞれ標準のタップ係数C1、C5を選択する（図８（ｄ））。セレクタSEL2は、前回より１つ前のタップ係数C10を選択する。セレクタSEL3は、前回と同一のタップ係数C15を選択する。次のサンプリングトリガ信号STRGの活性化時に、セレクタSEL0〜SEL2は、それぞれ標準のタップ係数C1、C5、C9（図８（ｅ））を選択する。セレクタSEL3は、前回より１つ前のタップ係数C14を選択する。次のサンプリングトリガ信号STRGの活性化時に、セレクタSEL0〜SEL3は、それぞれ標準のタップ係数C1、C5、C9、C13を選択する（図８（ｆ））。
【００４４】
この結果、オーバサンプリング数が連続して複数回増加される場合にも、出力応答の連続性が保持される。
図９は、ＦＩＲフィルタの動作中に、オーバサンプリング数が標準より１回減少された後、すぐに標準より１回増加された場合を示している。すなわち、タップトリガ信号TTRG(-)がサンプリングトリガ信号STRGに同期して活性化された後、TTRG(+)が活性化される。最初のタップトリガ信号TTRG(-)の活性化に伴う動作（図９（ａ））は、上述した図５と同一のため、説明を省略する。
【００４５】
タップトリガ信号TTRG(+)が活性化されたとき（図９（ｂ））、セレクタSEL0〜SEL3は、それぞれタップ係数C1、C6、C9、C13を選択する（図９（ｃ））。セレクタSEL0が選択するタップ係数は、オーバサンプリング数が標準のときに選択される値である。セレクタSEL1が選択するタップ係数C6は、オーバサンプリング数が標準のときに選択されるタップ係数C5より一つ前の値である。
【００４６】
タップトリガ信号TTRG(+)の活性化の前後で、セレクタSEL0は、タップ係数を順次C2、C3、C4、C5、C1、C2、...に切り替える。セレクタSEL1は、タップ係数を順次C5、C6、C7、C8、C6、C7、...に切り替える。セレクタSEL2は、タップ係数を順次C9、C10、C11、C12、C9、C10、...に切り替える。セレクタSEL3は、タップ係数を順次C13、C14、C15、C16、C13、C14、...に切り替える。
【００４７】
次のサンプリングトリガ信号STRGの活性化時に、セレクタSEL0、SEL1、SEL3は、それぞれ標準のタップ係数C1、C5、C13（図９（ｄ））を選択する。セレクタSEL2は、前回より１つ後のタップ係数C10を選択する。次のサンプリングトリガ信号STRGの活性化時に、セレクタSEL0〜SEL2は、それぞれ標準のタップ係数C1、C5、C9を選択する（図９（ｅ））。セレクタSEL3は、前回より１つ後のタップ係数C14を選択する。次のサンプリングトリガ信号STRGの活性化時に、セレクタSEL0〜SEL3は、それぞれ標準のタップ係数C1、C5、C9、C13を選択する（図９（ｆ））。
【００４８】
この結果、オーバサンプリング数の減少、増加が連続する場合にも、出力応答の連続性が保持される。
この実施形態においても、上述した第１の実施形態と同様の効果を得ることができる。さらに、この実施形態では、１つの入力データDINに対してフィルタの応答が続く期間に、オーバサンプリング数の減少、増加を連続して変更することができる。
【００４９】
図１０は、本発明の第３の実施形態におけるオーバサンプリングＦＩＲフィルタ２２を示している。この実施形態は、請求項１ないし請求項１０に対応している。第１の実施形態で説明した回路・信号と同一の回路・信号については、同一の符号を付し、これ等については、詳細な説明を省略する。
【００５０】
オーバサンプリングＦＩＲフィルタ２２は、第１の実施形態と同様、例えば、CDMA方式あるいはW-CDMA(Wideband-CDMA）方式の通信システムにおける携帯機の送信回路（半導体集積回路）に使用される。
この実施形態では、オーバサンプリングＦＩＲフィルタ２２は、入力データを保持する１６個のフリップフロップFF0〜FF15を入力側から直列に接続したシフトレジスタ３２と、フリップフロップFF0〜FF15に対応してそれぞれ形成されたセレクタSEL0〜SEL15および乗算器MLT0〜MLT15と、加算器ADTと、タップ制御部２４とを有している。乗算器MLT0〜MLT15は、フリップフロップFF0〜FF15から出力される入力データDINと、セレクタSEL0〜SEL15から出力されるタップ係数とをそれぞれ乗算し、乗算結果を加算器ADTに出力している。  タップ制御部２４は、フリップフロップFF0〜FF15に対応するフリップフロップ（図示せず）を有し、受けたタップトリガ信号TTRGおよびその時刻を保持している。タップ制御部２４は、フリップフロップに保持された情報に基づいて、セレクタSEL0〜SEL15が選択するタップ係数を制御する。タップ制御部２４は、タップトリガ信号TTRGとして、TTRG(-3)、TTRG(-2)、TTRG(-1)、TTRG(+1)、TTRG(+2)、TTRG(+3)のいずれかを受ける。すなわち、この実施形態では、１つの入力データDINに対してフィルタの応答が続く期間に、オーバサンプリング数を最大“３”（後述するオーバサンプリング数の最大ずれ量M）だけ減少または増加可能である。その他、オーバサンプリングＦＩＲフィルタ２２内の基本的な接続関係は、第１の実施形態と同一である。
【００５１】
この実施形態では、セレクタSEL0〜SEL15が選択可能なタップ係数は、次式（３）、（４）により求められる。式（３）、（４）は、標準のタップ係数（４つ）に対して前、後にそれぞれ必要なタップ係数の数を表している。
OVR×(SL＋1)−{(OVR−M)×SL＋OVR}        ‥‥‥（３）
OVR×(SL＋1)−(OVR−M)×(SL＋1)        ‥‥‥（４）
（OVR：オーバサンプリング数、M：オーバサンプリング数の最大ずれ量、
SL：セレクタSEL0〜SEL15の番号）
次に、上述したオーバサンプリングＦＩＲフィルタの動作を説明する。なお、以下の例では、”０”以外のタップ係数を選択するセレクタのみを図示して説明する。
【００５２】
図１１は、ＦＩＲフィルタの動作中に、オーバサンプリング数が標準より２だけ減少された後、標準より３だけ増加された場合を示している。このとき、まずサンプリングトリガ信号STRGに同期してタップトリガ信号TTRG(-2)が活性化され、次にタップトリガ信号TTRG(+3)が活性化される。
タップ制御部２４は、フリップフロップに保持された情報に基づいて、セレクタSEL0〜SEL15が選択するタップ係数が連続するように、セレクタSEL0〜SEL15を制御する。そして、図の太枠で示すように、連続するタップ係数C1〜C16と入力データ（DIN）とが乗算される。この結果、出力応答の連続性が保持される。
【００５３】
図１２は、ＦＩＲフィルタの動作中に、オーバサンプリング数が標準より２だけ減少された後、さらに標準より３だけ減少された場合を示している。このとき、まずサンプリングトリガ信号STRGに同期してタップトリガ信号TTRG(-2)が活性化され、次にタップトリガ信号TTRG(-3)が活性化される。
図１３は、ＦＩＲフィルタの動作中に、オーバサンプリング数が標準より２だけ増加された後、さらに標準より３だけ増加された場合を示している。このとき、まずサンプリングトリガ信号STRGに同期してタップトリガ信号TTRG(+2)が活性化され、次にタップトリガ信号TTRG(+3)が活性化される。
【００５４】
図１２および図１３においても、太枠で示したように、連続するタップ係数C1〜C16と入力データ（DIN）とが乗算されるため、出力応答の連続性が保持される。
この実施形態においても、上述した第１の実施形態と同様の効果を得ることができる。さらに、この実施形態では、１つの入力データDINに対してフィルタの応答が続く期間に、オーバサンプリング数の複数の減少、増加を連続して変更することができる。
【００５５】
ここで、上述した式（３）、（４）から求められる選択可能なタップ係数の数は、フィルタの応答が続く範囲において最大の変化量分が必要な数である。
なお、上述した第１の実施形態では、セレクタSEL0〜SEL4は、タップ係数を外部から受けた例について述べた。本発明はかかる実施形態に限定されるものではない。例えば、セレクタSEL0〜SEL4内にタップ係数を予め記憶する回路を形成してもよい。
【００５６】
上述した実施形態では、図３に示した発生回路を送信回路６に形成した例について述べた。本発明はかかる実施形態に限定されるものではない。例えば、発生回路をＦＩＲフィルタ２を搭載する半導体集積回路とは別に形成してもよい。さらに、図３に示した発生回路１６をソフトウエアで形成してもよい。
以上、本発明について詳細に説明してきたが、上記の実施形態およびその変形例は発明の一例に過ぎず、本発明はこれに限定されるものではない。本発明を逸脱しない範囲で変形可能であることは明らかである。
【００５７】
【発明の効果】
請求項１、請求項２のオーバサンプリングＦＩＲフィルタ、請求項５、請求項６のオーバサンプリングＦＩＲフィルタの制御方法、請求項９のオーバサンプリングＦＩＲフィルタを有する半導体集積回路、および請求項１０のオーバサンプリングＦＩＲフィルタでフィルタリングされたデータを送信する通信システムでは、出力データの連続性を保持できる。オーバサンプリングＦＩＲフィルタの回路規模を低減できる。
【００５８】
請求項３のオーバサンプリングＦＩＲフィルタおよび請求項７のオーバサンプリングＦＩＲフィルタの制御方法では、所定のタップ係数の選択を指示する制御機構を簡易に構成できる。したがって、高速なフィルタリング動作が可能になる。また、制御機構が簡易なため、本発明の適用によりコストが上昇することを防止できる。
【００５９】
請求項４のオーバサンプリングＦＩＲフィルタおよび請求項８のオーバサンプリングＦＩＲフィルタの制御方法では、オーバサンプリング数の変更の前後において、出力データの連続性を保持できる。
【図面の簡単な説明】
【図１】本発明の第１の実施形態を示すブロック図である。
【図２】図１のＦＩＲフィルタの詳細を示すブロック図である。
【図３】タップトリガ信号の発生回路の例を示す回路図である。
【図４】第１の実施形態におけるＦＩＲフィルタの動作を示す説明図である。
【図５】第１の実施形態におけるＦＩＲフィルタの別の動作を示す説明図である。
【図６】本発明の第２の実施形態におけるＦＩＲフィルタを示すブロック図である。
【図７】第２の実施形態におけるＦＩＲフィルタの動作を示す説明図である。
【図８】第２の実施形態におけるＦＩＲフィルタの別の動作を示す説明図である。
【図９】第２の実施形態におけるＦＩＲフィルタの別の動作を示す説明図である。
【図１０】本発明の第３の実施形態におけるＦＩＲフィルタを示すブロック図である。
【図１１】第３の実施形態におけるＦＩＲフィルタの動作を示す説明図である。
【図１２】第３の実施形態におけるＦＩＲフィルタの別の動作を示す説明図である。
【図１３】第３の実施形態におけるＦＩＲフィルタの別の動作を示す説明図である。
【符号の説明】
２  オーバサンプリングＦＩＲフィルタ
４  携帯機
６  送信回路
８  基地局
１０  シフトレジスタ
１２  タップ制御部
１６  発生回路
１６ａ  ２進カウンタ
１６ｂ、１６ｃ  アンド回路
１８、２２  オーバサンプリングＦＩＲフィルタ
２０、２４  タップ制御部
ADT  加算器
C1〜C16  タップ係数
CLK  クロック信号
DIN  入力データ
DOUT  出力データ
FF0〜FF15  フリップフロップ
MLT0〜MLT15  乗算器
SEL0〜SEL15  セレクタ
STRG  サンプリングトリガ信号
TTRG  タップトリガ信号
【図１】
0004722266.tif 000002
【図２】
0004722266.tif 000003
【図３】
0004722266.tif 000004
【図４】
0004722266.tif 000005
【図５】
0004722266.tif 000006
【図６】
0004722266.tif 000007
【図７】
0004722266.tif 000008
【図８】
0004722266.tif 000009
【図９】
0004722266.tif 000010
【図１０】
0004722266.tif 000011
【図１１】
0004722266.tif 000012
【図１２】
0004722266.tif 000013
【図１３】
0004722266.tif 000014