EDA课程设计正弦信号发生器的设计Word格式.docx

上传人:b****1 文档编号:1077148 上传时间:2023-04-30 格式:DOCX 页数:13 大小:404.23KB
下载 相关 举报
EDA课程设计正弦信号发生器的设计Word格式.docx_第1页
第1页 / 共13页
EDA课程设计正弦信号发生器的设计Word格式.docx_第2页
第2页 / 共13页
EDA课程设计正弦信号发生器的设计Word格式.docx_第3页
第3页 / 共13页
EDA课程设计正弦信号发生器的设计Word格式.docx_第4页
第4页 / 共13页
EDA课程设计正弦信号发生器的设计Word格式.docx_第5页
第5页 / 共13页
EDA课程设计正弦信号发生器的设计Word格式.docx_第6页
第6页 / 共13页
EDA课程设计正弦信号发生器的设计Word格式.docx_第7页
第7页 / 共13页
EDA课程设计正弦信号发生器的设计Word格式.docx_第8页
第8页 / 共13页
EDA课程设计正弦信号发生器的设计Word格式.docx_第9页
第9页 / 共13页
EDA课程设计正弦信号发生器的设计Word格式.docx_第10页
第10页 / 共13页
EDA课程设计正弦信号发生器的设计Word格式.docx_第11页
第11页 / 共13页
EDA课程设计正弦信号发生器的设计Word格式.docx_第12页
第12页 / 共13页
EDA课程设计正弦信号发生器的设计Word格式.docx_第13页
第13页 / 共13页
亲,该文档总共13页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

EDA课程设计正弦信号发生器的设计Word格式.docx

《EDA课程设计正弦信号发生器的设计Word格式.docx》由会员分享,可在线阅读,更多相关《EDA课程设计正弦信号发生器的设计Word格式.docx(13页珍藏版)》请在冰点文库上搜索。

EDA课程设计正弦信号发生器的设计Word格式.docx

(2)设计可以产生正弦波信号的电路 

(3)连接实验箱上的D/A转换器和示波器,观察正弦波波形

二.设计方案

(1)设计能存储数据的ROM模块,将正弦波的正弦信号数据存储在在ROM中,通过地址发生器读取,将正弦波信号输入八位D/A转化器,在示波器上观察波形

(2)用VHDL编写正弦波信号数据,将正弦波信号输入八位D/A转化器,在示波器上观察波形 

TLV5620D/A转换

三.设计框图

图1设计框图

信号发生器主要由以下几个部分构成:

计数器用于对数据进行采样,ROM用于存储待采样的波形幅度数值,TLV5620用于将采集的到正弦波数字量变为模拟量,最后通过示波器进行测量获得的波形。

其中,ROM设置为7根地址线,8个数据位,8位并行输出。

TLV5260为串行输入的D/A转换芯片,因此要把ROM中并行输出的数据进行并转串。

四.实现步骤

1.定制ROM

ROM的数据位选择为8位,数据数选择128个。

利用megawizard 

plug-in 

manager定制正弦信号数据ROM宏功能块,并将上面的波形数据加载于此ROM中。

如图3所示。

图2ROM存储的数据

图3调入ROM初始化数据文件并选择在系统读写功能

2.设计顶层

顶层设计主要是通过编写VHDL语言或设计原理图用于产生计数信号和调用room存储的数据并输出。

在此步骤里要建立EDA工程文件,工程文件结构如图4所示,SIN_CNT中的VHDL代码如下:

LIBRARYIEEE;

USEIEEE.STD_LOGIC_1164.ALL;

USEIEEE.STD_LOGIC_UNSIGNED.ALL;

ENTITYSIN_GNTIS

PORT(RST,CLK,EN:

INSTD_LOGIC;

ADDR:

OUTSTD_LOGIC_VECTOR(6DOWNTO0);

DOUT:

OUTSTD_LOGIC_VECTOR(7DOWNTO0));

ENDSIN_GNT;

ARCHITECTUREBEHAVIOROFSIN_GNTIS

COMPONENTROMIS

PORT(address:

INSTD_LOGIC_VECTOR(6DOWNTO0);

inclock:

q:

ENDCOMPONENT;

SIGNALQ:

STD_LOGIC_VECTOR(6DOWNTO0);

BEGIN

U:

ROMPORTMAP(address=>

Q,

inclock=>

CLK,

q=>

DOUT);

PROCESS(CLK,RST,EN)

IFRST='

0'

THEN

Q<

="

0000000"

;

ELSIFCLK'

EVENTANDCLK='

1'

IFEN='

=Q+1;

ENDIF;

ENDPROCESS;

ADDR<

=Q;

ENDBEHAVIOR;

工程文件的建立步骤简述如下:

1、新建一个文件夹。

利用资源管理器,新建一个文件夹,如:

E:

\SIN_GNT。

注意,文件夹名不能用中文。

2、输入源程序。

打开QuartusII,选择菜单“File”→“New”,在New窗中的“DeviceDesignFiles”中选择编译文件的语言类型,这里选“VHDLFiles”。

然后在VHDL文本编译窗中键入如图4所示的VHDL程序。

图4Quartusii编辑代码窗口

3、文件存盘。

选择“File”→“Save 

As”,找到已设立的文件夹e 

:

\SIN_GNT 

,存盘文件名应该与实体名一致,即singt.vhd。

当出现问句“Do 

you 

want 

to 

create…”时,若选“否”,可按以下的方法进入创建工程流程;

若选“是”,则直接进入创建工程流程,创建工程流程如下:

3.1、建立新工程管理窗。

选择菜单“File”→“NewPrejectWizard”,即弹出工程设置对话框。

点击此框最上一栏右侧的按钮“…”,找到文件夹E:

\SIN_GNT,选中已存盘的文件singt.vhd(一般应该设定顶层设计文件为工程),再点击“打开”,即出现如图5所示设置情况。

其中第一行表示工程所在的工作库文件夹;

第二行表示此项工程的工程名,此工程名可以取任何其它的名,通常直接用顶层文件的实体名作为工程名,第三行是顶层文件的实体名。

3.2、将设计文件加入工程中。

然后点击下方的“Next”按钮,在弹出的对话框中点击“File”栏的按钮,将此工程相关的所有VHDL文件加入进此工程(如果有的话),即得到如图6所示的情况。

工程的文件加入的方法有两种:

第1种是点击右边的“AddAll”按钮,将设定的工程目录中的所有VHD文件加入到工程文件栏中;

第2种方法是点击“…”按钮,从工程目录中选出相关的VHDL文件。

图5为工程文件命名

3.3、选择仿真器和综合器类型。

点击图6的“Next”按钮,这时弹出的窗是选择仿真器和综合器类型的,如果都是选默认的“NONE”,表示都选QuartusII中自带的仿真器和综合器,因此,在此都选默认项“NONE”。

3.4、选择目标芯片。

再次点击“Next”,选择目标芯片。

首先在“Family”栏选芯片系列,在此选“Cyclone”系列,并在此栏下选“Yes”,即选择一确定目标器件。

再按键“Next”,选择此系列的具体芯片:

EP1T3C144C8(图7),按键“Next”后,弹出工程设置统计窗口,以上列出了此项工程的相关设置情况。

图6添加工程文件

图7选择器件芯片类型

3.5、结束设置。

最后按键“Finish”,即已设定好此工程(图8),此工程管理窗主要显示工程项目的层次结构。

图8Quartusii中EDA工程文件结构

对程序进行编译,以测程序是否有错误,最终生成的原理图图9。

图9编译仿真后生成的原理图

4.仿真

仿真就是对设计项目进行一项全面彻底的测试,以确保设计项目的功能和时序特性,以及最后的硬件器件的功能与原设计相吻合。

仿真操作前必须利用QuartusII的波形编辑器建立一个矢量波形文件以作仿真激励。

VWF文件将仿真输入矢量和仿真输出描述成为一波形的图形来实现仿真。

QuartusII允许对整个设计项目进行仿真测试,也可以对该设计中的任何子模块进行仿真测试。

方法是设定为“Simulation 

focus”。

仿真设定单元(Simulation 

Settings)允许设计者指定该模块的仿真类型,仿真覆盖的时序和矢量激励源等。

Time/Vectors仿真参数设定窗允许设定仿真时间区域,以及矢量激励源。

对工程的编译通过后,必须对其功能和时序性质进行仿真测试,以了解设计结果是否满足原设计要求。

步骤如下:

4.1、打开波形编辑器。

选择菜单File中的New项,在New窗中选“Other 

Files”中的“Vector 

Waveform 

File”,点击OK,即出现空白的波形编辑器。

4.2、设置仿真时间区域。

为了使仿真时间轴设置在一个合理的时间区域上,在Edit菜单中选择“End 

Time”项,在弹出的窗中的“Time”窗中键入50,单位选“us”,即整个仿真域的时间即设定为50微秒,点击OK,结束设置。

4.3、存盘波形文件。

选择File中的“Save 

as”,将以名为cnt4b.vwf(默认名)的波形文件存入文件夹E:

\sin_gnt\中。

图10工程仿真图形

4.4、输入信号节点。

将计数器计的端口信号节点选入此波形编辑器中。

方法是首先选View菜单中的“UtilityWindows”项的“NodeFinder”选项。

其对话框如图3-21所示,在Filter框中选Pins:

all,然后点击“List”钮。

于是在下方的“NodesFound”窗中出现了设计中的singt工程的所有端口引脚名(如果此对话框中的“List”不显示,需要重新编译一次,即选Processing→StartCompilation,然后再重复以上操作过程)。

用鼠标将重要的端口节点CLK和输出总线信号DOUT都拖到波形编辑窗,点击波形窗左侧的全屏显示钮,使全屏显示,并点击放大缩小钮后,用鼠标在波形编辑区域右键点击,使仿真坐标处于适当位置。

4.5、编辑输入波形(输入激励信号)。

点击时钟名CLK,使之变兰色,再点击左列的时钟设置键,在Clock窗中设置CLK的周期为3us;

所示的Clock窗中的“Duty 

cycle”是占空比,可选50,即50%占空比,再对文件存盘。

4.6、总线数据格式设置。

如果点击如图3-22所示的输出信号“DOUT”左旁的“+”,则将展开此总线中的所有信号;

如果双击此“+”号左旁的信号标记,将弹出对该信号数据格式设置的对话框。

在该对话框的“Radix”栏有4。

4.7、启动仿真器。

所有设置完毕,在菜单Processing项选“Start 

Simulation”,直到出现“Simulation 

was 

successful”。

在进行完工程仿真后便可以进行硬件仿真,将程序下载到锁定了引脚的芯片上,芯片锁定图如下:

图11引脚锁定图

图12硬件仿真波形

5.链接DA和波形测试

将FPGA产生的波形数据介入到DA转换芯片上,并设置同步脉冲。

然后通过示波器观察,便可看到如图12和图13的波形图。

图12波形测量1

图13波形测量2

五.总结

这次EDA实验设计历时两个星期,学到很多很多的东西,同时不仅可以巩固以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。

主要可以从以下两个方面进行总结。

第一在专业知识上:

EDA的学习对数字电路有个很高的要求,通过这次编程学习,使我明白了专业基础知识的重要性和有用性。

同时,软件的使用技巧作为一行基本功需要熟练的掌握,只有既有专业知识,又会动手实践才能把知识学好用好。

第二在综合能力上:

在设计的过程中遇到问题,可以说得是困难重重,这毕竟第一次做的,难免会遇到过各种各样的问题,同时在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固。

这次设计也启发了我在以后的学习中一定要耐心、细心、认真,不可粗枝大叶。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 经管营销 > 经济市场

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2