可预置加减计数器.doc_第1页
可预置加减计数器.doc_第2页
可预置加减计数器.doc_第3页
可预置加减计数器.doc_第4页
可预置加减计数器.doc_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

赣南师院赣南师院 物理与电子信息学院物理与电子信息学院 集成电路课程设计报告书集成电路课程设计报告书 基于基于 Verilog 的可预置加减计数器设计的可预置加减计数器设计 姓名 姓名 陈木根陈木根 班级 班级 09 电子科学与技术电子科学与技术 学号 学号 090803002 指导老师 指导老师 陈建萍陈建萍 时间 时间 2012 年年 5 月月 28 日日 目录目录 内容摘要 1 关键词 1 ABSTRACT 1 KEY WORDS 1 1 引言 2 2 可预置加减计数器的设计 3 2 1 设计要求 3 2 2 设计思路和原理 3 2 3 计数器端口信号 4 3 仿真分析 5 3 1验证激励及仿真结果 5 3 2 仿真波形 6 4 结束语 7 5 参考文献 7 附件 程序清单 9 1 基于基于VerilogVerilog的可预置加减计数器设计的可预置加减计数器设计 摘要摘要 计数器是大规模集成电路中运用最广泛的结构之一 在模拟及数字集成 电路设计当中 灵活地选择与使用计数器可以实现很多复杂的功能 可以大量 减少电路设计的复杂度和工作量 讨论了一种可预置加减计数器的设计 运用 Verilog HDI 语言设计出了一种同步的可预置加减计数器 该计数器可以根据 控制信号分别实现加法计数和减法计数 从给定的预置位开始计数 并给出详 细的VerilogHDL源代码 最后 设计出了激励代码对其进行仿真验证 实验结 果证明该设计符合功能要求 可以实现预定的功能 关键词 关键词 Verilog HDI 可逆计数器 ModelSim 可预置加减计数器 Design of Reversible Counter Based on Verilog HDL Abstract Counter is one of the elements most in use in VLSI design It has been proved that choosing and using counter properly can solve many complex problems Discussing the design of a kind of reversible counter the study devises a synchronous reversible counter by applying Verilog HDL The reversible counter can count from the given preset data the detailed VeriogHDL source code has been given The counter can add and subtract according to control signals Finally the study devises stimulate code to its simulation certification The certification result testifies that the design accord with the functiona1 requirements can realize the preconcerted function Keywords Verilog HDL reversible counter M odelSim preset modified counter 2 1 引言引言 计数器对时钟脉冲进行计数 还被广泛用于定时 分频 以及各种复杂的 数字电路中 是计算机中的一个重要器件 是应用最广泛的一种典型的时序电 路 在目前流行的各种数字电路教材中 均分别给出了加法计数器和减法计数 器 但没有给出既能完成加法计数又能完成减法计数的逻辑电路 为此本文通 过使用VerilogHDL硬件描述语言设计出了一种可进行加 减计数的可逆计数器 并运用Mentor公司的ModelSim验证工具对其进行仿真验证 2 可预置加减计数器的设计原理可预置加减计数器的设计原理 2 1 可预置加减计数器的设计要求可预置加减计数器的设计要求 1 预置加减计数器输出为 4 位 计数范围为 0 FF 可以实现加法计数功能 和减法计数功能 并可以从预置位开始进行计数 2 可预置加减计数器根据加减控制信号来决定是执行加法计数还是执行减法 计数 并且根据预置控制信号决定是否从预置位开始计数 3 设计出激励代码对其进行仿真验证 2 2 可预置加减计数器的设计思路和原理可预置加减计数器的设计思路和原理 2 2 1 设计思路设计思路 本文设计的可预置加减计数器输出为4位 计数范围为0 FF 可以实现加 法计数功能和减法计数功能 并可以从预置位开始进行计数 可预置加减计数 器根据加减控制信号来决定是执行加法计数还是执行减法计数 并且根据预置 控制信号决定是否从预置位开始计数 当计数器加计数到最高位FF时 输出进 位标志信号 并从0开始加计数 当计数器减计数到最低位0时 输出借位标志 信号 并从FF开始减计数 运用VHDL语言编辑可预置加减计数器和激励代码 并进行仿真结果分析 达到实验要求 2 2 2 设计原理设计原理 根据二进制加法运算可知 在一个多位二进制数的末尾加1 若其中第i位 以下都为1时 则第i位状态 0变成1 1变成0 而最低的状态每次在加1时都要 3 改变 本文设计的是4位的可预置加减计数器 计数器同常用T触发器构成 一种是控制输入端T的状态 但每次CLK信号 到达时 使该翻转的那些触发器输入端Ti 1 不该翻转的Ti 0 另一种是控制 时钟信号 每次计数脉冲到达时 只能加到该翻转的那些触发器的CLK输入端 上 而不能加给那些不该翻转的触发器 2 2 3 可预置加减计数器原理图可预置加减计数器原理图 图1可预置加减计数器 图1为利用74161构成的预置加减计数器 通过控制输入端A和CLK来实现加 法计算和减法计算 2 3 可预置加减计数器的端口信号可预置加减计数器的端口信号 图1是可预置加减计数器的端口信号图 此计数器共有9个外部信号 6个输 入信号分别为DIN 宽度8位 CI R ENABLE DOWNCNTCTRI UPCNTCTRI 和 CLK 3个输出信号分别为COUT 宽度8位 R和P 图2可预置加减计数器的端口信号 其中时钟信号CLK为系统外部时钟 计数器在每个时钟的上升沿进行加法或 减法计数 清零信号CI R负责初始化计数器 将COUT信号置为0 使能信号 4 ENABLE可以让计数器在系统时钟上升沿到来时 接受预置数据信号DIN的输入 从预置数据开始进行加法或减法的计数 让信号UPCNTCRTI 控制计数器进行加 法计数 反过来 信号DOWNCNTCRTL控制计数器进行减法计数 计数器输出信号 COUT输出计数结果 信号R为进位输出 信号P为借位输出 3 可预置加减计数器仿真分析可预置加减计数器仿真分析 3 1 可预置加减计数器的验证激励及仿真结果可预置加减计数器的验证激励及仿真结果 在出计数器的源代码之后 还应设计激励验证计数器的设计是否正确 是 否符合功能要求 以下是针对可预置加减计数器源代码的激励代码 module tcounter reg CI K CI R DOW NCNTCTRI UPCNTCTRI ENABI E reg 7 o DIN wire 7 O COUT wire P R counte cc CI K CLK CLR CLR DOW NCNTCTRL DOW NCNTCTRI UPCNTCTRL UPCNTCTRI ENABI E ENABLE COUT COUT DIN DIN P P R R Initial begin CI K 0 CLR 1 UPCNTCTRL 0 DOW NCNTCTRL 0 ENABI E 0 DIN 0 1O CLR 0 20 UPCNTCTRL 1 5 3000 ENABLE 1 DIN 50 5 ENABLE 0 20 DOWNCNTCTRL 1 UPCNTCTRI 0 3000 ENABI E 1 DIN 200 end always 5 CI K一 CI K Endmodule 3 2 仿真波形图仿真波形图 利用Modelsim软件进行调试和仿真 最终得到了如图3和图4的仿真波形图 图3加法计数仿真波形 图4减法计数仿真波形 6 4 结结 语语 在本文中采用Verilog HDL语言设计可预置加减计数器 借助其功能强大的 语言结构 简明的代码描述复杂控制逻辑设计 与工艺无关特性 在提高工作 效率的同时达到求解目的 并可以通过Verilog HDI 语言的综合工具进行相应 硬件电路的生成 具有传统逻辑设计方法所无法比拟的优越性 可预置加减计 数器既能完成加法计数又能完成减法计数的逻辑电路 克服了加法计数器和减 法计数器的单一性 兼具二者的优点 为了检验所设计的电路的正确性 用 ModelSim仿真工具进行仿真验证 得出了正确的实验结果 通过自己动手及上网查找编辑程序 以及在老师和同学的帮助下 使我对 VHDL语言有了进一步的了解 进一步熟悉了Multisim软件 能够熟练地操作和 使用此软件进行仿真 画电路图等功能 通过这次专业技能训练 加强了我们 动手 思考和解决问题的能力 在设计过程中会遇到些困难 但经过自己的细 心检查和思考 终于得到了实验结果 受益匪浅 对以后的就业有一定的帮助 7 5 参考文献参考文献 1 夏宇闻 复杂数字电路与系统的Verilog HDL设计技术EM 北京 北京航空 航天大学出版社 1 999 2 谈艳云 罗志强 用VerilogHDI 语言设计分频器和计数器 J 微计算机应 用 2002 1O 6 366 367 3 刘振来 张志荣 顾建雄 等 异步二进制可逆计数器的设计 J 河西学 院学报 2003 5 5 26 27 4 曹昕燕 周凤臣 聂春燕 EDA 技术试验与课程设计 M 北京 清华大学出 版社 2006 5 尹常永 EDA 技术与数字系统设计 M 西安 西安电子科技大学出版社 2004 6 潘松 黄继业 EDA 技术与 VHDL M 北京 清华大学出版社 2005 7 阎石主编 数字电子技术基础 第五版 高等教育出版社 2007 8 乔庐峰 VHDL数字系统设计与验证 北京 电子工业出版社 2009 9 王锁萍 电子设计自动化 EDA 教程 成都 成都电子科技大学出版社 2000 10 詹仙宁 田耘 VHDL开放精解与实例剖析 北京 电子工业出版社 2009 8 附件 程序清单 附件 程序清单 module counter DIN CI K CLR ENABI E UPCNTCTRL DOwNCNTCTRL COUT R P input CI K CI R ENABLE UPCNTCTRI DOW NCNTC TRI input 7 O DIN output 7 O COUT output R P reg 7 O COUT reg R P always posedge CI K or CLR or ENABI E begin if CI R begin COUT 0 P 0 R 0 end else if ENABLE 1 begin COUT DIN end else begin 9 if UPCNTCTRI begin COUT COUT 1 end else if DOW NCNTCTRI begin COUT COUT 1 end end end always posedge CI K begin if COUT hFF end else begin R 0 end if C0UT hO end begin P 0 end end endmodule 10 赣南师范学院赣南师范学院 20112011 20122012 学年第学年第 一一 学期课程设计学期课程设计 行政班级行政班级 09 级电子科学与技术级电子科学与技术 学号学号 090803002 姓名姓名 陈木根陈木根 选课班级选课班级 09 级电子科学与技术级电子科学与技术 任课教师任课教师 陈建萍陈建萍 成绩成绩 课程设计题目 课程设计题目 基于基于 Verilog 的可预置加减计数器的设计的可预置加减计数器的设计 设计要求 设计要求 1 1 预置加减计数器输出为 4 位 计数范围为 0 FF 可以实现加法计数功能和减 法计数功能 并可以从预

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论