以前Windows11にXilinx製CPLDの環境を作りましたが、とあるきっかけでオフィシャルのVM版Xilinx ISEでFloorplan IOが起動できないことに気づきました。

 

いろいろ試しましたが解決できず。

オフィシャルのVM版Xilinx ISEはOracle Linuxがベースになっていますが、どうせVM使うなら動作実績のあるWin10でもいいのでは?と考えて、オフィシャルと同じOracle Virtual BoxにWindows10のクライアントOSを入れて、Xilinx ISE環境を構築してみました。

 

ですが、やっぱりFloorplan IOが起動できません。

イベントログを見るとMSVCRT90.dllでC0000005(access violation)が起きてることがわかります。

64bit版の代わりに32bit版を起動すると一応Floorplan IOが起動できてファイル参照エラーになりましたが、そのエラーメッセージからホストOSのドライブを参照していることが原因と判明しました。

 

Oracle Virtual BoxでWindowsのクライアントOSからホストOSのドライブを参照するときはネットワークドライブの扱いになるためパス表現がUNCになるんですが、どうやらISEがFloorplan(PASE)を起動するときにファイルのUNCの先頭にある'\\'を'/'に変換して渡してしまい、正常にネットワークドライブを参照できないようです。

 

ドライブレターを割り当ててそちらからアクセスしたら64bit/32bitともにfloorplan IOが起動できることを確認しました。

ダウンロードケーブルもオフィシャルのVM環境と同じように使えることも確認できました。

(ちなみに、オフィシャルのVM版Xilinx ISEではローカルフォルダ参照に変えても現象変わらなかったです。)