1、 草鱼 草鱼 草鱼 郑州轻工业学院 草鱼 电子技术课程设计 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 题 草鱼 草鱼 草鱼 草鱼 目 草鱼 草鱼 _ 草鱼草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 _ 草鱼草鱼 学生姓名 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼
2、 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼草鱼 专业班级 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼草鱼 学 草鱼 草鱼 草鱼 草鱼 号 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼草鱼 院 草鱼 (系) 草鱼 草鱼 电气信息工程学院 草鱼 草鱼 草鱼 草鱼草鱼 指导教师 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草
3、鱼 草鱼 草鱼 草鱼草鱼 完成时间 草鱼 草鱼 草鱼 2012 年 06 月 22 日 草鱼 草鱼 草鱼 草鱼草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 郑州轻工业学院 草鱼 课 草鱼程 草鱼设 草鱼计 草鱼任 草鱼务 草鱼书 草鱼 草鱼 题目 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草 鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼基于 FPGA 的 信号发生器设计 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 专业 、 pork班级 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草
4、鱼 草鱼 草鱼 草鱼 草鱼 草鱼 学号 草鱼 草鱼 草鱼 草鱼 姓名 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 主要内容 、 pork基本要求 、 pork主要参考资料等 : pork草鱼 主要内容 : pork草鱼 要求学生 使用硬件描述语言设计信号发生器的 FPGA 源程序 , 鲤鱼 实现如下功能 : pork设计智能信号 发生器 , 鲤鱼 要求实现 正弦波 、 pork方波 、 pork三角波 、 pork递增 、 pork递减斜波和阶梯波六种 波形 。草鱼草鱼 基本要求 : pork草鱼 掌握 FPGA 草鱼
5、 的程序设计方法 。 草鱼 草鱼 草鱼 2、 p ork掌握 硬件描述语言语法 。 草鱼 草鱼 草鱼 3、 p ork程序设计完成后要求在软件中实现功能仿真 。 草鱼草鱼 主要参考资料 : p ork草鱼 1、 p ork姜雪松 ,吴钰淳 .VHDL 设计实例与仿真 .机械工业出版社 , 草鱼 2007.草鱼 2、 p ork黄志伟 .FPGA 系统设计与实践 M.北京 :电子工业出版社 ,2005.草鱼 草鱼 完 草鱼 草鱼成 草鱼 草鱼期 草鱼 草鱼限 : pork 草鱼 草鱼 2013.6.21 2013.6.25 草鱼 草鱼 草鱼 草鱼 指导教师签名 : p o r k 草鱼 草鱼 草
6、鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草 鱼 草 鱼 课程负责人签名 : pork 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草 鱼草鱼 2013年 草鱼6 月 草鱼18日 草鱼 草鱼 目 草鱼 草鱼录 草鱼 草鱼 草鱼 摘 草鱼 草鱼 要 I 草鱼 1 草鱼 题目分析 1 草鱼 2 草鱼 方案选择 1 草鱼 2.1 草鱼 波形函数发生方案对比选择 1 草鱼 2.2 草鱼 波形函数输出控制方式选择 2 草鱼 3 草鱼 系统细化框图 2 草鱼 4 草鱼 各模块程序设计及仿真
7、3 草鱼 4.1 草鱼 递增斜波模块 3 草鱼 4.2 草鱼 递减斜波模块 4 草鱼 4.3 草鱼 三角波模块 5 草鱼 4.4 草鱼 阶梯波模块 6 草鱼 4.5 草鱼 正弦 波模块 8 草鱼 4.6 草鱼 方波模块 9 草鱼 4.7 草鱼 输出波形选择模块 10 草鱼 5 草鱼 系统联调测试分析 11 草鱼 6 草鱼 设计总结 12 草鱼 参考文献 13 草鱼 附 草鱼 草鱼 录 14 草鱼 基于 FPGA 的函数发生器设计 I 基于 FPGA 的函数发生器设计 草鱼 草鱼 摘 草鱼 草鱼要 草鱼 草鱼 随着基于 CPLD的 EDA技术的发展和应用领域的扩大与深入 , 鲤鱼 EDA技术在电
8、子信息 、pork通信 、 pork自动控制及计算机等领域的重要性日益突出 。 草鱼 作为一个学电子信息专业的学生 ,鲤鱼 我们必须不断地去了解更多的新产品信息 , 鲤鱼 这就更加要求我们对 EDA 有个全面的认识 。 草鱼 信号发生器 在我们的日常中有很重要的应用 , 鲤鱼 用 VHDL 语言去 实现设计 将会使我 们对本 学科 知识可以更好地掌握 。 草鱼 函数发生器是一种多波形的信号源 , 鲤鱼 它可以产生方波 、 pork三角波 、 pork锯齿波 , 鲤鱼 甚至任意波形 。 草鱼 本设计是一个基于 VHDL 的采用自顶向下设计方法实现的信号发生器 , 鲤鱼 该设计方法具有外围电路简单
9、 , 鲤鱼 程序修改灵活和调试容易等特点 , 鲤鱼 并通过计算机仿真和实验证明了设计的正确性 。 草鱼 草鱼 关键字 草鱼 草鱼FPGA 草鱼 VHDL 草鱼 函数发生器 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 基于 FPGA 的函数发生器设计 1 1 草鱼题目分析 草鱼 要求设计一个 函数发生器 , 鲤鱼 该 函数发生器 能够产生递增斜波 、 pork递减斜波 、 pork方波 、 pork三角波 、 pork正弦波 、 pork及阶梯波 , 鲤鱼 并且可以通过选择开关选择相应的波形输出 ; pork系统具有复位的功能 ; por
10、k通过按键确定输出的波形及确定是否输出波形 。 草鱼 FPGA 是整个系统的核心 ,鲤鱼 构成系统控制器 , 鲤鱼 波形数据生成器 , 鲤鱼 加法器 , 鲤鱼 运算 /译码等功能 。 草鱼 草鱼 通过以上分析 设计要求完成的功能 , 鲤鱼 确定 函数发生器可由递增斜波产生模块 、 pork递减斜波产生模块 、 pork三角波产生模块 、 pork阶梯波产生模块 、 pork正弦波产生模块 、 pork方波产生模块和输出波形选择模块 组成 , 鲤鱼 以及按键 复位 控制和时钟输入 。 草鱼 由此可确定为 : pork草鱼 草鱼 草鱼 草鱼草鱼 草鱼草鱼 草鱼草鱼 草鱼草鱼 草鱼草鱼 草鱼2 草鱼
11、方案选择 草鱼 2.1 草鱼 波形函数发生方案对比选择 草鱼 波形函数发生是本设计的最重要的部分 , 鲤鱼 实现函数发生的途径也有很多 , 鲤鱼 因此必须选择一种易于实现且精度高的方案 , 鲤鱼 以此来提高本设计的实用性 。 草鱼 草鱼 方案 一 : pork通过单片机控制 D/A, 鲤鱼 输出三种波形 。 草鱼 此方案输出的波形不够稳定 , 鲤鱼 抗干扰能力弱 , 鲤鱼 不易调节 , 鲤鱼 而且达不到题目要求的六种波形 。 草鱼草鱼 方案二 : pork使用传统的锁相频率合成方法 。 草鱼 通过芯片 IC145152, 鲤鱼 压控振荡器搭接的锁相环电路输出稳定性极好的正弦波 , 鲤鱼 再利用
12、过零比较器转换成方波 , 鲤鱼 积分电路转换成三角波 。 草鱼 此方案 , 鲤鱼 电路复杂 , 鲤鱼 干扰因素多 , 鲤鱼 不易实现 。 草鱼 草鱼 方案三 : pork利用 MAX038 芯片组成的电路输出波形 。 草鱼 MAX038 是精密高频波形产生电路 , 鲤鱼 能够产生准确的三角波 、 pork方波和正弦波三种周期性波形 , 鲤鱼 但无法实现阶梯波和递增递减斜波的产生 。 草鱼 草鱼 方案四 : pork利用 在系统编程技术 和 FPGA 芯片 产生 。 草鱼 用 VHDL 语言编写程序 , 鲤鱼 调试成功后下载至实验装置的芯片上 , 鲤鱼 再利用外接 D/A 转换 电路实现以上设计
13、功能 。 草鱼 此种波形发生模块 时钟 clk 复位 reset 波形输出选择模块 图 1-1 草鱼系统的总体原理框 基于 FPGA 的函数发生器设计 2 方案 完全可以生成设计要求的 6 种波形 , 鲤鱼 而且通过软件仿真可以直观的观测的输出的波形 参数 , 鲤鱼 方便调试和更改波形参数 , 鲤鱼 外围电路简单 , 鲤鱼 减少器件损耗 , 鲤鱼 精度高 。 草鱼 草鱼 基于方案四的外围电路简单容易实现 、 pork波形产生精度高 、 pork易于仿真观测调试的优点 ,鲤鱼 因此本设计的函数发生器选择方案四完成波形发生的全部功能 。 草鱼 草鱼 2.2 草鱼 波形 函数 输出 控制 方式选择
14、草鱼 方案一 : por k控制 多路 D/A 开关 输出 方式 草鱼 此种方案为每一路输出的波形函数使用一路 D/A 转换后输出 , 鲤鱼 通过控制 开关控制每一路 D/A 是否 工作 , 鲤鱼 决定 输出的 波形 。 草鱼 此种方案可以同时输出多路波形 , 鲤鱼 但是需要路 D/A 转化器 , 鲤鱼 外围电路复杂 , 鲤鱼 制作成本较高 而且控制复杂 。 草鱼 草鱼 方案 二 : por k采用数据选择器方式 草鱼 此种方案可以利用 VHDL 语言写出数据选择器 , 鲤鱼 然后 每种函数发生器的输出 和数据选择器输入相连接 , 鲤鱼 通过控制开关选择对应的波形输出 。 草鱼 方案二完 全可
15、以得到方案一的设计要求 , 鲤鱼 而且只需一个 D/A 转换器就可以 。 草鱼 电路不需要外部搭建 , 鲤鱼 节约成本 且控制简单方便 。 草鱼 在实验课时候已经完成 8 选 1 数据选择器的设计制作 , 鲤鱼 因此本次设计可以直接调用 。 草鱼 草鱼 方案三 : por k采用数据分配器方式 草鱼 此种方案利用数据分配器的功能 , 鲤鱼 通过控制开关选择相应的函数发生器模块 , 鲤鱼 使之产生相应的波形输出 , 鲤鱼 并通过数据分配器的使能复位控制决定是否输出波形 , 鲤鱼 此种方案和方案二很相似 , 鲤鱼 也能够实现设计的功能 也具有方案二的优点 , 鲤鱼 。 草鱼 草鱼 基于方案二的设计
16、简便 、 pork节约制作元件和成本 、 pork控制简便等 优点 , 鲤鱼 选择方案二作为 波形函数输出 控制 方式 。 草鱼 草鱼 草鱼 草鱼草鱼 草鱼草鱼 草鱼草鱼 草鱼草鱼 草鱼草鱼 草鱼草鱼 草鱼草鱼 草鱼草鱼 草鱼3 草鱼系统细化框图 草鱼 系统时钟输入后 , 鲤鱼 通过复位开关选择是否产生波形 , 鲤鱼 当各个模块产生相应的信号波形后 , 鲤鱼 通过波形选择模块波形选择开关选泽输出不同的波形 , 鲤鱼 再通过 D/A 转换器转换 ,鲤鱼 就可以把数字信号(由 FPGA 输出)变成了相应模拟的信号波形 。 草鱼 整个系统设计的核心就是 FPGA 部分 。 草鱼 草鱼 草鱼 基于 F
17、PGA 的函数发生器设计 3 草鱼 草鱼 草鱼草鱼 草鱼草鱼 草鱼草鱼 草鱼草鱼 4 草鱼各模块 程序设计 及仿真 草鱼 4.1 草鱼 递增斜波模块 草鱼 递增斜波 icrs 的 VHDL 程序如 附录 所示 , 鲤鱼 其中 clk 是输入时钟端口 , 鲤鱼 reset 为输入复位端口 , 鲤鱼 q 为八位二进制输出端口 。 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 图 4-1 草鱼 -1斜波框图 草鱼 图 4-1-2 草鱼 递增斜波模块仿真图 草鱼 草鱼 程序设计的 当复位信号为 0 时 ,输出为 0, 鲤鱼 无对应的波形产生 。 草鱼 当复 位信号为 1 时 , 鲤鱼每当检测到时钟上升沿时
18、 , 鲤鱼 计数器值加 1, 鲤鱼 当增加到最大后清零 。 草鱼 计数值增加呈现线性关系 , 鲤鱼 因此输出的波形是递增的斜波 。 草鱼 从仿真波形图也能看出这种变化规律 。 草鱼 VHDL描述为 : por k草鱼 波形选择模块 递增斜波模块 递减斜波模块 三角波模块 阶梯波模块 正弦波模块 方波模块 时钟 clk 复位 reset 波形选择开关 D/A 转换器 图 3 系统的最终整体的原理图 基于 FPGA 的函数发生器设计 4 ARCHITECTURE 草鱼 behave 草鱼 OF 草鱼 icrs 草鱼IS 草鱼 BEGIN 草鱼草鱼 PROCESS(clk,reset)草鱼 草鱼 草
19、鱼VARIABLE 草鱼 tmp: 草鱼STD_LOGIC_VECTOR(7 草鱼 DOWNTO 草鱼 0);pork草鱼 草鱼 草鱼 BEGIN 草鱼 IF 草鱼 reset=0 草鱼 THEN 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 tmp:= 草鱼 “00000000“;por k-复位信号清零 草鱼 ELSIF 草鱼 clkEVENT 草鱼 AND 草鱼 clk=1 草鱼 THEN 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 IF 草鱼 tmp=“11111111“ 草鱼 THEN 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 tmp:=“00000000“;por k-递增到最大值清零 草鱼
20、草鱼 草鱼 草鱼 草鱼 草鱼 ELSE 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 tmp:=tmp+1;por k-递增运算 草鱼 END 草鱼 IF;pork草鱼 END 草鱼 IF;pork草鱼 q=tmp;por k草鱼 END 草鱼 PROCESS;pork草鱼 END 草鱼 behave;por k草鱼 4.2 草鱼 递减斜波模块 草鱼 递减斜波 dcrs 的 VHDL 程序如附录所示 , 鲤鱼 其中 clk 是输入时钟端口 , 鲤鱼 reset 为输入复位端口 , 鲤鱼 q 为八位二进制输出端口 。 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 图 4-2-1 草鱼 递减斜波框图 草鱼
21、 图 4-2-2 草鱼 递减斜波模块仿真图 草鱼 程序 设计的 是复位信号为 0 时输出为 0, 鲤鱼 无对应的波形产生 。 草鱼 当复位信号为 1 时 , 鲤鱼当 每当检测到时钟上升沿时 , 鲤鱼 计数值减 1, 鲤鱼 当 减到 0 后赋值到最大 。 草鱼 计数值 减少 呈现线性关系 , 鲤鱼 因此输出的波形是 递减 的斜波 。 草鱼 从仿真波形图也能看出这种变化规律 。 草鱼基于 FPGA 的函数发生器设计 5 VHDL 描述为 : por k草鱼 ARCHITECTURE 草鱼 behave 草鱼 OF 草鱼 dcrs 草鱼 IS 草鱼 BEGIN 草鱼草鱼 PROCESS(clk,re
22、set)草鱼 草鱼 草鱼VARIABLE 草鱼tmp: 草鱼STD_LOGIC_VECTOR(7 草鱼 DOWNTO 草鱼 0);pork草鱼 草鱼 草鱼 BEGIN 草鱼 IF 草鱼 reset=0 草鱼 THEN 草鱼 草鱼 tmp:=“11111111“;por k-复位信号置最大值 草鱼 ELSIF 草鱼 clkEVENT 草鱼 AND 草鱼 clk=1 草鱼 THEN-检测时钟上升沿 草鱼 IF 草鱼 tmp=“00000000“ 草鱼 THEN 草鱼 草鱼 tmp:=“11111111“;por k-递减到 0 置最大值 草鱼 ELSE 草鱼 草鱼 tmp:=tmp-1;por k
23、-递减运算 草鱼 END 草鱼 IF;pork草鱼 END 草鱼 IF;pork草鱼 q=tmp;por k草鱼 END 草鱼 PROCESS;pork草鱼 END 草鱼 behave;por k草鱼 4.3 草鱼 三角波模块 草鱼 三角波波 delat 的 VHDL 程序如附录所示 , 鲤鱼 其中 clk 是输入时钟端口 , 鲤鱼 reset 为输入复位端口 , 鲤鱼 q 为八位二进制输出端口 。 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 图 4-3-1 草鱼 三角波框图 草鱼 图 4-3-2 草鱼 三角波模块仿真图 草鱼 三角波波形是对称的 , 鲤鱼 每 边呈线形变化 , 鲤鱼 所以可以根据 数
24、据做简单运算 , 鲤鱼 就可以得 到三角波 。 草鱼 程序设计的是 reset 复位信号为 0 时输出为 0, 鲤鱼 无对应的波形产生 。 草鱼 当复位信号为 1 时 , 鲤鱼 当每当检测到时钟上升沿时 , 鲤鱼 当计数的数据不是最大值时 , 鲤鱼 数值做递增基于 FPGA 的函数发生器设计 6 运算 , 鲤鱼 当增大到最大时 , 鲤鱼 然后再做递减运算 , 鲤鱼 因此输出的波形便呈现出三角波的形状 。草鱼 从仿真波形图也能看出这种变化规律 。 草鱼 VHDL 描述如下 : por k草鱼 ARCHITECTURE 草鱼 behave 草鱼 OF 草鱼 delat 草鱼 IS 草鱼 BEGIN
25、 草鱼草鱼 PROCESS(clk,reset)草鱼 草鱼 草鱼 VARIABLE 草鱼 tmp: 草鱼 STD_LOGIC_VECTOR(7 草鱼 DOWNTO 草鱼 0);pork草鱼 VARIABLE 草鱼 a: 草鱼 STD_LOGIC;por k草鱼 草鱼 草鱼 BEGIN 草鱼 IF 草鱼 reset=0 草鱼 THEN 草鱼 草鱼 草鱼 草鱼 tmp:=“00000000“;por k-复位信号为 0, 鲤鱼 置最小值 草鱼 草鱼 草鱼 草鱼 草鱼 ELSIF 草鱼 clkEVENT 草鱼 AND 草鱼 clk=1 草鱼 THEN-检测时钟上升沿 草鱼 草鱼 IF 草鱼 a=0
26、草鱼 THEN 草 鱼 草鱼 IF 草鱼 tmp=“11111110“ 草鱼 THEN 草鱼 tmp:=“11111111“;por k 草鱼 -置最大值 草鱼 a:=1;por k 草鱼 草鱼 草鱼 ELSE 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 草鱼 -不是最大值时递增 草鱼 tmp:=tmp+1;por k-递增运算 草鱼 草鱼 END 草鱼 IF;pork 草鱼 草鱼 草鱼 ELSE 草鱼 草鱼 IF 草鱼 tmp 草鱼 =“00000001“ 草鱼 THEN 草鱼 tmp:=“00000000“;por k 草鱼 -置最小值 草鱼 a:=0;por k草鱼 草鱼 ELSE 草鱼 草鱼 草鱼 -a 为 1 时 , 鲤鱼 执行递减 运算 草鱼 tmp:=tmp-1;por k-递减运算 草鱼 END 草鱼 IF;pork草鱼 END 草鱼 IF;pork草鱼 END 草鱼 IF;pork草鱼 q=tmp;por k草鱼 END 草鱼 PROCESS;pork草鱼 END 草鱼 behave;por k草鱼 4.4 草鱼 阶梯波 模块 草鱼
Copyright © 2018-2021 Wenke99.com All rights reserved
工信部备案号:浙ICP备20026746号-2
公安局备案号:浙公网安备33038302330469号
本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。