介绍
在学习这部分之前,我一直感觉VHDL语言特别没有层次,代码一坨一坨的,让人看着很不舒服。学习了包集和原件,感觉好太多了。
原件(component)
一个元件就是一段结构完整的代码(包括库声明,实体和结构体)组成。将这个完整的结构声明为元件,就可以供其他电路使用,这样代码看起来就有层次化了。
我举一个与门的例子:
library ieee;
use ieee.std_logic_1164.all;
entity and_2 is
port (a,b : in std_logic;
and_2_out : out std_logic);
end entity;
architecture behavior of and_2 is
begin
and_2_out <= a and b;
end architecture;
丛上面可以看到,这就是一个与门结构的代码。但是我们如果将这个与门在其他代码或者包集(下面介绍)中进行声明后,然后对这个原件进行实例化,就可以直接使用了,就不用用到一个写一个,就很麻烦。
元件声明
我简单说一下元件声明的格式吧,如果还是不清楚使用方法的,可以去查其他网上的资料,网上资料应该很多。
格式:component 元件名 is
port(