【发布时间】:2018-04-07 10:06:17
【问题描述】:
我遇到了一个我无法解决的问题,所以我请求您的帮助。 在 VHDL 包中,我应该按以下方式定义自定义类型的数组,以便将其用作函数中的参数:
type matrixsignal is array (integer range <>) of std_logic_vector;
function first_defined(matrix:matrixsignal; start_index,col_index:integer) return integer;
如您所见,std_logic_vector 不应该有范围,因为它取决于主代码中存在的变量。 但是,当然,编译器拒绝这种结构......我读到它只有 VHDL2008 才有可能,但仍然......有任何可能的解决方案来解决这个问题吗?
【问题讨论】:
-
拒绝哪个结构?也许您可以提供一个minimal reproducible example,包括问题的演示以及指定您是否使用 -2008 兼容性?
-
是的,这是 VHDL-2008 的一项功能。我们是在谈论综合代码还是模拟代码?您使用的是什么工具和版本?您是否在工具中启用了 VHDL-2008?
标签: vhdl