DS-5,MDK-ARM和 RVDS的功能非常相似,都有一个编译器、调试器、分析工具和模拟模块,如果拿工具链功能之间来进行比较,是比较花时间,而且是相当无意义的,所以我们通过他们解决的市场问题去比较,这样会简单得多。
MDK-ARM
(1)MDK-ARM是ARM 公司推荐的针对微控制器的工具链,或者基于单核ARMTDMI,Cortex-M或者Cortex-R处理器的目录芯片组。
(2)MDK-ARM中的ARM编译器只限于编译以上这些处理器的代码,并且它的调试器仅可连接到KEIL设备库中的芯片组(www.keil.com/dd)。
(3)对于微控制器开发人员,MDK-ARM提供非常好的简单的工程管理经验,以及芯片组的支持集成, Flash编程集成,软件例程等。
(4)MDK-ARM为许多RTOS提供操作OS-awareness。
(5)MDK-ARM同样支持Cortex-M处理器的所有高级调试和跟踪功能,长时间的流跟踪(通过ULINKpro),以及代码覆盖率。
(6)MDK-ARM基于uVision IDE,它和Visual Studio有点相似。
(7)MDK-ARM比DS-5便宜。
DS-5
(1)这是ARM公司推荐的为ASIC,ASSP和MPU(意思就是任何不是微控制器的设备)的开发工具链。
(2)DS-5中的ARM编译器是无限制的。
(3)DS-5调试器支持对所有的ARM核进行运行控制调试,以及对所有的ARM11和Cortex-A/R/M核进行指令跟踪。当然,一些Cortex-M处理器的高级调试功能在同级别的MDK-ARM中时不支持的,比如它不支持ITM PC采样。
(4)DS-5为SOC和开发板提供bring-up工具,以及为用户芯片组和产品大量灵活的配置支持。它支持多核,大端,小端,管理程序开发和所有其他在Cortex-A处理器级别的新功能。
(5)DS-5为ENEA OSE、Linux、Android 提供OS awareness工具,它们普遍用在Cortex-A系列上。它同时含有Streamline,一个为Linux和Android的性能分析器。
(6)DS-5基于Eclipse IDE。
(7)DS-5比MDK-ARM贵。
RVDS & ADS
(1)ARM已经停止对RVDS 和 ADS 的更新,已经由DS-5取代。新的设计不建议使用RVDS和,因为在更低的价格上,DS-5提供更好的调试器,新的处理器支持,Linux/Android awareness和更好的用户体验。
比较
产品 | Keil MDK | DS-5 | RVDS |
常规 | |||
编译工具 | ARM Compiler | ARM Compiler or GCC | ARM Compiler |
开发环境 | μVision IDE | Eclipse | |
调试器 | μVision Debugger | DS-5 Debugger | RVDS Debugger |
模拟器 | μVision Simulator | Real-Time System Models |
RealView ISS & Real-Time System Models |
调试硬件 |
ULINKpro仿真器 ULINKPro D仿真器 ULINK2仿真器 ULINK-ME仿真器 |
DSTREAM仿真器 RVI仿真器 ULINKPro仿真器 ULINKPro D仿真器 |
|
跟踪硬件 | ULINKpro仿真器 | DSTREAM or RVI仿真器 | |
代码生成 | |||
ARM C/C++ Compiler | |||
ARM Macro Assembler | |||
ARM Linker & Utilities | |||
GCC Compiler | Separate | Included | |
输出格式 | ELF/DWARF & HEX | ||
ARM微控制器 ARM7, ARM9 | |||
所有ARM嵌入式处理器 Cortex-M0, Cortex-M1, Cortex-M3, Cortex-M4 & Cortex-R4 | |||
所有ARM应用处理器 ARM10, ARM11, Cortex-A5, Cortex-A8, Cortex-A9, & Cortex-A15 | |||
所有ARM安全内核 SC000, SC100, SC200, SC300 | |||
ARM / Thumb / Thumb2指令 | |||
专用设备支持 |
(See Device Database) |
||
库和例程 | |||
C/C++模板库 | |||
EABI兼容 | |||
MicroLib | |||
Third-Party库 | |||
RTX内核库 | |||
例程程序 | 提供大量的示例项目,可直接作为模板来开发自己的项目。 | 提供ARM常规例程,引导使用ARM CPU内核扩展。 | |
调试 | |||
ELF/DWARF输入 | |||
HEX输入 | |||
符号目标输入 | |||
JTAG和SWD支持 |
ULINKpro ULINK2orULINK-ME |
DSTREAM or RVI | |
数据追踪(SWV/SWO) |
ULINKpro ULINK2orULINK-ME |
DSTREAM or RVI | |
指令追踪ETM/TPIU | ULINKpro | DSTREAM or RVT2 | |
GDBServer支持 | |||
Third-Party调试支持 | |||
OS-Aware | Keil RTX, CMX RTOS, Segger emBos, Quadros RTXC | Linux & Google Android | 可配置 |
多内核支持 | |||
分析工具 | |||
逻辑分析仪 | |||
应用优化工具 |
Execution Profiler Performance Analyzer |
Streamline Performance Analyzer |
ARM Profiler |
代码覆盖率 | |||
模拟 | |||
模拟指令集 | |||
模拟启动代码 | with RTSM | with RTSM | |
模拟中断 | |||
模拟外围设备 | |||
目标可见 | 外围设备对话和系统观测器 | 用户可配置 |
-
嵌入式主板
+关注
关注
7文章
6085浏览量
35353 -
安卓
+关注
关注
5文章
2131浏览量
57219 -
米尔科技
+关注
关注
5文章
227浏览量
20975
发布评论请先 登录
相关推荐
评论