作者windsfk (风)
看板Electronics
标题[问题] Design Complier遇到问题
时间Tue Jul 7 15:57:06 2015
我在合成加入DFF做管线化的电路後在合成时遇到warning message
它写 Disabling timing arc between pins 'A0' and 'Y' on cell 'aaa10/sp_2/U11'
一共跳出了约50个类似的讯息 只在 ' ' 中间有不同的名子
不知道这个warning代表遇到什麽呢?
在加入DFF後电路的combinational面积变小 产生noncombinational面积
但总cell area面积变小 <== 不知这样是否正常 (如正常该怎麽解释呢?)
我的verilog code是用gate level连线完成的module
DFF是这样写的
module dff(p_in,q_out,clk,rst); //1delay q=p
input clk,rst;
input [3:0] p_in;
output reg [3:0] q_out;
always@(posedge clk)
begin
q_out= rst ? 4'b0 : p_in;
end
endmodule
DC新手 需要前辈的建议
不知道我获得的情况正不正常 又该怎麽解释呢? 诚心发问
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 140.115.73.204
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Electronics/M.1436255855.A.672.html
1F:→ hsnuyi: 你干嘛特别写一个DFF的module出来啊? 07/07 17:28
2F:→ hsnuyi: 再者 看到q_out =那行 就知道你习惯有问题 07/07 17:29
请问版大我该怎麽写比较好 刚刚去查文章 好像要用叫做nba的方式写成
q_out <= rst ? 4'b0 : p_in; 这样 才会一起更新
版大说特别写一个DFF是什麽意思? 可以不用写吗?
※ 编辑: windsfk (140.115.73.204), 07/07/2015 18:04:02
3F:推 mmonkeyboyy: posedge/negedge就完了 07/07 21:31
版大是说在always 的括弧里用(posedge/negedge clk) 这样吗
※ 编辑: windsfk (140.115.73.204), 07/07/2015 21:54:10
4F:→ hsnuyi: 是 你sequential要用non-blocking 再者 你干嘛要为一个DFF 07/08 00:15
5F:→ hsnuyi: 写module啊? 然後 下面那篇是另一个电路 跟你的功能不同 07/08 00:16
6F:→ hsnuyi: P.S. 当然 不是所有sequential都是non-blocking 但这里是 07/08 00:20
7F:→ windsfk: 谢谢前辈的解答 :) 07/08 00:56
8F:推 bakerly: 你的design里有timing loop 才会有这廙warning 07/08 14:47