ImageVerifierCode 换一换
格式:DOCX , 页数:13 ,大小:959.64KB ,
资源ID:16504445      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/16504445.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(100MHz等精度频率计设计基于Verilog HDLWord格式.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

100MHz等精度频率计设计基于Verilog HDLWord格式.docx

1、3. 相位差:测试两个同频率的信号之间的相位差,测试范围 0 360二、设计分析使用FPGA数字信号处理方法,首先需要将正弦信号转换成可读取的数字方波信号,再经过FPGA设计计算得出所需测量值。三、模电部分首先选择比较器,对于 100 MHz 信号,比较器灵敏度需要达到5ns内,TI公司的LTV3501灵敏度为4.5ns,符合要求由TLV3501数据手册得知:当频率低于 50MHz 的时候,正弦波的峰峰值需大于 20mV,频率高于50MHz时,峰峰值需大于 1V。然后需要选择放大器,当正弦波幅值为 10mV时, 放大倍数需大于35。方法通过二级放大,一级用OPA847放大20倍,二级用OPA6

2、75放大8倍,得到总放大倍数160的正弦波。经转换后的输出电压符合TTL电平要求,可以被识别出0和1。四、数电部分开发板:Cyclone IV E: EP4CE6E22C8板载时钟为 50MHz,带4个按键和一个复位键(按键按下为0,抬起为1),四个七段数码管(共阳),FPGA的引脚可由杜邦线引出。设计思路:测量频率:输入一个100MHz的基准频率,由计数器CNT1来计算基准频率的上升沿个数,即周期数。输入一个被测信号,它由计数器CNT2来测量周期数。两个信号在同一个使能信号EN(使能信号时间为12s)下开始计数,计数完后,存储计数结果,由(CNT1 * 10)可以算出具体的计数时间(单位ns

3、),再由(CNT1 * 10ns)/CNT2 )*109可算得被测信号频率,单位Hz。测量占空比:同样由CNT1测量基准信号100MHz的周期数,使能信号还是EN。CNT3测量的也是100MHz,但是它的使能信号是在EN使能时,有被测信号时且被测信号为高电平时计数,测得的是被测信号高电平中100MHz周期数的个数,即在一段时间内,高电平的计数个数占总计数个数的比例。所以占空比计算公式为 CNT3/CNT1 *100。测量相位差:CNT3同前。CNT4测量的也是100MHz,但它的使能信号为当被测信号1为高电平,被测信号2为低电平。即被测信号1超前被测信号2的部分计数。用CNT4/CNT3 *1

4、80即被测信号1和被测信号2的相位差,但有一个限制,就是被测信号1和被测信号2的占空比都为50%。 原理图:原理图仿真:频率:占空比:相位差:mySZQLJ :下载用的顶层文件test :仿真用的顶层文件KEY :按键模块,用于按键消抖DFF1 :D触发器,用于等待被测信号上升沿PL :用于产生测试信号LPM_PLL :用LPM生成的锁相环,用于倍频couter32 :32位计数器process :用于选择数据输出及数据计算MUX :4选1选择器,选择输出计数器的值SMG :驱动4个7段数码管mySZPLJ 顶层文件KEY模块加入按键模块是为了防止按键抖动,同时实现TOGGLE,即按一下开始计

5、数,再按一下计数结束。DFF1模块DFF1模块可以让使能信号和基准信号,被测信号等同上升沿,提高精准度。PL模块PL模块输入100MHz信号,通过程序转换,输出用于测试用的各个信号。LPM_PLL模块由于板载晶振50M,达不到100MHz要求,加入LPM_PLL模块为了倍频,得到所需要的100MHz基准信号。couter32模块计数器,采用32位,因为232100M.process模块软件转换,由于计算结果会溢出,这里下载到板子的程序并不包含这个,process模块仅用于仿真使用。MUX模块4选1模块,选择要输出的结果SMG模块驱动4个7段数码管。五、下载测试与误差分析下载测试绑定引脚:被测1

6、输入: PIN_30被测2输入: PIM_28生成的测试信号1Hz: PIN_105生成的测试信号1KHz: PIN_103生成的测试信号1MHz: PIN_100 PIN_98下载与读数:误差分析可能出现的误差就是,当基准信号还在高电平和低电平时,EN使能,这会导致CNT1多计数或少计数一个周期,导致计算结果出现误差。六、总结为期两周的课设结束了,虽然我如愿完成了设计要求,但是由于身边没有可用MCU和自身知识的不足,我未能设计出一款由单片机控制,完全“傻瓜式”的频率计,这是个小小的遗憾。我相信通过日后不断学习,我会设计出来的。在这两周的设计过程中,我遇到了不少问题。首先是对于Quartus的使用和Verilog知识的掌握,上一次使用它们已经是一年前,难免生疏了。代价就是花费了我将近两三天的查阅书籍和翻看以前的程序才捡回来。其次是对模电知识的理解不到位,可能课上学的都是理论知识,现实情况便手忙脚乱。在设计过程中,遇到了大大小小的问题,有时候出现一个小小的错误,就需要半天才能发现和改正过来。为了避免这种情况,我应该更严谨,把工程分为多个模块去完成,这样才可以快速定位问题。通过这两周的学习,我知道知识不用会忘,学习不严谨会出错。所以以后我要更加严谨,并且要多用自己学到的技能。

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1