5-ARM快速模型用于嵌入式软件开发的虚拟平台
ARM快速模型
用于嵌入式软件开发的虚拟平台
作 者Nizar RomdanARM系统设计部摘 要:
随着越来越多的处理器集成到现代SoC中,加上软件内容大幅度增加(在很多情况下,占据了芯片功能的50%甚至更多),为确保满足日益缩短的上市时间期限,赶在尚未获得任何硬件原型之前就提前开始软件的开发变得至关重要。
本文介绍了适用于早期软件开
当今使用多个处理器的SoC已很常
速度仍然相对较慢,而时序逼近已不足以让人对硬件时序行为有一个准确的概念,也不允许大量的软件以足够快的速度来执行。并且更糟的是,业界无法对时序逼近给出一个统一的定义,导致关于时序逼近有许多种不同的解释。
考虑到程序员需要有关目标硬件功
见,有些SoC使用的处理器多达几十个,奇怪的是,这些复杂的SoC交付上市的时间却缩短了。以前一般期限为两年,在需要竭力捕捉商机并赢得重要市场份额的今天,这么长的时间是完全不可接受的。
传统的设计流程由两个步骤组成,
即先由硬件工程师开发SoC,然后软件团队才开始工作,只有在首个硬件原型到手后,软件工程师才能开始工作。随着交付期限的缩短,如今已不可能采用这种工作模式,目前有一种趋势正日益普及,那就是在还没获得硬件之前就开始着手软件开发,这就要求软件工程师们充分发挥自己的创造力,努力找到模拟硬件的方法。
解决问题的方法现已找到,即虚拟原
能和目标硬件的程序员模型的信息,则松散时序虚拟原型由于可提供功能精度和高仿真速度而成为早期软件开发的理想之选。ARM快速模型
ARM快速模型是一个丰富的产品组合,其中包括高速、可靠的程序员ARM CPU视图模型、ARM fabric IP和外围设备。它由一个工具套件提供支持,该工具套件分为两部分:设计画布与模型生成器以及调试器。设计画布与模型生成器被称为“系统生成器”,可支持使用这些模型构建基于ARM技术的子系统;调试器被成为“模型调试器”,可对这些子系统进行调试。
发的ARM快速模型,利用这一模型,不仅能够以近乎实时的速度执行软件,还能在功能上保持完整的精度。文章重点阐述了相比第三方供应商的同类产品,该模型所具备的关键不同元素。
此外,本文还对系统生成器工
型技术,有了这项技术,工程师们便能够在获得硬件之前就开始软件开发,通过这种方法,硬件团队可以极为迅速地提供SoC功能的虚拟表示,使软件开发人员能够开始编写软件。
第一个典型虚拟表示是提供一个具
具(System Generator tool)进行了介绍,该工具是ARM®快速模型的一部分,有了这一工具,开发人员不仅可以构建虚拟平台,并以100到500 MIPs的速度执行软件,还能将基于ARM技术的子系统导出到第三方SystemC仿真环境中。
有完整功能并且时序正确的硬件模型。但是,这种模型的仿真速度很慢,并且无法随着软件复杂度的提高而扩展;开发一小段启动代码可能行得通,但是在一个复杂操作系统上开发大型应用软件层是绝对不现实的。再者,在很短的时间期限内,在尚未获得RTL之前利用合理的资源开发精确的时序模型确实不具备可行性。
另一种做法是,在尝试提高仿真速度
这些模型的功能行为与从软件
中观察到的功能行为相符,包括基于TrustZone®硬件的安全技术和Jazelle
®
Java加速技术。为实现较快的仿真速
度,牺牲了时序精确性,所有存储器访问时序均被假定为零等待状态,所有指令都在一个组件主时钟输入周期内集中执行,并且在每个指令边界都不取中断。指令序列按批执行,若设备恰好处于在各次访问之间运行的间歇时间,这可能会使某个CPU的事务看起来像是在背靠背访问设备寄存器。虽然紧密耦合存储器
时只要求提供一个大致的时序精度,但是这样做结果也没有太大差别。这些模型的
Number 10, Spring 2009
5-ARM快速模型用于嵌入式软件开发的虚拟平台
表1 ARM快速模型库
ARM快速模型的竞争优势
与其他第三方产品相比,ARM快速模型拥有四个独一无二的关键功能,这不仅让这些模型独具特色,而且使成为在获得硬件之前提前对基于ARM技术的嵌入
图2 单个软件构建链
5-ARM快速模型用于嵌入式软件开发的虚拟平台
便会不时发现功能问题,而且,他们还必须分别为虚拟原型和硬件原型维护不同的构建链。
运行,也可通过一个合适的调试器来运行,系统生成器自动为独立平台和集成平台生成所需接口。
然后将新模型作为输入应用到更为复杂系统中,或将其作为单独仿真环境来分发。符合OSCI TLM 2.0规范的系统生成器导
出功能
要创建一个完整的SoC虚拟平台,用户通常需要集成其IP模型或第三方IP模型,并将模型与基于ARM技术的子系统关联起来。用户经常会面临的一个重要问题是适应不同的模型接口,在很多情况下,这个封装活动会占据构建虚拟平台的大部分工作,导致平台可供投入使用的时间严重推迟,并使得采用早期软件开发方法所获得的成果失效。
OSCI TLM 2.0标准是解决这一问题
表2 ARM快速模型性能测量
ARM CPU快速模型中使用的“代码 有了系统生成器,用户可以使用组
的良方,因为它提供了一个互操作层,允许以插件和“游戏”的方式来连接模型。ARM一直非常积极地参与OSCI TLM 2.0标准的建立,不仅为OSCI TLM 2.0定义的通用有效负载提供官方AMBA程序员视图扩展,而且推出了业界首个支持新标准的模型库(如图5所示)。
通过系统生成器,用户可将基于
转换”技术提供了一个创新方法,即在仿真期间动态转换ARM指令,既确保功能准确性,又能规避与交叉编译方法相关的风险。这些指令被转换为本地主机的对等指令并进行高速缓存,以便加快后续仿
件、组件端口、外部端口的图形化表示来组装系统,也有可能系统本身就是位于各端口相互连接的大型系统中的一个组件。系统生成器有一个框图编辑器,用于创建系统的图形化表示,它还提供了一些类似
ARM快速模型的子系统导出到符合OSCI TLM 2.0标准的接口上,以方便子系统与符合该标准的第三方模型集成,及子系统与第三方SystemC环境直接集成。导出功能通过针对OSCI TLM 2.0 AMBA的程序员视图扩展来实现,该功能可轻松适应
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说医药卫生ARM 《IQ》中文杂志 2009 Spring -5-ARM快速模型用于嵌入式软件在线全文阅读。
相关推荐: