选ARM7还是选Cortex-M3?
时间:11-23
来源:互联网
点击:
FPGA,都拥有更为众多的外围设备。大约有150种MCU是基于ARM7内核的(根据不同的统计方法,这个数字可能会更高)。
你会发现 ARM7都可以实现几乎所有的嵌入式应用,或采用定制的方式来满足需求。基于标准内核,芯片厂商可以加入不同类型、大小的存储器和其他外围设备,比如串行接口、总线控制器、存储器控制器和图形单元,并针对工业、汽车或者其他要求苛刻的领域,使用不同的芯片封装,提供不同温度范围的芯片版本。芯片厂商也可能绑定特定的软件,比如TCP/IP协议栈或面向特定应用的软件。
例如, STMicroelectronics公司的STR7产品线有三个主要系列共45个成员,具有不同的封装和存储器。每一个系列都针对特定的应用领域,具有不同外设集合。比如STR730家族是专为工业和汽车应用设计的,因此具有可扩展的温度范围,包括多个I/O口和3个CAN总线接口。STR710则是面向于消费市场以及高端的工业应用,它具有多个通信接口,比如USB, CAN, ISO7816以及4个UART,还有大容量的存储器和一个外部存储器接口。
芯片厂商也可以选择利于开发人员开发产品的措施,比如采用 ARM的 嵌入式跟踪宏单元 ETM( Embedded Trace Macrocell ),并提供开发和调试工具。
截止至这篇文章写作之时, Luminary、STMicroelectronics这两家公司已经有基于Cortex-M3的芯片,其他公司如NXP、Atmel也宣布生产该类产品。
9.配套工具
ARM7应用已经非常普及,它已经有非常多第三方的开发和调试工具支持。在ARM的网站上有超过130家工具公司名称列表。
大多数厂商提供了基本的开发板,并提供下载程序的接口、调试工具以及外部设备的驱动,包括 LED灯的显示状态或者屏幕上的单行显示。通常,开发套件包括编译器、一些调试软件以及开发板。更为高级的套件包括第三方的集成开发环境(IDE),IDE中包含编译器、链接器、调试器、编辑器和其他工具,也可能包括仿真硬件,比如说JTAG仿真器。
内电路仿真器( ICE)是最早的也是最有用的调试工具形式之一,很多厂商都在ARM7上提供了这一接口。
软件开发工具范围很广:从建模到可视化设计,到编译器。现在很多的产品也用到实时操作系统( RTOS)和中间件,以加速开发进程、降低开发难度。另外,还有一个非常重要的因素,很多的开发人员对 ARM7的开发经验非常丰富。
虽然现在已经有新兴的 Cortex-M3 工具,但显然还是有一定的差距。不过, Cortex-M3的集成调试性能使调试变得简单且有效,且无需用到内电路仿真器ICE。
10.决策
那么,你应该如何做出何种选择呢?如果成本是最主要考虑因素,您应该选择 Cortex-M3;如果在低成本的情况下寻求更好的性能和改进功耗,您最好考虑选用Cortex-M3;特别是如果你的应用是汽车和无线领域,最好也采用Cortex-M3,这正是Coretex-M3的主要定位市场。由于 Cortex-M3内核中的多种集成元素以及采用Thumb-2指令集,其开发和调试比ARM7TDMI要简单快捷。
然而,由于重定义 ARM7TDMI的应用不是一件困难的事,特别是在使用了RTOS的情况下。保守者可能会沿用ARM7TDMI内核的芯片,并避免使用那些会使重定义变得复杂的功能。
11.IAR YellowSuite for ARM
IAR YellowSuite for ARM是一整套支持ARM的开发工具整体解决方案,包括:visualSTATE状态机建模工具、IAR Embedded Workbench集成开发环境、PowerPac RTOS和中间件、仿真器等。不管选用 ARM7还是Cortex-M3,IAR的开发工具都能支持。
visualSTATE状态机建模工具
visualSTATE是一套精致、易用的开发工具, 包含图形设计器、测试工具包,代码生成器和文档生成器,用于设计、测试和实现基于状态图设计的嵌入式应用。
• 基于统一建模语言 (UML)状态机理论的图形化模型设计;
• 对设计模型进行规范性验证,检查系统的逻辑一致性,鉴别出系统设计漏洞或错误;
• 设计过程的早期阶段,甚至在硬件设计尚未完成之前,就可以使用测试工具来确保应用能按照预想方式运行;
• 自动代码生成功能可以生成极为紧凑的 C/C++代码,100%与设计保持一致;
• 自动文档生成功能提供了详尽的信息;
• 与 IAR Embedded Workbench 无缝集成,提供多种微控制器和评估板的现成示例代码;
• 通过 CSPYLink或RealLink对目标器件进行综合的图形化状态机调试;
• 支持多种硬件调试接口,例如 J-Link、通用JTAG仿真器、NEXUS仿真器等
IAR Embedded Workbench for ARM集成开发环境
IAR Embedded Workbench for ARM集成开发环境(简称EWARM) 是一套支持 ARM所有处理器的集成开发环境,包含项目管理器、编辑器、C/C++ 编译器 、汇编器、连接器和调试器。
IAR Embedded Workbench for ARM集成开发环境支持所有的ARM内核,并提供大多数芯片外设计的支持:
ARM7 (ARM7TDMI, ARM7TDMI-S, ARM720T) ARM9 (ARM9TDMI, ARM920T, ARM922T, ARM940T)
ARM9E (ARM926EJ-S, ARM946E-S, ARM966E-S) ARM10E (ARM1020E, ARM1022E), ARM11
SecurCore (SC100, SC110, SC200, SC210) CortexM3, Cortex-M1 XScale
EWARM允许对用户选择对代码大小或执行速度实行多级优化,同时还允许对项目中作不同的全局和局部优化配置,以达到速度和代码尺寸的平衡。EWARM还支持对优化级别的微调,以及对单个函数的特定优化配置。高级的全局优化与针对特定芯片优化相结合,可以生成最为紧凑、有效的代码。
EWARM中的C-SPY调试器免费集成了μC/OS-II等的内核识别(Kernel Awareness)插件,通过它可以在IAR调试器中显示μC/OS-II内部数据结构窗口,从而了解每一个项目应用中运行任务的信息,每一个信号灯、互斥量、邮箱、队列、事件标志信息,以及等待上述内核对象的所有任务列表信息。
EWARM为绝大多数ARM芯片提供了Flash Loader。当调试器启动时,Flash Loader同时被调用,自动将程序下载到Flash。Flash Loader完全集成在EWARM中,烧写过程中无需特殊的Flash编程工具和软件。
IAR J-Link仿真器可以直接与EWARM集成开发环境无缝连接,无需安装任何驱动程序, 操作方便、连接方便、简单易学,是学习开发ARM最实用的开发工具。下载速度高达800K/S,支持ARM7/9/11/Cortex-M3,并支持JTAG、SWD两种调试接口。
IAR PowerPac RTOS和中间件家族
IAR PowerPac 家族包括 RTOS 、文件系统、 USB 、 TCP/IP 等协议栈,支持所有 ARM 内核。它与 IAR Embedded Workbench 无缝集成 , 并有大量的代码例程和板级支持包 ( BSP) 。 其授权方式是 按座席收取License 费, 没有版税 ,降低了最终用户的风险。用户可以自主选择库形式或源代码形式的 IAR PowerPac。
你会发现 ARM7都可以实现几乎所有的嵌入式应用,或采用定制的方式来满足需求。基于标准内核,芯片厂商可以加入不同类型、大小的存储器和其他外围设备,比如串行接口、总线控制器、存储器控制器和图形单元,并针对工业、汽车或者其他要求苛刻的领域,使用不同的芯片封装,提供不同温度范围的芯片版本。芯片厂商也可能绑定特定的软件,比如TCP/IP协议栈或面向特定应用的软件。
例如, STMicroelectronics公司的STR7产品线有三个主要系列共45个成员,具有不同的封装和存储器。每一个系列都针对特定的应用领域,具有不同外设集合。比如STR730家族是专为工业和汽车应用设计的,因此具有可扩展的温度范围,包括多个I/O口和3个CAN总线接口。STR710则是面向于消费市场以及高端的工业应用,它具有多个通信接口,比如USB, CAN, ISO7816以及4个UART,还有大容量的存储器和一个外部存储器接口。
芯片厂商也可以选择利于开发人员开发产品的措施,比如采用 ARM的 嵌入式跟踪宏单元 ETM( Embedded Trace Macrocell ),并提供开发和调试工具。
截止至这篇文章写作之时, Luminary、STMicroelectronics这两家公司已经有基于Cortex-M3的芯片,其他公司如NXP、Atmel也宣布生产该类产品。
9.配套工具
ARM7应用已经非常普及,它已经有非常多第三方的开发和调试工具支持。在ARM的网站上有超过130家工具公司名称列表。
大多数厂商提供了基本的开发板,并提供下载程序的接口、调试工具以及外部设备的驱动,包括 LED灯的显示状态或者屏幕上的单行显示。通常,开发套件包括编译器、一些调试软件以及开发板。更为高级的套件包括第三方的集成开发环境(IDE),IDE中包含编译器、链接器、调试器、编辑器和其他工具,也可能包括仿真硬件,比如说JTAG仿真器。
内电路仿真器( ICE)是最早的也是最有用的调试工具形式之一,很多厂商都在ARM7上提供了这一接口。
软件开发工具范围很广:从建模到可视化设计,到编译器。现在很多的产品也用到实时操作系统( RTOS)和中间件,以加速开发进程、降低开发难度。另外,还有一个非常重要的因素,很多的开发人员对 ARM7的开发经验非常丰富。
虽然现在已经有新兴的 Cortex-M3 工具,但显然还是有一定的差距。不过, Cortex-M3的集成调试性能使调试变得简单且有效,且无需用到内电路仿真器ICE。
10.决策
那么,你应该如何做出何种选择呢?如果成本是最主要考虑因素,您应该选择 Cortex-M3;如果在低成本的情况下寻求更好的性能和改进功耗,您最好考虑选用Cortex-M3;特别是如果你的应用是汽车和无线领域,最好也采用Cortex-M3,这正是Coretex-M3的主要定位市场。由于 Cortex-M3内核中的多种集成元素以及采用Thumb-2指令集,其开发和调试比ARM7TDMI要简单快捷。
然而,由于重定义 ARM7TDMI的应用不是一件困难的事,特别是在使用了RTOS的情况下。保守者可能会沿用ARM7TDMI内核的芯片,并避免使用那些会使重定义变得复杂的功能。
11.IAR YellowSuite for ARM
IAR YellowSuite for ARM是一整套支持ARM的开发工具整体解决方案,包括:visualSTATE状态机建模工具、IAR Embedded Workbench集成开发环境、PowerPac RTOS和中间件、仿真器等。不管选用 ARM7还是Cortex-M3,IAR的开发工具都能支持。
visualSTATE状态机建模工具
visualSTATE是一套精致、易用的开发工具, 包含图形设计器、测试工具包,代码生成器和文档生成器,用于设计、测试和实现基于状态图设计的嵌入式应用。
• 基于统一建模语言 (UML)状态机理论的图形化模型设计;
• 对设计模型进行规范性验证,检查系统的逻辑一致性,鉴别出系统设计漏洞或错误;
• 设计过程的早期阶段,甚至在硬件设计尚未完成之前,就可以使用测试工具来确保应用能按照预想方式运行;
• 自动代码生成功能可以生成极为紧凑的 C/C++代码,100%与设计保持一致;
• 自动文档生成功能提供了详尽的信息;
• 与 IAR Embedded Workbench 无缝集成,提供多种微控制器和评估板的现成示例代码;
• 通过 CSPYLink或RealLink对目标器件进行综合的图形化状态机调试;
• 支持多种硬件调试接口,例如 J-Link、通用JTAG仿真器、NEXUS仿真器等
IAR Embedded Workbench for ARM集成开发环境
IAR Embedded Workbench for ARM集成开发环境(简称EWARM) 是一套支持 ARM所有处理器的集成开发环境,包含项目管理器、编辑器、C/C++ 编译器 、汇编器、连接器和调试器。
IAR Embedded Workbench for ARM集成开发环境支持所有的ARM内核,并提供大多数芯片外设计的支持:
ARM7 (ARM7TDMI, ARM7TDMI-S, ARM720T) ARM9 (ARM9TDMI, ARM920T, ARM922T, ARM940T)
ARM9E (ARM926EJ-S, ARM946E-S, ARM966E-S) ARM10E (ARM1020E, ARM1022E), ARM11
SecurCore (SC100, SC110, SC200, SC210) CortexM3, Cortex-M1 XScale
EWARM允许对用户选择对代码大小或执行速度实行多级优化,同时还允许对项目中作不同的全局和局部优化配置,以达到速度和代码尺寸的平衡。EWARM还支持对优化级别的微调,以及对单个函数的特定优化配置。高级的全局优化与针对特定芯片优化相结合,可以生成最为紧凑、有效的代码。
EWARM中的C-SPY调试器免费集成了μC/OS-II等的内核识别(Kernel Awareness)插件,通过它可以在IAR调试器中显示μC/OS-II内部数据结构窗口,从而了解每一个项目应用中运行任务的信息,每一个信号灯、互斥量、邮箱、队列、事件标志信息,以及等待上述内核对象的所有任务列表信息。
EWARM为绝大多数ARM芯片提供了Flash Loader。当调试器启动时,Flash Loader同时被调用,自动将程序下载到Flash。Flash Loader完全集成在EWARM中,烧写过程中无需特殊的Flash编程工具和软件。
IAR J-Link仿真器可以直接与EWARM集成开发环境无缝连接,无需安装任何驱动程序, 操作方便、连接方便、简单易学,是学习开发ARM最实用的开发工具。下载速度高达800K/S,支持ARM7/9/11/Cortex-M3,并支持JTAG、SWD两种调试接口。
IAR PowerPac RTOS和中间件家族
IAR PowerPac 家族包括 RTOS 、文件系统、 USB 、 TCP/IP 等协议栈,支持所有 ARM 内核。它与 IAR Embedded Workbench 无缝集成 , 并有大量的代码例程和板级支持包 ( BSP) 。 其授权方式是 按座席收取License 费, 没有版税 ,降低了最终用户的风险。用户可以自主选择库形式或源代码形式的 IAR PowerPac。
ARM7Cortex-M 相关文章:
- 选择ARM处理器,ARM7还是Cortex-M3(11-27)
- ARM7与Cortex-M3的区别(11-21)
- 选择ARM处理器的ARM7还是Cortex-M3(11-17)
- ARM处理器选型指南:选ARM7还是选Cortex-M3(11-10)
- Windows CE 进程、线程和内存管理(11-09)
- RedHatLinux新手入门教程(5)(11-12)