Multi Source Translation Content

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

Multi Source Translation Content

讨论

排序依据:
CASPERによるECDA署名検証 ネタバレ (ハイライトして読む)     こんにちは、 ECDSA(MBEDTLS_ECP_DP_SECP256R1)で署名を検証するために、mbedTLSを独自に構築することに成功しました。 代替実装がない場合(すべての計算がCPUによって行われる場合)、LPC55S06では署名検証の計算に最大4秒かかります。 今、mbedTLS ecdsa_verify()関数をCASPER FSLドライバーにリンクしようとしています。しかし、ECDSA検証は単一の操作ではないように思われるため、私にはよく分かりません。 CAPSERの基本プリミティブ(SECP256R1_MulとSECP256R1_MulAdd)をmbedTLS関数ECDSA_verify()にリンクするにはどうすればよいですか? ご回答をよろしくお願いいたします。 LPC55xx Re: ECDA signature verification with CASPER こんにちは、peter89jeanさん。 お返事ありがとうございます。あなたが言及した方法は私が考えていたものですが、mbedTLS 設定ファイルには、シンプルで分かりやすい SECP256R1_MULADD _ALTまたは SECP256R1_MUL _ALTの定義が見当たらないようです。mbdedTLSに特化したフォーラムでこの質問をした方が良いかもしれない。 再度、感謝します。 よろしくお願いいたします。 Re: ECDA signature verification with CASPER 通常、mbedtls_ecdsa_verify() 自体を置き換える必要はありません。CASPER アクセラレーションは、mbedTLS が内部的に使用する楕円曲線/乗算レイヤーに統合されているはずです。ECDSA検証ではスカラー乗算とその和を計算する必要があるため、SECP256R1_Mul()は個々のスカラー点の乗算を処理し、SECP256R1_MulAdd()は結合操作を加速できます。正確な統合はmbedTLSのバージョンとNXP CASPARドライバーAPIによって異なりますが、一般的なアプローチは、ecdsa_verify()から直接CASPERを呼ぶのではなく、P-256のスカラー乗算プリミティブに対してmbedTLSの代替/最適化された実装を提供することです。 回复: ECDA signature verification with CASPER こんにちは、 @s_hdl ECDSA検証は複数の算術および楕円曲線演算で構成されているため、単一のCASPARプリミティブにマッピングされません。 MCUXpresso SDKでは、この統合はすでにCASPER PSA Cryptoポートで実装されています。casper_mbedtls_ecdsa_verify() 関数は、u1 と u2 の計算を含む、標準的な ECDSA 検証フローを実行します。そして、次のように呼び出します。 casper_mbedtls_ecp_muladd(grp, &R, u1, &grp->G, u2, Q); 計算する: R = u1 × G + u2 × Q ECP適応レイヤーは、mbedTLS MPI値と楕円曲線点を CASPER が 必要とする 形式 に変換し 、 この 操作を CASPER_ECC_SECP256R1_MulAdd() に マッピングします 。 同様に、 単一 の スカラー 乗算を に casper_mbedtls_ecp_mul() マッピングします CASPER_ECC_SECP256R1_Mul() 。 したがって、 直接 を変更する mbedtls_ecdsa_verify() のではなく 、 SDK が提供する CASPER 統合 の 完全な 再 利用 を推奨 します 。 component/psa_crypto_driver/casper_driver 特に、以下をご参照ください。 mcux_psa_casper_ecdsa_port.c mcux_psa_casper_ecp_port.c mbedTLSを別途構築したので、mbedTLSのバージョンがMCUXpresso SDK CASPARポートに対応しているかも確認してください。 lpcxpresso55s06_psa_crypto_examplesを参照してください。 Harry_Zhang_0-1788493275769.pngHarry_Zhang_0-1788493275769.png BR ハリー 回复: ECDA signature verification with CASPER こんにちは、ハリーさん。 あなたの回答は大変参考になりました。ありがとうございました。CASPERの実装を使うようになってからはすべて正常に動作するようになりました。 よろしくお願いします。
查看全文
Signal Multiplexing and Pin Assignment of s32k116 Hi NXP Team, I’m working on configuring the Signal Multiplexing and Pin Assignment for my NXP MCU, but I’m unable to find the relevant information in the available documentation. Could someone please point me to the document or section that contains the signal multiplexing options and pin assignment details (e.g., which signals/functions can be mapped to which pins)? I’ve checked the available reference manual and datasheet, but I couldn’t find the information I need. Could you please let me know where this information is documented, or provide the appropriate reference/document? Thanks in advance. Re: Signal Multiplexing and Pin Assignment of s32k116 Hi, as the RM states in chapter 4.5 IO Signal Description Input Multiplexing sheet(s) are attached to the device Reference Manual. So open the RM in the pdf viewer allowing you to show/open attachments and simply open/download desired excel file from there. PetrS_0-1788511369480.png BR, Petr
查看全文
iMX8MP - integrating CSI2 with OV5648 I'm having trouble integrating OV5648 camera with IMX8MP. I do get an image but it's skewed towards green colors. The test pattern however looks good. I'm using a Single Pixel Mode on a 2 lane CSI, with a RAW8 sensor. I'm currently trying to figure out if I should use the Quad Pixel Mode for 2 lane RAW8. My understanding is that if I set Quad Pixel Mode, I have to configure the clock such that ISI DMA reads the CSI FIFO after 4 bytes are present in the FIFO. For a 2 lane CSI that happens every other transaction. Am I correct here? Should I also enable the 32 bit wide bus? MichalC_0-1788529885527.png When I enable Quad Pixel Mode 3/4 of the resulting image is black. i.MX 8 Family | i.MX 8QuadMax (8QM) | 8QuadPlus Re: iMX8MP - integrating CSI2 with OV5648 Hello, The pixel mode seems not to be the root cause of the color issue. Please confirm that Bayer pattern order for your OV5648 camera is according to the driver you used. Best regards. Re: iMX8MP - integrating CSI2 with OV5648 Hello @MichalC, For OV5648 RAW8 over 2-lane CSI-2 on i.MX8MP you are right regarding Single Pixel Mode. As explained in this Wiki Data Transmission Layer  CSI-2 distributes bytes across the active lanes and the receiver recombines them into a byte stream. So 2 lanes do not imply Quad Pixel Mode.  For RAW8 1 pixel = 1 byte(Pixel/Byte Packing). Therefore, your interpretation that ISI should wait for 4 bytes every other 2-lane transaction is not something that follows from CSI-2 lane operation alone.  The fact that Quad Pixel Mode gives you 3/4 black output suggests the CSI/ISI interface width or timing is mismatched. Also the green tint is likely a separate RAW Bayer issue.  As stated in Image Sensor Basics, RAW Bayer data requires demosaicing, color correction, and white balance. I would verify the OV5648 Bayer order and RAW8 media-bus format first. Feel free to contact us for more details. Regards, Felipe Solano Embedded SW Engineer at RidgeRun Contact us: [email protected] Developers wiki: https://developer.ridgerun.com Website: www.ridgerun.com
查看全文
iMX8MP - 将 CSI2 与 OV5648 集成 我无法将OV5648摄像头与IMX8MP集成。我确实看到了图像,但是图像偏绿。测试图案看起来不错。 我正在使用 2 通道 CSI 上的单像素模式,搭配 RAW8 传感器。 我目前正在考虑是否应该对 2 通道 RAW8 使用四像素模式。我的理解是,如果我设置四像素模式,我必须配置时钟,以便 ISI DMA 在 FIFO 中存在 4 个字节后读取 CSI FIFO。对于每隔一次交易发生的 2 通道 CSI,我理解的对吗?我是否也应该启用 32 位宽总线? MichalC_0-1788529885527.png 启用四像素模式后,生成的图像有 3/4 是黑色的。 i.MX 8 系列 | i.MX 8QuadMax (8QM) | 8QuadPlus Re: iMX8MP - integrating CSI2 with OV5648 你好, 像素模式似乎并非颜色问题的根本原因。 请确认您的 OV5648 相机的拜耳阵列排列顺序是否与您使用的驱动程序一致。 顺祝商祺! Re: iMX8MP - integrating CSI2 with OV5648 你好@MichalC , 对于 i.MX8MP 上的 OV5648 RAW8(通过 2 通道 CSI-2),您关于单像素模式的说法是正确的。 正如本维基百科数据传输层CSI-2 中所述,它将字节分发到活动通道上,接收器将它们重新组合成字节流。所以,双通道并不意味着四像素模式。 对于 RAW8,1 像素 = 1 字节(像素/字节打包)。因此,你认为ISI应该在每隔一个双通道事务中等待4个字节的解释,并非仅从CSI-2通道操作就能得出。 四像素模式输出 3/4 黑色,这表明 CSI/ISI 接口宽度或时序不匹配。 此外,绿色色调很可能是拜耳RAW格式本身的问题。如图像传感器基础知识中所述,RAW Bayer 数据需要进行去马赛克、色彩校正和白平衡处理。我首先要确认 OV5648 拜耳阵列顺序和 RAW8 媒体总线格式。 如有任何疑问,请随时联系我们。 此致, 费利佩·索拉诺 RidgeRun公司的嵌入式软件工程师 联系我们:[email protected] 开发者维基: https://developer.ridgerun.com 网站: www.ridgerun.com
查看全文
CircO2 Review 2026: Ingredients, Benefits, Side Effects Buying Guide CircO2 is a nitric oxide support supplement made by Advanced Bionutritionals. Unlike a lot of pills you swallow with water, CircO2 comes in a quick-dissolving tablet (sometimes called a lozenge) that melts in your mouth. This is one of the things that makes it stand out from other CircO2 Tablets on the market. The main idea behind CircO2 Oxygen Booster and Circulation Support is simple: help your body make more nitric oxide, so your blood vessels can relax and widen. When that happens, blood (and the oxygen it carries) can move more freely through your body. That can mean more energy, warmer hands and feet, and better stamina during the day.
查看全文
S32K312 开发板调试探针选择。 尊敬的NXP社区成员: 我正在使用一个S32K312(100 引脚 HDQFP)芯片,该芯片位于一个定制的控制器板上,并带有一个10 引脚 JTAG 接口,用于编程/调试。 我从一些论坛讨论中了解到, S32 调试探针可能不支持 S32K312 。 请问有人可以确认PEmicro U-MULTILINK是否可以通过 JTAG 接口对 S32K312 进行编程/调试吗? 恳请各位推荐一款经济实惠且合适的调试探针。 此致, 法亚斯 SCTSPL,班加罗尔 Re: S32K312 Development Board Debug Probe Selection. 您好@NPD_SCTSPL 实际上,对 S32K3 设备的支持是最近才添加到 S32 调试探针中的。使用此探头时,请注意它仅支持 1.2 V 至 3.3 V 范围内的目标系统电压等级。因此,VDD_HV_A 必须配置为 3.3 V 才能建立正确的调试连接。 另一方面,PEMicro 调试探针支持 S32K3 设备的时间更长,并且在许多 S32K3 软件的开发和验证过程中得到了广泛应用。因此,相当一部分可用的应用笔记、入门指南和示例项目都是使用 PEMicro 工具开发和测试的。 最后,关于您提出的 PEmicro U-MULTILINK 与 S32K3 设备兼容性的问题,答案是肯定的。PEmicro U-MULTILINK 支持 S32K3 设备,目前已列入我们网站相应产品页面(通用多链路开发接口 | NXP 半导体 )的支持设备列表中。 BR,VaneB
查看全文
iMX8MP - CSI2とOV5648の統合 OV5648カメラとIMX8MPの統合に問題があります。画像は表示されるのですが、緑色に偏っています。しかし、テストパターンは良好に見える。 私は2レーンのCSIでシングルピクセルモードを使い、RAW8センサを使っています。 現在、2レーンRAW8でクアッドピクセルモードを使用すべきかどうかを検討中です。私の理解では、クアッドピクセルモードを設定する場合、FIFOに4バイトのデータが格納された後にISI DMAがCSI FIFOを読み取るようにクロックを設定する必要があるということです。2レーンのCSIでは、2回の取引ごとに発生します。私の理解は合っていますか?32ビット幅のバスも有効にするべきでしょうか? MichalC_0-1788529885527.png クアッドピクセルモードを有効にすると、生成される画像の4分の3が黒色になります。 i.MX 8ファミリ | i.MX 8QuadMax (8QM) | 8QuadPlus Re: iMX8MP - integrating CSI2 with OV5648 こんにちは、 ピクセルモードは、色に関する問題の根本原因ではないようです。 OV5648カメラのバイヤーパターン注文が、使用したドライバーによるものであることを必ず確認してください。 よろしくお願いいたします。 Re: iMX8MP - integrating CSI2 with OV5648 こんにちは、 @MichalC さん。 i.MX8MP上の2レーンCSI-2経由のOV5648 RAW8に関しては、シングルピクセルモードに関してご指摘の通りです。 このWikiデータ伝送層で説明されているように、CSI-2はアクティブなレーン間でバイトを分配し、レシーバがそれらをバイトストリームに再結合します。したがって、2レーンがクアッドピクセルモードを意味するわけではありません。 RAW8の場合、1ピクセル=1バイト(ピクセル/バイトパッキング)。したがって、ISIが2レーントランザクションごとに4バイト待機すべきであるというあなたの解釈は、CSI-2レーン動作のみから導き出されるものではありません。 クアッドピクセルモードが3/4黒出力になるという事実は、CSI/ISIインターフェースの幅やタイミングが合っていないことを示唆しています。 また、緑がかった色合いは、おそらく別のRAWベイヤーの問題でしょう。Image Sensor Basicsに記載されているように、RAWのバイヤーデータはデモザイシング、カラー補正、ホワイトバランスを必要とします。まずOV5648のバイエル注文とRAW8のメディアバスフォーマットを確認したほうがいいと思います。 詳細についてはお気軽にお問い合わせください。 よろしくお願いいたします。 フェリペ・ソラーノ RidgeRunの組み込みソフトウェアエンジニア お問い合わせ:[email protected] 開発者向けWiki: https://developer.ridgerun.com ウェブサイト: www.ridgerun.com
查看全文
i.MX8MplusのFinite-State Machine (FSM)について Toradex社のVeridin i.MX8Mplusを弊社で採用しております。 その際に、SoMの電源操作にSOM_PW_ON信号を入力しています。(i.mx8MPlusSoCのONOFF信号に直結)。※添付のオシロスコープの波形を参照してください。 V1-1B_tool0_OFF.pngV1-1B_tool0_OFF.pngV1-1B_tool0_OFF.pngV1-1B_tool0_OFF.pngV1-1B_tool0_OFF.pngV1-1B_tool0_OFF.png   SoM側の回路構成上High(1.8V)となるはずが起動後800msec程度、約0.3~0.4Vの中間電位となってしまします。 SoC側のONOFF信号としてのこの電位(0.3から0.4V)がどう扱われるのかを知りたいです。 データシートやリファレンスマニュアルには記載がありませんでした。 ONOFFの短時間の(<5s)操作ではシャットダウンに移行するケースがあるかと思いますが、操作の判定としてはHigh⇒Lowのエッジ及び、Lowの継続時間が条件となりますでしょうか その詳細な時間についてもmim/maxの時間を教えて頂きたいです。 i.MX 8M | i.MX 8M Mini | i.MX 8M Nano Re: i.MX8MplusのFinite-State Machine (FSM)について i.MX8M Plusの場合、ONOFFはレベルホールドボタン入力として処理され、0/50/100/500 msの条件と5/10/15秒の強制オフタイミングが設定可能で、観測された0.3~0.41.8V ONOFFネット上のVは、利用可能な入力閾値のドキュメントによって最も一貫して論理低と解釈されます。 Re: i.MX8MplusのFinite-State Machine (FSM)について 回答ありがとう御座います。 > 観測された0.3~0.41.8V ONOFFネット上のVは、利用可能な入力閾値のドキュメントによって最も一貫して論理低と解釈されます。 ちなみに、論理低と解釈される電圧閾値についても教えて頂けますでしょうか? また、論理低と解釈される場合、起動後800msec程度ONOFFは論理低がが続き、論理高に変化します。 その場合、ボタン入力があったと判定されるのでしょうか? 心配しているのはボタン入力により、起動直後にシャットダウン移行の判定となるケースがないかという事です。 Re: i.MX8MplusのFinite-State Machine (FSM)について > ちなみに、論理低と解釈される電圧閾値についても教えて頂けますでしょうか? 申し訳ございません。論理高と解釈される電圧閾値が知りたいです。 Re: i.MX8MplusのFinite-State Machine (FSM)について 回答ありがとう御座います。 > 観測された0.3~0.41.8V ONOFFネット上のVは、利用可能な入力閾値のドキュメントによって最も一貫して論理低と解釈されます。 ちなみに、論理高と解釈される電圧閾値についても教えて頂けますでしょうか? また、論理低と解釈される場合、起動後800msec程度ONOFFは論理低がが続き、論理高に変化します。 その場合、ボタン入力があったと判定されるのでしょうか? 心配しているのはボタン入力により、起動直後にシャットダウン移行の判定となるケースがないかという事です。 NXP TechSupport担当者様 本件如何でしょうか? もう一点追加で質問ですが、 ONOFFはレベルホールドボタン入力として処理され、0/50/100/500 msの条件 の所ですが、デフォルトは0となっていると思います。この場合、ノイズ等で一瞬、論理高もしくは論理低の閾値を超えた場合はレベルホールドされる事となりますでしょうか? このデフォルト設定では、ノイズを受けた場合に一瞬でも現状レベルホールドしている論理と逆の論理判定となるものが入った場合に誤動作する可能性があるのかを心配しております。 Re: i.MX8MplusのFinite-State Machine (FSM)について @Rita_Wang 様 何件か質問追加質問しております。 お手数ですがご回答をお願い致します。 Re: i.MX8MplusのFinite-State Machine (FSM)について @Rita_Wang 様 確認状況いかがでしょうか? 回答をお願いします。 Re: i.MX8MplusのFinite-State Machine (FSM)について メッセージを逃してすみません。確認をお手伝いしますし、来週返信します。 素敵な一日をお過ごしください Re: i.MX8MplusのFinite-State Machine (FSM)について @Rita_Wang 様 お世話になります。 パル技研 毛利です。 そろそろ1週間が経過しますが、回答の状況いかがでしょうか? よろしくお願いいたします。 Re: i.MX8MplusのFinite-State Machine (FSM)について @ShujiMouri i.MX8MPの場合、ONOFFピンはNVCC_SNVS電源グループに属し、リセット状態「PU付き入力」を持つGPIOタイプの入力として記載されています。該当するGPIO DC入力ロー仕様は以下のとおりです。 VIL(max)=0.3× VDD V I L( max) = 0.3 × V D D 表では、低レベル入力電圧を最小値 = -0.3 と指定している。Vmax = 0.3 × VDD 。 したがって、ONOFFが1.8V SNVS I/Oドメインから給電される場合、保証される論理ローしきい値は次のようになります。 0.3×1.8 V=0.54 V 0.3 × 1.8 V = 0.54 V したがって、観測されるONOFF電圧はおよそ0.3〜0.4です。Vは論理ローとして解釈されます。 これがボタン入力とみなされるかどうかについてですが、はい、ONモードに入った後もONOFFピンが十分に低いままであれば、有効なONOFFボタンイベントとして扱うことができます。 800msの低レベルは、設定された通常のボタンデバウンス時間を超えているため 通常のONOFFボタンイベントとして認識できます 。 ハードウェアの緊急強制シャットダウンを直接引き起こしてはならない なぜなら、それには約 5秒 。 起動直後にシステムがシャットダウンするかどうかは、通常のONOFFイベントのソフトウェアやPMICの処理によります。ONモードでは、GNDとの短い接続が、ソフトウェア制御可能な電源停止を開始するための割り込みを生成します。もしブートソフトウェアやOSパワーキーハンドラがその割り込みを電源オフ要求として扱う場合、起動後に意図しないシャットダウンが発生する可能性があります。 Re: i.MX8MplusのFinite-State Machine (FSM)について @Rita_Wang 様 お手数ですが、こちらの質問についても回答をお願いいたします。 Re: i.MX8MplusのFinite-State Machine (FSM)について @Rita_Wang 様 回答ありがとうございます。 本質問でお聞きしたかったのは ONOFF pinが論理低の状態で起動した場合に、ボタン入力として判定されるのかということです。 弊社での確認では 確認された挙動としてはONOFF pinが論理高の状態で起動し10ms~20ms後に論理低に移行した場合に、起動直後シャットダウンに移行するケースがありました。 論理低の状態で起動した場合には、起動直後シャットダウンに移行するケースは確認されていません。 Re: i.MX8MplusのFinite-State Machine (FSM)について @Rita_Wang 様 質問させて頂いた内容の回答についてお願いします。 Re: i.MX8MplusのFinite-State Machine (FSM)について @Rita_Wang 様 ONOFF pinが論理低の状態で起動した場合に、ボタン入力として判定されるのかということです。 こちらの質問については如何でしょうか? Re: i.MX8MplusのFinite-State Machine (FSM)について @Rita_Wang 様 本質問事項の回答についていかがでしょうか? ご確認をお願いします。
查看全文
Adc Issue With Trigger Mode In S32 Design Studio, we are using two methods for ADC peripheral configuration. The first method uses the BCTU trigger for current sensing, while the remaining channels, such as temperature and voltage sensing, are triggered using the normal ADC chain method. When the CTU mode is configured as a trigger mode and only the three current-sensing channels are configured with the BCTU trigger, there is no noticeable current spike. However, when I include the remaining temperature and voltage channels using the normal chain method along with the current-sensing channels, the current-sensing values are affected by spikes. praveen_ext_0-1788357008084.pngpraveen_ext_0-1788357008084.pngpraveen_ext_0-1788357008084.png There is a timing difference between the two methods: the BCTU conversion is triggered through an interrupt, while the normal ADC chain is called from a 5 ms task. praveen_ext_1-1788357050345.pngpraveen_ext_1-1788357050345.pngpraveen_ext_1-1788357050345.png praveen_ext_2-1788357069814.pngpraveen_ext_2-1788357069814.pngpraveen_ext_2-1788357069814.png praveen_ext_3-1788357094947.pngpraveen_ext_3-1788357094947.pngpraveen_ext_3-1788357094947.png Could you please explain why this difference is causing the current-sensing spike and suggest how we can reduce or eliminate it? S32 SDK for S32K1 Re: Adc Issue With Trigger Mode Hi@praveen_ext It seems my colleagues and I have dealt with the same issue you're experiencing before. We've also conducted some tests following your software configuration, but we didn't encounter such a significant difference. We're unsure if you've taken any of our suggestions. Therefore, I need you to provide your test project. I will reproduce the problem on our hardware platform. If the problem can be reproduced, we can quickly provide you with a conclusion about the cause. Re: Adc Issue With Trigger Mode I have attached the test code for review. We are still observing spikes when running the BCTU trigger and the normal chain mode in trigger configuration simultaneously. Could you please help us, how we can eliminate these spikes? I have already attached the test results in my previous post Re: Adc Issue With Trigger Mode Hi@praveen_ext I recorded a video of the test using the project file you provided, without making any modifications. I connected the sampling pins to VDD externally; the results below show that I did not encounter the spikes you described. Senlent_0-1788492709905.png I also noticed that the project file you provided does not seem to match the  pictures shown in your test images. If you are able to reproduce the issue using this project, you should check your sampling circuit design—specifically, whether the input impedance at the sampling pins is too high.
查看全文
S32K312 開発ボードのデバッグプローブ選択。 親愛なるNXPコミュニティの皆様へ、 私はカスタムコントローラーボード 上のS32K312(100ピンHDQFP) を使用し、プログラミングやデバッグ用の 10ピンJTAGインターフェース を使っています。 フォーラムの議論から、 S32デバッグプローブがS32K312をサポートしていない可能性があると聞いています。 PEmicroのU-MULTILINKを使ってJTAGインターフェースを通じてS32K312のプログラミングやデバッグが可能かどうか、誰か確認できますか? 費用対効果が高く、適切なデバッグプローブに関するアドバイスをいただければ幸いです。 よろしくお願いします、 ファヤス SCTSPL、バンガロール Re: S32K312 Development Board Debug Probe Selection. こんにちは@NPS_SCTSPL 実際、S32K3デバイスのサポートは比較的最近、S32デバッグプローブに追加されました。このプローブを使用する際は、対象システム電圧レベルは1.2Vから3.3Vの範囲のみをサポートすることにご注意ください。したがって、適切なデバッグ接続を確立するにはVDD_HV_A 3.3Vに設定される必要があります。 一方、PEMicroデバッグプローブは長期間にわたりS32K3デバイスをサポートしており、多くのS32K3ソフトウェアの開発や検証において広く使用されています。その結果、利用可能なアプリケーションノート、入門ガイド、サンプルプロジェクトの多くがPEMicroツールを用いて開発・テストされています。 最後に、PEmicro U-MULTILINKとS32K3デバイスとの互換性に関するご質問ですが、答えは「はい」です。PEmicro U-MULTILINKはS32K3デバイスをサポートしており、現在は当ウェブサイトの対応製品ページ(Universal Multilink Development Interface |NXP Semiconductors)でサポートデバイスとしてリストアップされています。 BR、VaneB
查看全文
MIMXRT1176DVMAB:ENET_1G RGMII 工作电压。 我想知道当 ENET_1G 在 RGMII 模式下以 3.3V 电压运行时,性能是否会下降。 如果使用连接到 ENET_1G 且电压为 1.8V 的以太网 PHY 有特殊原因,请告诉我。 请参阅 RTL8211FDI-CG 的 6.9 节“电源和接地”,该以太网 PHY 能够在 3.3/2.5/1.8/1.5V 电压下运行。 Re: MIMXRT1176DVMAB : ENET_1G RGMII operating voltages. 您好, 使用 1.8V 或 3.3V 的 i.MX RT1170 ENET 1G RGMII 是可以的。 在AN14251 – i.MX RT1xxx – 以太网功能和 PHY 连接中,表 25。i.MX RT117x – ENET1G RGMII 焊盘,您可以找到 RGMII 可用的 MCU 引脚。 关于PHY,请遵循供应商的建议。 顺祝商祺! 巴勃罗
查看全文
LS1028A / Cortex-A72:是否支持软件 L1/L2 缓存 ECC 错误注入? 我需要确认是否可以通过注入来测试 L1/L2 缓存 ECC。   根据 Cortex-A72 TRM 的描述,我了解到: L1D 和 L2 提供 ECC - 错误通过 CPUMERRSR_EL1 / L2MERRSR_EL1 报告 - 我还没有找到任何可以通过软件访问的方法将ECC错误注入到A72 L1D或L2缓存阵列中。   问题: 1) LS1028A(或该部件上的 A72 实现)是否提供了任何可通过软件访问的方式将 ECC 错误注入 L1D/L2? 2) 如果不支持注入,NXP 建议在开机 BIT 上下文中验证 L1/L2 ECC 检测/纠正行为的什么方法? Re: LS1028A / Cortex-A72: Is software L1/L2 cache ECC error injection supported? 你好, Q1:LS1028A / Cortex-A72 是否支持向 L1D/L2 注入软件 ECC 错误? 不——Cortex-A72 不支持对 L1 或 L2 缓存进行软件可访问的 ECC 错误注入。 Q2:NXP推荐的用于L1/L2 ECC上电BIT验证的替代方案 由于 A72 不支持注入,NXP 的立场是,在该内核的软件中直接对 L1/L2 进行 ECC 错误注入测试是不可行的,需要这种级别 BIT 覆盖率的客户应考虑以下方法: 1. 通过 CPUMERRSR_EL1 / L2MERRSR_EL1 验证 ECC 报告路径 2. 如需了解任何未公开的调试钩子,请直接咨询 ARM。 3. 依赖 ARM 的架构验证(设计级保证) 对于功能安全关键型应用,当无法进行注入时,行业标准做法是依赖 Arm 自身的芯片验证和架构保证,即实现 SECDED ECC。LS1028A 数据手册确认了“具有奇偶校验和 ECC 保护的 32 KB L1 指令缓存和 32 KB L1 数据缓存”以及“具有 ECC 保护的 1 MB L2 缓存”。 Arm芯片认证流程涵盖 IP 级别的 ECC 正确性。 4. 考虑迁移到更新的核心以实现完整的 BIT 覆盖 如果软件注入 ECC BIT 是一个硬性要求(例如,为了符合 IEC 61508 / DO-254 标准),NXP 的新型基于 Cortex-A55 的 SoC(例如 i.MX 93)提供了专用的 ECC 错误注入寄存器(例如 CODE_CACHE_TAG0_ECC_ERROR_INJEC 、 SYSTEM_CACHE_DATA0_ECC_ERROR_INJEC ),这些寄存器是专门为验证和调试而设计的。 NXP积极支持A72→A55/A78AE的迁移路径。   此致
查看全文
MIMXRT1176DVMAB : ENET_1G RGMII operating voltages. I would like to know that if there is the performance degradation when operating  ENET_1G  in RGMII mode with 3.3V. Let me know if there is a specific reason to use ethernet PHY connected to ENET_1G at 1.8V. Refer to section 6.9 Power and Ground of  RTL8211FDI-CG, the Ethernet PHY used to capable to run at 3.3/2.5/1.8/1.5V. Re: MIMXRT1176DVMAB : ENET_1G RGMII operating voltages. Hi, It is okay to use i.MX RT1170 ENET 1G RGMII with 1.8V or 3.3V. In AN14251 – i.MX RT1xxx – Ethernet Capabilities and PHY Connection, at Table 25. i.MX RT117x – ENET1G RGMII pads, you can find the MCU pins available for RGMII. Regarding the PHY, please follow the recommendations from the vendor. Best Regards, Pablo
查看全文
i.MXRT106x HAB closed boot fail, HAB log stops at AUTHENTICATION_STATUS, non‑standard IVT entry poin Background: I am working on HAB signature for i.MXRT106x, using NXP‑MCUBootUtility developed by 痞子衡. When I load my firmware binary into this tool, it reports: **Cannot find valid interrupt vector table address from bootable file header**. After inspecting the binary with hex editor: - The IVT entry point is `0x20209401`, while the image load base address is `0x20208000`, corresponding to file offset `0x1400`. - This code segment is identical to the boot‑related bootdata flow up to offset `0x2000`. - Normally the IVT entry should point to the reset vector address (reference example points to offset `0x2005`). But in my firmware, IVT entry points to offset `0x1400`. I suspect this is the root cause of the tool parsing failure. Further research on CST workflow: I understand the high‑level logic of CST signing: find a free block within the firmware, set the IVT CSF pointer to this location, use standard CSF template, and modify the `[Authenticate Data]` block section to configure the start address and size range for signature verification. My firmware is a complete bootable image containing FCB, IVT, DCD and BootData, and it boots normally on hardware without HAB closure. I configured my CSF block as: Blocks=0x20208000 0x1000 0x126c0 "my_firmware.bin" Also updated certificate paths accordingly. I ran CST v3.00.01 command: cst.exe -i .\input_resign.csf -o sig.bin The CST execution finished without errors and generated `sig.bin`. Comparing the output against original binary, there are exactly 2 changes: 1. CSF pointer field inside IVT at offset `0x1018` is updated. 2. CSF signature data is appended at offset `0x136c0`. When I flash this signed image to hardware: 1. With HAB not closed (SEC_CONFIG not closed), firmware runs perfectly. 2. After burning SRK fuse bits and closing HAB, the firmware fails to boot. I dumped HAB log from memory address `0x2020523c` with length 256 bytes via JTAG, and the log content is shown below: ----------------------------------------------------------------------------------------- | Log Entry | Description ----------------------------------------------------------------------------------------- 0x00010002: BOOTMODE_INTERNAL 0x000200cc: SEC_CONFIG_CLOSED 0x00030001: DIR_BT_DIS_VALUE1 0x00040000: BT_FUSE_SEL_VALUE0 0x00050000: PRIM_IMAGE_SELECT 0x00060008: PRIM_BOOTDEVICE_FLEXSPI_NOR 0x00070000: DEVICE_INIT_CALL 0x000700f0: DEVICE_INIT_PASS 0x00090000: AUTHENTICATION_STATUS **My questions:** 1. Where is the actual HAB event code? According to references, HAB authentication pass/fail should generate explicit event codes. But my log stops at `AUTHENTICATION_STATUS` with no follow‑up event entry. How can I determine whether HAB authentication succeeded or failed? 2. I tried `blhost` tool, but I cannot find any HAB log read command working on i.MXRT1061. Is there another method to read full HAB status? 3. Is my signing workflow valid? My image uses non‑standard IVT entry point (points to offset `0x1400` instead of reset vector offset `0x2005`). Can such an image be properly HAB‑signed with CST? Additional IVT header bytes at offset `0x1000`: D1 00 20 40 01 94 20 20 00 00 00 00 80 90 20 20 20 90 20 20 00 90 20 20 00 00 00 00 00 00 00 00 00 80 20 20 80 99 01 00 00 00 00 00 00 80 20 20 80 99 01 00 52 44 49 52 00 00 00 00 E4 B8 21 20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 D2 00 08 41 CC 00 04 04 CST tool version: 3.00.01 Re: i.MXRT106x HAB closed boot fail, HAB log stops at AUTHENTICATION_STATUS, non‑standard IVT entry Hi @eleven , Thank you for the update. First, I think we should confirm whether the first byte of boot.bin is an FCB or an IVT. If it is an FCB, there may still be an alignment issue. In addition, this guide should be helpful during the process of reading and interpreting HAB fault codes: https://community.nxp.com/t5/i-MX-Security/HAB-event-in-a-Closed-i-MX-chip/ta-p/1120239 If you are still unable to pinpoint the root cause of the problem, using MCUBootUtility to generate an HAB signature directly and then running a binary diff might be another way to cross-verify the results. Best regards, Gavin Re: i.MXRT106x HAB closed boot fail, HAB log stops at AUTHENTICATION_STATUS, non‑standard IVT entry Hi Gavin, Thank you very much for your detailed reply. I think I did not describe my test setup completely in my original post. I have already tried adjusting the Blocks configuration as you suggested. I tested both: Blocks = 0x20208000 0x1000 0x126c0 "my_firmware.bin" and splitting into multiple block entries to authenticate starting from IVT through to the end of firmware: Blocks = 0x20209000 0x0 0x40 "boot.bin",\ 0x20209080 0x80 0xf80 "boot.bin",\ 0x2020a000 0x1000 0x11c00 "boot.bin" My intention was to authenticate starting from the IVT and cover all the way to the end of application code. However, the boot behaviour remained unchanged after these changes. I am using MCUBootUtility v6.5.1. Both its built‑in boot log analysis and manual JTAG memory dump give exactly the same log result. Also, I understand that the minimum boot offset for NOR is 0x1400. What I wanted to clarify is: my IVT entry points to boot‑related code, not the typical reset vector located at offset 0x2005 as seen in reference examples. Thanks again for your guidance. I will run further tests using sdphost to gather more debug information. Hopefully I can get more clues from that. Best regards, eleven Re: i.MXRT106x HAB closed boot fail, HAB log stops at AUTHENTICATION_STATUS, non‑standard IVT entry Hi @eleven , Based on your IVT data, CST configuration, and ROM log, I've identified some potential issues. 1. CST [Authenticate Data] Blocks address/offset mismatch (primary issue) From your image, BootData.start = 0x20208000 and IVT.self = 0x20209000 establish the mapping: file offset 0x1000 corresponds to memory address 0x20209000 , not 0x20208000 . The CST Blocks syntax is "file" . Your current line: Blocks = 0x20208000 0x1000 0x126c0 "my_firmware.bin" ← address/offset misaligned by 0x1000 makes CST sign the data at file offset 0x1000 , while HAB on the device verifies memory at 0x20208000 (= file offset 0). The two are offset by 0x1000, so the signature can never match. This exactly explains "boots when Open, fails when Closed": in Open mode a HAB verification failure is only logged (non-fatal), whereas in Closed mode it blocks execution. Fix : (sign from IVT): Blocks = 0x20209000 0x1000 0x126c0 "my_firmware_prepared.bin" Also ensure the IVT.csf field (offset 0x1018) is pre-filled with the final CSF address 0x2021b6c0 (= 0x20208000 + 0x136c0) before running CST, then sign, then append. Do not modify any signed byte after signing (IVT/BootData/DCD are all inside the signed range); doing so will also break verification. Q1: Where is the HAB event code? How to tell pass/fail? What you read from 0x2020523c is the ROM boot log, not the detailed HAB event log. On RT10xx each entry is packed into a single 32-bit word as (event_id<<16) | parameter , with the parameter in the low byte. For the detailed failure reason, call the HAB ROM API: report_status(&config,&state) and report_event(status,index,event,&bytes) . decode per HAB4 API Reference Manual, Appendix A Q2: blhost can't read the HAB log — any other method? blhost talks to the Flashloader, not directly to the BootROM. The i.MXRT BootROM serial-download stage supports only SDP (use sdphost ). Options: Recommended: call the HAB API from your application in the Open state to read/print status and events. Dump 256 bytes from 0x2020523c via JTAG (ROM log); or use MCUBootUtility v6.3 (sdphost loads the flashloader, then blhost read-memory) for automatic parsing. Important: When Closed and verification fails, the ROM never jumps to your application, so an in-app report_event cannot run. The standard flow must therefore be — confirm HAB_SUCCESS /no events in the Open state first, then burn SEC_CONFIG to close. Q3: Can a non-standard IVT entry (offset 0x1400) be HAB-signed? Yes — this is not the cause. For NOR boot the i.MXRT BootROM's minimum offset is 0x1400 (0x2000 is only a recommended value). Best regards, Gavin Re: i.MXRT106x HAB closed boot fail, HAB log stops at AUTHENTICATION_STATUS, non‑standard IVT entry Sorry for bothering you again, but this issue is critical for me. I could clearly observe HAB authentication errors using the sdphost command. Then I dumped the early memory region via JTAG, and found none of the firmware content was present in memory. Further testing showed that even the official demo projects shipped with NXP‑MCUBootUtility fail HAB signature when configured as NON‑XIP. Only XIP‑based images work successfully. This result surprised me a lot. I suspect there might be a mistake in my eFuse register configuration. My board does not have boot‑mode DIP switches, so I only programmed boot_cfg to 0x1A and burned the SRK fuses (please refer to the attached screenshot). QQ截图20260903101741.pngQQ截图20260903101741.png I am a beginner in this area and may have made some simple mistakes. I would appreciate any corrections or suggestions. Looking forward to your reply, thank you very much. Re: i.MXRT106x HAB closed boot fail, HAB log stops at AUTHENTICATION_STATUS, non‑standard IVT entry Hi @eleven , Your observation — even the official demo fails HAB when built as Non-XIP, while XIP works — seems to points to this root cause: https://www.cnblogs.com/henjay724/p/18111727 RT1050/1060 "Non-XIP + HAB" BootROM limitation On these two earliest devices, the BootROM reserves part of the OCRAM (notably 0x20280000–0x202BFFFF ) and does not open it to HAB authentication; other RT devices don't have this limit. Your image loads into OCRAM ( 0x20208000 ), so it boots with HAB off but fails verification with HAB on, and the firmware is never copied into memory. This is independent of your CSF/Blocks, which is why earlier changes had no effect. If Non-XIP is required: avoid the reserved OCRAM region and use external SDRAM instead. Alternatively, according to the guide in the link above, the image must be strictly confined to the HAB recognition area. On the fuses (screenshot): With no boot-mode DIP switches, standalone boot requires BT_FUSE_SEL = 1; otherwise the boot configuration is undefined. And please verify your BOOT_CFG1=0x1A and Conf0=0x40 bit-by-bit against the RT1060 RM Fusemap in your use case. Fuses are OTP (write-once) — proceed carefully. Best regards, Gavin
查看全文
PN7642を使用してGoogleスマートタグを読み取る 専門家の皆さん、こんにちは。 Google Wallet内のAndroidスマホアプリに保存されたタグを読み取るファームウェアの開発に、皆さんの助けが必要です。 関連するドキュメントやチュートリアル動画は見つかっていません。MIFARE DESFireを使ってスマホに保存されたタグの読み方のドキュメントを教えてもらえますか?すでにPN76評価ボードを購入済みです。 よろしくお願いいたします。 ヤシュ 開発ボード Re: Read Google Smart Tag using PN7642 お世話になります。 残念ながら、Goolge Walletのトピックはかなり制限されています。 これはMass Marketのサポートチャネルであり、適切な情報を提供するサポートリソースがありません。丁寧にNXPの営業部にご連絡いただけるようお願いいたします。それでも、直接的なサポートは以下のメールでMIFARE2GOチームにご連絡ください:[email protected]
查看全文
LS1028A / Cortex-A72:ソフトウェアのL1/L2キャッシュECCエラー注入はサポートされていますか? L1/L2キャッシュECCがインジェクションでテスト可能かどうか確認する必要があります。   Cortex-A72 TRMから理解しています: - L1DとL2はECCを提供します - エラーはCPUMERRSR_EL1 / L2MERRSR_EL1経由で報告されます - A72のL1DまたはL2キャッシュアレイにECCエラーを注入するソフトウェアでアクセス可能な方法を見つけられていません   質問: 1) LS1028A(またはこの部分のA72実装)は、L1D/L2にECCエラーを注入するためのソフトウェアアクセス可能な方法を提供していますか? 2) インジェクションがサポートされていない場合、NXPは電源投入時のBITコンテキストでL1/L2 ECCの検出/訂正動作を検証するために何を推奨しますか? Re: LS1028A / Cortex-A72: Is software L1/L2 cache ECC error injection supported? こんにちは、 Q1: LS1028A / Cortex-A72はL1D/L2へのソフトウェアECCエラー注入をサポートしていますか? いいえ — Cortex-A72はL1またはL2キャッシュに対するソフトウェアアクセス可能なECCエラー注入をサポートしていません。 Q2:NXP推奨のL1/L2 ECCの電源オンBIT検証代替案 A72では注入が利用できないため、NXPの立場は、このコア上でL1/L2の直接的なECCエラー注入テストはソフトウェア上で実現不可能であり、このレベルのBITカバレッジを必要とするお客様は以下のアプローチを検討すべきだということです。 1. CPUMERRSR_EL1 / L2MERRSR_EL1 を介して ECC レポートパスを確認します。 2. 未公開のデバッグフックについては直接ARMを参照する 3. ARMのアーキテクチャ検証(デザインレベル保証)に依存する セーフティクリティカルなアプリケーションにおいて、注入が利用できない場合の標準的な業界アプローチは、Arm独自のシリコン検証とSECDED ECCのアーキテクチャ保証に頼ることです。LS1028Aのデータシートには「パリティおよびECC保護された32KBのL1命令と32KBのL1データキャッシュ」および「1MBのL2キャッシュにECC保護付き」と記載されています。ARMのシリコン認定プロセスでは、IPレベルでのECCの正確性が対象となります。 4. 完全なBITカバレッジを実現するために、より新しいコアへの移行を検討する ソフトウェアインジェクタブルECC BITが必須条件(例:IEC 61508 / DO-254準拠)の場合、NXPの新しいCortex-A55ベースのSoC(例:i.MX 93)は、検証とデバッグのために明示的に設計された専用のECCエラー注入レジスタ(例: CODE_CACHE_TAG0_ECC_ERROR_INJEC 、 SYSTEM_CACHE_DATA0_ECC_ERROR_INJEC )を提供しています。A72→A55/A78AE移行経路はNXPが積極的にサポートしています。   よろしくお願いします。
查看全文
i.MXRT106x HAB 启动失败,HAB 日志停留在 AUTHENTICATION_STATUS,非标准 IVT 入口点 背景:我正在使用痞子衡开发的 NXP‑MCUBootUtility 为 i.MXRT106x 开发 HAB 签名。当我将固件二进制文件加载到该工具中时,它报告:**无法从可引导文件头中找到有效的中断向量表地址**。 使用十六进制编辑器检查二进制文件后: - IVT 入口点为 `0x20209401`,而映像加载基地址为 `0x20208000`,对应于文件偏移量 `0x1400`。 - 此代码段与启动相关的启动数据流相同,直到偏移量 `0x2000`。 - 通常情况下,IVT 条目应指向复位向量地址(参考示例指向偏移量 `0x2005`)。但在我的固件中,IVT 入口点指向偏移量 `0x1400`。我怀疑这是工具解析失败的根本原因。 对CST工作流程的进一步研究: 我理解 CST 签名的高级逻辑:在固件中找到一个空闲块,将 IVT CSF 指针设置为该位置,使用标准 CSF 模板,并修改 `[Authenticate Data]` 块部分来配置签名验证的起始地址和大小范围。 我的固件是一个完整的可启动映像,包含 FCB、IVT、DCD 和 BootData,它可以在没有 HAB 关闭的情况下在硬件上正常启动。 我将 CSF 模块配置如下: Blocks=0x20208000 0x1000 0x126c0 "my_firmware.bin" 同时更新了证书路径。 我运行了 CST v3.00.01 命令: cst.exe -i .\input_resign.csf -o sig.bin CST 执行完成,未出现任何错误,并生成了 `sig.bin`。 将输出结果与原始二进制文件进行比较,发现恰好有 2 处变化: 1. 更新 IVT 中偏移量为 `0x1018` 处的 CSF 指针字段。 2. CSF 签名数据附加在偏移量 `0x136c0` 处。 当我将此签名镜像刷入硬件时: 1.在 HAB 未关闭(SEC_CONFIG 未关闭)的情况下,固件运行完美。 2. 烧录 SRK 熔丝位并关闭 HAB 后,固件无法启动。 我通过 JTAG 从内存地址 `0x2020523c` 转储了长度为 256 字节的 HAB 日志,日志内容如下所示: ----------------------------------------------------------------------------------------- | Log Entry | Description ----------------------------------------------------------------------------------------- 0x00010002: BOOTMODE_INTERNAL 0x000200cc: SEC_CONFIG_CLOSED 0x00030001: DIR_BT_DIS_VALUE1 0x00040000: BT_FUSE_SEL_VALUE0 0x00050000: PRIM_IMAGE_SELECT 0x00060008: PRIM_BOOTDEVICE_FLEXSPI_NOR 0x00070000: DEVICE_INIT_CALL 0x000700f0: DEVICE_INIT_PASS 0x00090000: AUTHENTICATION_STATUS 我的问题: 1.实际的HAB事件代码在哪里?根据相关资料,HAB认证通过/失败应生成明确的事件代码。但是我的日志只记录到 `AUTHENTICATION_STATUS` 就停止了,没有后续事件条目。如何判断HAB认证是成功还是失败? 2. 我尝试了 `blhost` 工具,但找不到任何适用于 i.MXRT1061 的 HAB 日志读取命令。还有其他方法可以读取完整的有害藻华状态吗? 3. 我的签名流程是否有效?我的镜像使用了非标准的 IVT 入口点(指向偏移量 `0x1400` 而不是重置向量偏移量 `0x2005`)。这样的图像能否用 CST 正确进行 HAB 签名? 偏移量为 `0x1000` 处的附加 IVT 标头字节: D1 00 20 40 01 94 20 20 00 00 00 00 80 90 20 20 20 90 20 20 00 90 20 20 00 00 00 00 00 00 00 00 00 80 20 20 80 99 01 00 00 00 00 00 00 80 20 20 80 99 01 00 52 44 49 52 00 00 00 00 E4 B8 21 20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 D2 00 08 41 CC 00 04 04 CST 工具版本:3.00.01 Re: i.MXRT106x HAB closed boot fail, HAB log stops at AUTHENTICATION_STATUS, non‑standard IVT entry 嗨@eleven , 谢谢你的更新。首先,我认为我们应该确认 boot.bin 的第一个字节是 FCB 还是 IVT。如果是 FCB,可能仍然存在对准问题。 此外,本指南在读取和解释 HAB 故障代码的过程中应该会有所帮助: https://community.nxp.com/t5/i-MX-Security/HAB-event-in-a-Closed-i-MX-chip/ta-p/1120239 如果仍然无法找出问题的根本原因,使用 MCUBootUtility 直接生成 HAB 签名,然后运行二进制差异可能是交叉验证结果的另一种方法。 此致, 加文 Re: i.MXRT106x HAB closed boot fail, HAB log stops at AUTHENTICATION_STATUS, non‑standard IVT entry 嗨,加文, 非常感谢您的详细回复。我觉得我在之前的帖子中没有完整地描述我的测试设置。 我已经按照您的建议调整了模块配置。我两种都测试过了: Blocks = 0x20208000 0x1000 0x126c0 "my_firmware.bin" 并拆分成多个块条目进行身份验证,从 IVT 开始一直到固件结束: Blocks = 0x20209000 0x0 0x40 "启动.bin",\ 0x20209080 0x80 0xf80 "boot.bin",\ 0x2020a000 0x1000 0x11c00 "boot.bin" 我的目的是从 IVT 开始进行身份验证,一直到应用程序代码的末尾。然而,这些更改之后,启动行为仍然没有改变。 我使用的是 MCUBootUtility v6.5.1。其内置的启动日志分析和手动 JTAG 内存转储都给出了完全相同的日志结果。 另外,我了解到 或非 的最小启动偏移量为 0x1400。我想澄清的是:我的 IVT 入口点指向与启动相关的代码,而不是像参考示例中那样指向位于偏移量 0x2005 处的典型复位向量。 再次感谢您的指导。我将使用 sdphost 进行更多测试,以收集更多调试信息。希望我能从中获得更多线索。 此致, 十一 Re: i.MXRT106x HAB closed boot fail, HAB log stops at AUTHENTICATION_STATUS, non‑standard IVT entry 嗨@eleven , 根据您的 IVT 数据、CST 配置和 ROM 日志,我发现了一些潜在问题。 1. CST [Authenticate Data] Blocks 地址/偏移量不匹配(主要问题) 从你的图像中, BootData.start = 0x20208000 和 IVT.self = 0x20209000 建立了映射关系:文件偏移量 0x1000 对应于内存地址 0x20209000 ,而不是 0x20208000 。 CST Blocks 语法为 "file" 。您当前线路: Blocks = 0x20208000 0x1000 0x126c0 "my_firmware.bin" ← address/offset misaligned by 0x1000 使 CST 对文件偏移量 0x1000 处的数据进行签名,同时设备上的 HAB 验证 0x20208000 处的内存(= 文件偏移量 0)。两者偏移了 0x1000,因此签名永远不可能匹配。这就解释了“打开时启动,关闭时失败”:在打开模式下,HAB 验证失败只会记录下来(非致命的),而在关闭模式下,它会阻止执行。 使固定 : (sign from IVT): Blocks = 0x20209000 0x1000 0x126c0 "my_firmware_prepared.bin" 另外,在运行 CST 之前,请确保 IVT.csf 字段(偏移量 0x1018)已预先填充最终的 CSF 地址 0x2021b6c0 (= 0x20208000 + 0x136c0),然后签名,然后追加。签名后不要修改任何已签名的字节(IVT/BootData/DCD 都在已签名范围内);这样做也会破坏验证。 Q1: HAB事件代码在哪里?如何判断通过/不通过? 从 0x2020523c 读取的是 ROM 启动日志,而不是详细的 HAB 事件日志。在 RT10xx 上,每个条目都打包成一个 32 位字 (event_id<<16) | parameter ,参数位于低字节。 要了解详细的失败原因,请调用 HAB ROM API: report_status(&config,&state) 和 report_event(status,index,event,&bytes) 。根据 HAB4 API 参考手册附录 A 进行解码 Q2:blhost 无法读取 HAB 日志——还有其他方法吗? blhost 它与 Flashloader 通信,而不是直接与 BootROM 通信。i.MXRT BootROM 串行下载阶段仅支持 SDP(使用 sdphost )。选项: 建议:在应用程序处于打开状态时调用 HAB API,以读取/打印状态和事件。 通过 JTAG 从 0x2020523c 转储 256 字节(ROM 日志);或者使用 MCUBootUtility v6.3(sdphost 加载 flashloader,然后 blhost 读取内存)进行自动解析。 重要提示:当应用关闭且验证失败时,ROM 永远不会跳转到您的应用程序,因此应用内 report_event 无法运行。因此,标准流程必须是——首先确认 HAB_SUCCESS /Open 状态下没有事件,然后烧录 SEC_CONFIG 以关闭。 Q3:非标准 IVT 条目(偏移量 0x1400)能否进行 HAB 签名? 是的——这不是原因。对于 NOR 启动,i.MXRT BootROM 的最小偏移量为 0x1400(0x2000 只是一个推荐值)。 此致, 加文 Re: i.MXRT106x HAB closed boot fail, HAB log stops at AUTHENTICATION_STATUS, non‑standard IVT entry 很抱歉再次打扰您,但这个问题对我来说至关重要。 使用 sdphost 命令可以清楚地观察到 HAB 身份验证错误。然后我通过 JTAG 转储了早期内存区域,发现内存中没有任何固件内容。 进一步测试表明,即使是 NXP-MCUBootUtility 附带的官方演示项目,在配置为 NON-XIP 时也无法通过 HAB 签名验证。只有基于 XIP 的镜像才能正常工作。这个结果让我非常惊讶。 我怀疑我的 eFuse 寄存器配置可能有误。我的板没有启动模式 DIP 开关,所以我只将 boot_cfg 编程为 0x1A 并烧毁了 SRK 熔丝(请参考附件截图)。 QQ截图20260903101741.pngQQ截图20260903101741.png 我在这个领域还是个新手,可能犯了一些简单的错误。如有任何更正或建议,敬请不吝赐教。 期待您的回复,非常感谢。 Re: i.MXRT106x HAB closed boot fail, HAB log stops at AUTHENTICATION_STATUS, non‑standard IVT entry 嗨@eleven , 您的观察——即使是官方演示程序,在以非 XIP 方式构建时 HAB 也会失败,而以 XIP 方式构建则可以正常工作——似乎指向了以下根本原因: https://www.cnblogs.com/henjay724/p/18111727 RT1050/1060“非XIP + HAB”BootROM限制在这两款最早的设备上,BootROM保留了部分OCRAM(特别是 0x20280000–0x202BFFFF ),并且没有将其开放给HAB认证;其他RT设备没有此限制。您的映像加载到 OCRAM ( 0x20208000 ) 中,因此在 HAB 关闭时可以启动,但在 HAB 打开时验证失败,并且固件永远不会复制到内存中。这与您的脑脊液/阻滞无关,这就是为什么之前的改变没有效果的原因。 如果需要非 XIP 模式:请避开保留的 OCRAM 区域,改用外部同步动态随机存取存储器(SDRAM)。或者,根据上面链接中的指南,图像必须严格限制在 HAB 识别区域内。 关于熔丝(截图): 如果没有启动模式 DIP 开关,独立组网 \\(SA\\) 启动需要BT_FUSE_SEL = 1 ;否则启动配置未定义。 请根据您的使用案例,逐位验证您的 BOOT_CFG1=0x1A 和 Conf0=0x40 与 RT1060 RM 熔丝图。熔丝是一次性写入 (OTP) 的——请谨慎操作。 此致, 加文
查看全文
Read Google Smart Tag using PN7642 Hi Experts, I need your help to develop firmware to read a tag saved in an Android phone application inside Google Wallet. I haven't found any documents related to it or a tutorial video. Can you provide me a document on how to read a tag saved in a phone using MIFARE DESFire? I have already bought the PN76 evaluation board. Thanks & Regards, Yash Development Board Re: Read Google Smart Tag using PN7642 Hello sir, Unfortuantely, Goolge Wallet topics are quite restricted. This is a mass-market support channel and, we don't have the support resources to provide the proper information. I will have to kindly ask you to please contact your NXP sales. Still, for a direct support is recommended to please contact the MIFARE2GO team to the following mail: [email protected]
查看全文
使用 PN7642 读取 Google 智能标签 各位专家好, 我需要你的帮助来开发固件,以便读取保存在 Google Wallet 安卓手机应用程序中的标签。 我没有找到任何相关文档或教程视频。您能否提供一份关于如何使用 MIFARE DESFire 读取手机中保存的标签的文档?我已经购买了 PN76 评估板。 谢谢,此致敬礼! 亚什 开发板 Re: Read Google Smart Tag using PN7642 您好,先生, 遗憾的是,Google Wallet 的相关话题非常有限。 这是一个面向大众市场的支持渠道,我们没有足够的资源来提供正确的信息。请您联系恩智浦半导体的销售部门。不过,如需直接支持,建议您通过以下邮箱联系 MIFARE2GO 团队:[email protected]
查看全文
i.MXRT106x HAB がブートに失敗し、HAB ログが AUTHENTICATION_STATUS で停止します。非標準の IVT エントリ ポイントです。 背景:私は痞子衡氏が開発したNXP-MCUBootUtilityを使用して、i.MXRT106xのHABシグネチャに取り組んでいます。このツールにファームウェアのバイナリを読み込むと、次のように表示されます:**ブート可能なファイルヘッダーから有効な割り込みベクターテーブルアドレスが見つからない**。 バイナリを16進エディタで検査した後: - IVTエントリポイントは`0x20209401`、イメージロードベースアドレスは`0x20208000`で、これはファイルオフセット`0x1400`に対応します。 - このコードセグメントは、オフセット `0x2000` までのブート関連のブートデータフローと同一です。 - 通常、IVTエントリはリセットベクタアドレスを指す必要があります(参照例ではオフセット`0x2005`を指しています)。しかし、私のファームウェアでは、IVTエントリはオフセット`0x1400`を指しています。これがツール解析エラーの根本原因だと推測されます。 CSTワークフローに関するさらなる調査: CST署名の高レベルなロジックは理解しています。ファームウェア内の空きブロックを見つけ、IVT CSFポインタをこの場所に設定し、標準のCSFテンプレートを使用し、`[Authenticate Data]`ブロックセクションを変更して、署名検証の開始アドレスとサイズ範囲を設定します。 私のファームウェアは、FCB、IVT、DCD、およびブートデータを含む完全な起動可能なイメージであり、HABクロージャなしでハードウェア上で正常に起動します。 CSFブロックを以下のように設定しました。 Blocks=0x20208000 0x1000 0x126c0 "my_firmware.bin" また、証明書のパスもそれに合わせて更新しました。 CST v3.00.01 コマンドを実行しました。 cst.exe -i .\input_resign.csf -o sig.bin CSTの実行はエラーなく完了し、`sig.bin`が生成されました。 出力と元のバイナリを比較すると、正確には2つの変更点があります。 1. IVT内のオフセット`0x1018`にあるCSFポインタフィールドが更新されます。 2. CSFシグネチャデータはオフセット`0x136c0`に追加されます。 この署名済みイメージをハードウェアに書き込むと: 1.HABが閉じられていない(SEC_CONFIGが閉じられていない)場合、ファームウェアは正常に動作します。 2. SRKヒューズビットを書き込み、HABを閉じた後、ファームウェアが起動に失敗します。 JTAG経由でメモリアドレス`0x2020523c`から長さ256バイトのHABログをダンプしました。ログの内容は以下のとおりです。 ----------------------------------------------------------------------------------------- | Log Entry | Description ----------------------------------------------------------------------------------------- 0x00010002: BOOTMODE_INTERNAL 0x000200cc: SEC_CONFIG_CLOSED 0x00030001: DIR_BT_DIS_VALUE1 0x00040000: BT_FUSE_SEL_VALUE0 0x00050000: PRIM_IMAGE_SELECT 0x00060008: PRIM_BOOTDEVICE_FLEXSPI_NOR 0x00070000: DEVICE_INIT_CALL 0x000700f0: DEVICE_INIT_PASS 0x00090000: AUTHENTICATION_STATUS **私の質問:** 1.実際のHABイベントコードはどこにありますか?参考文献によると、HAB認証の合格/失敗は明示的なイベントコードを生成するはずです。しかし、私のログは『AUTHENTICATION_STATUS』で止まり、その後のイベントエントリーはありません。HAB認証が成功したか失敗したかをどうやって判断すればいいですか? 2. 「blhost」ツールを試しましたが、i.MXRT1061でHABログ読み取りコマンドが動作するのを見つけられません。HABの完全な状態を読み取る他の方法はありますか? 3. 私の署名ワークフローは有効か?私のイメージでは、非標準のIVTエントリポイントを使用しています(リセットベクタオフセット`0x2005`ではなく、オフセット`0x1400`を指しています)。このような画像はCSTで正しくHAB署名できますか? オフセット`0x1000`にある追加のIVTヘッダーバイト: D1 00 20 40 01 94 20 20 00 00 00 00 80 90 20 20 20 90 20 20 00 90 20 20 00 00 00 00 00 00 00 00 00 80 20 20 80 99 01 00 00 00 00 00 00 80 20 20 80 99 01 00 52 44 49 52 00 00 00 00 E4 B8 21 20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 D2 00 08 41 CC 00 04 04 CSTツールバージョン:3.00.01 Re: i.MXRT106x HAB closed boot fail, HAB log stops at AUTHENTICATION_STATUS, non‑standard IVT entry こんにちは、 @eleven さん。 最新情報のご提供ありがとうございます。まず、boot.binの最初のバイトがFCBなのかIVTなのかを確認する必要があると思います。FCBの場合、位置合わせの問題がまだ残っている可能性があります。 さらに、HAB障害コードの読み取りと解釈のプロセスにおいて、このガイドが役立つはずです。https: //community.nxp.com/t5/i-MX-Security/HAB-event-in-a-Closed-i-MX-chip/ta-p/1120239 それでも問題の根本原因を特定できない場合は、MCUBootUtilityを使用してHAB署名を直接生成し、バイナリ差分を実行することで、結果を相互検証できる可能性があります。 よろしくお願いします、 ギャビン Re: i.MXRT106x HAB closed boot fail, HAB log stops at AUTHENTICATION_STATUS, non‑standard IVT entry こんにちは、ギャビンさん。 詳細なご回答をいただき、誠にありがとうございました。最初の投稿で、テスト環境について十分に説明できていなかったと思います。 ご提案いただいたとおり、ブロック設定の調整は既に試してみました。私は両方を試しました。 ブロック = 0x20208000 0x1000 0x126c0 "my_firmware.bin" そして、IVTからファームウェアの最後まで認証を行うために、複数のブロックエントリに分割します。 ブロック = 0x20209000 0x0 0x40 "boot.bin",\ 0x20209080 0x80 0xf80 "boot.bin",\ 0x2020a000 0x1000 0x11c00 "boot.bin" 私の意図は、IVTからアプリケーションコードの最後まで認証することでした。しかし、これらの変更後も起動時の動作は変化しなかった。 私はMCUBootUtility v6.5.1を使用しています。内蔵のブートログ解析と手動のJTAGメモリダンプは、どちらも全く同じログ結果を示す。 また、NORフラッシュメモリの最小ブートオフセットは0x1400であると理解しています。私が明確にしたかったのは、私のIVTエントリポイントは、参照例に見られるようなオフセット0x2005にある一般的なリセットベクタではなく、ブート関連のコードを指しているということです。 ご指導いただき、改めて感謝申し上げます。デバッグ情報をさらに収集するために、sdphostを使用して追加のテストを実行します。そこからもっと手がかりが得られればいいのですが。 よろしくお願いします、 11 Re: i.MXRT106x HAB closed boot fail, HAB log stops at AUTHENTICATION_STATUS, non‑standard IVT entry こんにちは、 @eleven さん。 IVTデータ、CST構成、およびROMログに基づいて、いくつかの潜在的な問題点を特定しました。 1. CST [Authenticate Data] Blocks アドレス/オフセットの不一致(主要な問題) あなたの画像から、 BootData.start = 0x20208000 と IVT.self = 0x20209000 によってマッピングが確立されます。ファイルオフセット 0x1000 メモリアドレス 0x20209000 に対応し、 0x20208000 には対応しません。 CST Blocks の構文は "file" です。現在の回線: Blocks = 0x20208000 0x1000 0x126c0 "my_firmware.bin" ← address/offset misaligned by 0x1000 CSTはファイルオフセット 0x1000 のデータに署名し、デバイス上のHABは 0x20208000 (=ファイルオフセット0)のメモリを検証します。2つは4 0x1000でオフセットされているため、署名が一致することは決してありません。これはまさに「オープンモードでは起動し、クローズモードでは失敗する」という現象を説明しています。オープンモードでは、HAB検証の失敗はログに記録されるだけで(致命的ではない)、クローズモードでは実行がブロックされます。 修理 : (sign from IVT): Blocks = 0x20209000 0x1000 0x126c0 "my_firmware_prepared.bin" また、CST を実行する前に、IVT.csf フィールド (オフセット 0x1018) に最終的な CSF アドレス 0x2021b6c0 (= 0x20208000 + 0x136c0) が事前に設定されていることを確認し、その後署名し、追加します。署名後は署名済みバイトを変更しないでください(IVT/BootData/DCDはすべて署名範囲内です)。そうすると検証も壊れます。 Q1: HABイベントコードはどこにありますか?合否判定の方法は? 0x2020523c から読まれているのはROMブートログであって、詳細なHABイベントログではありません。RT10xxでは、各エントリは (event_id<<16) | parameter として単一の32ビットワードにパックされ、パラメータは下位バイトに格納されます。 詳細な失敗理由については、HAB ROM API: report_status(&config,&state) および report_event(status,index,event,&bytes) を呼び出してください。decode per HAB4 API リファレンス・マニュアル、付録A Q2:blhostがHABログを読み取れません — 他に方法はありますか? blhost ブートROMに直接ではなく、フラッシュローダーと通信します。i.MXRT BootROMのシリアルダウンロード段階はSDPのみをサポートしています( sdphost をご利用ください)。オプション: 推奨: オープン 状態のアプリケーションからHAB APIを呼び出して、ステータスやイベント情報を読み込み印刷してください。 JTAG (ROMログ) を介して 0x2020523c から 256 バイトをダンプするか、MCUBootUtility v6.3 (sdphost がフラッシュローダーをロードし、次に blhost がメモリを読み込む) を使用して自動解析を行います。 重要事項: クローズドで認証が失敗すると、ROMはアプリケーションにジャンプせず、アプリ内 report_event は実行できません。したがって、標準フローはまず開閉状態で HAB_SUCCESS /イベント情報なしを確認し、その後SEC_CONFIG燃焼して閉じる必要があります。 Q3: 非標準IVTエントリー(オフセット0x1400)はHAB署名できますか? はい、これは原因ではありません。NORブートの場合、i.MXRT BootROMの最小オフセットは0x1400です(0x2000は推奨値です)。 よろしくお願いします、 ギャビン Re: i.MXRT106x HAB closed boot fail, HAB log stops at AUTHENTICATION_STATUS, non‑standard IVT entry またお手数をおかけして申し訳ありませんが、この問題は私にとって非常に重要なのです。 sdphostコマンドを使ってHAB認証エラーを明確に観察できました。次にJTAG経由で初期メモリ領域をダンプしてみたところ、ファームウェアの内容はメモリ上に全く存在しないことがわかった。 さらなるテストの結果、NXP-MCUBootUtilityに同梱されている公式デモプロジェクトでさえ、NON-XIPとして構成した場合、HAB署名に失敗することが判明した。XIPベースのイメージのみが正常に動作します。この結果にはとても驚きました。 私のeFuseレジスタの設定に間違いがあるのではないかと考えています。私のボードにはブートモードのDIPスイッチがないため、boot_cfgを0x1AにしてSRKヒューズを焼き切っただけです(添付のスクリーンショットを参照してください)。 QQ截图20260903101741.pngQQ截图20260903101741.png 私はこの分野の初心者なので、単純なミスをしているかもしれません。訂正やご提案があれば、ぜひお聞かせください。 ご返信をお待ちしております。よろしくお願いいたします。 Re: i.MXRT106x HAB closed boot fail, HAB log stops at AUTHENTICATION_STATUS, non‑standard IVT entry こんにちは、 @eleven さん。 あなたの指摘(公式デモでさえ、非XIPでビルドするとHABが失敗し、XIPでビルドすると動作する)は、以下の記事の根本原因を示しているようです: https://www.cnblogs.com/henjay724/p/18111727 RT1050/1060「Non-XIP + HAB」ブートROM制限 これら2つの初期デバイスでは、BootROMはOCRAMの一部(特に 0x20280000–0x202BFFFF )を予約し、HAB認証には開放しません。他のRTデバイスにはこの制限はありません。イメージはOCRAM( 0x20208000 )に読み込まれるので、HABをオフにして起動しますが、HABオンの状態で検証に失敗し、ファームウェアはメモリにコピーされません。これは脳脊髄液/ブロックとは無関係であるため、以前の変更は効果がなかったのです。 非XIPが必要な場合は、予約済みのOCRAM領域を避け、代わりに外部SDRAMを使用してください。あるいは、上記のリンク先のガイドによると、画像は有害藻類ブルームの認識領域内に厳密に限定されなければならない。 ヒューズについて(スクリーンショット): ブートモードのディップ・スイッチがない場合、スタンドアロン起動には BT_FUSE_SEL = 1が必要です。そうでなければ起動構成は定義されていません。 また、 BOOT_CFG1=0x1A と Conf0=0x40 をRT1060 RMのヒューズマップと比較してビットごとに検証してください。ヒューズはOTP(一度書き込み可能)です。慎重に作業を進めてください。 よろしくお願いします、 ギャビン
查看全文