|
|
目次 TKDN-SP6-ES TKDN-SP6-16 TKDN-SP6-45 ピン配置 外観写真 シルク図 外形寸法 製品資料 完全な回路図 UCFファイル サンプルデザイン 書き込みツール デバイスドライバ その他 開発チュートリアル 階層化しよう クロックの扱い方 DDR2を使う回路 コラム LabViewから使う 応用作品 ご注意 ※必ずお読みください
|
Spartan-3からSpartan-6に乗り換える理由・XILINXの最新CPUであり、今後の製品寿命がもっとも長い。 ・Spartan-3と比べるとI/Oが格段に進歩している。例えば、ISERDES/OSERDESがすべてのI/Oピンに内蔵されており、ハードウェアレベルでのシリアルパラレル変換が可能。つまり、SpartanなのにVirtex-4並みのことができる。 ・Spartan-3は、I/Oあたり最大622Mbpsまでだったが、Spartan-6では最大1050Mbpsになった。 ・I/Oの遅延設定がしっかりとできるようになった。(逆に言えば、Spartan-3EのIODELAYはかなりいい加減だった) ・コンフィギュレーションに失敗したときに、別のコンフィギュレーションデータを自動的に探しに行くようになった。 ・VCCAUXが3.3Vでなくてもよくなった。もう2.5Vは不要。 ・1個の16kbのBlockRAMを、2個の8kbのBlockRAMに分けてつかうことができる。つまり、BRAMを節約できる。 ・DLLやDCMだけではなく、PLLも内蔵された。任意の周波数を作り出すことができる。 ・最大の特徴は、Spartan-3のLUTが4入力だったのに対し、Spartan-6では6入力に拡張されたこと。 ・Spartan-6のLUTは、Spartan-3のLUTの約半分しか入っていないが、1つのLUTが扱える情報量は2倍も4倍にもになったと考えられる。関係をまとめると、 Spartan-3 ・・・ 1CLB=4スライス。1スライス=2LUT(4入力)+2フリップフロップ。 Spartan-6 ・・・ 1CLB=2スライス。1スライス=4LUT(6入力)+8フリップフロップ。 つまり、複雑なロジックを組む人には恩恵がある(はず)。
同規模と思われるSpartan-3とSpartan-6の比較 (XC3S1200EとXC6S16LXはデバイス単価とコンフィギュレーションデータサイズが近い) XILINX ISEの設定オプションにご注意!Spartan-6の開発を行うにはXILINX ISE 11が必要ですが、ISE11のデフォルトの設定では、I/O内のフリップフロップが使われる設定になっていません。このため、入出力のタイミングをきっちり作った正確に作ったつもりでも、予期しない遅延が入ってしまって、正確なタイミングを出せないことがあります。周辺ICとのインタフェースにおけるセットアップ・ホールドタイムの不足や、論理合成後のタイミングエラーを引き起こします。
具体的に言うと、
のように書くと、input_signal_Xやoutput_signal_XにはIOB内のIFFやOFFが適用されることが期待されます。しかし、ISE11ではそうなりません。CLB内の通常のFFが使われてしまいます。
この問題を回避するには、Implement DesignのオプションでProcess Propertyを開き、
次にMap Propertiesタブを開いて、Pack I/O Registers/Latches into IOBsをFor Input and Outputsにします。
論理合成後のDesign Summaryで、IOB Propertiesを見たときに、IFF1やOFF1が使われいれば成功です。
これで、貴方の設計したI/Oは、設計したとおりのタイミングで動くでしょう。
開発の記録・DDR2メモリの動作確認(続き) ・Spartan-6のOSERDESで汎用I/Oから1Gbps出力
Copyright(C) 2009 TokushuDenshiKairo Inc. All rights reserved. |