FPGA常见的警告以及处理方法

更多精彩内容,请微信搜索“FPGAer俱乐部”关注我们

1.Found  clock-sensitive        change during        active        clock        edge at        time on register ""
原因: vector source file        中时钟敏感信号(如:数据,允许端,清零,同步加载等)在时钟的边缘同时变化。而时钟敏感信号是不能在时钟边沿变化的。其后果为导致结果不正确。
措施:编辑        vector source file

 

2.Verilog        HDL assignment        warning        at  :        truncated        value        with        size         to match size of target (
原因 : 在 HDL设计中对目标的位数进行了设定        , 如:reg[4:0]        a; 而默认为        32 位, 将位数裁定到合适的大小
措施 : 如果结果正确        , 无须加以修正        , 如果不想看到这个警告        , 可以改变设定的位数

 

3.All reachable assignments to data_out(10) assign '0', register removed by optimization
原因 : 经过综合器优化后,输出端口已经不起作用了

 

4.Following        9 pins        have nothing,        GND, or        VCCdriving        datain        port --        changes to this connectivity may change fitting results
原因 : 第 9 脚,空或接地或接上了电源
措施 : 有时候定义了输出端口,但输出端直接赋‘0’,便会被接地,赋‘1’接电源。如果你的设计中这些端口就是这样用的,那便可以不理会这些        warning

 

5.Found pins functioning as undefined clocks and/or memory enables
原因 : 是你作为时钟的        PIN 没有约束信息。可以对相应的        PIN 做一下设定就行了。主要是指你的某些管脚在电路当中起到了时钟管脚的作用,比如        flip-flop        的  clk  管脚,而此管脚没有时钟约束,因此        QuartusII        把

“clk ”作为未定义的时钟。
措施 : 如果  clk        不是时钟,可以加“  not clock        ”的约束;如果是,可以在        clock setting
当中加入;在某些对时钟要求不很高的情况下,可以忽略此警告或在这里修改:Assignments>Timing analysis settings...>Individual clocks...>...
注 意 在 Applies to node        中只用选择时钟引脚一项即可,        required fmax        一般比所要求频率高 5%即可,无须太紧或太松。

 

6.Timing characteristics of device EPM570T144C5 are preliminary
原因 : 因为  MAXII  是比較新的元件在        QuartusII        中的時序並不是正式版的        , 要 等 Service Pack
措施 : 只影响        Quartus        的 Waveform

 

7.Warning:        Clock        latency        analysis        for        PLL offsets        is        supported        for        the current        device family, but is not enabled
措施 : 将  setting        中 的 timing Requirements&Option-->More Timing Setting-->setting-->Enable Clock Latency        中 的 on 改 成 OFF

 

8.Found clock high time violation at 14.8 ns on register "|counter|lpm_counter:count1_rtl_0|dffs[11]"
原因 : 违反了steup/hold时间,应该是后仿真,  看看波形设置是否和时钟沿符合steup/hold
时间
措施 : 在中间加个寄存器可能可以解决问题

 

9.warning: circuit may not operate.detected 46 non-operational paths clocked by clock clk44 with clock skew larger than data delay
原因 : 时钟抖动大于数据延时, 当时钟很快, 而 if 等类的层次过多就会出现这种问题, 但这个问题多是在器件的最高频率中才会出现
措施: setting-->timing        Requirements&Options-->Default        required        fmax        改小一些,如改 到 50MHZ

 

10.Design contains input pin(s) that do not drive logic
原因 : 输入引脚没有驱动逻辑        ( 驱动其他引脚)        , 所有的输入引脚需要有输入逻辑措施 : 如果这种情况是故意的        , 无须理会  , 如果非故意  , 输入逻辑驱动        .

 

11.Warning :Found clock high time violation at 8.9ns on node 'TEST3.CLK'
原因: FF 中输入的        PLS 的保持时间过短措施:在        FF 中设置较高的时钟频率

 

12.Warning: Found 10 node(s) in clock paths which may be acting as ripple and/or gated clocks -- node(s) analyzed as buffer(s) resulting in clock skew
原因 : 如果你用的        CPLD    只有一组全局时钟时,用全局时钟分频产生的另一个时钟在布线中当作信号处理, 不能保证低的时钟歪斜        (SKEW)。会造成在这个时钟上工作的时序电路不可靠, 甚至每次布线产生的问题都不一样。
措施 : 如果用有两组以上全局时钟的        FPGA 芯片,可以把第二个全局时钟作为另一个时钟用,可以解决这个问题。

 

13.Critical        Warning:        Timing        requirements        were not  met.  See Report        window for        details.
原因:时序要求未满足,
措施:双击        Compilation        Report-->Time        Analyzer-->        红色部分(如        clock        setup:'clk'        等)
--> 左键单击        list path,        查看  fmax 的  SLACK REPORT再根据提示解决        , 有可能是程序的算法问题或 fmax 设置问题

 

14.Warning: Can't find signal in vector source file for input pin |whole|clk10m
原因:这个时因为你的波形仿真文件(        vector        source        file        )中并没有把所有的输入信号
(input pin)        加进去,对于每一个输入都需要有激励源的

 

15.Can't        achieve        minimum setup        and hold        requirement                along         path(s). See Report window for details.
原因:时序分析发现一定数量的路径违背了最小的建立和保持时间,与时钟歪斜有关        , 一般是由于多时钟引起的
措施:利用        Compilation        Report-->Time        Analyzer-->        红色部分(如        clock        hold:'clk'        等),在  slack        中观察是        hold time        为负值还是                setup time                为负值,然后在:Assignment-->Assignment Editor-->To        中增加时钟名        (from node finder)        ,Assignment Name中增加和多时钟有关的        Multicycle                和  Multicycle        Hold 选项,如        hold time 为负,可使  Multicycle hold        的值 >multicycle,        如设为 2 和 1。

 

16: Can't analyze file -- file E://quartusii/*/*.v is missing
原因:试图编译一个不存在的文件,该文件可能被改名或者删除了措施:不管他,没什么影响

 

17.Warning: Can't find signal in vector source file for input pin |whole|clk10m
原因:因为你的波形仿真文件(        vector        source  file        )中并没有把所有的输入信号        (input
pin) 加进去,对于每一个输入都需要有激励源的

 

18.Error:        Can't        name logic        function        scfifo0        of instance        "inst" --        function        has same name as current design file
原因:模块的名字和        project        的名字重名了  措施:把两个名字之一改一下,一般改模块的名字

 

19.Warning:    Using  design   file    lpm_fifo0.v,     which  is   not   specified     as  a  design   file for   the   current    project,      but   contains    definitions      for   1 design   units    and  1 entities in project Info: Found entity 1: lpm_fifo0
原因:模块不是在本项目生成的,而是直接        copy 了别的项目的原理图和源程序而生成的, 而不是用        QUARTUS将文件添加进本项目
措施:无须理会,不影响使用

 

20.Timing characteristics of device are preliminary
原因:目前版本的        QuartusII        只对该器件提供初步的时序特征分析
措施: 如果坚持用目前的器件,        无须理会该警告。        关于进一步的时序特征分析会在后续版本的  Quartus        得到完善。

 

21.Timing        Analysis        does not  support        the  analysis        of  latches        as synchronous        elements for the currently selected device family
原因:用        analyze_latches_as_synchronous_elements setting        可 以 让 Quaruts II        来分析同步锁存,但目前的器件不支持这个特性
措施: 无须理会。 时序分析可能将锁存器分析成回路。        但并不一定分析正确。        其后果可能会导致显示提醒用户:改变设计来消除锁存器        , 但实际其实无关紧要

 

22.Warning:Found xx output pins without output pin load capacitance assignment
原因:没有给输出管教指定负载电容
解决方法:该功能用于估算        TCO和功耗,可以不理会,也可以在        Assignment        Editor        中为相应的输出管脚指定负载电容,以消除警告


QuartusII FPGA 部分错误集锦

1)QuartusII        对代码进行时序仿真时出现        Error: Can't continue timing simulation because delay annotation information for design is missing.
原因: 如果只需要进行功能仿真,        不全编译也是可以进行下去的,        但时序仿真就必须进行全编译(即工具栏上的紫色实心三角符号那项)。

全仿真包括四个模块:综合器( Synthesis )、电路装配器(        Fitter        )、组装器( Assember)和时序分析器( Timing Analyzer        ),任务窗格中会有成功标志(对号)。

 

2)在下载运行的时候,出现下面的错误:
Warning: The JTAGcable        you are using is        not supported        for        Nios II        systems.
You may experience intermittent JTAG communicationfailures with this cable. Please use a USB Blaster revision B.

在运行之前已经将        .sof        文件下载到开发板上面了,但是依然出现上面的问题。
解决:在配置的时候,在        run 之后,进行配置,选择                target        connection        ,在最后一项: NIOS II Terminal Communication Device        中,要选择        none(不要是Jtag_uart        )如果采用        USB Blaster ,可以选择        Jtag_uart        。
之后再 run 就 ok 了!

 

3)Error: Can't compile duplicate declarations of entity "count3" into library "work"
此错误一般是原理图文件的名字和图中一个器件的名字重复所致,        所以更改原理图文件的名字保存即可。


本文转载自http://www.eefocus.com/fpga/411099/r0,如涉及侵权,请私信小编删除。

============华 丽 的 分 割 线============


想加入我们FPGA学习交流群吗?可以长按或扫描以下二维码,审核通过后我们邀请您加入

这些微信群旨在打造一个提供给FPGA工程开发人员及兴趣爱好者(统称“FPGAer”)进行技术交流、答疑解惑和学习的平台。而且我们也将会通过网络举办FPGA技术讲座,分享相关研究文献 



了解更多FPGA知识可以长按或扫描以下二维码关注FPGAer俱乐部


  • 2
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值