加入星計劃,您可以享受以下權(quán)益:

  • 創(chuàng)作內(nèi)容快速變現(xiàn)
  • 行業(yè)影響力擴(kuò)散
  • 作品版權(quán)保護(hù)
  • 300W+ 專業(yè)用戶
  • 1.5W+ 優(yōu)質(zhì)創(chuàng)作者
  • 5000+ 長期合作伙伴
立即加入
  • 正文
    • 1. 配置訪問時間
    • 2. 實(shí)際系統(tǒng)中板卡電源
  • 相關(guān)推薦
申請入駐 產(chǎn)業(yè)圖譜

Xilinx PCIe高速接口入門實(shí)戰(zhàn)(三)

2024/12/31 來源:wechat
360
加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點(diǎn)資訊討論

引言:為保證FPGA設(shè)備可以連接并被系統(tǒng)識別,本節(jié)討論了PCIe基礎(chǔ)規(guī)范和PCIe板卡電氣規(guī)范的對FPGA配置時間具體要求。

1. 配置訪問時間

在PCIe的標(biāo)準(zhǔn)系統(tǒng)中,當(dāng)系統(tǒng)通電時,處理器上運(yùn)行的配置軟件開始掃描PCIe總線以發(fā)現(xiàn)機(jī)器拓?fù)?。掃描PCIe層次結(jié)構(gòu)以確定其拓?fù)浣Y(jié)構(gòu)的過程稱為枚舉過程,根復(fù)合體(RC)通過向設(shè)備發(fā)起配置事務(wù)來實(shí)現(xiàn)枚舉過程。

圖1:系統(tǒng)啟動時的PCIe拓?fù)鋱D

所有PCIe設(shè)備都應(yīng)已與其鏈路伙伴建立鏈路,并在枚舉過程中準(zhǔn)備好接受配置請求。因此,對設(shè)備在通電后何時需要準(zhǔn)備好接受配置請求有要求,如果不符合要求,則會發(fā)生以下情況:

?如果設(shè)備未就緒且未響應(yīng)配置請求,則根復(fù)合體不會發(fā)現(xiàn)它并將其視為不存在;

?操作系統(tǒng)不報告設(shè)備的存在,用戶應(yīng)用程序無法與設(shè)備通信

1.1 配置訪問規(guī)范要求

PCIe規(guī)范項與配置訪問相關(guān)包括:

(1)PCIe基礎(chǔ)規(guī)范V1.1版第6.6節(jié)規(guī)定:“系統(tǒng)必須保證所有在啟動時可見的軟件組件在根復(fù)合體基本重置結(jié)束后100ms內(nèi)準(zhǔn)備好接收配置請求?!?/p>

(2)PCIe基礎(chǔ)規(guī)范V1.1第6.6節(jié)定義了“在提供電源和PERST#的情況下”所需的三個參數(shù)。參數(shù)TPVPERL適用于FPGA配置時序,定義為:

TPVPERL-PERST#必須在電源有效后至少保持活動狀態(tài)這么長時間。

PCIe基本規(guī)范沒有給出TPVPERL的具體值,只定義了它的含義。圖2顯示了電源穩(wěn)定和PERST#之間的關(guān)系。

圖2:上電時序PCIe卡電氣規(guī)范V1.1第2.6.2節(jié)將TPVPREL定義為最小100ms,表示從電源穩(wěn)定時起,系統(tǒng)重置至少持續(xù)100ms,如表1所示。

表1:TPVPERL規(guī)格

從圖2和表1中,可以得到一個簡單的方程來定義FPGA配置時間,如下所示:FPGA配置時間 ≤ TPWRVLD+TPVPERL? ?(式1)假設(shè)TPVPERL被定義為最小100ms,則變?yōu)椋篎PGA配置時間 ≤ TPWRVLD+100ms ? ?(式2)

注:盡管TPWRVLD包含在方程式2中,但在本次討論中尚未定義,因?yàn)樗Q于使用的系統(tǒng)類型。真實(shí)系統(tǒng)中的電路板電源部分為基于ATX和非基于ATX的系統(tǒng)定義了TPWRVLD。

FPGA配置時間僅在冷啟動時相關(guān),后續(xù)的熱重置或熱復(fù)位不會導(dǎo)致FPGA的重新配置。如果設(shè)計因FPGA配置而出現(xiàn)問題,您應(yīng)該發(fā)出一個熱復(fù)位作為簡單的測試,復(fù)位系統(tǒng),包括PCI Express鏈路,但保持電路板通電。如果問題沒有出現(xiàn),則問題可能與FPGA配置時間有關(guān)。

2. 實(shí)際系統(tǒng)中板卡電源

在PCIe系統(tǒng)中可能會使用多個板卡,英特爾認(rèn)可的ATX電源設(shè)計規(guī)范被用作指導(dǎo)方針,因此大多數(shù)主板都遵循該規(guī)范,如果是基于英特爾的主板,則100%遵循該規(guī)范。ATX 12V電源設(shè)計指南中描述了電源軌和電源有效信號之間的關(guān)系,如圖3所示。

圖3:ATX電源時序

圖3顯示,圖2中PCIe系統(tǒng)的電源穩(wěn)定指示由PWR_OK信號表示。當(dāng)電源達(dá)到標(biāo)稱值的95%時,經(jīng)過一段延遲后,PWR_OK被斷言為高電平。圖3顯示,在PWR_OK被斷言為高之前,電源是有效的。這由T3表示,即PWR_OK做了延遲。ATX 12V電源設(shè)計指南將PWR_OK定義為100ms<T3<500ms,表明從電源電平達(dá)到標(biāo)稱值的95%開始,在PWR_OK被斷言之前,至少有100ms但不超過500ms的延遲。

同樣,F(xiàn)PGA配置時間方程為:?FPGA配置時間≤TPWRVLD+100ms

TPWRVLD定義為PWR_OK延遲期;也就是說,TPWRVLD表示在PWR_OK被斷言之前,電源在系統(tǒng)中有效的時間量。此時間可以添加到FPGA必須配置的時間量中。T2和T4的最小值可以忽略不計,在這些計算中被視為零。對于基于ATX的主板,它代表了大多數(shù)實(shí)際使用的主板,TPWRVLD可以定義為:

100 ms≤TPWRVLD≤500 ms

因此,F(xiàn)PGA配置時間需滿足以下要求:

FPGA配置時間≤200ms(適用于基于ATX的主板)

FPGA配置時間≤100ms(適用于非ATX主板)

注意:(1)非基于ATX的主板的第二個方程假設(shè)TPWRVLD值為0ms,因?yàn)樵诖松舷挛闹袥]有定義。使用非ATX主板的設(shè)計人員應(yīng)評估自己的電源設(shè)計,以獲得TPWRVLD的值。

(2)本節(jié)假設(shè)FPGA功率(VCCINT)在PWR_OK被斷言之前或同時是穩(wěn)定的。如果不是這樣,則必須從FPGA配置的可用時間中減去額外的時間。

2.1 熱插拔系統(tǒng)

熱插拔系統(tǒng)通常使用位于系統(tǒng)主板上的熱插拔電源控制器。許多分立的熱插拔電源控制器將TPVPERL擴(kuò)展到最小值100ms以上。插件卡設(shè)計人員應(yīng)參考熱插拔電源控制數(shù)據(jù)表以確定TPVPERL的值。如果熱插拔功率控制器未知,則應(yīng)假設(shè)TPVPERR值為100ms。

2.2 FPGA配置建議

為了縮短FPGA配置時間,Xilinx建議使用并行NOR閃存的BPI配置模式,該模式支持高速同步讀取操作。

此外,可以向外部主配置時鐘(EMCCLK)引腳提供外部時鐘源,以確保所有條件下的配置時鐘頻率一致。

3. 7系列器件的FPGA配置時間

在加電期間,F(xiàn)PGA配置順序分三個步驟執(zhí)行:

(1)等待FPGA中所有電壓(VCCINT、VCCAUX和VCCO_0)的上電復(fù)位(POR)跳閘,稱為POR跳閘時間。

(2)在接受比特流傳輸之前,等待INIT_B完成(取消確認(rèn))以允許FPGA初始化。

注:一般來說,步驟1和2要求≤50 ms

(3)等待DONE的斷言,比特流傳輸所需的實(shí)際時間取決于:

○比特流大小

○時鐘(CCLK)頻率

○閃存設(shè)備的傳輸模式(和數(shù)據(jù)總線寬度)

-SPI=串行外圍接口(x1、x2或x4)

-BPI=字節(jié)外圍接口(x8或x16)

比特流傳輸時間可以使以下方程進(jìn)行估計:

比特流傳輸時間=(比特流大小,單位為比特)/(CCLK頻率)/(數(shù)據(jù)總線寬度,單位為位)

Xilinx PCIe高速接口入門實(shí)戰(zhàn)(一)

Xilinx PCIe高速接口入門實(shí)戰(zhàn)(二)

相關(guān)推薦

登錄即可解鎖
  • 海量技術(shù)文章
  • 設(shè)計資源下載
  • 產(chǎn)業(yè)鏈客戶資源
  • 寫文章/發(fā)需求
立即登錄

專注FPGA技術(shù)開發(fā),涉及Intel FPGA、Xilinx FPGA技術(shù)開發(fā),開發(fā)環(huán)境使用,代碼風(fēng)格、時序收斂、器件架構(gòu)以及軟硬件項目實(shí)戰(zhàn)開發(fā),個人公眾號:FPGA技術(shù)實(shí)戰(zhàn)。