处理器市场最终会被统一吗?
无法与8位处理器相配合,因为几年来,与维护有关的功能增长已经逐渐进入了系统。
在能量敏感的嵌入式设计中,微控制器大部分时间处于小功率的睡眠模式, 定期唤醒来完成其任务。与代码密度情况类似,如果8位微控制器做的任务失配,32位微控制器就能够以足够快的速度做唤醒并完成任务,然后返回睡眠状态,而消耗的能量少于8位器件。
8位微控制器较可能替代它的32位处理器有一个关键性优点,这就是8位器件能够以一个高的成本效率和能效水平完成工作,而这方面32位要替代8位器件还有几年时间。小型处理器细分市场的兴奋点定位在最小处理器,把成本与能耗推到了可能的极限。我们所称的小功率是一个不断在变化的目标。在支持那些小型任务方面,较小数据宽度将总是明显领先于较宽的数据宽度。
在相同价格和功耗性能的8位和32位器件之间做选择时,还有一个数据表上没有,却有一定影响的因素:行业专业知识。虽然做8位器件编程可能要熟练掌握汇编甚至C语言,但一名开发人员最重要的还是行业知识。
想想为什么COBOL程序仍有需求,尽管大多数人把COBOL看作一种已被淘汰的编程语言。这种语言很直观,易于理解。对专业COBOL程序员的假设(也是他们的价值所在)是他们了解COBOL程序要解决的商务问题。
同样,8位微控制器所面对的问题不同于32位器件,并且32位系统开发人员面临的行业领域也不同于8位开发人员。例如,一个正确的8位应用不存在难以处理的存储器限制,因为应用能完全理解并填满架构的自然极限。32位应用可以处理多得多的不确定性,可以通过动态存储方式利用和管理更大的存储空间,而8位开发人员根本不用考虑这种方式。
数据的大小应反映出处理器的自然位数,对一款并未设计浮点运算的器件,不应用于密集地处理大量浮点运算。8位处理器最适合用于简单或约束性任务。采用操作系统和中间件的系统是为了提高开发人员效率,因为系统太复杂,不能从头开发,而从头建立一个简单的日程表则相对简单直接。
最终,每种类型的处理器架构都需要设计者在建立系统时采用一种不同的思考过程。只要存在着尽可能获得更低能耗预算的新开发需求,只要处理供应商还会积极地提供这些小宽度器件的设计支持,8位器件就有市场,哪怕是临时性的。如果我们不把低功耗、小数据宽度处理器与较大的32位处理器等同起来,事件就会容易得多,因为它们解决的是不同问题。
附文:架构的差异
图1通过计算负荷与环境量的关系反映了处理器最有效点的特性。工作负荷可以是峰值大小、总量,或在给定时间或能量情况下, 系统需要维持的处理性能数量。环境量可以表示内部系统状态、系统输入输出数,或系统必须支持的可能环境量。
各种确定的处理器类型都会以不同进度随时代演进,每种类型都会对一个或多个性能度量做出折中权衡以获得最大的一个或多个性能指标。
微控制器是专用处理器,它以牺牲灵活性和工作负荷处理量为代价,提供了成本与能效上的优势。它们提供成本优势的方法是在一个封装内集成存储器与外设。
它们提供能效优势的部分方法是面向那些以较低时钟速率运行的工作负荷,另外也是由于它们仅用电路实现的最小集合来完成控制处理工作。如果一个设计需要有灵活性,如更多或更少存储器、不同外设集,或更高的时钟速率,则设计者必须换用一种不同的处理器。有些微控制器通过放弃缓存或流水线的方法,提供了确定性的运算与操作。微控制器通常面向那些有频繁和优先级环境切换的系统控制工作负荷。
DSP也以工作负荷灵活性为代价,专注于获得最佳成本与能效。它们牺牲了处理环境转换的效率,以最大限度获得连续计算和可重复计算的性能。它们并不集成很多外设,因为它们的结构本身就不适合用于处理环境切换,而这是很多外设的可能要求。最常用的集成外设是ADC,DSP用它获取一个真实世界数据流,供自己做处理。
DSP采用多总线和多存储器结构,这样它们就可以完成同步存储器操作,支持连续的单周期乘法/累加操作。
它们采用了专用寄存器,以尽量减少存储器访问时间,能够实现零开销循环。DSP用于那些有连续数据流的系统,用于完成连续的信号处理,通常结合使用硬件加速器或FPGA,以分担繁重的密集计算负荷。
DSC(数字信号控制)专注于优化成本和能效上的方法是将DSP功能与微控制器结合在一只处理器中,能够胜任同时处理环境切换与信号处理的工作。这些器件提供较DSP更好的工作负荷灵活性,同时针对连续数据流,仍然保持了高效完成重复性工作负荷的能力。
FPGA提供了一种高度灵活的可编程硬件平台,可以充分利用任意宽度的信号处理算法,
- 单片DSP处理器功能系统的SOPC技术设计(01-12)
- 数字信号处理器TMS320F241在变频空调中的应用(04-28)
- 用8位微处理器实现数字低通滤波器设计(05-15)
- 如何构造嵌入式Linux系统(05-23)
- 基于DSP的信号采集处理系统(07-21)
- 基于嵌入式Linux的便携式RFID信息采集与处理系统(07-01)