亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        PCI-Express 總線傳輸效率提升的技術(shù)分析*

        2022-06-07 08:56:32潘金龍李德建王于波董長(zhǎng)征馮文楠
        電子技術(shù)應(yīng)用 2022年5期
        關(guān)鍵詞:鏈路層接收端存儲(chǔ)器

        潘金龍,李德建,王于波,馮 曦,董長(zhǎng)征,馮文楠

        (北京智芯微電子科技有限公司,北京 100192)

        0 引言

        隨著現(xiàn)代處理器技術(shù)的飛速發(fā)展,使用高速差分總線替代并行總線的應(yīng)用場(chǎng)景越來(lái)越多。與單端信號(hào)相比,高速差分信號(hào)可以使用更高的時(shí)鐘頻率,使用更少的信號(hào)線,完成之前需要很多單端并行數(shù)據(jù)信號(hào)才能達(dá)到的總線帶寬[1]。如何高效地利用總線帶寬,通過(guò)何種配置達(dá)到最優(yōu)應(yīng)用,給設(shè)計(jì)者帶來(lái)了挑戰(zhàn)。

        1 總線概述

        PCI-Express(Peripheral Component Interconnect Express)是一種高速串行計(jì)算機(jī)擴(kuò)展總線標(biāo)準(zhǔn),簡(jiǎn)稱PCIe。PCIe屬于高速串行點(diǎn)對(duì)點(diǎn)雙通道高帶寬傳輸,互聯(lián)設(shè)備之間獨(dú)立傳輸,主要有主動(dòng)電源管理、錯(cuò)誤報(bào)告、端對(duì)端的可靠性傳輸、熱插拔以及服務(wù)質(zhì)量等功能。PCIe 是一種分層協(xié)議,由傳輸層、數(shù)據(jù)鏈路層和物理層組成[1-3],層級(jí)結(jié)構(gòu)如圖1 所示[4-5]。PCIe A 設(shè)備與B 設(shè)備之間通過(guò)發(fā)送端與接收端進(jìn)行互聯(lián)。

        圖1 PCIe 層級(jí)結(jié)構(gòu)圖

        2 傳輸效率影響因素分析

        數(shù)據(jù)在PCIe 總線各層級(jí)傳輸所產(chǎn)生的開銷主要在以下幾個(gè)方面。

        2.1 數(shù)據(jù)編碼開銷

        數(shù)據(jù)編碼開銷主要是PCIe 的物理層產(chǎn)生的,GEN(generation)1/2使用8b/10b編碼,GEN3/4/5使用128b/130b 編碼,編碼的目的是保持直流平衡(DC balance)[6-7]。

        PCIe 各版本傳輸速率如表1 所示(Xn 表示存在n 條物理鏈路,例如X4 表示存在4 條物理鏈路)。

        表1 PCIe 傳輸速率

        例如 PCIe 1.0 使用8b/10b 編碼方案,導(dǎo)致占用了20%(2/10)的原始信道帶寬。那么PCIe 1.0 實(shí)際上單通道的有效帶寬就是2.5 Gb/s×80%/8=250 MB/s。

        2.2 TLP(Transaction Layer Packet)開銷

        PCIe 報(bào)文為分層封裝協(xié)議的報(bào)文。數(shù)據(jù)報(bào)文在Device A 產(chǎn)生之后,在事務(wù)層(Transaction Layer) 報(bào)文由數(shù)據(jù)頭(Header)、報(bào)文凈荷(Payload)、端到端的CRC(ECRC)組成,經(jīng)過(guò)數(shù)據(jù)鏈路層(Data Link Layer)后增加序列號(hào)(Sequence Number)、鏈路層CRC(LCRC)、開始(Start)、結(jié)束(End)數(shù)據(jù)塊,然后通過(guò)物理層(Physical Layer)發(fā)出[8-9]。PCIe Gen1/2報(bào)文格式如圖2所示[2],PCIe Gen3/4/5/報(bào)文格式如圖3 所示[2]。

        圖2 PCIe Gen1/2 報(bào)文格式

        圖3 PCIe Gen3/4/5 報(bào)文格式

        PCIe Gen3/4/5 的報(bào)文結(jié)構(gòu)開始(Start)標(biāo)識(shí)是4 B,且沒(méi)有結(jié)束(End)標(biāo)識(shí),這是與Gen1/2 報(bào)文結(jié)構(gòu)上的區(qū)別。

        在TLP 傳輸過(guò)程中,相關(guān)的報(bào)文標(biāo)識(shí)就增加了20~30B的開銷[10-11]。

        2.3 控制報(bào)文開銷

        控制報(bào)文來(lái)自于數(shù)據(jù)鏈路層,報(bào)文長(zhǎng)度為6 B,主要功能是保證來(lái)自事務(wù)層的TLP 在PCIe 鏈路中正確傳遞。報(bào)文的類型主要有應(yīng)答Ack(Acknowledge)、非應(yīng)答Nak(No acknowledge)、功耗管理PM(Power Manage)、流控FC(Flow Control)等[12]。

        2.3.1 Ack與Nak報(bào)文開銷

        發(fā)送端發(fā)出TLP 報(bào)文之后,需要接收端回應(yīng)Ack 或者Nak 報(bào)文,來(lái)確認(rèn)發(fā)送的TLP 是否被成功接收。發(fā)送端在發(fā)送TLP 的同時(shí)需要將TLP 復(fù)制一份保存在TLP retry buffer(TLP 重傳緩存)中,直到收到Ack 即表示成功接收的回應(yīng)[13-14]。如果收到了Nak 則表示未成功接收的回應(yīng),需要將存儲(chǔ)在TLP retry buffer 中的TLP 再次發(fā)送,直到被正確接收。Ack 不需要與TLP 一一對(duì)應(yīng),可以設(shè)置一個(gè)計(jì)數(shù)器N,發(fā)送N 個(gè)TLP 之后,接收端回應(yīng)一個(gè)Ack。接收端會(huì)對(duì)報(bào)文進(jìn)行錯(cuò)誤檢查(Error Check),如果查詢到接收的報(bào)文序號(hào)不正確或有其他的錯(cuò)誤,則回應(yīng)一個(gè)Nak,發(fā)送端將會(huì)重新發(fā)送TLP。數(shù)據(jù)傳輸結(jié)構(gòu)如圖4 所示[1]。

        圖4 PCIe 數(shù)據(jù)鏈路層傳輸結(jié)構(gòu)示意圖

        2.3.2 PM 報(bào)文開銷

        PCIe 設(shè)備進(jìn)入L0 狀態(tài) (PCIe 設(shè)備的正常工作狀態(tài))后,物理層為了解決接收時(shí)鐘與本地時(shí)鐘之間漂移所帶來(lái)的頻差問(wèn)題,每一個(gè)鏈路(Lane)需要在傳輸1 180~1 538個(gè)字符后發(fā)送一個(gè)SKP(PCIe 鏈路層傳輸?shù)囊环N報(bào)文)請(qǐng)求來(lái)進(jìn)行時(shí)鐘補(bǔ)償,在TLP 的傳輸過(guò)程中不會(huì)插入時(shí)鐘補(bǔ)償[1]。

        2.3.3 流量控制報(bào)文開銷

        流量控制的主要作用是在發(fā)送端和接收端進(jìn)行數(shù)據(jù)傳遞時(shí),通過(guò)FC 報(bào)文傳遞本端存儲(chǔ)空間的使用狀態(tài),避免因?yàn)榻邮斩司彌_區(qū)由于存儲(chǔ)空間不足導(dǎo)致丟棄來(lái)自發(fā)送端的數(shù)據(jù)。如果FC 報(bào)文沒(méi)有及時(shí)發(fā)送,會(huì)導(dǎo)致本地存儲(chǔ)空間不夠而丟棄報(bào)文,反之FC 報(bào)文發(fā)送太過(guò)頻繁,就會(huì)導(dǎo)致PCIe 傳輸?shù)男阅芟陆?,帶寬利用率低[1]。

        2.4 系統(tǒng)參數(shù)對(duì)傳輸效率的影響

        系統(tǒng)配置參數(shù)如下:

        有效負(fù)載最大值:MPS(Maximum Payload Size)。PCIe設(shè)備所傳送所有類型報(bào)文的數(shù)據(jù)大小不能超過(guò)MPS。MPS支持的大小有6種:128B、256 B、512 B、1 024 B、2 048 B、4 096 B。當(dāng)PCIe 設(shè)備所傳送的數(shù)據(jù)大小超過(guò)MPS 參數(shù)時(shí),數(shù)據(jù)將被分割為多個(gè)TLP 進(jìn)行發(fā)送了。

        最大讀請(qǐng)求數(shù)據(jù):MRRS(Maximum Read Request Szie),PCIe 設(shè)備一次能從目標(biāo)設(shè)備讀取的最大數(shù)據(jù),如果一次存儲(chǔ)器讀操作需要讀取的數(shù)據(jù)范圍大于MRRS 時(shí),該P(yáng)CIe 設(shè)備需要向目標(biāo)設(shè)備發(fā)送多個(gè)存儲(chǔ)器讀操作。MRRS 的大小同樣有6 種:128 B、256 B、512 B、1 024 B、2 048 B、4 096 B。

        RCB(Read Completion Boundary):RCB 可配置為64 B或者128 B,RCB 的大小與完成報(bào)文的有效負(fù)載相關(guān)。在PCIe 總線中,一個(gè)存儲(chǔ)器讀請(qǐng)求TLP 可能收到目標(biāo)設(shè)備發(fā)出的多個(gè)讀完成報(bào)文后,才能完成一次存儲(chǔ)器讀操作[15-16]。

        3 傳輸效率計(jì)算

        報(bào)文在PCIe 總線傳輸過(guò)程中,實(shí)際的有效帶寬和物理帶寬之間的關(guān)系是如何呈現(xiàn)的?下面以存儲(chǔ)器寫請(qǐng)求TLP 和存儲(chǔ)器讀請(qǐng)求TLP 傳輸為例來(lái)分析PCIe 總線的性能。

        3.1 存儲(chǔ)器寫請(qǐng)求TLP

        (1)應(yīng)用場(chǎng)景

        ①PCIe 物理層為Gen2,2Lane;

        ②發(fā)送的報(bào)文數(shù)目Num 為200 個(gè),每個(gè)報(bào)文的長(zhǎng)度和MPS 相同;

        ③MPS 設(shè)置為1 024 B;

        ④Ack 功能配置為傳輸10 個(gè)TLP 報(bào)文回復(fù)1 個(gè)Ack;

        ⑤FC 功能配置為傳輸5 個(gè)報(bào)文回復(fù)1 個(gè)FC;

        ⑥傳輸層數(shù)據(jù)的報(bào)文頭為4DW,再加上其他開銷共計(jì)28 B。

        (2)帶寬計(jì)算

        ①需要傳遞的報(bào)文總長(zhǎng)度:200×1 024=204 800 B。

        ②實(shí)際傳遞的報(bào)文總長(zhǎng)度

        不含有PM 報(bào)文開銷的長(zhǎng)度:(1 024+28)×200+(6+2)×200/10+(6+2)×200/20=210 640 B。

        PM 報(bào)文開銷,定義1 200 bit 插入1 個(gè)PM 報(bào)文。210 640×8/1 200=1 404 個(gè),注意在TLP 每個(gè)報(bào)文發(fā)送過(guò)程中不能插入PM 報(bào)文,所以在TLP 發(fā)送間隔時(shí)會(huì)插入多個(gè)PM 報(bào)文。

        總傳遞報(bào)文長(zhǎng)度為:210 640+1 404×(6+2)=221 872 B。

        ③有效帶寬

        需要傳遞的報(bào)文總長(zhǎng)度/總傳遞報(bào)文長(zhǎng)度=204 800/221 872=92.31%。

        PCIe Gen2 的物理有效帶寬為80%,所以最終2 個(gè)Lane 的傳輸性能為:92.31%×0.8=73.84%,帶寬為5 Gb/s×2×73.84%=7.384 Gb/s,即10 Gb/s 的物理傳輸通道有效帶寬為7.384 Gb/s。

        (3)導(dǎo)出公式

        根據(jù)以上計(jì)算結(jié)果,可以推到出如下公式:

        (4)延伸拓展

        報(bào)文在總線傳輸過(guò)程中,配置都是固化好的,通過(guò)對(duì)有效帶寬的計(jì)算公式可以看出在報(bào)文實(shí)際傳輸?shù)倪^(guò)程中,報(bào)文的有效數(shù)據(jù)長(zhǎng)度和MPS 參數(shù)越接近越好,這樣可以減少傳輸?shù)拇螖?shù)。另外MPS 參數(shù)的值越大,有效帶寬就越高。將MPS 參數(shù)設(shè)置為128 B、256 B、512 B、1 024 B、2 048 B、4 096 B,TLP報(bào)文的有效數(shù)據(jù)長(zhǎng)度同MPS參數(shù),存儲(chǔ)器寫請(qǐng)求TLP 的不同MPS 配置的帶寬效率結(jié)果如表2 所示。

        表2 不同MPS 配置帶寬效率表

        從計(jì)算結(jié)果來(lái)看,隨著MPS 的增大,帶寬有效利用率在提高,但是增加幅度在變小。

        (5)其他說(shuō)明

        在上面第4 點(diǎn)中對(duì)帶寬的利用率做了表格的描述,但是實(shí)際上還應(yīng)該算上PCIe Gen2 物理帶寬8b/10b 解碼的開銷,即實(shí)際的帶寬效率還應(yīng)在上面計(jì)算的基礎(chǔ)上乘以0.8 才是最終的帶寬效率。

        3.2 存儲(chǔ)器讀請(qǐng)求TLP

        (1)應(yīng)用場(chǎng)景

        ①PCIe 物理層為Gen2,2Lane;

        ②發(fā)送的報(bào)文數(shù)目Num 為200 個(gè);

        ③MRRS 設(shè)置為1 024 B;

        ④Ack 功能配置為傳輸10 個(gè)TLP 報(bào)文回復(fù)1 個(gè)Ack;

        ⑤FC 功能配置為傳輸5 個(gè)報(bào)文回復(fù)1 個(gè)FC;

        ⑥傳輸層數(shù)據(jù)的報(bào)文頭為4DW,再加上其他開銷共計(jì)28 B;

        ⑦RCB 設(shè)置為64 B。

        (2)帶寬計(jì)算

        ①需要傳遞的報(bào)文總長(zhǎng)度:200×1 024=204 800 B。

        ②實(shí)際傳遞的報(bào)文總長(zhǎng)度

        每個(gè)存儲(chǔ)器讀請(qǐng)求TLP 需要傳輸?shù)拇螖?shù):MRRS/RCB=1 024 B/64 B=16,即需要返回16 個(gè)TLP 讀完成報(bào)文才能將此次讀的數(shù)據(jù)全部獲取。

        不含有PM 報(bào)文開銷的長(zhǎng)度:(1 024+28×16)×200+(6+2)×200/10+(6+2)×200/20=294 640 B。

        PM 報(bào)文開銷,定義1 200 bit 插入1 個(gè)PM 報(bào)文。210 640×8/1 200=2 個(gè),注意在TLP 每個(gè)報(bào)文發(fā)送過(guò)程中不能插入PM 報(bào)文,所以在TLP 發(fā)送間隔時(shí)會(huì)插入多個(gè)PM 報(bào)文。

        總傳遞報(bào)文長(zhǎng)度為:294 640+1 964×(6+2)=310 354 B。

        ③有效帶寬

        需要傳遞的報(bào)文總長(zhǎng)度/總傳遞報(bào)文長(zhǎng)度=204 800/310 354=65.99%。

        PCIe Gen2 的物理有效帶寬為80%,所以最終的2 個(gè)Lane 的傳輸性能為:65.99%×0.8=52.79%,帶寬為5 Gb/s×2×52.79%=5.279 Gb/s,即10 Gb/s 的物理傳輸通道,有效帶寬為5.279 Gb/s。

        (3)導(dǎo)出公式

        根據(jù)以上計(jì)算結(jié)果,可以推到出如下公式:

        (4)延伸拓展

        將MRRS 參數(shù)設(shè)置為128 B、256 B、512 B、1 024 B、2 048 B、4 096 B,存儲(chǔ)器讀請(qǐng)求TLP 的不同MRRS 帶寬效率如表3 所示。

        表3 不同MRRS(RCB/64 B)配置帶寬效率結(jié)果

        從計(jì)算結(jié)果來(lái)看,隨著MRRS 的增大,帶寬有效利用率并沒(méi)有顯著提高,基本上沒(méi)有明顯的變動(dòng)。將RCB的參數(shù)由64 B 修改為128 B 的結(jié)果如表4 所示。

        對(duì)比表3 和表4,相同的MRRS 配置,RCB 的值由64 B 變成了128 B,帶寬有效利用率有了明顯的提升。例如MRRS 配置為128 B,RCB 配置為64 B,帶寬有效率是65.62%;而當(dāng)RCB 配置為128 B,帶寬有效率是77.30%,帶寬提升了12.04%。

        表4 不同MRRS(RCB/128 B)配置帶寬效率結(jié)果

        (5)其他說(shuō)明

        與存儲(chǔ)器寫請(qǐng)求TLP 相同,存儲(chǔ)器讀請(qǐng)求TLP 的實(shí)際帶寬也需要考慮PCIe Gen2 物理傳輸通道編解碼的開銷。

        4 結(jié)論

        本文介紹了PCIe 總線的基本結(jié)構(gòu),列舉了影響PCIe總線傳輸效率的多種原因,從實(shí)際應(yīng)用中進(jìn)行舉例說(shuō)明并計(jì)算。當(dāng)然上面存儲(chǔ)器寫請(qǐng)求與存儲(chǔ)器讀請(qǐng)求的帶寬有效利用率的計(jì)算只是粗略的估算,報(bào)文在實(shí)際的發(fā)送與接收過(guò)程中會(huì)涉及軟件、硬件的配合處理與其他多種原因的影響,實(shí)際應(yīng)用中會(huì)比理論值要低一些。如何高效地應(yīng)用PCIe 總線,只有深入理解了總線傳輸?shù)脑?,才能通過(guò)合理、有效的配置提高傳輸效率。

        猜你喜歡
        鏈路層接收端存儲(chǔ)器
        網(wǎng)絡(luò)傳輸融合及網(wǎng)絡(luò)安全防控技術(shù)研究
        基于擾動(dòng)觀察法的光通信接收端優(yōu)化策略
        基于多空間內(nèi)存共享的數(shù)據(jù)鏈路層網(wǎng)絡(luò)包捕獲方法
        靜態(tài)隨機(jī)存儲(chǔ)器在軌自檢算法
        頂管接收端脫殼及混凝土澆筑關(guān)鍵技術(shù)
        一種設(shè)置在密閉結(jié)構(gòu)中的無(wú)線電能傳輸系統(tǒng)
        新能源科技(2021年6期)2021-04-02 22:43:34
        基于多接收線圈的無(wú)線電能傳輸系統(tǒng)優(yōu)化研究
        數(shù)據(jù)鏈路層的選擇重傳協(xié)議的優(yōu)化改進(jìn)
        IEEE 1394事務(wù)層接口的設(shè)計(jì)與實(shí)現(xiàn)
        存儲(chǔ)器——安格爾(墨西哥)▲
        精品国产乱码久久免费看| 99久久精品费精品国产一区二区 | 久久精品岛国av一区二区无码 | 国产中文字幕乱人伦在线观看| 国产不卡一区二区三区免费视 | 国产精品狼人久久久影院| 国产精品一区二区三区av在线 | 四虎影视免费永久在线观看| 亚洲午夜精品久久久久久一区| 日韩在线精品视频观看| 一本色道久久综合亚洲| 亚洲va久久久噜噜噜久久男同| 中国精品久久精品三级| 黑丝美女被内射在线观看| 国产成人综合精品一区二区| 国产熟女内射oooo| 成年女人永久免费看片| 人妻av一区二区三区高| 青青草视频在线观看网 | 成人做爰视频www| 日本a在线天堂| 亚洲av专区一区二区| 亚洲国产精品无码中文字| 亚洲 欧美 国产 日韩 精品| 国产V亚洲V天堂A无码| 亚洲日本一区二区三区四区| 免费人妻精品一区二区三区| 在线视频制服丝袜中文字幕| 精品人妻夜夜爽一区二区| 亚洲 欧美 偷自乱 图片| 在线观看午夜亚洲一区| 免费va国产高清不卡大片 | 内射无码专区久久亚洲| av资源在线看免费观看| 亚洲国产av综合一区| 狠狠的干性视频| jizz国产精品免费麻豆| 人妻尤物娇呻雪白丰挺| 日本孕妇潮喷高潮视频| 三上悠亚久久精品| 精品国产亚洲av麻豆尤物|