Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
1
Help us understand the problem. What is going on with this article?
@kan573

1500円ZYNQ基板のXADCを使えるようにする

はじめに

1500円 ZYNQ 基板( EBAZ4205 )で、内蔵 A/D コンバータ XADC の回路を修正して、使用できるようにします。

Xilinx の 7 シリーズ以降の FPGA (ZYNQ-7000 も含む)では、XADC を使って、内部温度や電圧がモニタできるようになっています。

標準で装備されている機能なので、XADC の回路を FPGA で作らなくても読めるはずなのですが、EBAZ4205 では読めません。
電圧はいつどれを計っても 0V ですし、温度は絶対零度(-273.1℃)を示します。
0.png

基板を修正して、正しく読めるようにしたいと思います。

使用環境

  1. Windows10 Pro (20H2)
  2. Vivado 2020.1 (Windows 版)
  3. EBAZ4205

参考資料

UG480 7 Series FPGAs and Zynq-7000 SoC XADC Dual 12-Bit 1 MSPS Analog-to-Digital Converter

XADC が使えない原因

UG480 の Figure 1-2 に、XADC の回路例が記載されています。

・ADC の基準電圧に、高精度の外部電圧源(±0.2%)を使う方法 (左)
・FPGA 内部の基準電圧源(on-chip reference、±1%)を使う回路 (右)

2種類のどちらかの回路で使用します。
1.png

EBAZ4205 の回路図を確認してみると、XADC の電源端子(VCCADC_0 = J9 ピン)に、電源が供給されていません。
下図で、C327 の 100nF だけが接続されています。

電源が供給されていないため、XADC が動作しなくなっています。
外部基準電圧源の回路も用意されていますが、部品は搭載されていません。
2.png

回路の修正方法

今回は、内部の基準電圧源を使う回路で、XADC を動かします。
3.png

VCCADC_0 には 1.8V のアナログ電源を供給する必要があります。
基板上では、VCCA として 1.8V が生成されていますので、ここから供給します。

VCCADC_0(J9) ピンにアクセス可能なのは、C327 だけです。
ここに 1.8V 電源を接続します。

1.8V の供給元は、基板上で C327 の隣にある C2354 か R1493 が適当です。
例では、C2354 からジャンパで接続しました。

VREFP_0 と VREFN_0 の間も C664 で分離されてしまっています。
Figure 1-2 に合わせて、VREFP_0-VREFN_0 間を直結にします。
例では C664 の上からジャンパでショートしています。
(C664 を 0Ω 抵抗に交換しても良いです)

基板の改造例を示します。
4.jpg

XADC の動作確認

基板が改造できたら、動作を確認します。

システムモニタが有効になるのは、FPGA にダウンロードが完了してからです。
PetaLinux が起動すると、見えなくなってしまいます。
u-boot で止めるか、PetaLinux を起動せずに適当な .bit をダウンロードして観察します。

Vivado で Open Hardware Manager して、ダウンロードケーブルとデバイスを認識させると、右側の dashboard にシステムモニタのグラフが表示されます。
初期状態だと温度表示だけですが、各電圧の項目を追加することができます。

下は、u-boot で止めて、何もしていない時の温度と電圧の推移です。
6.png

・VCCINT/VCCBRAM/VCCPINT が 1.0V 付近
・VCCO_DDR が 1.5V 付近
・VCCAUX/VCCPAUX が 1.8V 付近
・温度が 44.7℃

となっていて、正しい値を示しています。

FPGA に何か処理させると、消費電流が増えて電源電圧が少し下がるのと、内部温度が上昇します。


下記は、EBAZ4205 で Zybo Z7-10 の HDMI デモを動かした時のシステムモニタ表示です。
7.png
電源電圧がそれぞれ少しづつ低くなり、温度は 60.2℃ を示しています。

グラフは 1 秒毎に更新されます。
FPGA 表面を指で触れると熱が吸収されて、すぐに表示温度が下がるのが観察できます。

まとめ

EBAZ4205 基板を改造して、XADC が使用できるようになりました。

1
Help us understand the problem. What is going on with this article?
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
kan573
のんだくれ自宅警備員。RasPi、FPGA、Audio、Video。再現性重視で投稿したいと思います。

Comments

No comments
Sign up for free and join this conversation.
Sign Up
If you already have a Qiita account Login
1
Help us understand the problem. What is going on with this article?