尧图网站设计 尧图网站设计YAOTU DESIGN
ARTICLE DETAIL

资讯详情

深耕网站设计与一线实操的经验洞察。

2012 ESC现场回顾:MCU选型与低功耗设计趋势解析

2012 ESC现场回顾:MCU选型与低功耗设计趋势解析 2012年秋天美国波士顿的会展中心照例被工程师、产品经理和各家嵌入式厂商塞得满满当当。那一年的ESCEmbedded Systems Conference在行业内算是大年尤其对MCU和模拟前端感兴趣的人基本都能在这儿找到自己想要的东西。Microchip和Fujitsu的展台相隔不远位置都相当显眼两边都拿出了自家在当时十分能打的产品线。我在现场待了三天把几个重点展台过了一遍也亲手摸了几个Demo板。这篇文章就当作一份迟来的现场速写把当时觉得有价值的信息和一些个人的观察整理出来。1. 展会现场的总体印象与核心看点1.1 2012年嵌入式市场的大背景如果现在回看2012年那个时期的嵌入式市场正处于一个非常微妙的拐点。32位MCU的出货量正在经历高速增长但8位MCU依然凭借成本优势和生态惯性占据着大量出货份额。Cortex-M系列内核已经成为不少中高端应用的首选但各家半导体厂商基于ARM内核做的差异化改良才是真正的竞争焦点。那一年展会上你很少看到有人在认真讨论“要不要用32位”因为答案已经很明确了大家关心的是“选谁家的32位”。Microchip这边主推的还是PIC32系列虽然它的内核是基于MIPS架构不是ARM但这反而成了它在一众Cortex-M阵营里建立辨识度的一种方式。Fujitsu那边则已经开始大力推广基于Cortex-M3的FM3系列现场摆放的参考设计数量相当可观。还有一点值得注意那一年展会上“低功耗”已经不只是可穿戴或者电池供电设备的话题了。工业现场总线节点、智能传感器、即便是家电里的主控芯片厂商在介绍时都会有意强调休眠电流、唤醒时间、外设时钟门控这些细节。这不是某一个厂商的单独行为而是整个产业链在响应下游客户对能效越来越苛刻的要求。1.2 展商分布与展区热度观察ESC Boston的展区面积不算特别大但动线设计很紧凑一天逛完核心展商基本没有问题。从入口进去左手边是MCU厂商扎堆的区域右手边则是工具链、调试器、RTOS和中间件厂商的聚集区。这种布置其实非常合理因为来看展的工程师通常带着明确任务要么在选型要么在解决工具链或调试层面的具体问题。几个展台的人流密度差异其实能从侧面反映行业热度。Microchip展台几乎全天都有人在咨询PIC32的DMA和中断控制器配置旁边放着几块用PIC32驱动LCD屏的参考设计板显示效果确实细腻。Fujitsu那边的FM3展台吸引了很多来自工业控制领域的观众尤其是那些需要多路UART和CAN接口的人FM3的外设丰富程度确实让它在当时显得很特别。另外Segger、IAR这类工具链厂商的展台也一直有人排队大家最关心的问题集中在调试器的兼容性和Flash编程速度上。这个细节说明MCU算力提升之后开发效率开始成为工程师关注的新瓶颈。2. Microchip展台的技术亮点与选型逻辑2.1 PIC32系列在2012年所处的市场位置Microchip在2012年ESC上展示的PIC32产品线从低端的PIC32MX1xx/2xx到高端的PIC32MX5xx/7xx形成了一个相对完整的梯度。当时PIC32在市场上的卖点并不单纯是主频或Flash大小而是Microchip一贯强调的“兼容性平滑升级”。如果你之前用PIC24或者dsPIC33迁移到PIC32时外设库的很多概念是相通的学习成本确实比跨厂商迁移要低不少。现场工作人员跟我聊的时候特别提到PIC32MX系列内部集成的外设大多带有多路DMA通道这在当时很多同价位MCU上并不常见。DMA的存在意味着CPU可以在ADC采样、UART收发、LCD刷新这些任务之间更从容地切换而不必被频繁的中断打扰。对于做仪器仪表或者工业HMI的工程师来说这个特性的价值很容易被理解。我当时特意看了一下PIC32MX795F512L的数据手册512KB Flash、128KB RAMUSB Host/Device和以太网MAC都集成在同一颗芯片里再加上多个UART、SPI、I2C和CAN模块一片芯片几乎就能覆盖一个中等复杂度工业设备的主要通信需求。这种“高集成度”策略在当时的展会语境下非常符合中小型设备厂商的需求因为BOM器件越少供应链和生产测试的压力就越小。2.2 MIPS内核背后兼容性思路的取舍Microchip选择MIPS架构而不是ARM在2012年是一个很有意思的话题。从生态角度来说ARM当时已经明显占有优势开发资源、中间件、第三方工具都更丰富。但Microchip的做法是在自己的框架内解决生态问题通过MPLAB X IDE和Harmony框架把底层架构差异尽量屏蔽掉让开发者即便不熟悉MIPS指令集也能通过库函数和配置工具比较顺畅地完成开发。这种做法当时在现场引起了不小的讨论。我个人的观点是对于习惯寄存器级操作的工程师来说PIC32的寄存器结构其实比Cortex-M系列更直接尤其是外设控制的逻辑非常规整。但如果你是从STM32阵营过来的刚开始确实需要适应一下GPIO和复用的配置方式。还有一个需要提的点是Microchip当时在展会现场大力推广的Harmony框架。这个框架的初衷是用图形化配置工具减少初始化代码的手工编写时间思路跟现在的MCUXpresso Config Tools或者STM32CubeMX类似。但说实话第一版Harmony在实际项目里还是有不少学习成本的文档的完整度也远不如今天成熟。如果你是那几年用Harmony做过项目的人应该能理解我当时在展台前那种“想法很好但还是想再等等”的复杂心情。2.3 现场Demo演示的启发Microchip展台给我留下印象最深的一个Demo是用PIC32驱动一个7英寸TFT屏幕同时通过USB Host口读取U盘里的图片文件进行解码显示。整个系统没有一个独立的应用处理器所有解压和显示控制都由PIC32MX795F512L完成。虽然JPEG解码的速度跟现在的MCU比完全不是一回事但在当时能在一个MCU上流畅完成这个操作确实能感受到32位平台在处理性能上的冗余度。另一个值得一提的技术是Microchip的CTMUCharge Time Measurement Unit模块。这个模块可以通过测量电容充电时间来实现触摸感应、液位检测这类应用精度和成本都很有竞争力。现场用一个简单的金属电极演示了水位检测响应很灵敏。这个模块在当时的8位PIC上也有但在PIC32上配套的中断和DMA机制让整个检测过程更省CPU。3. Fujitsu FM3系列与工业控制场景的深度结合3.1 FM3系列外设资源的差异化打法Fujitsu在展会上的姿态非常明确就是瞄准工业控制和汽车电子。FM3系列基于Cortex-M3内核最高主频可以跑到80MHzFlash最大到1MB。单看这几项参数在今天不算突出但FM3真正的卖点是外设资源密度。现场对照了几款主流型号比如MB9BF506系列片上集成了最多6路UART、多路CAN、USB、DMA还有相当丰富的定时器阵列。这对工业控制意味着什么举个例子一台稍微复杂一点的设备控制器可能需要一个主控串口跟触摸屏通信几个串口连接传感器或变频器再留出CAN总线跟PLC交互。如果用FM3一颗芯片就能把这些通信接口全部覆盖掉不需要再外扩UART桥接芯片或者CAN收发器当然物理层收发器还是需要的但控制器已经集成在片内。定时器阵列的灵活度也是Fujitsu现场技术人员的讲解重点。FM3的定时器可以分为多个独立单元每个单元支持互补PWM输出、死区插入、编码器接口等电机控制常用功能。这就意味着你可以用一片FM3同时控制两台电机并根据实际需求对PWM频率和死区时间做细粒度调整这在机器人、纺织机械、电动工具这类多电机设备上效果是实打实的。3.2 低功耗模式下外设的保留策略FM3在低功耗设计上有一个细节让我印象很深它允许在深度休眠模式下保留部分SRAM内容并对唤醒源做灵活配置。比如你可以在休眠前设置RTC闹钟、外部中断或CAN唤醒信号哪种事件先来就先响应哪个。这个策略跟当时很多MCU“要么全睡不干活要么醒了全速跑”的二选一式设计很不一样。这种设计对某些电池供电的工业设备非常有用比如现场安装的传感器节点平时处于休眠状态但需要随时响应来自总线或无线模块的唤醒指令。如果MCU在唤醒后还要经历漫长的寄存器重新初始化那整个系统的响应时间和功耗预算都会受到很大影响。FM3的这种保留策略等于把“从休眠到工作”的路径缩短到了几个时钟周期以内。3.3 Fujitsu走的高安全与高可靠路径除了外设密度Fujitsu展台在“可靠性”上花的功夫也很多。FM3系列内部集成了多路电压检测电路和时钟监控功能一旦发现供电电压异常或外部晶振失锁可以自动触发复位或将系统切换到内部RC振荡器。这在工业现场是非常实际的需求因为设备一旦运行在高压、电机频繁启停的环境里电源波动和电磁干扰是常态MCU如果没有这些自我保护机制很容易出现程序跑飞或者Flash数据损坏。现场工作人员还提到FM3系列的ADC支持自诊断功能可以在每次转换前对参考电压做一次校准比较检测ADC通道是否存在短路或开路问题。这个功能在工业安全相关的检测回路里特别有用因为一旦传感器线缆老化断裂如果不能及时识别系统就可能基于错误数据做出危险动作。4. 展会现场的关键技术与趋势信号4.1 工具链和调试体验的升级2012年ESC现场调试工具和IDE已经不再只是配角。Segger的J-Link系列几乎成为各家MCU展台的标准调试配置尤其是在Cortex-M为主的生态里J-Link的兼容性和速度几乎无可挑剔。Microchip的MPLAB X IDE基于NetBeans平台界面相比老版本MPLAB有了质的飞跃但对第一次接触的人来说工程配置和编译器的安装路径依然有不少容易踩坑的地方。当时很多工程师在现场咨询的痛点都是多任务调试比如同时监控RTOS中的多个任务栈使用情况、查看当前运行的任务上下文切换频率。我记得当时有些工具已经在做RTOS-aware调试能在IDE里直接显示任务状态和信号量占用情况。这种需求的变化说明随着MCU算力增强嵌入式软件架构正在从裸机循环向RTOS或者事件驱动框架迁移调试的复杂度也随之上升。4.2 低功耗设计逐渐从参数走向系统级展会上几乎每家MCU厂商都会在资料里给出待机电流的典型值但如果你多问几句就会发现这些数据通常是在“关闭所有外设、时钟保持最低配置”的理想状态下测得的。真实项目中通讯模块、传感器电源管理、上下拉电阻漏电这些因素的功耗影响往往远大于MCU自身。正因为如此现场关于低功耗的讨论开始从单个芯片的“深度睡眠电流”转向整个系统的电源域管理。比如有些厂商开始提供配套的电源管理IC可以通过GPIO逐一切断外围传感器的供电在需要采样时再快速上电。这个思路在2012年正在成为新的共识也为后来大量低功耗无线传感器节点的设计奠定了一个重要基础。4.3 连接与通信模块的丰富化当时展会上已经能看到不少MCU厂商在参考设计中集成Wi-Fi或蓝牙模块但大多还是通过UART或SPI外挂的方式真正把射频和MCU做进单芯片的方案量产还不多。Microchip和Fujitsu都有基于外挂射频模块的参考设计主要面向远程监控、工业数据采集这类场景。值得一提的还有CAN总线在非汽车领域的渗透。我在展会上遇到好几个来自农业机械和特种车辆领域的工程师他们选MCU时会非常在意CAN接口的数量和对应DMA通道的分配。农业机械上传感器和执行器数量多、分布远CAN总线在布线和可靠性上比传统RS485有优势这也是FM3这类多CAN MCU在工业市场受欢迎的原因之一。5. 我在现场实际体验过的几个Demo5.1 Microchip的触摸与显示集成方案Microchip展台有一块基于PIC32的电容触摸Demo板板上集成了多个触摸按键和滑块实时通过颜色变化在屏幕上显示触摸位置和按压强度。当时给我留下最深刻印象的是它的灵敏度即便隔着2毫米的亚克力面板触控反应依然准确而且没有出现跳变或者误触发。这个效果对很多做白色家电前面板的工程师来说具备相当强的吸引力。不过现场工程师也直言为了让触摸按键在不同温度、湿度下保持稳定需要做大量校准工作。CTMU模块本身很简单但真正难的是如何根据产品结构和外壳材质调整感应阈值和噪声抑制参数。这些经验性的东西往往比芯片本身的选择更影响最终用户体验。5.2 Fujitsu的多电机控制演示Fujitsu展台当时放了一台双电机控制Demo两个直流无刷电机分别以不同速度运转现场可以通过旋钮随时调节转速和方向。FM3同时输出两路互补PWM并实时处理两组霍尔传感器信号主控芯片几乎没有明显占用过CPU事件。控制流畅度很好电机噪声也控制得很理想。这个Demo的参考价值在于它展示了FM3在PWM分辨率和中断响应方面的能力。双电机并行控制如果中断设计不合理很容易出现PWM输出抖动或者霍尔采样漏检尤其是在电机高速运转时。FM3通过硬件处理和优先级配置来降低CPU的实时响应负担这个思路对初学者非常有借鉴意义。5.3 来自第三方的RTOS与中间件展示展会现场当然不只是MCU厂商的独角戏。当时很多RTOS厂商包括FreeRTOS、embOS和其他商业RTOS都在现场展示了与最新MCU的适配情况。比较热闹的演示是几个RTOS同时跑在同一个MCU上来回切换任务并显示CPU利用率和栈使用情况直观地展示了各个RTOS在任务调度延迟方面的差异。另外还有一个让我印象很深的东西是第三方厂商提供的图形库解决方案。用MCU驱动LCD已经不是什么新鲜事但他们展示的是一款可以直接在MCU上运行的图标化GUI库支持鼠标式点击和动画过渡效果。当时的感觉是MCU和MPU之间的界限正在变得模糊只要图形需求不是特别复杂是可以在MCU上用软件方案解决的。6. 展会结束后我对几个技术方向的思考6.1 MCU与MPU的边界正在模糊从2012年ESC的展品可以看出一个趋势MCU的性能在不断增强而一些以前只有在MPU上才能实现的功能比如TCP/IP协议栈、USB Host、JPEG解码、简易的GUI渲染开始越来越多地出现在MCU的参考设计中。这种趋势促使很多硬件工程师在设计产品时重新评估“到底是否真的需要一颗应用处理器”。当然MCU和MPU的边界不会完全消失。MPU在运行复杂操作系统、处理并行多任务、运行深度学习推理这类场景中依然不可替代。但在大多数“控制通信简单交互”的应用场景里一颗高性能MCU确实已经足够。当时展会上的MCU Demo板几乎都在强调“多合一”其实就是在为工程师提供更多的系统集成可能性。6.2 选择MCU不能只看主频和Flash那几年MCU选型的资料满天飞但很多工程师容易被主频、Flash、RAM这几个常规参数带走忽略了外设匹配度、代码兼容性、工具链成熟度这些同样重要的因素。我在展会上跟不同厂商工程师交流后最大的感受就是选MCU更像是在选一个“生态的入口”。比如你选了一颗外设非常丰富的MCU但IDE设置复杂、调试器兼容性差、官方代码生成工具频繁出问题那项目推进速度就会大打折扣。相反如果MCU外设虽然不算顶级但开发环境非常顺手、文档齐全、示例代码质量高你的开发体验会好很多。不要小看这一点长时间项目里开发体验对团队士气和工作效率的影响远比纸面参数大。6.3 芯片厂商之间的竞争已经转向生态之争从Microchip到Fujitsu从ARM到MIPS2012年展会上已经可以很清楚看到纯硬件规格的比拼正在转向完整的生态竞争。谁家的工具链更顺手谁家的库函数更完善谁家的参考设计更贴近真实应用谁就更可能在下一轮选型中胜出。芯片本身已经不是唯一的主角。这一点放到今天来看更加明显。MCU厂商后续的竞争力很大程度上取决于他们能把多少通用方案标准化、模块化并沉淀为方便开发者使用的SDK和示例工程。拼硬件规格固然重要但拼“谁能更快帮客户做出产品”才是真正决定长期市场份额的核心因素。展会结束之后我在回程的路上还在整理拿到的资料和数据手册里面很多内容后来都在实际项目中派上了用场。如果你正处于选型阶段我建议不要只盯着某一家展商的宣传材料多花点时间逛不同展台跟现场技术工程师聊一聊你的具体应用场景往往能收获很多数据手册上看不到的真实经验。
返回列表