我编写了简单的代码,只定义了一个数组。但它显示以下三个错误。
错误:HDLCompiler:806 - "类型"附近的语法错误。解析实体
错误:HDLCompiler:854 - 由于先前的错误而忽略了单位。 解析实体的架构。
错误:HDLC编译器:374 - 实体尚未编译。
library IEEE;
use IEEE.std_logic_1164.all;
type NIBBLE is ARRAY (3 downto 0) of std_ulogic;
entity kelvin is
end kelvin;
architecture ospl of kelvin is
begin
end ospl;
答案 0 :(得分:4)
在VHDL中,在设计单元之外声明type
(或其他任何内容)是非法的(即在实体之外,架构< / em>,包或包体)。此外,您必须在声明性区域(即type
和architecture
之间或begin
之间声明process
(和其他任何内容) begin
等。)
所以,你的代码应该是
library IEEE;
use IEEE.std_logic_1164.all;
entity kelvin is
end kelvin;
architecture ospl of kelvin is
type NIBBLE is ARRAY (3 downto 0) of std_ulogic;
begin