【发布时间】:2020-08-20 07:26:29
【问题描述】:
我想在 Quartus 中为各个实体设置不同的综合设置。具体来说,我想更改 Auto Resource Sharing 选项。我设法使用分配编辑器更改了单个组件的此设置。这会将以下行添加到 QSF:
set_instance_assignment -name AUTO_RESOURCE_SHARING OFF -to "adder:inst73"
虽然这可行,但很难在项目中维护这些设置。我宁愿在组件的 VHDL 源代码中直接分配此设置。我尝试了以下属性,但似乎没有什么不同。
entity adder is
-- ...
end entity;
architecture behaviour of adder is
attribute altera_attribute : string;
attribute altera_attribute of adder : entity is "-name AUTO_RESOURCE_SHARING OFF";
attribute altera_attribute of behaviour : architecture is "-name AUTO_RESOURCE_SHARING OFF";
begin
-- ...
end behaviour;
有人知道是否可以通过 VHDL 属性更改此设置吗?
【问题讨论】:
-
IEEE Std 1076-2008 7.1 “规范......应始终出现在与命名实体的声明出现的同一声明部分中,或者(在规范的情况下与设计单元有关……)直接在与设计单元、子程序主体或块语句的声明相关的声明部分内。”自-1987 年以来。 Altera/Intel 和一些模拟器一样忽略了这个要求(有时有选择地使用命令行选项)。实体声明部分在语义上不同于架构声明部分。
-
@user1155120 我不确定你对那句话的意思。您如何建议我更改示例?我尝试在实体声明中移动实体的属性,但仍然没有应用设置。