gpt4 book ai didi

VHDL 函数不编译

转载 作者:行者123 更新时间:2023-12-02 08:48:48 25 4
gpt4 key购买 nike

我试图在 VHDL 中定义一个函数,但我得到了

Error: tst.vhd(4): near "subtype": syntax error

这是代码

subtype word10 is bit_vector(9 downto 0);
subtype word8 is bit_vector(7 downto 0);

function tst (input : in word10) return word10 is
variable tmp : word10;
-- code here
begin

return tmp;
end tst;

entity tester is
end;

architecture tst of tester is
begin
end;

这是我第一次用 VHDL 编码,我无法弄清楚错误是什么。

有什么想法吗?

最佳答案

问题是你试图定义的东西(子类型和函数)需要在库单元(包或实体)或其他一些主体内声明,而不是单独卡在外面。尝试将声明移动到测试器实体(即:在“实体测试器是”行之后):

entity tester is
subtype word10 is bit_vector(9 downto 0);
subtype word8 is bit_vector(7 downto 0);

function tst (input : in word10) return word10 is
variable tmp : word10;
-- code here
begin

return tmp;
end tst;
end tester;

您声明子类型和函数的确切位置将取决于您需要它们可见的范围。如果您需要在整个设计中访问它们,通常会将它们聚集在一起并在一个包中声明。

关于VHDL 函数不编译,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10209475/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com