AR# 63419

Vivado パーシャル リコンフィギュレーション - パーシャル リコンフィギュレーション (PR) ソリューションで使用されるビットストリームの種類

説明

パーシャル リコンフィギュレーション (PR) ソリューションで使用されるビットストリームの種類にはどんなものがありますか。

 

ソリューション

 

ザイリンクス デバイスでパーシャル リコンフィギュレーション用にデザインをコンパイルする場合、異なるタイプのビットストリームが作成されます。

このアンサーではその用語を定義し、7 シリーズおよび UltraScale デバイスで使用される各タイプのビットストリームの詳細を説明します。

すべての項目の詳細は、『パーシャル リコンフィギュレーション ユーザー ガイド』 (UG909) を参照してください。

ここで説明されているビットストリームの種類は次のものがあります。

  • フル コンフィギュレーション ビットストリーム
  • パーシャル ビットストリーム
  • ブランキング ビットストリーム
  • 消去ビットストリーム

 

フル コンフィギュレーション ビットストリーム: PR デザインはすべて、フル コンフィギュレーション ビットストリームを使用したフル デバイスの標準コンフィギュレーションから始めます。

ここでのフォーマットおよび構造は、フラット デザイン ソリューションの場合と同じです。

FPGA を最初にプログラムするためにこのビットストリームを使用する方法と同じです。

ただし、デザイン自体は、フル プログラミングが実行された後、デバイスをパーシャル リコンフィギュレーションするための準備処理が実行されています。

暗号化や圧縮など、すべての標準機能はサポートされています。

ブラック ボックスとして設定されているリコンフィギャブル パーティション (RP) がサポートされているので、機能のないリコンフィギャラブル モジュール (RM) が、初期コンフィギュレーションの一部として配布され、後で希望の RM に置き換えることができます。

ビットストリームの圧縮はこの場合非常に効果的で、ビットストリームのサイズを低減させたり、初期コンフィギュレーション時間を短縮することが可能です。

 

パーシャル ビットストリーム: パーシャル ビットストリームは、デバイスのあらかじめ定義されている領域で機能を置き換えるため、デバイスの標準動作中に配布されます。

これらのビットストリームは、フル ビットストリームと同じ構造になっていますが、デバイスの特定箇所をプログラムするため特定アドレス セットに限定されている点が異なります。

フレームごとの CRC チェック (ビットストリーム インテグリティを保つため) や自動初期化 (既知ステートから領域が開始するようにするため) などの専用 PR 機能を使用できるだけでなく、暗号化や圧縮などのフル ビットストリーム機能も使用できます。

パーシャル ビットストリームのサイズは、リコンフィギュレートしている領域のサイズに直接比例しています。 

たとえば、リコンフィギャラブル パーティションがデバイス リソースの 20% を占めている場合、そのパーシャル ビットストリームも、フル デザイン ビットストリームの約 20% になります。

パーシャル ビットストリームは完全自己完結型であるため、該当コンフィギュレーション ポートに配布されます。

アドレス指定、ヘッダーおよびフッターの詳細はすべて、フル コンフィギュレーション ビットストリームの場合と同様、これらのビットストリームに含まれています。

パーシャル ビットストリームは、JTAG、スレーブ シリアル、またはスレーブ SelectMAP などの外部の非マスター コンフィギュレーション モードで FPGA にユーザーによって配布されます。

内部コンフィギュレーション アクセスには、ICAP (すべてのデバイス)、PCAP (Zynq-7000 SoC)、および MCAP (PCIe を介した UltraScale) が含まれます。

パーシャル ビットストリームは、write_bitstream が PR コンフィギュレーションで実行されると自動的に作成されます。

各パーシャル ビットストリーム ファイルの名前のフォーマットは、ユーザーが指定した最上位デザイン名の後にリコンフィギャラブル パーティションの Pblock 名、そして _partial が付きます。

たとえば、フル デザイン ビット ファイル top_first.bit の場合、パーシャル ビット ファイルの名前は top_first_pblock_red_partial.bit となります。

Pblock インスタンスは、その中に含まれている RM に関わらず常に同じなので、わかりやすい基本コンフィギュレーション名を使用するか、またはどのモジュールであるかを明確にするため、パーシャル ビット ファイルの名前を変更することを推奨します。

 

ブランキング ビットストリーム: ブランキング ビットストリームは特定タイプのパーシャル ブランキング ビットストリームで、ブラック ボックスを表します。

これは、既存のリコンフィギャラブル モジュールの機能を新しい機能に置き換えて上書きします。この新しい機能は該当モジュール I/O 上にある接続 LUT です。

ブラック ボックスのリコンフィギャラブル モジュールを作成するには、完全に配置および配線されたデザイン コンフィギュレーションの論理および物理的表現を接続 LUT に置き換えて削除します。

アクティブ メモリにある配線されたコンフィギュレーション (スタティック デザインがロックされた状態) から始め、次のステップを実行します。

update_design -cell <foo> -black_box; update_design -cell <foo> -buffer_ports; place_design; route_design

デザインに挿入されている LUT をインプリメントするには、デザインを配置および配線する必要があります。

ブラック ボックス RM の出力はデフォルトでグランドに接続されますが、希望のポートに HD.PARTPIN_TIEOFF を設定して、 VCC に設定することができます。

ブランキング ビットストリームのサイズを大幅に削減するには圧縮を利用できます。 

これらのビットストリームには、接続 LUT だけでなく、FPGA のこの領域を通過するスタティック配線もやはり含まれています。 

ブランキング ビットストリームは、ブラック ボックスになっているものは単にコンフィギュレーション チェックポイントとして保存されるだけなので、標準パーシャル ビットストリームのように生成され、名前が付けられます。

 

消去ビットストリーム: 前出のビットストリーム タイプとは異なり、このタイプは UltraScale デバイス専用です。

このアーキテクチャには、新しいモジュールを読み込む前に既存のモジュールを消去するという新しい要件があります。

この消去ビットストリームは、リコンフィギュレートする領域のグローバル信号マスクを確立させることで、リコンフィギャラブル パーティションの後続パーシャル ビットストリームが配布されるように、デバイスを準備します。

実際には既存モジュールは削除されないのですが (現在の論理モジュールは残る)、そういう風に考えるのか一番わかりやすいのです。

消去ビットストリームはパーシャル ビットストリームではありません。

このタイプのビットストリームは、ターゲット領域のフレームの 10% にも満たないため、対応するパーシャル ビットストリームのサイズの約 10% です。

機能を変更させることはありませんが、パーシャル ビットストリームの間に配布する必要があります。

各消去ビットストリームは特定のリコンフィギャラブル モジュールに対してビルドされていて、そのモジュールが使用された後に適用する必要があります。また、次のパーシャル ビットストリームが配布される直前にコンフィギュレーション エンジンに送信する必要があります。

たとえば、モジュール A からモジュール B へ移動するには、モジュール A の消去ビットストリームは、モジュール B のパーシャル ビットストリームが配布される直前に配布しなければなりません。

モジュール B からモジュール A と戻るには、モジュール B の消去ビットストリームは、モジュール A のパーシャル ビットストリームが配布される直前に配布しなければなりません。

パーシャル ビットストリームがブランキング ビットストリームであっても、これは変わりません。

消去ビットストリームは自動的に生成され、パーシャル ビットストリームと同じ名前が付き、最後に _clear が付きます。

前出の例でいうと、top_first が UltraScale デザインである場合は、消去ビット ファイル名は top_first_pblock_red_partial_clear.bit になります。

AR# 63419
日付 07/06/2017
ステータス アクティブ
種類 一般
ツール