Multi Source Translation Content

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

Multi Source Translation Content

ディスカッション

ソート順:
Creating Virtual Scenes & Scenarios with MathWorks (RoadRunner & Unreal Engine)   1 Table of Contents • Introduction • Context • Component Overview • Design and Implementation • Results • Common Pitfalls & Troubleshooting • Summary & Next Steps • References 2 Introduction This article explains how virtual scenes and driving scenarios can be created and used within a Model-Based Design workflow using MathWorks tools. It focuses on how MATLAB® and Simulink® integrate with RoadRunner and Unreal Engine to enable realistic, repeatable, and scalable simulation environments for developing and validating advanced automotive systems. The article is aligned with the NXP Model-Based Design Toolbox (MBDT) workflow and targets users working on control, perception, and system-level validation. In our demo setup, the same workflow presented in this article was applied to build a Driver-in-the-Loop simulation scenario. By leveraging MATLAB®, Simulink®, RoadRunner, and Unreal Engine, we created a realistic virtual environment that allowed direct interaction with the system running on NXP hardware. This approach highlights the practical value of these simulations, not only for early validation and testing, but also for closing the loop between model-based design and real-time execution on target hardware, enabling faster iteration, safer validation, and improved system reliability. 3 Context As automotive systems become more complex, early validation is increasingly important. Engineers must assess advanced functionality under tight development timelines, often before hardware is available. Model-Based Design supports this need by enabling system logic and behavior to be verified early using executable models. Virtual scenes extend this approach by embedding those models in realistic, controlled environments that reflect real-world operating conditions. Within an NXP-based development workflow, virtual scenes enable teams to explore a wide range of driving situations quickly, safely, and repeatably. Complete applications can be evaluated at Model-in-the-Loop (MIL), Software-in-the-Loop (SIL), and Processor-in-the-Loop (PIL) stages, helping uncover issues early and reducing risk before hardware integration. This structured use of virtual validation supports smoother transitions from simulation to deployment on automotive microcontrollers. 4 Component Overview Creating and using virtual scenes with MathWorks relies on several tightly integrated components: MATLAB and Simulink – used for algorithm development, control logic, and system modeling. RoadRunner – a dedicated environment for building detailed road networks, traffic infrastructure, and driving scenarios. Unreal Engine – responsible for high-fidelity 3D visualization and sensor realism. Simulation interfaces – enabling data exchange between Simulink, RoadRunner, and Unreal Engine during runtime. 5 Design and Implementation This section describes the design principles and implementation flow used to create virtual scenes and scenarios. The process emphasizes modularity, repeatability, and tight integration with control and system models. 5.1 System Requirements The following prerequisites must be satisfied to build and execute virtual scenes with MATLAB and Simulink and follow our path: MATLAB and Simulink with Automated Driving Toolbox and Simulink 3D Animation Toolbox installed. RoadRunner. Adequate GPU resources for real-time rendering and sensor simulation. These requirements ensure smooth interaction between simulation models and the visualization environment. 5.2 Architecture & Model Description At a higher level, the architecture consists of a Simulink model acting as the system under test, connected to a virtual world generated by RoadRunner and Unreal Engine. The Simulink model publishes vehicle states and receives environmental feedback, such as lane boundaries, traffic participants, or sensor detections. Clear interface definition between the model and the virtual environment is essential. Signals representing vehicle position, velocity, and actuator commands are exchanged at each simulation step, enabling closed-loop execution. vladmitroi_0-1782905875750.png 5.3 MATLAB/Simulink Implementation Connecting to RoadRunner and Loading a Scenario MATLAB connects directly to RoadRunner to open projects and load driving scenarios: % Launch RoadRunner and open a project rrApp = roadrunner('C:\RoadRunnerProjects\VirtualScenes'); openProject(rrApp, 'HelloWorld_Project'); % Open a RoadRunner scenario and start simulation scenarioName = 'Intersection_CrossTraffic'; openScenario(rrApp, scenarioName); rrSim = createSimulation(rrApp); start(rrSim); Integrating RoadRunner with Simulink Once configured, Simulink and RoadRunner run synchronously. RoadRunner updates the virtual environment, while Simulink computes vehicle behavior and control actions. sim('ConfiguredVirtualVehicleModel'); close(rrApp); 5.4 Integration (RoadRunner ↔ Unreal Engine) RoadRunner is used to design road geometry, traffic signs, intersections, and actor paths. These assets are exported to Unreal Engine, which provides photorealistic rendering and sensor simulation. % Open the Simulink model open_system('ConfiguredVirtualVehicleModel'); % Path to the RoadRunner project containing the scene scenarioPathFull = 'C:\RoadRunnerProjects\VirtualScenes\HelloWorld_Project'; % Configure the Simulation 3D Scene Configuration block set_param('ConfiguredVirtualVehicleModel/Visualization/3D Engine/3D Engine/Simulation 3D Scene Configuration', ... 'RoadRunnerProjectPath', scenarioPathFull); vladmitroi_0-1782905795216.png 5.5 Creating a Custom Scene from Real Map Data Custom scenes can be created by importing real-world map data into RoadRunner. Geographic information such as road layouts and elevation profiles can be converted into editable road networks. This is an example of how to create a custom scene for recreating the Silverstone Racing Circuit in RoadRunner, using OpenStreetMap and Driving Scenario Designer. (function() { var wrapper = document.getElementById('lia-vid-6399904467112w960h540r872'); var videoEl = wrapper ? wrapper.querySelector('video-js') : null; if (videoEl) { if (window.videojs) { window.videojs(videoEl).ready(function() { this.on('loadedmetadata', function() { this.el().querySelectorAll('.vjs-load-progress div[data-start]').forEach(function(bar) { bar.setAttribute('role', 'presentation'); bar.setAttribute('aria-hidden', 'true'); }); }); }); } }})(); (view in My Videos) And the result using Simulink 3D with Unreal Engine. vladmitroi_1-1782906964231.png vladmitroi_2-1782906974722.png 5.6 Testing & Validation Once scenarios are defined, automated simulation runs can be executed to validate system behavior across multiple variants. Key metrics such as trajectory tracking, sensor coverage, and control stability can be evaluated offline. This systematic testing approach increases confidence before integrating software with NXP hardware targets. (function() { var wrapper = document.getElementById('lia-vid-6399905825112w960h540r143'); var videoEl = wrapper ? wrapper.querySelector('video-js') : null; if (videoEl) { if (window.videojs) { window.videojs(videoEl).ready(function() { this.on('loadedmetadata', function() { this.el().querySelectorAll('.vjs-load-progress div[data-start]').forEach(function(bar) { bar.setAttribute('role', 'presentation'); bar.setAttribute('aria-hidden', 'true'); }); }); }); } }})(); (view in My Videos) 6 Results Using virtual scenes significantly reduces development time. Engineers can identify functional issues early, explore edge cases, and refine algorithms without hardware constraints. In practice, this results in higher software quality at the time of hardware deployment and a smoother transition to real-world testing. 7 Common Pitfalls & Troubleshooting Simulation time overhead can become noticeable when RoadRunner scenes are used directly in the Simulation 3D Scene Configuration block, as Unreal Engine re-imports RoadRunner assets at the start of each simulation. While this is well suited for iterative development and scene refinement, it can slow down repeated runs. Note: For final validation or deployment-oriented testing, improved performance can be achieved by using a precompiled Unreal Engine project, which avoids repeated asset import and significantly reduces startup time. In addition, repeatedly launching RoadRunner for each simulation introduces unnecessary overhead. A recommended practice is to keep RoadRunner running across multiple simulations and reuse the existing connection. This can be achieved using the RoadRunner roadrunner.connect API, allowing MATLAB and Simulink to reconnect to an active RoadRunner instance instead of restarting it for every run, thereby improving iteration speed and overall workflow efficiency. 8 Summary & Next Steps Virtual scenes turn simulation into experience. Combined with an NXP Model-Based Design workflow, MathWorks tools enable engineers to innovate faster, validating complex behavior early while reducing risk, cost, and development effort. Next, these environments can be expanded with high-fidelity sensor models, automated regression testing, and hardware-in-the-loop execution, closing the gap between virtual validation and real-world deployment. 9 References Import OpenStreetMap Data into Driving Scenario — MathWorks Help Driving Scenario Designer App — MathWorks Help RoadRunner — MathWorks Product Page Simulink 3D Animation Toolbox — MathWorks Help OpenStreetMap Automated Driving Toolbox — MathWorks Product Page Visualize 3D Scenes with Unreal Engine — MathWorks Help roadrunner.connect API — MathWorks Help NXP Model-Based Design Toolbox — Community
記事全体を表示
S32K388 MemAcc 消去 PFLASH がフリーズ こんにちは!MemAcc_Example_S32K388を使用し、DFLASHをPFLASHに変更しました。しかし、pFlashを消去すると、MEMACC_JOB_PENDING == MemAcc_GetJobStatus(TEST_AREA)で処理が停止してしまいます。 TEST_AREAを1に設定することで、比較プログラムを修正しました。 こちらが修正されたプログラムです。私のミスを見つけて指摘してくれることを願っています。とても感謝します。 S32K3 Re: S32K388 Use MemAcc Erase PFLASH Stuck こんにちは@zhangyu5454さん 一つ問題があります。接頭辞が間違っています。正しくは Mem_43_INFLS です。 danielmartynek_0-1783597121888.png Re: S32K388 Use MemAcc Erase PFLASH Stuck Mem_43_INFLSに変更しようとしましたが、それでも動作しませんでした。ルーチンのDFLASHでMem_43_INFLSをabc123に変更したら、普通に動作します。ついにMemAcc Mem InvocationのDIRECT_STATIC それをINDIRECT STATICに変えれば問題が解決します
記事全体を表示
MPC574xP BCTRL こんにちは: 私のお客様はMPC5741Pを車載ESCのアプリケーションに使っています。 現在、エンドOEMからBCTRLピンの特性(電圧領域など)について問い合わせを受けている。 確認と確認を手伝ってもらえますか?ありがとう。 下は波形で、三角形で、OEMからMCU側からベースコントロール出力ピンのCap.デカップルを追加してほしいと依頼されました。 BoxLi_0-1783050842506.png Re: MPC574xP BCTRL データシートでは異なるトランジスタを推奨しており、以下の通りです。 davidtosenovjan_0-1783063352184.png また、適切にバイパス/分離する必要がある。VDD_LV_CORに特に注意してください。 davidtosenovjan_1-1783063654558.png Re: MPC574xP BCTRL こんにちは、デビッドさん。 了解しました、ありがとうございます。
記事全体を表示
S32K3 bootloader and HSE - best practice ? Hi NXP team, We are implementing a robust OTA update architecture on an S32K312 using HSE full-block A/B swap. Our target architecture is: - S32K312 with 2 MB PFlash split into two 1 MB physical blocks. - HSE AB_SWAP is used via the passive-block activation service. - OTA package is received over Modbus/serial. - Bootloader stages the signed image into the passive PFlash block. - HSE verifies the passive image/SMR. - Bootloader requests AP_SWAP. - After reset, the newly swapped bank boots provisionally. - A confirm command makes the swap permanent; otherwise the device rolls back. Originally we tried to keep one global bootloader in DFlash, outside the two PFlash banks. That bootloader would receive OTA, program the passive PFlash bank, request HSE AP_SWAP, and then continue to manage confirm/rollback. We ran into architectural and runtime complexity with that approach: 1. HSE AB_SWAP appears to operate on full PFlash block boundaries, not arbitrary app partitions. 2. A single DFlash bootloader is outside the swapped/authenticated bank image. 3. The active PFlash bank still needs valid boot/IVT/reset structure after swap. 4. We had difficult execution hazards when DFlash was also involved in bootloader runtime/record handling. 5. It became unclear whether a global DFlash bootloader is compatible with a clean full-bank HSE AB_SWAP production design. We therefore moved to a duplicated PFlash bootloader mode for now: - Each 1 MB PFlash bank contains its own IVT + bootloader + application. - The bootloader has a reserved slot at the base of each bank. - The application starts after the bootloader slot. - The signed OTA image is a full bank image containing bootloader + application. - After HSE AB_SWAP, the newly active bank is self-contained and bootable. This appears much cleaner for HSE full-block A/B swap, but I would like to confirm the intended/production-safe approach. This is suboptimal as it partially defeats the purpose of a factory bootloader. Questions: 1. For S32K312 HSE AB_SWAP, is a single global DFlash-resident bootloader outside the swapped PFlash banks a supported/recommended architecture? 2. Or does HSE AB_SWAP effectively require/recommend that each swapped PFlash block be independently bootable, with its own IVT/bootloader/reset path? 3. If a DFlash bootloader is possible, how should the post-swap boot flow be structured so SBAF/HSE boot expectations are still met? 4. Are there any NXP reference examples showing a DFlash bootloader managing full-block HSE AB_SWAP on S32K3? 5. For production OTA with rollback/confirm semantics, is the duplicated PFlash bootloader model the safer intended design? We have seen that code and IVT can be linked into DFlash by modifying the linker script (and we tried that), but our question is specifically about whether that is appropriate when using HSE full-block A/B swap and secure boot/SMR verification. Thank you. Re: S32K3 bootloader and HSE - best practice ? Hi @coratron  1. For S32K312 HSE AB_SWAP, is a single global DFlash-resident bootloader outside the swapped PFlash banks a supported/recommended architecture? There are no limitations from HW point of view. Both options are possible. If the size of data flash is sufficient and you do not plan to use it for your data, the bootloader can be placed in the data flash. If you need data flash for other purposes then having two copies of the bootloader in both partitions is common practice. 2. Or does HSE AB_SWAP effectively require/recommend that each swapped PFlash block be independently bootable, with its own IVT/bootloader/reset path? No, there’s no such requirement. It is sufficient to have valid IVT only in data flash (bootloader’s IVT). Common practice is that bootloader is always started after reset and then then the bootloader jumps to user application. 3. If a DFlash bootloader is possible, how should the post-swap boot flow be structured so SBAF/HSE boot expectations are still met? There are no specific requirements coming from SBAF or HSE. Once bootloader is started, it can decide if it should jump to application or if it should download new application or if it should do rollback, etc. and then it should reset the device (in case of rollback/swap) or jump to the application. 4. Are there any NXP reference examples showing a DFlash bootloader managing full-block HSE AB_SWAP on S32K3? We don’t have such example. 5. For production OTA with rollback/confirm semantics, is the duplicated PFlash bootloader model the safer intended design? I would not classify either approach as universally safer. The suitability of a particular architecture depends on the overall system design, security requirements, OTA workflow and rollback strategy. Both concepts can be implemented in a robust production solution. Regards, Lukas Re: S32K3 bootloader and HSE - best practice ? Thanks for your prompt reply @lukaszadrapa . That clarifies and helps substantially - we have been able to re-evaluate our bootloader implementation in DFlash and were successful. The team is used to the documentation / accessibility from other vendors and finds NXP to be surprisingly confusing compared to them despite being a leader in automotive applications. Your prompt feedback makes up for these gaps, so thanks again for your help - much appreciated. I will mark your reply as the solution, with the following feedback directed at your team: - A Dflash bootloader + HSE demo would have been great to save time (yours included). I am sure this is the natural setup for people that use AB_SWAP. - NXP should unify and get the documentation and software stack organised (long term) - compatibility / versions are scattered, there is no one source of information which leads to confusion. Regards 
記事全体を表示
WhisperはNPU上で動作しています こんにちは、 私は95 i.MX でCPUに縛られたささやきを動かしています NPUを使ってプロセッシング速度を上げる方法はありますか?opsetは主にCNN向けのようですが、いずれにせよ聞いてみる価値はあるでしょう。 具体的な例を見たことがないので、可能かどうかは分かりません(NPUはCNN専用のようですが?)。 既にこれをやった人はいますか?何か例はありますか?
記事全体を表示
RT1064:引脚配置,用于从内部闪存启动 你好, 这可能听起来像个愚蠢/新手问题,但我无法确定必须对 BOOT_MODE1/BOOT_MODE0 和 BT_CFG[11..0] 引脚进行哪些操作才能将 RT1064 配置为从其内部闪存启动。 参考手册中的表 9.9 只列出了 3 种启动源(通过 FlexSPI 的 NOR 闪存、SD 卡和 eMMC),但没有列出内部闪存,就好像这部分内容是从 RT1060 复制粘贴过来的一样…… AN12290 提到了 FlexSPI2 内部总线到此内部闪存,但没有说明如何从上述 3 个启动源中选择它。 MIMXRT1060/1064 评估套件板硬件用户指南中的表 5 指出,只有两种启动模式可用(QSPI 或 SD 卡),并且还声称不支持 QSPI 启动(参见 2.7 段),因此 SD 卡是唯一的启动源…… 非常感谢您的帮助! i.MX RT106x Re: RT1064 : pin configuration to boot from internal flash 嗨@batmat , 如 AN12290 中所述,MIMXRT1064 只能从 FlexSPI2 启动,FlexSPI2 专用于内部 QSPI 闪存。您仍然可以通过 FlexSPI1 接口连接外部闪存,该接口可用于保存数据或其他功能,但不能用于启动。这就是为什么参考手册中的表 9.9 只列出了 3 个启动源,即通过 FlexSPI 的 NOR 闪存、SDCARD 或 eMMC;通过 FlexSPI2 的 NOR 闪存是唯一可用于启动的 FlexSPI,并且默认情况下它已经路由到板载闪存。 为了能够从内部 QSPI 闪存启动,引导设备开关 (SW7) 设置应为: SW7-1 关闭,SW7-2 关闭,SW7-3 打开,SW7-4 关闭。 BOOT_CFG1[7:4] 引脚必须设置为 0,才能选择通过 FlexSPI 的串行 或非 启动作为引导设备。同时,BOOT_CFG2[2:0]引脚也必须设置为0,以便选择内部QSPI Flash。MIMXRT1064-EVK 默认具有这些引脚设置。 BR, 埃德温。 Re: RT1064 : pin configuration to boot from internal flash 你好,埃德温, 确实有道理。我感到很困惑,因为外部闪存和内部闪存都是 QSPI 接口的,很难确定哪个是哪个。 我建议对 RT1064 的表 9.9 进行文档改进。 应该将“通过 FlexSPI 启动 NOR 闪存”改为“通过内部 FlexSPI2 启动内部 NOR 闪存”,并补充说明“RT1064 不支持通过 FlexSPI 从外部 NOR 闪存启动”。 我认为这样可以避免混淆。 再次感谢您提供的出色且及时的支持。
記事全体を表示
RT1064:内部フラッシュから起動するためのピン構成 こんにちは、 これは初心者や初心者の質問に聞こえるかもしれませんが、RT1064を内蔵フラッシュメモリから起動させるためにBOOT_MODE1/BOOT_MODE0とBT_CFG[11..0]ピンで何をすべきか正確にはわかりません。 参考マニュアルの表9.9には、3つのブートソース(FlexSPI経由のNORフラッシュ、SDCARD、eMMC)のみが記載されていますが、内部フラッシュは記載されていません。まるでこのセクションがRT1060からコピー&ペーストされたかのようです... AN12290はこの内部フラッシュへのFlexSPI2内部バスについて言及していますが、上記の3つの起動ソースで選択する方法は示していません。 MIMXRT1060/1064 Evaluation Kit Board Hardware ユーザーガイドの表5では、起動モードはQSPIかSDCARDの2種類のみが利用可能であり、QSPIブートは利用できないと主張しています(2.7段落からの注釈)、SDカードのみが唯一の起動源となっています... どんなご支援でも大変ありがたく思います。 i.MXRT 106x Re: RT1064 : pin configuration to boot from internal flash こんにちは、 @batmat さん。 AN12290で述べたように、MIMXRT1064では、内部QSPIフラッシュ専用のFlexSPI2からのみブートが可能です。外部フラッシュはFlexSPI1インターフェース経由で接続でき、起動以外のデータ保存やその他の機能に使えます。このため、リファレンス・マニュアルの表9.9には、3つのブートソースのみが記載されています。NORフラッシュ(FlexSPI、SDCARD、またはeMMC)、FlexSPI2経由のNORフラッシュが起動時に唯一利用可能なFlexSPIで、デフォルトでオンボードフラッシュにルーティングされています。 内部QSPIフラッシュから起動するためには、ブートデバイススイッチ(SW7)の設定は以下の通りであるべきです。 SW7-1 オフ、SW7-2 オフ、SW7-3 オン、SW7-4 オフ。 ブートデバイスとしてFlexSPI経由のシリアルNORブートを選択するには、BOOT_CFG1[7:4]ピンを0に設定する必要があります。また、BOOT_CFG2[2:0]ピンも0に設定しなければならず、内部のQSPIフラッシュが選択されます。MIMXRT1064-EVKは、デフォルトで以下のピン設定になっています。 BR、 エドウィン。 Re: RT1064 : pin configuration to boot from internal flash こんにちは、エドウィンさん。 確かにその通りだ。外部フラッシュと内部フラッシュの両方がQSPI対応なので、どちらがどちらなのか判別しづらくて混乱しました。 RT1064の表9.9のドキュメント進化を提案します。 「FlexSPIを経由したNORフラッシュ」ではなく、「FlexSPI2を経由した内部NORフラッシュ」と記載し、「FlexSPIを経由した外部NORフラッシュからの起動はRT1064では利用できません」と付け加えるべきです。 こうすれば混乱を避けられると思う。 改めて、素晴らしく迅速なサポートに感謝します。
記事全体を表示
マイルストーン搭載のimx8mp h264/h265エンコーダーを緊急募集 mimx8mp h264ビデオエンコーダーはマイルストーンでは実行されません ffprobe -v error -show_streams -i でビデオをテストしたとき 出力の1つにhas_b_frames=2 、SPS/PPSがあり、これがマイルストーンがビデオを表示しない原因になっていると推測されます。 これはHantroエンコーダーによって生成されたものですが、 has_b_frames=0に設定する方法が見つかりませんでした。 他のH264エンコーダーでは問題なく動作します エンコードストリームを に has_b_frames=0 にする方法について教えてください Re: Urgent imx8mp h264/h265 encoder with milestone こんにちは、 @itamarlevit さん。 i.MX8MPでの正確なエンコードコマンド/パイプラインを教えてください。 よろしくお願いします、 志明
記事全体を表示
JLink Debug Authentication Hello all, Im following a project based on the MCXN947 (frdm_mcxn947 board) and we need to setup the debug authentication and signed firmware validation before sending it to the client for testing, but im very unsure about two things. Is the debug authentication restricted to the "in-field" case? where the MCU is permanently locked with keys and security configuration burned in OTP? I dont want to risk permanently breaking the only board i have If i set up the debug authentication feature, then is it still possible to connect and debug code with the on board debugger? Im debugging with VSCode with a Jlink debug .launch config, how do i add the security artefacts for enabling the debug authentication? It would be great if someone that has already tackled the thing can shed some light on how to proceed, because i only see the AN14162 being referred to and not much else in terms of documentation MCXN Security(Edgelock | secure boot | OTP) Re: JLink Debug Authentication Hello @raimbowgeddon  1. Is the debug authentication restricted to the "in-field" case? where the MCU is permanently locked with keys and security configuration burned in OTP? I dont want to risk permanently breaking the only board i have ->>No, the debug authentication is not only for "in-fileld" casse. It can be tested during development. Config it on CMPA part, not in OTP. 2. If i set up the debug authentication feature, then is it still possible to connect and debug code with the on board debugger? Im debugging with VSCode with a Jlink debug .launch config, how do i add the security artefacts for enabling the debug authentication? ->>Yes. After debug authentication is enabled, you normally cannot just start a normal J-Link session as before. You must first run the debug authentication challenge-response flow, then connect your debugger. There is a video that shows the steps for configuring and using Debug Authentication on the MCXN947. I'm not sure whether you can access it: https://www.bilibili.com/video/BV13EhAzdEzV/?spm_id_from=333.1387.homepage.video_card.click  Thank you. BR Alice Re: JLink Debug Authentication Hello @Alice_Yang, Sorry for the delayed response, i've been caught up with some other urgent work. I just followed the directions given by the video you linked, and it seems to be working! I was missing the piece about unlocking the device from the tool and then simply attaching with the debugger. I also tried to overwrite the image with another one and it works, besides a warning about CFPA region not being written, but i cannot seem to be able to do a flash erase, even if debug authentication step was done, is this expected? Does it mean that now the board will permanently be secured? Is there no way to make the board return to the factory settings now? Thank you so much for the help FS
記事全体を表示
MPC574xP BCTRL Hi: My customer is using MPC5741P for Auto ESC application. Currently, they were asked by the end OEM about BCTRL pin characteristics, such as voltage region.  Could you help check and confirm it? Thanks. Below is the waveform, it's triangle, and  OEM asked to add decouple Cap. on base control output pin from MCU side.  BoxLi_0-1783050842506.png Re: MPC574xP BCTRL Datasheets recommend different transistor as you can see below: davidtosenovjan_0-1783063352184.png Also it needs to be properly bypassed/decoupled. Pay attention mainly to VDD_LV_COR: davidtosenovjan_1-1783063654558.png Re: MPC574xP BCTRL Hi David: Got it, thanks.
記事全体を表示
S32K3ブートローダーとHSE - ベストプラクティスとは? こんにちは、NXPチームの皆様、 当社は、HSEのフルブロックA/Bスワップを使用して、S32K312上で堅牢なOTAアップデートアーキテクチャを実装しています。 我々の目標とするアーキテクチャは以下のとおりです。 - S32K312は、2MBのPFlashを2つの1MBの物理ブロックに分割して搭載しています。 - HSE AB_SWAPは、パッシブブロックのアクティベーションサービスを介して使用されます。 - OTAパッケージはModbus/シリアル経由で受信されます。 - ブートローダーは署名付きイメージをパッシブPFlashブロックに段階化します。 - HSEは受動イメージ/SMRを検証します。 - ブートローダーがAP_SWAPを要求します。 リセット後、新しく交換されたバンクは暫定的に起動します。 確認コマンドを実行すると、スワップが永続的に適用されます。そうでない場合は、デバイスはロールバックされます。 当初は、2つのPFlashバンクとは別に、DFlashに1つのグローバルブートローダーを配置しようと試みました。そのブートローダーはOTAを受信し、パッシブPFlashバンクをプログラムし、HSE AP_SWAPを要求し、その後、確認/ロールバックの管理を継続します。 そのアプローチでは、アーキテクチャと実行時の複雑さという問題に直面しました。 1. HSE AB_SWAP は、任意のアプリケーション パーティションではなく、PFlash ブロックの境界全体で動作するようです。 2. 単一のDFlashブートローダーは、スワップ/認証済みバンクイメージの外にあります。 3. アクティブなPFlashバンクは、スワップ後も有効なブート/IVT/リセット構造を必要とします。 4. DFlashがブートローダーの実行時/レコード処理にも関与していた場合、実行時に重大なハザードが発生しました。 5.グローバルDFlashブートローダーがクリーンなフルバンクのHSE AB_SWAP生産設計と互換性があるかどうかは不明瞭になりました。 そのため、当面はPFlashブートローダーを複製したモードに移行しました。 - 各1MBのPFlashバンクには独自のIVT + ブートローダー+アプリケーションが含まれています。 - ブートローダーは、各バンクの底部に予約済みのスロットを持っています。 - アプリケーションはブートローダースロットの後に起動します。 - 署名付きOTAイメージは、ブートローダー+アプリケーションを含むフルバンクイメージです。 - HSE AB_SWAP実行後、新たにアクティブになったバンクは自己完結型でブート可能です。 HSEのフルブロックA/Bスワップには、この方法の方がはるかにクリーンに見えますが、意図された、かつ生産上安全な方法であることを確認したいと思います。これは、工場出荷時のブートローダーの目的を部分的に損なうため、最適とは言えません。 質問: 1.S32K312 HSE AB_SWAPの場合、スワップされたPFlashバンクの外に単一のグローバルDFlash常駐ブートローダーを配置するアーキテクチャは、サポート/推奨されていますか? 2. あるいは、HSE AB_SWAPは、交換された各PFlashブロックが、独自のIVT/ブートローダー/リセットパスを持ち、独立してブート可能であることを実質的に要求/推奨しているのでしょうか? 3.もしDFlashブートローダーが可能なら、SBAF/HSEブートの期待に応えられるように、スワップ後のブートフローはどのように構成すべきでしょうか? 4. S32K3上でDFlashブートローダーがフルブロックHSE AB_SWAPを管理することを示したNXPの参考例はありますか? 5.ロールバックや確認セマンティクスを持つ本番OTAの場合、複製されたPFlashブートローダーモデルの方が安全な設計でしょうか? コードとIVTをリンカースクリプトを改変することでDFlashにリンクできるという話は見ており(私たちも試しました)、しかし私たちの質問は、HSEのフルブロックA/Bスワップやセキュアブート/SMR検証を使う場合にそれが適切かどうかについてです。 よろしくお願いします。 Re: S32K3 bootloader and HSE - best practice ? こんにちは、 @coratron さん。 1.S32K312 HSE AB_SWAPの場合、スワップされたPFlashバンクの外に単一のグローバルDFlash常駐ブートローダーを配置するアーキテクチャは、サポート/推奨されていますか? ハードウェアの観点からは、何の制限もありません。どちらの選択肢も可能である。データフラッシュのサイズが十分で、データに使う予定がない場合は、ブートローダーをデータフラッシュに配置できます。データフラッシュを他の用途で使用する必要がある場合は、両方のパーティションにブートローダーのコピーを2つずつ用意するのが一般的な方法です。 2. あるいは、HSE AB_SWAPは、交換された各PFlashブロックが、独自のIVT/ブートローダー/リセットパスを持ち、独立してブート可能であることを実質的に要求/推奨しているのでしょうか? いいえ、そのような要件はありません。データフラッシュ(ブートローダーのIVT)に有効なIVTがあれば十分です。一般的な慣習としては、リセット後にブートローダーが起動され、その後ブートローダーがユーザーアプリケーションにジャンプします。 3. もしDFlashブートローダーが可能なら、SBAF/HSEのブート期待を満たすように、スワップ後のブートフローはどのように構成すべきか? SBAFまたはHSEからの具体的な要件はありません。ブートローダーが起動すると、アプリケーションにジャンプするか、新しいアプリケーションをダウンロードするか、ロールバックを行うかなどを判断し、その後(ロールバックやスワップの場合に)デバイスをリセットするか、アプリケーションにジャンプします。 4. S32K3上でフルブロックHSE AB_SWAPを管理するDFlashブートローダーを示すNXPのリファレンスサンプルはありますか? そのような例はありません。 5. ロールバック/確認セマンティクスを持つ本番OTAの場合、複製されたPFlashブートローダーモデルは意図された設計の方が安全なのでしょうか? どちらの方法も、普遍的に安全だと断言することはできません。特定のアーキテクチャの適性は、全体のシステム設計、セキュリティ要件、OTAワークフロー、ロールバック戦略に依存します。両概念は堅牢な本番環境で実装可能です。 よろしくお願いいたします。 ルーカス Re: S32K3 bootloader and HSE - best practice ? @lukaszadrapa さん、迅速なご返信ありがとうございます。これにより状況が明確になり、大いに役立ちました。DFlashにおけるブートローダーの実装を再評価することができ、成功しました。 チームは他のベンダーのドキュメントやアクセス性に慣れており、オートモーティブ アプリケーションのリーダーであるにもかかわらず、NXPは意外にも分かりにくいと感じています。 あなたの迅速なフィードバックがこれらの穴を補っています。改めてご助言ありがとうございます。とても感謝しています。あなたの回答を解決策としてマークし、あなたのチームに以下のフィードバックを送ります。 - DflashブートローダーとHSEのデモがあれば、(あなたの時間も含めて)時間を節約できたでしょう。これはAB_SWAPを使用する人にとって自然な設定だと確信しています。 - NXPはドキュメントやソフトウェアスタックを統合し、長期的に整理すべきです。互換性やバージョンが散在しており、情報源が一つにないため混乱が生じます。 よろしくお願いいたします
記事全体を表示
JLink调试身份验证 大家好, 我正在做一个基于 MCXN947(frdm_mcxn947 板)的项目,我们需要在将固件发送给客户进行测试之前设置调试身份验证和签名固件验证,但我对两件事非常不确定。 调试认证是否仅限于“现场”情况?MCU是否使用密钥永久锁定,并且网络安全配置已烧录到OTP中?我不想冒着彻底损坏我唯一一块板的风险。 如果我设置了调试认证功能,是否仍然可以连接并使用板载调试器调试代码?我正在使用 VSCode 和 Jlink debug .launch 进行调试。配置中,如何添加网络安全组件以启用调试身份验证? 如果已经处理过这个问题的人能提供一些指导就太好了,因为我只看到有人提到了AN14162 ,其他文档方面就很少了。 MCX N 安全(Edgelock | 安全启动 | OTP) Re: JLink Debug Authentication 你好@raimbowgeddon 1. 调试身份验证是否仅限于“现场”情况?MCU是否使用密钥永久锁定,并且网络安全配置已烧录到OTP中?我不想冒着彻底损坏我唯一一块板的风险。 不,调试认证不仅适用于“文件内”情况。可以在开发过程中进行测试。请在 CMPA 部分进行配置,而不是在 OTP 部分。 2. 如果我设置了调试认证功能,是否仍然可以连接并使用板载调试器调试代码?我正在使用 VSCode 和 Jlink debug .launch 进行调试。配置中,如何添加网络安全组件以启用调试身份验证? 是的。启用调试认证后,通常不能像以前那样直接启动普通的 J-Link 会话。必须先运行调试认证质询-响应流程,然后再连接调试器。 有一个视频演示了在 MCXN947 上配置和使用调试身份验证的步骤。我不确定你是否可以访问它: https://www.bilibili.com/video/BV13EhAzdEzV/?spm_id_from=333.1387.homepage.video_card.click 谢谢! BR 爱丽丝 Re: JLink Debug Authentication 你好@Alice_Yang , 抱歉回复晚了,我一直忙于其他紧急工作。我按照你提供的视频里的步骤操作了,好像奏效了!我之前漏掉了需要先用工具解锁设备,然后再用调试器连接的步骤。我还尝试用另一个镜像覆盖原有镜像,虽然出现了 CFPA 区域未写入的警告,但似乎无法执行闪存擦除操作,即使调试认证步骤已经完成,这是预期行为吗?这是否意味着该板将永久受到保护?现在没有办法将主板恢复出厂设置吗? 非常感谢您的帮助 FS
記事全体を表示
MPC574xP BCTRL 您好: 我的客户正在使用MPC5741P进行汽车电子调速应用。 目前,最终 OEM 厂商询问了他们有关 BCTRL 引脚特性(例如电压区域)的问题。 您能帮忙核实一下吗?谢谢。 下图是波形,它是三角波,OEM 要求在 MCU 侧的基极控制输出引脚上添加去耦电容。 BoxLi_0-1783050842506.png Re: MPC574xP BCTRL 数据手册推荐的晶体管型号如下所示: davidtosenovjan_0-1783063352184.png 此外,还需要进行适当的旁路/解耦。主要关注VDD_LV_COR: davidtosenovjan_1-1783063654558.png Re: MPC574xP BCTRL 嗨,大卫: 明白了,谢谢。
記事全体を表示
S32K388 使用 MemAcc 擦除 PFLASH 卡住 您好!我使用 MemAcc_Example_S32K388,并将 DFLASH 更改为 PFLASH。但是当我擦除 pFlash 时,程序卡在了 MEMACC_JOB_PENDING == MemAcc_GetJobStatus(TEST_AREA) 处。 我修改了比较程序,将 TEST_AREA 设置为 1。 这是修改后的程序,希望它能发现并指出我的错误,我将非常感激。 S32K3 Re: S32K388 Use MemAcc Erase PFLASH Stuck 嗨@zhangyu5454 , 我发现一个问题,前缀不正确,应该是 Mem_43_INFLS。 danielmartynek_0-1783597121888.png Re: S32K388 Use MemAcc Erase PFLASH Stuck 我尝试将其更改为 Mem_43_INFLS,但仍然无法成功运行。然后我将例程 DFLASH 中的 Mem_43_INFLS 更改为 abc123,它就可以正常运行了。最后,我发现问题出在 MemAcc 内存调用的 DIRECT_STATIC 上。 将其更改为间接静态可以解决我的问题。
記事全体を表示
S32K3引导加载程序和HSE - 最佳实践? 您好,NXP团队: 我们正在 S32K312 上实施一个强大的 OTA 更新架构,采用 HSE 全块 A/B 交换。 我们的目标架构是: - S32K312,2 MB PFlash 分为两个 1 MB 物理块。 - HSE AB_SWAP 通过被动块激活服务使用。 - 通过 Modbus/串口接收 OTA 数据包。 - 引导加载程序将签名映像加载到被动 PFlash 块中。 - HSE 验证被动图像/SMR。 - 引导加载程序请求 AP_SWAP。 - RESET后,新更换的银行暂时启动。 - 确认命令可使交换永久生效;否则设备将回滚。 最初我们尝试将一个全局引导加载程序放在 DFlash 中,位于两个 PFlash 存储区之外。该引导加载程序将接收 OTA,对被动 PFlash 存储进行编程,请求 HSE AP_SWAP,然后继续管理确认/回滚。 我们采用这种方法遇到了架构和运行时复杂性方面的问题: 1. HSE AB_SWAP 似乎在完整的 PFlash 块边界上进行操作,而不是在任意应用程序分区上进行操作。 2. 单个 DFlash 引导加载程序位于已交换/已验证的银行映像之外。 3. 交换后,活动的 PFlash 存储体仍然需要有效的启动/IVT/RESET 结构。 4. 当 DFlash 也参与引导加载程序运行时/记录处理时,我们遇到了执行方面的困难。 5.目前还不清楚全局 DFlash 引导加载程序是否与干净的全库 HSE AB_SWAP 生产设计兼容。 因此,我们暂时改用复制的PFlash引导加载程序模式: - 每个 1 MB PFlash 存储区包含自己的 IVT + 引导加载程序 + 应用程序。 - 引导加载程序在每个存储体的底部都有一个预留插槽。 应用程序在引导加载程序槽之后启动。 - 已签名的 OTA 镜像是一个完整的银行镜像,包含引导加载程序和应用程序。 - 在 HSE AB_SWAP 之后,新激活的银行是独立的,可以启动。 对于 HSE 全模块 A/B 更换来说,这似乎要干净得多,但我希望确认其预期/生产安全的方法。这样做并不理想,因为它在一定程度上违背了工厂引导加载程序的初衷。 问题: 1.对于 S32K312 HSE AB_SWAP,在交换后的 PFlash 存储体之外,单个全局 DFlash 驻留引导加载程序是否是一种受支持/推荐的架构? 2. 或者 HSE AB_SWAP 是否有效地要求/建议每个被交换的 PFlash 块都是可独立启动的,具有自己的 IVT/引导加载程序/RESET 路径? 3.如果可以使用 DFlash 引导加载程序,那么交换后的引导流程应该如何构建,才能仍然满足 SBAF/HSE 引导预期? 4. NXP 是否有任何参考示例展示了 DFlash 引导加载程序如何在 S32K3 上管理全块 HSE AB_SWAP? 5.对于具有回滚/确认语义的生产 OTA,重复的 PFlash 引导加载程序模型是否是更安全的预期设计? 我们已经看到,通过修改链接器脚本可以将代码和 IVT 链接到 DFlash 中(我们也尝试过),但我们的问题具体是,在使用 HSE 全块 A/B 交换和安全启动/SMR 验证时,这样做是否合适。 谢谢! Re: S32K3 bootloader and HSE - best practice ? 嗨@coratron 1.对于 S32K312 HSE AB_SWAP,在交换后的 PFlash 存储体之外,单个全局 DFlash 驻留引导加载程序是否是一种受支持/推荐的架构? 从硬件角度来看,没有任何限制。两种选择都是可行的。如果数据闪存的容量足够大,并且您不打算将其用于存储数据,则可以将引导加载程序放置在数据闪存中。如果您需要将数据闪存用于其他用途,那么在两个分区中分别保存两份引导加载程序副本是一种常见的做法。 2. 或者 HSE AB_SWAP 是否有效地要求/建议每个被交换的 PFlash 块都是可独立启动的,具有自己的 IVT/引导加载程序/RESET 路径? 不,没有这样的要求。只需在数据闪存(引导加载程序的 IVT)中具有有效的 IVT 即可。通常的做法是,RESET后总是启动引导加载程序,然后引导加载程序跳转到用户应用程序。 3. 如果可以使用 DFlash 引导加载程序,那么交换后的引导流程应该如何构建,才能仍然满足 SBAF/HSE 引导预期? SBAF 或 HSE 没有提出任何具体要求。启动引导加载程序后,它可以决定是跳转到应用程序,还是下载新应用程序,或者执行回滚等操作,然后它应该重置设备(在回滚/交换的情况下)或跳转到应用程序。 4. NXP 是否有任何参考示例展示了 DFlash 引导加载程序如何在 S32K3 上管理全块 HSE AB_SWAP? 我们没有这样的例子。 5. 对于具有回滚/确认语义的生产 OTA,复制的 PFlash 引导加载程序模型是否是更安全的预期设计? 我不认为这两种方法在安全性方面有任何绝对优势。特定架构的适用性取决于整体系统设计、网络安全要求、OTA 工作流程和回滚策略。这两个概念都可以在稳健的生产解决方案中得到实现。 问候, 卢卡斯 Re: S32K3 bootloader and HSE - best practice ? 感谢你的及时回复@lukaszadrapa 。这澄清了问题,并提供了很大的帮助——我们已经能够重新评估 DFlash 中的引导加载程序实现,并且取得了成功。 该团队已经习惯了其他供应商的文档/可访问性,发现 NXP 虽然是汽车应用领域的领导者,但与它们相比,NXP 的文档却出奇地令人困惑。 您的及时反馈弥补了这些不足,再次感谢您的帮助——非常感激。我会将您的回复标记为解决方案,并向您的团队提供以下反馈: - 如果能提供 Dflash 引导加载程序 + HSE 演示,就能节省时间(包括您的时间)。我相信这对于使用 AB_SWAP 的人来说是自然而然的设置。 - NXP 应该统一并整理文档和软件栈(长期来看) - 兼容性/版本分散,没有统一的信息来源,导致混乱。 问候
記事全体を表示
在 NPU 上运行的 Whisper 你好, 我一直在 i.MX 95 上运行 Whisper,它受限于 CPU 性能。 是否有办法利用NPU来加快处理速度?看起来这个算式集主要是给 CNN 用的,不过还是值得一问。 我没见过任何例子,而且我不确定这是否可行(NPU 似乎只适用于 CNN?) 有人已经做过这件事了吗?有例子吗?
記事全体を表示
Android版の登録アプリは動作せず、iOS版も動作しません Android用のアプリを登録しました。 しかしiOSで同じことをしようとすると「パッケージ名はすでに存在します」と表示されます。 意味がわかりません。AndroidとiOSは同じパッケージ名でいても、2つの異なるプラットフォームです。 アプリ登録 Re: Register app for Android and iOS doesn't work こんにちは、 @Skelさん あなたの調子が良いといいのですが。 プラットフォームは異なりますが、 UG10044 および第2章 UG10045 、TapLinxライセンス文字列を取得するにはNXPサーバー上でパッケージ文字列が一意でなければなりません。 ご迷惑をおかけして申し訳ございません。 よろしくお願いいたします。 エドゥアルド。 Re: Register app for Android and iOS doesn't work @EduardoZamoraこんにちは、 iOSアプリをAndroidに移行するにはどうすればいいですか?
記事全体を表示
JLinkデバッグ認証 皆さん、こんにちは。 私はMCXN947(frdm_mcxn947ボード)を基にしたプロジェクトを進めており、クライアントにテストのために送る前にデバッグ認証と署名済みファームウェア検証を設定する必要がありますが、2つの点について非常に迷っています。 デバッグ認証は「現場内」のCASEに限定されているのでしょうか?MCUが永久にロックされ、鍵やセキュリティ設定がOTPで焼き込まれている状態ですか?唯一持っているボードを永久に壊してしまうリスクは冒したくない デバッグ認証機能を設定した場合、搭載デバッガと接続してコードをデバッグすることは可能でしょうか?VS Code と Jlink デバッグ .launch を使用してデバッグしています設定、デバッグ認証を有効にするためのセキュリティアーティファクトを追加するにはどうすればいいですか? すでにこの問題に取り組んだ方が、今後の進め方について教えていただけるとありがたいです。なぜなら、私は言及されている AN14162だけで、それ以外のドキュメントはあまり見かけません MCX N セキュリティ(EdgeLock | セキュアブート | OTP) Re: JLink Debug Authentication こんにちは、 @raimbowgeddon さん。 1. デバッグ認証は「インフィールド」ケースに限定されるのか?MCUが永久にロックされ、鍵やセキュリティ設定がOTPで焼き込まれている状態ですか?唯一持っているボードを永久に壊してしまうリスクは冒したくない ->>いいえ、デバッグ認証は「ファイル内」ケースだけのものではありません。開発中にテストCAN。CMPA側で設定してください。OTP側ではありません。 2. デバッグ認証機能を設定した場合、搭載デバッガと接続してコードをデバッグすることは可能でしょうか?VS Code と Jlink デバッグ .launch を使用してデバッグしています設定、デバッグ認証を有効にするためのセキュリティアーティファクトを追加するにはどうすればいいですか? ->>はい。デバッグ認証が有効になった後は、通常は通常、以前のように通常のJ-Linkセッションを開始することはできません。まずデバッグ認証チャレンジ-レスポンスフローを実行し、その後デバッガを接続します。 MCXN947上でデバッグ認証の設定と使用手順を示す動画があります。アクセスCANかはわかりませんが: https://www.bilibili.com/video/BV13EhAzdEzV/?spm_id_from=333.1387.homepage.video_card.click よろしくお願いします。 BR アリス Re: JLink Debug Authentication こんにちは、 @Alice_Yang さん。 返信が遅れて申し訳ありません。他の緊急の仕事に追われていました。あなたがリンクしてくれた動画の手順通りにやってみたら、うまくいったようです!ツールからデバイスのロックを解除し、その後デバッガーで接続するという手順を見落としていました。画像を別の画像で上書きしようとしましたが、CFPAリージョンが書き込まれていないという警告は出ていますが、デバッグ認証ステップを行ってもフラッシュ消去はできないようです。これは普通のことですか?これはつまり、今後は取締役会が恒久的に安全になるということでしょうか?今、ボードを工場出荷時の設定に戻す方法はないのでしょうか? ご助力本当にありがとうございます FS
記事全体を表示
Urgent imx8mp h264/h265 encoder with milestone using imx8mp h264 video encoder is not run on milestone  when testing the video with ffprobe -v error -show_streams -i one of the output is has_b_frames=2 ,  SPS/PPS  we suspect that this cause milestone not to show the video  it produce by hantro encoder but we didn't find way to set it to has_b_frames=0 it in other h264 encoder that work ok  Need help how we can make the encode stream to has has_b_frames=0  Re: Urgent imx8mp h264/h265 encoder with milestone Hi @itamarlevit  Please provide the exact encoding commands/pipeline on i.MX8MP Best Regards, Zhiming
記事全体を表示
RT1064 : pin configuration to boot from internal flash Hello, This may sound as a dumb/noob question but I can't determine precisely what must be done on the BOOT_MODE1/BOOT_MODE0 and BT_CFG[11..0] pins to configure the RT1064 to boot from its internal flash memory. Table 9.9 from the reference manual lists only 3 boot sources (NOR flash via FlexSPI, SDCARD and eMMC) but the internal flash is not listed, as if this section has been copied/pasted from RT1060... AN12290 mentions a FlexSPI2 internal bus to this internal flash but does not indicate how to select it over the 3 above-mentionned boot sources. Table 5 from the MIMXRT1060/1064 Evaluation Kit Board Hardware User's Guide indicates that 2 boot modes only are availble (QSPI or SDCARD) and also claims that QSPI boot is not available (note from 2.7 paragraph), leaving SDCARD as the sole boot source... Any help greatly appreciated i.MXRT 106x Re: RT1064 : pin configuration to boot from internal flash Hi @batmat, As mentioned in AN12290, on the MIMXRT1064 it is only possible to boot from FlexSPI2, which is dedicated to the internal QSPI flash. You can still connect the external flash through the FlexSPI1 interface, which can be used to save data or other functions except booting. This is why, Table 9.9 from the reference manual lists only 3 boot sources, NOR flash via FlexSPI, SDCARD or eMMC; NOR flash via FlexSPI2 is the only available FlexSPI for booting, and its already routed to the onboard flash by default. In order to be able to boot from the internal QSPI flash, the boot device switch (SW7) settings should be: SW7-1 OFF, SW7-2 OFF, SW7-3 ON, SW7-4 OFF. BOOT_CFG1[7:4] pins, must be set to 0, to select the Serial NOR boot via FlexSPI as the boot device. And BOOT_CFG2[2:0] pins must be also set to 0, so the internal QSPI Flash is selected. The MIMXRT1064-EVK has these pin settings by default. BR, Edwin. Re: RT1064 : pin configuration to boot from internal flash Hello Edwin, Makes sense indeed. I was confused as both the external flash and the internal are QSPI ones, hard to determine which is which. I'd suggest a documentation evolution for table 9.9 for RT1064. Instead of "NOR flash via FlexSPI" it should be mentionned "Internal NOR flash via internal FlexSPI2" and also adding that "Boot from external NOR flash via FlexSPI is not available on RT1064" This would avoid confusion I think. Again, thanks for your excellent and prompt support.
記事全体を表示