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

          新聞中心

          EEPW首頁(yè) > 測(cè)試測(cè)量 > 設(shè)計(jì)應(yīng)用 > 理解傳統(tǒng)眼圖參數(shù)測(cè)量的局限

          理解傳統(tǒng)眼圖參數(shù)測(cè)量的局限

          作者: 時(shí)間:2016-10-22 來源:網(wǎng)絡(luò) 收藏

          引論

          本文引用地址:http://www.ex-cimer.com/article/201610/309076.htm

          眼圖參數(shù),特別是眼高和眼寬,經(jīng)常造成工程師的困惑,針對(duì)眼高眼寬以及其他像1電平、0電平等眼圖參數(shù)的算法并不是通用的,因?yàn)樗麄兗僭O(shè)眼圖垂直片段上的電壓分布很好的擬合高斯分布。對(duì)于光信號(hào),這是一個(gè)很好的假設(shè)。實(shí)際上,眼圖參數(shù)最初就是定義用在光信號(hào)上的,沒有考慮ISI等信號(hào)完整性的影響,通過電路板和互聯(lián)器件傳輸?shù)拇行盘?hào)的眼圖片段通常不是高斯分布的。這樣測(cè)試出來的眼高眼寬的結(jié)果可能不會(huì)返回正確的結(jié)果,這篇文章針對(duì)眼高測(cè)量,討論為什么會(huì)發(fā)生這種狀況,并且給讀者避免這種狀況的建議,相似的分析適用于眼寬,但是不在這篇文章中討論。

          眼圖參數(shù)的算法基于高斯模型,使用眼圖中心的3sigma來定義眼高和眼寬。描述光信號(hào)眼圖時(shí),這種算法工作的很好。光眼圖來自通過光纖路徑傳輸光信號(hào)。當(dāng)然,當(dāng)進(jìn)入示波器時(shí),光信號(hào)會(huì)被轉(zhuǎn)換成電信號(hào)。但是預(yù)期是眼圖不會(huì)受到信號(hào)完整性的影響。這些眼圖一般都很干凈,有很清晰的高低電平。相對(duì)應(yīng)的是,受到頻率相關(guān)損耗導(dǎo)致的ISI影響的信號(hào)形成的眼圖,在這種狀況下,眼高和眼寬會(huì)返回不準(zhǔn)確的結(jié)果。TeledyneLecroy,Agilent,Tektronix都使用相同的3sigma推算算法,這種技術(shù)會(huì)在后面做詳細(xì)描述。

          受ISI影響的眼圖例子

          下圖1顯示的是受通道中的ISI影響的眼圖,這個(gè)信號(hào)完整性影響導(dǎo)致信號(hào)會(huì)根據(jù)歷史bit位有不同的信號(hào)軌跡,這個(gè)信號(hào)是PRBS11,8Gbps NRZ碼型。信號(hào)源的幅度設(shè)置為+/-300mv,示波器測(cè)量的是經(jīng)過過電路板上11英寸走線的信號(hào)。信號(hào)通過通道后,信號(hào)幅度衰減減為大約+/-250mv,但是由于歷史bit位的不同,0電平和1電平電壓差異很大,這種特性是問題的根源。

          圖1右測(cè)的直方圖顯示的是眼圖中間20%垂直片段的電壓的分布狀況。左側(cè)的直方圖是0電平的分布狀況,右測(cè)的直方圖是1電平的分布狀況,兩個(gè)直方圖都不是單高斯分布,由于分布狀況不擬合高斯模型,計(jì)算出來的眼高參數(shù)返回的是一個(gè)錯(cuò)誤的結(jié)果。

          為了進(jìn)一步說明ISI對(duì)眼圖的影響,圖2顯示的是一個(gè)帶有ISI但沒有抖動(dòng)的模擬PRBS5信號(hào)的的眼圖,由ISI導(dǎo)致的穿過眼圖不同的信號(hào)軌跡可以很容易的觀察到。相應(yīng)的直方圖清楚的顯示垂直片段電壓的分布不是一個(gè)高斯分布。

          傳統(tǒng)眼高算法和受ISI影響眼圖的估算

          傳統(tǒng)眼高算法如下所示,該算法通過尋找高低電平直方圖平均值確定高低電平,并使用他們的3sigma電壓確定眼高。

          EyeHeight=OneLevel–ZeroLevel–3σOneLevel–3σZeroLevel

          當(dāng)直方圖產(chǎn)生不準(zhǔn)確的1和0水平,或當(dāng)3sigma不是正確的度量推算分布到眼圖中心,該算法將失敗。

          對(duì)于圖1中的眼圖

          OneLevel=188.2mV(如眼圖1電平參數(shù)所示)

          ZeroLevel=-188.1mV(如眼圖0電平參數(shù)所示)

          σ,OneLevel=55.2mV(右側(cè)直方圖的標(biāo)準(zhǔn)偏差)

          σ,ZeroLevel=55.1mV(左側(cè)直方圖的標(biāo)準(zhǔn)偏差)

          對(duì)比眼圖電平,檢查公式中的值,可以很快發(fā)現(xiàn)上述公式會(huì)導(dǎo)致一個(gè)不準(zhǔn)確的結(jié)果,眼圖外邊緣的1電平值與0電平值與+/-300mV差異很大。而且從圖中可以明顯發(fā)現(xiàn)1sigma55mV是不合理的。

          由此推算得到的眼高如下:

          EyeHeight(mV)=188.2-(-188.1)-3*55.1-3*55.2=45.4mV

          (上面數(shù)值和圖片中眼圖參數(shù)表中的值(43.9mv)之間的差異是由于眼高計(jì)算中確定Sigma使用不同的分級(jí)造成的,是可以忽略的),我們得到一個(gè)對(duì)描述眼張開度沒有幫助的結(jié)果。我們所得的結(jié)論就是傳統(tǒng)的眼高算法是有缺陷的,不應(yīng)該被用來確定受ISI影響的電眼圖的張開度。

          因此,“正確的”眼高是多大?

          現(xiàn)在我們看到不能用傳統(tǒng)眼高參數(shù)來描述眼圖張開度,我們重現(xiàn)回到計(jì)算公式上,圖3顯示用光標(biāo)量到的眼張開度是157mv,但是這個(gè)值是使用主觀性很強(qiáng)的光標(biāo)測(cè)量到的,而不是來自重復(fù)、客觀的算法。

          考慮正確的眼高是多少,必須注意到眼圖閉合度會(huì)隨著你用來計(jì)算眼圖的UI數(shù)量的增加而增加。因?yàn)殡S機(jī)抖動(dòng)是無邊界的,會(huì)影響眼圖的張開度。當(dāng)用來計(jì)算眼圖的UI數(shù)量增大1000倍時(shí),上圖中選擇的光標(biāo)位置就會(huì)不同。所以在做眼張開度測(cè)量時(shí),工程師必須考慮采集多少數(shù)據(jù)來形成眼圖。通常,我們嘗試?yán)斫庋蹐D閉合度和誤碼率的函數(shù)關(guān)系。這個(gè)問題在抖動(dòng)分析領(lǐng)域已經(jīng)得到解答,常用的雙狄拉克模型被用來外推特定的誤碼率下的抖動(dòng),像10E-12.在描述眼高時(shí)也需要相似的方法,下面我們介紹這樣一個(gè)方法。 噪聲分析軟件包中的EH BER就是答案

          力科SDAIII-Complete LinQ噪聲分析軟件包中包含EH BER測(cè)量能力。這個(gè)測(cè)試就是上面提到的:通過外推隨機(jī)噪聲到工程師選定的誤碼率,來測(cè)量眼圖的張開度。這個(gè)測(cè)量的是在眼圖設(shè)置中的Sample Phase中完成的。圖4顯示這個(gè)值是:121.6mv.這是推算到的在10E-12誤碼率的眼張開度,我們可以看到使用像上面圖3中的光標(biāo)明顯高估了在10E-12誤碼率下的眼張開度。用光標(biāo)測(cè)量的值對(duì)應(yīng)的是誤碼率10E-5下的眼張開度。使用光標(biāo)的測(cè)量值看起來很合理,但是推算在更大數(shù)據(jù)量像10E12時(shí)的眼圖張開度時(shí),使用光標(biāo)就無法做到了。



          評(píng)論


          技術(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); })();