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

          新聞中心

          EEPW首頁 > EDA/PCB > 設(shè)計應(yīng)用 > IBERT在FPGA中的應(yīng)用

          IBERT在FPGA中的應(yīng)用

          作者: 時間:2012-08-27 來源:網(wǎng)絡(luò) 收藏

          摘要 即集成式比特誤碼率測試儀,是Xilinx專門用于具有高速串行接口的芯片的調(diào)試和交互式配置工具。文中介紹了IBTERT基本功能、實(shí)現(xiàn)原理,并結(jié)合實(shí)例闡述用IBTERT調(diào)試時的具體方法和調(diào)試步驟。
          關(guān)鍵詞 誤碼率測試儀;高速串行接口;眼圖

          隨著高速數(shù)字系統(tǒng)的發(fā)展,高速串行數(shù)據(jù)被廣泛使用,內(nèi)嵌高速串行接口的也得到大量應(yīng)用,相應(yīng)的高速串行信號質(zhì)量的測試也越來越頻繁和重要。通常用示波器觀察信號波形、眼圖、抖動來衡量信號的質(zhì)量,Xilinx提供的(Integrated Bit Error Ratio Tester)作為一種高速串行信號測試的輔助工具,使得測試更便捷,其具有不占用額外的I/O管腳和PCB空間、不破環(huán)接口信號的完整性、無干擾、使用簡單和價格低廉等特點(diǎn)。

          1 簡介
          IBERT是Xilinx提供用于調(diào)試FPGA芯片內(nèi)高速串行接口比特誤碼率性能的工具,具備實(shí)時調(diào)整高速串行接口的多種參數(shù)、與系統(tǒng)其他模塊通信及測量多通道誤比特率等功能,支持所有的高速串行標(biāo)準(zhǔn),包括:PCI Express、RapidIO、千兆以太網(wǎng)、XAUI等。使用IBERT核測試,只需通過JTAG接口下載設(shè)計并測試硬件,無需額外的管教和接口;大幅縮減了高速串行接口測試場景的建立和調(diào)試時間,是高速串行接口開發(fā)中理想的調(diào)試工具。
          文中所述使用方法基于Xilinx的工具CoreGenerator12.4和ChipScope Pro Analyzer12.4進(jìn)行描述,下面介紹使用IBERT的步驟,IBERT的操作分為兩個階段。
          1.1 配置IBERT核,生成配置文件
          (1)打開Core Generator12.4工具,新建設(shè)計工程,指定待測器件類型、封裝、速度等級,生成工程文件。在IP Catalog窗口\View by Function\DebugVerification\Chipscope Pro\下,雙擊IBERT,配置線速率、GTP位置和參考時鐘、系統(tǒng)時鐘等IBERT核參數(shù),生成可JTAG加載的bit配置文件。與生成其他核不同,IBERT核不是插入到用戶的設(shè)計中去的ngc或edn文件,而是生成自身的bit配置文件。
          (2)IBERT核和ILA核(Integrated Logic Analyzercore),也需要連接到ICON核(Integrated Controllercore)上,但其自身具備控制、監(jiān)控以及改變高速串行接口參數(shù)的邏輯,并能完成誤比特性能測試。需注意的是,IBERT核只能作為一個獨(dú)立的設(shè)計,不可在用戶設(shè)計中例化。不同系列芯片的IBERT核在Core Generator中的配置不同。
          1.2 IBERT核的主要組件
          (1)BERT(比特誤碼率測試)邏輯:BERT邏輯中例化了高速串行接口組件,并包括了測試模式發(fā)生器和檢查器。利用Comma和Comma檢測器,可提供從簡單的時鐘信號到完全的PRBS模式以及成幀計數(shù)模式??僧a(chǎn)生各種PRBS數(shù)據(jù)作為高速串行發(fā)送器的數(shù)據(jù)源,可設(shè)置多種環(huán)回,由接收通道接收,對高速串行接收器的接收數(shù)據(jù)進(jìn)行相同編碼的檢測,計算比特誤碼率。
          (2)DRP(動態(tài)重配置端口)邏輯:每個高速串行接口均有一個動態(tài)重配置端口,因此每個收發(fā)器屬性都可在系統(tǒng)中改變。所有的屬性和DRP地址在IBERT核中均可讀可寫,且可獨(dú)立訪問。
          (3)控制盒狀態(tài)邏輯:管理IBERT核的操作。
          1.3 配置到FPGA中完成測試
          測試時,建立JTAC連接,使用ChipScope Pro Analyze12.4下載bit配置文件。下載成功后,在New Project窗口會出現(xiàn)IBERT Console點(diǎn)擊即進(jìn)入Console Window,該窗口可以設(shè)置高速串行接口的參數(shù),進(jìn)行開環(huán)或閉環(huán)的誤碼測試,同時提供高速串行接口參數(shù)的控制和監(jiān)視接口。Console Window有4個界面:MGT/BERT Settings、DRP Settings、Port Settings和Sweep Test Setting。下面分別介紹每個界面的功能。
          (1)MGT/BERT Settings:MGT Settings部分可以設(shè)置擺幅、預(yù)加重、均衡以及接收采樣點(diǎn)的位置等參數(shù),同時可設(shè)置開環(huán)或閉環(huán)的測試方式,測試進(jìn)行中可以顯示線速率和所測試的高速串行接口的鎖相環(huán)狀態(tài)。BERT Settings部分可以設(shè)置測試發(fā)送和接收數(shù)據(jù)的編碼方式,并顯示測試的誤碼率結(jié)果。Clock Setting部分顯示收發(fā)線路的時鐘信息。
          (2)DRP Settrags:可查看并設(shè)置高速串行接口的屬性。
          (3)Port Settings:可查看并設(shè)置高速串行接口的接口狀態(tài)。
          (4)Sweep Test Setting:本界面用于自動掃描測試,是IBERT提供的一項便利高效的測試方式,可設(shè)定發(fā)送和接收的可控制參數(shù)范圍,自動逐個地進(jìn)行遍歷性的誤碼測試,參數(shù)包括發(fā)送擺幅、預(yù)加重、接收均衡器、CDR采樣數(shù)據(jù)的位置等。用戶可設(shè)定每組參數(shù)重復(fù)測試次數(shù)以及測試時間,最后點(diǎn)擊Start即可進(jìn)行掃描測試。測試數(shù)據(jù)保存在.csv文件中。只能在近端環(huán)回和遠(yuǎn)端環(huán)回測試模式中使用。

          2 實(shí)例說明
          設(shè)計實(shí)例使用Xilinx公司Spatan6系列的xc6slx150t-3fgg676芯片,根據(jù)上述使用說明,下面具體說明使用IBERT進(jìn)行測試的過程。
          (1)打開Xilinx ISE DesignSuite12.4/ISEDesignTools/Tools/Core Generator,新建工程,設(shè)置芯片信息如圖1所示,點(diǎn)擊確認(rèn),生成核的工程文件。

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

          a.JPG

          網(wǎng)線測試儀相關(guān)文章:網(wǎng)線測試儀原理

          上一頁 1 2 3 下一頁

          關(guān)鍵詞: IBERT FPGA 中的應(yīng)用

          評論


          相關(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); })();