历史上的今天
返回首页

历史上的今天

今天是:2025年04月03日(星期四)

正在发生

2018年04月03日 | 噪声环境中如何减少或滤除偶发错误测量值?

2018-04-03 来源:eefocus

智能移动平均数

 

延迟线(DL)电路是一个广为人知的概念,是一个可将电信号延迟一段时间的逻辑元件。从DDR SDRAM(双倍数据率同步动态随机存取存储器)到DLL(延迟锁相环),延迟线的应用范围十分广泛。

 

在DL延迟线模块内,为生成一个确定性移相信号,我们需要设定逻辑元件的延时,并调整延时设置,以补偿制程、电压和温度(PVT)对测量值的影响。

 

噪声环境中如何减少或滤除偶发错误测量值?

图1: 延迟线示例

 

图1给出一个预定数量的延迟单元构成的延迟线电路和通过配置字实现的反馈通道(Dfb)的示例,通过延迟配置字,可以在Din引脚输入信号和Dout引脚输出信号之间设定所需延时。每个延迟单元在Din和Dl两个引脚之间生成固定的通道延时。

 

我们可以通过多种方式计算符合理想延迟要求的配置字,计算已知时钟延长一个周期所需延迟单元的数量就是其中一种方法。确定一个延迟单元的延时不难。

 

图2所示是这种计算方法的原理;ClkIN是已知时钟信号,输出是延长一个周期的ClkIN信号。这个模块的输出(延迟单元的数量)用于确定延迟线的配置,如图1所示。

 

噪声环境中如何减少或滤除偶发错误测量值?

图2: 延迟配置字计算示例

 

如果噪声或干扰在ClkIN上引起尖峰,测量精确度将会受到错误数据的影响。众所周知,错误的设置可能导致延迟线电路暂时性功能紊乱。

 

假设在一段时间内,参考周期比标称值小很多或大很多,输入延长线的新计算值将会与以前的数值有很大差异。图1所示的DL将会生成一个错误信号,被随机抖动信号吸收。

 

图3中的示例描述了当参考时钟ClkIN有一个大的峰对峰抖动脉冲时所发生的情况,这时延迟单元数量的计算值不同于标称值。

 

噪声环境中如何减少或滤除偶发错误测量值?

图3: ClkIN上的尖峰信号和错误延迟计算示例

 

对于这种问题,我们可以使用一个数字错误补偿电路, 通过智能方式计算这些数据的移动平均数。查看图3示例中延迟计算值,错误数据(delay=15和delay=12)可以忽略丢弃, 因为这些计算值远远小于平均数,同时可以使用新的采样的平均数delay=30更新上一个平均数。

 

移动平均数的原理(图4)是采集N个最新的测量值,然后计算这些数值的平均数。只有新数据值与上一次N个采样的实际平均数差别不是很大时,新数据才会加进缓冲电路(Sx)。

 

噪声环境中如何减少或滤除偶发错误测量值?

图4: 智能移动平均数电路

 

图4所示的有限状态机(FSM)可以精确地管理这项任务,检查每个新校准值,并将其与此时的平均数最大值和最小值进行对比。当新数值在设定范围外时,新数据将被滤除,不加进移动平均数内。

 

显然这个电路是取模运算,但是保留已存储采样数量(Sx) 的二次幂才是使运算逻辑最小化的最佳设置,这样可以最大限度减少加法器元件数量,节省通用除法器。新输入数据向右移两位,执行除四运算,零成本。

 

用于保存采样的缓冲器(Sx)的容量是M-2,这里M 代表输入数据总线位宽。该电路是由三个有进位功能的全加器组成,运算结果被有限状态机用于检查新输入数据。

 

有限状态机就是为该电路带来一些智能的逻辑电路。图5所示是有限状态机的流程图。

 

噪声环境中如何减少或滤除偶发错误测量值?

图5: 智能移动平均数FSM

 

在启动时,因为比较点没有平均值可用,所以第一个数据保存在Sx缓冲器内,代表初始瞬态值。当缓冲器写满数据时,开始计算平均值。当时钟频率高时,数据通道可能受到应力,为避免这个问题,可以加进一个小的计数器延迟。

 

图5所示的AVERAGE代表稳态。这里有限状态机在等待一个新的数据点,该数据点将与下一个状态上的平均值CHECK DATA对比。从硬件角度看,比较任务量不大,而且对滤除错误采样很有效。

 

数据比较过程与我们要测量的数据有关。当数据受到PVT影响时,例如,本文讨论的延迟线,因为主要是温度变化影响数据,所以数值变化比较小。在这种情况下,我们预计新输入数据与前一个平均数和最新四个数据的平均值差别不大。对于这种特殊情况,可以采用下面方式完成数据比较过程:

 

● 只比较最高有效位

 

● 如果这部分与平均值相差不太大,新数据将被保存,同时平均值也会相应地更新

 

● 如果这部分与平均值相差太大,新数据将被丢弃,平均值保持不变

 

图6给出一个比较表的示例。新输入数据的可能取值范围分成四部分,只有最高有效位用于数据比较,某些情况还需要检查第三位。当新数据的最高有效位是“00”时,前四个采样平均值的最高有效位在“ 00 ”和“01”之间是可以接受的。否则,新输入数据将被丢弃。同样,当输入数据是“01”、“10、”、“11”时,新输入数据将被丢弃。

 

噪声环境中如何减少或滤除偶发错误测量值?

图6: 数据比较方法

 

结论

 

本文讨论一个能够滤除逻辑电路输入数据受到各种干扰的数字电路, 例如,滤除本文讨论的延迟线输入信号受到的干扰。这个智能移动平均数电路有助于降低干扰影响,不只是计算平均值,还能滤除可能严重影响移动平均数的错误采样,错误采样滤除规则取决于输入数据的预计变化速率。

 

在本文中我们看到,如果影响数据的因素是温度,我们预计采样变化率很小,在这种情况下,比较逻辑简单,元件数量少。计数平均数所需的元件数量还取决于错误数据的发生率;如果只是偶发错误,平均数逻辑单元数量就会少些(例如,图4);如果偶发错误发生率高,则必须提高缓冲器容量,使用8个或16个元件。


推荐阅读

史海拾趣

Essentra Components公司的发展小趣事

Essentra Components公司自创立之初,就深知技术创新在电子行业的重要性。公司通过不断投入研发资源,成功开发出了一系列具有创新性的塑料注塑成型、乙烯基浸塑成型技术,这些技术不仅提高了产品的性能和质量,还大大降低了生产成本。随着技术的不断升级和完善,Essentra Components的产品逐渐在市场上占据了重要地位,公司也因此迅速发展壮大。

ELEMENT14公司的发展小趣事

ELEMENT14的在线社区是其成功的关键因素之一。公司投入大量资源建设和发展在线社区,吸引了大批电子设计工程师和采购专员的参与。在这个平台上,工程师们可以分享经验、交流技术、解决问题。ELEMENT14还通过社区收集客户反馈和需求,不断优化产品和服务。这个活跃的在线社区不仅增强了客户黏性,也为公司提供了宝贵的市场信息。

Davies Molding公司的发展小趣事

随着电子行业的快速发展,Davies Molding公司意识到,只有不断创新,才能在市场上保持领先地位。因此,公司积极引进先进的生产技术和设备,不断提升自身的研发能力。通过不断的技术创新,Davies Molding公司成功推出了一系列具有竞争力的新产品,满足了市场对高品质塑料注塑成型产品的需求。

ANYSOLAR LTD.公司的发展小趣事

随着ANYSOLAR的产品在市场上取得一定的成功,公司开始考虑市场拓展。李明带领团队深入调研国内外市场需求,发现欧洲市场对高效、环保的光伏材料有着巨大的需求。于是,ANYSOLAR开始积极寻求与国际企业的合作机会。

经过多次洽谈和协商,ANYSOLAR最终与一家欧洲知名光伏企业达成了战略合作协议。双方共同投资建立生产线,共同开拓市场。这一合作不仅为ANYSOLAR带来了稳定的订单和资金支持,也提升了公司的品牌知名度和国际影响力。

CHONGQING PINGYANG ELECTRONICS CO.,LTD.公司的发展小趣事

2005年,重庆平洋电子有限公司迎来了一个重要的合作机会。经过严格的筛选和谈判,公司与海尔集团达成了先期采购协议,成为海尔集团在重庆市唯一一家免第三方认证的企业。这一合作不仅为公司带来了稳定的订单和收益,还进一步提升了公司的品牌影响力和市场竞争力。

Chiplus Semiconductor Corp公司的发展小趣事

Chiplus深知企业管理对于公司发展的重要性。因此,公司建立了一套完善的管理体系,注重人才培养和团队建设。公司定期举办内部培训和技术交流活动,提升员工的专业技能和综合素质。同时,Chiplus还积极引进外部优秀人才,为公司的持续发展注入新的活力。

问答坊 | AI 解惑

关于锂电池保护扳设计的问题

锂电池保护扳用在电动车上面的锂电池保护,我用了S-8254IC来控制10串锂电池.但现在有个问题就是我不知道保护芯片S-8254之间级连的方式:Q :Q .望高手赐教.谢谢…

查看全部问答>

MDK中不能使用Goto Definition Goto Reference的解决方法

在用RealView MDK进行嵌入式软件开发的过程中。我们可能需要得知某个变量的类型或者是某个常量的值。或者查找某个函数的原型及其定义。要做到这些有一个最简单的办法就是逐个源文件去查找。或者使用开发工具的文件搜索功能。另外RealView MDK提供了 ...…

查看全部问答>

和jtag下载方式有关的SOPC中的IP组件问题

为什么SOPC中没有添加和jtag下载有关的组件 但是jtag下载方式却可以用呢 板子上不是也有jtag下载的接口和引脚吗? 为什么SOPC里不需要添加和它相关的组件?…

查看全部问答>

寻求VxWorks下利用BSP组件建立一个独立可执行程序(Bootable的一种)的方法和步骤(Tornado2.2,VxWorks5.5.1,版本相符最好)

小弟需要在VxWorks下利用BSP组件建立一个独立可执行程序,这个程序要独立于bootrom(因为增量开发,之前的符号表中没有留接口,如果升级bootrom影响比较大,所以不改动现有的bootrom),也就是说它需要具备自己的硬件驱动接口,系统从bootrom启动后 ...…

查看全部问答>

北京大扬科技--PXA310开发板硬件介绍

Marvell PXA310开发板简要介绍 性能介绍 Brief Introduction 采用Marvell高速嵌入式处理器:PXA310 核心板和扩展板分离的结构,方便进行二次开发 核心板采用200Pin SO-Dimm金手指,提供稳定可靠的连接 4.3寸超大TFT-LCD液晶屏,适合各种不 ...…

查看全部问答>

初学者求高手帮忙

朋友的生日快到了,想用51单片机做个礼物送她,想用LED灯(或点阵显示屏)来循环显示“生日快乐”几个字,蜂鸣器来演奏“生日快乐歌”,由于是初学者,不怎么懂,所以来求原理图和程序。…

查看全部问答>

EDK测试程序无法通过

这是system.mhs文件,但是测试程序无法通过,想请教是哪里有问题。# ############################################################################### Created by Base System Builder Wizard for Xilinx EDK 10.1 Build EDK_K.15# Tue Jul 13 0 ...…

查看全部问答>

体验一个全新的RTOS——QNX(基于TI AM3517EVM KIT &beagleboard C4)

       最近两个月来一直在做关于QNX的一些工作,说简单一点就是在AM3517和OMAP3530上跑跑QNX系统,最近比较有时间写一些关于QNX的小东西,分享一下经验,也总结一下自己的工作。由于是用到车上的,就暂且将这个帖子 ...…

查看全部问答>

M4K和onchip memery关系

大小是多少,onchip memery有时不够用                                                 function forumhottag_c ...…

查看全部问答>

如何使用热电耦

如果选用热电耦测量温度,那么热电耦如何使用呢?感谢大家赐教!…

查看全部问答>