(57)【要約】【課題】Ｘ線又はγ線のエネルギを解析する方法および装置を実現する。【解決手段】高速信号処理システムは、検出器−プリアンプ２０から入力データを受け、検出器を照射するＸ線の分光分析を行う。システムはデジタル化されたデータ・ストリーム内でＸ線信号の存在を検出しそれらの振幅のフィルタされた推定値を引き出す、組み合わせデジタル論理２５で実現されたハードワイヤード・プロセッサと、フィルタされた振幅の推定値を精錬しそれらが所望の分光分析を生成するように結び付けるプログラマブル・デジタル信号処理コンピュータ２８との間で、必要なデジタル信号処理ステップを分割することによって低コストで高スループットを達成する。ハードワイヤードプロセッサは２つの低速と高速の並列処理チャンネルを有する。【選択図】図２
2007163516.tif 000002
【特許請求の範囲】
【請求項１】
ステップ状パルスを含む電気信号を分析する高速でデジタルベースの方法で、平均レートＲで到着し、前記ステップ状パルスの少なくともいくつかの各振幅を推定し、
アナログデジタル変換器（ＡＤＣ）で前記電気信号をデジタル化し、Ｒより大きいサンプリング周波数Ｓで動作し、前記電気信号のデジタル化された入力信号として称されるデジタル表現を生成するステップと、表現と、
ＦｉＰＰＩとして称され、周波数Ｓあるいはその倍数のクロックで動作するデジタル組合せ論理を提供するステップと、
前記ＦｉＰＰＩに組み合わされるプログラマブル・デジタル計算素子（ＤＳＰ）を提供するステップと、
前記ＦｉＰＰＩを使って、デジタル整形フィルタを前記デジタル化された入力信号に適用するステップと、
前記ＦｉＰＰＩを使って、前記デジタル化された入力信号における前記パルス信号の存在を検出するステップと、
前記ＦｉＰＰＩを使って、前記デジタルフィルタの出力から前記パルス信号の各振幅の各推定値を引き出すステップと、
前記ＦｉＰＰＩから前記ＤＳＰへ前記推定値を転送するステップと、
前記ＤＳＰを使って、前記デジタルフィルタを理想的ではない各ステップの各波形に適用した結果生じる各エラーに対して前記推定値を補償するステップとを備える方法。
【請求項２】
請求項１の方法であって、前記ＤＳＰを使って実行され、前記推定値を箱に詰めることで、そのように補償され、前記検出されたパルスの前記振幅の分光表現を作るステップをさらに備える方法。
【請求項３】
請求項１の方法であって、前記ＤＳＰを使うことによって実行され、電気信号のソースと前記ＡＤＣの前記入力の間での前記電気信号の取り扱いのための前記パルス振幅推定値を補正するステップをさらに備える方法。
【請求項４】
請求項３の方法であって、前記デジタル化ステップの前に実行され、前記入力信号のダイナミックレンジを減らすようにパラメータのセットに従って前記電気信号を調整するステップをさらに有する方法。
【請求項５】
請求項４の方法であって、
各パラメータの前記セットを前記ＤＳＰに伝えるステップと、
前記補正ステップにおいて前記セットの前記パラメータの値を使用するステップとをさらに備える方法。
【請求項６】
請求項４の方法であって、
前記入力信号が前記ＡＤＣの前記入力範囲を越えるかどうかを検出するステップを備え、もしそうならば、
偽の可能性のあるフィルタを通された振幅の推定値を得ることを避けるように前記ＤＳＰに信号を送るステップと、
前記入力信号が前記ＡＤＣ入力範囲へ戻るように前記パラメータのセットを調節するように前記ＤＳＰに信号を送るステップのうち少なくとも１つを実行する方法。
【請求項７】
請求項１の方法であって、前記電気信号は高ダイナミックレンジを持つパラメータ的に表現できる（ＰＤ）部分と、さらに極端に狭いダイナミックレンジを持つsignal-of-interest（ＳＯＩ）部分からなり、前記調整ステップは、
各パラメータの前記セットの各値によって前記ＰＤ部分の複製を生成するステップと、
差信号を形成するために前記電気信号から前記複製を引き算するステップとを備え、任意的に、
前記差信号の振幅を調整するためにゲインステージを使うステップ、あるいは、
前記ＡＤＣのナイキスト周波数以上の前記差信号の各周波数成分を取り除くフィルタを使うステップを備えるか、あるいは、
両ステップとも行う方法。
【請求項８】
時定数τによって記述される指数関数的減衰を持つステップ状の各パルスを含むノイズのある入力信号にひとつあるいはそれ以上のパラメータのセットによって記述される整形フィルタを適用して、そららの間で該パルスの近辺で指数関数的減衰をする各成分の傾きの値に実質的に独立である前記パルスの各ステップ振幅の推定値を引き出す方法であって、
フィルタされた信号を生成するために、前記整形フィルタを前記入力信号に適用するステップと、
整形フィルタの各パラメータのセットの各値とτに依存する第１の定数によって前記フィルタされた信号を重み付けすることによって第１の重み付き信号を生成するステップと、
整形フィルタの各パラメータのセットの値とτに依存する第２の定数によって前記入力信号を重み付けすることによって第２の重み付き信号を生成するステップと、
該第１と第２の重み付き各関数を結合させることによって補償された信号、すなわち、前記ステップ状パルスの近辺で指数関数的に減衰する成分の傾きを補償するフィルタされた信号を表わす補償された信号を形成するステップを備える方法。
【請求項９】
請求項８の方法であって、前記第１と第２の定数が、
具体的な整形フィルタに対して前記ステップ状パルスの振幅と該ステップ状パルスの近辺の指数関数的に減衰する成分の傾きの値の項で数学的に前記フィルタ出力振幅を表現するステップと、
前記入力信号振幅の項における前記傾き表現するために、指数関数的減衰の傾きとその瞬間的な振幅の間の比例を使うステップと、
前記フィルタ出力振幅と前記入力信号振幅の項における前記パルスステップ振幅についての前記表現を解くステップとによってを確定される方法。
【請求項１０】
請求項８の方法であって、第２の重み付き信号を生成する前記ステップの前に実行され、前記入力信号に別のフィルタを適用して前記第２の重み付き信号が前記別のフィルタの効果を含むようにするステップを更に備える方法。
【請求項１１】
請求項８の方法であって、第１及び第２の重み付き関数を生成する前記各ステップの前に、前記入力と該フィルタされた各信号の離散的な測定値がステップ状パルス振幅の推定値を生成するのに、
第１の時間間隔で前記ステップ状パルスの発生から分離され前記るフィルタを通された信号を瞬時に獲得するステップと、
第２の時間間隔で前記ステップ状のパルスの発生から分離される前記入力信号を瞬時に獲得するステップと、
前記第１及び第２重み付け各定数の値の確定における前記第１及び第２の時間間隔の値を有するステップと、
前記フィルタを通された信号及び入力を該方法の後に続くすべてのステップで同一の前記獲得された値で置き換えるステップとの付加ステップによって使用される方法。
【請求項１２】
時定数τによって記述される指数関数的減衰をする各ステップ状パルスを含むノイズのある入力電気信号を、それらの間で前記パルスの近辺における前記指数関数的減衰をする成分の傾きの値に対して実質的に独立である前記パルスのステップ振幅の推定値を引き出す分析をする方法であって、
一つあるいはそれ以上の各パラメータのセットによって記述されるフィルタを、前記入力信号にそのノイズ成分を減らすために適用するステップ、
第１の定数によって前記フィルタを通された信号を重み付けることによって第１の重み付けされた信号を生成するステップと、
第２の定数によって前記フィルタを通された信号の時間遅延されたヴァージョンを重み付けることによって第２の重み付き信号を生成するステップで、前記第１及び第２の各定数は、フィルタのパラメータのセットの前記値と、τと、前記時間遅延の値Δに依存するステップと、
ステップ状の各パルスそれぞれに対する最大値を持つ出力信号を形成するために前記第１と第２の重み付け各信号を結合するステップで、前記最大値は前記パルスの振幅に比例し、前記パルスの近辺の指数関数的減衰をする成分の前記傾きの値に対して実質的に独立であるステップとを備える方法。
【請求項１３】
請求項１２の方法であって、前記第１及び第２の各定数は具体的なフィルタに対して
前記ステップ状パルス振幅の値と、前記ステップ状パルスの近辺で指数関数的減衰をする成分の減衰定数τ、時間遅延Δ、傾きのフィルタのパラメータの前記セットの値での前記フィルタされた信号そのものの値から時間遅延された該フィルタに通した信号の値を単純に減算した結果との間の差を数学的に表現するステップと、
指数関数的減衰の前記傾きはその振幅に直接比例するという原理を前記フィルタを通された信号値での前記傾きを表現することに適用するステップと、
前記フィルタの出力の振幅と前記時間遅延されたフィルタの出力の振幅での前記パルスステップ振幅に対する前記表現を解くステップとによって確定される方式。
【請求項１４】
平均入力レートＲで到着するステップ状のパルスを含む電気信号のデジタル表現を分析して、前記ステップ状パルスの少なくともいくらかの振幅の推定値を提供し、前記表現はＲより大きいサンプリング周波数Ｓで動作するアナログ−デジタル変換器(ADC) で前記電気信号をデジタル化することによって生成され、前記表現は前記デジタル化された入力信号と称され、前記回路は周波数Ｓあるいはその倍数でクロックされるデジタル組合せ論理回路であって、
デジタル化された入力信号を受け取り、フィルタされた前記信号と称される出力信号を提供するデジタル整形フィルタと、
前記デジタル化された入力信号を受け取り、前記デジタル化された入力信号のパルスの検出を表わす出力信号を提供するパルス検出器と、
前記デジタル整形フィルタに接続され、トリガー信号に応じて該フィルタされた信号の値を獲得するように動作する出力バッファと、
前記パルス検出器と前記出力バッファに接続され、パルスの検出に応じてトリガー信号を提供し、該トリガー信号が前記出力信号に対して、前記デジタル整形フィルタの少なくとも一つの特徴に依存する量だけ前記パルス検出器から遅延されるタイミング回路を備える前記回路。
【請求項１５】
請求項１４の回路であって、ステップ状パルスを含む前記電気信号は入力が光子あるいは粒子検出器であるプリアンプから入力され、前記ステップ状パルスの前記振幅は前記検出器に吸収される前記光子あるいは粒子のエネルギを表現する回路。
【請求項１６】
請求項１４の回路であって、
第１の該整形フィルタと称される前記デジタル整形フィルタは、少なくともひとつの時定数τS で特徴付けられ、前記パルス検出器は、τS より十分に小さい少なくともひとつの時定数τf を特徴とする第２のデジタル整形フィルタを備える回路。
【請求項１７】
請求項１４の回路であって、前記出力バッファがＦＩＦＯメモリを有する回路。
【請求項１８】
請求項１４の回路であって、前記パルス検出器が、
付加されたフィルタされた信号を生成する付加された整形フィルタと、
付加された該整形フィルタに接続されたピーク検出器を備える回路。
【請求項１９】
請求項１４の回路であって、
前記パルス検出器と前記タイミング回路の間に接続され、前記パルス検出器からの信号の出力の連続する組の間の間隔を測定し、前記デジタル整形フィルタが関係するパルスの振幅の有効な推定値を生成できるようにするのに不十分なとき前記タイミング回路が前記トリガー信号を生成しないようにする“低速の”重ね合せ検査器をさらに備える回路。
【請求項２０】
請求項１４の回路であって、前記パルス検出器と前記タイミング回路の間に接続され、前記パルス検出器の出力信号から到着したパルスの組が前記パルス検出器によって分離されたパルスとして分解できないほど接近しているかを確定し、前記タイミング回路が前記トリガー信号を生成しないようにする“高速の”重ね合せ検査器をさらに備える回路。
【請求項２１】
請求項２０の回路であって、
前記パルス検出器が、付加されたフィルタを通した信号を生成する高速デジタルフィルタと、付加されたフィルタを通した信号を受け取るピーク検出器を備え、そして
前記高速重ね合せ検査器が、検出されたピークがプリセットされたしきい値以下に降下するまでクロック周期の数をカウントし、カウントしたクロック周期の数がプリセットされた値を越えるいずれの検出されたピークについても“重ね合せ”としてラベル付けをし、前記プリセットされた値は、高速デジタルフィルタの各パラメータと入力信号のリセットタイムの両方に基づく前もって決定された調節可能なパラメータである回路。
【請求項２２】
請求項２０の回路であって、
前記パルス検出器が、付加されたフィルタされた信号を生成する高速デジタルフィルタと、該付加されたフィルタされた信号をを受け取るピーク検出器を備え、
前記高速重ね合せ検出器は、
前記付加されたフィルタされた信号の遅延された複製を生成するデジタル遅延要素と、
最大振幅の固定した部分を取り、検出された各ピークの最大振幅を獲得する手段と、
前記検出されたピークの遅延された複製がそれ自身の最大振幅の前記固定した部分を越えるクロック周期の数をカウントする手段と、
カウントされたクロック周期の数が、高速デジタルフィルタの、パラメータと入力信号の立ち上がり時間の両方に基づく所定の調節可能なプリセットされた値を越えるどんなピークも“重ね合せ”としてラベル付ける手段を有する回路。
【請求項２３】
請求項１４の回路であって、前記出力バッファは外部素子に接続され、
該外部素子が前記出力バッファによって獲得された振幅の各推定値を受け入れることが可能なときのクロック周期をカウントすることによってシステムの“ライブタイム”を測定するカウンターを更に備える回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は一般的には、吸収された放射能に応答する検出システムで生成されたパルスをデジタル的に処理するシステム、特に、低コスト、高分解能、高レートなＸ線やγ線のためのスペクトロメータでそのようなパルスを処理することに関する。
【背景技術】
【０００２】
政府の権利
合衆国政府はエネルギ省から与えられた契約No. DE-FG03-92ER81311 に準ずる本発明について権利を有する。
【０００３】
特に、シンクロトロン放射能研究では、低コスト、高速度のＸ線スペクトロメータのアレイが必要である。データ取得を最大限に利用するために、そのようなスペクトロメータは、重ね合せ拒絶(pileup rejection)を持つ良好なエネルギ分解能、高カウント・レート能力を持ち、コストが十分低いので３０あるいはそれ以上の検出器のアレイが予期されることができる。全多チャンネル分析(full multichannel analysis)（ＭＣＡ）能力はかなり適用の範囲を広くするであろう。全てのスペクトロメータの機能の完全なコンピュータ制御はまた、別のやり方による検出アレイのセットアップならびに構成を行うとアレイの大きさが大きくなるにつれてかなりやっかいになるので、非常に重要である。スペクトロメータの物理的な大きさもまたコンパクトになって好ましい。
【発明の開示】
【発明が解決しようとする課題】
【０００４】
現在のエレクトロニクスによると多チャンネル分析を装備しない方法では検出器 1台当たりでも約６０００ドルのコストがかかるとともに、１３要素検出器(13 element detector) で格子棚全てを満たしてしまうので、所期の目的は達成できない。それゆえ、３０要素検出器を取り付けるのは非現実的となり、さらに１００要素となると基本的には不可能である。多くの利用に対し、低価格ＭＣＡは十分に速くはなく一方高速のＭＣＡは高価なので、多重チャンネル分析は、検出器アレイと共にはあまり利用されない。重ね合せ検査(pileup inspection) は散発的に実行され、しかし、だいたいは８ｋｅＶ以上のエネルギに対してのみ効果的である。少ないモジュールはスペクトロメータの機能の部分的なコンピュータ制御は可能とするが、しかしだいたいはコンピュータインターフェイスなしのモジュールの約２倍のコストがかかる。単一のスペクトロメーターのチャンネルを調整するのにはほんの数分必要であるが、この取組みは要素の数だけ増倍され、１０要素あるいはそれ以上のアレイではかなりの負担になる。
【０００５】
これらシンクロトロンの用途、そして他の多くにとってもまた、高カウント・レートでかつ良好なエネルギ分解能をもって完全エネルギ分析が可能な、低価格，小容量の分光測定装置を備えて、コンピュータシステムとインターフェイスすることがさらに可能となる。必要なチューニング操作を、適当なプログラムによって、自動的に行うことができる点も有利であろう。
【課題を解決するための手段】
【０００６】
本発明は、検出器−プリアンプシステムからのパルス信号を処理し、検出器に吸収されたＸ線又はγ線のエネルギを解析する方法及び装置を提供する。具体的な実施例では、それは、小型であって、低コストであって、高速に、重ね合わせ検査を実行し、コンピュータに容易に接続できるようにデジタルインターフェースを有する。きわめて一般的なプリアンプで効果的に動作することができる。
【０００７】
本発明は、検出器−プリアンプ入力パルスを解析するデジタル信号処理技術を使用する。この方法では、低コストで高速のアナログ−デジタル変換器（ＡＤＣｓ）及びデジタル信号プロセッサ（ＤＳＰｓ）を使用して、所望の性能基準（performannce criteria)に合致するようにする。本発明は、エネルギ分解能を複製し、従来技術のアナログスペクロメータ（分光器）の重ね合わせ拒絶(pileup rejection)性能を凌駕し、以前はＳＣＡシステムだけの特徴であった非常に高いカウント・レートでの完全な出力スペクトラを生成する。デジタル処理は、商用のアナログ回路に比べて、全体のコストと物理的な容量がそれぞれ４及び１０のファクタで低減されることを可能にする。すべての分光(spectrometory) チューニング機能は、デジタル的に実現され、外部のコンピュータ制御の下で自動的に取り扱われる。
【０００８】
意図した応用では、低コストでの高いデータスループットは最適なエネルギ分解能よりも更に重要である。このような目標を達成するため、本発明はデジタルパルス処理を、２つのステージ(stage) で実行する。第１のステージは、“ハードワイヤード”(hardwired) デジタル複合論理を使用して、時間不変フィルタリングを実現し、第２のステージは、プログラマブルＤＳＰを使用して、時間依存のパラメータに基づいて第１のステージの出力を調整して補正する。この処理の分割が、本発明の成功にとっての限界点である。
【０００９】
具体的な実施例では、ハードワイヤード論理ステージは、従来の適応形フィルタリング(adaptive filtering)、尖頭状重み付け(cusp-like weighting) 、又はデコンボルーション(deconvolution) 手法を回避する。このような手法は、乗算や重み付け機能のためのルックアップテーブルや時間変動処理(time variant processing) 及びプロセス間(interprocess)同期の双方のためのデータセットのバッファリングなどを、含む複雑なデータ演算を必要とする。その代わりに、本発明は、加算と減算だけを必要とするアルゴリズムを使用して、低速と高速の両方のチャンネルで、簡単な整形(shaping) フィルタ（台形が好ましい）だけを使用する。従来技術で普通に行われているように、高速チャンネルの出力は重ね合わせ検査と低速のピーク獲得(capture) に使用され、低速チャンネルのフィルタリングは良好なエネルギフィルタリングを実行するのに必要な雑音（ノイズ）の低減を行う。例えば、GouldingとLandisの設計によるアナログスペクトロメータ（ＵＳ特許第4,658,216 号）を参照のこと。すべてのパルスを同様に処理し、すべての複雑なデータ演算を除いて、第１のステージの設計を単純化することにより、それを単一媒体サイズのフィールド・プログラマブル・ゲート・アレイ(FPGA)で容易に実現でき、それでも処理は500,000 回／秒(cps) 以上である。比較をすれば、Mott et al.(ＵＳ特許第5,349,193 号）に示された適応形デジタルフィルタリングスペクトロメータは、制御データフローに必要なステートマシンを実現するためだけに同様の大きさのFPGAを必要とする。
【００１０】
しかしながら、従来技術でより複雑な手法の開発が行われた理由が高性能の実現であったにもかかわらず、単純なフィルタだけを使用したのでは、既存のアナログ装置に比べて許容できる分光性能を実現できない。従って、本発明は、プログラマブル・コンピュータを使用した第２の処理ステージを、対等な性能を実現するのに必要な時間変動補正(correction)に適用する。これらの補正は、容易に数10MHz にもなるシステムのサンプリング速度では実行できず、１０倍から１００倍も遅い平均信号パルス・レート(rate)で、高価でないＤＳＰを使用して相対的に複雑な補正を実現する。更に、全ての可能な補正を同時に行う必要はない。ハードウエアによる解決策に比べて、検出器−プリアンプの組による補正だけが、システムのスタートアップ時に、ＤＳＰにダウンロードされる。具体的な実施例では、例えば、上記の500,000cpsのデータ・レートは、４０＄のＤＳＰチップだけで処理できる。
【００１１】
このように、本発明は、Ｘ線及びγ線スペクトロメータにおいてパルスをデジタル的に処理するようにこれまで工夫された、データの流れに(data stream）おけるパルスの同定及び時間依存の補正と最適化とを伴った振幅の導出に必要なすべての演算がハードワイヤード論理を使用して実行される“ハードワイヤード”クラスと、これらの全ての演算がソフトウエア制御の下に実行される“コンピュータ解析”のクラスの解決策とは区別される。前者のクラスは、Koeman（ＵＳ特許第3,872,287 号）、Lakatos et al.（ＵＳ特許第5,005,146 号）、Georgiev et al.(IEEE Trans. Nucl. Sci. 41(1994) 1116-1124)、Mott et al., Jordanov and Knoll (IEEE Trans. Nucl. Sci. 42(1995) 683-685) 、及びFarrow et al. (Rev. Sci. Instr. 66 (1995) 2307-2309)の装置を含む。Georgiev et al. とMott et al., Jordanov and Knoll の装置の商用化は、Target, Inc.、Princeton Gamma-tech, Inc.、及びAmptek, Inc.によってそれぞれ試みられている。後者のクラスの例は、Takahashi et al. (IEEETrans. Nucl. Sci. 40(1993) 626-629) 、Al-Haddad et al. (IEEETrans. Nucl. Sci. 41(1994) 1765-1769) によって報告されている。後者のクラスは現在のところ商用化されておらず、その原因は有用なデータ・レートの処理に十分な速さのプロセッサが非常に高コストであるからだと思われる。本発明は、このように新しい“ハイブリッド”クラスを定義し、デジタルフィルタリングを、ハードワイヤードのプリプロセッサ（前処理プロセッサ）とプログラムされた信号補正器との間で分配する。
【００１２】
分光フィルタリング処理の第２のステージにおける、ＤＳＰの補正的な使用は、検出器に見られる光子・エネルギのスペクトルの生成に使用されるＭＣＡステップと混同しないようにする必要がある。フィルタされた(filtered)パルス振幅のソーティング(sorting) とビニング(binning) は、また、専用のデジタルコンピュータによって共通に処理されるが、これらの機能は概念的にはフィルタリング処理の一部ではない。従って、従来技術の多くのシステムがデジタル・フィルタリング・ステージに続いてＭＣＡを行うＤＳＰを有する類似の物理的な構成を有していても、本発明におけるＤＳＰの革新的な使用は、上記及び以下に説明されるように、まったく異なるものである。
【００１３】
具体的な実施例では、単一のＤＳＰが、発明性あるフィルタリング機能、ＭＣＡ機能、アナログ調整フロントエンド(analog conditioning front end) の制御、及びシステム制御コンピュータに対するデータ入出力の取扱の４つの論理的に分離した機能を実現するのに実際に使用される。
【００１４】
この具体例では、本発明は、入力データ・ストリームからランプ状(ramp-like）成分を除去して、システムのＡＤＣで必要な精度のビット数を低減するために、アナログ信号調整(ASC:Analog Signal Conditioning)フロントエンドと共に使用される。このＡＳＣの入力制御パラメータは、ＤＳＰによってデジタル的にセットされ、調整した信号がＡＤＣの入力範囲(input range) 内に保持されるように調整される。デジタル化後、パルス・ストリームは上記のハードワイヤード論理ユニットで処理され、それはパルスを検出し、三角フィルタリングを行い、重ね合わせ検査を実行する。更に、良好なピークとベースライン(baseline)の値が獲得され、更なる処理のためにＤＳＰに送られる。ＤＳＰは、ピーク値を正確なエネルギ値に変換する演算と補正を行い、その結果を、ＭＣＡスペクトラを生成するように、箱に入れる(bin) 。ＡＳＣの動作はハードワイヤード・フィルタリング方法に歪を生じるが、ＤＳＰは、ＡＳＣの制御パラメータとフィルタされていない信号値の両方を適当に使用して、適当な補正を行える。ピーク間のベースライン値を獲得することにより、ＤＳＰは各種の原因で生じるシステム的な変動を少なくするように、ピークの高さを補正できる。
【００１５】
本発明においては、ハードワイヤードデジタル処理ステージは、それが「フィルタリング・ピーク検出・重ね合わせ検査」"Filtering, Peak detection, and Pileup Inspection"を実現するため、ＦｉＰＰＩと呼ぶことにする。ＦｉＰＰＩ処理は各データ・サンプルを処理するが、入力データ・ストリームにおけるＸ線パルスの部分的な(local) 振幅を検出して正確に獲得するために必要な、フィルタリングと検査機能との少数の組だけを実行する。正確なＸ線エネルギ値を生成するには、これらの獲得ピーク振幅を処理するのに、より複雑なＤＳＰ演算が必要であるが、実際の事象を検出するときに行うだけでよい。この分割は、必要な高価な高速論理の量と必要なＤＳＰの速度（すなわちコスト）の両方を最小にするので、有利である。その結果、各解決策を単独で使用するのに比べて、よりコストを下げられ、性能を高くできる。
【００１６】
１つ又は他の具体例にて現われるＦｉＰＰＩ機能は、デシメータ(decimator) 、低速台形フィルタ(slow trapezoidal filter) 、高速台形フィルタ(fast trapezoidal filter) 、ピーク検出器(peak detector) 、重ね合わせ検査器(pileup checker)、出力バッファ、及び入力カウント・レート(input count rate (ICR))カウンタを備える。ＦｉＰＰＩ演算は、スペクトロメータシステムが動作を開始する前に、ＦｉＰＰＩにロードされるいくつかのデジタルパラメータによって制御される。
【００１７】
Ｎによる除算機能は、ＡＤＣからの入力をＮ値の連続したブロックに分解し、入力データ・ストリームの周波数の１／Ｎで各ブロックの平均値を出力する。調整可能なパラメータＮは、２の累乗であり、１、２、４、８などをとり得る。デシメータの第１の機能は、ＦｉＰＰＩ低速フィルタにおける長いフィルタリング時間を必要とする先入れ・先出し(FIFO)メモリの量を低減することである。
【００１８】
低速と高速の両方のフィルタは対称な台形で、そのピーク時間(peaking times) τp と上辺の長さτg は外部からロードされるパラメータである。台形のピーク値は検出されたＸ線のエネルギの測定値を構成する。これらの機能は、２つの遅延オフセット差の間の差の移動平均によって形成されるものでありＦＩＦＯの機能を使用して実現される。高速フィルタは、低速フィルタよりはるかに短く、通常、クロック速度の速度で進行する。低速フィルタは、クロック速度の１／Ｎでデシメータ出力と共に働き、３２ワードだけの深さ(deep)のＦＩＦＯを使用して、数μｓ以上のピーク時間を有する。
【００１９】
ピーク検出回路は、信号パルスに対する高速フィルタの出力を監視して、あるしきい値レベルＴを越えたＭ以上連続した値を探し、そのような値の組（セット）を見つけた時に、そのセット内の最大信号値の到着時間を獲得する。この時間が、以後関係する信号パルス到着時間として定義される。外部からロードされたパラメータＴとＭは、ノイズによるトリガに対して適当な不感性を維持しながら、低い信号レベルに対する感度を最適化するように調整される。
【００２０】
重ね合わせ検査器は、低速フィルタ台形が上辺の中央でサンプルされることを保証して、このサンプリングが良好なピーク（good peak)に対してだけ起きることを保証する。許容できる時間間隔で前者と後者を分離するパルスが、良好なピークになる。
【００２１】
重ね合わせ検査は、いくつかのテストからなる。これらのうちの２つは、高速フィルタ出力の各ピークを分離するのと同様に、分解するには接近しすぎている「高速の重ね合わせ」パルス用のものである。時間ｄで分離された重ね合わされた高速パルスの組は、高速フィルタの単一パルス出力の期間をＤからＤ＋ｄに伸ばすので、第１の高速重ね合わせテストは、しきい値Ｔにおける高速パルス幅を、Ｄより若干長い値にセットされたパラメータＷと比較する。
【００２２】
第１の高速重ね合わせテストは、しきい値Ｔにおける高速のピークの幅をテスト値と比較するが、第２の高速重ね合わせテストは、その半値幅を、理想的な高速パルスの半値幅より若干大きくセットしたテスト値と比較する。このテストは、パルスの振幅には無関係であり、実現するのはより複雑であるが、大きくしきい値を越えることはなく、従って固定の振幅しきい値以上の期間が振幅に大きく依存する非常に低い振幅の高速パルスに対して、精度を向上させることができる。
【００２３】
低速のチャンネルにおける重ね合わせは、高速パルスが検出される毎にリセットされるカウンタを使用して検査される。もしこのカウンタがリセットされることなく外部パラメータの値Ｓに到達すれば、低速フィルタの出力値はその瞬間に出力バッファに、ＦｉＰＰＩのフィルタされていない入力値として獲得される。もし、カウンタが第２の外部パラメータの値Ｎに到達し続けたら、このパルスは後縁が重ならない。もし記憶されたフラグ値が前縁も重ならないことを示していれば、ピーク値は良好で、ＤＳＰ割り込みフラグがその獲得を指示するように上昇する。Ｎの値は典型的には、τspにτsg/2と小さな余裕期間とを加えたのに等しい。Ｓの値はタイミングオフセットを調整されたＮである。
【００２４】
良好な事象値が獲得された後、第２の試みが行われＮをカウントする。もし成功すれば、低速フィルタの出力はそのベースライン・レベルに戻り、正規化補正で使用するためのＤＳＰの要求で値が獲得される。
【００２５】
ＩＣＲカウンタは、重ね合っているかいないかにかかわらず、Ｘ線が検出された時には何時でも増加される。この値は、読み取られ、時間毎にゼロにされ、部分的な重ね合わせレートの統計が集められ、量的に正確な結果が必要な時に、正確なデッドタイムの補正を行うことを可能にする。
【００２６】
この同じ実施例では、ＤＳＰはその機能のすべてがソフトウエアで実現された商用のデジタル信号処理回路である。これらの機能は、ＡＳＣの制御、獲得したＦｉＰＰＩのデータ値をピーク高さ評価の精度に最適化する補正、スペクトラを生成するマルチチャンネル解析の実行、及びシステムと外部との間のデータ及びパラメータの入力／出力（Ｉ／Ｏ）転送の４つの一般的なカテゴリィに入る。Ｉ／Ｐ回路とソフトウエアは当業者であれば容易に実現できる。
【００２７】
ＤＳＰは、ＡＳＣのランプ発生器(ramp generator)におけるオフセットとスロープＤＡＣに初期値をまず設定することによりＡＳＣを制御し、要求に応じてランプ発生器をリセットする。最初のＤＡＣのセッティングは、動作を開始する前に評価される。スロープＤＡＣセッティング評価は、時間毎に更新され、検出器へのＸ線の到着レートにおける変動を補償する。もしＡＳＣの出力がＡＤＣの入力範囲外になれば、オフセットＤＡＣはそれを記憶するように、調整される。
【００２８】
ＤＳＰは、ＦｉＰＰＩレジスタからの獲得ピーク値を、割り込み制御の下で検索しそのピーク値とＩＣＲカウンタ値とを、フィルタされなていないＦｉＰＰＩ入力値と獲得した事象を特徴付けるすべての他の値と含むレジスタを読み取る。ＤＳＰの設計により、割り込み応答(interrupt response)は、最小の低速フィルタピーク時間より小さく、従ってこの読み取りはシステム全体の応答にいかなる無効なデッドタイムをも与えない。良好なピーク値は、エネルギ値に変換され、そのような補正が許容できる精度を実現できるように行われる。次に、それが選択されたスペクトルエネルギ範囲内にあれば、ＭＣＡがその結果を集められたスペクトルに入れる。
【００２９】
更に、ＤＳＰは、良好なピーク値を読んだのと同様の方法でＦｉＰＰＩベースライン値を次々に獲得する。"set baseline"フラグがこの２つのケースを識別する。ベースライン値は、定義ではエネルギがゼロの事象に対応し、ＦｉＰＰＩのゼロオフセットを確立するのに使用される。ベースライン統計も集めることができ、スペクトロメータのエネルギ分解能を監視（モニタ）など診断の目的で使用できる。
【００３０】
もし補正されていなければ、ＡＳＣでのプリアンプの入力信号からのランプ波形(ramp waveform) の減算がスペクトルの歪を生じる。ＤＳＰがＡＳＣのランプ発生器を制御するので、それは元の信号の振幅を演算でき、適当な補正を行うアルゴリズムが実現できる。ＤＳＰは、これらの補正の後平均のベースライン値を監視し、それがゼロでなければこの値を良好なピークエネルギから減算して、例えば検出器漏れ電流から生じるいかなる残留誤差も補償する。
【００３１】
本発明の特質及び利点は、明細書の後述の部分と図面を参照することにより、更に理解できる。
【発明を実施するための最良の形態】
【００３２】
具体的な実施例の説明
１：システムの概観
１．１．プリアンプの入力信号
具体的な実施例の本記述は、われわれが処理する、検出されたＸ線に対応した、電気パルスについての簡単な論議によって明らかにされるであろう。図１Ａは、半導体検出ダイオード 10 、電圧供給源 12 、フィードバックキャパシタＣf 15をつけた充電積分プリアンプ 13 、及びフィードバック要素 17 を備える一般的なＸ線検出器／プリアンプ回路を示す。ダイオード 10 に吸収されたエネルギＥx のＸ線は、Ｅx ／εに等しい電荷Ｑx を放つ。ここで、εはダイオードの材質に依存する。Ｑx は、図１Ｂに示すように、Ｃf 15で積分され、Ｑx ／Ｃf あるいはＥx ／（ε／Ｃf ）と等しい出力電圧ステップＶx を生成する。本発明は、Ｖx の測定において、ノイズσを減らすことによって正確にＥx を見積もるためのデジタルフィルタリングを使用している。
【００３３】
機能的には、２つの基本的なタイプのプリアンプがある。第１のタイプでは、抵抗によるのと同様に要素 17 はキャパシタ 15 を連続的に放電(continuously discharges) する（“ＣＤ" の場合）。図１Ｃは、それぞれの間で指数関数形減衰をする一連の信号ステップ（図１Ｂにより）を備える典型的なＣＤプリアンプ出力を示す。平均出力電圧Ｖavg は、入力ダイオード電流Ｉinに要素 17 の抵抗値をかけたものに等しい。
【００３４】
第２のプリアンプのタイプでは、要素 17 は、プリアンプ 13 の出力電圧が上位リセット電圧ＶＵに達したときに周期的に閉じて、プリセット下位限界Ｖｌが達せられたとき再び開くスイッチである。これは、周期リセット（“ＰＲ" ）(periodic reset)の場合の一般的な出力を示す図で、図１Ｄがその代表的な出力を示し、ＶＵに応じて立ち上がる電圧ステップの勾配を備え、リセットがおきて電圧ＶＬにもどり、処理が再び始まる。ランプの平均の傾きＳavg はＩin／Ｃf に等しい。平均の傾きについての典型的な信号変動は図１Ｅに示される。
【００３５】
１．２．ダイナミックレンジとデジタル化レートの議論
ＡＤＣの選択は、良好な重ね合せ拒絶と良好なエネルギ分解能両方を持つデジタルスペクトロメーターを実現するうえで重大である。重ね合せに関して：少なくとも20メガサンプル／秒（ＭＳＡ）は200ns のパルス重ね合せ検査時間を実現するために必要である。
【００３６】
エネルギ分解能に関して：経験的に、良好なエネルギ分解能を得るためには、ノイズレンジσ（図１Ｂ参照）はＡＤＣの最下位ビットΔＶ１の約４倍でなければならない。これはＡＤＣの前のアンプステージのゲイン（ボルト／ビット）をセットする。
【００３７】
【数１】
2007163516.tif 000003
【００３８】
与えられたΔＶ１に対して、ＡＤＣは０からＶmax の範囲を全部カバーするのに十分なビットＮB を持たなければならない。
【００３９】
【数２】
2007163516.tif 000004
【００４０】
ＮB の一般的な値は14である。
【００４１】
２０ＭＳＡで動作する14ビットＡＤＣは存在するが、しかし我々が置換したいアナログエレクトロニクスのコストと比較して高価である。高速の8 から10ビットのＡＤＣは、しかし、デジタル通信におけるその広い用途のおかげで高価ではない。本発明では、我々はこれらのより安価な装置が使用できるようにプリアンプ信号のダイナミックレンジを十分減らす。14-15 ビットから8-9 ビットへの減少はまた、より短い語は処理のためのエレクトロニクスを少なくし、所定のデータ・レートで処理をするためのパワーを少なくするという両方の点で有利である。
【００４２】
１．３．機能の構成
図２は本発明のデジタルスペクトロメータの基本的な構造を示す。従来の検出器−プリアンプ 20 からの入力は、図１Ａにあるように、３つの機能ブロックを備えるデジタルスペクトロメータ 22 へ入力される。その３つの機能ブロックは、アナログ信号調整（ＡＳＣ）とアナログデジタル変換器（ＡＤＣ）のブロック 23 ，ハードワイヤードデジタルフィルタとピーク検出器と重ね合せ検査器（ＦｉＰＰＩ）(a hardwired digital filter, peak detector and pileup inspecter) のブロック 25 ，及び具体的な実施例においては、信号精練、多チャンネル信号分析，ＡＳＣ制御，及び入出力（Ｉ／Ｏ）機能のためのデジタル信号処理装置（ＤＳＰ）であるプログラマブル・デジタル・コンピュータのブロック 27 である。デジタルスペクトロメーター 22 は汎用制御コンピュータとインターフェイス 28 に接続されており、それからパラメータ値と制御信号を受け取り、集められたスペクトラをそれらへ送る。ＡＳＣ 23 の機能はデジタルスペクトロメータの各ブロック 25 ，27の動作には必要ないが、しかし我々の好適な実施例では設けられている。各ブロック 25 ，27の機能は、様々な回路を使って実現されるが、しかし我々の好適な実施例では以下に示された明細書によって実現されている。一般的用途の制御コンピュータとインターフェイス 28 は従来のものであり、様々な一般的な個人あるいは実験室のコンピュータとインターフェイスの基準のいずれも含む。ＤＳＰにコンピュータを接続する詳細は従来の当業者にとって公知である。
【００４３】
２：ＡＳＣ：アナログ信号処理とＡＤ変換ブロック
２．１．ＡＳＣの機能の概念
ＡＳＣ 23 は入力信号のダイナミックレンジを縮めることと、式1 を満たすようにそのゲインを調整すること２つの主要な機能を持つ。ダイナミックレンジの縮小は、プリアンプの信号を２つの成分に分解することによって成し遂げられる。その２つの成分とは、広いダイナミックレンジの、“低周波数" 信号部分（ＬＦＦ）と、さらにもっと狭いダイナミックレンジの“高周波数" 信号部分（ＨＦＦ）であり、興味のある信号（ＳＯＩ：図１Ｄを図１Ｅと比較）を搬送する。“低周波数" と“高周波数" の周期は記述的である。なぜなら、この用途では、ＬＦＦの基本周波数はＨＦＦのＳＯＩを搬送する周波数帯幅よりももっと小さいからである。重要な概念は、ＬＦＦの信号部分の妥当な複製は比較的小さい個数のパラメータによって記述され、それはたやすく入力信号から生成、減算され得る。残留信号部はそしてＳＯＩを搬送するオリジナルのＨＦＦに密接に近く、非常に縮小されたダイナミックレンジを持ち、非常に縮小されたビット数のＡＤＣを使ってデジタル化することを可能にする。
【００４４】
ＤＳＰ 27 によるパラメータの制御の下では、ＡＳＣ 23 は従ってＬＦＦ複製を生成し、入力信号からそれを減算し、式1 に合うように残留ＨＦＦ複製(remaining HFF replica) の振幅を調整する。ＡＤＣビットを少なくする以外にも、この方法は３つの付加的な有利性を有する。第１に、ＤＳＰ 27 はＡＳＣの制御パラメータがわかり、それが収集しているエネルギスペクトラムを精製するのにそれらパラメータを使うことができる。第２に、ＨＦＦ部分のＸ線パルスはＡＤＣの入力範囲にわたってほとんどランダムに（身震いされて）降下することになるので、スペクトロメータ 22 の精度と線形性はＡＤＣの微分積分非線形性に対して比較的に鋭敏ではなく、どんな直流オフセット電圧に対しても完全に鋭敏でない。第３は、プリアンプの入力の異なった各タイプは単にパラメータの調節によって調整することができる。ＣＤプリアンプに対しては、ＬＦＦは、図１Ｃに示されるように、単に値Ｖavg にセットされる定数に過ぎない。ＰＲプリアンプに対しては、ＬＦＦは図１Ｄに示すように、交互の傾きＳavg のランプとリセットを備える、のこぎり波の機能である。
【００４５】
２．２．ＡＳＣのハイレベルに関する説明
図３はＡＳＣと変換ブロック 23 の機能ブロック図である。アンプ 30 は、検出器−プリアンプからの入力信号と、プリアンプの信号を回路の他の部分で約ゼロに中心を置くようにするデジタルアナログ変換器（ＤＡＣ）32のバイアスＤＡＣによってセットされる電圧レベルとの差を増幅する。減算器 33 は、アンプ 30 の出力からＬＦＦ生成器 35 の出力を減算する。ＬＦＦ生成器 35 の出力波形は、オフセットＤＡＣ37、及びスロープＤＡＣ 38 及びＤＳＰ 27 からのリセット線 40 からの入力によって制御される。減算器 33 の出力は、可変ゲインがゲインＤＡＣ 43 で制御されるアンプ 42 に送られる。コンパレータ 44 は信号を検査し、もしそれがＡＤＣの入力限界を越えたなら割り込み線 45 でＤＳＰ 27 に警報を発する。ローパスフィルタ 47 は、それがＡＤＣ 48 に達する前に、ＡＤＣのナイキスト限界を越えるどんな信号も取り除く。
【００４６】
ＡＤＣの出力は、デジタルＡＤＣの出力バス 50 を経由して直接的にＦｉＰＰＩブロック 25 に接続され、バスバッファ 52 を経由して間接的にＤＳＰブロック 27 に接続されている。バッファ 52 は双方向ＤＳＰデータバス 53 、ＤＳＰアドレス線 54 、リセット線 40 に接続されており、ＤＳＰ 27 が各ＤＡＣ 32 ,37 ，38，43へデジタル入力値をロードするようにし、ＡＤＣ出力バス 50 上の所望のＡＤＣ出力データ・ストリームをサンプルする。このようにＤＳＰ 27 は直接ＡＳＣ 23 の全機能を制御し、また直接ＡＤＣ出力 50 においてその効果を測定することもできる。適切な制御ソフトウェアによって、これはＤＳＰ 27 がまずＡＳＣ 23 に好適な動作量を最初にセットし、そしてＬＦＦ生成器 35 の動作もまた動的に制御することを可能にする。各インターフェイスバッファを使用することの詳細は、デジタルエレクトロニクスの従来技術に関する当業者にとっては公知であり、さらには記述しない。
【００４７】
２．３．ＡＳＣブロックの出力信号
ＤＳＰ 27 の制御のもとでは、ＬＦＦ生成器 35 は直流オフセットとともにリセットするランプ関数(ramp function) を生成する。ＣＲプリアンプに対しては値Ｖavg の直流オフセットのみが使われる（図１Ｃ参照）。ＰＲプリアンプに対しては、直流オフセットは値ＶＬにセットされ、ランプの傾き(ramp's slope)は平均の傾きＳavg と一致するように調整される（図１Ｄ参照）。ランプ減算(ramp's subtraction)、ゲイン調整、フィルタリングした後の、３つのＰＲ出力信号の各例は図１Ｅに示される。準周期的なランプ構成を取り除いた後、個別Ｘ線パルスはそれらの到着時に変動を伴う垂直なステップとして現れる。トレースＡは到着した場合の平均レートを示す。各トレースＢ，Ｃはその平均からの一時的な変動を示す。ランプ減算は各ステップ間の負の傾きを残すが、それらの振幅はこの手続きによって感知できるようには修正はされず、デジタルスペクトロメータによって復元される。
【００４８】
ＣＲプリアンプに対しては、垂直の目盛りがＡＤＣの全体の入力範囲を満たすように調整されることを除いて、ＡＳＣの出力はだいたい図１Ｃのようになる。この場合、各Ｘ線パルス間の範囲は、プリアンプと同じ指数関数形減衰の傾きを持つ。
【００４９】
２．４．ＡＳＣの具体的な実施例
図４は、ＡＳＣ 20 のアンプ 30 、減算器 33 、ＬＦＦ生成器 35 、可変ゲインアンプ 42 の各ブロックの回路の概略である。本回路はアナログエレクトロニクスの当業者にとってはおそらく自明であり、少しの構造の説明のほかにそれ以上の論議は少しも必要としない。従来技術の当業者にとっては公知である回路の各詳細、例えば電力供給フィルタリングまたはオペアンプ補償は、示されていない。本実現は唯一ではなく、多くのほかの適切なアレンジは容易に工夫できる。
【００５０】
入力信号をＡＳＣ回路の範囲で中心に持っていくことのほかに、アンプ 30 の主要な機能は、入力からＡＳＣを保護し、約３つのファクタによって入力を増幅することにより回路の他の部分のノイズの要求事項を低減する。したがって適当な周波数帯幅のとても低いノイズのオペアンプを使うことが実現されるべきである。
【００５１】
ＬＦＦ生成器 35 はリセット可能な電流積分器であり、オフセット電圧Ｖoff を有しリセットに５μｓ以下の整定時間で低ノイズ、高精度な各ランプを生成するように設計されている。抵抗 68 はＤＡＣ 37 の電流を電圧Ｖoff に変換する。キャパシタ 72 はＤＡＣ 38 からの電流を、スイッチ 75 によってリセットされるまで積分する。抵抗 77 はＦＥＴオペアンプ 65 のスルーレイトが限界を越えないように保証する。オペアンプ 78 とスイッチ 85 は、ＬＦＦ生成器 35 の出力の振幅と符号が入力と一致するようにする。ＤＡＣ 37 は、一般に、ＬＦＦ生成器 35 の出力とアンプ 30 からの信号がプリアンプのリセットの後すぐに一致するように調整される。
【００５２】
可変ゲインステージ 42 は、粗いゲインを精密なゲインのための電圧制御、可変ゲインオペアンプであるアナログ・デバイゼス社製ＡＤ６０３ 92 の100 Ωに固定された入力インピーダンスにするスイッチ 88 と抵抗 90 を備える。ノイズを最小限にするために、固定出力ノイズがオペアンプ 92 は約12dBの細かいゲイン調整に対してのみ使用される。
【００５３】
ＡＳＣ部 20 の残された各ブロック、コンパレーター 44 とローパスフィルタ 47 は、直列に接続されている。コンパレータは、図１Ｅを参照すると、変動によって、ＡＳＣの出力信号がＡＤＣの入力範囲に位置するＬＬからＵＬの範囲を越える、どんな場合も検出することが求められる。
【００５４】
ローパスフィルタ 47 は、ＡＳＣの出力信号の周波数帯幅を、ＡＤＣ 48 のサンプリング周波数の半分であるナイキスト周波数ｆN 以下に制限する。なぜなら、より高周波数の全ノイズは、デジタル化された出力信号に“偽信号化" されて、余計にノイズを増やすからである。この具体的な実施例では、ＡＤＣは20MHz 、すなわちｆN が10MHz で動作する。さまざまなフィルタ設計が使用できるにもかかわらず、４極のバターワースフィルタが具体的な実施例で使われる。なぜなら、それは周波数における速いロールオフと、最小のピーク時間を持ち、４つの受動部品だけを必要とするからである。ナイキスト判別法が満たされたときスペクトロメータエネルギ分解能はサンプリング・レートに独立であることを、我々は実験的に確認した。2,5,10,25MSAで動作し、各々1,2.5,5,12,5MHz の各ローパスフィルタを有する実施例は、集められたデータサンプル数が、2MSAにおける8 から25MSA における100 に変化するにもかかわらず、２μｓのピーク時間をもつ三角フィルタリングに対してすべて同一のエネルギ分解能を作り出した。サンプリング・レートを増やしてエネルギ分解能の改善を報告した様々な著者はナイキスト判別法を満足させることに明らかに失敗している。従ってサンプリング・レートを選ぶことは、主として、良好パルスの組の分解能を実現するためにサンプリング・レートを上げることと、デジタル処理のコストを下げるようにサンプリング・レートを下げることとのトレードオフである。
【００５５】
３．ＦｉＰＰＩ：フィルタ、ピーク検出、重ね合せ検査回路
３．１．ＦｉＰＰＩ設計の概念
発明の概要でも議論されているように、本発明のスペクトロメータは２ステージでデジタルフィルタリングを実行する。第１のステージは、ＦｉＰＰＩと称され、フィルタリング、ピーク検出、重ね合せ検査(Filtering, Peak detection and Pileup Inspection) を行うために、組合せ論理を使う。フィルタリング回路を最小化し、処理速度を最大化するために、加算と減算以上の複雑な演算はこのステージでは行われない。速度を最大限に利用するために、すべての演算は、１クロック周期(clock cycle) あたり１点で入力データを処理するようにパイプライン化される。すなわち、もしＯ（ｎ，ｊ）がデータサンプルｎに必要とされるｊ番目の演算であるなら、そしてタイムステップｉとすると、同時にＯ（ｎ，１），Ｏ（ｎ−１，２），Ｏ（ｎ−２，３）などを実行する。
【００５６】
この方法には重大な限界がある。なぜなら、補償調整はパルスの具体的な状態のもとでは行われることができず、加算あるいは減算のみを使うフィルタは正確ではないので我々の分光動作の目的を満たさない。それゆえ、発明の概要で言及したように、第２のフィルタリングステージでは、所望の精度を実現するのに必要な具体的な補正（プリアンプの形式に基づいたり、小域的な各動作状態など）を行うようにＤＳＰが使用される。
【００５７】
この方法は様々な理由で有利である。第１に、ＦｉＰＰＩはとても安くかつとても速くなり得る。例えば、好適な実施例では、20MSA のＡＤＣと動作させても単一のＦＰＧＡで実現される。第２に、第２ステップでの機能は、ＡＤＣのサンプリング・レート（例えば、20MSA と比較して500,000cps）よりもずっと低いＸ線信号事象の平均到着レートでのみ実行される。必要とされる精度は典型的に簡単な各法則であるので、現在の技術で実施されているように、得られたピーク値だけにそれらを適用することは、データ・ストリーム自体に（プリコンディショニングやデコンボルーションを通して）適用するより、より簡単かつ速くなる。同様の実施例では、20MIP のＤＳＰのみが第２のステージの処理に必要とされる。
【００５８】
具体的な実施例でのＦｉＰＰＩはそれゆえ、部分集合として三角フィルタリングを含む台形フィルタリングのみ備える。この選択は、実現されようとしている高カウント・レート・レジーム(high count rate regime)でのスペクトロメータのエネルギ分解能を下げない。なぜなら、Revista del Nuovo Cimento (1986)  Vol.9(1),pp.1-146 で発表された“Processing the Signals from Solid State Detectors in  Elementary-Particle Physics ”と題される論文でGatti とManfrediが示したように、三角フィルタリングは、実際には、連続した白色雑音が支配する短い整形時間レジームでは理想的な固定された整形の形式であるからである。より長い整形時間であっても、三角整形はなおもとても効果的である。核原子物理学の年間評論３８ (1988),pp.217-277で発表された“Low Noise Techniques  in  Detectors ”と題された論文で、ラデカ(Radeka)は、最大限のエネルギ分解能に対してさえ、三角フィルタの分解能は理想的な尖頭フィルタよりも8%だけ悪いことを示した。
【００５９】
３．２．ＦｉＰＰＩの具体的な実施例、ハイレベルに関する考察
１つの具体的な実施例では、ＦｉＰＰＩ論理はフィールド・プログラマブル・ゲート・ アレイ（ＦＰＧＡ）を使って実現される。これは小さなスペースでの高論理密度を可能にする。さらに、ＦｉＰＰＩ論理は動作の前にファイルからダウンロードされるので、新しい各状態を満足したり設計改良を具体化することに対しても、容易に修正されることができる。より安いコストあるいはより速い動作速度が所望される他の各実施例では、ＦｉＰＰＩは、用途特定集積回路（ＡＳＩＣ）あるいは他の論理回路で実現される。
【００６０】
具体的な実施例におけるＦｉＰＰＩ 25 の微細構成は図５ に示される。データ・ストリームはＡＤＣ出力バス 50 に入り、低，高速信号両チャンネルに流れ込む。第１の低速チャンネル回路、デシメータ 97 は、プリセット・ファクタによって到来信号データ・レートを減らす。その出力は、デジタル的に台形フィルタリングするように備えられた低速フィルタ 98 によって処理される。低速フィルタ 98 の信号出力のピーク最大値は検出されたＸ線のエネルギに一致し、出力バッファ１００によって得られることができる。低速チャンネルの動作はＤＳＰ 27 からＦｉＰＰＩ 25 にロードされる３つのパラメータ、デシメーション・ファクタ 102と低速フィルタの長さと各ギャップ値 103によって制御される。
【００６１】
高速信号チャンネルのもっとも重要な機能は、低速フィルタ 98 から適切な値を得るためにデータ入力ストリーム 50 とトリガー出力バッファ 100を検査することである。第１の高速チャンネル回路は高速フィルタ 105であり、それはまたデジタル的に台形フィルタリングを実現するが、しかし低速チャンネルにおけるよりももっと短い時定数である。ピーク検出器 107は、少なくとも設定した連続する数のサンプルについて設定されたしきい値を越える各ピークについてその出力を検査し、そしてこれらのピークの到着時間の最大値を得る。これらの各到着時間は関連するＸ線事象到着時間を定義し、出力バッファ 100へのトリガーのタイミングに使用される。ピーク検出器からの各出力パルスは、低速フィルタ 98 で最大値が一部重なり合う（重ね合せ）各事象を拒絶する重ね合せ検査器 108によって検査される。重ね合せ検査器 108が良好なピークを検査するごとに、第２のステージの処理に対してＤＳＰ 27 へ送る低速フィルタ 98 の出力値を獲得するために出力バッファ 100を起動させる。各ピーク検出器 107の出力パルスはまた入力カウント・レート（ＩＣＲ）カウンタ 110を進める。低速チャンネルにおけるのように、高速チャンネルの動作はＤＳＰ 27 からロードされた各パラメータによって制御される。すなわち、高速フィルタの長さとギャップ 112、ピーク検出器のしきい値と最小ピーク幅各試験値 113と、重ね合せ検出器に必要な、ピーク相互の間隔，高速ピーク最大幅，タイミングオフセット値 115である。
【００６２】
出力バッファ 100が起動されるごとに、それはまた、ＩＣＲカウンタ 110の値とどんな形式の低速フィルタの値が得られたのかを印すフラグの、２つの別の各値を得る。そのバッファはしたがってＤＳＰ 27 に４つの各値を出力する。すなわち、２つの得られた低速フィルタの各値ＰＫＶＡＬ 117，ＵＦＶＡＬ118 と、最後の出力からのＸ線ＰＬＯＵＴ 119の数と、ＰＫＶＡＬ 117はＸ線の振幅か規格化を目的とするベースラインの値かどうかを指示するＢＬＦＬＧ 120のフラグである。
【００６３】
ＦｉＰＰＩの最終の回路は、デジタルスペクトロメータがデータを集めるのにかかる正確な時間であるＴＩＭＥ 122を測定するライブタイムカウンタ 121である。これは２つの理由で有用である。第 1は、制御コンピュータ 28 によってソフトウェア制御の下でスタートしたデータ習得処理を正確に計測することは、別のやり方では難しいことである。第２は、多重検出器システムにおいては、各スペクトロメータが、そのカウント・レートを正確に測定できるようにそれ自身のライブタイムを正確に測定できることは重要である。
【００６４】
３．３．ＦｉＰＰＩの具体的な実施例における分岐回路の動作
ＦｉＰＰＩの好適な実施例における分岐回路の実現と動作は、それら各々信号トレースを併せて図６Ａ から１３に回路の概略によって示されている。これらの各回路と各軌跡は、デジタルエレクトロニクスの従来技術の当事者にとっては大部分は自明のことであろう。次の段落では、主にそれらの機能について述べ、明らかにされていないあらゆる設計の議論を示す。
【００６５】
３．３．１．デシメータ
図６Ａは、４でデシメイトするハードワイヤードされた具体的な実施例のデシメータであって、しかも図６Ｂに示された各信号を代表的な信号とする、デシメータ 97 の回路の概略である。それはクロック分周器 123とＮ値加算器 125を備え、それは10ビット入力線ＡＤＣＢＵＳ 50 からの４つの連続した値を加算し、10ビット線ＣＳ 147にその和を出力する。もしさらなる精度が所望されるならば、より多くのビットがＣＳに記憶される。同類の各技術を使えば、どんな任意のパラメータＤ＿Ｆａｃｔｅｒ 102によってデシメイトする回路は容易に構成される。
【００６６】
３．３．２．低速フィルタモジュール
台形フィルタの機能は各時刻｛ｉ｝のときの各データ｛ｄi ｝のストリームの｛Ｔi ｝として、次の式で与えられる。
【００６７】
【数３】
2007163516.tif 000005
【００６８】
ここでＬとＧは低速フィルタの間隔長ＬS とギャップ間隔ＧS で、パラメータ 103として本モジュールに入れている。ＧS がゼロのとき、三角フィルタの機能は得られる。両形式はアナログスペクトロメータの論文で広く議論されている。台形関数の振幅は、もしギャップＧS が十分に長いならば、電荷収集時間と独立にされることができ、したがって弾道欠損の現象が避けられる。しかし短い整形時間に対するノイズ比のその信号は、三角関数のものほどは良くない。本場合においては、選択はパラメータＳ＿ＬｅｎｇｔｈとＳ＿Ｇａｐ 103によって定められる。
【００６９】
極端なＦＰＧＡの実体能力を消費する長い合計を避け、またゆっくり動作するために、式３は次のように計算し直され得る。
【００７０】
【数４】
2007163516.tif 000006
【００７１】
部分和（ｄi-L-G ＋ｄi-2L-G）はちょうど、タイムステップＬs ＋Ｇs で以前に算出された部分和（ｄi −ｄi-L ）であるので、先入れ・先出し（ＦＩＦＯ）メモリを２つだけを使って、式４に基づきＴi を生成することができることがわかる。ここに１つのＬs ビット深さによって、項（ｄi −ｄi-L ）を生成する値を保持し、また１つの（Ｌs ＋Ｇs ）ビット深さによって式４を実現する値を保持する。
【００７２】
図７Ａの回路の概略と図７Ｂの各波形は、10ビット入力について、式４に基づき、Ｔi の値を生成する低速フィルタモジュール 98 の実現について述べている。そのフィルタ内の全構成要素の幅は、デシメーションの各ビットについて１ビットだけ、拡張するであろう。デシメータ 97 からの入力CS[9:0] は、漏れ電流検出器の効果及び／またはＡＳＣ 23 の動作を表わす一般的なパルスの前及び後の両方に、わずかな傾きを有する。
【００７３】
ＦＩＦＯメモリ 148と減算器 150は、項（ｄi −ｄi-L ）を生成する。ここで、ＬはパラメータPA[4:0] 152 によって設定される。ＦＩＦＯメモリ 158と減算器 160は項（ｄi −ｄi-L ）−（ｄi-L-G ＋ｄi-2L-G）を生成する。ここで、Ｌ+ ＧはパラメータPB[4:0]  162によって設定される。そしてアキュムレータ 168は式４の各値Ｔi を生成し、ラインFS[11,0] 173に出力する。３クロック周期の各パイプラインディレイが生成される。アキュムレータ 168で12ビットを使用することは、Ｘ線の狭い領域が予期され、ひとつのＸ線ステップはＡＤＣ入力範囲の約5 ％であるようにＡＳＣゲインが最適に設定されることができるＸＡＳ機器に対する技術的なトレードオフである。より一般的な設計では、アキュムレータの増加するビット数は有利なことである。
【００７４】
したがって、C[9:0]F[11:0] のステップ関数は、立ち上がり，立ち下がり時間 175，177 が両方とも“ピーク時間”ＴＰＫに等しくてＬに等しい台形パルスになる。その上辺 178は持続時間ＴＧＰを持ち、その“ギャップ時間”はＰＡ 152とＰＢ 153の差Ｇに等しい。図７ＢのトレースＦＳ[ １１：０] の黒い点は、もしそのピークが重ね合わされてなければ重ね合せ検査器はバッファ１００に出力するためにＦＳ[ １１：０] を得るような時間ｔm を示す。ＣＳ[ ９：０] がまた得られたときは、これはパイプラインディレイが占めるよりも３クロック周期早くなる。
【００７５】
出力ＦＳ[ １１：０] 173 は信号ＣＳ[ ９：０] 147 の傾きに比例するゼロでないベースラインを持つ。したがって、ピークの各振幅はベースラインに対して計られ、それはしたがってまた正確に決定される。また、ＣＳ[ ９：０] の傾きが時間で一定でないとき（直流プリアンプに関しては）、そのベースラインは検出された各Ｘ線パルスに対して部分的に測定されるべきである。
【００７６】
デシメータ97と低速フィルタ98の組み合せは、32深さ(deep)だけの各ＦＩＦＯと12ビットアキュムレータとを使った400 サンプル(20MSA ADCについて20μｓ）までのピーク時間を許容する。だが一方で直接的に実現するには400 深さの各ＦＩＦＯと18ビットアキュムレータとが必要であろう。これがより少ないＦＰＧＡゲートを必要とするだけでなく、より短いワードの長さが、別の方式よりもより安い程度(grade) のＦＰＧＡを使っても回路が十分早く動くようにする。
【００７７】
３．３．３．ＦＩＦＯの具体的な実現例
図８Ａおよび８Ｂは、ＬS が３に等しいXilinx4000シリーズＦＰＧＡを使っている回路とＦＩＦＯ148 の具体的な実現例の波形を示す。設計が別の各ＦＩＦＯは同様に実現できる。10個の32ビットの深さの各メモリ（データビットあたり１）は周期アドレスカウンタ 185によって周期的にアドレスされる。周期アドレスカウンタ 185の出力ＱＣはクロック 128と位相がずれている。そのXilinxメモリは、それゆえ、ＱＣによって最初にアドレスされたとき、バッファ 188によって得られる蓄積されたデータＯ[9，0]をディスプレイする。そしてこれらの各値は、クロックが正に進むに連れて、Ｃ 147の新しい各値によって上書きされる。したがって読み出しと書き込みは、ＰＡ 152カウントによって入力から遅れた出力値とともに、1 クロック周期で達成される。
【００７８】
３．３．４．高速フィルタ
高速フィルタ 105は低速フィルタがそれ自身の各制御パラメータF ＿LengthとF ＿Gap 112 をもち、ＡＤＣ 48 の10ビット出力 50 で直接動作すること以外は、低速フィルタと厳密に同じ方法で実現される。そのピーク時間とギャップ長は式4 から、“fast”を意味する添え字をｆとして、L f ，G f として書かれる。
【００７９】
３．３．５．重ね合せ検査
３．３．５．１重ね合せの意味
重ね合せ検査を理解するためには、連続する各入力パルス間の時間間隔の関数として、低速フィルタ98と高速フィルタ 105の各パルス出力がどのように変化するか理解すべきである。図９がこの情報を表わし、これらの図には、２つの入力パルス間の時間が減少するときの、高速フィルタ 192と低速フィルタ 193の各出力トレースの重畳が示されている。もし2 つのピークが適度に分離されている( 図９（Ａ）〜９（Ｃ））のなら、低速フィルタのピークはＸ線のエネルギの測定を正確に維持する。より短い時間では、これらのピークは次第に変わり、拒絶(reject)されるべきである。最小許容分離は第１のピークがサンプルされてから1 クロック周期後に第２のパルスが始まる（パイプラインディレイに対して補正された）ときである。さもなければ2 つの各パルスは重ね合せされる。各パルスが連続して減少している間の間隔で、高速の各パルスはまた結果的に重ね合わさり、なおも重ね合せする( 図９（Ｅ）および９（Ｆ））。
【００８０】
３．３．５．２．ピーク検出
第1 の議論はピーク検出器107 の関数であるパルスを検出することである。好適な実現は、タイミングジッタ(timing jitter) を持ちノイズフロアに近い振幅を持つパルスに対してはあまり良好に動作しない、従来の分別器(discriminators)を越えて改良された動作を提供する。ここで、図１０Ａおよび１０Ｂの回路とトレースで示されているように、しきい値195 はパラメータＰＣ207 で設定される。しかし、信号値ＦＦ205 は、少なくとも連続して最低の数min ＿width113（パラメータＰＤ208 で設定される）の回数がしきい値を越えるときにピークとみなされるだけである。このような状態の下で信号ＲＥＰ 223とＳＦＰ 225は生成される。ＲＦＰはＦＦがしきい値を越え続けている限りは続く。しきい値195 とmin ＿width113両方の値は、ノイズフロアをはるかに越えて上昇はしないソフトＸ線パルスとともに動作するとき、ノイズ耐性が増えるように調節され得る。
【００８１】
３．３．５．３．到着時間の確定
第2 の議論は、図１１Ａおよび１１Ｂの回路とトレースで示されるように、重ね合せ検査器 108のブロック 240の関数であるパルス到着時間を決定することである。ここで、高速のピークのロケーションは、しきい値 195とそれが交差することによってではなく、その最大値の時間Ｔ3 196 によって確定される。ＲＦＰ 223がハイのときはいつも、このブロックは、ＦＦ 173をバッファ 250で前もって得られた最大値と比較し、新しい最大値が見つけられるごとにＦＴＯＰ 255をハイにセットする。到着時間のロケーションＴＳ 196は本質的に独立した振幅であり、大いにタイムジッタ(tims jitter) を減らして低速チャンネルのピーク振幅決定の歪みに依存するどんなエネルギも取り除く。
【００８２】
３．３．５．４低速ピーク振幅の獲得
一度ピークが検査されると、ＦｉＰＰＩは、それが重ね合せと無関係かどうかを決定しなければならず、もしそうならば、低速チャンネルでその振幅を得る。実際の獲得は出力バッファ 100によって実行され、それは図１１Ａにおいてより詳細に示されており、信号ＰＳＡＭ 298によって起動される。低速ピーク振幅の獲得のタイミングは、図９（Ａ）に示されるように、概念的には明確である。所望の獲得時間Ｔ４ 198は台形の上辺の中点にある。高速低速両チャンネルのデジタル処理動作は数が固定されているので、Ｔ４ 198は一定時間ＴＳ 194によって高速ピーク到着時間Ｔ３から分離され、それはD ＿Facter 102，S ＿LengthとS ＿Gap 103 ，F ＿LengthとF ＿Gap  112のようなＦｉＰＰＩ制御パラメータにのみに依存する。それゆえ、高速ピーク検査に続いて、カウンタは時間ＴＳ 194を測定することができ、転送された低速フィルタ98の出力をバッファ 100へ転送する。
【００８３】
３．３．５．５．低速チャンネルの重ね合せ検査
ＦｉＰＰＩにデジタル的で実現された重ね合せ検査は、概念的にアナログ分光回路で一般に見られることと同じである。すなわち、連続した各パルスは、低速チャンネルのピーク時間の数倍だけ分離されていなければならないことを、必要とする。アナログ三角フィルタリングの場合では、1.5 から2.5 の倍数が一般に使われる。図９（Ａ）が示すように、本当の台形フィルタリングでは、連続した各パルスは、単一の低速フィルタのピーク時間に上辺の時間の半分を足したものによってのみ分離される必要がある。アナログ“三角”パルスがピークが減衰した側で1 ピーク時間を越えて十分に拡大するテールを持っているという事実は、それらの拡大した検査時間の原因である。デジタル的に生成した各パルスは、図７Ｂに示されるように、きれいに消滅し、より短い重ね合せ検査時間が使われるようになる。２あるいはそれ以上のカウント・レートの可能性が増えるという結果になるということは証明されている。
【００８４】
立ち下がり重ね合せ検査は、図１１Ｂで示されるトレースで図１１Ａで示される回路のブロック 243によって実行され、信号ＦＴＯＰ 255の隣接した各終端の間の時間間隔を測定する。高速ピーク最大値、そしてその到着時間に印をつける降下するＦＴＯＰ信号は、Interval＿1 カウンタ 260をスタートさせ、重ね合せ検査期間のパラメータＰＦ 268と共にロードされる。もしカウンタが首尾よくオーバーフローしＦＦ１６ 265に蓄積された値がパルスが立ち上がり重ね合せエッジを持っていないことを表わすならば、信号は低速チャンネルのピークが得られる時間ＴＳ 194をカウントするのを終える第2 のインターバルカウンタブロック 245について発せられる。Interval＿2 カウンタは、低速フィルタのパイプラインディレイを適合させる必要があり、10進クロックと共に動作しているであろう。
【００８５】
Interval＿1 カウンタ 260がオーバーフローしたとき、それは再スタートさせられ、Pass＿Cut カウンタ 261は減少する。もしInterval＿1 カウンタ 260が2 度オーバーフローしたならば、それは低速フィルタの出力がベースラインに戻ることができるほどパルス間の期間がとても長いことを意味する。このような条件の下では、もしＤＳＰ27がフラグＢＬＣＯＬ 315をセットするならば、Interval＿2 カウンタ 245はベースライン獲得を初期化するよう起動させられる。ビットＢＬ 278は、この状態を意味するために、出力値ＢＬＦＬＧ 120としてバッファ 100によって得られる。
【００８６】
ピークが立ち上がり重ね合せエッジと関係するか否かは、フリップフロップＦＦ１６ 265によって決定され、このＦＦ１６ 265は、新しい高速パルスが検出されるごとに、信号ＳＦＰ 228を受けて、Pass＿Cut カウンタ 261の値を蓄える。もしこの値が1 ならば、最後のパルスから少なくともＰＦ 268の時間が経っていることになる。
【００８７】
フィルタを通していない出力ＣＳ（図７Ｂ参照）が必要なときは、時間Ｔ４ 198の前の３低速クロック周期が得られなければならず、それは、Interval＿1 カウンタが実際にそのピークが有効かどうかを確定してしまう前である。この時間はそれゆえコンパレータＣＭＰ２３ 262によって確定され、ＣＳの適切な値が、もしそのピークが有効ならば出力バッファ 100へ転送されることができる中間バッファ 307で得られる。
【００８８】
３．３．５．６．高速重ね合せ試験
第 1の高速重ね合せ試験は図１１Ａのブロック 242によって実現され、しきい値 195で高速パルスの幅を測定する。図９（Ｅ）から９（Ｆ）が示すように、もしこの値ＴＷが最大値ＴＭ 200以上ならば、その時は高速チャンネルで重ね合せが起きているに違いなく、低速チャンネルのピーク値は無効であろう。この結果は、検出されたとき、フリップフロップ１６ 265に蓄積され、低速ピークの獲得を妨げる。パラメータＰＭとしきい値は共に1 件1 件基準に調整されることができるので、高速ピーク検出回路と結び付けるときこれはとても効果的な試験である。単色光Ｘ線とともに、ＸＡＳにあるように、各パラメータは、従来のアナログ試験よりも大きさが３けたまで低くなり得る重ね合せレートに達することができるように調整される。
【００８９】
３．３．５．７入力カウント・レートカウンタとタイマー
図１２Ａおよび１２Ｂにおける回路と各トレースは、ＦＩＰＰＩ 15 の入力カウント・ レートカウンタ 110（図５ 参照）の実施例を表わす。本回路は、検出されたそれぞれの有効Ｘ線パルスに対して検出されたＸ線パルスの合計数を記録するために、高速パルス到着信号ＳＦＰ 228とPass＿Cut カウンタ 261の出力Ｑ１０[ ０] 270 を使っている。その出力ＮＳＦＰ 340は、それがバッファ 100を読み出すのと同時にＤＳＰ 27 によって読み出されることができる。
【００９０】
図１３の回路は、ＦｉＰＰＩ 15 のライブタイムカウンタ 121（図５ 参照）の実施例を表わす。本回路は、ＤＳＰ 27 がC ＿Enable 273を経由して信号を送るとき、すなわちデータを収集するモードにおけるときははいつも、分割クロック信号をカウントする。
【００９１】
３．３．５．８．任意の高速重ね合せ試験
第2 の高速重ね合せ試験は図１４Ａおよび１４Ｂに示される回路と各トレースによってさらに実現されることができる。本回路は、高速ピークの幅をその最大値の半分において測定する。別の各比は容易に置き換えられることができる。Half＿Width カウンタ 357がピーク幅を最大限に許容された値PKと比較する間、Inspect ＿1 カウンタは検査期間PL 362をセットする。高速パルス信号ＦＦ 173は、Ｑ７ 251がその最大値に達する機会を得るまで、ＦＩＦＯ１０ 353によってＰＪ 358カウントが遅延させられる。もし高速ピークがこの試験について重ね合せられるのなら、出力ＭＷＩＤ１ 367は、低速ピークの獲得を妨げるために、フリップフロップＦＦ１６ 265をセットするのに使われることができる。
【００９２】
広い範囲の振幅を持つパルスが示されるとき本試験はとくによく動作し、しきい値がピーク振幅のかなり大きな部分となる低い振幅のパルスに対して、高速パルスと重ね合せ試験が最大限に利用されることを防ぐ。この場合、２つの低い振幅パルスが重ね合せでき、まだ基本幅の重ね合せ試験値より小さいこれら2 つの幅の和をもつ、とても広い時間の範囲が存在する。
【００９３】
３．３．６．任意の出力バッファリング
本回路はこの具体的な実現に示されていないにもかかわらず、もっとも高いカウント・レートに設計されたシステムでは、われわれは、それぞれが強力ないくつかの獲得された値であり得る３つの出力バッファ 100を３つの短いＦＩＦＯによって取り替えることが好適であることを知った。本修正はＤＳＰ27が、どのようにそれがＦｉＰＰＩから獲得されたピーク値を集めるかにおいて、より適応性を持たせる。示された好適な実施例では、ひとつが信号として送られるごとに、0.5 μｓ以下で獲得された値を取ってくる計算を休止する割込み制御の下でＤＳＰは動作する。割り込みルーチンを提供する本システムは、より少ないＦｉＰＰＩ回路リソースを使うにもかかわらず、より多くのそして平均ではより遅いＤＳＰコードを必要とする。任意のＦＩＦＯ出力と共に、それがルーチンを処理し、けっして割り込みを受けない固定された点のデータに対してＦｉＰＰＩを得ることができ、それはその平均処理速度を増加させる。本実現はしたがって非常に最高のデータ・レートが適応されなければならないときに好まれる。
【００９４】
我々は本動作をモデル化しており、ＤＳＰ27が、各事象を処理するごとに少なくとも一度はＤＳＰＦＬＡＧ 302を得て、それらの平均レートで事象を処理できるほど速いならば、本バッファは、すべての事象の大多数を得る約４つの事象の深さだけ必要であることがわかっている。
【００９５】
４．ＤＳＰ：デジタル信号処理装置と論理
４．１．ＤＳＰの概略
我々の設計の考え方に基づき、システムレベル動作を保つために、ＤＳＰは“事象ごとに”基づいたものであってもあるいはあまり頻繁でなくても必要とされるそれらの各タスク、各処理、各計算を実行する。図２ に示されるように、ＤＳＰ27の主な各タスクは、汎用制御コンピュータとインターフェイス28との相互連携することと、ＡＳＣ23を調整して制御することと、ＦｉＰＰＩ25からのデータ値を収集，補正，ヒストグラム化することを含む。本発明の一般的な実行は、これらの機能は、プロセッサとメモリの広範な組み合わせによって満たされることができ、具体的な実施例のいずれの選択も、コスト，速度，大きさなどのような考え方に基づいた技術的な決断が主である。
【００９６】
４．２．ＤＳＰハードウェアの実施
ＮＥＣμＰＤ７７０１６プロセッサが具体的な実施例では使用されている。高速で、低価格で、その制御プログラムとそのＭＣＡ機能を生成するスペクトラを保持する十分な内部メモリを持つ16ビットＤＳＰなのでそれが選ばれた。その2.0KのＸデータメモリは、ＭＣＡスペクトラ用にされ、スペクトラが、32ビット（あるいは40億カウント以上）の深さごとに1024箱（bin ）ビンまでヒストグラム化されるようにする。その2.0KのＹデータメモリはシステム動作を制御するのに必要な各変数と各定数、すなわちシステムの遂行を監視するためのデータ、ＭＣＡ処理のためのＦｉＰＰＩ事象を一時的に蓄えるためのサーキュラーバッファ(circular buffer) を蓄える。内部メモリは本発明には必要はなく、全体のあわせた数とコストを減らし、より高速の動作を与える。外部から与えられたクロック周期の半分で各指示を実行するので、ＡＤＣサンプルごとに1 つ指示するという同期した動作を作るために、ＤＳＰはＡＤＣとＦｉＰＰＩの比の厳密に倍でクロックされる。それは４つの外部割り込み線をもっているが、その外部割込み線はＤＳＰがＡＳＣ 23 ，ＦｉＰＰＩ 25 ，外部制御コンピュータ 28 に応答するようにする。
【００９７】
マイクロプロセッサやＤＳＰをプログラミングしたり割り込んだりすることに関係する一般的な議論は、従来技術の当業者にとっては公知であり、細い説明は行われない。各制御プログラムの一般的な各フローチャートは示されており、所望の機器機能を得るように発明された具体的なアルゴリズムに注目が集中する。
【００９８】
４．３．ＤＳＰハイレベルソフトウェアの説明
４．３．１．監視制御プログラム
図１５は、この具体的な実施例で使われた監視制御プログラムのハイレベルフローチャートを示す。太字体の矢印は、信号データ収集サイクルを通したプログラム制御の流れを描いている。動作はＤＳＰプログラムのダウンロードと、各レジスタのセットアップとＹデータメモリの定数を初期化することを含む初期化 380によって始まる。そしてそのプログラムはその主な制御ループである、ＣＡＭＡＣモニタリングタスク 382にとりかかる。具体的な実施例では制御コンピュータインターフェイスはＣＡＭＡＣインターフェイス基準であるＩＥＥＥ基準583-1975を使うように実現されており、本選択は本発明の機能には決定的ではない。ＣＡＭＡＣモニタリングタスク 382においてはＤＳＰは本質的にループの中にあり、割り込まれるのを待つ。
【００９９】
ＤＳＰへの及びそれからのデータ転送は、そのデジタルスペクトロメータ22のインターフェイスを通して制御コンピュータ28によって起動される。そのようなインターフェイスの実現の詳細はその技術の当業者によって公知である。データ転送のこれらの要求は、インターフェイスがＤＳＰに対して転送割り込み 383を発生するようにする。このような転送割り込み 383を受けたとき、ＤＳＰはＤＳＰへ／からの転送データ 385を移動させる。ここで、それはインターフェイス28の２つの状態レジスタを読み込み、データワードをＤＳＰメモリロケーションへインターフェイスレジスタから転送するかあるいはその逆にするかを決めるために使う。ＤＳＰは要求された転送をさせ、そしてデータワードをＣＡＭＡＣモニタリングタスク 382に送る。多重ワードデータ転送は２MBytes/ ｓまでのレートのＤＳＰのブロックのデータ転送モードを使うよう実現したのと類似している。
【０１００】
デジタルスペクトロメータ22が効率的に制御され得る前に、それは、制御コンピュータ28からダウンロードされたり（たとえばＦｉＰＰＩ25のフィルタ長）、システムを較正することによって経験的に決められたり（たとえばスロープＤＳＰ38の推定値）しなければならない、色々な定数と制御パラメータの数値が必要である。特に注目すべきは制御ワードＲＵＮＴＡＳＫＳであり、これはＤＳＰプログラムを制御するフラッグの組である。獲得割り込み 387が受け取られたとき、獲得タイプ 388はＲＵＮＴＡＳＫＳを試験することによって確定される。
【０１０１】
４．３．１．１．各試験／校正ルーチン
もし獲得タイプが試験／校正 390ならば、ＤＳＰは試験／校正各ルーチン 392を実行し、それは正しいシステム動作を確認し、ＡＳＣに対するＤＡＣ制御を校正する。それらは次を含む：
【０１０２】
１）ＡＳＣ 23 の動作点をセットするために、バイアス 32 ，オフセット 37 ，スロープ 38 ，ゲイン 43 の各ＤＡＣへ書き込む。
【０１０３】
２）第1 にスペクトロメータ 22 に対して入力を分離し、バイアスＤＡＣ 32 を使ってオペアンプ 30 に印加された連続した電圧値についてＡＤＣ 48 の出力を記録することによってシステム全体のゲインを測定する。結果にぴったりあったときは、ボルト入力あたりのＡＤＣ単位を生じ、それはまさにデジタルスペクトロメータのゲインである。これは、eVあたりのＡＤＣの各ステージの全体のシステムゲインを得るために、Ｘ線エネルギのeVあたりの電圧であるプリアンプのゲインによって倍にされることができる。もしプリアンプのゲインがわからなければ、この定数を求めるべく既知のＸ線エネルギを測定することができる。
【０１０４】
３）１つのステップごとにＡＤＣの出力を変えるのに必要なオフセットＤＡＣのステップの数である、規格化した定数ＤＡＣ／ＡＤＣを得るために、上のルーチン２）の時と同じ処理によって、ＡＤＣのオフセットＤＡＣ 37 を校正する。
【０１０５】
４）スロープＤＡＣ 38 へ既知の各値をセットすることと、生成された信号がＡＤＣ入力範囲を越えるのに必要な時間を測定することによって傾き生成器を校正する。傾きはスロープＤＡＣ 38 からの電流入力と、積分キャパシタ 72 の大きさとにだけ依存し、それによってＤＡＣ／ＡＤＣ値の良好な第2 の試験が与えられる。
【０１０６】
５）制御された入力波形としてＡＳＣの傾き生成器を使ってＡＤＣの微分積分非線形性を試験する。
【０１０７】
６）スペクトラムデータなしでＡＳＣ割り込みを監視する。
【０１０８】
７）ＤＳＰでＡＤＣの出力信号トレースを得る。このモードは、ＡＤＣ−ＤＳＰの組み合わせが本質的に簡単なデジタルオシロスコープとして動作するモードで、信号トレースを獲得することによって検出器の問題をデバッグするのに特に有効となり得る。
【０１０９】
８）ＦｉＰＰＩのデシメータの各出力値Ｃ[9:0] 147 を獲得する。これはルーチンＮｏ．７と同じ有効性を持っているが、より低速なデシメータの出力で動作する。
【０１１０】
９）入力Ｘ線信号をシミュレーションするために、まずスペクトロメータ 22 の入力を分離し、そしてバイアスＤＡＣ 32 によって電圧の各ステップの出力を使ってスペクトラムを集めることによって全部のスペクトロメータの正しい動作を確認する。出力スペクトラムは全体のシステムゲインの直接測定する場所を持ち、スペクトロメータのノイズを測定する幅を持つ、単一の狭いピークであるべきである。本試験は、完全な計器は選ばれたデジタルフィルタのパラメータで正確に動作していることの数値的な診断である。
【０１１１】
これらの試験は、本発明のデジタルスペクトロメータが自己試験と自己校正をしていてまた製造するときの品質コントロール試験に有効であるようにする。普通の動作では、制御コンピュータ 28 はデータを集めようとすることより先にスペクトロメータが正確に動作しているか確かめるために、これらのプログラムの試験一式を走らせる。
【０１１２】
４．３．１．２. データ獲得
獲得割り込みのタイプがデータ393 のとき、データ獲得の準備をするために（リセット形プリアンプを想定している）、ＤＳＰはスタートデータ獲得ルーチン395 に進み、次のタスクを実行する。
【０１１３】
１）Ｘ線のエネルギ範囲、プリアンプの特性、初期速度推定値によって確定される各値を指定するために、ＡＳＣのバイアスＤＡＣ32、オフセットＤＡＣ37，スロープＤＡＣ38，ゲインＤＡＣ43をセットする。
【０１１４】
２）ＭＣＡデータと統計値をゼロにリセットする。
【０１１５】
３）低速フィルタ長と各ギャップ値103 ，高速フィルタ長とギャップ112 ，ピーク検出器試験値113 ，ＦｉＰＰＩに対する重ね合せ検査器の値115 の、各制御パラメータのデシメーション要素102 を書き込み、ＦｉＰＰＩの動作を再起動する。
【０１１６】
４）傾き生成器を非活性化(disable) しながら、時間に対するＡＤＣの各値を観察することによってＡＳＣモニタリングを始める。プリアンプの信号のランプの傾きを推定し、スロープＤＡＣ38の値がそれと一致するように計算する。そしてリセット値をオフセットＤＡＣ37へロードし、傾き生成器35を活性化する(enable)。
【０１１７】
５）もしＡＳＣ28の出力の信号がＡＤＣ48の入力範囲を超えたとき、ＤＳＰに割り込みをするために、ＡＳＣコンパレータ割り込みを割込み可能にする。
【０１１８】
６）低速フィルタのベースラインの各値の最初の一組を集め、ベースラインの平均値と分散量を計算する。
【０１１９】
７）ＦｉＰＰＩデータの受領の準備のために、ポインタの各値をＤＳＰのＹデータメモリのサーキュラー事象ループバッファへセットアップする。
【０１２０】
８）ＦｉＰＰＩが有効なピーク振幅を獲得したとき、ＦｉＰＰＩがＤＳＰに信号を送るように、ＦｉＰＰＩの割り込み信号ＤＳＰＦＬＡＧ302 をイネーブルにする。
【０１２１】
４．３．１．３．データ獲得タスク
もしこれらの処理のいずれかが失敗したときは、プログラムは中止し、さもなければデータ獲得タスク402 へ進む。このタスクは、500,000cpsまでの平均レートでデータを処理している間、2,000,000cps（最低0.5 μｓの低速チャンネルピーク時間の逆数）までのデータ到着レートでのバーストに適用できるよう設計されている。これは、サーキュラーバッファへの到来データを蓄えることによって達成され、これは割込み制御の下での高速処理であり、さらに各割り込み間の間隔を有する安定レートでそれらを処理する。これは約4 のファクタによって平均処理レートを減少させ、安価なＤＳＰが使用できるようにする。
【０１２２】
獲得ＦｉＰＰＩデータルーチン 405は、データ獲得ステップを実行する。ここでＤＳＰは、各値ＰＫＶＡＬ 117，ＵＦＶＡＬ 118，ＢＬＦＬＧ 120，ＰＬＯＵＴ 119を含むＦｉＰＰＩから２つの16ビットワードを読み込む。そしてそれはこれら2 つのワードをサーキュラーバッファに書き込み、それらのアドレスに対してポインタを増加させる。これらの動作は5 あるいは6 のクロック周期だけを必要とする。次にサーキュラーバッファに残っているいずれのデータも処理するために、制御はデータ獲得タスク 402へ戻る。これは、プリセットの事象の最大限の数が処理されるまで、あるいはストップデータ獲得 407が起きるまで続く。いずれのケースでも、プログラムは終了データ獲得 408へ進み、その主な機能は、ＡＳＣコンパレータ割り込み 45 を割込み禁止にすること，ＦｉＰＰＩの割り込み 302を割込み禁止にすること，サーキュラーバッファに残っているいずれのデータの処理も終わらせること，ライブタイムカウンタ 121の値を記録することである。プログラムはその後ＣＡＭＡＣモニタリングタスク 382へ戻るが、ここでは集められたデータはロードされないようにできる。
【０１２３】
データ獲得タスク 402はまた、ＡＳＣ 23 の出力がＡＤＣ 48 への入力の範囲を越えるどんなときでもＡＳＣ割り込み 410によって割り込まれることができ、以下に記述するように、固定ＡＤＣ範囲外状態 412ルーチンのブランチへ押し込む。一度正しいＡＳＣ動作が復活すると、プログラムはサーキュラーバッファのデータ処理へ戻る。
【０１２４】
４．３．２．データ獲得タスクソフトウェア
図１６は、データ獲得タスク 402の具体的実施例のフローチャートを示す。大部分については、本チャートは、制御コンピュータプログラミングの当事者にとって自明であろう。一般的な解説の他では、我々の議論は、本発明のスペクトロメータの機能について特有である各ステップに集中する。そのプログラムは、本質的には、試験ＮＥＶＥＮＴＳ＝ＭＡＸ？ 463が真という理由から、あるいはＲＵＮＴＡＳＫＳが試験ＲＵＮ  ＥＮＤＥＤ？ 440で見つかるまで、サーキュラーバッファからのデータを処理するループである。一度ループの256 回すべてとＡＤＣの状態の独立の試験とが行われると、ベースラインの推定値はUPDATE BASELINE ESTIMATE（更新ベースライン推定値） 438に対して低速フィルタから集められ、これについてはさらに後で議論することにする。256 という数字は重要ではなく、変化する実験状態をたどることができるほどしばしば更新されるが、しかしデータ獲得タスク 402内で実質的な計算の負担とならないようにあまり更新されないように、ベースラインが選ばれている。
【０１２５】
処理ループでは、一旦良好な事象からのデータがバッファ 452から読み込まれると、全事象数は、値ＰＬＯＵＴ 119を使って 453で増加する。全カウント数は、正確な到来カウント・レート推定値を得るために、記録されたライブタイムで割る。ＰＬＯＵＴ値の統計量も集めることができ、過剰な流量のような不正確な各実験状態に対して監視するように使われる。その後ＤＳＰは、ＡＳＣ 23 からのひずみに対してやその他、獲得された低速フィルタの各値ＰＫＶＡＬ 117とＵＫＶＡＬ 118から正確なＸ線エネルギ 455を計算するのに必要である計算と修正を行う。選択されたアルゴリズムは、本発明のスペクトロメータが接続された検出器−プリアンプの組み合わせに充当される。これは発明されたステップであり、さらに後で記述される。一度エネルギが見つかると、多チャンネル分析（ＭＣＡ）ビン(bin) 458 を計算するためにそれは測定されて、そしてそのビンは、その分野の当業者にとって公知である各技術を使って、検出されたＸ線スペクトラムのヒストグラムを生成するために増加する。
【０１２６】
４．４．スペクトロメータ制御と計算アルゴリズム
本発明のデジタルスペクトロメータシステムは、３つの接続された各モジュール、ＡＳＣ 23 ，ＦｉＰＰＩ25，ＤＳＰ 27 を備えるので、今までにない新しいアルゴリズムで効率的にそれらを制御する必要がある。これらは次の各節で記述される。
【０１２７】
４．４．１．ＡＤＣの範囲外状態の固定
本問題の本質は、入力カウント・レートの変動がＡＳＣアナログ小区分 23 の出力をもたらすことができ、その出力はＡＤＣ 48 の入力電圧の範囲（例えば、図１ＥのＬＬからＵＫの範囲）外に一時的に落ちるためにプリアンプの入力とＬＦＦの関数生成器 35 の間の増幅された差であるということである。これは図１７（Ａ）および１７（Ｂ）によって図示される。図１７（Ａ）はもっとも一般的な場合を示し、ここで、一時的に高いレート（トレースＢ）あるいは低いレート( トレースＣ) は平均のレート( トレースＡ) に戻っている。Ｘ線の到着が本当にランダムなので、しかし各場合のいくつかの小さな部分は図１７（Ｂ）で表れており、高( トレースＤ）あるいは低（トレースＥ）到着レートは、ＡＤＣの入力範囲ＬＬからＵＬを越えることができるほど十分に長く持続する。これは、ＦｉＰＰＩ 25 のデータ・ストリームを無効にし、ＤＳＰ 27 が正しい動作をするように要求する。ＡＳＣの出力信号がＡＤＣの入力範囲に戻るまで、各信号をＬＦＦ生成器 35 の各制御ＤＡＣ 37 ，38を調節することによってそれが起こる。図１７（Ｃ）および１７（Ｄ）はＤＡＣ 37 が調整される2 つの例を示している。一般的に直面する変動のタイプは、プリアンプの各リセット、検出器における宇宙線の各事象，検出器へのＸ線の到着レートにおける統計的変動を含む。
【０１２８】
図１８に示されるアルゴリズムは、高速で効率的な方法でこれらの場面を扱うように設計されており、好適な実現では、一般に約2 μｓ以内で適切な動作に回復する。以下のいくつかの説明で、このアルゴリズムはコンピュータプログラミングの分野の当業者にとって明確になるであろう。この動作箱(action boxes)“Ｍｏｖｅ  Ｄｏｗｎ１” 495と“ＭｏｖｅＵｐ１” 504は、ＤＡＣ 37 による調整を委ね、“単位”ステップは、図１７（Ｃ）および１７（Ｄ）に示されるように、ＡＤＣ入力範囲を交差する半分の動作に必要なＤＡＣビットの数である。“リセット”箱 498は、プリアンプのリセットが検出されており、スイッチ 75 を使うことと、ＤＡＣ37がその基準値に戻ることによってＬＦＦ生成器 35 もリセットされるように要求していることを意味する。箱“もしＡＢＣ( フラグ) が１ならば、トラッカーを更新する” 511は、図１７（Ｂ）で示されるように、範囲外の単純なドリフトが検出され、次のセクションで記述される傾きを追跡するアルゴリズムが実施されなければならないことを意味する。
【０１２９】
４．４．２．推定値をセットするスロープＤＡＣ 38 の更新
スロープＤＡＣ 38 が正確に設定されたとき、平均して、範囲外への逸脱は、ハイとローの方向で均一に起こる傾向があるべきである。しかし、もし到来Ｘ線レートが変わるなら、そのときは、スロープＤＡＣは調整される必要があろう。したがって、プログラムが固定ＡＤＣ範囲外状態 412ルーチンを呼び出すごとに、それが実際にはハイかローのどちらであるかを注意し、スロープＤＡＣの設定の調整が必要がある。
【０１３０】
したがって、“トラッカーを更新する” 511が呼び出されるごとに、具体的な実施例においては、次式によって過去の範囲外の状態の指数関数的に減衰するメモリの持つ重みＷは更新され、式によると
【０１３１】
【数５】
2007163516.tif 000007
【０１３２】
ここでV i ＝＋１に等しいときハイ、−１に等しいときロー範囲外である。その後W i が試験されて、もしそれが試験値V を越えるなら、それはゼロにされ、スロープ 38 は適切な方向の1 ビットによって調整される。その他の点では何もされず、そのプログラムは進む。移動平均のような他の式は、W i を計算するのに使うことができるが、式５は最小のメモリや計算だけが求められるときに有効である。
【０１３３】
４．４．３．パルスの高さの振幅のエネルギの計算
４．４．３．１．周期的なリセットのプリアンプの場合
計算のいくつかは、システムのエラーを持ち出さないで、ＦｉＰＰＩ 25 の出力値ＰＫＶＡＬ 117をＸ線エネルギへ変換する必要があり、その主な理由は、図１Ｂにあるように、ＡＳＣ 23 出力のＸ線ステップの直前直後の各領域は平らではなく、図１Ｅにあるように、傾いている。それは周期的なリセットのプリアンプのこの傾きに対する２つの寄与があるからである。第1 は、ＡＳＣ 23 がＬＦＦ生成器 35 によって生成される傾きを減じるからであり、第2 は、検出器かプリアンプの第1 のＦＥＴかのいずれかからの漏れ電流のためである。
【０１３４】
ＦｉＰＰＩ 25 のこの傾いた信号に対する応答は図１９（Ａ）（ＰＲプリアンプの場合に対して）に示される。振幅Ａが所望されるにもかかわらず、ＦｉＰＰＩは値Ｈを生成し、それは端の上方と下方の2 つの各領域の間の差である。計算ではしたがって測定された値ＨからＡを取り戻す必要がある。図１９（Ａ）はそれを示し、G S のギャップ時間とともに低速フィルタの長さL S に対して：
【０１３５】
【数６】
2007163516.tif 000008
【０１３６】
ここで、V1とV2はフィルタ領域を越える平均電圧であり、S は生成した傾きS G と漏れ傾きS1の間の差である。したがって:
【０１３７】
【数７】
2007163516.tif 000009
【０１３８】
我々はそれゆえ、第２の期間の正確な推定値を得ることを望む、そうしないとスペクトロメータのエネルギ分解能を下げる。L S とG S はパラメータであり、厳密に知られており、生成された傾きS g である。S1は測定されなければならず、A が0 に等しいとき、Ｘ線の各事象がフィルタ内のいずれの場所でも存在しているとき、式７によって長さを使ってなされる。いま、H が−(Sg −S1) （L s +Gs ) に等しく、三角パルスの間の“ベースライン”であるとする。多くの測定をすることによって、われわれは任意の精度で中間のベースラインの値B を推定することができる。
【０１３９】
【数８】
2007163516.tif 000010
【０１４０】
ここで、ＰＫＶＡＬB は、これより前で述べられているように、フラグＢＫＣＯＬ 315が１にセットされたときに、ＦｉＰＰＩから得られたＰＫＶＡＬ 117の値である。与えられたB で、われわれは次からＸ線エネルギを計算することができる。
【０１４１】
【数９】
2007163516.tif 000011
【０１４２】
ここでG はシステムのゲインで、ＰＫＶＡＬの通常の値、すなわちフラグＢＫＣＯＬ 315を０にセットした値である。
【０１４３】
ベースラインＢは、スペクトロメータの分解能に影響しないよう十分正確に決定されなければならない。式9 において、ガウス分布エラーであるとみなして、ＰＫＶＡＬの各分散量σP ，σB とB を直角位相で足し算するので、σB はしたがってσP の1/10の次数であり、B はＰＫＶＡＬB のおおよそ100 の測定量の平均から決定される。
【０１４４】
好適な実施例でのB の決定は、2 つのステップで進む。第1 は、スタートデータ獲得ルーチン 395のタスクNo.6で、ＰＫＶＡＬB の100 の測定がなされ、そしてそれらの平均B と分散σB が計算される。これは正確なB のスタート値を供給する。第2 に、データ獲得タスク 402( 図１６）で、UPDATE BASELINE ESTIMATE 438の手順における全256 ループのたびに、B は更新される。B の様々な移動平均をとる計算がされるとき、具体的な実施例では、
【０１４５】
【数１０】
2007163516.tif 000012
【０１４６】
は指数関数的に減衰する過去の履歴を実現するように作られている。ここでb i は、ＰＫＶＡＬB ＋S B (LS +GS ) の現在の測定された値である。B の現在の値だけ蓄えられ、もし比が2 の累乗ならばシフト構造を使った固定点ＤＳＰでかなり速く実行することができるので効率的である。実験は、かなり速いB の変化でさえ、この技術によって正確に追跡できることを示す。もしB が非常に速く変化するのが予想されるのなら、ＮＬＯＯＰ  Ｍｏｄｕｌｏ２５６＝０ＴＥＳＴ 428の値２５６をベースラインをさらに頻繁にサンプルすべく、減少させることができる。
【０１４７】
４．４．３．２．連続した放電をするプリアンプの場合
ＣＤプリアンプについは、図１９（Ｂ）および２０に示されているように、Ｘ線ステップの事象の両側の信号は、異なる平均の傾きで指数関数的に減衰している。この状態はそれゆえＰＲプリアンプよりもさらに複雑であり、式９に取って代わる修正されたアルゴリズムが必要である。しかし、スペクトロメータのハードウェアもＦｉＰＰＩのファームウェアもどちらも変える必要はない。
【０１４８】
図２０はこの状態を示す。われわれは、振幅Ａを所望するが、しかし、パルスの後の0.5(L S +GS ) で得られた移動平均<V2>とパルスの前の0.5(L S +GS ) で得られた<V1>との差である値H を得る。S1，S2は2 つの測定点での信号の傾きであり、V e はＸ線の事象の直前の時間t e におけるその値であり、V0は指数関数的に減衰する値である。われわれは、K=(LS +GS )/2 τによって一定値K を定義するが、ここでτはプリアンプの指数関数的な減衰時間である。
【０１４９】
それゆえ指数関数的減衰は：t<t e に対して
【数１１】
2007163516.tif 000013
【０１５０】
t>t e に対して
【数１２】
2007163516.tif 000014
【０１５１】
そして
【数１３】
2007163516.tif 000015
【０１５２】
われわれは次式によってＨを近似することができる：
【数１４】
2007163516.tif 000016
【０１５３】
傾きS1とS2は、同じ精度に対して：
【数１５】
2007163516.tif 000017
【０１５４】
式13に代入して次式が与えられる。
【数１６】
2007163516.tif 000018
【０１５５】
ここで、V e とV0はともに測定された変数ではない。われわれは、いずれの点においても瞬間的な電圧を測定することによってV e の推定値を得ることができる。数学的に簡単にするために、われわれは、時間(LS +GS )/2 において、点V2を選ぶ。ここで、
【０１５６】
【数１７】
2007163516.tif 000019
【０１５７】
式15に代入すると次式が得られる。：
【０１５８】
【数１８】
2007163516.tif 000020
【０１５９】
ここでH とV2は測定された量で、V0は一般に一定である。A はちょうど式9 のようにしてＸ線エネルギを得るシステムのゲインG によって測定できる。2KV0の推定値は、Ｘ線が存在しないときA の値を測定することによって得られる。2KV0は、式9 でベースラインB がするように式18でA の値を計算する厳密に同じ役割をし、同じアルゴリズムは正確にその値を推定するのに使うことができる。検出器の漏れ電流から生じるあらゆる線形の傾きの項はまたこの項に分類される。
【０１６０】
ＣＤプリアンプの校正を実現すること、したがってＤＳＰ 27 の符号を実現することは、式9 は次式によって置き換えられて：
【０１６１】
【数１９】
2007163516.tif 000021
【０１６２】
<V0>の計算に使われるV0の個別の各値は次式からわかる。
【０１６３】
【数２０】
2007163516.tif 000022
【０１６４】
４．４．３．３．一つおきの連続した放電をするプリアンプの場合
ノイズ解析によって、式19は、K の値が小さくはない（例えば、フィルタの時間がプリアンプの減衰時間に達する）とき、過剰なノイズの被害を被ることが分かる。この理由は、フィルタ長が減少するにつれＰＫＶＡＬにおけるノイズが減少するからであるのと、フィルタにかけていない項ＵＦＶＡＬの重みK が増加するからである。50μｓという一般的なプリアンプの減衰時間において、20μｓでノイズはだいたい90％増加するのに対して、４μｓのフィルタリングにおける分解能は、数パーセントだけ減少する。
【０１６５】
議論は、そして、式18を使ってV2の申し分なくより正確な値を得ることである。<V2>はわれわれが作ることができるもっとも正確な測定量V2であることを認識し、H はちょうど<V2>−<V1>であることに注目することによって、われわれは、H について式12から式13へ、S2とS1を置き換えることによって交互の補正を引き出すことができる。H=<V2>−<V1>であることに注意すると：
【０１６６】
【数２１】
2007163516.tif 000023
【０１６７】
<V2>及び<V1>の双方を、平均のフィルタを通した平均値<V2>と<V1>によって置き換え、再び整理して次式が得られる。
【数２２】
2007163516.tif 000024
【０１６８】
これは式18の置き換えであり、ここで、いま全項は可能な限り統計的に正確である。
【０１６９】
式21Ａと式21Ｂにおける概略とトレースによって示されるように、式22を満たすには修正されたＦｉＰＰＩの低速フィルタの設計が必要であり、図７Ａと図７Ｂと比較されるべきである。本回路は移動平均V2を生成し、その後V1を生成するためにＦＩＦＯを使うが、それは適切に減衰した信号とちょうど同じである。4 ビットでのデシメーションは一般に興味のある長い整形時間に必要とされているので、入力信号ＣＳ[13:0] 527はいま14ビット幅である。ＦＩＦＯ 5 28 の長さは、L s であるパラメータＰＡ[13:0] 152によって設定される。Ｄ 532は、Ｘ線パルスがＡＤＣの入力範囲の1/8 を越えないという推定のもとに12ビットだけ持つ。その他の点では、Ｄと、続いている各ステージにおけるビットの数は増加するかもしれない。V2とV1の間の遅れはL s +Gs に等しく、ＦＩＦＯ 537へのパラメータＰＢ[4:0]  162によって設定される。V2とV1は、Ｖ２[16:0] 535の出力はＰＫＶＡＬ 117として、Ｖ１[16:0] 538の出力はＰＫＶＡＬ 118として、上で記述されたように正確に重ね合せ検査器 108の動作によって出力バッファ100 で得られる。
【０１７０】
ＦｉＰＰＩは、好適な具体例ではフィールド・ プログラマブル・ ゲート・アレイ（ＦＰＧＡ）において実現されるので、式18と式22のうちから選ぶことは、物理的にスペクトロメータを変えるのではなく、ＦＰＧＡのダウロードされたファイルとＤＳＰのソフトウェアを変えるだけである。
【０１７１】
式18と式22は、減衰する各指数曲線と独立に提案されたデジタルの実施例の内容に単に基づいて導き出されたので、それらはまたアナログ方式で実施されることができる。したがってＣＤプリアンプを三角波整形とベースライン補正をするアナログ分光アンプをDC接続し、式18のH としてアンプの出力を、V2としてアンプの入力の遅れ時間の複製を使うことによって、そして指数関数形減衰をする信号に起因する瞬時のベースラインシフトに校正される信号が生成され、AC接続されたシステムで要求であるゼロ極補償の必要を取り除く。
【０１７２】
式22はまた、図２２で大まかに示されているように、アナログ回路を使うことで実現されることができる。本回路は、アナログエレクトロニクスの従来技術の当業者にとっては明確であるだろうが、図２１Ａ に示されるデジタル回路の直接アナログ変換を備え、V2とV2の合計を実現するオペアンプ合計回路(op-amp summing circuit) 522と接続される。V0の校正は、従来技術の当業者にとっては公知であるように、ベースライン復元回路を回路の出力に付加することによって実際には提供される。本回路は、特にアナログ遅延回路が簡単に実現される時間期間内で、各方法の存在を越えて高入力レートと短い波形整正時間が所望されたとき、実質的な有利な点を提供する。
【０１７３】
５．結論
結論では、本発明は、検出器−プリアンプのシステムからのパルスの各信号を処理し、検出器に影響を与える放射線の完全なエネルギ分析を提供する、物理的にコンパクトで、低価格で、高速な方法と機器をもたらす。プログラムされたプロセッサがその事象のレートにおいてより精練された分析を実行するのに使われている間、組み合せ論理は、限定されてはいるがサンプリング・レートにおいて十分な量の処理を実行するのに使われる。本作業部分は発明が高パフォーマンスで低価格を達成するようにする。
【０１７４】
上記が本発明の具体的な実施例の完全な記述であるにもかかわらず、各種の変形例、別の構成、等価物が使われ得る。第1 の例としては、具体的な実施例では、必要とするＡＤＣのビット数を減らすために、信号処理フロントエンド(signal conditoning front end)を使っているにもかかわらず、本発明の他の動作は本装置に従属ではない。もし、より安く、より速いより多くのビットを持つ各ＡＤＣが利用できるならば、この部分は取り除かれるかもしれない。さらに、本発明に必要な様々な計算を実行するために単一のデジタル信号処理装置を使うのに効果的なコストであるにもかかわらず、これらの計算は多重マイクロプロセッサ間で分配され、具体的な各機器に（例えばより高い総合カウント・レート能力が必要なとき）おいてはこれはより効果的になるかもしれない。したがって、上の記述は、付属の各請求項によって定義された本発明の範囲を制限するものとして受けとめられるべきではない。
【図面の簡単な説明】
【０１７５】
【図１Ａ】本発明にパルスを供給する典型的な検出器−プリアンプの回路の概略である。
【図１Ｂ】本検出器で単一Ｘ線の吸収の結果として生ずる典型的な検出器−プリアンプの出力信号の図である。
【図１Ｃ】多重のＸ線のコースに亘る連続的な放電検出器−プリアンプからの典型的な出力を示す。
【図１Ｄ】多重のＸ線のコースに亘る周期的なリセット検出器−プリアンプからの典型的な出力を示す。
【図１Ｅ】ＡＳＣが信号のリセット−ランプ部分を取り除いた後の３つの共通Ｘ線パルス到着パターンを示す。
【図２】本発明のおもな部分と他の装置との本発明の接続を示すブロック図である。
【図３】アナログ信号調整（ＡＳＣ）と図２のＡＤ変換のハードウェア部のブロック図である。
【図４】図３のそれぞれのブロックの典型的な実施例の回路の概略である。
【図５】図２のハードワイヤードデジタル信号プロセッサのハードウェアブロックのブロック図である。
【図６Ａ】図５のデシメータハードウェアブロックの典型的な実施例の回路の概略である。
【図６Ｂ】図６Ａの回路の働きを図解したタイミングダイヤグラムである。
【図７Ａ】図５の低速フィルタハードウェアブロックの典型的な実施例の回路の概略である。
【図７Ｂ】図７Ａの回路の働きを図解したタイミングダイヤグラムである。
【図８Ａ】図６ＡのＦＩＦＯ１０ハードウェアブロックの典型的な実施例の回路の概略である。
【図８Ｂ】図８Ａの回路の働きを図解したタイミングダイヤグラムである。
【図９】図５の高速と低速のフィルタによって出力される対応したパルス間の関係を表示し、図５のピーク検出器と重ね合せ検査器ブロックの機能を図解した一連のタイミングダイアグラムである。
【図１０Ａ】図５のピーク検出器のハードウェアブロックの典型的な実施例の回路の概略である。
【図１０Ｂ】図１０Ａの回路の働きを図解したタイミングダイヤグラムである。
【図１１Ａ】図５の重ね合せ検査器のハードウェアブロックの典型的な実施例の回路の概略である。
【図１１Ｂ】図１１Ａの回路の働きを図解したタイミングダイヤグラムである。
【図１２Ａ】図５の入力カウント・レート（ＩＣＲ）カウンタのハードウェアブロックの典型的な実施例の回路の概略である。
【図１２Ｂ】図１２Ａの回路の働きを図解したタイミングダイヤグラムである。
【図１３】図５のライブタイムカウンタの典型的な実施例の回路の概略である。
【図１４Ａ】半分の高さの速いピーク幅を計る重ね合せ検査器の典型的な実施例の回路の概略である。
【図１４Ｂ】図１４Ａの回路の働きを図解したタイミングダイヤグラムである。
【図１５】ＤＳＰ制御プログラムの主な特徴を示したフローダイアグラムである。
【図１６】ＤＳＰ制御プログラムのデータ取得タスクの特徴のフローダイアグラムである。
【図１７】Ｘ線の到着レートにおける時間変動の影響を示すＡＳＣの発明の具体的な実施例の出力のオシロスコープの結果である。
【図１８】ＡＳＣの入力範囲内でＡＳＣの出力を保つのに使われる制御手順のブロック図である。
【図１９】プリアンプの２つのタイプのパルス高補正期間の必要を示している略図である。
【図２０】連続放電型プリアンプのためのパルス高補正期間を導き出すのに使われる期間を定義する略図である。
【図２１Ａ】図４の低速フィルタのハードウェアブロックの別の実施例の回路の概略である。
【図２１Ｂ】図２１Ａの回路の働きを図解したタイミングダイヤグラムである。
【図２２】アナログフィルタリングを使った別の低速フィルタの実施例を示す。
【符号の説明】
【０１７６】
１０    半導体検出ダイオード
１２    電圧供給源
１３    充電積分プリアンプ
１５    フィードバックキャパシタ
１７    フィードバック要素
２２    デジタルスペクトロメータ
２３    アナログ信号調整（ＡＳＣ）およびアナログデジタル変換器（ＡＤＣ）のブロック
２５    ハードワイヤードデジタルフィルタおよびピーク検出器および重ね合せ検査器（ＦｉＰＰＩ）のブロック
【図１Ａ】
2007163516.tif 000025
【図１Ｂ】
2007163516.tif 000026
【図１Ｃ】
2007163516.tif 000027
【図１Ｄ】
2007163516.tif 000028
【図１Ｅ】
2007163516.tif 000029
【図２】
2007163516.tif 000030
【図３】
2007163516.tif 000031
【図４】
2007163516.tif 000032
【図５】
2007163516.tif 000033
【図６Ａ】
2007163516.tif 000034
【図６Ｂ】
2007163516.tif 000035
【図７Ａ】
2007163516.tif 000036
【図７Ｂ】
2007163516.tif 000037
【図８Ａ】
2007163516.tif 000038
【図８Ｂ】
2007163516.tif 000039
【図９】
2007163516.tif 000040
【図１０Ａ】
2007163516.tif 000041
【図１０Ｂ】
2007163516.tif 000042
【図１１Ａ】
2007163516.tif 000043
【図１１Ｂ】
2007163516.tif 000044
【図１２Ａ】
2007163516.tif 000045
【図１２Ｂ】
2007163516.tif 000046
【図１３】
2007163516.tif 000047
【図１４Ａ】
2007163516.tif 000048
【図１４Ｂ】
2007163516.tif 000049
【図１５】
2007163516.tif 000050
【図１６】
2007163516.tif 000051
【図１７】
2007163516.tif 000052
【図１８】
2007163516.tif 000053
【図１９】
2007163516.tif 000054
【図２０】
2007163516.tif 000055
【図２１Ａ】
2007163516.tif 000056
【図２１Ｂ】
2007163516.tif 000057
【図２２】
2007163516.tif 000058
【手続補正書】
【提出日】平成19年4月6日(2007.4.6)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
時定数τによって記述される指数関数的減衰を持つステップ状の各パルスを含むノイズのある入力信号にひとつあるいはそれ以上のパラメータのセットによって記述される整形フィルタを適用する方法であって、それらの間で前記パルスの近辺で指数関数的減衰をする成分の傾きの値に実質的に独立である前記パルスのステップ振幅の推定値を引き出す方法において、
フィルタされた信号を生成するために、前記整形フィルタを前記入力信号に適用するステップと、
整形フィルタのパラメータのセットの各値と前記時定数τに依存する第１の定数によって前記フィルタされた信号を重み付けすることによって第１の重み付き信号を生成するステップと、
整形フィルタのパラメータのセットの各値と前記時定数τに依存する第２の定数によって前記入力信号を重み付けすることによって第２の重み付き信号を生成するステップと、
前記第１の重み付き信号と前記第２の重み付き信号とを結合させることによって補償された信号であって、前記ステップ状パルスの近辺で指数関数的に減衰する成分の傾きを補償するフィルタされた信号を表わす補償された信号、を形成するステップと、を備える方法。
【請求項２】
請求項１の方法であって、前記第１の定数および前記第２の定数が、
前記ステップ状パルスの振幅と該ステップ状パルスの近辺の指数関数的に減衰する成分の傾きの値の項とで数学的に前記フィルタ出力振幅を表現するステップと、
前記入力信号振幅の項における前記傾き表現するために、指数関数的減衰の傾きとその瞬間的な振幅との間の比例を使うステップと、
前記フィルタ出力振幅の項および前記入力信号振幅の項における前記パルスステップ振幅についての前記表現を解くステップと、
を有する特定の整形フィルタに対して確定される方法。
【請求項３】
請求項１の方法であって、前記第２の重み付き信号を生成するステップの前に実行され、前記入力信号に別のフィルタを適用して前記第２の重み付き信号が前記別のフィルタの効果を含むようにするステップを更に備える方法。
【請求項４】
請求項１の方法であって、前記第１の重み付き信号を生成するステップおよび前記第２の重み付き信号を生成するステップの前に、前記入力と前記フィルタされた信号の離散的な測定値が、
第１の時間間隔で前記ステップ状パルスの発生から分離された前記フィルタされた信号を瞬時に獲得するステップと、
第２の時間間隔で前記ステップ状のパルスの発生から分離された前記入力信号を瞬時に獲得するステップと、
前記第１の重み付き信号および前記第２の重み付き信号の各値を確定する際の前記第１の時間間隔および前記第２の時間間隔の各値を含めるステップと、
前記フィルタされた信号及び入力を該方法におけるその後に続くすべてのステップにおいて同一の前記獲得された値で置き換えるステップと、からなる付加ステップ、によってステップ状パルス振幅の推定値を生成するのに使用される方法。
【請求項５】
時定数τによって記述される指数関数的減衰をする各ステップ状パルスを含むノイズのある入力電気信号を、それらの間で前記パルスの近辺で前記指数関数的減衰をする成分の傾きの値に対して実質的に独立である前記パルスのステップ振幅の推定値を引き出す分析をする方法であって、
一つあるいはそれ以上の各パラメータのセットによって記述されるフィルタを、前記入力信号にそのノイズ成分を減らすために適用するステップと、
第１の定数によって前記フィルタされた信号を重み付けることによって第１の重み付き信号を生成するステップと、
第２の定数によって前記フィルタされた信号の時間遅延されたヴァージョンを重み付けることによって第２の重み付き信号を生成するステップであって、前記第１の定数および前記第２の定数は、フィルタのパラメータのセットの前記値と、前記時定数τと、前記時間遅延の値Δとに依存するステップと、
ステップ状の各パルスに対する最大値を持つ出力信号を形成するために前記第１の重み付き信号と前記第２の重み付き信号とを結合するステップであって、前記最大値は前記パルスの振幅に比例し、前記パルスの近辺の指数関数的減衰をする成分の前記傾きの値に対して実質的に独立であるステップとを備える方法。
【請求項６】
請求項５の方法であって、前記第１及び第２の各定数は、
前記ステップ状パルス振幅の値と、前記ステップ状パルスの近辺で指数関数的減衰をする成分の減衰定数τ、時間遅延Δおよび傾きのフィルタのパラメータのセットの値での前記フィルタされた信号そのものの値から、時間遅延された前記フィルタされた信号の値を単純に減算した結果と、の間の差を数学的に表現するステップと、
指数関数的減衰の前記傾きはその振幅に正比例するという原理を前記フィルタされた信号値での前記傾きを表現することに適用するステップと、
前記フィルタの出力の振幅の項および前記時間遅延されたフィルタの出力の振幅の項における前記パルスステップ振幅についての前記表現を解くステップと、による特定のフィルタに対して確定される方法。
【請求項７】
平均入力レートＲで到着するステップ状のパルスを含む電気信号のデジタル表現を分析して、前記ステップ状パルスの少なくともいくらかの振幅の推定値を提供するデジタル組合せ論理の回路であって、前記デジタル表現は平均入力レートＲより大きいサンプリング周波数Ｓで動作するアナログ−デジタル変換器(ADC) で前記電気信号をデジタル化することによって生成され、前記デジタル表現はデジタル化された入力信号と称され、前記回路は前記サンプリング周波数Ｓあるいはその倍数でクロックされるデジタル組合せ論理の回路において、
デジタル化された入力信号を受信し、フィルタされた信号と称される出力信号を提供するデジタル整形フィルタと、
前記デジタル化された入力信号を受け取り、前記デジタル化された入力信号のパルスの検出を表わす出力信号を提供するパルス検出器と、
前記デジタル整形フィルタに接続され、トリガー信号に応じて該フィルタされた信号の値を獲得するように動作する出力バッファと、
前記パルス検出器と前記出力バッファに接続されるタイミング回路であって、前記タイミング回路はパルスの検出に応じてトリガー信号を提供し、該トリガー信号が、前記デジタル整形フィルタの少なくとも一つの特徴に依存する量だけ前記パルス検出器の前記出力信号から遅延されるタイミング回路を備える回路。
【請求項８】
請求項７の回路であって、ステップ状パルスを含む前記電気信号は光子もしくは粒子の検出器が入力であるプリアンプからのものであり、前記ステップ状パルスの振幅が前記検出器に吸収される前記光子もしくは粒子のエネルギを表す回路。
【請求項９】
請求項７の回路であって、
第１のデジタル整形フィルタである前記デジタル整形フィルタは、少なくともひとつの時定数τS で特徴付けられ、
前記パルス検出器は、前記時定数τS より十分に小さい少なくともひとつの時定数τf で特徴付けられる第２のデジタル整形フィルタを備える回路。
【請求項１０】
請求項７の回路であって、前記出力バッファがＦＩＦＯメモリを有する回路。
【請求項１１】
請求項７の回路であって、前記パルス検出器が、
さらなるフィルタされた信号を生成するさらなる整形フィルタと、
前記さらなる整形フィルタに接続されたピーク検出器と、を備える回路。
【請求項１２】
請求項７の回路であって、
前記パルス検出器と前記タイミング回路との間に接続される低速重ね合せ検出器であって、前記低速重ね合せ検出器は、前記パルス検出器からの連続する信号の出力の間隔を測定し、測定された前記間隔が前記デジタル整形フィルタの関係するパルスの振幅の有効な推定値を生成できるようにするのに不十分なとき前記タイミング回路が前記トリガー信号を生成しないようにする低速重ね合せ検査器をさらに備える回路。
【請求項１３】
請求項７の回路であって、
前記パルス検出器と前記タイミング回路との間に接続される高速の重ね合せ検査器であって、前記高速の重ね合せ検査器は、前記パルス検出器の出力信号から到着したパルスの組が前記パルス検出器によって分離されたパルスとして分解できないほど接近しているかを判定し、前記タイミング回路が前記トリガー信号を生成しないようにする高速重ね合せ検査器をさらに備える回路。
【請求項１４】
請求項１３の回路であって、
前記パルス検出器が、さらなるフィルタされた信号を生成する高速デジタルフィルタと、前記さらなるフィルタされた信号を受信するピーク検出器と、を備え、
前記高速重ね合せ検査器が、検出されたピークがプリセットされたしきい値以下に降下するまでクロック周期の数をカウントし、カウントしたクロック周期の数が、プリセットされた値を越えるいずれの検出されたピークに対しても“重ね合せ”とラベル付けし、前記プリセットされた値は、前記高速デジタルフィルタのパラメータおよび入力信号の立ち上がり時間の両方に基づく所定の調節可能なパラメータである回路。
【請求項１５】
請求項１３の回路であって、
前記パルス検出器が、さらなるフィルタされた信号を生成する高速デジタルフィルタと、該さらなるフィルタされた信号を受信するピーク検出器と、を備え、
前記高速重ね合せ検出器は、
前記さらなるフィルタされた信号の遅延された複製を生成するデジタル遅延要素と、
最大振幅の固定した部分を取り、検出されたピークの最大振幅を獲得する手段と、
前記検出されたピークの遅延された複製がそれ自身の最大振幅の前記固定した部分を越えるクロック周期の数をカウントする手段と、
カウントされたクロック周期の数が、前記高速デジタルフィルタのパラメータおよび入力信号の立ち上がり時間の両方に基づく所定の調節可能なパラメータであるプリセットされた値を越えるいずれのピークに対しても“重ね合せ”とラベル付ける手段を有する回路。
【請求項１６】
請求項７の回路であって、前記出力バッファは外部素子に接続され、
前記外部素子が前記出力バッファによって獲得された振幅の推定値を受け入れることが可能なときのクロック周期をカウントすることによってシステムの“ライブタイム”を測定するカウンタを更に備える回路。