首页
|
新闻
|
新品
|
文库
|
方案
|
视频
|
下载
|
商城
|
开发板
|
数据中心
|
座谈新版
|
培训
|
工具
|
博客
|
论坛
|
百科
|
GEC
|
活动
|
主题月
|
电子展
注册
登录
论坛
博客
搜索
帮助
导航
默认风格
uchome
discuz6
GreenM
»
FPGA/CPLD可编程逻辑
» 两种基于FPGA的软件滤波方法(2)
返回列表
回复
发帖
发新话题
发布投票
发布悬赏
发布辩论
发布活动
发布视频
发布商品
两种基于FPGA的软件滤波方法(2)
发短消息
加为好友
苹果也疯狂
当前离线
UID
852722
帖子
10369
精华
0
积分
5185
阅读权限
90
在线时间
277 小时
注册时间
2011-8-30
最后登录
2016-7-18
论坛元老
UID
852722
1
#
打印
字体大小:
t
T
苹果也疯狂
发表于 2015-12-28 22:36
|
只看该作者
两种基于FPGA的软件滤波方法(2)
软件
,
程序
,
开关
1. 3延时滤波程序仿真
分别将开关信号din设置成理想信号和抖动信号,利用QuartusⅡ8. 0软件进行仿真,图3和图4分别为理想信号和抖动信号的延时滤波仿真波形图。
图3理想开关信号延时滤波仿真波形
图4抖动开关信号延时滤波仿真波形
图中clk为采样时钟,glrn为复位信号,din为开关输入信号,dout为延时滤波输出信号。从图3可以看出,从开关信号发生变化到输出发生变化的时间延时为2 ms,从图4中可以看出,此延时滤波程序有效消除了扭子开关的抖动干扰,验证了其理论可行性。
1. 4延时滤波程序实际验证
为了验证此延时滤波程序的实际滤波效果,将其下载到Xilinx公司的Spartan3系列FPGA芯片XC3S400中,用示波器多次测量经过滤波后的开关信号,得到图5所示的输出信号波形。图5中,横坐标表示时间,每格代表10μs,纵坐标表示电压,每格表示1 V.从图5可以看出,经过滤波后的开关信号不再有抖动现象,此延时滤波程序的实际可靠性得到验证。
图5延时滤波后的输出信号波形
1. 5延时滤波程序资源占用率
在电子电路的设计中,FPGA的资源占用率是我们应该考虑的一个重要问题。如果FPGA的资源占用率太大,会加重FPGA的负担,影响整个电路的运行速度。表1为延时滤波程序在XC3S400芯片中的资源占用情况。
表1延时滤波程序的资源占用情况
1. 6延时滤波的特点
延时滤波比较适合对脉冲宽度已知的干扰信号进行滤波,这样可以更准确地确定延时时间,既不会因为延时时间太短而导致滤波不理想,又不会因为延时时间过长而导致资源浪费。而且,延时程序不仅可以有效地消除开关类信号的抖动,还可以滤去干扰、噪音等其他尖峰波,抗干扰强,可靠性高。
如果电路中存在多路输入信号时,当检测到任意一路输入信号状态发生变化时即执行延时程序,在执行延时程序的过程中将检测不到其他输入状态的变化,所以能够识别的动作间隔不可能小于延时时间T,特别是当多路输入信号的状态集中在短时间内变化时,电路的性能会严重下降。并且,由于频繁执行延时程序,会影响系统的效率和实时性。
2判决滤波
判决滤波是一种基于概率统计的滤波方法。在采样时钟CLK的控制下,每隔时间t对开关信号进行一次采样,并对时间T0内采集到的n个采样值进行判断( n = T0 /t),如果这n个采样值中高电平‘1’的个数百分比大于X,则输出高电平;相反,如果低电平‘0’的个数百分比大于X,则输出低电平。
采用一个n位寄存器来实现判决滤波,寄存器各个位的值依次为采样得到的n个采样值。寄存器的模型如图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判决滤波程序流程图
收藏
分享
评分
回复
引用
订阅
TOP
返回列表
电源与功率管理
DSP技术
电商论坛
Pine A64
资料下载
方案分享
FAQ
行业应用
消费电子
便携式设备
医疗电子
汽车电子
工业控制
热门技术
智能可穿戴
3D打印
智能家居
综合设计
示波器技术
存储器
电子制造
计算机和外设
软件开发
分立器件
传感器技术
无源元件
资料共享
PCB综合技术
综合技术交流
EDA
MCU 单片机技术
ST MCU
Freescale MCU
NXP MCU
新唐 MCU
MIPS
X86
ARM
PowerPC
DSP技术
嵌入式技术
FPGA/CPLD可编程逻辑
模拟电路
数字电路
富士通半导体FRAM 铁电存储器“免费样片”使用心得
电源与功率管理
LED技术
测试测量
通信技术
3G
无线技术
微波在线
综合交流区
职场驿站
活动专区
在线座谈交流区
紧缺人才培训课程交流区
意见和建议