eeee

Vivado bug大揭秘——那些年我们遇到的bug

0
阅读(10081)

    VIVADO做为Xilinx推出的一大利器,集成了ISE、EDK、Chipscope(比其更高级)等多个开发工具于一身,给设计者带来极大的方便,同时在综合和实现的速度上也提升较多。然而,如此之大的软件在刚推出不久难免有些瑕疵,也带来了使用时的一些烦恼,更苦恼的是这些bug在官网的论坛上也很少找到合适的解决方法,更多的是靠自己慢慢的摸索。

    笔者使用VIVADO 2013.3有将近一年多的时间,其间遇到了很多的bug,花费了一些精力去探索这些bug的原因,解决这些bug。在这里愿与大家一起分享讨论,不足或者有误的地方也请大家海涵^O^

    由于时间仓促,没来得及详细整理,只做了个大概的分类,后面的博文中将陆续给出。

一. Block Design中的Bug

    Block Design是VIVADO中新引入的功能,能够根据用户的需求参数自动选择、添加并连接相应的IP,组建功能更加丰富的块。然而,也是Bug最容易出现的地方,后续博文中将对该部分详细讲解。

二. 综合、实现参数配置不当产生的Bug

    根据用户不同的设计规模和需求,在综合和实现的配置选项中,通常会更改一些参数,然而参数选择的不当会触发一些稀奇古怪的Bug,让人无从下手,比如综合一直运行却没有进度等,这类Bug通常比较隐蔽。

三. 不同操作系统下,工程移植存在的Bug

    国内大多数用户会选择在Windows的环境下使用VIVADO,然而也存在一些情况,需要将Windows中的工程拷贝到Linux系统中,这时会因为一些文件参数的设置不当引起Bug,导致软件报错,无法继续工作。这类错误通常比较容易定位,但是找到解决的办法通常不容易。

四. 与Cadence联合使用时,仿真中存在的Bug

    仿真是设计中不可获取的一个重要环节,但是,使用过VIVAO的都深有体会,VIVADO中集成的仿真工具Xsim虽然功能强大,但速度太慢,个人经验是Modelsim比Xsim快3倍左右,而Cadence中的仿真工具却可以比Xsim快20多倍左右!所以,我们工程中选择Cadence配合VIVADO来使用,但是,两者配合使用中的一些Bug也是致命的,有些导致仿真逻辑都不对。

五. 图形化界面配置不能映射到相应文件的Bug

    在打开综合或者实现后的文件时,往往需要根据一些设计的调整添加一些新的约束条件,这些约束条件通常是在图形化的界面中配置的,最后要生成在相应的ucf文件中,然后软件中存在Bug不能自动保存这些约束,造成使用的不便。

    

    以上是笔者在使用VIVADO一年多来遇到的一些Bug,先在这里做个简要的分类,在后续的博文中将具体针对每一类Bug做详细的分析,并给出解决的方法。

    最后也希望大家多多支持,多投票点赞让我有信心继续写下去