VIVADO综合-从外部文件读取十六进制值初始化BRAM不工作

描述

从外部文件读取十六进制值以使用下面的代码初始化BRAM不起作用。

通过在综合设计中查看BRAM实例的init值,BRAM没有被正确初始化。

不纯函数InRAMFROFFROM文件(RAMFILNAME:In String)返回RamType
文件RAMFILE:文本在RamFileName;
变量RAMFILLIN:线;
可变RAM:RamType;
开始
我在RAMYTYPE范围循环
读行(RAMFILE,RamFileLine);
读(RAMFLILLIN,RAM(I));
结束环;
返回滑块;
结束函数;
信号RAM:RAMType:= InRAMFROFFILE(“…//AxxBuiBudg.NbBVSS.data”);


解决方案

要读取十六进制值,必须在RAM代码中使用H读取函数。

不纯函数InRAMFROFFROM文件(RAMFILNAME:In String)返回RamType
文件RAMFILE:文本在RamFileName;
变量RAMFILLIN:线;
可变RAM:RamType;
开始
我在RAMYTYPE范围循环
读行(RAMFILE,RamFileLine);
哈里德(RAMFILLIN,RAM(I));
结束环;
返回滑块;
结束函数;

信号RAM:RAMType:= InRAMFROFFILE(“…//AxxBuiBudg.NbBVSS.data”);
编辑 重设标签(回车键确认) 标为违禁 关闭 合并 删除

提问于 2018-07-30 17:21:35 +0800

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

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