总结是对过去一定时期的工作、学习或思想情况进行回顾、分析,并做出客观评价的书面材料,它可使零星的、肤浅的、表面的感性认知上升到全面的、系统的、本质的理性认识上来,让我们一起认真地写一份总结吧。总结怎么写才能发挥它最大的作用呢?那么下面我就给大家讲一讲总结怎么写才比较好,我们一起来看一看吧。
EDA实验总结EDA实验收获与体会篇一
实验报告
姓名:汤灿亮 学号:2012118060 班级:1211自动化
实验一 quartus ⅱ的设计流程
一、实验目的:
1、掌握quartusⅱ安装过程;
2、熟悉quartusⅱ设计环境;
3、掌握quartusⅱ的设计过程。
二、实验内容:
用文本输入法设计一个二进制加法器。
三、实验步骤:
(一)、创建工作文件夹
(三)、设计文件输入
1、打开输入文件编辑器
点击菜单filenew„选择verilog hdl file建立一个文本设计文件。用文本输入法输入程序。
2、保存文件,文件名同程序的模块名。后缀.v
(四)、全编译(逻辑综合)
1、创建工程
点击菜单filenew project wizard…….进行工程设置。完成工程文件夹的选定、工程名、顶层设计文件名(主程序)、编程器件的选择等工程设置。
2、编译前的相关设置设置
⑴选择pld芯片:assignmenmtssettingsdevice弹出的窗口中选择选择芯片。
⑵选择配置芯片的工作方式assignmenmtssettingsdevicedevice&pin options弹出的窗口中首选general项,在options栏中选择auto-restart-configuration after error.⑶选择配置芯片和编程方式:assignmenmtssettingsdevicedevice&pin options弹出的窗口中选择configuration栏,在窗口中设置配置方式,配置芯片和是否需要生成压缩的配置文件。
⑷选择输出设置:(1)-(4)项默认方式,可以不做任何操作,⑸选择目标器件闲置引脚的状态:assignmenmtssettingsdevicedevice&pin options弹出的窗口中选择unused pins栏,在窗口中对闲置的引脚设置,推荐设置为as input tri-stated。
3、执行全程编译:processingstart compilation。完成对设计项目的检 错、逻辑综合、结构综合、配置文件生成以及时序分析。
(五)、功能仿真(或时序仿真)
建议先做功能仿真,以检验设计项目的逻辑真确性,这样可以提高设计效率。
1、功能仿真设置:assignmenmtssettings弹出的窗口中选择simulator settings。在右边simulation mode中选择 functional.2、processinggenerate functional simulation netlist,生成功能仿真所需的文件。
3、建立波形文件并进行功能仿真
⑴filenew,在窗口中选择vector waveform file打开向量波形文件编辑器。
⑵设置仿真时间区域:可默认。一般几十微妙。时间区域过长,使仿真时间变长,影响仿真效率。
⑶在向量波形文件编辑器中添加项目的相关引脚。原则上是所有引脚,但有的项目引脚很多,可以只添加必要的一些引脚。双击向量波形文件编辑器name栏的空白区域后,会弹出一个“insert node or bus”对话框,在弹出的对话框中选择“node finder„”按钮,则弹出“node finder„”对话框,选择filter:pins:all,然后点击list,nodes found栏将列出所有输入、输出端口。选择要观察的信号,点击“”命令按钮加入到观察目标窗口中。选择ok,则在波形图中加入了待观察信号的图形。
或者执行viewutility windowsnode finder命令打开node finder窗口,在弹出的窗口中将所需引脚拖入波形编辑器中。
⑷编辑输入波形:对所有的输入引脚设置合适的波形。⑸启动仿真器:processingstart simulation.⑹观察分析仿真结果。仿真结果保存于文件“simulation report”,此文件在仿真完成后会自动弹出。若仿真结果有出入,重新修改程序,直到仿真结果没有问题。
(六)、下载验证:
1、芯片选择acex1kep1k30qc208-2;
2、引脚锁定:
3、全编译;
4、下载线连接:将25针连下一端连接电脑lpt1口,一端连接到编程模块的db25接口,再用十针连线一头插入通用编程模块jtga下载接口处,另一头连接到目标芯片的下载接口。
5、打开实验箱电源,将模式选择开关ctrl的(2)(4)(8)拨至on,使按键kd1,kd2,led1,led2,led3,led4,led5等有效。
6、下载:toolsprogrammer,完成下载。
7、拨动开关按键kd1,kd2验证电路。
四、实验程序及仿真结果
(一)、实验程序:
时序仿真结果:
波形文件及仿真:
五、实验箱现象描述
注:在程序正确,正确操作实验箱并成功下载并正常运行程序的前提下,现象为:实验箱上一排设定的led灯,分别为4个表示四位二进制码,一个表示使能信号en,一个表示复位信号rst,一个表示置数信号,一个进位位cout,高电平时表示进位,四个用于置数的灯。en信号高电平有效,低电平起保持作用,rst低电平有效,起复位作用,load信号低电平有效,起置数作用。启动实验箱,让en灯亮(高电平),rst灯亮(高电平),load灯亮(高电平),此时表示四位二进制码的led灯分别从0到9计数(约为1s记一个数),到10的时候,显示数的四个led灯表示成0(全灭),进位位灯(cout)闪动一次(表示进一位),如此反复。使en灯熄灭(低电平),显示数的灯停止变动,保持在它当前所表示的数值。恢复en灯亮,继续计数。使rst灯熄灭(低电平),显示数的灯立即变为全灭(表示复位为0)。设置任意值,使load灯熄灭(低电平),显示灯变成设置的数值,然后正常计数。
六、心得体会
一、实验目的:
二、实验内容
用原理图输入法设计一个2位频率计
三、实验步骤
1.在顶层文件设计窗口中设计频率计,频率计的设计分成几部分设计,分别是一个2位十进制计数器,一个时序控制电路,一个显示电路模块。
2.先设计2位十进制计数器,如图显示为设计好的2位十进制计数器。
步骤:(1)、点击file—new,弹出如图所示窗口,点击design file中block diagram/schematic file,再点击ok即可。(2)、在弹出的bdf文件设计窗口中设计所需的设计,设计完成后,点击编译按钮,编译无误后,再进行时序仿真。
结果如图:
(3)、即可点击file—created/update—create symbol files for current file.生成元件符号,供高层次设计调用。注意:需要独立建立工程,2位十进制计数器的工程名和bdf文件名都为counter8。
3、设计时序控制电路,设计步骤与设计2位类似,设计完成后,一样需要设计文件符号供高层次设计调用,如图为设计好的时序控制电路。
4.在顶层设计窗口中设计顶层设计,最终的设计如图
进行时序仿真无误后进行波形仿真,结果如图:
可以从波形仿真中看出,当输入的待测信号的周期为410ns的时候,所测的的频率的最后两位为39。
四、试验箱验证及现象描述
上显示为16,当输入为128hz时,数码管上显示为28。
五、心得体会
这次实验中,按照书上面的接线图,完成基本的接线,然后在电脑上面设计原理图,进行实验的测试,掌握用eda技术的层次化设计方法,在实验中也出现过点失误,软件运行出错,经过检查,发现软件没有破解,在实验中还是要注意小细节。
实验三简易正弦波信号发生器设计
一、实验目的:
1、进一步熟悉quartusii设计流程;
2、熟悉lmp_rom与fpga硬件资源的使用方法。3、熟悉signaltap ii嵌入式逻辑分析仪的使用方法。
二、实验内容
用原理图设计一个简易的正弦波信号发生器。
三、实验步骤
1.建立一个工程,取名为sin_gnt。
由图可知,在时间脉冲的作用下,ar计数,相对于的,q也从正弦信号数据存储器rom中输出相对应的数值,由这两项,这可以在示波器上输出正弦波。
四、心得体会
实验四用状态机实现序列检测器的设计
一、实验目的
1、熟悉状态机的作用及设计方法;
2、学习用状态机实现序列检测器的设计,并对其进行仿真和硬件测试。
二、实验原理
序列检测器可用于检测一组或多组由二进制码组成的脉冲序列信号,当序列检测器连续收到一组串行二进制码后,如果与检测器预先设置的码相同,则输出为1,否则输出为0。
三、实验内容
设计一个序列检测器,对1110010进行检测,对设计进行仿真测试并给出仿 真波形。
四、实验步骤
(1)运行软件,创建一个工程,取名为shck,打开文本文件编辑窗口,输入编写好的程序,如图所示。
取名为shiyan4,保存生成shiyan4.v文件。
(2)编译,时序仿真,直至无错误。
(4)点击波形仿真,结果如图
由仿真结果可以看出,只有当输入完整的1110010时,输出信号才是高电平。(5)点击tools—netlist viewers—state machine viewers,查看状态转换表。
四、心得体会
EDA实验总结EDA实验收获与体会篇二
quartus ii 软件使用及组合电路设计仿真
实验目的:
学习quartus ii 软件的使用,掌握软件工程的建立,vhdl源文件的设计和波形仿真等基本内容。
实验内容:
1.四选一多路选择器的设计 基本功能及原理 :
选择器常用于信号的切换,四选一选择器常用于信号的切换,四选一选择器可以用于4路信号的切换。四选一选择器有四个输入端a,b,c,d,两个信号选择端和及一个信号输出端y。当s输入不同的选择信号时,就可以使a,b,c,d中某一个相应的输入信号与输出y端接通。
逻辑符号如下:
程序设计:
软件编译:
仿真结果如下图所示
分析:
由仿真图可以得到以下结论:
七段译码器的逻辑符号:
程序设计:
软件编译:
。仿真分析:
仿真结果如下图所示:
分析: 由仿真的结果可以得到以下结论:
这完全符合我们最开始的功能设计,所以可以说明源vhdl程序是正确的。
实验心得:
通过这次实验,我基本掌握了quartus ii软件的使用,也掌握了软件工程的建立,vhdl源文件的设计和波形仿真等基本内容。在实验中,我发现eda这门课十分有趣,从一个器件的功能设计到程序设计,再到编译成功,最后得到仿真的结果,这其中的每一步都需要认真分析,一遍又一遍的编译,修改。当然,中间出现过错误,但我依然不放弃,一点一点的修改,验证,最终终于出现了正确的仿真结果,虽然有一些毛刺,但是总的来说,不影响整体的结果。
实验二:计数器设计与显示
实验目的:
(2)学习计数器设计,多层次设计方法和总线数据输入方式的
仿真,并进行电路板下载演示验证。实验内容:
1.完成计数器设计
基本功能及原理:
本实验要设计一个含有异步清零和计数使能的4位二进制加减可控计数器,即有一个清零端和使能端,当清零端为1时异步清零,即所有输出值都为0,当使能端为0时,计数器停止工作,当使能端为1时,正常工作,由时钟控制。另外,还应该有一个控制端,当控制端为0时,进行减法运算,当控制端为1时,进行加法运算。输出端有输出值和进位端,当进行加法运算时,输出值递增,当减法运算时,输出值递减,同时进位端进行相应的变化。
4位二进制加减计数器的逻辑符号:
程序设计:
软件编译:
分析:
由仿真图可以得到以下结论:
基本功能及原理:
程序设计:
软件编译:
上图为仿真图的一部分,由于整个图太大,所以显示一部分即可,其余部分如图以上图规律一直递增,直到50m为止,然后再重复,如此循环。
上图是部分输出的显示,由于整个图太大,所以只显示部分,其余部分如图递增。
分析:
基本功能及原理:
七段译码器是用来显示数字的,7段数码是纯组合电路,通常的小规模专用ic,如74或4000系列的器件只能作十进制bcd码译码,然而数字系统中的数据处理和运算都是2进制的,所以输出表达都是16进制的,为了满足16进制数的译码显示,最方便的方法就是利用vhdl译码程序在fpga或cpld中实现。本项实验很容易实现这一目的。输出信号的7位分别接到数码管的7个段,本实验中用的数码管为共阳极的,接有低电平的段发亮。
七段译码器的逻辑符号:
程序设计:
软件编译:
仿真结果如下图所示:
原理图连接好之后就可以进行引脚的锁定,然后将整个程序下载到已经安装好的电路板上,即可进行仿真演示。
实验心得:
经过本次试验,我学到了很多。首先,我加强了对quartus ii软件的掌握;其次,我掌握了电路图的顶层文件原理图的连接,学会了如何把自己设计的程序正确的转化为器件,然后正确的连接起来,形成一个整体的功能器件;最后,我学会了如何安装以及如何正确的把完整的程序下载到电路板上,并进行演示验证。
(循环彩灯控制器)
实验目的:
流水灯(循环彩灯)的设计 设计任务:
该彩灯控制器由时钟控制,reset异步清零,enable当做使能端,由两个开关do(0-1)来控制选择不同的花型,10个输出端lig(0-9)来控制10个led灯的亮灭。因为用了两个开关来控制花型,所以一共有4种花色。
彩灯控制器的逻辑符号:
程序设计:
3.七段译码器的设计
仿真波形如下: 第一种花型:
第二种花型:
第三种花型:
第四种花型:
仿真分析:
本次试验是在没有老师指导的情况下自己完成的,我在参考了网上的程序的情况下,最终成功的设计并正确的演示出了循环彩灯的不同花型。通过本次试验,我真正的体会到了dea这门课的乐趣,也发现它对我们的学习和生活带来很大的方便。
EDA实验总结EDA实验收获与体会篇三
张佳兴 2220131738 电气工程及其自动化1班
一、verilog语言反应硬件特性举例
cc(clk,en,cout)、input、output,这三个语句用verilog语言定义了一个逻辑器件,module后边括号内为端口名称,每个端口都对应硬件的一个引脚,引脚的输入输出性质都由input、output所定义,c语言中对变量的定义,都是int等反应数据大小的数据类型,不能反映硬件特性。
寄存器类型,表示一个具有保持作用的数据储存单元,它只能在always语句和initial语句中被赋值,并且它的值从一个赋值到另一个赋值被保存下来。这种类型就和实际芯片中的寄存器作用一样,可以将其中数据状态保存一定时间,c语言中没有这一类型。
语句当其检测到适当状态时,执行其中内容。always @(posedge clk)语句就表明,检测到高电平执行,和实际芯片引脚状态变化引起内部变化原理一致,c语言中没有过程赋值这种语句,c中也没有对高低电平、上升下降沿的判断条件。
g语言中的模块例化,将各个模块程序在例化程序里结合起来,在硬件层面就相当于将各个小的模块互相连接,构成一个大的模块,c语言中类似的形式是函数,一个函数可以有子函数,但是c中的函数不能反应硬件特性。
二、数字频率计设计与调试总结
在进行课程设计的过程中我遇到了以下几点困难:
1.在最初设计时,没能利用硬件的思想来设计这个题目,导致频率频率计数的逻辑控制部分设计不清。在参考老师所提供的框图后了解应将逻辑控制部分单独设计成一个模块,通过en和clr来控制计数,这样技术部分就可以将之前的实验内容移植过来,十分简便。
2.在设计过程中的,锁存部分原理没有搞懂。按照老师的框图,从前向后分析,发现锁存的时钟clk是之前逻辑控制部分的lock引脚所提供,这样就将每个周期所计得的频率结果在同一个时序通过锁存器向后传输。
3.配置引脚时出错,将数码管的位选引脚顺序弄反,导致数码管显示错误。仔细检查,发现错误,改正后正常运行。4.在拓展功能一的设计中,将十分频部分弄错,最后出来的结果和预期差了一些。在当堂实验课中,这个错误我没能及时纠正,回来之后,我对应程序认真检查,发现我的十分频,被我设计成了逢9进1,导致最后结果错误。
5.发现了自己很多语法问题,比如在过程赋值中对wire类型数据进行赋值导致错误,module定义的模块名称没有和文件名称对应导致错误等,最终我通过ppt及网络途径解决了这些问题。
在这次实验中,基本功能全部实现,并且是我自行制作,拓展功能一,同样是我自行完成,不过我当时得到的结果有误差,实验后我已经发现了问题,改正了错误。拓展功能二没有实现。
三、对课程的建议
1.我希望老师以后的实验过程中能够有一个答疑环节,在实验前,我们可以对预习中不懂的部分进行提问。
2..希望老师能增加一些课时,或者给我们一些课外时间去到实验室,我们的实验我自我感觉相对别的实验来说难度还是比较大的,我觉得如果有充足的时间,洒家可以将拓展部分做出来,为自己争取更好的分数。