「FPGA開発の基本はシミュレーションができる事である」
今は、私はこう言います。
ですが、今も昔も、結局の所コンパイルして実機で動かすまで何が起こるか分からないのも事実です。
FPGAが動かせるようになった後は、とにかくコンパイルの日々でした。
チュートリアルを読むと、シミュレーションのやり方が書いてあったので試しました。
当時のALTERAにはALTERA独自のシミュレーションツールがあり、チュートリアルに従えば、それは使えたのですが、とにかく遅かった。
シミュレーションは10usecを1分くらいかけて行うものなので、そもそも遅いのですが、ALTERAのシミュレーションは実務に耐えられるレベルではありませんでした。
modelsimも使えるんだよんって事は、どこかに書いていたのですが、こちらは他社のツールである事もあり、どの様にアクセスしたら良いかが分からない。
この時、じっくり1ヶ月くらいかけて、勉強しておけばその後の事の苦労はどれだけ少なかったかと思うのですが、何をどこまで勉強すれば良いのか教えてくれる人がいないので、とにかく実機での動作を繰り返しました。
クロックをFPGAに入れて、テストピンに出す→これで一回(5分)コンパイルして焼き込み
カウンタを作って、予定したクロックだけ分周されるか試すためにコンパイル→5分
こんな事を繰り返して毎日が過ぎていきました。
私は未熟者のまま、既に仕事に入ってしまったので
一刻も早くカメラを完成させなければなりませんでした
それなのに、FPGAに何が出来るか、何を知っていなければいけないかが分からなかったので、ともかくがむしゃらに様々な事を試しました。
けれどそれは間違えでした、FPGAの開発は、まず全体を俯瞰して見れる人間がいる事と、各パーツパーツをつないでいく技術力がある事が求められます。
仕事は仕事で終わらせないといけないですが、並行して地道に勉強する時間は
取らないといけません。