admin 发表于 2021-12-2 17:42:15

Error (125091): Tcl error: ERROR: Illegal assignment: IP_GENERATED_DEVICE_FAM...

# 问题描述:

![报错信息.png](data/attachment/forum/202112/02/173330m78mi3iaado3aa06.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/300 "报错信息.png")

Error (125091): Tcl error: ERROR: Illegal assignment: IP_GENERATED_DEVICE_FAMILY. Specify a legal assignment name.

while executing

"set_global_assignment -name IP_GENERATED_DEVICE_FAMILY "{Cyclone IV E}""
(file "SPWM_ROM.qip" line 3)
Info (125063): set_global_assignment -name IP_TOOL_VERSION 18.1 -qip SPWM_ROM.qip



# 问题原因

报错是使用低版本的Quartus软件(如Quartus II 13.0)打开了高版本软件(如Quartus 15.1)创建的工程导致的。普通Verilog程序都是完全兼容的,但是对于使用Quartus软件创建的IP,如FIFO、PLL、RAM等,高版本的软件会在其IP描述文件xxx.qip文件中加入对 器件系列(IP_GENERATED_DEVICE_FAMILY) 和 版本号(IP_TOOL_VERSION)的描述,而这些描述语句又是低版本的软件不支持的,所以编译时候会报错。


# 解决方案

解决方法很简单,直接使用文本编辑器打开报错的qip文件,如上述报错中报的是“SPWM_ROM.qip”这个文件,直接打开,找到报错说的“IP_GENERATED_DEVICE_FAMILY”所在行(应该是第二行)和“IP_TOOL_VERSION”所在行(应该是第三行),直接删除这些行即可。删除这些内容不会对工程造成任何影响。直接删除并保存后再编译即可。


# 注意事项

一个工程中可能有多个IP,报错一次只报一个的,所以是修改完一个,编译一下,报下一个,根据报错依次修改完所有报错位置后,工程就可以正常编译了。


# 附件

二楼上传了该工程,本文用到的例子由网友在网上找到并提供下载,感兴趣的可以自己下载了编译尝试。

admin 发表于 2021-12-2 17:43:24

一楼所说的工程

(markdown编辑器不支持直接传附件,真是麻烦,要传附件还得单独开个楼层)
页: [1]
查看完整版本: Error (125091): Tcl error: ERROR: Illegal assignment: IP_GENERATED_DEVICE_FAM...