LabVIEW FPGAで原因不明のエラー

今、PXIe-7965R というFPGAモジュールと、NI 5781 アダプターモジュールで開発をしています。

自作VHDLで作った DDC を CLIPノードとして組み込もうとして、ビルド時に原因不明のエラーが Translate で起きた。


FPGA VIはこんな感じ。
左から入力信号 2chDDC CLIP 2つ→まとめてDMAFIFO
という流れ。

ビルドするとこんなエラー。
どうも、NIFPGA2009 のディレクトリがないとのメッセージ。
確かに、以前 LabVIEW 2009 入れていたけど、今はアンインストールして LabVIEW 2010 なので、 ISEのディレクトリは 違うはず。
なんで、そんなところ参照しているのか?
いろいろ調べた結果、環境変数に該当パスがあることに気が付いて、正しく修正。

再ビルドすると、確かにディレクトリがないエラーは消えた。
が、違うエラーが!

エラーメッセージを追うとMultiple Driver となっていることから、出力がぶつかっている(2つ以上の出力を1つの入力に入れようとしている)ことがわかる。
また、タイミング制約系のエラーも出ていることから、クロック周りでもなにかあるらしい。
まず、ここで、ヘルプの記述を思い出す。
ヘルプによると、CLIPはグローバルな扱いになる。ということは、同じCLIPでも違うインスタンスの場合にはきちんとプロジェクトに登録する必要があるのだろう。
先程ちゃちゃっと作ったFPGA VI では DDC の 同じ CLIPをコピーしていたので、ぶつかったと思われる。
VI上でコピーしても、物理的に同じものになるということ。

そこで、きちんとプロジェクトにはインスタンスを2つ作ってみて再度ビルド。
ああ。。またエラーメッセージ。

はまった。