(57)【要約】      （修正有）【課題】無人ビークル用のシステムオンモジュールを再構成するためのシステムおよび方法を提供する。【解決手段】１以上の処理装置（３０２）は、第１のビークル制御プロセスを実行するように構成されている。プログラマブル論理アレイは、１以上の処理装置（３０２）と動作可能に連通し、複数の論理セルを含む。プログラマブル論理アレイは、第１の構成データに従って複数の論理セルをプログラムし、第１の構成データに基づいて第２のビークル制御プロセスを実行する。無人ビークルが動作している間、プログラマブル論理アレイは、第２のビークル制御プロセスを置き換えるための第３のビークル制御プロセスのための第２の構成データを取得する。次いで、無人ビークルがまだ動作している間に、プログラマブル論理アレイは、第２の構成データに従って複数の論理セルを再プログラムし、第３のビークル制御プロセスを実行する。【選択図】図４
2019142484.tif 000002
【特許請求の範囲】
【請求項１】
無人ビークルの制御システム（８０）であって、
第１のビークル制御プロセス（３８０）を実行するように構成された１以上の処理装置（３０２）と、
前記１以上の処理装置（３０２）と動作可能に連通するフィールドプログラマブルゲートアレイ（ＦＰＧＡ）（３０５、３２５）であって、前記ＦＰＧＡ（３０５、３２５）は、複数の論理セル（３０７）を含み、前記ＦＰＧＡ（３０５、３２５）は、
第１の構成データに従って前記複数の論理セル（３０７）をプログラムし、前記第１の構成データに基づいて第２のビークル制御プロセス（３８２）を実行し、
前記無人ビークルが動作している間に、前記第２のビークル制御プロセス（３８２）を置き換えるための第３のビークル制御プロセスのための第２の構成データを取得し、
前記ＵＡＶが作動している間に、前記第２の構成データに従って前記複数の論理セル（３０７）を再プログラムし、第３のビークル制御プロセスを実行する
ように構成された、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）（３０５、３２５）と
を備えた、制御システム（８０）。
【請求項２】
前記第２のビークル制御プロセス（３８２）は、第１のビークル航法機能と関連付けられ、
前記第３のビークル制御プロセスは、前記第１のビークル航法機能に関連付けられる、
請求項１に記載の制御システム（８０）。
【請求項３】
前記ＦＰＧＡ（３０５、３２５）が前記第３のビークル制御プロセスを実行する場合、前記ＦＰＧＡ（３０５、３２５）は、前記無人航空機の航法システムから受信した１以上の信号をフィルタリングする、請求項１に記載の制御システム（８０）。
【請求項４】
前記第２のビークル制御プロセス（３８２）は、第１のビークル航法機能と関連付けられ、
前記ＦＰＧＡ（３０５、３２５）は、前記第２のビークル制御プロセス（３８２）に従って前記無人ビークルの航法制御を可能にするように構成され、
前記ＦＰＧＡ（３０５、３２５）は、前記第２のビークル制御プロセス（３８２）に従って前記無人ビークルの航法制御を中止し、前記第３のビークル制御プロセスに前記無人ビークルの航法制御を移すように構成される、
請求項１に記載の制御システム（８０）。
【請求項５】
前記１以上の処理装置（３０２）は１以上の第１の処理装置であり、前記ＦＰＧＡ（３０５、３２５）は第１のＦＰＧＡであり、
前記１以上の第１の処理装置および前記第１のＦＰＧＡは、第１の集積回路内に形成されており、
前記制御システム（８０）は、第２のＦＰＧＡを含む第２の集積回路をさらに含み、前記第２のＦＰＧＡは複数の論理セル（３０７）を含む、
請求項１に記載の制御システム（８０）。
【請求項６】
前記第１のＦＰＧＡはＲＡＭベースのＦＰＧＡであり、
前記第２のＦＰＧＡはフラッシュベースのＦＰＧＡである、
請求項５に記載の制御システム（８０）。
【請求項７】
前記１以上の第１の処理装置は、前記第１のビークル制御プロセス（３８０）に対する不正な変更を検出するように構成された、請求項５に記載の制御システム（８０）。
【請求項８】
前記１以上の第２の処理装置は、前記第１のビークル制御プロセス（３８０）を実装するように構成され、
前記１以上の第２の処理装置を構成した後、前記１以上の第１の処理装置が再起動され、
前記１以上の第１の処理装置を再起動した後、前記１以上の第２の処理装置は前記第１のビークル制御プロセス（３８０）を実装するように構成され、
前記第１の集積回路を再構成した後、前記１以上の第２の処理装置によって実行された前記１以上のプロセスが終了する、
請求項５に記載の制御システム（８０）。
【請求項９】
第１の内部を画定する第１のハウジングと、
前記第１の内部内に配置された第１の回路基板（１２０）であって、前記第１の回路基板（１２０）は前記１以上の処理装置（３０２）を含む、第１の回路基板（１２０）と、
第２の内部を画定する第２のハウジングと、
前記第２のハウジング内に配置された第２の回路基板（１２２）であって、前記ＦＰＧＡ（３０５、３２５）を含む、第２の回路基板（１２２）と
をさらに備えた、請求項１に記載の制御システム（８０）。
【請求項１０】
無人航空機（１０）であって、
第１の処理システム（２３０）および第２の処理システム（２３２）を含む回路基板（１２０、１２２）であって、前記第１および第２の処理システム（２３０、２３２）は、それぞれ処理装置と、複数の論理セル（３０７）を含むプログラマブル論理アレイ（３０５）とを含み、前記第１および第２の処理システム（２３０、２３２）の少なくとも一方は、前記無人航空機（１０）が飛行中に動作を実行するように構成され、前記動作は、
前記無人航空機（１０）が飛行中に、前記第１の処理システム（２３０）が危険にさらされていることを検出することと、
前記第１の処理システム（２３０）が危険にさらされていることを検出することに応答して、前記無人航空機（１０）が飛行中に、構成データを取得することと、
前記無人航空機（１０）が飛行中に、前記構成データに基づいて前記第１の処理システム（２３０）の前記プログラマブル論理アレイ（３０５）を再構成することと
を含む、回路基板（１２０、１２２）
を備えた、無人航空機（１０）。
【請求項１１】
前記取得することは、前記構成データおよびコンピュータ可読命令を含むオブジェクト（４００）を取得することをさらに含む、請求項１０に記載の無人航空機（１０）。
【請求項１２】
前記動作は、前記無人航空機（１０）が飛行中に、前記コンピュータ可読命令に基づいて、前記第１の処理システム（２３０）の前記処理装置を再プログラミングすることをさらに含む、請求項１１に記載の無人航空機（１０）。
【請求項１３】
前記オブジェクト（４００）は、前記第１および第２の処理システム（２３０、２３２）のうちの少なくとも１つに関連するメモリ装置上にローカルに格納される、請求項１１に記載の無人航空機（１０）。
【請求項１４】
前記オブジェクト（４００）は、通信ネットワークを介して前記無人航空機（１０）に通信可能に結合された遠隔コンピューティング装置（５００）から取得される、請求項１１に記載の無人航空機（１０）。
【請求項１５】
前記再プログラミングに続いて、前記第１の処理システム（２３０）の前記処理装置（３０２）が第１のオペレーティングシステムで構成されており、
前記再プログラミングは、前記第１のオペレーティングシステムを、前記第１のオペレーティングシステムとは異なる第２のオペレーティングシステムで上書きすることを含む、
請求項１２に記載の無人航空機（１０）。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、一般に無人ビークルに関し、より詳細には無人ビークル用の制御システムに関する。
【背景技術】
【０００２】
無人ビークル（ＵＶ）は、機上操縦士がいないビークルである。典型的に、無人航空機（ＵＡＶ）などの（ＵＶ）は、操縦士、搭載型制御システムによって、または遠隔操縦士と搭載型制御システムとの組合せによって遠隔制御される。ほとんどの無人航空機には、ビークル動作を制御するための制御システムが含まれている。多くの場合、ＵＡＶ用の制御システムには、慣性航法システムおよび衛星航法システムなどの搭載型航法システムを含む１以上のビークル制御システムが含まれる。無人航空機は、飛行位置決定および操縦のための加速度計およびジャイロスコープなどの慣性航法センサと、一般的な位置決定および航路発見のための衛星ベースの航法を使用することができる。ほとんどの制御システムはさらに、撮像またはペイロードの送達などの１以上のミッション制御機能を実行するための１以上のミッション制御システムを含む。典型的に、個々のハードウェア構成要素は、各ビークル制御システムおよび各ミッション制御システム用のＵＡＶに搭載されている。
【発明の概要】
【０００３】
本開示の態様および利点は、以下の説明に一部が記載されるか、またはその説明から明らかにすることができ、あるいは本開示の実施を通じて理解することができる。
【０００４】
一例示的実施形態では、無人ビークル用の制御システムは、第１のビークル制御プロセスを実行するように構成された１以上の処理装置を含む。制御システムはまた、１以上の処理装置と動作可能に連通するフィールドプログラマブルゲートアレイを含む。フィールドプログラマブルゲートアレイは複数の論理セルを含む。フィールドプログラマブルゲートアレイは、第１の構成データに従って複数の論理セルをプログラムし、第１の構成データに基づいて第２のビークル制御プロセスを実行するように構成される。フィールドプログラマブルゲートアレイはさらに、無人ビークルが動作している間に、第２のビークル制御プロセスを置き換えるための第３のビークル制御プロセスのための第２の構成データを取得するように構成される。フィールドプログラマブルゲートアレイはさらに、無人ビークルが動作している間に、第２の構成データに従って複数の論理セルを再プログラムし、第３のビークル制御プロセスを実行するように構成される。
【０００５】
別の例示的実施形態では、無人航空機は、第１の処理システムと第２の処理システムとを備える回路基板を含む。第１および第２の処理システムはそれぞれ、処理装置と、複数の論理セルを含むプログラマブル論理アレイとを含む。例示的実施形態では、第１および第２の処理システムの少なくとも一方は、無人航空機が飛行中に動作を実行するように構成される。動作は、第１の処理システムが危険にさらされていることを検出し、それに応じて構成データを取得することを含む。動作はさらに、構成データに基づいてプログラマブル論理アレイを再構成することを含む。
【０００６】
さらに別の例示的実施形態では、集積回路を再構成するための方法は、１以上の処理システムによって、第１のセットのコンピュータ可読命令に基づいて集積回路の処理装置をプログラミングすることを含む。方法は、１以上の処理システムによって、第１の構成データに基づいて、集積回路のプログラマブル論理アレイを構成するステップを含む。方法は、１以上の処理システムによって、第１の構成データとは異なる第２の構成データを含むオブジェクトを取得するステップを含む。オブジェクトは、第１のセットのコンピュータ可読命令とは異なる第２のセットのコンピュータ可読命令をさらに含む。この方法は、１以上の処理システムによって、第２のセットのコンピュータ可読命令に基づいて、処理装置を再プログラミングするステップを含む。この方法は、１以上の処理システムによって、第２の構成データに基づいて、プログラマブル論理アレイを再構成するステップを含む。
【０００７】
本開示のこれらおよび他の特徴、態様および利点は、以下の説明および添付の特許請求の範囲を参照して、よりよく理解されよう。添付の図面は、本明細書に組み込まれて、本明細書の一部を構成し、本開示の実施形態を例示し、説明と共に本開示の原理を説明するのに役立つ。
【０００８】
本発明の完全かつ可能な開示は、その最良の形態を含み、当業者に向けられて、本明細書に記載されており、それは以下の添付の図面を参照している。
【図面の簡単な説明】
【０００９】
【図１】本開示の例示的実施形態による無人航空機を示す図である。
【図２】本開示の例示的実施形態によるバックプレーンおよびカードアーキテクチャを含むＵＡＶのための例示の制御システムを示すブロック図である。
【図３】本開示の例示的実施形態による搭載型制御システムを有する例示のＵＡＶを示すブロック図である。
【図４】本開示の例示的実施形態による搭載型制御システムの第１の回路基板を示すブロック図である。
【図５】本開示の例示的実施形態による図４の第１の回路基板の第１の処理システムのブロック図を示す。
【図６】本開示の例示的実施形態による図４の第１の回路基板の第２の処理システムのブロック図を示す。
【図７】本開示の例示的実施形態による搭載型制御システムの第２の回路基板を示すブロック図である。
【図８】本開示の例示的実施形態による再構成可能処理システムを示す図である。
【図９】本開示の例示的実施形態によるフィールドプログラマブル論理アレイの再構成を示す図である。
【図１０】本開示の例示的実施形態による第１の処理システムのフィールドプログラマブル論理アレイの再構成を示す図である。
【図１１】本開示の例示的実施形態による処理装置の再プログラミングおよびフィールドプログラマブル論理アレイの再構成を示す図である。
【図１２】本開示の例示的実施形態による集積回路を再構成するための方法を示す図である。
【図１３】本開示の例示的実施形態による処理システムを再構成する方法を示す図である。
【図１４】本開示の例示的実施形態による処理システムを再構成するための別の方法を示す図である。
【発明を実施するための形態】
【００１０】
ここで本開示の実施形態を詳細に参照するが、それの１以上の例を図面に示す。各々の例は、説明の目的で提示されており、開示される実施形態を限定するものではない。実際、本発明の範囲または趣旨を逸脱せずに、様々な修正および変更が本発明において可能であることは、当業者にとって明らかであろう。例えば、例示的実施形態の一部として図示または記載する特徴は、別の実施形態と共に用いて、さらに別の実施形態を得ることができる。このように、本開示は、添付の特許請求の範囲およびそれらの均等物の範囲に含まれるような修正および変形を包含するように意図される。
【００１１】
本明細書および添付の特許請求の範囲で使用する場合、「第１の」、「第２の」という用語は、ある構成要素を別の構成要素から区別するために交換可能に使用することができ、個々の構成要素の位置または重要性を示すことを意図するものではない。単数形「１つの（ａ、ａｎ）」、および「この（ｔｈｅ）」は、文脈が特に明確に指示しない限り、複数の言及を含む。数値と組み合わせた用語「約」の使用は、記載された量の２５％以内を指す。
【００１２】
本開示の例示的態様は、ＵＡＶの統合ビークル制御およびミッション制御を提供するための制御システムに関する。例示的実施形態では、制御システムは、内部を画定するハウジングと、内部に配置された１以上の回路基板とを含む。より具体的には、制御システムは、第１の処理システムおよび第２の処理システムを提供する１以上の集積回路を有する第１の回路基板を含み得る。例示的実施形態では、第１および第２の処理システムは、多様で構成可能で認証可能なＵＡＶアプリケーションを提供するための異種フィールドプログラマブルゲートアレイアーキテクチャを有する。
【００１３】
例示的実施形態では、第１の処理システムは、１以上の第１の処理装置と、ＲＡＭベースのフィールドプログラマブルゲートアレイなどの揮発性プログラマブル論理アレイとを含むことができる。第２の処理システムは、１以上の第２の処理装置と、フラッシュベースのフィールドプログラマブルゲートアレイなどの不揮発性プログラマブル論理アレイとを含むことができる。幾つかの実装形態では、フラッシュベースのフィールドプログラマブルゲートアレイは、１以上の第１の処理装置によって実装された第１のビークル制御プロセスおよび１以上の第２の処理装置によって実装された第２のビークルプロセスに基づいて、ＵＡＶの１以上のビークル装置の制御を管理する。
【００１４】
幾つかの例では、第１の回路基板は、第１の処理システムを含む第１の集積回路と第２の処理システムを含む第２の回路基板とを含む。各処理システムは、中央処理装置（ＣＰＵ）、アプリケーション処理装置（ＡＰＵ）、リアルタイム処理装置（ＲＰＵ）、共処理装置、および画像処理装置（ＧＰＵ）などの１以上の処理装置を含むことができる。さらに、各集積回路は、それぞれの処理システムの集積部分を形成するフィールドプログラマブルゲートアレイ（ＦＰＧＡ）などの埋め込みプログラマブル論理アレイを含むことができる。
【００１５】
幾つかの例では、第１の処理システムおよび／または第２の処理システムはそれぞれ、多重処理コアシステムオンチップとして提供されてもよい。また、説明されたような処理システムで構成された２つ以上のシステムオンチップは、ＵＡＶのための異種処理システムを提供することができる。
【００１６】
本開示の例示的実施形態では、第１の処理システムの１以上の処理装置は、第１のビークル航法機能に関連する第１のビークル制御プロセスを実行するように構成され得る。１以上の処理装置と動作可能に連通し、複数の論理セルを含む第１の処理システムのＦＰＧＡは、第１の構成データに従って複数の論理セルをプログラムし、第１の構成データに基づいて第２のビークル制御プロセスを実行するように構成され得る。幾つかの例では、第２のビークル制御プロセスは第１のビークル航法機能に関連付けられてもよい。さらに、ＦＰＧＡが第２のビークル制御プロセスを実行する場合、ＦＰＧＡは、第１のビークル制御プロセスに従ってＵＡＶの航法制御を可能にするように構成され得る。
【００１７】
ＦＰＧＡはまた、ＵＡＶが飛行中に、第２のビークルプロセスを置き換えるための第３のビークル制御プロセスのための第２の構成データを取得するように構成され得る。より具体的には、ＦＰＧＡは、ＵＡＶが飛行中に、第２の構成データに従って複数の論理セルを再プログラムし、第３のビークル制御プロセスを実行するように構成され得る。幾つかの例では、第３のビークル制御プロセスは第１のビークル航法機能に関連付けられてもよい。さらに、ＦＰＧＡが複数の論理セルを再プログラムする場合、ＦＰＧＡは、第２のビークル制御プロセスに従ってＵＡＶの航法制御を中断し、ＵＡＶの航法制御を第３のビークル制御プロセスに移すように構成されてもよい。このようにして、ＦＰＧＡを飛行中に再プログラミングして、ＵＡＶの機能性を向上させることができる。
【００１８】
開示された技術の例示的実施形態では、第１の処理システムと第２の処理システムは協働して、より信頼性が高く、堅固な、および／または認証可能なＵＡＶアプリケーションを提供する。例えば、第１の回路基板の第１の処理システムは、ＵＡＶに対する第１の処理を実行するように構成することができる。第１のプロセスは、ＵＡＶの第１のビークル装置と関連付けられてもよい。第２の処理システムは、第１の処理システムによる第１の処理の実行を監視するように構成することができる。同様に、第１の処理システムは、第２の処理システムによるプロセスの実行を監視するように構成することができる。
【００１９】
より具体的には、幾つかの例では、第１の処理システムの１以上の第１の処理装置は、複数のビークル制御プロセスを実行するように構成することができる。第１の処理システムの揮発性プログラマブル論理アレイは、複数のミッション制御プロセスを実行するように構成することができる。第２の処理システムの不揮発性プログラマブル論理アレイは、１以上の第１の処理装置による１以上のビークル制御プロセスの実行を監視するように構成することができる。
【００２０】
幾つかの例では、第２の処理システムは、第１の処理システムによるプロセスの実行の監視に基づいて、１以上の制御動作を開始するように構成されている。例えば、第２の処理システムの不揮発性プログラマブル論理アレイは、第１の処理システムに関連する出力を監視するように構成することができる。無効な出力の検出に応答して、第２の処理システムは制御動作を開始することができる。例として、不揮発性プログラマブル論理アレイは、無効な出力に基づいて、第１の処理システムの少なくとも一部を再始動することができる。別の例では、第２の処理システムの論理アレイは、第１の処理システムによって１以上の処理を再始動することができる。無効な出力は、プロセスまたは処理システムが故障した場合に発生し得るようなプロセスまたは処理システムからの出力の欠如、ならびに出力として提供される予期しない信号または値を含み得る。
【００２１】
幾つかの実装形態では、第２の処理システムは、第１の処理システムの監視に基づいて、１以上のＵＡＶ機能の制御を移すように構成することができる。例えば、第２の処理システムは、第１の処理システムによって実行された第１の処理に関連する無効な出力を検出してもよい。それに応じて、第２の処理システムは、第１のプロセスに関連する機能または装置の制御を第２のプロセスに移すことができる。例えば、第２の処理システムは、ＵＡＶ装置または自動操縦機能の制御を第１の処理システムから第２の処理システムに移すことができる。幾つかの例では、第２の処理システムは、無効な出力の検出に応答して、第２の処理を実行するように構成することができる。
【００２２】
開示された技術の実施形態は、特に無人航空機の分野において、多くの技術的利益および利点を提供する。一例として、本明細書に記載の技術は、小型で軽量の電子的解決策を用いて無人航空機（ＵＡＶ）の制御を可能にする。統合された再構成可能な処理システムを有する回路基板は、ＵＡＶのための複数のビークル制御プロセスおよびミッション制御プロセスを提供する低減されたハードウェア実装を可能にする。さらに、このような解決策は、航空機搭載アプリケーションの高度な認証要件を満たすことができるバックアップ機能および複数のフェイルポイント実装を提供する。さらに、そのような再構成可能な処理システムを、入出力（Ｉ／Ｏ）インタフェースを提供する１以上の回路基板を用いる筐体に一体化することによって、スペースおよび重量の要件をさらに低減することが可能になる。
【００２３】
開示された技術の実施形態はさらに、コンピューティング技術の分野において、多くの技術的利益および利点も提供する。例えば、開示されたシステムは、ＵＡＶアプリケーションの様々な要求を満たすために多様なコンピューティング環境を提供することができる。複数の集積回路にわたって広がる複数の処理装置は、アプリケーション統合のための様々な高速処理オプションを提供する。重要度および性能のニーズに応じて、様々なハードウェアおよび／またはソフトウェアパーティションに割り当てられるビークルおよびミッション制御プロセス。さらに、単一の集積回路上で対応する処理装置と統合することによってこれらの処理装置に密接に結合された埋め込み型フィールドプログラマブルゲートアレイは、さらなる多様性および信頼性を提供する。
【００２４】
図１は、一例の無人航空機（ＵＡＶ）ＵＡＶ１０の概略図である。ＵＡＶ１０は、機上操縦士なしで飛行可能なビークルである。例えば、限定するものではないが、ＵＡＶ１０は、固定翼航空機、チルトロータ航空機、ヘリコプタ、クワッドコプタなどのマルチロータドローン航空機、飛行船、航空船、または他の航空機であり得る。
【００２５】
ＵＡＶ１０は、少なくとも１つの推進移動（ＰＭ）装置１４を含む複数のビークル装置を含む。ＰＭ装置１４は、制御された力を生成し、かつ／またはＵＡＶ１０の姿勢、向きまたは位置を維持あるいは変更する。ＰＭ装置１４は、推力装置または操縦翼面であり得る。推力装置は、ＵＡＶ１０に推進または推力を提供する装置である。例えば、限定するものではないが、推力装置は、モータ駆動プロペラ、ジェットエンジン、または他の推進源であり得る。操縦翼面は、操縦翼面を通過する空気流の偏向による力を提供する制御可能面または他の装置である。例えば、限定するものではないが、操縦翼面は、昇降舵、方向舵、エルロン、スポイラ、フラップ、スラット、エアブレーキ、またはトリム装置であり得る。様々なアクチュエータ、サーボモータ、および他の装置を使用して操縦翼面を操作することができる。ＰＭ装置１４はまた、プロペラまたはロータブレードのピッチ角を変えるように構成された機構、あるいはロータブレードの傾斜角を変えるように構成された機構であり得る。
【００２６】
ＵＡＶ１０は、制御ボックス１００を含む搭載型制御システム、地上管制局（図１には図示せず）、および少なくとも１つのＰＭ装置１４を含むがこれらに限定されるものではない本明細書に記載のシステムによって制御することができる。ＵＡＶ１０は、例えば、限定されるものではないが、地上管制局からＵＡＶ１０によって受信されるリアルタイムコマンド、地上管制局からＵＡＶ１０によって受信される一セットの事前プログラムされた命令、一セットの命令および／または搭載型制御システムに格納されたプログラミング、またはこれらの制御の組合せによって制御することができる。
【００２７】
リアルタイムコマンドは、少なくとも１つのＰＭ装置１４を制御することができる。例えば、限定するものではないが、リアルタイムコマンドは、搭載型制御システムによって実行されると、スロットル調整、フラップ調整、エルロン調整、方向舵調整、または他の操縦翼面または推力装置調整をもたらす命令を含む。
【００２８】
幾つかの実施形態では、リアルタイムコマンドは、１以上の二次装置１２などのＵＡＶ１０の追加のビークル装置をさらに制御することができる。二次装置１２は、ＵＡＶの推進または移動を指示するために、１以上の二次機能を実行するように構成された電気または電子装置である。二次装置は、ＵＡＶの推進または移動に関連し得るが、典型的には、ビークル推進の直接制御または運動制御とは無関係に、１以上のビークルまたはミッション機能を提供し得る。例えば、二次装置は、物体の検出および追跡に使用されるカメラまたは他のセンサなどのミッション関連装置を含み得る。二次装置１２の他の例は、ＬＩＤＡＲ／ＳＯＮＡＲ／ＲＡＤＡＲセンサ、ＧＰＳセンサ、通信装置、航法装置、および様々なペイロード送達システムなどのセンサを含み得る。例えば、限定するものではないが、リアルタイムコマンドは、搭載型制御システムによって実行されると、カメラに画像を取り込ませる、通信システムにデータを送信させる、あるいは処理構成要素に１以上の処理要素をプログラムまたは構成させる命令を含む。
【００２９】
ＵＡＶ１０は、限定ではなく例として示される。本開示の多くは無人航空機に関して説明されているが、開示された技術の実施形態は、無人海洋ビークルおよび無人地上ビークルなどの任意の無人ビークル（ＵＶ）と共に使用され得ることが理解されよう。例えば、開示された制御システムは、無人ボート、無人潜水艦、無人車、無人トラック、または移動可能な他の任意の無人ビークルと共に使用することができる。
【００３０】
図２は、ＵＡＶ用の典型的な制御システム５０の一例を示すブロック図である。この例では、制御システムは、複数のカードスロット７１、７２、７３、７４、７５を有するバックプレーン６０を使用して形成される。各カードスロットは、所定のセットの機械的および電気的規格を満たすカードを受け取るように構成されている。各カードは、典型的には特定のビークルまたはミッション制御機能を実行するように構成された１以上の集積回路を含む、１以上の回路基板を含む。カードスロットは、カードとその下にあるバスとの間の電気的接続だけでなく、カードのための構造的支持を提供する。第１のカードスロット７１に設置されたＣＰＵカード６１、第２のカードスロット７２に設置された共処理カード６２、およびそれぞれカードスロット７３、７４、７５に設置されたアドオンカード６３、６４、６５を有する特定の例が示されている。例として、ＣＰＵカード６１は、プロセッサ、ＰＣＩ回路、スイッチング回路、およびカード６１をカードスロット７１に構造的および電気的に接続するように構成された電気コネクタを有する回路基板を含み得る。同様に、共処理カード６２は、プロセッサ、ＰＣＩ回路、スイッチング回路、およびコネクタを含み得る。
【００３１】
アドオンカード６３、６４、６５は、１以上のビークルおよび／またはミッション機能を実行するように構成された任意の数および種類のカードを含むことができる。アドオンカードの例には、入出力（Ｉ／Ｏ）カード、ネットワークカード、操縦および航法機能カード、センサインタフェースカード（例えばカメラ、レーダなど）、ペイロードシステム制御カード、画像処理装置（ＧＰＵ）カード、および特定の種類のビークルおよび／またはミッション機能用の任意の他のカードが含まれる。
【００３２】
図２のような典型的なバックプレーンアーキテクチャは、各カードが任意の他のスロット内のカードと通信することを可能にするスイッチ６６を含む。様々な種類のバックプレーンアーキテクチャを定義するための様々な規格を含む多数の例が存在する。例えば、スイッチ６６はカードスロット７１、７２、７３、７４、７５とは分離して示されているが、幾つかのアーキテクチャでは中央スイッチをバックプレーンの特定のスロットに配置することができる。いずれの場合も、ノード装置はスイッチを介して互いに通信することができる。図２には５つのカードスロットが描かれているが、バックプレーンは任意の数のカードスロットを含むことができる。
【００３３】
図２のようなバックプレーンアーキテクチャを利用するＵＡＶのための搭載型制御システムは、何らかの機能制御を提供するのに効果的であり得る。さらに、そのようなアーキテクチャは、ハードウェアの変更を通じていくらかの構成可能性を提供してもよい。しかしながら、伝統的なバックプレーンアーキテクチャは、ＵＡＶの実装において幾つかの欠点を有し得る。例えば、電気的および機械的接続の組合せによって複数のカードに結合するバックプレーンの構造的性能は、一部のＵＡＶの高負荷環境にはあまり適さない場合がある。振動、温度およびその他の要因により、バックプレーン内の１以上のカードで機械的または電気的な障害が発生する場合がある。さらに、そのようなアーキテクチャは、かなりのスペースおよび重量を必要としながら、限られた処理能力を提供する。各カードは典型的には、コネクタ、スイッチング回路、通信回路などを含む自身の回路基板を含む。各回路基板はこれらの共通機能のために自身の回路を必要とするので、バックプレーンアーキテクチャは比較的高い重量およびスペースの要件を提供する場合がある。さらに、これらの種類のシステムの計算能力および容量は、典型的には、マルチプルカードアプローチによって制限されている。カード間、および様々な処理要素間の通信は、計算能力の低下を招く可能性がある。
【００３４】
図３は、開示された技術の実施形態による制御システム８０を含む無人航空機（ＵＡＶ）１０を表すブロック図である。制御システム８０は、ビークル機能およびミッション機能の集中制御を提供する制御ボックス１００を含む。制御ボックスは、内部を画定するハウジング１１０を含む。第１の回路基板１２０および第２の回路基板１２２は、ハウジング１１０の内部に配置され、Ｉ／Ｏコネクタ１２６は、後述するように、第２の回路基板１２２からハウジング１１０を通って延びる。制御ボックス１００は、制御ボックス１００の電気部品から熱を放散するために設けられたヒートシンク１１８を含む。例示的実施形態では、後述するように、ヒートシンク１１８は、ハウジング１１０の少なくとも一部を形成することができる。制御システム８０は、追加の制御装置またはビークルもしくはミッション制御プロセスを実行する他の要素などの追加の構成要素を含み得る。
【００３５】
幾つかの実装形態では、第１の回路基板１２０は、ＵＡＶ１０３のビークルおよびミッション制御プロセスを制御するための制御モジュールを含み、第２の回路基板１２２は、制御装置とＵＡＶの様々なＰＭ装置および二次装置との間の通信インタフェースを提供するためのキャリアモジュールを含む。
【００３６】
幾つかの例では、第１の回路基板１２０は、それぞれ再構成可能な処理アーキテクチャを有する複数の異種処理システムを含み、様々なビークル機能およびミッション機能の管理を提供する。再構成可能な機能を備えた複数の異種処理システムは、無人航空機によって実行される多様な機能、ならびにこれらのビークルに典型的に必要とされる高度な認証に適している。
【００３７】
例示的実施形態では、第２の回路基板１２２は、ＵＡＶ１０の第１の回路基板１２０と、様々なＰＭ装置および二次装置との間のインタフェースを提供するキャリアモジュールである。例えば、図３は、推力装置３０、操縦翼面３２、および位置決定システム３４を含む一セットのＰＭ装置を示す。加えて、図３は、画像センサ２０、レーダセンサ２２、ＬＩＤＡＲセンサ２４、ソナーセンサ２６、ＧＰＳセンサ２８、ペイロード送達システム３６、および通信システム３８を含む一セットの二次装置を示す。第２の回路基板１２２は、第１の回路基板の対応するＩ／Ｏコネクタに接続するＩ／Ｏコネクタと、ハウジングから延びるＩ／Ｏコネクタとを含み得る。さらに、第２の回路基板は、ハウジングから延びる複数のセンサコネクタを含み得る。第２の回路基板は、データを送受信するために使用される関連する電子回路を含む通信インタフェースまたは入出力（Ｉ／Ｏ）インタフェースを提供することができる。より具体的には、通信インタフェースは、第２の回路基板の様々な集積回路のいずれかの間、および第２の回路基板と他の回路基板との間でデータを送受信するために使用することができる。例えば、アイテムインタフェースは、Ｉ／Ｏコネクタ１２６、Ｉ／Ｏコネクタ２３８、および／またはＩ／Ｏコネクタ１２４を含み得る。同様に、インタフェース回路のうちのいずれか１つの通信インタフェースは、別の航空機、センサ、他のビークル装置、および／または地上制御装置などの外部の構成要素と通信するために使用され得る。通信インタフェースは、適切な有線または無線通信インタフェースの任意の組合せであり得る。
【００３８】
幾つかの例では、制御ボックス１００は追加の構成要素を含み得る。例えば、別の実施形態では、メザニンカードなどの第３の回路基板を制御ボックス１００内に設けることができる。幾つかの例では、第３の回路基板は１以上の不揮発性メモリアレイを含むことができる。例えば、ソリッドステートドライブ（ＳＳＤ）は、メザニンカード上の１以上の集積回路として提供されてもよい。さらに、制御ボックス１００は、制御モジュールを形成するための追加の回路基板と、追加のキャリアモジュールを形成するための追加の回路基板とを含むことができる。
【００３９】
図４は、開示された技術の例示的実施形態による第１の回路基板１２０を説明するためのブロック図である。図４では、第１の回路基板１２０は、無人航空機（ＵＡＶ）用の制御モジュール（例えば、制御基板）として構成されている。実施形態例では、第１の回路基板１２０はシステムオンモジュール（ＳＯＭ）カードである。第１の回路基板１２０は、第１の処理システム２３０、第２の処理システム２３２、メモリブロック２３４、およびＩ／Ｏコネクタ２３８を含む。
【００４０】
第１および第２の処理システムは、任意の適切な数の個々のマイクロプロセッサ、電源、記憶装置、インタフェース、および他の標準的な構成要素を含むか、またはそれらに関連付けることができる。処理システムは、航空機１０の動作に必要な様々な方法、プロセスタスク、計算、および制御／表示機能を実行するように設計された任意の数のソフトウェアプログラム（例えば、ビークルおよびミッション制御プロセス）または命令を含むか、またはそれらと協働することができる。メモリブロック２３４は、限定するものではないが、対応する処理システムを支援するように構成されたＳＤＲＡＭなどの任意の適切な形態のメモリを含み得る。例えば、第１のメモリブロック２３４は第１の処理システム２３０を支援するように構成され、第２のメモリブロック２３４は第２の処理システム２３２を支援するように構成されてもよい。任意の数および種類のメモリブロック２３４を使用することができる。例として、それぞれが個別の集積回路を含む４つのメモリブロックが第１の処理システム２３０を支援するために提供され、２つのメモリブロックが第２の処理システム２３２を支援するために提供される。
【００４１】
Ｉ／Ｏコネクタ２３８は、第１の回路基板１２０の第１の表面から延在し、第２の回路基板１２２への動作可能な通信リンクを提供する。
【００４２】
第１の処理システム２３０および第２の処理システム２３２は、開示された技術の例示的実施形態において、ＵＡＶ１０の多様で安定した必要性に適した、異種の再構成可能なコンピューティングアーキテクチャを形成する。第１の処理システム２３０は、第１の処理プラットフォームを形成する１以上の処理装置３０２と、第２の処理プラットフォームを形成する１以上のプログラマブル論理回路３０４とを含む。例として、１以上の処理装置３０２は中央処理装置を含み、プログラマブル論理回路３０４は、ＲＡＭベースのフィールドプログラマブルゲートアレイ（ＦＰＧＡ）などの揮発性プログラマブル論理アレイを含むことができる。処理装置３０２には、任意の数および種類の処理装置を使用することができる。幾つかの実施形態では一般に処理回路と呼ばれる第１の集積回路内に、複数の処理装置３０２およびプログラマブル論理回路３０４を設けることができる。
【００４３】
第２の処理システム２３２は、第３の処理プラットフォームを形成する１以上の処理装置３２２と、第４の処理プラットフォームを形成する１以上のプログラマブル論理回路３２４とを含む。例として、１以上の処理装置３２２は共処理装置を含むことができ、プログラマブル論理回路３２４はフラッシュベースのＦＰＧＡを含むことができる。処理装置３２２には、任意の数および種類の処理装置を使用することができる。幾つかの実施形態では処理回路とも呼ばれる第２の集積回路内に、１以上の処理装置３２２およびプログラマブル論理回路３２４を設けることができる。
【００４４】
各処理システムにおいて異なる処理装置種類および異なるプログラマブル論理回路種類を提供することによって、第１の回路基板１２０は、高負荷用途ＵＡＶの処理および動作要件に独自に適した異種計算システムを提供する。例えば、ＲＡＭベースとフラッシュベースのＦＰＧＡ技術を組み合わせることで、ＵＡＶアプリケーションに両方の長所を活かすことができる。異種処理装置３０２および３２２ならびに異種プログラマブル論理回路３０４および３２４の独特の能力は、ハードウェア区分化動作環境とソフトウェア区分化動作環境の両方を支援する。重要度および性能のニーズに応じて、ビークルおよびミッション制御プロセスを様々な区分に割り当てることができる。これにより、重要な動作に適した制御および監視アーキテクチャが提供される。例えば、不可逆的重要な機能を制御するためのオン／オフすなわち赤色／青色アーキテクチャが提供される。さらなる例として、フィールドプログラマブルゲートアレイのうちの１以上は、機上センサ処理のためのファブリックアクセラレータを提供するように構成され得る。
【００４５】
図５は、開示された技術の例示的実施形態による第１の処理システム２３０のさらなる詳細を説明するブロック図である。図５では、第１の処理システム２３０は、図４で説明したように３つの処理装置３０２を含む。より具体的には、第１の処理システム２３０は、アプリケーション処理装置（ＡＰＵ）３０６、画像処理装置（ＧＰＵ）３０８、およびリアルタイム処理装置（ＲＰＵ）３１０を含む。処理装置３０６、３０８、３１０のそれぞれは、ＳＤＲＡＭなどの任意の数および種類のメモリを含み得るメモリ３１２によって支援され得る。各処理装置は、処理回路と呼ばれる個々の集積回路上に実装されている。一例では、ＡＰＵ３０６は第１の処理回路上に形成され、４つのプロセッサを含むクアッドコア処理装置を含む。ＲＰＵ３１０は、第３の処理回路上に形成され、２つのプロセッサを含むデュアルコア処理装置を含む。ＧＰＵ３０８は、第３の処理回路上に形成され、単一のコア処理装置を含む。後述するように、第２の処理システムに対して第４の処理装置が設けられる。スイッチファブリック３１６は、処理システム２３０の様々な構成要素を接続する。スイッチファブリック３１６は、例えば、幾つかの例では、低電力スイッチおよび中央スイッチを含み得る。通信インタフェース３１４は、第１の処理システム２３０を第１の回路基板１２０に結合する。
【００４６】
プログラマブル論理回路３０４は揮発性プログラマブル論理アレイ３０５を含む。例示的実施形態では、論理アレイは、ＲＡＭ論理ブロックまたはメモリセルを含むＲＡＭベースの浮動小数点ゲートアレイなどのＲＡＭベースのプログラマブル論理アレイ３０５を含むことができる。揮発性プログラマブル論理アレイ３０５は、通信インタフェース３１４を介して第１の処理システムに提供される構成データでプログラムすることができる。例えば、ＲＡＭベースのＦＰＧＡは、ラッチのアレイを含む組織内などで、アレイのスタティックメモリに構成データを格納することができる。論理ブロックは、プログラマブル論理回路３０４が起動または電源投入された場合にプログラム（構成）される。構成データは、外部メモリ（例えば、後述するように第１の回路基板１２０またはメザニン基板の不揮発性メモリ）から、またはＵＡＶ１０の外部ソースから論理アレイ３０５に提供され得る（例えば、第２の回路基板１２２を使用して）。ＲＡＭベースのＦＰＧＡは、高レベルのコンフィギュアビリティおよびリコンフィギュアビリティを提供する。図示されていないが、論理アレイ３０５は、イーサネット（登録商標）インタフェースおよびＰＣＩインタフェースなどの様々なプログラムされた回路、ならびに本明細書で説明される様々なビークルおよびミッション制御プロセスを含み得る。
【００４７】
図６は、開示された技術の例示的実施形態による第２の処理システム２３２のさらなる詳細を説明するブロック図である。図６では、第２の処理システム２３２は、アプリケーション処理装置（ＡＰＵ）３２６およびメモリ３３２を含む。一例では、ＡＰＵ３２６は第２の処理回路上に形成され、４つのプロセッサを含むクアッドコア処理装置を含む。メモリ３３２は、ＳＤＲＡＭなどの任意の数および種類のメモリを含み得る。スイッチファブリック３３６は処理システム２３２の様々な構成要素を接続する。通信インタフェース３３４は、第１の処理システム２３０を第１の回路基板１２０に結合する。
【００４８】
プログラマブル論理回路３２４は、不揮発性プログラマブル論理アレイ３２５を含む。例示的実施形態では、論理アレイ３２５は、フラッシュ論理ブロックまたはメモリセルを含むフラッシュベースの浮動小数点ゲートアレイなどのフラッシュベースのプログラマブル論理アレイ３２５を含むことができる。不揮発性プログラマブル論理アレイ３２５は、通信インタフェース３３４を介して第２の処理システムに提供される構成データでプログラムすることができる。例えば、フラッシュベースのＦＰＧＡは、アレイの不揮発性メモリに構成データを格納できる。フラッシュメモリは、ＲＡＭベースのメモリが不要になるように、構成データを格納するための主要なリソースとして使用される。構成データは不揮発性メモリ内に格納されるので、起動時または電源投入時に構成データを論理アレイに読み出す必要はない。そのため、フラッシュベースの論理アレイは、電源投入時に直ちにアプリケーションを実行することができる。さらに、構成データの外部記憶は必要とされない。フラッシュベースの論理アレイは、論理アレイに現在格納されている構成データを上書きするために、更新された構成データを提供することによって再プログラムまたは再構成することができる。フラッシュベースの論理アレイは、ＲＡＭベースの論理アレイよりも少ない電力を消費することができ、かつ干渉に対してより強固な保護を提供することができる。図示されていないが、論理アレイ３２５は、本明細書で説明される様々なビークルおよびミッション制御プロセスなどのための様々なプログラムされた回路を含むことができる。一例では、論理アレイ３２５は、機上センサ処理のための少なくとも１つのＦＰＧＡファブリックアクセラレータを含み得る。
【００４９】
図７は、開示された技術の例示的実施形態による第２の回路基板１２２のさらなる詳細を表すブロック図である。図７では、第２の回路基板１２２は、無人航空機（ＵＡＶ）用のキャリアモジュール（例えばキャリアカード）として構成されている。第２の回路基板１２２は、制御ボックス１００にＩ／Ｏ機能を提供するインタフェース回路などの複数の集積回路を含む。インタフェース回路は、センサコネクタを介してＵＡＶの複数のビークル装置の出力を受信するように構成される。インタフェース回路は、Ｉ／Ｏコネクタ１２４を介してビークル装置の出力に基づいて、ビークル装置データを第１の回路基板に提供する。第２の回路基板１２２は、制御装置１００のハウジングから延在するＩ／Ｏコネクタ１２６を含み、ＵＡＶ１０のＰＭ装置および二次装置への動作可能な通信リンクを提供する。さらに、第２の回路基板１２２は、第２の回路基板１２２の第１の表面から延在するＩ／Ｏコネクタ１２４を含み、第１の回路基板１２０への動作可能な通信リンクを提供する。図示されていないが、第２の回路基板１２２は、例えばソリッドステートドライブを含むメザニンカードに結合するための追加のＩ／Ｏコネクタを含むことができる。Ｉ／Ｏコネクタ１２６、１２４、および２２８のいずれか１つまたはそれらの組合せは、第２の回路基板のインタフェース回路と第１の回路基板の第１および第２の処理システムとの間にＩ／Ｏインタフェースを形成することができる。
【００５０】
図７は、制御ボックス１００の特定の実装において使用され得る特定のセットのインタフェース回路を説明する。しかしながら、特定の実装に適したものであれば、任意の数および種類のインタフェース回路を使用できることを理解されよう。第２の回路基板１２２は、ＬＩＤＡＲ／ＳＯＮＡＲインタフェース４２０、ピトー／スタティックインタフェース４２２、電気光学グリッド基準システム（ＥＯＧＲＳ）受信機インタフェース４２４、および第１の回路基板１２０と通信するための第１の回路基板インタフェース４３２などの複数のインタフェース回路を含む。第２の回路基板１２２はまた、ソフトウェア無線４２６、航法システム１２５、コントローラエリアネットワークバス（ＣＡＮＢＵＳ）４３０、および電源４３４などのインタフェース回路を含む。幾つかの実施形態では、航法システム４２８は、慣性測定センサなどの様々なセンサを含む統合航法センサ群を提供する集積回路である。さらに、第２の回路基板１２２は、ＵＡＶ１０の複数のビークル装置（例えば、ＰＭ装置または二次装置）と動作可能に連通する幾つかのインタフェース回路を含む。ＵＡＶ１０のビークル装置に結合するために、複数のセンサコネクタ４５８が制御装置１００のハウジングから延びている。
【００５１】
図７の特定の例では、１以上のパルス幅変調器（ＰＷＭ）４０２が、第１のセンサコネクタ４５８を介して１以上のサーボ４４２と動作可能に連通している。ＰＷＭサーボコマンドインタフェースが示されているが、他の種類のサーボコマンドインタフェースが使用されてもよい。例えば、アナログ電圧、電流ループ、ＲＳ−４２２、ＲＳ−４８５、ＭＩＬ−ＳＴＤ−１５５３は全て可能なサーボ制御信号の例である。ＧＰＳ受信機４０４は、第２のセンサコネクタ４５８を介して４４４用の１以上のＧＰＳアンテナと動作可能に連通する。ＧＰＳアンテナ４４４は、ＧＰＳセンサ２８の一例である。データリンク受信機４０６は、第３のセンサコネクタ４５８を介して１以上のデータリンクアンテナ４４６と動作可能に連通する。シリアル受信機リンク（ＳＲＸＬ）入力４０８は、第４のセンサコネクタ４５８を介してｐｉｌｏｔ  ｉｎ  ｃｏｎｔｒｏｌ（ＰＩＣ）受信機４４８と動作可能に連通する。プログラマブル電源装置（ＰＳＵ）４１０は、第５のセンサコネクタ４５８を介してサーボ電源４５０と動作可能に連通する。１以上の比較器４１２は、第６のセンサコネクタ４５８を介して１以上の離散入力４５２と動作可能に連通している。１以上のドライバ４１４は、第７のセンサコネクタ４５８を介して１以上の離散出力４５４と動作可能に連通している。１以上のアナログデジタル変換器（ＡＤＣ）４１６は、第８のセンサコネクタ４５８を介して１以上のアナログ入力４５６と動作可能に連通する。
【００５２】
ここで図８を参照すると、第１の処理システム２３０の揮発性プログラマブル論理アレイ３０５および第２の処理システム２３２の不揮発性プログラマブル論理アレイ３２５はそれぞれ複数の論理セル３０７を含む。例示的実施形態では、複数の論理セル３０７の各論理セルは、構成データに少なくとも部分的に基づいて、特定のプロセスを実行するように構成することができる。より具体的には、構成データは、各論理セル３０７に含まれる１以上の論理要素（例えば、論理ゲート、フリップフロップ、ラッチなど）の構成を指定して、特定のプロセスを実行することができる。以下により詳細に説明されるように、特定のプロセスは、限定するものではないが、ビークル制御プロセス、ミッション制御プロセス、またはその両方を含み得る。
【００５３】
ビークル制御プロセスの一例は、航法システム４２８（図７）から受信した１以上の信号をフィルタリングすることを含む。例えば、揮発性プログラマブル論理アレイ３０５、不揮発性プログラマブル論理アレイ３２５、またはその両方の論理セル３０７は、構成データに基づいて構成されてもよい。より具体的には、論理セル３０７は、論理アレイ３０５、３２５のうちの少なくとも１つが航法システム４２８から受信した１以上の信号をフィルタリングするように構成されるように、構成され得る。例示的実施形態では、揮発性プログラマブル論理アレイ３０５、不揮発性プログラマブル論理アレイ３２５、またはその両方は、カルマンフィルタとして構成されてもよい。しかしながら、論理アレイ３０５、３２５は任意の適切なフィルタとして構成されてもよいことを理解されたい。
【００５４】
ビークル制御プロセスの別の例には、自動操縦処理が挙げられる。例えば、処理装置３０２、３２２は、自動操縦プロセスを実装するようにプログラムされてもよく、ＦＰＧＡ３０５、３２５のうちの少なくとも１つは、自動操縦プロセスを実装しながら、処理装置３０２、３２２によって出力される１以上の信号を処理するように構成される。より具体的には、１以上の信号は、ＵＡＶの向きを制御する１以上のサーボモータに対するＰＷＭコマンドを含み得る。このようにして、論理アレイ３０５、３２５は、自動操縦用途に必要とされる幾つかの処理を支援することができる。
【００５５】
ミッション制御プロセスの一例は、対象となる個人の携帯装置（例えば携帯電話）を追跡するために、ＵＡＶの１以上のセンサからのデータを処理することを含む。例えば、ＲＡＭベースのＦＰＧＡ３０５の論理セル３０７は、第１の構成データに基づいて構成することができる。より具体的には、論理セル３０７は、ＲＡＭベースのＦＰＧＡ３０５が、携帯電話の送信信号を検出するように構成された第１のセンサからのデータを処理するように、構成することができる。このようにして、ＲＡＭベースのＦＰＧＡ３０５は、携帯電話の位置を決定するために、送信信号を処理することができる。さらに、モバイル装置の位置が決定されると、ＲＡＭベースのＦＰＧＡ３２５の論理セル３０７は、第１の構成データとは異なる第２の構成データに基づいて再構成され得る。より具体的には、ＲＡＭベースのＦＰＧＡ３２５が画像センサ２０（図３）などの第２のセンサからの画像データを処理するように、論理セル３０７を再構成することができる。このようにして、モバイル装置の現在位置の１以上の画像を取得することができる。フラッシュベースのＦＰＧＡ３２５は、ＲＡＭベースのＦＰＧＡ３０５を参照して上述したのと同じ方法で、第１の構成データに基づいて構成され、続いて第２の構成データに基づいて再構成され得ることを理解されたい。
【００５６】
図９は、論理セル３０７の構成および再構成が起こり得る場合の例を示すグラフである。示されるように、第１の構成データに基づいて論理セル３０７を構成して第１の制御プロセス３１１（例えば、ビークル、ミッション、または両方）を実行することは、離陸の前に起こり得、一方第２の構成データに基づいて論理セル３０７を再構成して第２の制御プロセス３１３（例えば、ビークル、ミッション、または両方）を実行することは、ＵＡＶが空中にいる間に起こり得る。代替の実施形態では、第１の構成データに基づいて論理セル３０７を構成して第１のアプリケーション３１１を実行することはまた、ＵＡＶが空中にいる間に実行され得る。
【００５７】
例示的実施形態では、論理アレイ３０５、３２５の論理セル３０７を再構成することは、ユーザの介入なしに行われてもよい。例えば、一旦論理アレイ３０５、３２５が第１の構成データに基づいて第１のタスク（例えば、位置の決定）を完了すると、第１の処理システム２３０は、第２の構成に基づいて揮発性プログラマブル論理アレイ３０５の論理セル３０７を自動的に再構成して第２のタスク（例えば、画像の取得）を実行できる。より具体的には、処理装置３０２、３２２または論理アレイ３０５、３２５のうちの１つが論理セル３０７を再構成し得る。例えば、第１の処理システム２３０の処理装置３０２は、第１の構成データを第２の構成データで上書きすることができるように、第２の構成データを揮発性プログラマブル論理アレイ３０５に伝達することができる。例示的実施形態では、制御システムの処理システムは、１以上のイベントを検出し、それに応答して対応するプログラマブル論理アレイを再構成するように構成することができる。イベントの例には、第１のセンサ群を使用して標的の位置を決定すること、（例えば地上局または別の航空機からの）制御コマンドを受信すること、処理システムが危険にさらされたことを検出することなどのタスクの完了、またはプログラマブル論理アレイ３０５、３２５の再構成をトリガするために使用できる任意の他の適切なイベントが含まれる。
【００５８】
例示的実施形態では、論理セル３０７は、ユーザの介入に基づいて再構成することができる。例えば、図１０に示されるように、ＵＡＶに対して遠隔にある地上局に位置する操縦士は、コマンドを第１の処理システム２３０に伝達することができる。より具体的には、コマンドは、遠隔コンピューティング装置５００から発生されてもよく、揮発性プログラマブル論理アレイ３０５の論理セル３０７を再構成するために使用される第２の構成データを含んでもよい。示されるように、遠隔コンピューティング装置５００は、１以上のプロセッサ５０２および１以上のメモリ装置５０４を含む。例示的実施形態では、１以上のメモリ装置５０４は、上述のように、論理アレイ３０５、３２５のうちの少なくとも１つの論理セル３０７を再構成するために使用され得る構成データを格納するように構成され得る。代替的または追加的に、メモリ装置５０４は、上述のように、論理アレイ３０５、３２５を構成またはプログラムするために使用され得る第１のデータを格納するように構成され得る。遠隔コンピューティング装置５００はまた、通信インタフェース５０６を含み得る。例示的実施形態では、通信インタフェース５０６は、遠隔コンピューティング装置５００が構成データを制御装置１００（図３）に通信することを可能にする。より具体的には、遠隔コンピューティング装置５００は、通信ネットワークを介して制御装置１００と通信するように構成され得る。
【００５９】
通信ネットワークの例には、例えば、ローカルエリアネットワーク（ＬＡＮ）、ワイドエリアネットワーク（ＷＡＮ）、ＳＡＴＣＯＭネットワーク、ＶＨＦネットワーク、ＨＦネットワーク、Ｗｉ−Ｆｉネットワーク、ＷｉＭＡＸネットワーク、ゲートリンクネットワーク、ＡＲＩＮＣ、ＭＩＬ−ＳＴＤ−１１５３、イーサネット、ＣＡＮ、ＲＳ−４８５、および／またはクラウドコンピューティング環境および／または遠隔コンピューティング装置５００などへのＵＡＶ１０への、および／またはＵＡＶ１０からのメッセージ送信のための任意の他の適切な通信ネットワークが含まれ得る。そのようなネットワーキング環境は、多種多様な通信プロトコルを使用することができる。通信ネットワークは、有線および／または無線通信リンクの任意の組合せを含む。
【００６０】
ここで図８〜図１１を組み合わせて参照すると、ＵＡＶが飛行中に、処理装置３０２、３２２および論理アレイ３０５、３２５がそれぞれ再プログラミングおよび再構成され得る。例えば、第１の処理システム２３０の処理装置３０２は、第１のビークル制御プロセス３８０（例えば自動操縦プロセス）を実装するようにプログラムされてもよい。さらに、第１の処理システム２３０の揮発性プログラマブル論理アレイ３０５は、第１の構成データに基づいて構成され、第１のミッション制御機能３９０（例えば、レーダ検出）を実行してもよい。幾つかの実施形態では、ＵＡＶ１０が地上にある間に、処理装置３０２および揮発性プログラマブル論理アレイ３０５をそれぞれプログラムおよび構成することができる。あるいは、処理装置３０２および論理アレイ３０５のプログラミングおよび構成はそれぞれ、ＵＡＶが空中にいる間に行われてもよい。
【００６１】
処理装置３０２をプログラミングし、揮発性プログラマブル論理アレイ３２５を構成した後、第１の処理システム２３０は、コンピュータ可読命令および構成データを含むオブジェクト４００（例えば実行可能ファイル）を取得することができる。より具体的には、構成データは、論理アレイ３０５を構成するために使用される第１の構成データとは異なる第２の構成データを含み得る。示されるように、オブジェクト４００は、遠隔コンピューティング装置５００のメモリ装置５０４に格納され、任意の適切な通信ネットワークを介して制御システム８０（図３）に通信され得る。あるいは、オブジェクト４００は、第１の処理システム２３０のメモリ３１２（図５）にローカルに格納されてもよい。しかしながら、オブジェクトは制御システム８０（図３）の任意の適切なメモリ装置に記憶されてもよいことを理解されたい。例えば、オブジェクト４００は、第２の処理システム２３２のメモリ３３２に格納されてもよい。
【００６２】
第１の処理システム２３０の処理装置３０２は、少なくとも部分的には、オブジェクト４００に含まれるコンピュータ可読命令に基づいて再プログラムすることができる。より具体的には、処理装置３０２は、第２のビークル制御プロセス３８２を実行するように再プログラムされ得る。例示的実施形態では、第２のビークル制御プロセス３８２は第１のビークル制御プロセス３８０と異なってもよい。例えば、第１のビークル制御プロセス３８０は自動操縦制御プロセスを含むことができ、一方、第２のビークル制御プロセス３８２は航法制御プロセスを含むことができる。
【００６３】
プログラマブル論理アレイ３０５は、構成データに少なくとも部分的に基づいて再構成することができる。より具体的には、プログラマブル論理アレイ３０５は、第２のミッション制御プロセス３９２を実行するように再構成され得る。例示的実施形態では、第２のミッション制御プロセス３９２は第１のミッション制御プロセス３９０と異なってもよい。さらに、再プログラミングおよび再構成は第１の処理システム２３０に関連して説明したが、第２の処理システム２３２も同様に再プログラミングおよび再構成できることを理解されたい。
【００６４】
例示的実施形態では、第１の処理システム２３０が意図しないまたは不正な方法で動作していると判定したことに応答して、オブジェクトが取得され得る。第１の処理システム２３０が危険にさらされたことを検出するために、任意の適切な技術を使用することができる。例えば、第１の処理システム２３０は、疑わしい、未知の、あるいは不正なコードについて命令または構成データを検査するように構成されてもよい。より具体的には、処理装置３０２は、処理装置３０２が疑わしい、未知の、あるいは不正なコードを検出することを可能にする１以上のアプリケーションを実行していてもよい。別の例として、第２の処理システム２３２は、疑わしい挙動に対して第１の処理システム２３０の動作を監視するように構成されてもよい。さらに別の例として、遠隔コンピューティング装置５００は、第１の処理システム２３０が危険にさらされたことを検出するように構成され得る。例えば、遠隔コンピューティング装置５００は、ＵＡＶが予期された方法で送信制御信号に応答していないことを検出することができる。
【００６５】
図１２は、本開示の例示的実施形態による集積回路を再構成するための例示的方法６００の流れ図を示す。方法６００は、例えば、図８を参照して上述した第１または第２の処理システム２３０、２３２を使用して実装することができる。図１２は、図示および説明の目的のために特定の順序で実行されるステップを示している。当業者であれば、本明細書で提供される本開示を使用して、方法６００の様々なステップまたは本明細書に開示する任意の他の方法は、本開示の範囲から逸脱することなく様々な方法で適合、修正、再配置、同時に実行、または修正することができることを理解するであろう。
【００６６】
ステップ６０２において、この方法は、１以上の処理システムによって、第１のセットのコンピュータ可読命令に基づいて集積回路の処理装置を構成することを含む。例示的実施形態では、処理装置は、第１のセットのコンピュータ可読命令に基づいてプログラムされて、１以上のビークルまたはミッション制御プロセスを実行または実装する。
【００６７】
ステップ６０４において、方法６００は、１以上の処理システムによって、第１の構成データに基づいて、集積回路のプログラマブル論理アレイを構成することを含む。より具体的には、プログラマブルゲートアレイの１以上の論理セルは、第１の構成データに基づいて構成されている。例示的実施形態では、プログラマブルゲートアレイは、第１の構成データに基づいて構成されて、ＵＡＶのための１以上のビークルまたはミッション制御プロセスを実装する。
【００６８】
ステップ６０６において、方法６００は、１以上の処理システムによって、第２の構成データと第２のセットのコンピュータ可読命令とを含むオブジェクト（例えば実行可能ファイル）を取得することを含む。例示的実施形態では、オブジェクトは集積回路の１以上のメモリ装置にローカルに格納することができる。より具体的には、オブジェクトはプログラマブル論理アレイに関連するメモリ装置に格納されてもよい。代替として、オブジェクトは、遠隔コンピューティング装置に格納され、通信ネットワークを介して１以上の処理システムに通信されてもよい。
【００６９】
ステップ６０８で、方法６００は、１以上の処理システムによって、第２のセットのコンピュータ可読命令に基づいて処理装置を再プログラミングすることを含む。例示的実施形態では、処理装置が以前に実装するようにプログラムされていたビークルまたはミッション制御プロセスとは異なるビークルまたはミッション制御プロセスを実装するように、処理装置を再プログラムすることができる。
【００７０】
ステップ６１０において、方法６００は、１以上の処理システムによって、第２の構成データに基づいてプログラマブル論理アレイを再構成することを含む。例示的実施形態では、プログラマブル論理アレイが以前に実装するように構成されていたビークルまたはミッション制御プロセスとは異なるビークルまたはミッション制御プロセスを実装するように、処理装置を再構成することができる。
【００７１】
図１３は、本開示の例示的実施形態による無人航空機に搭載された処理システムを再構成するための方法７００の流れ図を示す。方法７００は、例えば、図５を参照して上述した第１の処理システム２３０を使用して実装することができる。図１３は、図示および説明の目的で特定の順序で実行されるステップを示す。当業者であれば、本明細書で提供される本開示を使用して、方法７００の様々なステップまたは本明細書に開示する任意の他の方法は、本開示の範囲から逸脱することなく様々な方法で適合、修正、再配置、同時に実行、または修正することができることを理解するであろう。
【００７２】
ステップ７０２において、方法７００は、１以上の処理システムによって、第１の処理システムが危険にさらされていることを検出することを含む。例示的実施形態では、第１の処理システムを検出することは、ＵＡＶが空中にいる間（例えば、飛行中）に起こり得る。より具体的には、第１の処理システムは自身の危険にさらされた状態を検出するように構成されてもよい。
【００７３】
ステップ７０４で、方法７００は、１以上の処理システムによって、構成データを取得することを含む。例示的実施形態では、構成データは、処理システムのうちの少なくとも１つのプログラマブル論理アレイを再構成するために使用することができる第２の構成データを含むことができる。
【００７４】
ステップ７０６において、方法７００は、１以上の処理システムによって、第２の構成データに基づいてプログラマブル論理アレイを再構成することを含む。実施形態例では、プログラマブル論理アレイが以前に実装するように構成されていたビークルまたはミッション制御プロセスとは異なるビークルまたはミッション制御プロセスを実装するように、プログラマブル論理アレイを再構成することができる。
【００７５】
ステップ７０８において、方法７００は、１以上の処理システムによって、コンピュータ可読命令に基づいて処理装置を再プログラミングすることを含む。例示的実施形態では、処理装置によって実行される場合、コンピュータ可読命令は、処理装置のオペレーティングシステムを修正または更新することができる。より具体的には、再プログラミングされる前に処理装置が実行していた第１のオペレーティングシステムは、第１のオペレーティングシステムとは異なる第２のオペレーティングシステムで上書きされてもよい。例えば、第１のオペレーティングシステムはＬｉｎｕｘベースのオペレーティングシステムであり、第２のオペレーティングシステムはＷｉｎｄｏｗｓベースのオペレーティングシステムであり得る。
【００７６】
ステップ７１０において、ＵＡＶが現在実行しているミッションは継続することができる。あるいは、処理システムは、ミッションを中止し、ＵＡＶの着陸に関連する１以上の制御動作を生成してもよい。より具体的には、１以上の制御動作は、着陸のためにＵＡＶを事前に承認された場所に飛行させることができる。
【００７７】
図１４は、本開示の例示的実施形態による無人航空機に搭載された処理システムを再構成するための別の方法８００の流れ図を示す。方法８００は、例えば、図５を参照して上述した第１の処理システム２３０を使用して実装することができる。図１３は、図示および説明の目的で特定の順序で実行されるステップを示す。当業者であれば、本明細書で提供される本開示を使用して、方法８００の様々なステップまたは本明細書に開示する任意の他の方法は、本開示の範囲から逸脱することなく様々な方法で適合、修正、再配置、同時に実行、または修正することができることを理解するであろう。
【００７８】
ステップ８０２で、方法８００は、１以上の処理システムによって、第１の処理システムが危険にさらされていることを検出することを含む。例示的実施形態では、第１の処理システムを検出することは、ＵＡＶが空中にいる間（例えば、飛行中）に起こり得る。より具体的には、第１の処理システムは自身の危険にさらされた状態を検出するように構成されてもよい。
【００７９】
ステップ８０４で、方法８００は、１以上の処理システムによって、第１の処理システムによって現在実装されている１以上の処理を実行するように、第２の処理システムを再構成することを含む。例えば、１以上のプロセスは、ビークル制御プロセスおよびミッション制御プロセスのうちの少なくとも１つを含み得る。第２の処理システムが再構成されると、方法８００はステップ８０４に進む。
【００８０】
ステップ８０６で、方法８００は、１以上の処理システムによって、第１の処理システムを再起動することを含む。例示的実施形態では、第１の処理システムを再起動することは、第１の処理システム用の電源を入れ直すことによって達成することができる。
【００８１】
ステップ８０８において、方法８００は、１以上の処理システムによって、第２の処理システム上で現在実装されている１以上の処理を実行するように、第１の処理システムを再構成することを含む。第１の処理システムが再構成されると、方法８００はステップ８１０に進む。
【００８２】
ステップ８１０において、方法８００は、第２の処理システム上で実装されている１以上のビークル制御アプリケーションを終了することを含む。
【００８３】
例示的実施形態では、無人航空機（ＵＡＶ）用の制御システム８０（図３）は、１以上の制御ボックス１００を含むことができる。幾つかの実装形態では、追加のコンピューティング容量、冗長性を提供するために、および／または特定のＵＡＶ機能のための検証プロセスを提供するために、複数の制御ボックス１００が提供されてもよい。例えば、特定のビークル機能を実行するために、検証プロセスを実施して、大多数の制御ボックスから多数決一致または同時出力を要求することができる。
【００８４】
幾つかの態様によれば、１以上のプログラマブル論理アレイを再構成することは、複数の制御ボックス１００にわたって実行され得る。例えば、第１の制御ボックス１００における第１の回路基板１２０上のプログラマブル論理アレイ３０５は、第２の制御ボックス１００におけるイベントまたはプロセスに応答して再構成され得る。動的再構成プロセスを利用するそのような実装形態は、システム内の部分的な故障の場合に、重要または重大な機能が利用可能であり続けることを保証するために使用され得る。例えば、第１の制御ボックスによって実行される自動操縦または他の航法システムの故障に応答して、バックアップの自動操縦または航法システムを第２の制御ボックスのプログラマブルゲートアレイ内で実行するように構成することができる。
【００８５】
別の例では、複数の制御ボックス１００を使用して、冗長および／または多数決一致検証プロセスを提供することができる。さらに、コンピューティングリソースが未活用にならないように再構成を用いることができる。例えば、幾つかのＵＡＶ機能は、機能を実行するために、または他の動作をとるために、複数の制御ボックス１００の間で多数決一致を要求するように実施され得る。したがって、開示された技術の一例は、多数決一致を実装する検証プロセスの一部として制御ボックス１００の第１のサブセット（例えば、２つの制御ボックス）を使用することを含む。多数決一致がないような制御ボックス１００のサブセットの出力が一致しない場合、追加の制御ボックス１００（例えば、第３の制御ボックス）は、出力が一致しないプロセスを実行するように構成することができる。次に、多数決一致を決定するために、第３の制御ボックス１００の出力をその他の２つの制御ボックス１００の出力と比較することができる。多数決一致が決定されると、第３の制御ボックス１００は、他のＵＡＶ機能のために元のプロセスに再構成することができる。このようにして、多数決一致のための第３の制御ボックスが必要とされない場合、第３の制御ボックスを使用して様々なビークルおよび／またはミッション制御機能を実行することができる。第３の制御ボックスが必要とされる場合、第３の制御ボックス１００のプログラマブル論理アレイ（例えば、フラッシュベースのＦＰＧＡまたはＲＡＭベースのＦＰＧＡ）は、多数決一致を決定するための出力を生成するように再構成され得る。出力が生成された後、第３の制御ボックスは他のビークルおよび／またはミッション制御機能のために再構成することができる。
【００８６】
開示された技術の幾つかの実施形態は、ハードウェア、ソフトウェア、またはハードウェアとソフトウェアの組合せとして実装され得る。ソフトウェアは、例えばプロセッサをプログラムするためのプロセッサ可読コードとして、プロセッサ内にプロセッサ可読コードとして格納され、実装されてもよい。幾つかの実装形態では、１以上の構成要素を、例えば、他の装置、関連する機能のうちの特定の機能を典型的に実行するプロセッサによって実行可能なプログラムコード（例えば、ソフトウェアまたはファームウェア）の一部、またはより大きなシステムとインタフェースをとる内蔵型ハードウェアまたはソフトウェア構成要素、と共に使用するように設計されたパッケージ機能ハードウェア装置（例えば１以上の電気回路）として、個別にまたは１以上の他の構成要素と組み合わせて実装することができる。各ハードウェア装置は、例えば、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、回路、デジタル論理回路、アナログ回路、離散回路の組合せ、ゲート、あるいはハードウェアの任意の種類またはその組合せを含み得る。代替的にまたは追加的に、これらの構成要素は、様々なミッションおよびビークル制御プロセスを含む、本明細書に記載の機能を実行するようにプロセッサをプログラムするためにプロセッサ可読装置（例えばメモリ）に格納されたソフトウェアを含み得る。
【００８７】
処理装置は、マイクロプロセッサ、マイクロコントローラ、または他の適切な処理装置などの任意の数および種類のプロセッサを含むことができる。メモリ装置は、これらに限られるわけではないが非一時的なコンピュータ可読媒体、ＲＡＭ、ＲＯＭ、ハードドライブ、フラッシュドライブ、または他のメモリ装置など、１以上のコンピュータ可読媒体を含むことができる。
【００８８】
本明細書に記載のメモリブロックおよび他のメモリは、１以上のプロセッサによって実行することができるコンピュータ可読命令を含む、１以上の処理装置または論理アレイによってアクセス可能な情報を格納することができる。命令は、プロセッサによって実行された場合にプロセッサに動作を実行させる命令の任意のセットとすることができる。命令は、任意の適切なプログラミング言語で書かれたソフトウェアであってもよく、またはハードウェアで実装され得る。幾つかの実施形態では、命令は、ビークル機能および／またはミッション機能を制御するための動作、および／またはコンピューティング装置の任意の他の動作もしくは機能などの動作をプロセッサに実行させるために、プロセッサによって実行され得る。
【００８９】
本明細書で説明した技術は、コンピュータベースのシステム、ならびにコンピュータベースのシステムにより行われる動作、およびそれとの間でやりとりされる情報を参照する。当業者であれば、コンピュータベースのシステムの固有の柔軟性によって、構成要素間の多種多様な可能な構成、組合せ、ならびにタスクおよび機能の分割が可能になることを認識するであろう。例えば、本明細書で説明した処理は、単一のコンピューティング装置または組み合わせて働く複数のコンピューティング装置を使用して実装することができる。データベース、メモリ、命令、およびアプリケーションは、単一のシステムに実装してもよいし、複数のシステムに分散してもよい。分散した構成要素は、順次または並列に動作することができる。
【００９０】
様々な実施形態の具体的な特徴が幾つかの図面には示されており、他の図面には示されていないが、これは単に便宜上のものである。本開示の原理によれば、図面の任意の特徴は、その他の図面の任意の特徴と組み合わせて参照および／または特許請求することができる。
【００９１】
本明細書は、特許請求する主題を開示するために例を用いており、最良の形態を含んでいる。また、いかなる当業者も本主題を実施することができるように例を用いており、任意のデバイスまたはシステムを製作し使用し、任意の組み込まれた方法を実行することを含んでいる。開示された技術の特許され得る範囲は、特許請求の範囲によって定義され、当業者が想到する他の例を含むことができる。このような他の例は、それらが特許請求の範囲の文言と異ならない構造要素を含む場合、または特許請求の範囲の文言と実質的な差異を有さない等価の構造要素を含む場合、特許請求の範囲内であることを意図している。
【００９２】
［実施態様１］
無人ビークルの制御システム（８０）であって、
第１のビークル制御プロセス（３８０）を実行するように構成された１以上の処理装置（３０２）と、
前記１以上の処理装置（３０２）と動作可能に連通するフィールドプログラマブルゲートアレイ（ＦＰＧＡ）（３０５、３２５）であって、前記ＦＰＧＡ（３０５、３２５）は、複数の論理セル（３０７）を含み、前記ＦＰＧＡ（３０５、３２５）は、
第１の構成データに従って前記複数の論理セル（３０７）をプログラムし、前記第１の構成データに基づいて第２のビークル制御プロセス（３８２）を実行し、
前記無人ビークルが動作している間に、前記第２のビークル制御プロセス（３８２）を置き換えるための第３のビークル制御プロセスのための第２の構成データを取得し、
前記ＵＡＶが作動している間に、前記第２の構成データに従って前記複数の論理セル（３０７）を再プログラムし、第３のビークル制御プロセスを実行する
ように構成された、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）（３０５、３２５）と
を備えた、制御システム（８０）。
【００９３】
［実施態様２］
前記第２のビークル制御プロセス（３８２）は、第１のビークル航法機能と関連付けられ、
前記第３のビークル制御プロセスは、前記第１のビークル航法機能に関連付けられる、
実施態様１に記載の制御システム（８０）。
【００９４】
［実施態様３］
前記ＦＰＧＡ（３０５、３２５）が前記第３のビークル制御プロセスを実行する場合、前記ＦＰＧＡ（３０５、３２５）は、前記無人航空機の航法システムから受信した１以上の信号をフィルタリングする、実施態様１に記載の制御システム（８０）。
【００９５】
［実施態様４］
前記第２のビークル制御プロセス（３８２）は、第１のビークル航法機能と関連付けられ、
前記ＦＰＧＡ（３０５、３２５）は、前記第２のビークル制御プロセス（３８２）に従って前記無人ビークルの航法制御を可能にするように構成され、
前記ＦＰＧＡ（３０５、３２５）は、前記第２のビークル制御プロセス（３８２）に従って前記無人ビークルの航法制御を中止し、前記第３のビークル制御プロセスに前記無人ビークルの航法制御を移すように構成される、
実施態様１に記載の制御システム（８０）。
【００９６】
［実施態様５］
前記１以上の処理装置（３０２）は１以上の第１の処理装置であり、前記ＦＰＧＡ（３０５、３２５）は第１のＦＰＧＡであり、
前記１以上の第１の処理装置および前記第１のＦＰＧＡは、第１の集積回路内に形成されており、
前記制御システム（８０）は、第２のＦＰＧＡを含む第２の集積回路をさらに含み、前記第２のＦＰＧＡは複数の論理セル（３０７）を含む、
実施態様１に記載の制御システム（８０）。
【００９７】
［実施態様６］
前記第１のＦＰＧＡはＲＡＭベースのＦＰＧＡであり、
前記第２のＦＰＧＡはフラッシュベースのＦＰＧＡである、
実施態様４に記載の制御システム（８０）。
【００９８】
［実施態様７］
前記１以上の第１の処理装置は、前記第１のビークル制御プロセス（３８０）に対する不正な変更を検出するように構成された、実施態様５に記載の制御システム（８０）。
【００９９】
［実施態様８］
前記１以上の第２の処理装置は、前記第１のビークル制御プロセス（３８０）を実装するように構成され、
前記１以上の第２の処理装置を構成した後、前記１以上の第１の処理装置が再起動され、
前記１以上の第１の処理装置を再起動した後、前記１以上の処理装置（３０２）は前記第１のビークル制御プロセス（３８０）を実装するように構成され、
前記第１の処理装置を再構成した後、前記１以上の第２の処理装置によって実行された前記１以上のプロセスが終了する、
実施態様５に記載の制御システム（８０）。
【０１００】
［実施態様９］
第１の内部を画定する第１のハウジングと、
前記第１の内部内に配置された第１の回路基板（１２０）であって、前記第１の回路基板（１２０）は前記１以上の処理装置（３０２）を含む、第１の回路基板（１２０）と、
第２の内部を画定する第２のハウジングと、
前記第２のハウジング内に配置された第２の回路基板（１２２）であって、前記ＦＰＧＡ（３０５、３２５）を含む、第２の回路基板（１２２）と
をさらに備えた、実施態様１に記載の制御システム（８０）。
【０１０１】
［実施態様１０］
無人航空機（１０）であって、
第１の処理システム（２３０）および第２の処理システム（２３２）を含む回路基板（１２０、１２２）であって、前記第１および第２の処理システム（２３０、２３２）は、それぞれ処理装置と、複数の論理セル（３０７）を含むプログラマブル論理アレイ（３０５）とを含み、前記第１および第２の処理システム（２３０、２３２）の少なくとも一方は、前記無人航空機（１０）が飛行中に動作を実行するように構成され、前記動作は、
前記無人航空機（１０）が飛行中に、前記第１の処理システム（２３０）が危険にさらされていることを検出することと、
前記第１の処理システム（２３０）が危険にさらされていることを検出することに応答して、前記無人航空機（１０）が飛行中に、構成データを取得することと、
前記無人航空機（１０）が飛行中に、前記構成データに基づいて前記第１の処理システム（２３０）の前記プログラマブル論理アレイ（３０５）を再構成することと
を含む、回路基板（１２０、１２２）
を備えた、無人航空機（１０）。
【０１０２】
［実施態様１１］
前記取得することは、前記構成データおよびコンピュータ可読命令を含むオブジェクト（４００）を取得することをさらに含む、実施態様１０に記載の無人航空機（１０）。
【０１０３】
［実施態様１２］
前記動作は、前記無人航空機（１０）が飛行中に、前記コンピュータ可読命令に基づいて、前記第１の処理システム（２３０）の前記処理装置を再プログラミングすることをさらに含む、実施態様１１に記載の無人航空機（１０）。
【０１０４】
［実施態様１３］
前記構成データおよびコンピュータ可読命令は、前記第１および第２の処理システム（２３０、２３２）のうちの少なくとも一方に関連付けられたメモリ装置にローカルに格納されているオブジェクト（４００）内に含まれる、実施態様１１に記載の無人航空機（１０）。
【０１０５】
［実施態様１４］
前記構成データおよびコンピュータ可読命令は、通信ネットワークを介して前記無人航空機（１０）に通信可能に結合された遠隔コンピューティング装置（５００）から取得されるオブジェクト（４００）内に含まれる、実施態様１１に記載の無人航空機（１０）。
【０１０６】
［実施態様１５］
前記プログラマブル論理アレイ（３０５）は、ＲＡＭベースのフィールドプログラマブルゲートアレイまたはフラッシュベースのプログラマブルゲートアレイのうちの少なくとも１つである、実施態様１０に記載の無人航空機（１０）。
【０１０７】
［実施態様１６］
前記再プログラミングに続いて、前記第１の処理システム（２３０）の前記処理装置が第１のオペレーティングシステムで構成されており、
前記再プログラミングは、前記第１のオペレーティングシステムを、前記第１のオペレーティングシステムとは異なる第２のオペレーティングシステムで上書きすることを含む、
実施態様１２に記載の無人航空機（１０）。
【０１０８】
［実施態様１７］
集積回路を再構成するための方法であって、
１以上の処理システム（２３０、２３２）によって、コンピュータ可読命令の第１のセットに基づいて集積回路の処理装置をプログラミングするステップと、
１以上の処理システム（２３０、２３２）によって、第１の構成データに基づいて、前記集積回路のプログラマブル論理アレイ（３０５）を構成するステップと、
前記１以上の処理システム（２３０、２３２）によって、第２の構成データと第２のセットのコンピュータ可読命令とを含むオブジェクト（４００）を取得するステップであって、前記第２の構成データは前記第１の構成データとは異なり、前記第２のセットのコンピュータ可読命令は前記第１のセットのコンピュータ可読命令と異なる、取得するステップと、
前記１以上の処理システム（２３０、２３２）によって、前記第２のセットのコンピュータ可読命令に基づいて前記処理装置を再プログラミングするステップと、
前記１以上の処理システム（２３０、２３２）によって、前記第２の構成データに基づいて前記プログラマブル論理アレイ（３０５）を再構成するステップと
を含む、方法。
【０１０９】
［実施態様１８］
前記１以上の処理システム（２３０、２３２）が前記プロセッサを含む、実施態様１７に記載の方法。
【０１１０】
［実施態様１９］
前記１以上の処理システム（２３０、２３２）は前記プログラマブル論理アレイ（３０５）を含む、実施態様１７に記載の方法。
【０１１１】
［実施態様２０］
前記プログラマブル論理アレイ（３０５）は、ＲＡＭベースのフィールドプログラマブルゲートアレイを含む、実施態様１７に記載の方法。
【符号の説明】
【０１１２】
１０  無人航空機、１２  二次装置、１４  推進移動（ＰＭ）装置、２０  画像センサ、２２  レーダセンサ、２４  ＬＩＤＡＲセンサ、２６  ソナーセンサ、２８  ＧＰＳセンサ、３０  推力装置、３２  操縦翼面、３４  位置決定システム、３６  ペイロード送達システム、３８  通信システム、５０  制御システム、６０  バックプレーン、６１  ＣＰＵカード、６２  共処理カード、６３  アドオンカード、６４  アドオンカード、６５  アドオンカード、６６  スイッチ、７１  第１のカードスロット、７２  第２のカードスロット、７３  カードスロット、７４  カードスロット、７５  カードスロット、８０  制御システム、１００  制御ボックス、１１０  ハウジング、１１８  ヒートシンク、１２０  第１の回路基板、１２２  第２の回路基板、１２４  Ｉ／Ｏコネクタ、１２５  航法システム、１２６  Ｉ／Ｏコネクタ、２３０  第１の処理システム、２３２  第２の処理システム、２３４  メモリブロック、２３８  Ｉ／Ｏコネクタ、３０２  処理装置、３０４  プログラマブル論理回路、３０５  プログラマブル論理アレイ，ＦＰＧＡ、３０６  アプリケーション処理装置（ＡＰＵ）、３０７  論理セル、３０８  画像処理装置（ＧＰＵ）、３１０  リアルタイム処理装置（ＲＰＵ）、３１１  第１の制御プロセス、３１２  メモリ、３１３  第２の制御プロセス、３１４  通信インタフェース、３１６  スイッチファブリック、３２２  処理装置、３２４  プログラマブル論理回路、３２５  プログラマブル論理アレイ，ＦＰＧＡ、３３２  メモリ、３３４  通信インタフェース、３３６  スイッチファブリック、３８０  第１のビークル制御プロセス、３８２  第２のビークル制御プロセス、３９０  第１のミッション制御プロセス、３９２  第２のミッション制御プロセス、４００  オブジェクト、４０４  ＧＰＳ受信機、４０６  データリンク受信機、４０８  入力、４１２  比較器、４１４  ドライバ、４２０  ＳＯＮＡＲインタフェース、４２２  スタティックインタフェース、４２４  受信機インタフェース、４２６  ソフトウェア無線、４２８  航法システム、４３２  第１の回路基板インタフェース、４３４  電源、４４２  サーボ４４４  ＧＰＳアンテナ、４４６  データリンクアンテナ、４４８  受信機、４５０  サーボ電源、４５２  離散入力、４５４  離散出力、４５６  アナログ入力、４５８  センサコネクタ、５００  遠隔コンピューティング装置、５０２  プロセッサ、５０４  メモリ装置、５０６  通信インタフェース、６００  方法
【図１】
2019142484.tif 000003
【図２】
2019142484.tif 000004
【図３】
2019142484.tif 000005
【図４】
2019142484.tif 000006
【図５】
2019142484.tif 000007
【図６】
2019142484.tif 000008
【図７】
2019142484.tif 000009
【図８】
2019142484.tif 000010
【図９】
2019142484.tif 000011
【図１０】
2019142484.tif 000012
【図１１】
2019142484.tif 000013
【図１２】
2019142484.tif 000014
【図１３】
2019142484.tif 000015
【図１４】
2019142484.tif 000016
【外国語明細書】
2019142484000001.pdf