乐曲演奏电路设计-正文.doc

上传人:wux****ua 文档编号:8823249 上传时间:2020-04-01 格式:DOC 页数:22 大小:287.50KB
返回 下载 相关 举报
乐曲演奏电路设计-正文.doc_第1页
第1页 / 共22页
乐曲演奏电路设计-正文.doc_第2页
第2页 / 共22页
乐曲演奏电路设计-正文.doc_第3页
第3页 / 共22页
点击查看更多>>
资源描述
目录 1 EDA 技术发展及介绍 1 1 1EDA 技术的介绍 1 1 2 EDA 技术的发展 1 1 3 VHDL 硬件描述语言的特点 2 2 总体方案设计 4 2 1 设计内容 4 2 2 设计方案比较 4 2 3 方案论证 5 3 单元模块设计 7 3 1 晶振电路 7 3 2 电源电路 8 3 3 七段数码管显示电路 9 3 4 蜂鸣器电路 10 4 特殊器件的介绍 11 4 1 CPLD 器件介绍 11 4 2 FPGA 器件介绍 11 4 3 EPM240T100C5 器件 12 5 软件实现 13 5 1 软件设计 13 6 系统仿真及调试 17 6 1 仿真 17 6 2 调试 19 7 总结 20 7 1 设计小结 20 7 2 设计收获 20 7 3 设计改进与功能扩展 20 7 4 致谢 21 8 参考文献 22 附录一 电路原理图 23 附录二 Technology map 24 1 EDA 技术发展及介绍 1 1EDA 技术的介绍 EDA 是电子设计自动化 Electronic Design Automation 的缩写 在 20 世纪 60 年代中期 从计算机辅助设计 CAD 计算机辅助制造 CAM 计算机辅助测试 CAT 和计算机辅 助工程 CAE 的概念发展而来的计算机软件系统 EDA 技术是指以计算机为工作平台 融 合了应用电子技术 计算机技术 信息处理及智能化技术的最新成果 进行电子产品的自动设 计 利用 EDA 工具 电子设计师可以从概念 算法 协议等开始设计电子系统 大量工作可 以通过计算机完成 并可以将电子产品从电路设计 性能分析到设计出 IC 版图或 PCB 版图的 整个过程的计算机上自动处理完成 现在对 EDA 的概念或范畴用得很宽 包括在机械 电子 通信 航空航天 化工 矿产 生物 医学 军事等各个领域 都有 EDA 的应用 目前 EDA 技术已在各大公司 企事业单位 和科研教学部门广泛使用 例如在飞机制造过程中 从设计 性能测试及特性分析直到飞行模 拟 都可能涉及到 EDA 技术 本文所指的 EDA 技术 主要针对电子电路设计 PCB 设计和 IC 设计 EDA 设计可分为系统级 电路级和物理实现级 1 2 EDA 技术的发展 EDA 技术的发展始于 70 年代 至今经历了三个阶段 电子线路的 CAD 计算机辅助设计 是 EDA 发展的初级阶段 是高级 EDA 系统的重要组成部分 它利用计算机的图形编辑 分析和 存储等能力 协助工程师设计电子系统的电路图 印制电路板和集成电路板图 采用二维图形 编辑与分析 主要解决电子线路设计后期的大量重复性工作 可以减少设计人员的繁琐重复劳 动 但自动化程度低 需要人工干预整个设计过程 这类专用软件大多以微机为工作平台 易 于学用 设计中小规模电子系统可靠有效 现仍有很多这类专用软件被广泛应用于工程设计 80 年代初期 EDA 技术开始技术设计过程的分析 推出了以仿真 逻辑模拟 定时分析和故障 仿真 和自动布局与布线为核心的 EDA 产品 这一阶段的 EDA 已把三维图形技术 窗口技术 计算机操作系统 网络数据交换 数据库与进程管理等一系列计算机学科的最新成果引入电子 设计 形成了 CAE 计算机辅助工程 也就是所谓的 EDA 技术中级阶段 其主要特征是具备 了自动布局布线和电路的计算机仿真 分析和验证功能 其作用已不仅仅是辅助设计 而且可 以代替人进行某种思维 CAE 这种以原理图为基础的 EDA 系统 虽然直观 且易于理解 但 对复杂的电子设计很难达到要求 也不宜于设计的优化 所以 90 年代出现了以自动综合器和硬件描述语言为基础 全面支持电子设计自动化的 ESDA 电子系统设计自动化 即 EDA 阶段 也就是目前常说的 EDA 过去传统的电子系统电 子产品的设计方法是采用自底而上 Bottom Up 的程式 设计者先对系统结构分块 直接进行 电路级的设计 这种设计方式使设计者不能预测下一阶段的问题 而且每一阶段是否存在问题 往往在系统整机调试时才确定 也很难通过局部电路的调整使整个系统达到既定的功能和指标 不能保证设计一举成功 EDA 技术高级阶段采用一种新的设计概念 自顶而下 Top Down 的设 计程式和并行工程 Concurrent engineering 的设计方法 设计者的精力主要集中在所要电子产品 的准确定义上 EDA 系统去完成电子产品的系统级至物理级的设计 此阶段 EDA 技术的主要 特征是支持高级语言对系统进行描述 高层次综合 High Level Synthesis 理论得到了巨大的发 展 可进行系统级的仿真和综合 1 3 VHDL 硬件描述语言的特点 与其他硬件描述语言相比 VHDL 具有以下特点 1 功能强大 设计灵活 VHDL 具有功能强大的语言结构 可以用简洁明确的源代码 来描述复杂的逻辑控制 它具有多层次的设计描述功能 层层细化 最后可直接生成电路级描 述 VHDL 支持同步电路 异步电路和随机电路的设计 这是其他硬件描述语言虽不能比拟的 VHDL 还支持各种设计方法 既支持自底向上的设计 又支持自顶向下的设计 既支持模块化 设计 又支持层次化设计 2 支持广泛 易于修改 由于 VHDL 已经成为 IEEE 标准所规范的硬件描述语言 目 前大多数 EDA 工具几乎都支持 VHDL 这为 VHDL 的进一步推广和广泛应用奠定了基础 在 硬件电路设计过程中 主要的设计文件是用 VHDL 编写的源代码 因为 VHDL 易读和结构化 所以易于修改设计 3 强大的系统硬件描述能力 VHDL 具有多层次的设计描述功能 既可以描述系统级 电路 又可以描述门级电路 而描述既可以采用行为描述 寄存器传输描述或结构描述 也可 以采用三者混合的混合级描述 另外 VHDL 支持惯性延迟和传输延迟 还可以准确地建立硬 件电路模型 VHDL 支持预定义的和自定义的数据类型 给硬件描述带来较大的自由度 使设 计人员能够方便地创建高层次的系统模型 4 独立于器件的设计 与工艺无关 设计人员用 VHDL 进行设计时 不需要首先考 虑选择完成设计的器件 就可以集中精力进行设计的优化 当设计描述完成后 可以用多种不 同的器件结构来实现其功能 5 很强的移植能力 易于共享和复用 VHDL 采用基于库 Library 的设计方法 可以建立各种可再次利用的模块 这些模块可以预先设计或使用以前设计中的存档模块 将这 些模块存放到库中 就可以在以后的设计中进行复用 可以使设计成果在设计人员之间进行交 流和共享 减少硬件电路设计 发展趋势 目前有多种 EDA 工具支持采用 VHDL 进行电路综合 仿真以及实现 一些可编程器件生 产商将使用 VHDL 进行电路设计所需的多种 EDA 工具集成为统一的开发平台提供给用户 进 行针对本公司可编程器件产品的开发 从而使整个设计流程更加简捷和易于使用 目前比较常 见的是 Altera 公司的 QuartusII 和 Xilinx 公司的 ISE 开发平台 2 总体方案设计 2 1 设计内容 用 FPGA 器件驱动蜂鸣器演奏 梁祝 片段 一首乐曲包含三个要素 乐曲声音频率 发 音时间的长短 停顿的时间 按照图 1 乐谱 设计相应电路控制 speaker 信号的方波频率 某 一频率持续时间长短 各频率间间隔大小 就可以推动蜂鸣器演奏乐曲 图 1 1 梁祝 片段乐谱 电路功能模块为 1 用分频电路产生不同频率方波 2 利用计数器实现 speaker 信号频 率选择 某一频率持续时间长短 各频率间间隔大小 356 2155216 1 3 56 5236 5132651 6 16 57 2 2 设计方案比较 方案一 由单片机 AT89S52 来实现乐曲演奏电路的设计 外围电源采用 5V 电源供电 时钟 由 12MHZ 的晶振产生 通过按键的状态来检测乐曲演奏状态 中央处理器由 AT89S52 单片机 来完成 乐曲演奏状态由七段数码管来模拟 这种方案 结构简单容易掌握 各部分电路实现 起来都非常容易 在传统的乐曲演奏设计中也应用得较为广泛 技术成熟 其原理框图如图 2 1 所示 图 2 1 单片原理实现框图 方案二 基于现场可编程逻辑门阵列 FPGA 通过 EDA 技术 采用 VerilogHDL 硬件描述语言实现乐曲演奏电路设计 程序设计思想为 1 用分频电路 产生不同频率方波 2 利用计数器实现 speaker 信号频率选择 某一频率持续时间长短 各频 率间间隔大小 其框图如图 2 2 所示 6MHz 扬声器 4Hz 数码管 图 2 2 乐曲演奏电路原理框图 1 方案三 基于现场可编程逻辑门阵列 FPGA 通过 EDA 技术 2 采用 VerilogHDL 硬件描述语言实现乐曲演奏电路设计 程序设计思想为 顶层结构所包 含的模块分别有音调发生器 ydfsq 模块 音调编码器 ydbmq 模块 手动 自动选择 bmux 模块 及数控分频器 skfpq 模块 其框图如图 2 3 所示 反馈预置计数器 2 分频器 曲谱产生 音符显示 晶振电路 数码管显示电路 电源电路 AT89S5 2 单片 机 扬声器电路 基准时钟 6MHz 模式选择 auto 手动输入 FPGA 时钟电路 数控分频器 电路 音乐节拍 产生电路 音调编码 电路 4Hz 6MHz 扬声器 数码管 图 3 2 乐曲演奏电路原理框图 2 2 3 方案论证 根据声乐知识 产生音乐的两个因素是音乐频率的持续时间 音乐的十二平均 率规定 每两个八音度之间的频率相差一倍 在两个八音度之间 又可分为 12 个半音 每两 个半音的频率比为 4 另外 音名 A 乐谱中的低音 6 的频率为 440HZ 音名 B 到 C 之间 E 到 F 之间为半音 其余为全音 由此可以计算出乐谱中从低音 1 到高音 1 之间每个音名的频 率如图 2 1 1 所示 表 2 1 简谱中的音名与频率的关系 表 2 1 简谱中的音名与频率的关系 音名 频率 Hz 音名 频率 Hz 音名 频率 Hz 低音 1 261 63 中音 1 523 25 高音 1 1046 50 低音 2 293 67 中音 2 587 33 高音 2 1174 66 低音 3 329 63 中音 3 659 25 高音 3 1381 51 低音 4 349 23 中音 4 698 46 高音 4 1396 92 低音 5 391 99 中音 5 783 99 高音 5 1567 98 低音 6 440 中音 6 880 高音 6 1760 低音 7 439 88 中音 7 987 76 高音 7 1975 52 通过方案一二三的比较 可以看出方案一二的设计使用分立元件电路较为多 因此会增加 电路调试难度 且电路的不稳定性也会随之增加 而采用 FPGA 芯片实现的电路 由于在整体 性上较好 在信号的处理和整个系统的控制中 FPGA 的方案能大大缩减电路的体积 提高电路 的稳定性 此外其先进的开发工具使整个系统的设计调试周期大大缩短 一般来讲 同样的逻 辑 基于 FPGA 要比基于单片机要快很多 因为它们工作的原理是完全不同的 单片机是基于 指令工作的 同样的激励到达单片机后 单片机首先要判断 然后读取相应的指令 最后作出 相应 这每一步都是需要在单片机的时钟驱动下一步步的进行 而基于 FPGA 则是把相应的逻 辑 暂时 固化为硬件电路了 它对激励作出的响应速度就是电信号从 FPGA 的一个管脚传播 另一个管脚的传播速度 当然这指的是异步逻辑 同时电信号也要在芯片内进行一些栅电容的 充放电动作 但这些动作都是非常非常快的 2 4 方案选择 结合现代 EDA 的整体性能的提升 也对其各个部件的性能提出了更高的要求 尤其在现代 SOC 技术的引领下 人们对低故障 高实时 高可靠 高稳定的性能更加青睐 结合本设计的 要求及综合以上比较的情况 我们选择了方案二进行设计 3 单元模块设计 本设计由现场可编程门矩阵 FPGA 作为控制芯片 通过 VreilogHDL 硬件描述语言设计 按功能逐层分割实现层次化的设计 总体设计方案为 1 用分频电路产生不同频率方波 2 利用计数器实现 speaker 信号频率选择 某一频率持续时间长短 各频率间间隔大小 下面介 绍主要模块的功能及作用 3 1 晶振电路 NGOV450MCLK R 图 3 1 晶振电路 采用有源晶振作为时钟信号源 它是一个完整的振荡器 其内部除了石英晶体外还有阻容 软件和晶体管 有源晶振信号质量好 比较稳定 而且连接方式比较简单 主要是作为电源滤 波 通常使用的为一个电容和电感组成的 PI 型滤波网络 输出端使用一个小阻值电阻过滤信 号 串电阻可减小反射波 避免反射波叠加引起过冲 减少谐波以及阻抗匹配 减小回波干扰 及导致的信号过冲 有源晶振不需要 DSP 的内部振荡器 信号质量好 比较稳定 而且连接方式相对简单 主 要是做好电源滤波 通常使用一个电容和电感构成的 PI 型滤波网络 输出端用一个小阻值的 电阻过滤信号即可 不需要复杂的配置电路 有源晶振通常的用法 一脚悬空 二脚接地 三脚接输出 四脚接电压 相对于无源晶体 有源晶振的缺陷是其信号电平是固定的 需要选 择好合适输出电平 灵活性较差 而且价格高 对于时序要求敏感的应用 个人认为还是有源 的晶振好 因为可以选用比较精密的晶振 甚至是高档的温度补偿晶振 有些 DSP 内部没有起 振电路 只能使用有源的晶振 如 TI 的 6000 系列等 有源晶振相比于无源晶体通常体积较 大 但现在许多有源晶振是表贴的 体积和晶体相当 有的甚至比许多晶体还要小 20MHz 以下的晶体晶振基本上都是基频的器件 稳定度好 20MHz 以上的大多是谐波的 如 3 次谐波 5 次谐波等等 稳定度差 因此强烈建议使用低频的器件 毕竟倍频用的 PLL 电路需要的周边配置主要是电容 电阻 电感 其稳定度和价格方面远远好于晶体晶振器件 由于本设计所用的为 50MHZ 的晶振 而 20MHz 以下的晶体晶振基本上都是基频的器件 稳 定度好 0MHz 以上的大多是谐波的 如 3 次谐波 5 次谐波等等 稳定度差 因此我们使 选用频的器件 毕竟倍频用的 PLL 电路需要的周边配置主要是电容 电阻 电感 其稳定度和 价格方面远远好于晶体晶振器件 3 2 电源电路 图 3 2 电源电路 本设计中使用到了两个电源 FPGA 芯片使用了 2 种电源 分别为 3 3V I O 电源和 V 核 心电源 由于 FPGA 的功率较大 在加上其他外围设备的需求 本实验开发平台上选用的 3 3V 电源芯片是 EP2C8Q208C8N 该芯片能最大输出电流为 3A 完全满足本实验平台的需求 1 2V 和 3 3V 的电源电路分别如图 3 2 所示 3 3 七段数码管显示电路 a7b6c4d1e3f8g9pG05LED C IOTR 图 3 3 七段数码管显示电路 七段数码管和普通发光二极管的发光原理一样 为了进行直观显示而将普通发光二极管封 装在一起 能够进行 16 进制数字显示 有共阳极和共阴极之分 共阳极就是此实验平台所使 用的链接方式 在控制端输入底点平的时候发光 在输入高电平的时候就不发光 3 4 蜂鸣器电路 U2BZERT1904VCGNDspeakr 图 3 4 蜂鸣器电路 蜂鸣器是一种一体化结构的电子讯响器 采用直流电压供电 广泛应用于计算机 打印机 复印机 报警器 电子玩具 汽车电子设备 电话机 定时器等电子产品中作发声器件 蜂鸣 器的分类 蜂鸣器主要分为压电式蜂鸣器和电磁式蜂鸣器两种类型 蜂鸣器的电路图形符号 蜂 鸣器在电路中用字母 H 或 HA 旧标准用 FM LB JD 等 表示 根据蜂鸣器输入信号频率的不同决定了其发声不同的原理 接通电源后 振荡器产生的音 频信号电流通过电磁线圈 使电磁线圈产生磁场 振动膜片在电磁线圈和磁铁的相互作用下 周期性地振动发声 由此可以来设计一个由数控分频器控制 BUZZER 发声的简单实验 数控分 频器的预置值由乐曲的音调的值来决定 从而间接地控制 BUZZER 得发声频率 4 特殊器件的介绍 4 1 CPLD 器件介绍 CPLD 是 Complex Programmable Logic Device 的缩写 它是有最早的 PLD 器件发展形成 的高密度可编程逻辑器件 它具有编程灵活 集成度高 设计开发周期短 适用范围宽 开发 工具先进 设计制造成本低 对设计者的硬件经验要求低 标准产品无需测试 保密性强 价 格大众化等特点 CPLD 是一种用户根据各自需要而自行构造逻辑功能的数字集成电路 其 基本设计方法是借助集成开发软件平台 用原理图 硬件描述语言等方法 生成相应的目标文 件 通过下载电缆 在系统 编程 将代码传送到目标芯片中 实现设计的数字系统 许多公司都开发出了 CPLD 可编程逻辑器件 比较典型的就是 Altera Lattice Xilinx 世界三大权威公司的产品 如 Altera 公司的 MAXII 器件 就是其极具代表性的一类 CPLD 器 件 是有史以来功耗最低 成本最低的 CPLD MAX II CPLD 基于突破性的体系结构 在所有 CPLD 系列中 其单位 I O 引脚的功耗和成本都是最低的 Altera 公司的 MAX7000A 系列器件是高密度 高性能的 EPLD 它是基于第二代 MAX 结构 采用 CMOS EPROM 工艺制造的 该系列的器件具有一定得典型性 其他结构都与此结构非常的 类似 它包括逻辑阵列块 宏单元 扩展乘积项 可编程连线阵列和 IO 控制部分 由于大多 数 CPLD 是基于乘积项的 与或 结构 故适合设计组合逻辑电路 4 2 FPGA 器件介绍 FPGA Field Programmable Gate Array 可以达到比 PLD 更高的集成度 它是在 PAL GAL EPLD 等可编程器件的基础上进一步发展起来的 具有更复杂的布线结构和逻辑实 现 PLD 器件和 FPGA 的主要区别在于 PLD 是通过修改具有固定内连电路得逻辑功能来进行编 程 而 FPGA 是通过修改一根或多根分割宏单元的基本功能块的内连线的布线来进行编程 它 一般由可嵌入式阵列块 EAB 逻辑阵列块 LAB 快速互联通道 Fast Track IO 单元 IOE 组成 Altera Cyclone II 采用全铜层 低 K 值 1 2 伏 SRAM 工艺设计 裸片尺寸被尽可能最 小的优化 采用 300 毫米晶圆 以 TSMC 成功的 90nm 工艺技术为基础 Cyclone II 器件提供 了 4 608 到 68 416 个逻辑单元 LE 并具有一整套最佳的功能 包括嵌入式 18 比特 x18 比 特乘法器 专用外部存储器接口电路 4kbit 嵌入式存储器块 锁相环 PLL 和高速差分 I O 能力 Cyclone II 器件扩展了 FPGA 在成本敏感性 大批量应用领域的影响力 延续了第一代 Cyclone 器件系列的成功 由于 FPGA 是基于查找表 LUT 结构的器件 且每个 LAB 由 10 个 LE 组成 一个 LE 由 LUT 和寄存器组成 适合于时序逻辑电路的设计 4 3 EPM240T100C5 器件 其引脚图如图 4 3 所示 IO12345678VC9GND0T LK R MSE nAX PU 图 4 3 EPM240T100C5 基于成本优化的 0 18 微米 6 层金属 Flash 工艺 MAX II 器件系列具有 CPLD 所有的优点 例如非易失性 即用性 易用性和快速传输延时性 以满足通用性 低密度逻辑应用为目标 MAX II 器件成为接口桥接 I O 扩展 器件配置和上电顺序等应用最理想的解决方案 除这些 典型的 CPLD 应用之外 MAX II 器件还能满足大量从前在 FPGA ASSP 和标准逻辑器件中实现 的低密度可编程逻辑需求 5 软件实现 通过至顶向下 TOP DOWN 的设计方法 我们对电路的设计要求作了分析 从电路要实 现的功能着手 逐层分析电路设计的步骤 再具体到各个模块的设计实现以及各模块实现方案 的选择 从本设计的电路要求 我们分析了需要实现一个输入状态的编码 以及对循环点亮灯 的方式的选择 综合这两种状态控制输出信号的状态变化 软件设计流程图 反馈预置计数 器 曲谱产生 2 分频器 音符显示 扬声器 数码管 图 6 1 软件设计流程图 5 1 软件设计 module song clk 6MHz clk 4Hz speaker gaoyin zhongyin diyin input clk 6MHz clk 4Hz output speaker output 3 0 gaoyin zhongyin diyin reg speaker reg 3 0 gaoyin zhongyin diyin reg 7 0 counter reg 13 0 divider origin wire carry assign carry divider 16383 always posedge clk 6MHz begin if carry divider origin else divider divider 1 end always posedge carry begin speaker speaker end 2分频产生方波信号 always posedge clk 4Hz begin case gaoyin zhongyin diyin 分频比预置 b000000000011 origin 7281 b000000000101 origin 8730 b000000000110 origin 9565 b000000000111 origin 10310 b000000010000 origin 10647 b000000100000 origin 11272 b000000110000 origin 11831 b000001010000 origin 12556 b000001100000 origin 12974 b000100000000 origin 13516 b000000000000 origin 16383 endcase end always posedge clk 4Hz begin if counter 63 counter 0 计时 以实现循环演奏 else counter counter 1 case counter 记谱 0 gaoyin zhongyin diyin b000000000011 低音 3 1 gaoyin zhongyin diyin b000000000011 持续4个时钟节拍 2 gaoyin zhongyin diyin b000000000011 3 gaoyin zhongyin diyin b000000000011 4 gaoyin zhongyin diyin b000000000101 低音 5 5 gaoyin zhongyin diyin b000000000101 发3个时钟节拍 6 gaoyin zhongyin diyin b000000000101 7 gaoyin zhongyin diyin b000000000110 低音 6 8 gaoyin zhongyin diyin b000000010000 中音 1 9 gaoyin zhongyin diyin b000000010000 发3个时钟节拍 10 gaoyin zhongyin diyin b000000010000 11 gaoyin zhongyin diyin b000000100000 中音 2 12 gaoyin zhongyin diyin b000000000110 低音 6 13 gaoyin zhongyin diyin b000000010000 14 gaoyin zhongyin diyin b000000000101 15 gaoyin zhongyin diyin b000000000101 16 gaoyin zhongyin diyin b000001010000 中音 5 17 gaoyin zhongyin diyin b000001010000 发3个时钟节拍 18 gaoyin zhongyin diyin b000001010000 19 gaoyin zhongyin diyin b000100000000 高音 1 20 gaoyin zhongyin diyin b000001100000 21 gaoyin zhongyin diyin b000001010000 22 gaoyin zhongyin diyin b000000110000 23 gaoyin zhongyin diyin b000001010000 24 gaoyin zhongyin diyin b000000100000 中音 2 25 gaoyin zhongyin diyin b000000100000 持续11个时钟节拍 26 gaoyin zhongyin diyin b000000100000 27 gaoyin zhongyin diyin b000000100000 28 gaoyin zhongyin diyin b000000100000 29 gaoyin zhongyin diyin b000000100000 30 gaoyin zhongyin diyin b000000100000 31 gaoyin zhongyin diyin b000000100000 32 gaoyin zhongyin diyin b000000100000 33 gaoyin zhongyin diyin b000000100000 34 gaoyin zhongyin diyin b000000100000 35 gaoyin zhongyin diyin b000000110000 中音 3 36 gaoyin zhongyin diyin b000000000111 低音 7 37 gaoyin zhongyin diyin b000000000111 38 gaoyin zhongyin diyin b000000000110 低音 6 39 gaoyin zhongyin diyin b000000000110 40 gaoyin zhongyin diyin b000000000101 低音 5 41 gaoyin zhongyin diyin b000000000101 42 gaoyin zhongyin diyin b000000000101 43 gaoyin zhongyin diyin b000000000110 低音 6 44 gaoyin zhongyin diyin b000000010000 中音 1 45 gaoyin zhongyin diyin b000000010000 46 gaoyin zhongyin diyin b000000100000 中音 2 47 gaoyin zhongyin diyin b000000100000 48 gaoyin zhongyin diyin b000000000011 低音 3 49 gaoyin zhongyin diyin b000000000011 50 gaoyin zhongyin diyin b000000010000 中音 1 51 gaoyin zhongyin diyin b000000010000 52 gaoyin zhongyin diyin b000000000110 53 gaoyin zhongyin diyin b000000000101 低音 5 54 gaoyin zhongyin diyin b000000000110 55 gaoyin zhongyin diyin b000000010000 中音 1 56 gaoyin zhongyin diyin b000000000101 低音 5 57 gaoyin zhongyin diyin b000000000101 持续8个时钟节拍 58 gaoyin zhongyin diyin b000000000101 59 gaoyin zhongyin diyin b000000000101 60 gaoyin zhongyin diyin b000000000101 61 gaoyin zhongyin diyin b000000000101 62 gaoyin zhongyin diyin b000000000101 63 gaoyin zhongyin diyin b000000000101 endcase end endmodule 6 系统仿真及调试 6 1 仿真 通过 QuartusII 软件 我进行了仿真 其仿真波形如下图 图 6 1 波形仿真图 在上面的波形仿真图中 gaoyin zhongyin diyin 分别对应乐曲中的 高音 中音 低音 其中 clk 6MHz 用于产生各种音阶的基准频率 clk 4Hz 用于控制音长 节拍 的时钟频率 由于 4Hz 的频率太小 在仿真波形图上很难观察到结果 为了能观察到 波形 我将 clk 4Hz 的频率改为 4MHz 得到图 6 1 由图可看出其输出波形所反映的乐谱与实 际乐谱的规律是一致的 即实现了乐曲乐谱的仿真 在 QuartusII 软件中利用硬件描述语言描述电路后 用 RTL Viewers 生成的对应的电路图 如下 D QPREENA CLR SELDATADATB OUT0 MUX21 A 31 0 B 31 0 OUT EQUAL A 13 0 B 13 0 OUT 13 0 ADER DENAQPRE CLR DENAQPRE CLR DENAQPRE CLR 0 DENAQPRE CLR 0 D QPRE ENACLR D QPREENA CLR D QPRE ENACLR D QPRE ENACLR D QPREENA CLR SEL 2 0 DAT 2 0 OUT SELCTOR A 31 0 B 31 0 OUT EQUAL A 31 0 B 31 0 OUT EQUAL A 31 0 B 31 0 OUT EQUAL A 31 0 B 31 0 OUT EQUAL A 31 0 B 31 0 OUT EQUAL A 31 0 B 31 0 OUT EQUAL A 31 0 B 31 0 OUT EQUAL A 31 0 B 31 0 OUT EQUAL A 31 0 B 31 0 OUT EQUAL A 31 0 B 31 0 OUT EQUAL A 31 0 B 31 0 OUT EQUAL SEL 2 0 DAT 2 0 OUT SELCTOR SEL 2 0 DAT 2 0 OUT SELCTOR SEL 2 0 DAT 2 0 OUT SELCTOR SEL 2 0 DAT 2 0 OUT SELCTOR SEL 2 0 DAT 2 0 OUT SELCTOR SEL 2 0 DAT 2 0 OUT SELCTOR SEL 2 0 DAT 2 0 OUT SELCTOR SEL 2 0 DAT 2 0 OUT SELCTOR SEL 2 0 DAT 2 0 OUT SELCTOR SEL 2 0 DAT 2 0 OUT SELCTOR SEL 2 0 DAT 2 0 OUT SELCTOR WideOr27 OUT0 Selctor3 OUTSelctor4 OUTSelctor7 OUT origin OUT0 counter OUT0 counter OUT0 Selctor15 OUTSelctor16 OUTSelctor17 OUT med reg0 OUT0 Selctor18 OUTSelctor19 OUTSelctor20 OUT low reg0 OUT0 WideOr28 OUT0ideOr29 OUT0Decoder0 OUT Equal2 OUTEqual3 OUTEqual4 OUTEqual5 OUT Equal6 OUT Equal7 OUT Equal8 OUT Equal9 OUTEqual10 OUTEqual1 OUT WideNor0 OUT0 WideOr5 OUT0 WideOr7 OUT0 WideOr13 OUT0 WideOr0 OUT0 WideOr16 OUT0ideOr26 OUT0 WideOr18 OUT0 WideOr20 OUT0ideOr2 OUT0WideOr24 OUT0 WideOr2 OUT0ideOr10 OUT0ideOr12 OUT0ideOr4 OUT0 divider 13 0 clk 6MHz divider 13 0 Equal018 h000 32 h003FF speaker reg0 speaker high 0 reg0 clk 4Hz high 3 0 med 3 reg0 med 3 0 low 3 reg0 low 3 0 origin 13 0 med 2 0 reg0 Equal4 20 h000 32 h00007 Equal10 20 h000 32 h00010 WideNor0 WideOr1 WideOr3 WideOr5 WideOr7 WideOr1 WideOr13 WideOr15 WideOr17 WideOr19 WideOr21 WideOr23 WideOr25 Selctor0 2 h1 Selctor8 2 h2 Selctor13 2 h2 Selctor9 2 h2 Selctor10 2 h1 Selctor1 2 h1 Selctor12 2 h1 Selctor1 2 h2 Selctor5 2 h1 Selctor6 2 h1 Selctor2 2 h2 14 h001 Ad0 Equal7 20 h000 32 h00030 Equal8 20 h000 32 h00050 Equal9 20 h000 32 h00060 counter 7 0 high 3 1 reg03 h0 Equal120 h000 32 h00003 low 2 0 reg0 WideOr9 Equal3 20 h000 32 h00006 Equal2 20 h000 32 h00005 Selctor14 2 h1 Equal1 20 h000 32 h0000 Equal6 20 h000 32 h00020 Equal5 20 h000 32 h00010 6 2 调试 在 QuartusII 软件中 通过对所设计的硬件描述语言代码进行波形仿真后 达到了预期效 果 于是 我们在该软件上进行下载配置设置 在 Assignments 菜单下选中 Devices 在 Family 栏选择 ACEX1K 选中 EPX74OLC44 12 器件 再在 Assignments 菜单下选中 Pins 按照相 应要求对管脚进行锁定 调试过程为在线调试 在通过调试中 我们发现了很多问题 现归纳如下 1 在软件上能实现仿真的程序不一定在硬件电路上就能运行 原因有很多 这里是由于电 路中的时钟频率太快 若不增加一个分频电路 灯闪烁时间太快 肉眼无法观察 故设计了 一 50MHZ 到 2HZ 的分频电路 2 调试中的实际问题需要考虑 若同时发生几个事件 我们需要优先响应的事件是什么 通过分析我们知道 在电路设计中则是利用带优先级的 IF 语句来控制输入信号即可 3 由于分频的运算很大 故增加分频电路后 在 QuartusII 软件中则不能进行正确的仿真 可以直接将程序下载到电路板上去调试 7 总结 7 1 设计小结 在本次设计中 我们完成本系统设计的要求及功能 在设计开始前我们对各个模块进行了 详细的分析和设计准备工作 设计过程中 我们相互协调 积极参与完成各个技术实现的难点 本设计要求实现乐曲演奏的音调与音长 还要在数码管上显示频率 最终产生乐曲 7 2 设计收获 在进行波形仿真的时候 由于先选择的是时序功能仿真 所以造成输出波形与理想的波形 存在一定差异 于是我将时序仿真改为功能仿真 但在点击开始仿真按钮后 软件进行了报错 后经查阅以前实验课上的笔记发现 是因为没有设定产生功能仿真网表 经设置后 上述问题 得以解决 通过本次课程设计 我们在对 EDA 这门技术上有了更深刻的认识 也从实践的例子中去 感受到了 EDA 设计给我们设计带来的改变与进步 我们不仅掌握 QuartusII 软件的使用 与此 同时 我们还对电子设计的思路有了更多的认识 通过对 EDA 设计中的 TOP DOWN 设计方 式的运用 体会到了对于一个大型系统的设计方案选取应从顶向下的设计思路 这与传统的至 底向上的设计方式有很大改进 且设计效率得到大大提高 音频功放电路 7 3 设计改进与功能扩展 本次设计是设计乐曲演奏电路 在此设计的基础上 加上一定的外围电路和相应的程序代 码 可以实现乐曲的播放和弹奏 其中功能区分的基本设计思路是 通过设置一个功能选择键 将乐曲演奏和乐曲弹奏功能分开 乐曲弹奏部分应包含键盘扫描模块 音符频率输出模块 分频器 还可以根据需求加入 LED 显示模块 用于显示按键 乐曲演奏 弹奏电路系统大致框图如下 4 4 键盘 7 4 致谢 在此次课程设计中 我们小组积极思考问题 查阅了许多相关资料 也遇到了许多不解的 问题 但在阳老师的耐心地详细讲解下 终于将困难得以克服 在此我要感谢阳老师对我们组 的帮助与支持 感谢阳老师在百忙之中抽空对我们进行悉心指点 同时也要感谢学院提供这次 课程设计的机会 增强了我们的动手能力 FPGA LED 显示 乐曲播放模块 乐曲弹奏模块 8 参考文献 1 谢自美 电子线路设计 第二版 M 华中科技大学出版社 2000 2 卢毅编著 VHDL 与数字电路设计 M 北京 科技大学出版 2001 3 侯佰亨 顾新编著 VHDL硬件描述语言与实际应用 M 西安 西安电子科社 2000 4 康华光 陈大钦 电子技术基础模拟部分 第四版 M 高等教育出版社 1987 5 美 J Bhasker Verilog HDL 硬件描述语言 M 机械工业出版社 2000 6 周明德 微型计算机系统原理及应用 第四版 M 清华大学出版社 2002 7 张洪润等 电子线路及应用 北京 科学出版社 2002 8 杨宝清 实用电路手册 北京 机械工业出版社 2002 附录一 电路原理图 IO12345678VC9GND0T LK R MSE nAX PU Juf BZspeakrbcdg 附录二 Technology map CLKDATDATB DATCDATENA SLOAD REGOUT LOGIC EL E4 CLKDATBDATC DAT REGOUTLOGIC EL 0CF CLKDATBSYNCH DAT COMBUTREGOUT LOGIC EL 03 CLKDATBDATC DAT REGOUTLOGIC EL 0FC CLKDATDATB DATCDAT REGOUTLOGIC EL F5D CLKDATDATB DATCDAT REGOUTLOGIC EL FB CLKDATBDAT SYNCH DAT COMBUTREGOUTLOGIC EL CF0 CLKDATDATC DAT REGOUTLOGIC EL F50 CLKDATDATB DATSYNCH DAT COMBUTREGOUTLOGIC EL 204 CLKDATDATC DAT REGOUTLOGIC EL AF CLKDATDATB DATCDAT REGOUTLOGIC EL 6A CLKDATDATB DATCDATENA SLOAD REGOUT LOGIC EL C5 CLKDATDATC DAT REGOUTLOGIC EL 50F CLKDATDATB DATCDATENA SLOAD REGOUT LOGIC EL 4E CLKDATDATB DATCDAT REGOUTLOGIC EL F3B CLKDATDATB DATSYNCH DAT COMBUTREGOUTLOGIC EL 3125 CLKDATDATB DATCDATENA REGOUT LOGIC EL 08 CLKDATDATB DATCDAT REGOUTLOGIC EL 5FD CLKDATDAT SYNCH DAT COMBUTREGOUTLOGIC EL 0A CLKDATDATB DATCDAT REGOUTLOGIC EL F5D CLKDATDATB DATCDAT REGOUTLOGIC EL 5DF CLKDATDATB DATCDAT REGOUTLOGIC EL 3FB CLKDATBSYNCH DAT COMBUTREGOUT LOGIC EL C0 CLKDATDATB DATCDATENA SLOAD REGOUT LOGIC EL D8 CLKDATBDATC DAT REGOUTLOGIC EL CF CLKDATDATB DATCDAT REGOUTLOGIC EL 3BF CLKDATDATB DATSYNCH DAT COMBUTREGOUTLOGIC EL 315 CLKDATDATB DATCDATENA REGOUT LOGIC EL 84C CLKDATDATB DATCDATENA SLOAD REGOUT LOGIC EL CA DATDATBDATC DAT COMBUTLOGIC EL 4A5 DATDATBDATC DAT COMBUTLOGIC EL 705 DATDATCDAT COMBUT LOGIC EL 05 DATDATBDATC DAT COMBUTLOGIC EL 08 DATDATBDATC DAT COMBUTLOGIC EL 04C DATDATBDATC DAT COMBUTLOGIC EL 40 DATDATBDATC DAT COMBUTLOGIC EL 08 DATBDATCDAT COMBUT LOGIC EL 03 DATDATCDAT COMBUT LOGIC EL F50 DATBDATCDAT COMBUT LOGIC EL 0C DATDATBDATC DAT COMBUTLOGIC EL 40 DATDATBDATC DAT COMBUTLOGIC EL 01 DATDATBDATC DAT COMBUTLOGIC EL FE DATDATBDATC COMBUT LOGIC EL 04 DATDATBDATC DAT COMBUTLOGIC EL 01 DATDATCDAT COMBUT LOGIC EL 50 DATDATBDATC DAT COMBUTLOGIC EL 10 DATDATBDATCDAT COMBUTLOGIC EL 07F DATDATBDATC DAT COMBUTLOGIC EL FE DATDATBDATC DAT COMBUTLOGIC EL 23 DATBDATCDAT COMBUT LOGIC EL 03 origin 2 REGOUT Ad1 3 COMBUT counter 7 REGOUT origin 0 REGOUT Selctor6 0 COMBUT origin 7 REGOUT Selctor1 5 COMBUT origin 12 REGOUT Ad1 2 COMBUT counter 4 COMBUTcounter 4 REGOUT origin 3 REGOUT Ad1 27 COMBUT counter 1 COMBUTcounter 1 REGOUT Selctor5 0 COMBUT origin 8 REGOUT Ad1 35 COMBUTEqual12 COMBUT counter 6 REGOUT Selctor19 0 COMBUTSelctor19 2 COMBUT origin 13 REGOUT Selctor16 0 COMBUTSelctor16 COMBUT med 1 reg0 REGOUT origin 4 REGOUT Ad1 3 COMBUT counter 2 COMBUTcounter 2 REGOUT hig 0 reg0 REGOUT origin 9 REGOUT Ad1 23 COMBUT counter 3 REGOUT Equal9 0 COMBUT origin 5 REGOUT Selctor3 0 COMBUT origin 10 REGOUT origin 1 REGOUT Ad1 29 COMBUT counter 0 REGOUT Selctor20 3 COMBUTSelctor20 COMBUT Selctor7 0 COMBUT origin 6 REGOUT origin 1 REGOUT Ad1 25 COMBUT counter 5 COMBUTcounter 5 REGOUT med 2 reg0 REGOUT Selctor17 0 COMBUTSelctor17 COMBUTSelctor17 3 COMBUT med 0 reg0 REGOUT Equal3 0 COMBUT Equal10 COMBUT Equal5 0 COMBUT Equal5 1 COMBUT Equal1 2 COMBUT Equal1 3 COMBUT Equal8 1 COMBUT Equal1 0 COMBUT Equal8 0 COMBUT low 2 reg0clk 4Hz low 0 3 1 h0 origin 2 counter 7 origin 0 origin 7 origin 12 counter 4 origin 3 counter 1 origin 8 counter 6 low 1 reg0 origin 13 med 1 reg0 med 0 3 1 h0 origin 4 counter 2 hig 0 3 3 h0 origin 9 counter 3 origin 5 origin 10 origin 1 low 0 reg0 origin 1 counter 5 Selctor18 0 Selctor18 Selctor2 Equal1 Selctor12 0 Equal2 0 Equal3 0 Equal10 Selctor2 0 Equal5 1 Equal1 3 Equal1 0 WideNor0Selctor2 1 Selctor9 0 Equal6 0 WideNor0 Selctor4 0 Selctor10 Selctor4 1 WideNor0 1 origin 6 counter 0 med 0 reg0 med 2 reg0 hig 0 reg0
展开阅读全文
相关资源
相关搜索

当前位置:首页 > 图纸专区 > 成人自考


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!