|
本帖最後由 lj0113 於 2011-3-27 10:07 PM 編輯 - [/ R- X! p9 _7 G$ H- Z. }/ U
: l6 E9 G1 j" S6 }/ `! S各位先輩:1 n6 b/ \- P' b) ?: Y, _
# a% A- F1 x* U9 c$ x( B小子目前在處理一個硬體,合成後其輸出waveform經過reset,然後再幾個clock cycle 其輸出就開始呈現unknow狀態; _& I- K5 O1 V7 d' |* @
由於這個硬體不是我負責 我得負責把它合成出來....造成我不確定原因是否是rtl亦或是我DC constraints下的不夠好
& M" C# Z8 ~; S但我知道有人合成完後,電路是可以function work(不過我實在不太好意思 一直去打擾那人= =)" q, |: B+ X; c0 q/ u
8 p+ @- I! C& C, K1 _$ H以前我用類似這樣的constraint去合成比較小的電路都是ok的,目前這個電路真的比較大,所以我在想說百分之百一定是DC這邊constraint設定不好= =
; v) [, R; f2 }6 y" N8 J8 B導致我合成出來的硬體造成輸出都是unknown+ W* ^. N# ?/ m, D
K了一些資料 但尚未發現一絲一毫哪裡有錯....
F+ }/ I h* k1 u+ V) }我的constraints大致設定如下東西 使用的製程是TSMC 0.18um:: Z' r" b7 ~* C4 G3 _
, p" N- K4 ]% G2 N
建立clock
' I" K$ v( U; H4 b4 d e0 W4 B2 w/ e, d! M4 [5 r8 ^/ M
set_wire_load_model -name tsmc18_wl10 -library slow
6 z) E0 q6 ?; P8 g$ Q Uset_driving_cell -library slow -lib_cell DFFX1 -pin {Q} [remove_from_collection [all_inputs] [get_ports clk]]7 |9 r4 ?( T0 m: q
set_driving_cell -library slow -lib_cell BUFX4 -pin {Y} [get_ports clk]
, o% C- [+ Y$ t+ d& Xset_input_delay [expr $clk_in_delay + $clk_in_pad_delay] -clock clk [remove_from_collection [all_inputs] [get_ports {clk}]]
$ S R2 v6 ]4 L N: n: {# w( kset_output_delay [expr $clk_out_delay + $clk_out_pad_delay] -clock clk [all_outputs]
6 K: a' S1 R. }5 V8 B3 K- e' v" N( Yset_load [load_of "slow/DFFX2/D"] [all_outputs]
6 F3 V: _8 U D' _' a) d[remove_from_collection [all_inputs] [get_ports {clk rst_n}]] |
|