VHDL的设计流程.doc

上传人:PIYPING 文档编号:11505505 上传时间:2021-08-10 格式:DOC 页数:4 大小:22.50KB
返回 下载 相关 举报
VHDL的设计流程.doc_第1页
第1页 / 共4页
VHDL的设计流程.doc_第2页
第2页 / 共4页
VHDL的设计流程.doc_第3页
第3页 / 共4页
VHDL的设计流程.doc_第4页
第4页 / 共4页
亲,该文档总共4页,全部预览完了,如果喜欢就下载吧!
资源描述

《VHDL的设计流程.doc》由会员分享,可在线阅读,更多相关《VHDL的设计流程.doc(4页珍藏版)》请在三一文库上搜索。

1、VHDL的设计流程,它主要包括以下几个步骤:1.文本编辑:用任何文本编辑器都可以进行,也可以用专用的HDL编辑环境。2.功能仿真:将文件调入HDL仿真软件进行功能仿真,检查逻辑功能是否正确。3.逻辑综合:将源文件调入逻辑综合软件进行综合,即把语言综合成最简的布尔表达式。4.时序仿真:需要利用在布局布线中获得的精确参数,用仿真软件验证电路的时序。5. 器件编程:对使用的元件可以进行编程。秒表设计一、设计实验目的在QuartusII软件平台上,熟练运用VHDL语言,完成数字时钟设计的软件编程、编译、综合、仿真,使用EDA实验箱,实现数字秒表的硬件功能。二、设计实验说明及要求1、数字秒表主要由:分频

2、器、扫描显示译码器、一百进制计数器、六十进制计数器(或十进制计数器与6进制计数器)、十二进制计数器(或二十四进制计数器)电路组成。在整个秒表中最关键的是如何获得一个精确的100HZ计时脉冲,除此之外,数字秒表需有清零控制端,以及启动控制端、保持保持,以便数字时钟能随意停止及启动。2、数字秒表显示由时(12或24进制任选)、分(60进制)、秒(60进制)、百分之一秒(一百进制)组成,利用扫描显示译码电路在八个数码管显示。3、能够完成清零、启动、保持(可以使用键盘或拨码开关置数)功能。4、时、分、秒、百分之一秒显示准确。三、数字时钟组成及功能1、分频率器:用来产生100HZ计时脉冲;2、十二或二十

3、四进制计数器:对时进行计数3、六十进制计数器:对分和秒进行计数;4、六进制计数器:分别对秒十位和分十位进行计数;5、十进制计数器:分别对秒个位和分个位进行计数;6、扫描显示译码器:完成对7字段数码管显示的控制;四、系统硬件要求1、时钟信号为10MHz;2、FPGA芯片型号EPM7128LC8415、EP1K30TC1443或EP1K100QC2083(根据实验箱上FPGA芯片具体选择);3、8个7段扫描共阴级数码显示管;4、按键开关(清零、启动、保持,暂停);五、设计内容及步骤1、根据电路持点,用层次设计概念。将此设计任务分成若干模块,规定每一模块的功能和各模块之间的接口,同时加深层次化设计概

4、念;2、软件的元件管理深层含义,以及模块元件之间的连接概念,对于不同目录下的同一设计,如何熔合;3、适配划分前后的仿真内容有何不同概念,仿真信号对象有何不同,有更深一步了解。熟悉了CPLD/FPGA设计的调试过程中手段的多样化;4、按适配划分后的管脚定位,同相关功能块硬件电路接口连线;5、所有模块尽量采用VHDL语言设计。 新疆大学信息科学与工程学院六、硬件实现将时序仿真正确的文件下载到实验箱中的EPM7128LC8415、EP1K30TC1443或EP1K100QC2083中,通过合适的管脚分配,将相应的管脚连接起来,验证设计是否完成设计要求;七、数字秒表的电路逻辑图2. 运行的程序如下LI

5、BRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;ENTITYMIAOBIAOISPORT(CLK,CLK1,STA,POS,STO,RST:INSTD_LOGIC;CQ1,CQ2,CQ3,CQ4,CQ5,CQ6:OUTSTD_LOGIC_VECTOR(3DOWNTO0);CLK2:OUTSTD_LOGIC);ENDMIAOBIAO;ARCHITECTUREBEHAVOFMIAOBIAOISBEGINPROCESS(CLK)-由频率为3MHz的时钟产生频率为100Hz的时钟VARIABLENUM:INTEGE

6、RRANGE0TO3600;-定义计数器VARIABLEQ:STD_LOGIC;BEGINIFCLKEVENTANDCLK=1THENIFNUM=3600THENNUM:=0;Q:=NOTQ;-计数器每计数3600,时钟改变电平-值ELSENUM:=NUM+1;ENDIF;ENDIF; 新疆大学信息科学与工程学院CLK20);CQI2:=(OTHERS=0);CQI3:=(OTHERS=0);CQI4:=(OTHERS=0);CQI5:=(OTHERS=0);CQI6:=(OTHERS=0);ELSIFCLK1EVENTANDCLK1=1THENIFSTA=1THENIFRST=0THENIF

7、POS=0THENIFCQI1=1001THENCQI1:=(OTHERS=0);-百分秒位满十进-位IFCQI2=1001THENCQI2:=(OTHERS=0);-十分秒位满十进-位IFCQI3=1001THENCQI3:=(OTHERS=0);-秒位满十进位IFCQI4=0101THENCQI4:=(OTHERS=0);-十秒位满六进位IFCQI5=1001THENCQI5:=(OTHERS=0);-分位满十进位IFCQI6=0101THENCQI6:=(OTHERS=0);-十分位满六进位ELSECQI6:=CQI6+1;ENDIF;ELSECQI5:=CQI5+1;ENDIF;ELS

8、ECQI4:=CQI4+1;ENDIF;ELSECQI3:=CQI3+1;ENDIF;ELSECQI2:=CQI2+1;ENDIF;ELSECQI1:=CQI1+1; 新疆大学信息科学与工程学院ENDIF;ENDIF;ENDIF;ENDIF;IFRST=1THENCQI1:=(OTHERS=0);CQI2:=(OTHERS=0);CQI3:=(OTHERS=0);CQI4:=(OTHERS=0);CQI5:=(OTHERS=0);CQI6:=(OTHERS=0);ENDIF;CQ1=CQI1;CQ2=CQI2;CQ3=CQI3;CQ4=CQI4;CQ5=CQI5;CQ6=CQI6;ENDIF;

9、ENDPROCESS;ENDBEHAV3.对程序进行编辑后的结果:九、实验结果当输入stop处于低电平,start处于高电平时,秒表开始计时,将start拨至低电平时计时暂停,当把start拨回高电平时计时继续;当把stop拨至高电平时,6个数码管同时变为0,秒表停止工作。当把复位键RST拨至高电平时,输出(CQ)全部变为复位状态(0);十、本次实验系统调试中出现的问题在初次系统调试的过程中,由于实验箱上并没有时钟满足运行时是一秒计一个数,所以无法实现秒表的功能。后来通过在程序中加入一个时钟分频的进程,利用实验箱上现有的时钟再得到一个新的时钟,实现了秒表的计时功能。十一、心得体会通过本次EDA的实验,进一步了解了VHDL语言的特点,了解了硬件描述语言的编程思想、编程规范,在一定程度上提高了实际编程能力。是我初步掌握了这门软件使用方法,也体会到了很多的乐趣,也激发了我对电子行业及其产品的兴趣。通过这次设计性实验也大大提升了我的动手操作能力。通过这次设计,使我深深的知道,在工作中的任何环节都不能马虎,任何一点小小的差错都可能造成最终的失败。所以我学到了:做事要有胆大,心细,谨慎的作风。在以后的工作当中,我还将一如既往的保持下去,我想它将会使我以后的工作做的更好,路走的更宽,更远。

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

当前位置:首页 > 科普知识


经营许可证编号:宁ICP备18001539号-1