ShrikeLiteでVerilogの書き方が少し理解できるようになったので、LUTやI/Oピン数がもう少し多いTangNano9kに挑戦しています。TangNano9kは、その名の通りLUT約9000なのでShrikeLiteの8倍強、30本程度のIOピン数を利用できるので、広範囲に応用できそうです。
最初は、ツールの使い方などを学習する目的で、LEDをチカチカ点滅させる(Lチカと呼ばれる)プロジェクトに取り組みました。Gowinのホームページから開発ツール(Education版)をインストールした後、SIPEEDの提供するテキストどおりに、Verilogのソースをコピペして、論理合成(Synthesize)し、ピン配置を指定して配置配線(Place& Route)した後、USBケーブルでパソコンに接続してSRAMにプログラムしました。目出度く意図したとおりに6つのLEDが流れるようにフラッシュすることが確認できました。ついでに、内蔵フラッシュにプログラムしてみました。ボードをパソコンから取り外して、USBケーブルでUSB電源に接続すると、LEDが点滅することが確認できました。
何を作ろうかと色々思案しています。まず思いついたのは、過去に製作したことのある8桁の周波数カウンタです。TangNano9k単体で周波数カウンタは実現できますが、過去に製作したものの蒸し返しでは面白みがありません。これにラズパイpicoWを追加して、WiFiでパソコンと接続可能な周波数カウンタというのはどうでしょうか?! GPS受信機も組み合わせれば測定精度を高めることができますし、NTS(NetworkTimeServer)の機能を組み込むこともできそうです。もう一つのアイディアは、SDRの実験です。SDRとなるとA/D変換器やD/A変換器が必要になり、昨今入手可能なICのパッケージの制約から製作が困難なことが予想されるので、何か良い手はないかと検討中です。


コメント