描述
有关解决XST内存不足错误的帮助,请参阅本答复记录。
注意:本答复记录是Xilinx XST解决方案中心(Xilinx答复38927)的一部分 。 Xilinx XST解决方案中心可用于解决与XST相关的所有问题。无论是开始新设计还是解决问题,请使用XST解决方案中心来指导您获取正确的信息。
解
XST将报告内存不足时出现以下错误:
错误:可移植性:3
此错误并非特定于XST,并将报告正在使用的内存量。首先要检查的是您是否符合此处列出的内存建议 : 内存建议
另一个可能的问题是XST可能会因代码中的某些结构而导致内存泄漏。下面的列表提供了XST可能耗尽内存的可能原因列表:
- 嵌套循环
- 大型嵌套if-else语句
- XST HDL选项(有关HDL选项,请参阅下图)
内存泄漏可能难以确定,因为XST通常需要花费大量时间来发出错误。加速该过程的一种方法是消除不相关的模块。尝试使用黑盒模块或将较低级别的模块编译为顶级模块。这将减少错误显示的时间。一旦将其缩小到一个或几个模块,就可以将端口从设计中取出。这当然是严格用于调试目的。
一个建议是删除顶级端口。移除顶层输出端口将固有地具有XST裁剪部分设计。从模块中删除端口后,尝试在设计中注释掉代码段。一旦你注释掉足够多的代码并将其缩小到几行代码,尝试使用常量而不是信号重新编码其余部分。这将有助于进一步缩小问题范围,以便将其缩小到某一行代码。
一旦缩小到一行代码,尝试在保持功能的同时更改代码。有时,破坏或组合信号可以产生足够的差异,使设计避免内存故障。
Xilinx致力于解决内存不足错误,因此开放Webcase以便开发将在未来版本中解决此问题。在提交Webcase之前,请确保有可用的测试用例发送给Xilinx技术支持。
没有回复内容