分类: 其他平台
2013-06-03 15:07:13
从Silicon Lab C8051F看8位单片机发展之路
作 者: 北京航空航天大学 何立民
摘 要: 80C51是一个独特的8位单片机系列。80C51从早期Intel公司的MCS-51到PHILIPS、ATMEL等公司发展的80C51系列MCU,再到Silicon Lab公司最新推出的C8051F,表明了单片机的典型发展过程。Silicon Lab的C8051带SoC色彩,集成了嵌入式系统的许多先进技术。这些先进技术对8位MCU的发展会有推进作用。
关键词: C8051FCIP-51 交叉开关 JTAG接口 SoC
在嵌入式系统低端的单片机领域,从8位单片机诞生至今,已近30年,在百花齐放的单片机家族中,80C51系列一直扮演着一个非常独特的角色。Silicon Lab 推出C8051F更令业界人士刮目相看。回顾历史,在Intel公司推出了MCS-51不久便实施了最彻底的技术开放政策;在众多电器商、半导体商的积极参与下,将MCS-51发展成了众多型号系列的80C51 MCU家族。MCS-51经典的体系结构、极好的兼容性和Intel公司的开放政策不仅使众多厂家参与发展,也诱使半导体厂家对MCS-51实行为所欲为的改造。由于MCS-51提供的最佳兼容性,使MCS-51在被"肢解"式改造后,还能以不变的指令系统、基本单元的兼容性保持着8051内核的生命延续,并在未来SoC发展中,担任8位CPU内核的重任。回顾80C51系列从MCS-51、80C51到C8051F的过程,我们可以深刻领会到单片机发展的一些规律性东西。
1 嵌入式应用中的8位机现象
与从8位机迅速向16位、32位、64位过渡的通用计算机相比,8位单片机从20世纪70年代初期诞生至今,虽历经从单片微型计算机到微控制器、MCU和SoC的变迁,8位机始终是嵌入式低端应用的主要机型,而且在未来相当长的时间里,仍会保持这个势头。这是因为嵌入式系统和通用计算机系统有完全不同的应用特性,从而走向完全不同的技术发展道路。
嵌入式系统嵌入到对象体系中,并在对象环境下运行。与对象领域相关的操作主要是对外界物理参数进行采集、处理,对外界对象实现控制,并与操作者进行人机交互等。而对象领域中的物理参数的采集与处理、外部对象的控制以及人机交互所要求的响应速度有限,而且不会随时间变化。在8位单片机能基本满足其响应速度要求后,数据宽度不成为技术发展的主要矛盾。因此8位单片机会稳定下来,其技术发展方向转为最大限度地满足对象的采集、控制、可靠性和低功耗等品质要求。
随着现代通信技术的发展,智能化系统对DSP需求的增长要求单片机相应提高运算速度。当前8位单片机在不扩展数据总线的情况下,提高运行速度仍有潜力可挖。例如,采用RISC结构实现并行流水线作业,CISC结构的C8051F采用CIP-8051结构,使单周期指令速度提高到原8051的12倍。
鉴于嵌入式低端应用对象的有限响应要求、嵌入式系统低端应用的巨大市场以及8位机具有的速度潜力,可以预期在未来相当长的时间内,8位机仍然是嵌入式应用中的主流机型。
随着半导体技术的发展,8位单片机在CPU结构、CPU外围、功能外围、外围接口和集成开发环境方面都会迅速地发展;因此,可以说8位单片机虽然"古老",但又会是一个十分活跃而新兴的嵌入式领域。80C51系列从Intel公司的MCS-51发展到Silicon Lab公司的C8051F的过程充分地说明了这一点。
2 8位单片机中的80C51现象
在8位单片机中,80C51系列形成了一道独特的风景线。历史最长,长盛不衰,众星捧月,不断更新,形成了既具有经典性,又不乏生命力的一个单片机系列。当前,Silicon Lab公司推出的C8051F又将8051兼容单片机推上了8位机的先进行列。总结80C51系列的发展历史,可以看出单片机的3次技术飞跃。
2.1 从MCS-51到MCU的第1次飞跃
Intel公司于1980年推出的MCS-51奠定了嵌入式应用的单片微型计算机的经典体系结构,但不久就放弃了进一步发展计划,并实施了8051的技术开放政策。无论从主观因素还是客观因素,都是明智之举。因为在创建一个完善的嵌入式计算机体系结构后,面临的是不断满足嵌入式对象要求的各种控制功能。在8051实现开放后,PHILIPS公司作为全球著名的电器商以其在电子应用系统的优势,着力发展80C51的控制功能及外围单元。将MCS-51的单片微型计算机迅速地推进到80C51的MCU时代,形成了可满足大量嵌入式应用的单片机系列产品。
2.2 引领Flash ROM潮流的第2次飞跃
当前,嵌入式系统普遍采用Flash ROM技术。Flash ROM的使用加速了单片机技术的发展。基于Flash ROM的ISP/IAP技术,极大地改变了单片机应用系统的结构模式以及开发和运行条件;而在单片机中最早实现Flash ROM技术的是ATMEL公司的AT89Cxx系列。
2.3 内核化SoC的第3次飞跃
MCS-51典型的体系结构以及极好的兼容性,对于MCU不断扩展的外围来说,形成了一个良好的嵌入式处理器内核的结构模式。当前嵌入式系统应用进入SoC模式,从各个角度,以不同方式向SoC进军,形成了嵌入式系统应用热潮。在这个技术潮流中,8051又扮演了嵌入式系统内核的重要角色。在MCU向SoC过渡的数、模混合集成的过程中,ADI公司推出了ADμC8XX系列,而Cygnal公司则实现了向SoC的C8051F过渡;在PLD向SoC发展过程中,Triscend公司在可配置系统芯片CSoC的E5系列中便以8052作为处理器内核。
3 Silicon Lab C8051F对80C51的技术突破
我们习惯于将各厂家生产的与51兼容的形形色色的单片机系列称之为80C51系列。它们都采用CMOS工艺,并与MCS-51兼容。
与MCS-51相比较,80C51已有很大发展。然而,当前Silicon Lab公司发展的C8051F系列,在许多方面已超出当前8位单片机水平,有许多新的技术概念需要学习与更新。
3.1 采用CIP-51内核大力提升CISC结构运行速度
迄今为止,MCS-51已成为8位机中运行最慢的系列。为了提升速度,DALLAS公司和PHILIPS公司采用传统的改变总线速度的办法,将机器周期从12个缩短到4个和6个,速度提升有限。
Silicon Lab公司在提升8051速度上采取了新的途径,即设法在保持CISC结构及指令系统不变的情况下,对指令运行实行流水作业,推出了CIP-51的CPU模式。在这种模式中,废除了机器周期的概念,指令以时钟周期为运行单位。平均每个时钟可以执行完1条单周期指令,从而大大提高了指令运行速度。即与8051相比,在相同时钟下单周期指令运行速度为原来的12倍;整个指令集平均运行速度为原来8051的9.5倍,使8051兼容机系列进入了8位高速单片机行列。
3.2 I/O从固定方式到交叉开关配置:
迄今为止,I/O端口大都是固定为某个特殊功能的输入/输出口,可以是单功能或多功能,I/O端口可编程选择为单向/双向以及上拉、开漏等。固定方式的I/O端口,既占用引脚多,配置又不够灵活。为此,Scenix公司在推出的8位SX单片机系列中,采取虚拟外设的方法将I/O的固定方式转变为软件设定方式。而在Cygnal公司的C8051F中,则采用开关网络以硬件方式实现I/O端口的灵活配置,如图1所示。在这种通过交叉开关配置的I/O端口系统中,单片机外部为通用I/O口,如P0口、P1口和P2口。内有输入/输出的电路单元通过相应的配置寄存器控制的交叉开关配置到所选择的端口上。
早期单片机都是用1个时钟控制片内所有时序。进入CMOS时代后,由于低功耗设计的要求,出现了在一个主时钟下CPU运行速度可选择在不同的时钟频率下操作;或设置成高、低两个主时钟,按系统操作要求选择合适的时钟速度,或关闭时钟。而Silicon Lab公司的C8051F则提供了一个完整而先进的时钟系统,如图2所示。在这个系统中,片内设置有一个可编程的时钟振荡器(无需外部器件),可提供2、4、8和16 MHz时钟的编程设定。外部振荡器可选择4种方式。当程序运行时,可实现内外时钟的动态切换。编程选择的时钟输出CYSCLK除供片内使用外,还可从随意选择的I/O端口输出。
3.4 从传统的仿真调试到基于JTAG接口的在系统调试:
C8051F在8位单片机中率先配置了标准的JTAG接口(IEEE1149.1)。引入JTAG接口将使8位单片机传统的仿真调试产生彻底的变革。在上位机软件支持下,通过串行的JTAG接口直接对产品系统进行仿真调试。C8051F的JTAG接口不仅支持Flash ROM的读/写操作及非侵入式在系统调试,它的JTAG逻辑还为在系统测试提供边界扫描功能。通过边界寄存器的编程控制,可对所有器件引脚、SFR总线和I/O口弱上拉功能实现观察和控制。
3.5 从引脚复位到多源复位:
在非CMOS单片机中,通常只提供引脚复位的1种方法。迄今为止的80C51系列单片机仍然停留在这一水平上。为了系统的安全和CMOS单片机的功耗管理,对系统的复位功能提出了越来越高的要求。Silicon Lab 公司的C8051F把80C51单一的外部复位发展成多源复位,如图3所示。C8051F的多复位源提供了上电复位、掉电复位、外部引脚复位、软件复位、时钟检测复位、比较器0复位、WDT复位和引脚配置复位。众多的复位源为保障系统的安全、操作的灵活性以及零功耗系统设计带来极大的好处。
3.6 最小功耗系统的最佳支持:
在CMOS系统中,按照CMOS电路的特点,其系统功耗WS为WS = CV?2f
式中:C为负载电容,V为电源电压,f为时钟频率。
C8051F是8位机中首先摆脱5 V供电的单片机,实现了片内模拟与数字电路的3 V供电(电压范围2.7~3.6 V),大大降低了系统功耗;完善的时钟系统可以保证系统在满足响应速度要求下,使系统的平均时钟频率最低;众多的复位源使系统在掉电方式下,可随意唤醒,从而可灵活地实现零功耗系统设计。因此,C8051F具有极佳的最小功耗系统设计环境。
C8051F虽然摆脱了5 V供电,但仍可与5 V电路方便地连接。所有I/O端口可以接收5 V逻辑电平的输入,在选择开漏加上拉电阻到5 V后,也可驱动5 V的逻辑器件。
4 8051内核在SoC中再做贡献:
SoC是嵌入式应用系统的最终形态。嵌入式系统应用中除了最底层最广泛应用的单片机外,基于PLD、硬件描述语言的EDA模式,基于IP库的微电子ASIC模式等,形成了众多的SoC解决方法。无论是微电子集成,还是PLD的可编程设计,或是单片机的模拟混合集成,目的都是SoC,手段也会逐渐形成基于处理器内核加上外围IP单元的模式。作为8位经典结构的8051已开始为众多厂家承认,并广泛用于SoC的处理器内核。
4.1 从单片机向SoC发展的8051内核
单片机从单片微型计算机向微控制器(MCU)发展,体现了单片机向SoC的发展方向,按系统要求不断扩展外围功能、外围接口以及系统要求的模拟、数字混合集成。在向SoC发展过程中,许多厂家引入8051内核构成SoC单片机。例如,ADI公司引入8051内核后配置自己的优势产品--信号调理电路,构成了用于数据采集的SoC;Silicon Lab公司则为8051配置了全面的系统驱动控制、前向/后向通道接口,构成了较全面的通用型SoC。
4.280C51内核在PLD中的SoC应用
基于PLD,采用硬件描述语言设计的电子系统是近年来十分流行的方法。在解决较大规模的智能化系统时,要求可编程逻辑门数量很大。这导致设计工作量大,资源很难充分利用,出错概率也大。随着IP核及处理器技术的发展,从事可编程逻辑器件的公司,在向SoC进军时,几乎都会将微处理器、存储单元、通用IP模块集成到PLD中构成可配置的SoC芯片(CSoC)。当设计人员使用这样的芯片开发产品时,由于系统设计所需部件已有80%集成在CSoC上,设计者可以节省许多精力。Triscend公司推出的E5系列SoC就是由以8051为处理器核,加上40 KB RAM、WDT、DMA和4万门带SoC总线的PLD组成,形成了一个以8051为内核的可编程的半定制SoC器件。
4.3 8051内核在可编程选择SoC(PSoC)器件中的应用
完全基于通用IP模块,由可编程选择来构成产品SoC的设想是由Cypress公司倡导并推出的。这种可编程选择的SoC取名为PSoC,由基本的CPU内核和预设外围部件组成。Cypress将多种数字和模拟器件、微处理器、处理器外围单元、外围接口电路集成到PSoC上,用户只需按产品的功能构建自己的产品系统即可。Cypress公司在构建PSoC中的8位处理器时,选择了8051。
结束语
① 嵌入式应用中,由于应用对象及环境的特点,8位机一直占据低端应用的主流地位。
② 在单片机家族中,MCS-51是一个独特的系列。Intel公司创建了8位机的经典系列结构,并实施技术开发政策,使这个系列历经沧桑而不老。
③ PHILIPS等著名大电器商以自己在电子应用技术方面的优势,与Intel公司技术互补,发展了MCS-51,并迅速将单片微型计算机带入了微控制器(MCU)时代,创造了许多优异的单片机产品,形成了独特的、包含许多公司兼容产品的80C51系列。
④ Silicon Lab公司推出C8051F系列,把80C51系列推上了一个崭新高度,将单片机从MCU带入了SoC时代。C8051F中的一些新技术定会在8位机中进一步普及与推广。
⑤ MCS-51从单片微型计算机(SCMC)到微控制器(MCU)再到片上系统(SoC)内核,显示了嵌入式系统硬件体系典型的变化过程。在嵌入式系统SoC的最终体系中,MCS-51以8051处理器内核的形式延续下去。这对于国内外从事80C51教学和科研的广大人士来说,无论是过去、现在和未来都能感受它带来的好处。
*本文转载《单片机与嵌入式系统》杂志第五期