基于EDA技术的正弦波方波三角波锯齿波四种波形发生器

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

基于E D A技术的正弦波方波三角波锯齿波四种波
形发生器
Newly compiled on November 23, 2020
梧州学院课程论文
(2014 -2015学年第2学期)
课程论文题目:基于EDA技术的正弦波、方波、三角波、锯齿波、四种波形发生器
学生姓名:
目录
论文题目: 基于EDA技术的正弦波、方波、三角波、锯齿波、四种波形发生器
学生姓名:
摘要
随着EDA技术以及大规模集成电路技术的迅猛发展,波形发生器的各方面性能指标都达到了一个新的水平。

采用CPLD/FPGA器件在QuartuesII设计环境中用VerilogHDL语
言完成的波形发生器具有频率稳定性高,可靠性高,输出波形稳定等特点。

本文介绍了基于EDA技术的波形发生器的研究与设计。

本文采用VerilogHDL语言,运用LPM-ROM制定的方法设计的波形发生器,经过按键来选择四种波形实现了正弦波,方波,三角波,以及锯齿波四种波形的输出,经过实际下载到FPGA实验板上,设计要求已经完全实现。

关键词:VerilogHDL 波形发生器 LPM-ROM FPGA
一、系统设计目的与要求
、前言
随着现代化集成电路和计算机技术的不断飞跃发展,使得电子产品的设计在市场上的应用更为广泛,而且其实现方法的选择也变得越来越多。

基于电路板的设计方法是传统电子产品通用的一中设计方案,这种方法是需要采用较多的固定功能器件,再通过这几器件的设计配合,从而实现模拟电子产品的功能,这些工作的重点就在于如何选择这些器件及怎样设计电路板。

由于可编程逻辑器件的出现和计算机性价比的提高,这影响了传统的数字电子系统的设计方法,对其进行了解放性的革命。

现在要实现电子系统的功能是通过设计师自己设计的芯片来完成的,之后将传统的固件选用及电路板设计工作放在芯片设计中进行,这种方法是现代电子系统的设计方法。

上个世纪九十年代以来,由于复杂化、数字化和大规模集成化的电子产品设计系统的日趋成熟,使得各种电子系统的设计软件也应运而生。

在这些专业化软件中,EDA (Electronic Design Automation)具有一定的代表性,EDA技术是一种基于芯片的现代电子系统设计方法。

它的优势主要集中在能用HDL
语言进行输入、进行PLD(可编程器件)的设计与仿真等系统设计自动化上;上个世纪九十年代,可编程器件又出现了模拟可编程器件,由于受技术、可操作性及性价比的影响,今后EDA技术会向模拟可编程器件的设计与仿真方向发展,并占据市场的一定份额。

EDA技术主要包括大规模可编程逻辑器件、硬件描述语言、开发软件工具及实验开发系统4个方面。

其中,大规模可编程逻辑器件是利用EDA技术进行电子系统设计的载体硬件,描述语言是利用EDA技术进行电子系统设计的主要表达手段,开发软件工具是利用EDA技术进行电子系统设计的智能化与自动化设计工具,实验开发系统则是提供芯片下载电路及EDA实验、开发的外围资源。

数字化是电子设计的必由之路,这已成为共识。

在数字化的道路上,我国的电子技术经历了一系列重大的变革。

从应用小规模集成电路构成电路系统,到广泛地应用微控制器或单片机(MCU),在电子系统设计上发生了具有里程碑意义的飞跃。

电子产品正在以前所未有的速度进行着革新,主要表现在大规模可编程逻辑器件的广泛应用。

在可编程芯片CPLD(复杂可编程逻辑器件)和FPGA(现场可编程门阵列)上实现电子系统的设计,必将成为今后电子系统设计的一个发展方向。

所以电子设计技术发展到今天,又将面临另一次更大意义的突破,即CPLD/FPGA在EDA(电子设计自动化)基础上的广泛应用。

本设计将采用基于VHDL的EDA设计来实现波形发生器的各种功能。

、功能要求:
(1)可产生题目要求的几种波形(频率可调,一个波形周期不少于64点),利用DAC0832输出,用示波器观察。

(2)具有波形选择、起动、停止功能。

(3)利用数码LED管或液晶显示工作状态。

、设计目的:
(1)本次课程设计的目的是为了培养我们在动手方面要能够独立自主的完成的能力。

(2)让我们更加理解VerilogHDL语言以及熟练应用。

(3)了解FPGA的外围器件的应用以及硬件电路的设计原理
二、设计方案以及原理说明
、设计方案
本系统由FPGA(可编程门阵列),数模转换,时钟(提供clk信号)等组成。

全部为FPGA试验箱所有,不需要增加任何器件。

用FPGA产生的255—0的计数值输入到
DAC0832中,将产生对应的模拟信号。

本系统采用的是软硬件结合的方法。

由于一个周期内的任意波形的离散样点数对硬件实现的复杂性直接产生影响,因此,为了简化硬件存储器件的规模,取128个样点进行讨论。

具体做法是先对一个周期进行128点采样,然后依次存于ROM中,再以fs频率给出地址码,控制存储器周期的读出数据,并经D、A转换和模拟放大,便能得到一定的频率的周期信号。

因此周期信号的频率为fo=fs/M.其中M为采样点个数,本设计中取值为128;fs为存储器读出频率。

显然,通过改变读出频率fs,便可获得不同频率的周期信号fo.。

系统结构图如图1所示。

波形发生器电路系统结构图:
、原理说明
以正弦波为例说明。

完整的波形发生器由三部分组成:由计数器构成的地址信号发生器、波形数据ROM和D/A。

在FPGA的顶层文件中,计数器通过外来控制信号和高速时钟信号向波形数据ROM发出地址信号,输出波形的批评你率由发出的地址信号的速度决定;当以固定的频率扫描输出地址时,输出波形是固定频率,而当以周期性时变方式扫描输出地址时,则输出波形为扫频信号。

波形数据ROM中存有发生器的波形数据,如正弦波或者三角波数据等。

当接受来自FPGA的地址信号后,将从数据线输出相应的波形数据。

波形数据ROM可以由多种方式实现,如在FPGA外面外接普通ROM或者由FPGA中的EAB模块相当,即利用LPM-ROM来实现。

D/A转换器负责将ROM输出的数据转换成模拟信号,经过滤波电路后输出。

输出波形的频率上限与D/A转换器件的转换速度有重要关系,我们的试验箱上用的是
DAC0832。

DAC0832是8位并行、中速(其转换时间1us)、电流型D/A转换芯片。

DAC0832
内部由三部分组成,“8位输入寄存器”用于存放CPU送来的数字量,使输入数
字量得到缓冲和锁存,由加以控制。

“8位DAC寄存器”用于存放待转换的数字量,由控制。

“8位D/A转换电路”由8位T型网路和电子开关组成,电子开关受“8位DAC寄存器”输出控制,T型电阻网路能输出与数字量成正比的模拟电流。

因此,DAC0832通常需要外接运放才能得到模拟输出电压。

DAC0832共有20条引脚,双列直插式封装。

⑴数字输入线DI7~DI0(8条) DI7~DI0常和CPU数据总线相连,用于输入CPU送来的待转换数字里,DI7为最高位。

⑵控制线(5条)为片选线。

当为低电平时,本片被选中工作;当为高电平时,本片不被选中工作。

⑶输出线3条为运算放大器的反馈线,常接到运放的输出端。

和为两条模拟电流输出线。

+为一常数。

⑷电源线(4条) VCC为电源输入线,可在+5~+15V范围捏;为参考电压,一般在-10~+10V范围内,由稳压电源提供;DGND为数字地线;AGND为模拟量地线。

通常接在一起。

三、设计内容
、正弦波发生器
⑴正弦波信号波形数据文件的建立
ROM中的地址线宽为8,数据线宽为8,其中的正弦波波形数据由128个点构成,此数据经DAC0832,可在示波器上观察到正弦波形。

ROM中的波形文件建立如图:
⑵ LPM_ROM定制
①选菜单 tools—MegaWizard Plug-In Manager,选择Create a new... ,然后
按next,进入。

选中LPM-ROM;最后在Browse下的栏中键入路径与输出文件
名。

②单击Next ,选择ROM的数据位宽度为8,地址线宽度为8,即设置此ROM能存
储8位二进制数据共128个,然后进入。

③打开已经定制的ROM文件,观察文件中的实体表达、COMPONEN语句,例化语句
和初始化文件的路径和文件名。

④最后将其设置为工程,并确定目标器件,进行测试,仿真波形如图所示。

⑶完成正弦信号发生器顶层文件的设计和测试
以下是正弦信号发生器的顶层设计。

其中调用了如上所说的ROM模块、ROM中的数据文件。

源程序:
module zhengxuanbo(RST,CLK,EN,Q);
output [7:0] Q; ddress(TMP),.inclock(CLK),.q(Q));
Endmodule
⑷仿真波形:
⑸功能描述:CLK为时钟信号,EN为使能,高电平有效。

⑹正弦波发生器实体图:
、方波发生器
⑴方波信号波形数据文件的建立
如图所示:
⑵ LPM_ROM的定制与正弦波同
⑶方波发生器的顶层文件的建立和测试。

源程序:
module fangbo(RST,CLK,EN,Q);
output [7:0] Q; ddress(TMP),.inclock(CLK),.q(Q));
Endmodule
⑷仿真波形:
⑸ CLK为时钟信号,EN为波形启动键,高电平有效。

由仿真图可以看出,满足产生方波的要求。

⑹方波发生器实体图:;
、三角波发生器
⑴三角波信号波形数据文件的建立
如图所示:
⑵ LPM_ROM的定制与正弦波相同
⑶三角波发生器的顶层文件的建立和测试。

源程序:
module sanjiao(RST,CLK,EN,Q);
output [7:0] Q; ddress(TMP),.inclock(CLK),.q(Q));
Endmodule
⑷仿真波形:
⑸功能描述:CLK为时钟信号,EN为波形启动键,高电平有效。

由仿真图可以看出,满足产生三角波的要求。

⑹三角波发生器实体图:
、锯齿波发生器
⑴锯齿波信号波形数据文件的建立
如图所示:
⑵ LPM_ROM的定制与正弦波同
⑶锯齿波发生器的顶层文件的建立和测试。

源程序:
module juchi(RST,CLK,EN,Q);
output [7:0] Q; ddress(TMP),.inclock(CLK),.q(Q));
Endmodule
⑷仿真波形
如图所示:
⑸功能描述:CLK为时钟信号,EN为波形启动键,高电平有效。

由仿真图可以看出,满足产生锯齿波的要求。

⑹锯齿波发生器实体图:
、波形的选择
(1)源程序:
module xuan(OUT,IN0,IN1,IN2,IN3,SEL);
output [7:0] OUT;
系统编程技术及其应用.南京:东南大学出版社,2007
[2]彭介华.电子技术课程设计指导.北京:高等教育出版社,2007
[3]李国丽,朱维勇.电子技术实验指导书.合肥:中国科技大学出版社,2008
[4]潘松,黄继业.EDA技术实用教程.北京:科学出版社,2008
[5]郑家龙,王小海,章安元.集成电子技术基础教程.北京:高等教育出版社,2007
[6]宋万杰,罗丰,吴顺君.CPLD技术及其应用.西安:西安电子科技大学出版社,2006
[7]张昌凡,龙永红,彭涛.可编程逻辑器件及VHDL设计技术.广州:华南工学院出版社,2001。

相关文档
最新文档