|
本帖最後由 lj0113 於 2011-3-27 10:07 PM 編輯 / q/ w. c' K; K, m. d
# o/ Z& Y5 e9 H) b# ]
各位先輩:! ~3 O2 H* c8 z$ l2 }9 J+ n& G
1 y. ^) Z' j4 q# J- c
小子目前在處理一個硬體,合成後其輸出waveform經過reset,然後再幾個clock cycle 其輸出就開始呈現unknow狀態0 n) Z4 ]& f: G/ W
由於這個硬體不是我負責 我得負責把它合成出來....造成我不確定原因是否是rtl亦或是我DC constraints下的不夠好% b( O# Q0 I( [4 s! M6 {
但我知道有人合成完後,電路是可以function work(不過我實在不太好意思 一直去打擾那人= =)
1 w3 V% h/ m+ u. J0 A$ ^# Q7 |; t5 {: K: _; R. ]1 K
以前我用類似這樣的constraint去合成比較小的電路都是ok的,目前這個電路真的比較大,所以我在想說百分之百一定是DC這邊constraint設定不好= =7 ?! i. _( }) t h: W* B
導致我合成出來的硬體造成輸出都是unknown6 M. ~, U+ r8 j. _: Y/ M* T; }
K了一些資料 但尚未發現一絲一毫哪裡有錯....% q5 H% D+ m! h3 R
我的constraints大致設定如下東西 使用的製程是TSMC 0.18um:, n5 \# a: |4 Y' u7 n
( e/ l+ s- w/ U4 F+ M6 j建立clock
6 t" I6 Q: \4 J& u/ _) A8 e2 f6 ?' K: _; [
set_wire_load_model -name tsmc18_wl10 -library slow
. L- g& a0 Y4 O4 r7 t3 e2 @0 h! xset_driving_cell -library slow -lib_cell DFFX1 -pin {Q} [remove_from_collection [all_inputs] [get_ports clk]]
; {0 g% U* d& D! Z" oset_driving_cell -library slow -lib_cell BUFX4 -pin {Y} [get_ports clk], `+ }* M: Q9 M, B
set_input_delay [expr $clk_in_delay + $clk_in_pad_delay] -clock clk [remove_from_collection [all_inputs] [get_ports {clk}]]7 ~; c& ?2 H" b2 H$ x% N
set_output_delay [expr $clk_out_delay + $clk_out_pad_delay] -clock clk [all_outputs], {# o" L/ G5 b: C* N
set_load [load_of "slow/DFFX2/D"] [all_outputs]6 h& G# O+ Q& W5 @( m4 u
[remove_from_collection [all_inputs] [get_ports {clk rst_n}]] |
|