新闻中心

EEPW首页 > 嵌入式系统 > 高端访谈 > 嵌入式系统开发工具发展趋势访谈

嵌入式系统开发工具发展趋势访谈

作者:时间:2008-04-14来源:通讯世界

  在领域,现在技术发展的最新趋势是什么?

本文引用地址:http://www.eepw.com.cn/article/81528.htm

  嵌入式应用从以前的简单控制发展到今天,已经有很多非常复杂、非常高端的应用。例如苹果公司最近推出的iPhone手机,里面有ARM11、有ARM9、也有ARM7 MCU。由于这种复杂性的提高,目前在嵌入式应用的开发过程中,工具所起的作用越来越大。如何帮助工程师完成负责的系统设计,成功地实现多种内核在同一个系统中的协同工作,是工具必须达到的目标。可以说,是工具在帮助实现应用。当然,反过来,嵌入式应用的发展也在推动着工具的发展。

  随着消费电子产品时代的到来,现在的工程师面临着严峻的产品上市时间的挑战。在加快开发周期、缩短产品上市时间的同时,还必须提高产品的质量和性能,这就需要有相应的工具予以配合。在这样一个大环境下,将来对工具的仿真功能将有很高的要求。这种仿真功能需要能够对各种硬件进行仿真,而不只限于CPU,还包括DSP、I/O等等。此外,对工具的性能优化也必须得到重视。例如,ARM提供的RealView MDK (微控制器开发套件)中就含有代码覆盖功能,能够自动标注已执行的代码,从而帮助工程师对应用进行完整的测试,并调整测试策略。

  目前,嵌入式应用的各种硬件的仿真工具在市场上都已有供应,但是它们来自不同的供应商,从而导致在通用性支持方面不够好。未来在这方面还需要工具提供商的共同努力。

  未来两年内,哪类嵌入式增长最快?为什么?

  目前应用市场最大、最快的变化就是有越来越多的工程师从4位和8位设计转向了32位设计。对于他们来说,是否有便利的工具帮助他们实现这种无缝转变将是非常重要的。这就需要工具供应商提供具有这些工程师所熟悉的界面和接口的工具。在这方面,ARM RealView MDK工具支持ARM7、ARM9和ARM Cortex-M3,同时提供mVision IDE支持。mVision IDE在全球拥有庞大的用户群,超过10万开发工程师在使用Keil。不管以前是用8位、16位MCU,还是现在改用ARM 32位处理器,由于mVision IDE简单易用,可以帮助工程师很快地掌握。

  此外,在32位开发中一般都会用到闪存,工具对多种闪存编程的支持也就变得非常重要。

  在8位MCU市场上有很多不同供应商提供的产品,在32位市场中也有很多公司提供基于ARM的产品。工具是否能够支持这些来自不同供应商的产品也很重要。例如,前面所提ARM RealView MDK工具不仅支持Luminary、ST、三星、NXP和Atmel等供应商基于ARM处理器的标准器件外,同时还支持Cortex-M3、ARM9和ARM7处理器架构。

  就技术和市场两方面来说,贵公司面临哪些挑战?为什么?

  前面说到现在很多嵌入式应用非常复杂,例如iPhone,这里面有一些简单的核,也有一些复杂的核,甚至是多核处理器。工具是否能够同时支持简单和复杂核的编译及调试就显得很重要了。此外,编译器的性能也很重要。调试往往需要一些特殊的技术,例如传统的JTAG技术。ARM公司在编译器方面有着20多年的经验,我们推出了CoreSight片上调试和跟踪技术,为SoC开发工程师提供全面的编译和跟踪解决方案。此外,Single Wire技术能够实现单引脚跟踪,降低引脚成本。这两个技术分别满足了高低端产品的需求。

  此外,Single Wire技术和RealView工具使用同样的编译器,这也能大大帮助工程师降低开发难度,加快设计周期。

  为了促进中国的发展,您对中国工程师有什么建议?

  随着越来越多的中国工程师开始32位应用的设计和开发,工具对他们设计开发的成功所起的决定性因素也在提高。应用越来越复杂,工具的选择也越来越重要 (图1)。现在市场上有些工具是免费的,也有很多商业工具。无论是免费的还是商业的,工具的好坏往往会影响整个工程的最终结果。

  在选择工具时,主要需要注意以下几个方面:编译器的性能和稳定性、代码覆盖、仿真(不仅是对CPU的仿真,还有对其他硬件和设备的仿真)。

  贵公司的产品特点是什么?

  ARM公司提供32/16位RISC微处理器IP。相较于CISC、RISC指令比较精简,但对软件的要求更高,尤其是对编译器的要求非常高。ARM公司在编译器方面具有20多年的经验,从公司建立初期就成立了专门的编译器研发团队,以良好的编译器产品弥补RISC指令在这方面的“缺陷”。我们的编译器能够支持全系列的ARM产品,包括从ARM7到最新的ARM Cortex-A8处理器。

  ARM公司在2005年收购了Keil公司,在保留其产品线的同时,更在RealView MDK工具中加入了代码覆盖、仿真、仿形等功能,而前面提到的mVision IDE,更能帮助成千上万熟悉8位Keil开发工具的工程师在转向32位ARM开发时,获得具有他们所熟悉的开发界面和环境的工具,为他们成功转向32位提供了便利。

  2007年,ARM同英蓓特公司合作,推出中国版ARM RealView MDK。这一新产品是特别为满足中国软件和系统开发厂商的需求而推出的,起价低于5000元人民币,易于纳入设计工具的整体预算中。这一产品降低了中国工程师的开发成本,同时完整的本土供应和支持服务即可满足他们的不同需求。■

  在嵌入式系统开发工具领域,现在技术发展的最新趋势是什么?

  嵌入式系统软件与应用开发实践开始出现了融合。许多工具供应商和用户对工具的期望日益趋同。  
 
  从编译器到应用的开放源代码工具应该具有符合生产的质量。开发商希望这些工具能够无缝地一起运行。但是“免费”和“实现商业”并不相同。必须具有专业知识才能使今天的开源工具生效。

  MIPS 科技公司一直致力于开源开发工具的发展。本公司与领先的公司达成合作伙伴关系,他们都是嵌入式软件开发领域的主要开源贡献者。 

  用于消费设备的嵌入式 Linux是一个重要趋势。MIPS 科技对 Linux-MIPS 知识库有直接贡献,并且与 MontaVista、Wind River、Viosoft、TimeSys 等公司保持战略合作关系,为市场提供 Linux 解决方案。

  像 Eclipse 这样的开放开发平台和用于调试和可视化的可用插件,在未来两年将会变得极其重要。MIPS 利用其大量的工程资源创建了基于 Eclipse 的环境,以满足开发者的需求。利用 Eclipse平台 ,MIPS  正处于统一嵌入式项目管理的前沿,能够为未来的功能提供可扩展和可升级性。

  在过去几年里,MIPS 在为其授权商和客户提供全面的工具解决方案方面加大了投资,其中包括内部增加了编译器、软硬件调试技术方面的投资,为优化的 GCC 工具链和 Linux 核移植收购了 Algorithmics 公司,以及为实现一流的调试工具收购 First Silicon Solutions (FS2)公司。  

  开发工具难题的另外一个关键部分是操作系统识别调试 (OS aware debugging)。作为 MIPS 科技的一个部门,FS2与 Viosoft 公司紧密合作解决这个问题。Viosoft Arriba  调试器与 MIPS Navigator Eclipse IDE 和 FS2EJTAG 探测器紧密集成,可提供一系列的  Linux 和 ThreadX调试功能。

  这些解决方案专门针对 MIPS 的架构优势,支持在线和离线跟踪,并具有嵌入在内核中的性能调节功能。这些工具能够帮助开发人员获得采用 MIPS 内核的所有优势。除了提供高性能、实现小面积和低功耗之外,还包括加快开发上市时间的先进分析和调试增强功能。

  为了促进中国嵌入式技术的发展,您对中国工程师有什么建议?

  开发人员必须清楚地知道设计面临的挑战,以及他们的工具的能力和局限性。嵌入式SoC 领域任何有意义的设计都需要目标定位于嵌入式领域的、集成的软件开发工具。

  能够集成开源和免费软件,而且可为处理器内核提供无缝调试环境的工具,必须对内核和  SoC 交互有深刻的理解。

  设计人员必须充分了解“免费软件”调试解决方案的局限性。KGDB 就是一个调试嵌入式 Linux的例子。设计工程师很快发现该免费解决方案对于调试嵌入式代码有很大的局限性。KGDB 的局限性包括要求修补内核,不能同时支持调试大量线程和工艺,不具备在同一目标连接和调试共享库里调试驱动器和应用的能力。

  对完全集成和经过测试的供应商提供的工具和工具环境的投资,有助于设计工程师显著缩短上市时间。供应商能够提供未公开的见解、集成、标准和与生态系统的联系,以缩短目前和未来设计的上市时间。供应商必须为用户提供支持机制,包括完整的文件、支持论坛和呼叫中心。

  贵公司的产品特点是什么?

  MIPS 为产品开发的所有阶段提供全面的工具组合,包括编辑器技术、嵌入式 RTOS 支持、EJTAG 探测器具,使用 MIPS32、MIPS64处理器和硅基于的调试 IP 的用于软件开发的 Malta 开发板。

  MIPS 软件工具包有助于开发人员实现所有 MIPS 内核系列的嵌入式系统应用的写入、编译、执行和代码调试。MIPS 软件工具包括基于 MIPS SDE GNU 的工具链、MIPSsim指令集模拟器,以确定硅前(pre-silicon)内核、MIPS DSP 库和技术支持特性。为 MIPS 架构高度优化的特定内核库也被嵌入到 MIPS 工具链。

  所有的 MIPS 工具都可从 MIPS 的不可分割FS2部门得到。FS2 提供集成整个工具组合、支持 MIPS 内核和独特的单内核调试特性的全面解决方案。FS2 EJTAG 调试器完全集成到 MIPS 软件工具链,支持 Eclipse 和 GDB/Insight 调试接口。对于采用嵌入式  Linux  或 ThreadX 的设计团队,FS2开发出了先进的操作系统识别工具。这些操作系统识别工具充分利用了内核的调试 IP,并且可为操作系统环境提供由上至下的调试。FS2 工具为所有的 MIPS 调试需求提供了完全集成的、具有成本效益的“开箱即用”解决方案。这种独特的专用内核功能和易用性可以确保最有效地利用用户的开发时间。■

  最新趋势是什么?

  ·功能方面

  工具之间加强了互相间的配合,使得客户能更方便地实现整个完整的工作流程。

  近几年,IAR公司的EW集成开发环境加强了与第三方调试环境的配合,EW生成的各种文件能直接放到这些调试器中工作,相应的,通过插件方式,EW与这些调试器也实现了无缝的链接,例如:Atmel的AVR Studio(for AVR以及AVR32)、Microchip的MPLab(for PIC、PIC18与dsPIC等)、Aiji的EDS(for ARM),南京万利的MedWin(for 8051)等等。

  另外,EW中还能直接通过插件,直接调试基于Lab Center公司Proteus的虚拟开发板模型。集成开发环境与第三方操作系统之间的配合也大大加强,例如:IAR的EW中集成了多种调试插件,能配合各种RTOS实现直观调试,如Micrium公司的uC/OS-II、Express Logic公司的ThreadX、ENEA公司的Epsilon,以及IAR公司自己的PowerPAC。

  一些前道工具也加强了与编译器的配合,能直接生成符合编译器格式的工程文件,例如:Infineon的Dave(工程配置向导)以及IAR的VisualSTATE(状态机建模工具),在生成C代码时,能直接生成基于EW格式的代码;通过一个与EW协同工作的特别插件、VisualSTATE还可以实现在状态机级别的在线调试。

·性能方面

  编译器的设计更加模块化,以实现更加精细的优化功能,使得客户能针对应用的需求实现代码效率和代码速度之间的均衡。

  编译器的另一个功能发展是应对来自于汽车电子行业对代码可靠性的需求,需要编译器增加对代码进行MISRA C规则(汽车工业软件可靠性协会)的检查。IAR EW中的MISRA C检查器模块符合这部分客户的需求,目前支持的版本是MISRA C 1999版,明年将进一步支持到MISRA C 2004版。

  面对消费类电子行业中Linux应用增长的趋势,实现集成开发环境对Linux代码某种程度的支持,目前通用的做法是能支持对GNU生成代码的调试支持以及链接器层面的兼容。

  未来两年内,哪类嵌入式开发工具增长最快?为什么?

  就中国的情况而言,如果说就销售数量进行排序的话,大致为 仿真器>调试器>编译器>其他工具如建模等。主要是中国的电子产业以制造加工为主,研发层次比较低,工程师更多地依赖仿真器/调试器进行对代码的错误检查,因此这部分的工具(特别是低端的工具),数量比较大。

  如果说就增长率而言,估计今后编译器的增长率会最快,因为我们明显感觉到,这两年随着工程师的研发水平提高,大家越来越意识到要“做好一个产品”,而不仅仅是“做出一个产品”,因此,在工具的使用上,也逐步从以调试工具为主,越来越多地转移到对商用编译器的关注上。

  就技术和市场两方面来说,贵公司面临哪些挑战?为什么?

  最大的挑战不在于技术,也不是市场竞争,而来自于人们对知识产权的不够重视。很多人认为软件应该免费,能不花钱就不花钱,这使得在中国使用免费工具以及盗版工具的比例相当高,而产品研发始终徘徊在较低水平层次上。 笔者很欣赏这样一句话:“Nothing is Free, Free is Nothing”,相信随着工程师研发水平的提高以及眼界的开阔,这种情势会慢慢改变。

  为了促进中国的发展,您对中国工程师有什么建议?

  “整体解决方案是毒药”,这话可能有些偏激,但是不要迷信整体解决方案,可能是有道理的。

  在当前以制造为主的中国电子行业,往往“重制造、轻研发”,上市时间对公司的压力特别大,于是,符合这一需求的整体解决方案便应运而生,这也是中国特色。但是,我们同时看到,目前整个中国的电子产业是由半导体硬件公司来驱动的,因此整体解决方案可能存在问题:这些方案的发起是以某款芯片为中心的,方案随这款芯片具有时效性,因为不可能方案队伍始终专注于这个应用,这就造成了在应用需求分析上可能质量不高。另外,为了迎合客户不希望对软件的投入这一需求,许多方案往往采用一些免费工具去做,结果造成整体应用设计水平偏低以及产品BOM(物料清单)表的成本增高。

  从“设计优秀的产品”和“提高自身技术水平”两方面出发,我建议中国的工程师应该多接触商业工具(包括操作系统)公司,自己独立思考应用的设计,而不要太迷信“整体解决方案”,那会把整个产业带入死胡同。

  贵公司的产品特点是什么?

  IAR的产品有以下几个共同的特点:

·代码效率高;

·跨平台;

·软件模块化、性能稳定;

·工具链完整、产品整合度高。■

  最新技术趋势

  建模技术在嵌入式系统需求捕获、系统分析、设计、实现和验证领域的更加广泛应用,是在嵌入式系统开发工具领域,技术发展的最新趋势。

  系统分析设计方面的建模工具,在未来两年内,将成为增长最快的嵌入式开发工具之一。

  IBM Rational是系统分析设计建模工具,作为我们随需应变的开发工具的重要方面之一,实现了IBM Rational统一过程较好实践的关键原则之一—提升抽象层次。

  IBM Rational的系统分析设计建模工具是基于Eclipse界面环境,采用UML2.0,并能支持SysML的Rational System Developer,以及为系统工程,包括嵌入式系统开发人员提供的系统工程最佳实践RUP-SE,和经过实践验证的模型驱动系统开发框架MDSD。同时,围绕着Eclipse,提供高度集成的开发环境,包括需求管理、配置和变更管理、文档管理、方法和流程指导,以及满足需要遵循相关法律和规定(如GJB5000)等要求的集成开发解决方案。

  我们认为,主要的原因在于:

  1. 嵌入式系统需要实现的功能越来越复杂,提高问题理解的抽象层次,并保持各个层次之间严格的追踪关系,是解决复杂问题分析设计的根本方法。

  2. 现在的开发团队和产品设计方式,需要应对一个快速变化的环境。这种变化既来源于用户需求的变化,又来自于底层软硬件实现技术快速的变化。分析和设计方式要具有对变化目标的高适应性,各个模型抽象层次功能的封装和复用是根本。

  3. 从系统的角度,帮助嵌入式系统开发的用户实现软硬件协同分析和设计,实现模型级别的早期验证。

  您对中国工程师有什么建议?

  IBM Rational作为IBM软件集团五个主要的品牌之一,任务在于帮助我们的客户有效地开发和交付软件和系统。我们必须不断改进自己的解决方案,充分利用我们超过20年以上的工程方法经验、成熟的流程和工具,从客户面临的挑战中学习、了解、洞察问题的本质。 我们在满足用户需求的同时,还应能为我们的用户指出未来——我们有责任和能力为最终用户交付一个可持续发展的,演进式的嵌入式系统和系统的系统。

  我们建议用户关注RUP-SE和建模技术在系统设计方面的应用实践。

  1. 基于过程质量,建立基于组织级别,遍及各个开发流程的质量保证体系。研究并采用适合自己的过程,并努力贯彻实施。

  2. 基于面向对象的思想,采用建模技术,用于嵌入式系统分析设计,提高系统分析的抽象层次,通过分层,降低系统设计的复杂性,提高设计人员对复杂嵌入式系统的掌控能力。

  贵公司的产品特点是什么?

  IBM Rational为用户提供软件和系统交付平台,以及相应的实施方法和最佳实践。从微观上,工具和方法的结合体现了我们特点的一个方面。

  在宏观上,IBM Rational的目标,是帮助客户开发高质量的成功软件,这些软件可以长期维护和演进,并可以灵活的适应现今和未来的发展变化。

  我们开发一些成熟的方法模型,专注于持续的管理,并不只是软件的生命周期,而是作为整个应用和软件资产的组合来说加以管理。

  我们专注于客户和客户的价值,并以此为产品质量的最终衡量标准,了解软件交付的质量,不仅仅是软件会出多少个故障,这很重要,但不只是这些,更多的要帮助用户了解最终客户业务的价值。

  作为嵌入式系统开发机构,我们将致力于构筑跨团队、跨学科的嵌入式系统开发平台,保证我们能实时地掌握项目的状况,提高开发的效率和质量。■

  风河公司认为,在嵌入式系统开发领域,技术发展的最新趋势可以从企业层面、平台层面和部件层面分别观察,其核心是以尽可能快的速度、尽可能低的成本来满足迅速变化的市场需求。

  以往,嵌入式软件开发的技术问题主要是在工程师和开发团队的层面来解决。不同的工程师和开发项目之间可以共享的资源并没有得到足够的重视和利用,这是业界经常说的一个问题—制造每辆汽车都必须从轮子开始。共享资源、提高软件部件的可重用性,这是整个软件业界几十年来的普遍趋势,只是这个趋势在嵌入式软件领域的步伐比企业软件慢了不少。随着DSO(Device Software Optimization,设备软件优化)概念的提出,嵌入式软件的可重用性将会得到快速提高。这就是嵌入式软件在企业层面的主流趋势。

  从开发平台层面来看,开放已经成为一种主流思想,对于开放系统首先会让人想到的就是Linux。不过,开放本身不是一种技术,而是一种包容先进技术的思路和方法。新技术往往是从封闭开始,通过走向开放而发挥更大的价值。风河公司正在努力将自己在VxWorks平台上多年积累的技术和最新技术创新通过Linux平台走向开放的新思路。风河以其高性能、高可靠性的VxWorks平台在业界占有重要地位,现在这些技术都已逐渐在Linux平台上使用了。

  从部件层面来看,最主流的趋势是多核技术的兴起。这个趋势从处理器芯片巨头的动向可以一目了然。

  对于中国的嵌入式软件工程师来讲,风河公司建议采用开放、高效并且能够让自己不断积累开发成果的开发平台与工具,让自己能够专注于产品功能特性的开发,而不是花费太多精力去做维护工具和基础性、重复性的功能开发。

  风河公司从战略到产品和市场策略都顺应了上述主流趋势。风河公司是DSO概念的倡导者,这种思想已贯彻到风河公司所有的产品与技术。风河公司的集成化开发平台Wind River Workbench,可以让开发人员更容易在现有开发项目和工作流程中,实现各种商用级别设备软件开发、设计和测试工具的集成,甚至可以将这些工具安装到已预先部署的Eclipse模块中。风河公司的设备软件开发工具集,为设备制造商综合配备了VxWorks和Wind River Linux平台下各种深度应用的中间件技术,从而使他们能够更专注于构建各种差异化的设备软件应用,同时更准确地理解和实现复杂项目的需求,加快产品的市场响应速度。■

  在嵌入式系统开发工具领域,现在技术发展的最新趋势是什么?

  嵌入式系统是一个复杂的高技术系统,要在短时间内开发出所需功能的产品是很不容易的,而市场竞争则要求产品能够快速上市,需要有容易掌握和使用的开发工具平台。

  嵌入式系统开发工具的发展已经有二十多年的历史,目前开放性和开放源码成为一股强大的潮流,推动嵌入式系统设计技术向前发展,传统的嵌入式系统开发工具已不能适应这一潮流。最新的发展趋势是,使用Eclipse开放源码集成化开发环境(IDE)平台,采用插件技术,在这样的平台基础上扩展许多开发工具套件。越来越多的嵌入式系统软件供应商将Eclipse平台作为自身工具的基础,推出个性化的开发工具套件,除提供标准的编译器、编辑器、调试器,还提供增强的操作系统内核级调试手段和高级的系统分析工具,如内存泄漏检测、系统性能监控等。

  总之,嵌入式开发工具将向高度集成、编译优化、具有系统设计、可视化建模、仿真和验证功能方向发展。

  可以预见,未来两年高级调试和监控开发工具,仿真工具等嵌入式软件开发工具是增长点。

  公司需要跟踪嵌入式开发工具的技术发展趋势和最新技术,了解嵌入式开发者的需求,为其提供更为丰富的,功能强大的嵌入式开发工具。

  为了促进中国的发展,您对中国工程师有什么建议?

  现在每个研发型企业都希望自己的产品快速进入市场,抢占商机。好的开发工具可以帮助工程师更快、更准确地解决开发过程中所遇到的问题。如果开发工具都不稳定或功能不全,会让开发工程师觉得很无助。所以,我们建议如果条件允许还是尽量使用可靠的、性能优异的商业化嵌入式开发工具产品,所谓磨刀不误砍柴工!

  贵公司的产品特点是什么?

  麦克泰从事嵌入式领域已有十多年的历史,是国内最早的嵌入式开发工具和操作系统提供商。目前,我们的产品涵盖嵌入式开发的整个过程,有开发参考板、多款仿真器、集成开发环境(包括编译器、调试器等),公开源码的RTOS和嵌入式Linux操作系统,还有一些中间件(图形和网络协议栈)等。这些都是国际知名厂家的产品,如来自瑞典的IAR公司的ARM开发工具和瑞士Abatron公司的BDI系列仿真器产品,基于Eclipse技术的LinuxScope调试器等在业界享有盛誉。■

  现在技术发展的最新趋势是什么?

  现在的嵌入式系统开发工具非常多样化,市场分散。目前据不完全统计,全世界嵌入式处理器的品种数已经超过1000多种,流行体系结构有30多个系列,在其上运行的操作系统环境也非常多样化,包括VxWorks、QNX、Linux、 Nuclears、WinCE等等。不仅各种操作系统有各自的开发工具,在同一系统下不同的开发阶段也有不同的开发工具。如在用户的目标板开发初期,需要硬件仿真器来调试硬件系统和基本的驱动程序,在调试应用程序阶段使用交互式的开发环境进行软件调试,在测试阶段需要专门的测试软件进行功能和性能的测试等等。对于设计人员来说,要掌握、驾驭这样庞大的开发体系是一件非常困难的事情,而且编程的复杂度相当大。

  传统工具很难降低编程工作的复杂度,嵌入式领域需要另一种方法来应对这些挑战。挑战不仅是工具方面的,还有解决问题的途径。加州大学伯克利分校嵌入式研究方面的领先者Edward Lee博士指出,现在嵌入式系统的开发手段如基于文本编程和面向对象的工具都难以用来构建嵌入式实时系统,因为面向对象很难直观地表达时间和并行性,而时间和并行性在现在的嵌入式系统中是必不可少的。Lee博士提出面向角色的图形化方法是更适合嵌入式软件设计的工具。

  所以一种更为理想的、釜底抽薪的解决方案是向基于平台的工具转移,它能够更好地表达整个系统,而减少与特定硬件以及操作系统的相关性,这使得更多的软件设计和算法容易理解并被重复使用。而从基于文本的工具向图形化工具的转移则可以直观地表达系统,图形化系统设计的理念就是源于这两大趋势。通过简化嵌入式编程的复杂性,降低了对系统开发人员和领域专家在嵌入式设计流程中各个步骤的要求,同时提供了从设计、原型到部署,从软件调试、功能测试到生产检测的统一环境,使得工程师和科学家们可以更快速地进行重复设计。

  为了促进中国的发展,您对中国工程师有什么建议?

  现在很多工程师在设计嵌入式系统的时候往往选择最底层的工具,把绝大部分的时间都花在了底层的细节,而往往忽视了创新性和系统级的把握。工程师无论是为了自身的发展还是为了所设计产品的竞争力,这两点其实都是至关重要的。

  说起电子工程师,大家第一个想到的就是编码,还有加班加点,甚至还有人自嘲为“IT民工”。那么工程师的价值要究竟体现在哪里,而且如何体现呢?

  有人将理想的工程师用字母T来描述。T表示在顶部具有广泛的知识和技能,同时在至少一个领域中具有深入的技术知识。工程师能够分析问题或是编写程序是远远不够的,他们还要能够利用自己的知识完成独特创新的设计。

  所以,工程师要体现自身价值,必须有系统性的眼光,能够进行有创新性的设计。在这种情况下,工程师们更多的应该从底层的编程细节中脱身,让工具去处理那些“常规”事务,而工程师本身就可以专注于自己的设计或研究领域,从更高的角度来看待自己在设计的系统,而不是只见树木,不见森林。

  贵公司的产品特点是什么?

  NI公司的宗旨一直是致力于帮助全球的科学家和工程师们不断创新,为了实现这样的目标,NI采用的途径是提供全系列的工具和平台,这些工具和平台的优势在于充分集成最新的商用集成科技,降低用户学习和使用的复杂性,从而在此基础上,让用户在他们的工作中充分享受这些技术带来的好处。现在NI的产品应用于从系统设计、原型到发布的研发全过程。

  基于NI一贯的宗旨:为工程师和科学家们降低学习最新技术的复杂性并提高工作效率。通过NI的LabVIEW图形化开发平台,工程师们不需要使用最底层的汇编语言或C语言进行编程,就可以将他们的设计实现快速的原型甚至发布,从而将嵌入式设计提升到了系统设计的层次。

  和传统的文本编程相比,LabVIEW本质上是一种并行结构的编程语言,而时间和并行性在现在的嵌入式系统中是必不可少的。LabVIEW可以支持多种算法设计,并通过丰富的硬件I/O支持,帮助工程师快速构建原型。更进一步的是,LabVIEW嵌入式开发模块提供了一个开放的框架,它可以集成任意的第三方工具链,将生成的C代码与LabVIEW运行库函数和板卡支持程序包,编译成为针对某一目标并能在之上运行的二进制代码。通过LabVIEW嵌入式开发模块和工具链,可以发布到运行任何操作系统的任何的32位处理器。■

  嵌入式系统的广泛应用引发了对嵌入式软件质量的深入讨论。目前,软件测试仍然是保证质量与可靠性的最有力手段。

  软件缺陷日益突出

  2002年的欧洲阿丽亚娜5火箭的第一次鉴定发射失败是由于软件故障引起。美国F16 由于软件问题导致首航时间耽误了一年。今年2月,12架美国F-22战斗机在飞向日本冲绳时,由于过了国际日期变更线,导航系统出现紊乱,不得不返回到夏威夷空军基地。回来发现是软件缺陷导致。国外某军舰运行了850个小时,故障120多次,软件故障占70%;致命故障12次,其中软件原因占70%。

  因此,随着软件在系统中的比例加大,软件缺陷不是孤立问题,是故障引起的主要来源。因为软件在整个系统中承担的任务越来越多,同时软件是人脑智慧的思维产物,容易出现缺陷。

  软件缺陷产生的原因,从软件需求分析看,对软件认识不充分占整个软件的20%;设计缺陷占30%;编码类缺陷占35%;其他来自软件文档。



  但是任何国外测试软件进口到中国,都需要该国的国防部批准,涉及到武器方面更是禁运。CATC(中航一集团计算机软件可靠性管理与测评中心) 1996年成立,当时是95国家重点课题,2001年研制成果工程化,2003年该中心的GESTE研制成功,目前推出的GESTE2.0面向多个国家重点型号,并且向民用发展。

  软件开发的门道

  写了25万行代码,除了Web编码外都是自己写的。CATC的优势是依托学校,每年由硕士、博士在相关领域研究。主要采用三级研发体制,老师带学生做基础语言,然后是本中心进行工程化、商品化。学生做的东西好,但质量难以保证。工程化和商品化后使可靠性大大提高。

  在主持开发测试软件的过程中,有两点时刻提醒着我。IBM的工程师布鲁克斯所写的《人月神化》,堪称软件工程的经典图书。在《人月神话》中,作者认为一个产品变成商品至少要花9个月;第二个时刻提醒我,设计师都希望把所有的好东西凝聚在新产品里面,但也可能导致大量的质量问题,因此要注重把只有工程化的东西放进去,如果想法好但没有经过三级认证,坚决不放进去。工程化这个步骤一定不能省。

  集成软件工程师经常失败,是因为软件工程不是简单的多少人月就可以做出来的。

  很多人对软件有误解,认为软件什么人都能编,大学毕业生就可以了。但是我相信人的思想是最难把握,思想改变人的命运。就像共产主义信仰改变人一样,而不是火车、飞机改变我们。做一个软件不难,但是稳定、安全、可靠,并有大量的支持很难。

  GESTE2.0

  由于嵌入式软件具有软硬件结合密切、实时性较强以及接口复杂等特点,针对嵌入式系统的软件测试更侧重于利用仿真原理进行的系统测试。GESTE(通用嵌入式软件仿真测试环境)产品基于半实物仿真测试原理,提供了对嵌入式软件进行系统测试的全套解决方案,并具有良好的通用性、实时性、可扩展性以及易用性。

  GESTE2.0在如下领域实现了更大突破:仿真测试环境的构建与测试环境集成;测试的执行效率进一步提高;加强了测试过程的管理;改进数据收集融合算法;进一步提高可扩展性。

  GESTE的面市打破了国外对我国在相关领域的技术垄断和封锁,填补了我国实时嵌入式软件缺乏通用仿真测试环境的空白,对于相关领域之快速定制需求亦具有革新意义。目前,除去航空、航天、船舶、兵器和电子等相关领域的成功实践,CATC亦在积极拓展寻求与更广泛领域软件企业的合作,2008年北京奥林匹克运动会即是新近成功涉足之成功案例之一,未来,还将面向汽车、通信、民航业,以及所有有大型嵌入式软件应用的地方。■

  在DSP开发工具领域,现在技术发展的最新趋势是什么?

  历经四分之一世纪辉煌的数字信号处理器(DSP)引领了数字信息时代的新潮流,随着DSP性能的超越和功能的丰富,对于DSP开发工具的要求也越来越高,其中最突出的表现就是高速实时仿真、高效软件编译和高级系统调试。

  目前DSP的软件和硬件开发工作的比例已经从最初的20%提高到80%,因此决定DSP开发成功的关键在于如何更好地发挥软件系统的功效,更全面和完善地适应各种实际应用的需求。

  未来两年内,新一代支持高速实时数据交换的仿真器将增长迅速,其中以TI公司的XDS560及其兼容类型产品为代表,能够以超过2Mbps的速度传输数据,并且在系统运行的过程中提供非并行的即时数据获取能力,协作系统开发者实时系统的跟踪调试。XDS560还能够达到超过500Kbps的程序代码下载速度,缩短所需花费时间,提高了设计效率,特别适合大型系统的应用,如数字媒体产品的开发。DSP集成开发环境软件系统(IDE)的升级换代将至关重要,并且将应用得更为普及。在一个完整统一的开发界面中,研发人员不仅可以开发DSP,而且还可以同时开发包含DSP和CPU的片上系统芯片(SoC);不仅可以单独进行开发,而且还可以通过网络同异地团队协同开发。

  针对DSP技术的发展,如何更好地提供全面的软件支持是一个重大的挑战。对此,TI通过制定和推进开发式平台的发展战略以抓住新的发展机遇,如TI的开放式多媒体应用平台(OMAP)和达芬奇(Davinci)数字媒体技术平台的推出,开拓出了更为广阔的市场领域。而面向新兴市场的兴起,最大的挑战在于如何利用现有DSP开发的生态环境,以支持更多客户的多样化产品。

  您对中国工程师有什么建议?

  在中国,TI拥有有业界出色的DSP工程师群体,也有国际上丰富的本地DSP支持资源,所以在中国开发DSP具有一定的优势。TI实施了十多年的的中国大学计划培养了大量DSP人才。

  国内许多开发手段更新较慢,还存在因陋就简的情况,这将影响复杂数字媒体系统的开发进度。

  因此对中国工程师有两点建议,首先是“工欲善其事,必先利其器”,若有条件要尽可能采用更快更强的工具进行开发。其次是“磨刀不误砍柴工”,要尽可能挖掘集成开发软件中的资源,如花些时间去了解许多实用辅助软件,如DMA、Cache和片内带宽分析工具等。

  贵公司的产品特点是什么?

  作为DSP的领先者,TI在产品推广过程中始终贯穿着DSP开发理念的推广和普及。经过长期探索和实践,TI所确立的eXpressDSP的开发理念对于业界DSP的发展影响深刻,使得DSP在开发创新中上升到更高层次。eXpressDSP包括TI的集成化开发系统Code Compose Studio,即CCS;提供灵活实用的DSP/BIOS,以充分支持实时软件的开发和调试;推行通用的xDIAS软件算法标准,以便有效地规范DSP软件的集成,其中数字媒体软件算法标准为xDM;扩展业界庞大的DSP第三方网络以求最大程度地为DSP开发提供广泛的资源。在以Davinci为主体的通用数字媒体DSP的推广中,TI更是致力完善数字媒体单片系统的开发支持体系,在CCS的更新版本中,以DSP/BIOS Link强化了DSP与CPU之间的数字交换能力。符合xDM算法标准的数字视频、影像、语音和音频算法软件通过TI的数字媒体框架进行集成。SoC的可视化功能使客户的开发变得轻松自如,许多复杂的数字媒体资料可以一目了然,过程信息可以一览无遗。

  TI的DSP除了数字媒体产品之外,还有浮点应用系列、低功耗系列、数字控制系列等平台,其硬件和软件开发工具在很大程度是都可通用,具有统一的开发理念。■

  在嵌入式系统开发工具领域,现在技术发展的最新趋势是什么?

  瑞萨认为,目前在嵌入式系统开发领域对应高速CPU的仿真器以及对应OS(操作系统)的调试工具的安全设计是最新的趋势,也是未来两年中增长最快的开发工具。

  现在,从手机到液晶TV、数字TV、DSC、汽车等领域,都要使用到内置CPU的SoC及MCU的芯片。而且,内置程序的容量也在逐渐增大。以往小规模系统软件的开发可以由一个人或几个人负担完成,但大规模系统软件的开发却需要由数十人甚至上百人才能完成。

  在这样的情况下,如何更有效、更安全地开发和使用OS系统,就成为了巨大的课题与挑战。这是因为,OS本身就是一种软件,经常发生一些不可预知的不良状况。但是,对于不良状况的分析来说,有时是十分困难的事情。

  一方面,在网络和其相连接的机器上工作时,CPU将高速化运作。如何监测高速的CPU的运动、外部处理端口就是一个有难度的课题。就好像是DRAM、SRAM等通用存储器的数据总线从并行向串行的转换一样,技术在不断地进步。

  另一方面,嵌入式系统应用于与人的生命密切相关的产品时,特别是应用于汽车电子时,软件的哪怕一点点不良状况也是不能允许的。因此,从开发阶段起使用考虑到无故障的设计工具就非常必要。

  所以瑞萨认为,最重要的是从开发的开始阶段就不能去生产有危险的软件。同时,还应在实施过程中采用如下措施:安排大量工程师详细记录由谁负责软件的完成及修改等工作记录。

  为了促进中国的发展,您对中国工程师有什么建议?

  目前,中国的大学生能够在大学相关课程中充分对MCU基础知识进行学习,这已经走在了很多国家(甚至包括日本)的前面。

  但中国新一代工程师面对的主要问题是如何去积累经验。

  嵌入式系统的开发通常是硬件和软件同时进行的,其在开发过程中出现不良状况的原因有可能是硬件或是软件,有时甚至可能是两者同时发生故障。在这样的状况下,就要求从事硬件的技术人员要相当程度的懂得软件,从事软件的技术开发人员也要在一定程度上懂得硬件。

  另外,目前该行业存在最终产品的寿命较短的情况,这就意味着每年都有必要开发新的产品。但是从初级阶段进行开发,需要花费大量的开发成本及开发时间。因此,有效地归纳总结现有的开发成果,并有效地投入新开发中加以利用是十分重要的。例如,为了让源代码、电路图等可以直接投入利用,通俗易懂地进行注释是其中的一种办法。

  但是,在中国的企业中,有时为了追赶其他竞争企业,采用设计开发的外包,或是从第三方直接购买解决方案的情况都十分普遍,当然这样的做法可以看作是不得已的举措。因此,为了可以在本公司内实现产品开发,下大力气持续的培养、教育自己的技术工程师是非常重要的。

  贵公司的产品特点是什么?

  现在,瑞萨MCU产品线涵盖了从4/8位MCU、16/32位CISC MCU、32位RISC MCU到双核处理器。瑞萨正同时对多种产品线进行开发及推广。因此,开发工具也呈现多样化的特征。

  首先,瑞萨在面向超过100MHz的处理器上,对E200的仿真程序进行开发及推广,同时在开发对应400MHz的新仿真程序。在高端处理器的软件开发环境中,针对程序跟踪、设置断点、RAM地址内容显示、缩短下载时间等要求,主要实施的是性能改善。

  其次,对应50MHz~100MHz的高速闪存内置的MCU系列的片上调试开发工具E10A-USB,也在开发推广中。

  另外,瑞萨也在积极应对针对仿真程序控制软件使用方法的改进以及C编译程序性能的改进。同时,CPU的性能又受到C编译程序性能影响的情况,因此瑞萨也在努力改善第三方的C编译程序的性能。

  在高端处理器的应用中,十分重要的还有对实时操作系统(RTOS)、各种中间件及CPU主板、有兼容性能的主板的支持。目前,瑞萨不但可以自己提供开发工具、RTOS、有兼容性能的主板,还在与全世界的第三方进行合作,实施整体的技术支持。

  关于从8位到16/32位MCU的工具,正在开发中对应面向汽车、产业机器的具有高性能、高安全性等要求的E30仿真器将能大大简化与目标板的连接。

  此外,面向更多用户的低价格片上调试仿真器E8也处于开发推广中。瑞萨同时提供被称为“学习工具包”的初期性能评价学习用主板,并在中国举行学习工具包的讲座活动。■

  在嵌入式系统开发工具领域,现在技术发展的最新趋势是什么?

  各级市场中存在多种趋势。从纯开发工具的展望中我们可以预见,将工具整合到 Eclipse 框架中是明显的发展趋势。这将有助于各公司更加顺畅地使用和整合来自不同供应商的工具,从而提高软件的质量和开发效率。随着软件的复杂程度趋于指数增长,在未来几年内,那些能够帮助公司简化软件复杂性的工具,很可能会迎来增长高峰。

  就更为普遍的软件和硬件而言,将多处理器系统和各种多核处理器引入到嵌入式设计的趋势越来越明显。这些新的硬件架构会给应用它们的公司带来非常可观的效益,但另一方面,也会进一步增加软件的复杂性。工程师们如何对这些设备进行编程和调试? 又如何确保软件在不同供应商提供的单核、多核架构之间容易移植?毫无疑问,改进后的实时操作系统 (RTOS) 和开发工具将在这一领域大显身手。Enea公司正在斥巨资为这些多核架构提供优化的 RTOS 和开发工具,这将帮助工程师们降低编程复杂性、增加可移植性,并缩短产品的上市周期。

  为了促进中国的发展,您对中国工程师有什么建议?

  随着中国开发的产品越来越复杂、精密,对专业工具和RTOS的需求,以及对规范的结构化开发流程的需求都有所增加。能够成功管理这一转变的公司将会凭借其高价值产品在国际市场上占有一席之地,而其他公司则只能徘徊在低价值、低软件含量的市场中了。给中国工程师们的建议是要正确辨别专业软件开发工具和操作系统的价值及需求,这将增加产品成功上市的几率——抓准时机并切中市场需求。

  贵公司的产品特点是什么?

  Enea是全球领先的嵌入式实时技术软件公司,主要提供OSE实时操作系统、Eclipse开发工具、 Element中间件、LINX IPC、Polyhedra实时数据库和网络应用服务平台。Enea的OSE实时操作系统具有容错能力,功能独特的消息传输方式使它能方便地支持多处理器、多核之间的通信。OSE主要有以下几个版本,并且具有相同的API:

  支持RISC(PPC/ARM/MIPS)结构的OSE 5 (Footprint 100K);支持DSP结构的OSEck (Footprint 8K);支持MCU结构的OSE Epsilon (Footprint 4K)。

  Enea的软件被广泛应用于成千上万的产品中,客户主要在电信、无线、控制、航空、汽车、医疗和消费类电子等领域。■

  嵌入式系统工具在最新技术的发展是什么?

  多内核开发是目前最大困难与突出目标。多内核JTAG调试工具在仿真控制时如何有效地“同时”控制多个内核,除错时如何停止其中一个内核或多个内核,停下后如何再继续,能否回到停下前的状态等,都是调试工具开发技术的难点。对于工程师来讲,则面临如何编写一个或多个程序“同时”执行的问题,而这些程序又是相互相关的。未来几年,多内核CPU会快速发展,而如何开发这些复杂的嵌入式系统(包括如何写程序?如何除错?如何确定系统在不同时间/状态下除错?)这些都会逐渐发展出一套方法和工具。如此才能有更好的系统,更高的产出。

  目前大多数中国工程师只限于使用单一内核,应多注意多内核技术发展。此外,对于操作系统,尤其是Linux系统已发展多年,已有很多这方面的成熟应用,可学习并突破目前技术。

  对技术与市场方面,贵公司面对哪些挑战?

  一些公司目前面临大量非法复制盗版工具的冲击,经营比较困难。希望大家能多支持自主研发的产品,使嵌入式开发工具的技术能在国内生根、壮大,并能很好地配合国内半导体芯片产业的发展。

  贵公司的产品特点是什么?

  在内核的支持上,ARM、MIPS、PowerPC和DSP等均有开发工具,技术全面,同一界面支持不同内核。对于Linux的开发支持有更独到的功能,可全面掌握Linux的系统资源,使工程师开发起来更容易更得心应手。

c语言相关文章:c语言教程


linux相关文章:linux教程




评论

技术专区

关闭