(57)【特許請求の範囲】
【請求項１】
エネルギー分散型放射線分光分析システムのプリアンプ出力信号からパイルアップを検出する方法において、
前記プリアンプ出力信号の瞬間の傾きを、傾きの閾値に対してテストする工程と、
前記瞬間の傾きが前記傾きの閾値を超えていたと判断された後に、前記プリアンプ出力信号の第１後続部分を特定する工程であって、前記第１後続部分では、前記プリアンプ出力信号の瞬間の傾きは最大値に増加する工程と、
前記第１後続部分に続いて、前記プリアンプ出力信号の第２後続部分を特定する工程であって、前記第２後続部分では、前記プリアンプ出力信号の瞬間の傾きは、前記傾きの閾値を超えているままであるが、前記最大値から前記傾きの閾値よりも減少している工程と、
前記第２後続部分に続いて、前記瞬間の傾きが前記傾きの閾値以下に減少する前に、前記プリアンプ出力信号の第３後続部分を特定する工程であって、前記第３後続部分では、前記プリアンプ出力信号の瞬間の傾きは、前記傾きの閾値よりも増加する工程と、
それに応答して、パイルアップが起こったと判断する工程と、
を含む方法。
【請求項２】
前記プリアンプ出力信号のデジタルバージョンを生成する工程を更に含んでおり、
前記テストする工程は、前記傾きの閾値に対して前記プリアンプ出力信号の瞬間の傾きの推定値をテストする工程を含んでおり、
前記第１後続部分を特定する工程は、前記プリアンプ出力信号の第１後続部分を特定する工程を含んでおり、前記第１後続部分では、前記プリアンプ出力信号の瞬間の傾きの推定値は最大値へと増加し、
前記第２後続部分を特定する工程は、前記プリアンプ出力信号の第２後続部分を特定する工程を含んでおり、前記第２後続部分では、前記プリアンプ出力信号の瞬間の傾きの推定値は、前記傾きの閾値を超えているままであるが、前記最大値から前記傾きの閾値よりも減少しており、
前記プリアンプ出力信号の第３後続部分を特定する工程は、前記プリアンプ出力信号の第３後続部分を特定する工程を含んでおり、前記第３後続部分では、前記プリアンプ出力信号の瞬間の傾きの推定値は、前記傾きの閾値よりも増加する、請求項１の方法。
【請求項３】
前記プリアンプ出力信号の前記デジタルバーションは、各々が値を有する連続する複数のデジタルサンプルを含んでおり、
前記第１後続部分は、前記複数のデジタルサンプルの第１の連続する対を境界としており、前記第１後続部分の瞬間の傾きの推定値は、前記複数のデジタルサンプルの前記第１の連続する対の各々の値の間の差であり、
前記第２後続部分は、前記複数のデジタルサンプルの第２の連続する対を境界としており、ここで、前記第２後続部分の瞬間の傾きの推定値は、前記複数のデジタルサンプルの前記第２の連続する対の各々の値の間の差であり、
前記第３後続部分は、前記複数のデジタルサンプルの第３の連続する対を境界としており、前記第３後続部分の瞬間の傾きの推定値は、前記複数のデジタルサンプルの前記第３の連続する対の各々の値の間の差である、請求項２の方法。
【請求項４】
前記第３後続部分を特定する工程に応答して、放射線の入射に対応したエッジが起こったと判断する工程を更に含む、請求項１の方法。
【請求項５】
前記傾きの閾値は、前記プリアンプ出力信号の複数の前の部分に基づいており、前記プリアンプ出力信号の前記複数の前の部分の各々の瞬間の傾きの符号は、前記第１、第２及び第３後続部分の瞬間の傾きの符号と逆である、請求項１の方法。
【請求項６】
前記傾きの閾値は、前記複数の前の部分の各々の瞬間の傾きの平均に基づいている、請求項５の方法。
【請求項７】
前記傾きの閾値は、乗数が乗じられた前記複数の前の部分の各々の瞬間の傾きの平均に等しい、請求項６の方法。
【請求項８】
前記エネルギー分散型放射線分光分析システムは、Ｘ線分光分析システムである、請求項１の方法。
【請求項９】
前記エネルギー分散型放射線分光分析システムは、ガンマ線分光分析システムである、請求項１の方法。
【請求項１０】
前記エネルギー分散型放射線分光分析システムは、ピーク検出フィルタを含んでおり、前記ピーク検出フィルタは、前記プリアンプ出力信号が示すフォトンに応答して１又は複数のパルスを生成し、前記１又は複数のパルスの何れかが前記ピーク検出フィルタの最小検出可能閾値エネルギーを超えている間に、閾値超え信号を生成するように構成されており、
前記方法は、前記パイルアップが起こったと判断する工程に応答して、パイルアップ信号を生成する工程と、前記パイルアップ信号を受信する工程と、前記閾値超え信号が受信されている間に前記パイルアップ信号が受信されているか否かを判断する工程と、前記閾値超え信号が受信されている間に前記パイルアップ信号が受信されていると判断される場合、前記パイルアップ信号が有効であると判断し、有効パイルアップを宣言する工程とを含む、請求項１の方法。
【請求項１１】
前記エネルギー分散型放射線分光分析システムは、ピーク検出フィルタを含んでおり、前記ピーク検出フィルタは、前記プリアンプ出力信号が示すフォトンに応答して１又は複数のパルスを生成し、前記１又は複数のパルスの何れかが前記ピーク検出フィルタの最小検出可能閾値エネルギーを超えている間に、閾値超え信号を生成するように構成されており、
前記方法は、前記パイルアップが起こったと判断する工程に応答して、パイルアップ信号を生成する工程と、前記パイルアップ信号を受信する工程と、前記閾値超え信号が受信されている間に前記パイルアップ信号が受信されているか否かを判断する工程と、前記閾値超え信号が受信されていない間に前記パイルアップ信号が受信されていると判断される場合、前記パイルアップ信号は誤ったトリガであると判断し、前記パイルアップ信号を無視する工程とを含む、請求項１の方法。
【請求項１２】
請求項１の方法を実行するように構成されたパルスプロセッサ。
【請求項１３】
入射フォトンを電流パルスである出力に変換する検出器と、
前記検出器の出力を電圧信号であるプリアンプ出力信号に変換するプリアンプと、
前記プリアンプ出力信号からパイルアップを検出するように構成されているパルスプロセッサとを備えており、
前記パルスプロセッサは、
前記プリアンプ出力信号の瞬間の傾きを、傾きの閾値に対してテストする工程と、
前記瞬間の傾きが前記傾きの閾値を超えていたと判断された後に、前記プリアンプ出力信号の第１後続部分を特定する工程であって、前記第１後続部分では、前記プリアンプ出力信号の瞬間の傾きは最大値へと増加する工程と、
前記第１後続部分に続いて、前記プリアンプ出力信号の第２後続部分を特定する工程であって、前記第２後続部分では、前記プリアンプ出力信号の瞬間の傾きは、前記傾きの閾値を超えているままであるが、前記最大値から前記傾きの閾値よりも減少している工程と、
前記第２後続部分に続いて、前記瞬間の傾きが前記傾きの閾値以下に減少する前に、前記プリアンプ出力信号の第３後続部分を特定する工程であって、前記第３後続部分では、前記プリアンプ出力信号の瞬間の傾きは、前記傾きの閾値よりも増加する工程と、
それに応答して、パイルアップが起こったと判断する工程と、
を行うことでパイルアップを検出するエネルギー分散型放射線分光分析システム。
【請求項１４】
前記パルスプロセッサは、前記テストする工程と、前記第２後続部分を特定する工程と、前記第３後続部分を特定する工程と、前記判断する工程とを実行するように構成されたＦＰＧＡを備えている、請求項１３のエネルギー分散型放射線分光分析システム。
【請求項１５】
前記パルスプロセッサは、更に、前記プリアンプ出力信号のデジタルバージョンを生成するように構成されており、
前記テストする工程は、前記傾きの閾値に対して前記プリアンプ出力信号の瞬間の傾きの推定値をテストする工程を含んでおり、
前記第１後続部分を特定する工程は、前記プリアンプ出力信号の第１後続部分を特定する工程を含んでおり、前記第１後続部分では、前記プリアンプ出力信号の瞬間の傾きの推定値は最大値へと増加し、
前記第２後続部分を特定する工程は、前記プリアンプ出力信号の第２後続部分を特定する工程を含んでおり、前記第２後続部分では、前記プリアンプ出力信号の瞬間の傾きの推定値は、前記傾きの閾値を超えているままであるが、前記最大値から前記傾きの閾値よりも減少しており、
前記プリアンプ出力信号の第３後続部分を特定する工程は、前記プリアンプ出力信号の第３後続部分を特定する工程を含んでおり、前記第３後続部分では、前記プリアンプ出力信号の瞬間の傾きの推定値は、前記傾きの閾値よりも増加している、請求項１３のエネルギー分散型放射線分光分析システム。
【請求項１６】
前記パルスプロセッサは、前記プリアンプ出力信号を連続する複数のデジタルサンプルに変換し、連続する複数のデジタルサンプルの複数のグループを合算して、合算されたデータの複数のピースを生成することで、前記プリアンプ出力信号のデジタルバーションを生成するように構成されており、前記デジタルバーションは、前記合算されたデータの複数のピースを含む、請求項１５のエネルギー分散型放射線分光分析システム。
【請求項１７】
前記プリアンプ出力信号の前記デジタルバーションは、各々が値を有する連続する複数のデジタルサンプルを含んでおり、
前記第１後続部分は、前記複数のデジタルサンプルの第１の連続する対を境界としており、前記第１後続部分の瞬間の傾きの推定値は、前記複数のデジタルサンプルの前記第１の連続する対の各々の値の間の差であり、
前記第２後続部分は、前記複数のデジタルサンプルの第２の連続する対を境界としており、前記第２後続部分の瞬間の傾きの推定値は、前記複数のデジタルサンプルの前記第２の連続する対の各々の値の間の差であり、
前記第３後続部分は、前記複数のデジタルサンプルの第３の連続する対を境界としており、前記第３後続部分の瞬間の傾きの推定値は、前記複数のデジタルサンプルの前記第３の連続する対の各々の値の間の差である、請求項１５のエネルギー分散型放射線分光分析システム。
【請求項１８】
前記パルスプロセッサは、更に、前記第３後続部分を特定する工程に応答して、入射フォトンに対応したエッジが起こったと判断するように構成されている、請求項１５のエネルギー分散型放射線分光分析システム。
【請求項１９】
前記傾きの閾値は、前記プリアンプ出力信号の複数の前の部分に基づいており、前記プリアンプ出力信号の前記複数の前の部分の各々の瞬間の傾きの符号は、前記第１、第２及び第３後続部分の瞬間の傾きの符号と逆である、請求項１５のエネルギー分散型放射線分光分析システム。
【請求項２０】
前記傾きの閾値は、前記複数の前の部分の瞬間の傾きの各々の平均に基づいている、請求項１９のエネルギー分散型放射線分光分析システム。
【請求項２１】
前記傾きの閾値は、乗数が乗じられた前記複数の前の部分の各々の瞬間の傾きの平均に等しい、請求項２０のエネルギー分散型放射線分光分析システム。
【請求項２２】
前記パルスプロセッサは、ピーク検出フィルタを含んでおり、前記ピーク検出フィルタは、前記プリアンプ出力信号が示すフォトンに応答して１又は複数のパルスを生成し、前記１又は複数のパルスの何れかが前記ピーク検出フィルタの最小検出可能閾値エネルギーを超えている間に、閾値超え信号を生成するように構成されており、
前記パルスプロセッサは、前記パイルアップが起こったと判断する工程に応答して、パイルアップ信号を生成し、前記パイルアップ信号を受信し、前記閾値超え信号が受信されている間に前記パイルアップ信号が受信されているか否かを判断し、前記閾値超え信号が受信されている間に前記パイルアップ信号が受信されていると判断する場合、前記パイルアップ信号が有効であると判断し、有効パイルアップを宣言するように構成されている、請求項１３のエネルギー分散型放射線分光分析システム。
【請求項２３】
前記パルスプロセッサは、ピーク検出フィルタを含んでおり、前記ピーク検出フィルタは、前記プリアンプ出力信号が示すフォトンに応答して１又は複数のパルスを生成し、前記１又は複数のパルスの何れかが、前記ピーク検出フィルタの最小検出可能閾値エネルギーを超えている間に閾値超え信号を生成するように構成されており、
前記パルスプロセッサは、前記パイルアップが起こったと判断する工程に応答して、パイルアップ信号を生成し、前記パイルアップ信号を受信し、前記閾値超え信号が受信されている間に前記パイルアップ信号が受信されているか否かを判断し、前記閾値超え信号が受信されていない間に前記パイルアップ信号が受信されていると判断される場合、前記パイルアップ信号は誤ったトリガであると判断し、前記パイルアップ信号を無視するように構成されている、請求項１３のエネルギー分散型放射線分光分析システム。
【請求項２４】
前記エネルギー分散型放射線分光分析システムは、Ｘ線分光分析システムである、請求項１３のエネルギー分散型放射線分光分析システム。
【請求項２５】
前記エネルギー分散型放射線分光分析システムは、ガンマ線分光分析システムである、請求項１３のエネルギー分散型放射線分光分析システム。
【請求項２６】
入射フォトンを電流パルスである出力に変換する検出器と、
前記検出器の出力を電圧信号であるプリアンプ出力信号に変換するプリアンプと、
パルスプロセッサと、
を備えており、前記パルスプロセッサは
前記プリアンプ出力信号を連続する複数のデジタルサンプルに変換することで、前記プリアンプ出力信号の第１デジタルバージョンを生成し、
連続する複数のデジタルサンプルの複数のグループを合算して、合算されたデータの複数のピースを生成することで、前記プリアンプ出力信号の第２デジタルバージョンを生成し、ここで、前記第２デジタルバージョンは、前記合算されたデータの複数のピースを含んでおり、
前記第１デジタルバージョンを用いて、前記プリアンプ出力信号の瞬間の傾きを、傾きの閾値に対してテストし、
前記第１デジタルバージョンを用いて、前記プリアンプ出力信号の瞬間の傾きが前記傾きの閾値を超えていると判断されると、前記第１デジタルバージョンを用いて、前記プリアンプ出力信号の第１後続部分を特定することを試み、ここで、前記第１後続部分では、前記プリアンプ出力信号の瞬間の傾きは最大値へと増加し、
前記第１後続部分が特定されると、前記第１後続部分に続いて、前記第１デジタルバージョンを用いて、前記プリアンプ出力信号の第２後続部分を特定することを試み、ここで、前記第２後続部分では、前記プリアンプ出力信号の瞬間の傾きはまだ前記傾きの閾値を超えているが、前記最大値から前記傾きの閾値よりも減少しており、
前記第２後続部分が特定されると、前記第２後続部分に続いて、前記瞬間の傾きが前記傾きの閾値以下に減少する前に、前記第１デジタルバージョンを用いて、前記プリアンプ出力信号の第３後続部分を特定することを試み、ここで、前記第３後続部分では、前記プリアンプ出力信号の瞬間の傾きは前記傾きの閾値よりも増加し、
前記第３後続部分が特定されると、パイルアップが起こったと判断し、
前記第２デジタルバージョンを用いて、前記プリアンプ出力信号の瞬間の傾きを傾きの閾値に対してテストし、
前記第２デジタルバージョンを用いて、前記プリアンプ出力信号の瞬間の傾きが前記傾きの閾値を超えていると判断されると、前記第２デジタルバージョンを用いて、前記プリアンプ出力信号の第１後続部分を特定することを試み、ここで、前記第１後続部分では、前記プリアンプ出力信号の瞬間の傾きは、最大値へと増加し、
前記第１後続部分が特定されると、前記第１後続部分に続いて、前記第２デジタルバージョンを用いて、前記プリアンプ出力信号の第２後続部分を特定することを試み、ここで、前記第２後続部分では、前記プリアンプ出力信号の瞬間の傾きはまだ前記傾きの閾値を超えているが、前記最大値から前記傾きの閾値よりも減少しており、
前記第２後続部分が特定されると、前記第２後続部分に続いて、前記瞬間の傾きが前記傾きの閾値以下に減少する前に、前記第２デジタルバージョンを用いて、前記プリアンプ出力信号の第３後続部分を特定することを試み、ここで、前記第３後続部分では、前記プリアンプ出力信号の瞬間の傾きは前記傾きの閾値よりも増加し、
前記第３後続部分が特定されると、パイルアップが起こったと判断するように構成されている、エネルギー分散型放射線分光分析システム。
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願の参照：
本件出願は、２００７年８月３日に出願された米国仮特許出願第６０/９６３,３２０号、発明の名称「IMPROVED EDS PILEUP REJECTION FOR LOW ENERGIES AT HIGH COUNT RATES（低エネルギー高カウントレートでのＥＤＳパイルアップ除去の改善）」に関する優先権を主張し、当該出願の開示は、引用を以て、本明細書の一部となる。
【０００２】
本発明は、Ｘ線分光分析システムやガンマ線分光分析システムなどのエネルギー分散型放射線分光分析システムに関しており、特に、エネルギー分散型放射線分光分析システムにおけるパイルアップ除去を改善する方法に関する。
【背景技術】
【０００３】
Ｘ線分光分析システムやガンマ線分光分析システムなどのエネルギー分散型放射線分光分析システムは、例えば、走査型電子顕微鏡（ＳＥＭ）からのＸ線放射やガンマ線放射などの放射線放射を検出、測定、及び分析するために使用される。典型的なエネルギー分散型放射線分光分析システムは、以下の４つの主要構成要素を含んでいる：（１）検出器、（２）プリアンプ、（３）パルスプロセッサ、（４）コンピュータをベースとした分析装置。限定を目的とせず、便宜のみのために、以下では、Ｘ線分光分析システムとＸ線形態のフォトン（これと比較されるのは、例えば、ガンマ線分光分析システムで検出されるガンマ線形態のフォトン）とについて説明する。
【０００４】
検出器は、通常、あるタイプの半導体センサの形態であり、およそ数十から数百ナノ秒の間に、一般的には数万電子程度の微小な電流パルスに入射Ｘ線を変換する。電流パルスの各々の大きさは、Ｘ線のエネルギーに比例する。
【０００５】
プリアンプは、検出器から出力される電流パルスを増幅し、一般的に、これを数十ミリボルトから数百ミリボルトまでの範囲の電圧信号に変換する。プリアンプには、「テールパルス」又はＲＣカップルプリアンプと、パルスリセットプリアンプという、主たる２つのタイプがある。本明細書中のいずれに記述された内容も、これら２つのタイプのプリアンプに適用される。
【０００６】
パルスリセット型プリアンプでは、センサで生成された電荷は、その結果として生じる電圧が、上限に達するまで、段階的に多様な高さと間隔で上昇するようにフィードバックコンデンサ内に積分される。この上限に達すると、「リセット」パルスが適用され、これが蓄積された電荷をフィードバックコンデンサから放出し、一般的には数マイクロ秒という短時間に、プリアンプをその最小出力電圧近くまで復帰させる。そして、検出器とＸ線の相互作用による電荷が再度フィードバックコンデンサに蓄積して、このサイクルが繰り返される。対照的に、テールパルスプリアンプは、検出器から出力される電圧ステップ信号にハイパスフィルタとして作用し、 ベースラインへの指数的復帰の時定数は、プリアンプのフィードバックコンデンサにおける電荷積分時間と比較して長くなる。
【０００７】
パルスプロセッサは、プリアンプ信号を受け取り、積分処理によりＸ線エネルギーの数値表現を生成する。過去のエネルギー分散型放射線分光分析システムでは、パルスプロセッサは、所謂「整形（シェーピング）アンプ」と、アナログ／デジタル（Ａ／Ｄ）コンバータという２つの別個の構成要素を含んでいた。一方、最近のエネルギー分散型放射線分光分析システムでは、一般的にこれらの機能が一体化しており、最新設計では、プリアンプ信号を直接デジタル化し、デジタル信号処理を使用した全パルス検出とフィルタ機能とを実行する。
【０００８】
コンピュータベースの分析装置は、パルスプロセッサから出力されるＸ線エネルギーを、それらエネルギーに対して検出されたＸ線の数のスペクトル又はプロットに集める。スペクトルは、「チャンネル」又は「ビン」と呼ばれる幾分恣意的な数の小さい領域に分割される。過去のシステムでは、マルチチャンネルアナライザ（ＭＣＡ）と呼ばれるハードウエアが、Ｘ線のスペクトルチャンネルへの蓄積を行い、コンピュータが、その集計結果を読み出していた。近年のシステムでは、ＭＣＡ機能は、コンピュータにより、またはパルスプロセッサ内で、ソフトウエアで取り扱われる。
【０００９】
パルスプロセッサの仕事は、いくつかの要因によって、より複雑になっている。例えば、電子ノイズは、プリアンプから受け取った元の信号に重畳される。ほとんど最低検出限界レベルのエネルギーのＸ線では、プリアンプ出力のステップ高さは、電子ノイズのピーク間偏位より格段に小さいことがある。このような場合、ノイズの寄与分を平均化除去するために、そのステップの前後で比較的長時間の信号をフィルター処理することによってしか、Ｘ線は検出されない。このようなノイズ平均化の量は、あらゆるパルスプロセッサで基本的な操作パラメータである。この平均化時間は、「整形時間」又は「ピーク時間」としてこの分野で様々に言及されている。
【００１０】
第２に、プリアンプ出力のステップは瞬間的ではない。ノイズがない場合、信号は、Ｓ字形（S-shaped）曲線となるだろう。これは、帯域幅の限界と、装置の静電容量と、Ｘ線により生成された全電子がセンサの陽極に到達するのに必要な時間とに起因している。これらの電子は、小さなクラスタ又は雲として可視化でき、該クラスタ又は雲は、半導体センサ内のバイアス電圧領域の影響下で、センサ材料を通って陽極に向かって移動する。テールパルスプリアンプでは、信号の初期立ち上がりは同じくＳ字形であり、指数関数的な減衰がそれに続く。減衰の時定数は、設計により変化し得るが、信号の初期立ち上がりと比較して常に長くなる。
【００１１】
各面に単純な平面電極がある従来の検出器は、リチウムドリフト型シリコン検出器、即ちＳｉ（Ｌｉ）検出器と呼ばれ、バイアスの力線は、（エッジ効果を無視した第１近似で）真っ直ぐであり、後から前に延びる。その結果、電子雲の収集時間はほとんど一定で、プリアンプ信号の「立ち上がり」時間（Ｓ字形ステップの幅）は、デバイスの静電容量が比較的大きいことによる帯域幅の制限によって支配される。
【００１２】
近年、シリコンドリフト型検出器（ＳＤＤ）として知られる新しいタイプのセンサが開発された。その新しい顕著な特徴は、バイアス電極にエッチングされた同心円状のパターンであり、僅かに異なる電圧がこのパターンの個々のリングに印加されると、センサ材料内部のバイアス場は、電子が微小なスポット陽極に集中するように形作られる。これは、有効デバイス静電容量を約４桁で低減させる効果がある。Ｘ線相互作用による電子雲は、陽極へ到達するまでの経路長に応じて大きな又は小さな度合いでドリフト時間を長くする。静電容量の減少によって、電子雲の積分時間がプリアンプ信号の立ち上がり時間により大きく寄与し、Ｓｉ（Ｌｉ）検出器の場合は数パーセントでしかないのに比較して、ＳＤＤでは、およそ２倍変化する可能性がある（全静電容量が減少するために、従来の平面電極センサ（Ｓｉ（Ｌｉ）検出器）よりも、ＳＤＤでは、立ち上がり時間の範囲の下端でさえも依然としてより速いかも知れないが）。
【００１３】
「パルスパイルアップ」としてこの分野で公知の現象は、Ｘ線が連続して到達する際にそれらのエネルギーを個々に測定するにはお互いに近すぎるという結果として起こる。検出されない場合、両方のＸ線が１つのエネルギーとして測定され、そのエネルギーは、システムのパルスシェーピングフィルタの構成とＸ線間の時間間隔とに応じて、そのＸ線対のエネルギーの高い方とそれらの合計との間のどこかに位置することになる。従って、パルスプロセッサは、パイルアップの発生を効率よく検出して、検出時には、それに関したエネルギー測定を捨てる（パイルアップ除去と呼ばれる）必要がある。
【００１４】
放射線は、自然発生か何らかの励起により誘導されたかに関わらず、確率過程である。平均放射率の高低に関わらず、ある非ゼロの確率で、２つの放射Ｘ線の時間間隔は任意に短くなり得る。２つ目のＸ線が任意の時間間隔ｔ内で得られる確率は、Ｐ＝（１−ｅ-(rt)）である。ここで、ｅは自然対数の底であり、ｒは平均Ｘ線到達率である。
【００１５】
２つのＸ線を個別な事象として常に特定できる最短の時間間隔は、この分野で「パルス対分解時間」として知られており、エネルギーの強い逆関数である。言い換えると、小さな（低エネルギー）パルス対の間で近接する発生（coincidence）を検出することは、大型パルス対の場合よりもより一層困難である。パルスプロセッサのピーク検出フィルタは全て高エネルギーＸ線に強く応答するので、検出が最も困難なケースは、近接して引き続くような低エネルギーＸ線である。
【００１６】
一般的に、従来のパイルアップ検出法は、主たるエネルギー測定処理経路（「主チャンネル」と呼ばれる）の整形時間と比較して非常に短いが一定であるシェーピング時間を有する１つ以上の並列フィルタとして表現される。これらフィルタは、「高速チャンネル」または「パイルアップ除去チャンネル」などと様々に称される。各チャンネル（主と高速）には、デッドタイムと呼ばれるパラメータがあり、これは、そのチャンネルが正確且つ明確に１つのＸ線のエネルギーを測定するためにかかる時間である。高速チャンネルのデッドタイムＤfは、主チャンネルのデッドタイムＤより非常に短いので、高速チャンネルでは、時間的に互いに近接して到達したＸ線に対して別個にパルスを生成する可能性が高い。高速チャンネルで使用されるフィルタ（アナログ又はデジタル）は、エネルギー測定（主チャンネル）に使用されるものとほぼ同じタイプであって、単に、パルス幅がより短い。
【００１７】
しかしながら、高速チャンネルのシェーピング時間は非常に短いので、電子ノイズの平均化除去にはあまり効果がない。どのパルス処理チャンネルのシェーピング時間も、そのチャンネルで検出できる最低エネルギーのＸ線を決定する。検出閾値をより低く設定すると、処理チャンネルは、プリアンプの出力信号のランダムノイズ変動によって、過度の不正トリガを生成する。一般的に、最新式のＸ線分光分析システムは、主測定チャンネルで約１００乃至２００電子ボルト（ｅＶ）のＸ線をノイズから判別可能であるが、高速チャンネルの閾値エネルギーがより高くなければならない。最速のパイルアップ除去チャンネルは、高エネルギーＸ線について最良のパルス対分解時間を規定し、一般的には１０００ｅＶから２０００ｅＶの間の閾値を有する。現存のパルスプロセッサには、１０００ｅＶ以下の範囲でパイルアップ除去性能を向上させるために３個ものパイルアップ除去チャンネルを備えるものがある。２個以上のパイルアップ除去チャンネルのあるシステムでは、中間チャンネルは、５２５ｅＶの酸素又は２７７ｅＶの炭素のような特定の輝線に感度があるように選択されたシェーピング時間を有している。希望するエネルギー検出閾値を下げる毎に、より長い整形時間を必要とするので、パルス対分解時間は劣化する。
【００１８】
パルス対分解時間は、そのパルス対の低エネルギー側のＸ線により支配される。これは、低エネルギーパイルアップ検出の失敗が低エネルギーピークに影響するだけでなく、スペクトルの全ピークに影響するため重要である。低エネルギーＸ線のパイルアップが検出されないと、任意のピークのカウントが、その予想される位置から２つのピークエネルギーの合計位置にまで広がる幅広い棚に移動する可能性がある。エネルギーにおけるパイルアップ効果の依存性については、 P.J. Statham, Microchim. Acta 155, 289-294 (2006) に良く解説されている。
【００１９】
さらに、ＳＤＤの場合における有効な単一Ｘ線パルスに係る非常に変化する立ち上がり時間は、Ｘ線が吸収される電荷収集陽極からの距離に依存しており、最速の従来型パイルアップチャンネルがただ一つの出力パルスしか生成しないときでさえ、時間的に非常に近い発生を検出する従来の方法に最大の問題を引き起こす。昔ながらの手法は、例えば、Ｗａｒｂｕｒｔｏｎらによる米国特許第５,６８４,８５０号にて説明されているように、パルス幅試験である。デジタルの三角フィルタ又は台形フィルタは、比較的容易に構築できて効率的に演算できるため、全デジタル化したパルス処理システムで最も一般的である。またこの分野で有限インパルス応答（ＦＩＲ）フィルタとして公知の技術があり、これは、フィルタの非ゼロ加重係数の程度で規定される有限範囲の時間外では、フィルタの応答がゼロとなることを保証することを意味している。対照的に、従来の半ガウシアンアナログパルスシェーピングは、指数時定数を導入し、その応答は原理的には永久に持続する。しかし、実際には、出力は合理的に予想しうる（ややエネルギーに依存する）時間のノイズ閾値以下に減衰する。
【００２０】
ＦＩＲフィルタのパルス幅は、原理的にエネルギーに依存しないが、プリアンプステップの立ち上がり時間に依存し、さらにＳＤＤでは、可変な電荷収集時間に依存する。従って、単一のＸ線からの有効パルスを誤って排除することを避けるために、固定パルス幅試験は、ＳＤＤにてドリフト経路長を最大とした結果得られる最大立ち上がり時間を受け入れるように十分に長く設定される必要がある。
【００２１】
従って、立ち上がり時間が非常に変化するＳＤＤを採用したシステムの性能を改善するには、立ち上がり時間に依存しないパイルアップ検出法を有するが有利となろう。
【発明の開示】
【００２２】
ある実施例では、Ｘ線分光分析システムやガンマ線分光分析システムなどのエネルギー分散型放射線分光分析システムのプリアンプ出力信号からパイルアップを検出する方法が提供される。本発明の方法は、ノイズトリガ値に対してプリアンプ出力信号の瞬間の傾きをテストする工程と、瞬間の傾きがノイズトリガ値を超えていたと判断された後に、プリアンプ出力信号の第１後続部分を特定する工程であって、第１後続部分では、プリアンプ出力信号の瞬間の傾きは最大値に増加する工程を含んでいる。本発明の方法は、更に、第１後続部分に続いて、プリアンプ出力信号の第２後続部分を特定する工程であって、第２後続部分では、プリアンプ出力信号の瞬間の傾きは、ノイズトリガレベルを超えているままであるが、最大値からノイズトリガレベルよりも減少している工程と、第２後続部分に続いて、瞬間の傾きがノイズトリガレベル以下に減少する前に、プリアンプ出力信号の第３後続部分を特定する工程であって、第３後続部分では、プリアンプ出力信号の瞬間の傾きは、ノイズトリガ値よりも増加する工程と、それに応答して、パイルアップが起こったと判断する工程とを含む。
【００２３】
好ましくは、本発明の方法は、プリアンプ出力信号のデジタルバージョンを生成する工程を更に含んでいる。この実施例では、テストする工程は、ノイズトリガ値に対してプリアンプ出力信号の瞬間の傾きのデジタル推定値をテストする工程を含んでおり、第１後続部分を特定する工程は、プリアンプ出力信号の第１後続部分を特定する工程を含んでおり、第１後続部分では、プリアンプ出力信号の瞬間の傾きのデジタル推定値は最大値へと増加し、第２後続部分を特定する工程は、プリアンプ出力信号の第２後続部分を特定する工程を含んでおり、第２後続部分では、プリアンプ出力信号の瞬間の傾きのデジタル推定値は、ノイズトリガレベルを超えているままであるが、最大値からノイズトリガレベルよりも減少しており、プリアンプ出力信号の第３後続部分を特定する工程は、プリアンプ出力信号の第３後続部分を特定する工程を含んでおり、第３後続部分では、プリアンプ出力信号の瞬間の傾きのデジタル推定値は、ノイズトリガ値よりも増加する。この実施例のプリアンプ出力信号のデジタルバーションは、各々が値を有する連続する複数のデジタルサンプルを含んでよく、第１後続部分は、複数のデジタルサンプルの第１対を境界としており、複数のデジタルサンプルの第２対を境界としており、第３後続部分は、複数のデジタルサンプルの第３対を境界としている。この実施例では、第１後続部分の瞬間の傾きのデジタル推定値は、複数のデジタルサンプルの第１対の各々の値の間の差であり、第２後続部分の瞬間の傾きのデジタル推定値は、複数のデジタルサンプルの第２対の各々の値の間の差であり、第３後続部分の瞬間の傾きのデジタル推定値は、複数のデジタルサンプルの第３対の各々の値の間の差である。
【００２４】
本発明の方法は、第３後続部分を特定する工程に応答してエッジが起こったと判断する工程を更に含む。加えて、ノイズトリガ値は、プリアンプ出力信号の複数の前の部分に基づいてもよく、プリアンプ出力信号の複数の前の部分の各々の瞬間の傾きは、第１、第２及び第３後続部分の瞬間の傾きの方向と逆である。ノイズトリガ値は、複数の前の部分の各々の瞬間の傾きの平均に基づいてもよく、特に、閾値乗数が乗じられた複数の前の部分の各々の瞬間の傾きの平均に等しくてもよい
【００２５】
ある実施例では、エネルギー分散型放射線分光分析システムは、ピーク検出フィルタを含んでおり、ピーク検出フィルタは、プリアンプ出力信号が示すフォトンに応答して１又は複数のパルスを生成し、１又は複数のパルスの何れかがピーク検出フィルタの最小検出可能閾値エネルギーを超えている間に、閾値超え信号を生成するように構成されている。この実施例では、本発明の方法は、パイルアップが起こったと判断する工程に応答して、パイルアップ信号を生成する工程と、パイルアップ信号を受信する工程と、閾値超え信号が受信されている間にパイルアップ信号が受信されているか否かを判断する工程と、閾値超え信号が受信されている間にパイルアップ信号が受信されていると判断される場合、パイルアップ信号が有効であると判断し、有効パイルアップを宣言する工程とを含んでいる。
【００２６】
ある実施例では、同様に、エネルギー分散型放射線分光分析システムは、ピーク検出フィルタを含んでおり、ピーク検出フィルタは、プリアンプ出力信号が示すフォトンに応答して１又は複数のパルスを生成し、１又は複数のパルスの何れかがピーク検出フィルタの最小検出可能閾値エネルギーを超えている間に、閾値超え信号を生成するように構成されている。本発明の方法は、パイルアップが起こったと判断する工程に応答して、パイルアップ信号を生成する工程と、パイルアップ信号を受信する工程と、閾値超え信号が受信されている間にパイルアップ信号が受信されているか否かを判断する工程と、閾値超え信号が受信されていない間にパイルアップ信号が受信されていると判断される場合、パイルアップ信号は誤ったトリガであると判断し、パイルアップ信号を無視する工程とを含む。
【００２７】
別の実施例では、パルスプロセッサは、上記に基づく方法を実行するように構成される。更に別の実施例では、Ｘ線分光分析システムやガンマ線分光分析システムなどのエネルギー分散型放射線分光分析システムが提供され、該システムは、入射フォトンを電流パルスである出力に変換する検出器と、検出器の出力を電圧信号であるプリアンプ出力信号に変換するプリアンプと、上述したようにして、プリアンプ出力信号からパイルアップを検出するように構成されているパルスプロセッサとを備えている。パルスプロセッサは、テストする工程と、第２後続部分を特定する工程と、第３後続部分を特定する工程と、判断する工程とを実行するように構成されたＦＰＧＡを備えていてよい。
【００２８】
更に別の実施例では、Ｘ線分光分析システムやガンマ線分光分析システムなどのエネルギー分散型放射線分光分析システムが提供され、該システムは、入射フォトンを電流パルスである出力に変換する検出器と、検出器の出力を電圧信号であるプリアンプ出力信号に変換するプリアンプと、パルスプロセッサとを備えている。パルスプロセッサは、プリアンプ出力信号を連続する複数のデジタルサンプルに変換することで、プリアンプ出力信号の第１デジタルバージョンを生成し、連続する複数のデジタルサンプルの複数のグループを合算して、合算されたデータの複数のピースを生成することで、プリアンプ出力信号の第２デジタルバージョンを生成し、ここで、第２デジタルバージョンは、合算されたデータの複数のピースを含んでおり、第１デジタルバージョンを用いて、ノイズトリガ値に対してプリアンプ出力信号の瞬間の傾きをテストし、第１デジタルバージョンを用いて、プリアンプ出力信号の瞬間の傾きがノイズトリガ値を超えていると判断されると、第１デジタルバージョンを用いて、プリアンプ出力信号の第１後続部分を特定することを試み、ここで、第１後続部分では、プリアンプ出力信号の瞬間の傾きは最大値へと増加し、第１後続部分が特定されると、第１後続部分に続いて、第１デジタルバージョンを用いて、プリアンプ出力信号の第２後続部分を特定することを試み、ここで、第２後続部分では、プリアンプ出力信号の瞬間の傾きはまだノイズトリガレベルを超えているが、最大値からノイズトリガレベルよりも減少しており、第２後続部分が特定されると、第２後続部分に続いて、瞬間の傾きがノイズトリガレベル以下に減少する前に、第１デジタルバージョンを用いて、プリアンプ出力信号の第３後続部分を特定することを試み、ここで、第３後続部分では、プリアンプ出力信号の瞬間の傾きはノイズトリガレベルよりも増加し、第３後続部分が特定されると、パイルアップが起こったと判断するように構成されている。パルスプロセッサはまた、第２デジタルバージョンを用いて、ノイズトリガ値に対してプリアンプ出力信号の瞬間の傾きをテストし、第２デジタルバージョンを用いて、プリアンプ出力信号の瞬間の傾きがノイズトリガ値を超えていると判断されると、第２デジタルバージョンを用いて、プリアンプ出力信号の第１後続部分を特定することを試み、ここで、第１後続部分では、プリアンプ出力信号の瞬間の傾きは、最大値へと増加し、第１後続部分が特定されると、第１後続部分に続いて、第２デジタルバージョンを用いて、プリアンプ出力信号の第２後続部分を特定することを試み、ここで、第２後続部分では、プリアンプ出力信号の瞬間の傾きはまだノイズトリガレベルを超えているが、最大値からノイズトリガレベルよりも減少しており、第２後続部分が特定されると、第２後続部分に続いて、瞬間の傾きがノイズトリガレベル以下に減少する前に、第２デジタルバージョンを用いて、プリアンプ出力信号の第３後続部分を特定することを試み、ここで、第３後続部分では、プリアンプ出力信号の瞬間の傾きはノイズトリガレベルよりも増加し、第３後続部分が特定されると、パイルアップが起こったと判断するように構成されている。
【００２９】
従って、本発明が、上記の特徴及び利点の全てを十分に達成することは明らかである。本発明のさらなる特徴及び利点は、以下の説明で述べられ、また、ある程度は説明から明らかであり、本発明を実施することで理解できる。さらに、本発明の特徴及び利点は、特に添付の特許請求の範囲で示された手段及び組合せを用いて、実現及び獲得され得る。
【図面の簡単な説明】
【００３０】
添付の図面は、本発明の現在における好適な実施例を図示しており、上述の一般的な説明や以下の詳細な説明と共に、本発明の原理を説明するために供するものである。それら図面を通じて、同じ参照符号は、同じ又は関連する部分を示す。
【図１】図１は、本発明が実装され得る、限定を目的としない特定の実施例に基づいた、Ｘ線分光分析システムの全体的なブロック図である。
【図２】図２は、一般的な台形ＦＩＲデジタルフィルタのブロック図である。
【図３Ａ】図３Ａは、限定を目的としない特定の実施例に従って本発明の実装に使用され得るソースコードを含む。
【図３Ｂ】図３Ｂは、限定を目的としない特定の実施例に従って本発明の実装に使用され得るソースコードを含む。
【図３Ｃ】図３Ｃは、限定を目的としない特定の実施例に従って本発明の実装に使用され得るソースコードを含む。
【図３Ｄ】図３Ｄは、限定を目的としない特定の実施例に従って本発明の実装に使用され得るソースコードを含む。
【図４Ａ】図４Ａは、本発明のＦＰＧＡの実施例の設計に使用され得る図３Ａ乃至Ｄのプログラムロジックから抽出した状態図である。
【図４Ｂ】図４Ｂは、本発明のＦＰＧＡの実施例の設計に使用され得る図３Ａ乃至Ｄのプログラムロジックから抽出した状態図である。
【図５Ａ】図５Ａは、２つの異なるエネルギーの低エネルギーＸ線に対する、図１で示すピーク検出フィルタの理想的な台形応答を示しており、第３ラインは、検出閾値エネルギーを示す示している。
【図５Ｂ】図５Ｂは、図１に示すピーク検出フィルタについて、２つの４００ｅＶのエネルギーのＸ線からの出力の理想的な表示を示している。
【図６】図６Ａ、図６Ｂ及び図６Ｃは、本発明の一実施例を使用してエッジを検出するために処理される可能性のある立ち上がり及び極値の３つのパターンを示している。
【図７Ａ】図７Ａは、ＳＤＤからの実際の波形のプロットを示す。
【図７Ｂ】図７Ｂは、ＳＤＤからの実際の波形のプロットを示す。
【図８】図８は、図１のシステムで予想されるパイルアップ性能を要約した概略図であり、特定のＳＤＤについて、典型的なパルス対分解時間とエネルギー検出閾値とが示されている。
【発明を実施するための形態】
【００３１】
「背景技術」にて指摘したように、本明細書に記載される主題の事項は、テールパルスプリアンプとパルスリセットプリアンプの両方に適用される。しかしながら、図示と説明を容易にするために、パルスリセット型プリアンプを採用した実施例に関して、本発明を説明する。「背景技術」にて論じたように、検出器電圧ステップ信号の立ち上がり部分は、テールパルス型プリアンプを経由し、比較的変化しない。結果として、パルスリセットの実施例に関する説明から、本明細書に記載される発明が、テールパルスプリアンプの実施例に容易に適用され得ると理解されるだろう。さらに、本明細書に記載する主題の事項は、エネルギー分散型放射線分光分析システム全般に適用される。しかしながら、図示と説明を容易にするために、Ｘ線分光分析システムを採用した実施例に関して、本発明を説明する。しかしながら、これに限定すると見なされるべきではない。また、これに限定されるものではないが、ガンマ線分光分析システムなどのその他のタイプのエネルギー分散型放射線分光分析システムに関して、本発明が適用されてよいことは理解されるべきである。
【００３２】
本明細書で説明する改善は、立ち上がり時間に依存せず、ある実施例では、検出器における荷電収集の予想されるＳ字パターンのみに依存し、また別の実施例では、（ノイズ依存限界内で）単調な立ち上がり信号を有することに依存しており、当該立ち上がり信号に続いて、ランダムノイズが信号の向き（局所一次導関数の符号、立ち上がり又は立ち下がり）を決定する短い期間がある。故に、本明細書で説明する改善は、短い立ち上がり時間のＸ線ステップにより速く応答でき、より長い立ち上がり時間のパルスではよりゆっくりと適切に応答でき、誤って後者を排除することがない。ある実施例では、有効な単一のＸ線からの電圧信号は、ある最大値まで（ノイズの範囲内で）単調に増加して、その後単調に減少する一次導関数を有するという仮定がなされる。本明細書にてさらなる詳細を説明するように、ある実施例に基づいて開示される方法は、プリアンプ出力を直接デジタル化し、デジタル化したＡＤＣサンプル間の連続する差は、一次導関数の瞬間的な値について、利用可能な最も優れた推定値を与える。別の実施例では、有効な単一Ｘ線からの電圧信号は、局地的なピーク間ノイズ域を超えて上昇して、その後、最終的に上昇が止まるという仮定と、そのノイズ域は、立ち上がりに先立つ極大値とこれに続く極小値とで測定されるように、その立ち上がりの前後で顕著に移動するという仮定がなされる。この実施例のシステムは、プリアンプ出力を直接デジタル化して、極値はデジタル信号として測定される。
【００３３】
デジタル化ＡＤＣの変換速度は、立ち上がり時間の予想範囲に適切に一致すべきである。それは、予想される最短立ち上がり時間で、立ち上がりの間に波形を数回サンプリングするのに十分速い必要がある。本発明が十分に効果的であるには、立ち上がり時間内での最少サンプル回数は４回又は５回であるのが望ましい。好ましい実施例では、ＡＤＣのサンプリング速度は、約５０ナノ秒である予想最短立ち上がり時間に対して、１００ＭＨｚなので、最も小さい立ち上がり時間内で５回、最も長い立ち上がり時間内ではおよそ１０回のサンプリングが行われる。
【００３４】
立ち上がり時間内に約４０又は５０のサンプルが含まれるというように、サンプリングレートが高すぎると、立ち上がりステップの１つのサンプル間隔の間に、ランダムノイズ変動から容易に識別される程度に、波形が十分に動かない。本明細書で説明するように、この状況は、サンプリングレートを分割し、最速の立ち上がり内に最適な４から８個のサンプルとなるように、本発明を具体化した回路に示す値の各々について、ある数のＡＤＣサンプルを合計することによって、容易に解決される。
【００３５】
本発明の実施例の主たる目的は、基礎となる信号の滑らかなＳ字形の性質を利用し、センサ／プリアンプの組み合わせにおける立ち上がり時間及びノイズの特性の変化に自動的に適応できるステップ検出法を使用することにより、半導体放射線センサの出力信号に生成される電圧ステップの平均パルス対分解時間を低減することにある。その結果、エネルギースペクトル中の未検出のパルスパイルアップのレベルが低下して、それ故に、「サムピーク」として当該分野で知られる誤った結果の相対的サイズが低減する。「サムピーク」は、スペクトル中の大きな放射線ピークのエネルギーの２倍、又は、任意の２つの２つのピークの合算エネルギーで起こる。
【００３６】
本明細書で説明する方法は、デジタルベースであり、アナログ／デジタルコンバータ（ＡＤＣ）によりデジタル化したプリアンプ信号を必要とする。最適な変換レートは、上述したように、プリアンプから予想される最速の立ち上がり時間に依存する。
【００３７】
以下の説明では、Ｘ線が検出される際に正向きの（positive-going）プリアンプ出力を仮定するが、この分野で通常の知識を有する者には、信号の極性は、信号の連鎖の中で反転してよく、本発明の方法は、同様に有効であると理解するであろう。また、シリコンベースのセンサと低エネルギー領域での放射を仮定しているが、同じく、この分野で通常の知識を有する者は、説明される方法は、ゲルマニウムなどその他の半導体製のセンサと、高エネルギーＸ線やガンマ線のフォトンとに適用されることを理解するであろう。
【００３８】
図１は、本発明が実装され得る特定の実施例に基づくＸ線分光分析システム１の全体的なブロック図である。図１に示すように、Ｘ線分光分析システム１は、点線で囲んだ部分に、その主要構成部分としてデジタルパルスプロセッサ（ＤＰＰ）２を含んでおり、本明細書で説明されるように本発明が実装される。さらにＸ線分光分析システム１は、シリコンドリフト検出器（ＳＤＤ）１００とパルスリセット型プリアンプ１０１とを含む。
【００３９】
動作上、Ｘ線は、ＳＤＤ１００に入射して、電子−正孔対に変換され、電子の数は、Ｘ線エネルギーに比例する。これらの電子の合計からなる微小な電荷は、プリアンプ１０１のコンデンサに蓄積されて、図示された形の出力電圧信号に変換される。当該電圧信号では、小さなＳ字形ステップが、様々な振幅及び間隔でノイズに重なって生じる。電圧信号は、ＳＤＤ１００の漏出電流により全体的に正の傾きを有する。定期的なリセットは、フィードバックコンデンサから電荷を放出して、出力を素早くその下限にもって行き、その結果、図１に示すような鋸歯状の波形となる。この一般的なアプローチは、長年にわたり当該分野で知られている。
【００４０】
プリアンプ１０１の出力は、ＤＰＰ２の一部として提供される高速アナログ／デジタルコンバータ（ＡＤＣ）１０２によりデジタル化される。好ましい実施例では、ＡＤＣ１０２は、ＡＤ９４４６シリーズのように、Ａｎａｌｏｇ  Ｄｅｖｉｃｅｓ社により製造された１００ＭＨｚ、１６ビット部品である。本発明は、このデバイスのためにＡｎａｌｏｇ  Ｄｅｖｉｃｅｓ社から供給された開発基板（モデルAD9446-100LVDS/PCB）を使用して開発されており、ＤＣ結合入力信号を受け入れるように変更され、オンボードメモリとＰＣへの標準ＵＳＢインターフェース（モデルHSC-ADC-EVALB-DC）とを備えるインターフェース基板に接続されて、走査電子顕微鏡（ＳＥＭ）に搭載されたＳＤＤからのプリアンプ波形における数千の短い（２．６２ミリ秒）セグメントを捉えて、数秒のリアルタイムデータとしてディスクファイルに格納する。以下で説明する後続のデジタル機能は、Ｐｙｔｈｏｎと呼ばれるスクリプト言語で記述された後処理ソフトウエアとして最初に実装された。そのソフトウエアのソースコードは、２００７年８月３日に出願された米国仮特許出願第６０／９６３,３２０号、発明の名称「IMPROVED EDS PILEUP REJECTION FOR LOW ENERGIES AT HIGH COUNT RATES」に含まれる。それから選択した機能を、本明細書で再現する。Ｐｙｔｈｏｎプログラムは、その後、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）ロジックと、テキサスインスツルメント社製３２０Ｃ−６４１４デジタル信号処理（ＤＳＰ）チップ用に書かれたソフトウエアとを組み合わせて使用するリアルタイム実施例について、仕様として機能した。図１に示した好ましい実施例は、名称と詳細を後述するロジックブロック１０３から１１９をＦＰＧＡロジックに配置し、名称と詳細を後述するロジックブロック１２０及び１２１をＤＳＰチップソフトウエアに配置する。
【００４１】
ＡＤＣ１０２の出力は、プリアンプ電圧波形からのデジタルサンプルと  図１にて後続する全てブロックのタイミングを規定するクロックとからなる。図１を簡潔にするために、このクロックは別個には示さないが、全ての機能ブロックは、後述するようにして、ＡＤＣ１０２のクロック又はそのある約数により同期されると理解すべきである。
【００４２】
ＡＤＣ１０２の出力とそのクロックは、検出器マッチングアベレージャ１０３を通る。検出器マッチングアベレージャ１０３は、随意的に複数のＡＤＣサンプルを合算し、その数で元のＡＤＣクロックを分周する。検出器マッチングアベレージャ１０３の目的は、ＤＰＰ２に接続するＳＤＤ１００の立ち上り時間に関して有効なサンプル間隔を最適化することにある。この合計の全ビットを保持することが、非常に短いフィルタリング時間での最終Ｘ線スペクトルの量子化誤差を避けるために好ましく、これにより、ＤＰＰ２を経て処理を継続する際のデータパスがより広くなる。
【００４３】
ＳＤＤ１００から予想される平均立ち上がり時間が約１５０ナノ秒未満である場合、検出器マッチングアベレージャ１０３は動作せず、可能な最高のタイミング精度を得るために全１００ＭＨｚレートが使用される。しかし、平面電極を伴った所謂リチウムドリフトシリコンまたはＳｉ（Ｌｉ）検出器のような、より速度の遅い検出器がＤＰＰ２に接続しており、その平均立ち上がり時間が数百ナノ秒である場合は、有効なサンプリングレートを低下させて、平均立ち上がり時間内に約１６個未満のサンプルを生じるのが望ましい。
【００４４】
マッチングアベレージャ１０３からの（恐らく合算された）データとクロックは、２つの並行した経路を通る。一つの経路は、２つのサブセクションを有する高速パイルアップロジック１０４に導く。第１のサブセクションは、シングルステップロジックと呼ばれ、ある実施例の主題であって、本明細書に詳細を記述する。他方のサブセクションは、ランロジック（runs logic）と呼ばれるもので、連続したデータサンプルの単調なラン（runs）の長さとパターンとに基づいたデジタル法を備える別の実施例の主題であって、同様に本明細書で詳細を説明する。本明細書で用いる「単調」は、数学的な意味で厳密な単調を意味していない。この方法に採用したコンパレータは、若干負にオフセットされており、サンプル間の負の差がピーク間のノイズ変動と比較して小さい場合は、サンプル間の負の差を許容する正のランの検出を行う。シングルステップロジックが、適度に高エネルギーのＸ線について単一の連続立ち上がり内でパイルアップを検出可能な場合には、ランロジックは、ノイズの制約の中で可能な限り素早く低エネルギーＸ線による連続立ち上がりの終了を検出するように設計されている。
【００４５】
第２経路は、フィルタアベレージャ１０５へと導く。フィルタアベレージャ１０５は、少数の、望ましくは、連続する４個のＡＤＣサンプルを合算して、ノイズ（サンプル間のランダム変動）を低減し、また、後続のデジタル処理ステップで要求される速度を低減する。４個を合算したデータと４で分周されたクロックとは、低速パイルアップロジック１０６に送られる。低速パイルアップロジック１０６は、高速パイルアップロジック１０４と機能的に同一だが、よりノイズが少なくて、より遅いデータを取り扱う。フィルタアベレージャ１０５からのより遅いサンプルレートで動作する場合、本発明は、分解時間は良くないが、ノイズが過剰になって誤ってトリガする前に低エネルギー検出閾値に到達するだろう。
【００４６】
フィルタアベレージャ１０５からの出力は、ピーク検出フィルタ１０７と複数の台形ＦＩＲデジタルフィルタ１０８、１０９、１１０とに並行して送られる。これらのフィルタは全て、少なくとも１５年間当該分野で普通に使用されてきた従来の台形タイプである。一般的な台形ＦＩＲデジタルフィルタのブロック図を、図２に示す。図２に示すように、ＡＤＣサンプルは、ライズＦＩＦＯ２０１、ギャップＦＩＦＯ２０２、及びフォールＦＩＦＯ２０３と呼ばれる３つの可変長ＦＩＦＯを通過する。ライズＦＩＦＯ２０１は、ＦＩＲフィルタの初期積分時間である。ステップエッジで畳み込まれると、それは、エッジがＦＩＦＯを通過する際に、最終ＦＩＲ合算にて線形の立ち上がりを与える（ノイズ変動は無視）。ギャップＦＩＦＯ２０２は、加重ゼロの期間であって、それがなければステップエッジに対して三角形の応答になるようなものに「フラットトップ（flat top）」を与える。フラットトップは望ましい。なぜなら、検出器の立ち上がり時間が可変の場合、純粋に三角形のパルス形（ギャップなし）は、高さが同じであるが立ち上がり時間が異なるような、ノイズがない複数のステップエッジについて、異なる最大出力を有するであろうからである。このギャップが、予想される最長の立ち上がり時間をカバーするのに十分長いと、最大出力合算は、（入力信号のノイズとバッググラウンドの傾きを無視すると）同じになるだろう。フォールＦＩＦＯ２０３は、ライズＦＩＦＯ２０１と同期間に渡ってサンプルを積分するが、極性が逆であって、ライズＦＩＦＯ２０１にて総和にＮ回合算されるどのサンプルも、最終的に、フォールＦＩＦＯ２０３でそれからＮ回減算される。ここで、Ｎは、それら２つのＦＩＦＯの長さである。
【００４７】
三角（または台形）フィルタの形は、それらを演算するのに必要な回路構成が簡単なために、よく使用される。任意の全長を有するＦＩＲフィルタのＦＩＦＯクロックサイクル当たり、４回の演算のみが必要とされる。ライズＦＩＦＯ２０１に入るサンプルは、移動和（running sum）に合算され、ライズＦＩＦＯ２０１から出るサンプルは、移動和から減算される。フォールＦＩＦＯ２０３に入るサンプルは、移動和から減算され、フォールＦＩＦＯ２０３から出るサンプルは、移動和に合算される。最初の差は、演算論理装置（ＡＬＵ）２０４で、また次の差は、ＡＬＵ２０５で演算される。これら２つのＡＬＵの出力は、累算器２０６にて、以前の全ＦＩＲ出力に合算される。
【００４８】
入力信号のＳ字立ち上がりが全体的にギャップＦＩＦＯ２０２に含まれている間に、ＦＩＲ出力和の最大値が発生し、それは、立ち上がりの要因となったＸ線のエネルギーに比例する。
【００４９】
ピーク検出フィルタ１０７は、Ｘ線エネルギーの測定に関与しないが、全Ｘ線の検出に、それらのエネルギーが低くとも関与して、可能な最高精度でそれらを時間的に配置する。ライズＦＩＦＯとフォールＦＩＦＯの幅はできる限り短くされるが、収集されるスペクトルの最低エネルギーＸ線の輝線を確実に検出する。電子顕微鏡に搭載されたＸ線分析装置では、それは、大抵の場合、２７７電子ボルト（ｅＶ）にある炭素の輝線である。故に、ピーク検出フィルタ１０７は、２００７年８月３日に出願された前記の米国仮特許出願第６０／９６３,３２０号、発明の名称「IMPROVED EDS PILEUP REJECTION FOR LOW ENERGIES AT HIGH COUNT RATES」で、頻繁に「炭素フィルタ」と呼ばれている。目標とする最小の輝線は、より低エネルギー（ホウ素またはベリリウム）であってよく、又は、低エネルギーでは非常に効率が悪い蛍光Ｘ線（ＸＲＦ）励起用の検出器の場合はより高エネルギーでもよい。ＸＲＦ検出器は、通常、センサの前にベリリウムウインドウを備えていて、約７００ｅＶ以下の全てのＸ線を基本的に遮断する。その場合、顕著な数のＸ線を失う心配をせずに、ピーク検出フィルタ１０７を狭くして、そのパイルアップ検出性能を改善できる。
【００５０】
ピーク検出フィルタ１０７は、通常のＦＩＲの和と、その他の２つの信号、即ち、最大応答時のパルスと、何時その応答が閾値エネルギーを超えたかを示すロジック信号とを生成する。これらの信号の使用に関する詳細は後述する。
【００５１】
Ｘ線エネルギーレベルを測定するＦＩＲフィルタ１０８、１０９及び１１０と、ピーク検出フィルタ１０７と、低速パイルアップロジック１０６と、高速パイルアップロジック１０４とは全て、適切なサイズのプログラム可能長さの調整遅延（programmable-length alignment delay）ＦＩＦＯ１１１、１１２、１１３、１１４、１１５及び１１６に接続している。これらは、全てのエッジ（イベント）検出器をトリガするのに十分なエネルギーを有しているノイズのない単一Ｘ線パルスについて、高速パイルアップロジック１０４と低速パイルアップロジック１０６からのエッジ（イベント）位置（時間）と、ピーク検出フィルタ１０７の最大値と、全てのエネルギー測定ＦＩＲフィルタ１０８、１０９及び１１０のギャップの中央に対応する出力データとが、（フィルタアベレージャ１０５のクロック分周（clock division）により強いられた時間量子化限界の範囲内で）同時にパルス検証ロジック１１７、ベースライン傾き測定ロジック１１８及びフィルタラッチロジック１１９に到達するように接続されている。
【００５２】
フィルタラッチロジック１１９は、全てのＦＩＲフィルタについて、ピーク検出フィルタ１０７の調整された最大出力時間に対応した出力を捉える。それは、従来のアナログパルス処理のサンプル・アンド・ホールド（Ｓ／Ｈ）回路と機能的に同一である。その出力は、エネルギー測定フィルタの列の中の最も長いＦＩＲフィルタのＦＩＲパルス幅の１／２（立ち下がりの時間と、ギャップの半分の時間の合計）に対応する期間だけ更に遅延して、ラッチをトリガするエッジに続くパイルアップを検出する時間を与える。
【００５３】
フィルタラッチロジック１１９はまたタイマーを含んでおり、現在のストローブ信号からその前後のストローブ信号（ピーク検出フィルタ１０７からの最大出力パルス）への時間を測定して、ＦＩＲスタックの最長フィルタ（存在するならば）の選択を可能にする。このフィルタは、Ｋｏｅｍａｎの米国特許第３,８７２,２８７号とＭｏｔｔの米国特許第５,３９３,９８２号とに開示されている方法によると、パイルアップなく使用できる。この最大値より短い全てのフィルタの出力はまた、Ｋｏｅｍａｎの米国特許第３,８７２,２８７号で教示された方法に従って、Ｘ線エネルギーのより良い推定値を得るために、異なる重みで結合されてよい。
【００５４】
ベースライン傾き測定ロジック１１８は、Ｘ線の到達によるＳ字ステップがない場合、プリアンプ１０１の電圧信号の漏出電流に起因した正の傾きを測定する。台形ＦＩＲフィルタの応答が、線形の傾きに対して一定であり、フィルタの積分時間及びギャップの幅に依存することは当該分野で知られている。この傾きの応答は、Ｘ線エネルギーの正確な測定のためにフィルタ出力から減算される必要がある。Ｓ字ステップ近傍の傾き測定に好ましい方法の詳細は、２００７年８月３日に出願された米国仮特許出願第６０／９６３,３１２号、発明の名称「DIGITAL PULSE PROCESSOR SLOPE CORRECTION」にて説明されており、その開示は、引用を以て本明細書の一部となる。
【００５５】
パルス検証ロジック１１７は、高速パイルアップロジック１０４、低速パイルアップロジック１０６及びピーク検出フィルタ１０７からの信号を組み合わせて、ピーク検出フィルタ１０７からの単一出力パルスに、パイルアップが発生しているか否かを判断する。そのようなパイルアップが発生している場合は、ピーク検出フィルタ１０７では一つの最大出力パルスしか生成されないので、フィルタラッチロジック１１９で検出されないだろうが、抑止（inbibit）パルスが、生成及び適切に遅延されて、フィルタラッチロジック１１９の出力が傾き補正較正ロジック１２０に到達するのと同時に到達する。
【００５６】
以下のテストは、パルス検証ロジック１１７で実行される。ピーク検出フィルタ１０７からの「閾値超え（above threshold）」ロジック信号がアクティブである間に、直接パイルアップ検出パルスを、高速パイルアップロジック１０４又は低速パイルアップロジック１０６から受け取られると、パイルアップが宣言されて、抑止信号が生成される。「閾値超え」ロジック信号がアクティブである間に、２つ以上のエッジ検出パルスを高速パイルアップロジック１０４又は低速パイルアップロジック１０６から受け取られると、同様にパイルアップが宣言されて、抑止信号が生成される。
【００５７】
「閾値超え」信号がアクティブではない間に高速パイルアップロジック１０４又は低速パイルアップロジック１０６から生成されるエッジ検出信号とパイルアップ検出信号とは、誤ったトリガとして無視される。これによって、ピーク検出フィルタ１０７においてエネルギー閾値未満に平均除去される短いノイズのスパイクに起因した誤ったトリガをカウントすることが防止されて、それら２つのパイルアップロジックブロックが、そうでない場合に必要な検出閾値よりも低い検出閾値を有することが可能となる。
【００５８】
ピーク検出フィルタ１０７の出力のパルス幅とパルス対称性も、Ｍｏｔｔの米国特許第５,３４９,１９３号で開示されているようにテストされて、Ｘ線の一つ又は両方が高速パイルアップロジック１０４若しくは低速パイルアップロジック１０６をトリガするにはエネルギーが低すぎる場合にパイルアップが検出される。
【００５９】
更に対称性のようなテストが実行されて、高速パイルアップロジック１０４と低速パイルアップロジック１０６で検出されたエッジが、ピーク検出フィルタ１０７の閾値超え時間の中央にあるか否かが確認される。本明細書の他の場所で説明されているソフトウエアベースの実装例では、これは、高速パイルアップロジック１０４と低速パイルアップロジック１０６により報告されるエッジ位置の時間的な絶対差（absolute difference）と、単一のＸ線が閾値超え時間の中央にあると予想される、ピーク検出フィルタ１０７の最大応答とを得ることでなされる。図１に示すＦＰＧＡロジック実装例では、図５Ｂに示すタイマーを使用するほうが、タイムスタンプの絶対差を使用するより便利である。これらのタイマーは、イベント経過タイマー（Event Lag timer）と呼ばれる。あるイベント経過タイマーは、「閾値超え」信号の始めに開始する。高速パイルアップロジック１０４又は低速パイルアップロジック１０６の何れかからエッジ信号を受け取ると、タイマーは、ピーク検出フィルタ１０７の既知の立ち上がり時間及びギャップ時間に、単一のイベントについて検出器の予想される最長の立ち上がり時間の１／２を足して、ノイズ及び時間量子化誤差による変動のわずかな許容量を足して計算した制限値に対してチェックされる。タイマーがこの制限値を超える場合、低エネルギーＸ線のパイルアップが起こったと仮定される。
【００６０】
第２のイベント経過タイマーは、高速パイルアップロジック１０４又は低速パイルアップロジック１０６から任意のエッジを受け取ったときに開始され、「閾値超え」信号が低下する場合に同じ制限値に対して検証される。２つのタイマーは、図５Ｂにて、「イベント経過１」及び「イベント経過２」として表記されている。当該分野で通常の知識を有する者は、このタイマー対が、ピーク検出器フィルタ１０７の閾値超え時間の中央の範囲に、エッジ信号を束縛することは明らかであろう。これは、ピーク検出フィルタ１０７の最大応答が、通常、閾値超え時間中央付近にあるとの仮定に基づいたソフトウエアタイムスタンプ法と機能的に同一である。
【００６１】
いかなるフィルタリング機構によるエッジ検出でも、ある値を超えるＸ線が全て検出され、それ以下のＸ線は全て検出されないという明確なカットオフはない。その代わりに、 P. J. Statham, Microchim. Acta 155, 289-294 (2006)で説明されているように、エッジ付近のランダムノイズ変動によって、検出効率は、あるエネルギーより上の１００％から、ある低エネルギー以下のゼロへと滑らかに落ちる。その刊行物の図２は、検出効率曲線の形を図示しているが、その図は、Ｓｉ（Ｌｉ）検出器を参照しており、その定数とエネルギー領域はＳＤＤと著しく異なるだろう。低速パイルアップロジック１０６が５０％の確率で２つのＸ線を検出するエネルギーにて、その２つのＸ線のパイルアップがあると仮定する。時間の半分では、それらＸ線の一つのみが検出されるだろう。
【００６２】
図５Ａは、２つの異なる低エネルギーＸ線に対する、ピーク検出フィルタ１０７からの理想化した台形応答を示している。第３のラインは検出閾値エネルギーを示す。現実の適用で特定されるエネルギーは、フィルタ幅及び使用するＳＤＤ／プリアンプに応じて異なり得るが、示された値は、現在のＳＤＤに妥当である。
【００６３】
上側の一点鎖線、４８０ｅＶは、それを超えると、低速パイルアップロジック１０６が１００％近い効率であるようなエネルギーを示す。中央の一点鎖線、２８０ｅＶは、炭素Ｘ線エネルギー近辺である。下側の一点鎖線、１６０ｅＶは、検出閾値の一般的設定であってよく、元素ホウ素（１８３ｅＶ）を検出するのに十分低いエネルギーである。
【００６４】
「Ｇ＋Ｒ＋Ｎ」が付された中央の時間は、ピーク検出フィルタ１０７のギャップ時間Ｇと、検出器から予想される最長立ち上がり時間Ｒと、ノイズ及び時間量子化誤差の安全係数Ｎとに関する許容量である。これは、フィルタ出力に平らな領域を生成する。出力の立ち上がり部分と立ち下がり部分は、ピーク検出フィルタ１０７の先頭と後尾の積分時間である。
【００６５】
このケースの「高エネルギー」は、２万ｅＶから３万ｅＶ（２０ｋｅＶから３０ｋｅＶ）までを意味し、検出閾値より１００倍以上も高いエネルギーであってよい。検出閾値が、１ｋｅＶ以下のＸ線で次第に重要な閾値になるため、４８０ｅＶと２８０ｅＶのＸ線を夫々示すパルス幅ＢとＣは、図示したようにより短い。
【００６６】
図５Ｂは、４００ｅＶのエネルギーの２つのＸ線からのピーク検出フィルタ１０７の出力の理想的な表現を示す。４００ｅＶは、低速パイルアップロジック１０６を確実にトリガするのには低すぎ、このエネルギーでは、５０％の検出効率を仮定している。×印で輪郭を示す台形波は、４００ｅＶの中央にある単一のＸ線への応答を示している。点線の台形波は、Ｘ線が時間Ｘ１へと左に移動したこと、線線の台形波は、Ｘ線が時間Ｘ２へと右に移動したことを示す。全体の応答は、上側の実線であり、常に点線と鎖線の和である。括弧で囲んだ数字は、出力応答の傾きが変化した時間を示す。パイルアップＸ線は、エネルギーが等しいと仮定されるので、出力の形は対称形で、その最大値は（３）と（４）の間の狭い平らな領域のいずれかに位置する。小さいランダムノイズ変動によって、実際の最大値は、この領域のどこにでも成り得るので、米国特許第５,３４９,１９３号で説明された対称性チェックはパイルアップを検出しないことがある。
【００６７】
ピーク検出フィルタ１０７のパルスは、同じように全パルス幅チェックを通過するかも知れない。図５Ａに示すように、単一の低エネルギーＸ線のパルス幅は、高エネルギーでの最大幅と比較して低減され、低エネルギーパイルアップイベントが低減された幅未満で分離される場合、図５Ｂに示すように（ｐ−ｐ間の領域はＡ未満）、パルス幅テストには効果がない。しかしながら、図５Ｂに示すように、前述したタイマーの一方では、与えられたＸ線について閾値を超える平均パルス立ち上がり時間に全パルス分解時間が加えられる。従って、Ｘ線の一方のみが少なくとも一つのパイルアップロジックブロックをトリガする場合、これらのタイマーをテストすることでパイルアップ検出の可能性は改善する。
【００６８】
固定のイベント経過の限界は、ピーク検出フィルタ１０７の積分時間に前記の「Ｇ＋Ｒ＋Ｎ」時間を加えたものより低くはならず、また、単一の高エネルギーＸ線はパイルアップとして誤って排除され得る。その限界が低くなるほど、検出可能な時間分解能も低くなるので、できる限り速い立ち上がり時間Ｒとできる限り低いノイズＮとを有するＳＤＤを選択することは有利となる。
【００６９】
図１に戻ると、傾き補正較正ロジック１２０は、ベースライン傾き測定ロジック１１８からの現在の傾きの値を、エネルギー測定ＦＩＲフィルタ１０８、１０９及び１１０の全ての出力を、場合によっては、パルス検証ロジック１１７からの抑止信号を受け取り、それらは全て、適切に時間調整されている。好ましい実施例では、これらのイベントはＡＤＣのサンプリングレートよりかなり遅いピーク検出フィルタ１０７のパルス速度で発生することから、これらの機能は、Ｔｅｘａｓ Ｉｎｓｔｒｕｍｅｎｔｓ社製ＴＭＳ３２０Ｃ６４１４などのデジタル信号処理チップのソフトウエアで実装される。
【００７０】
抑止信号がない場合、このロジックは、この分野で公知の方法で、ＡＤＣ１０２の信号のベースラインの傾きによる誤差を差し引き、ＦＩＲフィルタ１０８、１０９、及び１１０の一つ以上の生出力を重み付けして、ステップエッジを作り出したＸ線について較正されたエネルギー推定値を生成する。
【００７１】
これらの測定されたエネルギーは、同じくこの分野で公知の方法で、マルチチャンネルアナライザ（ＭＣＡ）１２１のメモリに保存される。ＭＣＡ１２１に集積されたスペクトルは、分析のためにホストＰＣ１２２に転送される。
【００７２】
図１にて「シングルステップ」及び「ラン」と付された高速パイルアップロジック１０４及び低速パイルアップロジック１０６の部分について、本明細書で詳細を説明する。「シングルステップ」と称されるのは、それが、ＡＤＣ１０２からのサンプル間の連続差に作用するからであり、連続差は、場合によっては、検出器マッチングアベレージャ１０３とフィルタアベレージャ１０５で前記のように平均化されている。「ラン」と称されるのは、ＡＤＣ１０２から送られるサンプルの正向きのラン（run）と負向きの（negative-going）のランとを追跡する（track）からであり、これらのランは、場合によっては、検出器マッチングアベレージャ１０３とフィルタアベレージャ１０５で前記のように平均化されている。図３乃至３Ｄは、ある実施例に基づいた、高速パイルアップロジック１０４と低速パイルアップロジック１０６の「シングルステップ」及び「ラン」の両方の部分を実施する機能のプログラムソースコードのリストであり、本明細書の他の場所で説明されているように、それらシングルステップ法及びラン法のためのＦＰＧＡ実施例の仕様として機能した。図４Ａ及び４Ｂは、シングルステップ法及びラン法のＦＰＧＡ実施例を設計するために使用されたプログラムロジックから抽出した状態図である。図６Ａ、６Ｂ及び６Ｃは、立ち上がりと極値について幾つかの起こり得るパターンの概要を示し、ある実施例で本発明がどのようにこれらを取り扱うかを示している。連続する４つの極値には、図６Ａ乃至６Ｃを通じて、「Ａ」、「Ｂ」、「Ｃ」及び「Ｄ」が夫々付されている。極小値「Ｂ」から極大値「Ｃ」に至る中央の立ち上がりランは、トリガレベルと比較され、当該トリガレベルは、本明細書で説明するＰｙｔｈｏｎコードでは、変数「bigtrig」である。好ましい実施例に採用した著しい改善は、立ち上がりに続く極小値「Ｄ」とその前の極大値「Ａ」との間の更なるチェックである。図７Ａ及び７Ｂは、好ましい実施例とと同じＡＤＣを使用するＳＤＤから上述したように採取したリアルデータにおける２つのパルスのプロットを示す。パルスの一方は、２つのＸ線のパイルアップであり、他方は、同じような立ち上がり時間を有する単一のイベントである。これらの図は、以降に詳細に説明される。
【００７３】
以下の詳解を通じて、「ＡＤＣサンプル」に言及する。これは、詳解されるロジックに示される連続的なデータサンプルを意味すると理解すべきであり、それらの各々は、検出器マッチングアベレージャ１０３とフィルタアベレージャ１０５の設定に基づいた、ＡＤＣ１０２からの複数のオリジナルサンプルの和又は平均であってよい。
【００７４】
特定の定数が、図３Ａ乃至３Ｄのコード（本明細書で説明されるＰｙｔｈｏｎコード）と図４の状態図に表れるが、これらは、ノイズの平均化又はベースラインの傾き測定のためのＦＩＦＯ長、平均化データおよび非平均化データの閾値比率などを設定する。ＦＰＧＡの実施例（図１）では、これらの定数は、プログラム可能なレジスタ値である。当該分野で通常の知識を有する者は、本発明の主要な特質から逸脱することなく、使用された特定の値が特定の検出器や検出器の種類に適合するに変化してよいことを認識するだろう。
【００７５】
全般的に、ソフトウエアは、３つのロジックで報告されたエッジ位置から時間の差を得ることで動作する。３つのロジックブロックは、高速パイルアップロジック１０４、低速パイルアップロジック１０６、Ｐｙｔｈｏｎコードで「炭素フィルタ（carbon filter）」として言及したピーク検出フィルタ１０７である。ＦＰＧＡの実施例では、高速パイルアップロジック１０４又は低速パイルアップロジック１０で報告されたエッジが、ピーク検出フィルタ１０７からのパルス内に収まる否かを判断するためにそのＭａｘ信号のタイムスタンプの演算を実行するよりも、ピーク検出フィルタ１０７の閾値超えロジック出力を使用する方が便利であったが、当該分野で通常の知識を有する者は、これらの方法が機能的に同一であることを認識するだろう。
【００７６】
Ｐｙｔｈｏｎ言語構文は行番号を含んでいない。しかしながら、図３Ａ乃至３Ｄの（コメントではない）実行可能なラインは、コードリストの以下の説明に合うように、便宜上に最後に加えられた行番号のコメントを有する。行番号は３０１で始まり４１７で終わる。
【００７７】
コードのバージョンは、２００７年８月３日に出願された米国仮特許出願第６０／９６３,３２０号、発明の名称「IMPROVED EDS PILEUP REJECTION FOR LOW ENERGIES AT HIGH COUNT RATES」に与えられている。図３Ａ乃至３Ｄのコードでは、この仮出願のコードと比較して、幾つかのコメントラインが削除又は書き換えられている。更に、デバッグ出力のラインの幾つかか、もはや使用されないコード、又は実行されない「デッドコード」は、ソースリストを短くして明確さを向上するために、仮出願のコードに含まれるコードバージョンから削除した。図３Ａ乃至３Ｄに示した本発明の機能に重要な実行可能コードは、仮出願にあるものと同じである。
【００７８】
「変曲点（inflection points）」に言及しているコメントは、数学的に正確な使用に合わせるために、「極大値／極小値（local maxima/minima）」または「極値（local extrema）」に変更した。実際の動作は実行可能コードから明らかである。本明細書及び図３Ａ乃至３Ｄのコードで使用しているこれらの言葉は、連続するＡＤＣサンプルの値が増加を停止して減少を開始する場所のサンプルと、又は、減少を停止し増加を開始する場所のサンプルとなろう。
【００７９】
図３Ａ乃至３Ｄと図４に示した高速パイルアップロジック１０４のためのロジックブロック全体は、低速パイルアップロジック１０６用に複製されるが、フィルタアベレージャ１０５のため有効ＡＤＣサンプリングレートは低くなることに留意すべきである。
【００８０】
図３Ａでは、第３０１行は、ある特定の実施例に従って本発明を実装する機能を定義する。独立変数「trace」は、ＡＤＣ１０２から入るデータであり、上述したように、そのオリジナルデータレートより合算されていてよい。「Tracestart」は、もはや使用されない。「Calib」は、エネルギー較正係数であり、５８９５ｅＶのマンガンのＫ−αＸ線におけるＡＤＣの最下位ビット（ＬＳＢｓ）の数である。「Debug」は、各種診断出力を作動するフラグである。「Cedges」は、ピーク検出フィルタ１０７により検出されるＸ線のエッジ（タイムスタンプ）を保持するアレイであり、ピーク検出フィルタ１０７がソフトウエアを通じて「炭素フィルタ（carbon filter）」と呼ばれるので、これがアレイの名称になっている。
【００８１】
第３０２行は、グローバルパラメータを含んでいる。閾値乗数「tfactor」のみが使用される。第３０２行は、後述する重要なトリガ値「trig」と「bigtrig」について、（ＦＰＧＡ実施例（図１）のレジスタにロードされる）外部から固定される値の設定を可能にする。
【００８２】
第３０４行乃至３２８行は、幾つかの変数とアレイを初期化する。これらの意味は、使用するコードのラインを説明する際に必要に応じて述べる。特に、アレイ「fastpileups」は、本発明の実施例で検出されるパイルアップのエッジ位置を含む。アレイ「fastpileups」に入力を書き込むことは、図４の「パイルアップ」状態４０５に入るのと同じであって、ＦＰＧＡ実施例（図１）の高速パイルアップロジック１０４の「Ｐ」信号を生成する。アレイ「edges」は、ＦＰＧＡ実施例（図１）の高速パイルアップロジック１０４の「Ｅ」信号に等しいエッジ（イベント）位置を格納する。本明細書で説明するもう一つの実施例では、パイルアップ信号は直接生成されない。その代わりに、その実施例は、近傍から分離できる各エッジについて「Ｅ」信号を生成する。上述したように、ピーク検出フィルタ１０７の「閾値超え」パルスの間に２つ以上のこのような「Ｅ」信号がパルス検証ロジック１１７にで受け取られると、パイルアップが認識される。
【００８３】
変数「trig」は、ハードウエアフラグ「Hflag」が設定されているか否かに応じて、第３３３行又は第３３６行で設定され、単一のＡＤＣサンプルの差によるエッジ検出のためのトリガ値である。第３３３行では、それは、負向きの単一のＡＤＣサンプルの差の最後１６個の平均に、グローバルパラメータとして設定した閾値乗数「tfactor」を掛けたものに設定されている。ＦＰＧＡ実施例では、「trig」は、第３３６行にて、レジスタ値として直接設定される。変数「bigtrig」（第３３４行、又は、ＦＰＧＡ実施例（図１）にて「trig」から独立したレジスタ値として第３３７行）は、変数「posrun」に保持している、ＡＤＣサンプル間の正の差の連続するランの全積分値のためのトリガ値である。その名が意味するように、「bigtrig」は通常「trig」より大きい。
【００８４】
第３２８行は、残っている全てのサンプルを処理する主ループを開始する。２つのパラレルなインデックス変数「ｉ」と「ｊ」は、第３０８乃至３０９行で初期化されたように１だけ区別されて、ＡＤＣサンプルの現在の対を選択する。ループは、これらのアレイインデックスをインクリメントする第４１５及び４１６行で終了する。
【００８５】
状態変数「diff」は、第３３１行で設定されて、図４のほとんどの状態遷移で参照され、（以前の平均化で定義された時間スケールにおける）２つの連続ＡＤＣサンプル間の単一サンプル差であって、プリアンプ信号（即ち、図１のＦＰＧＡ実施例のプリアンプ１０１による信号出力の瞬間の傾きの利用可能な最良のデジタル推定値を表す）。「diff」の前の値は、第３３０行の変数「lastdiff」に保持し、傾きの二次導関数（変化率）をチェックする。Ｘ線がもたらしたＳ字パターンの前半を通して、信号が立ち上がる間（図４Ａの「ゴーイングアップ（ＧＯＩＮＧ ＵＰ）」状態４０４）、傾きの二次関数（変化率）は、正（diff＞lastdiff）であると予想され、その後、Ｘ線がもたらしたＳ字パターンの後半で安定又は立ち下がる（図４Ａの「ゴーイングダウン（ＧＯＩＮＧ ＤＯＷＮ）」状態４０７）。この対の後のＡＤＣサンプルの最新の値は、「ｉ」で指標されて、第３２９行の変数「lastval」に保存される。この値は、パルスを検証して、傾きがその符号を変える点を記録するのに使用され、それは定義上、極大値又は極小値である。
【００８６】
図３Ａ乃至３Ｄのループは、図４の「アイドル（ＩＤＯＬ）」状態４０２で開始する。第３３８乃至３５９行及び第３８６乃至３８９行は、本明細書で説明する実施例の状態遷移を管理し、連続した増加するラン又は減少するランの間で切り替えを行い、以下に説明するように、エッジの最終判断をする。
【００８７】
図４Ａの状態図のどこでシステムが動作していようとも、信号は、図４Ｂの「ＰＯＳ」状態４０８と「ＮＥＧ」状態４０９を行き来しなければならず（不変の値を「ＰＯＳ」状態４０８に一括する（lumping））、この２つの状態の間の遷移は、「ＰＯＳ」状態４０８から「ＮＥＧ」状態４０９への遷移は極大値で、その反対の遷移は極小値で起こる必要があることは直ちに明らかであろう。これらの遷移点では、幾つかの状態変数が、以降使用するために保持される必要があり、その中には、現在の極大値「neginf」と最後の極大値「lastneginf」におけるＡＤＣサンプルの値がある。
【００８８】
第３３８乃至３４０行は、「ＣＬＲ ＰＯＳ」状態４１０に対応しており、負のランの開始において正のランの高さを消去する。図３Ａ乃至３Ｄに示すコードのバージョンでは、「ＣＬＲ  ＰＯＳ」状態４１０は、「ＰＯＳ」状態４０８の繰り返し毎に通過される。これは必要ではないが、問題もない。重要なのは、「ＮＥＧ」状態４０９から「ＰＯＳ」状態４０８への遷移であり、これは、「posrun」がゼロか否かをテストして、テストする処理が極小値にあって新しい正のランの開始にあるか否かを、つまり、「xraydone」が設定される場合に「有効エッジ（ＶＡＬＩＤ  ＥＤＧＥ）」状態４１２に入るべきか否かを判断する。Ｐｙｔｈｏｎ構文では、数値の変数について、ゼロの値が偽をテストし、あらゆる非ゼロの値が真をテストすることに注意のこと。
【００８９】
第３４１乃至３４３行は、「ＣＬＲ ＮＥＧ」状態４１１に対応する機能を実行して、負のラン「negrun」の高さを消去する。「negrun」変数が消去された状態は、「ＮＥＧ」状態４０９から「ＰＯＳ」状態４０８への遷移にフラグをたてるために使用され、極大値を特定する。それ以前の２つの極大値のＡＤＣサンプル値は、変数「neginf」及び「lastneginf」に保存される。
【００９０】
第３４４行は、処理が「ＰＯＳ」状態４０８又は「ＮＥＧ」状態４０９にあるかを判断する状態テストである。好ましい実施例では、比較限界は、僅かにゼロ未満である。この目的は、立ち上がりのランにやや有利になるようテストにバイアスをかけることである。ある程度のランダムノイズは、各ＡＤＣサンプルに存在しており、幾つかのサンプル間の差を、低エネルギーＸ線による立ち上がりの間に負にさせ得る。前記のように  変数「trig」は、ランダムノイズで予想されるべきサンプル間の差の大きさの上限を表す。立ち上がりが終了する前に、負向きの差は、「trig」の幾らかの小さいフラクションより大きいことが要求されるので、厳密に単調な立ち上がりが求められる場合に起こり得るエネルギーよりも低いエネルギーのＸ線の検出を可能にする。また、立ち上がりを終了する負の差について最小の大きさを要求することで、負向きのランダムノイズ変動によって、平均立ち上がり時間よりも遅い有効エッジが中央で壊れる場合に、パイルアップを誤って特定する危険が小さくなる。「bigtrig」で表されるエネルギー検出閾値は、十分に大きくされて、有効なＸ線がパイルアップとして誤って排除される数が著しくなることを避ける必要がある。経験的には、第３３４行と第３４４行で使用されている５対４のbigtrig／trigの比率と状態切換え閾値（−trig/8）とは、著しい誤った排除を起こさずに低検出閾値を達成するために、組み合わされて良く動作することが知られているが、本発明の精神から逸脱することなく、その他の値が使用されてよい。
【００９１】
第３４５行は、「ＮＥＧ」状態４０９から「ＰＯＳ」状態４０８への遷移をテストする。この遷移では、フラグ「xraydone」が「ゴーイングダウン」状態４０７から又は直接に「ゴーイングアップ」状態４０４（図４Ａ）に設定されている場合、「有効エッジ」状態４１２が入力され、これは「有効パルス（ＶＡＬＩＤ ＰＵＬＳＥ）」状態４０６と同一である。第３４６行は、現在のインデックス（タイムスタンプ）を保存し、これは、終了時間で平均化されて、最大「diff」値が信頼性のある位置ではない弱いエッジの最終タイムスタンプを概算する。フラグ「xraydone」が設定されると、第３４８行はこれをクリアする。第３４９行は、１０サンプルの抑止時間を設定し、該抑止時間の間、上述したように、「diff」の負の値は、ノイズトリガ「trig」の動的演算のためにノイズ概算値へと平均化されない。これによって、ノイズ概算値におけるエッジからのオーバーシュートの負向きの回復周期をカウントすることが回避される。
【００９２】
第３５０行は、簡単なラン−高さテストを用いて、誤ったトリガを導く多くのパターンを排除することにより、本実施例が従来技術の方法を凌ぐことを可能にするテストを実行する。図６Ａ乃至６Ｃは、３つの波形の概要を示しており、（極小値Ｂから極大値Ｃまで）テストされる立ち上がりがおよそ同じである。簡単化のために、波形の立ち上がり部分と立ち下がり部分は、直線部分として描いたが、上述したように、立ち上がり部分は、小さいブリップ（blips）を有してもよく、立ち上がり部分と立ち下がり部分の両方は、一般的に、ノイズ変動により直線にはならないだろう。
【００９３】
第３５０行では、変数「lastval」は、Ｄ点、現在の極小値におけるＡＤＣサンプルを有する。変数「lastneginf」は、Ａ点、つまり、テスト中の立ち上がりの前にある極大値におけるＡＤＣサンプル値を含む。立ち上がりそれ自体は、閾値「bigtrig」を上回るように既に決定されている。次に、「lastval」（図６全てに描かれたＤ点）から「lastneginf」（図６全てに描かれたＡ点）の差がチェックされる。その差がノイズトリガレベル「trig」の半分よりも大きい場合、エッジが有効と認められる。係数１／２が、演算の便宜上選択されたが、本発明の範囲から逸脱することなく変化してよい。しかしながら、ノイズトリガレベルの顕著な割合だけノイズ領域がシフトした証拠があることは望ましい。また、適度に大きい最小値がＤ−Ａにあることは、上下するジグザグの一連のセグメントとして現れる弱い、即ち遅いエッジが、別個のエッジとして誤って検出されて、それによって、パイルアップとして誤って排除されることを防ぐ。このチェックは、Ｃ−Ｂの検出閾値「bigtrig」が、シングルステップトリガ「trig」より僅かに大きいことを可能にする。
【００９４】
図６Ａは、Ｃ−Ｂのエッジが、異常に大きい負向きのノイズ偏位からの回復であるケースを示す。エッジの前後のノイズ領域の平均は同一である。Ｄ−Ａの差は実際負であるので、この立ち上がりは排除されるだろう。
【００９５】
図６Ｃは、正向きのスパイクを示し、同じように、その前後で平均ノイズ領域は変化しない。同じように、Ｄ−Ａのテストは不合格であり、エッジは無視される。
【００９６】
図６Ｂは、成功するエッジ検出を示している。テストされているエッジの後のノイズ領域は、エッジの前のピーク間の領域から著しくシフトしており、Ｄ−Ａの差は、シングルステップノイズトリガレベル「trig」の１／２の直ぐ上なので、エッジ検出は有効と認められる。
【００９７】
当該分野で通常の知識を有している者には、テストされているエッジの前後のより多くの極小値と極大値を同様な方法で使用して、ピーク間のノイズ領域が、テストされているエッジにて実際にシフトしたことを確認できることは明らかであろう。また、本発明の方法が、固定された如何なる時間周期にも依存せず、それ故に、ＳＤＤの場合のように立ち上がり時間が大幅に変化するエッジにも動的に応答することは明らかであろう。
【００９８】
第３５１行は、（図１の高速パイルアップロジック１０４または低速パイルアップロジック１０６から「Ｅ」信号を生成する）エッジのタイムスタンプを保存する。第３５２行は、正のランの累積高さを保持する。第３５３行は、図４Ｂの「ＣＬＲ  ＮＥＧ」状態４１１に入るフラグ「clearneg」を設定する。この行はまた、「if not posrun」ロジックブロックの中にあって、遷移ごとに一回しか実行されないこともありえる。
【００９９】
第３５４行は、負のランを取り扱うロジックの開始である。負のラン高さは、第３５８行により保持されるが、現在は使用されない。Ｄ−Ａの差のチェックが、有効エッジの検出に適切であることが分かっている。
【０１００】
第３５５乃至３５７行は、極大値の発生を検出して、現在（Ｃ点）とその前（Ａ点）の最大値を保持する。第３５９行は、「ＣＬＲ  ＰＯＳ」状態４１０へ入るのを強制するフラグ「clearpos」を設定するが、この機能を「if not negrun」ブロック中での実行することと同じであろう。
【０１０１】
図４Ａに示した状態は、第３６０乃至４１７行で処理される。Ｐｙｔｈｏｎプログラム言語における「elif」構造は相互排他的であり、故に、条件が満足される第３６０行で開始する「"if...elif...elif"」テストの鎖の最初が実行されることに留意すべきである。従って、状態は、図４での時間的な進捗と比較して、図３Ａ乃至３Ｄのコードでは逆順で示されている。
【０１０２】
第３６０乃至３６９行は、システムが図４の「ゴーイングダウン」状態４０７にあるときの処理を示す。これは、主ループに戻る前の最後のアクティブ状態である。それは、起こり得る２つの終了パス、つまり、継続する立ち上がり（「パイルアップ」状態４０５）の間にパイルアップを直接検出するか、または「有効パルス？」状態４０６で後のパルスの有効性チェックに行くことがある。
【０１０３】
「ゴーイングダウン」状態４０７では、第３６１行は、現在のサンプル間の差がノイズトリガレベル「trig」以下であるか否かをテストする。「trig」以下である場合、プリアンプ信号の変化率は、現在ノイズ領域内であり、「ゴーイングダウン」状態４０７は第３６２乃至３６３行で終了し、「xraydone」フラグが設定され、結果として、図４Ｂの「有効エッジ？」状態４１２でもある図４Ａの「有効パルス？」状態４０６に入る。
【０１０４】
第３６４行は、直接パイルアップが検出されるか否かを判断する重要なチェックを行う。図３Ａ乃至３Ｄの実施例では、重要な特長は、現在の差「diff」は、それ以前の差「lastdiff」を、ノイズトリガレベル「trig」よりも大きく超える必要があるということである。テストが「trig」で条件とされていないならば、以下のとおり有効Ｘ線をパイルアップとして誤って特定する可能性があるだろう。ＳＤＤの立ち上がり時間が幅広く変化することに着目して、３つの連続差が立ち上がりと似たような傾きの中心付近にあるような比較的遅い立ち上がり時間を考える。ノイズは、各サンプル値に小さなランダム変位を加えるので、中央の差が、前後の差と比較して僅かに低くなって、連続差がノイズレベルを超える必要がない場合は、誤ったパイルアップを導く可能性があるだろう。
【０１０５】
図７Ａと７Ｂは、ＳＤＤからの実際の波形の２つのプロット２つを示す。横軸のスケールは単位あたり１０ナノ秒（１００ＭｈｚＡＤＣのサンプリング時間）である。数値は、実時間の２.６２ミリ秒の２５６ｋサンプルのファイル内のインデックス（タイムスタンプ）である。縦軸は、ＡＤＣの最下位ビットであって、ＡＤＣユニットとして「ａｄｕ」が付されている。両方のプロットについて、縦軸のスケールは、１区分が１００ａｄｕである。
【０１０６】
図７Ａは、ＳＤＤのドリフトパスが平均より長い単一Ｘ線からの平滑な、しかし比較的遅い立ち上がりを示している。四角で囲んだ領域は、７サンプル、即ち７０ナノ秒を占める。また、四角で囲んだ領域のすぐ前の約３０ａｄｕのピーク間ノイズ変位に注目のこと。時間７４４４０のデータポイントで上方向に同様な３０ａｄｕの変位があったと仮定すると、これは、サンプル７４４４１と７４４４０の間の差を、サンプル７４４４０と７４４３９の差、又はサンプル７４４４２と７４４４１の差より小さくして、完全にノイズに起因するがパイルアップのパターンに合致するかも知れない。
【０１０７】
図７Ｂは、全立ち上がり時間と振幅が図７Ａの有効パルスと全く同一であるにも拘わらず、パイルアップとして検出に成功したパルスを示しており、個々のＸ線の立ち上がり時間がかなり短かくなければならないことを意味している。中央の四角で囲まれた領域の傾きは、左下の四角で囲まれた領域の傾きより著しく低く、図４の「ゴーイングアップ」状態４０４から「ゴーイングダウン」状態４０７に移行する処理を引き起こす。そして、７３ａｄｕ／サンプルから１４２ａｄｕ／サンプルへの右上の四角で囲まれた領域の傾きの増加、つまり、６９ａｄｕは、図７Ａに示す３０ａｄｕのサンプル間ノイズ変動の２倍を超えており、ノイズに起因している可能性はほとんどない。従来の技術では、これらの２つのパルスの一方をパイルアップされたとして、他方を有効であるとして区別することはできないであろう。特に、図７Ｂのパイルアップされた２つのＸ線の中央（最大傾きの点）は、５０ナノ秒だけ分かれており、図７Ａの全立ち上がり時間よりも小さいことに留意すべきである。
【０１０８】
図３Ｃの第３６４乃至３６９行は、パイルアップのタイムスタンプの保存、又は、高速パイルアップロジック１０４若しくは低速パイルアップロジック１０６からの「Ｐ」信号の生成、及び、状態変数を「ゴーイングアップ」状態４０４に戻す管理維持を行う。
【０１０９】
図３Ｃの第３７０乃至３８１行は、「ゴーイングアップ」状態４０４の処理を行う。変数「maxdiff」は、現在の立ち上がりのＳ字プリアンプエッジの間、現在の最大の単一サンプル差（瞬間の傾き）を保持する。第３７１乃至３７３行は、この最大値を維持して、その最大値を示すそのエッジのタイムスタンプを保持する
【０１１０】
「ゴーイングアップ」状態４０４からの起こり得る２つの終了パスがあるが、そのうちの一つ（後者は後述する）のみが本発明に関係する。第３７４乃至３７６行は、現在の傾き（単一サンプル差）がノイズトリガレベルの１／２以下であると、「有効パルス？」状態４０６へ抜ける。シングルステップパイルアップのチェックは実行されない。「xraydone」フラグが設定され、上述したように、これは「ＮＥＧ」状態４０９から「ＰＯＳ」状態４０８への次の遷移を意味する。図６Ａ乃至６Ｃに関連して説明したＤ−Ａの有効性チェックが実行される。
【０１１１】
第３７７行から３７９行は、本発明を実施する一対のテストのもう一つの部分（と第２の終了パス）である。テストのこの部分は、「ゴーイングアップ」状態４０４から「ゴーイングダウン」状態４０７に状態が変化する時を判断する。このテストでは、立ち上がりの間に発生する最大値からのシングルステップの傾きの低下が、ノイズトリガ「trig」よりも大きい必要がある。第３７４行は、少なくとも「trig」の１.５倍の最大差がない限り、この終了パスには到達せず、さもなければ、最初の終了パス（上述）が実行されることを意味することに注意のこと。「ゴーイングダウン」状態４０７に到達し、従って本発明に基づいてパイルアップを検出する可能性がある唯一の道は、最初にその条件を満足することである。演算には便利であるが、正確な係数１.５は重要ではない。重要なのは、上述したように、比較的高いエネルギーのＸ線のみが、誤った肯定の危険を伴うことなく、これらのテストに適切な候補であるということである。低エネルギーＸ線は同じパターンを示すかもしれないが、真のパイルアップではない。図７Ａと７Ｂの波形が得られた試料は、Ｎｉ−Ａｌ合金である。図７Ａに示すＸ線は、恐らく７５００ｅＶ付近のニッケルのＫ−α線で、図７Ｂの２つのＸ線は、恐らくニッケルのＫ−α線と１５００ｅＶ付近のアルミニウムのＫ−α線である。
【０１１２】
第３７８及び３７９行は、「ゴーイングアップ」状態４０４から「ゴーイングダウン」状態４０７への状態変化を扱う。終了パス条件が満足されないか、現在の差が新しい最大値でない場合は、第３８０乃至３８１行は何もしない。
【０１１３】
第３８２行は、「アイドル」状態４０２から「ゴーイングアップ」状態４０４へのエントリをトリガするテストである。２つの条件が満たされる必要がある。まず、現在の差が、ノイズトリガレベル「trig」を超える必要がある。第２のテストは、一対の高い方のＡＤＣサンプルがその前の極大値を超えることを確かにする。これは必須ではないが、負向きのノイズスパイクからの回復において誤ったトリガを排除することで、性能を向上する。
【０１１４】
第３８３乃至３８５行は、「ゴーイングアップ」状態４０４を初期化して、最大の差を現在の差に設定する。このことは、「maxdiff」がその最初の使用後にノイズトリガレベル「trig」を決して下回らないことを意味するということに特に注意のこと。
【０１１５】
第３８６乃至３８９行は、「ゴーイングアップウイーク」状態４０３をトリガする。これは、シングルステップの差がノイズトリガ「trig」より大きくなる必要なしに正のランの累積高さが（この文書中に述べたように）「bigtrig」を超えるなら、「ゴーイングアップ」状態４０４に入る原因となる。本発明において重要な行は第３８９行であり、ノイズトリガ「trig」と等しい「maxdiff」をリセットする。これは、「trig」と等しい「maxdiff」で第３７１行のテストを満足することで、シングルステップの差が「trig」を超えることが示されない限り、「ゴーイングアップ」状態４０４が「ゴーイングダウン」状態４０７に入るのを防ぎ、故に、場合により本発明に基づくパイルアップ検出を可能にする。このように、本明細書で説明した連続ランの実施例とシングルステップトリガの実施例は、お互いに干渉すること防止されている。
【０１１６】
第３９０乃至４００行は、プリアンプ１０１でのリセットの発生を検出する。これは  負の単一サンプルの差が、トリガレベル「trig」の１０倍を超えるような、出力の急激な低下を起こす。第３９１乃至３９３行は、リセットの間、及びその後の特定期間の処理を抑止する。第３９４乃至４００行は、状態変数を再初期化する。
【０１１７】
第４０４乃至４１４行は、ＡＤＣデータの負の単一サンプルの差の１６入力移動和を保持し、Ｍｏｔｔの米国特許第５,３９３,９８２号で教示された方法に似た、ノイズをダイナミックに概算する手段として、リセット又は検出エッジ付近の特定の期間を排除する。特に、負の変機と正の変位は、リセットとＸ線からのエッジがない場合には、統計的に等しくならなければならないが、正の変位の平均は、検出されない非常に低いエネルギーのＸ線によって、上方に偏位することがある。
【０１１８】
第４１５及び４１６行は、プリアンプ１０１から得られた波形の全サンプルを通じて並列に進む。ＦＰＧＡ実施例では、ファイルセグメントの開始と終わりとで境界条件を取り扱う必要はない。これは、処理ループがリアルタイムで連続的に動作して、起動時にのみ初期化されるからである。
【０１１９】
図８は、ＳＤＤについて一般的なパルス対の分解時間とエネルギー検出閾値とを有するシステム全体の予想されるパイルアップ性能をまとめており、以下の特徴を有している。（i）約１０平方ミリメートルのアクティブ領域、（ii）「P.Lechner et al., "Silicon drift detectors for high resolution room temperature X-ray spectroscopy", Nucl. Instr. and Meth. 1996; A 377, pp. 346-351」で説明されたセンサのリソグラフィと一体となったプリアンプ１０１の最初の電界効果トランジスタ（ＦＥＴ）ステージ。引用された特定の数字は、普遍的ではなく、検出器の種類と構成により異なる。しかしながら、それらは、検出器の小さいサンプルで測定される実際の性能を適切に示している。
【０１２０】
上にある波形図は、プリアンプ１０１の波形の一部を理想化して表現しており、いくつかのパイルアップ状態を例示している。最も右側は、非常に低いエネルギーのＸ線のステップの拡大図である。矢印は、様々なステップの位置を示す。非常に大きなステップは、図７Ｂに図示したような一つのＸ線からのステップの立ち上がり時間範囲内の近接パイルアップ（close pile-up）であり、本発明の方法でのみ検出が可能である。
【０１２１】
下には、様々なパイルアップエッジ検出ブロックからの予想される検出器信号が並んでおり、パルス対分解時間とエネルギー閾値の予想範囲を伴っている。ピーク検出フィルタ１０７は、時間「Ｓ」にてスパイクを除く全エッジを検出し、スパイクは、ピーク検出フィルタ１０７の出力が閾値を越えないので、高速パイルアップロジック１０４で誤ってレポートされるが排除される。非常に低いエネルギーＸ線の最良の分解時間は、２００ｅＶの最小検出エネルギーについて、約３５０乃至４００ナノ秒であろう。１８５ｅＶのホウ素や１０９ｅＶのベリリウムなどについて、より低い検出閾値が必要な場合、積分時間はより長くされる必要があり、分解時間は大幅に増加するであろう。しかし、それは、他のロジックブロック全てが見逃す最も右側の非常に低いエネルギーのＸ線を検出する。
【０１２２】
高速パイルアップロジック１０４は、検出器の立ち上がり時間に応じて、５０から１００ナノ秒の最良の分解時間を有する。本明細書で説明したシングルステップ法は、約２.５ｋｅＶを超えるエネルギーで有効である一方で、本明細書で説明した連続ラン法は、６００乃至９００ｅＶ程度までに到達し得る。それは、時間「Ｌ」での低エネルギーＸ線を捉えない。
【０１２３】
低速パイルアップロジック１０６は、高速パイルアップロジック１０４と同一であるが、フィルタアベレージャ１０５で平均化されたデータのより低い有効率で動作し、１８００ｅＶの適度に低いエネルギーのＸ線をうまく検出するが、最高の分解時間は、おおよそ２倍の長さの８０乃至２００ナノ秒である。そのシングルステップ法は、２ｋｅＶの真下のＸ線を検出でき、その連続ラン法は、良い効率で５００ｅＶの酸素Ｘ線を検出することができる。
【０１２４】
全体として、これらの結果は、考慮されるエネルギー対に応じて、従来技術の方法を使用した既存のシステムにより示される分解時間よりも、およそ２倍から最高５倍優れている。
【０１２５】
本発明の好ましい実施例を説明及び図示したが、これらは本発明の典型例であって、限定として考えられるべきではないことを理解されるべきである。追加、削除、置換やその他の変更は、本発明の精神や目的から逸脱することなく行われてよい。従って、本発明は上述の説明によって制限されるものではなく、添付の特許請求の範囲によってのみ制限される。
【図１】
0005455904.tif 000002
【図２】
0005455904.tif 000003
【図３Ａ】
0005455904.tif 000004
【図３Ｂ】
0005455904.tif 000005
【図３Ｃ】
0005455904.tif 000006
【図３Ｄ】
0005455904.tif 000007
【図４Ａ】
0005455904.tif 000008
【図４Ｂ】
0005455904.tif 000009
【図５Ａ】
0005455904.tif 000010
【図５Ｂ】
0005455904.tif 000011
【図６】
0005455904.tif 000012
【図７Ａ】
0005455904.tif 000013
【図７Ｂ】
0005455904.tif 000014
【図８】
0005455904.tif 000015