8位单片机有5类:8051、AVR、PIC、MSP430、ARM。要了解其各自的性能特点,首先要弄清两个基本概念:集中指令集(CISC)和精简指令集(RISC)。采用CISC结构的单片机数据线和指令线分时复用,即所谓的冯·诺依曼结构。其指令丰富,功能较强,但取指令和取数据不能同时进行,速度受限,价格也高。采用RISC结构的单片机数据线和指令线分离,即所谓的哈佛结构。这使得取指令和取数据可同时进行,且由于一般指令线宽于数据线,使其指令较同类CISC单片机指令包含更多的处理信息,执行效率更高,速度也更快。同时,这种单片机指令多为单字节,程序存储器的空间利用率大大提高,有利于实现超小型化。
下面分别介绍这5类单片机的性能特点:
一、8051单片机
AVR单片机具有高可靠性、强大功能、高速度、低功耗和低价格的特点。
早期的单片机采用了保守的设计方案,通过较高的分频系数对时钟进行分频,导致指令周期长,执行速度慢。即使后来的CMOS单片机采用了提高时钟频率和缩小分频系数等措施,这种状况并没有完全改观(包括51系列及51兼容的单片机)。尽管出现了一些精简指令集单片机(RISC),但仍然延续了对时钟分频的做法。
AVR单片机的推出彻底颠覆了这种旧的设计格局,取消了机器周期,摒弃了复杂指令计算机(CISC)的方式,而是追求指令的完备性。它采用了精简指令集,以字为指令长度单位,将丰富的操作数和操作码安排在同一个字中(大多数单周期指令都是这样的)。这种设计使得取指周期短,能够预取指令,实现流水作业,从而实现快速执行指令。当然,这种速度提升是在高可靠性的基础上实现的。
AVR单片机的硬件结构采用了8位单片机和16位单片机的折中策略,使用了局部寄存器堆(32个寄存器文件)和单体高速输入/输出方案(包括输入捕获寄存器、输出比较匹配寄存器及相应的控制逻辑)。这种设计提高了指令执行速度(1Mips/MHz),克服了瓶颈现象,增强了功能;同时减少了外设管理的开销,简化了硬件结构,降低了成本。因此,AVR单片机在软硬件开销、速度、性能和成本等多个方面取得了优化平衡,是高性价比的单片机。
二、AVR单片机
AVR单片机具有高可靠性、功能强大、高速度、低功耗和低价格等特点。
在早期,单片机采用较高的分频系数对时钟进行分频,导致指令周期长,执行速度较慢。即使后来的CMOS单片机采用了提高时钟频率和缩小分频系数等措施,这种状况并未完全改观(包括51系列及51兼容的单片机)。虽然也出现了一些精简指令集单片机(RISC),但仍继续沿用对时钟分频的做法。
AVR单片机的推出彻底打破了这种旧的设计格局,取消了机器周期,摒弃了复杂指令计算机(CISC)的方式,而是追求指令的完备性。它采用了精简指令集,以字为指令长度单位,将丰富的操作数和操作码安排在同一个字中(大多数单周期指令都是这样的)。这种设计使得取指周期短,能够预取指令,实现流水作业,从而实现快速执行指令。当然,这种速度提升是建立在高可靠性的基础上的。
AVR单片机的硬件结构采用了8位单片机和16位单片机的折中策略,使用局部寄存器堆(32个寄存器文件)和单体高速输入/输出方案(包括输入捕获寄存器、输出比较匹配寄存器及相应的控制逻辑)。这种设计提高了指令执行速度(1Mips/MHz),克服了瓶颈现象,增强了功能;同时减少了外设管理的开销,简化了硬件结构,降低了成本。因此,AVR单片机在软硬件开销、速度、性能和成本等多个方面取得了优化平衡,是一款性价比高的单片机。
总结起来,AVR有以下几个特点。
(1)哈佛结构,具备1MIPS/MHz的高速运行处理能力。
(2)超功能精简指令集(RISC),具有32个通用工作寄存器,克服了如8051MCU采用单一ACC进行处理所造成的瓶颈现象。
(3)快速的存取寄存器组、单周期指令系统,大大优化了目标代码的大小、执行效率,部分型号的FLASH非常大,特别适用于使用高级语言进行开发。
(4)作输出时与PIC的HI/LOW相同,可输出40mA(单一输出);作输入时可设置为三态高阻抗输入或带上拉电阻输入,具备10~20mA灌电流的能力。
(5)片内集成多种频率的RC振荡器、上电自动复位、看门狗、启动延时等功能,外围电路更加简单,系统更加稳定、可靠。
(6)大部分AVR片上资源丰富,带E2PROM,PWM,RTC,SPI,UART,TWI,ISP,AD,Analog Comparator,WDT等。
(7)大部分AVR除了有ISP功能外,还有IAP功能,方便升级或销毁应用程序。
AVR单片机有3个档次:
低档Tiny系列AVR单片机:主要有Tiny11/12/13/15/26/28等。中档AT90S系列AVR单片机:主要有AT90S1200/2313/8515/8535等;高档ATmega系列AVR单片机:主要有ATmega8/16/32/64/128(存储容量为8/16/32/64/128KB)及ATmega8515/8535等。
三、PIC单片机
PIC的主要优势在于:
(1)PIC的最大特点是不搞单纯的功能堆积,从实际出发,重视产品的性价比,靠发展多种型号来满足不同层次的应用要求。就实际而言,不同的应用对单片机功能和资源的需求也不同。比如,一个摩托车的点火器需要一个I/O较少、RAM及程序存储空间不大、可靠性较高的小型单片机,若采用40脚且功能强大的单片机,投资大不说,使用起来也不方便。PIC系列从低到高有几十个型号,可以满足各种需要。其中,PIC12C508单片机仅有8个引脚,是世界上最小的单片机。
该型号有512字节ROM、25字节RAM、一个8位定时器、一根输入线、5根I/O线,市面售价在人民币3~6元之间。这款单片机在像摩托车点火器这样的应用无疑非常适合。PIC的高档型号,如PIC16C74(尚不是最高档的型号)有40个引脚,其内部资源为4KB ROM、192字节RAM、8路A/D、3个8位定时器、2个CCP模块、3个串行口、1个并行口、11个中断源、33个I/O脚。
(2)精简指令使其执行效率大为提高。PIC系列8位CMOS单片机具有独特的RISC结构,数据总线和指令总线分离的哈佛总线(Harvard)结构,使指令具有单字长的特性,且允许指令码的位数可多于8位的数据位数,这与传统的采用CISC结构的8位单片机相比,可以达到2:1的代码压缩,速度提高4倍。
(3)产品上市零等待。采用PIC的低价OTP型芯片,可使单片机在其应用程序开发完成后立刻使该产品上市。
(4)PIC有优越的开发环境。OTP单片机开发系统的实时性是一个重要的指标,普通51单片机的开发系统大多采用高档型号仿真低档型号,其实时性不尽理想。PIC在推出一款新型号的同时推出相应的仿真芯片,所有的开发系统由专用的仿真芯片支持,实时性非常好。从我个人的经验看,还没有出现过仿真结果与实际运行结果不同的情况。
(5)其引脚具有防瞬态能力,通过限流电阻可以接至220V交流电源上,可直接与继电器控制电路相连,无须光电耦合器隔离,给应用带来极大方便。
(6)彻底的保密性。PIC以保密熔丝来保护代码,用户在烧入代码后熔断熔丝,别人再也无法读出,除非恢复熔丝。目前,PIC采用熔丝深埋工艺,恢复熔丝的可能性极小。
(7)自带看门狗定时器,可以用来提高程序运行的可靠性。
(8)睡眠和低功耗模式。虽然PIC在这方面已不能与新型的TI-MSP430相比,但在大多数应用场合还是能满足需要的。
四、MSP430单片机
MSP430系列单片机的迅速发展和应用范围的不断扩大,主要取决于以下特点。
强大的处理能力:采用16位RISC结构,具有丰富的寻址方式和指令集,高效的查表处理指令,速度快,指令周期为125ns,可编写高效率的源程序。
高运算速度:在8MHz晶体的驱动下,实现125ns的指令周期,配合16位数据宽度和硬件乘法器,可实现数字信号处理算法。
灵活的中断系统:拥有多个中断源,并支持任意嵌套,使用灵活方便。在省电备用状态下,通过中断请求唤醒仅需6μs。
超低功耗:MSP430单片机功耗极低,通过降低芯片电源电压和灵活可控的运行时钟来实现超低功耗。
电源电压范围:采用1.8~3.6V电压,使得在1MHz时钟条件下运行时,芯片电流在200~400μA之间,时钟关断模式下的最低功耗为仅0.1μA。
独特的时钟系统设计:包括基本时钟系统和锁频环(FLL和FLL+)时钟系统或DCO数字振荡器时钟系统。可以使用一个或两个晶体振荡器来产生所需的时钟信号。时钟可根据指令控制开启和关闭,实现对总体功耗的控制。
多种工作模式:系统包括一种活动模式(AM)和五种低功耗模式(LPM0~LPM4),在待机模式下功耗仅为0.7μA,在极低功耗模式下甚至可以达到0.1μA。
系统工作稳定:上电复位后,DCOCLK启动CPU,确保程序从正确位置开始执行,保证晶体振荡器启动和稳定时间。软件可设置寄存器控制位来确定系统时钟频率。若晶体振荡器用于CPU时钟MCLK时发生故障,DCO会自动启动以保证系统正常工作;同时,看门狗可用于检测程序错误并复位系统。
五、ARM公司成立于1991年,总部位于英国剑桥,专注于销售芯片设计技术的授权。ARM技术知识产权(IP)核的微处理器已广泛应用于工业控制、消费类电子产品、通信系统、网络系统、无线系统等各类产品市场。基于ARM技术的32位RISC微处理器约占据市场份额的75%以上,逐步渗透到生活的各个方面。
ARM公司是专门从事基于RISC技术芯片设计开发的公司,作为知识产权供应商,不直接从事芯片生产,而是通过转让设计许可给合作公司,让它们生产具有特色的芯片。全球各大半导体生产商从ARM公司购买设计的ARM微处理器核,根据不同的应用领域,加入适当的外围电路,生产出自己的ARM微处理器芯片。数十家大型半导体公司使用ARM公司的授权,这使得ARM技术得到更多第三方工具、制造和软件的支持,降低整个系统成本,使产品更容易被市场接受。
ARM处理器的特点如下:
(1)体积小、低功耗、低成本、高性能;
(2)支持Thumb(16位)/ARM(32位)双指令集,能很好地兼容8位/16位器件;
(3)大量使用寄存器,指令执行速度更快;
(4)大多数数据操作都在寄存器中完成;
(5)寻址方式灵活简单,执行效率高;
(6)指令长度固定。
ARM的商业模式之所以强大,是因为它在全球范围内拥有超过100个合作伙伴。事实上,ARM是一家设计公司,不直接生产芯片,而是通过许可证制度,让合作伙伴生产芯片。
所以,ARM不是单片机,而是一种处理器的IP核。英国ARM公司开发了处理器结构后,向其他芯片厂商提供制造许可。芯片厂商可以根据需要对结构和功能进行调整,因此实际使用的ARM处理器有多种类型,由三星、飞利浦、Atmel、Intel等制造,具有不同的功能和用途。ARM处理器核可嵌入其他专用芯片中作为中央处理单元使用,例如飞利浦的MP3解码芯片采用的就是ARM7核心。ARM系列处理器很少集成片上硬件资源,更类似于当今的处理器,通常不被视为单片机。