ERROR:Bitgen:342


     ZedBoard学习-解决ERROR:Bitgen:342
2013-02-25 00:23:29
分享:

     今天在看xilinx的官方手册ZedBoard-CTT-V14.1时发现手册中实验3.1 Adding soft IP in the PL to interface with the Zynq PS存在错误,按照它的提示是不能成功生成.bit文件的。

    操作步骤30.Type the following text in the UCF file其给的text应改为:
   # Connect to Push Button "BTNU"
    NET axi_gpio_0_GPIO_IO_pin[0] IOSTANDARD=LVCMOS25 | LOC=T18;
    # Connect to Push Button "BTNR"
    NET processing_system7_0_GPIO_pin IOSTANDARD=LVCMOS25 | LOC=R18;
    否则在planahead中生成.bit文件时或出现如下错误ERROR:Bitgen:342

附录A:官方给出的操作步骤30
    # Connect to Push Button "BTNU"
    NET axi_gpio_0_GPIO_IO_pin IOSTANDARD=LVCMOS25 | LOC=T18;
    # Connect to Push Button "BTNR"
    NET processing_system7_0_GPIO_pin IOSTANDARD=LVCMOS25 | LOC=R18;

附录B:具体错误提示:
    ERROR:Bitgen:342 - This design contains pins which have locations (LOC) that are
   not user-assigned or I/O Standards (IOSTANDARD) that are not user-assigned.
   This may cause I/O contention or incompatibility with the board power or
   connectivity affecting performance, signal integrity or in extreme cases
   cause damage to the device or the components to which it is connected.  To
   prevent this error, it is highly suggested to specify all pin locations and
   I/O standards to avoid potential contention or conflicts and allow proper
   bitstream creation.  To demote this error to a warning and allow bitstream
   creation with unspecified I/O location or standards, you may apply the
   following bitgen switch: -g UnconstrainedPins:Allow

附录C:本人的详细解决过程
        其实Xilinx很重视用户体验,提供了完善的帮助信息,遇到错误时认真分析
错误提示,善于根据提示去分析、定位并解决问题
        一、 分析及初步定位问题:
        This design contains pins which have locations (LOC) that are not user-assigned or I/O Standards(IOSTANDARD) that are not user-assigned设计中有未分配的引脚,或引脚电平标准为分配。设计中涉及到引脚分配的操作就是改写约束文件中的脚本信息实现的,所以问题就定 位在了所添加的约束信息
        二、  整理解决思路:
        1:对未正确分配的管脚进行正确分配
        2、改变bitgen选项,允许其在存在引脚未或其IO逻辑电平标准没分配的情况下创建bitstream
        三、 先采取思路1:查看了管脚约束是有些问题,输入大意了两个都分配成了T18,将第二个修改为R18后,仍然出现同样的问题,再三确定约束正确后采取思路 2:点击project manager中的Bitsream Settings,在more options 后面输入:-g UnconstrainedPins:Allow然后点击generate bitstream生成成功,出现如下警告:
       WARNING:Bitgen:343 - This design contains pins which have locations (LOC) that
       are not user-assigned or I/O Standards (IOSTANDARD) that are not
       user-assigned.  This may cause I/O contention or incompatibility with the
       board power or connectivity affecting performance, signal integrity or in
       extreme cases cause damage to the device or the components to which it is
       connected.  To prevent this warning, it is highly suggested to specify all
       pin locations and I/O standards to avoid potential contention or conflicts
       and allow proper bitstream creation.
       WARNING:PhysDesignRules:372 - Gated clock. Clock net
       system_i/chipscope_icon_0_control0[13] is sourced by a combinatorial pin.
       This is not good design practice. Use the CE pin to control the loading of
       data into the flip-flop.
       WARNING:PhysDesignRules:2452 - The IOB axi_gpio_0_GPIO_IO_pin[0] is either not
       constrained (LOC) to a specific location and/or has an undefined I/O Standard
       (IOSTANDARD). This condition may seriously affect the device and will be an
       error in bitstream creation. It should be corrected by properly specifying
       the pin location and I/O Standard.
        四、定位问题:
        这里就出现了更具体的提示信息:IOB axi_gpio_0_GPIO_IO_pin[0]没有正确分配。问题就找到了IOB axi_gpio_0_GPIO_IO_pin是总线的形式指的是IOB axi_gpio_0_GPIO_IO_pin[0]~IOBaxi_gpio_0_GPIO_IO_pin[31],而我们只用到了其中的IOB axi_gpio_0_GPIO_IO_pin[0]。

你可能感兴趣的:(硬件开发)