Chip123 科技應用創新平台

標題: 請教 Synplify "reduced to a combinational gate by constant propagation" [打印本頁]

作者: kuhwakimo    時間: 2011-3-24 03:35 PM
標題: 請教 Synplify "reduced to a combinational gate by constant propagation"
請教 Synplify Pro9.6.1 Warning Message, W' g5 y! f, s+ g# t9 \3 E. n0 {$ E
Sequential instance sLateCol_p has been Sequential instance sLateCol_p has been reduced to a combinational gate by constant propagation4 d& h4 M2 T9 w" g2 r" V
% }' p7 w7 T- J7 E; @2 Y+ N- a
請教個問題,下面是Synplify 9.6.1 出現的Warning message ,
3 O9 l  A6 `2 h+ N7 U& ?+ t& Y請問這是什麼意思 ??
  I! m) H* o% Y! ^我由字面上的理解得到的猜測是,將一個本應該是FIFO Sequential circuit ,合成為 Multiplier Combinational circuit: R: E# m; y, L5 v5 Q5 P% G* P
為什麼 ld_tdr_cur_f 會被合成為Combinational, 但是 dly_tdr_wrn 卻不會 ??
3 l, K' K5 b; {  p  n誰有相關的經驗嗎 ??% C" f) T- q; z3 f
: \. G1 n* [- r/ a) L9 X, G
@W: MO129 :"\projects\dm8606c\rtl\tff256x64.v":932:3:932:8|) ^# W% ^0 z7 R4 R; Q
Sequential instance ld_tdr_cur_f has been reduced to a combinational gate by constant propagation0 E3 O9 g5 N* L# o. x9 I/ [
  Y+ E  I0 Y1 A  w, l

" u5 e# ?# R5 K# g! _  i     reg ld_tdr_cur_f;  
* R3 ?8 a# K, O$ M( @2 O     reg dly_tdr_wrn;: Q- C3 \$ y8 Z3 u6 V6 n% A
   //------------------------
9 G' W/ v# o* Z) n0 y) h5 `2 i   // delay 1 clk
1 t3 C* \$ r" Z: H   //------------------------7 P; w; H9 @% k$ S
   always@(posedge sclk)   u+ h( p( R  G- S  T
   begin' T  Q! ?9 e+ O& E1 X
      ld_tdr_cur_f <=#td1 ld_tdr_cur;
8 m* P' @+ D7 h8 Y! W      dly_tdr_wrn  <=#td1 tdr_wrn;: A: B- M+ r* T* ]
   end0 }  J/ y( s- w) u1 d

4 \9 a9 Z( B! h% y6 `6 x( W) Y9 f// 下面是 ld_tdr_cur_f , dly_tdr_wrn 的loading 0 V; U1 X: s! O+ h* M- v$ i0 _$ F

- X2 s2 h  @" O! A   always @(posedge sclk)5 `$ b, h, i! L; ]
      if (ld_madr & !wr_nxt_tdr)  
" N. ?) B/ m: y+ ?& r; M         wr_save_1st <= #td1 wr_counter;
6 A- J: W% b, L$ U* k      else if (ld_tdr_cur_f)      
# }  a8 f- y% s7 X" P         wr_save_1st <= #td1 wr_save_2nd; # f% Y1 K3 |1 x! K. f1 i9 C
$ y8 T4 b0 B$ m+ K

5 X% C) L2 K2 ~6 T5 O  k7 L, ^   always @(posedge sclk or negedge rstn)
6 [9 D7 I4 C2 V+ g, R  z! C      if (!rstn)      
* y3 r# j+ G. K& O         rst_ff_pt <= #td1 1'b0;
5 t& I) ^' P9 N9 b' z" U9 h' j      else
/ u' E9 {0 k- g5 E         rst_ff_pt <= #td1 (!tdr_wrn & dly_tdr_wrn & tdr_empty);! }3 Y2 U1 U5 R' h+ Z6 d! C
         8 o. u: ]$ k" W8 i: C$ _; w2 s

4 e: W6 W9 n( l$ i% e: a) f0 n. w- p) i6 R. m- f( n
   always @(posedge sclk or negedge rstn)( r- J% X+ s6 o+ X2 y  {
      if (!rstn)      
, N+ ]+ L6 M1 e8 b- \; W         rst_ffpt_sync <= #td1 1'b0;' k2 s) N/ Z/ s' [
      else if (!tdr_wrn & dly_tdr_wrn & tdr_empty)
+ e/ j8 x8 |* Y+ }* P         rst_ffpt_sync <= #td1 1'b1;. Z+ l" f$ V5 Q! c
      else if (rst_ffpt_clr2)  2 E4 k2 z7 i$ V; `
         rst_ffpt_sync <= #td1 1'b0;
作者: yadog    時間: 2011-5-5 10:28 AM
不清楚要实现什么功能
9 E  Z" T7 z2 B0 M1 r; Q) X! m( N9 g$ R$ u
但是在写法上有些问题
+ d$ F+ a* A& R9 B4 D- A) t  ~% _" E- Q; G4 o2 w. x
if (ld_madr !wr_nxt_tdr)   这句是否笔误?ld_madr ,wr_nxt_tdr是两个信号把?/ B6 y+ C2 P! W0 [

4 A, x8 g9 r8 s- A另外if else if写法均不完备,建议将else项完备
作者: kuhwakimo    時間: 2011-5-16 06:56 PM
是貼上去的時候出現亂碼,更正如下   $ M* b3 n' h8 E- a6 @* ]- j6 P  X
//------------------------
8 w; V' G1 S( q- r4 i5 \   // save start pointer for 1st pkt8 @7 I( o; D  \3 x& m: _# t
   //------------------------* Z! r0 `7 N- v/ J' r. d5 ?5 e  u
   always @(posedge sclk)
/ v' |9 N: k! E% U& `      if (ld_madr & !wr_nxt_tdr)  
4 K* `4 j" Z3 ]8 o" v9 h5 t         wr_save_1st <= #td1 wr_counter;% t# h2 O9 s2 w# u6 |! l
      else if (ld_tdr_cur_f)      0 ]- T& j& _# {
         wr_save_1st <= #td1 wr_save_2nd;




歡迎光臨 Chip123 科技應用創新平台 (http://www.chip123.com/) Powered by Discuz! X3.2