自動試験装置で使用される試験パターンを与えるようにプログラム可能な構成可能集積回路ICであって、前記構成可能ICは、構成可能インタフェースコアを含み、前記構成可能インタフェースコアは、少なくとも1つの被試験装置DUTに対する1つ以上のプロトコルベースのインタフェースの機能性を与えるようにプログラム可能であり、且つ、前記少なくとも1つのDUTとインタフェースするようにプログラム可能である、前記構成可能ICと、前記構成可能ICを前記少なくとも1つのDUTと結合するように構成可能な接続と、を備えるシステム。前記構成可能インタフェースコアは、様々なプロトコルベースの通信インタフェースを有する複数のDUTを試験する為に、複数の異なるプロトコルでプログラムされている、請求項1に記載のシステム。2つ以上のプロトコルを一度に実装することにより、複数のプロトコルを試験することを可能にし、且つ、複数のプロトコルを有するモジュールを同時に試験することを可能にする、請求項1に記載のシステム。一度に1つのプロトコルを実装し、前記インタフェースコアを再プログラムすることにより、異なる複数のプロトコルを試験することを可能にし、並列な複数のDUTを最適化することを可能にする、請求項1に記載のシステム。前記構成可能インタフェースコアは、ユーザがアップグレードすることが可能であることによって、現場での再プログラミングを可能にする、請求項1に記載のシステム。前記構成可能インタフェースコアは、少なくとも1つの標準化されたプロトコルをベースとする通信インタフェースに完全に適合することが事前に検証されている、請求項1に記載のシステム。前記構成可能ICは、PCベースの試験システムとの相互関係を可能にするシステムオンプログラマブルチップsystem-on-a-programmablechipSOPCである、請求項1に記載のシステム。前記構成可能ICと結合されたインタポーザを更に備える、請求項1に記載のシステム。前記構成可能ICと結合されたインタポーザと、前記インタポーザ及び前記少なくとも1つのDUTと結合されたキャディであって、前記プログラマブルICの構成可能な試験器ピンとDUT専用インタフェースとの間の空間変換を行う前記キャディと、のうちの1つ以上を更に備える、請求項1に記載のシステム。前記構成可能ICと結合されたインタポーザと、前記インタポーザ及び前記少なくとも1つのDUTと結合されたキャディであって、ハンドリング目的で様々なDUTを受ける共通形状を有する前記キャディと、のうちの1つ以上を更に備える、請求項1に記載のシステム。前記プログラマブルICの構成可能な試験器ピンと前記少なくとも1つのDUTとの間に結合されたキャディを更に備え、前記少なくとも1つのDUTの使用するコネクタが、前記構成可能な試験器の使用するコネクタより早期に故障する場合に、前記キャディは、構成可能な試験器ピンを保護する犠牲要素である、請求項1に記載のシステム。構成可能インタフェースコアを備える構成可能集積回路ICであって、前記構成可能インタフェースコアは、少なくとも1つの被試験装置DUTに対する1つ以上のプロトコルをベースとするインタフェースの機能性を与えることと、前記少なくとも1つのDUTとインタフェースすることと、を行うようにプログラムされており、前記構成可能ICは、自動試験装置で使用される試験パターンを与える、構成可能IC。前記構成可能インタフェースコアは、様々なプロトコルベースの通信インタフェースを有する複数のDUTを試験する為に、複数の異なるプロトコルでプログラムされている、請求項12に記載の構成可能IC。2つ以上のプロトコルを一度に実装することにより、複数のプロトコルを試験することを可能にし、且つ、複数のプロトコルを有するモジュールを同時に試験することを可能にする、請求項12に記載の構成可能IC。一度に1つのプロトコルを実装し、前記インタフェースコアを再プログラムすることにより、異なる複数のプロトコルを試験することを可能にし、並列な複数のDUTを最適化することを可能にする、請求項12に記載の構成可能IC。前記構成可能インタフェースコアは、ユーザがアップグレードすることが可能であることによって、現場での再プログラミングを可能にする、請求項12に記載の構成可能IC。前記構成可能インタフェースコアは、少なくとも1つの標準化されたプロトコルをベースとする通信インタフェースに完全に適合することが事前に検証されている、請求項12に記載の構成可能IC。前記構成可能ICは、PCベースの試験システムとの相互関係を可能にするシステムオンプログラマブルチップSOPCである、請求項12に記載の構成可能IC。前記構成可能ICと結合されたインタポーザを更に備える、請求項12に記載の構成可能IC。構成可能集積回路ICを用いて試験パターンを与えるステップであって、前記試験パターンは、少なくとも1つの被試験装置DUTを試験する為に自動試験装置で使用される、試験パターンを与える前記ステップと、少なくとも1つの被試験装置DUTに対する1つ以上のプロトコルベースのインタフェースの機能性を与えるようにプログラム可能であり、且つ、前記少なくとも1つのDUTとインタフェースするようにプログラム可能である構成可能インタフェースコアを与えるステップと、前記構成可能ICを前記少なくとも1つのDUTと結合するように構成可能な接続を与えるステップと、を含む方法。一実施形態では、自動試験装置で使用されるシステムを提供する。一実施形態では、このシステムは、自動試験装置で使用される試験パターンを与えるようにプログラム可能な構成可能集積回路ICを含む。この構成可能ICは、構成可能インタフェースコアを含み、構成可能インタフェースコアは、被試験装置DUTに対する1つ以上のプロトコルベースのインタフェースの機能性を与えるようにプログラム可能であり、且つ、DUTとインタフェースするようにプログラム可能である。このシステムは又、構成可能ICをDUTと結合するように構成可能な接続を含む。本明細書に記載の実施形態は、自動試験設備で使用するシステムを提供する。実施形態は又、対応する、被試験装置DUTの試験方法も提供し、この方法は、本明細書に開示のシステム実施形態を用いて運用可能である。一実施形態では、システムは、自動試験設備で使用される試験パターンを提供するようにプログラムされた構成可能な集積回路IC例えば、フィールドプログラマブルゲートアレイFPGAを含む。この構成可能なICに含まれるインタフェースコアが、少なくとも1つのDUTとインタフェースし、ホストバスアダプタの機能性を提供する。インタフェースコアという語句とIPコアという語句は、同じ意味で用いる。このシステムは又、その少なくとも1つのDUTとの接続を含み、この接続は、構成可能ICとその少なくとも1つのDUTとの間の直接結合である。後で詳述するように、構成可能ICは、PCベースの試験器の機能性を実装する一方、PCベースの試験器につきものの、柔軟性、拡張性、性能、及びコストに関する欠点を回避する。後で詳述するように、構成可能ICは、DUTの試験に多大な柔軟性をもたらす。後で詳述するように、利点の幾つかとして、試験器のサイズが小さくなること、インタフェースの柔軟性が高くなること、製品ミックスのサポートが大幅に簡素化されること、コストが下がること、相互関係及び互換性が改善されることが挙げられる。図1は、PCベースの試験システムの一例のブロック図である。一般に、PCベースの試験器は、ボード/コンポーネントベースの試験器である。PCベースの試験器100は、マザーボード103、CPU105、DRAMメモリ107、HBAカード110を含んでおり、これら全て、PCベースの試験器を作成する為に必須である。そのような試験器をミニタワーケースに入れた場合の典型的なサイズは、420mm×175mm×360mmである。一実施形態では、CPU105は、高速インタフェース例えば、PCIe112によってHBAカード110と接続されており、HBAカード110は一般に1~4ポートを含むことが可能である。HBAカード110は、コネクタケーブル120によって1つ以上のSSD115と接続されており、コネクタケーブル120は、利用可能なHBAポートにプラグ接続されている。コンピュータベースのシステムコントローラ125は、1つ以上のPCベースの試験器100と接続されており、個々のPC試験器を制御することに使用される。PCベースの試験器100は複数個あってよく、これらは試験器スライス100とも称され、各スライス100は、マザーボード、CPU、メモリ、及び関連付けられたHBAカードを含む。なお、CPUという用語とプロセッサという用語は同じ意味で用いている。SSDの製造試験及びベンチマーク試験のコストは、同時に試験できる装置の数に直接影響される。PCベースの試験器は、それぞれが、決められた並列処理及びインタフェース規格に最適化されている。複数の規格をサポートしたり、並列処理のレベルを上げたりすることは、HBAカードを取り替えない限り、不可能である。HBAカードの取り替えは、試験器のコストを上げる。PCベースの試験器の現在の64~128DUTの並列処理の場合は、8~16個のHBAカードを取り替えることが必要であり、時間はかかるが、実施は可能である。より多量の並列処理例えば、1024DUT=128HBAカードの場合は、試験器を再構成することが実行不可能である可能性があり、これを手作業で行うとなると、多数の誤りが発生する可能性がある。PCベースの試験器の場合、複数のインタフェースを試験する柔軟性は、HBAカードを追加することの可用性及びコストによって制限される。又、HBAカードの取り替えは物理的に行う必要があり、並列処理量が増えるにつれて、著しいダウンタイムが必要になる。PCベースの試験器は、ホストバスアダプタのような、既存のPC用途向けボードを活用している為、DUTに接続する為に新規又は既存のインタフェース規格が必要な場合の柔軟性に制限がある。典型的には、サポートを必要とするインタフェース規格ごとに1つのHBAが必要である。並列処理は、HBAカードごとに4~8個のDUTとの間で固定され、変更は不可能である。更に、別のインタフェースをサポートする場合は、HBAカードを物理的にマザーボードから取り外して、別のHBAカードと取り替えることが必要である。例えば、PCベースの試験器がSATA装置と接続するように構成されている場合は、SATAHBAが必要である。個々のHBAは、マザーボード上にあってもよく、独立したHBAカード上にあってもよい。そして、PC試験器がファイバチャネルDUTをサポートすることが必要になった場合は、新しいファイバチャネルHBAを購入する必要がある。SATAHBAは物理的に取り外し、SATAHBAの代わりにファイバチャネルHBAを物理的に挿入する。PCは、典型的には、デスクトップアプリケーション又はデータセンタアプリケーションの為の汎用コンピュータとして機能するものであって、柔軟な記憶装置試験器であることは意図されていない。サイズ/フットプリントを小さくしようとすれば、カスタムボードということになるが、これはコストが高くなる。記憶装置の試験にPCを使用する主な理由は次のとおりである。1汎用コンピュータはアーキテクチャがよく知られていること。2典型的には廉価であること例えば、開発コストが低いこと、大容量PCコンポーネントを活用できること。並びに、3試験対象の記憶装置が最終的にはPCで使用されること。従って、最終的な使用シナリオに非常に近い試験器環境を構築できれば、より有利である。SSD製品の出荷量が増えるにつれて、これらの記憶装置製品をより効率的に試験することが必要になる。この為には、以下のことを達成する為に、単一の試験器で複数のインタフェース及びフォームファクタを扱うことが可能な設備が必要となる。a製品ミックスを試験することの柔軟性及び効率を高める。b試験場の平方フィート当たりの密度/並列処理量を増やす。並びに、c試験器の速度/性能を高めることにより、試験回数の最適化を可能にし、リソースを共用するアーキテクチャの試験時間オーバヘッドの不利点を回避する。後で図2~図8に関連して詳述するように、本明細書に記載の実施形態は、1つ以上のPCベースの試験器の機能性を実装するカスタムファームウェア及びソフトウェアイメージを単一チップに実装する構成可能/プログラマブルIC例えば、FPGAを使用する。本明細書に記載の実施形態は、プログラマブルICを使用しており、このプログラマブルICは、性能、並列処理、及びコストに関して高度に柔軟な最適化を可能にし、SSD、HDD、その他のような記憶装置試験用途に関して、まだリリースされていないプロトコルインタフェースへのソフトウェアベースのアップグレードパスを可能にする。PCベースの試験器は、フォームファクタ、物理的コネクタ、及びインタフェース規格が様々な記憶装置を試験する為に複数の異なるHBAカード場合によっては、複数の異なる試験器を必要とするが、FPGAベースの試験器のような、プログラマブルICベースの試験器は、単一で、フォームファクタ、物理的コネクタ、及びインタフェース規格が非常に多様な記憶装置を試験することが可能である。FPGAベースの試験器がこの柔軟性を発揮する為には、ユーザが新しい適切な構成をプログラマブルチップ/FPGAにロードするだけでよい。本明細書に記載の実施形態は、FPGAのプログラム機能を利用して、a物理的HBAを、記憶装置試験用自動試験装置ATEに置き換え、b並列処理量が最大になってコストが下がるように、所与のインタフェースのコピー数を最適化し、c新しい試験器を購入することなく、将来のインタフェース規格をサポートする機能又は既存のインタフェースをアップグレードする機能を有し、d試験システムの低額の基本コストをユーザが支払い、ユーザが新しいインタフェースを使用する場合又は必要とする場合のみ、試験を行う側が追加コストを支払うペイパーユーズpay-per-useのような新しいビジネスモデルを可能にする。図2は、一実施形態によるFPGAベースの試験器システムの一例のブロック図である。1つ以上のFPGA200のそれぞれが、試験パターン発生器TPG205と、これに近接したインタフェースプロトコルIPコア210とを含んでいる。IPコア210は、DUT215と直接結合される。DUT215は、SSDなどの記憶装置であってよい。実施形態によっては、他のタイプの記憶装置として、ハードディスクドライブHDD、USBドライブ、フラッシュカード、DRAMベースのディスクなども可能である。TPGとIPコアとの間の接続は、十分な帯域幅を与える為に、1つ以上のリンクを有するバスパラレル又はシリアルであってよい。一実施形態では、各FPGAが、1つ以上のPCベースの試験器の機能性を実装するカスタムファームウェア及びソフトウェアイメージを単一チップに実装している。必要な電気的シグナリング及びプロトコルベースのシグナリングは、FPGA内のオンチップIPコアによって与えられる。一実施形態では、インタフェースコアは、HBAの機能性を与える。一実施形態では、各FPGAは、事前に検証されているインタフェースコアを用いてプログラム可能である。これにより、所与のインタフェース規格との適合性及び互換性が確保される。一実施形態では、目標インタフェースシグナリング速度グレードは、適切なFPGA速度グレードを選択することによって可能になる。チップのプログラム可能な性質を利用して、SSD、HDD、及び他のプロトコルベースの記憶装置に対する記憶装置試験用途の柔軟性、コスト、並列処理、及びアップグレード性を最適化する。一実施形態では、インタフェースコアは、サードパーティベンダから調達してよいが、本明細書に記載の実施形態と適合させる為には何らかのカスタムが必要な場合がある。一実施形態では、インタフェースコア/HBAは、次の2つの機能を提供する。1記憶装置コマンドを、物理チャネルで送信する為に、標準的なプロトコルにラップする。2電気信号の発生器及び受信器になる。一実施形態では、各DUTは、電流検出機能を含んでよい専用電源を有しており、通信バスを介して試験器から制御される。一実施形態では、ハンドラは、把持器218を含んでよく、把持器218は、DUTを工場コンベアシステムから試験器に移動させ、試験器リソースとの物理的接続及び試験器リソースからの物理的解放を開始する。DUT215を保持するベイ220は、試験中のDUTにストレスを与える環境制御を行う。一実施形態では、次の5種類の環境制御が実施可能である。即ち、DUTごとに温度を制御する。複数のDUTを共用温度チャンバに入れる。PC内の他のコンポーネントをシミュレートする為に電磁ノイズを与える。湿度を制御する。並びに、純粋に電気的機能を試験する為に、温度制御を行わない。PCベースのシステムコントローラ225が、各FPGA、電源、及びハンドラと結合されて、個々の試験器の電子回路、電源、ハンドラ、及び環境制御を一元的に調整する。ハンドラ219は、DUTをベルト/ローダ230からベイ220に移すことが可能である。一実施形態では、パターン発生器及びこれに対応するIPインタフェースコアは、チップ上に互いに隣接して実装されており、専用のバスリンクで接続されている。このようにシステムコンポーネント同士が近接していることにより、目標インタフェース速度に適合するリンクの最適化が可能になり、共用バスアーキテクチャにつきもののボトルネックが回避され、バス変換オーバヘッドが最低限度に保持される。一実施形態では、専用オンチップリソースの組み合わせは、記憶装置パターンの促進、システムロジック同士の近接、及び専用バスリンクを含んでよく、これによって、どの目標インタフェース規格に対しても最高速度での試験が保証される。プログラマブルICの使用により、性能とコストの関係の最適化が完全に制御可能になる。例えば、プログラマブルチップソリューションのCPUが、複数のインタフェースを最高速度でサポートするのに十分高速であれば、専用パターン発生器リソースを除去してコストを下げることが可能である。一実施形態では、目標インタフェースが3Gbps以上の速度を必要としない場合には、低速且つ低コストのプログラマブルチップを選択してコストを下げることが可能である。一実施形態では、目標インタフェースがあまり高速でないチャネルでDUTと通信している場合には、DUT当たりの試験器を増やすインスタンス化を生成するようにプログラマブルチップを再構成することが可能である。本明細書に記載の幾つかの実施例では、FPGAベースの試験器で試験するDUTはSDDであってよいが、他の実施形態では、FPGAベースの試験器で試験するDUTは、プロトコルベースのモジュールを含む様々なタイプであってもよい。例えば、DUTは、記憶装置モジュール、固体ドライブ、無線周波数RFモジュール、無線ネットワーキングWiFiモジュール、光接続性を有するモジュール、ハードドライブ、不揮発性メモリ装置又はモジュール、NANDフラッシュ記憶装置又はモジュール、記憶装置クラスのメモリ記憶装置又はモジュール、揮発性メモリ装置又はモジュール、試験パターンとして、プロトコルベースの通信を必要とするモジュール又は装置、ATE試験システム内のセットアップの為に、プロトコルベースの通信を必要とするモジュール又は装置などであってよい。一実施形態では、記憶装置/SSD/HDD用のFPGAベースの試験器は、SSDに接続して、SATAやSASのような記憶装置専用インタフェースを介して記憶装置ベースのパターンを与えるようにプログラム可能な構成可能ICを含んでよい。一実施形態では、RFモジュール用のFPGAベースの試験器は、当該RFモジュールを使用するUSB又はPCIeインタフェース接続を与えるように構成可能インタフェースコアがプログラムされている構成可能ICを含んでよい。一実施形態では、FPGAベースの試験器は、プロトコルベースの通信によりDUT又はモジュールとインタフェースする、SSD又はRFモジュールベースの試験器であってよい。一実施形態では、構成可能インタフェースコアは、任意の標準化プロトコルベースの通信インタフェースを与えるようにプログラム可能である。例えば、一実施形態では、SSDモジュールベースの試験の場合に、インタフェースコアは、SATA、SASなどの標準化プロトコルベースの通信インタフェースを与えるようにプログラム可能である。一実施形態では、RFモジュールベースの試験器の場合に、インタフェースコアは、USB、PCIeなどの標準化プロトコルベースの通信インタフェースを与えるようにプログラム可能である。一実施形態では、光相互接続を有するモジュールの場合に、インタフェースコアは、光相互接続でモジュールと通信する際に使用する標準化プロトコルベースの通信を与えるようにプログラム可能である。図3A~図3Dは、様々な並列処理と、試験パターン発生器の様々なインスタンス化とを有する幾つかの構成を示す。各構成をプログラマブルチップにアップロードすることにより、所与の用途に対して、その用途が必要とする並列処理、性能、及びコストに基づいて試験器を最適化することが可能である。その用途に対して変更が必要になった場合は、同じ試験器を利用したまま、新しい構成をアップロードすることが可能である。図3Aは、一実施形態による、FPGA300を利用するシステムの一例のブロック図である。FPGA300は、1つ以上の専用試験器305を含んでおり、各専用試験器305が1つのDUT310に接続する。一実施形態では、DUT310は、記憶装置であってよい。一実施形態では、DUT310は、SSDであってよい。各専用試験器305は、IPコア315を含んでおり、これはDUT310に直接接続する。図3Aに示したように、各専用試験器305は、それぞれのオンチップ試験パターン発生器を有しており、オンチップ試験パターン発生器は、CPU330、メモリ335、及び機能促進ブロック312からなる。従って、この構成は、共用リソースを持たない。一実施形態では、FPGA300は又、1つ以上の機能促進ブロック312と、インタフェースコア315とを含んでいる。一実施形態では、各機能促進ブロックは、専用パターン発生器320及び受信器325を含んでいる。一実施形態では、試験刺激例えば、試験パターンを与えるのは、パターン発生器320及び受信器325で与えられるロジックであり、これは、オンチップCPU330及びこれに関連付けられたメモリ335によって制御される。一実施形態では、単一FPGA300上の複数の試験器305同士が、イーサネットコネクタ345を介してリンク可能である。複数のFPGA300は、イーサネットGbEインタフェースを介して、又はスイッチ355を通して、システムコントローラ350に接続可能である。一実施形態では、システムコントローラ350は、プロセッサによって実装されてよく、オペレーティングシステムOS、ドライバ、試験器制御ソフトウェア、並びに、コンパイラ、デバッガ、低レベルAPI、及び試験ライブラリを含むプログラム開発環境を含んでよい。図3B、図3C、及び図3Dは、他の実施形態による、他の3つのFPGA構成例を示している。なお、これらの実施形態は、構成の選択肢の例であって、構成の選択肢はこれらが全てとは限らず、これらに限定されるものではない。図3Bは、一実施形態による、FPGA300を利用するシステムの一例のブロック図である。FPGA300は、1つ以上の専用試験器305を含んでおり、各専用試験器305が1つのDUT310に接続する。一実施形態では、各試験器305の専用部分は、機能促進ブロック312及びインタフェースプロトコルコア318を含んでいる。一実施形態では、各機能促進ブロック312は、パターン発生器320及び受信器325を含んでいる。図3Bのシステムは、図3Aのシステムと類似しており、異なるのは、図3BのCPU330及びこれに関連付けられたメモリ335が複数の試験器305の間で共用される点である。この構成は、コストの見地からは望ましいものであり、この構成に接続されている数のDUTを最高速度でサポートするように刺激の発生及び受信が可能な処理能力をCPUが有していれば、実用的な構成である。この構成が共用リソースPCアーキテクチャと異なるのは、この構成が、最適化されたレイアウト及び専用バスによりチップ上に実装されている為に、より低速なオンチッププロセッサが使用可能になる点である。図3Cは、別の実施形態による、FPGA300を利用するシステムの一例のブロック図である。図3Cのシステムは、図3Bのシステムと類似しており、異なるのは、各専用試験器305が複数のDUT310に接続する点である。これは、ファンアウト構成と称される場合がある。図3Dは、別の実施形態による、FPGA300を利用するシステムの一例のブロック図である。一実施形態では、パターン発生器320及び受信器325がPCブレード内に配置されている。本明細書に記載の実施形態の重要な利点は、パターン発生器及びインタフェースロジックを単一のプログラマブルチップに集積し、それらを近接させてボトルネックを最小限に抑えることによって、性能又はコストを最適化する柔軟性である。一実施形態では、このシステムは、インタフェースロジックごとに専用CPUを割り当てるように構成可能であり、或いは、インタフェース及びDUTの要求リソースと比較してCPUが十分に高速であれば、1つのCPUを複数のインタフェースで共用することが可能である。後で詳述するように、FPGAベースの試験器システムの利点の幾つかとして、試験器のサイズが小さくなること、インタフェースの柔軟性が高くなること、製品ミックスのサポートが大幅に簡素化されること、コストが下がること、相互関係及び互換性が改善されることが挙げられる。サイズ:図4A及び図4Bは、FPGAベースの試験器システムと、PCベースの試験器システムとのサイズの違いを示している。図4Aは、一実施形態による、FPGAベースの試験器システムと、PCベースの試験器システム400とを示している。FPGAベースの試験器システム400は、プログラマブルIC405及びプログラマブルピン410を含んでいる。特定実施形態では、プログラマブルIC405は、複数の例えば、4~8個、又はそれ以上の試験器を含んでよい。各試験器は、CPU、メモリ、機能促進ブロック、及びIPコアを有してよい。プログラマブルIC405は、FPGAであってよく、サイズは35mm×35mmであってよい。他のサイズも可能である。プログラマブルIC405に接続されたプログラマブルピン410は、様々なDUT例えば、8倍SATA、16倍USB、1/4/8倍PCIe及び8/2/1レーン、2~8倍SAS及び4~1レーン、8倍ファイバチャネルなどをサポートするように再構成可能である。このような構成可能ICチップは、サイズが420mm×175mm×360mmにもなるタワーケース入りのPCベースの試験器より、かなり小さい。DUT試験器の各インスタンス化は、本明細書に記載の実施形態の柔軟な最高速度試験機能をサポートする。一実施形態では、複数のDUT試験器を単一プログラマブルチップに実装することが可能である。プログラマブルチップ当たり4~8個のDUT試験器を実装した場合、本明細書に記載のシステムは、PCベースの試験器と同等以下のコストで、柔軟性及び決定論的最高速度並列試験の利点を強化することが可能であり、このことは、同等価格の共用リソースPC試験器では保証されない。プログラマブルチップを大きくしてロジック機能を高めるほど、並列処理量を増やすことが可能である。図4Bは、PCベースの試験器システムを示しており、このシステムは、様々なタイプのDUTに対応する為に、様々なタイプのHBAボード460を接続するマザーボード450を含んでいる。このようなDUTは、3GbpsのSATAHBA、6GbpsのSATAHBA、3GbpsのSASHBA、6GbpsのSASHBA、4GのファイバチャネルHBAなどであってよい。他のHBAとして、マルチリンクSAS、12GbpsのSAS、8Gのファイバチャネルなどもあってよい。図示したように、図4Bのマザーボード450と、追加で必要な、いずれかのHBAボード460との組み合わせは、単一のプログラマブルIC405で様々なタイプのDUTに対応できる、図4AのFPGAベースの試験器システム400よりかなり大きい。単一FPGAのソリューションで構成可能な様々な規格をPCベースの試験器でサポートしようとすると、ユーザは、対応する様々なHBAを全てPCマザーボードにプラグ接続しなければならない。FPGAベースの試験器のソリューションは、これら8個の試験器、又はそれ以上の試験器をサポートする。インタフェースの柔軟性本明細書に記載の実施形態は、ソフトウェアベースのインタフェース変更を可能にするIPコアを試験器が利用することで、試験器の柔軟性を達成している。実施形態は、HBAカードによらずに、複数のタイプのDUTを試験することを可能にする。このようなインタフェースの柔軟性により、新しいインタフェースは、プログラマブルチップのIPコアにロードすることが可能である為、PCカード式のホストバスアダプタは不要になる。一実施形態では、電気的な見地から、FPGA試験器は、HBAの代わりにIPコアを利用している。所与のIPコアは、容易に再プログラムされて別のIPコアに置き換わることが可能であり、その際、物理的なFPGAチップ又は他のハードウェアコンポーネントを変更することはない。このことは、FPGAのプログラマブルチップリソースのソフトウェアプログラミングによって実現されている。例えば、所与のFPGAベースの試験器が現在SATAをサポートしている場合、ファイバチャネルDUTに接続できるようにする為に必要なことは、SATA用に構成されている現在のIPコアの代わりにファイバチャネルIPコアを使用するようにFPGAを再プログラムすることだけである。FPGAベースの試験器の実施形態のインタフェースの柔軟性の別の利点は、新しいインタフェース規格が標準化団体からリリースされたときに、その規格を素早く実装することが可能なことである。そのような新しいインタフェース規格は、PC市場におけるソリューションとして物理的HBAボードを製造販売することが可能になるよりずっと早く、FPGAベースの試験器のプログラマブルチップに実装することが可能である。本明細書に記載の実施形態は又、HBAが広く利用可能になる前にインタフェースの早期バージョンを生成することを可能にし、規格が確定した時点でインタフェースをアップグレードすることを可能にする。例えば、一実施形態では、新しい規格の早期バージョンを実装して、規格が確定した時点で早期バージョンをアップグレードすることが可能である。例えば、一実施形態では、規格例えば、SAS12Gの最初の版がリリースされた時点で、低速の例えば、12Gbpsより低速のプロトコルを実装するか、プロトコルの縮小バージョンを実装するIPコアバージョンを生成することが可能である。そして、規格が確定した時点で、試験器ハードウェアを変更することなく、ソフトウェアアップグレード例えば、狭いポートを広くする、最高12Gbpsの速度を追加する、2倍を超えるマルチレーン機能を追加する、などを行うことが可能になる。図5は、一実施形態による、インタポーザを利用するシステムのブロック図であり、インタポーザは、FPGAが様々なタイプの記憶装置に接続することを可能にする。このシステムは、必要とするピン及び電気的リソースの数が様々である、様々なタイプのDUTを試験する。一実施形態では、FPGAベースの試験器は、IPコア部分を入れ替えることにより、プロトコルサポートを変更することが可能である。一実施形態では、このシステムは、ファームウェアイメージを有するFPGA500を含んでおり、FPGA500は、CPU502を、パターン発生器、IPコア503、及び試験器ピン507用ピンマップ505とともに含んでいる。一実施形態では、FPGA500は、DUTに応じて様々なイメージをロード又はプログラムすることが可能である。例えば、FPGA500にSATAイメージがプログラムされた場合、このSATAイメージは、CPU、パターン発生器、SATAIPコア、及びSATAピンマッピングを含むことになる。一実施形態では、SATAインタポーザ509が、FPGA500がSATADUT例えば、SATASSD511に接続して、これを試験することを可能にする。具体的には、一実施形態では、FPGA500は、試験器ピン507及びSATAインタポーザ509を介してSATASSD511に接続する。FPGA500にUSBイメージがプログラムされた場合、このUSBイメージは、CPU、パターン発生器、USBIPコア、及びUSBピンマッピングを含むことになる。一実施形態では、USBインタポーザ513が、FPGA500がUSBDUT例えば、USBSSD515に接続して、これを試験することを可能にする。具体的には、一実施形態では、FPGA500は、試験器ピン507及びUSBインタポーザ513を介してUSBSSD515に接続する。本明細書に記載の実施形態は又、空いている高速ピンリソースを柔軟に使用して別のDUT並列処理を実施することを可能にする。例えば、異なる複数のDUTインタフェースの使用ピン数が、プログラマブルチップで使用できるピン数より少ない場合は、そのDUTに対するインタフェースの複数のインスタンスを、プログラミングにより実装することが可能である。従って、試験可能な装置の数は、異なるインタフェースごとに最適化することが可能である。単一のハードウェア及びソフトウェアによるソリューションは、多様なDUTをサポートする試験器の複雑さを低減し、インタフェースタイプごとの専用試験器を不要にする。図6A~図6Eは、幾つかの実施形態による、インタポーザ及びキャディを利用するシステムのブロック図であり、インタポーザ及びキャディは、FPGAが様々なタイプの記憶装置に接続することを可能にする。図6Aは、インタポーザと単一のキャディとを利用するシステムのブロック図である。一実施形態では、このシステムは、ピン数が様々であって、必要とする電気的リソースが様々である、様々なタイプのDUTを試験する。一実施形態では、このシステムは、マッピングが構成可能である試験器ピン607を有するFPGA600と、インタポーザ609と、キャディ610とを含んでいる。キャディ610は、キャディピン612と、DUT616を受けるDUT専用インタフェースコネクタ614とを含んでいる。一実施形態では、インタポーザ609及びキャディ610は、適切な電気的ピン及びインタフェースプロトコルに応じてFPGAベースの試験器が再構成されることを可能にする。従って、機械的見地から、このシステムは、ピン数が様々である、様々な固有のインタフェースコネクタを有する様々なDUTに対応する。一実施形態では、インタポーザは、FPGA試験器とDUTとの間の定義済みの一貫した接続を提供する。上述のように、FPGA試験器は、構成可能な試験器ピンを含んでいる。一実施形態では、インタポーザは、試験器ピンと、1つ以上のキャディのキャディピンとの間の接続を行う。一実施形態では、インタポーザは、試験器ピン及びキャディピンを受ける雌レセプタを含んでいる。一実施形態では、インタポーザは、表面が堅固であり、これによって、確実な接触が得られ、試験器の電子回路がDUT環境から電気的且つ環境的/熱的に隔離される。一実施形態では、この環境的隔離の態様は、チャンバ内の温度が上昇してもチャンバの外側にあるコンポーネントにダメージを与えないことを意味する。一実施形態では、キャディは、インタポーザインタフェースとキャディインタフェースとの間の接続を行う。一実施形態では、キャディは、DUTに接続するDUT専用インタフェースを含んでいる。一実施形態では、キャディは使い捨てである。一実施形態では、複数の異なる、柔軟な構成選択肢がありうる。例えば、図6Bは、インタポーザと2つのキャディ615とを利用するシステムのブロック図である。各キャディ615は、ピン数が中程度の記憶装置を受けることが可能である。図6Cは、インタポーザと、1つのキャディ617とを利用するシステムのブロック図である。キャディ617は、ピン数の多い記憶装置を受けることが可能である。図6Dは、インタポーザと、4つのキャディ619とを利用するシステムのブロック図である。各キャディ619は、ピン数の少ない記憶装置を受けることが可能である。図6Eは、インタポーザと、3つのキャディとを利用するシステムのブロック図である。ここでは、各キャディ621が、ピン数の少ない記憶装置を受けることが可能であり、キャディ623が、ピン数が中程度の記憶装置を受けることが可能である。図6A~図6Eは、組み合わせの例であり、他の組み合わせも可能である。一実施形態では、キャディは、共通の形状を有しながら、形状及びサイズが様々である様々なDUTに対応することが可能である。形状が一貫していることにより、自動ハンドリング時に単一のロボット把持器でそれらのDUTをハンドリングすることが可能である。インタポーザの、キャディに接続する部分は、個別のDUTのフォームファクタのそれぞれに適応しながら、固定形状に接続するように最適化することが可能である。一実施形態では、少なくとも1つのDUTの使用するコネクタが、構成可能な試験器の使用するコネクタより早期に故障する場合に、キャディは、構成可能な試験器ピンを保護する犠牲要素として機能する。これは特に、少なくとも1つのDUTの使用するコネクタが、少ない挿入回数を想定したコネクタである場合に有利である。実装によっては、試験されるDUTで使用しているコネクタは、何百万回も接続される試験環境での使用を想定していない。SSDのような、民生用PC向けのDUTのコネクタは、典型的には、ほぼ何千回かの挿入に耐えることが可能である。これは、何千回か挿入すると、コネクタが壊れる危険性が高いことを意味する。PC用途の場合、コネクタの挿入回数が千回に達することはない。試験器環境では、一日の間に複数のSSDを試験し、試験された各SSDは、1回の挿入と除去がなされたことになる。もし、DUTと同じコネクタを試験器で使用したとすると、そのコネクタが早々に壊れるであろうことは容易に理解されよう。もし試験器コネクタが壊れたら、ユーザは、そのコネクタが接続されているボード全体を取り替える必要があり、これは試験器電子回路全体であって非常に高価である。従って、インタポーザ及びキャディを使用する発想は、有利な空間変換とともに安価な犠牲的コネクタという利点を与える。本明細書に記載の実施形態には、幾つかの利点がある。使い捨ての低コストキャディの中にコネクタを配置することの利点の1つは、コネクタが時間とともに壊れる代わりに、低コストキャディが時間とともに壊れることである。例えば、DUT専用コネクタは、大量の試験を行う試験器で必要な何千回もの挿入をサポートすることを想定されていない。DUT専用コネクタは、何百回も挿入すると壊れるであろう。そこで、キャディは、コネクタが壊れることに対して、コスト効率の高いソリューションを与える。別の利点は、キャディが、DUT専用インタフェースピンと試験器ピンとの間の空間変換を与えることである。別の利点は、あるインタフェースプロトコルで必要なピン数が、別のインタフェースプロトコルで必要なピン数より多いか少ない場合に、並列処理を犠牲にすればピン数の多いDUTも試験可能であるように、試験器ピンを再プログラムできることである。典型的には、ピン数の少ないDUTほど、大量の並列処理で試験される。相互関係と互換性本明細書に記載の実施形態は又、相互関係及び互換性を与える。正当なベンダから供給された、実証済みのIPコアを用いることにより、プロトコルベースの試験を行う際に、既存のインタフェース規格との相互関係及び互換性が確実に得られる。プロトコルアナライザのようなツールが利用可能であり、これを用いて、IPコアが規格要件を満たしているかどうかを検査することが可能である。本明細書に記載の実施形態は又、例えば、様々なバージョンの試験器をアップロードすることにより、性能及びコストを最適化する、などの為の完全な柔軟性を与える。インタフェースごとに専用リソースを持つことから、プログラマブルチップの形で、LinuxベースのPCに対する複数のインタフェースにまたがってリソースを共用することまで可能である。一実施形態では、FPGAベースの試験器のSOPCアプローチは、FPGAとともに使用される各CPUでのフルLinuxオペレーティングシステムの実行を可能にするCPU及びメモリを含んでよい。これにより、試験用途用の互換性及び相互関係の追加層が与えられる。一実施形態では、LinuxベースのPCソフトウェア、ベンチマーク、及びドライバをFPGAベースの試験器にポートして実行することにより、PCの環境と類似のエンドユーズ環境が得られる。例えば、ベンチマークIOmeterをFPGAにポートし、FPGA試験器上でデーモンとして実行することにより、接続されたDUTが、IOmeterを実行しているPCベースの試験器から受けるであろうものと同じベンチマークストレスを受けることが可能になる。一実施形態では、SOPCを使用しているFPGAベースの試験器は、PCベースの試験器として機能するという利点がある。例えば、PCベースの試験器は、DUTによって使用されるものと同じハードウェア、オペレーティングシステム、ドライバ、及びアプリケーションソフトウェアを実際のユーザ環境で使用するように構成可能である。例えば、SSDは、デスクトップPCシステムの基本的なハードウェアコンポーネントであるCPU及びメモリとともにマザーボード上に配置されているHBAに接続する記憶装置である。SSDをデスクトップPC上で記憶装置として使用する場合は、Linuxなどのオペレーティングシステムをインストールする場合があり、これには、HBA及び記憶装置のドライバが含まれることになる。このオペレーティングシステム上で、エンドユーザが、SSDの性能を試験する為の、ファイルシステムエクスプローラやベンチマークなどのアプリケーションプログラムを開発することが可能である。そのようなアプリケーションプログラム又はベンチマークを使用することは、DUTの試験の為には良いアプローチである。DUTの試験には、個別のコンポーネントだけでなく、動作するシステム一式が必要だからである。これは又、コスト効率の高いアプローチでもある。DUTがエンドユーザ環境で動作する為に必要な既存のソフトウェアコンポーネント及びツールの多くが流用可能だからである。構成可能FPGAベースの試験器は、カスタム試験システムであり、従って、典型的には、カスタムハードウェアを制御する為のカスタムソフトウェアコードが必要である。構成可能ICとともに使用する又は構成可能ICに組み込む適切なCPUアーキテクチャ例えば、PowerPC、x86、又はARMと、Linuxなどのオープンソースオペレーティングシステムとを選択することにより、デスクトップPCシステムライクな環境を形成することの複雑さは、プログラマブルIC上で使用するソフトウェアドライバ及びシステムオンチップアーキテクチャを開発することへと、大幅に縮小される。図7は、一実施形態による、システムオンプログラマブルチップSOPC702を使用するFPGAベースの試験器システム700のブロック図である。一実施形態では、FPGAベースの試験器システム700は、PCベースの試験器710とともに動作することが可能である。ATE用途向けのFPGAベースの試験器においてSOPC設計を用いることにより、既存のドライバ、オペレーティングシステム、アプリケーションツール、及びベンチマークを活用するデスクトップPCライクな相互関係が考慮される。FPGAベースの試験器におけるSOPC設計の他の利点として、単一プログラマブルICソリューションの形での性能の向上、コストの低減、及びフットプリントの最適化が挙げられる。大幅に簡素化された、製品ミックスのサポート:本明細書に記載の実施形態は、製品ミックスのサポートを大幅に簡素化する。通常、製造業者は、個々のインタフェース規格をサポートする為に専用の試験器を購入する。製造業者は、同じ規格を必要とする装置の製造台数が増えると、1種類の試験器を複数個購入する。製造業者は、自社の製品ミックスに含まれる他の様々な製品をサポートする為に、インタフェース規格が異なる様々な試験器を購入する。例えば、ある製造業者が週に1000台のSATAドライブと100台のファイバチャネルドライブとを製造する場合、この製造業者は、10×100個のSATAドライブ試験器と1個のファイバチャネルドライブ試験器とを購入する。製造業者がそれほど多くの試験器を購入するのは、SATA試験器をファイバチャネル試験器に変更することに非常に時間がかかり、コストがかかる為である。ファイバチャネルの需要が減れば、ファイバチャネル試験器は遊休状態になる。需要が増えれば、製造業者は、試験器を追加購入する必要がある。本明細書に記載の実施形態は、FPGAベースの試験器においてソフトウェアベースの再プログラミングを行うことにより、自動試験装置ATEにプラスの大きな影響を与える。例えば、PCベースの試験器が100個のSATAHBAを有しているとすると、試験器を分解してSATAHBAに手が届くようにし、SATAHBAを引っ張り出し、SATAHBAの代わりにファイバチャネルHBAを取り付け、試験器を再組み立てする作業には何時間もかかるであろう。FPGAベースの試験器であれば、再構成は、ソフトウェアにおいて行い、数分で完了することが可能である。FPGAベースのソフトウェア再構成可能な試験器を用いると、製品ミックスの変化に対応する為に既存の試験器の利用率を高めることが可能である。例えば、製造業者が、10個のSATA試験器と1個のファイバチャネル試験器とを持っていて、これらがFPGAベースであるとする。ファイバチャネルドライブの需要が増えて、SATA試験器の需要が減っても、製造業者は、新しい試験器を購入する必要がない。製造業者は、保有するSATA試験器のうちの幾つかをファイバチャネル試験器に再構成する。これは、非常に短時間で、且つ、最小限の作業で行うことが可能である為、再構成コストとダウンタイムの両方を減らすことができ、更には、新しい試験器を購入する必要がないことから、資本設備コストの節約につながる。アップグレード性:本明細書に記載の実施形態は又、出荷後の現場で、ハードウェアを変更又はハンドリングすることを必要とせずに、試験器の機能性をアップグレード又はアップデートすることを可能にする。そのようなアップデートとしては、例えば、新しいインタフェース規格又はバージョンのペイパーユーズアップデートがある。図8A及び図8Bは、FPGAベースの試験器で試験可能なDUTの様々なタイプを示している。図8Aに示した表は、製品カテゴリ例えば、ディスク及びPCカードと、対応するフォームファクタ、プロトコル、性能グレード、製品ピン/レーンの数、及びDUTの数とを示している。図8Bは、単一のFPGAベースの試験器で置き換え可能なHBAの様々なタイプを示している。そのようなHBAとしては、例えば、パラレルATAadvancedtechnologyattachmentPATA/ゼロ挿入力ZIF、シリアルATASATA、SAS、PCIExpressperipheralcomponentinterconnectexpressPCIe、ファイバチャネルFCなどがある。言い換えると、単一のFPGAベースの試験器で、様々な並列処理が可能である。これは、様々なファームウェアイメージをロードしてFPGAをプログラムすることにより達成される。各プロトコル規格は、プロトコル、ピン数、速度性能、コネクタなどが様々であってよい。コスト:本明細書に記載の実施形態は、複数の試験器を単一チップに実装することにより、更なるコスト節約を達成する。これは、プログラマブルチップが、PCと同等以下のコストで機能性を達成する為である。大量に仕入れると、高価なFPGAほど価格が下がって、試験器がより一層、競争力のあるものになる。コストに関する間接的な利点として、インタフェースの入れ替え時間の短縮と、平方フィート当たりの並列処理量の増加が挙げられ、これによって、工場の床面積が限られている場合や、床面積が少なくて貴重な場合の利用率及びスループットを高めることが可能である。試験器の数を増やすことの利点は、フットプリントが小さくなることであり、このことは、工場の床面積が限られているか、床面積が少なくて貴重である製造業者にとって重要である。一実施形態では、オンチップ実装された機能促進ブロックにより、対象インタフェースの速度に適合するように最適化された、DUTごとの専用リソースが確保される。そのような機能促進ブロックは、他の実装済みオンチップ試験器とは独立に、DUTを決定論的に刺激することを可能にする。一実施形態では、機能促進ブロックは、主プロセッサの作業負担を軽減するように動作可能である。一実施形態では、この負担軽減は、機能促進ブロックがパターンを発生させて受信することにより、達成可能である。一実施形態では、この負担軽減は又、機能促進ブロックが多ステップ試験機能の複数のステップを単一ステップにまとめることにより、達成可能である。例えば、一実施形態では、機能促進ブロックは、パターンを書き込み、その書いたパターンを読み戻し、この2つのパターンを比較する比較機能を与えることが可能である。一実施形態では、機能促進ブロックは、比較機能を書き込むように動作可能である。一実施形態では、機能促進ブロックは、論理比較部として動作する。これにより、所与の記憶装置アドレスに関して、書き込まれたデータと、読み戻された同じデータとの比較が可能である。プロセッサでの実行が必要な、ソフトウェアベースの比較アルゴリズムに比べると、ハードウェア実装での比較は、非常に高速に行うことが可能であるマイクロ秒かミリ秒かの違いがある。ソフトウェアベースの比較アルゴリズムの場合は、書き込んだデータをメモリに記憶させ、複数のバスでDUTに送信し、複数のバスで読み戻して比較することが必要である。この結果、データを複数のバスで送信する為のオーバヘッドが大きくなり、比較コードを実行する為には高速のプロセッサが必要になる。一実施形態では、機能促進ブロックは、コプロセッサとして動作する。コプロセッサは、主プロセッサ例えば、CPUの機能を補助するプロセッサとして使用される。一実施形態では、機能促進ブロックが実施する動作は、浮動小数点演算、グラフィックス、信号処理、文字列処理、又は暗号化であってよい。プロセッサに集中するタスクの負荷を主プロセッサから機能促進ブロックに移すことにより、機能促進ブロックは、全体としてのシステム性能を促進する。一実施形態では、機能促進ブロックは、単一DUT及び並列DUTの両方の試験に使用可能である。図9は、一実施形態による、データ記憶装置の試験方法の一例のフロー図である。一実施形態では、データ記憶装置はSSDである。この方法は、ブロック902から開始され、まず、構成可能ICが試験パターンを与える。一実施形態では、試験パターンは、DUTの試験に使用される。一実施形態では、試験パターンは、構成可能ICを用いて与えられ、この試験パターンは、自動試験装置において、DUTの試験に使用される。一実施形態では、ブロック904において、DUTに対するインタフェースが与えられる。一実施形態では、このインタフェースは、構成可能インタフェースコアを用いて与えられ、構成可能インタフェースコアは、DUTに対する1つ以上のプロトコルベースのインタフェースの機能性を与えるようにプログラム可能であり、少なくとも1つのDUTとインタフェースするようにプログラム可能である。一実施形態では、ブロック906において、DUTとの接続が与えられる。一実施形態では、この接続は、構成可能ICをDUTと結合するように構成可能な接続により与えられる。一実施形態では、構成可能ICのプロセッサのそれぞれ例えば、図4のCPU430が試験パターンを発生させる。一実施形態では、構成可能ICの機能促進ブロックのそれぞれ例えば、図4の機能促進ブロック412が試験パターンを発生させる。一実施形態では、1つ以上のプロセッサが試験パターンを発生させる場合に、1つ以上の機能促進ブロックが、その1つ以上のプロセッサを、試験パターン発生時に支援することが可能である。例えば、一実施形態では、同じ構成可能ICにある所与の機能促進ブロックが、同じ構成可能ICにあるプロセッサを、試験パターン発生時に支援することが可能である。一実施形態では、試験パターンを与える為に、構成可能ICは、プロセッサ又はプロセッサとインタフェースとの間の機能促進ブロックで動作しているプログラムを実行することが可能である。一実施形態では、試験パターンは、プロトコルベースの試験パターンである。一実施形態では、所与の記憶装置インタフェースプロトコルは、SATA、SAS、ファイバチャネル、PCIe、USB、コンパクトフラッシュ、SD、ONFIであってよく、接続されるDUTは、SATA、SAS、ファイバチャネル、PCIe、USB、コンパクトフラッシュ、SD、ONFIの各記憶装置である。一実施形態では、プロトコルベースの通信は、パラレルプロトコル又はシリアルプロトコルであってよく、例えば、イーサネット、SATA、PATA、WiFiであってよく、接続されるDUTは、これらとの通信にイーサネット、SATA、PATA、WiFi接続を必要とする装置である。ハードウェア実装された機能促進ブロックは、多様なソフトウェア試験機能を促進する為に使用可能である。そのようなソフトウェア試験機能としては、例えば、プログラマブルバッファから事前定義済みパターンを実行すること、カウンタのようなアルゴリズムパターン、チェッカボードパターン、ランダム発生データ、書き込んだデータと読み戻したデータとを単一ステップで比較する比較部、プロトコルレベルの通信へのアクセスを可能にすることによるプロトコルアナライザ及びインジェクタなどが挙げられる。ブロック804では、構成可能ICは、DUTに対するインタフェースを与える。ブロック806では、少なくとも1つのDUTとの接続が与えられ、この接続は、構成可能ICとその少なくとも1つのDUTとの間の直接結合である。本明細書に記載の実施形態又はその一部分は、コンピュータ実装であってよい。コンピュータシステムは、プロセッサ例えば、プロセッサコア、マイクロプロセッサ、コンピューティング装置など、主メモリ、及び静的メモリを含んでよく、これらはバス経由で相互通信している。このマシンは更に、タッチスクリーンを含んでよいディスプレイ装置、又は液晶ディスプレイLCD、又は発光ダイオードLEDディスプレイ、又はブラウン管CRTを含んでよい。図に示すように、コンピュータシステムは又、ユーザ用入出力I/O装置例えば、キーボード、英数字キーパッドなど、ポインティング装置例えば、マウス、タッチスクリーンなど、ドライブ装置例えば、ディスクドライブ装置、CD/DVDドライブ、手で触れるコンピュータ可読リムーバブルメディアドライブ、SSD記憶装置など、信号発生装置例えば、スピーカ、音声出力など、及びネットワークインタフェース装置例えば、イーサネットインタフェース、有線ネットワークインタフェース、無線ネットワークインタフェース、伝搬信号インタフェースなどを含んでよい。ドライブ装置は、上述の方法の任意のいずれか又は全てを具体化する命令セット例えば、ソフトウェア、ファームウェア、ミドルウェアなどが記憶されたマシン可読媒体を含んでよい。この命令セットは又、全体又は少なくとも一部分が、主メモリ内且つ/又はプロセッサ内に常駐するように図示されている。この命令セットは更に、ネットワークインタフェース装置を介して、ネットワークバスで送信又は受信することが可能である。本発明の実施形態は、何らかの形態の処理コア例えば、コンピュータのCPUで実行される命令セットとして又はこの命令セットをサポートする為に使用されてよく、或いは、マシン可読媒体又はコンピュータ可読媒体において実装又は実現されてよいことを理解されたい。マシン可読媒体は、マシン例えば、コンピュータ可読な形式の情報を記憶又は送信する為の任意のメカニズムを含む。例えば、マシン可読媒体としては、読み出し専用メモリROM、ランダムアクセスメモリRAM、磁気ディスク記憶媒体、光学式記憶媒体、フラッシュメモリ装置、電気、光、音、又は他の形式の伝搬信号例えば、搬送波、赤外信号、デジタル信号など、又は他の任意のタイプの、情報の記憶又は送信に適した媒体が挙げられる。本発明は、本明細書に開示の実施形態に厳密に限定されるものではない。当業者であれば理解されるように、本発明の概念から逸脱することなく、変更及び修正を行うことが可能である。例えば、FPGA以外の構成可能な集積回路を使用してよい。本発明の柔軟性及びサイズの利点を、構成可能ICと同等以下のコストで実装した、構成可能でない集積回路を使用してもよい。本発明の範囲は、特許請求の範囲に鑑みて解釈されてよい。