ZYNQのADC/DACボードの火入れ式
ZYNQのADC/DACボードが実装から上がってきました。
早速、おそるおそる電源を投入します。こういうときは、安定化電源を定電流モードにして、徐々に電流を増やしていくといいのです。
とりあえずMITOUJTAGでバウンダリスキャンしてみたらFPGAが見えました!
これが見えるだけですごく安心できます。少なくとも電源のピンの間違いや、火を噴くような大きな間違いはなく、FPGAが活きているという証拠となります。
しかし、起動しない。。。
数時間のデバッグの末、原因がわかりました。
なんと、MIOの設定が間違っていたのです。
以前、特注用に作ったZYNQボードの違った基板の回路図をコピペしてきたので、この基板でも間違ってしまったのです。
↑どこが違うかわかりますか?これだとNANDブートモードになってしまいます。
とりあえずHでなければならない信号をHにするために隣のコンデンサにくっつけました。
これで、適当なSDカードを挿入すると・・・
やった!起動した!
UARTのコンソールはまだ使えないけど、BGAの端子がチカチカと動いて起動したのが見えました。
間違っていた箇所はMIO5をプルダウンしてしまっていたことです。
MIO5がLだとNANDモードになってしまいます。プルダウン抵抗を外しただけだとバウンダリスキャンではHレベルとして認識されるのですが、どうやらそれでは足りないみたいで、ちゃんとプルアップしなければPSはプルアップとして認識してくれないようでした。
おそらく、バウンダリスキャンはPLの機能で、実際に見ているのはPSだから、PSとPLで閾値とか違うんでしょうね。
それから、ZYNQにリセットをかけたとき、ZYNQは起動しようとしてMIO40とかMIO36とかにパルス的なのが出ます。MIO5が中途半端だとMIO40つまり、SDカードのところの信号が出ないのです。これで間違いに気が付くことができました。
MITOUJTAGを使っていなかったらこの間違いを見つけるのに1日以上かかっていたでしょう。
とりあえず、基板が届いた日に基本的な動作確認まで完了です。
動いて本当によかった。
ボードの開発って本当に緊張します。
| 固定リンク
コメント