case expression is
when choice => sequential_statements --quential_statements 顺序语句构成,语句间用;隔开。when choice => sequential_statements. . .
(when others=>sequential_statements) --如果有没有被列举的情况,用此语句统一处理。
end case;
注:
1.choice 必须在expression的取值范围内;
2.when条件句中,必须覆盖expression中的所有情况,如果choice中没有覆盖expression中的所有情况,则要用others关键词,涵盖剩下的所有情况再作处理;
3.expression的每个情况只能出现一次,必须且只能选中一个情况。
例如:pout : out std_logic_vector(7downto 0) ; --定义了一个宽度为8位的标准逻辑矢量,每一位分别为pout(7),pout(6),pout(5)... ...pout(1),pout(0).
或者signal: std_logic_vector(1 to 4 ) --4位
其中的每一位都为std_logic类型,用于表达多通道端口或节点,或者总线BUS。类似的数据类型还有bit_vector.
abc<=a&b 相当于 abc(1)<=a;abc(0)<=b. a,b可代表操作数或者数组。
Simplified Syntax:
architecture architecture_name of entity_name is
component component_name [ is ]
generic (generic_list); port (port_list);end component component_name;
component component_name2 [ is ]
generic (generic_list); port (port_list);end component component_name2;
...
begin
port map( [被例化成元件的实体中的端口名=>]当前实体中指定的端口名,... ); --"=>"为连接符号。
注:
当前的设计实体相当于一个高一层次的电路系统,而当前设计的实体中指定的接口相当于整个电路系统上的插座,而被例化的实体形成的元件相当于要插在这些插座上的芯片。
文章评论(0条评论)
登录后参与讨论