日本ロジック設計    - VHDL ロジック記述サンプル -

TOPページ 


実機動作:Cmod A7-35T (Artix-7) 基板とPCをUSB接続でシリアル通信


  AI学習禁止
  無断転載禁止
  免責事項: 当サイトの情報を元に取った行動の結果について、一切の責任を負いません
  No unauthorized reproduction or AI training allowed.
  Unauthorized reproduction prohibited.
  Disclaimer: We are not responsible for any actions taken based on the information on this site.
  (C) 2025 JAPAN LOGIC DESIGN 日本ロジック設計



  Digilent Inc. 製、Cmod A7-35T には、USBコネクタが1個しか実装されていないが、
  USBコントローラにデュアルポートの FT2232HQ が使われており、JTAG機能とシリアル通信が同時に使用できるようになっている。
  PCとの接続は USBケーブル一本のみ。詳細は Cmod A7-35T のリファレンスマニュアルを参照。
  ※https://digilent.com/reference/programmable-logic/cmod-a7/reference-manual

●上記 Digilent Inc. サイトより引用
[picture:pic_artix_7a_uart_term_001] [picture:pic_artix_7a_uart_term_002]

  これを利用して、PC (Windows 11) と Cmod A7-35T とでシリアル通信を行うサンプルを紹介する。
  FT2232HQ を利用するため、FPGA側はUSB制御は不要で、UART通信ロジックで済む。
  PC側のソフトには Tera Term を使用する。

  1. 主な仕様
    ・使用基板: Digilent Inc. 製 Cmod A7-35T、搭載FPGA: AMD Artix-7
    ・FPGA動作クロック: 基板実装:12MHz、MMCM(PLL)設定周波数:51.2MHz
    ・UART: 115200bps、スタートbit:1、データbit:8(LSBファースト)、ストップbit:1、パリティ:偶数
    ・動作確認用LED: クロック=51.2MHzで1秒サイクルで点滅
    ・通信動作: ロジックRESET後、PCにタイトルメッセージを送信、その後はPCからの文字データをそのまま送り返す

  2. Cmod A7-35T について
    別ページ「実機動作:AMD Artix-7 評価基板を使用した正弦波生成」 参照。 注意点なども記載している。

[picture:pic_artix_7a_uart_term_007]   3. FT2232HQ と Windows用デバイスドライバ
    Cmod A7-35T とPCをUSB接続すると、PCからはUSBデバイス「FT2232HQ」が見えることになる。
    本来なら Windows用デバイスドライバをインストールする必要があるが、
    手持ちの Windows 11 PC ではインストールが不要だった。
    Cmod A7-35T を接続しただけで、デバイスマネージャーで仮想COMポートが確認できた。
    最近の Windows では FTDI製ドライバーは自動でインストールされるという話もあるが
    未確認。(ネット情報)

  4. ターミナルソフト「Tera Term 5」
    言わずと知れた Windows用通信端末ソフト。
    今回は Cmod A7-35T との通信に使用する。USB接続テストの前に、PCにインストールしておく。

  5. ロジックの構成について
    ・MMCM(PLL)
    ・UART通信ロジック
    ・上位の通信ロジック (起動時のタイトルメッセージ送信、受信データの折り返し送信機能)
    ・動作確認用LED点滅ロジック
    で構成されている。
    MMCM(PLL)については、別ページ「DDS 正弦波生成ロジックサンプル、MMCM(PLL)使用版」 を参照のこと。
    UART通信ロジックについては、別ページ「UART ロジックサンプル」 を参照のこと。
    上位の通信ロジックは主にシーケンサーで構成され、「UART通信ロジック」を呼び出し
     ・起動時のタイトルメッセージ送信
     ・受信データの折り返し送信
    を行う。 タイトルメッセージの文字列をメモリ配列にしたため、やや複雑な構成になってしまっている。
    詳細については [TOP_A7_UART_TERM.vhd] を参照のこと。

  6. RESETについて
    Cmod A7-35T には RESET-ICが搭載されていない。
    コンフィグレーションでラッチが初期化されるはずではあるが、実験用回路では動作中にRESETを掛けたいこともあり、
    今回は基板に実装されているボタン(BTN1)をRESETボタンに割り当てた。
    チャタリングを除去するロジックを組み込み、主要ロジックにRESETを掛ける。※あくまで代用

[picture:pic_artix_7a_uart_term_006]

  7. サンプルの動作手順
    7-1. VIVADOを起動し、PCと Cmod A7-35T をUSBで接続、後述のサンプルロジックデータをコンフィグレーションROMに書き込む。
    7-2. 一度USBケーブルを抜き、再度差し込む。Cmod A7-35T の緑LEDが点滅すれば書き込み成功。
    7-3. Cmod A7-35T をPCに接続した状態で 「Tera Term 5」を起動する。※接続しておかないと、シリアル接続設定ができない。
    7-4. PC側が「FT2232HQ」を認識できていれば、下記の設定が可能になる。

「シリアル」ポートの設定としてUSBを選択 (COM番号はPCに依存する)
[picture:pic_artix_7a_uart_term_003]

通信速度などのパラメータを設定
[picture:pic_artix_7a_uart_term_004]

    7-5. Cmod A7-35T のボタン(BTN1)を押すと FPGAに RESETが掛かり(主要ロジックのみ)、タイトルメッセージがPCに送信される。
       PCのキーボードをたたけば、入力された文字コードがそのまま返信されて表示される。
       なお、ENTERキーを押しても改行はしない。

[picture:pic_artix_7a_uart_term_005]

  8. サンプルファイル
    ・VIVADO用プロジェクトファイル:japanlogicdesign_vhdl_tips_artix_7a_uart_term.zip
    ※VIVADO プロジェクトファイルは参考にとどめ、新規に作成しなおすことを推奨する
 中国プロテクト:天安門事件、法輪功、チベット