Chip123 科技應用創新平台

 找回密碼
 申請會員

QQ登錄

只需一步,快速開始

Login

用FB帳號登入

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

[問題求助] Ring oscillator的hspice問題!

  [複製鏈接]
跳轉到指定樓層
1#
發表於 2007-10-8 14:00:24 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
請問一個五級的inverter組成的ring oscillator 輸出該怎麼量測(use hspice)?!  `& m$ D1 o2 |% H- N
電路圖中並沒有輸入端 需要有輸入訊號嗎?!
! q9 I0 U$ ~4 T: n. q9 X感謝各位!!
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享分享 頂371 踩 分享分享
2#
發表於 2007-10-8 14:45:22 | 只看該作者
Ring oscillator不需要輸入訊號自己就會震盪了 因為它是由INV接成回授; i7 D' X9 S' o  A6 W1 W
至於如何用Hspice量測 這個問題很奇怪0 j/ K2 [7 ^$ M4 ]7 R
用Hspice avanwaves去看電壓不就好了
3#
 樓主| 發表於 2007-10-8 17:42:20 | 只看該作者
謝謝喔!!在我加了初始值(vdd or gnd)在output端時~他就開始振盪了
$ D' k% x5 q7 V. Z" E這方法不知道對不對?!3 K* Q5 r7 |" \  {
感情回文!!
4#
發表於 2007-10-8 20:09:14 | 只看該作者
你的作法是對的啦,+ p* x( I9 i1 s
不過個人比較建議,# v) V. O! k" p9 \7 Q' g2 o6 ^+ o) W
其中一個inverter改成nand2或nor2,
. S9 J- k% `& x, o+ r多一個控制訊號EN,
' {2 N6 S5 j6 l! F這樣,
! ]! e% B" R) U控制訊號EN除了可以控制整個ring oscillator外,' w, B% M6 Z5 u8 P( }! P( h
也可以提供inital condition(1(nand2) or 0(nor2))。
5#
發表於 2007-10-9 01:21:42 | 只看該作者
加了初始值(vdd or gnd) 再任意的一個節點  就可以了" Q: [) A0 b; L$ T
這樣子可以加快它的起振時間  + V' h$ _- C  ~1 V( I
至於輸出該怎麼量測0 j1 F; S8 j9 o' \7 {: \/ W
一般我都是比較懶的去看圖
: I" w0 T4 i; d( B& J, Qhspice裡頭有.measuret的指令 可以使用
6#
發表於 2007-10-9 22:42:52 | 只看該作者
用inverter作的ring oscillator呀' I; J' p) z5 T# i5 e
頻率的變化量會比較大,同時很容易受到process和temperature以power supply的變化影響,如果是作product的話,很不建議用這種架構的ring oscillator3 T. g; _# {# x  x' F
我之前作ring oscillator,也是用SPICE指令中的.measure指令來計算出frequency和週期,同時,我在計算frequency時,會連續計算50 ~ 100個週期,然後利用這連續的50 ~ 100個週期來計算jitter的分佈量為何,藉以評估我所設計的ring oscillator的performance到那個程度
7#
發表於 2007-10-16 17:32:39 | 只看該作者
原帖由 g9664414 於 2007-10-8 02:00 PM 發表
$ \- y, e+ m7 Y5 e: i4 Y請問一個五級的inverter組成的ring oscillator 輸出該怎麼量測(use hspice)?!
, k/ y. O/ X1 |* x+ B電路圖中並沒有輸入端 需要有輸入訊號嗎?!  s, g, `3 M8 T. u+ H8 F
感謝各位!!
, s" @0 v: e3 ^# d' M- [8 i* @

* R8 L/ {$ O8 _  D因為ring oscillator是環狀的~
# {7 N1 Y6 H5 R6 s/ T* t所以只要在一個點作觸發~~
$ i7 d6 l9 {5 A1 X$ r/ B他就會開始無穩態的震盪5 F8 m& K& A6 P4 M  D# R" [
不妨利用".IC"這項指令4 B; _% r& T- S; U- C' _# \. L
.IC的作用是給訂一個電壓點的初始值~~7 }6 j+ l" D6 y8 V3 g* a
語法: .IC V(節點名稱) = 初始值
, N6 z4 M" _3 ^3 ^+ T( N5 h: u' @; F2 K
# E. ?- l: H( B% ^0 }3 O, h1 u詳細的用法就去參考HSPICE操作手冊吧.
8#
發表於 2007-10-17 16:28:09 | 只看該作者
請問一下jitter要如何量測以及一般jitter的規格才算好,還有phase noise要如何量測,謝謝。
9#
發表於 2007-10-18 11:15:32 | 只看該作者
於spice中若要模擬jitter可利用以下的方式:1 k& u2 j2 P( T9 c  ^
$ z, F: a& x! }; B' z
.param per='2*period'      . j" b$ s' x# G$ {" \% t8 I
.param tsi='start_time'        3 I. E, m! M* B, y
.probe tran eyetime=par('.5*(sgn(TIME-tsi)+abs(sgn(TIME-tsi)))*(TIME-tsi-per*int((TIME-tsi)/per))')
5 z$ U8 P2 y+ _1 ~4 b; J* Z+ z8 {* y$ D& `7 g- M; o3 p
舉個例來說,若你所設計的clock頻率為1GHz,而振盪穩態時間為10-us,則你可於spice中加入:/ G! \/ r6 r6 H$ _
) _3 I7 l( [' |3 O+ k
.param per='2*1ns'      # j1 D6 g& A. |$ X2 e1 P6 }( {
.param tsi='10us'        + u+ t0 o* z( s, ]
.probe tran eyetime=par('.5*(sgn(TIME-tsi)+abs(sgn(TIME-tsi)))*(TIME-tsi-per*int((TIME-tsi)/per))')
' {  K3 X+ R: g# N+ K* C( m) d2 n! m/ X( A
在第一行中的2為每兩個週期累加一次,若你在模擬時想看到抖動眼圖,則可將其設為1.5倍即可!!  M9 k- Z0 X+ a8 z1 |4 a
9 ?* w: L4 H5 T  M8 A
而jitter抖動怎樣才算好,這個問題其實是看每一種產品的規格而定,此外抖動也分很多種類,如cycle-to-cycle jitter等等,每種應用都有不同的要求,且也會制定其最大容忍量,所以在做模擬前就必需先去弄懂規格!!
0 k# ~1 P1 R8 p4 T- o: G$ u- [) K2 L/ W0 c
至於phase noise要如何量測,在spice中其實是不好模擬的,我建議是使用ADS來做,他是一個frequency domain的軟體,所以很好分析.若是要實際量測,則可用頻譜分析儀,他會有測試phase noise的選項,設定一下即可!!

評分

參與人數 1 +3 收起 理由
mt7344 + 3 感謝熱心的分享唷!!

查看全部評分

10#
發表於 2007-10-19 01:42:26 | 只看該作者
感謝rogeryulee的熱心回覆,因為之前有做過oscillator,只是做到讓oscillator起振就沒有再做進一步的模擬(jitter or phase noise),因為我不會run,所以感覺做事只做到一半很不踏實,現在看到有如此的方法我也會嘗試再做下去,只不過我要先把hspice檔找出來(現在在搞adc),而且這個eyetime=par('.5*(sgn(TIME-tsi)+abs(sgn(TIME-tsi)))*(TIME-tsi-per*int((TIME-tsi)/per))')式子中(.5和TIME代表是什麼,還有這個式子是跑眼圖的定義嗎?感覺有點看不懂。
11#
發表於 2008-1-12 16:38:37 | 只看該作者

回復 1# 的帖子

Ring OSC. 關於給定一個初始值讓 奇數個反向器 開始震盪
8 R7 @; Z3 N8 v前面已經有很多好心的大大都有談過了
- G2 ?9 q# U& P* d4 Q& Q
, p! l6 j# X$ Z0 O1 c$ ^這邊想講的是  Ring OSC還可以用來驗證  FAB的 device model與實際硬體% z  J# I& [/ q
的一致性   比如 製程廠 先給你一個新製程的 Device Model 你多少會擔心- X5 k, Q, l7 A; f8 O
這個MODEL 模擬的結果 與實際下線的情況會有很大的落差1 o1 v; e8 U$ ?- ]4 \
9 k1 H  |& P2 t
如果這時你可以根據 製程資料裡面 量測MOS電容,電流的資料
, ]5 `" ^6 s# ^+ a2 S來推算 一個 inverter的 RC Delay  再根據這個結果算出 Ring OSC的4 \4 u' x2 n; a: I$ B
震盪頻率, 接著再把 Device model include進 SPICE裡面模擬
$ R. A# R" t( b: n3 f* M如此一來便可以 粗略的看出  Device model 與實際硬體是否有落差.
12#
發表於 2008-1-13 13:38:32 | 只看該作者
原帖由 yhchang 於 2008-1-12 04:38 PM 發表 7 G) a: [, p( Q/ R* {9 z
Ring OSC. 關於給定一個初始值讓 奇數個反向器 開始震盪+ V$ @& ]+ h  I+ z
前面已經有很多好心的大大都有談過了
9 q" |) Y1 J4 g. @$ v7 L9 }, Z' J5 J& I" {5 C7 v( o( v
這邊想講的是  Ring OSC還可以用來驗證  FAB的 device model與實際硬體. \: C' Z$ u' Z# D
的一致性   比如 製程廠 先給你一個新製程的 ...

1 B; M+ D# i: A! @2 q* g: z& n# ]3 x. d% d& J- ], p4 ^
yhchang 兄講的我蠻有興趣的,能否請您再講的仔細點?5 ~% t4 \4 P8 {$ N& ]# K( N

* ?4 h( k3 x' g* f- c我想學習驗證 model 正確性,這部份有相關的資料或文件嗎?
13#
發表於 2008-1-28 10:04:19 | 只看該作者
我覺得可以改用Diff. Amp 來做Ring Oscillator8 |$ U2 Z; }' x) {
這在 Razavi也有提到3 j% y+ J! W) Y+ O' w  E  n
用Amp來做的好處是  Delay減少一半
+ Y# w4 ?0 U  F$ @7 D3 B+ W而且可提供的Phase增加一倍/ R, W7 Q- w3 _8 e6 ~& C* ?' b
你可以試看看
14#
發表於 2008-2-1 12:29:22 | 只看該作者
不好意思!!請問市再哪一篇Paper有提到ㄚ...1 U1 K+ E0 B0 {* i& O9 I3 f9 {
想知道哩!!!
15#
發表於 2008-2-19 17:37:59 | 只看該作者

回復 11# 的帖子

yhchang 兄6 C6 X  `% g/ B+ A0 ~+ Q$ [# u
是否有這方面的資料可以參考
9 H( H; B" L' L小弟急需了解這方面的訊息
- _9 {0 I# J& L3 A謝謝大大的幫忙喔
16#
發表於 2008-3-8 11:42:14 | 只看該作者
我们也罢可以从电流的确角度去处看,你可以避免用一个又一个控制管和INV串联来设置不同的确电压值决定充放电的确电流大小再决定周期.
17#
發表於 2008-9-7 20:02:35 | 只看該作者
不用给输入,直接给vcc一个上电的信号就行,或者加一个enable的输入。如果要比较准确的freq,最好是把其中两级inv做成对电容充放电的形式。
您需要登錄後才可以回帖 登錄 | 申請會員

本版積分規則

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

GMT+8, 2024-6-15 07:02 PM , Processed in 0.138018 second(s), 20 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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