admin管理员组文章数量:1576367
记录使用ISE过程中出现的问题和解决办法,与大家分享,也留作今后查看。不断更新中。。。
2013.3.22之前几天
1. WARNING:PhysDesignRules:372 - Gated clock. Clock net clkb_OBUF 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.
Phase 10 : 0 unrouted; WARNING:Route:455 - CLK Net:clkb_OBUF may have excessive skew because
错误或警告原因:
assign clkb = en ? clk : 0;
…….
always @(posedge clkb or negedge rst_n)
begin
...............
end
说明:在时序电路设计中,尽量使用全局时钟,而不要用由全局时钟衍生出来的信号。
2. WARNING:Route:455 - CLK Net:U1/uart_rxd_submodule/one_char may have excessive skew because 1 CLK pins and 4 NON_CLK pins failed to route using a CLK template.
错误或警告原因:有的可能是always @(posedge clk。。。)里用的不是全局时钟而是由全局时钟产生的信号驱动的,导致信号偏移较大。而我的设计中所有的always驱动列表都是正确的。经过一段时间的思考和尝试,发现是将一个产生的信号one_char赋给了双口ram写时钟clka造成的。
说明:dpram的读和写都需要一个时钟,一个使能,地址线和数据线。起初,我将使能一直为高,通过控制时钟脉冲实现将数据写入或读出dpram。可是,一般不这样设计。而采用将时钟连接到全局时钟上,通过控制使能高低来实现读写数据。
2013.3.22
3. ERROR:HDLCompiler:849-"F:/Yunpan360/MyProject/LED_Sync/modules/ISE/uart2ethernet/codes/uart2ethernet_tb.v" Line 2: Unexpected EOF.
错误和警告原因:测试文件不能例化被测模块。经过一个上午的找错,没有发现有语法上的问题,也没有发现如标点符号格式的错误。
解决办法:将整个测试文件的代码粘贴到写字板上,在写字板上复制所有内容,重新粘贴到测试文件上。问题得到了解决。
4. ERROR:HDLCompiler:44-"F:/Yunpan360/MyProject/LED_Sync/modules/ISE/uart2ethernet/codes/uart2ethernet_tb.v" Line 98: i is not a constant
错误或警告原因:代码中:integer i;
reg [7:0] aaa;
aaa[i+7:i]
向量寄存器的位值必须是个常数或常量,不能用变量表示。
解决办法:用i当做移位次数对aaa进行移位取值。
转载于:https://wwwblogs/zhonghuaxiaoxia/archive/2013/03/22/2975525.html
版权声明:本文标题:ISE使用出现的错误和警告整理 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://m.elefans.com/xitong/1727799016a1130611.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论