技术文章和通讯

Post-Correcting ADC与神经网络错误

罗伯特•范Veldhoven NXP埃因霍温


模拟-数字转换器(adc)实现为集成电路(IC)是由于不完美的IC制造容易出错。不匹配的模拟的组件(比如晶体管、电阻器和电容器可以导致信号失真,例如,导致可怜的总谐波失真(THD)。降低ADC误差的一种方法是增加使用较大的模拟组件的设计。这种方法提高了匹配,因此畸变数据,但是需要更多的地区和权力。第二种方法是添加校准电路,但这还需要额外的硅面积和增加成本和电力消费,通常,一个需要知道错误的确切原因是校准。

NXP埃因霍温,我和我的同事post-correct ADC错误使用MATLAB神经网络设计和训练®和深度学习工具箱™。当上实现一个ASIC,网络只需要15%的ADC的面积而少消耗大约16倍力量在正常操作条件。

设计和训练神经网络

我们生成的训练数据在实验室通过提供一个参考信号30 ADC样品(死亡)和捕捉数字输出。还有10个样本用于验证网络。因为ADC错误受到温度和电压的影响,我们测试了每个样本在九个不同的电压温度组合,共有360个测量。使用信号处理技术我们预处理数据,然后使用ADC的测量数字输出值作为神经网络的输入。网络更新系数将通过对比修正输出信号与原参考信号(图1)。

图1所示。神经网络训练设置。

图1所示。神经网络训练设置。

因为我没有经验与神经网络在项目开始的时候,我不确定需要多么复杂网络。我开始通过创建基本的两个——在MATLAB和三层网络,在每一层神经元数量变化。神经元在第一次和第二次层使用一个s形的激活函数,输出层的激活函数是线性的。使用的成本函数是一个至少意味着广场(LMS)成本函数。

这些早期的训练后网络配置数据集,我看见,我可以改善他们的表现,通过融合预测电压和温度测量。当我实现这个改变,网络性能明显改善大范围的温度和电压条件。

评估集成电路面积和权力

我曾有过一个神经网络,有效地post-correcting ADC错误,我想评价硅面积和权力需要多少。要做到这一点,我生成一个模型®从MATLAB神经网络模型的训练。我然后使用定点量化所有网络系数设计师™之前生成硬件描述语言(VHDL)®与HDL代码从网络编码器™。我的同事验证生成通过HDL硬件描述语言(VHDL)在仿真软件验证器™cosimulation然后用抑扬顿挫®属合成设计。他还使用了节奏环境执行物理实现使用28纳米CMOS技术,发电报告和计算所需使用的盖茨数量和面积这些门。

这个分析的结果表明,神经网络可以纠正ADC误差以相对低的成本而言,区域和力量。网络,改善信噪比约17 dB需要超过4600盖茨和硅面积0.0084毫米2来实现。ADC,措施0.06毫米2是七倍多网络。当活跃,网络消费大约15µW权力,而233µW ADC消耗。

区域和纠错电路的功耗估计被认为是可以接受的,但我相信,与优化,我们可以改善这些数字。工作流用于实现网络在硬件描述语言(VHDL)很简单,尽管我与机器学习相对缺乏经验。因此,设计和实现了神经网络电路比传统方法将不再,即使我是新流程。

提高可重用性和可移植性

在短期内,我们计划去探索几个途径验证神经网络的使用ADC误差修正。首先,我们想要更好地了解培训网络执行纠错,这样我们可以减少在生产中异常行为的风险。第二,我们想扩大我们的数据集。我们需要知道我们取得的结果将如果我们使用一百万个样本而不是40。最后,我们想要衡量神经网络可以重用。我们希望一个网络将能够弥补跨各种不同的错误adc比传统设计可以更有效,因为网络可以容纳广泛的转移函数。然而,我们需要进行进一步的测试来验证这个假设。

2021年出版的

为相关行业观点文章

Baidu
map