91伊人国产-91伊人久久-91伊人影院-91影视永久福利免费观看-免费毛片儿-免费女人18毛片a级毛片视频

歡迎進入儀商網!

【鼎陽硬件智庫原創︱調試經驗 】PCIe接口失效問題分析實例

引 言

PCIe是一個在很多領域中都有著廣泛且重要應用的接口,經過十幾年的發展,PCIe接口已經從1.0發展到現在的3.04.0也已即將開始應用。PCIe技術的物理層基于串行SerDes技術,因此用極少的物理連線就可以實現高速的數據傳輸。筆者在前段時間碰上了兩個PCIe接口失效的問題,第一個經過分析是PCIeESD防護沒有做好導致通訊中斷,第二個是電源負載過大導致PCIe供電異常,FPGA PCIe IPCORE邏輯時鐘失鎖。現把這兩個問題的定位和解決過程與讀者一同分享。

 1.系統概述及問題描述

現簡略的介紹該系統,其簡略框圖如下:

 

該系統由兩個模塊組成,前端模塊可插拔,在插入后會傳輸信號給FPGA,信號經過前端接收,A/D采樣后進入FPGA做信號處理,然后FPGA把處理過的信號通過PCIe接口傳送給工控機進行后處理及顯示。工控機也會通過PCIe接口控制FPGA的工作狀態。前端的模塊是可插拔的。

第一個問題是該機器在做測試時,發現在換模塊時會偶發的出現工控機與FPGA的通訊異常的現象,該現象出現的頻率很低,測試組的同事反饋在做測試時經常會有換模塊的操作,但該現象基本上幾天才出現一次,雖然該現象概率低,但是問題影響甚為重大,必須攻破。

第二個問題則是系統不接交流電而使用電池運行在某種模式下,在達到10%低電量時,會必發的出現PCIe通訊異常。

 2.第一個問題定位及解決過程

該問題的定位開始是沒有頭緒的,因為問題出現后,PCIe的通訊已經中斷,此時想通過工控機去讀FPGA的調試相關的寄存器已經沒有用,即此時讀上來的值都是無效的。但是還是得先逐步的排除問題。

第一步:是否是軟件的問題

通過閱讀問題發生時的軟件日志,發現在問題發生時,軟件沒有收到中斷請求,這說明在插拔模塊的過程中,PCIe通訊已經失效,模塊插入/拔出的中斷已經無法發出(在模塊插入或者拔出的過程FPGA會檢測,如果發生該事件FPGA會通過PCIe發出中斷給工控機)。且在問題發生時軟件日志的記錄上軟件沒有異常之處,因此排除是軟件的問題。 

第二步:是否是FPGA邏輯的問題

通過在FPGA插入在線邏輯分析儀,把PCIe的運轉狀態機LTSSM加入到在線邏輯分析儀,在發生此問題時觸發觀測LTSSM狀態機。在測試時,復現該問題后發現LTSSM有重新回到復位狀態的動作,因此懷疑此時可能是電源或者是PCIe接口復位信號的問題,因為在正常情況下,如果系統復位信號沒有動作,且上位機沒有重新發送PCIe鏈路訓練命令的話,LTSSM狀態機是不會被復位的。因此該線索把該問題的原因導向到復位信號或電源上。

第三步:監測PCIe接口的復位信號

PCIe接口的電路如下圖所示:

 

由上圖可以看到,PCIe接口由數據接收差分管腳PCIE_RX_PPCIE_RX_N,數據發送差分管腳PCIE_TX_PPCIE_TX_N,以及SMBUS(SMBCLK, SMBDAT)JTAG管腳,參考時鐘PCIE_REFCLK_PPCIE_REFCLK_N以及復位管腳PCIE_PERST_N組成。其中JTAG管腳和SMBUS可以不連,參考時鐘也可以選擇用本地時鐘或者選用接插件過來的PCIE_REFCLK_PPCIE_REFCLK_N。前面提到,由于重點懷疑復位信號有所動作,因此對該復位信號用示波器進行監測。在若干次實驗以后,發現在某次插入模塊后失效時,捕捉到了PCIE復位信號PCIE_PERST_N有一個持續時間約為2.3us的低電平脈沖,正是該脈沖信號讓FPGAPCIE IPCORE復位,導致PCIE通訊中斷的原因。該脈沖信號如下圖所示:

 

該干擾脈沖從何處而來?經過實驗發現是靜電導入。我們在插拔模塊時,由于模塊本身外殼有部分金屬,因此靜電從外殼金屬進來后經過某些路徑耦合到PCIe復位線上,引發了該問題。

問題解決思路:找到問題來源點,解決方法就多種多樣了。在此筆者推薦三種方法一起用:1. PCIE_PERST_N復位信號加濾波;2. 做好整機/模塊的ESD保護;3. FPGAPCIE_PERST_N信號做判斷后再引入FPGAPCIe IPCORE復位端,即對PCIE_PERST_N信號做低脈沖時間計數,大于規定的ms級低電平才判斷為復位,否則則判斷為干擾信號,FPGA控制邏輯不去復位PCIE IPCORE

3.第二個問題定位及解決過程

該問題的定位比第一個問題定位簡單。因為該問題是在帶電池低電量時必發,在插上交流電時則沒有該現象,因此可以排除軟件和FPGA邏輯問題,因此把問題聚焦在電源上。通過示波器實地測試,發現在電池低電量且工作于該模式下,電流有突然增大的現象,導致此時電壓跌落,引發FPGA邏輯時鐘失鎖,由于FPGA邏輯的設計是使用邏輯系統時鐘鎖定信號作為PCIe IPCORE部分邏輯的復位信號,因此此時會導致FPGAPCIe IPCORE被復位,進而產生PCIe通訊失效的現象。現在來分析一下整個過程,該時刻波形記錄如下圖所示:

 

如上圖所示,黃色的波形為系統電流波形,使用電流探頭測量,綠色和青色波形為模塊某部分調壓波形,非FPGA PCIe供電電壓,在此處可以認為跟筆者的分析無關。比較遺憾的是,這個截圖中沒有記錄下FPGA的供電電壓,有記錄的圖筆者沒有找到。但是該圖可以很明確的分析此時系統電流變化的過程:在某種工作模式下,電流突然急劇上升,此時會造成FPGA供電電壓發生變化,進而導致FPGA邏輯時鐘失鎖,進而造成FPGA邏輯復位,由于此時FPGA邏輯處于復位狀態,寄存器不再翻轉,因而系統供電電流突然急劇下降,此時可以對應到上圖的電流急劇下跌,由于電流下跌,負載減輕導致FPGA工作電壓回復正常,時鐘重新鎖定,FPGA邏輯復位完成,重新工作,因此電流又重新回復到比之前模式切換時的功耗略少的狀態。整個過程是一個鏈式反應,非常清晰的被記錄在示波器上。

問題解決思路:改善電源模塊供電設計,增加裕量。

4.總 結

對于PCIe接口的穩定性設計來說,電源和時鐘是關鍵,在保證了電源和時鐘的穩定性以后,還需要注意對關鍵敏感信號的保護,在有外部接插,觸碰動作介入系統的情況下,注意對PCIe接口的敏感信號,如復位信號的保護是非常有必要的。

 鼎陽硬件智庫專家介紹 

樊繼明,硬件設計與測試從業6,專長ASIC/FPGA邏輯設計,高速接口(LVDS, 高速SerDes)邏輯設計與驗證,2009年畢業于華南理工大學,工學碩士。曾在通訊行業從事過3年的ASIC設計,主要涉及到光傳送網100G OTN DSP物理層芯片邏輯設計,現在某醫療設備行業從事FPGA邏輯設計,主要聚焦于高速接口以及數字波束合成方面的設計。

關于鼎陽

鼎陽科技(SIGLENT)是一家專注于通用電子測試測量儀器及相關解決方案的公司。

2005推出第一款數字示波器產品至今,10年來鼎陽科技一直是全球發展速度最快的數字示波器制造商。歷經多年發展,鼎陽產品已擴展到數字示波器、手持示波表、函數/任意波形發生器、頻譜分析儀、臺式萬用表、直流電源等通用測試測量儀器產品。2007年,鼎陽與高端示波器領導者美國力科建立了全球戰略合作伙伴關系。2011年,鼎陽發展成為中國銷量領先的數字示波器制造商。2014年,鼎陽發布了中國首款智能示波器SDS3000系列,引領“人手一臺”型實驗室使用示波器由功能示波器向智能示波器過渡的趨勢。目前,鼎陽已經在美國克利夫蘭和德國漢堡成立分公司,產品遠銷全球70多個國家,SIGLENT正逐步成為全球知名的測試測量儀器品牌。

關于鼎陽硬件設計與測試智庫

鼎陽硬件設計與測試智庫(簡稱鼎陽硬件智庫)由深圳市鼎陽科技有限公司領銜創辦,是中國第一家“智力眾籌”模式的硬件智庫。

 鼎陽硬件智庫順時順勢,倡導“連接-分享-協作-創造”的理念,高舉志愿者服務的大旗,相信互聯網是“愛”的大本營,相信人們都有發自內心分享的愿望。

鼎陽硬件智庫選擇硬件領域最普遍的七類問題:電源,時鐘,DDR,低速總線,高速總線,EMC,測試測量進行聚焦。尋找“最針尖”的問題進行研討,針對“最針尖”的問題組織專家答疑,將硬件大師積累的寶貴知識和經驗變成公眾財富,惠及更多硬件人。

鼎陽硬件智庫的運作載體包括“線上”的微信公眾號分享,微信群,網站,網絡社區論壇,博客,郵件群等多種互聯網工具和“線下”的專家論壇和專家把脈。“線上”的分享堅持原創,堅持干貨,保持專注和深耕。“線下”專家論壇邀請硬件相關的一線實戰派專家分享“最干貨”的硬件設計與測試知識與經驗,面對面相互研討;“線下”的專家把脈,通過大數據連接,促使具體問題和最熟悉這個具體問題的專家“精準匹配”,遠程問診和現場解決問題相結合。

聲明: 聲明:凡本網注明"來源:儀商網"的所有作品,版權均屬于儀商網,未經本網授權不得轉載、摘編使用。
經本網授權使用,并注明"來源:儀商網"。違反上述聲明者,本網將追究其相關法律責任。
本網轉載并注明自其它來源的作品,歸原版權所有人所有。目的在于傳遞更多信息,并不代表本網贊同其觀點或證實其內容的真實性,不承擔此類作品侵權行為的直接責任及連帶責任。如有作品的內容、版權以及其它問題的,請在作品發表之日起一周內與本網聯系,否則視為放棄相關權利。
本網轉載自其它媒體或授權刊載,如有作品內容、版權以及其它問題的,請聯系我們。相關合作、投稿、轉載授權等事宜,請聯系本網。
QQ:2268148259、3050252122。