1、数 字 时 钟 的 设 计摘 要 : 在 这 快 速 发 展 的 年 代 , 时 间 对 人 们 来 说 是 越 来 越 宝 贵 , 在 快 节 奏 的 生 活 时 , 人 们 往 往 忘 记 了 时 间 ,一 旦 遇 到 重 要 的 事 情 而 忘 记 了 时 间 , 这 将 会 带 来 很 大 的 损 失 。 因 此 我 们 需 要 一 个 定 时 系 统 来 提 醒 这 些 忙 碌 的人 。 数 字 化 的 钟 表 给 人 们 带 来 了 极 大 的 方 便 。 近 些 年 , 随 着 科 技 的 发 展 和 社 会 的 进 步 , 人 们 对 数 字 钟 的 要 求也 越 来 越 高
2、, 传 统 的 时 钟 已 不 能 满 足 人 们 的 需 求 。 本 设 计 主 要 研 究 基 于 FPGA的 数 字 钟 , 要 求 时 间 以 24小 时 为 一个 周 期 ,显 示 时 、 分 、 秒 。关 键 字 : 数 字 时 钟 , EDA, FPGA, VHDL, Max_Plus_II引 言本 设 计 采 用 的 VHDL是 一 种 全 方 位 的 硬 件 描 述 语 言 , 具 有 极 强 的 描 述 能 力 , 能 支 持 系 统 行 为 级 、 寄 存 器 传输 级 和 逻 辑 门 级 三 个 不 同 层 次 的 设 计 ; 支 持 结 构 、 数 据 流 、 行 为
3、 三 种 描 述 形 式 的 混 合 描 述 、 覆 盖 面 广 、 抽 象能 力 强 , 因 此 在 实 际 应 用 中 越 来 越 广 泛 。 ASIC是 专 用 的 系 统 集 成 电 路 , 是 一 种 带 有 逻 辑 处 理 的 加 速 处 理 器 。 而FPGA是 特 殊 的 ASIC芯 片 , 与 其 他 的 ASIC芯 片 相 比 , 它 具 有 设 计 开 发 周 期 短 、 设 计 制 造 成 本 低 、 开 发 工 具 先 进 、标 准 产 品 无 需 测 试 、 质 量 稳 定 以 及 可 实 时 在 线 检 测 等 优 点 。钟 表 的 数 字 化 给 人 们 生 产
4、 生 活 带 来 了 极 大 的 方 便 , 而 且 大 大 地 扩 展 了 钟 表 原 先 的 报 时 功 能 。 诸 如 定 时 自动 报 警 、 定 时 启 闭 电 路 、 定 时 开 关 烘 箱 、 通 断 动 力 设 备 , 甚 至 各 种 定 时 电 气 的 自 动 启 用 等 , 所 有这 些 , 都 是 以钟 表 数 字 化 为 基 础 的 。 因 此 , 研 究 数 字 钟 及 扩 大 其 应 用 , 有 着 非 常 现 实 的 意 义 。1. 课 题 相 关 技 术 的 发 展当 今 电 子 产 品 正 向 功 能 多 元 化 ,体 积 最 小 化 ,功 耗 最 低 化 的
5、 方 向 发 展 。 它 与 传 统 的 电 子 产 品 在 设 计 上 的 显 著 区别 师 大 量 使 用 大 规 模 可 编 程 逻 辑 器 件 , 使 产 品 的 性 能 提 高 , 体 积 缩 小 , 功 耗 降 低 .同 时 广 泛 运 用 现 代 计 算 机 技 术 ,提 高 产 品 的 自 动 化 程 度 和 竞 争 力 , 缩 短 研 发 周 期 。 EDA 技 术 正 是 为 了 适 应 现 代 电 子 技 术 的 要 求 , 吸 收 众 多 学 科最 新 科 技 成 果 而 形 成 的 一 门 新 技 术 。美 国 ALTERA 公 司 的 可 编 程 逻 辑 器 件 采
6、 用 全 新 的 结 构 和 先 进 的 技 术 , 加 上 MaxplusII(或 最 新 的 QUARTUS)开 发 环 境 , 更 具 有 高 性 能 , 开 发 周 期 短 等 特 点 , 十 分 方 便 进 行 电 子 产 品 的 开 发 和 设 计 。EDA 技 术 , 技 术 以 大 规 模 可 编 程 逻 辑 器 件 为 设 计 载 体 , 以 硬 件 描 述 语 言 为 系 统 逻 辑 描 述 主 要 表 达 方 式 ,以 计 算 机 、 大 规 模 可 编 程 逻 辑 器 件 的 开 发 软 件 及 实 验 开 发 系 统 为 设 计 工 具 , 通 过 有 关 的 开 发
7、 软 件 , 自 动 完 成用 软 件 的 方 式 设 计 的 电 子 系 统 到 硬 件 系 统 的 逻 辑 编 译 , 逻 辑 化 简 , 逻 辑 分 割 , 逻 辑 映 射 , 编 程 下 载 等 工 作 。最 终 形 成 集 成 电 子 系 统 或 专 用 集 成 芯 片 的 一 门 新 技 术 。本 设 计 利 用 VHDL 硬 件 描 述 语 言 结 合 可 编 程 逻 辑 器 件 进 行 的 , 并 通 过 数 码 管 动 态 显 示 计 时 结 果 。 数 字 钟可 以 由 各 种 技 术 实 现 , 如 单 片 机 等 .利 用 可 编 程 逻 辑 器 件 具 有 其 他 方
8、 式 没 有 的 特 点 , 它 具 有 易 学 , 方 便 , 新 颖 ,有 趣 , 直 观 , 设 计 与 实 验 项 目 成 功 率 高 , 理 论 与 实 践 结 合 紧 密 , 体 积 小 , 容 量 大 ,I/O 口 丰 富 , 易 编 程 和 加 密 等特 点 , 并 且 它 还 具 有 开 放 的 界 面 , 丰 富 的 设 计 库 , 模 块 化 的 工 具 以 及 LPM 定 制 等 优 良 性 能 , 应 用 非 常 方 便 。 因此 , 本 设 计 采 用 可 编 程 逻 辑 器 件 实 现 。本 设 计 主 要 研 究 基 于 FPGA 的 数 字 钟 , 要 求 时
9、 间 以 24 小 时 为 一 个 周 期 ,显 示 年 、 月 、 日 、 时 、 分 、 秒 。 具有 校 时 以 及 报 时 功 能 , 可 以 对 年 、 月 、 日 、 时 、 分 及 秒 进 行 单 独 校 对 , 使 其 校 正 到 标 准 时 间 。2. 数 字 钟 整 体 设 计 方 案2.1 数 字 钟 的 功 能1) 以 24 小 时 制 显 示 时 、 分 、 秒 计 数 ;2) 时 间 清 零 , 时 设 置 , 分 设 置 功 能 ;3) 整 点 报 时 功 能 。2.2 引 脚 说 明 以 及 设 计 方 案clk 为 秒 脉 冲 输 入 端 , 由 晶 振 与
10、分 频 计 数 器 ( CD4060) 组 成 的 脉 冲 发 生 电 路 提 供 频 率 为 1Hz 的 秒 脉 冲 输 入信 号 ; smclk 为 动 态 扫 描 控 制 模 块 的 输 入 端 , 由 脉 冲 发 生 电 路 输 入 频 率 约 1kHz 的 脉 冲 信 号 ; hourset、 minset和 reset 分 别 为 时 设 置 、 分 设 置 和 时 间 清 零 输 入 端 , 连 接 按 钮 开 关 ; a、 b、 c、 d、 e、 f、 g、 dp 为 显 示 段 码 输 出 ,接 数 码 管 的 段 码 输 入 ( led7s6-len7s0) ; sel0、
11、 sel1、 sel2 接 SN74LS138N 译 码 器 的 输 入 端 。3. 可 编 程 逻 辑 器 件 FPGA 的 顶 层 设 计用 顶 层 设 计 采 用 原 理 图 输 入 设 计 、 底 层 设 计 采 用 VHDL 设 计 的 原 理 图 与 VHDL 混 合 设 计 方 法 设 计 带 整 点 报时 功 能 的 数 字 钟 , 所 以 此 设 计 可 分 为 顶 层 与 底 层 设 计 , 共 分 为 六 个 模 块 , 即 时 模 块 、 分 模 块 、 秒 模 块 、 动 态扫 描 控 制 模 块 、 段 码 译 码 模 块 和 整 点 报 时 模 块 。秒 模 块
12、主 体 为 60 进 制 的 计 数 器 , daout 为 向 动 态 扫 描 控 制 模 块 提 供 秒 的 个 位 和 十 位 数 据 的 信 号 。 reset 为秒 清 零 ; enmin 为 分 钟 进 位 , 每 60 秒 产 生 一 个 高 电 平 的 信 号 , 作 为 分 模 块 的 时 钟 输 入 ; clk 为 秒 模 块 的 时 钟 输入 , 接 1Hz 脉 冲 信 号 ; min_set 为 分 钟 设 置 , 低 电 平 是 不 影 响 秒 模 块 工 作 , 当 它 为 高 电 平 时 , enmin 信 号 会 随 之产 生 一 个 和 clk 频 率 相 同
13、 的 信 号 , 达 到 调 整 分 钟 的 目 的 。分 模 块 主 体 为 60 进 制 的 计 数 器 , daout 为 向 动 态 扫 描 控 制 模 块 提 供 分 的 个 位 和 十 位 数 据 的 信 号 。 Enhour 为分 钟 进 位 , 每 60 分 产 生 一 个 高 电 平 的 信 号 , 作 为 时 模 块 的 时 钟 输 入 ; 秒 计 数 到 60 时 的 进 位 输 出 信 号 enhour1 和分 钟 调 整 输 入 信 号 minset, 经 或 关 系 后 接 分 的 脉 冲 输 入 端 clk; clk1 为 时 调 整 脉 冲 , 接 1Hz 脉
14、冲 ; hour_set为 时 钟 设 置 , 低 电 平 是 不 影 响 分 模 块 工 作 , 当 它 为 高 电 平 时 , enmin 信 号 会 随 之 产 生 一 个 和 clk 频 率 相 同 的 信 号 ,达 到 调 整 时 的 目 的 。时 模 块 为 一 个 24 进 制 的 计 数 器 , daout 为 向 动 态 扫 描 控 制 模 块 提 供 秒 的 个 位 和 十 位 数 据 的 信 号 。 分 计 数 到60 时 的 进 位 输 出 信 号 enhour1 和 时 调 整 输 入 信 号 hourset, 经 或 关 系 后 接 时 脉 冲 输 入 端 clk。
15、 daout 为 向 动 态 扫描 控 制 模 块 提 供 时 的 个 位 和 十 位 数 据 的 信 号 。动 态 扫 描 模 块 中 smclk 为 动 态 扫 描 控 制 模 块 的 脉 冲 输 入 , 由 外 部 脉 冲 发 生 电 路 提 供 , 频 率 约 为1kHz; sel0、 sel1、 sel2 接 外 部 3 8 译 码 器 74LS138 的 输 入 端 A、 B、 C; sec6.0、 min6.0、 hour5.0分 别 为 秒 模 块 、 分 模 块 、 时 模 块 计 数 段 码 输 出 控 制 信 号 。 该 模 块 实 现 时 间 的 动 态 扫 描 显 示
16、 控 制 。整 点 报 时 模 块 用 于 产 生 整 点 时 的 LED 发 光 二 极 管 彩 灯 和 报 时 输 出 。 整 点 声 音 报 时 输 出 信 号 speak 接 蜂 鸣 器 输 入 ,信 号 lamp2.0控 制 整 点 时 产 生 60 秒 的 LED 发 光 二 极 管 彩 灯 闪 烁 报 时 输 出 信 号 。图 2-1 顶 层 电 路 设 计 原 理 图4.数 字 时 钟 的 底 层 模 块 设 计4.1 秒 模 块 设 计图 3-1 秒 模 块 顶 层 设 计 原 理 图4.1.1 秒 模 块 VHDL 程 序library ieee;use ieee.std_
17、logic_1164.all;use ieee.std_logic_unsigned.all; entity sec isport(clk,reset,min_set:in std_logic;-clk 为 1Hz 的 秒 脉 冲 输 入 信 号 , reset 为 秒 清 零 ( 复 位 ) 信 号-min_set 为 分 钟 调 整 enmin:out std_logic; -enmin 为 秒 模 块 进 位 输 出daout:out std_logic_vector(6 downto 0); -2n-1 60, n=7, 27=64, 分 钟 用 7 位 二 进 制 数 表 示-dao
18、ut( 6.4) 为 十 位 , daout( 3.0) 为 个 位 , 60 循 环 计 数end entity sec;architecture behave of sec is signal count:std_logic_vector(6 downto 0); -定 义 内 部 计 数 节 点 , 60 循 环 计 数 signal enmin1,enmin2:std_logic; -enmin 为 60 秒 产 生 的 进 位 , enmin2 为 调 分 键 产 生 的 向 分 模 块 的 进 位begindaout=“101“)then countdaoutdaout(3)daoutdaout(3)daoutdaout(3 downto 2)led7sled7sled7sled7sled7sled7sled7sled7sled7sled7snull;end case;end process;end behave;