嵌入式ARM处理的优势分析

简介:

随着物联网、人工智能等新兴技术的发展,各种新型微处理器的出现和应用的不断深化,嵌入式系统在后PC时代得到了空前的发展。对于如今大量出现的32位嵌入式应用, ARM嵌入式技术广泛地使用在许多嵌入式系统设计。这与ARM处理器的众多优势是分不开的。

ARM嵌入式开发.jpg

高性能、低功耗、低价格

把ARM处理器的性能拿来和一些著名的通用处理器(如Pentium)相比是不合适的,因为他们各自针对的应用需求是不同的。Pentium处理器采用多条指令流水线的超标量结构,追求通用应用目标下的超强性能,功耗大,可以用散热器加风扇散热。ARM针对嵌入式应用,在满足性能要求的前提下,力求最低的功率消耗。ARM结构的优点是能兼顾到性能、功耗、代码密度、价格等几个方面,而且做得比较均衡。在性能/功耗比(MIPS/W)方面,ARM处理器具有业界领先的性能。基于ARM核的芯片价格也很低,目前arm CortexM的芯片价格可低至10元人民币左右。

丰富的可选择芯片

ARM只是一个核,ARM公司自己不生产芯片,采用授权方式给半导体生产商。目前,全球几乎所有的半导体厂家都向ARM公司购买了各种ARM核,配上多种不同的控制器(如LCD控制器、SDRAM控制器、DMA控制器等)和外设、接口,生产各种基于ARM核的芯片。目前,基于ARM核的各种处理器型号有好几百种,在国内市场上,常见的有ST、TI、NXP、Atmel、Samsung、OKI、Sharp、Hynix、Crystal等厂家的芯片。用户可以根据各自的应用需求,从性能、功能等方面考察,在许多具体型号中选择最合适的芯片来设计自己的应用系统。由于ARM核采用向上兼容的指令系统,用户开发的软件可以非常方便地移植到更高的arm平台。

广泛的第三方支持

以如今的技术,设计一个处理器并非难事,但要使这个处理器得到大家认可,并取得市场成功却是非常困难的,其中涉及许多技术与非技术的因素和环节,还包括时机、运气。因为现在许多产品的开发,不是一个简单的处理器加几百条指令、语句就可以解决的。要用到32位处理器,一般都要有编译器、高效的开发工具(仿真器及调试环境)、操作系统、协议栈等,这些东西都不是一个芯片生产商可以解决的,而需要许多第三方的支持。这就像一粒种子,需要土壤、空气、水等环境才能发芽、成长。这也是我们的一些“中国芯”该反思之处。

ARM通过近20年的培育、发展,得到了广泛的第三方合作伙伴支持。目前,除通用编译器GCC,ARM有自己的高效编译、调试环境(MDK、Keil),全球约有50家以上的实时操作系统(RTOS)软件厂商和30家以上的EDA工具制造商,还有很多高效率的实时跟踪调试工具的厂商,对ARM提供了很好的支持。用户采用arm处理器开发产品,既可以获得广泛的支持,也便于和同行交流,加快开发进度,缩短产品的上市时间。

完整的产品线和发展规划

ARM核根据不同应用需求对处理器的性能要求,有一个从ARM7、ARM9到ARM10、ARM11,以及新定义的CortexM/R/A系列完整的产品线。前几年应用较多的主要是基于V4架构的ARM7TDMI、ARM720T、ARM920T核的一些处理器芯片,如NXP的LPC2000系列、ST的STR7/9系列、Atmel 的AT91系列和Samsung的S3C系列。近两年,arm Cortex系列以更好的性能、更低的价格得到快速推广,典型的就是基于CortexM3的STM32系列。

ARM CortexM/R/A系列分别针对不同的应用领域。M系列主要面向传统微控制器(MCU/单片机)应用,这类应用面很广,要求处理器有丰富的外设,并且各方面比较均衡;R系列强调实时性,主要用于实时控制,如汽车引擎;A系列面向高性能、低功耗应用系统,如智能手机。选用ARM处理器进行开发,技术积累性较强,生命周期长,设计重用度高,不易被淘汰。用户在选择ARM处理器时,可以针对应用需求,从大量的arm芯片中选用满足性能、功能要求的产品,以获得较好的性价比。

发展到如今,ARM芯片甚至在对运算速度要求更高的的上网本、平板电脑也大有跟Intel的ATOM处理器一较高低的实力,苹果iPad就是采用的ARM深度定制的一款处理器架构,其它还有很多运行着Android系统的平板产品、智能手机产品等也都采用ARM体系结构的处理核心。以朗锐智科(www.lrist.com)十年来嵌入式开发定制的过程可见ARM体系结构在移动电子消费品市场无与伦比的优势。

相关文章
|
4月前
|
边缘计算 编译器 数据中心
X86架构与Arm架构的主要区别分析
X86架构与Arm架构的主要区别分析
463 0
|
1月前
|
存储 机器学习/深度学习 人工智能
嵌入式中一文搞懂ARM处理器架构
嵌入式中一文搞懂ARM处理器架构
37 1
|
8月前
|
编译器 C语言
ARM与C语言的混合编程【嵌入式系统】
ARM与C语言的混合编程【嵌入式系统】
80 0
|
11月前
|
NoSQL 安全 Linux
ARM深入理解-hypervisor调试方法一(异常寄存器分析)
ARM深入理解-hypervisor调试方法一(异常寄存器分析)
|
NoSQL Ubuntu Linux
arm嵌入式gdb移植和搭建远程gdb调试运行环境
arm嵌入式gdb移植和搭建远程gdb调试运行环境
489 0
arm嵌入式gdb移植和搭建远程gdb调试运行环境
|
编译器 Shell 测试技术
ARM嵌入式——制作根文件系统并使用NFS挂载运行。
ARM嵌入式——制作根文件系统并使用NFS挂载运行。
310 0
|
存储 Web App开发 Ubuntu
ARM嵌入式学习笔记——《Linux内核》
ARM嵌入式学习笔记——《Linux内核》
158 0
|
Ubuntu Linux 编译器
ARM嵌入式学习笔记——《根文件系统》
ARM嵌入式学习笔记——《根文件系统》
197 0
|
Linux 编译器 Shell
arm嵌入式Linux系统移植实例过程及问题
arm嵌入式Linux系统移植实例过程及问题
456 0
|
传感器 网络协议 Linux
ARM嵌入式学习笔记——《设备驱动基础》(三)
ARM嵌入式学习笔记——《设备驱动基础》
158 0