1.2 单片机的发展
目前,计算机硬件技术正朝着大容量、高性能、高集成化、高微型化和低功耗等方向发展。单片机代表着计算机技术的一个发展方向。自1975年美国德克萨斯仪器公司(Texas Instruments, TI)研发的第一块单片机芯片TMS-1000问世以来,在短短的30多年间,单片机技术已发展成为计算机技术的一个非常有活力的分支,并有着自己的技术特征、规范、发展道路和应用环境。随着电子技术的发展,单片机在集成度、功能、性能、体系结构等方面都得到了飞速发展。
1.2.1 单片机的发展概况
单片机的发展历史可划分为四个阶段。
第一阶段(1974~1976年):单片机的初级阶段。因工艺限制,单片机采用双片的形式而且功能比较简单。例如,仙童公司生产的F8单片机,实际上只包括了8位的CPU、64个字节RAM和2个并行口。因此,还需对外扩展程序存储器ROM、定时/计数器等设备才能组成一台完整的计算机。
第二阶段(1976~1978年):低性能单片机阶段。以Intel公司制造的MCS-48单片机为代表,这种单片机片内集成有8位CPU、并行I/O接口、8位定时/计数器、RAM和ROM等,但是不足之处是无串行口、中断处理比较简单、片内存储器的容量较小且寻址范围不大于4KB。
第三阶段(1978~1983年):高性能单片机阶段。这个阶段推出的单片机普遍带有串行口、多级中断系统、16位定时/计数器等,片内存储器容量加大,且寻址范围可达64K字节,有的片内还带有A/D转换器。
第四阶段(1983年~现在):8位单片机巩固发展及16位、32位和64位单片机陆续推出。此阶段的主要特征是一方面发展16位、32位和64位单片机;另一方面不断完善高档8位单片机,改善其结构,以满足不同的用户需要。例如,1983年Intel公司推出的MCS-96系列,1987年Intel公司推出的80C96、美国国家半导体公司推出的HPC16040、NIEC公司推出的783XX系列等。20世纪80年代末推出了32位单片机,如Motorola的MC683XX系列、Intel的80960系列,以及近年来流行的ARM系列单片机。32位单片机是单片机的发展趋势,随着技术的发展及开发成本和产品价格的下降,将会与8位单片机并驾齐驱。近年来,推出了64位单片机,其在引擎控制、智能机器人、磁盘控制、语音/图像通信、算法密集的实时控制等场合已有应用,如英国Inmos公司的Transputer T800是高性能64位单片机。
虽然单片机的发展按先后顺序经历4位、8位、16位、32位、64位的阶段,但从实际使用情况看,并没有出现像微处理器那样更新换代的局面,这也是单片机发展的一大特点。4位、8位、16位、32位单片机都存在于市场中,各有应用领域。不过,各类单片机为适应市场需求,都在原来的基础上采取新技术、提高性能、推出新产品。图1.1是一项近期对单片机选型的市场调查,从中可以看出,8位单片机因其高性价比仍是市场的主流产品,但32位单片机的发展很迅速。
图1.1 单片机选型市场调查
1.2.2 单片机的发展趋势
从单片机多年的发展历程可以看到,随着超大规模集成电路技术的发展,单片机的发展趋势将是向大容量、高性能化、外围电路高嵌入化等方面发展。
1.CPU的改进
1)采用多CPU(多核)结构,以提高处理能力。
2)增加数据总线宽度。例如,采用16位数据总线,其数据处理能力明显优于一般8位单片机。
3)提高主频,以提高单片机的处理速度。例如,51单片机的工作频率已从最开始的几MHz提升到几十MHz,ARM公司推出的Cortex-A15核心CPU主频达到2GHz。
4)采用多线程流水线或并行处理结构。例如,TI公司生产的MSP430系列单片机,采用流水线结构后大幅度提高了CPU处理速度,一个时钟周期可以执行一条指令。
2.存储器的发展
1)加大存储容量。随着应用系统的功能要求多元化,应用程序长度快速增长,为了减少扩展,简化硬件设计,大部分单片机的片内程序存储器容量可达64KB或128KB甚至更大,数据存储器的容量也越来越大。
2)片内程序存储器采用可多次编程的FLASH存储器,一些单片机也集成了可在线读写且掉电不丢失的数据存储器E2PROM等。
3)程序保密化。为了防止复制,某些公司对片内程序存储器采用加锁方式。加锁后,无法读取其中的程序。如要去读,必须抹去原来的程序,从而达到了程序保密的目的。
3.片内I/O的改进
1)增加I/O口的驱动能力。这样可减少外部驱动芯片。例如,有的单片机可直接输出大电流和高电压,以便能直接驱动LED和VFD显示器。
2)增加I/O接口的逻辑控制功能。大部分单片机的I/O接口能够进行位寻址和位操作,大大提高了I/O接口线控制的灵活性。
3)增加I2C、SPI等串行接口功能。方便了系统与外围设备连接,用户可以通过I2C、SPI等串行接口连接诸如传感器等设备,完成检测功能,同时把系统情况通过串行口传送给上位机管理系统,完成远程设备的控制。
4.外围电路内嵌化
随着集成度的不断提高,把更多的外围功能模块集成在芯片上,以进一步提高单片机的性能。除了一般必须具有的ROM、RAM、定时/计数器、中断系统等,随着发展的要求,片内集成的部件还有A/D转换器、D/A转换器、DMA控制器、CAN总线控制器、PWM控制器、锁相环、频率合成器等。
5.低噪声与高可靠性技术
为提高单片机系统的抗电磁干扰能力,使产品能适应恶劣的工作环境,满足电磁兼容性方面更高标准的要求,各单片机商家在单片机内部电路中采取了一些新的技术措施,例如,ST公司的μPSD系列单片机片内增加了看门狗定时器,NS公司的COP8单片机内部增加了抗EMI电路,增强了“看门狗”的功能。
6.低功耗化
几乎所有的单片机都有Wait、Stop等省电运行方式,允许使用的电源电压范围也越来越宽,一般单片机都能在3~6V范围内工作,对电池供电的单片机不再需要对电源采取稳压措施。低电压供电的单片机电源下限已由2.7V降至1.8V,目前,0.9V供电的单片机也已经问世。
7.在线编程技术
使用在线编程技术不需要采用专门的烧录器对芯片进行程序烧录,可在用户应用系统板上直接对单片机进行程序下载烧录。目前,在线编程主要有两种不同方式:
1)ISP(In System Programming),即在系统编程。具备ISP的单片机内部集成了FLASH存储器,用户可以通过下载线以特定的硬件时序在线编程,但用户程序自身不可以对内部存储器做修改。这类产品如OTMEL8990系列。
2)IAP(In Application Programming),即在应用编程。具备IAP的单片机厂家在出厂时向其内部写入了单片机引导程序,用户可以通过下载线对它进行在线编程,用户程序也可以自己对内存进行重新修改。这为工业实时控制和数据的保存提供了方便。这类产品如SST的89系列。
8.在线仿真技术
一些新型的SOC单片机都具有在线仿真功能,这些单片机都配置了JTAG接口。JTAG(Joint Test Action Group,联合测试行动小组)是一种国际标准测试协议(IEEE1149.1兼容),主要用于芯片内部测试。JTAG接口的引入使单片机传统的仿真调试产生了彻底的变革。在上位机软件的支持下,通过串行的JTAG接口直接对产品系统进行仿真调试。如配置有JTAG接口的C8052F单片机不仅支持Flash ROM的读/写操作及非入侵式在线调试,它的JTAG逻辑还为在系统测试提供边界扫描功能。通过边界寄存器的编程控制,可对所有器件引脚、寄存器和I/O接口的功能实现观察和控制。