Arm SoC的电源和时钟管理详解

本文讨论的是基于arm ip的大规模soc中的电源(时钟,复位等)管理,适用于众核处理器,手机soc,汽车soc等等。如果是小规模的设计可能就不适用了,比如mcu或者是简单应用的iot芯片。
关于芯片电源管理,想到了一个比喻,不一定特别贴切,大家权当一乐。用众核处理器举例,ap可以比作企业/行业;scp比作中央银行;功耗可以比作资金,企业有了资金就可以开足马力生产,反之就要降低产能。至于bmc嘛,大家都懂。
从宏观角度看,bmc监控着整个设备环境,拥有着至高无上的权力,但是一般不直接参与管理。当系统环境变差(经济过热),bmc给scp(或者是mscp,总之一个意思)下发命令。随后scp根据命令适当降低整个多核cpu的功耗(收紧银根,降低资金流动性),但是这个过程中,scp可能会降低所有的ap功耗;也有可能是关闭一些ap(治理某些过热企业/行业),保留另外的ap全速工作。反过来,当系统环境比较好的时候,bmc告诉scp可以放宽功耗(货币宽松)。
从微观角度看,也就是每个ap可以根据自己的需求,向scp发送请求。比如,工作负载大的时候,要求升压超频(申请拨款或者批贷);或者,工作负载小的时候,要求减压降频。这里有一个要求,一个ap不能直接控制soc或者其它ap的功耗,只能与scp通信,由scp来完成。这好理解,虽然所有企业共享一个资金池,但是一家企业不能直接去抢别的企业的配额。
“治大国如烹小鲜”,很多事情道理是相通的。
回到我们关心的芯片设计,要完成整个芯片的电源管理,需要软硬件结合。一般,上层软件部分交给操作系统(linux和android等);下层软件由固件(firmware)实现;硬件部分由scp,mhu,ppu这些模块构成,当然core也需要有相关的硬件支持。这也就是所谓的分层管理机制。
一句话总结,scp直接控制soc的电源和时钟,而ap通过硬件和软件接口协同管理。充分理解下面三张图,就明了了。
图一:scp和ap共同完成电源和时钟管理
图二:scp负责硬件管理
图三:linux电源和时钟管理软件栈
对于我们这些逻辑设计工程师来说,仅仅了解硬件设计是不够的,还要了解软硬件之间的接口。只有清楚了软件如何去调用硬件,才能更好的设计硬件。
先来了解一下soc中电源和时钟管理的硬件架构:
arm系列 -- pcsa(一)
arm系列 -- pcsa(二)
arm系列 -- ppu
接下来是软硬件协同的部分,主要是mhu,psci和scmi:
arm系列 -- psci
arm系列 -- css message interface protocols
arm系列 -- scmi
与一些老牌芯片公司比,arm在芯片电源管理方面做的算不上完美,一部分原因是arm起步比较晚,尤其是服务器处理器领域里技术积累比较少,而且arm目前只是作为ip供应商,本身并不量产芯片。至于其它原因,见仁见智,大家自行分析吧。但是,arm为我们提供了一个较为完整的可参考的方案。那些老牌公司做的再好再完美,不对外开放啊,至多也就是通过公开发表的文章窥探一二。“双鸟在林不如一鸟在手”,是这个道理吧?有时候横向比较技术是没有什么意义的。
本人没有就职于arm,也不是为arm鼓吹,仅仅是出于对技术的好奇心写了一系列文章。由于本人水平有限,难免有错误之处,请大家指正。


AT32 MCU DMA通道的灵活配置
***破晓时,信创行业正扬帆
洲明在浔阳打造的700㎡户外裸眼3D巨屏成功点亮
DAC的指标和结构 DAC芯片的原理和分类
电机碳刷火花大是什么原因
Arm SoC的电源和时钟管理详解
摩尔线程究竟是家怎样背景的企业?
电子“芯”闻早报:智能领跑2015
针对蓝牙对象的NFC技术交换方案解析
管道腐蚀的类型及防护措施
常规五参数浮标AD叶绿素水质在线监测你了解过吗?
弘积科技VADP应用交付平台获得2020年度技术卓越奖
美国将在月球建4G网络 预计2022年下半年部署
hll_hll是什么意思
智慧银行革新,金融工控主板引领自动化升级风潮
为通行更顺畅,各地积极推进智能健康防疫查验终端应用
新能源汽车的未来是纯电动车与燃料电池车共存?
Micro LED企业赛富乐斯再获1.1亿元B轮融资
互联网大会2016乌镇丁磊番外篇:好不容易来一趟 就是来放松一下的
深圳成为国内“5G第一城”?