【问题标题】:Syntax error near "Architecture" in vhdlvhdl 中“架构”附近的语法错误
【发布时间】:2017-05-11 12:22:00
【问题描述】:

我正在尝试使用结构化架构在 xilinx ise 14.7 和 vhdl 编程语言中编写代码。我有一个名为 mux_xor 的 vhdl 模块和一个名为 Q1 的自上而下的模块。我在 Q1 自上而下模块中收到此错误:

第 62 行:“架构”附近的语法错误。 我的 Q1 vhdl 模块代码如下: 实体 Q1 是

generic(n : integer := 10);
port(
    A,B : in std_logic_vector(0 to N-1);
    C,D : in std_logic;
    F: out std_logic);
end Q1;

architecture STRUCT of Q1 is

  signal K: std_logic_vector(0 to n-1);
  signal S: std_logic_vector(0 to n -1);

  component mux_xor
    port(A,B,inK,inS: in std_logic;
    oK,oS: out std_logic);
  end component mux_xor;

begin

  first_mux: mux_xor port map(A(0),B(0),C,D,K(0),S(0));

  comp_gen:
    for i in 1 to n-1 generate
      new_mux : mux_xor port map(A(i), B(i), K(i-1), S(i-1),K(i), S(i));

  F<=K(N-1);

end Architecture;

【问题讨论】:

    标签: vhdl xilinx xilinx-ise hardware-programming


    【解决方案1】:

    看这行:for i in 1 to n-1 generate,你需要一个匹配的end generate;,所以语句看起来像:

    for i in 1 to n-1 generate
      new_mux : mux_xor port map(A(i), B(i), K(i-1), S(i-1),K(i), S(i));
    end generate;
    

    您可能值得花 5 分钟来执行基本的 google 搜索以查找与您的错误相关的语法。这些都是非常非常基本的错误。

    【讨论】:

    • 我用谷歌搜索了它,但 vhdl 错误处理对于指定错误类型并没有那么精确!还是谢谢。
    • @PooyaGh 不要搜索错误,搜索您尝试实现的代码结构。如果您从未使用过 generate 语句,您可以先查找它,看看正确的语法是什么。
    猜你喜欢
    • 2023-03-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-19
    相关资源
    最近更新 更多