




已阅读5页,还剩27页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
东 北 石 油 大 学 课 程 设 计 2009 年 7 月 10 日 课 程 硬件课程设计 题 目 数字钟设计 院 系 计算机与信息技术学院 专业班级 学生姓名 学生学号 1 指导教师 东北石油大学课程设计任务书 课程 硬件课程设计 题目 数字钟设计 专业 计算机 姓名 学号 主要内容 基本要求等 一 主要内容 利用 EL 教学实验箱 微机和 Quartus 软件系统 使用 VHDL 语言输入方法 设计数字钟 可以利用层次设计方法和 VHDL 语言 完成硬件设计设计和仿真 最后在 EL 教学实验箱中实现 二 基本要求 1 具有时 分 秒 计数显示功能 以 24 小时循环计时 2 具有清零功能 三 扩展要求 1 调节小时 分钟功能 2 整点报时功能 整点报时的同时 LED 灯花样显示 按照规范写出论文 要求字数在 4000 字以上 并进行答辩 论文内容包括概 述 学习 调研 分析 设计的内容摘要 EDA 技术的现状和发展趋势 对 EL 教学实验箱和 Quartus 软件的掌握程度 数字钟的设计过程 包括原理图或程 序设计 编译 仿真分析 硬件测试的全过程 论文中含有原理图 程序 仿 真波形图及其分析报告 完成期限 2 周 指导教师 专业负责人 2012 年 6 月 10 日 东北石油大学课程设计成绩评价表 课程名称硬件课程设计 题目名称数字钟设计 学生姓名学号 序号评价项目指 标 优秀 满分评分 1选题难度 选题难度较高 或者对原题目进行了相当程度 的改进 10 2 工作量 工作态 度和出勤率 工作量饱满 工作努力 遵守纪律 出勤率高 工作作风严谨 善于与他人合作 10 3课程设计质量 按期圆满的完成了规定的任务 方案设计合理 思考问题全面 系统功能完善 40 4报告质量 问题论述思路清晰 结构严谨 文理通顺 撰 写规范 图表完备正确 30 5回答问题 在进行课程设计程序系统检查时 能正确回答 指导教师所提出的问题 10 6创新 加分项 工作中有创新意识 对前人工作有改进或有应 用价值 在进行系统检查时能对创新性进行说 明 并在报告中有相应的论述 5 总分 评语 指导教师 梁吉胜 2012 年 6 月 10 日 摘 要 本文介绍了利用 EDA V 硬件系统和微机上的 Quartus7 2 II 等软件系统 VHDL 的英文全名是 Very High Speed Integrated Circuit HardwareDescription Language 诞生于 1982 年 1987 年底 VHDL 被 IEEE 和美 国国防部确认为标准硬件描述语言 自 IEEE 公布了 VHDL 的标准版本 IEEE 1076 简称 87 版 之后 各 EDA 公司相继推出了自己的 VHDL 设计环境 或宣布 自己的设计工具可以和 VHDL 接口 此后 VHDL 在电子设计领域得到了广泛的接受 并逐步取代了原有的非标准的硬件描述语言 有专家认为 在新的世纪中 VHDL 于 Verilog 语言将承担起大部分的数字系统设计任务 本文设计主要利用 VHDL 语言在 EDA 平台上设计一个电子数字钟 它的计时 周期为 24 小时 显示满刻度为 23 时 59 分 59 秒 另外还具有校时功能和闹钟功 能 总的程序由几个各具不同功能的单元模块程序拼接而成 其中包括分频程序 模块 时分秒计数和设置程序模块 比较器程序模块 三输入数据选择器程序模 块 译码显示程序模块和拼接程序模块 并且使用 Quartus7 2 II 软件进行电路 波形仿真 下载到 EDA 实验箱进行验证 关键词关键词 EDA 电子设计自动化 VHDL 硬件描述语言 数字钟 目 录 第 1 章 概 述 1 1 1 EDA 的概念 1 1 2 EDA 的工作平台 2 1 3 EDA 的发展趋势 4 第 2 章 数字钟设计的系统分析 6 2 1 设计目的 6 2 2 功能说明 6 2 3 实验原理 6 2 4 系统硬件 6 第 3 章 数字钟的底层电路设计 8 3 1 设计规划 8 3 2 设计说明 8 3 3 底层电路程序 9 第 4 章 数字钟的顶层文件设计 18 4 1 设计说明 18 4 2 顶层文件程序 18 第 5 章 数字钟设计的测试与运行 21 5 1 数字钟的调 试 21 5 2 数字钟的适配与测试 24 结 论 26 参考文献 27 东北石油大学本科生课程设计 论文 1 第 1 章 概 述 1 1 EDA 的概念 EDA 是电子设计自动化 Electronic Design Automation 的缩写 EDA 技术是 以大规模可编程逻辑器件为设计载体 以硬件描述语言为系统逻辑描述的主要表 达方式 以计算机 大规模可编程逻辑器件的开发软件及实验开发系统为设计工 具 通过有关的开发软件 自动完成用软件的方式设计电子系统到硬件系统的一 门新技术 可以实现逻辑编译 逻辑化简 逻辑分割 逻辑综合及优化 逻辑布 局布线 逻辑仿真 完成对于特定目标芯片的适配编译 逻辑映射 编程下载等 工作 最终形成集成电子系统或专用集成芯片 1 1 1EDA1 1 1EDA 技术及应用技术及应用 电子设计技术的核心就是 EDA 技术 EDA 是指以计算机为工作平台 融合 应用电子技术 计算机技术 智能化技术最新成果而研制成的电子 CAD 通用软 件包 主要能辅助进行三方面的设计工作 即 IC 设计 电子电路设计和 PCB 设 计 EDA 技术已有 30 年的发展历程 大致可分为三个阶段 70 年代为计算机辅 助设计 CAD 阶段 人们开始用计算机辅助进行 IC 版图编辑 PCB 布局布线 取代了手工操作 80 年代为计算机辅助工程 CAE 阶段 与 CAD 相比 CAE 除了有纯粹的图形绘制功能外 又增加了电路功能设计和结构设计 并且通过电 气连接网络表将两者结合在一起 实现了工程设计 CAE 的主要功能是 原理图 输人 逻辑仿真 电路分析 自动布局布线 PCB 后分析 90 年代为电子系统设 计自动化 EDA 阶段 3 EDA 技术发展迅猛 逐渐在教学 科研 产品设计与制造等各方面都发挥着 巨大的作用 在教学方面 几乎所有理工科 特别是电子信息 类的高校都开设了 EDA 课程 主要是让学生了解 EDA 的基本原理和基本概念 鳞握用佃 L 描述系 统逻辑的方法 使用扔 A 工具进行电子电路课程的模拟仿真实验并在作毕业设计 时从事简单电子系统的设计 为今后工作打下基础 具有代表性的是全国每两年 举办一次大学生电子设计竞赛活动 在科研方面 主要利用电路仿真工具 EwB 东北石油大学本科生课程设计 论文 2 或 PSPICE VLOL 等 进行电路设计与仿真 利用虚拟仪器进行产品调试 将 O LI FPGA 器件的开发应用到仪器设备中 例如在 CDMA 无线通信系统中 所 有移动手机和无线基站都工作在相同的频谱 为区别不同的呼叫 每个手机有一 个唯一的码序列 CDMA 基站必须能判别这些不同观点的码序列才能分辨出不同 的传呼进程 这一判别是通过匹配滤波器的输出显示在输人数据流中探调到特定 的码序列 FPGA 能提供良好的滤波器设计 而且能完成 DSP 高级数据处理功能 因而 FPGA 在现代通信领域方面获得广泛应用 4 在产品设计与制造方面 从高 性能的微处理器 数字信号处理器一直到彩电 音响和电子玩具电路等 EDA 技 术不单是应用于前期的计算机模拟仿真 产品调试 而且也在批量制作 电子设 备的研制与生产 电路板的焊接等有重要作用 可以说电子 EDA 技术已经成为 电子工业领域不可缺少的技术支持 电子技术全方位纳入 EDA 领域 EDA 使得电子领域各学科的界限更加模糊 更加互为包容 突出表现在以下几个方面 使电子设计成果以自主知识产权的方 式得以明确表达和确认成为可能 基于 EDA 工具的 ASIC 设计标准单元已涵盖大 规模电子系统及 IP 核模块 软硬件 IP 核在电子行业的产业领域 技术领域和设 计应用领域得到进一步确认 SoC 高效低成本设计技术的成熟 随着半导体技术 集成技术和计算机技术的迅猛发展 电子系统的设计方法和设计手段都发生了很 大的变化 可以说电子 EDA 技术是电子设计领域的一场革命 传统的 固定功 能集成块十连线 的设计方法正逐步地退出历史舞台 而基于芯片的设计方法正 成为现代电子系统设计的主流 作为高等院校有关专业的学生和广大的电子工程 师了解和掌握这一先进技术是势在必行 这不仅是提高设计效率的需要 更是时 代发展的需求 只有攀握了 EDA 技术才有能力参与世界电子工业市场的竞争 才能生存与发展 随着科技的进步 电子产品的更新日新月异 EDA 技术作为电 子产品开发研制的源动力 已成为现代电子设计的核心 所以发展 EDA 技术将 是电子设计领域和电子产业界的一场重大的技术革命 同时也对电类课程的教学 和科研提出了更深更高的要求 特别是 EDA 技术在我国尚未普及 掌握和普及 这一全新的技术 将对我国电子技术的发展具有深远的意义 1 2 EDA 的工作平台 1 2 1 EDA 硬件工作平台 1 计算机 2 EDA 实验开发系统 EDA V 东北石油大学本科生课程设计 论文 3 1 2 2 EDA 的软件工作平台 PLD Programmable Logic Device 是一种由用户根据需要而自行构造逻辑功 能的数字集成电路 目前主要有两大类型 CPLD Complex PLD 和 FPGA Field Programmable Gate Array 它们的基本设计方法是借助于 EDA 软件 用原理图 状态机 布尔表达式 硬件描述语言等方法 生成相应的目标文件 最后用编程 器或下载电缆 由目标器件实现 生产 PLD 的厂家很多 但最有代表性的 PLD 厂 家为 Altera Xilinx 和 Lattice 公司 1 3EDA 的发展趋势 面对当今飞速发展的电子产品市场 设计师需要更加实用 快捷的 EDA 工 具 使用统一的集成化设计环境 改变传统设计思路 将精力集中到设计构思 方案比较和寻找优化设计等方面 需要以最快的速度 开发出性能优良 质量一 流的电子产品 对 EDA 技术提出了更高的要求 3 未来的 EDA 技术将在仿真 时序分析 集成电路自动测试 高速印刷电路板设计及开发操作平台的扩展等方 面取得新的突破 向着功能强大 简单易学 使用方便的方向发展 可编程逻辑器件已经成为当今世界上最富吸引力的半导体器件 在现代 电子系统设计中扮演着越来越重要的角色 过去的几年里 可编程器件市场 的增长主要来自大容量的可编程逻辑器件 CPLD 和 FPGA 其未来的发展趋 势如下 向高密度 高速度 宽频带方向发展 在电子系统的发展过程中 工程师的系统设计理念要受到其能够选择的电子器件的限制 而器件的发展 又促进了设计方法的更新 随着电子系统复杂度的提高 高密度 高速度和 宽频带的可编程逻辑产品已经成为主流器件 3 其规模也不断扩大 从最初 的几百门到现在的上百万门 有些已具备了片上系统集成的能力 这些高密 度 大容量的可编程逻辑器件的出现 给现代电子系统 复杂系统 的设计 与实现带来了巨大的帮助 设计方法和设计效率的飞跃 带来了器件的巨大 需求 这种需求又促使器件生产工艺的不断进步 而每次工艺的改进 可编 程逻辑器件的规模都将有很大扩展 3 向在系统可编程方向发展 在系统可编程是指程序 或算法 在置入用户系 统后仍具有改变其内部功能的能力 4 采用在系统可编程技术 可以像对待软件 那样通过编程来配置系统内硬件的功能 从而在电子系统中引入 软硬件 的全 新概念 它不仅使电子系统的设计和产品性能的改进和扩充变得十分简便 还使 东北石油大学本科生课程设计 论文 4 新一代电子系统具有极强的灵活性和适应性 为许多复杂信号的处理和信息加工 的实现提供了新的思路和方法 向可预测延时方向发展 当前的数字系统中 由于数据处理量的激增 要求 其具有大的数据吞吐量 加之多媒体技术的迅速发展 要求能够对图像进行实时 处理 就要求有高速的系统硬件系统 5 为了保证高速系统的稳定性 可编程逻 辑器件的延时可预测性是十分重要的 用户在进行系统重构的同时 担心的是延 时特性会不会因为重新布线而改变 延时特性的改变将导致重构系统的不可靠 这对高速的数字系统而言将是非常可怕的 因此 为了适应未来复杂高速电子系 统的要求 可编程逻辑器件的高速可预测延时是非常必要的 向混合可编程技术方向发展 3 可编程逻辑器件为电子产品的开发带来了极 大的方便 它的广泛应用使得电子系统的构成和设计方法均发生了很大的变化 但是 有关可编程器件的研究和开发工作多数都集中在数字逻辑电路上 直到 1999 年 11 月 Lattice 公司推出了在系统可编程模拟电路 为 EDA 技术的应用 开拓了更广阔的前景 其允许设计者使用开发软件在计算机中设计 修改模拟电 路 进行电路特性仿真 最后通过编程电缆将设计方案下载至芯片中 已有多家 公司开展了这方面的研究 并且推出了各自的模拟与数字混合型的可编程器件 相信在未来几年里 模拟电路及数模混合电路可编程技术将得到更大的发展 向低电压 低功耗方面发展 集成技术的飞速发展 工艺水平的不断提高 节能潮流在全世界的兴起 也为半导体工业提出了向降低工作电压 降低功耗的 方向发展 面对当今飞速发展的电子产品市场 电子设计人员需要更加实用 快捷的开 发工具 使用统一的集成化设计环境 改变优先考虑具体物理实现方式的传统设 计思路 将精力集中到设计构思 方案比较和寻找优化设计等方面 以最快的速 度开发出性能优良 质量一流的电子产品 开发工具的发展趋势如下 具有混合 信号处理能力 由于数字电路和模拟电路的不同特性 模拟集成电路 EDA 工具 的发展远远落后于数字电路 EDA 开发工具 但是 由于物理量本身多以模拟形 式存在 实现高性能复杂电子系统的设计必然离不开模拟信号 20 世纪 90 年代 以来 EDA 工具厂商都比较重视数模混合信号设计工具的开发 美国 Cadence Synopsys 等公司开发的 EDA 工具已经具有了数模混合设计能力 这些 EDA 开 发工具能完成含有模数变换 数字信号处理 专用集成电路宏单元 数模变换和 各种压控振荡器在内的混合系统设计 高效的仿真工具 在整个电子系统设计过程中 仿真是花费时间最多的工作 也是占用 EAD 工具时间最多的一个环节 可以将电子系统设计的仿真过程分为两个阶段 设计前期的 系统级仿真和设计过程中的电路级仿真 系统级仿真主要验证系统的功能 如验证设计的有 东北石油大学本科生课程设计 论文 5 效性等 电路级仿真主要验证系统的性能 决定怎样实现设计 如测试设计的精度 处理和 保证设计要求等 要提高仿真的效率 一方面是要建立合理的仿真算法 另一方面是要更好 地解决系统级仿真中 系统模型的建模和电路级仿真中电路模型的建模技术 8 在未来的 EDA 技术中 仿真工具将有较大的发展空间 理想的逻辑综合 优化工具 逻辑综合功能是将高层次系统行为设计自动翻译成门级逻 辑的电路描述 做到了实际与工艺的独立 优化则是对于上述综合生成的电路网表 根据逻 辑方程功能等效的原则 用更小 更快的综合结果替代一些复杂的逻辑电路单元 根据指定 目标库映射成新的网表 随着电子系统的集成规模越来越大 几乎不可能直接面向电路图做 设计 要将设计者的精力从繁琐的逻辑图设计和分析中转移到设计前期算法开发上 逻辑综 合 优化工具就是要把设计者的算法完整高效地生成电路网表 东北石油大学本科生课程设计 论文 6 第第 2 2 章章 数字钟数字钟的系统分析的系统分析 2 1 设计目的 1 掌握多位计数器相连的设计方法 2 掌握十进制 六进制 二十四进制计数器的设计方法 3 继续巩固多位共阴极扫描显示数码管的驱动 及编码 4 掌握扬声器的驱动 5 LED 灯的花样显示 6 掌握 CPLD 技术的层次化设计方法 2 2 功能说明 1 具有时 分 秒 计数显示功能 以 24 小时循环计时 2 具有清零 调节小时 分钟功能 3 具有整点报时功能 整点报时的同时 LED 灯花样显示 2 3 实验原理 在同一 EPLD 芯片 EPF10K10 上集成了如下电路模块 1 时钟计数 秒 60 进制 BCD 码计数 分 60 进制 BCDD 码计数 时 24 进制 BCDD 码计数 同时整个计数器有清零 调分 调时功能 在接近整数时间能提供报时信号 2 具有驱动 8 位八段共阴扫描数码管的片选驱动信号输出和八段字形译码 输出 编码和扫描可参照 实验四 3 扬生器在整点时有报时驱动信号产生 4 LED 灯按个人口味在整点时有花样显示信号产生 2 4 系统硬件 1 主芯片 EPF10K10LC84 4 2 8 个 LED 灯 东北石油大学本科生课程设计 论文 7 3 扬声器 4 8 位八段扫描共阴级数码显示管 5 三个按键开关 清零 调小时 调分钟 东北石油大学本科生课程设计 论文 8 第 3 章 数字钟的底层电路设计 3 1 设计规划 该数字钟可以实现 3 个功能 计时功能 整点报时功能和重置时间功能 因 此有 3 个子模块 计时 报时 alarm1 重置时间 setmin1 sethour1 其中 计时模块有 3 部分构成 秒计时器 second1 分计时器 minute1 时计时器 hour1 1 秒计数模块 秒计数 在频率为 1HZ 的时钟下以 60 次为循环计数 并产 生进位信号影 响分计数 2 分计数模块 分计数 在秒进位信号为高电平时 计数一次 同样以 60 次为一个循环计数 同时产生分进位信号影响时计数 3 时计数模块 时计数 在分进位信号为高电平时 计数一次 以 24 次为 一个循环计数 4 时间显示模块 通过选中不同的数码管 同时进行一定频率的扫描显示 时 分 秒 5 时间设置模块 设置调试使能端 可以调时 分 基本功能是在使能端 为高电平时 可以使时和分循环计数 6 整点报时模块 在秒计数到 50 秒时 同时分计数到 59 分开始 丰鸣器 产生每个 2 秒的鸣叫 500HZ 到整点是产生 750HZ 的鸣叫 7 闹钟模块 在设定闹钟闹铃时间后 当闹钟使能端有效时 可在闹铃时 间闹铃 并有彩灯显示 3 2 设计说明 首先分析数字时钟 得出进位法则大体相同 故所得时分秒进位方式语法基 本相同 因此可以将时分秒定义成六位输出端口 即分别将时分秒定义为 3 个 component 分别给予设计 东北石油大学本科生课程设计 论文 9 3 3底层电路程序 3 3 1 秒秒计计时时器器 VHDL 语语言言编编译译 其代码如下 VHDL 语言 LIBRARY ieee use ieee std logic 1164 all use ieee std logic unsigned all ENTITY second IS PORT clk reset setmin IN STD LOGIC enmin OUTSTD LOGIC daout out std logic vector 6 downto 0 END entity second ARCHITECTURE fun OF second IS SIGNAL count STD LOGIC VECTOR 6 downto 0 BEGIN daout count process clk reset setmin begin enmin k if reset 0 then count 0000000 elsif setmin 0 then enmin clk elsif clk event and clk 1 then if count 3 downto 0 1001 then if count 16 60 then if count 1011001 then enmin 1 count 0000000 ELSE count count 7 end if else count 0000000 end if elsif count 16 60 then count count 1 enmin 0 after 100 ns 东北石油大学本科生课程设计 论文 10 else count 0000000 end if end if end process END fun 在秒计时器的 clk 输入一个周期为 5ns 的时钟信号 清 0 端 reset 前面 一小段 100ns 为低电平 后面均为高电平 置数端 set 前面一小段 200ns 为低电平 后面均为高电平 秒重置端 s1 可设置数值为 50 秒 保 存波形图 进行仿真 产生如下波形 图 3 1 5na 时钟信号 由上述波形可以清楚的看到 当清 0 信号 reset 无效时 秒计时器置数 从 50 秒开始计数 到 59 秒时回到 0 并且输出一个高电平 3 3 2 分分计计时时器器 VHDL 语语言言编编译译 其代码 VHDL 语言 如下 LIBRARY ieee use ieee std logic 1164 all use ieee std logic unsigned all ENTITY minute IS PORT clk clk1 reset sethour IN STD LOGIC enhour OUTSTD LOGIC daout out std logic vector 6 downto 0 END entity minute ARCHITECTURE fun OF minute IS 东北石油大学本科生课程设计 论文 11 SIGNAL count STD LOGIC VECTOR 6 downto 0 BEGIN daout count process clk reset sethour begin if reset 0 then count 0000000 elsif sethour 0 then enhour clk1 elsif clk event and clk 1 then if count 3 downto 0 1001 then if count 16 60 then if count 1011001 then enhour 1 count 0000000 ELSE count count 7 end if else count 0000000 end if elsif count 16 60 then count count 1 enhour 0 after 100 ns else count 0000000 end if end if end process END fun 在分计时器的 clkm 输入一个周期为 5ns 的时钟信号 清 0 端 reset 前面一 小段 100ns 为低电平 后面均为高电平 置数端 set 前面一小段 200ns 为低电平 后面均为高电平 分重置端 m1 可设置数值为 50 分 保存波形图 进行仿真 产生如下波形 东北石油大学本科生课程设计 论文 12 图 3 2 分计时器信号 由上述波形可以清楚的看到 当清 0 信号 reset 无效时 分计时器置数 从 50 分开始计数 到 59 秒时回到 0 并且从 enmin 输出一个高电平 3 时计时器 hour 在时计时器的 clkh 输入一个周期为 5ns 的时钟信号 清 0 端 reset 前面一 小段 100ns 为低电平 后面均为高电平 置数端 set 前面一小段 200ns 为低电平 后面均为高电平 时重置端 h1 可设置数值为 20 时 保存波形图 进行仿真 产生如下波形 图 3 3 时计时器信号 由上述波形可以清楚的看到 当清 0 信号 reset 无效时 时计时器置数 从 20 时开始计数 到 23 时回到 0 并且从 enhour 输出一个高电平 3 3 3 时计时器 时计时器 VHDL 语言 语言 代码如下 LIBRARY ieee use ieee std logic 1164 all use ieee std logic unsigned all 东北石油大学本科生课程设计 论文 13 ENTITY hour IS PORT clk reset IN STD LOGIC daout out std logic vector 5 downto 0 END entity hour ARCHITECTURE fun OF hour IS SIGNAL count STD LOGIC VECTOR 5 downto 0 BEGIN daout count process clk reset begin if reset 0 then count 000000 elsif clk event and clk 1 then if count 3 downto 0 1001 then if count 16 24 then count count 7 else count 000000 end if elsif count 16 24 then count count 1 else count 000000 end if end if end process END fun 时计时器是一个 24 进制的计数器 它从分组件的脉冲信号输出端接受脉冲 信号 每当一个脉冲信号来时 时就自动加 1 并且输出个信号给时组件 直到 计满 24 再将本身清零 该组件还能对时进行数字调整 并可以将其全部清零 3 3 3 3 4 4 时间显示时间显示 DeledDeled VHDLVHDL 语言 语言 代码如下 LIBRARY ieee use ieee std logic 1164 all use ieee std logic unsigned all ENTITY deled IS 东北石油大学本科生课程设计 论文 14 PORT num IN std logic vector 3 downto 0 led OUT std logic vector 6 downto 0 END deled ARCHITECTURE fun OF deled IS BEGIN led 1111110 when num 0000 else 0110000 when num 0001 else 1101101 when num 0010 else 1111001 when num 0011 else 0110011 when num 0100 else 1011011 when num 0101 else 1011111 when num 0110 else 1110000 when num 0111 else 1111111 when num 1000 else 1111011 when num 1001 else 1110111 when num 1010 else 0011111 when num 1011 else 1001110 when num 1100 else 0111101 when num 1101 else 1001111 when num 1110 else 1000111 when num 1111 END fun Deled 模块是一个简单的电路 它的功能将时 分 秒三个组件中所计的数 编码后 能对应在七段数码管山显示成数字形式 3 3 3 3 5 5 报时模块报时模块 alertalert VHDLVHDL 语言 语言 代码如下 LIBRARY ieee use ieee std logic 1164 all use ieee std logic unsigned all ENTITY alert IS PORT clk INSTD LOGIC dain INSTD LOGIC VECTOR 6 DOWNTO 0 speak OUT STD LOGIC lamp OUT STD LOGIC VECTOR 2 DOWNTO 0 END alert ARCHITECTURE fun OF alert IS signal count std logic vector 1 downto 0 东北石油大学本科生课程设计 论文 15 signal count1 std logic vector 1 downto 0 BEGIN speaker process clk begin speak 10 then count1 00 else count1 count1 1 end if end if end if end process speaker lamper process clk begin if rising edge clk then if count 10 then if count 00 then lamp 001 elsif count 01 then lamp 010 elsif count 10 then lamp 100 end if count count 1 else count 00 end if end if end process lamper END fun 清 0 端 reset 前面一小段 200ns 为低电平 后面均为高电平 设置 min 的值 使其分别为 58 分 59 分 00 分 01 分 02 分 03 分 保存波 形图 进行仿真 产生如下波形 东北石油大学本科生课程设计 论文 16 图 3 4 报时模式信号图 由上述波形可以清楚的看到 alarm 在 0 分时输出高电平 并且持续至 min 不为 0 3 3 3 3 6 6 译码模块译码模块 seltimeseltime VHDLVHDL 语言 语言 代码如下 LIBRARY ieee use ieee std logic 1164 all use ieee std logic unsigned all use ieee std logic arith all ENTITY seltime IS PORT clk1 reset INSTD LOGIC sec min IN STD LOGIC VECTOR 6 downto 0 hour in std logic vector 5 downto 0 daout OUTSTD LOGIC vector 3 downto 0 sel out std logic vector 2 downto 0 END seltime ARCHITECTURE fun OF seltime IS SIGNAL count STD LOGIC vector 2 downto 0 BEGIN sel count process clk1 reset begin if reset 0 then count 101 then count 000 else count daout daout 3 0 daout 2 downto 0 daout daout 3 0 daout 2 downto 0 daout daout 3 downto 2 00 daout 1 downto 0 hour 5 downto 4 end case end process 译码模块时时钟显示的最重要的部件 它的功能时将时 分 秒共六位译码 输出显示在六位的 led 显示器上 它的时钟信号应接到一个高频脉冲信号源上 这样 由于刷新的时间间隔很短 所以 led 显示器才能一直持续的亮着 东北石油大学本科生课程设计 论文 18 第 4 章 数字钟的顶层文件设计 4 1 设计说明 建立数字钟的顶层文件就是将已经设计好的各个功能组件组合调用 连成一 个整体 使整个系统按照设计要求在实际中工作起来 4 2 顶层文件程序 代码如下 library ieee use ieee std logic 1164 all entity clock top is port clk reset setmin sethour clkdsp in std logic speaker out std logic lamp out std logic vector 2 downto 0 sel out std logic vector 2 downto 0 a b c d e f g dp out std logic end clock top architecture a of clock top is second counter COMPONENT second PORT clk reset setmin INSTD LOGIC daout out std logic vector 6 downto 0 enmin OUTSTD LOGIC END COMPONENT minute counter COMPONENT minute PORT clk clk1 reset sethour INSTD LOGIC enhour OUT STD LOGIC daout out std logic vector 6 downto 0 东北石油大学本科生课程设计 论文 19 END COMPONENT hour counter COMPONENT hour PORT clk reset INSTD LOGIC daout out std logic vector 5 downto 0 END COMPONENT COMPONENT alert PORT clk INSTD LOGIC dain in std logic vector 6 downto 0 lamp out std logic vector 2 downto 0 speak OUTSTD LOGIC END COMPONENT COMPONENT seltime PORT clk1 reset IN STD LOGIC sec min in std logic vector 6 downto 0 hour in std logic vector 5 downto 0 daout out std logic vector 3 downto 0 sel OUT STD LOGIC vector 2 downto 0 END COMPONENT COMPONENT deled PORT num IN STD LOGIC vector 3 downto 0 led out std logic vector 6 downto 0 END COMPONENT signal ledout std logic vector 6 downto 0 signal enmin re enhour re std logic signal second daout minute daout std logic vector 6 downto 0 signal hour daout std logic vector 5 downto 0 signal seltime daout std logic vector 3 downto 0 begin a ledout 0 b ledout 1 c ledout 2 d ledout 3 东北石油大学本科生课程设计 论文 20 e ledout 4 f ledout 5 g ledout 6 dpreset clk clk setmin setmin enmin enmin re daout second daout u2 minute port map clk enmin re clk1 clk reset reset sethour sethour enhour enhour re daout minute daout u3 hour port map clk enhour re reset reset daout hour daout u4 alert port map clk clk dain minute daout speak speaker lamp lamp u5 seltime port map clk1 clkdsp reset reset sec second daout min minute daout hour hour daout daout seltime daout sel sel u6 deled port map num seltime daout led ledout end a 东北石油大学本科生课程设计 论文 21 第 5 章 数字钟的测试与运行 5 1 数字钟的调试 在秒计时器的 clk 输入一个周期为 5ns 的时钟信号 清 0 端 reset 前面
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 工业园区环境风险防控体系建设
- 工业大数据在智能制造中的价值
- 20项母婴管理制度
- 5工程审计管理制度
- 柴油购买储存管理制度
- 标示标牌制作管理制度
- 校内餐饮窗口管理制度
- 校园信息平台管理制度
- 校园快递消杀管理制度
- 校园文体场所管理制度
- 《樱桃概述》课件
- 福建福州鼓楼区小学2024-2025学年五下数学期末学业水平测试试题含答案
- DBJT 13-200-2025 福建省桩基础与地下结构防腐蚀技术标准
- 【初中地理】七年级地理下册全册期末总复习(课件)-2024-2025学年七年级地理课件(人教版2024年)
- 2025年全国青少年禁毒知识竞赛题库附答案(共150题)
- 2025年文秘类的考试试题及答案
- 第五单元 第5节 跨学科实践:制作望远镜 教学设计-2024-2025学年人教版物理八年级上册
- 电力输电线路施工安全培训
- 应用型本科高校建设现状的调研报告
- 单位保洁协议合同范本
- 高新技术产品贸易销售合同
评论
0/150
提交评论