欢迎来到三一文库! | 帮助中心 三一文库31doc.com 一个上传文档投稿赚钱的网站
三一文库
全部分类
  • 研究报告>
  • 工作总结>
  • 合同范本>
  • 心得体会>
  • 工作报告>
  • 党团相关>
  • 幼儿/小学教育>
  • 高等教育>
  • 经济/贸易/财会>
  • 建筑/环境>
  • 金融/证券>
  • 医学/心理学>
  • ImageVerifierCode 换一换
    首页 三一文库 > 资源分类 > DOC文档下载  

    一种基于FPGA的数字秒表设计方法.doc

    • 资源ID:3363826       资源大小:15.50KB        全文页数:3页
    • 资源格式: DOC        下载积分:2
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录   微博登录  
    二维码
    微信扫一扫登录
    下载资源需要2
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    一种基于FPGA的数字秒表设计方法.doc

    一种基于FPGA的数字秒表设计方法摘要: 文中介绍了一种基于FPGA的数字秒表设计方法。采用VHDL硬件描述语言, 运用ModelSim等EDA仿真工具。该设计具有外围电路少、集成度高、可靠性强等优点。最后经实验验证, 该数字秒表计时准确, 输入信号能准确控制秒表运行。系统所采用的自上而下的模块化设计方法, 对于其他复杂的系统设计也有很强的借鉴意义。数字集成电路作为当今信息时代的基石, 不仅在信息处理、工业控制等生产领域得到普及应用, 并且在人们的日常生活中也是随处可见, 极大的改变了人们的生活方式。面对如此巨大的市场, 要求数字集成电路的设计周期尽可能短、实验成本尽可能低, 最好能在实验室直接验证设计的准确性和可行性, 因而出现了现场可编程逻辑门阵列FPGA。对于芯片设计而言, FPGA的易用性不仅使得设计更加简单、快捷, 并且节省了反复流片验证的巨额成本。对于某些小批量应用的场合, 甚至可以直接利用FPGA实现, 无需再去订制专门的数字芯片。文中着重介绍了一种基于FPGA利用VHDL硬件描述语言的数字秒表设计方法, 在设计过程中使用基于VHDL的EDA工具ModelSim对各个模块仿真验证, 并给出了完整的源程序和仿真结果。1 总体功能结构设计一个完整的数字秒表应具有计时、相应的控制以及计时结果显示功能, 总体的功能结构如图1所示。黑色线框内是计数模块、使能转化模块和显示译码模块, 左边是输入控制信号, 右边是显示计时结果的数码显示管, 用六位BCD七段数码管显示读数, 显示格式如图2, 计时范围为: 1小时,精度为0.01s。输入时钟信号由32MHz的石英晶振提供, 考虑到设计指标要求秒表精度为0.01秒, 计数脉冲的时钟输入就应该是频率为100Hz的脉冲, 所以先要设计一个320000分频器, 分频器的输出可作计数器的输入; 其次计数模块设计应综合考虑秒表的计时范围(1小时) 和显示输出(6位输出), 6位输出中有两位是六进制输出, 其余四位是十进制输出,所以可通过设计4个模10计数器和2个模6计数器来实现, 其中较低位的进位输出就是高位的计数输入端。控制模块应包括开始计时/停止计时、复位两个按钮, 即电路设计经常用到的使能端和清零端,这两个控制端口直接接到计数器的清零和史能端即可实现复位、开始计时/停止计时; 但是外围使能输入需要经过使能转换电路后, 才可变为计数器可用的使能控制信号。因此在输入使能信号和计数器使能输入之间需设计一个信号转换模块。显示计数结果的模块实现较为简单, 只需将六位计数结果通过七段译码电路接到输出即可点亮数码管, 无需时序控制, 直接用组合逻辑电路就可以实现。数码管显示可以采用扫描显示, 用一个频率1KHz的信号扫描一个多路选择器, 实现对六位已经锁存的计数结果的扫描输出。2 各功能模块设计2.1 分频器模块分频器的功能是提供标准时钟控制信号以精确控制计数器的开闭, 提供的标准信号是32MHz,根据设计精度0.01s的要求, 输出信号是100Hz, 所以该分频器实现的功能是320000 分频, 具体的VHDL源程序:process (clk)beginif (clkevent and clk=1) thenif (q=159999) thenq=0;count_temp=not count_temp;elseq=q+1;end if;end if;end process;2.2 计数模块该计数器要实现最大计数值为59分59秒99的计数, 而且为了数码管显示方便, 该模块必须通过计数器的级联来实现, 即首先分别设计一个模6计数器和一个模10计数器, 然后将他们级联, 其中调用4次模10计数器、2次模6计数器, 这样可以比直接设计模100 的计数器和模60的计数器节省资源。级联时低位的计数进位输出接高位的计数输入端, 如图3所示。再考虑到控制模块的要求, 每个计数器有三个输入端: 时钟、使能和清零, 两个输出端: 计数输出和进位输出, 采用同步使能异步清零的设计方法, 每个计数器的使能和清零端都与外围的使能和清零端相联。该模块的源程序以及ModelSim仿真输出结果如下:模6计数器的VHDL源程序如下:process (clear,clk)beginif (clear=1) thentmp= 0000 ;carryout=0;elsif (clkevent and clk=1) thenif (rst=0) thenif (tmp= 0101) thencarryout=1;tmp= 0000 ;elsetmp=tmp+1;carryout=0;end if;end if;end if;模10计数器的VHDL源程序与模6计数器类似,为节省篇幅, 不再给出。

    注意事项

    本文(一种基于FPGA的数字秒表设计方法.doc)为本站会员(白大夫)主动上传,三一文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    经营许可证编号:宁ICP备18001539号-1

    三一文库
    收起
    展开