小泡泡 发表于 2010-4-21 10:56:13

编译求助--vhdl问题

本帖最后由 fpgaw 于 2010-10-29 12:35 编辑

本程序在MAX+plusII中运行通过,通过COMPONENT语句及其例化语句调用自制器件
实验报告要求两个程序的y的端口名应保持一直(见红字),教材上在讲COMPONENT没有提到这一点,我的程序依然通过了,不很理解(是知道是不是MAX软件自身问题)。
特别是后两个红色字体的端口名在当第一个是buffer第二个为 out buffer均可,但第一个是OUT时第二个只能是OUT,why?
请高手讲解

程序如下:
----------fpq.vhd------------------
LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;
ENTITY fpq IS
PORT(clk:IN STD_LOGIC;
   y:BUFFER STD_LOGIC);
END fpq;
ARCHITECTURE a OF fpq IS
BEGIN
p:PROCESS(clk)
BEGIN
IF(clk'EVENT AND clk='1') THEN
y<=NOT y;
END IF;
END PROCESS;
END a;


---------------call_fpq.vhd-----------
LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;
ENTITY call_fpq IS
PORT(clk:IN STD_LOGIC;
   y:OUT STD_LOGIC);
END;
ARCHITECTURE a OF call_fpq IS
COMPONENT fpq IS
PORT(clk:IN STD_LOGIC;
   y:OUT STD_LOGIC);
END COMPONENT;
BEGIN
u1:fpq PORT MAP(clk,y);
END;

fpga_feixiang 发表于 2023-9-7 14:18:19

6=                                 
页: [1]
查看完整版本: 编译求助--vhdl问题