构成一套 AI 系统的元器件
一套跑在设备上的 AI 系统,远不止那颗运行模型的芯片。模型要有人喂数据、供电、散热,还要把干净的输入交到它手上,这些活分摊在物料清单里不同的器件上。框图里出风头的是加速器。真正决定它能不能跑出首页上那个吞吐量的,是它周围那些器件。
先把芯片定下来、把其余都当配角,板子往往会回到工作台上重做。一个在负载阶跃下塌陷的变换器、一颗喂权重不够快的闪存、一个把热量闷住直到芯片自己降频的密闭外壳:其中任何一个,都会把成品系统压在算力本应达到的水平之下,而且常常卡在板子上最不起眼的地方。
这些都不会写在 TOPS 数字里。
算力在哪里跑
首先要定的是谁来执行模型。当帧率或功耗预算已经超出通用处理器的能力时,专用加速器或一块边缘 AI 芯片才算用在了刀刃上。在这条线以下,多出来的芯片只是买不到回报的成本和板面;而这条线划在哪里,取决于模型和工作占空比,不是首页上的峰值标称。加速器的形态和它的标称同样要紧:一颗围绕卷积做的器件,在 transformer 的注意力层上可能就卡住了,所以芯片和模型形状合不合,本身就是选型的一部分。
有很大一部分活根本不需要单独一颗芯片。一颗带小型神经网络单元的 MCU 可以自己把模型跑起来,做关键词唤醒或振动异常判断,同时还兼着产品需要的常规事务。这类 MCU 不少加了小型向量或 DSP 扩展,不用第二颗芯片就把运算吞吐拉上来;而片上 RAM,往往就那几百 KB,才是模型最先撞上的墙。
还有第三种情形,出现在网络结构还没定下来的时候。FPGA 的灵活性能在板子已经做出来之后,仍给数据通路留出改动的余地;当另一条路是把硬件押在一个可能撑不过一年的架构上时,这份灵活值它消耗的功耗和设计工时。
喂得饱算力的存储
模型跑多快,取决于权重能多快送到,而不是乘加能多快算完。每一层都要读入一批参数,与进来的激活相乘,再把结果写出去给下一层取用。只要网络不是很小,参数就装不进片上 SRAM,于是它们待在外部存储里,随每一层的运行被一段段流进来,而流进来的速率由存储接口定死。比起乘加次数,更多时候是这个速率决定了你在工作台上量到的帧率。这也是为什么两颗标称 TOPS 相同的器件,装进真实模型后实测吞吐能差出很多:存储总线更宽或更快的那颗,能让运算单元一直有活干;另一颗则把大量时间花在等下一批权重上。把模型量化成 8 位整数在这里有用,原因和精度关系不大。相比浮点版本,它把每次推理搬运的字节数大致砍掉一半到四分之三,在受存储带宽限制的设计上,这部分流量的下降会直接变成更高的帧率。同样的压力也决定了模型在存储里怎么摆放。把一个宽层拆成正好装进片上缓冲的小块、把中间激活留在片上而不写回外部、在算当前块时就把下一块预读进来:这些都是把数据手册从没承诺过的吞吐找补回来的手段。在最小的那些器件上,模型和它的临时空间共用同样那几百 KB,所以网络要围着它将要运行的存储来设计。这一趟流程的另一头,还有一笔不太被注意的开销。模型要在第一次推理之前,从非易失存储拷进运行内存;在一颗从慢速串行闪存里启动大网络的器件上,这次拷贝会给上电过程添上肉眼可见的延迟,而这对一个要唤醒、推理、再睡下去以省电的设备很要紧。把存储带宽如何卡住真实推理速度这件事想透,才能决定数据手册上的吞吐,在真实模型装进器件之后还撑不撑得住。
带宽是一回事,代码和模型究竟放在哪里是另一回事。小设备的固件从串行 NOR 闪存启动。模型和记录下来的数据放进密度更高的 NAND 或 eMMC,器件则在按工作集大小配好的 SDRAM 或 LPDDR 里运行。为边缘设备挑启动和数据存储的料号,落到的是容量、接口,以及这套数据写法在产品生命周期里会经历多少次擦写。
扛得住突发负载的供电
推理负载是突发的。内核大部分时间近乎空闲,某一层一开算,就在几微秒内拉走一大股电流,然后又落回去。按平均电流配的电源,会在这个阶跃上让电压轨塌下去,塌得够深,芯片就会把它当成必须处理的欠压。
在这个阶跃下把电压轨稳住,是一颗按它实际会遇到的瞬态来选、控制环又快到能抓住边沿的变换器的活。在大电流内核上,这通常意味着多相设计,或者一个把电感封进自己封装、紧挨负载放置的高密度功率模块。一块带好几路电源轨的板子,还得让它们按正确次序上电,这时一颗带时序输出的电源管理 IC 就顶替了一把分立稳压器。
变换器并不能独力完成这件事。体电容在控制环跟上之前撑住最初那几微秒,引脚旁的陶瓷电容吸收快速边沿,一颗磁珠把开关噪声挡在模拟电源之外。用对无源器件把供电完整性做好,才能在一颗能在不到一微秒里于空载和满载之间甩动几十安培的芯片下,守住一条干净的电源轨。
驱动这一切的数字,是电流阶跃有多大、来得有多快。两者都写在加速器的资料里,在那个没人去读、直到电源轨开始出问题才翻开的章节。
热的天花板
热定下的是一道会移动的天花板。一颗在室温下满频运行的器件,会随着结温升高把频率收回去,推理速率也跟着降,所以敞开工作台上的数字,和在密闭外壳里跑一小时之后的数字,不是同一个数字。热从晶圆出发,经过封装,到达扩热板或散热器,这条路径上每一道缝隙里的导热界面材料,分担的热预算和那块金属一样多。给一热就降频的 AI 芯片做散热,从一开始就该写进规格,按真实功耗和外壳内的静止空气温度来定,而不是等样机跑得又热又慢之后再补上去。
从板子到能出货的东西
外壳决定的东西,比它的尺寸看上去要多。功耗和散热的上限定下这个盒子能不能不带风扇、要多大才散得掉热、以及它能一小时接一小时扛住多大的负载。
无风扇设计换来的是安静和密闭,代价是持续算力。同一颗芯片,在敞开工作台上能跑出很高的帧率,装进热量无处可去的密闭盒子里就会降频,所以散热怎么选和外壳怎么选,其实是同一个决定做了两遍。
开发板能证明想法成立,却证明不了产品成立。从开发板走到一块能量产的板子,会把评估套件替你藏起来的活都摆上桌:一套真实的供电树、EMC、机械配合、一份系统调试计划,以及一版尊重了参考设计默默遵守过的高速与电源规则的布局。一版通过了辐射发射测试的参考布局,是靠它确切的叠层和器件摆位才过的;重画一版,这个结果得从头再挣一次。
这套活里有一部分,回报来得晚,要到系统调试很久以后。一颗打样时随手就能买到的料,等到下单是一万片时,可能正好是那颗排在十二个月交期上的。早早把元件选型和长期供货定下来,在第一次投板之前就在 BOM 里写好第二来源,决定了日后一次缺货究竟是个麻烦,还是一次停线。
这正是采购这一面浮出来的地方。一颗为十年期产品挑的料,带着一个和它在工作台上跑不跑得起来关系不大的供货问题;在一个长生命周期的设计里,这个问题在选型时就该有答案,早在第一张订单下出去之前。
模型看到的数据
一个视觉模型的好坏,顶到头就是喂给它的那些帧。图像传感器和它前面的镜头定下动态范围和弱光表现,也定下一个快速运动的物体落到画面里是清晰的、还是被卷帘快门拖成一道斜糊。手册上标的帧率,是假定主机真能提供那么多 MIPI 通道和那样的时钟;通道喂不够,传感器就跑在标称之下。网络再深,也找不回传感器从没采到的细节。
运动和机器人这类活,夹在模型和机构之间。驱动与反馈器件让模型既能给一个关节下指令,又能读回这个关节实际走到了哪里;而这份反馈的质量,框住了它上面任何控制环能闭得多紧。
语音从麦克风开始。一条干净的音频前端把 MEMS 麦克风的数字输出接过来,交给模型一个还没把轻声的词淹进噪声里的信号。对一个远场唤醒词系统来说,这就是大半场仗。
在传感器和算力之间,还有一件实打实的事:把数据搬得够快。视频输出和高速通道把摄像头的流送进加速器,或把处理好的帧送出去到显示器,走的是 MIPI、HDMI、PCIe 这类各自带着信号完整性规矩的接口。
有些设备除了听,还得把音频放出来。一段语音提示或一个存好的片段,需要负责音频解码和转换的器件,一颗按它驱动的喇叭和它被允许花的功耗来选的 DAC 或 codec。
这些模块,单拿出哪一个都不是那套 AI 系统。系统是它们彼此权衡之后凑成的那一整套;在很多设计里,最后定下天花板的是电源轨、是闪存、是外壳。最先被挑出来的那颗加速器,反倒很少是拖后腿的那个。
相关信息

- 2026.06.04 给设备做声音采集和振动监测

- 2026.06.04 把流量和液位测准的传感方案

- 2026.06.04 无接触地把位置和角度测出来

- 2026.06.04 在联网设备里感知温湿度、气体与空气质量
