集成电路技术分享

 找回密码
 我要注册

QQ登录

只需一步,快速开始

搜索
查看: 2645|回复: 1

VHDL问题,帮忙解答!

[复制链接]
小泡泡 发表于 2010-4-23 11:34:19 | 显示全部楼层 |阅读模式
本帖最后由 fpgaw 于 2010-10-29 09:38 编辑

本人初学VHDL,本程序在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-8 14:18:34 | 显示全部楼层
6                     
您需要登录后才可以回帖 登录 | 我要注册

本版积分规则

关闭

站长推荐上一条 /1 下一条

QQ|小黑屋|手机版|Archiver|集成电路技术分享 ( 京ICP备20003123号-1 )

GMT+8, 2024-5-6 23:57 , Processed in 0.073072 second(s), 23 queries .

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表