Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/opencv/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Compiler construction VHDL编译器退出错误_Compiler Construction_Compiler Errors_Vhdl - Fatal编程技术网

Compiler construction VHDL编译器退出错误

Compiler construction VHDL编译器退出错误,compiler-construction,compiler-errors,vhdl,Compiler Construction,Compiler Errors,Vhdl,我正在为BCD_计数器创建一个测试台 当我尝试编译测试台时,我始终会得到如下错误: “错误:…/…/../Test\u UpDownCounter.vhdl(38):vhdl编译器正在退出。” 这是我得到的唯一错误,第38行是我代码的最后一行。我想知道可能是什么问题 这是我的代码,任何帮助都将不胜感激 entity test_BCD is end entity test_BCD; architecture test of test_BCD is signal t_clk,

我正在为BCD_计数器创建一个测试台

当我尝试编译测试台时,我始终会得到如下错误:

“错误:…/…/../Test\u UpDownCounter.vhdl(38):vhdl编译器正在退出。”

这是我得到的唯一错误,第38行是我代码的最后一行。我想知道可能是什么问题

这是我的代码,任何帮助都将不胜感激

entity test_BCD is
  end entity test_BCD;

  architecture test of test_BCD is 
     signal t_clk, t_direction, t_init, t_enable: bit;
     signal t_q : integer;

     component UpDownCounter is 
          port(clk, direction, init, enable: in bit;
              q_out: out integer);
     end component;

     begin
       my_design: UpDownCounter port map (t_enable, t_q, t_clk, t_direction, t_init, t_enable);


       clk_gen: process
          constant High_time : Time :=5 ns;
          constant Low_time : Time := 5 ns;
       begin
          wait for High_time;
          t_clk <= '1';
          wait for Low_time;
          t_clk <= '0';
       end process clk_gen; 


       -- Initialization process (code that executes only once).
       init: process
       begin 
          -- enable signal
          t_enable <= '1', '0' after 100 ns, '1' after 200 ns;
          t_direction <= '1', '0' after 50 ns, '1' after 100 ns, '0' after 150 ns;
          t_init <= '0', '1' after 20 ns, '0' after 30 nz, '1' after 150 ns;
          wait;
       end process init;
end architecture test;
实体测试\u BCD是
结束实体测试\u BCD;
测试BCD的架构测试是
信号t_clk、t_方向、t_初始、t_启用:位;
信号t_q:整数;
组件上下计数器为
端口(时钟、方向、初始、启用):位;
q_out:out整数);
端部元件;
开始
my_设计:上下行计数器端口映射(t_启用、t_q、t_clk、t_方向、t_初始化、t_启用);
clk_gen:过程
恒定高_时间:时间:=5ns;
恒定低_时间:时间:=5ns;
开始
等待时机成熟;
t_clk这条线:

t_init <= '0', '1' after 20 ns, '0' after 30 nz, '1' after 150 ns;
我会用任何编译器生成一个bug报告,以生成更好的错误消息


当我在这里时:

UpDownCounter
的实例化看起来是错误的-您的信号看起来与您使用的组件声明的顺序不同


在这方面:

 clk_gen: process
      constant High_time : Time :=5 ns;
      constant Low_time : Time := 5 ns;
   begin
      wait for High_time;
      t_clk <= '1';
      wait for Low_time;
      t_clk <= '0';
   end process clk_gen; 
clk\u gen:过程
恒定高_时间:时间:=5ns;
恒定低_时间:时间:=5ns;
开始
等待时机成熟;
钟
 clk_gen: process
      constant High_time : Time :=5 ns;
      constant Low_time : Time := 5 ns;
   begin
      wait for High_time;
      t_clk <= '1';
      wait for Low_time;
      t_clk <= '0';
   end process clk_gen;