0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

通過PCI Express橋接優(yōu)化PCI讀取性能

星星科技指導(dǎo)員 ? 來源:嵌入式計(jì)算設(shè)計(jì) ? 作者:Craig Downing ? 2022-06-14 16:58 ? 次閱讀

PCI Express (PCIe) 現(xiàn)在是 PC 芯片組和嵌入式處理器上普遍存在的互連標(biāo)準(zhǔn)。盡管使用橋接器可以為現(xiàn)有 PCI 設(shè)備提供一種經(jīng)濟(jì)高效的 PCIe 升級(jí)路徑,但由此產(chǎn)生的 PCI 讀取會(huì)產(chǎn)生額外的延遲,從而嚴(yán)重影響系統(tǒng)性能。Craig 探討了實(shí)施 PCIe 橋接器如何解決由 PCI 讀取引起的性能問題。

雖然 PCIe 正在取代原來的 PCI 總線標(biāo)準(zhǔn),但許多外圍設(shè)備和設(shè)備(例如 FPGA 和 I/O 模塊)仍在使用 PCI。沒有集成 PCIe 接口的組件需要從 PCI 總線到 PCIe 的橋接器。兩個(gè)需要橋接的應(yīng)用示例包括一個(gè) PCIe 附加處理器卡,它使用基于 PCI 的 DSP 進(jìn)行通信應(yīng)用,以及一個(gè)嵌入式視頻錄像機(jī),它使用帶有 PCI 的 I/O 設(shè)備連接到帶有 PCIe 端口的嵌入式處理器。

在這些系統(tǒng)和其他系統(tǒng)中,添加總線橋會(huì)帶來設(shè)計(jì)挑戰(zhàn)。性能通常取決于網(wǎng)橋的 PCI 讀取性能。由于舊 PCI 協(xié)議的限制,一旦引入網(wǎng)橋,就會(huì)出現(xiàn)性能問題。使用市售的總線橋可以消除這些問題,從而最大限度地提高系統(tǒng)性能。

PCI 設(shè)備的繁重讀取負(fù)擔(dān)

PCI 總線上的設(shè)備通常嚴(yán)重依賴于從主機(jī)處理器讀取大量數(shù)據(jù)。PCI I/O 設(shè)備通常控制系統(tǒng)中的數(shù)據(jù)移動(dòng),并啟動(dòng)對(duì)主機(jī)內(nèi)存的讀取和寫入周期。例如,主機(jī)處理器可能通過寫入外設(shè)上的寄存器來組織和協(xié)調(diào)數(shù)據(jù)移動(dòng),以在外設(shè)中設(shè)置 DMA 傳輸,但它會(huì)將自己從數(shù)據(jù)移動(dòng)中移除以專注于其他任務(wù)。然后外圍設(shè)備將讀取或?qū)懭霐?shù)據(jù)以服務(wù)于 DMA請(qǐng)求。在其他時(shí)候,處理器可能會(huì)讀取狀態(tài)信息并寫入寄存器以進(jìn)行控制。這種流量通常不涉及高帶寬或顯著有助于整體系統(tǒng)性能。

在處理器附加卡的情況下,它的 DSP 必須從主機(jī) PC 內(nèi)存中讀取數(shù)據(jù)以進(jìn)行數(shù)據(jù)處理或壓縮任務(wù)。同樣,諸如安全 DVR 之類的嵌入式處理系統(tǒng)將捕獲和壓縮將通過磁盤控制器寫入磁盤存儲(chǔ)的視頻。 磁盤控制器通過PCI 總線從主機(jī)的內(nèi)存中讀取數(shù)據(jù)來實(shí)現(xiàn)這一點(diǎn)。

從 PCI 外設(shè)到橋接器的寫入通常發(fā)布在內(nèi)部寫緩沖區(qū)中,以克服橋接器帶來的固有性能損失。然而,PCI 讀取會(huì)帶來一些問題,因?yàn)?PCIe 橋必須重試外圍設(shè)備,直到它從主機(jī)的內(nèi)存中獲得請(qǐng)求的數(shù)據(jù)。這通常涉及嘗試讀取許多小的 PCIe 數(shù)據(jù)包,從而增加延遲。

雖然 PCI-X 協(xié)議通過拆分事務(wù)繞過了這個(gè)問題,但傳統(tǒng)的 PCI 協(xié)議并沒有實(shí)現(xiàn)這個(gè)特性。 此外,一些 PCI 設(shè)備被設(shè)計(jì)為在接收到一到兩條高速緩存行數(shù)據(jù)后自動(dòng)釋放總線,這加劇了 PCI 讀取的性能挑戰(zhàn)。

以 DSP 處理器卡應(yīng)用為例。這個(gè)特殊的 DSP 使用 32 位 PCI 接口。與許多 PCI 設(shè)備一樣,它會(huì)在釋放 PCI 總線之前讀取一到兩條高速緩存行數(shù)據(jù)。在這種情況下,高速緩存行由 16 到 128 個(gè)字節(jié)組成,具體取決于系統(tǒng)設(shè)計(jì)和設(shè)備功能。

該卡將讀取大量原始數(shù)據(jù)進(jìn)行處理,例如在電信應(yīng)用程序中處理的音頻比特流。在DSP 直接通過 PCI 總線與主機(jī)處理器通信的傳統(tǒng)系統(tǒng)中,讀取性能將比添加橋之后更好,因?yàn)槊總€(gè)事務(wù)都有額外的延遲。

橋接引起的性能惡化

引入 PCIe 橋接器可能會(huì)對(duì)性能造成重大影響。這種讀取性能下降可能通過以下過程發(fā)生(圖 1):

1.DSP 將啟動(dòng)從 PC 主存儲(chǔ)器的讀取。網(wǎng)橋?qū)㈡i定事務(wù)并繼續(xù)重試,直到網(wǎng)橋接收到數(shù)據(jù)。

2.網(wǎng)橋?qū)膬?nèi)存中預(yù)取數(shù)據(jù)并將其存儲(chǔ)在內(nèi)部緩沖區(qū)中。

3.DSP 將讀取一部分?jǐn)?shù)據(jù)(一個(gè)或兩個(gè)高速緩存行),然后斷開連接,釋放 PCI 總線。

4.一旦斷開連接,網(wǎng)橋?qū)G棄其緩沖區(qū)中的所有剩余數(shù)據(jù)。隨著DSP 啟動(dòng)下一次讀取,橋?qū)⑿枰俅潍@取數(shù)據(jù),重試直到數(shù)據(jù)可供 DSP 使用。

圖1

poYBAGKoTcOAfrpcAABa8Rc6nXw141.jpg

在此示例中,步驟 4 在讀取事務(wù)之間引入了顯著延遲,這極大地影響了讀取性能。 因此,與直接使用 PCI 總線相比,使用 PCIe 橋?qū)ψx取性能的影響會(huì)大大降低系統(tǒng)性能。

考慮另一種使用嵌入式 DVR 的常見情況。在這種情況下,系統(tǒng)必須將壓縮視頻數(shù)據(jù)的連續(xù)流寫入磁盤以供存儲(chǔ)和以后檢索或分析。在這個(gè)系統(tǒng)中,一個(gè)或多個(gè)SATA 磁盤控制器將從系統(tǒng)的主存儲(chǔ)器中讀取視頻數(shù)據(jù),以存儲(chǔ)在附加的磁盤陣列中。這些類型的系統(tǒng)可能包含額外的外圍設(shè)備,例如共享 PCI 總線的以太網(wǎng)控制器。

與前面的示例一樣,嵌入式 DVR 中的總線效率受到連續(xù)數(shù)據(jù)讀取、總線斷開以及多次重試和預(yù)取的嚴(yán)重影響,如圖 2 所示。

圖 2: DVR 系統(tǒng)中的 PCI 總線利用率

pYYBAGKoTcSARCZDAABo28Ga4ZA147.jpg

正如

指示正在讀取數(shù)據(jù)的位置的 PCI_TRDYn(PCI 目標(biāo)就緒)跟蹤所證明的那樣,第一次讀?。ú襟E 3)和下一次讀?。ú襟E 6)之間存在很大差距。這意味著將視頻數(shù)據(jù)寫入磁盤的最大速度顯著降低,從而限制了系統(tǒng)性能。在這種情況下,最大限度地提高視頻數(shù)據(jù)的寫入速度對(duì)于最終產(chǎn)品至關(guān)重要,因?yàn)樗軌虼鎯?chǔ)監(jiān)控所需的盡可能多的高質(zhì)量視頻通道。

解決問題:短期緩存

Tundra 的 PCIe 橋接器(Tsi381、Tsi382 和 Tsi384)集成了一種稱為短期緩存 (STC)的功能,以幫助克服這一性能挑戰(zhàn)。STC允許在初始 PCI 讀取周期期間從連接的 PCIe 設(shè)備中預(yù)取數(shù)據(jù),并臨時(shí)存儲(chǔ)在橋接器中,以便在后續(xù)讀取周期期間快速周轉(zhuǎn)。當(dāng)請(qǐng)求的設(shè)備停止事務(wù)時(shí),將在后續(xù)讀取中讀取的數(shù)據(jù)不會(huì)立即丟棄。

與最初的橋接情況相比,STC 對(duì)性能的影響可能是巨大的。以前面的嵌入式 DVR 為例,但系統(tǒng)中添加了 Tsi381 橋接器。通過啟用 STC,后續(xù)讀取不會(huì)因?yàn)樗鼈儽A粼诰彺嬷卸舆t。此外,橋接器不必在第一次讀取后從內(nèi)存中重新讀取數(shù)據(jù),從而確保有效地使用總線(參見圖 3)。

圖 3:使用 Tsi381 和短期緩存的嵌入式 DVR 系統(tǒng)

poYBAGKoTcWAYpg3AABsQe1vmoU965.jpg

為了演示性能差異,請(qǐng)比較啟用 STC 之前和之后的 PCI 總線時(shí)序(參見圖 4)。在這個(gè)系統(tǒng)對(duì)每個(gè)設(shè)備執(zhí)行 32 位讀取的示例中,兩個(gè)設(shè)備可以在沒有 STC的情況下僅執(zhí)行兩次讀取的同一時(shí)間段內(nèi)執(zhí)行七次讀取。 因此,使用 STC可以將整體系統(tǒng)吞吐量提高三倍以上。對(duì)于具有執(zhí)行此類讀取的單個(gè)設(shè)備的系統(tǒng),改進(jìn)將更大。

圖 4:啟用短期緩存之前和之后的 PCI 總線時(shí)序

pYYBAGKoTcaASNOxAAA6E0fwZlk947.jpg

PCIe 橋接器允許開發(fā)人員通過調(diào)整以下參數(shù)來進(jìn)一步修改系統(tǒng):

數(shù)據(jù)保存在緩存中的時(shí)間。這允許設(shè)計(jì)人員確保陳舊數(shù)據(jù)一旦陳舊就被丟棄和預(yù)取。

PCI 讀取預(yù)取長度。理想情況下,橋接器預(yù)取的數(shù)據(jù)不應(yīng)超過 PCI 外設(shè)通常需要的數(shù)據(jù),因此設(shè)計(jì)人員可以根據(jù)預(yù)期的典型傳輸長度設(shè)置此參數(shù)。

根據(jù)系統(tǒng)設(shè)計(jì)和設(shè)備行為,設(shè)計(jì)人員可以 通過調(diào)整預(yù)取長度和短期緩存丟棄定時(shí)器來提高整體性能或關(guān)鍵功能的性能。

橋接選項(xiàng)有助于消除瓶頸

使用 PCIe 橋接器將設(shè)計(jì)從 PCI 遷移到PCIe 的設(shè)計(jì)人員面臨著相當(dāng)大的設(shè)計(jì)挑戰(zhàn)。PCI 外圍設(shè)備啟動(dòng)的讀取會(huì)引入額外的延遲,這對(duì) 整體系統(tǒng)性能有很大貢獻(xiàn)。

Tundra 的 Tsi381 等 PCIe 橋接器為設(shè)計(jì)人員提供了調(diào)整橋接器的選項(xiàng),從而提供最佳系統(tǒng)性能。使用 STC,這些橋接器可以輕松消除與 PCI 讀取相關(guān)的性能瓶頸。

審核編輯:郭婷

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • PCI
    PCI
    +關(guān)注

    關(guān)注

    4

    文章

    657

    瀏覽量

    130066
  • 定時(shí)器
    +關(guān)注

    關(guān)注

    23

    文章

    3228

    瀏覽量

    114184
  • PCIe
    +關(guān)注

    關(guān)注

    15

    文章

    1176

    瀏覽量

    82262
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    KeyStone設(shè)備的PCI Express (PCle)常見問題

    電子發(fā)燒友網(wǎng)站提供《KeyStone設(shè)備的PCI Express (PCle)常見問題.pdf》資料免費(fèi)下載
    發(fā)表于 10-11 10:21 ?0次下載
    KeyStone設(shè)備的<b class='flag-5'>PCI</b> <b class='flag-5'>Express</b> (PCle)常見問題

    使用TI PCI-Express Gen5.0轉(zhuǎn)驅(qū)動(dòng)器進(jìn)行眼圖掃描

    電子發(fā)燒友網(wǎng)站提供《使用TI PCI-Express Gen5.0轉(zhuǎn)驅(qū)動(dòng)器進(jìn)行眼圖掃描.pdf》資料免費(fèi)下載
    發(fā)表于 08-31 10:12 ?0次下載
    使用TI <b class='flag-5'>PCI-Express</b> Gen5.0轉(zhuǎn)<b class='flag-5'>接</b>驅(qū)動(dòng)器進(jìn)行眼圖掃描

    LMK6H PCI Express合規(guī)性報(bào)告

    電子發(fā)燒友網(wǎng)站提供《LMK6H PCI Express合規(guī)性報(bào)告.pdf》資料免費(fèi)下載
    發(fā)表于 08-29 09:44 ?0次下載
    LMK6H <b class='flag-5'>PCI</b> <b class='flag-5'>Express</b>合規(guī)性報(bào)告

    LMKDB1xxx PCI Express合規(guī)性報(bào)告

    電子發(fā)燒友網(wǎng)站提供《LMKDB1xxx PCI Express合規(guī)性報(bào)告.pdf》資料免費(fèi)下載
    發(fā)表于 08-29 09:44 ?0次下載
    LMKDB1xxx <b class='flag-5'>PCI</b> <b class='flag-5'>Express</b>合規(guī)性報(bào)告

    XIO2221單功能PCI ExpressTM (PCle)到PCI本地總線轉(zhuǎn)換數(shù)據(jù)表

    電子發(fā)燒友網(wǎng)站提供《XIO2221單功能PCI ExpressTM (PCle)到PCI本地總線轉(zhuǎn)換數(shù)據(jù)表.pdf》資料免費(fèi)下載
    發(fā)表于 07-10 11:21 ?0次下載
    XIO2221單功能<b class='flag-5'>PCI</b> ExpressTM (PCle)到<b class='flag-5'>PCI</b>本地總線轉(zhuǎn)換<b class='flag-5'>橋</b>數(shù)據(jù)表

    XIO2213A單功能PCI ExpressTM到PCI本地總線轉(zhuǎn)換數(shù)據(jù)表

    電子發(fā)燒友網(wǎng)站提供《XIO2213A單功能PCI ExpressTM到PCI本地總線轉(zhuǎn)換數(shù)據(jù)表.pdf》資料免費(fèi)下載
    發(fā)表于 07-10 11:19 ?0次下載
    XIO2213A單功能<b class='flag-5'>PCI</b> ExpressTM到<b class='flag-5'>PCI</b>本地總線轉(zhuǎn)換<b class='flag-5'>橋</b>數(shù)據(jù)表

    TI PCI2040 PCI-DSP數(shù)據(jù)表

    電子發(fā)燒友網(wǎng)站提供《TI PCI2040 PCI-DSP數(shù)據(jù)表.pdf》資料免費(fèi)下載
    發(fā)表于 07-10 09:37 ?0次下載
    TI <b class='flag-5'>PCI</b>2040 <b class='flag-5'>PCI</b>-DSP<b class='flag-5'>橋</b>數(shù)據(jù)表

    PCI2250 PCIPCI數(shù)據(jù)表

    電子發(fā)燒友網(wǎng)站提供《PCI2250 PCIPCI數(shù)據(jù)表.pdf》資料免費(fèi)下載
    發(fā)表于 07-10 09:34 ?0次下載
    <b class='flag-5'>PCI</b>2250 <b class='flag-5'>PCI</b>到<b class='flag-5'>PCI</b><b class='flag-5'>橋</b>數(shù)據(jù)表

    DS50PCI401 2.5 Gbps/5.0 Gbps 4通道PCI Express中繼器數(shù)據(jù)表

    電子發(fā)燒友網(wǎng)站提供《DS50PCI401 2.5 Gbps/5.0 Gbps 4通道PCI Express中繼器數(shù)據(jù)表.pdf》資料免費(fèi)下載
    發(fā)表于 07-05 09:39 ?0次下載
    DS50<b class='flag-5'>PCI</b>401 2.5 Gbps/5.0 Gbps 4通道<b class='flag-5'>PCI</b> <b class='flag-5'>Express</b>中繼器數(shù)據(jù)表

    DS50PCI402 2.5 Gbps/5.0 Gbps 4通道PCI Express中繼器數(shù)據(jù)表

    電子發(fā)燒友網(wǎng)站提供《DS50PCI402 2.5 Gbps/5.0 Gbps 4通道PCI Express中繼器數(shù)據(jù)表.pdf》資料免費(fèi)下載
    發(fā)表于 07-05 09:30 ?0次下載
    DS50<b class='flag-5'>PCI</b>402 2.5 Gbps/5.0 Gbps 4通道<b class='flag-5'>PCI</b> <b class='flag-5'>Express</b>中繼器數(shù)據(jù)表

    PCIPCIPCI2050B數(shù)據(jù)表

    電子發(fā)燒友網(wǎng)站提供《PCIPCIPCI2050B數(shù)據(jù)表.pdf》資料免費(fèi)下載
    發(fā)表于 07-03 09:34 ?0次下載
    <b class='flag-5'>PCI</b>到<b class='flag-5'>PCI</b><b class='flag-5'>橋</b><b class='flag-5'>PCI</b>2050B數(shù)據(jù)表

    XIO2001 PCI ExpressPCI總線轉(zhuǎn)換橋接器數(shù)據(jù)表

    電子發(fā)燒友網(wǎng)站提供《XIO2001 PCI ExpressPCI總線轉(zhuǎn)換橋接器數(shù)據(jù)表.pdf》資料免費(fèi)下載
    發(fā)表于 06-19 14:17 ?0次下載
    XIO2001 <b class='flag-5'>PCI</b> <b class='flag-5'>Express</b>至<b class='flag-5'>PCI</b>總線轉(zhuǎn)換橋接器數(shù)據(jù)表

    Teledyne LeCroy擴(kuò)展CrossSync PHY技術(shù)到PCI Express 6.0

    Teledyne LeCroy 宣布擴(kuò)展其CrossSync PHY 技術(shù),以支持 PCI Express 6.0 規(guī)范。
    的頭像 發(fā)表于 02-23 14:39 ?469次閱讀

    PCI EXPRESS卡機(jī)電規(guī)范

    電子發(fā)燒友網(wǎng)站提供《PCI EXPRESS卡機(jī)電規(guī)范.pdf》資料免費(fèi)下載
    發(fā)表于 12-28 09:33 ?0次下載

    PCI-Express總線接口的布線規(guī)則

    PCI-Express總線接口的布線規(guī)則
    的頭像 發(fā)表于 11-29 15:49 ?996次閱讀
    <b class='flag-5'>PCI-Express</b>總線接口的布線規(guī)則