回答:
ザイリンクスSpartan 3AN FPGAには内部フラッシュがあり、不揮発性です。あなたの質問は実際には複数の質問です。
1)FPGAは揮発性ですか、それとも不揮発性ですか?ほとんどは揮発性であり、電源を入れるたびに外部の不揮発性ストレージデバイスからFPGAにコンフィギュレーションビットストリームを読み込む必要があります。いくつかの不揮発性があります。ザイリンクスS3ANのように、私は言及します。
2)構成ビットストリームをどのように保護しますか?この質問には複数の回答があります。
ビットストリームを暗号化できます。つまり、上記の不揮発性ストレージデバイスに格納されるビットストリームは、適切なキーを使用して単一のfpgaによってのみ復号化できる一意の暗号文であることを意味します。これにより、ビットストリームの機能がリバースエンジニアリングによって検出されるのを防ぎます。つまり、暗号化されたビットストリームが不揮発性記憶装置からその場でまたはより破壊的な方法で抽出できたとしても、暗号化されているため、抽出されたファイルから意味をなすことはできません。
また、ビットストリームをリードバックを禁止するように設定することもできます。デバッグ時にFPGAをプログラムするために使用するJTAGインターフェイスは、通常、FPGAからコンフィギュレーションビットストリームを読み取るために使用できます。NO_READBACKオプションを設定すると、これが禁止されます。
統合された不揮発性プログラムメモリを備えたFPGAを見つけることができます。たとえば、Microsemi(旧Actel)はこのタイプのデバイスを専門としています。
他のベンダーは、FPGAをマスクプログラムするオプションを提供しています。たとえば、ザイリンクスは、マスクプログラムされたデバイスを「EasyPath」FPGAと呼んでいます。私の知る限り、これにはNREの支払いが必要なので、設計を更新する必要があるかもしれない状況には適していません。(修正のためのalex.forencichへのヒント)
私は少なくともアルテラについて話すことができます、私はザイリンクスが同様の何かを持っていると思います。外部フラッシュまたはEEPROMに置くファイルを暗号化するオプションがあります。次に、非揮発性またはバッテリーバックアップのキーストレージを使用して、アルテラパーツに復号化キーをロードします。
キーを読み取ることができないため、IPを保護します。彼らは人々のIPを保護することができなかったので、これはかなり一般的な機能であり、アシックスにとってデザインの勝利を失っていました。
http://www.altera.com/devices/fpga/stratix-fpgas/about/security/stx-design-security.html