(57)【要約】【課題】  波形メモリまたはシーケンサメモリのサイズを増大することなく、変更可能な信号波形を生成できるようにする。【解決手段】  シーケンスメモリ３０２とシーケンサ３０４と波形メモリ３０６とを有する任意波形信号を生成する改善型の任意波形発生器３００であって、シーケンスメモリ３０２と信号通信状態にあるＤＤＳモジュール３０８であって、シーケンスメモリ３０２から制御データを受信し、これに応答してＤＤＳ出力信号を生成するものであるＤＤＳモジュール３０８と、ＤＤＳモジュール３０８と波形メモリ３０６との両方と信号通信状態にある乗算モジュール３１０であって、波形メモリ３０６から信号波形データを受信し、前記受信した信号波形データを前記ＤＤＳ出力信号と乗算して前記任意波形信号を生成するものである乗算モジュール３１０とを含んでなり、波形メモリ３０６は、シーケンサ３０４からの信号波形アドレスの受信に応答し、前記信号波形データを生成するものである任意波形発生器３００を提供する。【選択図】  図３
2007086074.tif 000002
【特許請求の範囲】
【請求項１】
シーケンスメモリとシーケンサと波形メモリとを有する任意波形信号を生成する改善型の任意波形発生器であって、
前記シーケンスメモリと信号通信状態にあるダイレクト・デジタル・シンセシス（ＤＤＳ）モジュールであって、前記シーケンスメモリから制御データを受信し、これに応答してＤＤＳ出力信号を生成するものであるＤＤＳモジュールと、
前記ＤＤＳモジュールと波形メモリとの両方と信号通信状態にある乗算モジュールであって、前記波形メモリから信号波形データを受信し、前記受信した信号波形データを前記ＤＤＳ出力信号と乗算して前記任意波形信号を生成するものである乗算モジュールと
を含んでなり、
前記波形メモリは、前記シーケンサからの信号波形アドレスの受信に応答して前記信号波形データを生成するものである、任意波形発生器。
【請求項２】
前記シーケンスメモリは、前記波形メモリ内のアドレスに対するポインタを含むメモリ空間を含んでおり、
前記シーケンスメモリは、前記シーケンスメモリ内のパケットの特定の集合を指し示すシナリオテーブルを更に含み、該シナリオテーブル内のそれぞれのシナリオは、異なるタイプの信号波形を表すものである請求項１記載の任意波形発生器。
【請求項３】
前記シーケンスメモリと前記乗算モジュールとの両方と信号通信状態にある利得モジュールを更に含み、該利得モジュールは、増幅された任意の波形信号を生成するものである請求項１または２に記載の任意波形発生器。
【請求項４】
前記乗算モジュールは複素乗算モジュールである請求項１から３のいずれかに記載の任意波形発生器。
【請求項５】
前記シーケンスメモリと前記波形メモリとは、同一のメモリモジュール内に配置されているものである請求項１から４のいずれかに記載の任意波形発生器。
【請求項６】
前記シーケンサと前記ＤＤＳモジュールと前記乗算モジュールとは、単一の集積回路内に統合されており、
前記集積回路は、ＦＰＧＡとＤＳＰとＡＳＩＣからなるグループから選択されるものである請求項１から５のいずれかに記載の任意波形発生器。
【請求項７】
前記シーケンスメモリは、個別のＳＲＡＭとＤＲＡＭとＦＰＧＡとブロックＲＡＭからなる群から選択された集積回路であり、
前記波形メモリは、個別のＳＲＡＭとＤＲＡＭとＦＰＧＡとブロックＲＡＭからなる群から選択された集積回路である請求項１から４のいずれかに記載の任意波形発生器。
【請求項８】
シーケンスメモリとシーケンサと波形メモリとを有する任意波形発生器を利用して任意波形信号を生成する方法であって、
制御データ信号からダイレクト・デジタル・シンセシス（ＤＤＳ）出力信号を生成するステップと、
前記任意の波形信号を生成するために、前記ＤＤＳ出力信号を信号波形データと乗算するステップと
を含んでなる方法。
【請求項９】
前記任意の波形信号を増幅して増幅済みの任意波形信号を生成するステップをさらに含む請求項８記載の方法。
【請求項１０】
前記ＤＤＳ出力信号を前記波形データと乗算するステップは、前記ＤＤＳ出力信号を前記波形データと複素乗算することを含む請求項８または９に記載の方法。
【請求項１１】
シーケンスメモリとシーケンサと波形メモリと信号担持媒体とを有する任意の波形信号を生成する任意波形発生器であって、
前記信号担持媒体は、
シーケンスメモリからの制御データに応答してダイレクト・デジタル・シンセシス（ＤＤＳ）出力信号を生成するように構成されているロジックと、
前記ＤＤＳ出力信号を信号波形データと乗算して前記任意波形信号を生成するように構成されているロジックと
を含んでなる任意波形発生器。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、試験または計測システムに利用される任意波形発生器（Ａｒｂｉｔｒａｒｙ  Ｗａｖｅｆｏｒｍ  Ｇｅｎｅｒａｔｏｒ：以下、「ＡＷＧ」とよぶ）に関する。
【背景技術】
【０００２】
自動車用電子回路、航空電子回路、レーダー、周波数アジャイル（frequency agile）、衛星、通信システム、およびその他の類似のシステムを開発して試験する科学者および技術者は、しばしば、信号波形の生成または利用（或いはこれらの両方）を実行するコンポーネントを計測およびシミュレートする必要がある。これらの信号波形を生成するべく、試験または計測システム（或いはこれらの両方）は、通常、任意波形発生器（ＡＷＧ）と呼ばれる装置を利用している。図１に示されているように、ＡＷＧ１００を利用することにより、しばしば、外部から供給されるトリガ信号１０４に応答して、（ＡＷＧ１００からの「信号波形」とも呼ばれる）変化する出力信号１０２を生成する。一般に、ＡＷＧは、実質的に任意の波の形状を有する信号波形を再現可能であるため、関数生成器などの装置とは異なっている。一般に、任意の信号波形は、アナログ出力信号を供給するべくデジタル／アナログコンバータ（「ＤＡＣ」または「Ｄ／Ａ」）を通じて「再生」される時間に関連したデジタル値の集合として定義できる。
【０００３】
線形スロープを有する方程式によって定義される線形の信号波形とは異なり、任意の信号波形は、ポイントごとに指定されたユーザー定義による信号波形である。通常、ＡＷＧ１００は、広範なレンジの反復レートおよび広範なレンジの振幅において信号波形を再生可能とすることができる。また、ＡＷＧ１００は、様々な方法により信号波形を変調することができる。一般に、任意の信号波形は、信号波形を生成するハードウェアの制限内で任意の波形をとりうる。これらの制限は、水平分解能および垂直分解能またはクロック更新レートを含みうる。任意の信号波形は、ポイントごとに定義されているため、信号波形を定義する更新ポイントが多いほど、出力信号の分解能も向上する。
【０００４】
従って、ＡＷＧによれば、科学者および技術者は、任意でしばしば固有の（彼らのアプリケーションに固有の）信号波形を生成することができる。これらの任意の信号波形を利用することにより、被試験装置（Ｄｅｖｉｃｅ  Ｕｎｄｅｒ  Ｔｅｓｔ：以下、「ＤＵＴ」とよぶ）などのコンポーネントが研究室や製造フロアを離れた際に遭遇することになる任意の信号波形上に、グリッチやドリフトや雑音やその他の異常を含む「現実世界」の信号をシミュレートすることができる。この結果、ＡＷＧは、レーダーシミュレーションや、衛星通信や、周波数アジャイルシミュレーションや、トランスデューサシミュレーションや、ディスクドライブ試験や、シリアルデータ通信や、中間周波数（Ｉｎｔｅｒｍｅｄｉａｔｅ  Ｆｒｅｑｕｅｎｃｙ：以下、「ＩＦ」とよぶ）変調試験や、アンチロックブレーキングや、エンジン制御などの多数の産業に跨る広範な様々なアプリケーションにおいて利用されている。
【０００５】
但し、通常、既知のＡＷＧの波形メモリ内のサンプルポイントをプログラミングすることにより、任意の所望の信号波形出力を生成可能ではあるが、波形メモリのサイズにより、信号波形の長さが制限されている。一例として、１．２５ギガサンプル／秒（「ＧＳ／ｓ」）のサンプリングレートにおいて、１６メガサンプル（Ｍサンプル）のＡＷＧメモリは、１２．８ミリ秒（「ｍｓ」）の長さのアナログ信号波形を生成する。
【０００６】
波形メモリのサイズ制限を克服するための試みは、波形メモリからの生成済みの信号波形の再生をシーケンサを利用して制御するステップを含む。一般に、所望の信号波形がなんらかの反復構造を有する場合には、波形メモリから選択された信号波形セグメントをシーケンサを利用して反復的に再生することにより、波形メモリのメモリサイズを圧縮することができる。この例では、シーケンサは、波形メモリのそれぞれの信号波形セグメントの反復した数を示すデータを格納している別個のシーケンサメモリにアクセスできる。それぞれの信号波形セグメントは、数百（または、場合によっては、数百万）のサンプル長でありうるため、信号波形セグメントを複数回にわたって再生することにより、結果的に波形メモリサイズの要求が低減される。加えて、シーケンサは、シーケンサメモリのセクションを複数回にわたって反復するループパケットをサポートすることもできる。
【０００７】
図２には、既知のＡＷＧ２００の実施例が示されている。ＡＷＧ２００は、シーケンサ２０２と、シーケンスメモリ２０４と、波形メモリ２０６と、ＤＡＣ２０８および２１０とを含みうる。ＡＷＧ２００の動作の一例として、シーケンサ２０２は、波形メモリ２０６からの信号波形セグメントの再生を制御することができる。シーケンサ２０２は、シーケンサメモリ２０４を利用し、波形メモリ２０６から再生するそれぞれの信号波形セグメントの反復した数を判定することができる。この結果、信号波形セグメントがＤＡＣ２０８および２１０に伝達される。当業者であれば、波形メモリ２０６は、任意選択的に、複素値を有する複素波形メモリであり、それゆえに、第１ＤＡＣ２０８を利用して複素信号波形セグメントの同相（「Ｉ」）の値２１２を受信し、第２ＤＡＣ２１０が複素信号波形セグメントの直交（「Ｑ」）の値２１４を受信することを理解するであろう。この結果、ＤＡＣ２０８および２１０は、複素信号波形セグメントから、対応するアナログ信号波形２１６および２１８を生成する。
【０００８】
しかしながら、多くの状況において、信号波形セグメントの反復的なシーケンスは、非常に類似してはいるものの同一ではない。このような場合には、単純なシーケンサを利用することによって信号波形を圧縮することはできない。従って、一意の信号波形セグメントの数が合計波形メモリサイズを超過した場合には、新しい信号波形セグメントを追加することができないため、この方法に対する主要な制限も依然として波形メモリのサイズである。また、この方法では、周波数、位相シフト、または利得の変化などの信号波形に対するプログラム可能な変更もできない。
【発明の開示】
【発明が解決しようとする課題】
【０００９】
従って、波形メモリまたはシーケンサメモリのサイズ要件の増大を伴うことなく、変更可能な信号波形をＡＷＧが生成できるようにするシステムおよび方法に対するニーズが存在している。
【課題を解決するための手段】
【００１０】
任意の波形信号を生成する改良型の任意波形発生器（Ａｄａｖａｎｃｅｄ  Ａｒｂｉｔｒａｒｙ  Ｗａｖｅｆｏｒｍ  Ｇｅｎｅｒａｔｏｒ：以下、「ＡＡＷＧ」とよぶ）を開示する。ＡＡＷＧは、シーケンスメモリとシーケンサと波形メモリとを含んでいる。また、ＡＡＷＧは、シーケンサメモリと信号通信状態にあるダイレクト・デジタル・シンセシス（Ｄｉｒｅｃｔ  Ｄｉｇｉｔａｌ  Ｓｙｎｔｈｅｓｉｓ：以下、「ＤＤＳ」とよぶ）モジュールと、ＤＤＳモジュールおよび波形メモリの両方と信号通信状態にある乗算モジュールも含んでいる。ＤＤＳモジュールは、シーケンスメモリから制御データを受信可能であり、これに応答してＤＤＳ出力信号を生成する。乗算モジュールは、波形メモリから信号波形データを受信可能であり、受信した信号波形データをＤＤＳ出力信号と乗算して任意の波形信号を生成することができる。また、波形メモリは、シーケンサからの信号波形アドレスの受信に応答して信号波形データを生成することができる。
【００１１】
動作の一例においては、ＡＡＷＧは、シーケンスメモリからの位相、周波数開始および周波数停止データの受信に応答し、ＤＤＳモジュールにおいて、ＤＤＳ出力信号を生成することができる。そして、ＡＡＷＧは、乗算モジュールにより、ＤＤＳ出力信号を波形メモリからの信号波形データと乗算して任意の波形信号を生成することができる。この場合にも、波形メモリは、シーケンサからの波形アドレスの受信に応答して信号波形データを生成できる。
【００１２】
本発明のその他のシステム、方法、および特徴については、添付の図面および以下の詳細な説明を参照することにより、当業者に明らかとなろう。このようなすべての更なるシステム、方法、特徴、および利点は、本明細書に包含され、本発明の範囲内に属しており、添付の請求項によって保護されることを意図するものである。
【発明を実施するための最良の形態】
【００１３】
本発明は、添付の図面を参照することにより、その理解を深めることができるであろう。図面中のコンポーネントの縮尺は、必ずしも正確なものにはなっておらず、本発明の原理を説明することに重点が置かれている。これらの図面では、類似の参照符号により様々な図面の対応する部分を示している。
【００１４】
好適な実施例の以下の説明では、本明細書の一部を構成する添付図面を参照しているが、これらの図面は、例示を目的として本発明を実施可能な特定の実施例を示している。本発明の範囲を逸脱することなしに、その他の実施例を利用することもでき、構造的な変更を加えることもできる。
【００１５】
本願には、アドレスの複雑な信号シミュレーションシナリオに対して柔軟性を付加することにより、シーケンサを有する直観的なシナリオに基づいたＡＷＧを拡張するための一方法が開示されている。また、周波数、位相シフト、または利得の変化などの信号波形に対するプログラミングされた変更をサポートする能力を有するシステムも開示されている。
【００１６】
一般に、本発明は、ＡＡＷＧと任意の波形信号を生成する方法とを開示している。ＡＡＷＧは、シーケンスメモリとシーケンサと波形メモリとを含むことができ、シーケンスメモリと信号通信状態にあるＤＤＳモジュールと、ＤＤＳモジュールおよび波形メモリの両方と信号通信状態にある乗算モジュールとを含みうる。ＤＤＳモジュールは、シーケンスメモリから、位相、周波数開始および周波数停止データを受信可能であり、これに応答して、ＤＤＳ出力信号を生成し、乗算モジュールは、波形メモリから信号波形データを受信可能であり、受信した信号波形データをＤＤＳ出力信号と乗算して任意の波形信号を生成することができる。また、波形メモリは、シーケンサからの信号波形アドレスの受信に応答し、信号波形データを生成することができる。
【００１７】
図３には、本発明によるＡＡＷＧ３００の実施例のブロックダイアグラムが示されている。ＡＡＷＧ３００は、シーケンスメモリ３０２と、シーケンサ３０４と、波形メモリ３０６と、ＤＤＳモジュール３０８と、乗算モジュール３１０と、任意選択的な利得モジュール３１２とを含みうる。ＡＡＷＧ３００は、信号経路３１８および３２０を介して、デジタル／アナログコンバータ３１４および３１６とそれぞれ信号通信状態にあってもよい。
【００１８】
更なる例として、シーケンスメモリ３０２は、波形メモリ３０６内のアドレスに対するポインタを含むＡＡＷＧ３００内のストレージまたはメモリユニット上のメモリ空間（図示せず）を含みうる。シーケンサ３０４については、シーケンサメモリ３０２のコンテンツは、波形メモリ３０６内の開始および停止アドレスをルーピング情報と共に含みうる。シーケンスメモリ３０２内のそれぞれのシーケンスエントリは波形メモリ３０６内の複数の信号波形サンプルをポイントしているため、通常、シーケンスメモリ３０２は、波形メモリ３０６と比べてそのサイズが小さい。シーケンスメモリ３０２は、個別のＳＲＡＭ（Ｓｔａｔｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）、ＤＲＡＭ（Ｄｙｎａｍｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）、ＦＰＧＡ（Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）、ブロックＲＡＭ、または、その他のタイプのメモリ技術を利用して実施できる。この実施例では、シーケンスメモリ３０２は、ＤＤＳ開始および停止周波数と、利得開始および停止振幅と、位相オフセット値とを含んでいる。これらの値を利用することにより、内部デジタルＤＤＳエンジンおよび利得エンジン（図示せず）を使用し、波形メモリ３０６内に保存され指し示されたデータを変更する。例えば、ＤＤＳエンジンを利用することにより、レーダー波形に対してドップラー周波数オフセットを付加することができる。この例では、シーケンスメモリ３０２内のＤＤＳ開始周波数は、レーダーターゲットの初期速度を表している。ＤＤＳ停止周波数は、最終的なドップラー周波数を表している。線形補間されたＤＤＳ周波数は、一定の加速を仮定した場合のターゲットの瞬間的な周波数を表している。また、変化する加速を有するいくつかの短い波形セグメントを１つに組み合わせることにより、更に複雑な加速プロファイルを生成することもできる。
【００１９】
この例では、シーケンスメモリ３０２は、信号経路３２２、３２４、３２６、および３２８を介して、シーケンサ３０４とＤＤＳモジュール３０８と任意選択的な利得モジュール３１２と信号通信状態にあってもよい。また、シーケンサ３０４は、信号経路３３０を介して、波形メモリ３０６と信号通信状態にあってもよい。さらに、乗算モジュール３１０は、信号経路３３２、３３４、３３６、３３８、および３４０を介して、波形メモリ３０６とＤＤＳモジュール３０８と任意選択的な利得モジュール３１２とそれぞれ信号通信状態にあってもよい。
【００２０】
ＡＡＷＧ３００の動作の一例では、シーケンスメモリ３０２は、波形アドレス開始および停止マーカーを生成し、信号経路３２２を介してシーケンサ３０４にこれらを伝達する。これに応答して、シーケンサ３０４は、信号経路３３０を介して波形アドレスを波形メモリ３０６に伝達し、シーケンサ３０４からの波形アドレスの受信に応答して、波形メモリが波形データを生成する。また、シーケンスメモリ３０２は、信号経路３２６および３２４をそれぞれ介してＤＤＳモジュール３０８に伝達される制御データ（例えば、位相開始および停止マーカーおよび周波数開始および停止マーカー）をも生成する。制御データは、制御データ信号を介してシーケンスメモリ３０２からＤＤＳモジュール３０８に伝達できることを理解されたい。この制御データ信号は、ＡＡＷＧ３００の実施の選択肢に基づいて、個々の（位相開始および停止マーカー用の）信号経路３２６および（周波数開始および停止マーカー用の）信号経路３２４を介して、或いは、単一の信号経路（図示せず）を介して、シーケンスメモリ３０２からＤＤＳモジュール３０８に伝達可能なサブ制御信号を含みうる。そして、乗算モジュール３１０が、信号経路３３４および３３２をそれぞれ介して、波形メモリ３０６から（同相位相（「Ｉ」）および直交位相（「Ｑ」）データとして）複素波形データを受信し、信号経路３３６を介して、ＤＤＳモジュールによって生成されたＤＤＳキャリア信号を受信する。これに応答して、乗算モジュール３１０は、ＤＤＳモジュールから受信したＤＤＳ出力信号（これはＤＤＳキャリア信号であり複素数でありうる）を波形メモリ３０６からの複素波形データと乗算することにより、ＩおよびＱの信号経路３３８および３４０をそれぞれ介して任意選択的な利得モジュール３１２に伝達される複素任意波形信号を生成する。また、任意選択的な利得モジュール３１２は、信号経路３２８を介して、シーケンスメモリ３０２から振幅開始および停止マーカーを受信し、これらを利用することにより、受信した複素任意波形信号を増幅または減衰させる。結果的に得られる複素信号は、ＤＡＣ３１４および３１６に伝達される。
【００２１】
更なる例として、シーケンスメモリ３０２は、波形メモリ３０６内のアドレスに対するポインタを含むＡＡＷＧ３００内のストレージまたはメモリユニット上のメモリ空間を含みうる。シーケンサ３０４については、シーケンサメモリ３０２のコンテンツは、波形メモリ３０６内の開始および停止アドレスをルーピング情報と共に含みうる。シーケンスメモリ３０２内のそれぞれのシーケンスエントリは、波形メモリ３０６内の複数の信号波形サンプルをポイントしているため、通常、シーケンスメモリ３０２は、波形メモリ３０６と比べてそのサイズが小さい。シーケンスメモリ３０２は、個別のＳＲＡＭ、ＤＲＡＭ、ＦＰＧＡ、ブロックＲＡＭ、またはその他のタイプのメモリ技術を利用して実施できる。この実施例では、シーケンスメモリ３０２は、ＤＤＳ開始周波数および停止周波数と、利得開始および停止振幅と、位相オフセット値とを含んでいる。これらの値を利用することにより、前述のように内部デジタルＤＤＳエンジンおよび利得エンジンを使用し、波形メモリ３０６内に保存され指し示されているデータを変更する。
【００２２】
波形メモリ３０６は、ＩおよびＱの振幅データの一連の複素サンプルを含みうる。図２に示されているＡＷＧ２００などの従来の既知のＡＷＧでは、これらの値は、ＩおよびＱのＤＡＣ２０８および２１０に直接出力されており、通常、Ｉ／Ｑ変調器（図示せず）を使用してマイウロ波キャリアにアップコンバージョンされている。しかしながら、ＡＡＷＧ３００では、ＩおよびＱの振幅データは、デジタル回路によって変更されており、このデジタル回路は、シーケンサメモリ３０２内に保存されている高度な周波数、利得、および位相オフセット情報に基づいて変更されたＩ値およびＱ値を供給するべく、ＡＡＷＧ３００のデジタルハードウェア内に、ＤＤＳモジュール３０８および任意選択的な利得モジュール３１２を含んでいる。この結果、波形メモリ３０６の相対的に効率的な利用が実現し、信号波形データを効率的に「圧縮」することにより、所与の信号波形セグメントの再生時間が大幅に拡張される。シーケンスメモリ３０２と同様に、波形メモリ３０６も、ＳＲＡＭ、ＤＲＡＭ、ＦＰＧＡ、ブロックＲＡＭ、またはそのタイプのメモリ技術を利用して実施できる。
【００２３】
シーケンサ３０４は、波形メモリ３０６内のサンプルデータを連続的に読み取り、これをＤＡＣ３１４および３１６にルーティングするＡＡＷＧ３００のデジタルハードウェア内の状態機械でありうる。シーケンサ３０４は、波形セグメントをルーピング（すなわち反復）し、シーケンサメモリ３０２内に保存されている情報に基づいてそれらを再生する順序を判定することができる。シーケンサ３０４は、シナリオテーブル（図示せず）、ソフトウェア制御、外部トリガ、またはこれら３つの組み合わせによって示されているように、シーケンサメモリ３０２内をチェックし、再生される合計出力波形を動的に変更することができる。また、シーケンサ３０４は、シーケンサメモリ３０２内に保存されている追加情報に基づいて、ＤＤＳ周波数オフセットおよび可変利得と、位相オフセットとを適用することもできる。
【００２４】
図４には、図３のＤＤＳモジュール３０８の実施例のブロックダイアグラムが示されている。ＤＤＳモジュール３０８は、位相アキュムレータ４００と計算モジュール４０２を含みうる。シーケンスメモリ３０２内に保存されている位相オフセット引数により、位相アキュムレータ４００を初期値に設定することができる。所望の出力周波数に対応した値（クロックサイクル当たりの位相のラジアン）だけ、それぞれのクロックサイクル４０６においてこの初期値４０４を増分することができ、これらの計算は、通常、整数フォーマットにおいて実行される。そして、位相アキュムレータ４００は、信号経路４０８を介して計算モジュールに増分済みの値を伝達する。位相値は、通常、ルックアップテーブル（図示せず）を利用する計算モジュール４０２内のサインおよびコサイン計算により、ＩおよびＱの局部発振器（「ＬＯ」）出力４１０および４１２に変換できる。ＤＤＳモジュール３０８は、しばしば、サンプルクロックレートの約数において動作する。この場合には、実施は多相（poly-phase）であり、いくつかのＩおよびＱの出力４１０および４１２が、それぞれのクロックサイクルごとに並行して算出される。当業者であれば、ＤＤＳモジュール３０８が複素ＤＤＳモジュールである場合には、ＤＤＳ出力３３６は、ＩおよびＱの出力４１０および４１２に対応したＩ成分およびＱ成分を有する複素信号となることを理解するであろう。ＤＤＳモジュール３０８は、ＦＰＧＡ、ＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）、ＤＳＰ（Ｄｉｇｉｔａｌ  Ｓｉｇｎａｌ  Ｐｒｏｃｅｓｓｏｒ）、または、ソフトウェアを利用して実施できる。
【００２５】
ＡＡＷＧ３００は、１つの集積回路（ＩＣ）３５０またはソフトウェアとして部分的にまたは完全に実施できることを理解されたい。ＩＣは、ＦＰＧＡ、ＤＳＰ、または、ＡＳＩＣでありうる。
【００２６】
別の例では、ＡＡＷＧは、１つのメモリのみを利用して実施できる。この場合には、信号波形データは、単一の波形メモリ（図示せず）内にのみ保存される。信号波形データは、振幅エンベロープデータまたは振幅エンベロープにキャリアデータを乗算したもののいずれかを含みうる。この結果、信号波形が単一のＤＡＣ（図示せず）に直接出力される。この場合には、ＡＡＷＧは、任意波形信号を生成するためのＤＤＳモジュールまたは乗算モジュールを必要としないであろう。
【００２７】
図５は、シナリオテーブル５００とシーケンスメモリ５０２と波形メモリ５０４との間の関係を示す。シナリオテーブル５００は、例えば、パケット０、パケット１、．．．、パケット１０４８５７５として示されているシーケンスメモリ５０２内のパケットの特定の集合を指し示している。それぞれのシナリオ（Ｓｅｑ０、ＳＥｑ１、．．．、Ｓｅｇ１６３８３として示されているもの）は、通常、ユーザーが再生を所望する異なるタイプの信号波形を表している。例えば、あるシナリオは、キャリア波（「ＣＷ」）トーンであってもよく、別のものは、更に複雑なパルス化されたチャープレーダー信号であってもよい。シーケンスメモリ５０２内のそれぞれのパケットは、実際の信号波形サンプルが保存されている波形メモリ５０４に対する開始および停止アドレスポインタを含んでいる。また、パケットは、指定された信号波形データの特定の集合を複数回にわたって反復する能力を有しており、この信号波形データは、波形メモリ５０４内に配置されている。一般に、波形メモリ５０４は、ＤＡＣ（図示せず）のサンプルクロック（図示せず）よりも低いレートでアクセスされており、従って、それぞれのクロックサイクルにおいて複数の波形サンプルを並行して読み取り可能であることを理解されたい。図５に示されている例においては、信号波形データは、一度に８つのサンプルが読み取られている。ＡＡＷＧ３００においては、シーケンスメモリ５０２内のパケット情報を増大させることにより、ＤＤＳ周波数および位相値と、利得項とを含みうる。信号波形データを読み取った際に、これらの値を利用して波形メモリ５０４内の信号波形データを変更する。この結果、シーケンスメモリ５０２内の補足データ（ＤＤＳおよび利得）を変更することにより、シナリオテーブル５００によって定義されているように、同一の信号波形データを利用していくつかの異なるシナリオを生成することができる。
【００２８】
図６は、本発明によるＡＡＷＧ６００の別の実施例のブロックダイアグラムを示している。このＡＡＷＧ６００の実施例は、複素値ではなく実数値を利用しており、図３のＩおよびＱのアップカンバセイションの例とは対照的に、デジタルＩＦカンバセイションの例として説明できる点を除いて、図３に示されているＡＡＷＧ３００の実施例に類似している。
【００２９】
図６では、ＡＡＷＧ６００は、シーケンスメモリ６０２と、シーケンサ６０４と、波形メモリ６０６と、ＤＤＳモジュール６０８と、ＩＦアップコンバータモジュール３１０と、任意選択的な利得モジュール６１２とを含みうる。また、ＡＡＷＧ６００は、信号経路６１６を介してＤＡＣ６１４と信号通信状態にあってもよい。
【００３０】
更なる例として、シーケンスメモリ６０２は、波形メモリ６０６内のアドレスに対するポインタを含むＡＡＷＧ６００内のストレージまたはメモリユニット上のメモリ空間（図示せず）を含みうる。シーケンサ６０４については、シーケンサメモリ６０２のコンテンツは、波形メモリ６０６内の開始アドレスおよび停止アドレスをルーピング情報と共に含みうる。シーケンスメモリ６０２内のそれぞれのシーケンスエントリが波形メモリ６０６内の複数の信号波形サンプルを指し示しているため、通常、シーケンスメモリ６０２は、波形メモリ６０６と比べてそのサイズが小さい。この場合にも、シーケンスメモリ６０２は、ＳＲＡＭ、ＤＲＡＭ、ＦＰＧＡ、ブロックＲＡＭ、または、その他のタイプのメモリ技術を利用して実施できる。この実施例では、シーケンスメモリ６０２は、ＤＤＳ開始および停止周波数と、利得開始および停止振幅と、位相オフセット値などの制御データとを含んでいる。制御データを利用することにより、内部デジタルＤＤＳエンジンおよび利得エンジン（図示せず）を使用し、保存されている波形メモリ６０６内に指し示されているデータを変更する。この場合にも、ＤＤＳエンジンを利用することにより、ドップラー周波数オフセットをレーダー波形に付加することができ、シーケンスメモリ６０２内のＤＤＳ開始周波数は、レーダーターゲットの初期速度を表している。ＤＤＳ停止周波数は、最終的なドップラー周波数を表している。線形補間されたＤＤＳ周波数は、一定の加速を仮定した場合のターゲットの瞬間的な周波数を表している。変化する加速を有するいくつかの短い波形セグメントを１つに組み合わせることにより、更なる加速プロファイルを生成することもできる。
【００３１】
この例では、シーケンスメモリ６０２は、信号経路６１８、６２０、６２２、６２４を介して、シーケンサ６０４と、ＤＤＳモジュール６０８と、任意の利得モジュール６１２と信号通信状態にあってもよい。また、シーケンサ６０４は、信号経路６２６を介して波形メモリ６０６と信号通信状態にあってもよい。さらに、ＩＦアップコンバータモジュール６１０は、信号経路６２８、６３０、および６３２をそれぞれ介して、波形メモリ６０６とＤＤＳモジュール６０８と任意選択的な利得モジュール６１２と信号通信状態にあってもよい。
【００３２】
ＡＡＷＧ６００の動作の一例では、シーケンスメモリ６０２は、波形アドレス開始および停止マーカーを生成し、信号経路６１８を介してシーケンサ６０４にこれらを伝達する。これに応答して、シーケンサ６０４は、信号経路６２６を介して波形メモリ６０６に波形アドレスを伝達し、シーケンサ６０４からの波形アドレスの受信に応答し、波形メモリが信号波形データを生成する。また、シーケンスメモリ６０２は、位相開始および停止マーカーと周波数開始および停止マーカーとを含む制御データを生成し、信号経路６２２および６２０をそれぞれ介して、ＤＤＳモジュール６０８に制御データを伝達する。この場合にも、制御データは、サブ制御信号を含みうる制御データ信号を介してシーケンスメモリ６０２からＤＤＳモジュール６０８に伝達できることを理解されたい。サブ制御信号は、ＡＡＷＧ６００の実施の選択肢に基づいて、個別の（位相開始および停止マーカー用の）信号経路６２２と（周波数開始および停止マーカー用の）信号経路６２０をそれぞれ介して、或いは、単一の信号経路（図示せず）を介して、シーケンスメモリ６０２からＤＤＳモジュール６０８に伝達できる。そして、ＩＦアップコンバータモジュール６１０が、信号経路６２８を介して、波形メモリ６０６から実際の信号波形データを受信し、信号経路６３０を介して、ＤＤＳモジュール６０８によって生成されたＤＤＳキャリア信号を受信する。これに応答して、ＩＦアップコンバータ６１０は、ＤＤＳモジュールから受信したＤＤＳ出力信号（これは、ＤＤＳキャリア信号である）によって波形メモリ６０６からの複素波形データをアップコンバージョン（すなわち乗算または変調し）、経路６３２を介して任意の利得モジュール６１２に伝達される任意の波形信号を生成する。また、任意の利得モジュール６１２は、信号経路６２４を介して、シーケンスメモリ６０２から、振幅開始および停止マーカーをも受信し、これらを利用することにより、受信した複素任意波形信号を増幅または減衰させる。結果的に得られた増幅済みの任意波形信号はＤＡＣ６１４に伝達される。
【００３３】
前述のように、更なる例として、シーケンスメモリ６０２は、波形メモリ６０６内のアドレスに対するポインタを含むＡＡＷＧ６００内のストレージまたはメモリユニット上のメモリ空間を含みうる。シーケンサ６０４については、シーケンサメモリ６０２内のコンテンツは、波形メモリ６０６内の開始および停止アドレスをルーピング情報と共に含みうる。シーケンスメモリ６０２内のそれぞれのシーケンスエントリは波形メモリ６０６内の複数の信号波形サンプルを指し示しているため、通常、シーケンスメモリ６０２は、波形メモリ６０６と比べてそのサイズが小さい。シーケンスメモリ６０２は、個別のＳＲＡＭ、ＤＲＡＭ、ＦＰＧＡ、ブロックＲＡＭ、またはその他のタイプのメモリ技術を利用して実施できる。この実施では、シーケンスメモリ６０２は、ＤＤＳ開始および停止周波数と、利得開始および停止振幅と、位相オフセット値とを含んでいる。これらの値を利用することにより、前述のように内部デジタルＤＤＳエンジンおよび利得エンジンを使用し、保存されている波形メモリ６０６内にポイントされたデータを変更する。
【００３４】
波形メモリ６０６は一連の実際の振幅データのサンプルを含むことでき、これらのサンプルはデジタル回路によって変更され、このデジタル回路は、シーケンサメモリ６０２内に保存されている高度な周波数、利得、および位相オフセット情報に基づいて変更された値を供給するべく、ＡＡＷＧ６００のデジタルハードウェア内にＤＤＳモジュール６０８と任意選択的な利得モジュール６１２とを含んでいる。この場合にも、この結果、波形メモリ６０６の相対的に効率的な利用が実現し、信号波形データを効率的に「圧縮」することにより、所与の信号波形セグメントの再生時間が大幅に拡張されることになる。シーケンスメモリ６０２と同様に、波形メモリ６０６も、ＳＲＡＭ、ＤＲＡＭ、ＦＰＧＡ、ブロックＲＡＭ、またはその他のタイプのメモリ技術を利用して実施できる。
【００３５】
シーケンサ６０４は、波形メモリ６０６内のサンプルデータを連続して読み取り、これをＤＡＣ６１４にルーティングするＡＡＷＧ６００のデジタルハードウェア内の状態機械であってよい。シーケンサ６０４は、波形セグメントをルーピング（すなわち反復）し、シーケンサメモリ６０２内に保存されている情報に基づいてそれらを再生する順序を判定することができる。シーケンサ６０４は、シナリオテーブル（図示せず）、ソフトウェア制御、外部トリガ、またはこれら３つの組み合わせによって示されているように、シーケンサメモリ６０２内をチェックし、再生される合計出力波形を動的に変更できる。また、シーケンサ６０４は、シーケンサメモリ６０２内に保存されている追加情報に基づいて、ＤＤＳ周波数オフセットおよび可変利得と、位相オフセットとを適用することもできる。
【００３６】
前述のように、ＤＤＳモジュール６０８は、位相アキュムレータ（図示せず）と計算モジュール（図示せず）を含むことができ、シーケンスメモリ内に保存されている位相オフセット引数により、位相アキュムレータを初期値に設定することができる。所望の出力周波数に対応した値（クロックサイクル当たりの位相のラジアン）だけ、それぞれのクロックサイクルごとにこの初期値を増分することができ、この計算は、通常、整数フォーマットにおいて実行される。そして、位相アキュムレータは、増分済みの値を計算モジュールに伝達する。位相値は、通常、ルックアップテーブル（図示せず）を利用する計算モジュール内のサインおよびコサイン計算により、ＬＯ出力に変換できる。この場合にも、ＤＤＳモジュール６０８は、しばしば、サンプルクロックレートの約数において動作し、ＦＰＧＡ、ＡＳＩＣ、ＤＳＰ、またはソフトウェアを利用して実施できる。
【００３７】
この場合にも、ＡＡＷＧ６００は、１つのＩＣ６５０またはソフトウェアによって部分的にまたは完全に実施できることを理解されたい。ＩＣは、ＦＰＧＡ、ＤＳＰ、またはＡＳＩＣであってもよい。
【００３８】
図７は、図３に示されているＡＡＷＧ３００によって実行されるプロセスのフローチャート７００を示している。プロセスを開始すると（７０２）、ステップ７０４では、波形メモリ３０６が、シーケンサ３０４からの波形アドレスの受信に応答し、信号波形データを生成する。ステップ７０６では、ＤＤＳモジュール３０８が、シーケンサメモリ３０２からの位相、周波数開始および周波数停止データを有する制御信号の受信に応答し、ＤＤＳ出力信号を生成する。そして、ステップ７０８では、乗算モジュール３１０が、ＤＤＳ出力信号を波形データと乗算し、任意の波形信号を生成する。任意選択的なステップ７１０では、任意選択的な利得モジュール３１２が、シーケンスメモリ３０２から受信した振幅開始および停止マーカーを利用して任意波形信号を増幅し、増幅済みの任意選択信号を生成する。そして、本プロセスは終了する（７１２）。ステップ７０４および７０６の両ステップの順序は、本発明の範囲を逸脱することなしに、逆転することもでき、或いは、同時に実行することもできることを理解されたい。
【００３９】
当業者であれば、前述の１以上のプロセス、サブプロセス、またはプロセス段階は、ハードウェア、ソフトウェア、またはこれらの両方によって実行できることを理解するであろう。また、ＡＡＷＧは、マイクロプロセッサ、汎用プロセッサ、プロセッサの組み合わせ、ＤＳＰ、またはＡＳＩＣ内において実行されるソフトウェアによって完全に実施できる。プロセスをソフトウェアによって実行する場合には、ソフトウェアは、コントローラ内のソフトウェアメモリ内に存在することができる。ソフトウェアメモリ内のソフトウェアは、論理機能を実行するための実行可能命令の順序付けされたリスト（すなわちデジタル回路またはソースコードなどのデジタルの形態、或いは、アナログ電気、音響、またはビデオ信号などのアナログ回路またはアナログソースなどのアナログの形態において実施できる「ロジック」）を含むことができ、コンピュータに基づいたシステム、プロセッサを含むシステム、命令実行システム、機器、または装置から命令を選択的にフェッチし、命令を実行可能なその他のシステムなどの命令実行システム、機器、または装置によって（または、これらとの関係において）使用するための任意のコンピュータ読み取り可能（または、信号保持）媒体において選択的に実施できる。本明細書の文脈においては、「機械読み取り可能媒体」、「コンピュータ読み取り可能媒体」、または「信号保持媒体」は、命令実行システム、機器、または装置によって（或いは、これらとの関係において）使用されるプログラムを格納、保存、通信、伝播、搬送可能な任意の手段である。コンピュータ読み取り可能媒体は、選択的に、例えば、電子的、磁気的、光学的、電磁的、赤外線、または半導体システム、機器、装置、または伝播媒体などでありうる（但し、これらに限定されない）。コンピュータ読み取り可能媒体の更に特定の例（但し、すべてを網羅したものではないリスト）は、１以上のワイヤを有する電気的接続（電子的）と、携帯型コンピュータディスケット（磁気的）と、ＲＡＭ（電子的）と、読み出し専用メモリ「ＲＯＭ」（電子的）と、ＥＰＲＯＭ（Ｅｒａｓａｂｌｅ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｒｅａｄ−Ｏｎｌｙ  Ｍｅｍｏｒｙ）またはＦｌａｓｈメモリ（電子的）と、光ファイバ（光学的）と、携帯型ＣＤＲＯＭ（Ｃｏｍｐａｃｔ  Ｄｉｓｃ  Ｒｅａｄ−Ｏｎｌｙ  Ｍｅｍｏｒｙ）とを含みうる。例えば、紙またはその他の媒体の光学的なスキャニングによってプログラムを電子的にキャプチャし、コンパイル、解釈、または、必要に応じて、適切な方式によりその他のプロセスを実行した後に、コンピュータメモリ内に保存できることから、コンピュータ読み取り可能媒体は、場合によっては、プログラムが印刷される紙または別の適切な媒体でありうることに留意されたい。
【００４０】
一実施に関する以上の説明は、例示および説明を目的として提示されたものであることを理解されたい。これは、すべてを網羅したものではなく、この開示された形態そのままに、特許請求されている本発明を制限するものでもない。以上の説明に鑑み、変更および変形が可能であり、これらを本発明の実施の際に得ることも可能である。本発明の範囲は、請求項およびその均等物により定義される。
【図面の簡単な説明】
【００４１】
【図１】ＡＷＧの既知の実施例のブロックダイアグラムである。
【図２】ＡＷＧの別の既知の実施例のブロックダイアグラムである。
【図３】本発明によるＡＡＷＧの実施例のブロックダイアグラムである。
【図４】図３に示されているＤＤＳモジュールの実施例のブロックダイアグラムである。
【図５】図３に示されているシナリオテーブルとシーケンスメモリと波形メモリとの間の関係を示す図である。
【図６】本発明によるＡＡＷＧの別の実施例のブロックダイアグラムである。
【図７】図３に示されているＡＡＷＧによって実行されるプロセスのフローチャートである。
【符号の説明】
【００４２】
３００  ＡＡＷＧ
３０２  シーケンスメモリ
３０４  シーケンサ
３０６  波形メモリ
３０８  ＤＤＳモジュール
３１０  乗算モジュール
３１２  利得モジュール
３５０  単一集積回路
５００  シナリオテーブル
５０２  パケット
【図１】
2007086074.tif 000003
【図２】
2007086074.tif 000004
【図３】
2007086074.tif 000005
【図４】
2007086074.tif 000006
【図５】
2007086074.tif 000007
【図６】
2007086074.tif 000008
【図７】
2007086074.tif 000009