まつたろうの歩み

PythonやCの勉強中に「指し示す」いう表現がありました。それを知りたくて今はコンピュータシステムを勉強しています。

FPGA 編 その2

 予想通り FPGA はレベルが高いです。別府先生の資料を元に、青色 LED の点滅ができました。前はワニ口クリップで電源をつないでましたが、ショートしそうなのでピンコードを半田付けして使うようにしました。

青色 LED の点滅

 次に ModelSim を使うように準備をしました。Verilogファイルを用意し、テストベンチを記述しました。

テストベンチ

 次にスクリプトファイルを書いて、シミュレーションを実行しました。波形が観測できました。下の画像です。書いてあるように記述しているだけで、内容はよく分かりません。

シミュレーションができた。

 いよいよ、圓山宗智先生の本に取りかかりました。本の説明も専門的で難易度はかなり高いです。残念ながら MAX10-JB 基板は使えませんので、USB-Blaster でやれるところまでやろうと思います。MAX10-FB 基板のフルカラー LED を使います。色は黒→赤→緑→黄→マジェンダ→白→黒と変化していきます。Qurtus Prime でプロジェクトを作り、各種の設定をします。Verilogファイルを書いて、論理記述の解析と合成を行います。PIN の設定をして、コンフィグレーションして動作確認をします。まずは SRAM に書き込みました。書き込み成功です。下の画像です。

SRAM に書き込みができました。

 動作の様子です。この後、本体のフラッシュメモリに書き込みました。

フルカラー LED が色を変えながら点滅した

 次にロジック・アナライザーの SignalTap Ⅱを使うようにしました。うまく動作しませんでした。本を読み返しながら3回ほどやり直しましたが、できませんでした。付属の DVD のファイルを使ってやってみました。これは正しく動作しました。私の記述のどこかに問題があったのでしょう。 SignalTap Ⅱの動作です。

SignalTap Ⅱの動作

 次に第8章の PLL とパワーONリセット回路を使って、フルカラー階調明滅回路の構築をしました。本の通りに書きながら進めました。最後の部分で、フルコンパイルを実行して動作確認となっていました。動作しませんでした。また、間違えたかな?これも3回ほど確認しました。書き込みをしているようには思えません。最後のコンフィグレーションという意味を、理解できていませんでした。Tools  の Programer を使わないといけませんでした。

書き込みができた!

 動作の様子です。フルカラー LED の PWM 信号で階調明滅させる回路。PLL が何をするのか良くわかっていません。

フルカラーLEDの階調明滅回路

ーーー 今日の一言 ーーー

 アメリカのイランへの攻撃の影響を受けて、大変な事態になっています。日本政府は静観するだけで、和平の道を探る努力を何もしていないように感じられます。このまま、石油が入って来なかったら生活できなくなってしまいます。どうするつもりでしょう?早く争いが解決する事を望みます。