UPGRADE YOUR BROWSER

We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

AR# 20103

Spartan-3 コンフィギュレーション - SelectMAP を使用して ID レジスタを読み出す方法について

説明

キーワード : IDCODE

Spartan-3 デバイスには、IDCODE というコンフィギュレーション レジスタがあります。 これはどのようなレジスタですか。どのようにしてアクセスすればよいですか。

ソリューション

IDCODE レジスタは、コンフィギュレーション レジスタであり、同じ名前の JTAG レジスタとは異なります。 ビットストリームの最初に、ターゲット デバイスの IDCODE を示す値を、IDCODE レジスタに記述するコマンドが含まれています。 この値は、デバイスの真の IDCODE を表す内部定数と照合され、 2 つの値が同じであれば、コンフィギュレーションが続行されます。 値が異なる場合は、ビットストリームが不正にターゲットされ、コンフィギュレーションが停止し、INIT ピンが LOW になります。 このため、異なるデバイス サイズまたは異なるアーキテクチャ用のビットストリームで Spartan-3 デバイスをコンフィギュレーションすることはできません。

SelectMAP ポート (シリアル モードではリードバックは不可) を介して IDCODE レジスタを読み出すには、コンフィギュレーション後も SelectMAP ポートが保持される必要があります (BitGen オプション -g Persist:Yes を設定します)。 このオプションを設定すると、コンフィギュレーション完了後もコンフィギュレーション ピンの機能が保持されます。

IDCODE レジスタのアドレス (''01110'') およびタイプ 1 パケットの詳細は、アプリケーション ノート (Xilinx XAPP452) 『Spartan-3 Advanced Configuration Architecture』 を参照してください。 次にフローを示します。

1. 同期ワード (0xAA995566) を送信します。
2. IDCODE レジスタを読み出すコマンドを送信します。 パケットには、タイプ ("001")、読み出し操作 ("01")、アドレス ("00000000001110")、RSVD ビット ("00")、およびワード カウント ("00000000001") が含まれます。 このパケットで、32 ビット パケット ヘッダ (0x2801C001) が作成されます。
3. すべてが 0 の 32 ビット ワードを送信し、ターゲット デバイスのコマンド パイプをクリアします。 これで、コンフィギュレーション ロジックで読み出しコマンドが正しく処理されます。
CCLK サイクルの 1 周期分 /CS および /RDWR をディアサートして、データ バスをトライステートにします。
5. /CS をアサートします。
6. IDCODE を SelectMAP データ バスから読み出します (1 サイクルごとに 1 バイトで 4 サイクル)。
AR# 20103
日付 12/15/2012
ステータス アクティブ
種類 一般
このページをブックマークに追加