プローブを接続することで電力が低下した場合、CMSISプローブは接続時に急激にエネルギーを吸収するため、電源電圧が低下する可能性があります。システムの電源レールを確認してもらえますか?デバッガにはどれくらいの電流が必要ですか?
こんにちは、 @Anushka_SS さん。
NXP MIMXRTシリーズにご関心をお寄せいただきありがとうございます!
3つの症状(プローブを接続したときの電力低下→デバッグ→クリックすると3%で停止するなど)は、1つの根本原因を示しています。それは、ボードの3.3V電源マージン不足とSWD/VTrefの配線問題が重なり、ブラウンアウトシャットダウンを引き起こしたことで、ソフトウェアやフラッシュドライバーの問題ではありません。
私たちが自信を持っている理由:
0x2000A750について:このアドレスはDTCM(0x20000000領域)内にあり、フラッシュアルゴリズム(フラッシュローダー)が実行される場所です。3%の地点は、QSPIフラッシュへの連続書き込みが始まり、コア+FlexSPIの電流がピークに達する瞬間です。供給が維持できず、コアがブラウンアウトしてリセットされるため、Wire ACK故障が発生します。これは単に、デバイスが電圧低下で故障しただけであり、メモリの不良やコードのバグではありません。
よろしくお願いします、
ギャビン
ご返信ありがとうございます!
実はカスタム i.MX RT1064ボードの電源アップとSWDプログラミングに問題があります。
私はTLV75733PDBV 3.3V LDOを使用しています。LDO入力は5Vで安定していますが、 ENピンの電圧が低いまま、または電圧がないため、レギュレータが3.3Vを出力しない場合があります。ENピンはRT1064がPMIC_ON_REQ信号を通じて直接制御します。
時々、PMIC_ON_REQ/ENが突然約3.3Vになり、レギュレータがオンになり、3.3Vレールが正しく立ち上がり、ボードの電源LEDが点灯し始めます。しかし、この動作は一定ではなく、基板の電源が入る場合もあれば、入らない場合もある。
ボードに正しく電源が供給され、その後MuseLab CMSIS-DAPプローブをSWDプログラミング用に接続すると、3.3Vの電源電圧が再び低下し、ボードの電源が切れます。その時点で、SWDエラーが出ます。例えば:
配線ACK故障
デバッグポートがアクセスできません
コアに接続できませんでした
測定された挙動はおおよそ次の通りです:
プローブなし:
U1 IN = 5.0 V
U1 EN = 3.3 V (場合による)
U1 OUT = 3.3 V
POR_B = 3.3 V
プローブを接続した後:
U1 IN = 5.0 V
U1 EN = 0 V
U1 OUT = 約1.2~1.8V
POR_B = 約2.1V
つまり、LDO自体は入力電力を失っていないようです。その代わりに、ENピンがローレベルになったため、レギュレータが無効化されています。
私の主な質問は以下のとおりです。
以前、Teensy 4.1電源回路をベースにした別のカスタム基板を作ったことがありますが、そのボードは同じCMSIS-DAPプローブで正常にプログラムできました。新しいPCBは非常に似た電源回路を使っていますが、ブートモードのピンへのアクセスを追加し、リセットや電源セクションを少し変更しました。
レギュレータ部、リセット回路、電源ピン接続図、およびブートモード回路図を添付します。PMIC_ON_REQ/EN接続やRT1064の電源シーケンス回路が間違っているかどうか、また安定した電力と信頼できるSWDプログラミングに必要な変更点を教えていただけると助かります。
こんにちは、 @Anushka_SS さん。
回路図をご提供いただきありがとうございます。確認してみたところ、いくつか問題点が見つかりました。
1. VDD_SNVS_IN:浮遊しているはずがない。VDD_SNVS_IN電源は他の電源より先に電源を入れるか、電源に接続(ショート)VDD_HIGH_INなければなりません。(データシート/RMで指定された電源オンシーケンスを厳守し、基板上で必ず確認してください。)
2. さらに、この3.3V電源はPMIC_ON_REQに依存してはならず、同時にVDD_SNVS_INの電源としても使用されなければならない。そうしないと、コールドスタート時にSNVSドメインの電源が切断され、内部ステートマシンがPMIC_ON_REQを出力するための信頼できる条件が得られなくなります。そのため、LDOは安定して電源を入れることができません。
PMIC_ON_REQはRT1064のSNVS/PMUドメインが稼働し、SNVSドメインがVDD_SNVS_INの有効な供給を必要としてからのみ安定して駆動されます。ボード上でVDD_SNVS_INがフローティング状態になっているため、PMIC_ON_REQの動作が不安定になります。ボードの電源が断続的にしか入らず、SWDプローブを接続した瞬間に予期せず電源が切れてしまいます。
さらに、PMIC_ON_REQから直接LEDを駆動しないでください。電源インジケータLEDは、安定した3.3V電源レール上に配置するか、バッファ/MOSFETで絶縁する必要があります。PMIC_ON_REQノードにLEDと470Ωをグランドに接続すると、この重要な電源要求ピンに実質的に大きな負荷/プルダウン経路が追加されます。ピンがハイインピーダンスまたはオープンドレインの「オン」状態の場合、LEDブランチはENを低レベルに引き下げます。プッシュプル出力であっても、この小さなSNVSドメイン制御ピンがLED電流を供給することになりますが、これは推奨されません。
よろしくお願いします、
ギャビン