描述
关键词:FPGAExpress,SyopoSyS,VujyStdLogLogic矢量,HDL—1,溢出
紧迫性:标准
一般描述:
当将整数作为参数传递到STDYLogiCyrAthTH包中找到的VuuthStdLogLogic向量函数时,Express假定所得到的STDYLogLogic向量将始终是带符号的数字。在下面的示例中,数字20将被转换为010100,而不仅仅是10100,并且由于五位有符号向量具有从15到16的范围,当函数的第二输入为5时,Express不允许20作为输入。
前& GT;
信号同步延迟:StdLogLogic向量(4下降到0);
常数延迟:整数:=20;
…
SycClult& Lt= = VuuiStdLogLogic向量(延迟,5);
&;
下列错误将导致:
错误:常数值20溢出“siZedItIt:范围16至15”
在常规SythInGeulth-To-签名中
从DelayLoNo.20行37调用文件’Vald’VHD’(HDL—1)
解决方案
使用一个比最终向量大一点的临时向量。将转换赋值给这个向量,然后将所有的MSB分配给最终向量。
信号同步延迟:StdLogLogic向量(4下降到0);
信号温度:StdLogLogic向量(5下降到0);
常数延迟:整数:=20;
…
Tunp & lt;= VuuiStdLogLogic向量(延迟,6);-不要忘记将大小增加1
SimcLead & lt;= TEMP(4下降到0);
没有回复内容