Multi Source Translation Content

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Multi Source Translation Content

Discussions

Sort by:
How to Reduce eIQ Toolkit Training Time for a 6,000-Image Dataset? I am using the eIQ Toolkit to train an image classification model with a dataset of approximately 6,000 images. My target is to generate a TensorFlow Lite (TFLite) model that is smaller than 800 KB so that it can run on the MCXN947. My current training configuration is: Model: MobileNetV2 Alpha: 0.35 Pruning: Enabled Output format: TFLite The issue is that the training process takes nearly 24 hours to complete. I would like to know if there are any recommended settings or optimizations that can reduce the training time to around 1–2 hours while still keeping the final model size below 800 KB. Has anyone faced a similar situation? Are there any best practices in the eIQ Toolkit for reducing training time without significantly affecting model accuracy or increasing the model size? Any suggestions would be greatly appreciated. Thank you! FRDM-Training MCXN Re: How to Reduce eIQ Toolkit Training Time for a 6,000-Image Dataset? Hi @sivamankomb  A 24-hour run for ~6,000 images is not expected for a small MobileNetV2-alpha-0.35 transfer-learning job unless training is running on CPU, using a large input size, too many epochs, heavy dynamic augmentation, or doing pruning/QAT throughout the full training run. I think you can refer to the following. Verify CUDA + cuDNN are installed and being used. Use the smallest input resolution that still gives acceptable accuracy; if you are at 224×224, try 128×128 first. Start with a low epoch limit plus early stopping, not a fixed long training run. Disable pruning for the initial training run; Use INT8 TFLite quantization for deployment; Avoid QAT in the first speed-optimized run; Start with “No Augments,”  You can refer to eIQ Toolkit User Guide for specific content BR Harry
View full article
如何缩短 eIQ Toolkit 对包含 6000 张图像的数据集的训练时间? 我正在使用 eIQ Toolkit 训练一个图像分类模型,数据集大约有 6,000 张图像。我的目标是生成一个小于800 KB的 TensorFlow Lite (TFLite) 模型,以便它可以在MCXN947上运行。 我目前的训练配置是: 型号:MobileNetV2 Alpha:0.35 修剪:已启用 输出格式:TFLite 问题在于,整个培训过程需要近24小时才能完成。我想知道是否有任何推荐的设置或优化方法,可以在将最终模型大小保持在800 KB以下的同时,将训练时间缩短到1-2 小时左右。 有人遇到过类似的情况吗?eIQ Toolkit 中是否有任何最佳实践可以在不显著影响模型准确率或增加模型大小的情况下减少训练时间? 任何建议都将不胜感激。谢谢你! FRDM 培训 MCX N Re: How to Reduce eIQ Toolkit Training Time for a 6,000-Image Dataset? 嗨@sivamankomb 对于小型 MobileNetV2-alpha-0.35 迁移学习作业来说,除非训练是在 CPU 上运行、使用较大的输入规模、过多的 epoch、大量的动态增强,或者在整个训练过程中进行剪枝/QAT,否则预计不会出现 24 小时运行约 6,000 张图像的情况。 我认为你可以参考以下内容。 确认已安装并正在使用 CUDA + cuDNN。 使用能够保证可接受精度的最小输入分辨率;如果您使用的是 224×224,请先尝试 128×128。 首先设定较低的训练轮数限制并提前停止,而不是进行固定的长时间训练。 初始训练运行禁用剪枝; 部署时使用 INT8 TFLite 量化; 在第一次速度优化运行中避免使用 QAT; 首先选择“无增强功能”, 具体内容请参阅 eIQ Toolkit 用户指南。 BR 哈里
View full article
iMXRT1052 カスタムファームウェアでキーブロブを生成しても、起動時に受け入れられません。 こんにちは、   署名済みの暗号化ブートローダーがあり、HABは有効になっていますが、シールはされていません。NXPのセキュアプロビジョニングツールを使ってフラッシュすると、問題なく動作します。同様に、FCB + パディング + 署名および暗号化されたブートローダー + キーブロブ(キーブロブはターミナルで次のコマンドを実行して生成されます)を連結すると、次のようになります。   blhost -t 5000 -u 0x15A2,0x0073 -j -- generate-key-blob "dek.bin" "blob.bin"   それも効果がある。しかし、デバッグセッション(キーブロブを生成するためだけに用いられる)でカスタムファームウェアを使用してこのプロセスを実行すると、生成されたブロブファイルが受け入れられず、ブートローダーの実行に失敗します。どちらのシナリオにおいても、DEKは変化しない。   両方とも.binファイルを生成しましたファイル間の違いは、ブロブオフセットアドレスのみである。   Secure Provisioning Toolが提供するflashloader.binと公開されているソースコード(MCUブート)との間に違いはありますか?   標準のフラッシュローダーは、このバージョンを報告します。 blhost -u 0x15A2,0x0073 -- get-property 1 Response status = 0 (0x0) Success. Response word 1 = 1258424320 (0x4b020800) Current Version = K2.8.0   bl_version.h に基づくと、ソースコードは一貫しているはずであり、Secure Provisioning Tool のバージョンは 25.09 です。   カスタムファームウェアはフラッシュローダーソースからのコードスニペット(特にbl_keyblob_dcp.cにあります)を使用しています。そして、すべての依存関係は同じソースから取得されます。この実装は内部でのみ使用されるため、ファームウェアからDEKを抽出することは問題ありません。   お時間をいただきありがとうございました。 🙂 Re: iMXRT1052 Generating key blob in custom firmware not accepted on boot. こんにちは、 @JordanSt さん。 あなたはiMXRT1052を使って以下のようにテストを行ったと理解してよろしいでしょうか? 1. NXPのセキュアプロビジョニングツールからフラッシュローダーをロードし、以下のコマンドを使用してdek.binとblob.binを取得します。 blhost -t 5000 -u 0x15A2,0x0073 -j -- generate-key-blob "dek.bin" "blob.bin" 2. iMXRT1052でflashloaderのSDKデモのコードを使ってカスタムファームウェアを実行し、上記のコマンドでdek.binとblob.binを得ます。 3. 生成された dek.bin ファイルは同じですが、blob.bin ファイルは異なります。 私の理解が正しければ、ステップ2のSDKのフラッシュローダーは試しましたか?結果は同じだったのでしょうか? すてきな一日を、 カン ------------------------------------------------------------------------------- 注記: この投稿があなたの質問への回答になっている場合は、「正解としてマーク」ボタンをクリックしてください。ありがとうございます! - 前回の投稿から7週間Threadをフォローしており、その後の返信は無視しています もし後で関連する質問があれば、新しいThreadを開き、閉じたThreadを参照してください。 ------------------------------------------------------------------------------- Re: iMXRT1052 Generating key blob in custom firmware not accepted on boot. こんにちは@Kan_Li ご支援ありがとうございます。 関連事項: 1. NXPのSecure Provisioning Toolからフラッシュローダーを読み込み、以下のコマンドでdek.binとblob.binを起動します - そうだ、鍵の塊を手に入れるために。 2. iMXRT1052でflashloaderのSDKデモのコードを使ってカスタムファームウェアを実行し、上記のコマンドでdek.binとblob.binを得ます。 - はい、しました。SDKのデモフラッシュローダーでテストしました。こちらもカスタムファームウェアです。 重要かどうかはわかりませんが、主な違いはSPTのフラッシュローダーは内部のSRAMから実行されるのに対し、カスタムファームウェアやSDKのデモはそうではなく、外部(搭載)SDRAM用に設定・構築されていることです。 3. 生成されたdek.binファイルは同じですが、blob.binファイルは異なります。 はい、どちらのシナリオでも使用される DEK は同じです (当然です)。生成されたキー ブロブを見ると、ヘッダーは同じで、bk セクションと dek セクションのみが異なり、mac セクションはすべてゼロです。 すてきな一日を 🙂 ヨルダン
View full article
Fls_Erase() 操作中の電源中断後のデータフラッシュ破損および ECC エラー 電源の中断/リセットによってFls_Erase()操作が中断された場合、データフラッシュの破損が発生することを確認しています。システムを再起動すると、影響を受けたデータフラッシュ領域が破損しているように見える。 その後、セクターを Fls_Erase()で復旧しようとする際、フラッシュドライバが消去操作を行う前に影響を受けたアドレス範囲にアクセスしようとした際にECCエラーが発生します。その結果、消去作業は成功裏に進められません。 このシナリオにおけるフラッシュコントローラの期待される挙動を理解し、以下の点についての指針をお願いしたいと思います。 Fls_Erase()操作の実行中に電源が切断された場合、データフラッシュの破損が発生する可能性はありますか? このような中断後に部分的に消去・破損したフラッシュセクターにアクセスする際にECCエラーが起こることは予想されますか? 破損したフラッシュセクターを消去・復元するために 、フラッシュECCチェックを一時的に無効 化する仕組みやレジスタはありますか? 電源遮断後に訂正不可能なECCエラーを含むデータフラッシュセクターを処理するための推奨される復旧手順は何ですか? ターゲット装置: [MPC5746C] ソフトウェアスタック: [AUTOSAR / ベアメタル] Re: Data Flash Corruption and ECC Errors After Power Abort During Fls_Erase() Operation こんにちは、 Fls_Erase()操作の実行中に電源が切断された場合、データフラッシュの破損が発生する可能性はありますか? はい、それは正しい行動です。フラッシュメモリ内のデータは、プログラミング/消去処理中の電源喪失により、フラッシュメモリ内のECC症候群と一致しなくなります。 このような中断後に部分的に消去・破損したフラッシュセクターにアクセスする際にECCエラーが起こることは予想されますか? はい。 破損したフラッシュセクターを消去・復元するために 、フラッシュECCチェックを一時的に無効 化する仕組みやレジスタはありますか? いいえ。これは恒久的なハードウェア機能です。 電源遮断後に訂正不可能なECCエラーを含むデータフラッシュセクターを処理するための推奨される復旧手順は何ですか? その場合は破損したフラッシュブロックを初期化(消去)する必要があります。一度実行すると、ECC症候群はフラッシュのデータと一致し、アクセスによってECCの故障が起きません。 フラッシュ消去の手順については、リファレンス・マニュアルをご参照ください: よろしくお願いいたします。 ピーター
View full article
IMX8MP 辅助映像启动 IMG_CNTN_SET1_OFFSET 辅助映像启动(RM 6.1.6.2)是否适用于 i.MX8MP 上的 ECSPI(“SPI”)或非 启动,还是仅适用于 FlexSPI 或非(和 SD/eMMC)?表 6-28 将“SPI”和“FlexSPI NOR”列为单独的引导设备,并且仅针对“FlexSPI NOR 启动”说明了辅助偏移有效值。 Re: IMX8MP secondary image boot 你好, 你的理解有误, IMG_CNTN_SET1_OFFSET 辅助镜像启动也适用于 SPI 设备,只是偏移量不同: FlexSPI 的有效值为:0、1、2、3、4、5、6 和 7 对于 SPI 模式,如果熔丝位大于 10,则禁用辅助启动;n = 熔丝位大于 10. • n == 0:偏移量 = 4MB • 当 n == 2 时:偏移量 = 1MB • 其他情况且 n <= 10:偏移量 = 1MB*2^n Re: IMX8MP secondary image boot 谢谢——这下偏移映射的问题就清楚了。我们需要进行两项后续操作,以便在我们的 i.MX8MP 板上重现该问题(在 ECSPI2 上启动或非,开放/非 HAB 配置,熔丝读取 2 1 = 0 → n=0 → 4 MB): 是什么触发信号 ROM 在 SPI 或非接口上切换到辅助映像?是无效的主启动头/镜像解析失败,还是具体的 HAB 认证失败?换句话说,辅助映像启动在开放(非安全)配置下是否有效,还是仅在设备 HAB 关闭时才有效? 它会恢复到之前的RESET状态,还是需要断电重启/第二次RESET(持久启动方式)? 4 MB 偏移处的辅助映像必须是单独版本的可启动映像(具有该偏移处的独立虚拟映像/启动数据),还是主映像的字节相同副本就足够了? Re: IMX8MP secondary image boot 在 OPEN (SEC_CONFIG=open, non-HAB) 配置下,i.MX8MP 从 ECSPI (SPI) NOR 启动时,IMG_CNTN_SET1_OFFSET 辅助映像启动的确切触发条件是什么?ROM 是否会在主容器头无效/被擦除时切换到辅助镜像,还是仅在 HAB 身份验证失败时才会切换到辅助镜像(例如,当主容器头无效/被擦除时)?仅在封闭/安全配置下?我们有一个 4MB 的有效辅助副本(熔丝 n=0),擦除了主头,并且 ROM 不会回退到开放配置。
View full article
iMXRT1052 自定义固件中生成的密钥blob在启动时未被接受。 您好,   我有一个已签名的加密引导加载程序,HAB 已启用但未密封。使用 NXP 的安全配置工具进行刷写时,运行正常。同样地,当我将 FCB + 填充 + 已签名和加密的引导加载程序 + 密钥 blob 连接起来时(其中密钥 blob 是通过在终端中执行以下命令生成的):   blhost -t 5000 -u 0x15A2,0x0073 -j -- generate-key-blob "dek.bin" "blob.bin"   也行得通。但是,如果我在调试会话中使用自定义固件运行此过程(仅用于生成密钥 blob),则生成的 blob 文件不被接受,引导加载程序执行失败。两种情况下,DEK 值保持不变。   两者都生成了 .bin 文件。文件仅在 blob 偏移地址处不同。   安全配置工具提供的 flashloader.bin 与公开可用的源代码(MCU 启动)之间有什么区别?   “官方”刷机工具报告的版本号为: blhost -u 0x15A2,0x0073 -- get-property 1 Response status = 0 (0x0) Success. Response word 1 = 1258424320 (0x4b020800) Current Version = K2.8.0   根据 bl_version.h,源代码应该一致,安全配置工具版本为 25.09。   该自定义固件使用了来自 flashloader 源代码(具体位于 bl_keyblob_dcp.c 中)的代码片段,所有依赖项均来自同一来源。此实现仅供内部使用,因此从固件中提取 DEK 不是问题。   感谢您抽出时间。 🙂 Re: iMXRT1052 Generating key blob in custom firmware not accepted on boot. 嗨@JordanSt , 我理解您已使用 iMXRT1052 进行了如下测试? 1. 从NXP 的安全配置工具加载闪存加载器,并使用以下命令生成 dek.bin 和 blob.bin 文件。 blhost -t 5000 -u 0x15A2,0x0073 -j -- generate-key-blob "dek.bin" "blob.bin" 2. 使用 iMXRT1052 上的 flashloader 的 sdk 演示代码运行自定义固件,并使用与上面相同的命令生成 dek.bin 和 blob.bin。 3. 生成的 dek.bin 文件相同,但 blob.bin 文件不同。 如果我理解正确,您是否尝试过在步骤 2 中使用 SDK 中的 flashloader?结果是否相同? 祝你有美好的一天, 坎 ------------------------------------------------------------------------------- 笔记: - 如果此回复解答了您的问题,请点击“标记为正确答案”按钮。谢谢你! - 我们会持续关注帖子,从最后一条回复发出后持续7周,之后的回复将被忽略。 如果您之后有相关问题,请另开新帖并引用已关闭的帖子。 ------------------------------------------------------------------------------- Re: iMXRT1052 Generating key blob in custom firmware not accepted on boot. 嗨@Kan_Li , 感谢您的支持。 关于: 1. 从 NXP 的安全配置工具加载闪存加载器,并使用以下命令生成 dek.bin 和 blob.bin 文件。 - 是的,为了获取关键信息。 2. 使用 iMXRT1052 上的 flashloader 的 sdk 演示代码运行自定义固件,并使用与上面相同的命令生成 dek.bin 和 blob.bin。 - 是的,我测试过了,用 SDK 中的演示 flashloader 和自定义固件都测试过了。 不确定这是否重要,但主要区别在于 SPT 中的 flashloader 是从内部 SRAM 执行的,而 SDK 中的自定义固件或演示程序则不是,它们是为外部(在板上)同步动态随机存取存储器\(SDRAM\) 配置和构建的。 3. 生成的 dek.bin 文件相同,但 blob.bin 文件不同。 是的,两种情况下使用的DEK保持不变(这很合理)。从生成的密钥块来看,头部信息相同,只有bk和dek部分不同,mac部分全部为零。 祝你有美好的一天 🙂 约旦
View full article
MIMRT700でSDカードを使用してサンプルを実行するとエラーが発生しますか? SDK for MIMRT700でSDCardサンプルを実行したときにこのエラーが出ました。 現在、私はカードをフォーマットしていません。調査の結果、実行前にカードをフォーマットする必要はないことがわかりました。この問題を解決するにはどうすればいいですか? Re: Error when runnning sample with SDcard in MIMRT700? @Habib_MS ご回答ありがとうございます。PCでSDカードをフォーマットする場合、どのフォーマットを選択すればよいですか?SDカードに多くのデータがあるので、フォーマットしたいと思っています。 もう一つ質問があります。現在、私はサンプルtflm_cifar10_cm33_core0を使用しており、このサンプルtflm_cifar10_cm33_core0でSDカードを使用してSDカードからデータをロードしたいと考えています。JP65を1-2に設定したら、tflm_cifar10_cm33_core0実行できますか? Re: Error when runnning sample with SDcard in MIMRT700? こんにちは、 @nnxxpp。 SDK v26.06の例「mimxrt700evk_sdcard_fatfs_cm33_core0」をテストしましたが、SDカードがフォーマットされていても私の側では正しく動作しています。 JP65が1-2に設定されているか確認してもらえますか?EVKのデフォルト設定は2-3です。 また、サンプルのdocフォルダにあるexample_board_readmeファイルで推奨されているSDカードのいずれかを使用してテストしてください。 BR ハビブ Re: Error when runnning sample with SDcard in MIMRT700? こんにちは@nnxxpp さん、 この例では、次の図に示すように、main関数から実行されるf_mkfs()関数を呼び出すことで、SDカード上にFATファイルシステムを作成します。 FF_USE_MKFS マクロは ffconf.h で有効になっています。これにより、アプリケーションは必要に応じてファイルシステムを作成できます。f_mkfs()に関する追加情報はこの ページでご覧いただけます。したがって、このサンプルはファイルシステム自体を作成できるため、サンプルを実行する前にSDカードを特定の構成で事前にフォーマットする必要はありません。 JP65に関してですが、tflm_cifar10_cm33_core0のサンプルは、JP65を1~2に設定すれば問題なく動作するはずです。RT700-EVKの回路図によると、JP65はマルチプレクサの出力選択のみを制御するものであり、次の図に示すように、この例で使用される機能には影響を与えません。 BR ハビブ Re: Error when runnning sample with SDcard in MIMRT700? @Habib_MS 詳しい説明をありがとうございました。以前よりもずっと理解が深まった。 また、いくつかのSDカードも確認し、そのうちの1枚(Sandisk 256GB)が動作し、サンプルを実行sdcard_fatfsきました。 はい、おっしゃる通りJP65を1-2に設定したら、eqi tflmサンプルを正常に実行できました。
View full article
IMX8MP secondary image boot Does IMG_CNTN_SET1_OFFSET secondary image boot (RM 6.1.6.2) work for ECSPI ("SPI") NOR boot on i.MX8MP, or only for FlexSPI NOR (and SD/eMMC)? Table 6-28 lists "SPI" and "FlexSPI NOR" as separate boot devices, and the secondary-offset valid values are stated only "for FlexSPI NOR boot." Re: IMX8MP secondary image boot Hello, Your understanding is wrong, the IMG_CNTN_SET1_OFFSET secondary image boot also work for SPI devices, only with a different offset: For FlexSPI = the valid values are: 0, 1, 2, 3, 4, 5, 6, and 7 For SPI = Secondary boot is disabled if fuse value is bigger than 10, n = fuse value bigger than 10. • n == 0: Offset = 4MB • n == 2: Offset = 1MB • Others & n <= 10 : Offset = 1MB*2^n Re: IMX8MP secondary image boot Thanks — that clears up the offset mapping. Two follow-ups so we can reproduce it on our i.MX8MP board (boot NOR on ECSPI2, OPEN / non-HAB config, fuse read 2 1 = 0 → n=0 → 4 MB): What triggers the ROM to switch to the secondary image on SPI NOR? Is it any invalid primary boot header / failed image parse, or specifically a HAB authentication failure? In other words, does secondary-image boot work in open (non-secured) configuration, or only when the device is HAB-closed? Does it fall back on the same reset, or does it require a power cycle / a second reset (persistent-boot style)? Must the secondary image at the 4 MB offset be a separately-built bootable image (its own IVT/boot data for that offset), or is a byte-identical copy of the primary sufficient? Re: IMX8MP secondary image boot On i.MX8MP booting from ECSPI (SPI) NOR in the OPEN (SEC_CONFIG=open, non-HAB) configuration: what is the exact trigger condition for the IMG_CNTN_SET1_OFFSET secondary image boot? Does the ROM switch to the secondary image on an invalid/erased primary container header, or only on a HAB authentication failure (i.e. only in the closed/secured configuration)? We have a valid secondary copy at 4MB (fuse n=0), erased the primary header, and the ROM does not fall back in open config.
View full article
iMXRT1052 Generating key blob in custom firmware not accepted on boot. Hi,   I have an encrypted bootloader that is signed, and HAB is enabled but not sealed. When flashed via NXP’s Secure Provisioning Tool, it works fine. Similarly, when I concatenate the FCB + Padding + Signed and encrypted bootloader + key blob (where the key blob is generated by executing the following command in the terminal):   blhost -t 5000 -u 0x15A2,0x0073 -j -- generate-key-blob "dek.bin" "blob.bin"   it also works. However, if I run this process using custom firmware in a debug session (which is only used to generate the key blob), the resulting blob file is not accepted and the bootloader fails to execute. The DEK remains unchanged in both scenarios.   Both generated .bin files differ only at the blob offset address.   Is there any difference between the flashloader.bin provided by the Secure Provisioning Tool and the publicly available source code (MCU boot)?   The "stock" flashloader reports this version: blhost -u 0x15A2,0x0073 -- get-property 1 Response status = 0 (0x0) Success. Response word 1 = 1258424320 (0x4b020800) Current Version = K2.8.0   Based on the bl_version.h, the source should be consistent, and the Secure Provisioning Tool version is 25.09.   The custom firmware uses code snippets from the flashloader source (specifically found in bl_keyblob_dcp.c), and all dependencies are taken from the same source. This implementation will only be used internally, so extracting the DEK from the firmware is not a concern.   Thank you for your time. 🙂 Re: iMXRT1052 Generating key blob in custom firmware not accepted on boot. Hi @JordanSt , May I understand you have tested with iMXRT1052 as below? 1. Load the flashloader from NXP’s Secure Provisioning Tool and use the following command to have dek.bin and blob.bin blhost -t 5000 -u 0x15A2,0x0073 -j -- generate-key-blob "dek.bin" "blob.bin" 2. Run a custom firmware with code from the sdk demo of flashloader on iMXRT1052 and use the same command as above to have the dek.bin and blob.bin.  3. The generated dek.bin files are the same, but the blob.bin files are not. If my understanding is correct , have you tried the flashloader from the sdk in step 2? Was the result the same? Have a great day, Kan ------------------------------------------------------------------------------- Note: - If this post answers your question, please click the "Mark Correct" button. Thank you! - We are following threads for 7 weeks after the last post, later replies are ignored Please open a new thread and refer to the closed one, if you have a related question at a later point in time. ------------------------------------------------------------------------------- Re: iMXRT1052 Generating key blob in custom firmware not accepted on boot. Hi @Kan_Li ,  Thank you for your support. Regarding: 1. Load the flashloader from NXP’s Secure Provisioning Tool and use the following command to have dek.bin and blob.bin  -  Yes, to get the key blob. 2. Run a custom firmware with code from the sdk demo of flashloader on iMXRT1052 and use the same command as above to have the dek.bin and blob.bin.   -  Yes, I did, test with demo flashloader from the SDK, also a custom-custom firmware.  Not sure if important, but the main difference is that the flashloader from the SPT is executed from internal SRAM, the custom firmware or the demo from SDK is not, they are configured and build for External (on board) SDRAM.   3. The generated dek.bin files are the same, but the blob.bin files are not.  -  Yes, the DEK used in both scenarios stays the same (it make sense). From the resulted key blob, headers are the same, only bk and dek sections differ, mac section is all zeros. Have a great day 🙂 Jordan
View full article
S32K389 AES_ACCEL 在加密 64KB 数据时会挂起/冻结 您好,NXP团队: 我正在使用S32K389并测试AES_ACCEL (ACE/MSC)模块。我在处理大型数据缓冲区时遇到了稳定性问题。 测试设置: 模式: AES-密码块链接(CBC) 案例 1(通过):加密4KB数据工作正常。 案例 2(失败):加密64KB数据会导致芯片在执行 AES 服务时立即崩溃/挂起。 观察到的行为: S32DS(S32 设计工作室)在执行 AES 服务期间冻结。 尝试通过调试器连接到 S32K389 完全失败。 问题: 对于每个 AES_ACCEL 事务的最大数据长度,是否存在任何已知的限制? 此致, 显龙 Re: S32K389 AES_ACCEL hangs/freezes when encrypting 64KB data 嗨@wuxianlong 让我查一下。我会尽快回复您。 此致, Lukas Re: S32K389 AES_ACCEL hangs/freezes when encrypting 64KB data 很抱歉耽搁了,我遇到了一些内部资源访问权限方面的问题,解决起来比预期要花更多时间。我会尽快回复。感谢您的耐心等待。 此致, Lukas
View full article
MIMRT700ボード上の大規模なデータセットでNPU tfliteモデルを評価するにはどうすればいいですか? 私の質問はタイトルの通りです。 私はtfliteモデルを使っていますが、NPUのTfliteモデルに変換しました。tfliteモデルとNPUのTfliteモデルの予測が場合によっては異なることを確認しました(大きな違いはありません)。そこで、大規模なデータセットに対して評価NPU tfliteモデルを実行したいと考えています。 現在はサンプルtflm_cifar10_cm33_core0 に従って推論NPU tfliteモデルをMIMRT700で実行しており、うまく動作しています。しかし、このサンプルでは、静止画像用にimage_data.hを修正しました(カメラは使用していません)。このサンプルを新しいCASE「大規模データセットで評価NPUのtfliteモデルを実行する」用に修正したいです。 私はSDカードを使用して画像を保存し、推論時にimage_data.hとして読み込む予定です。でも、どこから始めればいいのか分かりません MIMRT700にはデバッグ、eUSB、USB-OTGの3つのマイクロUSBポートがあることがわかりました。 何かおすすめやご提案があれば、ぜひ教えてください。各イメージを手動で実行する(ビルド+フラッシュ)と、非常に時間がかかります。 Re: How to evaluate NPU tflite model on large dataset on MIMRT700 board? @EdwinHz 応援してくださりありがとうございます。 SDカードの方法は良いです。ハードウェアは得意ではないので、チームメイトの提案で。 先ほど挙げたこの方法はどうでしょうか? 現在、私はtflm_cifar10_cm33_core0サンプルを使用して推論を実行するために、以下の手順を踏んでいます。 - image_data.h をサンプルにコピーします - ビルドボタンをクリックします デバッグボタンをクリックし、次に続行ボタンをクリックして推論を実行します。 チームメイトと話し合い、コマンドラインでビルドや推論を実行できるかどうかも話し合いました。とても良いです。もしうまくいけば、毎回image_data.hを変更するスクリプトを作成し、推論を構築し実行し、推論結果をPCに戻すことができます。これについてコメントはありますか? NXPがビルド、フラッシュ、サンプルtflm_cifar10_cm33_core0の実行に関するガイドラインがあれば、より簡単にカスタマイズできるということです。ハードウェアは得意ではないのでこの方法が気に入っています(NXPがこの方法をサポートしていれば、Pythonスクリプトを作成して毎回image_data.hを作成し、ビルドし、フラッシュし、実行して結果をPCに戻し、保存できます.csvファイルなど)。この方法(ビルド、フラッシュ、実行、コマンドライン経由でPCに結果を返す)をサポートするベンダーも多く見かけます。NXPもこの方法をサポートしていると思います。 Re: How to evaluate NPU tflite model on large dataset on MIMRT700 board? こんにちは、 @nnxxpp さん。 ご指摘のとおり、この例では静的ヘッダー方式を採用しています。しかし、SDカードを介してイメージをマウントするパイプラインを構築する方が、大規模なデータセットにははるかに適しているだろう。 画像をSDカードに事前にロードしておき、SDカードをマウントし、画像リストを開いて、各画像に対して次の操作を行います。 - 入力バッファへの読み込み - NPU推論を実行する - 「results.csv」に結果を書き込むファイル 現時点でこれを例示するサンプルコードはありませんが、使用しているtflm_cifar10_cm33_core0 sdcard_fatfsと、すでに初期化やカードマウントを処理し、SDカード利用に関するすべてのAPIを備えたSDKの例の両方を参照できます。 SDカードのサンプルを実行して理解し、バイナリイメージファイルの読み込みをテストすることをお勧めします。次に、tflm サンプルに SD カードのコンポーネントを追加し、SD カードの初期化と FatFs コードをインポートし、最後に静的ファイル image_data.h を置き換えます。f_read() を使用して SD カードから読み取った画像情報を含むバッファを入力として使用します。 画像をあらかじめテンソル形式で保存しておけば、処理が簡素化され、JPEG/PNGのデコード処理が不要になる。 BR、 エドウィン。 Re: How to evaluate NPU tflite model on large dataset on MIMRT700 board? さらに情報を追加したいです。 現在、私はtflm_cifar10_cm33_core0サンプルを使用して推論を実行するために、以下の手順を踏んでいます。 - image_data.h をサンプルにコピーします - ビルドボタンをクリックします デバッグボタンをクリックし、次に続行ボタンをクリックして推論を実行します。 チームメイトと話し合い、コマンドラインでビルドや推論を実行できるかどうかも話し合いました。とても良いです。もしうまくいけば、毎回image_data.hを変更するスクリプトを作成し、推論を構築し実行し、推論結果をPCに戻すことができます。これについてコメントはありますか?本当にありがとうございます。 Re: How to evaluate NPU tflite model on large dataset on MIMRT700 board? また、SDカードMIMRT700表示されているのも見ました。画像を読み込んでtflm_cifar10_cm33_core0してSDカードに保存できるなら、とても良いです。 でも正直に言うと、どう始めたらいいかは分かっています。私はハードウェアに詳しくありません。 Re: How to evaluate NPU tflite model on large dataset on MIMRT700 board? こんにちは、 @nnxxpp さん。 わかりました。 MCUXpresso SDKプロジェクトはコマンドラインから実行でき、スクリプトでプロセスを自動化できます。私たちのSDKコマンドラインフローはwest buildを使っており、flashはwest flash -r linkserverで行えます。 AN14700では、セクション「7.3」のパート8で説明されているように、CLIを使用してプロジェクトをコンパイルします。変換モデルを動かせ」と言いました。 したがって、このプロセスを自動化するためのスクリプトの一般的な応用は以下の通りです: 1. 新しいimage_data.hをコピーする 2. WestBuildを使用して構築する 3. West Flash を使用したプログラム 4. UARTログの取得 「一般的な推奨方法」ではありませんが、あなたの用途にも十分効果的でしょう。 BR、 エドウィン。 Re: How to evaluate NPU tflite model on large dataset on MIMRT700 board? @EdwinHz はい。本当にありがとうございます。 このドキュメントを調べて従ったところ、Westを使うことで実行プログラムをフラッシュできました。ここから、すべてのプロセスを自動化するスクリプトを作成できます。 このコマンドを使用する前に west build -b mimxrt700evk examples/demo_apps/hello_world -- -Dcore_id=cm33_core0   AN14700のドキュメントで、 west build -p always examples/eiq_examples/tflm_label_image --toolchain という記述を見ました。 armgcc --config flash_debug -b mimxrt700evk -Dcore_id=cm33_core0   最初のコマンドにあるフラグについて質問があります。それはどういう意味ですか?また、MIMXRT700EVKでNPU tfliteモデルを動かす際に設定すべきフラグはどれですか?
View full article
i.MX 8M Plus LPDDR4 EVK - 启用 eMMC boot0/boot1 主板:i.MX 8M Plus LPDDR4 EVK (MIMX8ML8DVNLZAA), IMX8MPEVKHUG rev 0 HAB:熔断 OPEN(SRK 未烧毁,故意,仍在评估中) 我正在为基于 RAUC 的 A/B 更新系统实现启动加载程序更新冗余,并希望像许多 i.MX8M 设计那样使用 eMMC 的硬件 启动0/启动1 分区(BOOT_PARTITION_ENABLE)——将新的启动加载程序写入非活动启动分区,切换哪个分区处于活动状态,并依靠 ROM 在新激活的分区发生故障时回退到另一个分区。我特别想避免为此烧毁任何 BOOT_CFG/efuse。 我在 EVK 上使用基于 poky/oe-core mmc-utils 配方构建的 mmc-utils 时观察到以下情况: - mmc extcsd 读取 /dev/mmcblk2 报告 PARTITION_CONFIG 中 BOOT_PARTITION_ENABLE 已设置为 boot0(值为 0x08)。 - boot0 (/dev/mmcblk2boot0) 包含一个看起来有效的映像(偏移量 0 处有正确的 IVT 标签),但它与我当前部署的引导加载程序不匹配。 - boot1 (/dev/mmcblk2boot1) 完全为空(全部为零)。 - 逐字节比较证实,该板实际上是从标准的 32 KiB 偏移处的原始 eMMC 用户区启动(内容与我当前部署的 imx-boot 完全匹配)——而不是从 boot0 启动,尽管 PARTITION_CONFIG 指示 boot0 已启用。 因此,在这个板上,EXT_CSD 的 BOOT_PARTITION_ENABLE 似乎对 ROM 的实际启动源没有影响。根据 IMX8MPEVKHUG 第 2.2 节,EVK 的 SW4 开关仅用于选择粗略的启动设备类别(eMMC vs SD vs QSPI vs NAND vs 熔丝 vs USB 串行下载)——没有用于 eMMC 启动分区子模式的开关位置。 问题: 1. 在LPDDR4 EVK上,是否有支持的方法可以选择“ROM从eMMC boot0/boot1硬件分区启动”,而无需设置BT_FUSE_SEL=1或烧录BOOT_CFG熔丝?例如,是否可以通过跳线、电阻或IMX8MPEVKHUG rev 0中未记录的SW4/SW1101组合来实现?或者,该板的PCB是否已硬性规定始终从eMMC用户区启动,而不管EXT_CSD状态如何? 2. 如果 BOOT_CFG 熔丝是启用 eMMC 启动分区模式的唯一方法:控制此模式的 BOOT_CFG 熔丝组是否独立于用于 HAB 的 SRK 哈希熔丝?我想了解通过熔丝启用 eMMC 启动分区冗余是否会迫使我同时关闭 HAB(SRK 烧录),或者这些是否是可分离的决定。 3. 对于使用 i.MX 8M Plus 和 eMMC 的定制板设计(非 EVK),推荐的方法是如何在首次启动时就使 eMMC boot0/boot1 冗余可用?也就是说,BOOT_CFG GPIO 跳线/PCB 设计中需要满足哪些条件,才能使其成为第一天就能使用的功能,而不是需要稍后进行熔丝位绑定? 如果能提供一些关于 eMMC 启动分区选择的 BOOT_CFG 位定义的具体参考手册章节的链接(除了 IMX8MPEVKHUG 中已经涵盖的 SW4 设备类位之外),我们将不胜感激。 谢谢! Re: i.MX 8M Plus LPDDR4 EVK - enabling eMMC boot0/boot1 供参考,请参阅 i.Mx8 UM 第 5.8.2.2.1 节“高级 eMMC 启动流程”。 SCU ROM 支持 4 种 eMMC 启动方案: 1.在这种情况下,“eMMC 快速启动”熔丝被烧断。小学和中学 镜像容器集均位于启动分区中,且 BOOT_PARTITION_ENABLE = 1 或 2。 2. 在这种情况下,“eMMC 快速启动”熔丝烧断了。小学和中学 镜像容器集均位于用户区域,且 BOOT_PARTITION_ENABLE =7。 3.在这种情况下,“eMMC 快速启动”熔丝没有熔断。启动模式为正常模式 启动、主镜像容器集和辅助镜像容器集都在用户区域。 4. 在这种情况下,“eMMC 快速启动”熔丝没有熔断。启动模式为正常模式 启动时,主镜像容器集和辅助镜像容器集都在启动过程中。 分区,并且 BOOT_PARTITION_ENABLE = 1 或 2。
View full article
PWM Capture can't work in frdm_mcxw72 board Hi, I tried to practice the pwm capture sample in  frdm_mcxw72 board, but unfortunately, the print message in serial tool only show " capture cycle err -134" . I'm sure there is the 1Khz, 50% duty cycle pwm signal inject into the PTA21 pins in frdm_mcxw72 board. i imported the whole project files from the demo case,  there is no change that i only added the overlay file,   below is the overlay files setting. can you help check the reason why there is no correct print information. thanks in advance! Re: PWM Capture can't work in frdm_mcxw72 board Hello, Hope you are doing well. Could you please clarify what Zephyr repo are you using? Also, are you starting from any of the examples? Did you modify something? Best Regards, Ricardo Re: PWM Capture can't work in frdm_mcxw72 board Hi Ricardo, The repo version is V4.4.1.0,  below is the my steps  1. Import the capture example application from the repo  2. Add the  DTS overlay file in the board folder, the content of the overlay file  posted in first message. 3. build and flash into the frdm_mcxw72 board in my hand,  the print message is  "capture cycle err" ,  it looks the board state is ok because i didn't inject the pwm signal , but the print message is the same after the pwm signal injected into PTA21 pins.     Re: PWM Capture can't work in frdm_mcxw72 board Hello, Could you please clarify what repository are you using? Are you using Upstream or Downstream? Also, is the example working on your side without modifications? Best Regards, Ricardo Re: PWM Capture can't work in frdm_mcxw72 board Hi Ricardo here is the repo version  i only update the overlay file,  it will be  can't build successfully if there is no this file. Best regards!
View full article
FLEXCAN EDMA - CANメッセージのバースト受信時にACKエラーが発生する i.MXRT1176では、EDMAとFLEXCANを使用しています。(SDK 26.03) DMA転送完了時にコールバック関数が定義されています。 これが私たちの流れです。 1.転送を開始するには、`FLEXCAN_TransferReceiveFifoEDMA()` を呼び出してください。 2. DMA転送完了時にユーザー定義コールバックが呼び出されます。 3. データはDMAバッファからコピーされ、メッセージの受信を継続するために`FLEXCAN_TransferReceiveFifoEDMA()`が呼び出されます。 4. 手順2~4を繰り返す 別のノードから最小限のフレーム間隔でバースト的にメッセージを送信すると、ACKエラーの数が増加することがわかりました。つまり、iMXがメッセージをACKできないということです。 処理の流れを追っていくと、DMA転送完了コールバックが発生するたびに、FLEXCAN上でDMAが無効化されているようです。「FLEXCAN_TransferReceiveFifoEDMA()」が呼び出されると再び有効化されます。 これは「FLEXCAN_EnableRxFifoDMA()」を呼び出すことで行います。有効化/無効化DMAはFLEXCANのMCRレジスタ内のDMAビットを更新し、フリーズモードでのみ可能です。メッセージを一気に受信しているため、FLEXCANがフリーズモードに設定されている間に送信が進行中である可能性があります。そして、着信メッセージをACKで確認できません。   `FLEXCAN_EnableRxFifoDMA()` の呼び出しを削除することで、すべての ACK エラーが解消されることを確認しましたが、今度は一部のメッセージがドロップされるようになりました。また、メッセージの間隔を空けて送信してみたところ、ACKエラーも解消されました。これが実装上の問題なのか、それとも別の方法で再設計すべきか確認していただけますか? Re: FLEXCAN EDMA - ACK errors while receiving a burst of CAN messages こんにちは、@r-uv さん。 詳細な分析をありがとうございました。あなたの観察はSDKの実装と一致しています。 FLEXCAN_TransferReceiveFifoEDMA() は、有限長のトランザクション API です。DMA完了の後、ドライバーはRx FIFO DMA要求を無効化し、次の呼び出しで再び有効化します。MCR[DMA]を変更するにはフリーズモードが必要となるため、最小IFSトラフィックの次のフレームがFlexCANが通常モードに戻る前に到着する可能性があり、その結果ACKが欠落する可能性があります。 これは、繰り返し行われるDMAの有効化/無効化操作を削除するとACKエラーは解消されるものの、フレームのドロップが依然として発生する理由も説明しています。フリーズに関連するACKギャップは解消されますが、eDMA転送は継続的に再有効化されないためです。 連続的なバーストトラフィックについては、Rx FIFO DMA要求を有効にし、ハードウェアチェーンのピンポン/散乱集いTCDを使用して次のバッファが自動的に有効化されるようにすることを推奨します。これは、FLEXCAN_TransferReceiveFifoEDMA() を繰り返し再起動するのではなく、連続した DMA 受信パスを必要とします。 よろしくお願いします、 ギャビン
View full article
S32K396をベースとしたETPUの例 こんにちは。S32DS3.5で生成されたETPUで使用されるS32K396用のRTD 5.0.0のデモが必要です。燃料噴射機能に使用したいと考えています。ソフトウェアパッケージとコード例を提供していただけますでしょうか? Re: S32K396的ETPU的例子 こんにちは@大概さん リアルタイム・ドライバ内にETPUおよびS32K396の既存例があります: さらに、S32K3 - eTPU SWパッケージの中には様々な例も見つかります。RTDとは独立しており、どのバージョンでも使用可能ですが、eTPUのSWは特定のRTD 7.0.0でのみ検証されていますバージョンや他のバージョンとの互換性は保証できません。 よろしくお願いします、 ジュリアン
View full article
使用 MCUXpresso 安全配置工具时,无法在多个 RAM 中保存代码 我们在 IMXRT1171 上的项目从 SD 卡启动并通过 RAM 运行。以前,我们的大部分代码都可放入ITC内存,只要我们将起始地址修改为0x3000(并将大小修改为更小的-0x3000),MCUXpresso安全配置工具就不会出现任何问题。然而,我们的 ITC RAM 开始耗尽,不得不将一些功能(通过链接器模板)移至 OCRAM。 这样做之后,MCUXpresso安全配置工具现在抱怨它不支持不同内存中的代码。我本来希望不要把所有东西都移到 OCRAM 中,但现在看来我不得不这么做了。 是否有其他解决方法可以让工具在两个独立的 RAM 中运行代码? 谢谢您! -m Re: Cannot have code in multiple RAMs when using MCUXpresso Secure Provisioning tool 嗨,@nxp16、 能否请您具体说明从 SPT 收到的错误信息?无论如何,我建议使用 i.MX RT1170 的 FlexRAM 功能,根据应用需求调整 ITC RAM 的大小。这是一篇解释如何操作的 AppNote:AN12077:使用 i.MX RT FlexRAM — 应用笔记 BR, Edwin. Re: Cannot have code in multiple RAMs when using MCUXpresso Secure Provisioning tool ITC RAM 的大小无法调整到超过其最大值 256k。FlexRAM对此没有帮助。很遗憾,我不记得具体的错误信息是什么了,为了解决这个问题,我改用只使用 OCRAM1,并将 ITC RAM 留空。
View full article
Can ADC1_MA1 pin be used as ADC input on S32K312? Hello NXP Team, I am using the S32K312 controller and I would like to use the pin labelled ADC1_MA1 for reading a potentiometer voltage. I understand that ADC1_MA1 is an ADC external multiplexer address output pin. However, I would like to confirm whether there is any possible configuration in SIUL2, ADC, or pin mux settings that allows this pin to be used as a normal ADC analog input. My requirement is to connect a potentiometer wiper voltage, in the range of 0 V to 3.3 V, and read it through ADC1. Could you please confirm: Is ADC1_MA1 physically connected to any ADC input channel/sample-and-hold circuit? Can this pin be configured as an ADC input through software? If it cannot be used as an ADC input, is there any recommended hardware workaround when the PCB is already designed with the potentiometer connected to this pin? Thank you. Best regards, Esakki Re: Can ADC1_MA1 pin be used as ADC input on S32K312? Hi Esakki, ADC1_MA1 is the ADC Mux Output, a digital pin, and its direction is output. The function of this pin is described in "S32K3 ADC Use of external channels". The ADC1_MA1 pin has no Direct Signals and cannot be used as an ADC input. Only pins with an ADC listed in the Direct Signals section can be used as ADC inputs. Unfortunately, there are no other reliable solutions, and it is recommended to modify the hardware circuitry. Best Regards, Robin Re: Can ADC1_MA1 pin be used as ADC input on S32K312? Hi @Robin_Shen , Thank you for your clear explanation and confirmation. I appreciate your support. Best regards, Esakki
View full article
JTAG on FRDM iMX95 Hi all,  I just bought FRDM iMX95 recently, i am curious about how to use JTAG to debug this board  As check in schematic it has JTAG exposed at 6 test point pin here  At board layout it here  How should i connect jtag to it, do i need any rework ? And does this JTAG support to debug all A55, M33, and M7 core ?  Which device should i use here, it seem we have 6 pin needle but it 2x3 not 1x6  I would appreciate any guide or docment to set up JTAG  Thank you !!   Linux Re: JTAG on FRDM iMX95 Hello, Your understanding is correct. As you can see in schematic is needed to add the DNP resistors and a connector for the debugger. Best regards. Re: JTAG on FRDM iMX95 Hello, Thank you for your confirmation @JorgeCas  Summary : Please help with JTAG problem ""DAP: Could not power-up system power domain."" I have done the rework for 3 resistor and measure the pin, it successfully pull up. One note that to enable JTAG, i need to disable LPUART5 in device tree  because it use the same pin (i follow the same modify as imx95-19x19-jtag.dtb ) or else TMS (Test point 49) will always LOW) diff --git a/arch/arm64/boot/dts/freescale/imx95-15x15-frdm.dts b/arch/arm64/boot/dts/freescale/imx95-15x15-frdm.dts index c45f28efb568..598e16af0ebd 100644 --- a/arch/arm64/boot/dts/freescale/imx95-15x15-frdm.dts +++ b/arch/arm64/boot/dts/freescale/imx95-15x15-frdm.dts @@ -520,7 +520,7 @@ &lpuart5 { /* BT */ pinctrl-names = "default"; pinctrl-0 = <&pinctrl_uart5>; - status = "okay"; + status = "disabled"; bluetooth { compatible = "nxp,88w8987-bt"; After this i need to find the connector with 1.27mm pin. It take me some time to find this pcb test by pogo pin, it has 6 pin, perfectly fit.  Here is my current setup  It seem a mess but the connection is not problem, i check the HWStatus and it look good  J-Link>ShowHWStatus VTref=3.324V ITarget=0mA TCK=1 TDI=1 TDO=0 TMS=0 TRES=1 TRST=1 Supported target interface speeds: - 120 MHz/n, (n>=8). => 15000kHz, 13333kHz, 12000kHz, ... - Adaptive clocking I try connect it by these 2 command for A55 and M33 but same issue show is "DAP: Could not power-up system power domain." zk47@ltu:~$ JLinkExe -device MIMX9516_M33 -if JTAG -speed 200 SEGGER J-Link Commander V9.42 (Compiled May 6 2026 12:36:02) DLL version V9.42, compiled May 6 2026 12:35:00 zk47@ltu:~$ JLinkExe -device MIMX9516_A55 -if JTAG -speed 200 What could i do wrong here ? Maybe it fall to my JLink device is not good, can MCU-Link Pro replace it ? Can MCU-Link Pro debug both A55 and M core ?  I would still prefer do the debug through JTAG because i already had it. Please help  If you guy plan to add document guide for JTAG on FRDM iMX95, please update it soon like FRDM iMX93.   Re: JTAG on FRDM iMX95 Dear @JorgeCas  Any update ? Can i use MCU-Link Pro to debug all core A55, M33 and M7 core ?  Re: JTAG on FRDM iMX95 Hello, I apologize for the delay. We suggest you any debugger from MACRAIGOR Systems, Wind River or any of ARM. NXP team uses Lauterbach Trace32 as debugger tool for Cortex-A cores, J-link is for Cortex-M cores. In the case of i.MX95, as prerequisite to use the CM7 or CA55 scripts the SM should be already running on the i.MX device. it has the CM33 for resource management and security reasons, it's open source, it's compliant to a HW resource management standard by ARM, and its code it's meant (between a lot of them) to partition hardware, assign resources to either Cortex-A or Cortex-M7. You can use this document as reference. Debugging Cortex-M with VS Code on i.MX 8M, i.MX 8ULP, and i.MX 9 If you still having issues after this considerations, please look for hardware issues in your adapter. Best regards. 
View full article
中断在内存中运行,闪存擦除 我发现擦除闪存时无法进入定时器中断。为了满足我的需求,我计划在 RAM 中运行定时器中断。我修改了 linker_flash_s32k388.ld 文件,将 IntCtrl_Ip.o 和 Pit_Ip.o 放入 RAM 中,但是当我擦除闪存时,由于定时器中断的到来,我仍然会遇到错误。请告诉我我遗漏了哪些细节。#s32k388 Re: Pit interrupt runs in ram wen flash erase 你好, 只需放置 IntCtrl_Ip.o 和 Pit_Ip.o仅仅存入内存通常是不够的。在 PFLASH 擦除操作期间,CPU 必须避免对受影响的闪存阵列进行任何访问。 请确认中断向量表、PIT ISR、ISR 调用的所有函数以及 ISR 使用的任何数据/常量也位于 SRAM 中。此外,确保 VTOR 寄存器指向基于 RAM 的向量表。链接器映射文件通常是识别剩余闪存访问的最佳方法。 S32K3 参考手册还指出,当闪存操作需要持续执行时,代码执行必须移至 SRAM。 顺祝商祺! Peter
View full article
i.MX95 OEIおよびDDR PHYファームウェアへのカスタムLPDDR5タイミングの統合に関する説明 NXPチームの皆様、こんにちは。 i.MX9596プロセッサをベースにしたカスタムボードを、i.MX OEIブートローダーを使ってLPDDR5メモリを導入します。 MCUXpresso Config Toolsバージョン26.3を使用して、自作ボード用のDDR構成を生成しました。生成されたファイルは以下のとおりです。 lpddr5_timing.c lpddr5_config.ds ペリフェラル.c ペリフェラル.h pin_mux.c pin_mux.h OEIソースのboards/mx95lp5/ddrディレクトリ内に、以下のファイルが見つかりました。 MIMX95_LPDDR5_EVK_19X19_6400MTS_FW2024.09_timing.c MIMX95_LPDDR5_EVK_19X19_6400MTS_FW2024.09_ECC_enabled_timing.c XIMX95LPD5EVK19_6400mbps_train_timing_a1.c カスタムLPDDR5ボードの正しい統合手順を確認したいのですが。 生成されたlpddr5_timing.cMIMX95_LPDDR5_EVK_19X19_6400MTS_FW2024.09_timing.c の代わりにこれを使用し、OEI_DDR_CONFIG を更新して新しいタイミングファイルを参照するようにしますか? XIMX95LPD5EVK19_6400mbps_train_timing_a1.cはNXPが提供するシリコン専用のトレーニングファイルで、カスタムボードでは変更されないべきでしょうか? OEIは以下のDDR PHYファームウェアバイナリを使用します。 lpddr5_imem_v202409.bin lpddr5_dmem_v202409.bin lpddr5_imem_qb_v202409.bin lpddr5_dmem_qb_v202409.bin これらの同じファームウェアバイナリは、生成されたDDRのタイミング設定とファームウェアバージョンが一致していれば、カスタムLPDDR5ボード上で再利用できますか? ECC対応タイミングファイルは、LPDDR5 ECCが有効になっている場合にのみ必要ですか?カスタムボードでECCを使用しない場合、通常のタイミングファイルで十分でしょうか? EVK DDR構成からカスタムLPDDR5ボードに移行する際に、再生成または変更が必要な追加ファイルがあればお知らせください。 よろしくお願いします。 Re: Clarification on Integrating Custom LPDDR5 Timing into i.MX95 OEI and DDR PHY Firmware Usage こんにちは、 1. はい、MIMX95_LPDDR5_EVK_19X19_6400MTS_FW2024.09_timing.c をカスタム構成に置き換える必要があります。 2. それはそのシリコンリビジョンごとに異なる構成なので、あなたのCASEであれば参考にCAN。この構成を使っていない場合は、そのままにしておいても構いません。 3. はい、これらのバイナリは類似の構成に再利用でき、通常のタイミングファイルで十分で、ECCを使わない場合は十分です。 よろしくお願いいたします。
View full article