已阅读5页,还剩35页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
图书分类号 密 级 毕业设计 论文 多功能数字钟的设计多功能数字钟的设计 Multi purpose digital clock s design 学生姓名程毛毛 学院名称信电工程学院 专业名称电子信息工程 指导教师靳 艳 辉 2007 年 5 月 19 日 徐州工程学院毕业设计 论文 II 徐州工程学院学位论文原创性声明 本人郑重声明 所呈交的学位论文 是本人在导师的指导下 独立进 行研究工作所取得的成果 除文中已经注明引用或参考的内容外 本论文 不含任何其他个人或集体已经发表或撰写过的作品或成果 对本文的研究 做出重要贡献的个人和集体 均已在文中以明确方式标注 本人完全意识到本声明的法律结果由本人承担 论文作者签名 日期 年 月 日 徐州工程学院学位论文版权协议书 本人完全了解徐州工程学院关于收集 保存 使用学位论文的规定 即 本校学生在学习期间所完成的学位论文的知识产权归徐州工程学院所 拥有 徐州工程学院有权保留并向国家有关部门或机构送交学位论文的纸 本复印件和电子文档拷贝 允许论文被查阅和借阅 徐州工程学院可以公 布学位论文的全部或部分内容 可以将本学位论文的全部或部分内容提交 至各类数据库进行发布和检索 可以采用影印 缩印或扫描等复制手段保 存和汇编本学位论文 论文作者签名 导师签名 日期 年 月 日 日期 年 月 日 徐州工程学院毕业设计 论文 II 摘要 数字钟是一种用数字电路技术实现时 分 秒计时的装置 与机械式时钟相比具 有更高的准确性和直观性 且无机械装置 具有更长的使用寿命 已得到广泛的使用 数字钟从原理上讲是一种典型的数字电路 其中包括了组合逻辑电路和时序电路 因此 我们此次设计与制做数字钟就是为了了解数字钟的原理 从而学会制作数字钟 而 且通过数字钟的制作进一步的了解各种在制作中用到的中小规模集成电路的作用及实 用方法 且由于数字钟包括组合逻辑电路和时叙电路 通过它可以进一步学习与掌握各 种组合逻辑电路与时序电路的原理与使用方法 数字钟的设计方法有许多种 例如 可用中小规模集成电路组成电子钟 也可以利 用专用的电子钟芯片配以显示电路及其所需要的外围电路组成电子钟 还可以利用单 片机来实现电子钟等等 这些方法都各有其特点 我们是使用 Verilog HDL 来设计的 并且用仿真器对其进行仿真 关键词关键词 数字钟 Verilog HDL 语言 仿真器 徐州工程学院毕业设计 论文 III Abstract The digital clock is one kind realizes with the digital circuit technology divides the second time installment compares with the mechanical clock has a higher accuracy and intuitive and not mechanism has the longer service life obtained the widespread use The digital clock theoretically speaking is one kind of typical digital circuit including the combinatory logic electric circuit and the sequence circuit Therefore our design and the make digit clock is to understand the digital clock s principle thus the academic society manufactures the digital clock Moreover through digital clock s manufacture further understanding each kind the small scale integration electric circuit s function which and the practice means uses in the manufacture When and digital clock including combinatory logic electric circuit and narrates the electric circuit May further study through it with grasps each kind of combinatory logic electric circuit and sequence circuit s principle and the application method The digital clock s design method has many kinds for example available small scale integration electric circuit composition electron clock May also use the special purpose electron clock chip to match the peripheral circuit composition electron clock which the display circuit and needs May also using the monolithic integrated circuit realize electron clock and so on These methods respectively have its characteristic We are use Verilog HDL to design and carries on the simulation with the simulator to it Keywords digital clock Verilog HDL language Simulator 徐州工程学院毕业设计 论文 A 目目 录录 1 1 绪论 绪论 1 1 2 2 VERILOG HDL的基础知识的基础知识 2 1 VERILOG HDL 概述 2 2 2 1 1 VERILOG HDL 的发展历史 2 2 1 2 VERILOG HDL 的主要功能 2 3 3 多功能数字钟的设计 多功能数字钟的设计 8 8 3 1 设计任务 8 3 2 多功能数字钟功能概述 10 3 3 多功能数字钟系统框图 10 3 4详细功能及状态描述 3 3 5 参考模块设计 10 3 5 1 主控制模块 maincontrol 10 3 3 2 时间及其设置模块 timepiece main 10 3 3 3 时间显示动态位选模块TIME DISP SELSCT 12 3 3 4 显示模块 disp data mux 12 3 3 5 秒表模块 stopwatch 12 3 3 6 闹钟模块 alarmclock 13 3 3 7 分频模块 fdiv 13 结论结论 2020 致谢致谢 2121 参考文献参考文献 附录附录 附录 1 主控制模块的源代码 附录 2 时间及其设置模块的源代码 附录 3 时间显示动态位选模块的源代码 附录 4 显示模块的源代码 附录 5 秒表模块的源代码 附录 6 闹钟模块的源代码 附录 7 分频模块的源代码 22 徐州工程学院毕业设计 论文 1 1 绪 论 在当代繁忙的工作与生活中 时间与我们每一个人都有非常密切的关系 每个人 都受到时间的影响 为了更好的利用我们自己的时间 我们必须对时间有一个度量 因此产生了钟表 数字钟以其显示时间的直观性 走时准确性已成为人们日常生活中 必不可少的必需品 广泛用于个人家庭以及车站 码头 剧院 办公室等公共场所 给人们的生活 学习 工作 娱乐带来极大的方便 由于数字集成电路技术的发展和 采用了先进的石英技术 使数字钟具有走时准确 性能稳定 携带方便等优点 它还 用于计时 自动报时及自动控制等各个领域 钟表的发展是非常迅速的 从刚开始的 机械式钟表到现在普遍用到的数字式钟表 即使现在钟表千奇百怪 但是它们都有一 种基本功能 计时功能 只是工作原理不同而已 作为一种计时工具 数字钟的基 本组成部分离不开计数器 在控制逻辑电路的控制下完成预定的各项功能 徐州工程学院毕业设计 论文 2 2 Verilog HDL的基础知识 硬件描述语言HDL是硬件设计人员与电子设计自动化工具之间的桥梁 Verilog HDL作为一种常用发热硬件描述语言 有着其固有的特性与鲜明的优势 2 1 Verilog HDL的概述 Verilog HDL 是一种硬件描述语言 用于从算法级 门级到开关级的多种抽象设 计层次的数字系统建模 被建模的数字系统对象的复杂性可以介于简单的门和完整的 电子数字系统之间 数字系统能够按层次描述 并可在相同描述中显式地进行时序建 模 Verilog HDL 语言具有下述描述能力 设计的行为特性 设计的数据流特性 设 计的结构组成以及包含响应监控和设计验证方面的时延和波形产生机制 所有这些都 使用同一种建模语言 此外 Verilog HDL 语言提供了编程语言接口 通过该接口可 以在模拟 验证期间从设计外部访问设计 包括模拟的具体控制和运行 Verilog HDL 语言不仅定义了语法 而且对每个语法结构都定义了清晰的模拟 仿真语义 因此 用这种语言编写的模型能够使用 Verilog 仿真器进行验证 语言从 C 编程语言 中继承了多种操作符和结构 Verilog HDL 提供了扩展的建模能力 其中许多扩展最 初很难理解 但是 Verilog HDL 语言的核心子集非常易于学习和使用 这对大多数 建模应用来说已经足够 当然 完整的硬件描述语言足以对从最复杂的芯片到完整的 电子系统进行描述 Verilog HDL 是一种硬件描述语言 用于从算法级 门级到开关级的多种抽象设 计层次的数字系统建模 被建模的数字系统对象的复杂性可以介于简单的门和完整的 电子数字系统之间 数字系统能够按层次描述 并可在相同描述中显式地进行时序建 模 Verilog HDL 语言具有下述描述能力 设计的行为特性 设计的数据流特性设计 的结构组成以及包含响应监控和设计验证方面的时延和波形产生机制 所有这些都使 用同一种建模语言 此外 Verilog HDL 语言提供了编程语言接口 通过该接口可以 在模拟 验证期间从设计外部访问设计 包括模拟的具体控制和运行 Verilog HDL 语言不仅定义了语法 而且对每个语法结构都定义了清晰的模拟 仿真语义 因此 用这种语言编写的模型能够使用 Verilog 仿真器进行验证 语言从 C 编程语言中继承了多种操作符和结构 Verilog HDL 提供了扩展的建模能力 其中 许多扩展最初很难理解 但是 Verilog HDL 语言的核心子集非常易于学习和使用 这对大多数建模应用来说已经足够 当然 完整的硬件描述语言足以对从最复杂的芯 片到完整的电子系统进行描述 2 2 1 Verilog HDL的发展历史 徐州工程学院毕业设计 论文 3 1 1981年Gateway Automation GDA 硬件描述语言公司成立 2 1983年该公司的Philip Moorby首创了Verilog HDL Moorby后来成为Verrlog HDL XL的主要设计者和Cadence公司的第一合伙人 3 1984 1985年Moorby设计出第一个关于Verilog HDL的仿真器 4 1986年Moorby对Verilog HDL的发展有做出另一个巨大的贡献 提出了用于快速 门级仿真的XL算法 5 随着Verilog HDL XL的成功 Verilog HDL语言得到迅速发展 6 1987年Synonsys公司开始使用Verilog HDL行为语言作为综合工具的输入 7 1989年Cadence公司收购了Gateway公司 Verilog HDL成为Cadence公司的私 有财产 8 1990年初Cadence公司把Verilong HDL和Verilong HDL XL分开 并公开发布了 Verilog HDL 随后成立的OVI Open Verilog HDL International 组织负责Verilog HDL的发展 OVI由Verilog HDL的使用和CAE供应商组成 制定标准 9 1993年 几乎所有ASIC厂商都开始支持Verilog HDL 并且认为Verilog HDL XL 是最好的仿真器 同时 OVI推出2 0版本的Verilong HDL规范 IEEE接收将OVI的 Verilong HDL2 0作为IEEE标准的提案 10 1995年12月 IEEE制定了Verilong HDL的标准IEEE1364 1995 2 2 2 Verilog HDL的主要功能 Verilog HDL主要具有以下特点 1 内置基本逻辑门 如and or等 2 灵活的用户定义原语创建 用户既可以定义组合逻辑原语 也可以定义时序逻 辑原语 3 内置的开关级基本结构模型 如pmos nmos等 4 可采用三种不同方式或混合方式对设计建模 此三种方式为 行为描述方式 使用过程化结构建模 数据流描述方式 使用连续赋值语句方式建模 结构化描述方 式 用门和模块实例语句描述建模 5 两类数据类型 线网数据类型和寄存器诗句类型 线网类型表示构件间的物理 连线 而寄存器类型表示抽象的数据存储元件 6 能够描述层次设计 可使用模块实例结构描述任何层次 7 设计的规模可以是任意的 语言不对设计的规模施加任何限制 8 设计能够在多个层次上加以描述 9 能够监控模拟验证的执行 模拟验证执行的过程中设计的值能够被监控和显 示 这些值也能够用于与期望值比较 在不匹配的情况下 打印报告消息 徐州工程学院毕业设计 论文 4 10 在行为描述中 不仅能够在RTL级上进行设计描述 而且能够在体系结构级描 述及其算法级行为上进行描述 11 能够使用门和模块实例化语句在结构级进行结构描述 12 内置逻辑函数 如 output Timepiece EN TimeSet EN Stopwatch EN Alarmclock EN Date EN DateSet EN input SW3 reg Timepiece EN TimeSet EN Stopwatch EN Alarmclock EN Date EN DateSet EN reg 2 0 Function 存放功能号 always posedge SW3 begin if Function 3 b101 Function Function 3 b1 else Function 3 b0 case Function 时钟 3 b000 begin Timepiece EN 1 b1 TimeSet EN 1 b0 Stopwatch EN 1 b0 Alarmclock EN 1 b0 徐州工程学院毕业设计 论文 21 Date EN 1 b0 DateSet EN 1 b0 end 时钟设置 3 b001 begin Timepiece EN 1 b0 TimeSet EN 1 b1 Stopwatch EN 1 b0 Alarmclock EN 1 b0 Date EN 1 b0 DateSet EN 1 b0 end 秒表 3 b010 begin Timepiece EN 1 b0 TimeSet EN 1 b0 Stopwatch EN 1 b1 Alarmclock EN 1 b0 Date EN 1 b0 DateSet EN 1 b0 end 闹钟设置 3 b011 begin Timepiece EN 1 b0 TimeSet EN 1 b0 Stopwatch EN 1 b0 Alarmclock EN 1 b1 徐州工程学院毕业设计 论文 22 Date EN 1 b0 DateSet EN 1 b0 end 日期显示 3 b100 begin Timepiece EN 1 b0 TimeSet EN 1 b0 Stopwatch EN 1 b0 Alarmclock EN 1 b0 Date EN 1 b1 DateSet EN 1 b0 end 日期设置 3 b101 begin Timepiece EN 1 b0 TimeSet EN 1 b0 Stopwatch EN 1 b0 Alarmclock EN 1 b0 Date EN 1 b0 DateSet EN 1 b1 end default begin Timepiece EN 1 b0 TimeSet EN 1 b0 Stopwatch EN 1 b0 Alarmclock EN 1 b0 Date EN 1 b0 徐州工程学院毕业设计 论文 23 DateSet EN 1 b0 end endcase end endmodule 附录2 时间及其设置模块的源代码如下 module time auto and set CLK Timepiece EN TimeSet EN SW1 SW2 Day EN hour 0 hour 1 minute 0 minute 1 second 0 second 1 TimeSet disp drive inputCLK inputTimepiece EN inputTimeSet EN inputSW1 inputSW2 outputDay EN output 3 0 hour 1 hour 0 output 3 0 minute 1 minute 0 output 3 0 second 1 second 0 output 2 0 TimeSet disp drive reg 3 0 hour 1 hour 0 reg 3 0 minute 1 minute 0 reg 3 0 second 1 second 0 reg 2 0 TimeSet disp drive wire 3 0 SYNTHESIZED WIRE 18 徐州工程学院毕业设计 论文 24 wire 3 0 SYNTHESIZED WIRE 19 wire 3 0 SYNTHESIZED WIRE 2 wire 3 0 SYNTHESIZED WIRE 3 wire 3 0 SYNTHESIZED WIRE 20 wire 3 0 SYNTHESIZED WIRE 21 wire 3 0 SYNTHESIZED WIRE 6 wire 3 0 SYNTHESIZED WIRE 7 wire 3 0 SYNTHESIZED WIRE 22 wire 3 0 SYNTHESIZED WIRE 23 wire 3 0 SYNTHESIZED WIRE 10 wire 3 0 SYNTHESIZED WIRE 11 timepiece mainb2v inst1 CLK CLK Timepiece EN Timepiece EN day EN Day EN hour0 SYNTHESIZED WIRE 18 hour1 SYNTHESIZED WIRE 19 minute0 SYNTHESIZED WIRE 20 minute1 SYNTHESIZED WIRE 21 second0 SYNTHESIZED WIRE 22 second1 SYNTHESIZED WIRE 23 time mux b2v inst2 TimeSet EN TimeSet EN hour0 SYNTHESIZED WIRE 18 hour1 SYNTHESIZED WIRE 19 hour set0 SYNTHESIZED WIRE 2 hour set1 SYNTHESIZED WIRE 3 minute0 SYNTHESIZED WIRE 20 minute1 SYNTHESIZED WIRE 21 minute set0 SYNTHESIZED WIRE 6 minute set1 SYNTHESIZED WIRE 7 second0 SYNTHESIZED WIRE 22 second1 SYNTHESIZED WIRE 23 second set0 SYNTHESIZED WIRE 10 second set1 SYNTHESIZED WIRE 11 hour 0 hour 0 hour 1 hour 1 minute 0 minute 0 minute 1 minute 1 second 0 second 0 second 1 second 1 timesetb2v inst3 TimeSet EN TimeSet EN SW1 SW1 SW2 SW2 hour0 SYNTHESIZED WIRE 18 hour1 SYNTHESIZED WIRE 19 minute0 SYNTHESIZED WIRE 20 minute1 SYNTHESIZED WIRE 21 second0 SYNTHESIZED WIRE 22 second1 SYNTHESIZED WIRE 23 disp drive TimeSet disp drive hour set0 SYNTHESIZED WIRE 2 hour set1 SYNTHESIZED WIRE 3 minute set0 SYNTHESIZED WIRE 6 minute set1 SYNTHESIZED WIRE 7 徐州工程学院毕业设计 论文 25 second set0 SYNTHESIZED WIRE 10 second set1 SYNTHESIZED WIRE 11 Endmodule 附录3 时间显示动态位选模块的源代码如下 module time disp select clk 1khz clk 200hz Time EN TimeSet EN timeset disp drive time disp select output 5 0 time disp select input clk 1khz input clk 200hz input Time EN input TimeSet EN input 2 0 timeset disp drive reg 5 0 time disp select reg 2 0 auto disp drive reg clk reg 2 0 disp drive always posedge clk 1khz begin if auto disp drive 3 b101 auto disp drive auto disp drive 3 b1 else auto disp drive 3 b0 end always begin if Time EN 1 b1 begin clk clk 1khz disp drive auto disp drive 徐州工程学院毕业设计 论文 26 end else if TimeSet EN 1 b1 begin clk clk 200hz disp drive timeset disp drive end end always posedge clk begin case disp drive 3 b000 time disp select 6 b100000 3 b001 time disp select 6 b010000 3 b010 time disp select 6 b001000 3 b011 time disp select 6 b000100 3 b100 time disp select 6 b000010 3 b101 time disp select 6 b000001 default time disp select 6 b000000 endcase end endmodule 附录4 显示模块的源代码如下 module disp data mux Timepiece EN TimeSet EN Stopwatch EN time disp select Alarmclock EN alarmclock disp select hour1 hour0 minute1 minute0 second1 second0 Date EN DateSet EN date disp select 徐州工程学院毕业设计 论文 27 month1 month0 day1 day0 disp select disp data output 5 0 disp select output 6 0 disp data input Timepiece EN TimeSet EN Stopwatch EN input 5 0 time disp select input Alarmclock EN input 5 0 alarmclock disp select input 3 0 hour1 hour0 minute1 minute0 second1 second0 input Date EN DateSet EN input 5 0 date disp select input 3 0 month1 month0 day1 day0 reg 5 0 disp select reg 6 0 disp data reg 3 0 Data always Timepiece EN TimeSet EN Stopwatch EN time disp select Alarmclock EN alarmclock disp select hour1 hour0 minute1 minute0 second1 second0 Date EN DateSet EN date disp select month1 month0 day1 day0 disp select begin 徐州工程学院毕业设计 论文 28 时钟 秒表显示 if Timepiece EN TimeSet EN Stopwatch EN 1 b1 begin disp select time disp select case time disp select 6 b100000 Data hour1 6 b010000 Data hour0 6 b001000 Data minute1 6 b000100 Data minute0 6 b000010 Data second1 6 b000001 Data second0 default Data 4 b0 endcase end 闹钟设置显示 else if Alarmclock EN 1 b1 begin disp select alarmclock disp select case alarmclock disp select 6 b100000 Data hour1 6 b010000 Data hour0 6 b001000 Data minute1 6 b000100 Data minute0 6 b000010 Data second1 6 b000001 Data second0 default Data 4 b0 endcase end 日期以及日期设置显示 else if Date EN DateSet EN 1 b1 begin disp select date disp select case date disp select 6 b100000 Data month1 徐州工程学院毕业设计 论文 29 6 b010000 Data month0 6 b001000 Data day1 6 b000100 Data day0 default Data 4 b0 endcase end 显示数据译码 case Data 4 b0000 disp data 7 b1111110 4 b0001 disp data 7 b0110000 4 b0010 disp data 7 b1101101 4 b0011 disp data 7 b1111001 4 b0100 disp data 7 b0110011 4 b0101 disp data 7 b1011011 4 b0110 disp data 7 b1011111 4 b0111 disp data 7 b1110000 4 b1000 disp data 7 b1111111 4 b1001 disp data 7 b1111011 default disp data 7 b0 endcase end endmodule 附录5 秒表模块的源代码如下 module stopwatch clk1 clk2 EN F out output F out input EN input clk1 clk2 reg F out always EN clk1 clk2 begin case EN 1 b0 F out clk1 徐州工程学院毕业设计 论文 30 1 b1 F out clk2 default F out 1 b0 endcase end endmodule 附录6 闹钟模块的源代码如下 module alarmclock clk 200hz EN SW1 SW2 hour1 hour0 minute1 minute0 second1 second0 alarm alarmclock disp select output alarm output 5 0 alarmclock disp select input EN SW1 SW2 clk 200hz input 3 0 hour1 hour0 minute1 minute0 second1 second0 reg 5 0 alarmclock disp select reg alarm reg 3 0 hour set1 hour set0 存放设置的小时 reg 3 0 minute set1 minute set0 存放设置的分 reg 3 0 second set1 second set0 存放设置的秒 reg 2 0 disp drive 设置闹钟时间时 数码管显示的动态位选 择 闹钟一直工作 设置的闹钟时间与当前时间比较 always begin if hour set1 hour1 徐州工程学院毕业设计 论文 31 else alarm 1 b0 end 闹钟设置中 按SW1一次 将移位一次 显示当前设置位 always posedge SW1 begin if EN 1 b1 begin if disp drive 3 b101 disp drive disp drive 3 b1 else disp drive 3 b000 end end 当前位的闹钟数字设置 按SW2一次 数字增加1 always posedge SW2 begin case disp drive 3 b000 begin disp select 6 b100000 if hour set1 4 b0010 hour set1 hour set1 4 b1 else hour set1 4 b0 end 3 b001 begin disp select 6
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 掌握高分逻辑|高中语文传记阅读训练课
- 学校三年发展规划实施方案
- 学校绿色校园实施方案
- 宣传思想工作考核细则
- 物业小区生活垃圾清运制度
- 教师缺课补教管理制度
- 新学期前置学习|写作讲解与英语写作模板资料
- 掌握高分逻辑|小学语文寒假读写趣味拓展提升课
- 养老护理实操理论仿真模拟摸底卷含完整答案
- 工会经费账务达标检测卷含完整答案
- 2026年教师专用教育公共基础知识试题及答案
- GA/T 1215-2025中小学与幼儿园周边道路交通组织设计与交通设施设置规范
- 2026年四川省成都市中考语文真题(试题+答案)
- 2025年食品安全事故应急处置全流程培训
- 2026年淡水养殖高级水产工程师答辩题库
- 探秘南海IODP349基底玄武岩中钙质碳酸盐岩脉:岩石学与地球化学的深度剖析
- 上市公司收购方案
- 矿山安全教育培训课直播课件
- GB/T 14233.2-2025医用输液、输血、注射器具检验方法第2部分:生物学试验方法
- 2025年基本公共卫生服务项目(慢阻肺健康管理)培训试题(附答案)
- 供应商资质与实力评估体系模板
评论
0/150
提交评论