Chip123 科技應用創新平台

標題: Design compiler TSMC .18合成的問題 [打印本頁]

作者: squirrel316    時間: 2009-7-5 12:00 PM
標題: Design compiler TSMC .18合成的問題
最近在跑合成時2 y( r4 Z9 I* t2 V" J+ F
發現到DFF用negedge trigger會有問題+ q8 G& j: L# O# G  W; j+ o
如下面所寫的code
; V7 ?, T% G% m  ~# p3 hmodule DFF (H,clk,reset,H_new);
2 R' D+ p; E' B- R) yinput H,clk,reset;$ [/ x& w, k2 X# x. P
output H_new;- a( c' z, C, M2 n$ V
reg H_new;& I% i. [1 }# c* L
. {$ C& g9 J# v7 D
always @ (negedge clk or negedge reset): p3 U& t. W' k6 x0 j3 c  o4 X
begin
; m1 k0 M4 @" x$ k* V3 p" z) I: p  if (reset==1'b0)( B$ r4 d1 {0 a
    H_new<=1'b1;
" g  K8 k! J. t1 u  else1 U: [+ T, B+ t: u& x- N4 \* H6 v: ?
    H_new<=H;
7 H1 D  [& |1 H9 K6 J! b" cend9 h, \- {9 |2 u( B2 q) Q
endmodule
4 r* s- J$ ~  F: ^
* X# W& `6 y6 g+ a我發現到合成出來的檔案
# E, R% h" Y6 ]# y" G; D! t  W; [6 Q除了flip-flop外 還會加入一堆DLY4X1的硬體7 R  K2 h" }2 g4 p  Y
如果是用posedge clk的話 合出來是正常的+ G" O  h" d+ R  l
/ D& O) N+ o# y1 u$ S4 O
就算我新生一個clk_bar把clk反向1 U4 {$ l% e8 E- t, b8 z
並將clk_bar改成posedge trigger+ k/ [3 t4 S! b7 j3 t" M7 G
合出來的硬體還是會像原先用negedge clk一樣會多了一些DLY4X1的硬體
- V8 S* b. h, Y0 i由於我需要negedge trigger的function
4 \+ c5 `# K% ?% X! C但在合成時卻無法正確合出來
) c9 N( X  w- a請問該問題該如何解決5 I2 s* h2 D5 X$ y- u  v  F
謝謝
作者: michael6172    時間: 2009-8-17 10:41 PM
一般正常都是用 posedge clk去驅動吧,你可以改用negedge 的cell library去合看看,negedge 的cell library請洽給你cell library的人
作者: tommywgt    時間: 2009-8-18 12:13 PM
DLYx4我覺得是為了修正setup time violation的問題, 不見得是negtive trigger的問題, 但是確實有可能是使用negtive trigger所造成的




歡迎光臨 Chip123 科技應用創新平台 (http://free.vireal.world/chip123_website/innoingbbs/) Powered by Discuz! X3.2