<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 測試測量 > 設(shè)計應(yīng)用 > 靈活使用示波器觸發(fā)功能,幫助大大提高測量效率

          靈活使用示波器觸發(fā)功能,幫助大大提高測量效率

          作者: 時間:2011-02-24 來源:網(wǎng)絡(luò) 收藏

          每個工程師剛剛開始接觸的時候,都是從最基礎(chǔ)的數(shù)字信號的信號質(zhì)量開始的。找一塊板子,接一個時鐘信號,一個數(shù)據(jù)信號,它們的最大/最小電壓(Max/Min)、建立/保持時間(Setup/Hold Time)、上升/下降時間(Rise/Fall Time)等基礎(chǔ)參數(shù)。這些基礎(chǔ)參數(shù)的老工程師們都耳熟能詳,也都知道怎么去測量它們,但很多朋友卻不知道,如果能靈活地使用的各種觸發(fā)功能進行輔助,將會使測量時間大大縮短,測量結(jié)果更加精準(zhǔn)。下面我們來看一看的觸發(fā)功能在信號質(zhì)量測量時的一些經(jīng)典應(yīng)用。

          最古老的也是最經(jīng)典的觸發(fā) – 邊沿觸發(fā) 帶給我們的啟示

          邊沿觸發(fā)從示波器誕生之日起就與示波器密不可分,最早的模擬示波器只有一種觸發(fā)功能,就是邊沿觸發(fā)。邊沿觸發(fā)非常簡單和常用,以至于很多工程師用了幾年的示波器都沒有意識到這是一種觸發(fā)功能。邊沿觸發(fā)包括上升沿觸發(fā)和下降沿觸發(fā),以上升沿觸發(fā)為例,示波器的觸發(fā)器會比較觸發(fā)電平(Trigger Level)前后兩個點的電壓,當(dāng)后一個點的電壓高于前一個點時,就會判定為上升沿觸發(fā);下降沿觸發(fā)則反之。

          信號的最大/最小電壓(Max/Min)測量是一個常規(guī)的測量項目,一般常用的方法有兩種,一種是直接用示波器的自動測量,打開統(tǒng)計功能,找出最大/最小值,第二種是打開示波器的無限余輝,累積一段時間后,用光標(biāo)測量最大/最小值。但這兩種方法都有一個小缺點,就是無法直觀地看到Max/Min電壓所對應(yīng)的波形。對于Debug而言,更希望能清楚地看到這個最壞的波形,以便能找到調(diào)試的思路。利用傳統(tǒng)的邊沿觸發(fā),通過調(diào)節(jié)邊沿觸發(fā)的觸發(fā)電平,我們就可以輕松地看到最大/最小電壓所對應(yīng)的波形并進行測量。

          選擇上升沿觸發(fā),將觸發(fā)模式調(diào)成 Normal (注1)。然后慢慢調(diào)高觸發(fā)電平,直到觸發(fā)事件變得非常稀少(示波器面板上Trig’d綠色指示燈的亮/滅間隔明顯變長 或 屏幕波形刷新速度明顯變慢),這意味著電壓的上升已處于極限位置,此時觸發(fā)點的波形就是最大電壓的波形。同理,選擇下降沿觸發(fā),調(diào)低觸發(fā)電平,可以精確定位最小電壓所對應(yīng)的波形。

          圖1: 測量時一般觸發(fā)電平位于峰峰值的50%位置,很難觸發(fā)到最大/最小電壓對應(yīng)的波形

          圖2: 通過調(diào)節(jié)觸發(fā)電平的大小,使最大電壓清晰地浮出水面

          建立/保持時間測量的技巧

          建立/保持時間測量是一個讓人很頭疼的項目。這個測量的偶然性太大,這次你測出來的是一個很不錯的結(jié)果,下次測量時卻可能遠遠超出規(guī)范。工程師最擔(dān)心的就是自己測量出來的結(jié)果和客戶的測量結(jié)果不一致而受到質(zhì)疑,怎么才能找出最差的狀況作為測量結(jié)果,讓客戶無話可說呢?很多工程師采用重復(fù)測量若干次,取最差值作為測量結(jié)果的方法。這種有限枚舉的方法有一定的可取性,但仍有很大的偶然性。更好的辦法是利用泰克示波器的建立/保持時間違規(guī)觸發(fā)功能,直接找到最差的建立/保持時間。不僅可以大大節(jié)省測量時間,還能保證測量結(jié)果的說服力。

          泰克示波器的建立/保持觸發(fā)的原理是當(dāng)觸發(fā)器偵測到數(shù)據(jù)信號的建立時間或保持時間違規(guī)(小于設(shè)定值)時,示波器就會觸發(fā)。當(dāng)我們需要測量建立時間時,將保持時間的限定設(shè)為0 (確保保持時間不會違規(guī)),緩慢調(diào)低建立時間的限定,當(dāng)觸發(fā)事件變得稀少時,即可定位最差的建立時間,此時我們就可以進行測量了。同理,測量保持時間時將建立時間的限定設(shè)為0,調(diào)節(jié)保持時間的限定即可定位最差的保持時間。

          圖3: 建立/保持觸發(fā)是測量建立/保持時間的好助手

          上升/下降時間的另一種測法

          上升/下降時間的測量同樣可以用觸發(fā)的方式來進行輔助,以直觀地看到最差的上升/下降時間時的波形。選擇觸發(fā)方式為Transition觸發(fā),輸入低電壓和高電壓的值,選擇觸發(fā)條件為“Greater Than”,即跳變沿時間大于設(shè)定值時觸發(fā)。然后慢慢調(diào)高設(shè)定值的大小,直至觸發(fā)事件變得稀少時,即可精確觸發(fā)上升/下降時間最大的波形。

          圖4: 利用跳變沿時間觸發(fā)定位最差的上升/下降時間的波形

          尋找高速串行總線中的長碼型事件

          高速串行總線中的碼型復(fù)雜多變。不同的碼型往往擁有不同的信號特性。比如,在接收端, 跳變沿比特位(transition bit)往往電壓幅度較低,非跳變沿比特位(non-transition bit )則幅度較高,過長的連續(xù)1或連續(xù)0可能引起電壓的跌落(Droop)。有的時候我們希望能觀察和測量一些特定的碼型的狀況,比如連續(xù)4以上個“1”或“0”時的碼型。這個時候我們可以使用脈沖寬度觸發(fā)(Pulse Width Trigger)或者超時觸發(fā)(Timeout Trigger)來定位感興趣的碼型。

          所謂脈沖寬度觸發(fā),即分別設(shè)定脈沖寬度的上限和下限,當(dāng)脈沖寬度介于上下限之間時,示波器就會觸發(fā)。以PCI-E一代 2.5Gbps信號為例,當(dāng)我們想觸發(fā)連續(xù)4個以上“1 ”時,可以設(shè)定一個小于1.6ns (連續(xù)4bit的標(biāo)準(zhǔn)脈寬)且大于1.2ns (連續(xù)3bit的標(biāo)準(zhǔn)脈寬)的下限 (如1.4ns),設(shè)定一個大于1.6ns的上限,脈沖類型選擇正向脈沖,就可以精確觸發(fā)了。超時觸發(fā)和脈沖寬度觸發(fā)類似,差別在于超時觸發(fā)只需設(shè)定寬度的下限,無需設(shè)定上限。在此例中,這兩種觸發(fā)方式都是可行的。

          圖5 利用脈沖寬度觸發(fā)定位長“1”碼型

          由于篇幅的關(guān)系,只能簡單地介紹幾種對于提高測量效率有用的觸發(fā)方式,拋磚引玉,希望能給大家的信號測量帶來一點幫助。

          注1:示波器的觸發(fā)分為兩種模式,一種是Normal模式,一種是Auto模式。Normal模式下,只有當(dāng)觸發(fā)事件發(fā)生時,屏幕波形才會刷新;Auto模式下,如果限定時間內(nèi)(一般是0.5秒)沒有觸發(fā)事件發(fā)生,示波器就會強制觸發(fā)。當(dāng)觸發(fā)事件概率較低時,我們一般會使用Normal觸發(fā),只觀察我們感興趣的觸發(fā)波形。

          接地電阻相關(guān)文章:接地電阻測試方法




          關(guān)鍵詞: 測試 示波器 測量

          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();