查看: 4989|回复: 1

[分享] i.MX RT 系列性能优化

[复制链接]
  • TA的每日心情
    开心
    2025-7-11 08:53
  • 签到天数: 301 天

    连续签到: 2 天

    [LV.8]以坛为家I

    3941

    主题

    7562

    帖子

    0

    管理员

    Rank: 9Rank: 9Rank: 9

    积分
    40236
    最后登录
    2025-9-10
    发表于 2020-12-15 16:24:23 | 显示全部楼层 |阅读模式
    i.MX RT 系列性能优化
    1 简介
    i.MX RT 系列充分利用了 Arm® Cortex®-M7 内核和 32K/32K L1 指令/数据缓存,它们的运行速度高达 600 MHz,提供高 CPU 性能和良好的实时响应。
    • i.MX RT1050 处理器具有 512 KB 片内 RAM,可灵活配置为 TCM 或通用片内 RAM。
    • i.MX RT1060 处理器还有额外的 512 KB OCRAM,总计 1 MB 片内RAM。
    i.MX RT 系列提供各种存储器接口,包括 SDRAM、RAW NAND 闪存、NOR闪存、SD/eMMC 和 FlexSPI。这些丰富的特性有助于 i.MX RT 系列实现灵活
    应用和高性能。在这些存储器件中运行的系统性能取决于系统和存储器类型。


    2 概述
    i.MX RT 集成了高性能 Cortex-M7 内核,能够:
    • 达到 600 MHz 的运行速度。
    • 利用 32 K 数据缓存和指令缓存来增强性能。
    • 利用可配置的灵活 FlexRAM,将 512 KB FlexRAM 分区为基于 DTCM/ITCM/OCRAM 的应用。
    有关如何配置 FlexRAM 的说明,请参见 AN12077。
    i.MX RT 是无闪存器件。但它嵌入了高性能的内部 SRAM,还集成了丰富的外设,能够与很多存储器件连接,例如 SDRAM、RAW NAND 闪存、NOR 闪存、SD/eMMC、四路 SPI 闪存和 Hyper 闪存。
    根据工作模式,存储器可以分为两种类型。
    • XIP 存储器:本地执行代码。
    • 非 XIP 存储器:不支持本地执行代码,而是将代码加载到可执行存储器。
    下面列出了 i.MX RT 系列支持的可执行存储器。
    • ITCM/DTCM
    • SDRAM
    • OCRAM
    • Hyper RAM
    • Hyper/Octal NOR 闪存(XIP 支持)
    • QSPI NOR 闪存(XIP 支持)
    • 并行 NOR 闪存(XIP 支持)


    • 并行 SRAM
    基于总线架构和存储器特征,不同的存储器提供不同的性能。图 1 显示了 RT 系列的架构,以 i.MX RT1060 系列总线图为例。
    11.png
    如图 1 所示,TCM 与 M7 内核紧密耦合,与内核的频率相同。OCRAM 和 SEMC 连接到 SIM_M7 结构,FlexSPI 连接到SIM_EMS。对于访问相同存储器的不同主机,它展现出不同的性能。例如,
    • 当 MCU 内核访问时,TCM 展现高性能。
    • 当 DMA 访问时,OCRAM 展现比 TCM 更高的性能,而当 MCU 内核访问时,性能比较低。原因是 OCRAM 和 DMA 位于相同的总线结构中,在访问过程中的延迟较小。
    表 1 显示了总线结构概览。
    表 1. 总线结构概览
    12.png
    2 显示了 i.MX RT 支持的所有存储器的总线带宽。
    13.png
    总线带宽是影响存储器性能的主要因素,但器件存储器性能并非完全取决于总线带宽。总线架构提供的一些增强特性也可以改进存储器性能,例如指令缓存/数据缓存。FlexSPI IP 支持额外的 1 KB RX AHB 预取缓冲区,它可将闪存数据预取到专用缓冲区,这样可以减少读取访问过程中的访问延迟。但是,这种改进要取决于应用。例如,当缓存命中率很高或按顺序访问 QSPI 闪存时,实现的改进较多。系统性能与存储器件和用例相关。在某些用例下,它能够达到相似的性能,如表 7 所示。但在其他用例下,它在不同存储器上运行的性能差距很大。下面介绍了这种性能差距,以及如何加以改进。
    3 存储器性能测试
    存储器性能取决于存储器特性、系统架构和其他一些因素,例如缓存、预取缓冲器和管道等。不同主机(例如 CPU 内核、PXP、LCD、CSI、USB、eDMA)访问相同的存储器时提供不同的性能。例如,当 LCD 和 PXP 访问时,SDRAM 能够达到高吞吐量,因为这两种主机支持背对背访问。与其他主机访问相比,SDRAM 能够达到更好的性能,但在 CPU 内核访问时,性能下降更多。下面的性能讨论基于 CPU 内核访问。
    3.1 SDRAM 性能
    i.MX RT 系列支持与 8/16 位 SDRAM 器件的连接,运行速度最高达到 166 MHz。表 3 显示了传输测试结果,测试方法是读/写4096 字节的数据,按系统节拍测量 SDRAM 传输这些数据的时长。
    14.png
    表 3 显示 SDRAM 写入访问性能良好。这些优势归功于管道和 SEMC IP 高性能,还有缓存,相比读取性能改进更多。
    要重现以上测试,您可从附带的软件包获取测试代码。测试步骤如下:
    • 解压 performance test 软件包,通过以下命令打开 semc.eww:C:\Users\nxa18895\Desktop\New folder\AN12437SW\boards\evkbimxrt1050\demo_apps\performance_test\sdram_perforamnce_test\iar。请首先安装 IAR 版本 8.40 或更高版本。
    • 构建 debug 子项目以生成 s-record 文件。DCACHE_ENABLE 宏用于禁用或启用数据缓存。您可以根据测试要求来修改该宏。
    10.png
    • 使用以下命令生成 sb 文件。


    • 通过基于 IMXRT1050-EVKB 板的 MFGTool,烧写闪存。
    • 代码在内部 ITCM 上运行。不要通过调试直接运行代码,这可能影响性能。

    将代码下载到闪存之后,您可在串行终端中运行代码并查看测试结果。
    15.png

    3.2 FlexSPI 性能
    i.MX RT 支持 FlexSPI 接口。它提供灵活的配置,可以连接 QSPI 闪存、OCTAL 闪存、Hyper 闪存和 Hyper RAM。它支持 AHB和 IP 命令接口。AHB 访问有助于实现高性能,如下文所述。FlexSPI 支持在该连接 NOR 闪存上的就地执行(XIP)。连接到 FlexSPI 的 BEE 模块在运行过程中解密映像。FlexSPI 的以下增强特性有助于改进性能。

    • 系统缓存(32 k 数据缓存和 32 K 指令缓存)
    • AHB 缓冲区、8*64 位 TX AHB 缓冲区和 128*64 位 RX AHB 缓冲区
    表 4 显示性能评估,以 Hyper/QSPI 闪存为例。
    表 4. Hyper 闪存性能

    16.png

    Hyper 闪存的性能高于 QSPI 闪存。这得益于总线带宽、工作速度和工作模式(DDR)。通过启用缓存和预取缓冲器,性能得到更
    多提高。测试结果表明,虽然在 QSPI 闪存上的性能接近,但在启用预取缓冲区时,无论缓存是处于启用还是禁用状态,预取缓
    冲区都可以提高性能。当禁用预取缓冲区和缓存时,性能下降大约 77 %。
    预取给 flexSPI 性能带来了很大影响。它为不同主机指定不同的缓冲区大小。这意味着有些主机可能有专用的预取缓冲区,这在
    某些应用中可以优化性能。例如,它可为 eDMA 分配指定大小的缓冲区。如果需要频繁通过 eDMA 将数据从外部 QSPI 闪存传
    输到内部 SRAM,其他主机将不会破坏用于 eDMA 的预取缓冲区内容。如果下一次访问 eDMA 请求精确命中缓冲区,可减小访
    问延迟。这样它可以进一步提高性能。
    FlexSPI 提供以下寄存器,为不同主机设置缓冲区大小。
    • AHBRXBUF0CR0
    • AHBRXBUF0CR1
    • AHBRXBUF0CR2
    • AHBRXBUF0CR3
    用户可以修改这些寄存器,并为某些主机中的服务分配专用缓冲区大小和主机 ID 定义,如表 5 所示。



    未完......


    点击下载中文完整版资料

    qiandao qiandao
    回复

    使用道具 举报

  • TA的每日心情

    2021-1-22 17:33
  • 签到天数: 3 天

    连续签到: 1 天

    [LV.2]偶尔看看I

    30

    主题

    85

    帖子

    0

    高级会员

    Rank: 4

    积分
    645
    最后登录
    2025-6-10
    发表于 2020-12-15 17:58:00 | 显示全部楼层
    总结的不错
    哎...今天够累的,签到来了~
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /3 下一条

    Archiver|手机版|小黑屋|恩智浦技术社区

    GMT+8, 2025-9-10 09:58 , Processed in 0.084389 second(s), 21 queries , MemCache On.

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.

    快速回复 返回顶部 返回列表