




已阅读5页,还剩19页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
聂敏 基于 VHDL 数字时钟的设计与实现 第 1 页 共 24 页 1 引 言随着科学技术的不断发展,人们对时间计量的精度要求越来越高。相对机械钟而言,数字钟能实现准确计时,并显示时,分,秒,而且可以方便,准确的对时间进行调节。在此基础上,还可以实现整点报时的功能。因此,数字钟的应用十分广泛。所谓数字时钟,是指利用电子电路构成的计时器。1.1 课题的背景、目的电子技术是一门应用很广,发展极为迅速的科学技术,尤其由于数字电子技术具有高抗干扰能力、更高的可靠性和便于计算机处理等特点,近年来得到更加迅速的发展,数字通讯设备、数字电视、数字照相机、数字摄象机等数字化产品近年如雨后春笋般大量涌现,数字电子技术已经成为今后电子技术发展的主要方向。现代电子产品几乎渗透了社会的各个领域,有力地推动了社会生产力的发展和社会信息化程度的提高,同时也使现代电子产品性能进一步提高,产品更新换代的节奏也越来越快。钟表的数字化给人们生产生活带来了极大的方便,而且大大地扩展了钟表原先的报时功能。诸如定时自动报警、按时自动打铃、时间程序自动控制、定时广播、定时启闭电路、定时开关烘箱、通断动力设备,甚至各种定时电气的自动启用等,所有这些,都是以钟表数字化为基础的。因此,研究数字钟及扩大其应用,有着非常现实的意义。 通过数字时钟的设计,巩固计算机组成原理课程,理论联系实际,提高分析、解决计算机技术的实际问题的独立工作能力;掌握用 VHDL 语言编制简单的小型模块,学会数字钟的设计方法,熟悉集成电路的使用方法,初步掌握电子钟的设计方法并实现时间的显示和校对,以及报时的功能,并能对数字电子钟进行扩展。数字钟是一种用数字电路技术实现时、分、秒计时的装置,与机械式时钟相比具有更高的准确性和直观性,且无机械装置,具有更更长的使用寿命,因此得到了广泛的使用。1.2 课程设计的内容本课程设计实现一个数字时钟,具有按秒走时功能,能够分别显示小时(2 位 24 小时) 、分钟(2 位) 、秒(2 位) 。具有整点报时、时间调整功能,且能够对计时系统的小时、分钟进行调整。也可设计成十二小时计时方案(AM,PM) 。具有美观、清晰、人性化的显示界面设计,走时精度不劣于3 秒/月。本课程设计采用 VHDL 语言,以MAXPLUSII 开发工具。根据系统设计的要求,系统设计采用自顶向下的设计方法,可以聂敏 基于 VHDL 数字时钟的设计与实现 第 2 页 共 24 页 将该系统中的各功能模块细分为:秒计数模块、分计数模块、小时计数模块、报警模块、时间设置模块和译码显示模块六个部分。聂敏 基于 VHDL 数字时钟的设计与实现 第 3 页 共 24 页 2 EDA、VHDL 简介2.1 EDA 简介现代电子设计技术的核心就是 EDA(Electronic Design Automatic)技术。利用 EDA技术,电子设计师可以方便地实现 IC 设计、电子电路设计和 PCB 设计等工作。EDA 技术已有 30 年的发展历程。现在 EDA 技术应用广泛,包括在机械、电子、通信、航空航天、化工等各个领域,都有 EDA 的应用。无论是在产品设计、制造方面,还是在科研与教学方面,EDA 已成为必不可少的一部分。掌握 EDA 技术已成为通信电子类专业的学生学习及就业的基本素质。2.1.1 EDA 技术的概念 EDA 技术是在电子 CAD 技术基础上发展起来的通用软件系统,是指以计算机为工作平台,融合了应用电子技术、计算机技术、信息处理及智能化技术的最新成果,进行电子产品的自动设计。 EDA 设计可分为系统级、电路级和物理实现级。物理级设计主要指 IC 版图设计,一般由半导体厂家完成;系统级设计主要面对大型复杂的电子产品;而一般民用及教学所涉及基本是电路级设计。我们常用的 EDA 软件多属于电路级设计。 电路级设计工作,是在电子工程师接受系统设计任务后,首先确定设计方案,并选择合适的元器件,然后根据具体的元器件设计电路原理图,接着进行第一次仿真。其中包括数字电路的逻辑模拟、故障分析、模拟电路的交直流分析、瞬态分析等。这一次仿真主要是检验设计方案在功能方面的正确性。仿真通过后,根据原理图产生的电气连接网络表进行 PCB 板的自动布局布线,有条件的还可以进行 PCB 后分析。其中包括热分析、噪声及窜扰分析、电磁兼容分析、可靠性分析等,并可将分析后的结果参数反馈回电路图,进行第二次仿真,也称作后仿真。后仿真主要是检验 PCB 板在实际工作环境中的可行性。2.1.2 EDA 技术的历史与发展 EDA 技术发展历程大致可分为三个阶段。20 世纪 70 年代为计算机辅助设计(CAD)阶段,人们开始用计算机取代手工操作进行 IC 版图编辑、PCB 布局布线。80 年代为计算机辅助工程(CAE) 阶段。与 CAD 相比,CAE 除了有纯粹的图形绘制功能外,又增加了电路功能分析和结构设计,并且通过电气连接网络表将两者结合在一起,实现了工程设计。聂敏 基于 VHDL 数字时钟的设计与实现 第 4 页 共 24 页 20 世纪 90 年代为电子系统设计自动化(EDA) 阶段,同时又出现了计算机辅助工艺(CAPP ) 、计算机辅助制造(CAM)等。 2.1.3 EDA 的应用 现在 EDA 技术应用广泛,包括在机械、电子、通信、航空航天、化工、矿产、生物、医学、军事等各个领域,都有 EDA 的应用。目前 EDA 技术已在各大公司、科研和教学部门广泛使用。 在产品设计与制造方面,EDA 技术可实现前期的计算机仿真、系统级模拟及测试环境的仿真、PCB 的制作、电路板的焊接、ASIC 的设计等。 在教学方面,我国高校是从九十年代中期开始 EDA 教育的,现在几乎所有理工科类高校都开设了 EDA 课程。这些课程主要是让学生了解 EDA 的基本概念和原理,使用EDA 软件进行电子电路课程的实验及从事简单系统的设计。 2.1.4 EDA 常用软件 EDA 工具层出不穷,目前进入我国并具有广泛影响的 EDA 软件有:EWB、PSpice、OrCAD 、PCAD、Protel、Viewlogic、Mentor、Graphics、Synopsys、LSIlogic、Cadence 等等。这些工具都有较强的功能,一般可用于几个方面,例如很多软件都可以进行电路设计与仿真,同时也可以进行 PCB 自动布局布线,可输出多种网表文件与第三方软件接口。下面按主要功能或主要应用场合进行划分。 1. 电子电路设计与仿真工具 电子电路设计与仿真工具包括 PSpice、EWB、 Matlab、SystemView 、MMICAD 等。下面简单介绍前两种软件。 (1)PSpice:基于 Spice 的 PC 版软件。Spice(Simulation Program with Integrated Circuit Emphasis)是由美国加州大学推出的电路分析仿真软件,是 20 世纪 80 年代世界上应用最广的电路设计软件,1988 年被定为美国国家标准。1984 年,美国 MicroSim 公司推出了PSpice。PSpice 是一种强大的模拟和数字电路混合信号仿真软件,包括对中规模集成电路(MSI)和大规模集成电路(LSI)提供多种分析功能,而且仿真精度高,在国内普遍使用。 (2)EWB(Electronic Workbench) 软件:Interactive ImageTechnologies Ltd 在 20 世纪 90 年代初推出的电路仿真软件,主要用于模拟和数字电路的仿真。高版本已更名为 Multisim。相对于其它 EDA 软件,它提供了万用表、示波器、信号发生器等虚拟仪器。该软件的界面直观,易学易用。它的很多功能模仿了 Spice 的设计,分析功能也较强。 2. PCB 设计软件 聂敏 基于 VHDL 数字时钟的设计与实现 第 5 页 共 24 页 PCB(PrintedCircuit Board)设计软件种类很多,如Protel、OrCAD、PowerPCB 、Cadence PSD 、MentorGraphices 的 Expedition PCB、Winboard/Windraft/IvexSPICE 、PCB Studio 等等。目前在我国使用最普遍的应属Protel。 Protel 是 PROTEL(现更名为 Altium)公司在 20 世纪 80 年代末推出的 CAD 工具。它较早在国内使用,普及率很高。早期的 Protel 主要作为印刷板自动布线工具使用,现在普遍使用的是 Protel 99 SE。它是个完整的全方位电路设计系统,包含了电原理图绘制、模拟电路与数字电路混合信号仿真、多层印刷电路板设计,可编程逻辑器件设计等功能,并具有 Client/Server 体系结构,同时还兼容一些其它设计软件的文件格式。Protel 软件功能强大、界面友好、使用方便。它最具代表性的是电路设计和 PCB 设计。 3. IC 设计软件 IC 设计工具很多,其中按市场所占份额排行为 Cadence、Mentor Graphics 和Synopsys。这三家都是 ASIC 设计领域相当有名的软件供应商。其它公司的软件相对来说使用者较少。 4. 其它 EDA 软件 (1)VHDL 语言:超高速集成电路硬件描述语言(Vhsic Hardware Deseription Languagt,简称 VHDL) ,是 IEEE 的一项标准设计语言。它源于美国国防部提出的超高速集成电路(Very High Speed Integrated Circuit,简称 VHSIC)计划,是 ASIC 设计和 PLD设计的一种主要输入工具。 (2)Veriolg HDL:Verilog 公司推出的硬件描述语言,在 ASIC 设计方面与 VHDL 语言平分秋色。2.2 VHDL 介绍VHDL 的 英 文 全 名 是 Very-High-Speed Integrated Circuit HardwareDescription Language, 诞 生 于 1982 年 。 1987 年 底 , VHDL 被 IEEE 和 美 国 国 防 部 确 认 为 标 准 硬件 描 述 语 言 。 自 IEEE 公 布 了 VHDL 的 标 准 版 本 , IEEE-1076( 简 称 87 版 )之 后 ,各 EDA 公 司 相 继 推 出 了 自 己 的 VHDL 设 计 环 境 , 或 宣 布 自 己 的 设 计 工 具 可 以 和VHDL 接 口 。 此 后 VHDL 在 电 子 设 计 领 域 得 到 了 广 泛 的 接 受 , 并 逐 步 取 代 了 原 有 的 非标 准 的 硬 件 描 述 语 言 。 1993 年 , IEEE 对 VHDL 进 行 了 修 订 , 从 更 高 的 抽 象 层 次 和 系统 描 述 能 力 上 扩 展 VHDL 的 内 容 , 公 布 了 新 版 本 的 VHDL, 即 IEEE 标 准 的 1076-1993 版 本 , ( 简 称 93 版 ) 。 现 在 , VHDL 和 Verilog 作 为 IEEE 的 工 业 标 准 硬 件 描聂敏 基于 VHDL 数字时钟的设计与实现 第 6 页 共 24 页 述 语 言 , 又 得 到 众 多 EDA 公 司 的 支 持 , 在 电 子 工 程 领 域 , 已 成 为 事 实 上 的 通 用 硬 件描 述 语 言 。 有 专 家 认 为 , 在 新 的 世 纪 中 , VHDL 于 Verilog 语 言 将 承 担 起 大 部 分 的 数字 系 统 设 计 任 务 。 VHDL 语 言 是 一 种 用 于 电 路 设 计 的 高 级 语 言 。 它 在 80 年 代 的 后 期 出 现 。 最 初 是由 美 国 国 防 部 开 发 出 来 供 美 军 用 来 提 高 设 计 的 可 靠 性 和 缩 减 开 发 周 期 的 一 种 使 用 范 围较 小 的 设 计 语 言 。VHDL 的 英 文 全 写 是 : VHSIC( Very High Speed Integrated Circuit) Hardware Descriptiong Language.翻 译 成 中 文 就 是 超 高 速 集 成 电 路 硬 件 描 述 语 言 。 因 此 它 的 应 用主 要 是 应 用 在 数 字 电 路 的 设 计 中 。 目 前 , 它 在 中 国 的 应 用 多 数 是 用 在 FPGA/CPLD/EPLD的 设 计 中 。 当 然 在 一 些 实 力 较 为 雄 厚 的 单 位 , 它 也 被 用 来 设 计 ASIC。VHDL 主 要 用 于 描 述 数 字 系 统 的 结 构 , 行 为 , 功 能 和 接 口 。 除 了 含 有 许 多 具 有 硬件 特 征 的 语 句 外 , VHDL 的 语 言 形 式 和 描 述 风 格 与 句 法 是 十 分 类 似 于 一 般 的 计 算 机 高级 语 言 。 VHDL 的 程 序 结 构 特 点 是 将 一 项 工 程 设 计 , 或 称 设 计 实 体 ( 可 以 是 一 个 元 件 ,一 个 电 路 模 块 或 一 个 系 统 ) 分 成 外 部 ( 或 称 可 是 部 分 ,及 端 口 )和 内 部 ( 或 称 不 可 视 部分 ) , 既 涉 及 实 体 的 内 部 功 能 和 算 法 完 成 部 分 。 在 对 一 个 设 计 实 体 定 义 了 外 部 界 面 后 ,一 旦 其 内 部 开 发 完 成 后 , 其 他 的 设 计 就 可 以 直 接 调 用 这 个 实 体 。 这 种 将 设 计 实 体 分 成内 外 部 分 的 概 念 是 VHDL 系 统 设 计 的 基 本 点 。 与 其 他 硬 件 描 述 语 言 相 比 , VHDL 具 有 以 下 特 点 :功 能 强 大 、 设 计 灵 活 。 VHDL 具 有 功 能 强 大 的 语 言 结 构 , 可 以 用 简 洁 明 确 的 源 代码 来 描 述 复 杂 的 逻 辑 控 制 。 它 具 有 多 层 次 的 设 计 描 述 功 能 , 层 层 细 化 , 最 后 可 直 接 生成 电 路 级 描 述 。 VHDL 支 持 同 步 电 路 、 异 步 电 路 和 随 机 电 路 的 设 计 , 这 是 其 他 硬 件 描述 语 言 虽 不 能 比 拟 的 。 VHDL 还 支 持 各 种 设 计 方 法 , 既 支 持 自 底 向 上 的 设 计 , 又 支 持自 顶 向 下 的 设 计 ; 既 支 持 模 块 化 设 计 , 又 支 持 层 次 化 设 计 。支 持 广 泛 、 易 于 修 改 。 由 于 VHDL 已 经 成 为 IEEE 标 准 所 规 范 的 硬 件 描 述 语 言 ,目 前 大 多 数 EDA 工 具 几 乎 都 支 持 VHDL, 这 为 VHDL 的 进 一 步 推 广 和 广 泛 应 用 奠 定了 基 础 。 在 硬 件 电 路 设 计 过 程 中 , 主 要 的 设 计 文 件 是 用 VHDL 编 写 的 源 代 码 , 因 为VHDL 易 读 和 结 构 化 , 所 以 易 于 修 改 设 计 。强 大 的 系 统 硬 件 描 述 能 力 。 VHDL 具 有 多 层 次 的 设 计 描 述 功 能 , 既 可 以 描 述 系 统级 电 路 , 又 可 以 描 述 门 级 电 路 。 而 描 述 既 可 以 采 用 行 为 描 述 、 寄 存 器 传 输 描 述 或 结 构描 述 , 也 可 以 采 用 三 者 混 合 的 混 合 级 描 述 。 另 外 , VHDL 支 持 惯 性 延 迟 和 传 输 延 迟 ,聂敏 基于 VHDL 数字时钟的设计与实现 第 7 页 共 24 页 还 可 以 准 确 地 建 立 硬 件 电 路 模 型 。 VHDL 支 持 预 定 义 的 和 自 定 义 的 数 据 类 型 , 给 硬 件描 述 带 来 较 大 的 自 由 度 , 使 设 计 人 员 能 够 方 便 地 创 建 高 层 次 的 系 统 模 型 。独 立 于 器 件 的 设 计 与 工 艺 无 关 。 设 计 人 员 用 VHDL 进 行 设 计 时 , 不 需 要 首 先 考虑 选 择 完 成 设 计 的 器 件 , 就 可 以 集 中 精 力 进 行 设 计 的 优 化 。 当 设 计 描 述 完 成 后 , 可 以用 多 种 不 同 的 器 件 结 构 来 实 现 其 功 能 。很 强 的 移 植 能 力 。 VHDL 是 一 种 标 准 化 的 硬 件 描 述 语 言 , 同 一 个 设 计 描 述 可 以 被不 同 的 工 具 所 支 持 , 使 得 设 计 描 述 的 移 植 成 为 可 能 。易 于 共 享 和 复 用 。 VHDL 采 用 基 于 库 ( Library) 的 设 计 方 法 , 可 以 建 立 各 种 可 再次 利 用 的 模 块 。 这 些 模 块 可 以 预 先 设 计 或 使 用 以 前 设 计 中 的 存 档 模 块 , 将 这 些 模 块 存放 到 库 中 , 就 可 以 在 以 后 的 设 计 中 进 行 复 用 , 可 以 使 设 计 成 果 在 设 计 人 员 之 间 进 行 交流 和 共 享 , 减 少 硬 件 电 路 设 计 。( 1) 与 其 他 的 硬 件 描 述 语 言 相 比 , VHDL 具 有 更 强 的 行 为 描 述 能 力 , 从 而 决 定 了 他成 为 系 统 设 计 领 域 最 佳 的 硬 件 描 述 语 言 。 强 大 的 行 为 描 述 能 力 是 避 开 具 体 的 器 件 结 构 ,从 逻 辑 行 为 上 描 述 和 设 计 大 规 模 电 子 系 统 的 重 要 保 证 。( 2) VHDL 丰 富 的 仿 真 语 句 和 库 函 数 , 使 得 在 任 何 大 系 统 的 设 计 早 期 就 能 查 验 设 计 系统 的 功 能 可 行 性 , 随 时 可 对 设 计 进 行 仿 真 模 拟 。( 3) VHDL 语 句 的 行 为 描 述 能 力 和 程 序 结 构 决 定 了 他 具 有 支 持 大 规 模 设 计 的 分 解 和 已有 设 计 的 再 利 用 功 能 。 符 合 市 场 需 求 的 大 规 模 系 统 高 效 , 高 速 的 完 成 必 须 有 多 人 甚 至多 个 代 发 组 共 同 并 行 工 作 才 能 实 现 。( 4) 对 于 用 VHDL 完 成 的 一 个 确 定 的 设 计 , 可 以 利 用 EDA 工 具 进 行 逻 辑 综 合 和 优化 , 并 自 动 的 把 VHDL 描 述 设 计 转 变 成 门 级 网 表 。( 5) VHDL 对 设 计 的 描 述 具 有 相 对 独 立 性 , 设 计 者 可 以 不 懂 硬 件 的 结 构 , 也 不 必 管 理最 终 设 计 实 现 的 目 标 器 件 是 什 么 , 而 进 行 独 立 的 设 计 。聂敏 基于 VHDL 数字时钟的设计与实现 第 8 页 共 24 页 3 数字时钟设计过程3.1 设计规划根据系统设计的要求,系统设计采用自顶向下的设计方法,可以将该系统中的各功能模块细分为:秒计数模块、分计数模块、小时计数模块、报警模块、时间设置模块和译码显示模块六个部分。先使用 VHDL 语言设计编译将这每个模块制作成图元,然后再使用图形编辑器进行总体的整合,系统的整体组装设计草图如图 3.1 所示。秒计数器模块分计数器模块时计数器模块 译码显示 模块时间调整模块报警模块7 段数码管显示喇叭系统时钟基本功能 扩展功能 外部设备秒高位 进位分高位 进位图 3.1 系统总体设计草图3.2 各模块原理及程序现在就先对本系统中最基本的三项内容设计进行阐述:3.2.1 秒计数模块的 VHDL 程序(MIAO.VHD)秒计数模块中是以 60 进制进行循环的,故需要的秒数据输出应该是 7 位的(其中低4 位用于秒的低位,而高 3 位在作为秒的高位) 。另外在该模块下的程序由于考虑到系统功能中调整时钟和分钟的要求,故要在秒计数模块中另外加入复位信号以及分钟设置信号。以下是该模块的 VHDL 源程序。LIBRARY IEEE ;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY MIAO IS 聂敏 基于 VHDL 数字时钟的设计与实现 第 9 页 共 24 页 PORT (CLK: IN STD_LOGIC;-系统时钟信号RESET: IN STD_LOGIC; -系统复位信号SETMIN: IN STD_LOGIC; -分设置信号 ENMIN: OUT STD_LOGIC;-分计数时钟信号MOUT: OUT STD_LOGIC_VECTOR(6 DOWNTO 0); -秒计数值END ENTITY MIAO;ARCHITECTURE ART OF SECOND IS SIGNAL COUNT :STD_LOGIC_VECTOR(6 DOWNTO 0);-7 位计数器SIGNAL ENMIN_1,ENMIN_2 :STD_LOGIC ;-前者是整秒进位,后者是调节分钟的信号BEGIN MOUT=COUNT;-将计数器的值直接赋给秒计数ENMIN_2=(SETMIN AND CLK);-ENMIN_2 的内容是分设置信号和系统时钟信号的“与”运算ENMIN=(ENMIN_1 OR ENMIN_2);-ENMIN 的内容是整秒进位和调节分钟信号的 “或”运算PROCESS(CLK,RESET,SETMIN)BEGINIF (RESET=0) THEN-初始化,即系统复位信号的功能 COUNT=“0000000“;ENMIN_1=0; -将整秒的进位置零ELSIF(CLKEVENT AND CLK=1) THEN IF(COUNT(3 DOWNTO 0)=“1001“)
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 外卖市场部培训
- 弘扬雷锋精神培育道德情操 - 学习雷锋好榜样主题班会课件
- 地球上的水:浙教版科学专题解析
- 工程地质-地质力学及工程地质分析课件讲解
- 基于现代管理会计环境下企业内控体系优化的思考
- 小学剥玉米粒课件
- 航空器维护人员的成长之路试题及答案
- 2025年BOD自动在线监测仪项目建议书
- 2025年氰化物中毒解毒药项目发展计划
- 2025年精密过滤输液器项目合作计划书
- PLC在建筑物自动化和智能化中的应用
- 第11课《及时治小伤》教学设计
- 数据分析与评价控制程序
- 神经外科轮转出科小结护士
- 体育运动中的功能性训练
- 足浴店消防管理制度
- AI赋能光伏电站视频监控系统解决方案
- 【我的祖国诗朗诵稿董卿】我的祖国诗朗诵稿
- 外墙 吊绳滑板油漆安全施工方案
- 供应商绩效评估表绩效管理
- 麦克维尔冷水机组使用说明书
评论
0/150
提交评论