VHDL硬件描述语言——进程语句(process)

进程语句(process)

目录

进程语句(process)

一、进程是什么?

二、语法结构


一、进程是什么?

        进程表示一个处理过程,在一个结构体中可以包含多个进程。进程与进程之间是并行的,进程内部包含一组顺序描述语句,进程内部的语句是按先后次序顺序执行的。

二、语法结构

[process_label:] process[(敏感信号列表)]
begin
    顺序描述语句;
end process [process_label];
--process_label是一个可选项,用于对进程命名,通常省去。

例: 

entity DFF is
port(
    CLK  : in  BIT;
    RST  : in  STD_LOGIC;
    D    : in  STD_LOGIC;
    Q    : out STD_LOGIC);
end DFF;

architecture Behavioral of DFF is
begin
    Reg1: process(CLK, RST)
    begin
        if (RST = '1') then
            Q <= '0';
        elsif (rising_edge(CLK)) then
            Q <= D;
        end if;
    end process Reg1;
end Behavioral;
  • 敏感信号列表中列出将会出发进程执行的所有信号,这些信号可以包含实体的接口信号;
  • 进程的敏感信号列表用括号括起来,如果进程有多个敏感信号,则信号之间用逗号隔开;
  • 如果process描述的是时序电路,则敏感信号列表中必须包含时钟信号;如果描述的是组合逻辑电路,则敏感信号列表中应包含全部的敏感信号,否则会引起行为仿真结果和综合后结果不同的现象。
  • process敏感信号列表中不能包含动态信号
    • 动态信号则指的是能够改变其值的信号,这些信号通常由变量、输出端口或者从输入中读取的信号等定义。在编译时,动态信号的初始值是未知的,因此不能将其加入到过程的敏感性列表中。

  • 3
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值