(57)【要約】【課題】本発明は、量子フィードバックにおけるレイテンシを減少させることを目的とする。【解決手段】技術は、概してタイミング遅延を有する制御パルスを出力する、パルス生成コンポーネントを対象とする。キュービット状態決定コンポーネントは、アナログ・カーネルを使用して、キュービット状態に対応する結果を取得するためにキュービット信号に対して線形フィルタリング動作を実行し（例えば、乗算および積分し）、キュービット状態に対応する測定成果結果を判定するために結果を閾値と比較する。条件付きゲート・コンポーネントは、測定成果結果に基づいて制御パルスを条件付きでゲーティングする。【選択図】図８
2021513135.tif 000002
【特許請求の範囲】
【請求項１】
システムであって、
タイミング遅延を有する制御パルスを出力する、パルス生成コンポーネントと、
アナログ・カーネルを使用して、キュービット状態に対応する結果を取得するためにキュービット信号に対して線形フィルタリング動作を実行し、前記キュービット状態に対応する測定成果結果を判定するために前記結果を閾値と比較する、キュービット状態決定コンポーネントと、
前記測定成果結果に基づいて前記制御パルスを条件付きでゲーティングする、条件付きゲート・コンポーネントと、
を備える、システム。
【請求項２】
前記キュービット状態決定コンポーネントが、前記キュービット信号を前記アナログ・カーネルからの値と乗算して乗算結果を取得することによって、前記線形フィルタリング動作を実行し、前記乗算結果を積分して積分結果を求め、前記測定成果結果を判定するために前記積分結果を前記閾値と比較する、請求項１に記載のシステム。
【請求項３】
前記キュービット状態決定コンポーネントが、キャパシタ積分器に連結されたマイクロ波ミキサ・コンポーネントと、前記測定成果結果を判定するために前記結果を前記閾値と比較するアナログ比較器コンポーネントと、を含む、請求項１に記載のシステム。
【請求項４】
前記制御パルスが、キュービット・リセット・パルスを含む、請求項１に記載のシステム。
【請求項５】
キュービット状態決定コンポーネントが、前記キュービット信号を提供するキュービットに近似したクライオスタットに位置する、請求項１に記載のシステム。
【請求項６】
将来のパルスを更新する制御ハードウェアを含むフィードバック経路をさらに含む、請求項１に記載のシステム。
【請求項７】
前記制御ハードウェアが、フィールド・プログラマブル・ゲート・アレイにおいて実施される、請求項６に記載のシステム。
【請求項８】
分岐の投機的実行に対応する追加制御パルスと、前記追加制御パルスをゲーティングする、別の条件付きゲート・コンポーネントと、をさらに備える、請求項１に記載のシステム。
【請求項９】
前記条件付きゲート・コンポーネントが、アナログ制御位相シフタに連結されるアナログ・スイッチを含む、請求項１に記載のシステム。
【請求項１０】
方法であって、
プロセッサを含む量子コンピュータによって、アナログ・スイッチにおいて受信されるパルスを生成することと、
キュービット信号をアナログ・カーネル値で乗算して乗算結果を取得すること、前記乗算結果を積分して積分結果を求めること、および前記キュービット状態に対応する測定成果結果を判定するために前記積分結果を閾値と比較することを含む、前記量子コンピュータによってキュービット状態を判定することと、
前記量子コンピュータによって、前記測定成果結果に基づいて前記パルスをゲーティングするように前記アナログ・スイッチを動作させることと、
を含む、方法。
【請求項１１】
前記パルスが、キュービット・リセット・パルスを含み、前記測定成果結果に基づいてキュービット制御パルスをゲーティングするように前記アナログ・スイッチを動作させることが、前記キュービット・リセット・パルスをブランキングするように前記アナログ・スイッチを動作させることを含む、請求項１０に記載の方法。
【請求項１２】
前記アナログ・スイッチを前記動作させることが、前記キュービット状態をリセットするためにマイクロ波パルスを送信することを含む、請求項１０に記載の方法。
【請求項１３】
前記量子コンピュータによって、第２のアナログ・スイッチにおいて第２のパルスを受信することと、
前記量子コンピュータによって、前記測定成果結果または別の測定成果結果に基づいて前記第２のパルスをゲーティングするように前記第２のアナログ・スイッチを動作させることと、
をさらに含む、請求項１０に記載の方法。
【請求項１４】
前記アナログ・スイッチが、前記パルスに対応する１つの投機的入力および別のパルスに対応する別の投機的入力を有する２路アナログ・スイッチであり、前記測定成果結果に基づいて前記パルスをゲーティングするように前記アナログ・スイッチを前記動作させることが、他のパルスの代わりに前記パルスを出力することを含む、請求項１０に記載の方法。
【請求項１５】
前記量子コンピュータによって、デジタル制御ハードウェアに連結されたアナログ・デジタル変換器において前記キュービット信号を受信することをさらに含む、請求項１０に記載の方法。
【請求項１６】
システムであって、
アナログ・スイッチにおいて受信されるべきパルスを生成するパルス生成回路と、
キュービット信号をアナログ・カーネルにより乗算して乗算結果を取得すること、前記乗算結果を積分して積分結果を求めること、および前記キュービット状態に対応する測定成果結果を判定するために前記積分結果を閾値と比較することを含む、実験からのキュービット状態を判定するキュービット状態判定回路と、
前記測定成果結果に基づいて前記アナログ・スイッチにおいて前記パルスをゲーティングするゲート回路と、
を備える、システム。
【請求項１７】
前記パルスが、キュービット・リセット・パルスを含み、前記測定成果結果に基づいて前記パルスをゲーティングする前記ゲート回路が、前記キュービット・リセット・パルスをブランキングするように前記アナログ・スイッチを動作させる、請求項１６に記載のシステム。
【請求項１８】
前記ゲート回路が、前記キュービット状態をリセットするためにマイクロ波パルスを送信するように前記アナログ・スイッチを動作させる、請求項１６に記載のシステム。
【請求項１９】
第２のアナログ・スイッチにおいて受信される第２のパルスをさらに含み、前記測定成果結果に基づいて前記第２のパルスをゲーティングするように前記第２のアナログ・スイッチを動作させるゲート回路をさらに含む、請求項１６に記載のシステム。
【請求項２０】
前記アナログ・スイッチが、前記パルスに対応する１つの投機的入力および別のパルスに対応する別の投機的入力を有する２路アナログ・スイッチであり、前記ゲート回路が、他のパルスの代わりに前記パルスを出力することによって、前記測定成果結果に基づいて前記パルスをゲーティングする、請求項１６に記載のシステム。
【請求項２１】
方法であって、
タイミング遅延を有する制御パルスを出力することと、
アナログ・カーネルを使用して、キュービット状態に対応する結果を取得するためにキュービット信号に対して線形フィルタリング動作を実行すること、および前記キュービット状態に対応する測定成果結果を判定するために前記結果を閾値と比較することを含む、キュービットの状態に対応する測定成果結果を判定することと、
前記測定成果結果に基づいて前記制御パルスを条件付きでゲーティングすることと、
を含む、方法。
【請求項２２】
分岐の投機的実行に対応する追加制御パルスを出力することと、前記追加制御パルスを条件付きでゲーティングすることと、をさらに含む、請求項２１に記載の方法。
【請求項２３】
システムであって、
アナログ・スイッチにおいて受信されるべきパルスを生成するパルス生成コンポーネントと、
キュービット信号をアナログ・カーネルにより乗算して乗算結果を取得し、前記乗算結果を積分して積分結果を求め、キュービット状態に対応する測定成果結果を判定するために前記積分結果を閾値と比較する、キュービット状態判定コンポーネントと、
前記測定成果結果に基づいて前記アナログ・スイッチにおいて前記パルスをゲーティングするゲート・コンポーネントと、
を備える、システム。
【請求項２４】
前記キュービット状態決定コンポーネントが、キャパシタ積分器に連結されたマイクロ波ミキサ・コンポーネントと、前記測定成果結果を判定するために前記積分結果を前記閾値と比較するアナログ比較器コンポーネントと、を含む、請求項２３に記載のシステム。
【請求項２５】
前記ゲート・コンポーネントが、アナログ制御位相シフタに連結されるアナログ・スイッチを含む、請求項２３に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、量子コンピューティングに関し、より詳細には、アナログ積分および制御パルス・ゲーティングを用いた高速量子フィードバックに関する。
【背景技術】
【０００２】
量子コンピューティングは、情報を符号化するために、トランジスタに基づく２値デジタル技術ではなく量子物理学を活用する。例えば、量子コンピューティング・デバイスは、量子物理学の重ね合わせ原理、および量子物理学のもつれ原理に従って動作する量子ビット（例えば、キュービット）を活用し得る。量子物理学の重ね合わせ原理は、各キュービットが、「１」の値および「０」の値の両方を同時に表すことを可能にする。量子物理学状態のもつれ原理は、重ね合わせにあるキュービットが、互いに相関することを可能にする。例えば、第１の値の状態（例えば、「１」の値または「０」の値）が、第２の値の状態に依存し得る。このように、量子コンピューティング・デバイスは、情報を符号化するために、トランジスタに基づく２値デジタル技術ではなくキュービットを活用し得る。キュービット状態が判定されるやり方は、後続の制御パルスの生成を制御し、実験からのアナログ信号をデジタル化することであり、それによって、制御ハードウェアは、デジタル領域においてキュービット状態を判定し得る。量子フィードバックにおけるレイテンシは、誤り訂正に関する重要な因子であるため、専用のアナログ・デジタル変換器およびデジタル・アナログ変換器などを用いて、フィールド・プログラマブル・ゲート・アレイ（ＦＰＧＡ）における最適デジタル・パイプライン方式によってレイテンシを最小化するために、多くの研究が行われている。例は、“Low-Latency Digital Signal Processing for Feedback and Feedforward in Quantum Computing and Communication,” Yves Salathe,et al. (2017)、“Digital Feedback in Superconducting Quantum Circuits,” Riste ＆ DiCarlo (2015)、“An Experimental Microarchitecture for a Superconducting Quantum Processor,” Fu et al. (2017)、“Hardware for Dynamic Quantum Computing,” Colm Ryan et al. (2017)などに見られ得る。このように、量子フィードバックにおけるレイテンシを減少させることについて、どのような改善も望ましい。
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】“Low-Latency Digital Signal Processing for Feedback and Feedforward in Quantum Computing and Communication,” Yves Salathe, et al. (2017)
【非特許文献２】“Digital Feedback in Superconducting Quantum Circuits,” Riste ＆ DiCarlo(2015)
【非特許文献３】“An Experimental Microarchitecture for a Superconducting Quantum Processor,” Fu et al.(2017)
【非特許文献４】“Hardware for Dynamic Quantum Computing,” Colm Ryan et al. (2017)
【発明の概要】
【発明が解決しようとする課題】
【０００４】
本発明は、量子フィードバックにおけるレイテンシを減少させることを目的とする。
【課題を解決するための手段】
【０００５】
以下では、発明の１つまたは複数の実施形態の基本的理解を提供するための概要を提示する。本概要は、重要なもしくは重大な要素を識別するように、または特定の実施形態のいかなる範囲、もしくは特許請求の範囲のいかなる範囲も描写するように意図されない。その唯一の目的は、後で提示される、より詳細な説明の前置きとして、簡略化した形態で概念を提示することである。本明細書に説明される１つまたは複数の実施形態において、アナログ積分および制御パルス・ゲーティングを用いた高速量子フィードバックのためのデバイス、システム、コンピュータ実施方法、装置、またはコンピュータ・プログラム製品、あるいはそれらの組み合わせが説明されている。
【０００６】
１つの態様によれば、システムは、タイミング遅延を有する制御パルスを出力する、パルス生成コンポーネントを含む。システムは、アナログ・カーネルを使用して、キュービット状態に対応する結果を取得するためにキュービット信号に対して線形フィルタリング動作を実行し、キュービット状態に対応する測定成果結果を判定するために結果を閾値と比較する、キュービット状態決定コンポーネントをさらに含む。システムは、測定成果結果に基づいて制御パルスを条件付きでゲーティングする、条件付きゲート・コンポーネントをさらに含む。キュービット状態決定コンポーネントは、キャパシタ積分器に連結されたマイクロ波ミキサ・コンポーネントと、測定成果結果を判定するために結果を閾値と比較するアナログ比較器コンポーネントと、を含み得る。キュービット状態決定コンポーネントは、キュービット信号を提供するキュービットに近似したクライオスタットに位置し得る。アナログ領域においてそれらを含むシステム・コンポーネントは、レイテンシを減少させる。
【０００７】
別の態様によれば、方法は、アナログ・スイッチにおいて受信されるパルスを生成することと、キュービット信号をアナログ・カーネル値で乗算して乗算結果を取得すること、乗算結果を積分して積分結果を求めること、およびキュービット状態に対応する測定成果結果を判定するために積分結果を閾値と比較することを含む、キュービット状態を判定することと、を含む。方法は、測定成果結果に基づいてパルスをゲーティングするようにアナログ・スイッチを動作させることをさらに含む。方法は、量子コンピュータによって、第２のアナログ・スイッチにおいて第２のパルスを受信することと、量子コンピュータによって、測定成果結果または別の測定成果結果に基づいて第２のパルスをゲーティングするように第２のアナログ・スイッチを動作させることと、をさらに含み得る。少なくとも一部アナログ領域において実行される方法は、レイテンシを減少させる。
【０００８】
さらに別の態様によれば、システムは、アナログ・スイッチにおいて受信されるべきパルスを生成するパルス生成回路を含む。システムは、キュービット信号をアナログ・カーネルにより乗算して乗算結果を取得すること、乗算結果を積分して積分結果を求めること、およびキュービット状態に対応する測定成果結果を判定するために積分結果を閾値と比較することを含む、実験からのキュービット状態を判定するキュービット状態判定回路をさらに含む。システムは、測定成果結果に基づいてアナログ・スイッチにおいてパルスをゲーティングするゲート回路をさらに含む。アナログ・スイッチは、パルスに対応する１つの投機的入力および別のパルスに対応する別の投機的入力を有する２路アナログ・スイッチであってもよく、ゲート回路は、他のパルスの代わりにパルスを出力することによって、測定成果結果に基づいてパルスをゲーティングする。アナログ領域においてそれらを含むシステム回路は、レイテンシを減少させる。
【０００９】
別の態様によれば、方法は、タイミング遅延を有する制御パルスを出力することと、アナログ・カーネルを使用して、キュービット状態に対応する結果を取得するためにキュービット信号に対して線形フィルタリング動作を実行すること、およびキュービット状態に対応する測定成果結果を判定するために結果を閾値と比較することを含む、キュービットの状態に対応する測定成果結果を判定することと、を含む。方法は、測定成果結果に基づいて制御パルスを条件付きでゲーティングすることをさらに含む。少なくとも一部アナログ領域において実行される方法は、レイテンシを減少させる。
【００１０】
さらに別の態様によれば、システムは、アナログ・スイッチにおいて受信されるべきパルスを生成するパルス生成コンポーネントを含む。システムは、キュービット信号をアナログ・カーネルにより乗算して乗算結果を取得し、乗算結果を積分して積分結果を求め、キュービット状態に対応する測定成果結果を判定するために積分結果を閾値と比較する、キュービット状態判定コンポーネントをさらに含む。システムは、測定成果結果に基づいてアナログ・スイッチにおいてパルスをゲーティングするゲート・コンポーネントをさらに含む。システムは、レイテンシを減少させる。
【図面の簡単な説明】
【００１１】
【図１】本明細書に説明される１つまたは複数の実施形態による、アナログ決定およびスイッチング・コンポーネントをパイプライン構成に含む、例としての非限定的システムのブロック図を示す。
【図２】本明細書に説明される１つまたは複数の実施形態による、アナログ決定およびスイッチング・コンポーネントをパイプライン構成に含む、例としての代替非限定的システムのブロック図を示す。
【図３】本明細書に説明される１つまたは複数の実施形態による、２階層アナログ決定およびスイッチング・コンポーネントを２階層パイプライン構成に含む、例としての非限定的システムのブロック図を示す。
【図４】本明細書に説明される１つまたは複数の実施形態による、位相シフタを含む、アナログ決定およびスイッチング・コンポーネントを含む、例としての非限定的システムのブロック図を示す。
【図５】本明細書に説明される１つまたは複数の実施形態による、単一階層パイプラインにおける例としてのパルス・シーケンスのタイミング図を示す。
【図６】本明細書に説明される１つまたは複数の実施形態による、実行時に（例えば、図５の）パルス・シーケンスを生成し得るコードに対応するフロー図である。
【図７】本明細書に説明される１つまたは複数の実施形態による、２階層パイプラインにおける例としてのパルス・シーケンスのタイミング図を示す。
【図８】本明細書に説明される１つまたは複数の実施形態による、例としての非限定的システムのブロック図を示す。
【図９】本明細書に説明される１つまたは複数の実施形態による、例としての非限定的方法のフロー図を示す。
【図１０】本明細書に説明される１つまたは複数の実施形態による、例としての機械製品の動作に対応する図を示す。
【図１１】本明細書に説明される１つまたは複数の実施形態が容易にされ得る、例としての非限定的な動作環境のブロック図を示す。
【発明を実施するための形態】
【００１２】
以下の詳細な説明は単なる例示であり、実施形態または実施形態の適用もしくは使用あるいはその両方を限定するように意図されない。さらに、前述の背景技術もしくは発明の概要の項、または詳細な説明の項で提示されるいかなる明示的または暗示的な情報にも拘束される意図はない。
【００１３】
１つまたは複数の実施形態が、ここで図面を参照して説明され、類似の参照番号は、全体を通して類似の要素を参照するために使用される。以下の説明では、説明のために、１つまたは複数の実施形態のより完全な理解をもたらすために、多数の具体的詳細が記載されている。しかしながら、様々な場合において、１つまたは複数の実施形態がこれらの特定の詳細なしに実施され得ることは明白である。
【００１４】
量子コンピューティングは、トランジスタに基づく２値デジタル技術とは対照的に、情報を符号化するために量子物理学を活用する。例えば、量子コンピュータは、量子物理学の重ね合わせ原理、および量子物理学のもつれ原理に従って動作する量子ビット（例えば、キュービット）を活用し得る。量子物理学の重ね合わせ原理は、各キュービットが、「１」の値および「０」の値の両方を同時に表し得ることを述べる。量子物理学のもつれ原理は、重ね合わせにあるキュービットが、互いに相関し得ることを述べる。例えば、第１の値の状態（例えば、「１」の値または「０」の値）が、第２の値の状態に依存し得る。このように、量子コンピュータは、情報を符号化するためにキュービットを活用し得る。
【００１５】
量子コンピューティングの既知の特性は、量子コンピューティング回路内のキュービットまたはキュービットのサブセットの状態を測定することが、測定されない場合の成果に対して回路の成果を変更することである。結果として、キュービットの測定は、概して不可逆プロセスである。
【００１６】
量子フィードバックにおける問題は、レイテンシである。本明細書に説明される解決策は、従来の方法よりも比較的はるかに低いレイテンシを有する高速量子フィードバック、例えば、アクティブなキュービットのリセットを実行するための技術である。概して、本明細書に説明される解決策は、実験から生じるアナログ信号をデジタル化するのではなく、アナログ領域において動作することに基づく。技術は、制御（例えば、「ビット反転」または「ｘ−パイ」）パルスを生成するように、かつ実験に近似したアナログ・ミキサおよび積分器を使用してキュービット状態決定を行い、例えば、アナログ・スイッチを介して制御パルスをゲーティングするように動作する。利点は、レイテンシを追加する、アナログ・デジタル変換、デジタル信号のシリアル化およびデシリアル化、ならびにデジタル・フィルタリングが回避されることである。レイテンシをさらに減少させるために、アナログ回路が極低温対応可能にされている場合、光速遅延を最小化するためにクライオスタット内部にアナログ回路を位置させることが実現可能である。そうでない場合、アナログ回路は、クライオスタットの上など、クライオスタットの非常に近くに置かれ得る。任意のイベントにおいて、状態決定が、キュービットに可能な限り近いアナログ領域において行われる。
【００１７】
本明細書に説明される実施形態は、アナログ積分および制御パルス・ゲーティングを用いた高速量子フィードバックのためのシステム、コンピュータ実施方法、およびコンピュータ製品を含む。技術の一部は、例えば、量子アセンブリ言語（ＱＡＳＭ）ソフトウェア・コードを用いることによって、実施され得る。
【００１８】
図１は、例えば、他の動作とタイミングを合わせた入力パルスなどを有することによって他の動作の中でパイプラインとして動作する、概して量子コンピューティング・マシンおよびその他の回路の形態で、例としての非限定的システム１００のブロック図を示す。システム１００は、本質的には高度に技術的であり、抽象的ではなく、かつ人間による一連の精神的行為として実行され得ない、問題を解決するためのハードウェアまたはソフトウェアあるいはその両方を活用し得る。さらに、ある実施形態において、実行されるプロセスのいくつかが、機械学習に関する定義済みタスクを実行するための１つまたは複数の専用コンピュータ（例えば、１つまたは複数の専用処理ユニット、専用コンピュータ）によって実行され得る。システム１００またはシステム１００のコンポーネントあるいはその両方が、上述した技術、コンピュータ・アーキテクチャなどにおける進歩を通して生じる新たな問題を解決するために活用され得る。システム１００の１つまたは複数の実施形態は、量子回路システム、量子プロセッサ・システム、量子コンピューティング・システム、人工知能システム、医療および材料システム、サプライ・チェーンおよびロジスティック・システム、金融サービス・システム、または他のシステム、あるいはそれらの組み合わせに対する技術的改善を提供し得る。システム１００の１つまたは複数の実施形態は、また、量子プロセッサの処理性能を改善すること、量子プロセッサの処理効率を改善すること、量子プロセッサの処理特性を改善すること、量子プロセッサのタイミング特性を改善すること、または量子プロセッサの電力効率を改善すること、あるいはそれらの組み合わせによって、量子プロセッサ（例えば、超伝導量子プロセッサ）に対する技術的改善を提供し得る。
【００１９】
図１の例は、可能な範囲でレイテンシが最小化される、レイテンシが著しいフィードバック・ループのコンポーネント１０２と、レイテンシが重大でないフィードバック・ループのコンポーネント１０４と、を含む。図１において、破線矢印は、非常に低いレイテンシが望ましい（フィードバック・ループのレイテンシを可能な限り短くすることが、多くの周知の理由のため望ましい）アナログ・フィードバック・ループを表し、実線矢印は、レイテンシが重大でない（制御された遅延タイミングによって、即ち、基本的にはパイプライン方式によって、高いレイテンシが基本的に見えなくされ得る）経路を表すことに留意されたい。読み出し刺激（ＤＡＣ）１０６が、キュービット１０８に提供され、キュービット１０８は、アナログ・ミキシング／積分／比較コンポーネント１１０において受信される実験成果を表すアナログ信号波形を生成する。
【００２０】
パイプライン方式の一部として、キュービット制御ＤＡＣ１１２は、無条件で制御パルスを生成し、制御パルスは、アナログ・スイッチ１１４において受信される。このようにして、制御パルスは、タイミング調整され、または「パイプラインに投入」される。パイプラインは、固定された遅延に対して、およびしたがって適切な遅延によって、既に事前較正され、制御パルスは、パイプラインにおいて正しいタイミング・スロットに投入されることに留意されたい。
【００２１】
さらに、デジタル・アナログ変換器を有するアナログ・カーネル１１６は、線形フィルタリング動作を実行するように動作する。この目的を達成するために、１つの実施形態において、アナログ・カーネル１１６は、アナログ・ミキシング／積分／比較コンポーネント１１０によって受信され、キュービット信号と（例えば、ドット積として）乗算される値を提供する。乗算結果は積分され、その結果は閾値と比較される。
【００２２】
比較の結果は、測定されたキュービット状態、０または１に対応し、アナログ・スイッチを制御するために使用される。例えば、制御パルスがキュービット・リセット・パルスであり、かつ積分結果が閾値を超える場合、制御パルスは、キュービット状態を０にリセットするアナログ・スイッチ１１４によって、ゲーティングされて通される。１つの実施形態において、キュービットが「１」状態にあると測定される場合、アナログ・スイッチは、「０」状態に戻るようにマイクロ波リセット・パルスにおいてゲーティングする。そうでない場合、スイッチは、リセット・パルスを妨げるようにゲーティングされる（制御される）。別の可能な代替手段では、パルスに対応する２つの動作が、パイプラインにおいてキューに並んで、２路アナログ・スイッチに提供され得る。２路アナログ・スイッチは、（いかなるブランキングもなしで）いずれか１つの間でスイッチするように、測定結果によって制御される。例えば、様々な分岐の投機的実行、多方路スイッチングに対応する複数のインパイプライン制御パルスが存在してもよく、パルスは、複数の条件付き分岐にわたってパイプライン化され得る。測定結果は、レイテンシが重大でないフィードバック・ループのコンポーネント１０４に結果を提供することを含む、その他のことに使用され得ることに留意されたい。
【００２３】
図１において破線で表されるように、アナログ・フィードバック・ループのレイテンシは、他の（例えば、デジタル処理）技術よりも著しく低い。１つまたは複数の実施形態において、（アナログ・ミキシング／積分／比較コンポーネント１１０の）アナログ決定コンポーネントは、閾値で２値化するためにキャパシタ積分器およびアナログ比較器に連結されたマイクロ波ミキサを含む。
【００２４】
図１は、また、将来のパルス（制御パルス、読み出し刺激パルス、アナログ・カーネル・パルス）をパルス・パイプラインよりいくらか遅延して更新するために使用される高レイテンシ・フィードバック経路を示す。例えば、高レイテンシ・フィードバック経路は、アナログ・ミキシング／積分／比較コンポーネント１１０のアナログ出力を制御ハードウェア１２０に入力されるデジタル表現に変換する、アナログ・デジタル変換器１１８を含む。図１において、例えば、第２の決定が制御ハードウェア１２０によって行われるのに十分な時間があり、例えば、シーケンス内に２つの決定がある場合に、第１の決定がアナログ領域において行われ、例えば連続的に２つの決定を行うために、第１の決定がアナログ領域において行われてもよく、制御ハードウェアは第１の決定結果が何であったかを知っているため、低速ループにおけるレイテンシが十分に低い場合、第２の決定はデジタル領域において行われ得ることに留意されたい。低速決定経路における制御ハードウェア１２０は、フィールド・プログラマブル・ゲート・アレイにおいて実施されてもよいことに留意されたい。
【００２５】
図１（以下で説明される図３および図４も同様に）は、読み出し刺激ＤＡＣ１０６を、低速のレイテンシが重大でないフィードバック・ループ、例えばコンポーネント１０４（図１）の外側にあるものとして示しており、それは、制御パルスが条件付きであるときであっても読み出しは無条件である多くの可能性のある実施形態についての構成であり得ることに留意されたい。それにかかわらず、図２は、読み出しを実行するための決定が条件付きであり得る代替的実施形態を示す。この場合、デジタル・アナログ変換器２０６は、低速のレイテンシが重大でないフィードバック・ループ２０４の一部である。図２は、単なる一例としての実施形態を示しており、例えば、図２に対応するが、それ以外は概して後述の図３および図４に類似の実施形態などの、読み出しを実行するための決定が条件付きであり得る他の実施形態が、その他と同様に実施され得ると理解されるべきである。
【００２６】
図３は、代替的実施形態のブロック図を、例としての非限定的なシステム３００の形態で示す。概して、図１を参照して上述したコンポーネントは、図３のものと同様に動作し、簡潔にするために再度説明されない。しかしながら、低速ループのレイテンシが高すぎることを考慮して、第１の制御パルスをデジタル・アナログ変換器１１２からゲーティングする第１のアナログ・スイッチ１１４に加えて、図３は、高レイテンシ・コンポーネント３０４内の制御ハードウェア１２０によって制御されるデジタル・アナログ変換器３１２を介して第２の制御パルスをゲーティングする、低レイテンシ・コンポーネント３０２内の第２のアナログ・スイッチ３１４を示す。これは、多階層パイプライン方式の実施形態を提供し、そこでは、２つの決定は、低レイテンシのアナログ領域において行われ得る。容易に理解され得るように、図３の例示された実施形態では、２つのそのようなアナログ・スイッチ・ゲート／パルスが示されているが、代替的実施形態は、任意の実用的な数のアナログ・スイッチ・ゲート／パルスに拡張され得る。例えば、２つの決定からの４つの可能な成果がある場合、どの成果が発生したかに基づいて、０、１、または２つのスイッチ・パルスがゲーティングされ得る。
【００２７】
図４は、アナログ位相シフトを含む別の代替的実施形態のブロック図を示す。概して、スイッチがパルスを送信するか否かに依存して、続くパルスに位相シフトが適用される必要がある。即ち、前のパルスがブランキングされている場合、位相シフトが後続パルスに適用される必要がある。低速ループ・コンポーネントが十分高速である場合、制御ハードウェア１２０は位相シフトを行い得ることに留意されたい。しかしながら、低速ループにおけるレイテンシが長すぎる場合、図４の例示された実施形態は、必要に応じて、即ち、測定の結果に基づいて設定される制御で、アナログ領域において位相を更新するためのアナログ位相シフタ４４２を提供する。前のパルスをブランキングすると、続くパルスにシフトが適用される必要がある。
【００２８】
図５は、単一階層パイプライン（例えば、図１のような）についての例としてのパルス・シーケンスを示すタイミング図を示す。キュービット制御パルスは、比較結果を条件とするため、破線として図５に示されることに留意されたい。この例では、測定成果は、「ｃ＝＝１」であり、したがって、パルスは、ブランキングされ、「ｍｙ＿ｏｐ２  ｑ［０］」が「ｍｙ＿ｏｐ３  ｑ［０］」の代わりに実行される。低速ループのレイテンシは、ブランキングではなくＤＡＣを介してｍｙ＿ｏｐ２を選択するのに十分高速であることに、さらに留意されたい。
【００２９】
以下のＱＡＳＭ（例えば、ＯｐｅｎＱＡＳＭ２．０）コードは、パルスに対応する動作を示し、動作は、概して図６に表される。動作６０４は無条件の制御パルスに対応し、動作６０６は測定に対応し、動作６０８は「ｉｆ」評価に対応することに留意されたい。動作６１０は、コードおよび図６内の「Ｘ」により示されるように、キュービットをリセットする。分かる通り、コードは、条件を指定し、ｉｆ  （＜条件＞）  ＜動作＞の例にうまくマッピングする。
【００３０】
【表１】
2021513135.tif 000003
【００３１】
図７は、上記と同一の疑似コードを用いて、２階層パイプラインにおける例としてのパルス・シーケンスを示すタイミング図である。この例としての実施形態において、低速ループのレイテンシがあまりに長く、したがって、第２のアナログ・スイッチおよび第２のキュービット制御パルスが、例えば図３のように使用される。
【００３２】
分かる通り、大部分がデジタル領域において動作する従来の方法よりもはるかに低いレイテンシを有する、高速量子フィードバック、例えば、アクティブなキュービットのリセットを実行するための技術が、本明細書に説明されている。本明細書に説明される技術は、非決定論的に制御パルスを生成し、実験（おそらくクライオスタット内）に近いアナログ・ミキサおよび積分器を使用して、キュービット状態決定を行い、制御パルスをゲーティングする。
【００３３】
図８は、タイミング遅延を有する制御パルスを出力する、パルス生成コンポーネント８０２を含むシステム８００を表す。キュービット状態決定コンポーネント８０４は、アナログ・カーネルを使用して、キュービット状態に対応する結果を取得するためにキュービット信号に対して線形フィルタリング動作を実行し、キュービット状態に対応する測定成果結果を判定するために結果を閾値と比較する。条件付きゲート・コンポーネントは、測定成果結果に基づいて制御パルスを条件付きでゲーティングする。
【００３４】
キュービット状態決定コンポーネントは、キュービット信号をアナログ・カーネルからの値と乗算して乗算結果を取得することによって、線形フィルタリング動作を実行してもよく、乗算結果を積分して積分結果を求め、測定成果結果を判定するために積分結果を閾値と比較する。キュービット状態決定コンポーネントは、キャパシタ積分器に連結されたマイクロ波ミキサ・コンポーネントと、測定成果結果を判定するために結果を閾値と比較するアナログ比較器コンポーネントと、を含み得る。
【００３５】
制御パルスは、キュービット・リセット・パルスを含み得る。キュービット状態決定コンポーネントは、キュービット信号を提供するキュービットに近似したクライオスタットに位置する。
【００３６】
システムは、パルス・パイプラインにおいて将来のパルスを更新する制御ハードウェアを含むフィードバック経路をさらに含み得る。制御ハードウェアは、フィールド・プログラマブル・ゲート・アレイにおいて実施され得る。
【００３７】
システムは、分岐の投機的実行に対応する追加制御パルスと、追加制御パルスをゲーティングする、別の条件付きゲート・コンポーネントと、をさらに含み得る。条件付きゲート・コンポーネントは、アナログ制御位相シフタに連結されるアナログ・スイッチを含む。
【００３８】
図９に表されるように、量子コンピュータ上で少なくとも一部実施される方法は、アナログ・スイッチにおいて受信されるパルスを生成すること（動作９０２）を含み得る。動作９０４は、キュービット信号をアナログ・カーネル値で乗算して乗算結果を取得すること、乗算結果を積分して積分結果を求めること、およびキュービット状態に対応する測定成果結果を判定するために積分結果を閾値と比較することを含む、キュービット状態を判定することを表す。動作９０６は、測定成果結果に基づいてパルスをゲーティングするようにアナログ・スイッチを動作させることを表す。
【００３９】
パルスは、キュービット・リセット・パルスを含んでもよく、測定成果結果に基づいてキュービット制御パルスをゲーティングするようにアナログ・スイッチを動作させることが、キュービット・リセット・パルスをブランキングするようにアナログ・スイッチを動作させることを含み得る。アナログ・スイッチを動作させることは、キュービットをリセットするためにマイクロ波パルスを送信することを含み得る。
【００４０】
第２のパルスは、第２のアナログ・スイッチにおいて受信されてもよく、方法は、測定成果結果または別の測定成果結果に基づいて第２のパルスをゲーティングするように第２のアナログ・スイッチを動作させることをさらに含み得る。アナログ・スイッチは、パルスに対応する１つの投機的入力および別のパルスに対応する別の投機的入力を有する２路アナログ・スイッチであってもよく、測定成果結果に基づいてパルスをゲーティングするようにアナログ・スイッチを動作させることは、他のパルスの代わりにパルスを出力することを含み得る。
【００４１】
方法は、デジタル制御ハードウェアに連結されたアナログ・デジタル変換器においてキュービット信号を受信することをさらに含み得る。
【００４２】
図１０に表される別の実施形態は、キュービットの測定された状態に基づいてパルスを条件付きでゲーティングするための機械製品を含んでもよく、機械製品は、それで具現化されるプログラム命令を含み得る。プログラム命令は、アナログ・スイッチにおいて受信されるべきパルスを生成する（動作１００２）ために回路によって実行可能である。動作１００４によって表される命令は、キュービット信号をアナログ・カーネルにより乗算して乗算結果を取得すること、乗算結果を積分して積分結果を求めること、およびキュービット状態に対応する測定成果結果を判定するために積分結果を閾値と比較することを含む、実験からのキュービット状態を判定し得る。動作１００６によって表される他の命令は、測定成果結果に基づいてアナログ・スイッチにおいてパルスをゲーティングし得る。
【００４３】
パルスは、キュービット・リセット・パルスを含んでもよく、測定成果結果に基づいてパルスをゲーティングすることは、キュービット・リセット・パルスをブランキングするようにアナログ・スイッチを動作させることを含み得る。
【００４４】
アナログ・スイッチを動作させることは、キュービットをリセットするためにマイクロ波パルスを送信することを含み得る。第２のパルスは、第２のアナログ・スイッチにおいて受信されてもよく、さらに命令は、測定成果結果に基づいて第２のパルスをゲーティングするように、第２のアナログ・スイッチを動作させ得る。アナログ・スイッチは、パルスに対応する１つの投機的入力および別のパルスに対応する別の投機的入力を有する２路アナログ・スイッチであってもよく、測定成果結果に基づいてパルスをゲーティングすることは、他のパルスの代わりにパルスを出力することを含み得る。
【００４５】
計測回路および再構築ソフトウェアがユーザによって見られる必要がない（所望されない限り）ように、プロセスは、ソフトウェアにおいて自動化されてもよく、それによって、標準デバッグ環境の錯覚が生じる。
【００４６】
説明を単純にするために、任意のコンピュータ実施方法論、または量子機械方法論は、一連の動作として示され、説明される。本イノベーションは、示される動作によって、または動作の順序によって、あるいはその両方によって限定されず、例えば動作は、様々な順序でまたは同時に、あるいはその両方で、かつ本明細書に提示および説明されない他の動作と共に発生し得ると理解され、認識されるべきである。さらに、示される動作の全てが、開示される主題によるコンピュータ実施方法論を実施するために必要とされ得るわけではない。さらに、コンピュータ実施方法論は、代替的に、状態図またはイベントを介して一連の相互に関連のある状態として表され得ると、当業者は理解し認識するであろう。追加的に、以下および本明細書全体を通して開示されるコンピュータ実施方法論は、そのようなコンピュータ実施方法論をコンピュータに移送すること、および転送することを容易にするために、製品上に記憶されることが可能であると、さらに認識されるべきである。本明細書で使用される、製品という用語は、任意のコンピュータ可読デバイスまたは記憶媒体からアクセス可能なコンピュータ・プログラムを包含するように意図される。
【００４７】
さらに、量子コンピューティング・マシンは、さらなる従来型のコンピュータに連結され得るため、多くの動作が、電気および機械コンポーネントおよび回路の組み合わせから確立され、人間が、本明細書に説明されるシステムによって実行される処理を複製または実行することは不可能である。
【００４８】
開示された主題の様々な態様についての状況を提供するために、図１１および以下の説明は、開示された主題の様々な態様が実施され得る適当な環境の概要を提供するように意図される。図１１は、本明細書に説明される１つまたは複数の実施形態が容易にされ得る、例としての非限定的な動作環境のブロック図を示す。本明細書に説明される他の実施形態において採用される類似の要素の繰り返しの説明は、簡潔化のために省略される。
【００４９】
図１１を参照すると、本開示の様々な態様を実施するための適当な動作環境１１００は、コンピュータ１１１２も含み得る。コンピュータ１１１２は、処理ユニット１１１４、システム・メモリ１１１６、およびシステム・バス１１１８も含み得る。システム・バス１１１８は、システム・メモリ１１１６を含むがこれに限定されないシステム・コンポーネントを処理ユニット１１１４に連結する。処理ユニット１１１４は、様々な利用可能なプロセッサのうちのいずれかであり得る。デュアル・マイクロプロセッサおよび他のマイクロプロセッサ・アーキテクチャも、処理ユニット１１１４として採用され得る。システム・バス１１１８は、インダストリ・スタンダード・アーキテクチャ（ＩＳＡ：Industrial Standard Architecture）、マイクロチャネル・アーキテクチャ（ＭＳＡ：Micro-Channel Architecture）、拡張ＩＳＡ（ＥＩＳＡ：Extended ISA）、インテリジェント・ドライブ・エレクトロニクス（ＩＤＥ：Intelligent Drive Electronics）、ＶＥＳＡローカル・バス（ＶＬＢ：VESA Local Bus）、ペリフェラル・コンポーネント・インターコネクト（ＰＣＩ：Peripheral Component Interconnect）、カード・バス、ユニバーサル・シリアル・バス（ＵＳＢ：Universal Serial Bus）、アドバンスト・グラフィックス・ポート（ＡＧＰ：Advanced Graphics Port）、ファイアワイヤ（ＩＥＥＥ１３９４）、および小型計算機システム・インターフェース（ＳＣＳＩ：Small Computer Systems Interface）を含むがこれらに限定されない、任意の多様な利用可能なバス・アーキテクチャを用いたメモリ・バスもしくはメモリ・コントローラ、周辺バスもしくは外部バス、またはローカル・バス、あるいはそれらの組み合わせを含む、複数種類のバス構造のうちのいずれかであり得る。
【００５０】
システム・メモリ１１１６は、揮発性メモリ１１２０および不揮発性メモリ１１２２も含み得る。基本入出力システム（ＢＩＯＳ：basic input/output system）は、起動中などにコンピュータ１１１２内の要素間で情報を転送するための基本ルーチンを含み、不揮発性メモリ１１２２に記憶される。コンピュータ１１１２は、リムーバブル／非リムーバブル、揮発性／不揮発性コンピュータ記憶媒体も含み得る。図１１は、例えば、ディスク・ストレージ１１２４を示す。ディスク・ストレージ１１２４は、磁気ディスク・ドライブ、フロッピー（Ｒ）・ディスク・ドライブ、テープ・ドライブ、Ｊａｚドライブ、Ｚｉｐドライブ、ＬＳ−１００ドライブ、フラッシュ・メモリ・カード、またはメモリ・スティックのようなデバイスも含み得るが、これらに限定されない。ディスク・ストレージ１１２４は、また、他の記憶媒体と別々に、または組み合わせて記憶媒体を含み得る。システム・バス１１１８へのディスク・ストレージ１１２４の接続を容易にするために、インターフェース１１２６などのリムーバブルまたは非リムーバブル・インターフェースが、典型的には使用される。図１１は、ユーザと適当な動作環境１１００において説明される基本コンピュータ・リソースとの間の仲介として動作するソフトウェアも示す。そのようなソフトウェアは、例えば、オペレーティング・システム１１２８も含み得る。ディスク・ストレージ１１２４上に記憶され得るオペレーティング・システム１１２８は、コンピュータ１１１２のリソースを制御し、割り当てるように動作する。
【００５１】
システム・アプリケーション１１３０は、例えば、システム・メモリ１１１６内、またはディスク・ストレージ１１２４上のいずれかに記憶されたプログラム・モジュール１１３２およびプログラム・データ１１３４を通して、オペレーティング・システム１１２８によってリソースの管理を利用する。本開示は、様々なオペレーティング・システムまたはオペレーティング・システムの組み合わせで実施され得ると認識されるべきである。ユーザは、入力デバイス１１３６を通してコンピュータ１１１２にコマンドまたは情報を入力する。入力デバイス１１３６は、マウスなどのポインティング・デバイス、トラックボール、スタイラス、タッチ・パッド、キーボード、マイクロフォン、ジョイスティック、ゲーム・パッド、衛星テレビ受信用アンテナ、スキャナ、ＴＶチューナ・カード、デジタル・カメラ、デジタル・ビデオ・カメラ、ウェブ・カメラなどを含むがこれらに限定されない。これらの入力デバイスおよび他の入力デバイスは、インターフェース・ポート１１３８を介しシステム・バス１１１８を通して処理ユニット１１１４に接続する。インターフェース・ポート１１３８は、例えば、シリアル・ポート、パラレル・ポート、ゲーム・ポート、およびユニバーサル・シリアル・バス（ＵＳＢ）を含む。出力デバイス１１４０は、入力デバイス１１３６と同一種類のポートのいくつかを使用する。したがって、例えば、ＵＳＢポートは、入力をコンピュータ１１１２に提供するため、およびコンピュータ１１１２から出力デバイス１１４０に情報を出力するために使用され得る。出力アダプタ１１４２は、特別なアダプタを必要とする他の出力デバイス１１４０のうち、モニタ、スピーカ、およびプリンタのようないくつかの出力デバイス１１４０が存在することを示すために提供される。出力アダプタ１１４２は、限定ではなく例示として、出力デバイス１１４０とシステム・バス１１１８との間の接続の手段を提供するビデオ・カードおよびサウンド・カードを含む。リモート・コンピュータ１１４４などの他のデバイスまたはデバイスのシステムあるいはその両方が、入力ケイパビリティおよび出力ケイパビリティの両方を提供することに留意すべきである。
【００５２】
コンピュータ１１１２は、リモート・コンピュータ１１４４などの１つまたは複数のリモート・コンピュータへの論理接続を用いてネットワーク化環境において動作し得る。リモート・コンピュータ１１４４は、コンピュータ、サーバ、ルータ、ネットワークＰＣ、ワークステーション、マイクロプロセッサ・ベースの機器、ピア・デバイス、または他の共通ネットワーク・ノードなどであってもよく、典型的には、コンピュータ１１１２に関連して説明される要素のうちの多くまたは全ても含み得る。簡潔にするために、メモリ・ストレージ・デバイス１１４６のみが、リモート・コンピュータ１１４４と共に示される。リモート・コンピュータ１１４４は、ネットワーク・インターフェース１１４８を通してコンピュータ１１１２に論理的に接続され、次いで、通信接続１１５０を介して物理的に接続される。ネットワーク・インターフェース１１４８は、ローカル・エリア・ネットワーク（ＬＡＮ）、ワイド・エリア・ネットワーク（ＷＡＮ）、セルラ・ネットワークなどの有線通信ネットワークまたは無線通信ネットワークあるいはその両方を包含する。ＬＡＮ技術は、ファイバ分散データ・インターフェース（ＦＤＤＩ：Fiber Distributed Data Interface）、銅線分散データ・インターフェース（ＣＤＤＩ：Copper Distributed Data Interface）、イーサネット（Ｒ）、トークン・リングなどを含む。ＷＡＮ技術は、ポイントツーポイント・リンク、サービス総合デジタル通信網（ＩＳＤＮ：Integrated Services Digital Networks）およびその変形のような回路交換ネットワーク、パケット交換ネットワーク、ならびにデジタル加入者回線（ＤＳＬ：Digital Subscriber Lines）を含むが、これらに限定されない。通信接続１１５０は、ネットワーク・インターフェース１１４８をシステム・バス１１１８に接続するために採用されたハードウェア／ソフトウェアをいう。通信接続１１５０が、例示的に明確にするためにコンピュータ１１１２内に示されるが、それは、コンピュータ１１１２の外部にあってもよい。ネットワーク・インターフェース１１４８への接続のためのハードウェア／ソフトウェアが、例示目的のみのために、標準電話グレード・モデム、ケーブル・モデム、およびＤＳＬモデムを含むモデム、ＩＳＤＮアダプタ、ならびにイーサネット（Ｒ）・カードなどの内部技術および外部技術も含み得る。
【００５３】
本発明は、任意の可能な技術的詳細レベルの統合におけるシステム、方法、装置、またはコンピュータ・プログラム製品、あるいはそれらの組み合わせであってもよい。コンピュータ・プログラム製品は、プロセッサに本発明の態様を実行させるためのコンピュータ可読プログラム命令をその上に有するコンピュータ可読記憶媒体を含み得る。コンピュータ可読記憶媒体は、命令実行デバイスにより使用するための命令を保持し、記憶し得る有形デバイスであり得る。コンピュータ可読記憶媒体は、例えば、電子記憶デバイス、磁気記憶デバイス、光学記憶デバイス、電磁気記憶デバイス、半導体記憶デバイス、または前述したものの任意の適当な組み合わせであってもよいが、これらに限定されない。コンピュータ可読記憶媒体のより具体的な例の非網羅的リストは、ポータブル・コンピュータ・ディスケット、ハード・ディスク、ランダム・アクセス・メモリ（ＲＡＭ）、読み取り専用メモリ（ＲＯＭ）、消去可能プログラマブル読み取り専用メモリ（ＥＰＲＯＭまたはフラッシュ・メモリ）、静的ランダム・アクセス・メモリ（ＳＲＡＭ）、ポータブル・コンパクト・ディスク読み取り専用メモリ（ＣＤ−ＲＯＭ）、デジタル多用途ディスク（ＤＶＤ）、メモリ・スティック、フロッピー（Ｒ）・ディスク、パンチカードまたはその上に記録された命令を有する溝内の隆起構造などの機械的に符号化されたデバイス、および前述したものの任意の適当な組み合わせも含み得る。本明細書で用いられるコンピュータ可読記憶媒体は、本来、電波もしくは他の自由伝播する電磁波、導波管もしくは他の送信媒体を通って伝播する電磁波（例えば、光ファイバ・ケーブルを通過する光パルス）、または電線を通って送信される電気信号などの、一過性信号であると解釈されるべきではない。
【００５４】
本明細書に説明されるコンピュータ可読プログラム命令は、コンピュータ可読記憶媒体からそれぞれのコンピューティング／処理デバイスに、あるいはネットワーク、例えば、インターネット、ローカル・エリア・ネットワーク、ワイド・エリア・ネットワーク、もしくはワイヤレス・ネットワーク、またはそれらの組み合わせを介して外部コンピュータまたは外部記憶デバイスに、ダウンロードされ得る。ネットワークは、銅伝送ケーブル、光伝送ファイバ、ワイヤレス伝送、ルータ、ファイアウォール、スイッチ、ゲートウェイ・コンピュータ、またはエッジ・サーバ、あるいはそれらの組み合わせを含み得る。各コンピューティング／処理デバイス内のネットワーク・アダプタ・カードまたはネットワーク・インターフェースは、コンピュータ可読プログラム命令をネットワークから受信し、それぞれのコンピューティング／処理デバイス内のコンピュータ可読記憶媒体の記憶用にコンピュータ可読プログラム命令を転送する。本発明の動作を実行するためのコンピュータ可読プログラム命令は、アセンブラ命令、命令セット・アーキテクチャ（ＩＳＡ）命令、機械命令、機械依存命令、マイクロコード、ファームウェア命令、状態設定データ、集積回路用の構成データ、またはＳｍａｌｌｔａｌｋ（Ｒ）、Ｃ＋＋などのオブジェクト指向プログラミング言語、および「Ｃ」プログラミング言語もしくは類似のプログラミング言語などの手続き型プログラミング言語を含む、１つもしくは複数のプログラミング言語の任意の組み合わせで書かれたソース・コードもしくはオブジェクト・コードのいずれかであってもよい。コンピュータ可読プログラム命令は、ユーザのコンピュータ上で完全に、ユーザのコンピュータ上で部分的に、スタンドアロン・ソフトウェア・パッケージとして、ユーザのコンピュータ上で部分的にかつリモート・コンピュータ上で部分的に、またはリモート・コンピュータもしくはサーバ上で完全に、実行してもよい。後者のシナリオでは、リモート・コンピュータは、ローカル・エリア・ネットワーク（ＬＡＮ）またはワイド・エリア・ネットワーク（ＷＡＮ）を含む任意の種類のネットワークを通して、ユーザのコンピュータに接続されてもよい。あるいは、接続は、（例えば、インターネット・サービス・プロバイダを使用してインターネットを通して）外部コンピュータに対して行われてもよい。いくつかの実施形態では、例えば、プログラマブル・ロジック回路、フィールド・プログラマブル・ゲート・アレイ（ＦＰＧＡ）、またはプログラマブル・ロジック・アレイ（ＰＬＡ）を含む電子回路は、本発明の態様を実行するために、コンピュータ可読プログラム命令の状態情報を利用して電子回路を個別化することによって、コンピュータ可読プログラム命令を実行し得る。
【００５５】
本発明の態様は、発明の実施形態による、方法、装置（システム）、およびコンピュータ・プログラム製品のフローチャート図またはブロック図あるいはその両方を参照して、本明細書において説明される。フローチャート図またはブロック図あるいはその両方の各ブロック、およびフローチャート図またはブロック図あるいはその両方のブロックの組み合わせが、コンピュータ可読プログラム命令によって実施され得ると理解されたい。コンピュータまたは他のプログラマブル・データ処理装置のプロセッサによって実行する命令が、フローチャートまたはブロック図あるいはその両方の１つまたは複数のブロックにおいて指定される機能／動作を実施する手段を生成するように、これらのコンピュータ可読プログラム命令は、汎用コンピュータ、専用コンピュータ、または機械を製造するための他のプログラマブル・データ処理装置のプロセッサに提供されてもよい。コンピュータ可読記憶媒体に記憶される命令を有するコンピュータ可読記憶媒体が、フローチャートまたはブロック図あるいはその両方の１つまたは複数のブロックにおいて指定される機能／動作の態様を実施する命令を含む製品を含むように、これらのコンピュータ可読プログラム命令は、また、コンピュータ、プログラマブル・データ処理装置、または他のデバイス、あるいはそれらの組み合わせが特定のやり方で機能するように指示し得る、コンピュータ可読記憶媒体に記憶されてもよい。コンピュータ、他のプログラマブル装置、または他のデバイス上で実行する命令が、フローチャートまたはブロック図あるいはその両方の１つまたは複数のブロックにおいて指定される機能／動作を実施するように、コンピュータ可読プログラム命令は、また、コンピュータ実施プロセスを作り出すために、コンピュータ、他のプログラマブル装置、または他のデバイス上で一連の動作行為を実行させるコンピュータ、他のプログラマブル・データ処理装置、または他のデバイス上にロードされてもよい。
【００５６】
図面中のフローチャートおよびブロック図は、本発明の様々な実施形態によるシステム、方法、およびコンピュータ・プログラム製品の考えられる実施のアーキテクチャ、機能性、および動作を示している。この点に関して、フローチャートまたはブロック図の各ブロックは、指定された論理機能を実施するための１つまたは複数の実行可能命令を含む、モジュール、セグメント、または命令の一部を表してもよい。いくつかの代替的実施において、ブロック内に記載された機能は、図面中に記載された順序以外で発生してもよい。例えば、連続して示される２つのブロックが、実際には、実質的に同時に実行されてもよく、または、ブロックが、関係する機能性次第で逆の順序で実行されることがあってもよい。ブロック図またはフローチャート図あるいはその両方の各ブロック、およびブロック図またはフローチャート図あるいはその両方におけるブロックの組み合わせが、指定された機能もしくは動作を実行し、または専用ハードウェアおよびコンピュータ命令の組み合わせを実行する専用ハードウェア・ベース・システムによって実施され得ることにも留意されたい。
【００５７】
主題は、コンピュータまたは複数のコンピュータあるいはその両方の上で動作するコンピュータ・プログラム製品のコンピュータ実行可能命令の一般的状況において上述されているが、当業者は、本開示がまた他のプログラム・モジュールと組み合わせても実施され得ると認識する。概して、プログラム・モジュールは、特定のタスクを実行しまたは特定の抽象データ型を実施し、あるいはその両方を行う、ルーチン、プログラム、コンポーネント、データ構造などを含む。さらに、発明のコンピュータ実施方法が、シングルプロセッサまたはマルチプロセッサ・コンピュータ・システム、ミニコンピューティング・デバイス、メインフレーム・コンピュータと同様、コンピュータ、手持ち式コンピューティング・デバイス（例えば、ＰＤＡ、電話）、マイクロプロセッサ・ベースの、またはプログラマブル消費者電子機器または産業電子機器などを含む、他のコンピュータ・システム構成で実施され得ると、当業者は理解する。例示される態様は、通信ネットワークを通してリンクされたリモート処理デバイスによってタスクが実行される、分散型コンピューティング環境でも実施され得る。しかしながら、本開示の全てではないとしてもいくつかの態様が、スタンドアロン・コンピュータ上で実施され得る。分散型コンピューティング環境では、プログラム・モジュールは、ローカル・メモリ・ストレージ・デバイスおよびリモート・メモリ・ストレージ・デバイスの両方に位置し得る。
【００５８】
本出願で使用される、「コンポーネント」、「システム」、「プラットフォーム」、「インターフェース」などの用語は、コンピュータ関連エンティティ、または１つもしくは複数の特定の機能性を有する動作機械に関連するエンティティを参照してもよく、または含んでもよく、あるいはその両方であってもよい。本明細書に開示されたエンティティは、ハードウェア、ハードウェアおよびソフトウェアの組み合わせ、ソフトウェア、または実行中のソフトウェアのいずれかであってもよい。例えば、コンポーネントは、プロセッサ上で実行中のプロセス、プロセッサ、オブジェクト、実行可能ファイル、実行スレッド、プログラム、またはコンピュータ、あるいはそれらの組み合わせであってもよいが、それらであると限定されない。例示として、サーバ上で実行中のアプリケーションおよびサーバの両方が、コンポーネントであり得る。１つまたは複数のコンポーネントが、プロセスまたは実行スレッド、あるいはその両方の中に存在してもよく、コンポーネントは、１つのコンピュータ上に局所化されてもよく、または２つ以上のコンピュータ間に分散されてもよく、あるいはその両方であってもよい。別の例では、それぞれのコンポーネントは、その上に記憶される様々なデータ構造を有する様々なコンピュータ可読媒体から実行し得る。コンポーネントは、１つまたは複数のデータ・パケット（例えば、ローカル・システム内の別のコンポーネント、分散型システム、またはインターネットなどのネットワークをわたって信号を介し他のシステムと、あるいはそれらの組み合わせと対話する１つのコンポーネントからのデータ）を有する信号などに従って、ローカル・プロセスまたはリモート・プロセスあるいはその両方を介して通信し得る。別の例として、コンポーネントは、電気回路または電子回路により動作される機械部品によって提供される特定の機能性を有する装置であってもよく、電気回路または電子回路は、プロセッサによって実行されるソフトウェアまたはファームウェア・アプリケーションによって動作される。そのような場合、プロセッサは、装置の内部または外部にあってもよく、ソフトウェアまたはファームウェア・アプリケーションの少なくとも一部を実行してもよい。さらに別の例として、コンポーネントは、機械部品なしで電子コンポーネントを通して特定の機能性を提供する装置であってもよく、電子コンポーネントは、電子コンポーネントの機能性を少なくとも一部与えるソフトウェアまたはファームウェアを実行するためのプロセッサまたは他の手段を含み得る。ある態様において、コンポーネントは、例えばクラウド・コンピューティング・システム内で、仮想機械を介して電子コンポーネントをエミュレートし得る。
【００５９】
さらに、「または」という用語は、排他的な「または」ではなく包含的な「または」を意味するように意図される。即ち、特段の記載がない限り、または文脈から明白でない限り、「ＸはＡまたはＢを採用する」は、当然の包含的並べ替えのいずれかを意味するように意図される。即ち、ＸがＡを採用する、ＸがＢを採用する、またはＸがＡおよびＢの両方を採用する場合に、「ＸはＡまたはＢを採用する」が、前述の場合のいずれかの下で満たされる。さらに、特段の記載がない限り、または文脈から単数形を対象とすることが明らかでない限り、本明細書および添付図面において使用される冠詞「ａ」および「ａｎ」は、概して「１つまたは複数の」を意味するように解釈されるべきである。本明細書で使用される、「例」または「例示的」あるいはその両方の用語は、例、場合、または例示としての役割をすることを意味するために利用される。疑義が生じることを避けるために、本明細書に開示された主題は、そのような例によって限定されない。さらに、本明細書に「例」または「例示的」あるいはその両方として説明される任意の態様または設計は、必ずしも他の態様または設計に対して好適または有利として解釈されるべきではなく、当業者に既知の同等の例示的な構造および技術を排除することを意味するものでもない。
【００６０】
「プロセッサ」という用語は、それが本明細書において採用されるとき、シングルコア・プロセッサ、ソフトウェア・マルチスレッド実行ケイパビリティを有するシングルプロセッサ、マルチコア・プロセッサ、ソフトウェア・マルチスレッド実行ケイパビリティを有するマルチコア・プロセッサ、ハードウェア・マルチスレッド技術を有するマルチコア・プロセッサ、並列プラットフォーム、および分散型共有メモリを有する並列プラットフォームを含むがこれらに限定されない、任意のコンピューティング処理ユニットまたはデバイスを実質的に参照し得る。追加的に、プロセッサは、集積回路、特定用途向け集積回路（ＡＳＩＣ）、デジタル信号プロセッサ（ＤＳＰ）、フィールド・プログラマブル・ゲート・アレイ（ＦＰＧＡ）、プログラマブル・ロジック・コントローラ（ＰＬＣ）、複合プログラマブル・ロジック・デバイス（ＣＰＬＤ）、離散ゲートまたはトランジスタ・ロジック、離散ハードウェア・コンポーネント、または本明細書に説明された機能を実行するように設計されたそれらの任意の組み合わせを参照し得る。さらに、プロセッサは、空間利用率を最適化し、またはユーザ機器の性能を拡張するために、分子および量子ドット・ベース・トランジスタ、スイッチ、ならびにゲートなど、これらに限定されないナノスケール・アーキテクチャを活用し得る。プロセッサは、コンピューティング処理ユニットの組み合わせとしても実施され得る。本開示において、「ストア」、「ストレージ」、「データ・ストア」、「データ・ストレージ」、「データベース」などの用語、および実質的にコンポーネントの動作および機能性に関連する任意の他の情報記憶コンポーネントが、「メモリ・コンポーネント」、「メモリ」内に具現化されたエンティティ、またはメモリを含むコンポーネントを参照するために利用される。本明細書に説明されるメモリまたはメモリ・コンポーネントあるいはその両方が、揮発性メモリもしくは不揮発性メモリのいずれかであってもよく、または揮発性メモリおよび不揮発性メモリの両方を含んでもよいと認識されるべきである。限定ではなく例示として、不揮発性メモリは、読み出し専用メモリ（ＲＯＭ）、プログラマブルＲＯＭ（ＰＲＯＭ）、電気的プログラマブルＲＯＭ（ＥＰＲＯＭ）、電気的消去可能ＲＯＭ（ＥＥＰＲＯＭ）、フラッシュ・メモリ、または不揮発性ランダム・アクセス・メモリ（ＲＡＭ）（例えば、強誘電体ＲＡＭ（ＦｅＲＡＭ））を含み得る。揮発性メモリは、ＲＡＭを含んでもよく、ＲＡＭは、例えば外部キャッシュ・メモリとして動作し得る。限定ではなく例示として、ＲＡＭは、同期ＲＡＭ（ＳＲＡＭ）、動的ＲＡＭ（ＤＲＡＭ）、同期ＤＲＡＭ（ＳＤＲＡＭ）、ダブル・データ・レートＳＤＲＡＭ（ＤＤＲ  ＳＤＲＡＭ）、拡張ＳＤＲＡＭ（ＥＳＤＲＡＭ）、Ｓｙｎｃｈｌｉｎｋ  ＤＲＡＭ（ＳＬＤＲＡＭ）、ダイレクトＲａｍｂｕｓ  ＲＡＭ（ＤＲＲＡＭ）、ダイレクトＲａｍｂｕｓ動的ＲＡＭ（ＤＲＤＲＡＭ）、およびＲａｍｂｕｓ動的ＲＡＭ（ＲＤＲＡＭ）などの多くの形態で利用可能である。追加的に、本明細書のシステムまたはコンピュータ実施方法の開示されたメモリ・コンポーネントは、これらのおよび任意の他の適当な種類のメモリを含むことに限定されないが、含むように意図される。
【００６１】
上述したものは、システム、およびコンピュータ実施方法の単なる例を含む。本開示を説明するために、コンポーネント、またはコンピュータ実施方法のあらゆる考えられる組み合わせを説明することは、当然ながらできないが、当業者は、本開示の多くのさらなる組み合わせおよび交換が可能であると認識し得る。さらに、「含む」、「有する」、「所有する」などの用語が、詳細な説明、特許請求の範囲、添付、および図面において使用される限り、そのような用語は、「備えている」が特許請求の範囲で転換語として採用される際に解釈されるように、「備えている」という用語と同様に包含的であるように意図される。
【００６２】
多様な実施形態の説明は、例示の目的で提示されているが、網羅的であること、または開示された実施形態に限定することを意図したものではない。多くの修正および変形が、説明された実施形態の範囲および思想から逸脱することなく当業者には明らかであろう。本明細書で使用される専門用語は、実施形態の原理、実用的な適用、もしくは市場で見出される技術に対する技術的改善を最もよく説明するため、または他の当業者が本明細書に開示された実施形態を理解することを可能にするために、選択された。
【図１】
2021513135.tif 000004
【図２】
2021513135.tif 000005
【図３】
2021513135.tif 000006
【図４】
2021513135.tif 000007
【図５】
2021513135.tif 000008
【図６】
2021513135.tif 000009
【図７】
2021513135.tif 000010
【図８】
2021513135.tif 000011
【図９】
2021513135.tif 000012
【図１０】
2021513135.tif 000013
【図１１】
2021513135.tif 000014
【国際調査報告】
2021513135.tif 000015
2021513135.tif 000016
2021513135.tif 000017
2021513135.tif 000018
2021513135.tif 000019
2021513135.tif 000020