Vivado Synthesis是否支持VHDL记录类型来建模内存并推断块RAM?

描述

Vivado Synthesis不支持使用VHDL记录类型创建内存的HDL代码。

在此过程中,它不会推断出Block RAM。

以下是使用记录类型创建的内存示例:

子类型DATA_TYPE是std_logic_Vector(DATA_WIDTH-1 downto 0); 
类型MEM_WORD是
记录
data:DATA_TYPE;
结束记录MEM_WORD;

类型MEM_DATA_ARRAY_TYPE是MEM_WORD的数组(自然范围<>);

Vivado Synthesis在上面的示例中没有推断出Block RAM,因为它不支持使用VHDL记录类型创建的内存模型。

此问题将在以后的版本中修复。

要解决此问题,请修改HDL以避免使用记录类型,如以下示例所示:

子类型DATA_TYPE是std_logic_Vector(DATA_WIDTH-1 downto 0); 
类型MEM_DATA_ARRAY_TYPE是DATA_TYPE的数组(自然范围<>);
编辑 重设标签(回车键确认) 标为违禁 关闭 合并 删除

提问于 2018-07-31 12:57:53 +0800

这个帖子被标记为一个社区wiki

这个帖子是一个wiki(维基). 任何一个积分 >500的人都可以完善它