探究串行總線內(nèi)部的秘密
高頻總線使學(xué)習(xí)曲線更陡
工程師轉(zhuǎn)向高頻總線時(shí)(如PCI Express、SATA或SAS),學(xué)習(xí)曲線會更陡。LeCroy公司產(chǎn)品管理總監(jiān)Michael Lauterbach博士指出,“他們需要一種可以采集數(shù)據(jù)包并將其解碼為有用信息的儀器,以便能了解此信息與總線通訊和外部事件的對應(yīng)關(guān)系。這樣,他們就可以識別并分析通訊事件和各種錯誤或不兼容的情況。”所以,工程師必須先對總線操作和傳輸過程有相當(dāng)?shù)牧私獠趴梢蚤_始工作。本文引用地址:http://m.butianyuan.cn/article/201612/330618.htm
對此,Agilent公司的Rick Eads也強(qiáng)調(diào),工程師需要一段時(shí)間才能對PCI Express(PCIe)總線有所熟悉?;赑CIe的計(jì)算機(jī)啟動時(shí),通過總線協(xié)商確定通路數(shù)和總線帶寬??偩€開始時(shí)帶寬為2.5Gbps,但協(xié)商期間計(jì)算機(jī)可能會提高此帶寬。Rick Eads認(rèn)為,“如果不能捕捉串行PCIe通訊數(shù)據(jù)并分析數(shù)據(jù)包及其內(nèi)容,工程師馬上就會碰到麻煩。另外,由于PCIe和許多其他總線采用了8b/10b編碼,工程師需要查看字節(jié)值,而不是10位波形。”
適當(dāng)?shù)挠|發(fā)條件
但是,除非工程師問題的具體位置,否則檢查大量分為字節(jié)或高層數(shù)據(jù)包的串行傳送數(shù)據(jù),對于找到問題并沒有幫助。與利用觸發(fā)來控制存儲示波器操作的道理一樣,工程師也可以設(shè)置觸發(fā)條件,決定總線分析儀何時(shí)開始或停止采集信息。通??梢栽诔霈F(xiàn)特定的錯誤狀態(tài)、數(shù)據(jù)包出現(xiàn)不正常數(shù)據(jù)或在某個(gè)錯誤地址出現(xiàn)時(shí),創(chuàng)建一個(gè)觸發(fā)條件以偵測信息。
在采集內(nèi)存或緩存長度固定的情況下,對于特定的采集速率,可以將觸發(fā)點(diǎn)指向緩存采集期內(nèi)的任何位置。因此,當(dāng)儀器檢測到滿足觸發(fā)條件時(shí),會開始采集數(shù)據(jù),也可以利用觸發(fā)停止采集信息。有時(shí),可能需要將儀器設(shè)置為檢測到觸發(fā)條件之前和之后采集數(shù)據(jù),以便能看到導(dǎo)致觸發(fā)的事件和隨后發(fā)生的事件。
LeCroy公司Michael Lauterbach博士指出,“觸發(fā)可以依據(jù)多個(gè)條件,在我們的MS-500混合信號產(chǎn)品中,可以在多達(dá)36路數(shù)字通道上設(shè)置電壓閾值、位模式、信號邊沿變化和其他單個(gè)條件或多個(gè)條件的組合。并可以設(shè)置觸發(fā)順序,如僅在發(fā)生事件Y后發(fā)生事件X時(shí)觸發(fā)。還可以選擇性地采集數(shù)據(jù),例如采集與某個(gè)特定地址有關(guān)的數(shù)據(jù)或是滿足其他條件的數(shù)據(jù)。”
同樣,F(xiàn)inisar Bus Doctor協(xié)議分析儀也提供了12個(gè)觸發(fā)級別,每個(gè)都可以單獨(dú)設(shè)置觸發(fā)條件。觸發(fā)設(shè)置可以視為一個(gè)小型狀態(tài)機(jī)。Finisar公司Eric Lanning解釋說,“可按需要設(shè)置觸發(fā)條件,該儀器可在發(fā)生一個(gè)事件時(shí)觸發(fā),然后準(zhǔn)備好等待同一觸發(fā)事件再次發(fā)生。由于我們可以捕捉1024個(gè)緩存數(shù)據(jù),所以工程師可以建立一個(gè)測試,讓它在周末期間運(yùn)行并累積1024組觸發(fā)跟蹤數(shù)據(jù)。”
縮短板卡到示波器之間的引線
“在計(jì)劃購買一臺分析儀或混合信號示波器時(shí),還需要明確儀器探頭會對信號產(chǎn)生多大影響,”Michael Lauterbach博士提醒說,“人們并不想買一臺能破壞信號的儀器而引入新的麻煩,但是工程師有可能會忽視探頭和待測試信號之間的交互作用。一般來說,從用戶的板卡到混合信號示波器之間的引線應(yīng)盡可能短。”
“我們建議工程師在分析PCI Express信號時(shí)采用中間總線(Mid-bus)探頭,”Tektronix公司Randy White說,“有源探頭連接到專為PCI Express總線連接而設(shè)置的PCB焊盤上,當(dāng)然,工程師事先必須在他們的PCB板上設(shè)計(jì)占位,但他們通常會忽視后續(xù)測試中讀寫PCIe信號的需要。”Tektronix和其它公司為中間總線探頭提供符合工業(yè)標(biāo)準(zhǔn)的機(jī)械和電氣規(guī)格。它有一個(gè)可拆卸固定模塊,可將中間總線探頭固定在PCB焊盤上。
在最終投產(chǎn)PCB時(shí),可從最終定型板卡的PCB布線中去掉中間總線探頭的接觸測試焊盤。但是,Randy White指出,許多工程師也會將測試焊盤保留在板上,以便進(jìn)行后續(xù)的測試驗(yàn)證。所以,如果不需要利用該部分空間,可在設(shè)計(jì)中保留測試焊盤。
如果不想或者無法增加專用的接觸焊盤,可在PCIe總線上使用一個(gè)內(nèi)插器。內(nèi)插器插入一個(gè)空的PCIe插槽中,并將總線信號轉(zhuǎn)接入總線分析儀。如果系統(tǒng)所有插槽都插入了板卡,可以拆下一塊卡,插入內(nèi)插器,然后將該卡插入內(nèi)插器上的總線槽。但是,必須備好一個(gè)標(biāo)準(zhǔn)PCIe連接器,不能連接到PCI信號路徑的隨意位置??偩€分析儀供應(yīng)商還可提供多種兼容探頭和多種總線的內(nèi)插器卡。
分析串行總線有助于保證產(chǎn)品兼容性,跟蹤高層協(xié)議錯誤。有時(shí),需要將串行總線操作與外部事件聯(lián)系起來。有時(shí)還會需要一臺具有混合信號分析能力的儀器,用來捕獲、顯示和分析串行和并行信號,以及數(shù)字和模擬信號。例如,如果將一個(gè)智能壓力傳感器連接到CAN總線,具用有總線分析功能的混合信號示波器就可以查看模擬的壓力信號,并將其與CAN總線通訊關(guān)聯(lián)起來。因此,可能需要到考慮總線以外的問題,確??偩€分析儀可以捕獲和關(guān)聯(lián)總線以外的事件和信號。
參考鏈接
[1]“PCI Express 2.0 Digital Validation and Debug Using Serial Logic Analysis Tools, Tektronix. September 2007. WebID: 11792.
www2.tek.com/cmswpt/tidetails.lotr?ct=TI&cs=Application+Note&ci=11792&lc=EN
[2]“Protocol Analyzers vs. Logic Analyzers: Using the Right Tool for the Job,” Finisar. March 2007.
評論