EDN China > 设计实例 > 可编程器件 > FPGA > 正文
? 2016博客大赛-不限主题,寻找电子导师,大奖升级??

两种基于FPGA的软件滤波方法

彭巧君?? 任勇峰?? 王强?? 刘占峰?? 陈倩?? 电子测试技术国家重点实验室?? 科学技术与工程?? 2015年07月21日 ?? 收藏9

2 判决滤波

判决滤波是一种基于概率统计的滤波方法。在采样时钟CLK 的控制下,每隔时间t 对开关信号进行一次采样,并对时间T0内采集到的n 个采样值进行判断( n = T0 /t) ,如果这n 个采样值中高电平‘1’的个数百分比大于X,则输出高电平; 相反,如果低电平‘0’的个数百分比大于X,则输出低电平。

采用一个n 位寄存器来实现判决滤波,寄存器各个位的值依次为采样得到的n 个采样值。寄存器的模型如图6 所示。

图6 寄存器模型
图6 寄存器模型

在图6 中,n 个格子分别代表寄存器的n 个位,寄存器左侧的数据为已经处理过的数据,寄存器内的n 个数据为正在处理的数据,寄存器右侧的数据为即将处理的数据。每过一个采样时间间隔t,数据依次向高位滑动一位,最低位赋值为输入信号当前的状态值。

如上述过程,寄存器内的数据在不断地更新,数据每滑动一次,即对n 个采样值进行一次判断,从而达到滤波的目的。由于干扰脉冲的随机性,采到高电平和低电平的概率是相等的,所以,作为判断依据的百分比X 不能小于50%。在实际应用中,为了使滤波更可靠,X 的取值一般都大于50%。

2. 1 判决滤波程序设计

本设计采用一个9 位寄存器( n = 9) ,每次判断时只要‘1’的个数大于或等于5,则滤波输出‘1’,否则输出‘0’( X = 5 /9) 。图7 为判决滤波程序的流程图。

图7 判决滤波程序流程图
图7 判决滤波程序流程图

主要的程序进程如下:

判决滤波程序设计

【分页导航】


?? ?? ??


打开微信“扫一扫”,打开网页后点击屏幕右上角分享按钮

1.扫描左侧二维码
2.点击右上角的分享按钮
3.选择分享给朋友
?? ??

FPGA?

相关文章

我来评论
美国的游客
美国的游客 ??? (您将以游客身份发表,请登录 | 注册)
?
有问题请反馈