新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > RealView MDK—引领ARM开发工具新潮流

RealView MDK—引领ARM开发工具新潮流

——
作者:ARM 供稿时间:2007-12-05来源:电子产品世界

   微控制器开发工具

  公司的开发工具品牌, 新推出的嵌入式微控制器软件开发工具。它集成了业界领先的mVision IDE开发平台和RealView 编译工具RVCT,良好的性能使它成为开发工具中佼佼者。

  编译链接工具RVCT

  *RVCT是代码编译链接工具

  编译器是开发工具的灵魂。RVCT 编译器是ARM公司多年以来积累的成果,它提供了多种优化级别,帮助开发人员完成代码密度与代码执行速度上的不同层次优化,是业界高效的ARM编译器。

  RVCT具有两个优化代码的大方向,即代码性能(-Otime)和代码密度(-Ospace);四个逐次递进的优化级别,即-O0、-O1、-O2、-O3。此外,RVCT还支持很多有用的编译选项,如-no_inline(取消所有代码的内嵌函数)、

  -split_ldm(限制LDM/STM指令的最大操作寄存器数目)等等。

  相对于编译器ADS1.2,RealView 新增了-O3编译选项,它可以最大程度的发挥RVCT编译器的优势,将代码译成最佳。-O3有以下三个优点:

  *自动对代码进行高阶标量优化,能够根据代码特点、针对循环、指针等进行高阶优化;

  *把尽可能多的函数编译为内嵌函数;

  *自动应用多文件联合优化功能。

  经过统计,与ADS1.2的编译工具比较,集成在RealView MDK中的RVCT编译器可以将相同代码的代码大小平均缩小10%,性能平均提高20%,如图1所示。

图1  RealView 与ADS的比较

  *RealView MicroLIB嵌入式应用的微型C函数库

  为进一步提高应用程序代码密度,RVCT中集成了新型的Microlib C函数库,它是C函数的ISO标准实时库的一个子集,可以将库函数的代码尺寸降低到最小,以满足微控制器在嵌入式领域中的应用需求,如图2所示。

图2  RealView MDK MicroLIB库

{{分页}}

  *丢弃冗余代码功能

  RVCT 链接器支持Linker Feedback功能,在链接过程中会产生一个Linker feedback文件,该文件记录了整个系统中的所有冗余函数信息,RVCT编译器会根据linker feedback文件将所有冗余函数单独编译,以便再次链接时丢弃。工作原理如图3所示。

图3  LINKER FEEDBACK 的原理

  mVision IDE平台

  mVision IDE平台是KEIL公司(现为ARM的子公司)开发的微控制器开发平台,在全球已有超过10万的正式用户。mVision IDE平台可以支持51、166、251及ARM等近2000款微控制器应用开发。RealView MDK集成了mVision IDE开发工具和RVCT编译工具,如图4所示。

图4  mVision IDE 平台

{{分页}}

  自动生成启动代码

  RealView MDK 提供了启动代码生成向导,在建立新工程时,MDK向导会根据客户需求添加针对相关微控制器的汇编启动代码。这项功能将大大简化用户手写汇编启动代码的难度。

  MDK生成启动代码之后,用户可以手工编辑,修改某些参数更加符合系统要求,例如PLL时钟配置,各种模式下的堆栈指针等等。同时MDK提供简单易用的GUI窗口,用来配置启动代码中的参数。

  仿真与性能分析工具

  当前多数基于ARM的开发工具都有仿真功能,但是大多仅仅局限于对ARM内核指令集的仿真。MDK的系统仿真工具支持外部信号与I/O、快速指令集仿真、中断仿真、片上外设(ADC、DAC、EBI、Timers、UART、CAN、I2C等等)仿真等功能。与此同时,在软件仿真的基础上,MDK的性能分析工具方便用户得到性能分析数据,进行软件优化。

  


评论

技术专区

关闭