首页 / 专利库 / 电信 / 数据通信总线 / 串行总线 / 现场总线 / Address generator, variable length field address sequencer and variable length field communicator for multichannel circular buffer type processing system

Address generator, variable length field address sequencer and variable length field communicator for multichannel circular buffer type processing system

阅读:656发布:2022-12-29

专利汇可以提供Address generator, variable length field address sequencer and variable length field communicator for multichannel circular buffer type processing system专利检索,专利查询,专利分析的服务。并且PURPOSE: To provide a fast address signal generator which supplies a proper address sequence to a memory device in a fast circular buffer type digital signal processing system that can extend its signal processing performance up to a miltiplexer channel. CONSTITUTION: A 1-chip address generator 170 generates a sequence of address signals which are supplied to a memory having plural circular buffers. An address generator chip can process the service requests given from plural channels based on the priority of the requests. The service requests can be received asynchronously with each other and at different speeds. The specific length or the overlapping value of channels can be assigned to each service of requests. Then a continuous pipeline structure is offered to process the service request of the next channel right after the service is over to the request of the first channel.,下面是Address generator, variable length field address sequencer and variable length field communicator for multichannel circular buffer type processing system专利的具体信息内容。

【特許請求の範囲】
  • 【請求項1】 複数のサーキュラバッファを有するメモリへ与えるためのアドレスシーケンスを発生させるためのアドレス生成器であって、 対応する1つ又はそれ以上のデータ供給チャネルから、
    1つ又はそれ以上のサービスリクエストを受け取るためのリクエスト受け取り手段、 1つよりも多いサービスリクエストが同時に受け取られた場合に、複数のサービスリクエストのうち最も高い優先順位を有する1つを選択するためのリクエスト優先化手段、及び該優先化手段によって選択された1つのサービスリクエストのサーキュラバッファに対応するアドレスのシーケンスを出力するためのアドレスシーケンス出力手段を備えているアドレス生成器。
  • 【請求項2】 集積回路チップをさらに備えており、その上に前記優先化手段及びアドレスシーケンス出力手段が規定されている請求項1に記載のアドレス生成器。
  • 【請求項3】 前記集積回路チップが、 一連のローカルクロックパルスを受け取るクロック受け取り手段、 オフチップ供給源からサービスリクエストを受け取り、
    それらをオンチップクロックへ同期させる同期手段、 対応するサーキュラバッファの開始をそれぞれ示す複数の開始ポインタを記憶するための開始ポインタメモリ手段、及び所定のサーキュラバッファの開始ポインタを変更するための開始ポインタ更新手段をさらに備えている請求項2に記載のアドレス生成器。
  • 【請求項4】 前記集積回路チップが、 前記オンチップ優先化手段の機能を選択的にバイパスして、それによってオフチップ優先化動作を可能とするバイパス手段をさらに備えている請求項2に記載のアドレス生成器。
  • 【請求項5】 複数のサーキュラバッファを有するメモリへ与えるためのアドレスシーケンスを発生させるためのアドレス生成器であって、 対応する1つ又はそれ以上のデータ供給チャネルから1
    つ又はそれ以上のサービスリクエストを受け取るためのリクエスト受け取り手段、 受け取られたリクエストに関連するデータ供給チャネルを識別し、該関連チャネルを表すチャネル番号信号を発生させるリクエスト識別手段、 該1つ又はそれ以上のデータ供給チャネルのうち1つにそれぞれ対応する複数の開始ポインタを記憶するための開始ポインタ記憶手段であって、該チャネル番号信号を受け取り、該チャネル番号信号によって識別されるチャネルの開始ポインタを示す開始ポインタ信号を応答的に出力するように操作的に連結されている開始ポインタ記憶手段、並びに該開始ポインタ記憶手段から出力される開始ポインタ信号及び該リクエスト識別手段から出力される対応チャネル番号信号を受け取るように連結されているアドレスシーケンス出力手段であって、該チャネル番号信号によって識別されるチャネルのサーキュラバッファに対応する上位の部分、及び該識別されたチャネルのサーキュラバッファ内の位置に対応する下位の部分をそれぞれ有するアドレスのシーケンスを出力するアドレスシーケンス出力手段を備えているアドレス生成器。
  • 【請求項6】 前記アドレスシーケンス出力手段によって出力されるアドレス信号のシーケンスの最初の信号が、前記識別されたサーキュラバッファに対する開始バッファ位置を表し、該アドレスシーケンス出力手段によって出力されるアドレス信号のシーケンスのその後の信号が、該開始バッファ位置に続く論理的に連続する位置を表す請求項5に記載のアドレス生成器。
  • 【請求項7】 前記開始ポインタ記憶手段に記憶される開始ポインタの値を変更するための開始ポインタ更新手段をさらに備えており、新しい開始ポインタは、変更前に特定された開始バッファ位置に論理的に先行するサーキュラバッファ位置を示すポインタである請求項6に記載のアドレス生成器。
  • 【請求項8】 前記開始ポインタ記憶手段に記憶されている開始ポインタの値を変更するための開始ポインタ更新手段をさらに備えている請求項5に記載のアドレス生成器。
  • 【請求項9】 集積回路チップをさらに備えており、その上には前記開始ポインタ記憶手段及びアドレスシーケンス出力手段が規定されている請求項5に記載のアドレス生成器。
  • 【請求項10】 集積回路チップをさらに備えており、
    その上には前記開始ポインタ記憶手段及びリクエスト識別手段が規定されている請求項5に記載のアドレス生成器。
  • 【請求項11】 複数のバッファを有するメモリへ与えるためのアドレスシーケンスを発生させるためのアドレス生成器であって、 該メモリバッファのうち1つを識別するバッファ識別信号を出力するためのバッファ識別手段[260、26
    3]、 複数のポインタであって、それぞれが該メモリバッファのうち1つに対応するポインタを記憶し、該バッファ識別手段によって識別されるメモリバッファのポンタを示すポインタ信号を出力するためのポインタ記憶手段[2
    65]、 該バッファ識別信号及び該ポインタ信号を受け取るように連結されており、結合信号を発生させるための信号結合手段[275]であって、該結合信号が該ポインタ信号の少なくとも一部を含み、該バッファ識別信号の一部又は全部を選択的に含む、信号結合手段、及び該結合信号を受け取り、その信号からアドレス信号のシーケンスを発生させる信号シーケンス付け手段[285]であって、該シーケンスのアドレス信号のそれぞれが該複数のメモリバッファのうち1つを識別する第1の部分と、該特定されたメモリバッファ内の特定位置を指す第2の部分を有している、信号シーケンス付け手段を備えているアドレス生成器。
  • 【請求項12】 前記ポインタ記憶手段に操作的に連結されており、該ポインタ記憶手段に記憶されているポインタを変更するためのポインタ更新手段[264、26
    8]であって、変更されたポインタが前記バッファ識別手段によって識別されたメモリバッファのポインタである、ポインタ更新手段をさらに備えている請求項11に記載のアドレス生成器。
  • 【請求項13】 前記メモリバッファのうち1つにそれぞれ対応する複数の長さの値を記憶し、前記バッファ識別手段によって識別される1つのメモリバッファの使用長を表す長さ信号を出力するための長さ記憶手段[21
    0]をさらに備えている請求項11に記載のアドレス生成器。
  • 【請求項14】 前記信号シーケンス付け手段に操作的に連結されており、該信号シーケンス付け手段によって発生されたアドレス信号のシーケンスに含まれるべきアドレス信号の数を示すための状態シーケンサ手段[28
    9、290]をさらに備えている請求項11に記載のアドレス生成器。
  • 【請求項15】 前記信号結合手段に操作的に連結されており、前記ポインタ信号のうちのどの部分が前記結合信号に含まれるべきかを決定し、さらに、あるとすれば前記バッファ識別信号のうちのどの部分が該結合信号に含まれるべきかを決定するためのフィールドサイズ制御手段[205]をさらに備えている請求項11に記載のアドレス生成器。
  • 【請求項16】 前記フィールドサイズ制御手段が、最初に供給されるバッファ数を表す信号[NCHS]及び2番めに供給されるメモリサイズ規定信号[MEMS
    Z]に応答しており、該数を表す信号[NCHS]が該メモリ内のバッファの数を示し、該メモリサイズ規定信号[MEMSZ]が該メモリの記憶容量を示す請求項1
    1に記載のアドレス生成器。
  • 【請求項17】 Nビット幅のアドレス信号[CBA
    O]の各ビットを記憶し出力するための複数のN個の記憶素子[300−319]、 該Nビット幅のアドレス信号を受け取り、その信号から修正されたNビット幅のアドレス信号を生成するアドレス修正器[320]、 該N個の記憶素子のうち1つの対応する入力に連結されている出力をそれぞれ有している複数のN個のデータフロウ型マルチプレクサ[330−349]、及び外部から供給されるチャネルビットを受け取る第1の入力及び外部から供給される定数ビットを受け取る第2の入力をそれぞれ有している複数のN個のチャネル保存用マルチプレクサ[360−379]を備えている可変長フィールドアドレスシーケンサであって、 該データフロウ型マルチプレクサのそれぞれが複数の入力端子[A、A'、B、C]を有しており、該入力端子の第1の端子[A]が対応する記憶素子の出力に連結されており、該入力端子の第2の端子[A']が該アドレス修正器の対応する出力に連結されており、該入力端子の第3の端子[B]が外部から供給されるポインタビットを受け取るように連結されており、該入力端子の第4
    の端子[C]が該N個のチャネル保存用マルチプレクサのうち対応する1つの出力に連結されている可変長フィールドアドレスシーケンサ[285]。
  • 【請求項18】 複数のコミュテータセルを備えている可変長フィールドコミュテータ[275]であって、該コミュテータセルのそれぞれが、 複数のチャネルビットであって、その数は所定範囲内であるチャネルビットを受け取る手段、 複数のポインタビットであって、その数は他の所定範囲内であるポインタビットを受け取る手段、 該受け取られたチャネルビットであって該可変長フィールドコミュテータによって出力されるべきチャネルビットの所定数を表すチャネルビット数信号[NCHB]を受け取る手段、 該可変長フィールドコミュテータの各セルの位置を、その他のセルとの相対位置として表すセル位置特定信号を受け取る手段、 該受け取られたチャネルビットのうち1ビット又は該受け取られたポインタビットのうち1ビットのうちいずれか一方を表すビット[Bxx]を出力するための信号出力手段、及び該チャネルビット数信号及び該セル位置特定信号に応じて、該受け取られたチャネルビットのうち1つを該信号出力手段へつなぐ信号ルーティング手段を備えている、可変長フィールドコミュテータ。
  • 【請求項19】 複数のサーキュラバッファを有するメモリへ与えられるアドレス信号のシーケンスを発生させる方法であって、 各開始ポインタが対応するサーキュラバッファの開始を特定する複数の開始ポインタをメモリに記憶するステップ、 該特定のサーキュラバッファの開始ポインタをメモリから読出し、該読み出された開始ポインタをシーケンスカウンタへ伝送するステップ、 該読み出された開始ポインタから更新された開始ポインタを発生させ、該読み出された開始ポインタが該シーケンスカウンタへ伝送された後に、該更新された開始ポインタをメモリに書き込むステップ、 該読み出された開始ポインタ信号をチャネル数信号と組み合わせて、絶対アドレスを生成するステップ、及び該絶対アドレスを該サーキュラバッファメモリユニットへ出力するステップを包含する方法。
  • 说明书全文

    【発明の詳細な説明】

    【0001】

    【産業上の利用分野】本発明は、一般に、ディジタル信号処理に関する。 さらに詳細には、本発明は、ディジタル信号処理システムに使用される連続したアドレス信号を生成する方法に関し、このディジタル処理システムは、複数のディジタルサンプル信号ソースから得られた入データに対して、有限インンパルス応答(FI
    R)、高速フーリエ変換(FFT)または他のサーキュラバッファ型処理を行う。

    【0002】以下の米国特許は、本願に関連する。 その開示を本願において参考のために引用する。

    【0003】(A)1990年3月13日付で発行された、B.
    Pathakらによる米国特許第4,908,748号 "DATA PROCESSI
    NG DEVICE WITH PARALLEL CIRCULAR ADDRESS HARDWARE"
    および(B)1991年7月16日付で発行された、B. Pathak
    らによる米国特許第5,032,986号 "DATA PROCESSING DEV
    ICE WITH PARALLEL CIRCULAR ADDRESS HARDWARE"。

    【0004】

    【従来の技術】従来、ディジタル信号処理(DSP)へのアプローチには、重みづけ出力を有するタップ遅延線を使用して、リアルタイム有限インパルス応答(FI
    R)フィルタリングを実行していた。 ディジタイズされたサンプルデータは、先のデータが受け取られると、クロックサイクル毎に1つの新しいデータ項目という割合で、タップ遅延線の前端部に入力し、そして古いデータ項目は、順番に遅延線の後部にシフトする。 加算手段は、タップ遅延線の重みづけ出力を加算するために設けられている。 連続した入力信号のフィルタバージョンは、経時的に、加算手段の出力に発生する。 FIRフィルタリング機構が異なると、遅延の長さおよび重みづけ係数の組合せも異なる。

    【0005】初期のDSP技術では、一連の直列同期シフトレジスタが、遅延線を限定するのに使用された。 ディジタル乗算器は、遅延線に取り付けられ、通常各シフトレジスタ毎に1つの乗算器が割り当てられ、シフトレジスタの出力を対応する重みづけ係数と乗算するのに使用された。 新しい入力データの任意の所定項目に適用され得るディレーの最大量は、システムクロック速度および一連の直列シフトレジスタの総数によって限定された。 この数は、時々、FIRフィルタの「長さ(lengt
    h)」と呼ばれる。 さらに、ディジタル加算手段は、シフトレジスタおよび/または乗算器の出力を収集して加算するために設けられた。

    【0006】近代的なDSP設計では、従来の一連の直列シフトレジスタに代わって、単一なランダムアクセスメモリユニット(RAM)が使用される。 入力データ項目(サンプルポイント値)は、受け取られると、RAM
    ユニットの特定のアドレス位置に書き込まれる。 この入力データ項目は、必要に応じて後に読み出され、反復的に動作する重みづけおよび加算処理ユニットに供給される。 重みづけおよび加算処理ユニットは、各読出しデータ項目を、対応の重みづけ係数によって乗算し、その結果をローリングサブトータルに加算する。 ローリングサブトータルは、従来のFIRフィルタの出力に対応する。

    【0007】サーキュラバッファ機構は、しばしば、R
    AMユニットに必要な記憶容量を最小にするのに使用される。 もはや必要のない古いサンプル値は、新しい入力データによってオーバーライトされる。 サーキュラバッファ管理システムは、どのRAM位置が、最も新しい、
    まだ使用中のデータ項目を保持しているか、およびどのRAM位置が、最も古い、通常破棄され得るデータ項目を記憶しているかを追跡する。

    【0008】サーキュラバッファアドレシングの管理は、入りデータのサンプル速度が比較的低い、例えば、
    1秒当り1000個の入力項目(データワード)であり、例えば64個のシフトレジスタと同等の所定フィルタ長を有する単一フィルタが装備されている場合には、取るに足らない。 10MHz以上のクロック速度で動作する汎用マイクロプロセッサは、バッファ管理計算を実行し、リアルタイムベースで、サンプル値をRAMへ記憶させ、および/またはRAMから取り出す、適切なアドレス信号のシーケンスを出力するのに使用され得る。

    【0009】

    【発明が解決しようとする課題】しかし、比較的多数の入力チャネルが異なるフィルタによってリアルタイムで同時に処理される場合、および/またはチャネルの結合データサンプリング速度がマイクロプロセッサのピーク処理速度を越える場合には、汎用マイクロプロセッサは、非常に遅い。 このことは、例えば、入りデータがマルチチャネル広帯域通信システム、ディジタルビデオソース、または他の任意の高スループットソースから到達する場合に発生する。

    【0010】近年、高性能なユーザー配置可能DSP集積回路ユニット類が紹介されている。 Sharp LH
    9124がその例である。 各LH9124 DSPユニットは、40MHz(1秒当り4 x 10 6の入力ワード)
    程度の速度で、48ビット幅の連続した入力ワードを処理することができ、各48ビットワードは、例えば、2
    4ビット実部および24ビット虚部から構成されている。 この発達により、ディジタル遠隔測定システム、ディジタル画像処理システム、ディジタルラジオ、ディジタルビデオ、ディジタルスピーチ処理システム、トモグラフィーシステム等によって生成されるリアルタイム信号の、商業上実用的なディジタル処理への道が開けた。

    【0011】しかし、このような高速度マルチチャネル環境におけるサーキュラバッファアドレス管理は、問題をかかえている。

    【0012】本発明は、上記課題を解決するためになされたものであり、その目的とするとろは、信号処理性能を多重チャネルに広げる能力を有するような、高速サーキュラバッファ型のディジタル信号処理(DSP)システムにおいて、適切なアドレスシーケンスをメモリデバイスに供給するための高速アドレス信号生成器を提供することである。

    【0013】

    【課題を解決するための手段】本発明によると、複数のサーキュラバッファを有するメモリへ与えるためのアドレスシーケンスを発生させるためのアドレス生成器であって、対応する1つ又はそれ以上のデータ供給チャネルから、1つ又はそれ以上のサービスリクエストを受け取るためのリクエスト受け取り手段、1つよりも多いサービスリクエストが同時に受け取られた場合に、複数のサービスリクエストのうち最も高い優先順位を有する1つを選択するためのリクエスト優先化手段、及び優先化手段によって選択された1つのサービスリクエストのサーキュラバッファに対応するアドレスのシーケンスを出力するためのアドレスシーケンス出力手段を備えているアドレス生成器が提供される。

    【0014】本発明の好ましい実施態様によると、アドレス生成器は、集積回路チップをさらに備えており、その上に優先化手段及びアドレスシーケンス出力手段が規定されている。

    【0015】本発明の他の好ましい実施態様によると、
    集積回路チップが、一連のローカルクロックパルスを受け取るクロック受け取り手段、オフチップ供給源からサービスリクエストを受け取り、それらをオンチップクロックへ同期させる同期手段、対応するサーキュラバッファの開始をそれぞれ示す複数の開始ポインタを記憶するための開始ポインタメモリ手段、及び所定のサーキュラバッファの開始ポインタを変更するための開始ポインタ更新手段をさらに備えている。

    【0016】本発明の他の好ましい実施態様によると、
    集積回路チップが、オンチップ優先化手段の機能を選択的にバイパスして、それによってオフチップ優先化動作を可能とするバイパス手段をさらに備えている。

    【0017】本発明によると、複数のサーキュラバッファを有するメモリへ与えるためのアドレスシーケンスを発生させるためのアドレス生成器であって、対応する1
    つ又はそれ以上のデータ供給チャネルから1つ又はそれ以上のサービスリクエストを受け取るためのリクエスト受け取り手段、受け取られたリクエストに関連するデータ供給チャネルを識別し、関連チャネルを表すチャネル番号信号を発生させるリクエスト識別手段、1つ又はそれ以上のデータ供給チャネルのうち1つにそれぞれ対応する複数の開始ポインタを記憶するための開始ポインタ記憶手段であって、チャネル番号信号を受け取り、チャネル番号信号によって識別されるチャネルの開始ポインタを示す開始ポインタ信号を応答的に出力するように操作的に連結されている開始ポインタ記憶手段、並びに開始ポインタ記憶手段から出力される開始ポインタ信号及びリクエスト識別手段から出力される対応チャネル番号信号を受け取るように連結されているアドレスシーケンス出力手段であって、チャネル番号信号によって識別されるチャネルのサーキュラバッファに対応する上位の部分、及び識別されたチャネルのサーキュラバッファ内の位置に対応する下位の部分をそれぞれ有するアドレスのシーケンスを出力するアドレスシーケンス出力手段を備えているアドレス生成器が提供される。

    【0018】本発明の好ましい実施態様によると、アドレスシーケンス出力手段によって出力されるアドレス信号のシーケンスの最初の信号が、識別されたサーキュラバッファに対する開始バッファ位置を表し、アドレスシーケンス出力手段によって出力されるアドレス信号のシーケンスのその後の信号が、開始バッファ位置に続く論理的に連続する位置を表す。

    【0019】本発明の他の好ましい実施態様によると、
    アドレス生成器は、開始ポインタ記憶手段に記憶される開始ポインタの値を変更するための開始ポインタ更新手段をさらに備えており、新しい開始ポインタは、変更前に特定された開始バッファ位置に論理的に先行するサーキュラバッファ位置を示すポインタである。

    【0020】本発明の他の好ましい実施態様によると、
    アドレス生成器は、開始ポインタ記憶手段に記憶されている開始ポインタの値を変更するための開始ポインタ更新手段をさらに備えている。

    【0021】本発明の他の好ましい実施態様によると、
    アドレス生成器は、集積回路チップをさらに備えており、その上には開始ポインタ記憶手段及びアドレスシーケンス出力手段が規定されている。

    【0022】本発明の他の好ましい実施態様によると、
    アドレス生成器は、集積回路チップをさらに備えており、その上には開始ポインタ記憶手段及びリクエスト識別手段が規定されている。

    【0023】本発明によると、複数のバッファを有するメモリへ与えるためのアドレスシーケンスを発生させるためのアドレス生成器であって、メモリバッファのうち1つを識別するバッファ識別信号を出力するためのバッファ識別手段[260、263]、複数のポインタであって、それぞれがメモリバッファのうち1つに対応するポインタを記憶し、バッファ識別手段によって識別されるメモリバッファのポンタを示すポインタ信号を出力するためのポインタ記憶手段[265]、バッファ識別信号及びポインタ信号を受け取るように連結されており、
    結合信号を発生させるための信号結合手段[275]であって、結合信号がポインタ信号の少なくとも一部を含み、バッファ識別信号の一部又は全部を選択的に含む、
    信号結合手段、及び結合信号を受け取り、その信号からアドレス信号のシーケンスを発生させる信号シーケンス付け手段[285]であって、シーケンスのアドレス信号のそれぞれが複数のメモリバッファのうち1つを識別する第1の部分と、特定されたメモリバッファ内の特定位置を指す第2の部分を有している、信号シーケンス付け手段を備えているアドレス生成器が提供される。

    【0024】本発明の好ましい実施態様によると、アドレス生成器は、ポインタ記憶手段に操作的に連結されており、ポインタ記憶手段に記憶されているポインタを変更するためのポインタ更新手段[264、268]であって、変更されたポインタがバッファ識別手段によって識別されたメモリバッファのポインタである、ポインタ更新手段をさらに備えている。

    【0025】本発明の他の好ましい実施態様によると、
    アドレス生成器は、メモリバッファのうち1つにそれぞれ対応する複数の長さの値を記憶し、バッファ識別手段によって識別される1つのメモリバッファの使用長を表す長さ信号を出力するための長さ記憶手段[210]をさらに備えている。

    【0026】本発明の他の実施態様によると、アドレス生成器は、信号シーケンス付け手段に操作的に連結されており、信号シーケンス付け手段によって発生されたアドレス信号のシーケンスに含まれるべきアドレス信号の数を示すための状態シーケンサ手段[289、290]
    をさらに備えている。

    【0027】本発明の他の実施態様によると、アドレス生成器は、信号結合手段に操作的に連結されており、ポインタ信号のうちのどの部分が結合信号に含まれるべきかを決定し、さらに、あるとすればバッファ識別信号のうちのどの部分が結合信号に含まれるべきかを決定するためのフィールドサイズ制御手段[205]をさらに備えている。

    【0028】本発明の他の実施態様によると、フィールドサイズ制御手段が、最初に供給されるバッファ数を表す信号[NCHS]及び2番めに供給されるメモリサイズ規定信号[MEMSZ]に応答しており、数を表す信号[NCHS]がメモリ内のバッファの数を示し、メモリサイズ規定信号[MEMSZ]がメモリの記憶容量を示す。

    【0029】本発明によると、Nビット幅のアドレス信号[CBAO]の各ビットを記憶し出力するための複数のN個の記憶素子[300−319]、Nビット幅のアドレス信号を受け取り、その信号から修正されたNビット幅のアドレス信号を生成するアドレス修正器[32
    0]、N個の記憶素子のうち1つの対応する入力に連結されている出力をそれぞれ有している複数のN個のデータ流れマルチプレクサ[330−349]、及び外部から供給されるチャネルビットを受け取る第1の入力及び外部から供給される定数ビットを受け取る第2の入力をそれぞれ有している複数のN個のチャネル保存用マルチプレクサ[360−379]を備えている可変長フィールドアドレスシーケンサであって、データ流れマルチプレクサのそれぞれが複数の入力端子[A、A'、B、
    C]を有しており、入力端子の第1の端子[A]が対応する記憶素子の出力に連結されており、入力端子の第2
    の端子[A']がアドレス修正器の対応する出力に連結されており、入力端子の第3の端子[B]が外部から供給されるポインタビットを受け取るように連結されており、入力端子の第4の端子[C]がN個のチャネル保存用マルチプレクサのうち対応する1つの出力に連結されている可変長フィールドアドレスシーケンサ[285]
    が提供される。

    【0030】本発明によると、複数のコミュテータセルを備えている可変長フィールドコミュテータ[275]
    であって、コミュテータセルのそれぞれが、複数のチャネルビットであって、その数は所定範囲内であるチャネルビットを受け取る手段、複数のポインタビットであって、その数は他の所定範囲内であるポインタビットを受け取る手段、受け取られたチャネルビットであって、可変長フィールドコミュテータによって出力されるべきチャネルビットの所定数を表すチャネルビット数信号[N
    CHB]を受け取る手段、可変長フィールドコミュテータの各セルの位置を、その他のセルとの相対位置として表すセル位置特定信号を受け取る手段、受け取られたチャネルビットのうち1ビット又は受け取られたポインタビットのうち1ビットのうちいずれか一方を表すビット[Bxx]を出力するための信号出力手段、及びチャネルビット数信号及びセル位置特定信号に応じて、受け取られたチャネルビットのうち1つを信号出力手段へつなぐ信号ルーティング手段を備えている、可変長フィールドコミュテータが提供される。

    【0031】本発明によると、複数のサーキュラバッファを有するメモリへ与えられるアドレス信号のシーケンスを発生させる方法であって、各開始ポインタが対応するサーキュラバッファの開始を特定する複数の開始ポインタをメモリに記憶するステップ、特定のサーキュラバッファの開始ポインタをメモリから読出し、読み出された開始ポインタをシーケンスカウンタへ伝送するステップ、読み出された開始ポインタから更新された開始ポインタを発生させ、読み出された開始ポインタがシーケンスカウンタへ伝送された後に、更新された開始ポインタをメモリに書き込むステップ、読み出された開始ポインタ信号をチャネル数信号と組み合わせて、絶対アドレスを生成するステップ、及び絶対アドレスをサーキュラバッファメモリユニットへ出力するステップを包含する方法が提供される。

    【0032】

    【作用】本発明のアドレス信号生成器は、連続して多数のチャネルをサービスする。 各チャネルは、独立した可変サンプル速度を有し得、DSPシステムは、チャネルに特異的な長さおよび/またはチャネルに特異的な重複値を使用して、所定のチャネルのデータを処理し得る。

    【0033】アドレス生成器の1つの実施態様は、集積回路チップを含む。 この集積回路チップには、オンチップアービトレーションユニット、複数のバッファ開始ポインタを記憶するSP(開始ポインタ)のレジスタファイル、SPのレジスタファイル内の特定の開始ポインタを更新する開始ポインタ更新ユニット、複数のフィルタ動作長(または重複値)を記憶するOLのレジスタファイル、特定のメモリユニットおよび所定の数のチャネルのサイズに対応するデータ構造を有するバッファ開始アドレス信号を生成する可変長フィールドコミュテータ(VFC)、および特定のメモリユニットの循環バッファエリア内の連続した位置を示すアドレス信号のシーケンスを出力する、可変長フィールドアドレス増分器が形成されている。

    【0034】アドレスシーケンス生成は、オンチップアービトレーションユニットが所定のチャネルからサービスリクエストを受け取ることにより開始する。 多数のチャネルからリクエストが同時に届いた場合には、アービトレーションユニットは、優先順位の最も高いリクエストを選択する(オフチップアービトレーションを可能にするために、バイパス手段が設けられている)。

    【0035】優先順位の最も高いチャネルのチャネル番号は、オンチップ開始ポインタ(SPの)レジスタファイルに供給される。 SPのレジスタファイルは、選択されたチャネルに対応する相対バッファ開始ポインタを出力する。 このポインタは、可変長フィールドコミュテータ(VFC)に送達され、そこで受け取られる。 同時に、オンチップSP更新ユニットは作動される。 SP更新ユニットは、予め存在していたSP値がVFCによって得られた直後に、SPのレジスタファイル内の選択されたチャネルに関して記憶されたSP値を更新し始める。

    【0036】可変長フィールドコミュテータ(VFC)
    は、複数の入力を有する。 1つのVFC入力は、開始ポインタ(SPの)レジスタファイルから伝送されたバッファ開始ポインタを受け取る。 可変長フィールドコミュテータのもう1つの入力は、選択されたチャネルのチャネル番号を受け取る。

    【0037】可変長フィールドコミュテータ(VFC)
    は、複数の入力を有する。 1つのVFC入力は、開始ポインタ(SPの)レジスタファイルから伝送されたバッファ開始ポインタを受け取る。 可変長フィールドコミュテータのもう1つの入力は、選択されたチャネルのチャネル番号を受け取る。

    【0038】可変長フィールドコミュテータは、さらに、MEMSIZE信号とNCHS信号とを受け取る。 MEMSIZE信号は、各チャネルのサーキュラバッファを記憶するのに使用されるメモリユニットのサイズを示し、NCHS信号は、
    メモリユニット内に記憶されたチャネルバッファの数を示す。 これらの信号に応答して、1ワード当り所定数のビットを有するが、可変データ構造を有するアドレス信号(GAS)をVFCは生成する。 生成アドレス信号(GAS)のより上位の可変幅部は、選択されたチャネルのチャネル番号、またはそのチャネル番号から得られるメモリブロックアドレスを示す。 生成アドレス信号(GAS)のより下位の可変幅部は、選択されたチャネルの相対バッファ開始ポインタ、または相対バッファ開始ポインタから得られるメモリローカルアドレスを示す。 VFCによって生成されるアドレス信号(GAS)
    の最上位端は、ゼロでパッドされても良い。

    【0039】生成アドレス信号(GAS)は、可変長フィールドアドレス増分器(VFAI)にロードする。 同時に、対応するフィルタ長値は、ステートコントローラにロードする。 VFAIは、自動増分したアドレス信号のシーケンスを出力し始める。 このとき、まず、VFC
    から最初にロードされた生成アドレス信号(GAS)から開始する。 一方、ステートコントローラは、選択されたチャネルに必要なアドレス信号の数を数え続ける。 バッファエリアの連続した循環からトップアドレスは、V
    FAIがバッファエリアのボトム制限に遭遇したときに発生する。

    【0040】パイプライン構造により、1つのチャネルリクエストのサービスから即座に次のチャネルリクエストサービスへと連続して移行することが可能になる。

    【0041】

    【実施例】図1および図2は、本発明のマルチチャネルディジタル信号処理システム100のブロック図である。 マルチチャネルディジタル信号処理システム100
    は、サーキュラバッファ145およびバッファ管理サブシステム(120、170、180)を含む。 サーキュラバッファ145は、スタティックランダムアクセスメモリユニット(SRAM)140内に形成された複数のサーキュラバッファ(CBの)の1つである。

    【0042】ディジタル入力サンプルは、1つまたは複数のデータ供給チャネル(CH1、CH2、CH3、C
    H4、. . . 、CHn、図面にはそのいくつかのみを示す)からDSPシステム100に入力する。 時間領域信号マルチプレクサ110は、しばしば、チャネルの1つからデータを、SRAMユニット140およびDSPシステム100の他の部分へ選択的に連結するために設けられている。

    【0043】供給チャネルの1つであるCH5は、量子化スイッチ111を有しているのが示されている。 スイッチ111は、規則的または非規則的に入り信号105
    をサンプルし、そのサンプルをマルチプレクサ110のCH5入力端子に供給する。 入り信号105は、アナログまたはディジタルであり得る。 入り信号105がアナログであるならば、図1に破線で示されるように、アナログディジタル変換器(A/D)112が、スイッチ1
    11とマルチプレクサ110のCH5入力端子との間に設けられ得る。 あるいは、すべてのチャネルがアナログ信号を受け取るならば、図1に破線で示されるように、
    共有のアナログディジタル変換器(A/D)113が、
    マルチプレクサ110の出力とメモリユニット140との間に設けられ得る。 あるいは、(図示されていないが)1つまたは少数のA/D変換器が設けられ、それぞれの変換器は、すべてのチャネルではなくそのサブセット毎に共有される。

    【0044】入り信号105は、生成されると、しばしば、リアルタイムでDSPシステム100に供給される。 しかし、入り信号105はまた、予め記録され、リアルタイム生成速度よりも遅い速度で再生され得る。

    【0045】チャネルサンプル速度制御器115は、C
    H5量子化スイッチ111の作動速度を制御する。 スイッチ111が一時的に閉じる毎に、新しいサンプル値は、マルチプレクサ110のCH5入力端子に現れる。
    そのサンプル信号は、さらに新しいサンプル信号によってオーバーライトされるまで有効である。 スイッチ11
    1が閉じると同時に、チャネル5サービスリクエスト信号(SR5)116は、CH5サンプル速度制御ユニット115からシステム100のチャネルスキャン制御ユニット120へ伝送される。

    【0046】図1は、1つのデータ供給チャネル(CH
    5)の全構造を示しているが、他のデータ供給チャネル(CH1からCHn)も存在する。 それぞれのデータ供給チャネルは、それぞれに対応する量子化スイッチ(1
    11)、速度制御ユニット(115)および/または他の適切な構成要素(例えば、チャネルサービシングA/
    D変換器112)を有する。 CH6サンプル速度制御ユニットを参照番号117で例示する。 CH6に対応する量子化スイッチ(図示されていない)が閉じる毎に、それぞれのSR6サービスリクエスト信号118は、CH
    6速度制御器117からスキャン制御ユニット120まで伝送される。 同様に、チャネルCHnの量子化スイッチが閉じると、SRnサービスリクエスト信号119
    は、CHn速度制御ユニット(図示されていない)からスキャン制御ユニット120へ伝送される。

    【0047】各チャネル(CH1からCHn)は、独立した非同期サンプリング速度で、入力サンプルをマルチプレクサ110のそれぞれに対応する入力端子に伝送し得る。 参照番号112で示されるように、個別のA/D
    変換器が、各チャネルに設けられ得るか、または参照番号113で示されるように、単一のA/D変換器がすべてのチャネルをサービスし得る。 すべてのチャネルの入り信号(105)がすでにディジタル形態であるならば、図示されるA/D変換器112または113は、設けなくてもよい。

    【0048】チャネルスキャン制御ユニット120は、
    受け取ったサービスリクエスト(SR1からSRn)のそれぞれを記憶し、ローカルクロック生成々器(LC)
    121のパルスと同期させる。 リクエスト優先化機能は、チャネルスキャン制御ユニット120内に設けられ、多数のサービスリクエストを同時に受け取った場合の状況に対応する。

    【0049】スキャン制御ユニット120は、破線で示される接続122のように、マルチプレクサ110に選択的に連結され、最優先リクエスティングチャネルからの入り信号(105)をマルチプレクサ110の出力端子に連結する。 あるいは、他の制御ユニット(図示されていない)は、マルチプレクサ110の記号的に示された接極子(シンボリック接極子)を駆動させ、マルチプレクサ110の出力端子を、リクエスティングチャネルのうち最優先のチャネルからの入り信号を受け取るように連結させる。

    【0050】図1は、チャネルCH5からのリクエストがサービスされる場合を示す。 マルチプレクサ110のシンボリック接極子は、CH5入り信号105を、メモリユニット140のデータ入力ポート(DI)141に連結しているのが示される。 さらに、チャネル出力信号は、同時に、ユーザー配置可能DSPユニット160の第1入力ポート161(図2)に連結される。 ディジタイズされたマルチプレクサ110の出力は、ここでは、
    新しいサンプル信号114と呼ばれる。 図示されているのでは、新しいサンプル信号114はそれぞれ、並列4
    8ビット幅データワードである。

    【0051】新しいサンプル信号114がメモリユニット140のデータ入力ポート(DI)141およびDS
    Pユニット160の第1入力ポート161に提示されると、チャネルスキャン制御ユニット120は、第1および第2アドレス生成器(AG−1)170および(AG
    −2)177を作動する。 作動した第1アドレス生成器(AG−1)170は、アドレス信号172の有限シーケンスを、メモリユニット140のアドレス入力ポート(AI)142に供給し始める。 各生成アドレス信号(GAS)172の有効ビット幅は、メモリユニット1
    40の全メモリ容量の関数である。 メモリユニット14
    0が2 20のデータワード(1メガワード記憶容量)を記憶する能力を有するならば、各生成アドレス信号(GA
    S)172は、各20ビット程度の有効幅を有し得る。
    メモリユニット140の記憶容量が小さい、例えば、2
    10データワードであるならば、各生成アドレス信号(G
    AS)172の有効幅は、それに応じて10ビットに減少する。

    【0052】すでに述べたように、複数のサーキュラバッファ(CB)エリアは、メモリユニット140のメモリ空間内に限定される。 1つの特定のサーキュラバッファ145は、それぞれ、a、b、cおよびdと標識される4つの特定のメモリ位置を有するのが示される。 この位置の数はまた、「フィルタ長」とも呼ばれる。 チャネルCH5のフィルタ長は、L C5である。 この位置の数はシフトレジスタの数(SR−aからSR−d)に相当する。 シフトレジスタは、通常、従来の直列シフトレジスタが使用されるならば、DSPユニット160内に装備される。

    【0053】仮定としてブロック160に示されている従来の配置では、第1シフトレジスタSR−aは、第1
    システムクロックサイクルで、最新のチャネル信号11
    4を受け取り、記憶する。 次の第2システムクロックサイクルでは、仮想の第1シフトレジスタSR−a内に記憶されたデータは、次の仮想の第2シフトレジスタSR
    −bにシフトする。 同様に、第2クロックサイクルでは、第1シフトレジスタSR−aは、入力ポート161
    から次のサンプル値を受け取る。 同様に、第3クロックサイクルでは、第2シフトレジスタSR−bに予め記憶された最も古いデータは、仮想の第3シフトレジスタS
    R−cにシフトする。 次に古いデータは、SR−aからSR−bにシフトし、最新のチャネルデータ114が、
    SR−aにシフトする。 第4クロックサイクルでは、最も古いデータは、仮想のレジスタSR−dにシフトする。 次のサイクルでは、さらに新しいデータが、第4シフトレジスタSR−dに保持された最も古いデータをオーバーライトする。

    【0054】レジスタSR−aからSR−dまでの出力は、それぞれ、重みづけ関数W aからW dによって乗算され、加算され、DSPユニット160から出力ポート1
    68を介して出力する。 第2メモリユニット(SRA
    M)150は、DSPユニット160の係数受け入れポート164を介して、必要な重みづけ値W a −W dを供給する。 第2アドレス生成器(AG−2)177は、必要なアドレス信号を、第2メモリユニット150のアドレス入力(AI)ポート158に供給する。

    【0055】アドレス生成器170および177(AG
    −1およびAG−2)は、ユーザープログラム可能であり、コマンドユニット180から伝送されるコマンド信号181および182に応答する。

    【0056】シフトレジスタと同様に、ブロック160
    内に図示される乗算器および加算器もまた仮想のものである。 DSPユニット160(好ましくは、Sharp
    LH9124または同様の集積回路装置)は、ユーザー配置可能、反復性重みづけおよび加算手段を含む。 この重みづけおよび加算手段は、(ポート161または1
    63から)受け取った各サンプル値を、対応する重みづけ係数によって連続して乗算し、その結果をローリングサブトータルに加算する。 チャネルCH5から受け取った信号をフィルタするために使用されるサンプルFIR
    プロセスは、例示のみを目的として、DSPユニット1
    60のブロック内に示される。 DSPユニット160
    は、各チャネルに特有なフィルタ設計を実行できるように配置され得る。

    【0057】仮想のシフトレジスタSR−aからSR−
    dおよびW aからW dまでの複数の乗算器は、実際には、
    配置可能DSPユニット160内には存在しないため、
    第1メモリユニット(RAM−1)140内にあるサーキュラバッファ145が、仮想のレジスタSR−aからSR−dの機能を模倣し、それぞれのタイム遅延された信号をDSPユニット160内の重みづけおよび加算手段に連続して供給するのに使用される。 同時に、第2メモリユニット(RAM−2)150内にある他のサーキュラバッファ155は、重みづけ係数W aからW dの対応シーケンスを、DSPユニット160内の重みづけおよび加算手段に供給する。

    【0058】各チャネル(例えば、CH5)のフィルタ機能は、そのチャネルに関連したサーキュラバッファ(例えば、145および155)の内容を数回シーケンスすることによって実行される。 例えば、チャネルCH
    5に関連した複数のチャネルサービシング動作の一番目動作中に、マルチプレクサ110のチャネルCH5端子から受け取られた最新チャネル信号114は、サーキュラバッファ145の位置「z」に書き込まれる。 サンプル信号114は、同時に、DSPユニット160に提示され、第1重みづけ値W aによって乗算される。 重みづけ値W aは、第2メモリユニット(RAM−2)150
    の対応位置から読み出され、DSPポート164に提示される。 重みづけ結果は、次に、DSPユニット160
    のアキュムレータ(図示されていない)内に保持されたローリングサブトータルへ加算される。

    【0059】DSPユニット160が、重みづけ係数W
    aによって「a」値の乗算を完了すると、サーキュラバッファ145の次の位置「b」に記憶された値が第1メモリユニット(RAM−1)140のデータ出力ポート(DO)143を介して読み出され、DSPユニットの他の入力ポート163を介してDSPユニット160に導入される。 重みづけ値W bは、第2メモリユニット(RAM−2)150の対応位置から読み出され、DS
    Pポート164に提示される。 次に、DSPユニット1
    60は、読み出された「b」値を重みづけ関数W bによって乗算し、その重みづけ値をその内部のローリングサブトータルに加算する。

    【0060】同様に、DSPユニット160が位置「b」値の乗算を完了すると、サーキュラバッファ14
    5の次の位置「c」の値がデータ出力ポート(DO)1
    43から読み出され、DSPユニット160に入力し、
    それに対応する重みづけ係数W cによって乗算される。
    サーキュラバッファ145の位置「d」に記憶された値は、同様に、次のクロックサイクルで処理される。 値「d」がサーキュラバッファ145から読み出されると、チャネルCH5の第1チャネルサービシング動作(以後、「CH5サービスNo.1」と呼ぶ)が完了する。

    【0061】サーキュラバッファ145の位置「a」
    は、第1チャネルCH5サービシング動作(CH5サービスNo.1)のバッファ開始位置と見なされる。 第1
    サービシング動作が完了すると、第1アドレス生成器(AG−1)170内のバッファ開始ポインタ(図示されていない)は、時計と反対方向に回転(減分)し、それによって、メモリ位置「a]に先行する位置を、新しいバッファ開始位置として指定する。この新しい位置は、サーキュラバッファ145には図示されていないが、本願ではバッファ位置「z」と呼ぶ。 サーキュラバッファ145は、アルファベット順にa、b、c、
    d、. . . 、w、x、y、zによってそれぞれ標識されたメモリ位置を有することが理解される。 ここで、位置「z」は、論理的に位置「a」を先行する。 バッファ1
    45が26個の位置を有しているわけではない。 サーキュラバッファ145の全長L Mまたはワードカウントは、4からメモリユニット140の最大容量(MEMSIZ
    E)までの任意の整数であり得る。

    【0062】チャネルCH5量子化スイッチ111が後に、さらに新しいサンプル値信号を出力すると、第2サービスリクエスト信号116は、対応する速度制御ユニット115からチャネルスキャン制御ユニット120に発せられる。 最新のCH5サンプル値は、CH5(CH
    5サービスNo. 2)からの第2サービスリクエストがサービスされた時に、サーキュラバッファ145の新しいバッファ開始位置「z」に書き込まれる。 次いで、次の位置「a」、「b」および「c」に記憶された値は、
    DOポート143から連続して読み出され、DSPユニット160によって処理される。 新しい「z」値は、重みづけW aによって乗算される。 現時点でより古い値「a」は、重みづけW bによって乗算される。 位置「b」のデータは、W cによって乗算される。 位置「c」のデータは、W dによって乗算される。 位置「d」は、アドレス化されていない。

    【0063】次の第3チャネルサービシング動作(CH
    5サービスNo. 3)において、位置「y」は、最新のデータサンプルを受け取るバッファ開始位置となり、一方、位置「z」、「a」および「b」は、連続して読み出されて、DSPユニット160によって処理される位置になる。

    【0064】上述の一連の事象は、図1のコマンドユニット180のブロック内に簡単に例示されている。 タイム線は、まず下側に、そして右側へと移行する。 位置「a」は、第1チャネルCH5サービシング動作中のバッファ145の開始である。 位置「z」は、第2CH5
    リクエストサービシング動作等のバッファ位置の開始となる。 コマンドユニット180は、AG−1およびAG
    −2ユニット(170および177)を間接的に通じて、メモリユニット140および150の読出し/書込み(R/W)線を制御する。

    【0065】さらに、個別のDIおよびDOバス141
    および143は、RAM−1ユニット140に関して示されているが、他の実施態様では、入力および出力データに対して1つのバスが使用され得ることが理解される。 このような他の実施態様では、RAM−1ユニット140のポート141および143は、結合されて1つのデータ入力/出力ポート(図示されていない)となり、DSPユニット160のポート161および163
    は、同様に結合されて1つのデータ入力/出力ポート(図示されていない)となる。 単一なバスは、RAM−
    1およびDSPユニット140および160のデータ入力/出力ポートを接続し、必要に応じて信号を伝送したり、また伝送した信号を戻したりするために時間領域多重化が用いられる。

    【0066】さらに、AG−1ユニット170の動作と対照的に、AG−2ユニット177は、回転するバッファ開始ポインタを有しておらず、そのR/W線は、重みづけW aからW dがDSPユニット160に読み出されるときに、読出しモードで固定されたままである。 一般に、各サービシング動作における所定のチャネルに対して、重みづけ係数の同一シーケンスが出力される(タイムスロットが、新しい値をメモリユニット150に書き込まれるように割り当てられる場合、および/またはタイムスロットがAG−2ユニット177内のバッファ開始ポインタを変更させるために割り当てられる場合には、適応重みづけが可能である)。

    【0067】サービスリクエスト信号116がチャネルCH5のサンプル速度制御ユニット115から受け取られる時間と時間との間に、他のサービスリクエスト信号、例えば、118、119は、1つまたはそれ以上の他のチャネルサンプル速度制御器(例えば、117等、
    すべては図示されていない)からスキャン制御ユニット120に到達し得る。 例えば、チャネルCH5からの2
    つのサービスリクエストの間のある時点で、チャネルC
    H6からSR6サービスリクエストが伝送されてくると仮定する。

    【0068】チャネルCH6からのサービスリクエストは、チャネルCH5のサービスリクエスト信号(SR
    5)が処理されるのと同様に処理される。 第1メモリユニット(RAM−1)140のメモリ空間は、個別のエリアにさらに分割され、各エリアは、特定のチャネルのチャネル長L Mのサーキュラバッファ(CB)を記憶する。 例えば、エリア145は、チャネルCH5のサーキュラバッファを記憶する。 このエリア145は、CB5
    エリアとも呼ばれる。 エリア146は、チャネルCH6
    のサーキュラバッファCB6(略して示されている)を記憶する。 エリア144は、チャネルCH4のサーキュラバッファCB4(略して示されている)を記憶する。

    【0069】チャネルCH6リクエストをサービスする際に、第1アドレス生成器(AG−1)170は、サーキュラバッファCB6(146)のバッファ開始アドレスで開始するアドレス信号172の有限シーケンスを出力する。 CB6のバッファ開始位置は、サービシング動作が終了する前に変わる。 チャネルCH6のフィルタ長(L C6 、図示されていない)は、チャネルCH5に使用されるフィルタ長(L C5 )以外の値であり得る。 示される例において、チャネルCH6は、6のフィルタ長を有していると仮定される。 これは、第2メモリユニット1
    50を示すブロックのエリア156内に書き込まれたシンボルW a 、W b 、W c . . . W fによって示される。 同様に、チャネルCH5は、ブロック150のエリア155
    に書き込まれたシンボルW aからW dによって示されるように、4のフィルタ長(L C5 )を有すると仮定される。
    同時に、チャネルCH4は、ブロック150のエリア1
    54において、対応する重みづけ係数W aからW zによって示されるように、異なるフィルタ長L C4 =26を有するのが示される。 任意のチャネルCHnにおいては、さらに大きなフィルタ長(例えば、L Cn =256、102
    4等)も可能である。

    【0070】第1および第2アドレス生成器(AG−1
    およびAG−2)は、各チャネル(CH4、CH5、C
    H6、. . . CHn)に関連したフィルタ長(L Cn )を追跡し、各所定のチャネルに対する適切な数のアドレスを、メモリユニット140および150のそれぞれに連続して出力する任務が与えられている。

    【0071】図3、図4および図5は、アドレス生成器(AG)チップ270を含む、本発明によるサーキュラバッファ(CB)管理システム200の詳細を示す。 アドレス生成器チップ270は、単結晶シリコン基板からなり、基板の上には、CMOS回路(相補形金属−酸化膜−半導体)が0.8ミクロンの線幅構造で形成され、
    40MHz程度のクロック速度で同期して動作する。 オンチップメモリ手段(完全には図示されいない)は、ユーザーによって提供された配置命令を記憶するために設けられている。 オンチップマルチプレクサは、ユーザーによって提供された配置命令に対応するデータ経路を提供する。

    【0072】図3は、CB管理システム200の前端部を示す。 この前端部は、複数のチャネルからチャネルサービスリクエスト116、118、. . . 、119を受け取り、そのリクエストをローカルクロック(LC)2
    20と同期させ、同時に受け取ったリクエストをアービトレートする手段を有する。 前端部の機能の大半は、A
    Gチップ270内の回路によって成し遂げられる。 アービトレーションは、オンチップまたはオフチップで行われる。

    【0073】図5は、CB管理システム200の後端部を示す。 この後端部は、AGチップ270の20ビット幅アドレス出力バス(AO)272を通して伝送されたアドレスベクタを受け取るランダムアクセスメモリユニット(RAM−1)240を含む。 RAM−1ユニット240は、1メガワード(2 20データワード)程度のメモリ空間を有し得るが、それよりもさらに小さな記憶容量をも有し得る。 AGチップ270内には、適切なフィールド幅のアドレスベクタを生成するアドレス信号生成手段が設けられており、2 4から2 20のデータワードの範囲の任意の記憶容量を収容する。 この記憶容量は、2
    の積分累乗である。

    【0074】上記のように、AGチップ270は、ユーザープログラム可能である。 AGチップは、多数の異なるアドレスシーケンスパターンを生成するようにプログラムされ得る。 サーキュラバッファアドレスシーケンスは、AGチップ270によって生成され得るシーケンスの1つの型に過ぎない。 サーキュラバッファ管理に使用されるアドレスシーケンス以外のアドレスシーケンスを生成するシーケンス生成器は、図5のブロック283に示されている。 ブロック283を装備することは、本発明の範囲外であるため、その詳細については、M代替シーケンス(Mは、1より大きい整数である)の1つが2
    0ビット幅バスを通してオンチップアドレス出力(A
    O)マルチプレクサ282に伝送されるということ以外は記載しないでおく。 ユーザーによって提供されたシーケンス選択コマンド280aは、オンチップユーザー命令記憶ファイル280からオンチップシーケンス選択器281へ伝送される。 シーケンス選択器281は、出力アドレス(AO)マルチプレクサ282を制御する。 マルチプレクサ282は、入力のうち選択されたものを2
    0ビット幅並列出力バス284に連結する。 バス284
    は、20ビット幅アドレス出力レジスタ292の入力と接続している。 レジスタ292は、ローカルクロック(LC)によってクロックされ、チップアドレス出力バス(AO)272を駆動する。

    【0075】アドレス−バスマルチプレクサ282に供給された入力のうちの1つは、20ビット幅並列サーキュラバッファアドレス−出力バス(CBAO)286である。 CBAOバス286は、図4に示される20ビット幅アドレス増分ユニット285によって駆動される。

    【0076】図3から図5の詳細は、いくつかの基本構成要素を見ることによってさらに理解され得る。 AGチップ270に設けられている主要構成要素は、以下のものである。

    【0077】(a)チャネル特異的サーキュラバッファ長(または他のモードでは、チャネル特異的重複値)を記憶するために使用される、32×20ビット幅OLのレジスタファイル210、(b)最大長値L M (または他のモードでは、他の長値)を記憶するために使用される、1×20ビット幅ALMレジスタ212、(c)チャネル特異的バッファ開始ポインタを記憶するために使用される、32×20ビット幅SPのレジスタファイル265、(d)システム特異的データ構造を有する絶対バッファ開始アドレス信号を生成するために使用される、可変長フィールドコミュテータ(VFC)275、
    (e)連続した絶対バッファアドレス信号のシーケンスを生成するために使用される連続可変長フィールドアドレス増分ユニット(VFAI)285、(f)VFC2
    75およびVFAI285によって生成された信号のデータ構造を制御するために使用されるフィールドサイズ制御ユニット205、および(g)減算/加算ユニット268と組合わさって使用され、SPのレジスタファイル265に記憶されたバッファ開始ポインタを更新する、SP更新制御ユニット264。

    【0078】これらの主要構成要素の動作については、
    順を追って説明する。

    【0079】図3を参照すると、チャネルサービスリクエスト(例えば、SRの116、...、119)は、
    5ビット幅直接入力バス221から直接的に、またはより幅の広いバス222と外部アービタ223とを介して間接的にAGチップ270に入力する。 リクエストが直接入力バス221を介して入力する場合には、AGチップ270は、アービトレーションを内部で行い、5個程度の独立したチャネルをサービスし得る。 リクエストが外部アービタ223を介して入力する場合には、AGチップ270は、32個程度の独立したチャネルをサービスし得る。

    【0080】通常、直接および間接入力バス221および222のいずれか1つが使用される。 このような場合、図3に示されるマルチプレクサ225が省略され、
    バス221またはアービタ223の出力が、AGチップ270の5ビット幅サービスリクエスト入力バス271
    に直接接続される。

    【0081】外部アービトレーションが使用される場合には、チャネルサービスリクエスト(SRの)は、外部アービタ223の32本の入力線222の1つまたはそれ以上においてアサートされる。 外部アービタ223
    は、最優先リクエストを選択し、最優先のリクエスティングチャネルのチャネル番号(CHN)を5ビット2進化数として、(図3に示される外部マルチプレクサ22
    5を介して)AGチップ270のリクエスト入力バス2
    71に提示する。 ユーザープログラム可能外部/内部アービトレーション選択器229は、マルチプレクサ22
    5を動作させ、外部アービタ223からの出力を入力バス271まで通過させる。 アービタ223からの出力は、選択的に接続して、チャネルマルチプレクサ110
    のシンボリック接極子を作動させる。

    【0082】入力バス271は、第1オンチップ入力同期レジスタ251(5ビット幅)のD入力に接続している。 レジスタ251のQ出力は、第2同期レジスタ25
    2(同じく5ビット幅)のD入力と接続している。 レジスタ251および252は、ローカルクロック線(L
    C)250によってクロックされる。 ローカルクロックは、40MHz程度の速度で動作し得る。 サービスリクエストは、ローカルクロック(10MHz)の4分の1
    程度の速度でチップに適用され得る。

    【0083】外部アービタ223は、チップ入力バス2
    71に(多重機225を通じて)有効チャネル番号を提示すると共に、他の入力線273を通じてチップに外部有効信号を提示する。 チップ入力線273は、第3オンチップ同期レジスタ231(1ビット幅)のD入力に接続している。 レジスタ231のQ出力は、第4同期レジスタ232(1ビット幅)のD入力に接続している。 第4レジスタ232のQ出力は、第1二重ポートマルチプレクサ233の1つの入力(「A」)をフィードする。
    第3および第4レジスタ231および232もまた、ローカルクロック(LC)によってクロックされる。

    【0084】常にすべてが図示されているわけではないが、構成要素260、234、269、285および2
    90などのAGチップ270上の他のすべての同期構成要素もまた、同一のローカルクロック(LC)によってクロックされることが理解され得る。

    【0085】第2同期レジスタ252の5ビット幅出力は、第2二重ポートマルチプレクサ258の1つの入力ポート(「A」)をフィードする。 ユーザープログラム可能オンチップ外部/内部モード選択器259は、マルチプレクサ233および258を制御する。 外部モードが選択されると、マルチプレクサ233および258のそれぞれの上記の入力ポート「A」および「A」が選択され、それぞれの出力に連結される。 内部モードが選択されると、マルチプレクサ233および258のもうひとつの「B」および「B」入力ポートが出力として選択される。

    【0086】内部アービタ253は、実質的に、外部アービタ223の機能を模倣する。 但し、内部アービタ2
    53は、わずか5チャネルの処理に限定される。 優先化は、ハードワイヤードである。 入力バス271の1つのピンは、最優先され、他の4つのピンは、優先順位が順次低くなっている。 5個以下のチャネルを有するシステムは、オンチップアービタ253を使用し得、それによって、さもなければ外部アービタ223によって消費されるボードスペースの損失を避ける。 サービスリクエストは、直接バス221を介して、同期レジスタ251および252を通って、レジスタ252の出力を内部アービタ253の入力に連結する5ビットバス255によって、内部アービタ253の入力側に移動する。 他の5ビットバス257は、内部アービタ253の出力を、マルチプレクサ258のB入力へ連結する。 1ビット幅内部有効線254は、内部アービタ253からの内部有効信号をマルチプレクサ233のB入力へ伝送する。

    【0087】オンチップ選択器259は、内部アービトレーションモードを選択すると、内部アービタの5ビット出力257は、マルチプレクサ258を通過して出力される。 線254の1ビット有効信号は、マルチプレクサ233を通過して出力される。 内部アービトレーションステートデコーダ256は、選択的にAGチップ27
    0内に含まれ、もし選択がなされたなら、内部アービタ253モードが何を選択したのかを外部に指示する。 3
    ビットバス274は、デコーダ256からチップ270
    の内部連結ピンへと延びる。 8個の可能なコードステートのうち5個は、有効アービトレーション選択を示し、
    1つまたはそれ以上のコードステートは、選択的に、無効選択を示す。 バス274は、選択的に接続して、チャネルマルチプレクサ110(図1)のシンボリック接極子を作動させて最優先チャネルを選択する。

    【0088】他の実施態様では、内部アービタ253によってなされた選択は、AOバス272の適切な線にハードワイヤードされているチャネル出力バス278(図5)上に遅延形態で現れる。

    【0089】さらに他の実施態様では、内部アービタ2
    53は、チャネルマルチプレクサ110を制御しない。
    その代わりに、オフチップ回路(図示されていない)が制御し、チップ入力バス271に、サービスされるチャネルを示す5ビット幅コマンドコードを伝送する。 競合するコードが同時に受け取られると、最優先コードが、
    サービスされるチャネルを示すものとして受け取られる。 内部アービタ253は、単に、チャネルマルチプレクサ110が、バス271に示される活性チャネルのうち最優先のものに切り換えられることを推定する。

    【0090】さらに他の実施態様では、入りデータは、
    シェアドデータソースから複数の異なるFIRフィルタへ適用される。 (マルチプレクサ110は、システム2
    00から省略され得る。 )複数のフィルタは、異なるフィルタ長、重みづけ要因および/または重複値を用いて、同一の入りデータ信号105を処理し得る。 システム制御ユニット(図示されていない)は、信号を示す活性チャネルをDSPシステム200のSRn入力端子に伝送し、どのフィルタまたは複数のフィルタが入りデータを処理するかをDSPシステム200に示す。 各フィルタの最も新しいサンプル値から最も古いサンプル値までが単一なRAMユニット(140)に記憶されているため、1つのフィルタのみが、シェアドデータソースから受け取られた最新のサンプル値114をまず最初に処理し得る。 内部アービタ253または外部アービタ22
    3は、どのフィルタが、最新のサンプル信号114をまず最初に処理するのかを決定する。

    【0091】外部アービトレーションモードが選択され、有効サービスリクエストコードが外部アービタ22
    3に提示されると仮定する。 アービタ223からの外部有効信号出力は、同期レジスタ231、232およびマルチプレクサ233のポート「A」を通して次の1ビット幅更新リクエスティングレジスタ234の入力側へ出力される。 マルチプレクサ258のポート「A」に提示されたチャネル番号(CHN)は、同時に、マルチプレクサ258を通過して、次の5ビット幅チャネル番号記憶レジスタ260の入力側に出力される。 レジスタ23
    4および260は、共にローカルチップクロック(L
    C)によってクロックされる。

    【0092】マルチプレクサ233(ACRと標識される)の出力線238は、オンチップステートコントローラ290(図4)に接続されることにより、「活性チャネルリクエスト」(ACR)の存在を示す。 ステートコントローラ290が、ACRがサービスされ得ると判断すれば、ステートコントローラ290は、LD−1ロード制御信号を、レジスタ234および260のロードコマンド端子235に戻す。 ステートコントローラ290
    が、ACR信号がマルチプレクサ233の出力238にまだ存在する状態において、チャネル番号記憶レジスタ260がクロックサイクル中の新しいチャネル番号を受け取る余裕があると判断すれば、LD−1ロード制御信号は、high(H=論理真=”1”)となる(後述する可変ステートがSV=2ステートからSV=1ステートに転移する時、LD−1はhighとなる)。

    【0093】LD−1制御線上の論理1(”1”)は、
    それがアサートされる対象であるローカルクロックサイクル(LC)の開始中に、マルチプレクサ258によりチャネル番号出力をチャネル番号記憶レジスタ260に付与する。 活性LD−1信号はまた、活性チャネルリクエストがまだ線238上に存在すれば、活性チャネルリクエストを更新リクエストレジスタ234に付与する。

    【0094】図4を参照すると、更新リクエストレジスタ234の出力236(「更新開始」と標識される)
    は、ポインタ更新論理ユニット264に接続されている。 ポインタ更新論理ユニット264は、活性化されると、開始ポイント(SP)のレジスタファイル265に保持されたSPの値を更新するために減算器/加算器2
    68を用いる3サイクルシーケンス(後述)を実行する。 3サイクル更新シーケンスは、後述するステート可変信号SVがSV=0ステートに達して上記ステートから出始めた後に開始される。

    【0095】AGチップ270がまず初期化されると、
    チップ幅リセット信号RSTが更新リクエストレジスタをクリアし、AGチップ270をいわゆる「スリープモード」にする。 チップ幅リセット信号RSTはまた、レジスタ251、252、231、および232、SPのレジスタファイル265、そして後述する出力レジスタ292をクリアする。

    【0096】スリープモードにおいて、SV=0ステートは1クロックサイクル毎に連続的に再入力される。 論理highACR信号の検出により、AGチップ270
    がスリープモードから解除される。 スリープ指示線23
    7は、スリープモード指示信号を、ステートコントロールユニット290(図4)から、更新論理ユニット26
    4に伝送する。 スリープモードが活性であれば、更新論理ユニット264は、最初から3サイクルのSP更新作業から阻害される。 AGチップ270がスリープモードでなくアウェイクであり、且つ、3サイクルの更新作業が初期化された場合、更新論理ユニット264は、SP
    のレジスタファイル265にLD−4ロードコマンドを付与し、それにより、3サイクルの更新シーケンスの終了時に減算器/加算器268の出力信号(C)を指定された記憶位置にロードする。 シーケンスについては後により詳細に記載する。

    【0097】レジスタ260の5ビット幅出力261
    は、開始ポインタ(SP)のレジスタファイル265のアドレス入力ポート(AI)にも接続されている。 出力261はまた、パイプラインレジスタ263の入力にも接続されている。 パイプラインレジスタ263の出力2
    62は、チャネル重複/長(OL)のアドレス入力ポート(AI)と、可変長フィールドコミュテータ(VF
    C)275のF2(フィールド−2)入力ポートとに接続されている。 パイプラインレジスタ出力バス262
    は、本明細書において時々、電流−チャネル番号(CH
    N)バス262と呼ばれる。 後に明白に記載する理由のために、パイプラインレジスタ入力バス261は、本明細書において時々、次チャネル番号(CHN')バス2
    61と呼ばれる。

    【0098】LD−2制御信号がステートコントロールユニット290から付与されると、パイプラインレジスタ263は、バス261から新しい値をロードする(後に明白に記載するように、SV=1ステートからSV=
    0ステートへの転移時にLD−2線がhighになる)。

    【0099】SPのレジスタファイル265は、複数の32レジスタを含み、32レジスタは各々20ビット幅を有する。 SPのレジスタファイル265は、各々20
    ビット幅である32のデータワードを記憶するために用いられる。 既に述べたように、AGチップ270が初期化されると、チップ幅のリセット信号(RST)が、S
    Pのレジスタファイル265内の32のデータワードの各々を、ゼロ値に初期化する。 他の値は、SPのレジスタファイル265の各位置に、対応するデータ入力(D
    I)ポートを介して書込まれ得る。 更新論理ユニット2
    64から供給されたLD−4制御信号が、3サイクルの更新作業の終了時に論理high(H)にストローブされる時のみ、書込みが起こる。

    【0100】バス261上に存在する5ビット幅のCH
    N'信号は、SPのレジスタファイル265のAI(アドレス入力)ポートに接続される。 それにより、SPのレジスタファイル265内の32のレジスタのうちの1
    つをアドレスする。 SPのレジスタファイル265に記憶され、その後、CHN'信号261によりアドレスされた20ビット幅の開始ポインタ(SP)は、SPのレジスタファイル265の20ビット幅のパラレルデータ出力ポート(DO)から、開始ポインタバス266に出力される。 開始ポインタバス266は、可変長フィールドコミュテータ(VFC)275のF1(フィールド−
    1)入力ポートと、デュアルポートマルチプレクサ26
    7の第1の入力ポートとに接続されている。

    【0101】可変長フィールドコミュテータ(VFC)
    275は、入力F1およびF2に加えて、破線で示すF
    3(フィールド−3)入力ポートを有することが図示されている。 F3入力ポートは、すべてゼロの2進符号化信号を受信する。

    【0102】可変長フィールドコミュテータ(VFC)
    275は、本明細書において生成アドレス信号(GA
    S)と呼ばれる20ビット幅の出力信号を生成する。 生成アドレス信号(GAS)は、3つの互いに隣接するデータフィールドDF1、DF2およびDF3を有し、上記データフィールドは各々、可変ビット幅V1、V2およびV3を有する。

    【0103】第1のデータフィールドDF1は、VFC
    275の20ビット幅のF1入力において存在する開始ポインタ(SP)の、より下位のビットを少なくとも含む。 第1の可変幅V1は、4ビットから20ビットの範囲の任意の値に設定され得る。 V1が20に等しい場合は、第1のデータフィールドDF1は、入力フィールドF1の全ビットを含み、且つ、第2および第3のデータフィールドDF2およびDF3は、VFC275によりバス276に出力された20ビット幅の生成アドレス信号(GAS)内に存在しない。

    【0104】第2のデータフィールドDF2が生成アドレス信号(GAS)内に存在する場合、第2のデータフィールドDF2は、VFC275の5ビット幅の入力F
    2に与えられたチャネル番号(CHN)を表す。 第2の可変幅V2は、0ビットから5ビットの範囲の任意の値に設定され得る。 V2が5ビットに設定されている場合、DF2はF2の5ビット全部を含む。 V2が0ビットに設定されている場合、DF2は生成アドレス信号(GAS)内に存在しない。

    【0105】第3のデータフィールドDF3が生成アドレス信号(GAS)内に存在する場合、第3のデータフィールドDF3は、バス276上を伝送される、20ビット幅の生成アドレス信号(GAS)のより上位の端部における、論理ゼロ(”0”)のパッディングを表す。
    第3の可変幅V3は、0ビットから16ビットの範囲の任意の値に設定され得る。 フィールドサイズ制御ユニット205からVFC275に供給されるフィールドサイズ制御信号207は、可変フィールド幅V1およびV
    2、そしてデフォルトの場合はV3の値を決定する(V
    3=20−[V1+V2])。

    【0106】可変長フィールドコミュテータ(VFC)
    275の1つの実施態様においては、F3入力は実際には存在しなくてもよい。 何故なら、DF3データフィールドを満たすゼロは、SPのレジスタファイル265により出力される20ビットの開始ポインタのゼロにされた上端部から得られるからである。 このメカニズムについては図8に関連して後述する。 現時点では、システム200の操作が容易に理解できるように、先ず、VFC
    275上にゼロフィールド(F3)入力ポートが存在し、またこのF3入力ポートがVFC275にゼロ入力信号を供給すると仮定する。

    【0107】VFC275から延長する出力バス276
    はB00からB19と標識される20本のラインを有する。 ラインB19は生成アドレス信号(GAS)の最上位桁ビットを搬送し、ラインB00がGASの最下位桁ビットを搬送する。 GASの各ビットもまた各々B00
    からB19として示される。

    【0108】VFC出力バス276のラインB00からB19は、アドレス増分(VFAI)ユニット285の「B」入力ポートに接続する。 以後、ユニット285
    は、後に明かとなる理由により「連続可変長フィールドアドレス増分器」と呼ぶ。

    【0109】生成アドレス信号(GAS)は、LD−B
    として示されるロード制御信号が論理high(H)のとき、アドレス増分ユニット285の内部レジスタにロードされる。 LD−B信号はステートコントローラ29
    0により供給される。 生成アドレス信号(GAS)がV
    FAIユニット285にロードされると、VFAIユニット285は、VFC275から受け取ったDF2およびDF3データフィールドを前述のVFAIユニット2
    85の内部レジスタに保存する。 またDF1フィールドも最初のクロックサイクルの間に保存され、引き続くサイクルで、ローカルクロック(LC)と同期して、+1
    づつ順次増分される。 増分は、同様にステートコントローラ290により供給される増分可能信号(INCRE
    N)がhigh(H)である限り続く。

    【0110】可変長フィールドアドレス増分器(VFA
    I)285については2つの実施態様がある。 1つの実施態様においては、VFAI285は、VFC275からDF1、DF2、およびDF3フィールドを受け取った後、これらのコピーを保持する。 この結果、可変長フィールドコミュテータ(VFC)275はVFAI28
    5にアドレス信号(GAS)をロードした後、新しいG
    ASの生成を自由に始めることができる。 第2の実施態様では、VFAI285は、VFC275により出力されたDF2データフィールドを調べて、どのチャネルと通じているかを決定する。 VFAI285の第2の実施態様を使用するときは、VFAI285が、所定のチャネルに属するアドレス信号シーケンスの最後のアドレス信号についてのCBAOバス286への自らの出力を終える前に、VFC275は新しいDF2チャネルフィールドをバス276に出力すべきではない。

    【0111】図3、図4、および図5をこの順序で参照すれば、AGチップ270は本質的には6段階パイプライン構造を有することが分かる。 段階1はレジスタ25
    1(およびレジスタ231)への入力で始まる。 段階2
    はレジスタ252(およびレジスタ232)で始まる。
    段階3はレジスタ260(およびレジスタ234)で始まる。 段階4はSPのレジスタファイル265(およびパイプラインレジスタ263)への入力で始まる。 段階5はバス276のVFAI285への接続で始まる。 段階6はAOマルチプレクサ282の出力レジスタ292
    への接続で始まる。

    【0112】パイプライン開始準備期間はLC(ローカルクロック)6サイクルに等しい。 段階6のパイプラインが満たされると、サービスリクエスト(SR7、SR
    8、...、SRn)が遅延なく次々と連続して処理され得る。 段階1および段階2(図3)は、受け取ったサービスリクエストをローカルクロック(LC)と同期させるために、および準安定性の問題を避けるために使用される。 段階3(レジスタ260および234)では、S
    Pの更新操作の初期化、および既存の開始ポインタ(S
    P)信号の段階4への送信が行われる。 段階4(26
    3、265、および275)では、VFC275により生成されるアドレス信号(GAS)が段階5に送信される。 段階5(VFAI285)では、必要なアドレス信号シーケンスが生成される。 段階6では、生成されたシーケンスの各アドレス信号がAOバス272上に有効に保持される。

    【0113】段階5は、VFAI285からバス286
    上に出力される20ビット幅信号(CBAO)の一部またはすべてを、修正された制限値L' Mと比較する。
    L' MはL Mマイナス1に等しい(L' M =L M −1)。 C
    BAO信号(286)の下桁のV1ビットは、ユニット206により修正された制限値L' Mに対して試験されるCBAO部分を形成する。 この部分は記号CBAO−
    −V1':00(V1'=V1−1)により表される。
    制限状態に達すると(CBAO−−V1':00=L'
    M )、可変長コンパレータ206はVFAI285に可変幅リセット信号287を発信する。 可変幅リセット信号287は、アドレス増分ユニット285内に保持されているカウントのCBAO−−V1':00部分をリセットする。 CBAO信号(286)の、V2ビット幅でありまたDF2データフィールドに対応する部分が保存される。 CBAO信号(286)の、V3ビット幅でありまたすべてゼロのDF3データフィールドに対応する部分は保存またはゼロにリセットされる。 フィールドサイズ制御ユニット205はフィールドサイズ制御信号2
    08をVFAIおよびコンパレータ206に供給し、フィールド幅値V1および/またはV1'および/またはV2および/またはV3を特定する。

    【0114】アドレス増分ユニット(VFAI)285
    から出力される20ビット幅のサーキュラバッファアドレス出力信号(CBAO)286は、既述のようにシーケンス選択マルチプレクサ282(図5)に接続する。
    これはまた既述のようにコンパレータ206(図4)の一方の入力に接続する。 コンパレータ206のもう一方の入力209は最大バッファ長さ値マイナス1、L M
    1を表す修正制限信号L' Mを受け取る。

    【0115】最大長さ値L Mはユーザにより計算され、
    ALMレジスタ212に記憶される。 L Mは、システムが提供する予定のチャネル数に等しいまたはこれより大の、2の累乗(例えば、1、2、4、8、16、または32)に最も近い値により分割されるRAMユニット2
    40の記憶容量に等しく設定されるべきである(L M
    MEMSIZE/NCHS)。 例えば、サービスチャネル数が7のとき、NCHSは、2の累乗に等しいまたはこれより大の最も近い値である8に設定される。 RAM
    ユニット240(図5)のメモリスペースは、各々がL
    Mデータ語長を有する8つのセクションに分割される。
    最初の7つのセクションは各々7つのチャネルのサーキュラバッファを保持し、8番目のセクションは使用されない。

    【0116】ALMレジスタ212はそのL M信号をバス213に沿ってB側減分器219に出力する。 B側減分器219は、受け取られたL M信号を1つだけ減分し、また減分された信号L' Mをマルチプレクサ215
    のB入力ポートに供給するための組合せ論理を含む。 同様の構造のA側減分器218は、バス211に沿ってO
    Lのレジスタファイル210のデータ出力(DO)を受け取り、受け取った信号を1つだけ減分してL' Cn信号を生成し、減分された信号をマルチプレクサ215のA
    入力ポートに供給する。

    【0117】マルチプレクサ215の20ビット幅の平行出力は、AおよびB入力ポートに存在する信号の中から選択される信号を、各々バス288および209を介してダウンカウンタ289およびコンパレータ206に供給する。 マルチプレクサ215は命令ユニット280
    (図5)から送られる命令信号により制御される。

    【0118】第1の操作モード(いわゆるFFT−CB
    uffモード)においては、マルチプレクサ215はB
    入力ポートに存在するL' CN信号を必ず出力側に通すように制御される。

    【0119】第2の操作モード(いわゆるFIR−CB
    uffモード)においては、マルチプレクサ215はA
    入力ポートに存在するL' C信号を必ず通過させるように制御される。 マルチプレクサ215からの出力信号L' (Cn) =L' Cn =L' Cn -1は、バス288を経てダウンカウンタ289に移動する。 ダウンカウンタ289
    は、連続するクロックサイクルの間に、受け取られたカウント値L' Cnをロードし、その値からゼロ値までゼロ値も含めてカウンドダウンし、これによりL Cn制御ステートの全体をカウントする。

    【0120】同時に、減分器219からの出力信号(L' M =L M −1信号)はバス209を経てコンパレータ206へ移動し、次のL Cn回のクロックサイクルの間続けてコンパレータ206に供給される。 L Mはコンパレータ206に入力される前に減分される。 これは、メモリユニット240内のチャネル番号CHnのためのバッファ領域の範囲を画定するL M個のRAMの位置が、
    各々アドレスCHn−−00からCHn−−[L M
    1] を有するためである。 コンパレータ206が最終アドレスCHn−−[L M −1]を検出すると、位置C
    Hn−−00への循環が行われる。

    【0121】フィールド制御ユニット205は、受け取った2つの信号NCHSおよびMEMSZから各々フィールドサイズ制御信号207および208を生成する。
    5ビット幅のチャネル数レジスタ201がフィールドサイズ制御ユニット205にNCHS信号を供給する。 N
    CHS信号は、RAMユニット240内に受容可能なサーキュラバッファ領域数を表す。

    【0122】19ビット幅のメモリサイズレジスタ20
    4は、21ビット幅のMEMSZ信号の上桁部分をフィールドサイズ制御ユニット205に供給する。 21ビット幅のMEMSZ信号はRAM−1ユニット240の記憶容量を表す。 2の累乗の増分には2 2から2 20までの許容可能なメモリサイズがある。 21ビットMEMSZ
    信号の最下桁の2ビットはいつでもゼロである。

    【0123】図5に、RAM−1内のメモリの利用ステートをブロック240内に示したデータ構造により示す。 RAM−1ユニット240のメモリスペースは、各々長さがL Mの同じサイズのバッファ領域に分割される。 バッファの境界は下桁部がゼロのメモリ位置で行われる。 所定のチャネル番号CHnのためのバッファ内の最も低いアドレスを有する位置はCHn−−00および「a」と呼ばれる。 所定のチャネル番号CHnのためのバッファ内の最も高いアドレスを有する位置はCHn−
    −L' Mおよび「z」と呼ばれる。 従って長さ値L MはメモリブロックCHn−−00からCHn−−[L M
    1]内の独自にアドレス可能なメモリ位置の数に等しい。 RAM−1ユニット240内に定義されるサーキュラバッファの数は1から32の範囲の整数値であり得る。 最大ブロック長さL Mは、メモリユニット240の記憶容量およびサービスチャネル数(2の累乗に最も近い値に切り上げ)に応じて変動する。

    【0124】RAM−1ユニット240のサーキュラバッファ内に記憶された個々のデータ語は、対応するチャネル番号(CHN=0、1、2、...1F)を取り出し、これに最大長さ値(L M )を掛け、またL Mより小さい値(−−xx)を有する正のオフセットを加えることによりアドレスし得る。 最大長さ値L Mは好ましくは、
    2から2 20の範囲の2の累乗に等しい。

    【0125】VFC275(図4)はこのような機能を行う。 これは、パイプラインレジスタ出力バス262から現在のチャネル番号(CHN)を、またバス266から相対オフセットすなわち「開始ポインタ(SP)]を受け取ると、バス276に絶対バッファ開始アドレス(GAS)を生成する。VFAI285は、VFC27
    5から受け取る生成アドレス信号(GAS)の下桁V1
    ビットのみを変更する増分機能を行うことによってこのアドレス操作スキームを永続化させる。

    【0126】RAM−1ユニット240内の各サーキュラバッファ領域は、長さL Cn (nは16進法領域0ー1
    Fにおけるチャネル番号)のアクティブ領域と長さL M
    −L C nの自由領域にさらに分割される。

    【0127】例えば、RAM240の領域241についてみると、領域241はチャネル番号ゼロ(CH0)のためのサーキュラバッファを記憶する。 バッファ領域2
    41の最上部に示した位置(領域241内の最小アドレス値を有する位置)は相対位置「a」または絶対表示のCHO−−00として示される。 バッファ領域241の最下部の位置(領域241内の最大アドレス値を有する位置)は相対位置「z」または絶対表示のCH0−−
    [L M −1]として示される。

    【0128】チャネルCH0のフィルタ長さL C0が4に等しい場合、最初のリクエストサービス操作(サービス番号1)は最も新しいサンプル値114(図1)を位置「a」に書込み、位置「b」、「c」、および「d」から記憶された値を読み出す。 サービス番号1の間は、チャネルCH0バッファ領域の位置「e」から位置「z」
    までのメモリ領域242はフリースペースとして定義される。 しかし、サービス番号2の間は、バッファ領域2
    41の位置「z」は、バッファ開始位置および書き込みが行われる第1の位置となる。 次に、位置a、b、およびcが読み出される。 位置dからyまでは、サービス番号2の間のバッファのフリースペースとして定義される。

    【0129】チャネルCH0バッファ領域241の位置「z」の直ぐ後には、チャネル−1バッファ領域243
    の位置「a」がくる。 チャネル−1の位置「a」はまたCH1−−00とも示される。 フィルタ長L C1がバッファ領域243に割り当てられる。 フィルタ長L C1は、C
    H0バッファ領域241のフィルター長L C0と同じでも異なってもよい。 各バッファ領域241、243などは最小フィルタ長4および最大長L M (4≦L Cn ≦L M )を有する。

    【0130】AGチップ270の初期化が行われると、
    各チャネルの第1チャネルサービスが、チャネルのバッファ領域内の各々のチャネル位置CHn−−00(位置「a」)に書込みを始める。 これは、初期化によりSP
    のレジスタファイル265にリセット(RST−1)が与えられるためである。 これにより、すべてのチャネルのための最初のバッファ開始ポインタが各々の位置CH
    n−−00(n=0からNCHS−1)に自動的に設定される。

    【0131】この後の各々のリクエストサービスに対しては、対応するチャネルCHnに対するバッファ開始位置は1段階後退する。 FIR−CBuffモードでは、
    通常は1つの位置だけ後退する。 FFT−CBuffモードでは、段階の後退はチャネル特異的であり、所定のチャネルに対しては1つ以上の位置を後退し得る。

    【0132】FIR−CBuffモードがアクティブであり、いつでも1つの位置だけ後退すると仮定すると、
    すべてのチャネルCHnの第2のサービスでは、各々のバッファ領域の位置「z」が第1の書込み位置となる。
    この後、同じバッファ領域の各々の位置「a」、
    「b」、「c」などから複数のL Cn −1の読出しが行われる。

    【0133】引き続くサービス操作では、バッファ開始位置は位置「y」、「x」、「w」などに後退する。 位置「a」に達すると、位置「z」まで戻って循環される。

    【0134】有効なチャネル番号(CHN)がバス26
    2に供給されている間、OLのレジスタファイル210
    は対応するフィルタ長さ(または重複値)OL Cnを20
    ビット幅の平行バス211に出力する。 前述のように、
    バス211はA側減分器218、および別のマルチプレクサ217(以後、B側更新マルチプレクサ217と呼ぶ)の入力に接続する。 B側更新マルチプレクサ217
    の第2の入力はレジスタ212の出力213を受け取る。 レジスタ212は、その内容が、前述のように各バッファ領域の最大長さL M 、または交互フィルタ長さ値(AL)のいずれかまたは両方を表すため、ここでは交互長さ/最大長さ(ALM)レジスタ212と呼ぶ。 交互フィルタ長さ値(AL)はFFT−CBuffモード時にはチャネル特異的バッファ長さ値L C0 −L Cnの代わりに使用される。 FFT−CBuffモードがアクティブのときは、OLのレジスタファイル210の内容は、
    チャネル特異的重複値を表す。 OLのレジスタファイル210およびALMレジスタ212の内容はユーザによりプログラム可能である。

    【0135】ダウンカウンタ289はローカルクロック(LC)により計時される。 ステート変数値SVを減分値L' Cn (FIR−CBuffモード時にで受け取る)
    またはL' M (FFT−CBuffモード時に受け取る)からゼロまでカウントダウンし、これにより、L Cn
    ステート(FIR−CBuffモード時)またはL Mステート(FFT−CBuffモード時)のすべてをカウントして、等しい数のアドレス信号をVFAI285から出力させる。

    【0136】SVが0カウントに近づくときアクティブチャネルリクエスト(ACR)ラインが論理ゼロ(「0」)である場合は、ステートコントローラ290
    はスリープモードをアサートし、ライン237にこのモードを与える。 SVが0カウントに近づくときスリープモードがアサートされる場合は、ステートコントローラが論理真ACR信号238(図3)を認識し、これに反応してスリープモードを非アクティブ化するまで、SV
    はゼロのままである。

    【0137】増分可能ラインINCRENは、SVがL' Cnからゼロに等しいステートの間はhighに保持される。 SV=0ステートに入るとINCRENはlo
    wに移行する。 これにより、SV=0ステートに対応する出力アドレスのとき、VFAI285で実行されるアドレス増分機能が停止する。

    【0138】所定のチャネルのためのアドレスシーケンスの末部に達するとき、増分可能ラインINCRENは必ずしもlowに保持されてはいない。 前のチャネルC
    nのためのステートゼロカウント(SV=0)が正に終了するとき、ダウンカウンタ289には新しいチャネル番号Cn'に対応する新しいステート値SV=L'(C
    n')がロードされる。 このような途切れのない移行は、ステート制御ユニット290がSV=2ステート時にACRライン上に論理high状態を検出するとき起こる。 SV=1ステートの開始時には、ステート制御ユニット290はレジスタ260および234(図3)にLD−1パルスを発信する。

    【0139】新しいチャネル番号Cn'がレジスタ26
    0にロードする。 アクティブチャネルリクエスト(AC
    R)がレジスタ234にロードする。 前のチャネル番号CnのためのステートSV=0が終了するとき、チャネルCn'のための新しい長さ値L' Cn'がマルチプレクサ215の出力において有効になる。 チャネルCn'のための新しい生成アドレス信号(GAS)が可変長フィールドコミュテータ(VFC)275の出力において有効になる。

    【0140】SV=0ステートの終了時、新しいL'
    Cn'カウントがダウンカウンタ289にロードする。 同時に、新しい生成アドレス信号(GAS)がVFAI2
    85にロードする。 (ユニット290はVFAI285
    にLD−B信号を発信する。 )新しいチャネル番号C
    n'のためのアドレスシーケンス生成プロセスは正に次のクロックサイクルから始まる。 チャネルCnのためのサービスの開始からチャネルCn'のサービスまでを調べると、ステート制御ユニット290のステート移行フローは、SV=L' Cn 、. . . 3、2、1、0、L'
    Cn' 、. . . 3、2、1、0で表される連続シーケンスに従う。 L' Cnのカウントダウンシーケンスから次のL' Cn'カウントダウンシーケンスへの切り替えが行われるため、INCERNラインはステートSV=0時においてのみlowとなる。 連続可変長フィールドアドレス増分ユニット(VFAI)285は、2つのチャネルサービス間のクロックサイクルをとばすことなくアドレス信号を連続して出力する。

    【0141】減分器218および219はオプションである。 これらは重複/チャネル長さ(OL)レジスタファイル210のユーザプログラミングを簡略化するために、および最大長さ/交互長さ(ALM)レジスタ21
    2のユーザプログラミングを簡略化するために加えられる。 減分器218および219がAGチップ270に含まれていないときは、ユーザは実際のフィルタ長さより小さい値をOLのレジスタファイル210に、また最大フィルタ長さより小さい値をALMレジスタ212にロードしなければならない。 後の記述により明かとなるように、開始ポインタ更新プロセスの循環ハンドリング部もまた修正されねばならない。

    【0142】現在のチャネル番号Cnのためのレジスタファイル265のバッファ開始ポインタ(SP)は、レジスタ260が新しいチャネル番号値CnまたはCn'
    をロードする最初のサイクルで更新される。

    【0143】これら3回の更新サイクルの最初のサイクルに先立つローカルクロックサイクルでは、SPのレジスタファイル265内のデータ語がアドレスされ出力される。

    【0144】最初の更新サイクルでは、除算器/加算器268は除算モードにおかれ、結果C=A−B(AおよびBはユニット268の2つの20ビット幅入力ポートであり、Cは20ビット幅出力ポート)を生成する。 このときF1バス266上に存在するSP出力信号は、A
    側マルチプレクサ267を介して除算器/加算器268
    の「A」入力ポートに移動する。 同時に、F1信号(バス266)およびCHN信号(バス262)はVFC2
    75を通して移動し、対応する生成アドレス信号(GA
    S)を生成し、これはアドレス増分ユニット(VFA
    I)285にロードされる。 F1信号が第2の更新サイクルの開始時にVFAI285にロードされる。

    【0145】これが第1更新サイクル中に発生すると、
    第1ポインタ更新値は、同時に、B側マルチプレクサ2
    17を通過して減算器/加算器268の「B」入力ポートに伝送される。 減算器/加算器268は、その「C」
    出力ポートで対応の結果を生成する。 この結果は、第1
    更新サイクルの終了時に、アキュムレーティングレジスタ269に記憶される。 (この事象は、論理ユニット2
    64からレジスタ269へと延長するLD−3線をストローブすることによって信号伝送される。 )説明を容易にするために、第1ポインタ更新値をプラス1(+1)
    と仮定する。 B側マルチプレクサ217は、第1ポインタ更新値として他の値を交互に選択し得る。 この選択については、後に記載する。

    【0146】減算器/加算器268の「C」出力ポートは、SPのレジスタファイル265のデータ入力ポート(DI)をフィードする。 「C」出力ポートはまた、2
    0ビット幅アキュムレーティングレジスタ269の入力を駆動する。 減算器/加算器268の個別の実行ポート(CY)は、バス239を介して更新制御ユニット26
    4のプラス/マイナスクロスオーバ検出入力(+/−)
    に接続している。

    【0147】アキュムレーティングレジスタ269の出力は、A側マルチプレクサ267の第2入力に接続している。 A側およびB側マルチプレクサ267および21
    7は、それぞれ、更新制御ユニット264の4ビット幅制御バスから供給される更新選択信号USEL−AおよびUSEL−Bによって制御される。

    【0148】減算器/加算器268の出力は、第2更新サイクルにおいて、SPのレジスタファイル265にロードしない。 その代わりに、ユニット268は、第2サイクルにおいて加算モードに置き換えられ、結果C=A
    +Bを生成する。 レジスタ269に蓄積された結果は、
    A側マルチプレクサ267を通して減算器/加算器26
    8の「A」入力ポートに転送される。 同時に、B側マルチプレクサ217は、(更新制御器264からの信号U
    SEL−Bによって)第2ポインタ更新値として4つの入力線のうちの1つを選択するように指令される。 第2
    ポインタ更新値は、減算器/加算器268の「B」入力ポートに適用される。 B側マルチプレクサ217の選択可能入力は、L M 、+1、0およびOLのレジスタファイル210によって出力されたOL Cn値である。

    【0149】0入力が選択されると、何も起こらず、第3更新クロックサイクルの開始時にレジスタ269の結果がレジスタファイル265に書き込まれる。 従って、
    減算器/加算器268から出力される最終結果は、第2
    更新クロックサイクルの終了時にSP=SP−1+0となる。

    【0150】第2更新サイクルにおいて、マルチプレクサ217の+1入力が選択されると、第2更新サイクルの終了時に減算器/加算器268から出力される結果は、SP=SP−1+1となる。 この結果は、第1更新サイクルの開始時にレジスタファイル265から最初に出力されたバッファ開始ポインタSPの値と等しい。

    【0151】OL Cn値が第2更新サイクル中に選択されると、減算器/加算器268から出力される最終結果は、第2更新クロックサイクルの終了時にSP=SP−
    1+OL Cnとなる。

    【0152】L M値が選択されると、減算器/加算器2
    68から出力される結果は、第2更新クロックサイクルの終了時にSP=SP−1+L Mとなる。 この最終動作を利用して、例えば、CH1バッファエリア243(図5)のバッファ開始が「a」位置から「z」位置に切り替わる際に発生するべきバッファエリアアドレス循環を実行する。 アドレスCH1−−00が1だけ減分すると、新しいアドレスは、CH0バッファエリア241の「z」位置を指し示す。 これは、サービスチャネルCH
    1の誤ったバッファエリアである。 更新制御器264のプラス/マイナスクロスオーバ検出入力が、減算器/加算器268の出力においてポジティブな結果からネガティブな結果への切り替え(例えば、0から−1)を検出すると、これに応答して、更新制御ユニット268は、
    第2更新サイクルにおいてマルチプレクサ217のL M
    入力を選択する。 これにより、最終結果L M位置は高い方(1バッファエリア前方)へシフトされ、CH1バッファエリア243の「z」位置を正確に指し示すポインタ値を生成する。

    【0153】第3更新クロックサイクルの開始時に、L
    D−4線は、更新制御ユニット264によってストローブされ、減算器/加算器268によって出力された値は、第3更新サイクル中に、レジスタファイル265の位置CHNに記憶されたSP値をオーバーライトする。

    【0154】要約すると、ポインタ更新動作は、図11
    のステートフローチャートの下側に示される3つのクロックサイクルを消費する。 第1サイクルは、レジスタ2
    65から現在の開始ポインタSPを読み出し、その開始ポインタSPを減算器/加算器268に第1通過させるのに使用される。 第1通過では、減算器/加算器268
    は、減算モードにある。 第2サイクルは、開始ポインタSPを減算器/加算器268に第2通過させるのに使用される。 第2通過では、減算器/加算器268は、加算モードにある。 第3更新サイクルは、新しいSP値をレジスタファイル265にロードさせるのに使用される。
    ポインタ開始レジスタファイル265の更新は、ダウンカウンタ289におけるステート可変ダウンカウンティングと同時に発生する。 更新サイクル1は、図11でS
    V=L' Cnとして定義されるステートと同時に発生する。 更新サイクル2は、SV=L' Cn −1として定義されるステートと同時に発生する。 更新サイクル3は、S
    V=L' Cn −2として定義されるステートと同時に発生する(L' Cn =3では、ステートSV=L' Cn −1は、
    ステートSV=2と同一であり、ステートSV=L' Cn
    −2は、ステートSV=1と同一である)。

    【0155】各チャネルの最小フィルタ長は、4と特定される。 なぜなら、SP更新動作を完了するのに3サイクル必要であり、2の次の最高累乗は、4であるからである。 これは、過度の制限とは見なされない。 なぜなら、大抵のFIRフィルタは、4よりはるかに大きなフィルタ長を有しているためである。

    【0156】サービスリクエストがAGチップ270によって処理され得る最大速度は、更新オーバーヘッド(1リクエストにつき4サイクル)、またはもしそれよりも大きい場合には、様々なチャネルのフィルタ長によって決定される。 L Cnのフィルタ長を有するチャネルC
    HnをサービスするのにL Cnクロックサイクル必要である。

    【0157】第1更新サイクルでB側マルチプレクサ2
    17がOLバス211を減算器/加算器268の「B」
    入力ポートに連結するとき、AGチップ270は、重複モードにあると言われる。 (FFT−CBuffモードは、重複モードを含む。)OLのレジスタファイル21
    0の出力は、現在のチャネルCnの重複値OL Cnと呼ばれる。 マルチプレクサ215は、重複モードが活性なときに、減分器219の出力を実際のフィルタ長L Cnのソースとして選択するように動作するのが好ましい。 同一の値はまた、最大バッファ長L Mとして作用する。 このような場合、すべてのチャネルについて、フィルタ長L
    Cnは一定に保たれ、最大バッファ長L Mと同一である。
    しかし、重複値OLは、チャネルからチャネルへと変化し得る。

    【0158】可変長フィールドコミュテータ(VFC)
    275の出力は、以下のいずれかの時点でアドレス増分ユニット285にロードする。 すなわち、前のチャネルのSV=0カウントがちょうど完了するときか、または未処理の活性チャネルリクエスト(ACR)が存在しない場合には、レジスタ260に新しいチャネル番号がロードされ、VFC275がそれに対応する生成アドレス信号(GAS)を生成した後である。

    【0159】循環処理機構は、SP更新機能に対して設けられているように、VFAI285に設けられている。 位置「w」が所定のチャネルサービシング動作のバッファ開始であり、フィルタ長が4より大きいと仮定する。 アドレス信号は、チャネルバッファエリア(例えば、243)の相対位置x、yおよびzを通してVFA
    I285シーケンスから出力されるため、バッファエリアの最終位置CHn−−L' Mに到達する。 この時点で、アドレス増分ユニット285は、同一バッファエリア(例えば、243)の頂部の「a」位置に戻って循環しなければならない。 コンパレータ206は、アドレス値CHn−−L' Mとの一致を検出し、その時点で可変幅リセット信号287をアドレス増分ユニット285に伝送する。 CHn−−L' Mアドレス信号の出力からC
    Hn−−00アドレス信号の出力への移行は、連続している。 後者は、クロックサイクルにおいて、前者に次いで即座に発生する。

    【0160】図6は、連続可変長フィールドアドレス増分ユニット285の実施態様をさらに詳細に示す。 20
    個のフリップフロップ300、301(図示されていない)、. . . 318および319のセットは現在のサーキュラバッファアドレス出力(CBAO)のビットA0
    0、A01(図示されていない)、. . . 、A18およびA19のそれぞれを記憶する。 これらの装置300から319のそれぞれは、ローカルクロック(LC)によってクロックされる同期D型フリップフロップである。
    フリップフロップ300から319のQ出力は、20ビット幅増分器(INCR)320の入力に連結している。 増分器320は、組合せ論理ブロックである。 この組合せ論理ブロックは、入力値Aプラス1を示す20ビット幅出力信号A'(A'=A+1)を生成する。 増分器出力A'の個々のビットは、それぞれA'00からA'19と標識される。

    【0161】20個の4入力幅マルチプレクサ330から349(すべては図示されていない)には、直列のフリップフロップ300から319における対応のフリップフロップのD入力に連結されたマルチプレクサ330
    から349のそれぞれの出力が設けられている。 マルチプレクサ330から349のそれぞれはまた、フロー制御マルチプレクサと呼ばれる。

    【0162】マルチプレクサ330から349のそれぞれの4つの入力は、A、A'、BおよびCと標識される。 フロー制御マルチプレクサ349の入力における接続は、他のマルチプレクサ330から348における接続を例示している。 マルチプレクサ349のA入力は、
    フリップフロップ319のQ出力に接続している。 マルチプレクサ349のA'入力は、増分器320のA'1
    9出力に接続している。 マルチプレクサ349のB入力は、VFCバス276からビットB19を受け取る。 マルチプレクサ349のC入力は、関連のチャネル保存マルチプレクサ379から0またはチャネル識別ビット(CHID 19 )を受け取る。 全部で20個のチャネル保存増分器360から379が存在し、フロー制御マルチプレクサ330から349のそれぞれに対して1つのチャネル保存マルチプレクサが設けられている。

    【0163】4ビット幅制御バス380は、フロー制御マルチプレクサ330から349のそれぞれの動作を制御する。 制御バス380は、4つの相互エクスクルーシブモードを有し、それぞれSELA'、SELC、SE
    LAおよびSELBと標識される。

    【0164】制御バス380モードは、低から高の順:
    SELA'、SELC、SELAおよびSELBに従って優先される。 低優先モードは、より高い優先モードの作動によってオーバーライドされる。

    【0165】SELA'モードは、他のモードSEL
    C、SELAまたはSELBの1つが作動しなければ、
    活性状態にある。 活性状態にあると、SELA'モードは、アドレス増分ユニット285を自動増分モードに押し出す。 増分器出力A'19は、データフローマルチプレクサ349を通過し、各クロックサイクルの開始時にフリップフロップ319へロードする。 フリップフロップ319の出力A19は、それによってすべてのクロックサイクルを増分させる。 ANDゲート381は、SE
    LA'信号を生成する。 ゲート381は、SELC線、
    SELA線およびSELB線にそれぞれ連結された3つの反転入力を有する。 SELC、SELAおよびSEL
    Bのすべてが活性(論理「1」)であると、SELA'
    は、不活性(論理「0」)となる。 さもなければ、SE
    LA'は、活性状態(論理「1」)にある。

    【0166】SELCモードは、制限等価条件(EQL
    M=1)に遭遇するサイクル後のクロックサイクルにおいて、ゼロまたは対応するチャネル識別ビットをフリップフロップ300から319にロードする。 フリップフロップ319のQ出力からマルチプレクサ379の入力までの破線接続によって示される1つの実施態様では、
    対応チャネル識別イネーブル制御ビット(CHID
    19 )が活性ならば、チャネル保存マルチプレクサ37
    9は、A19出力をマルチプレクサ349のC入力に戻す。 さもなければ、チャネル保存マルチプレクサ379
    は、論理「0」をマルチプレクサ349のC入力に伝送する。 戻されたA19ビットは、以前にVFC275からマルチプレクサ349のB入力を通してVFAI28
    5に通過したチャネル識別ビットCHID 19と同一である。 従って、マルチプレクサ379の非ゼロ入力は、挿入的に「(CHID 19 )」と標識される。

    【0167】VFAI285の第2実施態様では、破線で示される挿入(CHID 19 )接続は除去され、CHI
    19ビットは、生成アドレス信号(GAS)バス276
    から直接マルチプレクサ379に取り込まれる。 この第2実施態様では、VFC出力のチャネル識別部DF2
    は、VFAI285が同一チャネルをサービスしている限り一定でなければならない。 図4を参照すると、このことは、VFAI285が所定のチャネルのニーズをサービスしている間、パイプラインレジスタ263のCH
    N出力262を一定に保つことによって成し遂げられ得る。

    【0168】制限等価は以下のようにして検出される。
    20個のエクスクルーシブNORゲート(XNORゲート)が、フリップフロップ300から319のそれぞれの出力に対して1つずつ設けられている。 例えば、フリップフロップ319のA19出力ビットは、エクスクルーシブNORゲート388の1つに接続している。 エクスクルーシブNORゲート388の他の入力は、減分器218から対応の改変制限ビットL' M19を受け取る(図4)。 従って、XNORゲート388は、アドレスビットA19と制限ビットL' M19とを比較する。 同様の接続が、他のXNORゲートでなされ、各アドレスビットAnと制限ビットL' Mnとを比較する。 チャネル識別ビットCHID nが(VFC275または保持マルチプレクサ360から379によって)挿入/保持されるビット位置においては比較は行われない。 20個の比較オーバーライドORゲートは、各XNORゲートに対して1つずつ設けられている。 XNORゲート388の出力は、ORゲート389の1つの入力に連結しているのが例によって理解される。 ORゲート389は、等価指示信号EQ 19をワイド入力ANDゲート390に出力する。 EQ 19は、2つの代替条件下でhigh(「1」)
    になる。 第1条件は、CHIDE 19 =0およびA 19 =L
    M19である。 第2条件は、CHIDE 19 =1である。 E
    19信号は、A 1 9とL M19との関係にかかわりなく、第2条件においてhighになる。

    【0169】アドレス増分ユニット285の他の出力A
    00からA18のそれぞれに対して、XNORゲートおよびORゲート(388および389)の同様の組合せが設けられている。 ワイド入力ANDゲート390は、
    それらに対応する等価指示信号EQ00からEQ18を受け取る。 EQ00からEQ19のすべてが、論理「1」であるならば、ワイド入力ANDゲート390
    は、論理highのEQLM信号を、ANDゲート38
    2の非反転入力に出力する。 ANDゲート382の出力は、SELC線を駆動する。 ANDゲート382は、S
    ELAおよびSELB線にそれぞれ連結した2つの反転入力を有する。 EQLM線がhighになり、SELA
    およびSELBモードのいずれもが活性でない場合、S
    ELCは活性となる。

    【0170】SELA線は、ANDゲート383の出力によって駆動される。 ANDゲート383は、増分イネーブル線(INCREN)に連結した非反転入力およびSELB線に連結した反転入力を有する。 INCREN
    がhighになり、SELBモードが活性でなくなると、SELAは活性となる。 SELAモードが活性になると、フリップフロップ300から319のそれぞれのQ出力は、その対応するデータフローマルチプレクサ3
    30から349を通してそのD入力にフィードバックする。 このモードでは、VFAI285の出力データは、
    次のクロックサイクルの1つ次のサイクルにおいて同一のままである。

    【0171】SELB線は、ステートコントローラ29
    0のLD−B出力によって駆動される。 SELBモードが活性となると、バス276の対応の生成アドレス(G
    AS)ビット(B19、B18、...、B00)は、
    データフローマルチプレクサ330から349を通過して、対応のフリップフロップ300から319のD入力へと伝送され、次のクロックサイクルの開始時にフリップフロップにロードする。

    【0172】生成アドレス(GAS)ビットB19、B
    18、. . . 、B00は、VFC275において生成される。 可変長フィールドコミュテータ275は、セル−
    00からセル−19の20個のセルから構成される。 各セル(セル−xx)は、バス276の対応ビット(Bx
    x)を生成する。

    【0173】図7および8を組み合わせると一般的コミュテータセル400の内部構造が示される。 コミュテータセル−00からセル−19の各々は一般セル400と同じ構造を有している。 セル400はまたセル−xxで表される。

    【0174】デコーダ399はVFC275における全てのコミュテータセルに共通のものである。 それは各々がNCHB=5、NCHB=4、NCHB=3、NCH
    B=2、およびNCHB=1と標識された5つの出力ラインを有している。 デコーダ出力ラインNCHB=1からNCHB=5の各々は20個のコミュテータセル、すなわちセル−00からセル−19のそれぞれに接続されている。 説明を簡略にするために、デコーダ出力ラインNCHB=1からNCHB=5のセグメントは図7において複数の位置で示されている。 NCHB=5と標識されたセグメントは全て1つのNCHB=5ラインの一部であると理解される。

    【0175】デコーダ399は、DSPプロセスに使用されるバッファフィールドの数を示すために二進数で表された5ビット幅シグナルのNCHSを受信する。 デコーダ399の出力は所定のチャネルを表すのに必要とされる最小ビット数を示す。 与えられたチャネル数が17
    から32の間であれば、NCHB=5デコーダ出力ラインはhighとなり、必要とされるチャネルビット数は5であることを示す。 与えられたチャネル数が9から1
    6の間であれば、NCHB=4出力ラインがhighとなる。 与えられたチャネル数が5から8の間であれば、
    NCHB=3出力ラインがhighとなる。 与えられたチャネル数が3または4であれば、NCHB=2がhi
    ghとなる。 与えられたチャネル数が2であれば、NC
    HB=1がhighとなる。 与えられたチャネルが1つだけの場合は、その1つのチャネルを確認するためには全くチャネルビットは必要でなく、またチャネルビット数がゼロであることを示すためにデコーダ出力ラインN
    CHB=5からNCHB=1の全てがlowのままとなる。

    【0176】5つのビットがチャネル数を表すために用いられる時(NCHB=5は真)、5つのビットは各々位置:最上位桁から最下位桁の順でa、b、c、d、およびeが割り当てられる。 各コミュテータセル400
    は、それが出力するチャネル同定ビット(CHID−x
    x)の位置に対応するセル位置を割り当てられる。 CH
    Nバス262は5つのチャネル同定ビットをそれぞれ保持する:最上位桁から最小位桁の順でCHID−4、C
    HID−3、CHID−2、CHID−1、およびCH
    ID−0。

    【0177】NCHB=5が真であれば、セル位置「a」を割り当てられたコミュテータセルは最上位桁のチャネル同定ビット、CHID−4を出力する。 位置「b」を割り当てられたコミュテータセルは桁が次に大きいビット、CHID−3を出力する。 位置「c」を割り当てられたセルはCHID−2を出力する。 セル位置「d」を割り当てられたセルはCHID−1を出力する。 セル位置「e」を割り当てられたセルはCHID−
    0を出力する。

    【0178】チャネルビット数が4であれば(NCHB
    =4が真)、CHID−3からCHID−0の4つの桁の小さいビットのみがビット位置a、b、c、およびd
    それぞれを占める。 同様にチャネルビット数が3であれば、CHID−2からCHID−0がビット位置a、
    b、およびcそれぞれを占める。 チャネルビット数が2
    であれば、ビット位置aおよびbがそれぞれCHID−
    1およびCHID−0に占められる。 チャネルビットが1つだけの場合は、CHID−0が1つのビット位置a
    を占める。

    【0179】図8に示すように、ANDゲート410から414のそれぞれがチャネル同定ビットCHID−0
    からCHID−4の1つをNORゲート415およびN
    ANDゲート416を介してマルチプレクサ420のC
    HID−xx入力へと導く。 最適な実施態様においては、マルチプレクサ420は2つの入力、CHID−x
    xおよびS−PTR−xx、並びにBxxと称される1
    つの出力のみを有する。 他の実施態様では、マルチプレクサ420はダッシュされたゼロ接続で示された第3の入力を有する。 コントロールバス425はマルチプレクサ420の入力の1つをその出力Bxxとして選択する。 マルチプレクサ420の2つの入力態様においては、ORゲート424から伸びるCHIDE−xxはコントロールバス425を規定する。 CHIDE−xxライン425がhighであれば(論理"1")、マルチプレクサ420はCHID−xx入力信号をその出力に流す。 CHIDE−xxコントロールライン425がlo
    wであれば(論理"0")、マルチプレクサはそのS−P
    TR−xx入力信号をその出力に流す。 S−PTR−x
    x信号はSPバス266上の対応する20のビットの1
    つとして選択される(図4)。

    【0180】マルチプレクサ420の3つの入力態様において、追加コントロールラインZEおよびPTREがコントロールバス425中に提供され、各々がZERO
    およびS−PTR−xx入力をマルチプレクサ420の出力として選択する。 VFC275(図4参照)が、変数ビット幅V1、V2、およびV3にそれぞれ対応する3つのデータフィールド、DF1、DF2およびDF3
    を生成し、DF3データフィールドはゼロを適切数含んでいるということが想起される。 しかし、ZERO入力がマルチプレクサ420では必要とされない。 なぜなら、バッファ開始位置の特定のために用いられないF1
    入力フィールドの上部ビットが、RST信号の作用により自動的にゼロをロードされ、またアップデートコントロールユニット264のプラス/マイナスの交差を探知する部分の作用により、ゼロで維持され続けるからである。 CHIDE−xxイネーブルラインがlowであるなら、S−PTR−xxラインによって、適切なゼロビットまたはバッファ開始ポインタービットがマルチプレクサ420の出力にもたらされる。 従って、マルチプレクサ420の2つの入力バージョンは、DF1、DF
    2、およびDF3データフィールドのいずれにおいてもビットを生成するに十分である。

    【0181】操縦(ステアリング)ANDゲート410
    から414のいずれかが作動して、マルチプレクサ42
    0に連動するCHID−xビットのうちの1つを操縦するなら、CHIDE−xxコントロールラインは、OR
    ゲート424の出力時にhighとなる("1")。 ORゲート424の第1入力は、ANDゲート410を操縦する作動ラインと連絡している。 ORゲート424の第2
    入力は、NANDゲート423の出力に連結される。 N
    ANDゲート423は、ANDゲート411から414
    を作動するコントロール信号の反転バージョンとそれぞれ連結されている4つの入力を有している。 反転した走査可能ライン、SCANE、は走査テストモードの間、
    全ての作動を止めるANDゲート410から414の反転入力に接続している。

    【0182】図7に見られるように、第1NANDゲート451は、「a」セル位置ラインと連結した第1入力、およびNCHB=5デコ−ダ出力ラインと連結した第2入力を備えている。 NANDゲート451の出力は、インバーター474を介して作動ANDゲート41
    4の操縦入力に接続している。 NCHB=5が真であり、セル位置が「a」であるなら、インバーター474
    の出力はhighとなり、CHID−4ビットは、AN
    Dゲート414を介してマルチプレクサ420のCHI
    D−xx入力へと操縦する。

    【0183】NCHB=5が真であり、セル位置が「b」であるなら、NCHBおよびセル位置ラインとそれぞれ連結した入力を有する別のANDラインを作動する。 ANDゲート452の出力は、NORゲート463
    およびインバーター473を介して、ANDゲート41
    3の作動入力に伝わる。 ANDゲート452の出力がh
    ighとなると、CHID−3ビットは、ANDゲート413を介してマルチプレクサ420のCHID−xx
    入力へと操縦する。

    【0184】同様にして、別のANDゲート453は、
    ANDゲート453の入力が真であるなら、CHID−
    2をマルチプレクサ420のCHID−xx入力へと操縦するためのNCHB=5ラインおよびセル位置「c」
    ラインと連結した入力を備えている。 同様にして、別のANDゲート454は、NCHB=5ラインおよびセル位置「d」ラインと連結した入力を備えている。 別のA
    NDゲート455は、NCHB=5ラインおよびセル位置「e」ラインと連結した入力を備えている。 ANDゲート441から444は、NCHB=4が真であり(論理"high"で)、セル位置a、b、c、およびdのうちの1つが真である条件において操縦コントロールを提供する。 ANDゲート431から433は、NCHB=
    3が真であり、セル位置a、bおよびcのうちの1つが真である条件において操縦コントロールを提供する。 A
    NDゲート421および422は、NCHB=2が真でありセル位置「a」および「b」のうちの1つが真である場合に操縦コントロールを提供する。 ANDゲート4
    19は、NCHB=1が真でありセル位置「a」が真である場合に操縦コントロールを提供する。

    【0185】NORゲート463は、ANDゲート44
    1および452の出力を受信する。 NORゲート463
    の出力は、インバーター473を介してANDゲート4
    13の作動入力に伝わる。 NORゲート462は、AN
    Dゲート431、442および453の出力を受信する。 NORゲート462の出力は、インバーター472
    を介してANDゲート412の作動入力に伝わる。 NO
    Rゲート461は、ANDゲート421、432、44
    3および454の出力を受信する。 NORゲート461
    の出力は、インバーター471を介してANDゲート4
    11の作動入力に伝わる。 NORゲート460は、AN
    Dゲート419、422、433および444の出力を受信する。 NORゲート460の出力は、ANDゲート459およびインバータ−470を介してANDゲート410の作動入力に伝わる。 ANDゲート459は、A
    NDゲート455の出力と連結した反転入力を有している。 図9は、複合コミュテータセルが、どのように組み込まれて一体となり、可変フィールドコミュテータ27
    5の態様を形成するかを示している。 コミュテータセル00から19までの各々は、それぞれ「a」から「e」
    として標識された5つのセル位置入力を備えていることが示されている。

    【0186】記憶サイズ指示ラインMEMSZ=2
    20は、セル−19の「a」セル位置入力、セル−18の「b」セル位置入力およびセル−17の「c」セル位置指示入力に接続し、さらに図示されていないが、セル−
    16の「d」セル位置入力およびセル−15の「e」セル位置入力に接続している。 セル−19の「b」から「e」までのセル位置入力は、接地されている(論理"
    0"にセット)。セル−18の「c」から「e」までの入力も、同様に接地されている。 セル−17の「d」および「e」の入力も同様に接地され、図示されていないが、セル−16の「e」入力もまた接地されていると考えられる。

    【0187】MEMSZ=2 19ラインは、セル−18のセル位置「a」入力、セル−17のセル位置「b」入力、セル−16のセル位置「c」入力(図示されず)、
    セル−15のセル位置「d」入力(図示されず)およびセル−14のセル位置「e」入力(図示されず)に接続する。 同様に、MEMSZ=2 18指示ラインは、セル−
    17のセル位置「a」入力、セル−16のセル位置「b」入力およびセル−15のセル位置「c」入力などに接続する。

    【0188】スタックの底部では、セル−00は「a」
    セル位置入力と連結されたMEMSZ=2 1指示ラインを有している。 セル−00の「b」セル位置は、MEM
    SZ=2 2ラインに接続する。 セル−00の「c」入力は、MEMSZ=2 3ラインに接続する。 セル−00の「d」入力は、MEMSZ=2 4ラインに接続する。 セル−00の「e」入力は、MEMSZ=2 5ラインに接続する。

    【0189】ラインMEMSZ=2 2からMEMSZ=
    20までは、MEMSZレジスター204の19出力ビットによって駆動される(図4)。 MEMSZ=2 1ラインは接地しているが、MEMSZ=2 0ラインは、実際には回路の中に存在しない(仮想にすぎない)。

    【0190】レジスター204からMEMSZ指示ラインの1つのみが、一度にhighとなる。 MEMSZ=
    20ラインがhighで、チャネルビット数がゼロより高くなると、セル−19は、出力ラインB19の上にチャネルデータフィールド(DF2)の「a」位置ビットを出力する。 それと連動してCHIDE19可能ラインもまた高出力になり、チャネル同定ビットがラインB1
    9の上にあることを示唆する。 セル−19は、スタックの中の最上限セルであるために、「b」チャネルビット、「c」チャネルビット、「d」チャネルビットまたは「e」チャネルビットの出力として作動し得ない。 M
    EMSZ=2 20指示ラインがlowとなれば、セル−1
    9のB19、およびCHIDE19出力ラインは両者ともlowとなる。

    【0191】MEMSZ=2 20がhighで、チャネルビット数が1より多ければ、セル−18はチャネルデータフィールド(DF2)から「b」ビットを出力する。
    チャネルビット数が3以上であれば、セル−17は、チャネルデータフィールド、DF2の「c」ビットを出力する。 チャネルビット数が4以上であれば、セル−16
    はDF2フィールドの「d」ビットを出力する。 チャネルビット数が5であれば、セル−15はDF2フィールドの「e」ビットを出力する。

    【0192】同様に、MEMSZ=2 19がhighとなれば、例えば、セル−18はDF2フィールドのビット位置「a」出力として機能し、セル−17はDF2フィールドの「b」ビット位置出力として機能する。 MEM
    SZラインがコミュテータセル00から19のそれぞれのセル位置入力に配線され、各々のセルが、いつチャネル同定ビット(CHID−xx)を生成されたアドレス信号(GAS)に挿入せねばならないかを指示し、その場合は、どのチャネル同定ビット(CHID−0からC
    HID−4)を挿入するかを指示する。 VFC275のCHIDEコントロール出力は、ゼロを挿入するか、または限界状態(EQLM=1)の探知に関するチャネル同定ビットを使用するかを、以下のVFAIの保護マルチプレクサ360から379(図6)に指示する。

    【0193】DSPシステムの記憶サイズ、および提供されたチャネル数に関連する位置におけるチャネル同定ビットの自動挿入、および保護について上記されたメカニズムにより、容易に使用できる。 図10は、AGチップ270が使用され得るさまざまな実施態様の例を示している。 RAMユニット240のサイズは、1メガワード(2 20データワード)から4データワードまで変化し得る。 チャネルの数は、1から32まで変化し得る。

    【0194】AGチップ270のユーザーは、同じプリント回路基板を使用しつつ、記憶容量の異なるメモリデバイス240の設置を望むなら、プリント回路基板を配線し直したり、または新しい回路基板を用いる必要なしに、チップ270のフィールド転換機能によって、異なるメモリデバイスを簡単に挿入することが可能となる。
    コレクトMEMSZおよびNCHSの仕様がひとたびレジスター204および201ロードされると(図4)、
    アドレスビットは、自動的に適切なメモリデバイスアドレスラインへと経路を定める。

    【0195】図10においては、サーキュラバッファアドレス出力ビットは、最上位から最下位の順で、それぞれCBAO−19からCBAO−00として表される。
    記憶サイズが1メガワードに等しく、1チャネルのみが使用されるなら、図10の最上部に示されるように、ポインタデータフィールド、即ちDF1は、CBAOフィールドの20ビット全てを占める。

    【0196】記憶サイズが1メガワードで4チャネルが使用されるなら、2つの最上位ビットCBAO−19およびCBAO−18は、チャネル同定データフィールド、即ちDF2の「a」および「b」ビットをそれぞれ定義する。 相対バッファ位置ポインティングフィールド、即ちDF1はCBAOフィールドの残りを満たす。
    記憶サイズが1メガワードで32チャネルが使用されるなら、DF1フィールドがCBAOフィールドの残りを満たす時、CBAOフィールドの最上位である5つのビットは、DF2フィールドの「a」から「e」のそれぞれのビットとして作用する。 記憶サイズが1メガワードの場合、ゼロで満たされたフィールド、即ちDF1は存在しない。

    【0197】記憶サイズが例えば256データワードにまで減少するなら、ゼロフィールド(DF3)はCBA
    Oフィールドの大きな上部を満たす。 チャネルが1つだけなら、DF1フィールドはCBAOフィールドの最小位8ビットを満たす。 チャネルが4つならば、ビット0
    5−00がDF1フィールドを定義する際に、CBAO
    ビット07および06はDF2フィールドの「a」および「b」ビットになる。

    【0198】チャネルが32で記憶容量が128データワードにすぎない場合、CBAOビット06から02はそれぞれチャネル指示フィールド、即ちDF2の「a」、「b」、「c」、「d」および「e」を定義する。 CBAOビット01および00は、次に、相対アドレスフィールド、DF1を定義する。 CBAOフィールドの上端はゼロで満たされている。

    【0199】記憶サイズは最小4データワードまで減少できるが、チャネルの最小フィルター長が4であるため、データ使用は1チャネルに限られる。 この場合、ゼロを充填されたフィールドDF3はCBAOビット19
    から02を使用する。 相対アドレスフィールドDF1
    は、CBAOビット01から00を使用する。

    【0200】上記からわかるように、データフィールドDF1、DF2およびDF3各々のビット幅V1、V2
    およびV3はシステム環境の関数として変化する。 AG
    チップ270は、異なる記憶容量、および提供された異なるチャネル数を有するシステムにおいて使用され得る。 多重チャネルは、優先の基礎に基づいて扱うことができる。 それぞれのチャネルは、独立のサンプリングレート(チップクロック周波数の4分の1程度まで高くなる)において、動作することができる。 それぞれのチャネルは、独立したフィルターの長さ(FIR−CBuf
    fモードで)か、独立した重なり価(FFT−CBuf
    fモードで)が割り当てられる。 1つのチャネル要求の作業から次のチャネル要求の作業まで、連続した切り替えを行うため、チップ内での演算はパイプライン化される。

    【0201】上記開示内容は、発明の実例を示すためのものであって、発明の範囲を限定するものではない。 多くの改変と変更は、当業者が上記開示内容を研究した後、明らかになるであろう。

    【0202】例としてダイエリアが許すのであれば、多数のチャネル、例えば32個の代わりに64個のチャネルを扱うために、ピン数、バス幅およびレジスターサイズを増やすことが出来る。 また、20の代わりに例えば21以上のアドレス入力ラインを有するより大きな記憶ユニットを扱うために、ピン数、バス幅およびレジスターサイズを増やすことが出来る。 逆に、せいぜい一度に16個のチャネルが提供され、あるいは最も大きいと見込まれた記憶ユニットが、20個未満のアドレス入力ラインを有する場合、ピン数、バス幅およびレジスターサイズを減少することが出来る。 動作スピードは、技術的に可能であれば、40MHzを超えて増加し得る。 シリコンをベースにしたCMOS以外の技術を、AGチップの実現のために使用し得る。 他の技術例としては、TT
    L、ECLおよびIII−V族化合物半導体の使用が挙げられる。

    【0203】所定の使用要求に対する応答において、アドレス信号出力の数は、時には上記記述の“フィルターの長さ”L Cnとして表され、FIRフィルターの状況の中で取り上げられるとき、チャネル特異的連続数あるいは長さの値、L Cn 、および/または重なり値、OL
    Cnは、相関関係があり適応性のある信号プロセスを含む他のディジタル信号プロセス(DSP)アルゴリズムに起因すると理解される。

    【0204】マルチチャネルサーキュラバッファには多くの使用途がある。 イメージデータは、1次元または2
    次元の相関による分析のため集められ、DSPチップおよび開示されたアドレスジェネレーターチップを含むシステムに供され得る。 機械視覚は、大きなイメージデータベースを検索することによって実現され、入力イメージ信号に最も相関関係があり、あるいは比較的密接に相関関係がある対象を見い出す。 検索時間を短縮するため、それぞれの相関は、各々のチャネルを提供され、多重相関が同時に実行される。

    【0205】適応信号プロセスのフィールドにおいて、
    同様のアプローチが用いられる。 同一の入力データが、
    複数の異なったDSPアルゴリズムに適用され、最良に作動するアルゴリズムが見いだされる。 それぞれのアルゴリズムは、分離したチャネルのように取り扱われる。
    処理チップのDSP資源は、それぞれのチャネルあるいはアルゴリズムが独立したサンプル率を有していても、
    最終ユーザーにわかりやすい方法によって、様々なアルゴリズム(チャネル)の全域で多重タスクされる。 経済的に実用的であり使いやすいシステムが、比較的複雑なディジタル信号処理タスクを取り扱うために提供される。

    【0206】

    【発明の効果】本発明によれば、信号処理性能を多重チャネルに広げる能力を有する高速サーキュラバッファ型のディジタル信号処理システムにおいて、適切なアドレスシーケンスをサーキュラバッファを有するメモリデバイスに供給するための高速アドレス信号生成器、可変長フィールドアドレスシーケンサ、及び可変長フィールドコミュテータが提供される。 本発明によるアドレス生成器によれば、優先順位に基づいて、複数のチャネルからのサービスリクエストを異なる速度で非同期的に処理することが可能である。 また、最初のリクエストチャネルに対するサービス終了直後、次のチャネルのサービスリクエストを処理する、連続パイプライン構造が実現されている。 こうして、高速度マルチチャネル環境において、複雑なディジタル信号処理タスクを実行するための経済的かつ実用的なシステムが得られる。

    【図面の簡単な説明】

    【図1】サーキュラバッファを使用するディジタル信号処理システムのブロック図の一部である。

    【図2】サーキュラバッファを使用するディジタル信号処理システムのブロック図の一部である。

    【図3】本発明によるサーキュラバッファ管理システムのブロック図の一部である。

    【図4】本発明によるサーキュラバッファ管理システムのブロック図の一部である。

    【図5】本発明によるサーキュラバッファ管理システムのブロック図の一部である。

    【図6】図4に示されるような連続可変長フィールド増分器(VFAI)の概略図である。

    【図7】単一コミュテータセルの一部を示す図である。

    【図8】単一コミュテータセルの一部を示す図である。

    【図9】複数のコミュテータセルがどのように組み合わされて可変長フィールドコミュテータ(VFC)を形成するかを示す図である。

    【図10】開示されたシステムによって取り扱われ得る、多数の異なるメモリサイズおよびチャネル番号配置を示す図である。

    【図11】SV=0ステートおよびスリープモードまたは新しいL' Cnカウントへの移行を示す部分ステートフローチャートである。

    【符号の説明】

    100マルチチャネルディジタル信号処理システム 110マルチプレクサ 111量子化スイッチ 112A/D変換器 113A/D変換器 115CH5サンプル速度制御器 116第2サービスリクエスト信号 120チャネルスキャン制御ユニット 121ローカルクロック(L/C)生成器 140第1SRAMユニット(RAM−1) 145サーキュラバッファ 180コマンドユニット

    ───────────────────────────────────────────────────── フロントページの続き (72)発明者 マイケル エドワード フレミング アメリカ合衆国 ワシントン 98684,バ ンクーバー,エヌ. イー. 168ティーエ イチ アベニュー 2317 (72)発明者 エリック クレイグ アンダーソン アメリカ合衆国 ワシントン 98661,バ ンクーバー,ナンバー7106,イー. エバ ーグリーン ブルバード 5535

    高效检索全球专利

    专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

    我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

    申请试用

    分析报告

    专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

    申请试用

    QQ群二维码
    意见反馈