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) begin
和end process;
就是进程语句,在VHDL中,所有顺序描述语句都必须放在进程语句中process括号里的叫做敏感信号,要求所有的输入信号都放进去
整个结构差不多就是这样
以上是关于VHDL 计数器实验看VHDL语言的主要内容,如果未能解决你的问题,请参考以下文章