一个语法问题

2020-02-02 11:58发布

       是这样,我原来用的芯片是Spartan-3AN 系列的XC3S700AN,现在换成了Spartan6 系列的XC6SLX16。换了之后原来在
XC3S700AN的跑的好好的程序现在编译不过去了,出现了如下图所示的错误:
   P8X{97EURS`9IQZKSHV`08J.png
        acc0 和 val10 这两个变量都是std_logic_vector类型的,不同的是acc0 是32位的,而val10是16位的,所以这个错误是不是
由于我把32位的数据赋值给了一个16位的变量造成的,如果是该怎么修改呢。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
6条回答
FreeCountry
1楼-- · 2020-02-02 12:30
没人理我
FreeCountry
2楼-- · 2020-02-02 16:38
问题处理好了,VHDL里面不同位长的变量是不能直接进行赋值运算的,得绕电路,比如用个‘&’什么的。
玄德
3楼-- · 2020-02-02 17:15

试试就知道。


FreeCountry
4楼-- · 2020-02-02 22:50
 精彩回答 2  元偷偷看……
FreeCountry
5楼-- · 2020-02-03 02:24
玄德 发表于 2017-9-8 14:27
试试就知道。

不懂是不是还不太熟悉VHDL的原因,感觉VHDL用起来各种局限.
玄德
6楼-- · 2020-02-03 04:51

我用verilog,印象里这种情况只会告警,不会报错。
VHDL不清楚了。

可能主要是平台的关系吧。

一周热门 更多>