Multi Source Translation Content

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

Multi Source Translation Content

ディスカッション

ソート順:
向MCU SDK添加I2C驱动程序 您好,NXP团队, 我们希望在MCU SDK中添加我们的24cxx系列eeprom i2c驱动程序。我们该如何添加它? 谢谢 & 此致敬礼, Re: Add I2C driver to MCU SDK 嗨@taw , 根据您提供的信息,我推测您正在寻找定制的 SDK。 具体过程取决于您使用的集成开发环境 (IDE)。 对于 VS Code 版 MCUXpresso,您可以参考以下文档: MCUXpresso SDK:创建自定义清单 对于 MCUXpresso IDE,您可以参考以下文档: 创建定制板支持包 | 恩智浦半导体 如果您指的不是这个,请您提供更多关于您的请求的详细信息好吗? 此致, 巴勃罗
記事全体を表示
Plumber Fairfield CA Fast & Reliable Local Plumbers Plumber Fairfield CA provides professional plumbing services for homeowners and businesses dealing with everyday plumbing needs and unexpected emergencies. From leaking faucets and clogged drains to water heater problems and damaged pipes, having access to a dependable local plumber can help prevent small plumbing issues from becoming more serious and costly. The main idea behind choosing a Plumber Fairfield CA is simple: get reliable local help when you need plumbing repairs, maintenance, or emergency assistance. Professional plumbers can diagnose plumbing problems, recommend the appropriate solution, and complete repairs using the right tools and techniques. Whether you are dealing with a slow drain, a hidden leak, low water pressure, sewer problems, or a water heater issue, a qualified plumber in Fairfield, CA can help keep your residential or commercial plumbing system working properly.
記事全体を表示
科罗拉多州洛夫兰市水管工常见管道问题及何时寻求帮助 最后更新日期:2026年9月9日(官方网站链接见评论框) Loveland Co 管道公司指的是科罗拉多州 Loveland 市提供的专业管道服务,旨在帮助房主和企业处理常见的管道需求。从水龙头漏水、排水管堵塞到热水器问题以及更复杂的管道维修,经验丰富的管道工可以提供切实可行的解决方案,使管道系统正常运转。这就是为什么在科罗拉多州洛夫兰市选择一位可靠的水管工,以便在需要及时可靠的服务时非常重要的原因之一。 Plumber Loveland Co 的主要理念很简单:为客户提供专业的管道服务,包括日常维修、维护、安装和突发的管道问题。合格的当地水管工可以帮助找出问题的原因,推荐合适的解决方案,并安全高效地完成必要的工作。无论您需要小修小补还是大型管道工程方面的帮助,拥有值得信赖的管道专业人员都能帮助保护您的财产,并保持您家中管道系统的顺畅运行。
記事全体を表示
安装 S32K312 的 RTD 我正在尝试在 S32 Design Studio v 3.6.6上为 S32K312 设置开发环境,具体步骤如下: 1. 下载了 SW32K3_S32M27x_RTD_R23-11_7.0.1_D2603_DesignStudio_updatesite.zip 2. 在 S32 Design Studio 3.6.6 中打开了“S32Extensions and Updates”。在 Windows 11 系统上运行,并已安装 S32K3 实时驱动程序,如下所示: durga_choudhury_0-1788877584959.pngdurga_choudhury_0-1788877584959.png 3. 按照提示重启了IDE(我也尝试过重启电脑)。 由此看来,我无法看到对 K3 系列的支持。“新建项目”对话框中没有显示此选项: durga_choudhury_1-1788877756997.pngdurga_choudhury_1-1788877756997.png 如果我尝试安装如下所示的“S32K3XX”驱动程序: durga_choudhury_2-1788877862245.pngdurga_choudhury_2-1788877862245.png 我收到如下所示的错误信息: durga_choudhury_3-1788877910412.pngdurga_choudhury_3-1788877910412.png 现在在 S32DS v 3.6.2 上重复整个过程略有改善:现在“新建项目”对话框中列出了 K312 选项,但没有列出其 SDK: durga_choudhury_4-1788878190320.pngdurga_choudhury_4-1788878190320.png 我做错了什么? Re: Installing RTD for S32K312 嗨@VaneB 很遗憾,我在S32DS 3.6.6上没有对应的版本。我已经尝试将 RTD 版本从 7.0.1 降级到 6.0.0。 是否有适用于 3.6.6 的特定版本? Re: Installing RTD for S32K312 你好@durga_choudhury 截图来自我的 S32DS 3.6.10 系统。安装过程;但是,您应该会在 IDE 中看到类似的设置。 VaneB_0-1788893776567.pngVaneB_0-1788893776567.png 另外,根据你分享的截图,我可以看到你已经成功安装了 RTD 7.0.1。由于 RTD 7.0.1 依赖于 S32K3 开发包,因此该软件包很可能已经安装。 Re: Installing RTD for S32K312 嗨@VaneB 请详细说明一下您的评论。 我看到我安装了 S32K1xx 的“开发包”(这也是我使用的 MCU 系列): durga_choudhury_0-1788891225434.pngdurga_choudhury_0-1788891225434.png 但我发现K3并没有类似的功能。 那么我该如何安装呢?重申一下,我目前为止所做的工作是: 1. 下载了 SW32K3_S32M27x_RTD_R23-11_7.0.1_D2603_DesignStudio_updatesite.zip 2. 已将其添加为 S32 DS v 3.6.6的更新站点 3. 安装了以下软件: durga_choudhury_1-1788891394005.pngdurga_choudhury_1-1788891394005.png Re: Installing RTD for S32K312 你好@durga_choudhury 来自您的 S32DS 3.6.6安装过程中,似乎没有安装 S32K3 开发包。 关于 S32DS 3.6.2,请注意,RTD 7.0.1 是使用 S32DS 3.6.4 开发和验证的。因此,我们建议使用 S32DS 3.6.4 版本。或者使用更新的版本以确保兼容性并避免潜在问题。 此外,还需要验证工具链。创建项目时,请确保已安装 NXP GCC 10.2.0 并选择其作为项目工具链。 BR,VaneB
記事全体を表示
POWER consumption at runtime on NXP i.MX93 & i.MX8MPLUS EVK I am using NXP i.MX93 & i.MX8MPLUS EVK and want to monitor the POWER consumption at runtime how can I get this data ? The agenda is to monitor the power during the inference of AI-models. How can I monitor the power metrics ?  How can I monitor power metrics using only software, without any external hardware? Re: POWER consumption at runtime on NXP i.MX93 & i.MX8MPLUS EVK Thank you for this detailed information and reference to ANI3054. This is very helpful. Does the i.MX93 EVK also have a similar power measurement setup , or is there a different approach recommended for i.MX93? Re: POWER consumption at runtime on NXP i.MX93 & i.MX8MPLUS EVK Please refer to the document AN13054 i.MX 8M Plus Power Consumption Measurement To measure the power consumption, the PWR CPU board is designed with current sense resistors of suitable value inserted between the PMIC and CPU for each key power rail. The power data is obtained by sampling the average voltage drop across the sense resistors using power monitor chip PAC1934. The voltage drop for each power supply is divided by its sense resistor value within the BCU PC software tool to calculate the current.
記事全体を表示
ハードウェアシミュレーションには、システムVerilogやVAMS、またはPCA9698DGG,512(GPIOエキスパンダー)のspiseモデルが必要です。 システム用Verilog、VAMS、またはIOエクスパンダーの部品番号のSPICEモデルが必要です - PCA9698DGG,512。重要な業務に必要なため、至急ご提供ください。 データシートリンク - PCA9698 40ビットFm+ I2Cバス:RESET、OE、INT対応の高度なI/Oポート
記事全体を表示
IMXRT1176 应用程序崩溃,之后 IMXRT 无法启动。 您好, 我正在使用 IMXRT1176 定制板,在应用程序和辅助引导加载程序开发过程中,我的应用程序崩溃了,之后我无法刷写我的应用程序。我尝试进入串口下载器模式,然后擦除FLEXSPI NOR Flash,即使这样它仍然显示: “Flash Driver V.2 启动失败 - rc Ef(55): 动态闪存驱动程序启动未能提供闪存参数。终止 (0x0, 0x0, 0x0) 状态 0x40 - 驱动程序报告初始化失败 - EXTSPIJ 驱动程序 rc 20107 (0x4E8B) 芯片初始化失败 - Ef(55): 动态闪存驱动程序启动无法提供闪存参数。初始化闪存驱动程序 MIMXRT1170_SFDP_QSPI.cfx##" 我尝试通过 USB 将 NXP 启动实用程序连接到 MCU,并看到了以下日志。 "--------MCU设备ROM信息-------- 唯一 ID[31:00] = 0x8295ad77 唯一 ID[63:32] = 0x242cc80e 当前版本 = K3.0.1 目标版本 = T3.0.0 生命周期状态 = HAB 开放 --------MCU Flashloader 信息------- 当前版本 = K2.8.0 目标版本 = T1.0.1 --------MCU 设备 eFusemap-------- (0x940) SYSBT_CFG0 = 0x0 (0x950) SYSBT_CFG1 = 0x0 (0x960) SYSBT_CFG2 = 0x8 BT_FUSE_SEL = 1'b0 当 BMOD[1:0] = 2'b00(从熔丝启动)且引导设备中没有应用程序时,MCU 直接进入串口下载器模式。 当 BMOD[1:0] = 2'b10(内部启动)时,MCU 将根据 BOOT_CFGx 引脚和熔丝 BOOT_CFGx 启动应用程序。 ----------FlexRAM 存储器----------- IOMUXC_GPR->GPR16 = -------- --------MCU设备ROM信息-------- 唯一 ID[31:00] = 0x8295ad77 唯一 ID[63:32] = 0x242cc80e 当前版本 = K3.0.1 目标版本 = T3.0.0 生命周期状态 = HAB 开放 --------MCU Flashloader 信息------- 当前版本 = K2.8.0 目标版本 = T1.0.1 --------MCU 设备 eFusemap-------- (0x940) SYSBT_CFG0 = 0x0 (0x950) SYSBT_CFG1 = 0x0 (0x960) SYSBT_CFG2 = 0x8 BT_FUSE_SEL = 1'b0 当 BMOD[1:0] = 2'b00(从熔丝启动)且引导设备中没有应用程序时,MCU 直接进入串口下载器模式。 当 BMOD[1:0] = 2'b10(内部启动)时,MCU 将根据 BOOT_CFGx 引脚和熔丝 BOOT_CFGx 启动应用程序。 ----------FlexRAM 存储器----------- IOMUXC_GPR->GPR16 = -------- --------MCU设备ROM信息-------- 唯一 ID[31:00] = 0x8295ad77 唯一 ID[63:32] = 0x242cc80e 当前版本 = K3.0.1 目标版本 = T3.0.0 生命周期状态 = HAB 开放 --------MCU Flashloader 信息------- 当前版本 = K2.8.0 目标版本 = T1.0.1 --------MCU 设备 eFusemap-------- (0x940) SYSBT_CFG0 = 0x0 (0x950) SYSBT_CFG1 = 0x0 (0x960) SYSBT_CFG2 = 0x8 BT_FUSE_SEL = 1'b0 当 BMOD[1:0] = 2'b00(从熔丝启动)且引导设备中没有应用程序时,MCU 直接进入串口下载器模式。 当 BMOD[1:0] = 2'b10(内部启动)时,MCU 将根据 BOOT_CFGx 引脚和熔丝 BOOT_CFGx 启动应用程序。 ----------FlexRAM 存储器----------- IOMUXC_GPR->GPR16 = -------- --------MCU设备ROM信息-------- 唯一 ID[31:00] = 0x8295ad77 唯一 ID[63:32] = 0x242cc80e 当前版本 = K3.0.1 目标版本 = T3.0.0 生命周期状态 = HAB 开放 --------MCU Flashloader 信息------- 当前版本 = K2.8.0 目标版本 = T1.0.1 --------MCU 设备 eFusemap-------- (0x940) SYSBT_CFG0 = 0x0 (0x950) SYSBT_CFG1 = 0x0 (0x960) SYSBT_CFG2 = 0x8 BT_FUSE_SEL = 1'b0 当 BMOD[1:0] = 2'b00(从熔丝启动)且引导设备中没有应用程序时,MCU 直接进入串口下载器模式。 当 BMOD[1:0] = 2'b10(内部启动)时,MCU 将根据 BOOT_CFGx 引脚和熔丝 BOOT_CFGx 启动应用程序。 ----------FlexRAM 存储器----------- IOMUXC_GPR->GPR16 = --------" 它显示“MCU 已进入 Flash 加载器,但配置外部存储器失败,请 RESET 板并设置正确的引导设备,然后重试”。 我的 或非 Flash 是 W25Q32JV 四通道SPI。 请您在这件事上帮帮我。 谢谢! 纳根德拉 Re: IMXRT1176 Application Crashed , Later IMXRT doesnot boot 嗨@Gavin_Jia , 感谢您的回复。 1.我从内存运行示例,得到的 ID 为 0。 2. Flash 连接到 FlexSPI A FlexSPI1 信号 RT1176 球/焊盘名称 FLEXSPI1_A_SCLK GPIO_SD_B2_07 FLEXSPI1_A_DATA0 GPIO_SD_B2_08 FLEXSPI1_A_DATA1 GPIO_SD_B2_09 FLEXSPI1_A_DATA2 GPIO_SD_B2_10 FLEXSPI1_A_DATA3 GPIO_SD_B2_11 FLEXSPI1_A_SS0_B GPIO_SD_B1_06 这块板之前可以正常用于我们的应用程序,我曾用它按照 FlexSPI 示例程序,通过擦除和重新编程闪存,为我们的应用程序实现辅助引导加载程序。但在此期间,应用程序卡住了,从那以后我就无法再刷写闪存了。 Re: IMXRT1176 Application Crashed , Later IMXRT doesnot boot 你好@Nagendra_Kumar , 日志显示 MCU、ROM 和 Flashloader 都正常(HAB 打开,串行下载器连接)。故障发生在 FlexSPI 到 W25Q32JV 的初始化过程中:工具甚至无法读取 SFDP 参数,因此这是板/配置问题,而不是烧录工具的问题。由于新刷机也失败了,请按以下顺序检查: 首先从内部 RAM 运行 flexspi_nor_polling_transfer_cm7 示例,并读取 W25Q32JV 的 JEDEC ID。如果无法读取 ID,则确认存在硬件/引脚问题——暂时不要关注刷机工具。 确认闪存位于哪个 FlexSPI 实例/引脚组上。默认的 .cfx 文件MCUBootUtility 假定 FlexSPI1 端口 A(EVK 接线)。如果您的 FlexSPI2 或 FlexSPI1 是辅助接口,请修改 option0 中的引脚组字段,并烧录 FLEXSPI_PIN_GROUP_SEL 熔丝(地址 0x9A0[10]);在 MCUBootUtility 中显式选择匹配的实例。 建议使用安全配置工具 (SPT) ,它内置了 W25Q 系列的 FCB 模板和启动内存配置功能,以便首先验证设置。 另外,请确认:这块板之前是否曾通过W25Q32JV成功编程和启动过? 此致, 加文 Re: IMXRT1176 Application Crashed , Later IMXRT doesnot boot 您好, 我忘了说,我还把 或非 闪存换成了新的。错误依然存在。
記事全体を表示
i.MX8M Plus:同时运行 VIP8000 时出现间歇性帧向下偏移和绿色顶带闪烁 1. 系统和环境 参数配置 SoC NXP i.MX 8M Plus 四核处理器 芯片版本 A1 / B0 核心 6.12.20-lts-next-g604d4ef7a1e4 BSP NXP linux-imx / LTS-Next Vivante / Galcore 司机 6.4.11.p3.1049711 Galcore 位置 drivers/mxc/gpu-viv/galcore(内置) 2D引擎 Vivante GC520L (imxvideoconvert_g2d / libg2d.so) 纳米物理大学 VeriSilicon/Vivante VIP8000 NPU性能 2.3 顶级 视频编码器 Hantro VC8000E (v4l2h264enc) 内存 约 5.7 GB LPDDR4 CMA 总计 约960 MB 2. 问题描述 我们观察到,当VIP8000 NPU 推理与使用 GC520L G2D 引擎的硬件缩放/颜色转换同时运行时,会出现间歇性视频损坏问题。 受影响的 H.264 流不会完全变成绿色。相反,个别帧偶尔会出现以下情况: 当前图像似乎向下移动了少量像素/扫描线。 画面顶部出现一条水平的绿色条带。 下一帧立即恢复到正确位置。 结果是画面间歇性向下跳帧/绿色顶部边缘闪烁。 该问题在并发加速器工作负载期间可以重现,但当单独测试 NPU 或 G2D 工作负载时则无法可靠地重现。 3. 主要观察结果 3.1 仅 G2D 工作负载稳定 我们可以同时运行最多三个 G2D 视频分支: 主屏幕:1080p 字幕:360p MJPEG:480p 已禁用NPU。 视频长时间保持稳定,未观察到绿帧或帧偏移。 3.2 仅使用 NPU 的工作负载稳定 当 G2D 处理不活跃时,VIP8000 NPU 的重型推理以大约15–30 FPS 的速度持续运行,没有观察到推理错误或视频损坏。 3.3 用 CPU 处理代替 G2D 处理可以消除该问题。 当硬件 G2D 处理被以下方式取代时: videoscale ! videoconvert 即使 NPU 持续满负荷运行,系统仍保持稳定。 不再出现绿带/帧偏移问题。 3.4 并发 NPU + G2D 会触发该问题 当 NPU 处于活动状态且 G2D 同时用于视频/AI 处理时,就会出现数据损坏。 引入额外的 G2D 工作负载时,频率会增加。 这表明该问题与并发加速器活动有关,而不是与单个 NPU 或 G2D 工作负载本身有关。 4. 测试矩阵 我们进行了以下测试以找出故障原因。 测试 NPU AI 处理视频 G2D 结果 1 关 无 主 + 子 + MJPEG(3 个 G2D 分支) 通过——无闪烁 2 关 SHM附件 主字幕 + MJPEG 通过——无闪烁 3 ON 状态 G2D 功能 主要 G2D 故障——观察到间歇性绿带/帧偏移 4 ON 状态 CPU(视频缩放!视频转换) 主要 G2D 通过——主流清洁 5 ON 状态 CPU 主+子 G2D 失败——当引入额外的 G2D 工作负载时出现此问题。 6 ON 状态 CPU 所有视频分支均已转换为 CPU 缩放 通过——所有溪流均保持清洁 注意:我们目前正在准备一个较小的独立组网 \\(SA\\) 复现程序,以确定触发该问题所需的最小并发 G2D 客户端数量。 5. 当前调查 根据以上结果,我们想了解这种行为是否可能与以下某个领域有关。 A. Galcore / 加速器并发 在我们的设备树中,GPU/NPU 组件是同一个 GPU/ML 子系统的一部分: mix_gpu_ml@40000000 { compatible = "fsl,imx8mp-gpu", "fsl,imx8-gpu-ss"; cores = <&gpu_3d &ml_vipsi &gpu_2d>; reg-names = "phys_baseaddr", "contiguous_mem"; memory-region = <&gpu_reserved>; }; 中断也由 galcore 处理: 34: 520 0 0 0 GICv3 35 Level galcore:0 35: 13583 0 0 0 GICv3 45 Level galcore:3d-1 36: 1737916 0 0 0 GICv3 57 Level galcore:2d 我们想了解: galcore 是否在 GC520L、GC7000 和 VIP8000 之间共享同步原语或锁? G2D 和 NPU 命令队列是否完全独立? 当 VIP8000 推理处于活动状态时,多个 G2D 客户端/进程提交工作是否存在任何已知限制? 在并发工作负载下,命令提交、上下文管理、中断处理或资源锁定是否会引入延迟? B. 片上网络/DDR带宽或服务质量 GC520L G2D 和 VIP8000 NPU 都是主动总线主控器,可访问外部 LPDDR4 内存。 我们想确定高负载NPU推理是否可能: 大幅增加NoC/DDR流量。 增加 G2D 的内存访问延迟。 导致 G2D 交易延迟。 找出 G2D 与下游消费者之间的时序/同步问题。 受NoC/DDR QoS优先级的影响。 NXP能否就i.MX8MP上可用于调查此类工作负载的推荐NoC/AXI/DDR性能监控和QoS功能提供指导? C. G2D 缓冲区同步/栅栏/步长问题 这种视觉瑕疵特别有趣,因为整个画面并没有损坏。 受影响的帧大致如下所示: +----------------------------------+ | GREEN HORIZONTAL BAND | +----------------------------------+ | | | | | IMAGE SHIFTED DOWN | | | | | +----------------------------------+ 这让我们不禁怀疑,这个问题是否可能涉及以下方面: G2D目标缓冲区同步。 DMA-BUF 所有权/重复使用。 围栏信号/完工。 临时 G2D 目标偏移/步长状态。 G2D内存写入延迟。 在 G2D 操作完全完成之前,下游 VPU 访问就已经发生。 具体来说,延迟的 G2D 完成或同步事件是否会导致 v4l2h264enc / VC8000E 在所有 G2D 写入完成之前消耗目标 DMA-BUF? NXP G2D/V4L2 流水线中是否存在已记录的同步机制,以保证在 VPU 消耗目标 DMA-BUF 之前 G2D 完成? D. 内存 / CMA 我们在重现问题时监控了内存使用情况: Total RAM : ~5.7 GB CmaTotal : ~960 MB CmaFree : ~677 MB 因此,在故障期间,CMA 并未接近耗尽。 但是,我们想了解是否还有其他与内存相关的因素会影响并发的 NPU/G2D/VPU 工作负载,例如: DMA-BUF 同步。 缓存一致性。 内存功能域映射。 物理缓冲区对齐。 缓冲区重复使用。 IOMMU/MMU映射。 保留内存交互。 6.其他诊断实验 我们目前正在准备一个最小的独立组网 (SA) 复现程序,以消除应用程序层面的复杂性。 计划中的复制器将包含: Thread 1 → VIP8000 NPU inference Thread 2 → GC520L G2D processing Thread 3 → Additional GC520L G2D processing 我们还计划测试以下配置: NPU OFF + G2D NPU ON + G2D NPU ON + 2 × G2D NPU ON + G2D → buffer inspection NPU ON + G2D → VPU encoder 这应该有助于确定损坏是发生在 G2D 输出缓冲区本身,还是仅在缓冲区被 VPU 消耗之后才发生。 7. 向恩智浦提出的问题 我们希望恩智浦能就以下方面提供指导。 1. 已知的硬件/软件限制 是否同时进行以下操作: VIP8000 NPU + GC520L G2D + VC8000E VPU i.MX8M Plus 完全支持,包括多个同时运行的 G2D 客户端? 对于这种组合,是否存在已知的硬件限制、勘误或软件限制? 2. Galcore VIP8000 和 GC520L 同时运行时是否存在已知的 galcore 问题? 具体而言,是否存在以下方面的已知问题: 共享锁 命令队列, 上下文切换, 中断处理 同步, 或者资源管理? 3. DMA缓冲区/同步 在下游 V4L2/VPU 组件消耗目标 DMA-BUF 之前,使用什么机制来保证 G2D 完成? 在并发加速器工作负载下,imxvideoconvert_g2d / libg2d 是否存在已知的围栏或缓冲区所有权问题? 4. 片上网络/服务质量 NXP 推荐使用哪些调试寄存器、调试文件系统节点、性能计数器或工具进行测量? GC520L AXI 流量, VIP8000 AXI 流量, VPU流量, DDR带宽, NoC 争议, 以及服务质量/仲裁行为? 5. 驱动程序版本 我们目前使用的是: Kernel: 6.12.20-lts-next-g604d4ef7a1e4 Galcore: 6.4.11.p3.1049711 这种组合是否是 i.MX8MP 的验证/推荐配置? 是否有更新的 galcore / G2D 驱动程序或补丁集可以解决并发 NPU/G2D 工作负载的问题? 6. 硅勘误表 请问我们A1/B0版本的i.MX8M Plus芯片勘误表中是否存在以下问题? G2D, VIP8000 VPU, AXI/NoC仲裁, DDR, 缓存一致性 或者同时进行加速器操作? 7. 推荐配置 对于需要以下条件的应用程序: VIP8000 NPU inference + multiple G2D scaling/color-conversion pipelines + VC8000E H.264 encoding NXP推荐哪种配置? 是否有具体规定: 驱动程序参数 QoS设置, 内存/缓冲池配置, 同步机制 或 GStreamer 流水线实践 应该遵循什么? 8. 我们可以提供的信息 如有需要,我们可以提供以下服务: 完整的 GStreamer 流水线。 设备树配置。 内核配置。 重现过程中的 dmesg 输出。 /proc/中断。 G2D/NPU 工作负载详情。 v4l2-ctl 信息。 最小 NPU + G2D 复现器。 包含损坏帧的视频样本。 驱动程序版本和内部版本信息。 我们非常感谢您提供任何关于推荐的调试程序或附加跟踪/寄存器的指导,以帮助确定根本原因是否与G2D/NPU 同步、DMA-BUF/fence 处理、NoC/DDR 竞争、galcore 或芯片限制有关。 谢谢! 毗湿奴 i.MX 8M | i.MX 8M Mini | i.MX 8M Nano
記事全体を表示
PCF85263AT/AJ -- 画面に表示される分数が任意の値を示しています コード移行作業の一環として、BSFフラグが設定されてしまうという問題に直面しています。BSFフラグが設定されていることにより、分レジスタのEMONビットも設定されます。 その結果、画面に表示される「分」の値は任意の値を示しています。さらに、年の値が正しく保存されず、RTCの日付と時刻を設定した後でも、2000年と表示され続けます。 下記の条件でテストを試みましたが、問題は依然として解決していません。 フラグレジスタ(0x43)を0x00に設定し、すぐに読み取ったところ、0x00が表示されました。しかし、3秒後にレジスタを再度読み取ったところ、値は再び0x08(または0x00)に設定されていた。 Re: PCF85263AT/AJ -- Minutes value displayed on the screen is showing an arbitrary value こんにちは、Ris_eekさん 良い一日! BSFフラグが単にクリアできないというだけではない。代わりにRTCは新しいバッテリー切り替えイベントを検出し、再びBSFを設定しています。データシートによると、バッテリー切り替えロジックが電源遷移イベントを検出したときにBSFが設定されます 約3秒後に再アサートされるという事実は、VDDの電源が繰り返しバッテリー切り替え閾値を下回り、繰り返しVDD>VBAT>VDDの切り替えを引き起こしていることを意味します。各遷移はBSFをリセットします。 RafaR_0-1788887610951.pngRafaR_0-1788887610951.png この絶え間ない電圧変動により、RTC(リアルタイムクロック)が常にリセットされるため、常に2000年と表示されるのです。電源信号に問題がないか確認することをお勧めします。 この情報がお役に立てば幸いです。他に何かご不明な点がありましたら、お気軽にお問い合わせください。 良い一日をお過ごしください。幸運を祈ります。
記事全体を表示
没有规则可以设定目标 我尝试在 imx8mp 处理器上构建 Yocto 镜像。文件位于指定位置,我已经验证过,并且在 imx8mp_evk_defconfig 文件中也提到了这一点。 | make[3]: *** 没有规则可以创建目标“arch/arm64/boot/dts/freescale/imx8mp-evk-delta.dtb”。停止。 Re: No rule to make target 请参考以下步骤重新构建Linux内核。 1.请在 sources/meta-freescale/conf/machine/imx8mp-lpddr4-evk.conf 文件中,将“freescale/imx8mp-evk-delta.dtb”添加到变量 KERNEL_DEVICETREE:append:use-nxp-bsp 中。 2. 请获取 Linux 内核源代码。 $ bitbake virtual/kernel -c cleansstate $ bitbake virtual/kernel -c patch 3. 请前往 Linux 内核源代码文件夹 tmp/work/imx8mp_lpddr4_evk-poky-linux/linux-imx/6.6.52+git/git,添加 dts 文件 arch/arm64/boot/dts/freescale/imx8mp-evk-delta.dts 4. 重建 Linux 内核。 $ bitbake virtual/kernel Re: No rule to make target 但它仍然在 bitbake 虚拟/内核之后。 Re: No rule to make target 适用于 Linux 内核: 请在 sources/meta-freescale/conf/machine/imx8mp-lpddr4-evk.conf 文件中的 KERNEL_DEVICETREE:append:use-nxp-bsp 变量中添加“freescale/imx8mp-evk-delta.dtb”。 然后运行“bitbake virtual/kernel”。 对于 u-boot: 请参考以下步骤在 u-boot 中添加和使用新的 dts 文件。 $ bitbake u-boot-imx -c cleansstate $ bitbake u-boot-imx -c patch 进入 u-boot 源代码文件夹 tmp/work/imx8mp_lpddr4_evk-poky-linux/u-boot-imx/2024.04/git,请将 dts 文件 imx8mp-evk-delta.dts 添加到 arch/arm/dts/ 文件夹中。 请按如下方式修改configurations/imx8mp_evk_defconfig。 CONFIG_DEFAULT_DEVICE_TREE="imx8mp-evk" 修改为: CONFIG_DEFAULT_DEVICE_TREE="imx8mp-evk-delta" 然后重新构建 u-boot: $ bitbake u-boot-imx
記事全体を表示
LIN-stack download - where? Where do I have to download the LIN stack for a S32K116 microcontroller? Various posts point to the NXP Flexnet (?) page under 'S32K1 Reference Software - Automotive SW - LIN-Stacks', however the only file I get is "LINSTACK-K1 'List Of Known Defects' weekly report". The S32DS Extensions and updates page doesn't list any LIN software either. What am I missing? Re: LIN-stack download - where? Hi @daniel_meier, Instead of 'S32K1 Reference Software - Automotive SW - LIN-Stacks', can you try 'Automotive SW - S32K1 Reference Software > Automotive SW - S32K1_S32M24X - LIN Stacks'?  You should be able to access it from this link: Automotive SW - S32K1_S32M24X - LIN Stacks. If the issue persists, please try using Automotive Software Package Manager instead. Best regards, Julián
記事全体を表示
LIN协议栈下载 - 在哪里? 我应该在哪里下载S32K116微控制器的LIN协议栈? 各种帖子都指向“S32K1 参考软件 - 汽车软件 - LIN 堆栈”下的 NXP Flexnet (?) 页面,但我得到的唯一文件是“LINSTACK-K1‘已知缺陷列表’周报”。 S32DS 扩展和更新页面也没有列出任何 LIN 软件。 我漏掉了什么? Re: LIN-stack download - where? 嗨@daniel_meier , 请尝试使用“汽车软件 - S32K1 参考软件 > 汽车软件 - S32K1_S32M24X - LIN 堆栈”代替“S32K1 参考软件 - 汽车软件 - LIN 堆栈”? 您应该能够通过此链接访问它:汽车软件 - S32K1_S32M24X - LIN 堆栈。 如果问题仍然存在,请尝试改用汽车软件程序包管理器。 此致, 朱利安
記事全体を表示
No rule to make target I was trying to build an yocto image on an imx8mp processor.The file was in the spectified locations,i have verified and also mentioned it in the imx8mp_evk_defconfig file as well. | make[3]: *** No rule to make target 'arch/arm64/boot/dts/freescale/imx8mp-evk-delta.dtb'. Stop. Re: No rule to make target Please refer to the following procedure to rebuild Linux Kernel. 1. Please add "freescale/imx8mp-evk-delta.dtb \" in variable KERNEL_DEVICETREE:append:use-nxp-bsp in file sources/meta-freescale/conf/machine/imx8mp-lpddr4-evk.conf 2. Please fetch Linux Kernel source code. $ bitbake virtual/kernel -c cleansstate $ bitbake virtual/kernel -c patch 3. Please go to Linux Kernel source code folder tmp/work/imx8mp_lpddr4_evk-poky-linux/linux-imx/6.6.52+git/git to add dts file arch/arm64/boot/dts/freescale/imx8mp-evk-delta.dts 4. Rebuild Linux Kernel. $ bitbake virtual/kernel Re: No rule to make target still it comes after bitbake virtual/kernel Re: No rule to make target For Linux Kernel: Please add "freescale/imx8mp-evk-delta.dtb \" in variable KERNEL_DEVICETREE:append:use-nxp-bsp in file sources/meta-freescale/conf/machine/imx8mp-lpddr4-evk.conf Then run "bitbake virtual/kernel". For u-boot: Please refer to the following procedure to add and use new dts file in u-boot. $ bitbake u-boot-imx -c cleansstate $ bitbake u-boot-imx -c patch Go to u-boot source code folder tmp/work/imx8mp_lpddr4_evk-poky-linux/u-boot-imx/2024.04/git, please add dts file imx8mp-evk-delta.dts in folder arch/arm/dts/. Please modify configs/imx8mp_evk_defconfig as the following. CONFIG_DEFAULT_DEVICE_TREE="imx8mp-evk" Modify to: CONFIG_DEFAULT_DEVICE_TREE="imx8mp-evk-delta" Then rebuild u-boot: $ bitbake u-boot-imx
記事全体を表示
For hardware simulation need system verilog or vams or spice model of PCA9698DGG,512(GPIO expander) Need system verilog or vams or spice model of the IO expander part number- PCA9698DGG,512. Please provide urgently as it is required for a critical work. Datasheet link- PCA9698 40-bit Fm+ I2C-bus advanced I/O port with RESET, OE and INT
記事全体を表示
PCF85263AT/AJ -- Minutes value displayed on the screen is showing an arbitrary value As part of the code migration task, we are facing an issue where the BSF flag is being set. Due to the BSF flag being set, the EMON bit in the Minutes register is also getting set. As a result, the Minutes value displayed on the screen is showing an arbitrary value. Additionally, the Year value is not being saved correctly and continuously shows 2000 even after setting the RTC date and time. I tried to test the condition mentioned below, but the problem still persists.  I set the flag register (0x43) to 0x00 and read it immediately; it showed 0x00. However, when I read the register again after 3 seconds, the value was set again to 0x08 (or 0x00).   Re: PCF85263AT/AJ -- Minutes value displayed on the screen is showing an arbitrary value Hello Ris_eek Good day! The BSF flag is not simply failing to clear. Instead, the RTC is detecting a new battery switch-over event and setting BSF again. According to the datasheet, BSF is set whenever the battery switch-over logic detects a power transition event The fact that it re-asserts after ~3 seconds means the VDD supply is repeatedly dropping below the battery switch-over threshold causing repeated VDD>VBAT>VDD transitions. Each transition re-sets the BSF. RafaR_0-1788887610951.pngRafaR_0-1788887610951.png This constant voltage fluctuation causes the RTC to constantly reset, which is why it only shows the year 2000. I recommend checking if there's a problem with the power supply signal. I hope this information has helped you, please let me know if you need help with anything else. Have a great day and best of luck.
記事全体を表示
Installing RTD for S32K312 I am trying to set up a dev environment for the S32K312, on S32 Design Studio v 3.6.6 as follows: 1. Downloaded SW32K3_S32M27x_RTD_R23-11_7.0.1_D2603_DesignStudio_updatesite.zip 2. Opened 'S32Extensions and Updates' on S32 Design Studio 3.6.6 running on Windows 11 and installed S32K3 real time drivers as shown: durga_choudhury_0-1788877584959.pngdurga_choudhury_0-1788877584959.png  3. Restarted the IDE when prompted (I have tried rebooting the PC also) With this, I cannot see support for the K3 family. The 'New Project' dialog does not show this as an option: durga_choudhury_1-1788877756997.pngdurga_choudhury_1-1788877756997.png If I try to install the 'S32K3XX' drivers, as shown below: durga_choudhury_2-1788877862245.pngdurga_choudhury_2-1788877862245.png I get an error as shown below: durga_choudhury_3-1788877910412.pngdurga_choudhury_3-1788877910412.png Now repeating this whole process on S32DS v 3.6.2 is slightly better: now I have an option for the K312 listed in the 'New Project' dialog, but there are no SDK for it listed: durga_choudhury_4-1788878190320.pngdurga_choudhury_4-1788878190320.png What am I doing wrong? Re: Installing RTD for S32K312 Hi @VaneB  Unfortunately I don't have an equivalent on S32DS 3.6.6, and I have tried downgrading the RTD version to 6.0.0 (from 7.0.1). Is there a specific version that will work on 3.6.6? Re: Installing RTD for S32K312 Hi @durga_choudhury  The screenshot is from my S32DS 3.6.10 installation; however, you should see a similar setup in your IDE. VaneB_0-1788893776567.pngVaneB_0-1788893776567.png Also, based on the screenshot you shared, I can see that you were able to install RTD 7.0.1. Since RTD 7.0.1 depends on the S32K3 Development Package, it is likely that the package has already been installed. Re: Installing RTD for S32K312 Hi @VaneB  Please provide some elaboration on your comment. I see that I have a 'development package' for the S32K1xx' installed (which is also a MCU family I use): durga_choudhury_0-1788891225434.pngdurga_choudhury_0-1788891225434.png But I see nothing similar for the K3. So how do I install it? To re-iterate, what I have done so far is: 1. Downloaded SW32K3_S32M27x_RTD_R23-11_7.0.1_D2603_DesignStudio_updatesite.zip  2. Added it as an update site on S32 DS v 3.6.6 3. Installed the following: durga_choudhury_1-1788891394005.pngdurga_choudhury_1-1788891394005.png Re: Installing RTD for S32K312 Hi @durga_choudhury  From your S32DS 3.6.6 installation, it appears that the S32K3 Development Package is not installed. Regarding S32DS 3.6.2, please note that RTD 7.0.1 was developed and validated using S32DS 3.6.4. Therefore, we recommend using S32DS 3.6.4 or a newer release to ensure compatibility and avoid potential issues. Something additional to verify is the toolchain. When creating your project, make sure that NXP GCC 10.2.0 is installed and selected as the project toolchain. BR, VaneB
記事全体を表示
PCF85263AT/AJ——屏幕上显示的分钟数为任意值。 在代码迁移任务中,我们遇到了 BSF 标志被设置的问题。由于 BSF 标志被设置,分钟寄存器中的 EMON 位也被设置。 因此,屏幕上显示的分钟数是一个任意值。此外,年份值无法正确保存,即使在设置了 RTC 日期和时间之后,年份值仍然持续显示 2000。 我尝试测试了下面提到的条件,但问题仍然存在。 我将标志寄存器(0x43)设置为 0x00 并立即读取它;它显示 0x00。然而,3秒后我再次读取寄存器时,其值又被设置为0x08(或0x00)。 Re: PCF85263AT/AJ -- Minutes value displayed on the screen is showing an arbitrary value 你好 Ris_eek 再会! BSF 标志并非只是无法清除。相反,RTC 检测到新的电池切换事件,并再次设置 BSF。根据数据手册,当电池切换逻辑检测到电源转换事件时,BSF 将被设置。 它在大约 3 秒后重新确立的事实意味着 VDD 电源反复降至电池切换阈值以下,导致反复出现 VDD>VBAT>VDD 转换。每次转换都会重置 BSF。 RafaR_0-1788887610951.pngRafaR_0-1788887610951.png 这种持续的电压波动导致 RTC 不断 RESET,这就是为什么它只显示 2000 年的原因。我建议检查一下电源信号是否存在问题。 希望这些信息对您有所帮助,如果您还需要其他帮助,请告诉我。 祝你今天过得愉快,一切顺利。
記事全体を表示
IMXRT1176 アプリケーションがクラッシュ、後でIMXRTが起動しない こんにちは、 カスタムボードIMXRT1176を使っていますが、アプリケーションとセカンダリブートローダーの開発中にアプリケーションがクラッシュし、その後、アプリケーションのフラッシュができません。シリアルダウンローダーモードに入ってからFLEXSPI NORフラッシュを消去してみましたが、それでも表示されます 「Flash ドライバ V.2の起動失敗 - rc Ef(55): 動的フラッシュドライバ起動がフラッシュパラメータを提供できません。終了(0x0、0x0、0x0)ステータス0x40 - ドライバーがinit失敗を報告 - EXTSPIJドライバーrc 20107(0x4E8B)チップ初期化失敗 - Ef(55): 動的フラッシュドライバー起動がフラッシュパラメータを提供できません。フラッシュドライバーの初期化に失敗MIMXRT1170_SFDP_QSPI.cfx##」 NXPのブートユーティリティをUSB経由でMCUに接続して、このログを試しました。 「--------MCUデバイスROM情報-------- ユニークID[31:00] = 0x8295ad77 ユニークID[63:32] = 0x242cc80e 現行バージョン = K3.0.1 対象バージョン = T3.0.0 ライフサイクル状態 = HABオープン --------MCUフラッシュローダー情報------- 現行バージョン = K2.8.0 ターゲットバージョン = T1.0.1 --------MCUデバイスeFusemap-------- (0x940)SYSBT_CFG0=0x0 (0x950)SYSBT_CFG1=0x0 (0x960)SYSBT_CFG2=0x8 BT_FUSE_SEL = 1'b0 BMOD[1:0] = 2'b00(ヒューズからの起動)、起動デバイス内にアプリがない場合、MCUは直接シリアルダウンローダーモードに入ります BMOD[1:0] = 2'b10(内部起動)時、MCUはBOOT_CFGxピンとヒューズの両方に基づいてアプリを起動BOOT_CFGx ----------FlexRAMメモリ----------- IOMUXC_GPR->GPR16 = -------- --------MCUデバイスROM情報-------- ユニークID[31:00] = 0x8295ad77 ユニークID[63:32] = 0x242cc80e 現行バージョン = K3.0.1 対象バージョン = T3.0.0 ライフサイクル状態 = HABオープン --------MCUフラッシュローダー情報------- 現行バージョン = K2.8.0 ターゲットバージョン = T1.0.1 --------MCUデバイスeFusemap-------- (0x940)SYSBT_CFG0=0x0 (0x950)SYSBT_CFG1=0x0 (0x960)SYSBT_CFG2=0x8 BT_FUSE_SEL = 1'b0 BMOD[1:0] = 2'b00(ヒューズからの起動)、起動デバイス内にアプリがない場合、MCUは直接シリアルダウンローダーモードに入ります BMOD[1:0] = 2'b10(内部起動)時、MCUはBOOT_CFGxピンとヒューズの両方に基づいてアプリを起動BOOT_CFGx ----------FlexRAMメモリ----------- IOMUXC_GPR->GPR16 = -------- --------MCUデバイスROM情報-------- ユニークID[31:00] = 0x8295ad77 ユニークID[63:32] = 0x242cc80e 現行バージョン = K3.0.1 対象バージョン = T3.0.0 ライフサイクル状態 = HABオープン --------MCUフラッシュローダー情報------- 現行バージョン = K2.8.0 ターゲットバージョン = T1.0.1 --------MCUデバイスeFusemap-------- (0x940)SYSBT_CFG0=0x0 (0x950)SYSBT_CFG1=0x0 (0x960)SYSBT_CFG2=0x8 BT_FUSE_SEL = 1'b0 BMOD[1:0] = 2'b00(ヒューズからの起動)、起動デバイス内にアプリがない場合、MCUは直接シリアルダウンローダーモードに入ります BMOD[1:0] = 2'b10(内部起動)時、MCUはBOOT_CFGxピンとヒューズの両方に基づいてアプリを起動BOOT_CFGx ----------FlexRAMメモリ----------- IOMUXC_GPR->GPR16 = -------- --------MCUデバイスROM情報-------- ユニークID[31:00] = 0x8295ad77 ユニークID[63:32] = 0x242cc80e 現行バージョン = K3.0.1 対象バージョン = T3.0.0 ライフサイクル状態 = HABオープン --------MCUフラッシュローダー情報------- 現行バージョン = K2.8.0 ターゲットバージョン = T1.0.1 --------MCUデバイスeFusemap-------- (0x940)SYSBT_CFG0=0x0 (0x950)SYSBT_CFG1=0x0 (0x960)SYSBT_CFG2=0x8 BT_FUSE_SEL = 1'b0 BMOD[1:0] = 2'b00(ヒューズからの起動)、起動デバイス内にアプリがない場合、MCUは直接シリアルダウンローダーモードに入ります BMOD[1:0] = 2'b10(内部起動)時、MCUはBOOT_CFGxピンとヒューズの両方に基づいてアプリを起動BOOT_CFGx ----------FlexRAMメモリ----------- IOMUXC_GPR->GPR16 = --------」 「MCUがフラッシュローダーに入ったが外部メモリの設定に失敗しました。基板をリセットし、適切な起動デバイスを設定して再度お試しください」と表示されます。 私のNORフラッシュメモリはW25Q32JV Quad SPIです。 この件に関して、どうかご協力をお願いいたします。 ありがとうございました。 ナゲンドラ Re: IMXRT1176 Application Crashed , Later IMXRT doesnot boot こんにちは、 @Gavin_Jia さん。 ご回答ありがとうございます。 1.RAMからサンプルを実行したところ、IDが0になりました。 2. フラッシュはFlexSPI Aに接続されています FlexSPI1信号RT1176ボール/パッド名 FLEXSPI1_A_SCLK GPIO_SD_B2_07 FLEXSPI1_A_DATA0 GPIO_SD_B2_08 FLEXSPI1_A_DATA1 GPIO_SD_B2_09 FLEXSPI1_A_DATA2 GPIO_SD_B2_10 FLEXSPI1_A_DATA3 GPIO_SD_B2_11 FLEXSPI1_A_SS0_B GPIO_SD_B1_06 このボードは以前、私たちのアプリケーションで動作しており、Flexspiの例を使ってフラッシュを消去・プログラムすることで、アプリケーションのセカンダリーブートローダーを実装しましたが、その間にアプリケーションがフリーズし、それ以降はフラッシュできなくなりました。 Re: IMXRT1176 Application Crashed , Later IMXRT doesnot boot こんにちは、 @Nagendra_Kumar さん。 ログを見ると、MCU、ROM、フラッシュローダーはすべて正常(HABオープン、シリアルダウンローダー接続)を示しています。故障はFlexSPI–to–W25Q32JVの初期化で、ツールはSFDPパラメータすら読み取れないので、これは基板や設定の問題で、フラッシングツールの問題ではありません。新しいフラッシュでも失敗する場合は、以下の順序で確認してください。 まず、内部RAMから flexspi_nor_polling_transfer_cm7 サンプルを実行し、W25Q32JVのJEDEC IDを読み取ります。IDが読み取れない場合は、ハードウェアやピンの問題が確認できます。まだフラッシュツールに注目しないでください。 フラッシュがどのFlexSPIインスタンス/ピングループに表示されているかを確認してください。デフォルトの.cfxまた、MCUBootUtilityはFlexSPI1ポートA(EVK配線)を前提としています。もしあなたのものがFlexSPI2またはFlexSPI1のセカンダリ上にある場合は、option0のピングループフィールドを変更し、FLEXSPI_PIN_GROUP_SELヒューズ(アドレス0x9A0[10])を焼却します。MCUBootUtilityでマッチするインスタンスを明示的に選択します。 Secure Provisioning Tool(SPT)を検討してみてください。これはW25Qファミリ向けの組み込みFCBテンプレートと、セットアップを検証するためのブートメモリ構成機能を備えています。 また、このボードは以前にW25Q32JVから正常にプログラムされ、起動されたことがありますか? よろしくお願いします、 ギャビン Re: IMXRT1176 Application Crashed , Later IMXRT doesnot boot こんにちは、 言い忘れていましたが、NORフラッシュメモリも新しい部品に交換しました。しかし、エラーは依然として残っている。
記事全体を表示
硬件仿真需要PCA9698DGG,512(GPIO扩展器)的SystemVerilog、VAMS或SPICE模型。 需要 I/O 扩展器部件号 PCA9698DGG,512 的系统 Verilog、VAMS 或 Spice 模型。请尽快提供,这是关键工作所需。 数据手册链接- PCA9698 40 位 FM+ I2C 总线高级 I/O 端口,带 RESET、OE 和 INT 功能
記事全体を表示
i.MX8M Plus:VIP8000同時使用時に断続的なフレームシフトの低下と緑色のトップバンドのちらつきが発生する 1. システムと環境 パラメータ設定 SoC NXP i.MX 8M Plus Quad シリコン・レビジョン A1 / B0 カーネル 6.12.20-lts-next-g604d4ef7a1e4 BSP NXP linux-imx / LTS-Next ビバンテ/ガルコア・ドライバー 6.4.11.p3.1049711 ガルコアの場所 ドライバ/mxc/gpu-viv/galcore (内蔵) 2Dエンジン Vivante GC520L(imxvideoconvert_g2d / libg2d.so) NPU VeriSilicon/Vivante VIP8000 NPUパフォーマンス 2.3トップ ビデオエンコーダー Hantro VC8000E (v4l2h264enc) RAM ~5.7 GB LPDDR4 CMAトータル 約960MB 2. 問題の説明 VIP8000 NPUの推論とGC520L G2Dエンジンを使用したハードウェアスケーリング/カラー変換が同時に実行されると、断続的にビデオが破損する問題が発生することが確認されています。 影響を受けるH.264ストリームは、完全に緑色にはなりません。その代わりに、個々のフレームが時折次のような挙動を示すことがあります。 アクティブイメージが、わずかなピクセル数/走査線だけ下方向にずれているように見える。 画面上部に水平方向の緑色の帯が表示されます。 次のフレームはすぐに正しい位置に戻ります。 その結果、断続的にフレームが下方向にジャンプしたり、画面上端が緑色にちらついたりする現象が発生します。 この問題は同時アクセラレータのワークロード中は再現可能ですが、NPUやG2Dワークロードを独立してテストした場合は信頼性が高く再現できません。 3.主な観察事項 3.1 G2Dのみのワークロードは安定している 最大3つの同時運行可能なG2Dビデオブランチを実行できます: メイン:1080p 字幕: 360p MJPEG: 480p NPUを無効にした状態で。 映像は長時間にわたり安定しており、緑色のフレームやフレームシフトは観察されません。 3.2 NPUのみのワークロードは安定している 約 15〜30 FPS での重度VIP8000 NPU推論は、G2Dプロセッシングが非稼働中でも推論エラーや映像破損なしに連続的に動作します。 3.3 G2DをCPUプロセッシングに置き換えることで問題は解消されます ハードウェアG2Dプロセッシングが以下に置き換えられる場合: videoscale ! videoconvert NPUがフルワークロードで稼働し続けている間も、システムは安定した状態を維持する。 緑色の帯状の表示やフレームシフトの問題は、もはや発生しなくなりました。 3.4 NPUとG2Dの同時実行が問題を引き起こす NPUがアクティブで、G2Dが同時に映像やAIプロセッシングに使われていると、破損が発生します。 G2Dワークロードが追加されると、その頻度は増加する。 これは、 問題が個々のNPUやG2Dのワークロードだけでなく、同時進行中のアクセラレーター活動に関連していることを示唆しています。 4. テストマトリックス 故障原因を特定するために、以下の試験を実施しました。 Test NPU AIプロセッシングビデオG2D結果 1 オフ なし メイン + サブ + MJPEG (3つのG2Dブランチ) 合格— ちらつきなし 2 オフ SHMが添付されています メイン + サブ + MJPEG 合格— ちらつきなし 3 オン G2D対応 メインG2D 失敗— 断続的なグリーンバンド/フレームシフトが観測されました 4 オン CPU (ビデオスケール!ビデオ変換) メインG2D 合格— 主流のクリーン 5 オン CPU メイン + サブ G2D 失敗— 追加の G2D ワークロードが導入されると問題が発生します 6 オン CPU すべてのビデオブランチがCPUスケーリングに変換されました 合格— すべての河川はきれいな状態です 注:現在、この問題を引き起こすために必要な同時接続G2Dクライアントの最小数を正確に特定するための、より小規模なスタンドアロン再現ツールを準備中です。 5.現在の調査 上記の結果に基づき、この行動が以下の領域のいずれかに関連している可能性があるかどうかを理解したいと考えています。 A. Galcore / アクセラレータ同時実行 デバイスツリーでは、GPU/NPUコンポーネントは同じGPU/MLサブシステムの一部です: mix_gpu_ml@40000000 { compatible = "fsl,imx8mp-gpu", "fsl,imx8-gpu-ss"; cores = <&gpu_3d &ml_vipsi &gpu_2d>; reg-names = "phys_baseaddr", "contiguous_mem"; memory-region = <&gpu_reserved>; }; 割り込みもgalcoreによって処理されます。 34: 520 0 0 0 GICv3 35 Level galcore:0 35: 13583 0 0 0 GICv3 45 Level galcore:3d-1 36: 1737916 0 0 0 GICv3 57 Level galcore:2d 私たちは以下の点を理解したいと考えています。 galcoreは、GC520L、GC7000、VIP8000間で同期プリミティブまたはロックを共有していますか? G2DとNPUのコマンドキューは完全に独立しているのでしょうか? VIP8000推論がアクティブな状態で、複数のG2Dクライアント/プロセスが作業を送信する場合、既知の制限事項はありますか? コマンドの提出、コンテキストマネジメント、割り込み処理、リソースロックは、同時ワークロード下で遅延を引き起こす可能性があるのでしょうか? B. NoC / DDR帯域幅またはQoS GC520L G2DとVIP8000 NPUはどちらも外部LPDDR4メモリにアクセスするアクティブバス・マスタです。 重いNPU推論が以下を可能にするかどうかを判明したい。 NoC/DDRトラフィックを大幅に増加させる。 G2Dのメモリアクセス**レイテンシ**を増やしてください。 G2Dトランザクションの遅延を引き起こす。 G2Dと下流の消費者間のタイミング/同期の問題を明らかにする。 NoC/DDRのQoS優先順位の影響を受ける。 NXPは、この種のワークロードを調査するためにi.MX8MP上で推奨される NoC/AXI/DDRのパフォーマンス監視およびQoS機能 について指針を提供できるでしょうか? C. G2Dバッファ同期/フェンス/ストライドの問題 この視覚的なアーティファクトは、フレーム全体が破損しているわけではないという点で特に興味深い。 影響を受けるフレームは、おおよそ以下のようになります。 +----------------------------------+ | GREEN HORIZONTAL BAND | +----------------------------------+ | | | | | IMAGE SHIFTED DOWN | | | | | +----------------------------------+ これにより、この問題には以下のようなものが含まれる可能性があるのではないかと疑問が生じます。 G2D宛先バッファの同期。 DMA-BUFの所有権/再利用。 フェンスの信号発信/完成。 一時的なG2D目的地オフセット/ストライド状態。 G2Dメモリ書き込みの遅延。 G2D操作が完全に完了する前に下流VPUアクセスが行われています。 特に、遅延したG2Dの完了や同期イベントが、v4l2h264enc / VC8000EがすべてのG2D書き込みが完了する前に目的地DMA-BUFを消費する可能性はありますか? NXPのG2D/V4L2パイプラインには、宛先DMA-BUFがVPUによって消費される前にG2D処理が完了することを保証する、文書化された同期メカニズムはありますか? D. メモリ / CMA 問題の再現中にメモリ使用量を監視しました。 Total RAM : ~5.7 GB CmaTotal : ~960 MB CmaFree : ~677 MB したがって、CMAは故障発生時にも枯渇状態には至っていない。 しかし、同時進行のNPU/G2D/VPUワークロードに影響を与える可能性のある他のメモリ関連の考慮事項があるかどうかを知りたいです。例えば: DMA-BUF同期。 キャッシュの一貫性。 メモリ領域のマッピング。 物理バッファのアライメント。 バッファの再利用。 IOMMU/MMUマッピング。 予約メモリとのやり取り。 6.追加の診断実験 現在、アプリケーションレベルの複雑さを取り除くための最小限のスタンドアロンリプロダクションを準備中です。 計画されている複製装置には以下が含まれる: Thread 1 → VIP8000 NPU inference Thread 2 → GC520L G2D processing Thread 3 → Additional GC520L G2D processing また、以下の構成についてもテストを行う予定です。 NPU OFF + G2D NPU ON + G2D NPU ON + 2 × G2D NPU ON + G2D → buffer inspection NPU ON + G2D → VPU encoder これにより、破損がG2D出力バッファ自体で発生しているのか、それともバッファがVPUによって消費された後にのみ発生しているのかを判断するのに役立つはずです。 7. NXPへの質問 NXP社には以下の点についてご助言いただければ幸いです。 1. 既知のハードウェア/ソフトウェアの制限 以下の同時実行は可能ですか? VIP8000 NPU + GC520L G2D + VC8000E VPU i.MX8M Plusでは、複数の同時G2Dクライアントを含むすべての機能が完全にサポートされていますか? この組み合わせに関連する既知のハードウェア制限、訂正表、ソフトウェア上の制限はありますか? 2. ガルコア VIP8000とGC520Lの同時動作に関して、既知のガルコアの問題はありますか? 特に、以下のような既知の問題はありますか? 共有ロック、 コマンドキュー、 コンテキスト切り替え、 割り込み処理、 同期、 それともリソースマネジメントですか? 3. DMA-BUF / 同期 宛先DMA-BUFが下流のV4L2/VPUコンポーネントによって消費される前に、G2Dの完了を保証するためにどのようなメカニズムが使用されますか? imxvideoconvert_g2d/libg2dの同時アクセラレータワークロード下で、フェンスやバッファの所有権問題が既知のものはありますか? 4. NoC / QoS NXPは、測定にどのようなデバッグレジスタ、debugfsノード、パフォーマンスカウンタ、またはツールを推奨していますか? GC520L AXIトラフィック、 VIP8000 AXIトラフィック、 VPUトラフィック、 DDR帯域幅、 NoC競合、 QoS/仲裁動作はどうでしょうか? 5. ドライバーバージョン 現在使用しているもの: Kernel: 6.12.20-lts-next-g604d4ef7a1e4 Galcore: 6.4.11.p3.1049711 この組み合わせは、i.MX8MPの検証済み/推奨構成ですか? NPU/G2Dの同時ワークロードに対応する新しいgalcore / G2Dのドライバーやパッチセットはありますか? 6. シリコン関連の訂正 当サイトA1/B0リビジョンに適用されるi.MX8M Plusシリコンエラッタに、以下に関連する問題が含まれているかどうか確認していただけますか。 G2D、 VIP8000、 VPU、 AXI/NoC 仲裁、 DDR、 キャッシュコヒーレンシ、 それとも同時アクセラレータの動作ですか? 7. 推奨構成 アプリケーションを必要とする場合: VIP8000 NPU inference + multiple G2D scaling/color-conversion pipelines + VC8000E H.264 encoding NXPはどのような構成を推奨していますか? 具体的なものはありますか? ドライバーパラメータ、 QoS設定、 メモリ/バッファプール構成、 同期メカニズム、 またはGStreamerパイプラインの実践 それは従うべきことでしょうか? 8. 提供できる情報 必要に応じて以下の情報を提供できます: GStreamerパイプラインを完全に構築します。 デバイスツリーの設定。 カーネル設定。 再現時のdmesg出力。 /proc/interrupts。 G2D/NPUワークロードの詳細。 v4l2-ctl の情報。 最小限のNPU + G2D再現プログラム。 破損したフレームを含むビデオサンプル。 ドライバのバージョンとビルド情報。 推奨されるデバッグ手順、または根本原因がG2D/NPU同期、DMA-BUF/フェンス処理、NoC/DDR競合、galcore、またはシリコン制限に関連しているかどうかを判断するのに役立つ追加のトレース/レジスタに関するガイダンスがあれば幸いです。 よろしくお願いします。 ヴィシュヌS i.MX 8M | i.MX 8M Mini | i.MX 8M Nano
記事全体を表示