由上圖可以看到,PCIe接口由數(shù)據(jù)接收差分管腳PCIE_RX_P,PCIE_RX_N,數(shù)據(jù)發(fā)送差分管腳PCIE_TX_P,PCIE_TX_N,以及SMBUS(SMBCLK, SMBDAT),JTAG管腳,參考時鐘PCIE_REFCLK_P,PCIE_REFCLK_N以及復(fù)位管腳PCIE_PERST_N組成。其中JTAG管腳和SMBUS可以不連,參考時鐘也可以選擇用本地時鐘或者選用接插件過來的PCIE_REFCLK_P,PCIE_REFCLK_N。前面提到,由于重點懷疑復(fù)位信號有所動作,因此對該復(fù)位信號用示波器進行監(jiān)測。在若干次實驗以后,發(fā)現(xiàn)在某次插入模塊后失效時,捕捉到了PCIE復(fù)位信號PCIE_PERST_N有一個持續(xù)時間約為2.3個us的低電平脈沖,正是該脈沖信號讓FPGA的PCIE IPCORE復(fù)位,導(dǎo)致PCIE通訊中斷的原因。該脈沖信號如下圖所示:
該干擾脈沖從何處而來?經(jīng)過實驗發(fā)現(xiàn)是靜電導(dǎo)入。我們在插拔模塊時,由于模塊本身外殼有部分金屬,因此靜電從外殼金屬進來后經(jīng)過某些路徑耦合到PCIe復(fù)位線上,引發(fā)了該問題。