« J-Writerの新規デバイス対応 | トップページ | Spartan-6でDDR2メモリを400MHzアクセス »

2009.09.29

Spartan-6のODDRの問題(少し進展)

XILINXの方から電話があって、ISE11.3にバージョンアップしてみてください、とのことでした。
11.3のリリースノートには載っていないけど、対応されたとのことでした。
また、IOBUFのTがどうのこうのと言っていましたが、電話ではよくわからなかったので、実験してみました。

まず、次の図1のような構造を作ってみました。
IOBUFのIとTを両方ともODDR2の出力からつないだ場合は、論理合成でき、動作も正常でした。
Sp6oddr2_1

図1 論理合成でき、動作も正常だが、記述が面倒

しかし、IOBUFのTのためにわざわざODDR2を使うのは面倒なので、次の図2のようにT側の接続を省略してみたところ、mapでエラーが出て先に進むことができません。
なお図2の構造は、Spartan-3や、Virtex4,5では普通にできていたものです。
これができないと、ちょっと不便かもしれません。
Sp6oddr2_2

図2 面倒ではないが、ISE11.3では論理合成できない
ISE11.2では論理合成できるが正しく動作しない

また、試しに次の図3のような構造を作ってみたところ、mapは通ったものの実際のデバイスは正しく動作しませんでした。これは意味のある回路ではありませんが、やはり、ISE11.xにはまだ何か問題がありそうです。
Sp6oddr2_3

図3 論理合成できるが正しく動作しない


|

« J-Writerの新規デバイス対応 | トップページ | Spartan-6でDDR2メモリを400MHzアクセス »

コメント

お世話になります。
南方と申します。

本ページを読ませていただき、大変参考になりました。
ありがとうございます。

私の方で同様にoddr2とiobufを用いて回路構成して
いるのですが、マッピングでエラーになります。

デバイスはSpartan6で、ISEバージョンは13.3です。
このページの図1、図2どちらでもマッピングエラー
となってしまいます。

お騒がせして申し訳ありませんが、何か対応策の
情報をお持ちではありませんか?

投稿: 南方 | 2013.11.05 13:47

残念ながら情報はありません

投稿: なひたふ | 2013.11.05 17:25

コメントを書く



(ウェブ上には掲載しません)




« J-Writerの新規デバイス対応 | トップページ | Spartan-6でDDR2メモリを400MHzアクセス »