Quartus II 入门案例(VHDL)

前言

本文介绍Quartus II的使用方法,通过VHDL硬件描述语言编程来实现简单的电路功能。

一、使用步骤

首先打开Quartus II 新建vhdl文件 

右侧就是代码编辑界面

 本例通过VHDL实现一个简单的非门案例,有利于新手快速入门

相关量解释

nottest:实体名称

x:输入端口

y:输出端口

bhv:结构体

实现代码如下:

library ieee ;
use ieee.std_logic_1164.all ;

entity nottest is
	port (x : in std_logic;
		  y : out std_logic);
	
end entity nottest;

architecture bhv of nottest is
	begin 
	y <= not x;

end architecture bhv;

ctrl+s保存文件(注意文件名要和实体名相同否则编译的时候会报错)

 接下来出现工程创建向导界面

配置工程路径、名称和top-level

 添加刚才保存的nottest.vhd文件

因为此案例没有指定特定的FPGA板子上对应的芯片,所以后面的两页都默认点击next

 

 

 完成工程创建

点击下方图片的紫色图标进行编译

 

编译成功

 

 二:创建Vector WaveForm File进行波形仿真

 此时还没有添加节点,在name下方空白区域右键进行插入节点

点击Node_Finder添加节点

 

 

最后点击OK完成节点添加

 

此时波形文件出现了输入、输出节点

 

对输入节点X提供时钟波形

 

 

 对Waveform1.vmf文件进行保存

点击下方箭头进行仿真

 

此时y出现了波形但是和非门的效果相差甚远。这时因为本例只是一个简单的组合逻辑门电路不是时序逻辑电路,进入Assignments界面点击Setting下将Simulation mode从Timing改为Functional。(默认的仿真模式是Timing)

 

 最后点击Processing中的Generate Functional Simulation Netlist生成仿真节点列表

 

 

重新点击仿真图标可以得到正常的波形

 

三:案例扩展

下面我还列举了二选一选择器四选一选择器的代码,有需要的可以按照上述步骤进行工程创建和仿真练习

二选一选择器代码及仿真波形图:

entity select1of2 is 
	port (a, b, s : in bit;
				y : out bit);
end entity select1of2;

architecture bhv of select1of2 is 
	begin
	process(a,b,s)
	begin
		if(s='1') then y<=a; else y<=b;
		end if;
	end process;
end architecture bhv;

四选一选择器代码及仿真波形图:

library ieee;
use ieee.std_logic_1164.all;

entity select1of4 is
port(a, b, c, d, s0, s1 : in std_logic;
					 y  : out std_logic);

end entity select1of4;

architecture bhv of select1of4 is
signal s : std_logic_vector(1 downto 0);
begin
s <= s1 & s0;

process(s)  begin
case (s) is
	when "00" => y <= a;
	when "01" => y <= b;
	when "10" => y <= c;
	when "11" => y <= d;
	when others => null;
	end case;
end process;
end architecture bhv;
	


 

总结

以上就是本文要讲的全部内容,感谢你能观看到这。

  • 23
    点赞
  • 135
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

门牙会稍息

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值