账号:
密码:
最新动态
产业快讯
CTIMES / 文章 /
利用类神经网路进行ADC错误的后校正
 

【作者: Robert van Veldhoven】2021年12月21日 星期二

浏览人次:【4902】

在NXP的Eindhoven总部,采用以MATLAB和深度学习工具箱(Deep Learning Toolbox)设计、训练的类神经网路来对ADC错误进行后校正,进而了解ASIC在正常操作条件下消耗的功率状况。


在制程当中,积体电路(integrated circuits;IC)若稍有缺陷,可能就会造成类比数位转换器(analog-to-digital converters,ADCs)实现到IC上的错误;像是电晶体、电阻器、电容器等类比元件的不匹配(mismatch)可能导致讯号失真,例如不佳的总谐波失真(total harmonic distortion;THD)。



图1 : 在制程当中,积体电路(IC)若稍有缺陷,可能就会造成类比数位转换器(ADCs)实现到IC上的错误。 (source: Science Mill)
图1 : 在制程当中,积体电路(IC)若稍有缺陷,可能就会造成类比数位转换器(ADCs)实现到IC上的错误。 (source: Science Mill)

至于减少ADC错误的方法之一,在于使用更大型的类比元件来扩大设计,这种方法虽可以改善匹配、进而改善失真的数字,但却需要配置更大的面积及更多电力;第二种方法则是加入校正电路系统,但是这需要额外的矽面积,并增加成本与功耗—而且在执行校正时,通常还必须要知道错误发生的原因。


在NXP的Eindhoven总部,我们使用以MATLAB和深度学习工具箱(Deep Learning Toolbox)设计、训练的类神经网路来对ADC错误进行后校正,结果在ASIC上执行实现的时候,这个网路只需要ADC面积的15%,而且在正常操作条件下,消耗的功率大约减少16倍。


设计与训练类神经网路

在实验室输入一组参考讯号给30个ADC样本(裸晶),再捕捉其数位输出值来产生训练资料,并且另外设置了10个样本来验证该神经网路。因为ADC的错误会受到温度和电压的影响,因此,将每一个样本以九种电压与温度的组合来进行测试,总共产生360笔量测资料。


接下来,使用讯号处理的技巧来对资料进行前处理,然后使用量测到的ADC数位输出值,作为类神经网路的输入值,网路的系数会随着校正后输出讯号与原始参考讯号的比对而更新(图1)。



图2 : 类神经网路的训练设置。
图2 : 类神经网路的训练设置。

在这项专案开始之际,我还没有太多关于类神经网路的经验,也不确定网路需要有多高的复杂度。因此,先从在MATLAB建立基础的两层和三层网路开始,并且在每一层设置不同数量的神经元。第一层和第二层的神经元使用一个S型激励函数(sigmoid activation function),输出层的激励函数则为线性。成本函数则使用为一个最小均方(least mean squares;LMS)成本函数。


利用我们的资料集完成这些早期网路架构的训练之后,我发现可以将电压与温度的量测值加入为预测因子,用来改善网路的表现。执行这项变更之后,这个网路在各种温度与电压条件下的表现有了显著的改善。


评估IC面积与功率

有了一个可对ADC错误进行后校正的类神经网路之后,我想要评估它需要的矽面积与功率。为了进行这项任务,我从MATLAB产生一个训练过之神经网路的Simulink模型。


接下来,利用定点设计工具箱(Fixed-Point Designer)将网路所有的系数量化,并透过硬体描述语言转码器(HDL Coder)产生VHDL程式码,而我的同事则以HDL设计验证工具(HDL Verifier)对在Simulink产生出来的VHDL进行协同模拟以作为验证,然后再使用Cadence Genus来合成设计,他也透过Cadence环境来执行28奈米CMOS技术的物理实现、产生功率报告、计算使用的闸道数和这些闸道需要的面积。


从分析的结果看来,类神经网路能够以相对较小的面积和较少的功率成本来进行ADC错误的校正,一个类神经网路仅需要4600多个闸以及0.0084 mm2 的矽面积,就可以让讯噪比(signal-to-noise ratio;SNR)改善约17分贝(dB)。在启用时,该神经网路大约只消耗15 μW的功耗,而ADC会需要233 μW功耗。


对于已校正错误的电路来说,面积与功耗两者的估算都被视为可接受的程度,但再经过优化之后,这些数字会再改善。虽然我在机器学习的经验相对较少,不过这项将神经网路实现到VHDL所使用的工作流程非常直观,使得即使是这项流程的新手,从设计到实现这个基于类神经网路的电路所花费的时间,也并不会比传统的方法来得长。


增加重复使用性与可携带性

在近期之内,我们计画进一步探索几种方法来验证透过以类神经网路来进行ADC错误校正的成果。


首先,我们希望更了解该训练的网路执行错误校正的效果如何,可以将生产阶段可能出现意外行为的风险降到最小。再来,希望扩展我们的资料集,想知道使用一百万个样本所达到的结果和使用40个样本的结果是否相同。


最后,我们希望衡量类神经网路的重复使用性有多高。因为网路可以搭载很广泛的转移函数(transfer functions),所以也期待用一个单一神经网路可以比传统设计能更有效地去弥补横跨各种类型的ADCs错误,然而,我们还是需要再做进一步的测试来验证这项假设。


(本文由钛思科技提供;作者Robert van Veldhoven任职于NXP Eindhoven公司)


相关文章
智慧家居大步走 Matter实现更好体验与可靠连结
MCX A:通用MCU和FRDM开发平台
将意图转化为行动:走进嵌入式语音控制新时代
低功耗MCU释放物联网潜力 加速智慧家庭成形
浅谈Σ-Δ ADC原理:实现高精度数位类比转换
comments powered by Disqus
相关讨论
  相关新闻
» 明纬推出新系列30W~90W??墙式可换AC??头适配器环球认证
» RIN国际研发高峰会手举行 金属中心展出亮眼成果
» 西门子工具机软硬体解决方案 构建数位制造核心应用
» 明纬推出NGE100(U)系列:100W环球通用4埠USB氮化??快速充电器
» TPCA展??2024台湾PCB产值 有??复苏达8,182亿新台币


刊登廣告 新聞信箱 读者信箱 著作權聲明 隱私權聲明 本站介紹

Copyright ©1999-2024 远播信息股份有限公司版权所有 Powered by O3  v3.20.1.HK83TABCA1QSTACUKA
地址:台北数位产业园区(digiBlock Taipei) 103台北市大同区承德路三段287-2号A栋204室
电话 (02)2585-5526 #0 转接至总机 /  E-Mail: webmaster@ctimes.com.tw