描述
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的数组(自然范围<>);
没有回复内容