0

我正在尝试编写一个简单的 vhdl 代码。当我在 quartus 2 中运行这段代码时没有问题。但是,当我在 modelsim 上运行时,第 2 行出现错误,即“use ieee.std_logic_all.1164;”错误。. 我不知道,因为我是 vhdl 的新手。顺便说一句,我正在使用 Modelsim Starter edition 6.5e

library ieee;
use ieee.std_logic_all.1164;

entity tb is
end tb;

architecture behaviour of tb is 
component ORG is
port (
a : in std_logic;
b : in std_logic;
c : out std_logic;
 );

 signal ina, inb, outc : std_logic;
 constant period : time := 100ns;
 signal done : boolean := false;


begin
  process
    begin
      ina = '0';
      inb = '0';
      wait for period;


      ina = '1';
      inb = '0'

      wait for period;
      done <= true;
      wait;
  end process;
end behaviour;
4

1 回答 1

1

您的代码中有许多问题会导致语法错误。

  1. 正如@rene 指出的那样,库名称是std_logic_1164-您将“1164”和“all”颠倒了(IEEE 的大写并不重要)。
  2. 端口行的末尾不应有分号c
  3. 您应该end component;在端口声明之后包含一个声明(即在右括号和分号之后)
  4. 过程中的等号应该是<=
  5. 100最后,和之间应该有一个空格ns
于 2013-04-21T17:03:24.337 回答