Quartus常见错误
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Quartus常见错误
1:看看警告:it conflicts with Quartus II primitive name,实体名和QUARTUS 的保留字冲突,楼主把实体名改一下就行了。有很多这种名字都不能乱起的比如or2 and2 啥的。
为什么还提示“Error: Top-level design entity "and2" is undefined”
library ieee;
use ieee.std_logic_1164.all;
entity and2 is
port(a,b:in std_logic;
y ut std_logic);
end and2;
architecture and2_1 of and2 is
begin
y<=a nand b;
end and2_1;
在设置里已经设定top-level entity为and2了
怎么还是报错啊!
标题:关于quartus中模块的引用
2009-05-27 17:10:35
quartus中一个工程中可包含一个顶层模块,多个子模块,通过顶层模块引用子模块。
1:顶层模块的实体名必须与建立工程时的实体名一致,否则编译时会出错,如下
Error: Top-level design entity "AND" is undefined
2,多个实体文件建立后在quartus界面左边的工程文件夹中找到要作为顶层文件的文件点击右键设置为顶层文件
3.所有文件设置好后再进行编译,单独编译某个文件的话肯定错误很多。
/Detail/DefaultView.aspx?BookId=ISBN7-115-13204-6
里面有一个调用模块的例子,书中间的子模块命名为NAND编译时不能通过,后来改个名字NAND11就通过了,难道NAND是关键词不可用来命名?
错误为:
Top-level design entity "rojectName" is undefined
我已经把项目名称和顶层设计的名称设为一样的
而且有时候出现这样的情况,有时候又不出现这样的情况
例如下面这个例子
//与非门行为描述
module NAND(in1,in2,out);
input in1,in2;
output out;
//连续赋值语句
assign out=~(in1&in2);
endmodule
我建工程后就会提示Top-level design entity "NAND" is undefined
这个例子是从电子书上直接拷贝过来的,我很好奇的是有的例子可以运行,有的例子不可以。我先创建一个Verilog文件,然后保存成工程,工程名字和顶层文件名字一样的。
问题解决了。
原来定义实体的名称必须与项目顶层文件名称相同。
难怪有时候出现有时候又不出现这个问题咧。
2009-10-17 17:16
1.Found clock-sensitive change during active clock edge at time
原因:vector source file中时钟敏感信号(如:数据,允许端,清零,同步加载等)在时钟的边缘同时变化。而时钟敏感信号是不能在时钟边沿变化的。其后果为导致结果不正确。
措施:编辑vector source file
2.Verilog HDL assignment warning at
原因:在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 VCC driving datain port -- changes to this connectivity may change fitting results 原因:第9脚,空或接地或接上了电源
措施:有时候定义了输出端口,但输出端直接赋‘0’,便会被接地,赋‘1’接电源。
如果你的设计中这些端口就是这样用的,那便可以不理会这些warning
5.Found pins ing 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...>...
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
原因:输入引脚没有驱动逻辑(驱动其他引脚),所有的输入引脚需要有输入逻辑
措施:如果这种情况是故意的,无须理会,如果非故意,输入逻辑驱动.