Artix-7 FPGA入門 A-D変換回路の実験


0~1Vを入力 7セグLEDにディジタル表示

Artix-7 FPGAとXADCを用いたA-D変換回路の基礎

図1 Artix-7 FPGAはアナログ電圧をディジタル値に変換する12ビット分解能のADCモジュールを搭載している.2チャネルの入力信号を扱い,154k~1000kサンプル/秒に設定できる.画像クリックで動画を見る.または記事を読む.[提供・著]森岡 澄夫
詳細[VOD/KIT]Xilinx製FPGAで始めるHDL回路設計入門 LチカからA-D変換,シリアル通信まで!もっともよく使うロジック回路を1日でマスタ

FPGA内蔵ADCのあらまし

Artix-7 FPGAには,アナログ電圧をディジタル値に変換するための12ビット分解能のXADCモジュールが搭載されています.このXADCは最大2チャネルの入力信号を扱い,サンプリング・レートは154k~1000kサンプル/秒(sps)に設定可能です.

XADCは差動入力($P$と$N$信号)をもち,ユニポーラ・モードでは$V_P \geq V_N$の条件下で正確な変換を行います.また,FPGAの温度や電源電圧の測定にも使用されるため,マルチチャネルの制御が必要です.

XADCの設定と利用方法

FPGA設計環境でXADCを利用するには,VivadoのIP CatalogからXADC Wizardを使用してIPコアを生成します.この際の基本的な設定例を以下に示します.

  1. インターフェースとクロック設定
    • Interface:DRP
    • DCLK:100MHz
  2. チャネル・シーケンサの構成
    使用するチャネルとして,例えば$vauxp6$と$vauxn6$を選択します.これにより,チャネル6に接続された0~1Vの信号を測定可能になります.
  3. アラーム設定
    温度や電源電圧に関するアラーム機能は無効化します(チェックを外す)

生成されたIPコアは,Verilog HDLでプロジェクトに組み込むことができます.必要に応じて,各レジスタを制御するステートマシンを構築し,サンプリング結果を読み取ります.

実験の手順と結果の確認

  1. 回路の構築
    • FPGAボードのPMOD端子に外部電圧源(例:定電圧電源または電池)を接続します
    • 入力電圧範囲を0~1Vに設定し,測定チャネルとして$vauxp6$を指定します
  2. 実験の実行
    • 入力電圧に応じて,7セグメントLEDにディジタル値が表示されることを確認します
    • XADCの12ビット分解能に基づき,入力電圧を$V_{in}$とすると,変換結果は以下のようにスケールされます
      \[ Digital\ Output = \left\lfloor \frac{V_{in}}{1.0V} \times 4095 \right\rfloor \]

XADCが実現する高精度なアナログ計測

XADCのユニークな設計

Artix-7 FPGA内蔵のXADCモジュールは,高速かつ高精度なアナログ・データ処理を可能にします.その鍵は,複数の差動入力チャネルと柔軟な制御モードにあります.ユニポーラ・モードでは$V_N=0$基準で測定を行う一方,バイポーラ・モードでは$V_P$と$V_N$の差分を測定します.

FPGA設計における利点

XADCのもう1つの大きな利点は,ディジタル信号処理との密接な連携です.従来のマイクロコントローラを用いたシステムでは,アナログ計測結果を外部回路や通信インターフェース経由で伝送する必要がありました.一方,FPGA内部にXADCが統合されていることで,測定結果を直接ディジタル・ロジックに入力し,リアルタイムでのフィードバック制御や信号処理が可能です.〈著:ZEPマガジン〉

動画を見る,または記事を読む

著者紹介

  • NTT,IBM,Sony,NECの各研究所において高性能回路IPやハイレベル・シンセシスの研究,およびプレイステーションなどの製品用SoC開発に従事した後,現職にて民間宇宙ロケットの飛行制御コンピュータの研究開発に従事.FPGAや高位合成を活用している

著書

  1. [VOD/KIT]一緒に動かそう!Lチカから始めるFPGA開発【基礎編&実践編】,ZEPエンジニアリング株式会社.
  2. [VOD/KIT]Xilinx製FPGAで始めるHDL回路設計入門,ZEPエンジニアリング株式会社.
  3. [VOD/KIT]一緒に動かそう!Lチカから始めるFPGA開発【基礎編】,ZEPエンジニアリング株式会社.
  4. [VOD/KIT]Zynqで初めてのFPGA×Linux I/O搭載カスタムSoC製作,ZEPエンジニアリング株式会社.
  5. [VOD/KIT]Tiny FPGA実習!高校生から始めるHDLプログラミング,ZEPエンジニアリング株式会社.
  6. [VOD/Pi KIT]カメラ×ラズパイで一緒に!初めての画像処理プログラミング,ZEPエンジニアリング株式会社.
  7. スパコンでも破れない!高セキュリティ・マイコン・プログラミング,ZEPエンジニアリング株式会社.
  8. [YouTube]宇宙軌道ロケット 成功の方程式
  9. [YouTube]宇宙ロケットの電子回路開発
  10. FPGA/Zynqで作るカスタム・コンピュータ・チップ,ZEPエンジニアリング株式会社.
  11. Lチカ入門!ソフトウェア屋のためのHDL事はじめ,ZEPエンジニアリング株式会社.
  12. USBカメラの動画キャプチャ&描画用 Pythonプログラム,ZEPエンジニアリング株式会社.
  13. ライブラリ完備!組立式ラズパイI/O増設ボード MCC DAQ HATSファミリ誕生,ZEPエンジニアリング株式会社.

参考文献

  1. [VOD/KIT] 実習キットで一緒に作る!オープンソースCPU RISC-V入門,ZEPエンジニアリング株式会社.
  2. [VOD/KIT]ARM Cortex-A9&FPGA内蔵SoC Zynqで初体験!オリジナル・プロセッサ開発入門,ZEPエンジニアリング株式会社.