精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

采用Flow Control機制的PCIe總線

SwM2_ChinaAET ? 來源:未知 ? 作者:李倩 ? 2018-04-26 08:54 ? 次閱讀

PCIe總線設計之初,主要是針對于音頻視頻傳輸等這些對時間要求特別敏感的應用的。為了保證這些特殊應用的數據包能夠得到優先發送,PCIe Spec中為每一個包都分配了一個優先級,通過TLP的Header中的3位(即TC,Traffic Class)。

如下圖所示:

TC值越大,表示優先級越高,對應的包也就會得到優先發送。一般來說,支持QoS(Quality of Service)的PCIe總線系統,對于每一個TC值都會有一個獨立Virtual Channel(VC)與之對應。這個Virtual Channel實際上就是一個Buffer,用于緩存數據包。

注:當然也有那些只有一個VC Buffer的,此時不管包的TC值如何,都只能緩存在同一個VC Buffer中,自然也就沒有辦法保證按優先級傳輸了。這樣的PCIe設備稱之為不支持QoS的PCIe設備。

一個簡單的QoS的例子如下圖所示:

圖中左下角的Endpoint(即Isochronous Traffic)的優先級比右邊的Endpoint(即Ordinary Traffic)的優先級要高。因此,在Switch中,來自左邊的Endpoint的包會得到優先傳輸。而Switch的這種判決操作叫做端口仲裁(Port Arbitration)。

默認情況下,VC Buffer中的數據包是按照包達到的時間順序,依次放入VC Buffer中的。但是也并不是總是這樣,PCIe總線繼承了PCI/PCI-X總線關于Transaction-Ordering和Relaxed-Ordering的架構,但也只是針對相同的TC值才有效。關于Transaction-Ordering和Relaxed-Ordering,大家可以去參考PCI-X的Spec,這里不再詳細地介紹。

對于大部分的串行傳輸協議而言,發送方能夠有效地將數據發送至接收方的前提是,接收方有足夠的接收Buffer來接收數據。在PCI總線中,發送方在發送前并不知道接收法是否有足夠的Buffer來接收數據(即接收方是否就緒),因此經常需要一些Disconnects和Retries的操作,這將會嚴重地影響到總線的傳輸效率(性能)。

PCIe總線為了解決這一問題,提出了Flow Control的概念,如下圖所示。PCIe總線中要求接收方必須經常(在特定時間)向發送方報告其VC Buffer的使用情況。而報告的方式是,接收方向發送方發送Flow Control的DLLP(數據鏈路層包),且這種DLLP的收發是由硬件層面上自動完成的,并不需要人為的干預。需要注意的是,雖然這一操作旨在數據鏈路層之間進行,但是這些VC Buffer的使用情況對于應用層(軟件層)也是可見的。

采用Flow Control機制的PCIe總線,相對于PCI總線獲得了更高的總線利用率。雖然增加了Flow Control DLLP,但是這些DLLP對帶寬的占用極小,幾乎對總線利用率沒有什么影響。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 總線
    +關注

    關注

    10

    文章

    2866

    瀏覽量

    87984
  • PCIe
    +關注

    關注

    15

    文章

    1217

    瀏覽量

    82437

原文標題:【博文連載】PCIe掃盲——PCIe總線事務層入門(三)

文章出處:【微信號:ChinaAET,微信公眾號:電子技術應用ChinaAET】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    PCIE總線基本資料

    本帖最后由 eehome 于 2013-1-5 10:11 編輯 PCIE總線基本資料
    發表于 08-06 10:47

    PCIE總線的FPGA設計方法

    `PCIE總線的FPGA設計方法`
    發表于 10-30 14:30

    PCIe總線的復位方式是什么?

    PCIe總線規定了兩個復位方式:conventional Reset和FLR(FunctionLevel Reset),而Conventional Reset由進一步分為兩大類:Fundamental Reset和Non-Fundamental Reset。
    發表于 10-16 08:19

    PCIe總線和PCI總線有哪些不同之處呢

    PCIe是什么?PCIe的架構是由哪些部分組成的?PCIe總線和PCI總線有哪些不同之處呢?
    發表于 10-26 08:10

    PCIe總線的通信機制

    那么為什么要分為Non-Posted和Posted兩種類型呢?對于Memory Writes來說,對效率要求較高,因此采用了Posted的方式。但是這并不意味著Posted類型的操作不需要Completer進行應答,只是此時Completer采用了另一種應答
    的頭像 發表于 04-24 09:41 ?1.2w次閱讀
    <b class='flag-5'>PCIe</b><b class='flag-5'>總線</b>的通信<b class='flag-5'>機制</b>

    PCIe總線必須要先完成Flow Control初始化

    由于VC0是默認使能的,所以當Flow Control初始化開始時,其會被自動的初始化。其他的Virtual Channel是可選的,只有當被配置為使能的時候才會被初始化。
    的頭像 發表于 05-24 09:18 ?7891次閱讀
    <b class='flag-5'>PCIe</b><b class='flag-5'>總線</b>必須要先完成<b class='flag-5'>Flow</b> <b class='flag-5'>Control</b>初始化

    Flow Control機制可以顯著地提高總線的傳輸效率

    收這個TLP。當PCIe設備支持多個VC(Virtual Channel)時,Flow Control機制可以顯著地提高總線的傳輸效率。
    的頭像 發表于 05-24 09:26 ?7114次閱讀
    <b class='flag-5'>Flow</b> <b class='flag-5'>Control</b><b class='flag-5'>機制</b>可以顯著地提高<b class='flag-5'>總線</b>的傳輸效率

    PCIe掃盲—PCIe錯誤檢測機制的詳細資料概述

    PCIe總線錯誤檢測囊括了鏈路(Link)上的錯誤以及包傳遞過程中的錯誤,如下圖所示。用戶設計的應用程序層中的錯誤不屬于鏈路傳輸中的錯誤,不應當通過PCIe的錯誤檢測與處理機制處理,一
    的頭像 發表于 08-18 11:05 ?1.5w次閱讀

    PCIe總線的熱插拔機制

    當然,熱插拔不僅僅是硬件的事,其需要軟硬件協同實現。要想實現熱插拔功能,操作系統、主板熱插拔驅動器、PCIe卡設備驅動以及PCIe卡硬件功能都必須支持熱插拔,缺一不可。從PCIe卡設備硬件功能的角度來看,其需要支持Quiesce
    的頭像 發表于 09-06 09:20 ?2w次閱讀

    PCIe錯誤報告的兩種機制詳解

    機制PCIe設備必需支持的一種錯誤報告機制,同時設備會定義最小的錯誤報告請求。應該是通過配置Device Control和Command寄存器做到通知其他設備產生了錯誤的一種
    的頭像 發表于 10-23 11:14 ?2.5w次閱讀
    <b class='flag-5'>PCIe</b>錯誤報告的兩種<b class='flag-5'>機制</b>詳解

    全面介紹PCIe總線的基礎知識

    全面介紹PCIe總線的基礎知識
    發表于 12-14 11:49 ?0次下載

    PCIe 9110IM PCIe總線轉CAN設備手冊

    電子發燒友網站提供《PCIe 9110IM PCIe總線轉CAN設備手冊.pdf》資料免費下載
    發表于 10-17 10:59 ?1次下載
    <b class='flag-5'>PCIe</b> 9110IM <b class='flag-5'>PCIe</b><b class='flag-5'>總線</b>轉CAN設備手冊

    CET為何而生?CET安全防御機制解析

    CET(Control-flow Enforcement Technology)機制是 Intel提出基于硬件的?于緩解 ROP/JOP/COP的新技術。特別強調下,他是基于硬件?持的解決?案。
    的頭像 發表于 11-25 09:09 ?1418次閱讀

    扒一扒PCIe中的Flow Control

    在處理TLP報文時,根據Fmt字段以及Type字段可以將TLP報文分為二十多種,當TLP報文送至數據鏈路層時,數據鏈路層在進行流量控制處理時則不會考慮這么多種情況。數據鏈路層里面的Flow Control,則會將報文分為三類:
    的頭像 發表于 07-03 09:20 ?2280次閱讀
    扒一扒<b class='flag-5'>PCIe</b>中的<b class='flag-5'>Flow</b> <b class='flag-5'>Control</b>

    PCIe熱插拔機制介紹

    。 為了防止意外的發生,PCIe Spec設計了一種“No Surprise”熱插拔機制,即,當用戶要插拔PCIe設備時,必須先通知系統軟件做好準備,然后通過指示燈告知用戶熱插拔的狀態。 二、原理詳解 2.1 熱插拔原理總結
    的頭像 發表于 11-20 09:07 ?130次閱讀
    <b class='flag-5'>PCIe</b>熱插拔<b class='flag-5'>機制</b>介紹