GOWIN USB SoftPhy Reference Design DK-Boardでの実装実験 – 4回目
LED点灯Blockの新設
PCからのASCII入力がそのまま観測できた信号“ep2_rx_data“がある”TOP.v”に、LED点滅Blockを新設します
LED点滅Designの仕様
■モジュール名: ascii_led_blinker
■パラメータ:
・TIMER_MAX: 1ビットあたりの表示時間を決めるクロックサイクル数(人間の目で確認できるよう、デフォルトは60MHzクロックで1秒に設定)
■入力ポート:
・clk: システムクロック(60MHz)
・rst_n: 非同期リセット(Lowアクティブ)
・valid: データ入力の有効(開始)を示す信号
・ascii_in[7:0]: 表示する8ビットのASCIIコード
■出力ポート:
・led: LED駆動信号(Highで点灯、Lowで消灯)
・ready: モジュールが次のデータを受け付け可能な状態(待機状態)であることを示すフラグ
■動作概要:
・readyがHighの待機状態において、valid信号がHighになると、入力されたascii_inのデータを内部レジスタに取り込みます。
・取り込んだ8ビットのデータを、MSB(最上位ビット、Bit 7)からLSB(最下位ビット、Bit 0)の順に1ビットずつledポートに出力します。
・1が入力されている期間はLEDが点灯し、0の期間は消灯します。
・各ビットの表示状態はTIMER_MAXで設定された時間だけ保持されます。
8ビットすべての出力が完了するとLEDを消灯し、再びready信号をHighにして次の入力を待ちます。
Source Code
このmoduleをTOP.vに追加しましょう
新設したLED点灯Blockの波形観測
Compile → FPGA Configuration → PCと評価基板の接続 → TeraTermからLED点灯を行ってみます。
LED点灯
実際のLED点滅の様子
“5”はASCIIコードで”35”なので、ascii_led_blinkerの仕様から、”00110101”とLEDに送信されます。
“1”の時間が約1秒なので、“5”を入力した直後から、消灯2秒→点灯2秒→消灯1秒→点灯1秒→消灯1秒→点灯1秒の順でLEDが点滅し、消灯して完了です。
LED点灯Blockの別Version
別Versionのサンプルを紹介します。前のデザインは”5”のASCIIコード”00110101”のLED点滅でした。今回は”5”を入力したら”5回“点滅するようなデザインを作ってみましょう。 ascii_led_blinker.svを下記のように変更します。
まとめ
以上で、全4回の『GOWIN USB2.0 SoftPhy Reference Design』のご紹介は終了となります。本記事が皆様の新たなアイデアのきっかけとなり、USB2.0 soft phy および USB Device Controller を製品へ導入する際の一助となれば幸いです。ご興味をお持ちの方は、ぜひGOWIN社ホームページよりReference Designをご入手いただき、革新的な製品づくりにお役立てください。
また、本連載を資料にまとめております。下記バナーにリンクが張られていますのでダウンロードしてお役立てください。関連リンク
商品別
- 半導体・電子部品
- アンプ
- 音声合成
- セキュリティ
- その他(ASSP(特定用途向け))
- クロック
- ゲートドライバ
- MOS-FET
- SiC/GaN (FET/Diode)
- IGBT
- ダイオード
- TVSダイオード
- サイリスタ・トライアック
- ヒューズ
- バリスタ
- 有線インターフェイス
- トランス
- インダクタ
- その他コイル
- 抵抗
- コンデンサ
- 無線インターフェイス
- ボード間
- 筐体間
- 高周波
- その他(コネクタ・スイッチ)
- 放熱
- オーディオ
- その他(その他)
- アイソレーション
- マイコン・プロセッサ
- モータドライバ
- 電源
- RF・マイクロ波
- センサー
- USB
- イーサネット
- LVDS・SerDes
- ビデオ・オーディオ
- その他(有線インターフェイス)
- ASIC・FPGA・PLD
- メモリ
- ディスプレイ
- ASSP(特定用途向け)
- ディスクリート
- 保護素子
- 受動部品
- コネクタ・スイッチ
- オペアンプ
- その他(半導体・電子部品)
- WLAN・コンボ
- Bluetooth・BLE
- NFC・RFID
- 5G・LTE
- その他(無線インターフェイス)
- アイソレーションリレー
- デジタルアイソレータ
- 8Bit・16Bit
- 32Bit
- ARM
- AI・DSP
- フルブリッジ
- ブラシレスDC
- ステッピング
- レギュレータ・LDO
- スイッチングDCDC
- 複合電源(PMIC)
- LEDドライバ
- バッテリマネージメント
- その他(電源)
- ミリ波
- アンテナ
- リアルタイムクロック
- 水晶発振器・発信子
- 温度・湿度・環境
- 加速度・モーション・ジャイロ
- 近接・ToF
- 圧力センサ
- 磁気センサ・ホール素子・電流
- 光電センサ
- ポジション(位置・角度)
- その他(センサー)
- FPGA
- PLD
- ASIC
- その他カスタム
- DRAM
- SRAM
- FLASH
- その他(メモリ)
- 電子ペーパ
- LCDパネル
- ソフトウェア
- クラウド
- エンタープライズソフトウェア
- 組込ソフト
- セキュリティ
- OS・開発ツール
- 計測・測定・表示機器
- 測定機器・計測機器
- テスタ・モニタリング
- ディスプレイ・DLP
- その他(計測・測定・表示機器)
- 検査・分析機器
- 検査機器(破壊・非破壊)
- 解析機器
- その他(検査・分析機器)
- ICTソリューション
- ネットワーク機器
- ストレージ機器
- シミュレータ・テスタ
- サーバ
- ICT機器
- セキュリティ
- その他(ICTソリューション)
- 組立・ロボティクス
- 組立・実装装置
- 産業用ロボット
- サービス用ロボット
- その他(組立・ロボティクス)
- レーザー・光学部品
- レーザー
- LED・光ランプ
- ランプ
- 白色LED
- 波長別LED
- その他(レーザー・光学部品)
- 組込コンピュータ
- CPUモジュール
- 産業用マザーボード
- Mini-ITXボード
- 小型SBC
- VME/VPXボード
- 産業用PC
- パネルコンピュータ
- 拡張ボード
- カメラおよび周辺機器
- CPUボード
- 組込システム
- その他(組込コンピュータ)
- 特定用途向け・その他
- IP・ライセンス
- 組込モジュール
- ドライビングシミュレータ
- RF・マイクロ波コンポーネント
- ソーラー・太陽電池系
- サービス
- 開発委託・セミナ・検収・メンテナンス等
- 医療機器
- 医療機器