【发布时间】:2014-06-03 21:56:54
【问题描述】:
我有一个 VHDL 代码,它需要一个通用元素数组。 COEF_LIST : coef :=(0,0,1,1,2,-2,1,-2,1)
如何将新的 COEF_LIST 集从我的系统 verilog 测试台发送到 VHDL 实体?
VHDL 中的泛型与verilog 中的参数相同。
我将 coef 声明为
parameter real COEFF[8:0] = '{0,0,1,1,2,-2,1,-2,1};
在系统verilog中。
我尝试通过使用(在我的 verilog 测试平台中)
vhdl_entity #(
.COEF_LIST(COEFF)
)
我收到以下错误
**.COEF_LIST(COEFF)
|
ncelab: *E,CFIGTC (./vhdl_entity_tb.vams,41|36): VHDL generic vhdl_entity.COEF_LIST (../views/rtl/vhdl_entity.vhd: line 34, position 14) 类型与 Verilog 不兼容. irun: E,ELBERR: 细化期间出错(状态 1),正在退出。*
这不起作用。如何使其与 VHDL 兼容? 我用的是incisiv 13.20.008版本
有人可以建议怎么做吗?
【问题讨论】:
-
您能否详细说明问题所在? (最好通过编辑您的帖子)
-
尝试通过在 VHDL 实体上设置默认参数来简化问题,看看是否可行。您已声明为实数数组,但 VHDL 阐述器可能会将数组视为整数列表。看看当你给数字加上小数点后会发生什么。
-
发布 VHDL 实体的声明(只是泛型就足够了,没有端口)以更好地显示发生了什么。
标签: arrays generics parameter-passing vhdl system-verilog