Error (10430): VHDL Primary Unit Declaration error at auk_dspip_fpcompiler_clzf_fft_130.vhd(7): primary unit "auk_dspip_fpcompiler_clzf_fft_130" already exists in library "work"
库文件重复,但是打开setting看不见libary
从错误信息可以看出,在quartus 13.0中编译auk_dspip_fpcompiler_clzf_fft_130.vhd文件时出现了重复定义primary unit的错误。
这个错误通常有以下几个原因:
- 真的有两个同名的entity定义在同一个vhdl文件中。这时需要检查vhdl文件,删除重复定义的entity。
- 同一个entity定义在多个vhdl文件中。这时需要确保只有一个vhdl文件被quartus编译,其他文件不被编译。可以在quartus的Assignment Editor中,对不需要编译的文件取消勾选"Compile file"。
- 库文件设置错误。检查quartus的Settings->EDA Tool Settings->VHDL Libraries,确认只有一个库文件包含了该entity定义。如果有重复,需要设置只编译一个库文件。
- 项目设置中有多个顶层实体,导致重复编译同一个entity。这时需要在quartus的Assignment Editor中,只保留一个顶层实体,其他实体取消选中。
根据提示,很有可能是库文件重复的问题。可以在quartus的VHDL Libraries设置中,只勾选编译一个包含该entity定义的库文件,取消其他库文件的编译选项。这样就可以避免重复定义的错误。
另外,对于开发板PH1A90SBG484-3,可以在Assignment Editor中将其设置为顶层实体,然后在TimeQuest Timing Analyzer中添加相应的时序约束文件,就可以进行时序分析和仿真了