前言
自定义IP core时出现一些错误的信息,在这里记录做一些记录,也提出了自己的解决方法,有些或许解决方案只是凑巧而已。
我第一次做IP core的自定义,这里说一下我是怎么去寻找我的解决方案的。个人观点,仅供参考。
最后要相信:解决办法总比问题多!
1. 生成Link Script的时候出现这样的错误:
ERROR:MDT - ".vectors" section has to be aligned on a 64K boundary. Please select a suitably aligned memory for this section.
我的做法是:
EDK下--Applications --右键选中自己建立的Project---generate link script
2. 当Generate bistreams时候出现如下的错误:
ERROR:MDT - File not found in any repository
'rng_gen_v1_00_a/hdl/vhdl/RNG_topV2.0'
ERROR:MDT - File not found in any repository
'rng_gen_v1_00_a/hdl/vhdl/RNG_topV2.0'
ERROR:MDT - File not found in any repository
'rng_gen_v1_00_a/hdl/vhdl/RNG_topV2.0'
ERROR:MDT - platgen failed with errors!
make: *** [implementation/system.bmm] Error 2
解决的建议:
This issue can occur when an underlying pcore library referenced in a pcore uses a different HDL language than the top-level HDL, and the underlying pcore's PAO does not specify an HDL type for each of the files. An example is the Verilog xcl_bfm core that uses the VHDL opb_ipif_v3_01_c library.
When a library is used without an HDL specified, the tools use the same language as the parent pcore for the underlying library, which causes the tools to look in the wrong HDL directory for the source files.
You can resolve this issue by using one of the following
solutions:
- Correct the underlying pcore PAO to specify a language for each
HDL source file.
- Change the parent pcore PAO to specify each underlying pcore
HDL with a specified language for each source file instead of the
usual "all" keyword.
我的做法是:
修改ISE工程中的文件名:RNG_TOPV2.0.vhd为 RNG_TOPV2.vhd
注:我还是不清楚这个跟我修改了名字有没有关系,或许我是重新做了一遍 import Peripheral而已;建议以后文件名不要加入“.”。
3.在Generate bistreams出现另一个错误:
ERROR:NgdBuild:604 - logical block 'camcon_inst/data_fifo' with type 'll_fifo_0_1_16_8_32_2_1_false' could not be resolved. A pin name misspelling can cause this, a missing edif or ngc file, or the misspelling of a type name. Symbol 'FIFO' is not supported in target 'virtex2p'.
我的做法是:
重新在ISE中生成FIFO,然后在导入外设的过程中,需要导入netlist的*.ncg文件。
Ref