Multi Source Translation Content

キャンセル
次の結果を表示 
表示  限定  | 次の代わりに検索 
もしかして: 

Multi Source Translation Content

ディスカッション

ソート順:
i.MX8M Plus — ECSPI/SPI NOR 接口上的辅助镜像启动 (IMG_CNTN_SET1_OFFSET):ROM 是否会回退到 OP 模式 i.MX8M Plus -- ECSPI/SPI 或非 上的辅助映像启动 (IMG_CNTN_SET1_OFFSET):ROM 是否会回退到 OPEN 配置? ==== 设置 ==== - SoC:i.MX8M Plus(定制SMARC模块) - 引导设备:ECSPI2 / CS1 上的串行 NOR(Winbond W25Q128,16 MiB)。这是传统的 eCSPI 控制器,不是 FlexSPI。 - 安全性:开放式配置(设备未关闭 HAB)。 - 熔丝 IMG_CNTN_SET1_OFFSET(熔丝读取 2 1)= 0x00000000。 - Flash 映射:主引导加载程序位于 0x000000,辅助副本位于 0x400000(4 MiB)。 根据已记录的SPI映射: “对于 SPI:如果熔丝位大于 10,则禁用辅助启动;n == 0 -> 偏移量 = 4 MB;n == 2 -> 1 MB;其他情况且 n <= 10 -> 1 MB * 2^n。” 当熔丝 n = 0(出厂默认值,无需烧录)时,二级偏移量应正好为 0x400000。 ==== 问题 ==== 我们在 0x400000 处放置了一个字节相同的、经 cmp.b 验证的主映像副本,然后使主启动头失效(sf erase 0 0x1000)并重置。 ROM 无法回退到备用映像——主板已变砖(只能通过 USB SDP 恢复)。 我们还尝试擦除主体内部的一个孔(sf erase 0x100000 0x40000),结果相同。 ==== 问题 ==== 1. 在 SPI/ECSPI NOR 上,是什么触发 ROM 在 IMG_CNTN_SET1_OFFSET 处切换到辅助映像? 是无效的主启动头/镜像解析失败,还是具体的 HAB 认证失败? 2. 辅助映像启动在开放(非安全)配置下是否有效,还是仅在设备 HAB 关闭时有效? 3. 是否恢复到之前的重置状态,还是需要断电重启/第二次重置(持久启动方式)? 4. 位于 0x400000 的辅助映像必须是单独构建的可引导映像(具有该偏移量的独立虚拟镜像/引导数据)吗? 或者,使用与原文件完全相同的字节副本就足够了? ==== 逻辑分析仪证据(RESET 期间捕获的 SPI 总线信号) ==== 我们使用 Saleae Logic Pro 16 以 500 MS/s 的速度探测 ECSPI2 总线(CLK、MOSI、MISO、CS),并在 RESET 期间解码每个 SPI 事务。为了进行比较,我们对从 FlexSPI 或非 启动并成功回退到辅助电源的 i.MX8QM 模块进行了同样的测试。 ---- i.MX8M Plus (ECSPI NOR),主控芯片已损坏 ---- ROM 只发出 0x03 READ 命令,严格从偏移量 0 开始顺序读取: 0x03 00 00 FC -> 读取 0x0000FC 0x03 00 04 EC -> 读取 0x0004EC 0x03 00 08 DC -> 读取 0x0008DC ……(每个 64 KiB 数据块约 50 次读取,呈严格递增趋势)…… 0x03 00 13 xx -> 读取计数在此处下降(擦除空洞 0x100000-0x140000,MISO=0xFF) 0x03 00 18 xx -> 线性地继续经过孔洞 ... 最高可达 ~0x1A69E8 ... ROM 会线性读取整个主区域,直接读取已擦除/无效区域(得到 0xFF),并且永远不会读取 0x400000 或 0x800000(辅助区域)。 在完整的捕获数据(2500 万个样本,654 个解码交易)中,任何地方都没有“0x03 40 xx xx”。 如果头完全擦除,ROM 会加载 0xFF,执行它,然后因同步中止而崩溃——没有任何回退机制。 作为对比,i.MX8QM(FlexSPI NOR)——备用方案确实有效—— 当仅主容器头失效(FCB 保持不变,地址为 0x000400)时,QM ROM 会执行以下操作: 0x0B 00 04 00 -> 快速读取 FCB @0x000400,MISO:46 43 46 42(“FCFB”魔数,FlexSPI 配置有效) 读取FCB配置数据…… 0x0B 00 10 00 -> 快速读取主容器 @0x001000,MISO:FF FF FF FF(无效!) 0x0B 40 10 00 -> 快速读取辅助容器 @0x401000,MISO:有效 <-- ROM 已切换,相同 RESET 0x0B 40 30 00, 0x0B 40 40 00, ... -> 加载整个二级镜像(在 0x40xxxx 处读取约 90 次) QM ROM 读取 FCB,配置 FlexSPI,检查 0x001000 处的主容器,发现为 0xFF, 然后立即(相同 RESET)切换到 0x401000 处的辅助容器。这样可行。 如果我们擦除前 4 MB 的全部数据(包括 FCB),QM ROM 只会进行 2 次读取操作。 在 0x000400 处,得到 0xFF,并且不会回退——因此需要有效的 FCB 才能启用回退。 - - 比较 - - i.MX8M Plus(本主板): 控制器:eCSPI(传统SPI) 读取操作码:0x03 读取 FCB 存在:否(eCSPI 没有 FCB 概念) 读取损坏的主服务器上的辅助服务器:否 -- 总线从未显示“0x03 40 xx xx” 结果:砖块(加载 0xFF -> 崩溃) i.MX8QM(参考): 控制器:FlexSPI 读取操作码:0x0B 快速读取 FCB 存在:是(0x400,魔法值“FCFB”) 读取损坏主盘上的辅助盘:是 -- "0x0B 40 10 00", 相同RESET 结果:辅助设备启动成功 ==== 摘要 ==== 从总线捕获信息来看,IMG_CNTN_SET1_OFFSET 辅助映像在 i.MX8M Plus 上启动。 似乎仅支持 FlexSPI,或者受 HAB 关闭配置的限制,并且无法启用。 适用于 OPEN 配置中的 eCSPI NOR。 NXP能否确认: - i.MX8M Plus 是否支持 eCSPI(而非 FlexSPI)或非 进行二次映像启动; - 触发条件是 HAB-auth-failure(仅限已关闭配置)还是任何无效标头(也包括已打开配置); - 回退方案是采用相同的重置方式还是需要断电重启; - 是否必须为该偏移量单独构建辅助副本,或者字节相同的副本也可以。 谢谢!
記事全体を表示
S32K148 FlexCAN 出力SOFパルスのみバスオフに入ります 私はこのプログラムをS32DSで開発しました。CANフレームを送信しようとする際、TXピンには短い低レベルパルスのみが出力され、その後のIDやデータビットが切り詰められるため、完全なフレームを送信できません。USB-CANアナライザーにはデータが受信されず、FlexCANコントローラは直接バスオフ状態に入ります。 クロック設定やレジスタ値を確認し、さまざまなCANチャネルも試しましたが、問題は解決していません。どの設定パラメータが誤って設定されているのかを突き止めたい。ご協力いただきありがとうございます。 Re: S32K148 FlexCAN Only Output SOF Pulse then Enter BusOff こんにちは、ジュリアンさん。 お返事ありがとうございます。先ほどのメッセージは急いで書いたため、いくつか重要な点を訂正し、追加したいと思います。 取締役会: これはサードパーティ製のボード(NXP EVBではありません)、モデルS32K148_REV2_Q144です。注意点として、販売者の回路図に誤り(ラベル付けされたトランシーバ位置が実際のPCBシルクスクリーンと一致しない)を見つけたため、この基板の**リファレンス・デザイン** **ドキュメント**は完全に信頼できるとは限りません。 公式CANの例: ビルドCan_example_S32K148試みましたが、CAN自体とは無関係な環境問題(ツールチェーンやインクルーパスの欠如、Port_Ci_Port_Ip.hとPort_Ci_Port_Ip_Cfg.hのバージョンミスマッチ—「異なるベンダーID」や「AutoSarバージョン番号が異なる」など)に遭遇しました。これは自分のプロジェクトとRTDパッケージのバージョンが不一致しているのであって、IDEの問題ではありません。解決しようと思いますが、ハードウェアの問題の中心ではないと思います。 新たな証拠(既にレビューいただいた私のプロジェクトから):前回のメッセージ以降、ロジックアナライザを使ってより詳細な検証を行いました。 MB8 の内容は 100% 正しいです。CDD_CanTransmit() の直後にレジスタから直接読み取った結果は次のとおりです。CS=0x0C080000 (CODE=0xC 保留中、DLC=8)、ID=0x00400304 (>>18 = 0x10、設定と一致)、DATA=0x01020304/0x05060708 (私の 8 バイトのペイロードと完全に一致)。 ピンのTX信号も正確で 、PTE5とトランシーバのTXD入力を同時に探査(200MHzロジックアナライザ)すると、2つの波形は同一であり、PCBトレースは問題ないことが確認できます。 しかし、送信はわずか8〜9ビットの遷移( おおよそSOF + 数ビットの仲裁ビット)で中止され、コントローラーは間もなくバスオフに入ります(ESR1がFLTCONF=11を確認し、TXERRCNTは各試みごとに増分します)。 CANH/CANLは、USB-CANアナライザーを正しく接続し、120Ω終端を有効にしていても(バスがフローティングしていない状態)でも、活動はゼロです。対照実験として、同じ設定(フローティング状態と終端状態)を別の正常に動作することが確認されているSTM32ボードで実行したところ、終端状態になるとCANHは適切な遷移を示しました。私のS32K148ボードでは、同一の終端条件下において、CANH/CANLは完全に平坦なままです。 CAN1でも同じ結果でした(ピンやトランシーバが違う)。 MCU側のTXDはトランシーバ入力まで正確であることが確認されていますが、CANH/CANLは適切な終端をしても応答しません。したがって、トランシーバの出力段階(または両チャネルで共有されている何か、例えば電源の過渡的な挙動については、オシロスコープでは確認できず、ロジックアナライザでしか確認できていません。 質問: 「TXDはトランシーバー入力で修正されるが、適切な終端でCANH/CANLは完全にフラット」というのは、トランシーバーのハードウェア故障を強く示唆するのでしょうか?それとも、他に一般的な基板レベルの問題(有効化/スタンバイ回路、電源デカップリング)がこの症状を引き起こす可能性があるのでしょうか? 実際のバスアクティビティがない場合、FlexCANは最初の数ビットのアービトレーション処理が完了した時点で(フレーム全体を完了してACKスロットで失敗するのではなく)処理を中止するのが想定される動作でしょうか?ビット監視メカニズムに関する私の理解を確認したいです。 サンプルプロジェクトのRTDバージョンの不一致についてですが、どのRTDバージョンが特定のS32構成ツールのリリースと一致しているか確認する方法はありますか?そうすれば、一致するサンプルパッケージを入手できます。 ご協力ありがとうございました。 よろしくお願いいたします、エイプリル Re: S32K148 FlexCAN Only Output SOF Pulse then Enter BusOff こんにちは、ジュリアンさん。 私の質問にご回答いただき、本当に驚き、そして感謝しています。   私は自作のハードウェアボードを使っています。公式のEVB回路と異なるのは電源回路のみであり、それ以外の回路はリファレンス・デザインと整合しています。 公式のCAN例プロジェクトもテストしました。MCALレイヤー内のPORTモジュールを有効化および設定せずにCAN0ピンのみを設定したところ、プロジェクトのコンパイルが繰り返し失敗します。   具体的なコンパイルエラーは次のとおりです。 「 f ../board/Port_Ci_Port_Ip_Cfg.h:47:10: fatal error: Port_Ci_Port_Ip_Types.h: そのようなファイルまたはディレクトリはありません"。   自分で設定したプロジェクトファイルにはこのヘッダーファイルが存在するのですが、公式のサンプルプロジェクトをインポートした後、コード生成時にこのヘッダーファイルが自動的に生成されません。 このヘッダーファイルの欠如エラーは、IDEソフトウェアのバージョンが不一致であることが原因かもしれませんか?現在は S32プラットフォーム用のS32DSで開発しており、開発環境を切り替えるために ARM 2.2.2用のS32DS をダウンロードしています。 ご指導をお待ちしております。   よろしくお願いいたします。   4月 Re: S32K148 FlexCAN Only Output SOF Pulse then Enter BusOff こんにちは、 @April さん。 プロジェクトを見る限り、設定と手順は正しいようです。NXPのS32K148EVBを使っているのか、それともカスタムデザインなのか教えていただけますか? RTDに含まれているCan_example_S32K148プロジェクトをテストしてみましたか?CAN0ピンを追加し、ループバックモードを無効にしてTx/Rxを有効にしてルーチンをテストするだけで済みます。 最後に、両方のノード(S32K148とCANアナライザー)が同じビットタイミングとプロトコル構成(CAN対CAN FD)に設定されているか確認しましたか?以下のツールを使って値を計算できます:MPC5xxx/S32Kxx/LPCxxxx: CAN / CAN FD ビットタイミング計算。 カスタム設計を使用する場合は、S32K148 EVBの回路図およびS32K1xxのハードウェア設計ガイドラインを参照して、CANインターフェース設計や推奨事項を確認できます。 よろしくお願いします、 ジュリアン
記事全体を表示
flex-installer「lsdk2606」バージョンを使用している「imx95-15x15-frdm」Debianで「Weston.Service」に問題が発生しました。 こんにちは、 flex-installerバージョン「 lsdk2606 」を使用してDebianイメージをインストールしました。 ネタバレ (ハイライトして読む) Sudo Flex-installer -I auto -d /dev/sdX -m imx95-15x15-frdm Sudo Flex-installer -I auto -d /dev/sdX -m imx95-15x15-frdm 私のimx95-15x15-frdmでは その後、標準の手順に従ってインストールを続行しました。 ネタバレ (ハイライトして読む) debian-post-install-pkg debian-post-install-pkg すべてのパッケージをインストールし再起動した後、起動時に以下のエラーが発生しました: ネタバレ (ハイライトして読む) [失敗] weston.service - W…nd コンポジターをシステムサービスとして起動できませんでした。 [失敗] weston.service - W…nd コンポジターをシステムサービスとして起動できませんでした。 ネタバレ (ハイライトして読む) root@imx95-15x15-frdm:~# systemctl status weston.service × weston.service - システムサービスとしてのWaylandコンポジタであるWeston ロード済み: ロード済み (/usr/lib/systemd/system/weston.service;有効; プリセット: 有効) アクティブ: 失敗 (結果: 終了コード) 2026年7月20日(月) 13:51:20 UTC以降; 19秒前 呼び出し: 67b22b0fa1484ce681d8b2acdc107add トリガー: ● weston.socket ドキュメント: man:weston(1) man:weston.ini(5) http://wayland.freedesktop.org/ プロセス: 408 ExecStart=/usr/bin/weston --log=${XDG_RUNTIME_DIR}/weston.log --modules=systemd-notify.so (code=exited, status=1/FAILURE) メインPID: 408 (コード=終了、ステータス=1/失敗) メモリピーク:3.5M CPU: 49ms 7月20日 13:51:19 imx95-15x15-frdm systemd[1]: weston.service - WaylandコンポジタであるWestonをシステムサービスとして開始します... 7月20日 13:51:19 imx95-15x15-frdm (weston)[408]: pam_unix(weston-autologin:session): user root(uid=0) by (uid=0) がセッションを開きました 7月20日 13:51:20 imx95-15x15-frdm systemd[1]: weston.service:メインプロセスが終了しました。終了コード=exited、ステータス=1/FAILURE 7月20日 13:51:20 imx95-15x15-frdm systemd[1]: weston.service:結果「exit-code」で失敗しました。 7月20日 13:51:20 imx95-15x15-frdm systemd[1]: weston.service - WaylandコンポジタであるWestonをシステムサービスとして起動できませんでした。 root@imx95-15x15-frdm:~# systemctl status weston.service×weston.service - Wayland コンポジタである Weston をシステム サービスとしてロードしました: ロード済み (/usr/lib/systemd/system/weston.service;有効; プリセット: 有効) アクティブ: 失敗 (結果: 終了コード) 2026年7月20日(月) 13:51:20 UTC以降; 19秒前 呼び出し: 67b22b0fa1484ce681d8b2acdc107add トリガー: ● weston.socketドキュメント: man:weston(1) man:weston.ini(5) http://wayland.freedesktop.org/プロセス:408 ExecStart=/usr/bin/weston --log=${XDG_RUNTIME_DIR}/weston.log --modules=systemd-notify.so (code=exited, status=1/FAILURE) メインPID: 408 (code=exited, status=1/FAILURE) メモリピーク:3.5M CPU: 49ms 7月20日 13:51:19 imx95-15x15-frdm systemd[1]: weston.service - Weston、Waylandコンポジター、システムサービスとして...7月20日 13:51:19 imx95-15x15-frdm (weston)[408]: pam_unix(weston-autologin:session): ユーザーroot(uid=0) by (uid=0) がユーザーroot(uid=0)のためにセッションを開きました by (uid=0) 7月20日 13:51:20 imx95-15x15-frdm systemd[1]: weston.service:メインプロセスが終了しました。コード=exited、ステータス=1/FAILURE 7月20日 13:51:20 imx95-15x15-frdm systemd[1]: weston.service:結果「exit-code」で失敗しました。Jul 20 13:51:20 imx95-15x15-frdm systemd[1]: weston.service - Wayland コンポジタである Weston をシステム サービスとして起動できませんでした。 ネタバレ (ハイライトして読む) root@imx95-15x15-frdm:~# cat /run/user/0/weston.log 日付: 2026年7月20日 UTC [12:34:22.150]ウェストン 14.0.2 https://wayland.freedesktop.org バグ報告先: https://gitlab.freedesktop.org/wayland/weston/issues/ ビルド: LSDK-25.12_DEBIAN-13_LF-6.12.20-168-g2ddc741+ [12:34:22.153]コマンドライン: /usr/bin/weston --log=/run/user/0/weston.log --modules=systemd-notify.so [12:34:22.153]OS: Linux、6.12.49、#5 SMP PREEMPT 2026年5月28日木曜日 13:07:26 KST、aarch64 [12:34:22.153]フライトレコーダー:有効 [12:34:22.155]設定ファイル「/etc/xdg/weston/weston.ini」を使用します。 [12:34:22.156]出力再描画ウィンドウの最大時間は16ミリ秒です。 [12:34:22.158]モジュールの読み込み '/usr/lib/libweston-14/drm-backend.so' [12:34:22.162]モジュールの読み込みに失敗:libdisplay-info.so.1:共有オブジェクトファイルを開けません:そのようなファイルやディレクトリはありません [12:34:22.162]致命的エラー: コンポジターバックエンドの作成に失敗しました root@imx95-15x15-frdm:~# cat /run/user/0/weston.logDate:2026年7月20日 UTC[12:34:22.150]weston 14.0.2https://wayland.freedesktop.orgバグは https://gitlab.freedesktop.org/wayland/weston/issues/Build に報告します。LSDK-25.12_DEBIAN-13_LF-6.12.20-168-g2ddc741+[12:34:22.153]コマンドライン: /usr/bin/weston --log=/run/user/0/weston.log --modules=systemd-notify.so[12:34:22.153]OS: Linux, 6.12.49, #5 SMP PREEMPT 2026年5月28日(木) 13:07:26 KST, aarch64[12:34:22.153]フライトレコーダー:有効[12:34:22.155]設定ファイル「/etc/xdg/weston/weston.ini」を使用しています[12:34:22.156]出力再描画ウィンドウの最大時間は16ミリ秒です。[12:34:22.158]モジュールの読み込み '/usr/lib/libweston-14/drm-backend.so'[12:34:22.162]モジュールの読み込みに失敗しました: libdisplay-info.so.1: 共有オブジェクトファイルを開けません: そのようなファイルやディレクトリはありません[12:34:22.162]致命的エラー: コンポジターバックエンドの作成に失敗しました 私も同じエラーが出ています(関連があるかどうかはわかりませんが)、でも画面には何も表示されません。 ネタバレ (ハイライトして読む) it6263 3-004c: DDC FIFOのクリアに失敗しました it6263 3-004c: EDIDの読み取りに失敗しました it6263 3-004c: DDC FIFOのクリアに失敗しました。it6263 3-004c: EDIDの読み取りに失敗しました。
記事全体を表示
2026 年顶级生成式人工智能开发公司 Apptunix 是一家值得信赖的生成式人工智能开发公司,提供先进的生成式人工智能解决方案,帮助企业实现流程自动化和构建智能数字产品。该公司开发人工智能驱动的应用程序,例如智能聊天机器人、人工智能助手、推荐引擎和内容生成工具。凭借在人工智能、移动应用程序开发和企业软件方面的丰富专业知识,Apptunix帮助初创企业和大型组织将生成式人工智能整合到其数字战略中。 Re: Top Generative AI Development Company in 2026 2026 年,为您的人工智能项目寻找合适的团队,不需要太多的承诺,更需要的是真正的能力。许多公司都将自己定位为领导者,但只有少数几家公司能真正在提供实用、以业务为重点的解决方案方面脱颖而出。 在评估生成式人工智能开发公司时,首先要注意的是他们对您的用例有多了解。最好的团队不会只谈论模型或工具,他们关注的是结果、效率以及人工智能如何融入工作流程。 强大的投资组合、清晰的沟通和解决问题的思维方式是顶级公司与其他公司的区别所在。他们不是追逐潮流,而是构建在真实环境中真正起作用的解决方案,并随着时间的推移不断改进。 同样重要的是,要选择一家不仅仅考虑开发的公司。真正的价值来自于长期的支持、更新以及随着需求增长而进行调整的能力。 归根结底,"顶级 "公司并不是最受欢迎的公司,而是了解您的目标并帮助您实现这些目标,同时避免不必要的复杂性的公司。 Re: Top Generative AI Development Company in 2026 企业采用 生成式人工智能聊天机器人开发通过自动化、个性化和全天候参与获得竞争优势。我们的人工智能开发服务专注于为网络和 React Native 应用程序开发环境量身打造智能、上下文感知聊天机器人。我们利用最先进的机器学习、提示工程和对话式人工智能框架来创建机器人,以了解用户意图、改善客户旅程并提高销售业绩。 Re: Top Generative AI Development Company in 2026 2026 年没有一家 "顶级 "生成式人工智能公司--这取决于你的使用案例。埃森哲或 IBM 等大型公司在企业级项目方面实力雄厚,但成本较高,速度较慢。中型人工智能专家更适合定制 LLM 应用程序、RAG 管道和集成。 敏捷团队通常注重更快的执行和真正的部署。我看到有人提到过Tabdelta Solutions这样的公司,他们可以打造实用的人工智能产品和自动化系统。最终,要根据专业知识、速度和提供生产就绪解决方案的能力进行选择。 Re: Top Generative AI Development Company in 2026 很好的补充。Apptunix已经建立了良好的记录,尤其是在移动人工智能方面。 对于评估除此之外的供应商的任何人来说,根据其核心定位将公司区分开来都很有帮助:有些是移动优先的商店,已将Gen AI添加到其堆栈中,而另一些公司则从头开始围绕人工智能建立了整个业务。 值得补充的一家公司是Maruti Techlabs。他们从事人工智能行业已有 15 年以上,交付了 100 多个项目。他们的 Gen AI 工作涵盖定制 LLM 开发、RAG 管道、AI 代理和企业自动化。客户包括红牛和《哈佛商业评论》等知名企业。Clutch 和 GoodFirms 都将其评为顶级人工智能公司。 根据你正在构建的内容,无论是人工智能驱动的产品还是企业工作流程层,这些供应商之间的合适之处可能会有很大差异。 Re: Top Generative AI Development Company in 2026 选择合适的 AI 合作伙伴取决于专业知识、创新能力以及提供以业务为中心的解决方案的能力。Nimble AppGenie 是一家值得信赖的生成式人工智能开发公司,致力于帮助初创公司和企业构建由生成式人工智能、LLM、人工智能代理和自动化技术驱动的智能应用程序。我们的团队开发定制化的人工智能解决方案,以提高生产力、简化业务运营、改善客户体验并支持数字化转型。Nimble AppGenie 专注于可扩展性、网络安全和实际业务成果,使组织能够充分利用人工智能在各个行业的潜力,包括金融科技、医疗保健、电子商务、物流和教育。
記事全体を表示
请求开启 SW32K14-MCAL421-RTMC-1.0.1 下载的访问权限 嗨,恩智浦支持团队、 我想申请SW32K14-MCAL421-RTMC-1.0.1 的下载权限。 目前,我的恩智浦软件许可页面中的 “税务摊销收益” 显示为灰色,我无法访问此版本。 我的用户名是Chefanqf。 该版本需要与基于S32K14x MCAL 4.2 的现有项目兼容。 能否请您帮助在我的账户下启用该软件的权限? 非常感谢你们的支持! 顺祝商祺! Re: Request to enable access for SW32K14-MCAL421-RTMC-1.0.1 download 嗨,@Chefanqf、 你能试着在 nxp.com(搜索 | 恩智浦半导体)中搜索 " S32K1 MCAL " 然后用以下方式输入 flexera 吗? 然后,选择 Automotive SW - AUTOSAR MCAL / QM,就可以使用以前的软件了。 如果 " Previous " 税务摊销收益仍显示为灰色,你可以尝试通过直接链接进入:SW 32K14-MCAL421-RTMC-1.0.1。如果您要使用直接链接,请确认您已登录 nxp.com。 致以最诚挚的问候, Julián Re: Request to enable access for SW32K14-MCAL421-RTMC-1.0.1 download 嗨,恩智浦支持团队、 我希望申请下载权限。 SW32K14-MCAL421-RTMC-1.0.1 。 目前,我的 NXP 软件许可页面中出现了“上一页”选项卡。 灰色 我无法访问此版本。 我的账号用户名是mianlongxu 为了与基于现有项目的兼容性,需要此版本。 S32K14x MCAL 4.2 。 能否请您帮助在我的账户下启用该软件的权限? 非常感谢你们的支持! 顺祝商祺! Re: Request to enable access for SW32K14-MCAL421-RTMC-1.0.1 download 你好@mianlongxu , 请提交支持工单: NXP 支持。 此致, 朱利安
記事全体を表示
S32K358 多核数据共享 你好 , 我正在尝试在 s32k358 多核处理器中使用共享内存。 我正在学习用户自定义示例, 当我尝试在buzzer_state_shared_data_U32 中赋值时(目前只有核心 0 访问此内存),核心 0 挂起并 swt 重置控制器。 但是当我把代码烧录到调试闪存中时,它运行正常。上电复位后,核心 0 卡住。 为什么刷机时运行正常,而断电重启后却无法运行? Re: S32K358 multi core data sharing 你好@Julián_AragónM , 感谢您的快速回复。 我检查了启动文件,SRAM 初始化正在进行。 我已附上启动文件和链接器文件。请协助我解决这个问题。 Re: S32K358 multi core data sharing 你好@nirmal_masilamani , 但是当我把代码烧录到调试闪存中时,它运行正常。上电复位后,核心 0 卡住。 这很可能是由ECC RAM错误引起的。通常情况下,调试器会在易失性存储器上初始化 ECC,但是,在开机和关机时,调试器不会初始化 RAM,因此在尝试访问内存时会发生硬故障。 这通常是在启动代码中,在 main 函数之前完成的。 该部分还应配置为不可缓存。 关于你的第二个问题:但是当我尝试从定时器中断服务例程或操作系统任务访问它时,核心 0 会发生硬故障。 您可以尝试追溯硬故障。在 HardFault_Handler() 中停止内核,并在内核寄存器中找到 SP 值:如何调试 ARM Cortex-M(V7M) MCU(S32K3XX) 上的故障异常。 此致, 朱利安 Re: S32K358 multi core data sharing 你好, 当我在 main() 中访问共享内存时,即使在断电重启后也能正常工作,但是当我尝试从定时器中断服务例程或操作系统任务中访问它时,核心 0 会发生硬故障。 请支持我。 Re: S32K358 multi core data sharing 你好@Julián_AragónM , 请协助解答此问题。我到底漏掉了什么? Re: S32K358 multi core data sharing 你好@nirmal_masilamani , 在不使用调试器的情况下,能否在 POR RESET 后通过 main() 函数访问共享内存?问题是否出在内存初始化上? 但是当我尝试从定时器中断服务例程或操作系统任务访问它时,核心 0 会发生硬故障。 您是否能够像我上次回复中提到的那样,确定故障类型? 您是否也确保将变量放置在不可缓存的区域中,或者禁用了缓存? 建议如下: 对 core1Status 保持 volatile 状态,并在读取(Core0)和写入(Core1)两侧使用__DMB()/__ DSB() 屏障。 您的问题也可能是由 MPU 配置引起的,如果定义了 MPU_ENABLE,请在任何 ISR 或 OS 任务开始执行之前调用 MPU 配置。 您可以参考以下链接: Arm Cortex-M7 设备通用用户指南 r1p2和AN14715:S32K3XX 硬件资源隔离和保护。 此致, 朱利安 Re: S32K358 multi core data sharing 你好@Julián_AragónM , 谢谢你的回复。 很遗憾,我无法继续进行这项工作,我会仔细核查您提出的观点。
記事全体を表示
Unable to compile YOLOv8/YOLO11 TFLite models for i.MX95 Neutron NPU Hello NXP Support Team, We are evaluating object detection on the FRDM i.MX95 platform using the Neutron SDK v3.1.3 and are unable to generate an NPU-compatible model. The Neutron converter successfully loads the model, but reports that 0 operators are mapped to the Neutron NPU. Environment Target Board: FRDM i.MX95 Neutron SDK: 3.1.3 Ultralytics: Tested with both YOLO11 and YOLOv8 eIQ Toolkit: Used for ONNX → TFLite conversion Model: Custom single-class peg detector Training Command $ yolo detect train \ model=yolov11n.pt \ data=/visual_inspect_yolo/dataset/dataset.yaml \ imgsz=640 \ epochs=100 \ batch=16 \ project=models \ name=peg_detector_v8 Export Command $ yolo export \ model=models/peg_detector_v84/weights/best.pt \ format=tflite \ int8=True \ data=/visual_inspect_yolo/dataset/dataset.yaml We also tested an alternative workflow: Export PyTorch → ONNX Convert ONNX → INT8 TFLite using the NXP eIQ Toolkit Both workflows produced the same result when compiled with the Neutron SDK.   Neutron Compilation ~/Downloads/eiq-neutron-sdk-linux-3.1.3/bin/neutron-converter \ --target imx95 \ --input best_int8.tflite \ --output my_model_int8_npu.tflite   Converter Output The converter reports: Operators after import: 341 Operators after optimization: 367 Operators converted: 0 Operator conversion ratio: 0 / 367 Number of Neutron graphs: 0 Warnings: WARNING: None of the operators from the graph was mapped to Neutron. WARNING: The converted model is the same as the input model because no operators were mapped to Neutron. WARNING: Graph has FLOAT operators which are NOT supported! This can result in low conversion ratio. Additional Information We observed the same behavior with: YOLO11 YOLOv8 Direct Ultralytics TFLite export ONNX → eIQ Toolkit → INT8 TFLite All generated TFLite models result in 0 operators being mapped by the Neutron compiler. Questions Are YOLOv8 or YOLO11 object detection models officially supported by the Neutron compiler for the i.MX95? Is there a recommended export pipeline for YOLO models targeting the i.MX95 NPU? Are there any known limitations with the current Neutron SDK (v3.1.3) regarding YOLO detection heads? Does NXP provide a reference YOLOv8/YOLO11 model that successfully compiles for the i.MX95 NPU? Is there any additional compiler option or preprocessing step required to enable operator mapping? We would appreciate any guidance, recommended workflows, or reference models that are known to work with the i.MX95 Neutron NPU. Thank you. Re: Unable to compile YOLOv8/YOLO11 TFLite models for i.MX95 Neutron NPU Thank you for your response. I would like to inquire if there is a standard procedure available for training, exporting, and deploying models on the IMX95 board. As we currently have the ARA2, we are looking to fully utilize its capabilities and customize our models. We have upcoming demos for NXP Tech Days, and your assistance in this matter would be greatly appreciated. Thank you for your help. Re: Unable to compile YOLOv8/YOLO11 TFLite models for i.MX95 Neutron NPU Tried the yolo8m model from eIQ model zoo on imx95 board with LF 2026 Q2 release image. kernel version is 6.18.20 using neutron SDK 3.1.2. it works.     You can try it firstly by: wget https://huggingface.co/EdgeFirst/yolov8-det/resolve/main/imx95/yolov8n-det-int8-smart.imx95.tflite root@imx95evk:/usr/bin/tensorflow-lite-2.19.0/examples# ./benchmark_model --graph=yolov8n-det-int8-smart.imx95.tflite --external_delegate_path=/usr/lib/libneutron_delegate.so more info you can refer the README eiq-model-zoo/tasks/vision/object-detection/yolov8 at main · NXP/eiq-model-zoo What's more, you can attached model and details log of convert/complier. Re: Unable to compile YOLOv8/YOLO11 TFLite models for i.MX95 Neutron NPU Based on the converter log, the first issue to resolve is that the generated TFLite model still contains FLOAT operators:   WARNING: Graph has FLOAT operators which are NOT supported! For i.MX95 Neutron, the input to neutron-converter must be a TFLite model whose operators and quantization format are compatible with the Neutron compiler. In particular, the i.MX95 Neutron flow expects quantized TFLite and symmetric int8 weights. If the model still contains FLOAT operators/tensors after the Ultralytics export or ONNX-to-TFLite conversion, the converter may be unable to create any Neutron-compatible subgraph, which is consistent with the reported result:   Operators converted: 0   Number of Neutron graphs: 0 YOLOv8 has been evaluated on i.MX95 in some flows, but full end-to-end YOLOv8/YOLO11 offload should not be assumed for arbitrary Ultralytics exports. Depending on the exported TFLite graph, only part of the model may be converted to NeutronGraph and unsupported operators will remain on CPU. Therefore, the recommended next step is to inspect/profile the generated TFLite model and confirm: the graph is fully quantized, there are no FLOAT operators, weights are symmetric int8, input/output tensor types are compatible, or converted with the Neutron converter uint8-to-int8 options if applicable, YOLO post-processing such as decode/NMS is kept outside the NPU graph unless the exact operators are confirmed supported by the SDK. Please also ensure that the neutron-converter version and the Neutron runtime/firmware/delegate on the board are from the same compatible SDK/BSP release. As a recommended flow, please try the NXP/eIQ conversion path:   PyTorch -> ONNX with static input shape -> NXP/eIQ quantization with representative calibration data -> quantized TFLite -> neutron-converter --target imx95 If the model has uint8 input/output tensors, please also test:   --convert-inputs-uint8-to-int8   --convert-outputs-uint8-to-int8 If the conversion still reports 0 mapped operators after removing FLOAT operators, please share:   - the complete neutron-converter log with verbose/profiling output if available,   - the TFLite operator list,   - tensor data types and quantization parameters,   - the exact BSP/runtime Neutron delegate/firmware versions on the FRDM i.MX95 board,   - whether the YOLO detection head includes NMS or other post-processing inside the TFLite graph. Re: Unable to compile YOLOv8/YOLO11 TFLite models for i.MX95 Neutron NPU Hi  i am running ubuntu 24.04, but eiq_toolkit is avaialble for only 20.04.03.  how can i use eiqToolkit and Quantization Using eIQ Toolkit Re: Unable to compile YOLOv8/YOLO11 TFLite models for i.MX95 Neutron NPU Recommended End-to-End Workflow Model Training (PC) Train using your preferred framework: Ultralytics YOLOv8 PyTorch TensorFlow ONNX-native workflows For object detection, NXP already provides YOLO reference recipes in the eIQ Model Zoo, including YOLOv8 object detection models. [github.com], [github.com] Example: Shell yolo detect train \ model=yolov8n.pt \ data=dataset.yaml \ imgsz=640 \ epochs=100 ` Export to ONNX NXP generally recommends using ONNX as the interchange format before quantization and deployment. yolo export \ model=best.pt \ format=onnx The Neutron enablement presentations explicitly describe a flow based on: Plain Text PyTorch ↓ ONNX ↓ Quantization ↓ TFLite ↓ Neutron Converter rather than directly targeting deployment from training artifacts. Quantization Using eIQ Toolkit The Neutron workflow documentation recommends using the eIQ Toolkit quantization utilities: python -m onnx2quant \ model.onnx \ -o model_quant.onnx \ -c input:: `` followed by: python -m onnx2tflite \ model_quant.onnx \ -o model_int8.tflite Show more lines This flow is explicitly documented in the i.MX95 Neutron enablement material. Compile for i.MX95 Neutron NPU neutron-converter \ --target imx95 \ --input model_int8.tflite \ --output model_neutron.tflite The Neutron converter creates Neutron-specific graph partitions that can be offloaded to the NPU. Validate Conversion Ratio A successful NPU deployment should report something similar to: Number of operators converted > 0 Number of Neutron graphs > 0 If you see: Operators converted: 0 Number of Neutron graphs: 0 then the model is not being accelerated by the NPU. Your current issue falls into this category. Deploy on FRDM-i.MX95 Run using TensorFlow Lite with the Neutron delegate: ./benchmark_model \ --graph=model_neutron.tflite \ --external_delegate_path=/usr/lib/libneutron_delegate.so `` or ./label_image \ --external_delegate_path=/usr/lib/libneutron_delegate.so The i.MX Machine Learning User Guide identifies the Neutron Delegate as the acceleration mechanism for i.MX95 TensorFlow Lite models. Re: Unable to compile YOLOv8/YOLO11 TFLite models for i.MX95 Neutron NPU In my test I did not train or export the model myself. I used a pre-generated YOLOv8 model from the eIQ Model Zoo and verified that it runs on the i.MX95 platform. The only command I actually used was: ./benchmark_model \ --graph=yolov8n-det-int8-smart.imx95.tflite \ --external_delegate_path=/usr/lib/libneutron_delegate.so `` with the model: wget https://huggingface.co/EdgeFirst/yolov8-det/resolve/main/imx95/yolov8n-det-int8-smart.imx95.tflite For custom models, the recommended NXP flow is: PyTorch ↓ ONNX (static input shape) ↓ eIQ Toolkit ONNX2Quant ↓ eIQ Toolkit ONNX2TFLite ↓ Quantized TFLite ↓ neutron-converter --target imx95 Since your model reports: Plain Text Operators converted: 0 Number of Neutron graphs: 0 WARNING: Graph has FLOAT operators which are NOT supported! I suspect your generated TFLite graph is structurally different from the eIQ Model Zoo reference model. The first thing I would recommend is comparing the two models for: Input/output tensor type (INT8 vs UINT8) Presence of FLOAT operators Decode/NMS layers inside the graph Operator list reported by Netron / TFLite analyzer Re: Unable to compile YOLOv8/YOLO11 TFLite models for i.MX95 Neutron NPU Can you please tell me how did you convert yolov8m_full_integer_quant.tflite to be able to run on the imx95 NPU?  Step followed and environment setup data(HOST).. would greatly help us. Re: Unable to compile YOLOv8/YOLO11 TFLite models for i.MX95 Neutron NPU Since eIQ Toolkit was validated on Ubuntu 20.04, the safest approach is: Docker Run a Ubuntu 20.04 container on your Ubuntu 24.04 host: docker run -it --name eiq \ ubuntu:20.04 /bin/bash Then install the required dependencies and eIQ Toolkit inside the container. Re: Unable to compile YOLOv8/YOLO11 TFLite models for i.MX95 Neutron NPU Unable to preserve confidence output when converting custom YOLOv8 ONNX model using eIQ Toolkit (onnx2quant) Overview Hi NXP Team, I'm trying to deploy a custom YOLOv8 single-class object detection model on the FRDM i.MX95 using the eIQ Toolkit. The complete conversion pipeline runs successfully, but after onnx2quant, the confidence output becomes all zeros while the bounding box outputs remain valid. Environment - Ubuntu 24.04 - Python 3.10 - eIQ ONNX2TFLite 0.9.0 - ONNX Runtime 1.21.1 - TensorFlow 2.21 - neutron-converter 3.1.3 - Target: FRDM i.MX95 (tflite_runtime 2.19 + Neutron delegate) Conversion Pipeline 1. Train yolo detect train model=yolov8n.pt data=dataset.yaml imgsz=640 epochs=50 2. Export ONNX yolo export model=best.pt format=onnx opset=13 3. Verify ONNX Input : (1,3,640,640) Output: (1,5,8400) ONNX Runtime inference: Confidence Channel Max = 0.773 4. Generate calibration dataset Shape : (1,3,640,640) dtype : float32 Range : 0.0 - 1.0 5. Quantize onnx2quant best.onnx -c "images;calibration/images" -o best_quant.onnx Also tested: onnx2quant best.onnx -u Both produce the same result. 6. Verify Quantized ONNX Output : (1,5,8400) Bounding box channels remain valid. Confidence: Min = 0 Max = 0 Mean = 0 Decoded detections = 0 7. Convert to TFLite onnx2tflite best_quant.onnx -o best.tflite 8. Compile for Neutron neutron-converter --target imx95 --input best.tflite --output best_neutron.tflite Compilation succeeds. Operator conversion: 278 / 325 (85.5%) Investigation Performed Verified: • PyTorch model works • ONNX export works • ONNX Runtime inference works • Calibration dataset is correct • Real and random calibration produce identical results • TFLite reproduces the Quantized ONNX output • Neutron reproduces the TFLite output The issue first appears after: ONNX ↓ onnx2quant ↓ Quantized ONNX (confidence becomes zero) Additional Observation NXP reference model: Input : (1,640,640,3) INT8 Output: (1,84,8400) INT8 My converted model: Input : (1,3,640,640) FLOAT32 Output: (1,5,8400) FLOAT32 Is there a recommended export or quantization workflow for custom YOLOv8 models that preserves the confidence output? Could this be a limitation or bug in onnx2quant for models with a (1,5,8400) output? Re: Unable to compile YOLOv8/YOLO11 TFLite models for i.MX95 Neutron NPU Discussing with the AE team. Re: Unable to compile YOLOv8/YOLO11 TFLite models for i.MX95 Neutron NPU Has end-to-end been evaluated for the Ara240? The datasheet mentions two vector cores that can execute post-processing ops such as sigmoid and NMS. Could the compiler map NMS ops to the vector cores? Re: Unable to compile YOLOv8/YOLO11 TFLite models for i.MX95 Neutron NPU Sorry for the delay. I am trying to reproduce the conversion workflow.  One question for now, why the converted model's data type is FLOAT32? Have you tried to convert to INT8? The Neutron NPU requires the INT8 type as input data. I met the similar error on other models conversion and the root cause is the data type. Re: Unable to compile YOLOv8/YOLO11 TFLite models for i.MX95 Neutron NPU The confidence output is lost due to a fundamental limitation of full INT8 quantization ( inference_output_type=tf.int8 ) applied to YOLOv8's output tensor. YOLOv8 packs bounding box coordinates and confidence scores into a single output tensor of shape  (1, 5, 8400) . The bbox values have a large dynamic range (~640 pixels), while the confidence scores are in the range of ~0 to 1. When the entire output tensor shares a single quantization scale, that scale is dominated by the large bbox values (~640), leaving only a fraction of one integer level to represent the entire confidence range (~1). As a result, all confidence values are effectively rounded to zero after INT8 quantization. Recommended Solution Instead of going through  onnx2quant , export INT8 TFLite directly from your trained  .pt  model using Ultralytics, then feed it into  neutron-converter : # Export INT8 TFLite directly (calibration uses your training dataset) yolo export model=best.pt \ format=litert \ imgsz=640 \ quantize=8 \ data=dataset.yaml \ fraction=0.1 # Compile for Neutron (unchanged) neutron-converter --target imx95 --input best_int8.tflite --output best_neutron.tflite For the input and output data type, please ensure they are np.int8: interp = tf.lite.Interpreter(model_path=TFLITE_INT8) interp.allocate_tensors() inp_d  = interp.get_input_details()[0] out_ds = interp.get_output_details() inp_scale, inp_zp = inp_d["quantization"] out_d = out_ds[0] out_scale, out_zp = out_d["quantization"] print(f"  Input  dtype={inp_d['dtype']}  shape={inp_d['shape'].tolist()}"       f"  quant=(scale={inp_scale:.6f}, zp={inp_zp})") print(f"  Output dtype={out_d['dtype']}  shape={out_d['shape'].tolist()}"       f"  quant=(scale={out_scale:.6f}, zp={out_zp})")# Determine input format from shape in_shape = inp_d["shape"].tolist()   # [1,3,640,640] or [1,640,640,3] if in_shape[1] == 3:     # NCHW     src=img_nchw else:     # NHWC     src=img_nhwcif inp_d["dtype"] == np.int8:     src_int8 = np.clip(np.round(src / inp_scale + inp_zp), -128, 127).astype(np.int8)     interp.set_tensor(inp_d["index"], src_int8) else:     interp.set_tensor(inp_d["index"], src.astype(np.float32))interp.invoke() raw_out = interp.get_tensor(out_d["index"])  # may be int8 or float32if out_d["dtype"] == np.int8:     dq_out = (raw_out.astype(np.float32) - out_zp) * out_scale else:     dq_out = raw_out.astype(np.float32)dq_out = dq_out[0]   # (5, 8400) normalized# Rescale bbox back to pixel coords for display BBOX_SCALE = 640.0 tfl_bbox = dq_out[:4] * BBOX_SCALE   # (4, 8400) tfl_conf = dq_out[4]                  # (8400,)
記事全体を表示
S32K148有secureboot功能,但是bootloader在jtag关闭后起不来 亲爱的NXP,你好:         我们公司K148上有一个bootloader和app两个分区,在app里面有关闭jtag的功能,当在app中把jtag关了之后reset后bootloader起不来导致芯片变砖。经调查,bootloader有32K,从0x00到0x8000,关闭jtag是在0x408地址处写入了0xFFu, 0xFFu, 0xFFu, 0xFFu, 0xFCu, 0x7Fu, 0xFFu, 0xFFu,导致flash内容变化,reset后CSEc计算bootloader的boot_mac的值和原先的不一致导致变砖。请问NXP官方有没有什么成熟的方案来解决此问题?谢谢。 Re: S32K148有secureboot功能,但是bootloader在jtag关闭后起不来  Hi,@lukaszadrapa  根据上面的手册,BOOT_MAC是一次性不可逆写入的。还是说有官方专门的API能变更它的值?如果是 ,能提供这个API接口吗? Re: 晶振波形异常 使用贵公司的FS32K144HFT0MLHT这款MC, 晶振为AV08000009这款8MHz的无源晶振,波形异常。请问这样的晶振波形 贵公司的MCU可以接受吗 是否会影响正常使用 Re: S32K148有secureboot功能,但是bootloader在jtag关闭后起不来 嗨@vurtual 通常的做法是在生产过程中禁用调试接口,而不是之后在应用程序中禁用。在这种情况下,该过程可以在一个生产步骤中完成:重新编程 Flash 配置字段 (FCF) 以禁用调试端口,然后配置正确的 BOOT_MAC 值(或者允许 CSEc 在下次 RESET 后自动计算该值)。 如果在产品生命周期的后期需要禁用调试接口,也是可以的。但是,一旦 FCF 被重新编程,BOOT_MAC 也必须更新,因为安全启动计算包括修改后的 FCF 内容。否则,安全启动验证将失败。 BOOT_MAC 可以使用标准的 SHE 内存更新协议进行更新,就像 CSEc 密钥的更新方式一样。在将 BOOT_MAC 更新为与新的 FCF 内容匹配后,禁用调试端口后,安全启动应该可以正常工作。 问候, 卢卡斯 Re: 晶振波形异常 你好,@ lukaszadrapa 我们公司使用贵公司的FS32K144HFT0MLHT这款MCU, 配合晶振为AV08000009这款8MHz的无源晶振,波形异常。请问这样的晶振波形,贵公司的MCU可以接受吗,是否会影响MCU的正常使用,谢谢 Re: S32K148有secureboot功能,但是bootloader在jtag关闭后起不来 嗨@vurtual 你从哪里看出这是一项不可逆的操作?那不正确。BOOT_MAC 可以更新。 正如我之前提到的: “BOOT_MAC 可以使用标准的 SHE 内存更新协议进行更新,就像 CSEc 密钥的更新方式一样。” 这意味着您可以使用 CMD_LOAD_KEY 命令,该命令与用于导入和更新常规 SHE/CSEc 密钥的命令相同。 要更新 BOOT_MAC,您需要按照标准 SHE 密钥更新程序生成 M1–M5 值。密钥计数器必须递增,并且可以使用 MASTER_ECU_KEY 或 BOOT_MAC_KEY 授权更新。 因此,更新 BOOT_MAC 是受支持的操作,并且不是不可逆的。 此致, Lukas Re: 晶振波形异常 请为此另开一个帖子。谢谢。
記事全体を表示
RT1170 NVCC_XXX 电源时序和未使用的 I/O 组 你好, 1 - 我想问一下,在 DCDC_IN 和 Pswitch 开启(内核也开启)的情况下,关闭未使用的 IO 组 NVCC_XXX 的电源是否安全,因为没有未使用的 IO 组引脚由外部驱动。 2 - 另外,为了维持 IO 状态,是否可以保持某个 IO 存储体开启,而其他存储体关闭? 提前致谢 Re: RT1170 NVCC_XXX power sequence and unsued IO banks 你好@Marwan , 我了解到您正在考虑断开一个未使用的电源组的电源。我的理解正确吗? 最佳做法是保持相应的 NVCC_xxx 电源供电,并将未使用的 GPIO 浮空。然而,RT1170 包含一个灵活的电源架构,允许关闭某些域的电源,以降低整体功耗。 我建议参考AN13148 ,其中详细解释了 RT1170 的电源架构和低功耗架构设计。AN13104也是一个有用的参考资料,因为它提供了有关功率域和 LP 状态的有用信息。 此外,如果您正在开发定制板,我强烈建议您参阅MIMXRT1160/1170 的硬件开发指南。本文档提供有关电路板布局建议和设计清单的信息,以确保一次性成功并避免电路板启动问题。 BR 哈比卜 Re: RT1170 NVCC_XXX power sequence and unsued IO banks 感谢您的回复和提供的参考资料。 没错,如果某些 IO 库不使用,我希望将其关闭。虽然没有明确说明不建议这样做,但这是我从相关文档的字里行间理解到的意思。 关于第二个问题: 如果将 IO 库始终保持开启状态(以保持 IO 状态,并且不被外部驱动),而将DCDC_IN和DCDC_PSWITCH关闭(接地),(除 SNVS 和 IO 库外,所有功能域都关闭),这样可以吗? MCU 不是主机,所以我问这个问题是为了防止 MCU 处于 SNVS 模式时 IO 被外部驱动。 此致敬礼, 马尔万 Re: RT1170 NVCC_XXX power sequence and unsued IO banks 你好@Marwan , 谢谢你的解释。 为了帮助我更好地理解您的问题,您能否解释一下您提到的“使 IO 库始终处于开启状态”指的是什么?您是指保持每个 I/O 组的 NVCC_xxx 供电轨持续供电吗? 最佳做法是保持相应的 NVCC_xxx 电源供电,并将未使用的 GPIO 浮空。我强烈建议使用设定点功能,因为它使电源模式切换更简单、更安全。 关于在禁用 DCDC 的同时仅保持 SNVS 电源处于活动状态的可能性。如果您的应用需要使用 M7 且不使用外部 PMIC。禁用 DCDC 是不可能的,因为 M7 位于 WAKEUPMIX 功能域中,该功能域由 VDD_SOC_IN 供电,并由 DCDC 直接供电,如AN13104的第 2 章“RT1170 功率域”中所述。 如果您的目标是最大限度地降低功耗,您可以考虑使用设定点将设备过渡到低功耗状态,同时仅保持 SNVS 域供电,请参阅表 4.1.5。请参阅数据手册中的“典型电源模式供电电流”,以了解不同的设定点配置。 此外, AN13104还包含一个实际示例,演示如何配置唤醒源。您可能会发现第 4.9 章“唤醒源配置”对您的实现很有用。 最后,关于维护 IO 状态,SSARC 可能很有用。默认情况下,如果外设所属的电源组合断电,则外设配置将丢失,必须重新初始化后才能直接使用。但是,使用 SSARC,您可以在断电前将功能模块的寄存器保存到内存中,并在模块上电后从内存中恢复寄存器,如 AN13104 的 4.14 章“唤醒后的外设状态”中所述。您可以找到一个名为“ssarc_software_trigger_cm7”的 SDK 示例,其中展示了外围设备的功能,您可以将其作为参考。 BR 哈比卜
記事全体を表示
连接到 USDHC1 的 eMMC 能否用作引导设备? 你好, 我正在检查 i.MX 8DualX/8DualXPlus/8QuadXPlus 系列的启动 ROM 行为。 根据参考手册,推荐的启动连接方式如下: USDHC0 上的 eMMC USDHC1 上的 SD/eSD/SDXC 然而,在图 5-17 “扩展设备(SD/eSD/SDXC)启动流程”中,当 SD 初始化失败时,流程会通过连接器2继续到图 5-16 中的 MMC 初始化流程。ROM 似乎在 SD 协议失败后,尝试在同一个 USDHC 接口上使用 MMC 协议。 这是否意味着可以检测到连接到USDHC1 的eMMC 并将其用作启动 ROM 启动设备,可能以 4 位模式运行? 或者说,此 MMC 回退路径仅用于协议检测,而官方并不支持从 USDHC1 启动 eMMC? 我还想确认一下,此时 ROM 是否从 USDHC1 切换到 USDHC0,还是继续使用相同的 USDHC1 接口。 谢谢! Re: Can an eMMC connected to USDHC1 be used as a boot device? 我正在尝试了解 i.MX 8DualX/8DualXPlus/8QuadXPlus 启动 ROM 的启动流程,特别是 SD 卡启动的流程。 我目前的理解如下。 主启动和辅助启动失败后,ROM 可能会进入 SD/MMC 制造模式,这被称为恢复启动。 在此模式下: ROM 扫描 USDHC1 上的 SD 或 MMC 设备。 无论正常的总线宽度 eFuse 设置如何,都使用 1 位数据总线。 如果找到有效的启动映像,则加载并执行该映像。 如果将 eMMC 设备连接到 USDHC1,并且 BOOT_MODE[3:0] 设置为 0011(通过 USDHC1 进行 SD 卡启动),则预期的启动顺序是否如下? ROM 首先尝试使用 SD 卡启动流程进行正常的主启动,但失败了。 ROM 随后尝试二次启动,但也失败了。 ROM 进入 SD/MMC 制造模式(恢复启动),使用 MMC 协议检测到 USDHC1 上的 eMMC 设备,并成功从该设备启动。 换句话说,在这种硬件配置下,系统是否只能在恢复/制造启动阶段从 eMMC 启动,而不能在正常的启动阶段(主启动或辅助启动)从 eMMC 启动? Re: Can an eMMC connected to USDHC1 be used as a boot device? 你好, USDHC1 上的 eMMC 不能作为引导设备,有记录的主要映射是 USDHC0 上的 eMMC,USDHC1 上的 SD。 USDHC1 回退/恢复行为由 SD/MMC 制造模式使用。您可以参阅参考手册第 5.11 节。 顺祝商祺! Re: Can an eMMC connected to USDHC1 be used as a boot device? 你好, 是的,你的理解是正确的。 请注意,采用该配置后,SD/MMC 制造模式将“作为默认启动模式”,您将失去恢复设备的选项。 顺祝商祺!
記事全体を表示
Wi-Fi Chipset MCU Control Hello everyone, I was browsing for some wifi modules with AP+STA functionalities. I found some modules from NXP, Microchip, and Infineon for example. However, most of the modules are only enabling wifi interface through PCIe and with advanced OS. However, I found a set of MCU+Wifi module from infineon called AIROC CYW55X (series). Do you have any experience integrating and controlling these type of modules? If so, can you share different modules that you have used before and were able successful to integrate with an external MCU? My intention is not to offload data to the microcontroller, only to control for example the mesh and AP capabilities. I want to use a MCU (STM for example) to perform some inference on some basic AI models while controlling the wifi module. Thanks guys Re: Wi-Fi Chipset MCU Control Dear @ajihu , Based on your description, especially for running basic AI models, RW61X (RW610/RW611/RW612) may already be sufficient for your application. RW61X integrates: - MCU - Wi-Fi - Bluetooth LE - (RW612 also supports 802.15.4 / Thread) For basic AI inference workloads, RW61X can run both the application and wireless connectivity stack on a single device, potentially eliminating the need for an additional MCU. However, it is important to clarify what you mean by "Mesh". RW61X does NOT support: - IEEE 802.11s Mesh - EasyMesh RW61X supports: - Matter - Thread - Zigbee (via 802.15.4 ecosystem) - STA + uAP concurrent mode [Note] If additional AI processing performance is required, you may consider: - i.MX RT700 + IW61X - i.MX RT1170 + IW61X - i.MX RT1180 + IW61X Please note that these solutions also do NOT support: - IEEE 802.11s Mesh - EasyMesh They support: - Matter - Thread - Zigbee - STA + uAP concurrent mode Thanks! Best Regards, Weidong
記事全体を表示
Python で ReadPipeUIntArray を使用するとセグメンテーション違反が発生します こんにちは、 現在、パイプを使用してターゲットからホストへデータパケット(ヘッダー+ペイロード)をストリーミングしようとしていますが、問題が発生しています。 ReadPipeUIntArrayを使用してバイナリデータを読み込む際に、fmliteが頻繁にクラッシュします。参考として、Pythonのサンプルコードとfmliteの出力結果を添付しました。 前もって感謝します Re: Segmentation fault when using ReadPipeUIntArray via Python こんにちは、 @tschue-nxt さん。 現在この問題について調査中です。進展があり次第、ご連絡いたします。 Re: Segmentation fault when using ReadPipeUIntArray via Python こんにちは、@tschue-nxt さん。 添付のFMLITEバイナリを確認して、あなたのケースで動作するか教えてもらえますか? Re: Segmentation fault when using ReadPipeUIntArray via Python こんにちは、 @iulian_stan さん。 見た目も良く、ここ数分間はスムーズに動作しています。迅速な対応ありがとうございました!
記事全体を表示
マルチディスプレイセットアップによるi.MX8 QuadMax上のAAOS 15におけるマルチユーザー機能の有効化 こんにちは、チームの皆さん、 i.MX8 QuadMax プラットフォーム 上で Android Automotive OS(AAOS) 15 を使用しています 。 現在 の ハードウェア 構成は 、 3つの ディスプレイ で構成されています 。 メインセントラルディスプレイ(運転席/センターディスプレイ) 乗客ディスプレイ インストルメントクラスターディスプレイ この プラットフォーム 上で 、 ユーザー 切り替え、 ゲスト ユーザー 、 ユーザー固有の アプリケーションや設定 のサポート を含む Android マルチユーザー 機能を 有効 化・ 検証 したい と考えています。 CAN you please provide guidance on the following: i.MX8QM の AAOS 15 で マルチユーザー サポート を有効にする には どのような 構成 が必要です か? NXP 側 で BSP固有の 変更 が 必要 でしょ う か ? どの フレームワーク オーバーレイ、 機能 フラグ、 または システム プロパティ を有効に する 必要があります か? 何か ご助言 や 推奨される 手順が あれば、 大変 ありがたい です 。   よろしくお願いします。
記事全体を表示
S32DSにおけるLLCE FlexRay構成 こんにちは、 S32DS 上で LLCE FlexRay の設定に関する問題が発生しています。 このパラメータをTRUEにしたいのですが、IDEで長い時間を費やしたのに、正しい変更場所が見つかりませんでした。何か手がかりをくれる方はいませんか? 私のIDEバージョンはS32DS3.5.10です。 事前に感謝いたします。 Re: LLCE FlexRay configuration on S32DS こんにちは、 Yang_C お問い合わせいただきありがとうございます。 使用しているLLCEのバージョンは何ですか?S32G2とS32G3のどちらを使用していますか? BR ジョーイ Re: LLCE FlexRay configuration on S32DS こんにちは、ジョーイ。 私はS32DS3.5.10でS32G399を使用しています。LLCE 1.0.7、RTD 4.0.2 BR、 ヤン Re: LLCE FlexRay configuration on S32DS こんにちは、ジョーイ。 ご協力ありがとうございます。 お返事をお待ちしております。 BR、 ヤン Re: LLCE FlexRay configuration on S32DS こんにちは、 Yang_C これはソフトウェア自体の問題のようです。社内のソフトウェア開発者と確認するのを手伝います! BR ジョーイ
記事全体を表示
S32K3 の Trace32 によるセキュア デバッグのロック解除 こんにちは、S32K3チーム 現在、セキュア デバッグ ロック解除に関する問題が発生しています。 私が使用しているデバッガーは Trace32 と AUTOSAR os です。 ライフ サイクル (LC) が OEM に切り替えられ、セキュア デバッグがパスワード モード (チャレンジ レスポンスではない) で構成されています。 設定されたTESTパスワードは次のとおりです。 0xFFEEDDCCBBAA99887766554433221100 LCを切り替える前に、HASH値が正しく一致していることを確認しました。 セキュア デバッグのロックを解除するために、次の 2 つの方法を試しました。 Trace32 コマンドの使用: システムオプション キーコード %バイト 0xFF 0xEE 0xDD 0xCC 0xBB 0xAA 0x99 0x88 0x77 0x66 0x55 0x44 0x33 0x22 0x11 0x00 S32_JTAG_WRITE.cmmスクリプトの使用 ただし、どちらの方法でもセキュア デバッグのロックを解除できませんでした。 次に何をチェックすべきか、または見落としている可能性のある原因についてご指導いただければ幸いです。 参考までにスクリプトを添付しました。 よろしくお願いいたします。 #HSE #セキュアデバッグ Re: S32K3 Unlock Secure Debug with Trace32 最近テストしてみました。添付のスクリプトを参照してください debug_authorization.cmm は、パスワードを入力して他のスクリプトを呼び出す方法を示します。 添付ファイルを直接送信します。 Re: S32K3 Unlock Secure Debug with Trace32 こんにちは、 私も同じ環境で同じ問題に直面しています。 ファイルも私に共有してもらえますか?ご協力いただけると大変ありがたいです。 ご回答をお待ちしています。 Re: S32K3 Unlock Secure Debug with Trace32 親愛なるNewbieNerd様、 私も同様の環境で同じ問題に直面しています。 もし解決できたなら、その解決策を共有し、以前のセットアップと比べて何が変わったのか説明していただけますか? あなたの経験は大変貴重であり、私の側でこの問題の解決を図る上で非常に役立ちます。 お時間をいただき、サポートありがとうございます。 Re: S32K3 Unlock Secure Debug with Trace32 新しいチケットを作成してください。そうすれば、私があなたに送信します。ご理解いただきありがとうございます。 https://www.nxp.com/support/support:SUPPORTHOME
記事全体を表示
S32K312 Secureboot and Program Flash The attached CMM file is a script that writes the FBL and App to the S32K312 MCU and then activates SecureBoot, SecureDebug, and Configuration Lock. We would like to request a review and improvement regarding the HardFault issue that occurs when running this CMM. Previously, as shown in the screenshot, a HardFault occurred after the FBL and App were imported when executing "Go," with the JTAG Clock set to 5 MHz throughout. As a change, we set SYStem.JtagClock to 1 MHz after importing the App file. With this change, HardFaults rarely occurred at the "Go" step when running the CMM, so we concluded that lowering the JTAG Clock speed is an effective approach. However, when the modified CMM is applied, a "stopped by vectbl" error occasionally occurs at "Go" after the FBL and App have been imported. We kindly ask you to review the CMM so that it can run stably overall, and we would like to inquire about how to improve it so that the "stopped by vectbl" error does not appear at all. Original CMM: GN7_PE_MAIN_G_SECURE_260412.cmm Modified CMM (JTAG Clock changed to 1 MHz): GN7_PE_MAIN_G_SECURE_260412_0714RE.cmm Additionally, we would like to import a different FBL after SecureBoot has been enabled. Is there a way to import a different FBL while SecureBoot is enabled? If it is possible, we would appreciate it if you could provide a guide. Re: S32K312 Secureboot and Program Flash Hi @jeongwoo  The main problem I can see is this: This means: you load the pink file and you reset the device. After this reset, SBAF is supposed to install HSE firmware. But the key point is - this operation takes about 1 second. But then you reset the MCU again in 0.1s and you are going to reprogram pink file at 0x40_0000 by fbl immediately after that. Increase the waiting time to 1.3s, at least. Otherwise SBAF tries to install HSE FW and you try to reprogram fbl at the same time.  Regards, Lukas Re: S32K312 Secureboot and Program Flash Hello, thank you for your reply. Regarding the part where the delay time is currently set to 0.1 seconds after adding HSE, there are no issues with the program functions written to the controller even when the time is set shorter. I would like to ask if it is absolutely necessary to increase the delay time to 1 second.
記事全体を表示
S32K312 セキュアブートとフラッシュメモリのプログラム 添付されたCMMファイルは、FBLとアプリをS32K312 MCUに書き込み、その後SecureBoot、SecureDebug、Configuration Lockを起動するスクリプトです。 このCMMの実行時に発生するHardFaultの問題について、見直しと改善をお願いしたいと思います。 以前のスクリーンショットに示すように、JTAGクロックを5MHzに設定した状態で「Go」を実行した際に、FBLとアプリをインポートした後にハードフォルトが発生しました。 変更点として、アプリファイルをインポートした後、SYStem.JtagClockを1MHzに設定しました。この変更により、CMM実行時に「Go」ステップでハードフォールトが発生することは稀になったため、JTAGクロック速度を下げることが効果的な方法であると結論づけました。しかし、修正されたCMMを適用すると、FBLとアプリがインポートされた後、「Go」の段階で「stopped by vectbl」エラーが時折発生します。 CMM全体が安定して動作できるように見直し、また「vectblによって停止」エラーが全く出ないよう改善方法についてご質問いただきたいと思います。 オリジナルCMM:GN7_PE_MAIN_G_SECURE_260412.cmm 変更されたCMM(JTAGクロックを1MHzに変更):GN7_PE_MAIN_G_SECURE_260412_0714RE.cmm さらに、SecureBootを有効にした後で、別のFBLをインポートしたいと考えています。SecureBootが有効になっている状態で、別のFBLをインポートする方法はありますか?可能であれば、ガイドをご提供していただけるとありがたいです。 Re: S32K312 Secureboot and Program Flash こんにちは、 @jeongwoo 私が思う主な問題はこうです: つまり、ピンク色のファイルをロードして、デバイスをリセットするということです。このリセット後、SBAFはHSEファームウェアをインストールするはずです。しかし重要な点は、この操作は約1秒で完了するということです。しかし、0.1秒後にMCUをリセットすると、すぐにfblでピンクファイルを0x40_0000で再プログラムします。待ち時間を少なくとも1.3秒に増やしてください。そうしないと、SBAFがHSE FWをインストールしようとし、同時にfblの再プログラミングも試みることになります。 よろしくお願いいたします。 ルーカス Re: S32K312 Secureboot and Program Flash こんにちは、ご返信ありがとうございます。 HSEを追加してから遅延時間が0.1秒に設定されている部分については、時間が短く設定されてもコントローラに書き込まれるプログラム機能に問題はありません。遅延時間を1秒に延長することが本当に必要なのかどうかをお伺いしたいです。
記事全体を表示
The S32K148 has secure boot functionality, but the bootloader fails to start after JTAG is disabled. Dear NXP, hello: Our company's K148 has two partitions: a bootloader and an application partition. The application partition has a function to disable JTAG. When JTAG is disabled in the application, the bootloader fails to start after a reset, causing the chip to become bricked. Investigation revealed that the bootloader is 32KB, ranging from 0x00 to 0x8000. Disabling JTAG involved writing 0xFFu , 0xFFu , 0xFFu , 0xFFu , 0xFCu, 0x7Fu , 0xFFu , 0xFFu at address 0x408 , causing a change in the flash content. After a reset, the CSEc calculates a different boot_mac value for the bootloader, resulting in the bricking. Does NXP have any mature solutions to resolve this issue? Thank you. Re: S32K148有secureboot功能,但是bootloader在jtag关闭后起不来 Hi, @lukaszadrapa According to the manual above, BOOT_MAC is a one-time, irreversible write. Is there an official API that allows changing its value? If so, could you provide this API? Re: 晶振波形异常 Using your company's FS32K144HFT0MLHT MC The crystal oscillator is an 8MHz passive crystal oscillator (AV08000009), and the waveform is abnormal. Is this waveform acceptable for your company's MCU, and will it affect normal operation? Re: S32K148有secureboot功能,但是bootloader在jtag关闭后起不来 Hi @vurtual  The common approach is to disable the debug interface during manufacturing, rather than later from the application. In that case, the process can be done in a single production step: reprogram the Flash Configuration Field (FCF) to disable the debug port and then provision the correct BOOT_MAC value (or allow the CSEc to calculate it automatically after the next reset). If you need to disable the debug interface later in the product lifecycle, that is also possible. However, once the FCF is reprogrammed, the BOOT_MAC must be updated as well, since the secure boot calculation includes the modified FCF contents. Otherwise, the secure boot verification will fail. The BOOT_MAC can be updated using the standard SHE memory update protocol, in the same way that CSEc keys are updated. After updating the BOOT_MAC to match the new FCF contents, secure boot should operate correctly with the debug port disabled. Regards, Lukas Re: S32K148有secureboot功能,但是bootloader在jtag关闭后起不来 Hi @vurtual  Where do you see that this is an irreversible operation? That is not correct. BOOT_MAC can be updated.  As I mentioned previously: "The BOOT_MAC can be updated using the standard SHE memory update protocol, in the same way that CSEc keys are updated." This means you can use the CMD_LOAD_KEY command, which is the same command used to import and update regular SHE/CSEc keys. To update BOOT_MAC, you need to generate the M1–M5 values according to the standard SHE key update procedure. The key counter must be incremented, and the update can be authorized using either the MASTER_ECU_KEY or the BOOT_MAC_KEY. Therefore, updating BOOT_MAC is a supported operation and is not irreversible. Regards, Lukas Re: 晶振波形异常 Hello,@ lukaszadrapa Our company uses your FS32K144HFT0MLHT MCU with an 8MHz passive crystal oscillator (AV08000009), and the waveform is abnormal. Is this crystal oscillator waveform acceptable for your MCU? Will it affect the normal operation of the MCU? Thank you. Re: 晶振波形异常 Please create new thread for this. Thank you. 
記事全体を表示
Question about C16 capacitor rating in MRF300AN 27MHz reference design Hello NXP Support Team, I am currently reviewing the MRF300AN 27MHz reference design and have a question regarding capacitor C16 on the output side. According to the BOM I have (e.g., from the Farnell datasheet), C16 is specified as a 39,000 pF (39 nF) / 50V chip capacitor (ATC part 200B393KT50XT). Given that the MRF300AN operates at a 50V drain voltage and the output stage handles high RF power (up to 300W+), I am concerned that a 50V-rated capacitor in this position might be insufficient for reliable long-term operation. My questions are: Is the 50V rating for C16 in the BOM correct, or could it be a typo? What is the exact function of C16 in this circuit? Is it part of the output matching network, a DC blocking capacitor, or a bypass/decoupling capacitor? If it is indeed a DC blocking or matching capacitor in the RF output path, wouldn't a higher voltage rating (e.g., 100V or higher) be more appropriate to handle voltage transients and standing waves? I would greatly appreciate your clarification on this matter. Thank you for your time and support. Best regards, Re: Question about C16 capacitor rating in MRF300AN 27MHz reference design Hello fengyuqi Good day! The 300W does not directly determine the voltage stress on a capacitor. The capacitor voltage rating must be compared against the actual RF voltage across that capacitor, not against the amplifier output power. C16 is not necessarily seeing the full RF output voltage. From the reference design BOM, C16 belongs to the supply decoupling / RF bypass network, not directly across the 50 Ω output connector I hope this information has helped you, please let me know if you need help with anything else. Have a great day and best of luck. Re: Question about C16 capacitor rating in MRF300AN 27MHz reference design Dear RafaR, Thank you for your detailed and helpful response. I truly appreciate the time you took to explain the voltage stress consideration on capacitors. I would like to acknowledge that you are absolutely right — the voltage across C16 is not as high as the full RF output voltage, since the voltage stress depends on the actual RF voltage across the component rather than the amplifier's output power. I fully accept this point. However, I would like to clarify one thing regarding C16. After double-checking the PCB layout I have, C16 does appear to be the DC blocking capacitor placed before the RF output, assuming all traces are routed on the top layer. I understand this might differ from the BOM's designation in your documentation, but based on the layout files I currently have access to, this is what I observe. The materials I have downloaded so far include only the PCB layout files and a brief summary document — I do not have access to the full schematic, detailed BOM with component functions, or the complete reference design user guide. Would it be possible for you to share more detailed documentation for this reference design, such as: The full schematic The complete BOM with component function descriptions The reference design user manual or application note I would be extremely grateful for any additional materials you could provide. If there are any restrictions on sharing these files, please also let me know so I can request them through the proper channel. Thank you again for your guidance, and I look forward to your reply. Best regards, fengyuqi
記事全体を表示
Can an eMMC connected to USDHC1 be used as a boot device? Hello, I am checking the Boot ROM behavior of the i.MX 8DualX/8DualXPlus/8QuadXPlus family. According to the reference manual, the recommended boot connections appear to be: eMMC on USDHC0 SD/eSD/SDXC on USDHC1 However, in Figure 5-17, “Expansion device (SD/eSD/SDXC) boot flow”, when SD initialization fails, the flow continues through connector 2 to the MMC initialization flow in Figure 5-16. It appears that the ROM tries the MMC protocol on the same USDHC interface after the SD protocol fails. Does this mean that an eMMC connected to USDHC1 can be detected and used as a Boot ROM boot device, possibly in 4-bit mode? Or is this MMC fallback path intended only for protocol detection, while eMMC boot from USDHC1 is not officially supported? I would also like to confirm whether the ROM switches from USDHC1 to USDHC0 at this point, or whether it continues using the same USDHC1 interface. Thank you. Re: Can an eMMC connected to USDHC1 be used as a boot device? I am trying to understand the boot flow of the i.MX 8DualX/8DualXPlus/8QuadXPlus Boot ROM, especially for SD boot. My current understanding is as follows. After Primary and Secondary Boot fail, the ROM may enter SD/MMC Manufacture Mode, which is described as Recovery Boot. In this mode: The ROM scans SD or MMC devices on USDHC1. A 1-bit data bus is used, regardless of the normal bus-width eFuse setting. If a valid boot image is found, it is loaded and executed. If an eMMC device is connected to USDHC1 and BOOT_MODE[3:0] is set to 0011 (SD boot through USDHC1), is the expected boot sequence as follows? The ROM first attempts the normal Primary Boot using the SD boot flow, but it fails. The ROM then attempts Secondary Boot, which also fails. The ROM enters the SD/MMC Manufacture Mode (Recovery Boot), detects the eMMC device on USDHC1 using the MMC protocol, and successfully boots from it. In other words, with this hardware configuration, would the system be able to boot from the eMMC only during the Recovery/Manufacture Boot stage, rather than during the normal Primary or Secondary Boot stages? Re: Can an eMMC connected to USDHC1 be used as a boot device? Hello, eMMC on USDHC1 cannot be treated as a boot device, the documented primary mapping is eMMC on USDHC0, SD on USDHC1. The USDHC1 fallback/recovery behavior is used by SD/MMC manufacture mode. You can take a look in section 5.11 of reference manual. Best regards. Re: Can an eMMC connected to USDHC1 be used as a boot device? Hello, Yes, your understanding is correct. Please consider that SD/MMC Manufacture Mode will be used "as default boot" with that considered configuration and you will lose this option to recover the device. Best regards.
記事全体を表示