1. 项目概述与核心挑战在人工智能硬件特别是边缘侧和移动端的机器学习加速器设计中我们这些做芯片和系统的人每天都在和两个“电老虎”搏斗一个是内存带宽另一个是乘累加运算。前者决定了数据喂给计算核心的速度后者则是神经网络推理和训练中最核心、最耗电的操作。传统的解决方案往往把这两块分开看用高速SerDes串行器/解串器IP来搞定内存接口用数字或模拟电路来设计MAC单元。但这样做总感觉有点“隔靴搔痒”没有真正触及问题的本质——数据本身。我们手里的数据尤其是经过剪枝和优化的神经网络权重并不是一串均匀分布的0和1。它们具有高度的稀疏性可能80%甚至更多的值都是零。这些零值在传统的NRZ不归零编码链路中依然需要消耗与“1”几乎相同的能量来驱动线路。在计算单元里零乘以任何数结果还是零但传统的MAC电路在处理零输入时其内部动态功耗可能并没有按比例降低。这就造成了巨大的能量浪费。我一直在想能不能设计一套硬件让它能“看懂”数据的稀疏性只在传输和处理有效信息时才消耗能量这正是我们这次要深入探讨的“稀疏感知”设计思路。它不是一个孤立的优化点而是一套从链路到计算、贯穿始终的系统级能效提升方案。2. 稀疏感知信号链路设计从“盲发”到“聪明传”2.1 传统AC耦合链路的困境与编码选择在深入我们的方案之前得先理解为什么内存接口喜欢用交流耦合。简单来说处理器核心和内存通常采用不同的工艺节点和供电电压。处理器为了追求高性能和低功耗电压越来越低而DRAM等存储器件由于技术限制电压相对较高。直接直流耦合会带来复杂的电平转换和直流偏置问题。交流耦合通过在链路中串联一个电容阻断了直流分量让双方可以工作在自己的最佳电压域只交流信号成分。但交流耦合引入了一个高通滤波器会衰减信号的低频分量导致严重的“直流漂移”眼图闭合。传统做法是使用一个大电容500 pF来降低高通滤波器的截止频率但这玩意儿太大了没法集成到芯片里只能放在板级或封装上严重限制了互连密度和集成度。另一种思路是通过编码人为地让信号频谱在直流附近形成“空洞”这样即使高通滤波器的截止频率高一些也不会滤掉有用的信号能量。于是业界出现了几种编码方案曼彻斯特编码、1-D编码、部分响应IV类PR-IV等。曼彻斯特编码每个比特位中间都有跳变频谱效率减半还需要两倍采样率功耗高。1-D编码比如8b/10b虽然能保证直流平衡但它的能量集中在信道损耗较大的高频区域对均衡器要求高。PR-IV频谱效率最高但编解码逻辑复杂。更重要的是这些编码都是“信息无关”的它们不关心你传的是“11111111”还是“00000000”功耗几乎不变。2.2 过渡编码为稀疏数据而生的信号方案我们的目标很明确设计一种编码它既要能适应AC耦合频谱在DC处为0又要能利用数据的稀疏性来节能同时实现还不能太复杂。我们提出的方案叫“过渡编码”。它的核心思想非常直观只有数据发生跳变0-1或1-0时才驱动差分线产生完整的电压摆幅如果数据连续相同0-0或1-1则让差分线短接在一起输出零差分电压。具体映射规则如下D(n)D(n-1) “01” 或 “10”发生跳变驱动差分线输出Vtx或-Vtx。D(n)D(n-1) “00” 或 “11”无跳变通过开关将差分线短接输出0 V差分电压。电路实现与节能原理在发射端我们采用了一种改进的电压模驱动器。与传统始终从电源抽取电流的驱动器不同我们的驱动器有三种状态正驱动状态PMOS打开连接到VDDNMOS关闭输出正电压。负驱动状态NMOS打开连接到GNDPMOS关闭输出负电压。零驱动状态一个额外的传输门开关将差分线短接同时PMOS和NMOS都关闭完全切断从电源到地的直流路径。关键在于第三种状态。当传输连续的“0”或“1”时驱动器进入零驱动状态。此时虽然为了匹配阻抗端接电阻仍然连接但驱动器本身不从电源抽取电流来产生电压摆幅。信号线上维持着一个共模电压但差分为零。对于接收端来说它只需要检测这三个电平V 0 -V并解码回原始比特流。节能效果量化分析对于一个随机的、0和1等概率出现的数据流比特跳变的概率大约是50%。因此理想情况下过渡编码的驱动器平均有一半的时间处于零电流状态相比传统NRZ信号功耗直接减半。 但当传输稀疏的神经网络权重矩阵时假设其中80%是零值那么出现连续“0”即“00”的概率会非常高。在这种情况下驱动器处于零电流状态的时间比例远大于50%信号功耗的降低可能达到5倍甚至更多。在我们的实测中对于稀疏数据信号效率从随机数据下的0.1875 pJ/bit提升到了惊人的0.0375 pJ/bit。注意这里的“零电流”指的是驱动器的信号电流。驱动器本身的编解码逻辑、控制开关的时钟树仍然会产生动态功耗。但这部分功耗与工艺尺寸强相关随着工艺进步可以不断降低。而信号电流受限于信道损耗、端接电阻和所需信噪比降低起来困难得多。因此即使算上逻辑开销净节能效果依然非常显著。2.3 频谱优势与接收机简化过渡编码带来的好处不仅仅是省电。观察它的功率谱密度会发现它的能量天然集中在奈奎斯特频率附近在直流和低频处能量很弱。这完美匹配了AC耦合信道的高通特性。这意味着片上集成成为可能由于对低频衰减不敏感所需的耦合电容可以减小到5 pF以下这个尺寸的电容器完全可以集成在芯片内部实现了真正的全集成AC耦合接口省去了昂贵的外置元件。均衡器大幅简化因为编码本身对码间干扰有抑制作用从单比特响应看后续拖尾很小接收端所需的均衡强度大大降低。实测中在一个20dB损耗的信道上仅需一个提供4-10dB增益的连续时间线性均衡器就足以在25Gb/s速率下打开眼图。这省去了复杂的判决反馈均衡器或多抽头前馈均衡器进一步降低了接收机功耗和复杂度。支持有源端接由于信号摆幅减小例如从NRZ的600mVpp降到200mVpp可以在接收端采用有源端接。我们使用了一种gm倍增结构在提供100Ω差分输入阻抗的同时还能对信号产生(RL/RT)倍的电压增益提升了接收信噪比。解码与时钟恢复接收机需要识别三种电平。我们采用了一种类似1-tap speculative DFE判决反馈均衡器的结构用两个比较器来判决当前信号是正、负还是零。解码逻辑很简单如果比较器输出指示为正或负则当前比特与前一比特相反如果指示为零则当前比特与前一比特相同。 对于稀疏数据长串的“0”会导致长时间没有跳变这会给传统的基于数据跳变的时钟数据恢复电路带来挑战。我们采用了时钟转发方案单独使用一个链路持续发送“1010”模式的时钟参考信号。接收端用这个参考时钟来采样数据并通过一个可调延迟线对每个数据通道的偏移进行单独补偿。这样既解决了稀疏数据下的时钟恢复难题又避免了复杂CDR环路带来的功耗和面积开销。3. 混合信号MAC加速器在相位域中做计算3.1 从电压域到相位域的计算迁移数字MAC单元虽然精度高、设计成熟但每一次全精度的乘法和加法都需要大量的晶体管开关活动能效有天花板。模拟计算利用物理定律如欧姆定律、电荷守恒直接进行乘加运算有望实现更高的能效但受限于非线性、噪声和工艺偏差。 我们探索了一条中间道路电流域乘法相位域累加。核心是利用压控振荡器或电流控制振荡器的相位随时间积分的特性。基本原理拆解一个理想VCO的输出相位是其振荡频率对时间的积分Φ(t) 2π ∫ f(Vctrl) dt。如果f(Vctrl)与输入电压Vctrl呈线性关系f f0 Kvco * Vctrl那么在一段时间Δt内累积的相位差就正比于Vctrl的积分。 我们可以让Vctrl正比于输入向量X和权重向量W的乘积。这样VCO在Δt时间内积累的相位就直接代表了Σ(X*W)的结果。最后我们只需要一个时间数字转换器将相位差转换成数字输出即可。3.2 晶体管级实现与稀疏性利用我们的具体电路实现如图10所示注此处为文字描述对应论文中图10乘法部分采用一个差分对作为跨导放大器。其差模输出电流i_diff gm * v_id。权重W映射为电压v_id通过一个电容数模转换器阵列实现。权重值控制有多少个单元电容连接到差分对的一端通过电荷共享产生与权重值成正比的差分电压v_id。输入X映射为跨导gm差分对的尾电流源采用二进制加权电流镜阵列。输入向量X控制哪些电流镜开启从而调整尾电流I_SS。对于MOS管gm ∝ sqrt(μ*Cox*(W/L)*I_SS)因此通过控制I_SS可以近似线性地调节gm。这样差分对输出的i_diff就正比于W * X完成了模拟乘法。累加部分将上述差分电流直接注入一对环形电流控制振荡器。CCO的振荡频率受控于输入电流。因此两个CCO在计算周期内的相位差ΔΦ就正比于注入电流的积分即Σ(i_diff) ∝ Σ(W*X)。数模转换使用一个高分辨率的TDC来测量两个CCO之间的相位差。我们利用环形振荡器的多相位输出结合参考时钟采样实现了超过12位的有效分辨率。如何利用稀疏性在这个架构中稀疏性从两个方面带来节能CDAC切换功耗当权重W为零时对应的电容开关不会动作节省了CDAC的充电/放电功耗。CCO动态功耗如果一部分乘法结果为零那么注入CCO的差分电流就会减小从而降低CCO的振荡频率和动态功耗。虽然CCO始终在运行但其功耗与频率即控制电流直接相关。实测表明对于稀疏数据该混合信号MAC单元的能效相比非稀疏情况有40%的提升。3.3 非理想因素与校准策略模拟/混合信号设计永远绕不开非理想因素。我们的MAC单元主要面临三个挑战VCO失配与PVT变化两个CCO的固有频率f_nom必须高度匹配否则会在输出中引入固定的相位偏移误差项A。此外工艺、电压、温度变化都会影响Kvco和f_nom。跨导线性度gm与尾电流I_SS的平方根关系是非线性的。输入电压v_id过大也会导致差分对进入非线性区。VCO的频率-电流非线性CCO的KvcoMHz/μA可能不是常数这会导致累加过程的非线性。我们的校准与校正方案启动校准与实时跟踪上电时将输入置于共模进行一轮精细校准通过修调CCO的负载电容来匹配两个振荡器的频率并消除初始偏移。在工作过程中使用稳压器最小化电压波动。对于缓慢的温度漂移我们周期性插入少量校准周期例如每N个计算周期插入n个校准周期进行跟踪补偿开销很小。限制输入摆幅设计时确保v_id的最大摆幅不超过共模电压的1/5让差分对工作在线性区。数字查找表校正对于VCO非线性等带来的确定性误差我们测量了不同输入和权重组合下的输出误差并将其存储为一个查找表。在数字后端用TDC输出的原始结果减去LUT中存储的预测误差即可得到校正后的结果。实测表明经过LUT校正后MAC的精度得到了大幅改善。4. 芯片实现、测试与性能对标4.1 原型芯片与关键模块我们在65nm CMOS工艺上实现了包含两个稀疏感知链路的完整原型芯片并集成了混合信号MAC单元。发射机集成了过渡编码器、三态电压模驱动器。接收机包含有源端接、CTLE、双比较器判决电路和解码逻辑。时钟独立的时钟转发通道用于发送参考时钟。MAC单元包含CDAC、IDAC、双CCO、TDC以及数字校正逻辑。4.2 链路性能实测我们在不同数据速率下测试了链路的性能眼图与BER在25 Gb/s速率下经过一个20dB损耗的通道和简单的CTLE均衡后眼图清晰张开。误码率测试满足1E-12的要求。这验证了过渡编码在AC耦合、高损耗信道下的优异性能。能效在16 Gb/s速率下传输随机数据时链路信号效率为0.1875 pJ/bit。当传输具有80%稀疏度的数据时信号效率提升至0.0375 pJ/bit实现了5倍的能效提升。面积与电容得益于过渡编码AC耦合电容得以集成在片内5pF节省了封装或板级面积。4.3 MAC单元性能实测与推理精度验证我们系统性地测量了MAC单元的性能精度与线性度扫描了不同的输入X和权重W向量绘制了MAC输出误差曲面。原始模拟输出存在明显的非线性误差模式但经过前述的LUT校正后误差被显著压制。配置灵活性MAC的精度和速度可以通过调整DAC更新频率f_DAC和CCO振荡频率f_OSC来权衡。根据公式N_TDC ≈ log2(N_phase * f_OSC / f_DAC)更高的f_OSC或更多的相位N_phase能带来更高的TDC分辨率即计算精度但功耗也会增加。我们的设计在5MHz输入更新率、5GHz CCO频率下实现了超过12位的有效分辨率。神经网络推理验证这是最关键的验证。我们将实测的MAC单元性能包括非线性、噪声、分辨率建模集成到一个软件模拟的卷积神经网络中。在MNIST手写数字数据集上进行测试。令人振奋的是即使权重精度只有5位并且使用了存在非理想性的模拟MAC单元网络依然达到了超过94%的推理准确率。这证明了神经网络对计算误差具有一定的容错能力。当然在更复杂的CIFAR-10数据集上原始模拟MAC的性能下降明显但经过数字校正后其性能可以逼近全数字MAC的实现。4.4 与现有技术的对比我们将本工作的关键指标与近期发表的其他先进工作进行了对比见表1和表2在链路方面我们的稀疏感知链路在25Gb/s速率、20dB损耗下实现了1.125 pJ/bit随机数据和0.0375 pJ/bit稀疏数据的能效在支持AC耦合的同类方案中处于领先地位。其频谱效率和高集成度优势明显。在MAC方面我们的混合信号相位域MAC实现了速度与精度的良好平衡并通过复用乘法器电流到CCO、利用稀疏性等方式优化了能效。与纯开关电容或纯数字方案相比在特定精度和速度范围内展现了优势。5. 设计心得与未来展望做完这个项目我对于软硬件协同设计以及“面向数据特征优化”有了更深的理解。过去我们追求的是通用、规整的硬件但AI工作负载尤其是推理其数据模式是高度特异化的。强行用通用硬件去跑就像用货轮送快递不是不行但效率太低。几点实操中的深刻体会系统级权衡是关键过渡编码省了驱动器的功耗但增加了编解码逻辑和时钟转发通道。混合信号MAC省了数字开关的能量但引入了校准和校正的复杂度。必须建立精确的能量模型在系统层面评估这些“代价”是否值得。我们的经验是对于稀疏度高于70%的典型AI负载这些优化带来的净收益是非常可观的。模拟设计的精度管理混合信号MAC的核心挑战不是做出一个能工作的电路而是做出一个在PVT变化下性能可预测、可校正的电路。LUT校正虽然有效但存储和查表本身有开销。我们后来在思考是否可以用更轻量级的在线学习电路动态地建模并补偿VCO的非线性这可能是下一代设计的方向。与算法团队的紧密沟通硬件能利用多少稀疏性很大程度上取决于算法模型剪枝和压缩的程度。我们需要告诉算法同事硬件对“结构化稀疏”和“非结构化稀疏”的处理效率是不同的。比如我们的CDAC更擅长利用连续为零的权重块。推动算法团队产出更“硬件友好”的稀疏模式能带来额外的收益。测试验证的复杂性测试一个信息感知的链路比测试传统链路更麻烦。你不能只用PRBS伪随机比特序列来测必须构造符合真实稀疏分布的测试向量才能准确评估节能效果。我们开发了一套脚本能从训练好的神经网络中直接导出权重矩阵作为测试激励。未来的方向 这套稀疏感知的理念可以进一步延伸。例如链路是否可以与MAC单元更深度地耦合当链路检测到长串的零时能否直接通知MAC单元进入低功耗休眠状态另一方面随着存算一体架构的兴起内存和计算之间的物理界限变得模糊这种稀疏感知的信号技术或许可以直接应用于存算一体芯片内部的核心互联网络上从另一个维度破解“内存墙”问题。这个项目让我看到在摩尔定律逐渐放缓的今天通过深入理解上层应用的数据特性在电路和架构层面进行定制化创新依然是提升能效、释放AI算力的有效途径。它不再是无差别的性能军备竞赛而是一场针对特定任务的、精巧的“外科手术”。