【问题标题】:how many processes can be there in behavioural of vhdl?vhdl的行为可以有多少个进程?
【发布时间】:2015-10-06 15:15:23
【问题描述】:

我想减慢 clk...并接受输入

entity q1 is
    Port ( clk: in std_logic;
              a0,a1,a2,a3,a4,a5,a6,a7,a8,a9 : in  STD_LOGIC_VECTOR (3 downto 0);
           b0,b1,b2,b3,b4,b5,b6,b7,b8,b9 : in  STD_LOGIC_VECTOR (3 downto 0);
           y0,y1,y2,y3,y4,y5,y6,y7,y8,y9 : out  STD_LOGIC_VECTOR (6 downto 0));
end q1;

architecture Behavioral of q1 is
signal counter : std_logic_vector(9 downto 0)='0000000000';
signal clk_en: std_logic='0';
process(clk)
begin
     if (clk'event and clk='1') then
            counter <= counter +1;
            if (counter = 0) then
                clk_en <= '1';
            else clk_en='0' 
            end if ;
      end if;
end process;



end Behavioral;

【问题讨论】:

  • 您的问题标题和正文完全不匹配,您在这里没有提出实际问题。另外,请花时间格式化您的代码,以便其他人有机会阅读它。
  • 答案是:你需要多少?

标签: vhdl


【解决方案1】:

详细的 VHDL 设计执行过程
IEEE 标准 1076-2008: 11. 并发语句,11.1 总则,第 1 段:

...并发语句用于定义相互连接的块和过程,共同描述设计的整体行为或结构。 ...

  1. 制定和执行 14.1 概述:

声明实现其效果的过程称为声明的详细说明。在其阐述之后,据说要阐述一份声明。在完成阐述之前(包括阐述之前),声明尚未阐述。

还为设计层次结构、声明性部分、语句部分(包含并发语句)和并发语句定义了细化。为了最终详细说明在这些构造中声明的声明性项目,有必要详细说明此类构造。

为了执行模型,首先应详细说明定义模型的设计层次结构。然后在模型中初始化网络(见 14.7.3.4)。最后,继续进行模型模拟。模拟由模拟周期的重复执行组成,在此期间执行过程并更新网络。

14.2 细化设计层次结构,第 1 段:

设计层次结构的细化创建了由网络互连的过程集合;然后可以执行这个过程和网络的集合来模拟设计的行为。

每个并发语句都被详细说明为一个进程(进程语句、并发过程调用、并发断言语句、并发信号分配)或块和进程的层次结构(生成语句、组件实例化和块语句)。

进程不是例程,它不被调用。而是暂停并恢复。它将从最后一个语句换行到第一个语句(转到或跳转,而不是调用)。

一个模型中可以容纳多少进程与它是结构性的还是行为性的无关 - 所有 VHDL 模型都是行为性的,两者之间的区别在于样式而不是执行。

与恢复地址一起,进程恢复由对事件或模拟时间的敏感性控制。当一个进程挂起时,由它实现的算法控制。

模拟
14.7 模型的执行 14.7.1 总则,第 1 段:

设计层次结构的细化产生了一个模型,可以执行该模型以模拟模型所代表的设计。模拟涉及执行用户定义的流程,这些流程相互之间以及与环境交互。 ...

流程语句的执行可以与模型中的任何其他流程同时发生。没有保证的执行顺序,如果它们没有同时执行,则模拟周期会将它们视为已执行。

当任何进程正在执行时,不会发生信号分配。当所有进程都已暂停任何计划的输出波形时,将评估计划的信号分配,并确定计划进行信号更新的下一次时间。模拟时间提前到那个时间。计划在 0 个仿真时间单位之后发生的信号分配发生在下一个增量周期中。当没有进一步更新时,计划模拟时间提前到最大时间值并结束模拟。

有多少进程
有多少进程是实现限制,更多地基于 CPU 架构(地址空间,地址指针的大小)。可以有多少进程取决于可寻址事物的总数、模型代码及其大小与指针的大小以及支持模拟所需的可执行代码的数量——模拟模型内存空间中的主机操作系统例程。主机处理虚拟内存的能力。

地址空间通常与 CPU 的字长相关。它依赖于实现,而不是 VHDL 语言定义限制。

实施限制的后果会影响可移植性。

便携性
附件 D, (资料性的), 潜在的不可移植构造,第 1 段:

本附件列出了那些使用可能导致不可移植描述的 VHDL 结构。
如果描述被认为是可移植的

    a) 编译、详细说明、初始化和模拟以终止所有符合实现的模拟周期,并且

    b) 描述中所有信号和变量的时变状态在模拟过程中始终相同,

在相同的刺激同时应用于描述的条件下。应用于模型的激励包括提供给模型设计层次结构根部的泛型和端口的值(如果有)。

基于实现限制,VHDL 设计规范在实现之间可能是不可移植的。附录 D 列举了语言定义中定义的不可移植结构,其中不包括实现限制。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-05-26
    • 1970-01-01
    • 2013-12-25
    • 1970-01-01
    • 2017-07-15
    • 1970-01-01
    • 2012-01-04
    • 1970-01-01
    相关资源
    最近更新 更多