首页 > 解决方案 > 如何编译 VHDL 包

问题描述

我正在编写一个使用外部包的代码,但它没有找到我在包中声明的类型。

我尝试使用导入向导将包添加为文件,并尝试将其添加为库。包名称上没有发生错误,但是在我使用包中声明的类型的指令上。

USE X.ALL;

ENTITY Y IS
PORT (I : IN packagetype;
O : OUT packagetype);
END Y;

ARCHITECTURE ArchX OF Y IS
BEGIN
O <= function(I);
END ArchX;

出现如下错误:object packagetype is used but not declared

标签: vhdlintel-fpgaquartus

解决方案


如果您已将包 X 编译为 library work,那么您可以通过以下方式使其对客户端(实体/arch 甚至另一个包)可见

USE work.X.all;

推荐阅读