Multi Source Translation Content

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

Multi Source Translation Content

ディスカッション

ソート順:
IMX8MPのLinuxのubootは、デフォルトの環境+追加の変数で設定する必要があります IMX8MP Linux ubootは、ブートローダーをuuuでフラッシュした後、デフォルトの環境ネットワーク+さらにいくつかの変数を設定する必要があります。 ユースケース: IMX8MP SoMには、ベンダー提供のデフォルトのu-bootが付属しています。初めて新しいubootイメージを書き込む必要があり、デフォルト環境に設定し、工場プロセスでボード固有の環境変数をいくつか追加しました。 つまり、コマンドを使うときはuuu -b emmc_all bl-imx8mp.bin image.wic.zstが内蔵スクリプトを使っています uuu_version 1.4.149 # @_flash.bin |WICイメージから抽出できるブートローダー # @_image [_flash.bin]| wicイメージをemmcに書き込む。 # このコマンドは、i.MX6/7、i.MX8MM、i.MX8MQ の場合に実行されます SDP: boot -f bl-imx8mp.bin -scanlimited 0x800000 # このコマンドはROMがストリームモードをサポートするときに実行されます # i.MX8QXP、i.MX8QM SDPS: boot -scanterm -f bl-imx8mp.bin -scanlimited 0x800000 # これらのコマンドはSPLを使用する場合に実行され、SPLを使用しない場合はスキップされます # SDPU は非推奨になります。SDPUの代わりにSDPVを使用してください # ヤミン・アメックス SDPU: 遅延 1000 SDPU: write -f bl-imx8mp.bin -offset 0x57c00 SDPU: ジャンプ -scanlimited 0x800000 # } # これらのコマンドはSPLを使うときに実行され、SPLがなければスキップされます # もし(SPLがSDPVをサポートする場合) # { SDPV:ディレイ1000 SDPV: write -f bl-raptor-imx8mp.bin -skipspl -scanterm -scanlimited 0x800000 SDPV:ジャンプスキャン制限0x800000 # } FB: ucmd setenv fastboot_dev mmc FB: ucmd setenv mmcdev ${emmc_dev} FB: ucmd mmc dev ${emmc_dev} FB: flash -raw2sparse all image.wic.zst/* FB: flash -scanterm -scanlimited 0x800000 ブートローダー bl-imx8mp.bin FB: ucmd if env exists emmc_ack; then ; else setenv emmc_ack 0; fi; FB: ucmd mmc partconf ${emmc_dev} ${emmc_ack} 1 0 FB: 完了 私の要件は ブートローダーをフラッシュ + rootfs / イメージ デフォルトにリセットしてください。 新しい変数を追加します。 適切な動作をする新しいブートローダーと想定される環境で再起動してください。 しかし今は、まずルートファイルシステムをフラッシュしてから、新しいブートローダーをフラッシュするようになっています。だから、envのデフォルト-f -aを実行してから実行すると、SoMボードの古いブートローダーの環境のデフォルト状態になります。リセットされると、新しいブートローダーで起動しますが、古いブートローダーのデフォルト設定がそのまま使用されます。この問題を解決するための提案はありますか? Re: IMX8MP linux uboot need to be set up with the default environment + extra variables こんにちは、@jake4さん お元気でお過ごしのことと思います。 自分でカスタムスクリプトを作成して、以下に追加してみてください: FB: ucmd env default -f -a 完全なスクリプトの例: uuu_version 1.4.149 SDP: boot -f bl-imx8mp.bin -scanlimited 0x800000 SDPS: boot -scanterm -f bl-imx8mp.bin -scanlimited 0x800000 SDPU: delay 1000 SDPU: write -f bl-imx8mp.bin -offset 0x57c00 SDPU: jump -scanlimited 0x800000 SDPV: delay 1000 SDPV: write -f bl-imx8mp.bin -skipspl -scanterm -scanlimited 0x800000 SDPV: jump -scanlimited 0x800000 FB: ucmd setenv fastboot_dev mmc FB: ucmd setenv mmcdev ${emmc_dev} FB: ucmd mmc dev ${emmc_dev} FB: flash -raw2sparse all image.wic.zst/* FB: flash -scanterm -scanlimited 0x800000 bootloader bl-imx8mp.bin FB: ucmd if env exists emmc_ack; then ; else setenv emmc_ack 0; fi; FB: ucmd mmc partconf ${emmc_dev} ${emmc_ack} 1 0 FB: ucmd env default -f -a FB: ucmd setenv board_version "1.0" FB: ucmd setenv my_custom_var "value" FB: ucmd saveenv FB: ucmd reset FB: done よろしくお願いいたします。 サラス。 Re: IMX8MP linux uboot need to be set up with the default environment + extra variables こんにちは、 @Manuel_Salas さん。 ubootではeth fastbootのみを有効にしているため、SDPのブートスイッチは使えません。fastbootコマンドだけのオプションがあるかどうか教えていただけませんか? よろしくお願いします。
記事全体を表示
PPF0900AMBA1ES 您好,NXP团队: 我正在开发一款基于 i.MX95(MIMX9596,19x19 封装,LPDDR5)的定制板,采用 PPF0900AMBA1ES PMIC。 请您确认一下: 1.该部件号出厂时是否已预先编程了OTP,还是未编程的工程样品? 2.如果未进行编程,建议如何对 OTP 配置进行编程(或模拟)以进行启动和评估? 3.是否有适用于 i.MX95 + LPDDR5 (19x19) 实现的参考 OTP 配置文件 (.CFG) 可供我们用作起点? 作为背景,我们的原理图与 i.MX95 EVK 参考设计(PF09 + PF5301 + PF5302)非常接近,我们目前正在进行初始上电启动。 谢谢! PMIC Re: PPF0900AMBA1ES PPF0900AMBA1ES 是 OTP 部分,这意味着已经完成了 OTP。 https://www.nxp.com/docs/en/supporting-information/MPF0900AMBA1ES.zip 请从上方链接下载OTP文件。
記事全体を表示
PPF0900AMBA1ES こんにちは、NXPチームの皆様、 i.MX95(MIMX9596、19x19パッケージ、LPDDR5)をベースにしたカスタムボードをPPF0900AMBA1ES PMICを使って作っています。 確認いただけますか: 1. この部品番号の商品は、OTPが既にプログラムされた状態で出荷されますか、それともプログラムされていないエンジニアリングサンプルですか? 2. プログラムされていない場合、起動および評価目的でOTP構成をプログラム(またはエミュレート)するための推奨手順は何ですか? 3.Is 参照OTP設定ファイル(.i.MX95 + LPDDR5(19x19)実装で利用可能なCFG)を出発点として使えるでしょうか? 参考までに、私たちの回路図はi.MX95 EVKのリファレンスデザイン(PF09 + PF5301 + PF5302)に忠実に従っており、現在は初期電源オンの起動作業を行っています。 よろしくお願いします。 PMIC Re: PPF0900AMBA1ES PPF0900AMBA1ESはOTP部分であり、既にOTPが実行されていることを意味します。 https://www.nxp.com/docs/en/supporting-information/MPF0900AMBA1ES.zip OTPファイルは上記のリンクからダウンロードしてください。
記事全体を表示
S32K3 ADC 优化 DMA 流 你好, 当 ADC 组只有一个通道并且选中了“启用 DMA 流组”配置项时,执行 Adc_Ipw_SetupTcdSingleAdcChannelMajorLink 函数时会发生硬故障。 对于单个通道,如果选中“无中断 ADC 组”配置项,并且启用了“ACCESS_MODE_STREAMING,选择 ADC 流式 DMA 通道”,则可执行此操作。否则,配置文件中的 DMA 通道数为 255,这在这里是合理的。但我不太明白的是,为什么当 ADC_ENABLE_GROUP_STREAMING_RESULTS_RORDER 或 ADC_OPTIMIZE_DMA_STREAMING_GROUPS 为 STD_ON 时,而不是 STD_ON==GroupPtr ->AdcWithoutInterrupt 时,会调用 Adc_Ipw_SetupTcdSingleAdcChannelMajorLink 函数。这似乎不合理,而且调用此函数会导致硬故障。 Jason22_0-1785831767968.png BR, 杰森 Re: S32K3 ADC Optimize DMA Streaming 嗨@ Jason22 下次请不要使用QQ邮箱账号,请使用公司邮箱账号。 我测试过了,但没有发现任何问题。 我附上了我的测试项目和测试结果供你参考。 另外,我检查了你的代码,发现了一些错误。 1.时钟初始化错误,你的代码无法成功运行。 Senlent_0-1785915417329.png 2.“ adc_group0_val ”应归类为“不可缓存区域” 另外: 用户手册中对优化 DMA 流组的使用说明进行了详细说明。 RTD_ADC_UM.pdf Senlent_0-1785915908665.png Re: S32K3 ADC Optimize DMA Streaming 嗨@ Jason22 这是我的检测结果。如果您使用的是我提供的项目,并且优化级别设置为 -O0,那么我们的观察结果应该是一样的。 我觉得这里没什么问题。如果超出边界,肯定会进入硬故障,但测试结果并没有,这只能说明是编译优化级别的问题。没有必要在错误状态下继续分析。 Re: S32K3 ADC Optimize DMA Streaming 您好@Senlent 我不确定我的操作是否正确——我尝试用你的 ELF 文件进行调试,但没有成功。 1.png 请您按照我视频中演示的步骤操作一下好吗?我相信您能够重现这个问题。 步骤如下: 在该行设置断点 Mcl_Init(NULL_PTR); 。 运行程序直到它到达断点。 Mcl_Init(NULL_PTR); 。 禁用所有断点(点击“跳过所有断点”按钮)。 跨过 Mcl_Init(NULL_PTR);(单击“全部执行”按钮) 重新启用断点(单击“跳过所有断点”按钮),然后单击“恢复”按钮。 你会发现 Dma_Ip_ConvertLogicChToHwCh 再次输入,然后 逻辑 是 255。 BR, 杰森 Re: S32K3 ADC Optimize DMA Streaming 嗨@Senlent 很高兴你能看到 LogicCh 是 255。在你的项目中,它确实运行正常,但这属于越界访问,对吗?关于您所说的:“如果超出边界,就应该绝对进入硬故障”——我并不完全同意。C 语言不像 C++ 那样有运行时边界检查。对于指针数组,是否发生硬故障取决于越界访问所获得的值。 考虑一个指针数组:uint32* pArr[2] = {0x20400000, 0x20400004}。假设 pArr 的地址为 0x204300A0,则 pArr[2] 的值存储在地址 0x204300A8 处。如果 0x204300A8 包含 0x20400008,则 *pArr[2](越界访问,最终读取地址 0x20400008 处的值)不会导致硬故障。但是,如果 0x204300A8 包含 0x1FFFFFF0,则 *pArr[2](最终从 0x1FFFFFF0 读取)将导致硬故障。两者都是越界访问,但是否会发生硬故障取决于概率。 准确地说,硬故障并非由越界访问本身直接引起,而是因为对指针数组的越界访问得到了一个无效指针,而访问该无效指针触发了硬故障。 正因如此,在你的项目中,访问 Dma_Ip_pxInit->ppxLogicChannelConfigArray[255]->LogicChId.HwChId 不会导致硬故障,但在我的项目中却会导致硬故障。 BR, 杰森 Re: S32K3 ADC Optimize DMA Streaming 嗨@ Jason22 我会把设计团队的反馈意见发给你。 通常情况下,如果这是一个影响重大的漏洞,他们会在新版本中修复,并在发布说明中加以说明。 Re: S32K3 ADC Optimize DMA Streaming 嗨@Senlent 非常感谢您向设计团队报告这个问题。如果有最终结果,我应该在哪里查看?如果确实存在错误,是否会在类似于 SW32K3_S32M27x_RTD_R23-11_7.0.0_D2511_ReleaseNotes.pdf 的文档中公布? BR, 杰森 Re: S32K3 ADC Optimize DMA Streaming 您好@Senlent 是的,我直接使用了你的项目,没有做任何修改。在你的视频中, Dma_Ip_ConvertLogicChToHwCh 函数被间接调用 Mcl_Init ,这不是预期行为。预期行为是…… Adc_Ipw_SetupTcdSingleAdcChannelMajorLink 间接呼叫 Dma_Ip_ConvertLogicChToHwCh 。我的视频演示了这一点:在运行期间 在 Mcl_Init 过程中,我跳过了所有断点,之后 Mcl_Init 完成后,我重新启用了断点。此时, Dma_Ip_ConvertLogicChToHwCh 再次输入, 逻辑 是255。 BR, 杰森 Re: S32K3 ADC Optimize DMA Streaming 您好@Senlent 非常感谢您的回复。我已经使用公司邮箱注册了一个新账号,本帖关闭后我将使用该账号。 我运行了你的项目,发现没有发生硬故障。但是,我的问题仍然存在。如下面的屏幕截图所示,该函数 Adc_Ipw_SetupTcdSingleAdcChannelMajorLink 配置 DMA_IP_CH_SET_MAJORLOOP_LOGIC_LINK_CH DMA通道的参数。当 Dma_Ip_ConvertLogicChToHwCh 被称为, 逻辑 值为 255。 Dma_Ip_pxInit->ppxLogicChannelConfigArray 指向 Dma_Ip_paxLogicChannelConfigArrayPB 数组,大小为 2。访问 Dma_Ip_pxInit->ppxLogicChannelConfigArray[255] 这应该是越界访问。虽然没有发生硬故障,但我认为这并不合理。 Jason07_0-1785979871220.png Jason07_1-1785979890128.png Jason07_2-1785979907208.png 这种越界访问是由调用引起的。 关于 Adc_Ipw_SetupTcdSingleAdcChannelMajorLink ,这是我的另一个问题。我已经查看了相关内容。 RTD_ADC_UM.pdf 并且还检查了驱动程序代码。 优化DMA流组(单通道)时,数据直接从CDR传输到用户缓冲区,这与多通道情况下数据先从CDR移动到用户缓冲区的情况不同。 DmaIntermediateBuffer 然后从那里传输到用户缓冲区。 优化DMA流组(单通道) 不使用流式 DMA 通道。在配置文件中,以下值: AdcIpwConfigPtr->Mapping.AdcCountingDmaChanLogicId 数组确实存在 ADC_IPW_INVALID_DMA_CHANNEL_ID (255) Jason07_3-1785980010767.png 我不明白为什么 Adc_Ipw_SetupTcdSingleAdcChannelMajorLink 仍然需要调用。真正应该调用这个函数的是 无中断组(单通道) ,但当 ADC_ENABLE_GROUP_STREAMING_RESULTS_RORDER 或者 ADC_OPTIMIZE_DMA_STREAMING_GROUPS 是 STD_ON ,而不是 STD_ON == GroupPtr ->AdcWithoutInterrupt , Adc_Ipw_SetupTcdSingleAdcChannelMajorLink 函数被调用。 Jason07_4-1785980037684.png 我找到了项目中的问题所在:当我取消选中“数据部分”时,硬故障就不再发生了。然而,我认为这并非问题的关键所在。 Jason07_5-1785980062079.png BR, 杰森 Re: S32K3 ADC Optimize DMA Streaming 您好@Senlent 最后一条回复里的图片不清晰。我已经以附件的形式再次上传了图片。我用数字给图片编号。 BR, 杰森 Re: S32K3 ADC Optimize DMA Streaming 嗨@ Jason07 @Jason22 请将优化构建选项设置为 -O0。 这是我在单步调试过程中观察到的结果。 Senlent_1-1786003373031.png 这可能是因为版本优化(-Os)阻止了调试器准确映射源代码变量。 Re: S32K3 ADC Optimize DMA Streaming 您好@Senlent 我的项目优化程度为 我运行了你的项目(也使用了 -O0参数),发现它在 Adc_Ipw_SetupTcdSingleAdcChannelMajorLink -> ...... -> Dma_Ip_ConvertLogicChToHwCh , 逻辑 数值仍然是 255。 1.png 在你的截图中,是 Dma_Ip_ConvertLogicChToHwCh 因……而被称为 Adc_Ipw_SetupTcdSingleAdcChannelMajorLink ? Mcl_Init 也叫 Dma_Ip_ConvertLogicChToHwCh ,在这种情况下 逻辑 为 0,这似乎与您的屏幕截图一致。 我在你的项目中运行了一个测试。 Adc_Ipw_SetupTcdSingleAdcChannelMajorLink 间接调用 Dma_Ip_ConvertLogicChToHwCh ,我观察到 &Dma_Ip_pxInit->ppxLogicChannelConfigArray[LogicCh] 是 0x429F28 ,与 &Dma_Ip_pxInit->ppxLogicChannelConfigArray[255] 。 2.png 然后我修改了地址处的值。 0x429F28 到 0x1FFFFFF0 ,并执行了第 348 行的代码。 3.png 发生了一次硬故障,并且 渔业和海事局 数值为 正如预期的那样,值为 0x1FFFFFF6。 4.png 这证实了越界访问确实存在。是否发生硬故障取决于该值。 Dma_Ip_pxInit->ppxLogicChannelConfigArray[255] . Re: S32K3 ADC Optimize DMA Streaming 嗨@ Jason22 这很奇怪,我已经尝试过好几次了。您可以直接调试我提供的 ELF 文件。 Re: S32K3 ADC Optimize DMA Streaming 嗨@Senlent 对不起。步骤4是点击“跨过”按钮。 BR, 杰森 Re: S32K3 ADC Optimize DMA Streaming 嗨@ Jason22 我可能还是没理解你的问题。我想请问一下这个项目运行是否符合预期?如果是这样,会有什么问题吗? 我看到 LogicCh 显示为 255,但程序运行正常。这样做有什么问题吗? Re: S32K3 ADC Optimize DMA Streaming 嗨@ Jason22 我可以将此问题转交给设计团队确认。 由于 RTD 驱动程序并非我设计,除非用户遇到问题,否则我不会深入探讨他们这样设计的原因。 反馈过程可能需要一些时间,但我会将调查结果转达给相关的设计团队。
記事全体を表示
S32K3 ADCのDMAストリーミング最適化 こんにちは、 ADCグループが1つのチャネルしか持たず、AdcのEnable Optimized DMA Streaming Groupsの設定項目がチェックされている場合、Adc_Ipw_SetupTcdSingleAdcChannelMajorLink関数の実行時にハードフォルトが発生します。 単一チャネルの場合、Adc Group Without Interruptsの設定項目がチェックされACCESS_MODE_STREAMINGされた場合、「Select Adc Streaming DMAチャネル」が有効になります。それ以外の場合は、設定ファイルのDMAチャネル数は255で、これは妥当な数値です。しかし、私が理解できないのは、ADC_ENABLE_GROUP_STREAMING_RESULTS_RORDER または ADC_OPTIMIZE_DMA_STREAMING_GROUPS が STD_ON の場合、STD_ON==GroupPtr ->AdcWithoutInterrupt の代わりに Adc_Ipw_SetupTcdSingleAdcChannelMajorLink 関数が呼び出される理由です。これは不合理に思えるし、この関数を呼び出すとハードフォルトが発生するからでもある。 Jason22_0-1785831767968.png BR、 ジェイソン Re: S32K3 ADC Optimize DMA Streaming こんにちは、@ Jason22 次回はQQのメールアカウントを使用しないでください。代わりに会社のメールアドレスをご利用ください。 試してみましたが、問題は見つかりませんでした。 参考までに、テストプロジェクトとテスト結果を添付しました。 また、あなたのコードを確認したところ、いくつかエラーが見つかりました。 1.clock initが間違っている、コードが正常に動作しないはずがない。 Senlent_0-1785915417329.png 2. adc_group0_valは「キャッシュ不可領域」の属性であるべきです また: DMAストリーミンググループの最適化の使い方はユーザーマニュアルに明確に説明されています。 RTD_ADC_UM.pdf Senlent_0-1785915908665.png Re: S32K3 ADC Optimize DMA Streaming こんにちは、@ Jason22 これが私のテスト結果です。私が提供したプロジェクトを使用し、最適化レベルを-O0に設定している場合、私たちの観察結果は同じになるはずです。 私はここに何の問題もないと思います。境界を超えた場合は確実にハードフォルトに入るはずですが、テスト結果はそうでなく、これはコンパイル最適化レベルが原因であることを意味しています。エラー状態下では、分析を続ける必要はありません。 Re: S32K3 ADC Optimize DMA Streaming Hi@Senlent この問題を設計チームに報告してくださり、誠にありがとうございます。最終結果がある場合、どこで確認すればよいですか?もし実際にエラーが発生した場合、SW32K3_S32M27x_RTD_R23-11_7.0.0_D2511_ReleaseNotes.pdf のような文書で公開されるのでしょうか? BR、 ジェイソン Re: S32K3 ADC Optimize DMA Streaming こんにちは、@ Jason22 デザインチームのフィードバックをお送りします。 通常、重大な影響を及ぼすバグの場合は、新しいバージョンで修正版をリリースし、リリースノートに記載します。 Re: S32K3 ADC Optimize DMA Streaming Hi@Senlent LogicChが255だとわかってよかったです。あなたのプロジェクトでは正しく動作しますが、これはアクセス範囲外ですよね?「境界を超えた場合は、必ずハード断層に入るはずだ」というあなたの発言についてですが、私は完全には同意できません。C言語では、C++のようなランタイム境界チェックはありません。ポインタ配列の場合、ハードフォルトが発生するかどうかは、境界外アクセスから得られる値に依存します。 ポインタ配列を考えてみましょう: uint32* pArr[2] = {0x20400000, 0x20400004}。pArr のアドレスが 0x204300A0 であると仮定すると、pArr[2] の値はアドレス 0x204300A8 に格納されている値になります。0x204300A8が0x20400008を含む場合、*pArr[2](アドレス0x20400008の値を最終的に読み取る境界外アクセス)はハードフォルトを発生させません。ただし、0x204300A8 に 0x1FFFFFF0 が含まれている場合、*pArr[2] (最終的に 0x1FFFFFF0 から読み取る) はハードフォルトを引き起こします。どちらも境界外アクセスですが、ハードフォルトが発生するかどうかは確率のマターです。 正確には、ハードフォルトは境界外アクセス自体が直接原因ではなく、境界外のポインタ配列へのアクセスが無効なポインタを受け取り、その不正なポインタにアクセスするとハードフォルトがトリガーされるためです。 だからこそ、あなたのプロジェクトではDma_Ip_pxInit->ppxLogicChannelConfigArray[255]->LogicChId.HwChIdにアクセスするとハードフォルトは発生しませんが、私のプロジェクトではハードフォルトが発生します。 BR、 ジェイソン Re: S32K3 ADC Optimize DMA Streaming こんにちは@Senlent はい、あなたのプロジェクトを一切変更せずに使用しました。あなたのビデオでは、 Dma_Ip_ConvertLogicChToHwCh 関数は間接的に呼び出されます Mcl_Initは意図された動作ではありません。意図された動作は Adc_Ipw_SetupTcdSingleAdcChannelMajorLink 間接的に呼びかける Dma_Ip_ConvertLogicChToHwCh 。私のビデオではこれを実証しています。 Mcl_Init で、すべてのブレークポイントをスキップし、その後 Mcl_Init 完了したので、ブレークポイントを再度有効にしました。その時点で、 Dma_Ip_ConvertLogicChToHwCh 再び入力され、 ロジックCh 255でした。 BR、 ジェイソン Re: S32K3 ADC Optimize DMA Streaming こんにちは@Senlent ご返信いただき、誠にありがとうございます。会社のメールアドレスを使って新しいアカウントを登録し、このスレッドが終了した後はそのアカウントを使う予定です。 あなたのプロジェクトを実行しましたが、ハードフォルトは発生していませんでした。しかし、私の疑問は依然として残ります。以下のスクリーンショットに示すように、function Adc_Ipw_SetupTcdSingleAdcChannelMajorLink は DMAチャネルの DMA_IP_CH_SET_MAJORLOOP_LOGIC_LINK_CH パラメータを設定します。 Dma_Ip_ConvertLogicChToHwCh が呼ばれると、 LogicCh 値は255.Dma_Ip_pxInit->ppxLogicChannelConfigArray はサイズ2の Dma_Ip_paxLogicChannelConfigArrayPB array を指しています 。アクセス Dma_Ip_pxInit->ppxLogicChannelConfigArray[255] は境界 外アクセスであるはずです。ハードフォルトは発生しませんでしたが、これは合理的ではないと思います。 Jason07_0-1785979871220.png Jason07_1-1785979890128.png Jason07_2-1785979907208.png この境界外アクセスは通話によって引き起こされます Adc_Ipw_SetupTcdSingleAdcChannelMajorLink 、それもまた私の疑問です。関連する内容は RTD_ADC_UM.pdf で確認 し、ドライバーコードも確認しました。 最適化DMAストリーミンググループ(単一チャネル)では 、データはCDRから直接ユーザーバッファへ転送されます。マルチチャネルの場合とは異なり、まずCDRから DmaIntermediateBuffer へデータが移動され 、そこからユーザーバッファへ移動されますOptimize DMA Streaming グループ(単一チャネル) ストリーミングDMAチャネルは使用していません。設定ファイル内の AdcIpwConfigPtr->Mapping.AdcCountingDmaChanLogicId arrayの値は確かに ADC_IPW_INVALID_DMA_CHANNEL_ID (255)です。 Jason07_3-1785980010767.png なぜそうなのか理解できません Adc_Ipw_SetupTcdSingleAdcChannelMajorLink まだ電話をかけてないと。本来呼び出すべき関数は Without Interrupt グループ (single チャネル)ですが、wh ADC_ENABLE_GROUP_STREAMING_RESULTS_RORDER or ADC_OPTIMIZE_DMA_STREAMING_グループ is STD_ON、代わりに STD_ON == GroupPtr ->AdcWithoutInterrupt, the Adc_Ipw_SetupTcdSingleAdcChannelMajorLink functionが呼ばれます。 Jason07_4-1785980037684.png プロジェクトで問題を発見しました。「データセクション」のチェックを外すと、ハードフォルトが発生しなくなります。しかし、私はこれが問題の本質的なポイントだとは思いません。 Jason07_5-1785980062079.png BR、 ジェイソン Re: S32K3 ADC Optimize DMA Streaming こんにちは@Senlent 前回の返信の画像は鮮明ではありません。画像を添付ファイルとして再度アップロードしました。写真の順番を番号で示しました。 BR、 ジェイソン Re: S32K3 ADC Optimize DMA Streaming こんにちは、@ Jason07 @Jason22 最適化ビルドオプションを -O0 に設定してください。 これは、ステップ実行デバッグ中に私が確認した結果です。 Senlent_1-1786003373031.png これはおそらく、ビルド最適化オプション(-Os)によってデバッガーがソースコード変数を正確にマッピングできなくなるためでしょう。 Re: S32K3 ADC Optimize DMA Streaming こんにちは@Senlent 私のプロジェクトの最適化レベルは -O0で、あなたのプロジェクトを実行しました (これも -O0 で)。 Adc_Ipw_SetupTcdSingleAdcChannelMajorLink -> ...... -> Dma_Ip_ConvertLogicChToHwCh 、 ロジックCh 値は依然として255です。 1.png あなたのスクリーンショットでは、 Dma_Ip_ConvertLogicChToHwCh 結果として呼ばれる Adc_Ipw_SetupTcdSingleAdcChannelMajorLink ? Mcl_Init また Dma_Ip_ConvertLogicChToHwChも呼びますが、その場合 LogicCh 0で、あなたのスクリーンショットと一致しているように思えます。 あなたのプロジェクトでテストを実行しました。 Adc_Ipw_SetupTcdSingleAdcChannelMajorLink 間接的に呼び出す Dma_Ip_ConvertLogicChToHwCh で、私は次のことを確認しました。 &Dma_Ip_pxInit->ppxLogicChannelConfigArray[LogicCh] は 0x429F28に一致します &Dma_Ip_pxInit->ppxLogicChannelConfigArray[255] 。 2.png その後、アドレスの値を変更しました。 0x429F28 に 0x1FFFFFF0にアクセスし、348 行目のコードを実行しました。 3.png ハードフォールトが発生し、 BFAR 価値は 0x1FFFFFF6 、予想通りです。 4.png これにより、アウトオブバウンズアクセスが実際に存在することが確認されています。ハードフォルトが発生するかどうかは、 Dma_Ip_pxInit->ppxLogicChannelConfigArray[255]の値に依存します。 Re: S32K3 ADC Optimize DMA Streaming こんにちは、@ Jason22 これはおかしい。何度も試してみたのに。私が提供したELFファイルは直接デバッグできます。 Re: S32K3 ADC Optimize DMA Streaming こんにちは@Senlent 私の操作が正しかったかどうか確信が持てません。あなたのELFファイルを使ってデバッグを試みましたが、うまくいきませんでした。 1.png 私の動画で示した手順を同じように行ってもらえますか?この問題の再現が可能だと思います。 手順は以下の通りです。 行にブレークポイントを設定します Mcl_Init(NULL_PTR); 。 ブレークポイントに到達するまでプログラムを実行します。 Mcl_Init(NULL_PTR); 。 すべてのブレークポイントを無効にする( 「すべてのブレークポイントをスキップ」ボタンをクリック)。 跨いで Mcl_Init(NULL_PTR);( 「すべてステップ」ボタンをクリックします) ブレークポイントを再度有効にし( 「すべてのブレークポイントをスキップ」ボタンをクリック)、そして「再開」ボタンをクリックします。 あなたはそれを見ます Dma_Ip_ConvertLogicChToHwCh 再び入力され、 ロジックCh 255です。 BR、 ジェイソン Re: S32K3 ADC Optimize DMA Streaming こんにちは、@Senlent ごめん。ステップ4は、「ステップオーバー」ボタンをクリックすることです。 BR、 ジェイソン Re: S32K3 ADC Optimize DMA Streaming こんにちは、@ Jason22 もしかしたら、あなたの質問の意味がまだよく理解できていないかもしれません。このプロジェクトは想定通りに動作しているでしょうか?そうだとすれば、何か問題がありますか? LogicChでは255と表示されていますが、プログラムは通常通り動作しています。これのどこがおかしいのでしょうか? Re: S32K3 ADC Optimize DMA Streaming こんにちは、@ Jason22 この問題は設計チームに確認してもらえます。 RTDドライバーの設計者は私ではないので、ユーザーが問題に直面しない限り、なぜこう設計したのかは詳しくは触れません。 このフィードバックプロセスは長くなるかもしれませんが、その成果を関連するデザインチームに伝えます。
記事全体を表示
RW612 WiFi InitがHAL_ImuLinkIsUp()で停止する 私はカスタムボード上でMQTTのサンプルを実行しようとしています。使用されているモジュールはublox IRIS-W106-30Bです。j-linkを使用してWiFiファームウェアブロブを個別にインストールする手順に従いました。しかし、WPL_Init() 関数内で無限ループに陥ってしまっています。 natered21_0-1785877418073.png 私も同様の問題でBLEを初期化できませんでした。 MCUXpressoを使用したSDK 25.09.00 Re: RW612 WiFi Init stuck on HAL_ImuLinkIsUp() SDK_2.x_RW610 mqtt のサンプルから、「main_task」以降のすべてを既存のプロジェクトにコピーしました。残る大きな違いは、ハードウェアの初期化部分です。サンプルコードのどの部分がIMUの初期化不良の原因となっているのか特定できません。 カスタムボード上でベースサンプルプロジェクトを動かすことはできますが、既存のプロジェクトにポートすることはできません。 Re: RW612 WiFi Init stuck on HAL_ImuLinkIsUp() RD-RW61X-BGA SDKを使っていますか?それともFRDM-RW612のSDKですか? 元の例をモジュールに移植するためにどのファイルを修正しましたか? Re: RW612 WiFi Init stuck on HAL_ImuLinkIsUp() こんにちは、 簡単な「Hello World」の例をテストしていただけますか? また、モジュールを有効にするために必要な変更は既に適用済みですか?詳しい手順については、以下の記事をご参照ください。 よろしくお願いいたします。 ダニエル。 Re: RW612 WiFi Init stuck on HAL_ImuLinkIsUp() はい、通常のアプリケーションコードを実行したり、UARTにログを記録したりできます。 Re: RW612 WiFi Init stuck on HAL_ImuLinkIsUp() 私の理解が正しければ、カスタムボード上でWi-FiとBluetoothのサンプルを問題なく実行できるということですね。問題は、ネットワーク機能を自分のアプリケーションに統合または移植し始めたときに発生します。 私のおすすめは、MQTTの例をアプリケーションの基盤として使うことです。もしWi-FiとBT/BLEを同時に動作させる必要がある場合は、既存のカスタムアプリケーションに共存サポートを追加するよりも、共存例の一つから始めて、その上にアプリケーション固有の機能を追加する方が良いでしょう。 ちなみに、SDK 25.09はすでに3つのリリースから遅れています。続ける前に最新のSDK 26.06にアップグレードすることをお勧めします。
記事全体を表示
关于“MPC5777C-1b+2b_RAM_ECC_error_injection GHS614”示例代码 你好。我目前正在基于MPC5777C MCU进行开发。 我有一个关于开发过程的问题。 我根据“MPC5777C-1b+2b_RAM_ECC_error_injection GHS614”示例代码设计了执行 ECC 检查的代码。 正常情况下,这段代码能够正确执行 ECC 检查。 但是,当使用 Trace32 等调试器连接到 MCU 并运行 ECC 检查代码时,经常会出现无法检测到位错误的错误。 “GHS614”示例代码整体上连接到 Trace32 等调试器时是否可能无法正常工作? 谢谢! Re: Regarding the "MPC5777C-1b+2b_RAM_ECC_error_injection GHS614" example code 您好。 假设 Trace32 调试器已连接,转储窗口已打开,并且我的自定义应用程序代码正在运行,是否有可能出现这种情况:在参考 GHS614 设计的 ECC 检查函数中未检测到位错误? Re: Regarding the "MPC5777C-1b+2b_RAM_ECC_error_injection GHS614" example code 你好, 我不确定你的设置,但要注意,Trace中任何打开的转储窗口都会持续读取内存,一旦检测到ECC故障会立即触发。 ECC错误永远不会发生在未损坏的地址上。ECC机制也受到EDC的保护。这根本不可能。 顺祝商祺! Peter Re: Regarding the "MPC5777C-1b+2b_RAM_ECC_error_injection GHS614" example code 你好, 如果软件或调试器读取的地址损坏,则 ECC 始终会发出错误信号,而与示例软件或任何其他因素无关。 顺祝商祺! Peter Re: Regarding the "MPC5777C-1b+2b_RAM_ECC_error_injection GHS614" example code 您好。 我将更详细地解释一下情况。 我的ECC校验码执行如下: (void)FCCU_ClearNCF(); /* 1 位 RAM 数据错误注入 */ GenerateRam1bitEccError(); uiErmSR0 = ERM.SR0.R; uiErmSR1 = ERM.SR1.R; uiErmSR2 = ERM.SR2.R; /// 4. 如果发生 RAM 1 位 ECC 错误,请执行以下操作。 如果((((uiErmSR0 & ERM_SR0_1b_all) == ERM_SR0_1b_PRAMC_1) || ((uiErmSR2 & ERM_SR2_1b_all) == ERM_SR2_1b_Core1_data)) && ((uiErmSR1) == CLEAR)) { /// 4.1.如果 ERM EAR 寄存器中存储的值与发生错误的地址相同,则执行以下操作。 if((UINT32)auiTest == (ERM.ERROR[ERM_chnl_PRAMC_1].EAR.R)) { ucStatus = OK; } /// 4.2.如果 ERM EAR 寄存器中存储的值与发生错误的地址不同,请执行以下操作。 否则如果((UINT32)auiTest == (ERM.ERROR[ERM_chnl_Core1_data].EAR.R)) { ucStatus = OK; } else { ucStatus = NOT_OK }; } /// 5.如果没有发生 RAM 1 位 ECC 错误,请执行以下操作。 else { ucStatus = NOT_OK }; 该结构强制注入 1 位 RAM 数据错误,并检查 ECC 错误是否成功发生以及是否准确检测到发生地址。 如果在运行上述代码时启用 Trace32 内存转储窗口,ECC 检查的结果是否会异常执行?(即未能检测到 ECC 错误或 ECC 发生地址处的错误) 谢谢!
記事全体を表示
GUI Guider 1.10.1 在背景不透明度为 0 时会忽略背景样式属性。 环境 GUI 指南:1.10.1 LVGL:8.3 小部件:按钮 款式部分:LV_PART_MAIN 样式状态:LV_STATE_DEFAULT 问题描述 我在 GUI Guider 1.10.1 中发现了一个可重现的代码生成问题。 当按钮配置了背景颜色,但其背景不透明度设置为 0 时,GUI Guider 不会生成相应的背景颜色属性。 当在运行时动态更改背景不透明度时,这会导致意外行为。 生殖 创建按钮并进行配置: 背景颜色:#F08300 背景不透明度:0 然后生成 LVGL 8.3 代码。 GUI 指南程序生成: lv_obj_set_style_bg_opa(ui->screen_password_btn_15, 0, LV_PART_MAIN | LV_STATE_DEFAULT); 但是,配置的背景颜色并未生成: lv_obj_set_style_bg_color(ui->screen_password_btn_15, lv_color_hex(0xF08300), LV_PART_MAIN | LV_STATE_DEFAULT); 测试:仅将背景不透明度从 0 改为 1 我只将背景不透明度从 0 改为 1,而背景颜色保持为 #F08300。 代码重新生成后,GUI Guider 会生成: lv_obj_set_style_bg_opa(ui->screen_password_btn_15, 1、 LV_PART_MAIN | LV_STATE_DEFAULT); lv_obj_set_style_bg_color(ui->screen_password_btn_15, lv_color_hex(0xF08300), LV_PART_MAIN | LV_STATE_DEFAULT); lv_obj_set_style_bg_grad_dir(ui->screen_password_btn_15, LV_GRAD_DIR_NONE, LV_PART_MAIN | LV_STATE_DEFAULT); 因此,生成的代码取决于背景不透明度是否恰好为 0。 背景不透明度 = 0: 生成 bg_opa bg_color 未生成 背景不透明度 = 1: 生成 bg_opa bg_color 已生成 还会生成其他背景属性。 运行时影响 我的应用程序使用背景不透明度来指示当前选定的密码数字。 GUI Guider 中将背景颜色配置为 #F08300,而应用程序仅动态更改背景不透明度。 例如: lv_obj_set_style_bg_opa(btn, LV_OPA_COVER, LV_PART_MAIN | LV_STATE_DEFAULT); 对于初始背景不透明度为 0 的按钮,生成的代码不包含配置的背景颜色。 当应用程序将不透明度从 0 更改为 LV_OPA_COVER 时,按钮将显示 LVGL 主题或默认背景颜色,而不是 GUI Guider 中配置的 #F08300 颜色。 这种行为是: GUI引导程序配置: 背景颜色 = #F08300 背景不透明度 = 0 生成的代码: bg_opa = 0 bg_color 未生成 运行时: bg_opa 已更改为 LV_OPA_COVER 结果: 显示的是默认背景色或主题背景色,而不是 #F08300。 临时解决方案 在应用程序代码中显式设置背景颜色可以解决此问题: lv_obj_set_style_bg_color(btn, lv_color_hex(0xF08300), LV_PART_MAIN | LV_STATE_DEFAULT); lv_obj_set_style_bg_opa(btn, LV_OPA_COVER, LV_PART_MAIN | LV_STATE_DEFAULT); 另一种可能的解决方法是在 GUI Guider 中将背景不透明度设置为 1,因为这会导致 GUI Guider 生成配置的背景颜色。 但是,这会改变初始用户界面状态,因此并不理想。 预期行为 背景颜色和背景不透明度是独立的 LVGL 样式属性。 如果用户明确配置: 背景颜色 = #F08300 背景不透明度 = 0 我希望 GUI Guider 能在生成的代码中保留这两个属性: lv_obj_set_style_bg_opa(btn, 0, LV_PART_MAIN | LV_STATE_DEFAULT); lv_obj_set_style_bg_color(btn, lv_color_hex(0xF08300), LV_PART_MAIN | LV_STATE_DEFAULT); 虽然当 bg_opa 为 0 时 bg_color 没有明显的影响,但当应用程序在运行时动态更改 bg_opa 时,它就变得重要了。 当前代码生成行为会丢失在 GUI Guider 中配置的背景颜色信息。 实际行为 GUI Guider 1.10.1 在背景不透明度为 0 时似乎会忽略背景样式属性。 仅将不透明度从 0 改为 1,会导致背景颜色和其他背景属性重新生成。 重现步骤 在 GUI Guider 1.10.1 中创建按钮。 将背景颜色设置为 #F08300。 将背景不透明度设置为0。 生成LVGL 8.3代码。 注意,已生成值为 0 的 lv_obj_set_style_bg_opa。 请注意,未生成颜色为 #F08300 的 lv_obj_set_style_bg_color。 仅将背景不透明度从 0 改为 1。 重新生成代码。 请注意,现在已生成颜色为 #F08300 的 lv_obj_set_style_bg_color。 在运行时,将原始按钮的不透明度更改为 LV_OPA_COVER。 请注意,除非应用程序明确设置了 bg_color,否则配置的背景颜色不会显示。 问题 这是 GUI Guider 1.10.1 中有意为之的代码大小优化,还是代码生成问题? 如果这种优化是有意为之,GUI Guider 能否提供一个选项,在背景不透明度为 0 时保留背景属性? 运行时应用程序通常会动态更改 LVGL 样式属性,因此仅根据其初始不透明度省略 bg_color 可能会导致运行时行为与 UI 配置不同。 Re: GUI Guider 1.10.1 omits background style properties when Background Opacity is 0 你好@zzjgood, 感谢你的帖子。 我可以重现您描述的情况。我认为这是一个代码生成问题。如果用户明确配置了背景颜色,即使初始背景不透明度为 0,GUI Guider 也应该保留相应的 bg_color 代码,或者提供一个选项来保留透明对象的背景样式属性。我会将此问题报告给 GUI-Guider 团队,以便他们进一步修复。此外,根据我们的内部升级流程,如果您能提供以下信息,我们将不胜感激: - 你用的是哪款NXP产品? - 你的最终应用是什么? 目前实际的变通方法是在应用代码中明确设置背景色和不透明度: 复制 lv_obj_set_style_bg_color(btn, lv_color_hex(0xF08300), LV_PART_MAIN | LV_STATE_DEFAULT); lv_obj_set_style_bg_opa(btn, LV_OPA_COVER, LV_PART_MAIN | LV_STATE_DEFAULT); 希望它有帮助。 BR 塞莱斯特
記事全体を表示
LX2160ARDB 上的 DDR 配置 - HX430C16FB3_32   我们正在使用 LX2160ARDB 参考板,并尝试在 DDR1 控制器上使用 32GB DDR4 RAM 模块。然而,在 CodeWarrior 的 DDR 内存控制器配置中,我们在“每个设备的动态随机存取存储器(DRAM) 配置”下找不到 32GB 设备的选项。 请问您能否就以下方面提供指导: 如何在 LX2160ARDB 上配置 32GB 内存的 DDR 内存控制器? 验证此平台上的 32GB DDR 内存的步骤。 更新固件(如有必要)以支持 32GB DDR 内存的说明。 image (3).png Re: DDR Configuration on LX2160ARDB - HX430C16FB3_32 嗨一平, 我们已将 RCW 文件 (rcw_2000_700_2900_19_5_2_sd.bin) 加载到 SD 卡中,在 DDR 配置面板中,读取 SPD完成后,出现“不支持的原始卡版本。请手动将 CLK 设置为 DQS 偏移值。” Priyaa_0-1786617660694.png Re: DDR Configuration on LX2160ARDB - HX430C16FB3_32 要为 LX2160ARDB 配置 32GB DDR4 RAM,由于 CodeWarrior 没有直接选项,您需要使用 **NXP QorIQ 配置和验证套件 (QCVS)**。获取您的 32GB DIMM 的详细规格(密度、等级、器件宽度),并将其输入到 QCVS 中以生成自定义 DDR 控制器配置代码。然后必须将此代码**集成到最新 Layerscape 软件开发工具包 (LSDK) 的 U-Boot 引导加载程序**源代码中。构建 U-Boot 后,**将更新后的固件**刷入您的开发板。系统启动后,通过检查 U-Boot 启动信息并使用 `free -h` 等 Linux 命令来验证 32GB RAM。 Re: DDR Configuration on LX2160ARDB - HX430C16FB3_32 在 DDR 配置面板中,请选择“读取 SPD”和“DIMM”作为配置模式,然后单击“读取 SPD”从 SPD 读取参数并完成 DDR 项目创建。 创建 QCVS DDR 项目后,请检查所有“验证阶段”和“DDR 运行测试”,以便连接到目标板完成所有验证。 请参阅QCVS DDR工具用户手册。 https://www.nxp.com.cn/docs/en/user-guide/QCVS_DDR_User_Guide.pdf 使用 QCVS DDRv 工具进行验证时,无需特定的固件。
記事全体を表示
技术指导请求 — S32K342 启动自检 (LBIST/MBIST/SCST/锁定步进/FCCU) 配置 尊敬的恩智浦技术支持团队: 希望你一切安好。我目前正在开发一个基于S32K342微控制器的功能安全应用程序,想请教您有关启动自检配置方面的技术指导。 确认。 开发环境: - 目标器件:S32K342(封装:hdqfp100,100引脚) - EB tresos Studio:32.1.4 - 实时驱动 (RTD):SW32K3_S32M27x_RTD_R21-11_5.0.0 (TS_T40D34M50I0R0) - 功能安全外围设备驱动程序 (SPD):SW32K3_SPD_1.0.5_D2503 (TS_T40D34M10I5R0) - IDE:S32 设计工作室 3.6.0 背景: 我目前的项目最初是为 S32K344 创建的,后来移植到了 S32K342。迁移过程中,我手动更正了以下项目: 1. 资源模块:将 ResourceSubderivative 从 s32k344_mapbga257 更改为 s32k342_hdqfp100; 2. 项目首选项中的 ECUid:从 S32K344 更改为 S32K342; 3. MPU 内存映射(平台模块):将程序闪存大小从 4 MB 调整为 2 MB; 4. FCCU 配置(eMcem 模块):删除了与 CM7_1 相关的 DCM 故障条目(ITCM/D0TCM/D1TCM 多位错误),因为 S32K342 是单核设备; 5. MCU 模块:移除了 S32K342 上不可用的外围设备实例(例如,SXOSC、EMIOS_2、ADC_2、FlexCAN_4/5、LPUART_4–15、LPSPI_4/5、LPCMP_2)。 尽管进行了这些修正,EB tresos 仍然报告了一些验证错误。此外,我注意到 SPD 1.0.5 演示包 (S32_SPD_Demo) 仅提供 S32K344、S32K358、S32K388 和 S32K396 的模板项目—— 这不是官方的 S32K342 模板项目,即使选择了 S32K342,EB 新建项目向导也会错误地将 s32k358_mapbga289 分配给资源模块。 问题: 1. SPD 1.0.5 正式支持 S32K342 我找到了 Bist_s32k342_hdqfp100.epd,SPD 插件中包含 eMcem_s32k342_hdqfp100.epd 和 SafetyBase_s32k342_hdqfp100.epd,这表明 S32K342 受支持。请问SPD 1.0.5是否正式支持S32K342? 是否有推荐的(官方的)S32K342 SPD 项目创建流程或模板? 2. S32K342 的启动自检流程和时序 由于 S32K342 只有一个 Cortex-M7 内核(与双核同步的 S32K344 不同),能否说明一下推荐的启动顺序? - 谁触发 LBIST/MBIST——是 HSE_B 固件还是应用层 Bist 模块? - 推荐的执行顺序是什么(例如,LBIST → MBIST → RAM 初始化 → Mcu_Init)? - S32K342 上的 256 KB SRAM 的典型 MBIST 覆盖率和启动时间预算是多少? 3. FCCU故障映射差异(S32K344与S32K342) S32K344 和 S32K342 的 NCF[0]–NCF[7]DCM 故障信号有哪些不同?尤其: - 删除与 CM7_1 相关的 DCM 故障是否正确? - EMAC_FCCU_ERR、AXBS_FCCU_ALARM 和 PERIPH_AXBS_ALARM 等信号在 S32K342 上是否仍然有效? 4. 锁步配置和确认 S32K342 Cortex-M7 是否以 DCLS(双核锁定步进)模式运行?如果是这样,我如何在运行时确认锁步已启用,以及 RCCU 不匹配错误如何映射到 FCCU? 5. SCST(软件核心自检)支持 SPD 1.0.5 是否提供 SCST 库,还是需要第三方解决方案(例如 Hitex/Suresoft)?NXP 推荐的 S32K342 SCST 测试覆盖率方法是什么? 非常感谢您就以上几点提供的指导。如果需要更多项目文件或配置详情,请告知,我会尽快提供。 非常感谢您的时间和支持。 顺祝商祺! 伍迪迪 Re: Request for Technical Guidance — S32K342 Startup Self-Test (LBIST/MBIST/SCST/Lockstep/FCCU) Conf 你好@WuDiDi , 建议的做法是专门为 S32K342 创建一个新项目,而不是移植现有的项目。 在资源模块中,可以将目标衍生产品从默认的 S32K358 更改为 S32K342。 1. 是的,SPD 1.0.5 支持 S32K342。详情请参阅 SPD 1.0.5 版本说明。 danielmartynek_0-1786610289372.png 2. S32K342 和 S32K344 一样,在 LS 中也有 CM7_0-CM7_1。 danielmartynek_1-1786611158784.png danielmartynek_2-1786611192997.png 应用程序代码应包含 Bist_Run() 函数,该函数会执行 MBIST 和 LBIST。 有关更多详细信息和实施指南,请参阅 S32K3_SPD_BIST_UM.pdf。 danielmartynek_0-1786617060818.png 关于执行时间,请参考 SPD 质量包,该质量包可与 SPD 版本一起下载。 执行时间测量结果在软件包中包含的 S32K3XX_SAF_BIST_ProfileReport.xlsx 文件中提供。 3. 请参考下表: https://community.nxp.com/t5/S32K-Knowledge-Base/DOC-S32K3x1-S32K3x2-S32K3x4-eMCEM-DCM-Mapping-v1-0-SPD1-0-5/ta-p/2394707 4. 是的,锁步功能已启用,可以在此寄存器中查看: 功能复位时只读 GPR 19 (DCMROF19[29]) 请再次参考上表。 5. NXP 为 S32K3xx 提供 SCST 库: https://www.nxp.com/design/design-center/software/functional-safety-software/structural-core-self-test-scst-library:SCST 问候, 丹尼尔
記事全体を表示
MC3377ASP1 AFE is Burning Hi Everyone, I am using MC33774SP1 AFE for my BMS application. I am using it for cell voltage measurement, cell balancing [external+internal] on my board. I am using it for 15s battery pack though i have designed it for 18 cells. I am shorting the last three terminals to make it as 15s. I am facing AFE burning issues in which Vbat and ground pins are getting short and fire is getting observed on IC. I am attaching my schematic for your reference as well. Could you please guide me related to this. Also, I am using a wakeup circuitry for my BMS in between VBAT and VSTACK pins. Screenshot 2026-08-10 124516.png Screenshot 2026-08-10 124021.png Screenshot 2026-08-10 124207.png Screenshot 2026-08-10 124302.png Re: MC3377ASP1 AFE is Burning Hi, Using the MC33774ASP1 in a 15s configuration is possible, but the unused upper channels must be connected correctly. For a 15s stack, the active cell connections should use CT0 to CT15 and CB0 to CB15. The unused upper pins should be connected to the highest used cell node, meaning CT16, CT17 and CT18 should be tied to CT15, and CB16, CB17 and CB18 should be tied to CB15. One important concern from the schematic is the VBAT/VSTACK connection. It appears that VBAT is supplied from VSTACK through diode circuitry. Please note that VBAT must closely track the highest CT/CB cell node. In particular, the voltage difference between VBAT and the highest CB node must remain within the datasheet limits. If the diode path or wake-up circuitry creates a voltage drop or transient difference between VSTACK/highest CT/CB and VBAT, this could overstress the device. Please check the following points before continuing powered tests: 1. Confirm that CT16, CT17 and CT18 are tied locally to CT15, and CB16, CB17 and CB18 are tied locally to CB15 for the 15s configuration. 2. Confirm that VBAT is connected to the actual top-of-stack node through the recommended VBAT filter and that the wake-up circuit does not introduce a diode drop or transient offset between VBAT and the highest CT/CB node. 3. Measure VBAT, VSTACK, CT15 to CT18, and CB15 to CB18 during pack connection, wake-up and power-up. The transient behavior is important, not only the steady-state voltage. 4. Confirm that balancing and measurement are disabled for the unused upper channels. 5. Confirm that the external balancing MOSFET circuitry for the unused channels cannot create any unintended current path. 6. Please also verify the capacitor values on the CT/CB sensing lines. If large capacitors are used on each cell tap, the inrush current during pack connection may cause transient overstress. Based on the destructive nature of the failure, with VBAT and ground becoming shorted and visible IC damage, this should be treated as a possible hardware overstress condition. I recommend stopping further powered tests until the VBAT/VSTACK relationship and the unused-cell connections are verified with measurements. BRs, Tomas Re: MC3377ASP1 AFE is Burning Hi Tomas. Thanks for the prompt reply. One issue I found that the difference between my VBAT and CB18 was around 1.6V, which was more than the recommended value of 0.4V . I am suspecting it might be causing my AFE burning. I am checking it further and will post my results. Thanks and Regards, Abhishek
記事全体を表示
MC3377ASP1 AFE 正在燃烧 大家好, 我的电池管理系统应用使用的是MC33774SP1 AFE。我用它来测量电池电压,并在我的板上进行电池均衡(外部+内部)。虽然我最初是为 18 节电池设计的,但我现在把它用于 15 节电池组。我将最后三个端子短接,使其成为 15 秒。我遇到了AFE烧毁问题,Vbat和接地引脚短路,IC上出现了火苗。我附上原理图供您参考。请问您能否就此方面给予我一些指导? 另外,我在 VBAT 和 VSTACK 引脚之间使用了一个唤醒电路来唤醒我的电池管理系统。 Screenshot 2026-08-10 124516.png Screenshot 2026-08-10 124021.png Screenshot 2026-08-10 124207.png Screenshot 2026-08-10 124302.png Re: MC3377ASP1 AFE is Burning 您好, MC33774ASP1 可以用于 15 秒配置,但未使用的上通道必须正确连接。对于 15 秒堆叠,活动小区连接应使用 CT0 到 CT15 和 CB0 到 CB15。未使用的上部引脚应连接到使用最多的单元节点,这意味着 CT16、CT17 和 CT18 应连接到 CT15,CB16、CB17 和 CB18 应连接到 CB15。 原理图中一个重要的问题是 VBAT/VSTACK 连接。VBAT 似乎是通过二极管电路从 VSTACK 供电的。请注意,VBAT 必须密切跟踪最高的 CT/CB 细胞节点。尤其需要注意的是,VBAT 与最高 CB 节点之间的电压差必须保持在数据手册规定的范围内。如果二极管路径或唤醒电路在 VSTACK/最高 CT/CB 和 VBAT 之间产生电压下降或瞬态差,这可能会使器件过载。 请在继续进行通电测试前检查以下几点: 1. 确认 CT16、CT17 和 CT18 在本地与 CT15 连接,并且 CB16、CB17 和 CB18 在 15s 配置中与 CB15 连接。 2. 确认 VBAT 通过推荐的 VBAT 滤波器连接到实际的堆叠顶部节点,并且唤醒电路不会在 VBAT 和最高 CT/CB 节点之间引入二极管压降或瞬态偏移。 3. 在电池组连接、唤醒和上电期间测量 VBAT、VSTACK、CT15 至 CT18 和 CB15 至 CB18。瞬态行为很重要,而不仅仅是稳态电压。 4. 确认未使用的上通道的平衡和测量功能已禁用。 5. 确认未使用通道的外部平衡 MOSFET 电路不会产生任何意外的电流路径。 6. 请同时核实 CT/CB 感应线路上的电容器值。如果在每个电池接头处使用大容量电容,电池组连接期间的浪涌电流可能会导致瞬态过应力。 根据故障的破坏性性质,VBAT 和地线短路,IC 损坏可见,这应视为可能的硬件过载情况。我建议停止进一步的通电测试,直到通过测量验证 VBAT/VSTACK 关系和未使用的单元连接。 BRs,托马斯 Re: MC3377ASP1 AFE is Burning 你好,托马斯。 感谢您的及时回复。 我发现的一个问题是,我的 VBAT 和 CB18 之间的电压差约为 1.6V,这比推荐值 0.4V 要高。我怀疑这可能是导致我的AFE烧毁的原因。我正在进一步核实,稍后会公布结果。 谢谢,此致敬礼! 阿比谢克
記事全体を表示
MC3377ASP1 AFEが燃焼中 こんにちは、皆さん BMSアプリケーションにはMC33774SP1 AFEを使っています。私はこれを基板上のセル電圧測定、セルバランス調整(外部+内部)に使用しています。18セル用に設計しましたが、現在は15セルバッテリーパックに使用しています。最後の3つの端子を短絡させて15秒にします。AFEの発火問題に直面しており、Vbatピンとグランドピンが短絡し、IC上で発火が確認されています。参考までに、回路図も添付いたします。この件に関して、ぜひアドバイスをいただけますか? また、VBATピンとVSTACKピンの間にBMS用のウェイクアップ回路を使用しています。 Screenshot 2026-08-10 124516.png Screenshot 2026-08-10 124021.png Screenshot 2026-08-10 124207.png Screenshot 2026-08-10 124302.png Re: MC3377ASP1 AFE is Burning こんにちは、 15秒構成でこのMC33774ASP1を使用することは可能ですが、未使用の上層チャンネルは正しく接続されなければなりません。15秒スタックの場合、アクティブセル接続にはCT0からCT15、およびCB0からCB15を使用する必要があります。未使用の上部ピンは最も高い使用セルノードに接続されるべきであり、CT16、CT17、CT18はCT15に、CB16、CB17、CB18はCB15に結びつけるべきです。 回路図から見て重要な懸念事項の一つは、VBAT/VSTACKの接続である。VBATはダイオード回路を介してVSTACKから供給されているようです。VBATは最も高いCT/CB細胞ノードを厳密に追跡する必要があることにご注意ください。特に、VBATと最も高いCBノード間の電圧差は、データシートの許容範囲内に収まる必要があります。ダイオード経路やウェイクアップ回路がVSTACK/最高電流(CT/CB)、VBAT間に電圧降下や過渡差を生じさせると、デバイスに過負荷がかかる可能性があります。 電源投入テストを続行する前に、以下の点を確認してください。 1. CT16、CT17、CT18がローカルでCT15に接続されていること、そしてCB16、CB17、CB18がローカルでCB15に接続されていることを確認し、15s構成を行ってください。 2. VBATが推奨されるVBATフィルターを介して実際のトップオブスタックノードに接続されていること、そしてウェイクアップ回路がVBATと最も高いCT/CBノード間でダイオードドロップや過渡的なオフセットを発生させていないことを確認します。 3. パック接続、ウェイクアップ、電源アップ時にVBAT、VSTACK、CT15からCT18、CB15からCB18までを測定します。定常電圧だけでなく、過渡的な挙動も重要です。 4. 未使用の上位チャネルのバランスと測定が無効になっているか確認してください。 5. 未使用チャネルの外部バランシングMOSFET回路が意図しない電流経路を生み出さないことを確認します。 6. CT/CBセンサーラインのコンデンサ値も確認してください。各セルタップに大型コンデンサを使用すると、パック接続時の突入電流によって一時的な過負荷が発生する可能性がある。 VBATとグランドが短絡し、ICに目に見える損傷が生じているという、破壊的な故障の性質に基づくと、これはハードウェアの過負荷状態である可能性が高いと考えられます。VBAT/VSTACKの関係と未使用セルの接続が測定によって検証されるまで、それ以上の通電テストは中止することをお勧めします。 BRs、トーマス Re: MC3377ASP1 AFE is Burning こんにちは、トーマス。 迅速なご返信ありがとうございます。 私が発見した問題点の1つは、VBATとCB18の差が約1.6Vで、推奨値の0.4Vを超えていたことです。それがAFEの燃焼の原因になっているのではないかと疑っています。さらに詳しく調べて、結果を報告します。 よろしくお願いいたします。 アビシェク
記事全体を表示
S32K356 RTD选择 我们计划使用S32K356,发现只有7.0.0和7.0.1可以用,但是对应autosar R23,如果使用autosar R21,哪个版本可以推荐? wenming_0-1786093683425.png Re: S32K356 RTD选择 SW32K3_S32M27x_RTD_R21-11_6.0.0_P05_D2510,我也尝试了,但是尝试了很多次都失败了,猜测跟S32Ds版本有关系,3.6.7也试过了,还是S32D32用哪个版本呢? wenming_0-1786106406261.png Re: S32K356 RTD选择 从6.0.0的描述看,并不支持S32K356. wenming_0-1786103361744.png Re: S32K356 RTD选择 wenming_0-1786415389796.png wenming_1-1786415468027.png  如上图,6.0.0 QLP01也无法安装,还有另一个问题,通过RTD release note,只需要S32DS3.6.2即可满足安装要求,为什么我用3.6.7,还提示要更新组件,这个跟release note 不符合,是什么原因。 Re: S32K356 RTD选择 wenming_0-1786523357428.png 这是安装RTD7.0.1的错误信息,看起来是版本限制吗?另外,RTD release描述的对应的S32DS的版本,按理解说,应该是直接可以安装,不再需要更新S32DS组件,如果还需要更新组件,还不如推荐更新的安装版本,更便于使用。 Re: S32K356 RTD选择 S32DS版本不符合的问题怎么解决的,为什么我在S32DS3.6.7中安装RTD7.0.1,还是装不上,提示更新。 wenming_0-1786513965538.png Re: S32K356 RTD选择 你好@wenming , 问题可能与 S32DS 版本有关。 但是,请务必先安装 QLP01,正如 SW32K3_S32M27x_RTD_R21-11_6.0.0_P05_D2510_ReleaseNotes.txt 中所述:“此版本基于 S32K3_S32M27x 实时驱动程序 AUTOSAR R21-11 版本 6.0.0 QLP01。” 顺祝商祺! 帕维尔 Re: S32K356 RTD选择 你好@wenming , 我还有一些补充发现。 好消息是,我能够在 S32DS 3.6.2 中安装 RTD 6.0.0 QLP01 和 P05。然而,尽管发行说明中如此描述,RTD 6.0.0 QLP01 必须先安装在干净/基础的 RTD 6.0.0 安装之上。之后,P05 也能成功安装。 遗憾的是,即使按照上述安装步骤操作后,SDK 仍然无法附加到 S32DS 中的 S32K356 项目。 我了解到您正在寻找旧版本的 AUTOSAR。然而,根据观察到的行为,我无法确认 S32DS 中 RTD 6.0.0 的 S32K356 设置是否正常工作。对于 S32K356,较新的 RTD 7.0.0 版本似乎提供了实用的 S32DS 支持。/ 7.0.1 版本。 顺祝商祺! 帕维尔 Re: S32K356 RTD选择 你好@wenming , 问题1:如何解决S32DS版本不兼容问题? 请您更具体地描述一下您看到的兼容性错误信息?   Q2:为什么我无法在 S32DS3.6.7 中安装 RTD7.0.1,并且它一直提示我更新? 更新提示本身并不是错误。当所选 RTD 软件包依赖于更新或附加的元器件时,S32DS 可能会要求更新相关的平台/工具软件包。   另外,请确保 S32 Design Studio 中已安装 S32K3 RTD 软件包所需的 GCC 10.2 工具链。   顺祝商祺! 帕维尔 Re: S32K356 RTD选择 你好@wenming , 谢谢你提供的截图。 从错误信息来看,这似乎不是 S32DS 版本限制。S32DS 在收集/下载待安装项目时发生错误,关键信息为: ZLIB 输入流意外终止 失败的项目是与 S32DS 平台/调试相关的工件,例如: com.nxp.s32ds.doc.platform.resources com.nxp.s32ds.lrc.gdb.arm64.linux.win32 这通常表明其中一个文件没有完全下载,或者在下载/提取过程中损坏了。因此,这个问题看起来更像是更新站点/下载/缓存问题,而不是 RTD 7.0.1 与 S32DS 3.6.7 之间的直接兼容性限制。 关于发行说明:所列出的 S32DS 版本应理解为该 RTD 版本的基准/测试 S32DS 版本。然而,S32DS 是模块化的,如果当前安装中缺少或过时了相关的平台、工具、调试器、编译器或文档组件,则 RTD 安装可能仍然需要更新或安装这些组件。 请尝试以下步骤: 重启S32DS,然后再次尝试安装。 请确保与 NXP 更新站点的网络连接稳定。 如果可能,请在安装过程中使用官方离线更新站点的 ZIP/软件包,而不要仅依赖在线下载。 检查 S32DS 中是否已安装所需的 GCC 10.2 工具链。 如果问题仍然存在,请尝试全新安装 S32DS 3.6.x 版本。安装时,请先安装 RTD 7.0.1 基本软件包,然后再应用任何其他补丁/更新软件包。 因此,根据目前的截图,我不会得出 RTD 7.0.1 不能与 S32DS 3.6.7 一起使用的结论。当前错误指向的是所需 S32DS 更新文件的下载不完整/已损坏。 作为参考,我已成功在 S32DS 3.6.6 中安装了 SW32K3_S32M27x_RTD_R23-11_7.0.1_D2603_DesignStudio_updatesite.zip。在我的配置中,我只需要额外安装 S32K3 RTD 软件包所需的 GCC 10.2 工具链。   顺祝商祺! 帕维尔 Re: S32K356 RTD选择 我将S32DS版本改为3.6.10了,这个版本可以安装RTD7.0.1,不需要额外安装其他组件。我们现在先使用S32DS3.6.10+RTD7.0.1开发。如果后续autosar R21的版本有更新的消息,麻烦告知一下,谢谢了。
記事全体を表示
LX2160ARDBのDDR構成 - HX430C16FB3_32   LX2160ARDBリファレンスボードを使って、DDR1コントローラーに32GBのDDR4 RAMモジュールを使おうとしています。しかし、CodeWarriorのDDRメモリコントローラ設定では、DRAM設定のデバイスごとのオプションが見つかりませんでした。 以下の点についてアドバイスをいただけますか: LX2160ARDBのDDRメモリコントローラを32GB RAMでどう設定すればいいですか? このプラットフォームで32GBのDDRメモリを検証する手順。 32GB DDRメモリをサポートするためのファームウェアの更新方法(必要に応じて)について説明書があります。 image (3).png Re: DDR Configuration on LX2160ARDB - HX430C16FB3_32 こんにちは、イーピンさん RCWファイル(rcw_2000_700_2900_19_5_2_sd.bin)をSDカードにロードし、DDR構成パネルでSPDの読み取りを実行すると、 「サポートされていない生カードリビジョンです。CLKをDQSスキュー値に手動で設定してください。」というメッセージが表示されます。 Priyaa_0-1786617660694.png Re: DDR Configuration on LX2160ARDB - HX430C16FB3_32 CodeWarriorには直接的なオプションがないため、LX2160ARDBに32GBのDDR4 RAMを構成するには、**NXP QorIQ構成および検証スイート(QCVS)**を使用する必要があります。32GB DIMMの詳細な仕様(密度、ランク、デバイス幅)を取得し、QCVSに入力してカスタムDDRコントローラー設定コードを生成します。このコードは、最新のLayerscapeソフトウェア開発キット(LSDK)からU-Bootブートローダーのソースに**統合される必要があります。U-Bootを組んだら、アップデートされたファームウェアをマザーボードにフラッシュしてください。システムが起動したら、U-Bootの起動メッセージを確認し、Linuxのコマンドで「free -h」を使って32GBのRAMを検証してください。 Re: DDR Configuration on LX2160ARDB - HX430C16FB3_32 DDR構成パネルで、構成モードとして「SPDの読み取り」と「DIMM」を選択し、「SPDの読み取り」をクリックしてSPDからパラメータを読み取り、DDRプロジェクトの作成を完了してください。 QCVS DDRプロジェクトを作成した後、「検証ステージ」と「運用DDRテスト」をすべてチェックし、ターゲットボードに接続してすべての検証を完了してください。 QCVS DDRツールのユーザーマニュアルをご参照ください https://www.nxp.com.cn/docs/en/user-guide/QCVS_DDR_User_Guide.pdf QCVS DDRvツールを使用して検証を行う場合、特定のファームウェアは必要ありません。
記事全体を表示
技術ガイダンスのリクエスト — S32K342 スタートアップ自己テスト (LBIST/MBIST/SCST/Lockstep/FCCU) 設定 NXP技術サポートチームへ、 このメッセージがあなたに届く頃には、お元気でいらっしゃることを願っています。現在、S32K342マイクロコントローラを基にした機能安全アプリケーションを開発しており、起動時の自己テスト設定について技術的なご指導をお願いしたいです。 検証。 開発環境: - ターゲットデバイス:S32K342(パッケージ:hdqfp100、100ピン) - EB トレソス スタジオ:32.1.4 - リアルタイム・ドライバ (RTD): SW32K3_S32M27x_RTD_R21-11_5.0.0 (TS_T40D34M50I0R0) - セーフティ ペリフェラル ドライバ (SPD): SW32K3_SPD_1.0.5_D2503 (TS_T40D34M10I5R0) - IDE: S32 Design Studio 3.6.0 バックグラウンド: 現在取り組んでいるプロジェクトは、元々はS32K344向けに作成されたもので、後にS32K342に移植されました。移行作業中に、以下の項目を手動で修正しました。 1. リソースモジュール:ResourceSubderivativeをResourceSubderivativeをs32k344_mapbga257からs32k342_hdqfp100に変更; 2. プロジェクト選好におけるECUId:S32K344からS32K342に変更; 3. MPUメモリマッピング(プラットフォームモジュール):プログラムフラッシュサイズを4MBから2MBに調整; 4. FCCU構成(eMcemモジュール):CM7_1に関連するDCMフォールトエントリ(ITCM/D0TCM/D1TCMマルチビットエラー)を削除しました。S32K342はシングルコアデバイスであるためです。 5. MCUモジュール:S32K342上で利用できないペリフェラルインスタンス(例:SXOSC、EMIOS_2、ADC_2、FlexCAN_4/5、LPUART_4–15、LPSPI_4/5、LPCMP_2)を除去します。 これらの修正にもかかわらず、EB tresosは依然として多数の検証エラーを報告している。さらに、SPD 1.0.5のデモパッケージ(S32_SPD_Demo)は、S32K344、S32K358、S32K388、S32K396のテンプレートプロジェクトのみを提供していることに気づきました — そこにあります 公式のS32K342テンプレートプロジェクトではなく、EBの新しいプロジェクトウィザードは、S32K342を選択していても誤ってリソースモジュールにs32k358_mapbga289を割り当てます。 質問: 1. SPD 1.0.5における公式なS32K342サポート Bist_s32k342_hdqfp100.epd を見つけました。SPDプラグイン内にeMcem_s32k342_hdqfp100.epdとSafetyBase_s32k342_hdqfp100.epdが存在することから、S32K342がサポートされていることが示唆されます。SPD 1.0.5が公式にS32K342をサポートしているか確認していただけますか?また、 S32K342 SPDプロジェクトを作成するための推奨される(公式な)手順やテンプレートはありますか? 2. スタートアップの自己テストフローとS32K342のタイミング S32K342はデュアルコアのロックステップS32K344とは異なり、単一のCortex-M7コアなので、推奨される起動手順を教えていただけますか? - LBIST/MBISTをトリガーするのはHSE_BファームウェアかアプリケーションレベルのBistモジュールか? - 推奨される順序(例:LBIST →MBIST →RAM 初期化→Mcu_Init)? - S32K342上の256KB SRAMの典型的なMBISTカバレッジと起動時の予算は? 3. FCCUの故障マッピングの違い(S32K344対S32K342) どのNCF[0]–NCF[7]DCMフォルト信号がS32K344とS32K342で異なるのでしょうか?特に: - CM7_1に関連するDCMの故障を削除したのは正しかったか? - EMAC_FCCU_ERR、AXBS_FCCU_ALARM、PERIPH_AXBS_ALARMなどの信号はS32K342上でまだ有効ですか? 4. ロックステップ構成と確認 S32K342 Cortex-M7はDCLS(デュアルコアロックステップ)モードで動作しますか?もしそうなら、実行時にLockstepが有効であることをどう確認すればよいのでしょうか?また、RCCUのミスマッチエラーはどのようにしてFCCUにマッピングされるのでしょうか? 5. SCST(ソフトウェアコアセルフテスト)サポート SPD 1.0.5はSCSTライブラリを提供していますか?それともサードパーティ製のソリューション(例:Hitex/Suresoft)が必要ですか?NXPが推奨するS32K342向けのSCSTテストカバレッジのアプローチは何ですか? 上記点に関するご助言をいただければ大変ありがたく存じます。追加のプロジェクトファイルや設定情報が必要な場合はお知らせください。速やかに提供いたします。 お時間をいただき、サポートいただきまして、本当にありがとうございます。 よろしくお願いいたします。 ウディディ Re: Request for Technical Guidance — S32K342 Startup Self-Test (LBIST/MBIST/SCST/Lockstep/FCCU) Conf こんにちは、 @WuDiDi さん。 推奨される方法は、既存のプロジェクトを移植するのではなく、S32K342専用の新しいプロジェクトを作成することです。 ターゲット導関数は、Resourceモジュール内でデフォルトのS32K358からS32K342に変更できます。 1. はい、SPD 1.0.5はS32K342をサポートしています。詳細については、SPD 1.0.5のリリースノートを参照してください。 danielmartynek_0-1786610289372.png 2. S32K342もS32K344と同様にLSにCM7_0-CM7_1を持っています。 danielmartynek_1-1786611158784.png danielmartynek_2-1786611192997.png アプリケーションコードにはMBISTとLBISTの両方を実行するBist_Run()関数を含めるべきです。 詳細および実装に関するガイダンスについては、S32K3_SPD_BIST_UM.pdfもご参照ください。 danielmartynek_0-1786617060818.png 実行時間については、SPDリリースと一緒にダウンロード可能なSPD品質パッケージを参照してください。 実行時間の測定値は、そのパッケージに含まれるS32K3XX_SAF_BIST_ProfileReport.xlsxファイルに含まれています。 3. この表を参照してください。 https://community.nxp.com/t5/S32K-Knowledge-Base/DOC-S32K3x1-S32K3x2-S32K3x4-eMCEM-DCM-Mapping-v1-0-SPD1-0-5/ta-p/2394707 4. はい、ロックステップが有効で、このレジスタで確認できます: 読み取り専用GPRオン機能リセット19(DCMROF19[29]) 再度、上記の表を参照してください。 5. NXPはS32K3xx向けにSCSTライブラリを提供しています。 https://www.nxp.com/design/design-center/software/functional-safety-software/structural-core-self-test-scst-library:SCST よろしくお願いいたします。 ダニエル
記事全体を表示
Request for Technical Guidance — S32K342 Startup Self-Test (LBIST/MBIST/SCST/Lockstep/FCCU) Configur Dear NXP Technical Support Team, I hope this message finds you well. I am currently developing a functional safety application based on the S32K342 microcontroller and would like to request your technical guidance regarding startup self-test configuration and verification. Development Environment: - Target device: S32K342 (package: hdqfp100, 100-pin) - EB tresos Studio: 32.1.4 - Real-Time Drivers (RTD): SW32K3_S32M27x_RTD_R21-11_5.0.0 (TS_T40D34M50I0R0) - Safety Peripheral Drivers (SPD): SW32K3_SPD_1.0.5_D2503 (TS_T40D34M10I5R0) - IDE: S32 Design Studio 3.6.0 Background: My current project was originally created for the S32K344 and later ported to the S32K342. During the migration, I manually corrected the following items: 1. Resource module: changed ResourceSubderivative from s32k344_mapbga257 to s32k342_hdqfp100; 2. ECUId in project preferences: changed from S32K344 to S32K342; 3. MPU memory mapping (Platform module): adjusted Program Flash size from 4 MB to 2 MB; 4. FCCU configuration (eMcem module): removed CM7_1-related DCM fault entries (ITCM/D0TCM/D1TCM multi-bit errors), since S32K342 is a single-core device; 5. Mcu module: removed peripheral instances that are not available on S32K342 (e.g., SXOSC, EMIOS_2, ADC_2, FlexCAN_4/5, LPUART_4–15,LPSPI_4/5, LPCMP_2). Despite these corrections, EB tresos still reports a number of validation errors. In addition, I noticed that the SPD 1.0.5 demo package (S32_SPD_Demo) only provides template projects for S32K344, S32K358, S32K388, and S32K396 —there is no official S32K342 template project, and the EB new-project wizard incorrectly assigns s32k358_mapbga289 to the Resource module even when S32K342 is selected. Questions: 1. Official S32K342 support in SPD 1.0.5 I found Bist_s32k342_hdqfp100.epd, eMcem_s32k342_hdqfp100.epd, and SafetyBase_s32k342_hdqfp100.epd inside the SPD plugins, which suggests S32K342 is supported. Could you confirm whether SPD 1.0.5 officially supports S32K342, and is there a recommended (official) procedure or template for creating an S32K342 SPD project? 2. Startup self-test flow and timing for S32K342 Since S32K342 has a single Cortex-M7 core (unlike the dual-core lockstep S32K344), could you clarify the recommended startup sequence? - Who triggers LBIST/MBIST —the HSE_B firmware or the application-level Bist module? - What is the recommended order (e.g., LBIST →MBIST →RAM initialization →Mcu_Init)? - What are the typical MBIST coverage and startup-time budget for the 256 KB SRAM on S32K342? 3. FCCU fault mapping differences (S32K344 vs. S32K342) Which NCF[0]–NCF[7]DCM fault signals differ between S32K344 and S32K342? In particular: - Was it correct to remove the CM7_1-related DCM faults? - Are signals such as EMAC_FCCU_ERR, AXBS_FCCU_ALARM, and PERIPH_AXBS_ALARM still valid on S32K342? 4. Lockstep configuration and confirmation Does the S32K342 Cortex-M7 run in DCLS (Dual-Core Lockstep) mode? If so, how can I confirm at runtime that Lockstep is enabled, and how are RCCU mismatch errors mapped to the FCCU? 5. SCST (Software Core Self-Test) support Does SPD 1.0.5 provide an SCST library, or is a third-party solution (e.g., Hitex/Suresoft) required? What is NXP's recommended SCST test coverage approach for S32K342? Your guidance on the above points would be greatly appreciated. If additional project files or configuration details would help, please let me know and I will provide them promptly. Thank you very much for your time and support. Best regards, wudidi Re: Request for Technical Guidance — S32K342 Startup Self-Test (LBIST/MBIST/SCST/Lockstep/FCCU) Conf Hi @WuDiDi, The recommended approach is to create a new project specifically for the S32K342 rather than porting an existing one. The target derivative can be changed in the Resource module from the default S32K358 to the S32K342. 1. Yes, SPD 1.0.5 supports the S32K342. Please refer to the SPD 1.0.5 release notes for details. danielmartynek_0-1786610289372.png 2. S32K342 has also CM7_0-CM7_1 in LS like S32K344. danielmartynek_1-1786611158784.png danielmartynek_2-1786611192997.png The application code should include the Bist_Run() function, which executes both MBIST and LBIST. Please also refer to S32K3_SPD_BIST_UM.pdf for additional details and implementation guidance. danielmartynek_0-1786617060818.png Regarding the execution time, please refer to the SPD Quality Package, which can be downloaded together with the SPD release. The execution time measurements are provided in the S32K3XX_SAF_BIST_ProfileReport.xlsx file included in that package. 3. Refer to this table: https://community.nxp.com/t5/S32K-Knowledge-Base/DOC-S32K3x1-S32K3x2-S32K3x4-eMCEM-DCM-Mapping-v1-0-SPD1-0-5/ta-p/2394707 4. Yes, lockstep is enabled, which can be checked in this register: Read-Only GPR On Functional Reset 19 (DCMROF19[29]) Again, refer to the above table. 5. NXP provides SCST library for S32K3xx: https://www.nxp.com/design/design-center/software/functional-safety-software/structural-core-self-test-scst-library:SCST Regards, Daniel
記事全体を表示
DDR Configuration on LX2160ARDB - HX430C16FB3_32   We are working with an LX2160ARDB reference board and attempting to use a 32GB DDR4 RAM module on the DDR1 controller. However, in CodeWarrior's DDR Memory Controller Configuration, we couldn't find an option for a 32GB device under DRAM Configuration per Device. Could you please provide guidance on: How to configure the DDR Memory Controller for 32GB RAM on the LX2160ARDB? Steps to validate the 32GB DDR RAM on this platform. Instructions for updating the firmware (if necessary) to support 32GB DDR RAM. image (3).png Re: DDR Configuration on LX2160ARDB - HX430C16FB3_32 Hi Yiping, We have loaded the RCW file(rcw_2000_700_2900_19_5_2_sd.bin) into SD card and in DDR configuration panel, when Read SPD is done we are getting as "Unsupported raw card revision. Set the CLK to DQS skew values manually."  Priyaa_0-1786617660694.png Re: DDR Configuration on LX2160ARDB - HX430C16FB3_32 To configure 32GB DDR4 RAM on your LX2160ARDB, as CodeWarrior lacks a direct option, you'll need to use the **NXP QorIQ Configuration and Validation Suite (QCVS)**. Obtain your 32GB DIMM's detailed specifications (density, ranks, device width) and input them into QCVS to generate custom DDR controller configuration code. This code must then be **integrated into the U-Boot bootloader** source from the latest Layerscape Software Development Kit (LSDK). After building U-Boot, **flash the updated firmware** to your board. Validate the 32GB RAM by checking U-Boot boot messages and using Linux commands like `free -h` once the system boots. Re: DDR Configuration on LX2160ARDB - HX430C16FB3_32 In DDR configuration panel, please select "Read SPD" and "DIMM" as Configuration mode, then click "Read SPD" to read parameters from SPD and finish the DDR project creating. After creating QCVS DDR project, please check all "Validation stage" and "Operational DDR tests" to to connect to the target board to finish all the validation. Please refer to QCVS DDR Tool user manual  https://www.nxp.com.cn/docs/en/user-guide/QCVS_DDR_User_Guide.pdf No need specific firmware when doing validation with QCVS DDRv tool.
記事全体を表示
家をリノベーションしましょう 皆さん、こんにちは。 100平方メートルの家をどうやってリノベーションし、必要なだけスマートにするか考え始めたところです。家はかなり大規模なリノベーション(床暖房、エアコン、電動シャッターなど)を行う予定なので、ついでに何かをセットアップできます。私はエンジニアなので、システムをいじって動かすことに全く問題はありません。見てみると、最も経済的で汎用性の高い解決策は、すでに持っているRaspberry PiでHome Assistantをローカルに動かし、必要なすべてのデバイスを揃え、5〜7インチのディスプレイですべてを見たり操作したりすることです。プロトコルについて迷っています。Wi-Fiベースのプロトコルを使うべきか、それとも有線接続(KNXと聞いたのですが?)を使うべきか…。有線接続の方が効率的だとは思うのですが、その分コストも高くなります。それだけの価値はあるのか?リノベーション中だけどスマートホームの仕組みにあまり詳しくない人への追加のアドバイスはありますか? Re: Renovate your home こんにちは、 @ozipin さん。 すべてのデバイスを連携させる通信方法は、あなたのニーズや要件によって大きく異なりますが、一般的にZigbeeのような特定のプロトコルはスマートホームのニーズをカバーするために作られているので、Zigbee対応のデバイスを調べることをおすすめします。これにより、有線通信と同等の信頼性を確保しつつ、はるかに高い柔軟性を実現し、コストを削減できるはずです。 ビルディング&ホームオートメーション |NXPセミコンダクターズのウェブページで、スマートホームを実現する方法について詳しく知ることができます。 BR、 エドウィン。
記事全体を表示
PN512 - 実際にType 4 Tag(T4T/HCE)カードエミュレーションをサポートしているのでしょうか? こんにちは、皆さん。 カスタムボード(LPC54101 + PN512)で作業中で、NTAG213/216タグの読み取り(問題なく動作)と、静的なNDEF(BT-OOBペアリングレコード)を提供するタイプ4タグをエミュレートして、スマホがタップして読み取れるようにする必要があります。 NxpRdLib V2.0.3.0 を phpalI14443p4C_Sw / phceT4T_Sw で使用しています。ループ内でphceT4T_Listen()を呼び出す ->内部的にphhalHw_Listen() ->PN512のAutocoll。タイムアウト設定、リスニング前の明示的な FieldOff、レジスタレベルのチェック (TxControlReg で自身のフィールドがオフになっていることを確認、GsNOffReg はデータシートのデフォルト値、RFCfgReg/RxThresholdReg/DemodReg はすべて正常) の影響を受けずに、PH_ERR_IO_TIMEOUT (0x0201) が常に発生します。AndroidやiPhoneからはアンテナに直接反応がありません。 NXPサポートがデータシート上PN512はカードエミュレーションができないと言っているスレッドを見つけました。代わりにカードエミュレーションを推奨しているCLRC663: https://community.nxp.com/t5/Other-NXP-Products/PN512-Emulation-Tag-Write-issue/m-p/2089993 しかし、それはPN512の製品ページ(「カードエミュレーション機能」と機能として記載されている)や、誰かがMIFARE UltralightタグのエミュレーションをPN512で問題なく動作させた別のThreadと矛盾しているように思えます。 https://community.nxp.com/t5/NFC/Pn512-Tag-Emulation-Callibration/td-p/684135 つまり、PN512は単純なISO14443-3タグエミュレーション(UID/アンチコリジョン、例えばMifare ULのような)はできるけど、完全なISO14443-4タイプ4タグのアクティベーション(RATS/ATS、APDU交換)はできないという違いなのでしょうか?PN512で本物のT4T/HCEを動かした方はいらっしゃいますか?それともこのチップはその用途には行き止まりなのでしょうか? また別途、RdLib V2.0.3.0パッケージのReleaseNotes.txtでは、ディスカバリーループはポール/ポーズフェーズのみをサポートしており、.chmはドキュメントにはphceT4TやphpalI14443p4Cについて一切言及がなく、カードエミュレーションコンポーネントが公式に検証・ドキュメント化されたリリースだったかどうかも分かりません。適切なパッケージのアドバイスがあれば教えてください。 よろしくお願いします! Re: PN512 - Does it actually support Type 4 Tag (T4T/HCE) card emulation? お世話になります。 あなたの別のCASEでも言及されているように、はい、PN512はHCEをサポートしており、Raspberry Piの例もあります。 ただし、PN512は新しいデザインには推奨されていないことを覚えておいてください。当社のNFCリーダがフルサポートNFCモード(PN5190、PN5180、PN7462、PN7642)に対応している可能性もぜひ検討してください。 これらすべてのリーダーは 、当サイトのNFCリーダライブラリで使用できます。 この情報がお役に立てば幸いです。 Re: PN512 - Does it actually support Type 4 Tag (T4T/HCE) card emulation? 後でこのThreadを見つけた方のために簡単なアップデートです。こことサポートチケットで2つの異なる回答をもらいました。 AN11480(Raspberry Pi/EXPLORE-NFCガイド)はPN512でタイプ2タグエミュレーションのみをデモンストレーションしており、§7.1に直接記載されています(「カードエミュレーションの例はNFCフォーラムのタイプ2タグをエミュレートします」)。しかし、phceT4TやT4Tについては一切言及していません。T4T/HCEのためにそこを指示されたのであれば、それは適切な医師ではありません。 PN512 上での実際のタイプ 4 タグ (T4T/HCE) エミュレーションについては、AN11308 (PNEV512B/LPC1769 クイック スタートアップ ガイド) の §6.8「例 8 - HCE T4T」および §7.1.6 を参照してください。「HCEレイヤー」この例はNFCフォーラムのType 4 Tag Operation Specification v2.0を明示的に構築しており、phceT4T_Activate()/phceT4T_AppProcessCmd()を使い、Select/ReadBinary/UpdateBinaryをサポートしています。 SO、はい、PN512は本物のT4Tエミュレーションをサポートしていますが、Raspberry PiパッケージではなくPNEV512B/LPC1769(Blueboard)パッケージ経由で対応しています。サポートに確認して正確なライブラリバージョンを確認し、2つの回答を調整します。
記事全体を表示