2402531_ja-JP

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 

2402531_ja-JP

2402531_ja-JP

MIMXRT1064CVL5B カスタム基板のフラッシュメモリ故障
こんにちは、皆さん
MIMXRT1064CVJ5Bプロセッサーを利用したカスタムボードを導入します。この基板は、外部の5Vスイッチング電源から供給される3.3V低拡散発振器(LDO)によって駆動されます。私はMCUXpresso IDE内のSWDインターフェースを通じてプログラムとデバッグを行うためにCMSIS-DAP / DAP-Linkのデバッグプローブを使用しています。
コードの書き込みを試みると、非常に特定的で再現性の高い電源状態のクラッシュが発生します。
 
症状:
  1. 接続時に瞬時に電源が切れる:ボードが単独で動作している場合は正常に動作し、電源LEDは完全に点灯したままです。しかし、私がDAP-LinkプローブハーネスをボードのSWDヘッダーに接続したまさにその瞬間に、3.3Vレールが崩壊し、電源LEDが完全に消灯し、ボードの電源が切れてしまいます。これは、IDEでコマンドを実行する前や「Debug」をクリック する前に 行われます。
  2. デバッグ中の一時的な電力回復とクラッシュ: プローブを接続したままMCUXpressoの Debug ボタンを押すと、基板が突然復旧し、LEDが点灯します。しかし、点滅シーケンスが始まるとすぐに、システムは進行度3%でフリーズし、メモリ位置0x2000A750でワイヤACKフォルトとバスハングアップが発生します。このクラッシュ直後、基板の電源が再び切れ、LEDが消灯します。
 
LinkServerデバッグコンソールログ出力:
============= スクリプト:RT1064_connect.scp =============
RT1064 Connect スクリプト
DpID = 0BD11477 APID = 0x04770041
MPUの無効化
FlexRAMを768KB OC RAM、128BB I-TCM、128KB D-TCMに設定してください
終わり
======================================================
...
Flashでアドレス0x70000000に1322080バイトを書き込む方法
70008000 完成率3%(32768 の中 1048576)
DAPエラーのクリアリクエストが失敗 - ステータス5
エラーNn(05)の後。DAPアクセスにおけるワイヤーACK故障 -
DAP - Nn(05)でアドレスレジスタを読み取れませんでした。DAPアクセスにおけるワイヤーACK故障
送信失敗 OP 終了メッセージ - rc Em(17)。デバッグポートはアクセス後、0x2000A750
Commit Flashからのターゲットエラーは書き込み:Em(17)。デバッグポートはアクセス後、0x2000A750
 
これまでに試したこと:
  • 物理のはんだパッドを介してBOOT_MODE[1:0]から01(シリアルダウンローダーモード)にハードワイヤー接続し、アプリケーションの干渉を遮断しています。
  • ターゲットメモリ空間は、IDEリンカープロパティ内で内部4MBのQSPIフラッシュベースライン領域に 0x70000000 正しくマッピングされています。
  • 全く同じDAP-Linkプローブを使用して、同一のコードと構成パラメータでNXP公式のMIMXRT1064-EVKキットをシームレスにプログラムできます。
Screenshot 2026-08-06 161612.png
なぜ接続時に即座に電力低下が発生するのか、なぜデバッグ中にボードが一時的に起動するのか、そしてなぜフラッシュが3%の時点で常にフリーズしてしまうのか?このレイアウト特性を持つチップを確実にプログラムする方法について、何かご助言いただければ大変ありがたいです。
よろしくお願いします!
評価ボードRe: MIMXRT1064CVL5B Custom PCB Flash Failure

プローブを接続することで電力が低下した場合、CMSISプローブは接続時に急激にエネルギーを吸収するため、電源電圧が低下する可能性があります。システムの電源レールを確認してもらえますか?デバッガにはどれくらいの電流が必要ですか?

Re: MIMXRT1064CVL5B Custom PCB Flash Failure

こんにちは、 @Anushka_SS さん

NXP MIMXRTシリーズにご関心をお寄せいただきありがとうございます!

3つの症状(プローブを接続したときの電力低下→デバッグ→クリックすると3%で停止するなど)は、1つの根本原因を示しています。それは、ボードの3.3V電源マージン不足とSWD/VTrefの配線問題が重なり、ブラウンアウトシャットダウンを引き起こしたことで、ソフトウェアやフラッシュドライバーの問題ではありません。

私たちが自信を持っている理由:

  • Serial Downloaderに有線BOOT_MODEしているので、アプリケーションは動作しません — これで「アプリがデバッグピンを占有している」という可能性は除外されます。
  • 同じプローブと構成は公式のEVKでも問題なく動作しているので、違いは純粋にカスタムボードのハードウェアによるものです。
  • 単純なSWD接続はほとんど電流を流さないのに、3.3Vレール全体が崩壊します。これはプローブが3.3Vレールに負荷や逆流を送り、LDOが過電流保護に入ってトリップしていることを意味します。

0x2000A750について:このアドレスはDTCM(0x20000000領域)内にあり、フラッシュアルゴリズム(フラッシュローダー)が実行される場所です。3%の地点は、QSPIフラッシュへの連続書き込みが始まり、コア+FlexSPIの電流がピークに達する瞬間です。供給が維持できず、コアがブラウンアウトしてリセットされるため、Wire ACK故障が発生します。これは単に、デバイスが電圧低下で故障しただけであり、メモリの不良やコードのバグではありません。


よろしくお願いします、
ギャビン

Re: MIMXRT1064CVL5B Custom PCB Flash Failure

ご返信ありがとうございます!

実はカスタム 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ピンがローレベルになったため、レギュレータが無効化されています。

私の主な質問は以下のとおりです。

  1. なぜRT1064のPMIC_ON_REQは安定して高く上がらないのでしょうか?
  2. このランダムな電源アップの挙動はRT1064の電源順序調整やリセット回路によるものですか?
  3. SWDプローブを接続すると、なぜPMIC_ON_REQ/ENがローになるのですか?
  4. 3.3VレギュレータENはPMIC_ON_REQから直接制御すべきでしょうか、それともプルアップ/別の方法で処理すべきでしょうか?
  5. 3.3Vレールを安定させてRT1064に確実に電源を入れてプログラムできるようにする推奨方法は何でしょうか?
  6. POR_B、DCDC_IN、DCDC_OUT、VDD_SNVS_IN、VDD_HIGH_IN、またはブートモードのピンに、このような動作を引き起こす重要な要件はありますか?

以前、Teensy 4.1電源回路をベースにした別のカスタム基板を作ったことがありますが、そのボードは同じCMSIS-DAPプローブで正常にプログラムできました。新しいPCBは非常に似た電源回路を使っていますが、ブートモードのピンへのアクセスを追加し、リセットや電源セクションを少し変更しました。

レギュレータ部、リセット回路、電源ピン接続図、およびブートモード回路図を添付します。PMIC_ON_REQ/EN接続やRT1064の電源シーケンス回路が間違っているかどうか、また安定した電力と信頼できるSWDプログラミングに必要な変更点を教えていただけると助かります。Screenshot 2026-08-07 152409.pngScreenshot 2026-08-07 152533.png

Re: MIMXRT1064CVL5B Custom PCB Flash Failure

こんにちは、 @Anushka_SS さん

回路図をご提供いただきありがとうございます。確認してみたところ、いくつか問題点が見つかりました。

1. VDD_SNVS_IN:浮遊しているはずがない。VDD_SNVS_IN電源は他の電源より先に電源を入れるか、電源に接続(ショート)VDD_HIGH_INなければなりません。(データシート/RMで指定された電源オンシーケンスを厳守し、基板上で必ず確認してください。)

Gavin_Jia_0-1786518051860.png

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電流を供給することになりますが、これは推奨されません。


よろしくお願いします、
ギャビン



标记 (1)
无评分
版本历史
最后更新:
昨天
更新人: