已阅读5页,还剩30页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
西安邮电大学 FPGA 课程设计报告课程设计报告 题 目 简易电子琴设计及 FPGA 功能验证 院 系 电子工程学院 专业班级 学生姓名 导师姓名 黄海生 起止时间 2012 6 18 至 2012 6 29 2012 年 6 月 29 日 目录 1 任务 2 2 目的 2 3 使用环境 2 4 FPGA 课程设计详细内容 2 4 1 技术规范 2 4 1 1 总体描述 2 4 1 2 结构框图 2 4 1 3 引脚描述 3 4 1 3 应用范围 5 4 2 设计方案 5 4 2 1 顶层方案设计 5 4 2 2 顶层模块程序 7 4 3 功能验证方案及源程序 7 4 3 1 按键输入控制模块方案设计及源程序 7 4 3 2 控制模块方案设计及源程序 8 4 3 3LCD 驱动模块方案设计及源程序 11 4 4 电路设计及功能仿真报告 19 4 5 综合及布局布线报告和引脚分布报告 21 4 6 硬件测试结果报告 21 5 课程设计的心得体会 22 6 参考资料 22 1 任务 任务 a 设计一个简单电子琴 内置 2 4 首简单音调曲 b 用 FPGA 开发板的按键可选择演奏内置曲调 用数码管显示当前演 奏的哪个演奏曲目或停止 c 要求电子琴具有自主选择 自动播放所选曲目或停止曲目 2 目的 目的 a 在掌握计算机组成原理理论相关的基础上 了解 EDA 技术 掌握 Verilog HDL 硬件描述语言的设计方法和思想 通过学习的 Verilog HDL 语言 结合电子电路的设计知识理论联系实际 掌握所学的课程知识 b 深入学习 Verilog HDL FPGA 了解其编程环境 c 学会运用 Modelsim 和 Quartus II 等编程仿真软件 d 将硬件语言编程与硬件实物功能演示相结合 加深理解 Verilog HDL FPGA 的学习 3 使用环境使用环境 软件软件 硬件环境 设备等硬件环境 设备等 软硬件环境 软件 Quartus II 7 2 Modelsim6 1 硬件环境 DEII 开发板 设备 PC 一台 USB 下载线 FPGA 开发板及电源 在 EDA 软件平台上 根据硬件描述语言 Verilog 完成的设计文件 自动的完成逻辑编译 化简 分割 综合及优化 布局布线 仿真 目标芯片的适配编译 逻辑映射和编程下载等工作 Verilog HDL 语言 用 Modelsim 进行前仿真 以及代码的生成 验证 程序验证 也可进行综合 用 Quartus II 进行后仿真 4 FPGA 课程设计详细内容课程设计详细内容 4 1 技术规范 4 1 1 原理 简易电子琴的设计通过软硬件结合实现 硬件系统包括主控制器芯片 LED 蜂鸣器等 软件资源包括编写 Verilog HDL 程序的应用软件 Modelsim 和 仿真软件 Quartus II 电子琴有自动播放功能 播放功能中有三首曲子 程序共有六个模块 分别为主模块 数码管显示 模块 分频模块 计数器模块 存储器模块 音频输出模块 硬件实现是用一 个数码管显示当前播放的曲目 另外四个按键 key1 key2 用来选择曲目 通过 主模块调用各模块实现电子琴的功能 乐曲演奏的原理 乐曲演奏的原理 乐曲演奏的原理 组成乐曲的每个音符的频率值 音调 以及持续时间 音长 是乐曲能持续演奏所需的两个基本数据 因此只要控制输出到扬声器的激励信 号的频率的高低和持续的时间 就可以使扬声器发出持续的乐曲声 音调的控制 频率的高低决定了音调的高低 音乐的十二平均率规定 每两个八度音 如 简谱中的中音 1 与高音 1 之间的频率相差一倍 在两个八度音之间 又可 分为十二个半音 每半个音的频率比为 另外 音名 A 简谱中的低音 6 的频率为 440HZ 音名 B 到 C 之间 E 到 F 之间为半音 其余为全音 由 此可以计算出简谱中从低音 1 至高音 1 之间的每个音名对应的频率如图所 示 音名频率 HZ 音名频率 HZ 音名频率 HZ 低音 1261 6中音 1523 3高音 11046 5 低音 2293 7中音 2587 3高音 21174 7 低音 3329 6中音 3659 3高音 31318 5 低音 4349 2中音 4698 5高音 41396 9 低音 5392中音 5784高音 51568 低音 6440中音 6880高音 61760 低音 7493 9中音 7987 8高音 71975 5 所有不同频率均从同一基准频率分频得到 将分频数四舍五入进行取整 并 尽量减小误差 在本设计中选取 5MHZ 作为基准频率 从下表中可以看出 最大分频系数为 11468 采用 14 位二进制计数器分频可满足要求 此外还 应给出预置数 对应不同的预置数 只需加载不同的预置数即可 采用加载 预置数实现分频的方法比采用反馈复零法节省资源 实现起来更加容易 音名分频比预置数音名分频比预置数音名分频比预置数 低音 195576826中音 1477711606高音 1238913994 低音 285127871中音 2425712126高音 2212814255 低音 375858798中音 3379212591高音 3189614487 低音 471599224中音 4357912804高音 4179014593 低音 5637810005中音 5318913194高音 5159414789 低音 6568210701中音 6284113524高音 6142014963 低音 7506211321中音 7253113852高音 7126615117 音长的控制 音符的持续时间须根据音乐的速度及每个音符的节拍数来确定 如果设定全音符的持续时 间为 1S 的话 假设产生 4 分音符 则产生四分频即可实现四分音符的时长 并提供 4HZ 分频器 如图为乐曲演奏的原理图 其中 乐谱产生电路用来控制音乐的音调和时长 控 制音调通过设置计数器的预置数来实现 预置不同的数值会可以使计数器产生不同频率的 信号 从而产生不同的音调 控制音长是通过控制计数器预置数的停留时间来实现的 预 置数的停留时间越长 则该音符的演奏时间越长 如 2 分音符 在记谱时将该音符记录两 次即可 4 1 2 总体方案总体方案 本次设计课程的目的是让我们在学习 verilogHDL 的基础上更加深入的了解硬件设计语言的 功能 作用及其特征 并且将我们的动手能力与创新能力结合起来 本次试验的总体框图为 设计框图说明 4 1 3 引脚描述引脚描述 信号名输入 输出目标 源功能描述 CLK Input Pin 主时钟频率 5MHZ 占空比 为 1 1 DIR Input Pin 使能端 控制时钟产生 以及 读写同步 OUT OutputPin输出乐曲信号 方波形式 SCREEN OutputPin数码管显示信号 4 1 4 顶层划分顶层划分 顶层模块说明 1 D 触发器 实现信号读取 产生内部使能端 控制分频器 2 分频器 实现与基准时钟同步操作 读取存储器数据进行分频操作 实 现音调与音长的改变与输出 3 节拍发生器 根据使能端 产生对应的频率产生对应音符时长 4 存储器 实现将预置数传送给分频器 实现曲目的不停音调和音长 5 2 分频器 将产生的信号再次进行 2 分频 注 音名显示控制 音名显示电路用来显示演奏乐曲时对应的音乐曲曲目名 可以用三个数码管 加以显示 本设计中使用 HIGH 3 0 MED 3 0 LOW 3 0 等信号加以显示 为 了能使其循环显示 需要一时长计数器 等音乐演奏完成后 保证自动从头开 始演奏 4 1 5 子模块描述 按键接收器 D 触发器 1 功能描述 运用 D 触发器和数据锁存器实现数据线输出的使能端 2 管脚描述 信号名称输入 输出源目标功能描述 DIR输入Pin按键输入信号 DR输出Pin使能端 3 实现说明 在按键信号产生后 进行信号的锁存和产生使能信号 4 验证方案 正常的信号锁存 和信号转换 是否实现正确使能输出 节拍发生器 分频器 1 功能描述 根据信号的输入 对应产生对应曲目的节拍频率时钟用来读取存储器音调音长 数据 产生不同的预置数 2 管脚描述 信号名称输入 输出源目标功能描述 DIR输入PIN按键输入 CLK输入PIN基准时钟频率 CK输出PIN1 位节拍频率时钟 3 实现说明 在 CLK 的上升沿 将锁存后的 DIR 信号输入到内部 并根据对应时钟节拍 分频 产生对应节拍频率 4 测试 略 分频器 1 功能描述 将基准时钟按照预置数的信息进行分频 且与时钟同步 并当使能端低 电平时 停止输出 也可实现循环播放 2 管脚描述 信号名称输入 输出源目标功能描述 DIR输入PIN使能端 CK输入PIN基准频率 VOICE输入PIN预置数 SPEAK输出PIN乐曲输出 3 实现说明 通过计数器 存储器 D 触发器 实现分频 当计数从预置数到初始值 时 Speaker 翻转一次 即为分频 4 测试 用 modelsim 仿真 观察波形是否为所需方波 存储器 1 功能描述 按照使能端的数据 选择对应的预置数据进行读操作 并且于时钟同步 2 管脚描述 信号名称输入 输出源目标功能描述 DR输入PIN使能端 CLK输入PIN基准频率 VOICE输出PIN读取的预置数 SCREEN输出PIN数码管信号输出 3 实现说明 通过选择 在时钟的上升沿进行数据的读取 并将读出的数据同时传至 数码管 与分频器 4 测试 用 modelsim 仿真 观察预置数的值是否为对应曲目 4 1 6 验证方案 正常情况下 输入一个 DIR 的值 查看波形输出是否正常 改变 DIR 的值 再次查看波形输出是否正常 并且其频率是否满足上述的公式计算出的值 4 1 7 应用范围 简易电子琴可以应用于简单的设计中 亦可应用于娱乐方面 4 2 设计方案设计方案 4 2 1 顶层方案设计顶层方案设计 顶层主要是对各个子模块进行调用与连接 顶层主要调用以下模块 1 按键驱动模块 该模块用于选择所要播放曲目 2 控制模块 该模块用于处理比较所选择的功能 3 数码管显示模块 该模块用于显示用户是否登陆成功 即 LCD 驱动 4 2 2 顶层模块程序顶层模块程序 信号定义与说明 CLK 4HZ 用于控制音长 节拍 的时钟频率 clk 6MHZ 用于产生各种音阶频率的基准频率 speak 用于激励扬声器的输出信号 本例中为方波信号 high med low 分别用于显示高音 中音和低音音符 各驱动一个数码管来显 示 module music clk key1 key0 speak high low decodeout 顶层模块 input clk key1 key0 output speak high low output 6 0 decodeout wire 1 0 dir wire clk key1 key0 wire clk 5MHZ clk 4hz wire speak wire ck dr wire 11 0 voice wire 6 0 decodeout wire high low assign high 1 assign low 0 assign dir key1 key0 clock5mhz mhz clk clk dir dir clk 5MHZ clk 5MHZ clock4hz hz clk 5MHZ clk 5MHZ dir dir ck ck clk 4HZ clk 4HZ D d1 dir dir dr dr DDR ddr1 dir dir ck ck voice voice main m dr dr clk 5MHZ clk 5MHZ clk 4HZ clk 4HZ voice voice speak speak decode dec dir dir decodeout decodeout endmodule 信号定义与说明 CLK 4HZ 用于控制音长 节拍 的时钟频率 clk 6MHZ 用于产生各种音阶频率的基准频率 speak 用于激励扬声器的输出信号 本例中为方波信号 high med low 分别用于显示高音 中音和低音音符 各驱动一个 数码管来显示 module DDR dir ck voice input 1 0 dir input ck output 11 0 voice wire 1 0 dir wire ck wire 11 0 voice reg 7 0 counter reg 3 0 high med low assign voice high med low always posedge ck if dir 2 b00 counter 0 else if dir 2 b01 梁祝 乐曲演奏电路 begin if counter 63 counter 0 else counter counter 1 case counter 0 high med low b1 1 high med low b1 2 high med low b1 3 high med low b1 4 high med low b1 5 high med low b1 6 high med low b1 7 high med low b0 8 high med low b0 9 high med low b0 10 high med low b0 11 high med low b0 12 high med low b0 13 high med low b0 14 high med low b1 15 high med low b1 16 high med low b0 17 high med low b0 18 high med low b0 19 high med low b0 20 high med low b0 21 high med low b0 22 high med low b0 23 high med low b0 24 high med low b0 25 high med low b0 26 high med low b0 27 high med low b0 28 high med low b0 29 high med low b0 30 high med low b0 31 high med low b0 32 high med low b0 33 high med low b0 34 high med low b0 35 high med low b0 36 high med low b1 37 high med low b1 38 high med low b0 39 high med low b0 40 high med low b1 41 high med low b1 42 high med low b1 43 high med low b0 44 high med low b0 45 high med low b0 46 high med low b0 47 high med low b0 48 high med low b1 49 high med low b1 50 high med low b0 51 high med low b0 52 high med low b0 53 high med low b1 54 high med low b0 55 high med low b0 56 high med low b1 57 high med low b1 58 high med low b1 59 high med low b1 60 high med low b1 61 high med low b1 62 high med low b1 63 high med low b1 default high med low b0 endcase end else if dir 2 b10 天空之城 乐曲演奏电路 begin if counter 195 counter 0 else counter counter 1 case counter 0 high med low b0 中 6 1 high med low b0 中 7 2 high med low b0 高 1 3 high med low b0 高 1 4 high med low b0 高 1 5 high med low b0 中 7 6 high med low b0 高 1 7 high med low b0 高 1 8 high med low b0 高 3 9 high med low b0 高 3 10 high med low b0 中 7 11 high med low b0 中 7 12 high med low b0 中 7 13 high med low b0 中 7 14 high med low b0 中 7 15 high med low b0 中 7 16 high med low b0 中 3 17 high med low b0 中 3 18 high med low b0 中 6 19 high med low b0 中 6 20 high med low b0 中 6 21 high med low b0 中 5 22 high med low b0 中 6 23 high med low b0 中 6 24 high med low b1 中 1 25 high med low b1 中 1 26 high med low b0 中 5 27 high med low b0 中 5 28 high med low b0 中 5 29 high med low b0 中 5 30 high med low b0 中 5 31 high med low b0 中 5 32 high med low b0 中 3 33 high med low b0 中 3 34 high med low b0 中 4 35 high med low b0 中 4 36 high med low b0 中 4 37 high med low b0 中 3 38 high med low b0 中 4 39 high med low b0 高 1 40 high med low b0 高 1 41 high med low b0 高 1 42 high med low b0 中 3 43 high med low b0 中 3 44 high med low b0 中 3 45 high med low b0 高 1 46 high med low b0 高 1 47 high med low b0 高 1 48 high med low b0 中 7 49 high med low b0 中 7 50 high med low b0 中 7 51 high med low b0 中 4 52 high med low b0 中 4 53 high med low b0 中 4 54 high med low b0 中 7 55 high med low b0 中 7 56 high med low b0 中 7 57 high med low b0 中 7 58 high med low b0 中 7 59 high med low b0 中 7 60 high med low b0 中 7 61 high med low b0 中 7 62 high med low b0 中 6 63 high med low b0 中 7 64 high med low b0 高 1 65 high med low b0 高 1 66 high med low b0 高 1 67 high med low b0 高 7 68 high med low b0 高 1 69 high med low b0 高 1 70 high med low b0 高 3 71 high med low b0 高 3 72 high med low b0 中 7 73 high med low b0 中 7 74 high med low b0 中 7 75 high med low b0 中 3 76 high med low b0 中 3 77 high med low b0 中 6 78 high med low b0 中 6 79 high med low b0 中 6 80 high med low b1 中 5 81 high med low b0 中 6 82 high med low b0 中 6 83 high med low b1 中 1 84 high med low b1 中 1 85 high med low b0 中 5 86 high med low b0 中 5 87 high med low b0 中 5 88 high med low b0 中 5 89 high med low b0 中 5 90 high med low b0 中 5 91 high med low b0 中 3 92 high med low b0 中 3 93 high med low b0 中 4 94 high med low b0 中 4 95 high med low b0 高 1 96 high med low b0 中 7 97 high med low b0 中 7 98 high med low b0 中 7 99 high med low b0 高 1 100 high med low b0 高 1 101 high med low b0 高 2 102 high med low b0 高 2 103 high med low b0 高 3 104 high med low b0 高 1 105 high med low b0 高 1 106 high med low b0 高 1 107 high med low b0 高 1 108 high med low b0 高 1 109 high med low b0 高 1 110 high med low b0 中 7 111 high med low b0 中 6 112 high med low b0 中 6 113 high med low b0 中 7 114 high med low b0 中 7 115 high med low b0 中 5 116 high med low b0 中 5 117 high med low b0 中 6 118 high med low b0 中 6 119 high med low b0 中 6 120 high med low b0 中 6 121 high med low b0 中 6 122 high med low b0 中 6 123 high med low b1 中 1 124 high med low b1 中 1 125 high med low b0 高 2 126 high med low b0 高 3 127 high med low b0 高 3 128 high med low b0 高 3 129 high med low b0 高 2 130 high med low b0 高 3 131 high med low b0 高 3 132 high med low b0 高 5 133 high med low b0 高 5 134 high med low b0 高 2 135 high med low b0 高 2 136 high med low b0 高 2 137 high med low b0 高 2 138 high med low b0 高 2 139 high med low b0 高 2 140 high med low b0 中 5 141 high med low b0 中 5 142 high med low b0 高 1 143 high med low b0 高 1 144 high med low b0 高 1 145 high med low b0 中 7 146 high med low b0 高 1 147 high med low b0 高 1 148 high med low b0 高 3 149 high med low b0 高 3 150 high med low b0 高 3 151 high med low b0 高 3 152 high med low b0 高 3 153 high med low b0 高 3 154 high med low b0 高 3 155 high med low b0 高 3 156 high med low b0 中 6 157 high med low b0 中 6 158 high med low b0 中 7 159 high med low b0 中 7 160 high med low b0 高 1 161 high med low b0 高 1 162 high med low b0 高 1 163 high med low b0 高 1 164 high med low b0 中 7 165 high med low b0 中 7 166 high med low b0 高 1 167 high med low b0 高 1 168 high med low b0 高 2 169 high med low b0 高 2 170 high med low b0 高 1 171 high med low b0 高 1 172 high med low b0 高 1 173 high med low b0 中 5 174 high med low b0 中 5 175 high med low b0 中 5 176 high med low b0 中 5 177 high med low b0 中 5 178 high med low b0 中 5 179 high med low b0 高 4 180 high med low b0 高 4 181 high med low b0 高 3 182 high med low b0 高 3 183 high med low b0 高 2 184 high med low b0 高 2 185 high med low b0 高 2 186 high med low b0 高 1 187 high med low b0 高 1 188 high med low b0 高 3 189 high med low b0 高 3 190 high med low b0 高 3 191 high med low b0 高 3 192 high med low b0 高 3 193 high med low b0 高 3 194 high med low b0 高 3 195 high med low b0 高 3 default high med low b0 endcase end else if dir 2 b11 康定情歌 乐曲演奏电路 begin if counter 103 counter 0 else counter counter 1 case counter 0 high med low b0 中 3 1 high med low b0 中 3 2 high med low b0 中 5 3 high med low b0 中 5 4 high med low b0 中 6 5 high med low b0 中 6 6 high med low b0 中 6 7 high med low b0 中 5 8 high med low b0 中 6 9 high med low b0 中 6 10 high med low b0 中 6 11 high med low b0 中 3 12 high med low b0 中 2 13 high med low b0 中 2 14 high med low b0 中 2 15 high med low b0 中 2 16 high med low b0 中 3 17 high med low b0 中 3 18 high med low b0 中 5 19 high med low b0 中 5 20 high med low b0 中 6 21 high med low b0 中 6 22 high med low b0 中 6 23 high med low b0 中 5 24 high med low b0 中 6 25 high med low b0 中 6 26 high med low b0 中 3 27 high med low b0 中 3 28 high med low b0 中 3 29 high med low b0 中 3 30 high med low b0 中 3 31 high med low b0 中 3 32 high med low b0 中 3 33 high med low b0 中 3 34 high med low b0 中 5 35 high med low b0 中 5 36 high med low b0 中 6 37 high med low b0 中 6 38 high med low b0 中 6 39 high med low b0 中 5 40 high med low b0 中 6 41 high med low b0 中 6 42 high med low b0 中 6 43 high med low b0 中 3 44 high med low b0 中 2 45 high med low b0 中 2 46 high med low b0 中 2 47 high med low b0 中 2 48 high med low b1 中 5 49 high med low b1 中 5 50 high med low b0 中 3 51 high med low b0 中 3 52 high med low b0 中 2 53 high med low b0 中 3 54 high med low b0 中 2 55 high med low b1 中 1 56 high med low b0 中 2 57 high med low b0 中 2 58 high med low b0 低 6 59 high med low b0 低 6 60 high med low b0 低 6 61 high med low b0 低 6 62 high med low b0 低 6 63 high med low b0 低 6 64 high med low b0 中 6 65 high med low b0 中 6 66 high med low b0 中 2 67 high med low b0 中 2 68 high med low b0 中 2 69 high med low b0 中 2 70 high med low b0 中 2 71 high med low b0 中 2 72 high med low b1 中 5 73 high med low b1 中 5 74 high med low b0 中 3 75 high med low b0 中 3 76 high med low b0 中 3 77 high med low b0 中 3 78 high med low b0 中 3 79 high med low b0 中 3 80 high med low b0 中 2 81 high med low b1 中 1 82 high med low b0 中 6 83 high med low b0 中 6 84 high med low b0 中 6 85 high med low b0 中 6 86 high med low b0 中 6 87 high med low b0 中 6 88 high med low b1 中 5 89 high med low b1 中 5 90 high med low b0 中 3 91 high med low b0 中 3 92 high med low b0 中 2 93 high med low b0 中 3 94 high med low b0 中 2 95 high med low b1 中 1 96 high med low b0 中 2 97 high med low b0 中 2 98 high med low b0 中 6 99 high med low b0 中 6 100 high med low b0 中 6 101 high med low b0 中 6 102 high med low b0 中 6 103 high med low b0 中 6 default high med low b0 endcase end endmodule 节拍发生器模块 注 原始时钟为 50mhz module clock5mhz clk dir clk 5MHZ input clk input 1 0 dir output clk 5MHZ 时钟频率 5MHz wire clk wire 1 0 dir reg clk 5MHZ reg 3 0 cnt always posedge clk begin if dir 2 b00 clk 5MHZ 0 else if cnt 4 b1010 cnt cnt 4 b0001 else begin cnt 4 b0000 clk 5MHZ clk 5MHZ end end endmodule module clock4hz clk 5MHZ dir ck clk 4HZ 时钟频率 4Hz 基于 clock6mhz 分频后的时钟再次分频 input clk 5MHZ input 1 0 dir output clk 4HZ output ck wire clk 5MHZ ck wire 1 0 dir reg clk 4HZ reg 19 0 cnt assign ck clk 4HZ always posedge clk 5MHZ begin if dir 2 b00 clk 4HZ 0 else if cnt 20 b cnt cnt 20 b else begin cnt 20 b0 clk 4HZ clk 4HZ end end endmodule 触发器模块 module D dir dr input 1 0 dir output dr wire dr wire 1 0 dir assign dr dir 0 dir 1 endmodule 数码管显示 module decode dir decodeout input 1 0 dir output 6 0 decodeout reg 6 0 decodeout wire 1 0 dir always dir begin case dir 2 b00 decodeout 7 b 2 b01 decodeout 7 b 2 b10 decodeout 7 b 2 b11 decodeout 7 b default decodeout 7 b endcase end endmodule 分频器模块 module main dr clk 5MHZ clk 4HZ voice speak input dr input clk 5MHZ input 11 0 voice input clk 4HZ output speak wire dr wire clk 5MHZ clk 4HZ wire 11 0 voice reg speak reg 13 0 divider origin wire carry assign carry divider 16383 always posedge clk 5MHZ begin if carry divider origin else divider divider 1 end always posedge carry begin speak speak end always posedge clk 4HZ begin if dr 1 b0 origin 16383 case voice b1 origin 6826 b0 origin 7871 b1 origin 8798 b0 origin 9224 b1 origin 10005 b0 origin 10701 b1 origin 11321 b0 origin 11606 b0 origin 12126 b0 origin 12591 b0 origin 12804 b0 origin 13194 b0 origin 13524 b0 origin 13852 b0 origin 13994 b0 origin 14255 b0 origin 14487 b0 origin 14593 b0 origin 14789 b0 origin 14963 b0 origin 15117 default origin 16383 endcase end endmodule 激励 module epiano tb reg clk50m clk27m rst key1 key2 wire spk out wire 6 0 key display e piano a clk50m clk clk27m clk27m spk out speak rst rst key1 key1 k ey2 key2 key display key display always 10 clk50m clk50m always 20 clk27m clk27m initial begin clk50m 0 clk27m 0 50 rst 0 50 rst 1 1500 key1 0 key2 1 2000 key1 1 key2 1 end endmodule 4 3 功能验证方案及源程序功能验证方案及源程序 计数器模块 module counter fenpin8 cout rst key1 key2 input fenpin8 rst key1 key2 output 10 0 cout reg 10 0 cout always posedge fenpin8 or negedge rst or negedge key1 or negedge key2 begin if rst cout 11 d0 else begin if key1 begin cout 11 d0 end else if key2 begin cout 11 d512 end else if key3 begin cout 11 d1024 end else if key4 begin cout 11 d1536 end else cout cout 1 end end endmodule 分频模块分频模块 module fenpin8 clk27m rst clk 8hz input clk27m rst output clk 8hz reg clk 8hz reg 31 0 cnt parameter N always posedge clk27m or negedge rst begin if rst begin cnt 0 clk 8hz 0 end else begin if cnt N 2 begin cnt 0 clk 8hz clk 8hz end else cnt cnt 1 end end endmodule 激励 module fenpin8 tb reg clk27m rst wire clk 8hz fenpin8 fenpin8 tb clk27m clk27m clk 8hz clk 8hz rst rst always 50 clk27m clk27m initial begin clk27m 0 20 rst 0 80 rst 1 end endmodule module fenpin5m clk50m rst clk 5m input clk50m rst output clk 5m reg clk 5m reg 3 0 cnt parameter N 10 always posedge clk50m or negedge rst begin if rst begin cnt 0 clk 5m 0 end else begin if cnt N 2 begin cnt 0 clk 5mreg temp begin count 0 spk out spk out end else count count 1 end endmodule 激励 module SPK OUT tb reg clk 5m clk 8hz reg 5 0 data wire spk out SPK OUT uaa data data clk 5m clk 5m clk 8hz clk 8hz spk out spk out always 25 clk 5m clk 5m always 3000 clk 8hz clk 8hz initial begin clk 5m 0 clk 8hz 0 3000 data 5 6000 data 7 end endmodule 数码管显示模块数码管显示模块 module shumaguan key1 key2 key display rst input key1 key2 rst output 6 0 key display reg 6 0 key display always negedge rst or negedge key1 or neged
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年人工智能在法律行业的伦理与监管研究
- 一建小白龙课件
- 中国循环经济产业园区行业市场运营态势及未来趋势研判报告
- 中国温度控制装置行业市场规模及未来投资方向研究报告
- 网络危机事件应对机制-洞察与解读
- 公安人员技能培训攻略应急处理篇
- 信用分析师信用分析师培训效果评估
- 2025年大学《碳储科学与工程-碳运输与封存技术》考试模拟试题及答案解析
- 2025年大学《医疗产品管理-医疗产品分类与技术》考试备考题库及答案解析
- 信息化专员工作计划与系统维护方案
- NDIR腔室清洗终点检测仪全球前5强生产商排名及市场份额(by QYResearch)
- 2025年公安民警初级执法资格考试题库及答案
- 2025年卫星移动通信行业分析报告及未来发展趋势预测
- 机械加工电器安全考试试题及答案
- 2025太原迎泽区社区劳动保障协理员和城镇最低生活保障协理员招聘考试参考试题及答案解析
- saas平台合同范本
- 拖拉管施工方案范本图片
- 2025年全国计算机技术与软件专业技术资格水平考试试题及答案
- M9000会议管理系统 操作指导
- 消防设施培训基本知识课件
- 北京市某中学2024-2025学年九年级上学期期中数学试卷(解析版)
评论
0/150
提交评论