博客首页 | 排行榜 |

KiKi的博客

FPGA工程实践,欢迎互相学习和交流,yq000cn at gmail.com

个人档案
博文分类
Xilinx FPGA 自定义IP core所遇到的错误和相应的解决办法  2010-03-26 20:47

前言  

  自定义IP core时出现一些错误的信息,在这里记录做一些记录,也提出了自己的解决方法,有些或许解决方案只是凑巧而已。

     我第一次做IP core的自定义,这里说一下我是怎么去寻找我的解决方案的。个人观点,仅供参考。

  • 尝试先去理解到底是什么错误,也就是需要好好看一下错误的提示;
  • 如果局限到Xilinx FPGA的开发中遇到的问题,如果自己无法找到解决的方案的话,强烈推荐参考1和2
  • Google是我很热衷的解决问题的工具,顺藤:找类似的错误;摸瓜:找到相应的解决方案;
  • 工具做自带的帮助文件,或许也有些帮助;
  • 问人,我个人觉得是下下策。因为我觉得整个过程我最了解,我也是最有可能发现错误并解决错误的人。如果我没有很好理解错误的话,在向别人描述问题的过程中,肯定会存在一定的描述偏差,同样对方也会出现理解偏差。最后很有可能双方都陷入僵局,一个(答者)不知道怎么回答或许碍于面子的问题会不停的发问,然后给出一些可有可无的建议;另一个(问者)开始怀疑对方解决问题的能力,不想再浪费时间的,但是必须出于礼貌而去听对方的建议。(这个也是我经常遇到的,作为“答者”我常常说这样一句:你试一试再说)

最后要相信:解决办法总比问题多!

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

  1. http://www.xilinx.com/support/answers/index.htm
  2. http://forums.xilinx.com/xlnx/
类别:Xilinx FPGA development |
上一篇:TRNG IP核挂载到PowerPC405的PLB总线上 | 下一篇:在XUP V2P FPGA开发板上移植Kernel2.6(PowerPC405)相关资料
以下网友评论只代表其个人观点,不代表本网站的观点或立场