智能应用 影音

全新8-bit MCU的周边问世 突破嵌入式设计屏障

2016/09/12 - 周维棻

Microchip最新一代8-bit微控制器结合了「独立于内核外的周边」,将设计的灵活性提升至全新水准。从简单的数码计时器,到复杂的AC/DC电源设计,这些可配置的周边与智能类比与MCU相互结合后,可实现均衡、可定制化的解决方案,来应对许多新设计的挑战。新一代8-bit微控制器突破了传统8-bit MCU的不足,拓宽了产品的应用领域。

自从40多年前首款带唯读存储器(ROM)的MCU问世以来,微控制器不断发展;从简单的逻辑控制单元到内建类比功能的完全整合智能IC,相较之下8-bit微控制器的发展尤其突出。

以传统的8-bit微控制器周边而言,每个周边的设计仅用于执行单一功能,而最新一代的8-bit微控制器设计之初旨在创建新构思与传统架构完全不同的产品,这一构思需要采用全新的终端产品设计方法。

这些新的8-bit微控制器整合了若干个独特的周边,可以按需求执行多个功能和任务,同时,设计人员也可以透过配置及组合这些周边方式来创建新的功能,而这些新功能在其他传统类型的微控制器上是无法或难以实现的。

这些新型周边大多无需内核监管即可独自运作,在执行必要功能时也是以独立运作的模式为主,如此便可大大降低对CPU的倚赖。此外,这些周边多数在休眠模式下使用,非常适合各类功耗敏感型应用。

使用独立于内核外的周边

新元件中最常用的周边之一就是可配置逻辑单元(CLC),它是一个非常简单但功能强大的周边,可提供标准的逻辑功能,如AND、OR、XOR、SR锁存器和J-K正反器,用户可对这些功能进行配置,以创建出基本的逻辑闸功能或复杂的循序逻辑来调整信号。

CLC模块的输入、输出信号可以经由内部连接至任何的I/O、周边或暂存器,可以用作一个简单的信号路由器、逻辑群组或控制唤醒的智能状态机。传统的微控制器需要外部的可程序化逻辑元件(PLD)或额外的编码来实现所需的逻辑控制功能,然而即便是这样的设定也如CLC那样灵活。

如图一所示,一个可配置周边模块──数字控制振荡器(NCO)可用作20-bit计时器或具有高分辨率、可变频率控制的PWM控制单元。这不是一般传统的PWM?计时器能比拟的,由图中可见其性能与功能几乎完全相反。

NCO具有更高的分辨率和线性频率控制功能,可透过对电路电流的高精度控制来简化应用于许多电源应用中的复杂控制算法,例如带有调光照明功能的安定器控制应用。由于NCO可提供变频控制来轻松改变警报声音的音效,还可用于驱动烟雾报警器的声音警报。透过对所产生的频率实施更精细的控制,NCO无须任何外部类比零件即可对产生声音的音调和音高进行更好的调整。

这种整合式周边也可以单独使用,但是把多个周边组合在一起建立不同的功能才是其真正的绝妙之处,例如,曼彻斯特编码广泛应用于各种电信和数据储存应用。传统的曼彻斯特算法需要大量韧体的支持,并要占用CPU资源来进行任务管理。而透过串联使用NCO和CLC模块即可构建出的曼彻斯特解码器,可以完全在硬件环境中运作。顺带一提,曼彻斯特的编码器设计可以仅由一个CLC模块来实现,无需进行韧体位元拆解。

其余的周边,诸如角度计时器(AT)、信号测量计时器(SMT)和数学加速器(MathAcc)等周边是比CLC或NCO模块稍微复杂一点的周边。无论马达速度还是信号频率,AT可用于测量马达控制和AC电源应用中任意一种周期信号──如光学编码器、过零点检测器和霍尔感应器。

在传统量测角度的方法上往往需要多个计时器来计算和测量时间单位元,然后借助数学计算(透过韧体)将数值转换成相角域;如果周期已知的话,则需要进行程序存储器的查表方式。这种方法需要更多的硬件设定和更多的CPU资源来进行数学计算,还需要限定查表范围的大小,限制了可用数值的数量,进而导致近似值和差错。

AT模块使用独立的硬件架构,无需耗用额外的 CPU 功能,即可在瞬间完成角度域的转换。且AT模块可以直接根据设计人员配置的相位角值自动产生中断和事件。此外,AT模块还有三个比较?捕捉?PWM(CCP)功能供用户自行支配。

对比传统方法与独立于内核外周边的设计

另一个透过组合多个周边以简化任务的实例,是广泛应用于小型引擎中的电容放电式点火(CDI)控制系统。如图二所示。在数码控制CDI系统中,微控制器有两大主要任务︰第一,基于各个传感器提供的信息确定火星塞的点火提前角;第二,透过设定PWM信号占空比将触发脉波传送至DC/DC转换器,以实现火星塞点火功能 。

使用相关周边可有效管理RPM的计算及控制引擎火星塞的点火时间,这些动作只需要极少的CPU干预,设计人员无需掌握引擎控制系统的所有设计细节,即可将AT、CLC、SMT和MathACC等其他周边组合起来实现基于PIC16F161x MCU的CDI,大幅提升整体性能。

图三使用传统方法与采用独立于内核外的周边来设计CDI系统做了一个对比。如图所示,运用AT方法,执行时间和CPU使用率减少了50%以上,同时,程序码空间减少了40%,大大提升了系统性能。

有许多方式可以产生PWM信号,或透过韧体或硬件;然而涉及到测量和从PWM输入信号中攫取信息时,选择范围就比较有限了。典型的方法是使用计时器和CCP,以及大量的CPU周期来确定脉波、周期或占空比值。将CLC和NCO模块组合起来,并进行一些额外的编码工作,也有可能完成这些任务。

然而,前文例子中提及的SMT周边是一个带有进阶时脉和闸控逻辑功能的24-bit计数器?计时器,可支持不同的采样模式。这些模式包括自动测量并储存周期和占空比的数值,且无须内核的监管或任何额外的计算。SMT周边对任何一个需要测量PWM信号的设计而言都是非常有用的,比如马达控制应用。

尽管这些进阶周边具有更多的功能,设计人员的顾虑之一是︰如何管理有限的I/O及可用的MCU资源以实现元件性能最优化。模块太多,接脚却不够,一直是传统8-bit低接脚数微控制器扩展功能的致命伤。

如今在增添了周边接脚选择(PPS)等功能以后,设计人员现下无需使用任何外部组件即可任意将内部的数码信号传送到任何一个I/O接脚。比如使用传统MCU来设计,一旦需求多个UART的功能时,这只能无奈的找一个具备多个UART模块的多接脚数微控制器来实现。

有了新一代的8-bit MCU,任何一款微控制器只须拥有一个UART和PPS或CLC就可实现将传送通讯信号切换到多个接脚上,轻松完成这项任务。

最新一代的8-bit微控制器比传统的8-bit MCU功能更多、更强大。与以软件为中心的32-bit MCU相比,它们往往可以借助整合的、独立于内核外的硬件执行许多功能,在性能上提升至新的高度。

此外,独立于内核外的周边为设计人员提供了更大的灵活性,可以透过配置和组合若干周边来建立多种应用功能而无须牺牲CPU性能或功耗。这些新型硬件周边消除了传统设计对内核的倚赖,同时增强了系统整体设计的决定性。

(本文由Microchip Technology Inc. MCU8产品部亚太业务拓展经理徐进提供。)


图说:图一,数码控制振荡器应用实例。


图说:图二,使用整合角度计时器周边的电容放电式点火系统。


图说:图三,电容放电式点火系统实现方法对照表。