云题海 - 专业文章范例文档资料分享平台

当前位置:首页 > VHDL实验(完整版)

VHDL实验(完整版)

  • 62 次阅读
  • 3 次下载
  • 2025/6/18 8:50:11

新建VHDL文件

将下面源程序复制进去(十进制计数): library ieee;

use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; entity cnt10b is port(

clk,rst,en:in std_logic;

cq:out std_logic_vector(3 downto 0); cout:out std_logic); end cnt10b;

architecture behav of cnt10b is begin

process(clk,rst,en)

variable cqi:std_logic_vector(3 downto 0); begin

if rst = '1' then cqi:=(others =>'0'); --计数器异步复位 elsif clk'event and clk='1' then

if 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图标为

,点击后选择周期等属性,

搜索更多关于: VHDL实验(完整版) 的文档
  • 收藏
  • 违规举报
  • 版权认领
下载文档10.00 元 加入VIP免费下载
推荐下载
本文作者:...

共分享92篇相关文档

文档简介:

新建VHDL文件 将下面源程序复制进去(十进制计数): library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; entity cnt10b is port( clk,rst,en:in std_logic; cq:out std_logic_vector(3 downto 0); cout:out std_logic); end cnt10b; architecture behav of cnt10b is begin process(clk,rst,en) variable cqi:std_logic_vector(3 downto 0);

× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:10 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219
Copyright © 云题海 All Rights Reserved. 苏ICP备16052595号-3 网站地图 客服QQ:370150219 邮箱:370150219@qq.com