从 Arm 编译器 5 迁移到 Arm 编译器 6
Arm 编译器迁移和兼容性指南通过比较命令行选项、源代码差异、汇编语法和其他感兴趣的主题来帮助评估过程。
例如,从 Arm Compiler 5 上的 Cortex-M4 处理器更改为 Arm Compiler 6 上的 Cortex-M55 处理器时,需要更改一些编译器命令行选项:
迁移指南提供了与特定交换机相关的更多详细信息,但这些是开始的基础。某些编译器开关可能需要删除,因为它们特定于 armcc 并且不需要。
调试你的代码
来自 Keil MDK v5.30 的 Development Studio 2020.0(青铜版及更高版本)和 µVision 都为软件调试添加了 Cortex-M55 支持。这包括 Armv8.1-M 中新寄存器的反汇编和更新的寄存器视图。
Keil MDK 是最全面的 Cortex-M 项目软件开发环境,而Development Studio可与任何 Arm IP 一起使用。
Development Studio 中的反汇编窗口显示了前面示例中的向量指令。
同样, µ Vision 调试器也显示了 向量 指令的反汇编:
Development Studio 和µ Vision 展示了 向量 寄存器,包括 Q 寄存器(以最适合您需要的格式)和 VPR(向量预测状态和控制寄存器)。
同样, µ Vision 具有 可配置 显示的 Helium寄存器的专用视图:
使用快速模型在没有硬件的情况下开发代码
计数指令是初步估计算法将如何执行的好方法。快速模型是 Arm IP 的快速、灵活的程序员视图模型,允许您在硅可用之前开发驱动程序、固件、操作系统和应用程序等软件。它们允许完全控制模拟,包括分析、调试和跟踪。快速模型可以导出到 SystemC,允许集成到更广泛的 SoC 设计过程中。Cortex-M55 快速模型提供了一种很好的方式来了解新指令的详细信息,而无需硬件开发板。
快速模型典型用例:
功能软件调试
软件分析和优化
软件验证和持续集成
Cortex-M55 处理器的快速模型将于 3 月作为快速模型 11.10 的一部分发布
快速模型非常适合构建具有与正在设计的 SoC 相匹配的内存映射和外设的定制虚拟平台。除了使用 Arm IP 模型创建虚拟平台外,还可以扩展系统以包括使用 SystemC 的自定义外围设备和其他模型。
对于不需要自定义虚拟平台的用户,Arm 提供固定虚拟平台。FVP 是对 Arm 系统的完整模拟,包括处理器、内存和外围设备。Cortex-M55 FVP 将在上述 Keil MDK 和 Development Studio 版本中提供。
使用循环模型分析性能
循环模型 直接从 Arm RTL 编译并保持完整的功能准确性。这使得基于使用基准软件的 SystemC 仿真的可靠 IP 选择决策成为可能。许多项目根据应用程序特定的软件操作选择 CPU,例如流式小矩阵或算法的其他重要部分。周期模型非常适合研究在项目的 IP 选择阶段关键软件功能需要多少周期的细节,并比较 Arm IP 的性能。循环模型在 SystemC 模拟器中运行,包括 Accellera 参考模拟器和来自 EDA 合作伙伴的模拟器。
Cortex-M55 SystemC 循环模型支持多种有助于性能分析的特性:
SystemC信号接口
指令跟踪(也称为停机坪)
PMU 事件跟踪
波形生成