EDA论文.docx
《EDA论文.docx》由会员分享,可在线阅读,更多相关《EDA论文.docx(13页珍藏版)》请在冰豆网上搜索。
EDA论文
一、1/100秒计时器功能和结构
功能:
结构:
1/100s计时器的结构设想
1/100s计时器的结构如下图2.1所示。
从图中可以看到,1/100s计时器由复位开关、启/停开关、系统电源复位电路、时钟脉冲发生器、7段LED显示器和1/100s计时控制芯片组成。
复位开关reset_sw和start_stop_sw都是高电平有效。
另外,开关的消抖电路应在控制芯片中。
系统复位输入端sysres是计时器加电复位的输入端,其复位电路是为外加的,不包含在芯片中。
时钟输入clk是由外加时钟脉冲发生器的输出提供的,本设计中要求输入一个频率稳定的1Khz时钟脉冲。
6位显示器需要6个7段LED,控制芯片的7条段输出线segment(6TO0)与7段LEDd对应连接。
控制芯片的6条common(5TO0)输出线分别接到各个LED,用来选择显示LED。
Common以166Hz的频率使6个LED按次序循环点亮,从而可以得到一个人眼观察无闪烁感觉的稳定的显示输出。
图2.11/100s计时器的结构图
二、1/100s计时器控制芯片设计
(1)输入信号
复位输入-------reset_sw;
启/停输入--------Start_stop_sw;
系统复位输入---sysres;
时钟输入---------clk.
(2)输出信号
LED7段输出----segment(6TO0),共7条输出线。
LED公共端输出----common(5TO0),共6条输出线。
计时控制芯片的各个模块的仿真和说明
1)系统模型构造
为了便于描述,现将整个计时控制芯片分成5大子模块;键输入子模块(keyin)、时钟产生子模块(clkgen)、控制子模块(ctrl)、计时计数器模块(cntblk)和显示子模块(disp)各子模块之间的信号连接关系如下图4.1所示。
图4.1各子模块之间的信号连接图
三、软件使用方法(Max+PLUSII)(包括程序编辑、编译、仿真方法)
1、程序编辑
2、编译
3、仿真
四、各模块及总电路仿真结果
Cnt10
Cnt4
Cnt6
Clkgen
Cntblk
Ctr
Keyin
stop_watch
五、电路设计图
六、设置管脚(即管脚锁定)方法
工程编译和有关仿真都通过后,就可以将配置数据下载到应用系统进行验证。
下载之前首先要对系统顶层模块进行引脚锁定,保证锁定的引脚与实际的应用系统相吻合。
1)目标芯片的确认及闲置引脚的设定
管脚锁定前,先进行芯片的确定或修改,如图4.43所示。
单击图4.43中的【Device&PinOptions…】按钮,在弹出的【UnusedPins】设置框中进行闲置引脚的设定。
对设计中未用到的器件引脚,有三种处理方式:
输入引脚(呈高组态)、输出引脚(呈低电平)或输出引脚(输出不定状态)。
通常情况下选择第一项,避免未用到的引脚对应用系统产生影响。
图4.43管脚锁定前目标芯片的确认或修改
2)引脚锁定
本设计系统的顶层模块CNT9999拟选用EP2C8Q208C8芯片,根据需使用的EDA实验开发系统(板)的有关输入和输出的资源情况进行引脚锁定(一般应事先列出一个管脚锁定表,表格格式可参考第5章关于EDA实验开发系统的使用实例中的引脚锁定表格式样),并将闲置引脚设定为三态门状态。
引脚的锁定方法有三种:
一是使用引脚锁定窗口进行锁定;二是使用计事本或其他文本编辑工具直接编辑 .qsf文件进行引脚锁定;三是通过输入TCL脚本语言文件进行。
下面介绍前两种方法。
(1)使用引脚锁定窗口进行锁定。
打开【Assignments】菜单下的【Pins】命令,打开引脚锁定窗口,如图4.44所示。
先用鼠标指到要锁定的端口信号名与【Location】栏交汇的地方,这时此处呈蓝色,然后双击对应的交汇处,在出现的下拉栏中选择对应端口信号名的器件引脚号(例如对应ENA,选择PIN_99),引脚锁定后将下拉菜单复原,则系统自动保存该锁定。
在如图4.44所示的窗口中,还能对引脚作进一步的设定,如在Reserved栏,可对某些空闲的I/O引脚的电气特性进行设置。
图4.44引脚锁定窗口的打开及管脚的锁定
(2)直接编辑 .qsf文件进行引脚锁定。
引脚的锁定信息保存在工程文件夹中与工程同名的*.qsf文件中,可以通过编辑*.qsf文件来改变或设定引脚。
本例子中,关于引脚的锁定信息就存在F:
\EDA115\EDA115CX\4.3\CNT9999(工程CNT9999目录)下的CNT9999.qsf文件中。
可以用计事本或其他文本编辑工具打开CNT9999.qsf,输入信息并保存,如图4.45所示。
图4.45编辑 .qsf文件进行引脚锁定
七、配置下载方法
1)编程下载硬件准备
先阅读有关EDA实验开发系统(板)手册,了解EDA实验开发系统(板)到计算机的连接方式。
在断电的情况下将有关硬件设备进行正确的物理连接,经检查无误后打开EDA实验开发系统(板)的电源开关。
2) FPGA的编程下载
连接好下载电缆,打开电源。
在菜单【Tool】中选择【Programmer】,或直接单击工具栏上的快捷键,可以打开如图4.46所示的编程下载窗口。
若是初次安装的QuartusⅡ,在下载编程前需要选择下载接口方式。
在图4.46所示窗口中单击【HardwareSetup】,在打开的设置窗口根据实际情况进行设置。
在这里,选择【ByteBlasterⅡ】,双击鼠标后,关闭该窗口。
3)对配置器件编程
为了使应用系统能在脱离计算机的情况下工作,就必须将配置数据存放在非易失的器件中,通常我们将配置数据存放在专用的配置器件中,如EPCS1、EPCS4等。
EPCS1和EPCS4等是Cyclone系列器件的专用配置器件,Flash存储结构,重复编程可达10万次。
先选择编程模式和编程目标文件。
在图4.46所示窗口的【Mode】栏中,选择【ActiveSerialProgramming】编程模式。
添加编程文件CNT9999.pof,并选中Program/Configure,再将下载电缆连至AS模式端口并加电。
图4.55编程下载设置及过程
八、心得体会
这个学期我们理论课主要学习了VHDL语言,实验课主要是基于MAX+plus软件对VHDL语言使用。
实验实例是对1/100计时器设计和仿真。
首先,通过对这门课程相关理论的学习,我掌握了EDA的一些基本的的知识,现代电子产品的性能越来越高,复杂度越来越大,更新步伐也越来越快。
实现这种进步的主要原因就是微电子技术和电子技术的发展。
EDA技术的出现,极大地提高了电路设计的效率和可操作性,减轻了设计者的劳动强度。
其次,通过对课程的实验的学习,我对EDA的学习和理解有了更深刻的认识和体会。
通过实验,我激发了EDA学习的兴趣,也对这门课程有了更深的理解,对EDA设计软件MAX+plusrⅡ的使用也更加熟练。
在设计过程中,我们遇到了很多困难,在完成VHDL的编辑以后,进行编译,结果出现了很多错误,在我们细心的检查和排查之下,最终将VHDL描述修改成功并且通过了编译。
在编译过程中我了解到很多在书本上没有理解的知识。
对这门课程的最大收获除了学习到了知识以外,更重要的是让我明白了一个道理:
只要全身心的投入到一件事中,并且要有持之以恒的决心,就一定会有收获。
有的人觉得自己做不出来,就网上搜一个了事,但是,放弃一次黑暗中摸索的经历,就放弃了一次成长的机会!
如果你付出了,没有收获。
那只能说,是付出的还不够多。
我想我对EDA的学习只能算是个入门,这个领域的发展空间非常大,应用范围也非常广泛,而且我相信在将来还会有更加广阔的应用前景。
因此在以后的学习过程中,我不能因为课程学习的结束而结束了我对这个领域的探索,相反我会更加努力的去学习它。
感谢老师孜孜不倦的教诲,让我不仅学到了知识,也学到了做人做事的一些道理,为我提供了很多帮助。
在接下来的学习生涯中,我会继续努力,努力扎实地学习专业知识,实现自己的理想。