首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

刚学VHDL,请教一下,

刚学VHDL,请教一下,

我用的是QuartusII,按书上的译码器例子输的,编译出错:


Error (10500): VHDL syntax error at priority.vhd(27) near text "process";  expecting a sequential statement,


Error (10500): VHDL syntax error at priority.vhd(28) near text "behavior";  expecting a sequential statement,


 


什么意思?

书上例子如下

LIBRARY ieee;
use ieee.std_logic_1164.all;

ENTITY priority IS

PORT
(signal y1,y2,y3,y4,y5,y6,y7 : IN STD_LOGIC;
signal vec : OUT STD_LOGIC_vector(2 downto 0)
);
END priority;

ARCHITECTURE behavior OF priority IS

BEGIN
arocess(y1,y2,y3,y4,y5,y6,y7)
begin
if (y7='1') then vec<="111";
else if(y6='1') then vec<="110";
else if(y5='1') then vec<="101";
else if(y4='1') then vec<="100";
else if(y3='1') then vec<="011";
else if(y2='1') then vec<="010";
else if(y1='1') then vec<="001";
else vec<="000";
end if;
end process a;
end behavior;
你可能打错了
else if(y6='1') then vec<="110";应该是
elsif(y6='1') then vec<="110"; 依次类推,都应该是这个
没有什么事是做不到的!
非常感谢!
PORT
(signal y1,y2,y3,y4,y5,y6,y7 : IN STD_LOGIC;
signal vec : OUT STD_LOGIC_vector(2 downto 0)
);
我认为这里的;两个Signal没有必要用。不知你怎么看?
PORT
(signal y1,y2,y3,y4,y5,y6,y7 : IN STD_LOGIC;
signal vec : OUT STD_LOGIC_vector(2 downto 0)
);
我认为这里的;两个Signal没有必要用。不知你怎么看?
在实体的声明过程中,不用定义类型的!!实体声明的PORT中定义的都是信号,即元件的I/O,不用再次说明SINGAL
返回列表