通过虚拟原型进行先进的软件开发:Synopsys公司

Partners: 1 of 6

嵌入“RH850”中的面向汽车电子应用系统的“虚拟原型”

通过先进的仿真技术在汽车应用程序开发过程中进行软件验证和解决问题

Synopsys

在汽车产业界,为了满足新型车的性能要求和用户需求,需要编写多达数百万行的嵌入式软件的代码,并重复进行测试及调试。由于开发日程紧凑,所以一般都是在真实的硬件到手之前就开始进行软件开发了。瑞萨的合作伙伴暨EDA(Electronic Design Automation,电子设计自动化)工具和半导体IP领域的世界级领导者---Synopsys公司(Synopsys, Inc., Nasdaq:SNPS),愿意为技术开发者提供强力支持。

使用瑞萨新一代面向汽车产业的单片机“RH850”的用户可结合使用Synopsys公司的最新工具来提高嵌入式软件的开发效率。为此,本文专门采访了在Synopsys公司中负责产品营销的Marc Serughetti先生,请他来介绍在实际的汽车电子应用系统开发过程中,如何才能早期开始进行软件开发以及如何才能完成高质量的嵌入式系统及软件。

Marc Serughetti  Director of Product Marketing  Synopsys

Marc Serughetti Director of Product Marketing
Synopsys, Inc.

进行汽车电子应用系统开发时所面临的“难题”

EDGE: 非常感谢您给我们这次采访机会。据我们所知, Synopsys公司在EDA领域是行业的领导者,在2012年的营业额达到了17亿6000万美元。首先请您介绍一下嵌入式软件开发的现状以及颇受市场关注的发展方向吧!

Serughetti: 这是一个非常有意义的问题。根据对象市场的不同答案当然也不一样,所以今天我们聚焦于汽车行业进行介绍吧。瑞萨公司和Synopsys公司在汽车领域方面都倾注了大量精力,并积累了丰富的经验。在汽车行业的电子设备方面,瑞萨是一家具有代表性的供应商,而在汽车生产商中,排名前15的公司中有80%是Synopsys公司的客户、Tier-1生产商(一级生产商)中的60%也是我们Synopsys公司的客户。为了满足客户需求,Synopsys公司进行了各种电子设备的开发,是一家具有长远目标的、财务状况稳定的可信赖的企业。

Marc Serughetti

就目前而言,嵌入式软件的开发可说是全世界汽车产业界所面临的最大课题吧。甚至可以说,软件比发动机、传动装置、汽车底盘、悬挂装置等这些大家都耳熟能详的硬件更加重要。因为每一辆标准的新型汽车上都搭载有由50至100个单片机组成的ECU(Electronic Control Unit,电子控制单元)。所以每一辆汽车上都通过ECU来运行着1000万行甚至1亿行的软件代码,其规模可谓令人惊叹。

而且,随着汽车以及卡车的更新换代,软件的重要性愈发显现。通过软件进行的控制不仅影响到安全功能、环境性能、便利性、导航、娱乐以及通信功能等。如果在这些方面软件表现优秀,这将更能提高汽车生产商的竞争力,反之,如果软件方面存在缺陷,这将极大地影响到汽车的销售业绩。

因此,整个汽车行业都致力于进行可靠性高的嵌入式软件的开发。例如,Tier-1生产商在软件开发方面的投入最高占用来R&D (Research And Development,产品的研究开发)资源的50%,而且,软件开发的进展情况极大地左右着产品的开发计划。

其实,由于软件开发的延迟而导致了汽车及卡车新车型的发表日期延迟的事例时有耳闻。出现这样的情况将会对市场造成重大影响,反之,优秀的软件开发将有助于新车型的销售。

EDGE: 瑞萨的“RH850”、“V850”以及“SH- 2A/SH-4A”等单片机是决定应用程序性能的重要因素,而单片机的应用程序被作为专门的软件代码被执行的。硬件和软件的结合是决定系统设计成败的关键,我们听说客户在软件开发方面也投入了大量的资金。因此,瑞萨在针对自家公司的芯片提供高品质服务的同时,同时还向各领域的专家暨合作者提出同样的要求。这就是为什么瑞萨将Synopsys公司视为非常重要的合作伙伴的理由之一。

让我们来听听专家的意见吧。目前的软件开发工具都能够严格遵守汽车电子应用系统开发者紧凑的开发日程,并为其提供足够的性能和功能吗?

Serughetti: 嵌入式应用软件代码非常复杂,软件代码的编写,测试和调试必须与汽车上运行的实际硬件同时并行开发。也就是说,软件开发必须提前,早于有实际的硬件来运行之前开发。

图1:新车开发的简化图。

图1:新车开发的简化图。汽车及卡车新车型的开发越来越复杂而且需要更多的工艺。由于在车内的数十个ECU上运行的软件也非常复杂,所以在做出真实的硬件之前必须先期进行软件开发。

汽车电子应用系统开发者大多通过RTL (Resistor-transfer level,电阻-晶体管逻辑)仿真器来进行代码验证。虽然RTL仿真器在LSI开发中有非常高的利用价值,但是RTL仿真速度太慢了以至于不能对系统级设计有大的帮助。

另外,也可采用MATLAB/Simulink工具进行代码验证,但是此工具在嵌入系统开发中所必须进行的单片机固有的抽象度验证方面能力不足。例如,无法对在特定硬件上执行的软件的数据进行存取,以及无法对所依存的控制进行汇编等。

显而易见,面对紧凑的开发日程,有必要通过其他途径来寻求支援汽车电子应用系统开发者的其他方法。

全功能的高速软件模型

EDGE: 那么,汽车产业界所需求的、支持在较短时间内高效开发出面向汽车电子应用系统的嵌入式软件的开发工具是什么呢?

Serughetti: 针对上述问题,Synopsys公司提供了多个工具。其中最强有力的工具就是虚拟原型(Virtual Prototype),它采用了不同于抽象级别的TLM(Transaction-Level Modeling,事物级建模方法)。这是支撑Synopsys公司所提供的虚拟原型的主要技术,是一种可以完全表现开发中系统功能的高速软件模型,其无需修正实际的产品代码便可执行。此软件模型可用于包括进行故障测试(Fault testing)等各种软件开发作业。

  基于虚拟原型的软件开发解决方案
软件错误注入
(Fault injection points)
可以 将硬件和软件的外部/内部结构全部模型化后可更改
永久性故障
(Permanent faults)
可以 通过仿真来建模
故障注入验证的副作用
(Experiment Intrusiveness)
将错误保留在模拟器框架内部,且禁止创建批准代码(release code)
可视性
(Observability)
记录硬件和软件的事件并进行关联
可控性
(Controllability)
通过软件/硬件、或通过(在仿真模拟时的)时间事件进行
重复性
(Repeatability)
仿真化
高速
(Speed)
约1/10 快速运行从底层到应用层完整的软件层次

图2: 使用虚拟原型进行的故障测试(Fault testing)。软件开发者通过TLM方法(Transaction Level Modeling, 事务级建模方法)来更改系统的状态并对耐功能安全性的系统性能进行评价。而且,软件开发者还可对硬件的内部状态(存储器内容、寄存器以及信号等)进行存取。

虽然必须事先对存储器用的纠错码之类的特定容错(Fault-tolerant)构件进行模型化,但模型化的过程非常容易。

使用Synopsys公司的虚拟原型,系统开发者就可享受到完整的系统仿真的好处。由于无需修正实际的代码便可执行程序,所以可对程序的执行进行更细微的控制,还可更详细地观察程序的动态。使用虚拟原型,软件开发者便可在ECU实机到手之前就进行编码了。

EDGE: 我们知道Synopsys公司和瑞萨公司在开发用于“SH-2A”、“V850”的工具方面已进行了长年合作,最近的合作情况如何?是不是又采取了什么新举措呢?

Serughetti: 我们现在还与瑞萨公司一道,针对瑞萨单片机上所搭载系统共同进行最佳化且先进的解决方案的开发及推广等。瑞萨公司目前正致力于其最近发表的基于40nm工艺的低功耗的“RH850族”单片机方面的研究,“RH850族”单片机强化了车载网络功能及加密功能。

Synopsys公司认为“RH850族”单片机是一个将会给汽车电子应用系统带来可扩展性高、高性能以及高可靠性的单片机。“RH850/F1x”在2月份荣获了技术信息杂志《Design News》(UBM Canon公司发行)评选的(2013年度车载领域的)“Golden Mousetrap Awards”(金老鼠夹子奖),这是我们更加坚定了我们的上述看法。获奖时,内置于芯片内的数据加密处理单元(ICU)等功能得到了高度评价。

VDK、系统级仿真模型、放眼于未来

Serughetti: 最近,我们还与瑞萨公司开始了“Virtual MCU Center of Excellence”的共同研究项目,目的是进行“RH850”所搭载系统的软件开发和强化系统验证。在“Virtual MCU Center of Excellence”项目中,两家公司的专业的工程师团队进行了“VDK(Virtualizer Development Kits,虚拟开发工具包)”以及其他产品的开发,而且,不久即可向客户提供。在“VDK”所提供的使整个系统可视化及可控性的高速仿真环境下,可使调试及解析效率得到飞跃性地提高。

图3:“VDK”的特征。

图3:“VDK”的特征。 使用这些先进的软件开发工具可进行多项设计及测试作业,从而提高汽车开发的生产效率,进行代码调试及解析时的效率也是出类拔萃的。

致力于开发“Virtual MCU Center of Excellence”的专家们制作已完成验证的内核及外围模型,并将之组建为“RH850”单片机的虚拟模型。此外,Synopsys公司还提供一系列的软件工具,并将其与其他汽车用开发工具(如AUTOSAR)结合使用。由此,便可很容易地将“VDK”嵌入到汽车生产商或一级生产商的开发工艺中。

EDGE: 请您再详细介绍一下“Virtual MCU Center of Excellence”吧。

Serughetti: 两家公司的专家们正在开发基于“RH850”的虚拟原型。而进行这个项目的开发工作时要求必须有非常精细的设计和验证工艺。为了取得项目的成功,专家们对于仿真模型的构建及单片机的设计、以及应用程序技术等方面都具有很深的理解及共识。

另外,为了使ECU的设计者能尽早访问“RH850”的功能,虚拟原型的参数也即将完成。

在“Virtual MCU Center of Excellence”的项目下进行开发的“VDK”是将虚拟主机作为目标处理器使用,所以可使嵌入系统具备完美的可视性及可控性。汽车电子应用系统开发者将“VDK”与调试器结合使用,不仅可提高软件开发的速度,还可提高系统整合及测试的进度。

“VDK”可提供比其他的软件开发工具更加优秀的调试及分析功能。如图4所示,汽车生产商及一级生产商可将这些工具应用到下一代汽车及卡车开发的各个阶段中。

图4: “VDK”的应用程序。

图4: “VDK”的应用程序。汽车生产商及一级生产商可将“VDK”的功能用于提高软件开发效率、削减进行ECU整合及测试时的成本,而且还可用来简化针对汽车嵌入式系统的验证过程。

现在已制成了多个“RH850”的外围功能的模型,而且第一版“VDK”也即将发布。这个简练的工具包中包括有多个组件,并不是只是简单地将单片机进行模型化那么简单(请参照图5)。

图5:瑞萨“RH850”单片机用的“VDK”。

图5:瑞萨“RH850”单片机用的“VDK”。“Virtual MCU Center of Excellence”所发行的本产品是一个包括多个组件的程序包。汽车电子应用系统的开发负责人可通过此程序包将复杂的驱动程序或AUTOSAR软件与其他项目共用以进行开发。例如,使用硬件在环(HIL:Hardware-in- the-Loop)测试平台便可很容易地进行系统整合及测试。另外,“VDK”也可用于ISO26262汽车功能安全标准所列出的故障和验证范围测试。

将来,为了满足汽车生产商及一级生产商的要求,“Virtual MCU Center of Excellence”还将推进新的模型的开发。而且,我们的目标是开发出一种软件工具,该软件工具可应用到由多个单片机连接而成的网络中复杂化的单片机上。

由正确的仿真构建起来的“信任”

Serughetti: 在这里,我想强调一下“Virtual MCU Center of Excellence”所带来的无以伦比的仿真品质。由于参与共同项目的两家公司的专家们在早期阶段就可访问“RH850”的信息了,这对于验证开发有很大的帮助。因此,它可以将我们的虚拟模型正确反映到真实的芯片功能上。所以,汽车电子应用系统的开发负责人完全可以信任此仿真结果。

另外,Synopsys公司和瑞萨公司都承诺,对于“Virtual MCU Center of Excellence”项目下的所有仿真模型将长期进行实用性及最佳化方面的研究开发及技术支持。

EDGE: 那由谁负责提供“VDK”以及进行技术支持呢?

Serughetti: Synopsys公司负责提供用于传动系统、车辆底盘及车身等功能的参考设计用的“VDK”并进行技术支持。对于特定客户所要求的模型以及对系统整合的要求,我们可在全球范围内提供可满足这些要求的服务。而且,还可满足客户的定制设计的要求。

EDGE: 今天非常感谢您就先进的软件开发工具做了那么详细的介绍。听了您的介绍,让我们了解了,对于汽车产业界负责系统开发的客户来说,使用Synopsys公司和瑞萨公司共同开发的、正确且功能强大的仿真模型对于系统开发将大有益处。

Synopsys
成立时间 : 1986年
公司名称 : 日本シノプシス合同会社 (Nihon Synopsys G.K.)
东京总部 : 东京都世田谷区玉川二丁目21番1号 二子玉川ライズ オフィス(RISE OFFICE)15F
美国总部 : 700 East Middlefield Rd. Mountain View,
California 94043-4033 U.S.A.
URL : http://www.synopsys.co.jp/index.html