如何清晰的区分单片机和ARM?
一、单片机与ARM的概念
单片机是一种集成电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计数器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的微型计算机系统,在工业控制领域广泛应用。
ARM的Jazelle技术使Java加速得到比基于软件的Java虚拟机(JVM)高得多的性能,和同等的非Java加速核相比功耗降低80%.CPU功能上增加DSP指令集提供增强的16位和32位算术运算能力,提高了性能和灵活性。ARM还提供两个前沿特性来辅助带深嵌入处理器的高集成SoC器件的调试,它们是嵌入式ICE-RT逻辑和嵌入式跟踪宏核(ETMS)系列。
二、单片机与ARM的主要特性
1.单片机的主要特性有以下几个方面:
1)主流单片机包括CPU、4KB容量的ROM、128B容量的RAM、2个16位定时/计数器、4个8位并行口、全双工串口行口、ADC/DAC、SPI、I2C、ISP、IAP;
2)系统结构简单,使用方便,实现模块化;
3)单片机可靠性高,可工作到10^6 ~10^7小时无故障;
4)处理功能强,速度快;
5)控制功能强,环境适应能力强;
6)低电压,低功耗,便于生产便携式产品。
2.ARM处理器有三大特点主要包括:
1)支持Thumb(16位)/ARM(32位)双指令集,能很好的兼容8位/16位器件;
2)寻址方式灵活简单,执行效率高;
3)大量使用寄存器,指令执行速度更快;
4)指令长度固定;
5)大多数数据操作都在寄存器中完成;
6)体积小、低功耗、低成本、高性能。
三、单片机与ARM的对比分析
1、软件方面
1)方便。主要体现在后期的开发,即在操作系统上直接开发应用程序。不像单片机一样一切都要重新写。前期的操作系统移植工作,还是要专业人士来做。
2)安全。这是LINUX的一个特点。LINUX的内核与用户空间的内存管理分开,不会因为用户的单个程序错误而引起系统死掉。这在单片机的软件开发中没见到过。
3)高效。引入进程的管理调度系统,使系统运行更加高效。在传统的单片机开发中大多是基于中断的前后台技术,对多任务的管理有局限性。
2、硬件方面
现在的8位单片机技术硬件发展的也非常得快,也出现了许多功能非常强大的单片机。但是与32ARM相比还是有些差距吧。ARM芯片大多把SDRAM,LCD等控制器集成到片子当中。在8位机,大多要进行外扩。 引入嵌入式操作系统之后,可以实现许多单片机系统不能完成的功能。比如:嵌入式web服务器,java虚拟机等。也就是说,有很多免费的资源可以利用,上述两种服务就是例子。如果在单片机上开发这些功能可以想象其中的难度。
总而言之,单片机是个微控制器,ARM显然已经是个微处理器了。ARM就是集成了各种模块,可以不像51单片机那样还要买什么芯片所需要的功能,ARM自身就集成了,直接写寄存器就OK了。
- FPGA的DSP性能揭秘(06-16)
- 基于单片机通用引脚的软件UART设计(10-16)
- 分时操作系统思想在单片机中的具体应用 (10-30)
- 基于AT89C51+DSP的双CPU伺服运动控制器的研究(05-26)
- 关于RTX51 TINY的分析与探讨(05-30)
- 基于MC9S12DGl28单片机的智能寻迹车设计(04-03)