系统与设计
的意见

快速模式,循环模型

如何使用最新的软件开发模型和性能分析。

受欢迎程度

有很多的报道自从推出新CPU和图形核心在2017年台北国际电脑展,包括一些早期的软件开发的信息。公告新的手臂臂模型的IP是一个里程碑,因为它意味着我们现在可以讨论可用模型和分享关于新的IP的附加信息。

手臂快速模型循环模型为合作伙伴做系统架构和启用虚拟样机开发软件为新Cortex-A75和Cortex-A55硅是可用的。速度模型和循环模型为仿真提供不同的权衡速度和抽象级别,这使各种用例。

模型提供高仿真速度快和灵活的程序员的观点,使设备驱动程序的发展,硅前固件,操作系统和应用程序的可用性。快速模型支持软件分析、调试、跟踪,并提供一个SystemC接口与第三方集成仿真环境。

快速的典型用例模型包括功能性软件调试、软件性能分析和优化,和软件验证和持续集成。支持Cortex-A75和Cortex-A55最近发布的快速模型11.0中可用。

周期模型周期准确,使用户能够自信地对IP做出架构决策选择和IP配置。周期模型运行在SoC设计或任何SystemC模拟器包括模拟器EDA伙伴。

典型的周期模型的用例包括IP选择和配置,分析HW /西南互动,和基准测试和系统优化。支持Cortex-A75 Cortex-A55是可用的手臂IP交换

本文提供了一些背景知识的新从建模的角度,给出了一些如何使用的例子新IP系统的一个例子。重点是Cortex-A75 DynamIQ多核体系结构和模型,Cortex-A55。

在建模有什么新鲜事
手臂DynamIQ技术是变化最大的CPU子系统在一些时间。在过去的十年中臂引入了众多Cortex-A cpu安排在一个集群中1 - 4 cpu和扩展系统包含多个集群的能力。最常见的系统包括2集群共有6 - 8 cpu。DynamIQ集群可以包含多达8 CPU的混合不同的CPU类型。单个模型的异构集群是一个新的概念模型和快速循环模型作为用户已经习惯了齐次集群与1 - 4 cpu。

直到现在,CPU的概念从MPIDR ID和集群ID注册已经基本相同的比特(1:0)确定了CPU和比特(十一8)确定集群数量。Cortex-A75和Cortex-A55使MPIDR亲和力的不同使用水平。

  • 亲和力级别2位(23:16)识别不同的集群系统中。这个领域的价值等于值出现在CLUSTERIDFAFF2配置信号。
  • 亲和力水平1比特(很高)标识单个集群中的核心。值的范围可以从0 x00核心0,0 x07核心7。
  • 亲和力0级中位(7:0)确定各个线程在一个多线程的核心。自Cortex-A75和Cortex-A55都是单线程的值是0。

这意味着软件用来读0,1,2,3,以确定哪些CPU上运行的是现在读0,0 x100, 0 x200型,0×。

考虑到额外的灵活性配置DynamIQ技术,快速模式和循环模型已经大大地改变了。快速固定配置模型的模型有很多选项,如ARMCortexA55x4CT_CortexA75x1CT和ARMCortexA55CT_CortexA75CT等灵活的模型具有参数设置的核心Cortex-A75 Cortex-A55子集。使用一个变量的cpu数量允许模型端口被描述为数组的数组索引匹配相关的核心。周期模型还支持许多配置选项通过自动化模型建设手臂IP交换。下面的更多信息在周期模型部分。

DynamIQ技术大大扩展了可能的配置选项和手臂模型增强也支持附加的灵活性。

例子快速模型系统

一个伟大的方式学习新手臂IP是看例子快速模型系统,包含新模型。DynamIQ技术有许多例子PVLIB_HOME美元/例子/ LISA / FVP_Base包含Cortex-A75和Cortex-A55。

基础平台系统模型允许早期发育,分布和示范新cpu的软件交付。一系列基地FVPs DynamIQ提供不同的配置。基地的好处是,它提供了一组标准的外围软件开发和移植。基地是用于广泛的Cortex-A处理器因此尝试系统非常容易变化。

基础平台也为DynamIQ有助于理解发生了什么变化。作为一个虚拟样机系统脱颖而出的创造者有几件事:

  • PERIPHBASE参数,这是长期以来最重要的一个系统,从Cortex-A75 Cortex-A55
  • 上述MPIDR信息也影响GICv3配置
  • 电源管理界面是不同的

GICv3影响CPU的关联性参数:

Cortex-A73和Cortex-A53:

=“CPU-affinities 0.0.0.0, 0.0.0.1 0.0.0.2, 0.0.0.3”

Cortex-A75和Cortex-A55:

=“CPU-affinities 0.0.0.0, 0.0.1.0 0.0.2.0, 0.0.3.0”

如果感兴趣的模拟电源管理,一些旧的端口已被拆除,取而代之的是新的p沟道港口,pchannel_core pchannel_cluster,简化省电序列和需要更少的软件干预。

除了阅读新的手臂IP的文档,这是一个很好的学习经验看看港口和参数的基本系统,他们指出,配置和系统连接信息时很大的帮助与快速模型构建自定义系统。

文档的基础平台在这里

裸金属软件
在处理新cpu最好看看裸金属软件首先要了解什么是不同的。手臂DS-5提供裸金属软件实例可以用于此目的。有一个. zip文件$ DS5_HOME / / Bare-metal_examples_ARMv8.zip例子

解这表明几个有用的目录,startup_Cortex-A55_Cortex-A75 /和fireworks_Cortex-A55_Cortex-A75 /

这两个可以用最新的ARM编译器编译6包含在DS-5 5.27.1。为每个显示Cortex-A75 makefile和Cortex-A55确实ARMv8.2 cpu和使用3月= armv8.2-a编译完成

改变CPU标识如下所示:

把它放在一起
演示的胳膊DS-5和快速模型一起工作很好复习的过程。虽然实验基地是一个很好的起点,大多数用户想创建自定义快速模型系统的良好的评论如何编译基础系统和使用它们作为一个跳开始构建自定义系统。

首先,导入ARMv8软件上面描述的例子使用文件- >导入> DS-5-Examples和编程库。

接下来,编译和运行速度模型基础平台DynamIQ PVLIB_HOME美元/中/ LISA / FVP_Base / Build_Cortex-A55 + Cortex-A75例子

由于快速模型在Linux上支持多个版本的gcc,适当的配置可能需要设置。对于Ubuntu 16.10的配置可以通过加载设置FVP_Base_Cortex-A55 + Cortex-A75。sgproj sgcanvas和设置配置linux64 -释放- gcc - 5.4。

编译:

美元。/ build.sh

$ cd linux64 -释放- gcc 5.4 /

与下级法官服务器开始运行:

英国石油美元。/ isim_system - c。secure_memory = false - s

这将启动模拟。

现在使用的程序连接DS-5描述的快速模型系统在这里并开始调试。下图显示了烟花的例子在基础平台上调试系统。

DynamIQ周期模型的创建和使用
周期模型、手臂DynamIQ技术带来了一些改变手臂IP交换模型创建。这是第一次可以组合成多个CPU类型创建单个集群和单个模型包含多个CPU类型和DynamIQ共享单元(DSU)。这导致成千上万的可能的配置8核心集群。IP交换为Cortex-A75提供选项来构建模型,DynamIQ Cortex-A55,。前两个选项只会允许各自的核心包括最后一个选项允许指定的CPU类型和单个模型生成的大。小集群。

有多个CPAKs(周期模型性能分析工具)可以在ARM系统交换包括Cortex-A75和Cortex-A55。有一个CPAK包含两个cpu 2 + 4的配置。

模拟时,右键单击DynamIQ集群显示6芯注册视图菜单。下面的屏幕截图显示了2 + 4的注册菜单配置。

DynamIQ周期模型用于PMU的事件检测性能分析。分析可以通过右键单击启用CPU模型并选择配置菜单或使用Profile按钮上方的GUI。任何或所有的PMU事件可以启用。启用任何模拟与分析将选中的PMU事件写入系统分析仪数据库。交易活动也可以描述测量带宽和延迟的交通所产生的各种配置。新的异构集群可能需要新的分析互连和内存控制器的性能,以确保最好的建筑是新设计的选择。下图显示了所有可用的性能信息的一个子集的DynamIQ集群。

手臂DynamIQ周期模型可以用于SoC设计师和SystemC。SoC设计模型软件分析和SystemC模型建成的停机坪上输出所有DynamIQ内核。

SoC设计模型也有调试器支持在最近发布的手臂DS-5 5.27.1允许内存和寄存器的观点以及单步和其他常见的调试功能。

总结
宣布第一个胳膊DynamIQ cpu表示第一个异构集群设计。直接支持ARM工具集可以开始学习最新的技术远远领先于硅的可用性。手臂模型可用现在开始看系统设计、性能分析和软件开发。请参考developer.arm.com有关部门开发工具的更多信息和最新信息的手臂IP。



留下一个回复


(注意:这个名字会显示公开)

Baidu