欢迎来到天天文库
浏览记录
ID:3146683
大小:902.37 KB
页数:13页
时间:2017-11-20
《基于fpga脉冲宽度测量仪》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、EDA课程报告课题:脉冲宽度测量仪班级:电信0901姓名:XXX指导老师:XXXXXXX年XX月XX日9主要任务:采用EDA技术,设计一个能测量脉冲信号宽度的系统。系统图如下:基本要求:(1)脉冲信号宽度的测量精度为±1ms。(2)脉冲信号宽度的测量范围为0~10s。(3)调试过程中可以用按键模拟脉冲信号。(4)测量值用5位数码管显示(可以采用静态显示)。(5)输入信号为标准TTL电平。(6)调试中既可以采用正脉冲,也可以采用负脉冲(任选其一)。(7)必须先进行前仿真,并打印出仿真波形。(8)按要求写好设计报告(设计报告内容包括:引言,方案设计与论证,总体设计,各模块
2、设计,调试与数据分析,总结)。9目录一、引言1二、方案设计与论证2方案一:基于单片机AT89C51的设计2方案二:基于定时/计数器的设计2方案三:基于FPGA的设计3三、总体设计4基本原理4系统总框图4四、各模块设计及程序5顶层模块5分频模块6脉冲检测模块6计数器模块73/8译码器模块7七段码译码器模块8五、调试及数据分析9波形仿真图9数据分析表9六、结论9附:参考文献109一、引言在电子技术及其应用领域中,常需要对各种系统工作的时间特性进行分析测量,如图一给出的这种时间特性示意图,其中t表示时间脉冲宽度,即指脉冲起始时间和终止时间的持续时间。T表示一个工作周期,即从
3、脉冲的一个上升沿到下一个上升的时间。图一 脉冲宽度与周期在测量与仪器仪表领域,经常需要对数字信号的脉冲宽度进行测量,如转速传感器、外部系统的门控与选通脉冲,以及PWM(脉冲宽度调制)输入的频率等。因此可以说脉冲宽度和周期是关于脉冲的重要指标。无论是模似电路还是数字电路,往往都需要对脉冲宽度进行测量。9二、方案设计与论证方案一:基于单片机AT89C51的设计 利用定时器的门控信号GATE进行控制可以实现脉冲宽度的测量。对定时器T1来讲,如果GATE=0,必须使软件控制位TR1=1,且INT1为高电平方可启动定时器T1,即定时器T1的启动要受外部中断请求信号INT1的影
4、响。利用此特点,被测脉冲信号从INT1端引入,其上升沿启动T1计数,下降沿停止T1计数。定时器的计数值乘以机器周期即为脉冲宽度。图二中给出了脉冲宽度测量的原理图。图二 方案一原理图方案二:基于定时/计数器的设计计数法测量脉冲周期原理框图如图三所示,被测信号为方波脉冲,以此方波脉冲控制门控电路,使主门开放时间等于被测信号周期TX,由晶体振荡器(或经分频电路)输出周期为TS的时标脉冲在主门开放时间进入计数器,这种测量方法将被测信号周期TX与TS时标进行比较,若在TX期间内,计数器的计数值为N,则TX=NTS为被测信号的周期。图三 方案二原理框图当计数脉冲来自高稳定度晶体振
5、荡器,且振荡周期比被测脉冲宽度小2个以上数量级时,该方法的准确度很高。计数器法可能产生的最大误差绝对值不超过计数脉冲周期。9方案三:基于FPGA的设计随着EDA技术的迅速发展,在EDA软件平台上,根据硬件描述语言VHDL完成的设计文件,自动地完成逻辑编译、化简、分割、综合、优化、布局线和仿真,直至对于特定目标芯片的适配编译、逻辑映射和编程下载等工作成了脉冲测量的发展方向。采用此种发法,设计者的工作仅限于利用软件的方式来完成对系统硬件功能的描述,在EDA工具的帮助下和应用相应的FPGA/CPLD器件,就可以得到最后的设计结果。通常采用脉冲计数法,即在待测信号的高电平或低
6、电平用一高频时钟脉冲进行计数,然后根据脉冲的个数计算待测信号宽度,如图四所示。待测信号相对于计数时钟通常是独立的,其上升、下降沿不可能正好落在时钟的边沿上,因此该法的最大测量误差为一个时钟周期。例如采用50MHz的高频时钟,最大误差为20ns。图四 方案三原理图 分析可知,上述三种方案都能较准确的测得脉冲的宽度。经比较方案三的优势更明显,所以选择方案三来设计。9三、总体设计基本原理根据设计要求,系统的输入信号有:系统时钟信号CLK,系统复位信号CLR,脉冲输入信号P_IN,计数输出端。当检测到P_IN端有脉冲输入时检测模块就会输出1,否则为0,输给计数模块的EN端,当
7、各位累计到9时,会向十位进位,以此类推到万位。最后由数码管显示脉冲的宽度。图五 简易原理框图系统总框图系统组成方框图六所示,它由外部输入模块、检测模块和显示模块三部分组成。检测模块是整个系统的核心,它由计数模块、控制模块、计量模块和译码显示模块构成。图六 总框图9四、各模块设计及程序顶层模块图七顶层模块图9分频模块libraryieee;useieee.std_logic_1164.all;useieee.std_logic_unsigned.all;entityfenpingisport(Clk:instd_logic;Clk1:outstd_lo
此文档下载收益归作者所有