Chip123 科技應用創新平台

 找回密碼
 申請會員

QQ登錄

只需一步,快速開始

Login

用FB帳號登入

搜索
1 2 3 4
查看: 6458|回復: 3
打印 上一主題 下一主題

[問題求助] library compiler建DFF cell的疑問

  [複製鏈接]
跳轉到指定樓層
1#
發表於 2009-9-17 02:02:15 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
各位好,小弟打算跑HSPICE改變一下cell library的資料
6 [! f. l3 z8 e9 s: {但有部分還是不太理解,以下是D-Flip Flop(DFF)接腳D及CLK部分  E% Z0 }9 h+ }( j* n4 a8 B5 W4 I1 E

( z/ z' n* X* \; K+ M/ H8 r: I  q
* l0 T+ z0 W! z! I5 u# N  pin(D) {
- V9 d: v$ t# ~7 k7 }' n6 |    nextstate_type : data;3 @0 q- P' h/ h% P# ]
    direction : input ;  @; D# B4 N# l" ~. U) e% B) ^) n7 W7 O
    capacitance : 0.001165;0 g/ h9 ?/ c" i% n8 D, {
    internal_power() {# s4 e, W' T+ Z* O
      when : "!CK";( d1 l5 j+ ?8 R+ f8 D: c
      power(POWER_7x1) {* D' K6 U$ T8 l
        index_1("0.009652,0.016106,0.025992,0.046675,0.088958,0.216628,0.447814");, U. b2 a, ]5 I, n
        values("0.003651,0.003635,0.003626,0.003611,0.003614,0.003725,0.004117");2 x$ R7 r4 {) s! m
      }4 X( N& W% U# Z' X
    }
$ u( Z5 W* V+ I3 i0 a0 d7 A! s4 O1 g
0 `+ b( ^& p4 Q& b" gvalues值是指不同的D端電容(index_1)在CLK=0時的POWER值嗎?# i; a0 J; h* E) p& n( J5 T
4 q/ o' d& V5 l% k" }1 @
    internal_power() {
) p4 y' ^! \; I2 G( e7 Y      when : "CK";
; E+ u% n6 ]* y5 V2 U0 E      power(POWER_7x1) {6 T/ E" T) S# b$ _
        index_1("0.009645,0.016106,0.025991,0.046674,0.088957,0.216628,0.447814");" U0 ]& C# y0 @0 f) y& D; @
        values("0.000127,0.000122,0.000120,0.000119,0.000117,0.000116,0.000114");" y' {0 O  S0 a: z, y; i6 U) D: O
      }9 G$ ~9 l  l. h
    }
# N5 ^( e7 d9 z6 R& Z    timing() {
  n8 U) z8 `' A! d      related_pin : "CK";% l  s/ o3 I7 ?+ V; K
      sdf_edges   : both_edges;
# p0 |3 \6 I1 V& y      timing_type : setup_rising;: Z% F7 @) [, Y; r! ~! O; `
      rise_constraint(CONST_3x3) {
; ]- R$ a" x# n) R0 ?* d- m- G) B9 U        index_1("0.006000,0.217000,0.434000");
7 c" \9 _: Q6 J        index_2("0.006000,0.108000,0.217000");
/ H  s2 m* G5 ^! d( H4 e        values("0.029659,0.026470,0.036963",\- [8 E' x5 R( T8 ^$ P5 y
               "0.032032,0.023912,0.031939",\
' {; x' M# R' k; N* E0 F8 C0 S               "0.004917,0.000010,0.004825");* e. `3 _% K) |+ e
      }
5 H* v8 p$ U0 Y1 B0 }$ T# z  z* V8 z  w1 G6 ~3 S, v
values是指DATA輸入transition time(index_1)跟CLK輸入transition time(index_2)不同時所得到的setup timing嗎?
9 A" v  Q# C, q0 ~+ h) t8 B% c
( a% r* J3 u2 t- n  ]( P0 |  c, y5 E2 _" x7 l/ N
      fall_constraint(CONST_3x3) {% P: k  l* g" v; G# _, q
        index_1("0.006000,0.217000,0.434000");6 t3 H# H$ n7 ^0 k% c
        index_2("0.006000,0.108000,0.217000");
: S. j" ^4 a& P        values("0.074043,0.058526,0.059156",\( D, n; \/ [1 q3 @6 A3 Q. [" e
               "0.152860,0.139810,0.137970",\
  j" |4 P5 Z1 O$ N               "0.231770,0.216260,0.216890");+ Y) [- B0 K3 @3 e% [0 w' S2 F
      }
2 j; X2 X5 j: g; C: q    }
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享分享 頂3 踩 分享分享
推薦
發表於 2009-9-28 21:40:26 | 只看該作者
internal_power() {
' `" Q/ A: i7 Q      power(POWER_7x1) {
. f4 P( C2 f7 U# U0 u        index_1("0.009651,0.016105,0.025992,0.046675,0.088957,0.216628,0.447814");0 O) _8 g7 a% q7 m
        values("0.004066,0.004029,0.004007,0.004000,0.004050,0.004346,0.005062");
. l# E. r$ u/ Dvalues值是指不同的CLK端電容(index_1)在CLK=0時的POWER值嗎?0 n3 L! H. \" _1 }, V+ g3 M
===> Wrong !' B$ v, p* X# v0 `' W! b1 d
===> they mean while different input slew (transition) of CK, results different internal power
6 y3 s6 u. |  i3 u- h/ {# H. u5 }. ?
min_pulse_width_high : 0.061268;
0 Z( f/ v/ l) m# p8 e  cmin_pulse_width_low  : 0.125320;* f" E. ]' L3 j3 g9 l8 K
CLK Hi/Low的長度?
- Y2 d) r+ D6 L====> No, these mean minimum possible of clock waveform to prevent functional fail, for high (1) and low (0)- t7 J0 r! i$ ^2 b9 V7 x# @

& O7 l) I3 b# ?' B4 X( }0 a" ^  T      index_1("0.009652,0.016106,0.025992,0.046675,0.088958,0.216628,0.447814");
9 o3 @8 L& `* {6 @. I5 [        values("0.003651,0.003635,0.003626,0.003611,0.003614,0.003725,0.004117");
, r# n' j' \# {4 x$ d1 W      }4 d; o" c4 d9 z+ H5 z
    }
9 ?4 l+ h4 j5 _( w- `) j
( l0 A5 n* ^- s$ x' r  Lvalues值是指不同的D端電容(index_1)在CLK=0時的POWER值嗎?
: P5 x7 u8 O7 x! Z3 B* m==> No, index1 is often input transition. here represents input slew of D pin& [' b; S3 d- P* l" A( t: ~4 K& q
1 p+ w0 p# t/ C7 W( k2 g$ E
        index_1("0.006000,0.217000,0.434000");! ~; y' f" h( g& K$ Z; D" @3 e
        index_2("0.006000,0.108000,0.217000");
+ U% ]! E- D5 Y: g! ?) v        values("0.029659,0.026470,0.036963",\, l( O3 |2 I4 k+ r. W1 F" E" Z- N
               "0.032032,0.023912,0.031939",\0 {" F8 y- ~1 q+ v5 M" q
               "0.004917,0.000010,0.004825");" y8 ~3 [8 [& p0 Q( q. @0 X
      }
  k# q, J7 Y, ?5 f; V3 p
+ W& w/ A: X. D" ?" [; _* m+ b4 S) Avalues是指DATA輸入transition time(index_1)跟CLK輸入transition time(index_2)不同時所得到的setup timing嗎?9 c3 K" B! z" x
  t$ G, A) b- b
===> yes, but you have to refer index_2 definition in the front of liberty file to make sure.

評分

參與人數 1 +10 收起 理由
霜淇淋 + 10 謝謝您啦^^

查看全部評分

回復 支持 1 反對 0

使用道具 舉報

2#
 樓主| 發表於 2009-9-17 02:02:27 | 只看該作者
timing() {
( ~) t7 _# m0 g8 D; K: n" Q      related_pin : "CK";0 n8 X! z, ~. [' W3 h6 ~# I( Y
      sdf_edges   : both_edges;( n9 {- ]" D9 e3 x. Z9 ~8 t3 e
      timing_type : hold_rising;
: ~% j2 L" c2 f/ z; D      rise_constraint(CONST_3x3) {
& ^% Y+ V5 t  d; T6 t$ w$ E        index_1("0.006000,0.217000,0.434000");
# V- ~5 M$ l9 `. p4 n0 F; f        index_2("0.006000,0.108000,0.217000");- G# l, [  B' f7 H
        values("-0.005932,-0.005209,-0.015703",\
7 A& ]2 W; E# x# j               "0.013887,0.014610,0.004117",\
8 {  D0 y/ i+ B1 |               "0.060728,0.056519,0.043560");; b! u; A' G  A
      }, d+ l' i) r! L5 |
      fall_constraint(CONST_3x3) {
5 \: b- b4 C# g; L8 J& t! D( H        index_1("0.006000,0.217000,0.434000");; p6 c9 B; e3 y9 ~) p
        index_2("0.006000,0.108000,0.217000");1 S  u- T4 O7 v
        values("-0.018261,-0.002744,-0.005839",\9 q1 X+ }4 c/ q8 y% A4 T3 J0 z
               "-0.028829,-0.021521,-0.028745",\8 c- c6 i5 M" A+ B
               "-0.004426,0.053203,-0.004342");' O2 S$ B/ p) g7 z2 [. l
      }4 P* j. B6 S2 K) u& c4 L, ^
    }
/ u! U. V) L" R8 A6 Z  }* A: d& B/ p' m* E) B* k' J
  pin(CK) {1 H) C$ r9 F+ c# O
    direction : input ;( W) h2 D, |5 L- M* R* d' J' v
    capacitance : 0.001915;
9 ^+ C; {, h' x2 n3 l( f    max_transition : 0.217000;4 |& p" Q/ F6 }4 u+ x* ^$ Q/ i2 e0 n
    clock : true;
# A% I, r9 a+ ~) L2 J3 s. v/ \    internal_power() {1 ?6 X2 }5 t* P  p" q
      power(POWER_7x1) {# a' j# d- z  A: y' |0 d' ^
        index_1("0.009651,0.016105,0.025992,0.046675,0.088957,0.216628,0.447814");# P) t( J% e2 T* K0 R* J
        values("0.004066,0.004029,0.004007,0.004000,0.004050,0.004346,0.005062");
& S, H4 h- b+ ~: V# A. h$ z      }
8 ]* N. x7 v9 \) i    }
+ v9 v& O- J' q* D: i( a! O
( L* L4 ^* j0 X! Y+ e9 j! J# R' `
values值是指不同的CLK端電容(index_1)在CLK=0時的POWER值嗎?% U& j0 `# m  }% `5 m; m
) X( }5 y% Y* B$ P5 b6 `% ]
    min_pulse_width_high : 0.061268;1 U; k6 F9 Z( U/ b9 a2 v4 F
    min_pulse_width_low  : 0.125320;# Z" k8 @) k5 F8 E' q& T) M

% ]! x2 u2 M4 L6 M, Y5 mCLK Hi/Low的長度?3 G, E3 t+ G% X
  }
0 x: P! _2 s0 t% j& I4 K: P}
1 b+ v5 b, P8 W- }5 b, B
( L" q6 f5 }! ~% O1 s
. C% e9 k. D2 y+ \1 y8 M$ G" N8 h, L' [5 H( t$ d# o
有觀念誤解的話希望幫忙修正..謝謝
3 Y8 {* |+ O7 G8 A, H( ~0 U$ R3 l8 @* v. }
[ 本帖最後由 霜淇淋 於 2009-9-17 02:03 AM 編輯 ]
您需要登錄後才可以回帖 登錄 | 申請會員

本版積分規則

首頁|手機版|Chip123 科技應用創新平台 |新契機國際商機整合股份有限公司

GMT+8, 2024-5-19 08:31 PM , Processed in 0.115015 second(s), 20 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回復 返回頂部 返回列表