当前位置:文档之家› VHDL实验(完整版)

VHDL实验(完整版)

实验一 Quartus II软件使用与十进制计数器一、实验目的熟悉使用Quartus II软件二、实验内容安装Quartus II软件并成功注册、使用Quartus II软件建立工程并完成十进制计数器三、实验仪器、设备计算机、Quartus II软件四、实验步骤1.打开安装文件位于…quartusII6.0\disk1\install.exe,根据提示进行下一步操作,在弹出框中选择第一个选项,install Quartus II and Related Software。

Quartus II的安装步骤1接下来的安装中选择下一步,到下图选择界面。

只勾选安装Quartus II 6.0即可。

Quartus II的安装步骤22.完成安装步骤2后选择下一步至下图所示,选择完全安装complete,再继续点击下一步至安装开始。

完全安装Quartus II软件软件安装途中出现如下图所示情况时,选择安装文件中的…disk2\disk2\quartus,然后选择确定——OK继续安装直到结束。

安装过程中换disk2路径Quartus II软件的安装至此结束,此安装步骤WINXP/WIN 7均有效,WIN8若有问题,请修改兼容权限。

3.软件注册。

软件安装结束后打开Quartus II软件将出现下图所示情况,这是没有注册的提醒,我们必须先进行注册才能建立工程文件,若大家忽略了这个提示窗口,直接进行工程建立等工作,任何仿真图和编译功能都无法正常使用,等于白费功夫浪费时间,还要重新(由于软件注册是绑定MAC物理地址,所以每台机器的license 做,非常影响学习兴趣和情绪。

是完全不一样的,实验室的电脑已经安装好了Quartus II软件,但是没有注册,所以做实验的时候一点要先注册,不然就白做了)Quartus II软件提示未注册弹窗注册方法,打开quiic7.1 lisence 生成器文件夹中的keymaker.exe,在弹出的窗口中点击Make License,在文件夹中就会出现和本台机器相匹配的license.dat。

(注意此license只对应本机,拷贝给其他机器无效)将license.dat复制到C:\altera\quartus60\win文件夹下。

(可以使用快键方式点击Quartus II 6.0右键属性——打开文件夹位置即是需要复制到的文件夹,选择替换该文件),在自己电脑安装时,还有一个sys_cpt.dll文件需要被替换才能完成注册,替换文件的地路径…\quartusII6.0\disk2\disk2\crack6.0\sys_cpt.dll,这一步在实验室电脑无需做,特别是不能复制生成器里面的sys_cpt.dll,不然软件无法打开。

license生成器生成的license复制license.dat到目标文件夹并替换替换license后打开上图即为注册成功到此Quartus II软件安装与注册已经介绍完毕,若安装中还有其他问题请咨询相关老师或网上找寻解决办法。

4. Quartus II软件工程建立。

任何一项设计都是一项工程(project),必须先为此工程建立一个放置与此工程相关的设计文件的文件夹。

一般,不同的设计项目放在不同的文件夹中,而同一工程的所有文件都必须放在同一文件夹中。

(注意:不要将文件夹设在计算机已有的安装目录中,更不要将工程文件直接放在安装目录中)新建文件夹,在自定的路径建立文件夹,例如:d:\cnt10b(注意:文件夹不能用中文命名,也不要用纯数字)选择主页面的File——New——VHDL File——OK,如下图所示新建VHDL文件将下面源程序复制进去(十进制计数):library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity cnt10b isport(clk,rst,en:in std_logic;cq:out std_logic_vector(3 downto 0);cout:out std_logic);end cnt10b;architecture behav of cnt10b isbeginprocess(clk,rst,en)variable cqi:std_logic_vector(3 downto 0);beginif rst = '1' then cqi:=(others =>'0'); --计数器异步复位elsif clk'event and clk='1' thenif en = '1' then --检测是否允许计数if cqi<9 then cqi:=cqi+1; --小于9,计数else cqi:=(others =>'0'); --大于9,计数器清零end if;end if;end if;if cqi=9 then cout<='1'; --大于9,输出进位信号else cout<='0';end if;cq<=cqi; --将计数器值向端口输出end process;end behav;复制完成后将VHDL文件存盘,选择File——Save As,找到已建立的文件夹d:\cnt10b,存盘名称自定,同样不能为中文,我们用文件夹命名cnt10.vhd。

当出现“Do you want to create a new project with this file?”时,选择是,随即进入工程建立流程。

将会出现下图,说明各行的意义,第一行D:/cnt10b/,说明你的工程文件的路径。

第二行cnt10b,是工程的名字。

第三行cnt10b为当前工程文件的实体名,这里即为cnt10b。

此方法所有选项会根据你以上的步骤自动记录,直接选择下一步即可。

工程文件建立点击下一步Next,将设计文件加入工程(如果事先做好的话),我们刚才建立的cnt10b.vhd源程序文件,我们将它加入进来后,选择下一步。

工程文件添加点击下一步Next后,选择具体芯片型号Family类型选择Cyclone,具体型号为EP1C6Q240C8。

芯片型号一定要选择对,不然无法将程序下载至实验箱。

选择下一步Next,第四项选择工具可以全部不选,直接Next完成。

此时,cnt10b的工程已建立好。

cyclone芯片选择工程建立成功图示选择Processing——Start Compilation进行编译,也可点击快捷工具栏中按钮进行编译操作,编译成功如下图所示。

编译成功界面若编译时出现其他问题(warming可忽略),软件会提示出现问题的地方,比如:语句错误等。

根据提示进行修改,若一直跟着此步骤做下来,应该不会有问题。

(注意:未注册的软件是100%无法编译成功的)5.建立波形文件进行仿真。

选择File——new——Other Files——Vector Waveform File——OK,建立波形仿真软件,然后选择View——Utility Windows——Node Found【快捷键(ALT+1)】,然后再弹出的对话框中Filter选择Pins:all——点击list,将出现9个信号源(若未出现说明未编译成功,重新编译一次),框选全部信号源,添加至波形文件的Name下面,然后点击保存,将波形文件命名为cnt10b.vwf。

信号源的添加信号源添加至波形文件进行信号源的属性设置,首先设置仿真的起止时间,Edit——End Time,选择仿真时间10S。

然后将clk时钟源设置为时钟模式Overwrite Clock图标为,点击后选择周期等属性,End time设置时钟周期设置将其他信号源(en,rst)按照仿真图进行设置,然后执行波形仿真,点击进行编译,结果如下图所示。

波形仿真结果图6.引脚设置。

选择assignments——pins进行引脚设置,将引脚设置为同下图一样。

引脚设置完毕后,再进行一次编译(Start Compilation)才能进行下载。

引脚设置界面到此本次实验仿真部分完成,接下来是将程序下载至实验箱的实操部分。

7.源程序下载。

USB下载器驱动安装,将下载器连接到USB口,此时电脑将出现新硬件,Quartus II软件安装时就会将驱动程序一起安装,默认路径C:\altera\quartus60\drivers\usb-blaster,所以我们只要找到驱动路径进行指定就OK了,具体方法见下图(图为WIN7环境下的驱动安装)发现新硬件选择驱动文件路径若出现验证选择始终安装USB驱动安装完毕后,点击Tools——Programmer进行下载步骤,点击Hardware Setup 进行硬件设置,在此选择USB-Blaster,点击close。

若安装了驱动却没出现USB-Blaster,请拔掉下载器重新插入。

然后勾选Program/Configure后点击Start将编译好的程序下载至实验箱。

Progress旁边的蓝色条出现100%,并且页面下部出现绿色字样:Info: Configuration succeeded -- 1 device(s) configured就表示下载成功。

下载页面Hardware Setup页面设置下载成功界面8.功能介绍。

十进制计数器程序已经被我们下载到实验箱,是不是特别想看看实物的结果,我们这个实验的引脚使用的是模式5的电路,所以按模式选择,将指示灯按成5,就是模式5。

按键设置键1为EN端,即使能端,键2为rst,即复位端,LED D1为cout,即进位位。

此时我们需要设置时钟频率,在实验箱右下角,最右边一排有插针,请将插针的跳线帽接在16Hz 及以下就能清楚的看见我们实验的效果。

实验二组合电路的设计一、实验目的熟悉使用Quartus II软件的VHDL文本设计流程全过程二、实验内容学习简单组合电路的设计、多层次电路设计、仿真和硬件测试三、实验仪器、设备计算机、Quartus II软件四、实验步骤1.首先利用QuartusⅡ完成2选1多路选择器(例1-1)的文本编辑输入(mux21a.vhd)。

【例1-1】library ieee;use ieee.std_logic_1164.all;ENTITY mux21a ISPORT ( a, b, s: IN STD_LOGIC;y : OUT STD_LOGIC );END ENTITY mux21a;ARCHITECTURE one OF mux21a ISBEGINPROCESS (a,b,s) BEGINIF s = '0' THEN y <= a ; ELSE y <= b ;END IF;END PROCESS;END ARCHITECTURE one ;2.将此多路选择器看成是一个元件mux21a,利用元件例化语句描述三选一数据选择器图1-1,并将此文件放在同一目录中。

相关主题