VHDL 计数器实验看VHDL语言

Posted Franex

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了VHDL 计数器实验看VHDL语言相关的知识,希望对你有一定的参考价值。

之前的eda课都在划水…利用这个程序来总结一下eda的语法

二十进制计数器

其实二十进制计数器原理很简单。跟随时钟信号相加,即用语句Q = Q+ 1从0到19,当读到19的时候又回到0
其实就是下面的process语句,而clk event那一句其实就是确保,上升沿有效。

LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;
USE IEEE.STD_LOGIC_UNSIGNED.ALL;
ENTITY eda IS
 PORT (clk:in std_logic;
       Q:out std_logic_vector(4 downto 0));
		 
END;
architecture bhv of eda is
 signal Q1:std_logic_vector(4 downto 0);
 begin
   process(clk) begin
	  if clk'event and clk = '1' then
	    if Q1 = "10100"
		   then Q1<="00000";
			else Q1<=Q1+1;
			end if;
		end if;
		end process;
		  Q<=Q1;
end bhv;

语法

语句ENTITY eda IS表示实体,其中eda就是我们的文件名
语句architecture bhv of eda is表示结构体名称,end bhv就是结束结构体,结构体负责描述电路器件的内部逻辑功能

数据类型

比如在port中,我们定义的就是std_logic
数据类型有integer整型,boolean布尔型和标准逻辑位型std_logic还有bit等
bit可以参加逻辑运算,结果是逻辑类型

进程语句

语句process(clk) beginend process;就是进程语句,在VHDL中,所有顺序描述语句都必须放在进程语句中process括号里的叫做敏感信号,要求所有的输入信号都放进去

整个结构差不多就是这样

以上是关于VHDL 计数器实验看VHDL语言的主要内容,如果未能解决你的问题,请参考以下文章

用VHDL设计正弦信号发生器

VHDL设计----十进制计数器

FGPAVHDL实验

vhdl中怎么实现多行注释掉,就是暂时不用那一块

verilog比vhdl的优势是啥?

VHDL介绍