国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

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

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

3天內不再提示

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

SwM2_ChinaAET ? 來源:未知 ? 作者:李倩 ? 2018-05-24 09:18 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

在任何事務層包(TLP)發送之前,PCIe總線必須要先完成Flow Control初始化。當物理層完成鏈路初始化后,便會將LinkUp信號變為有效,告知數據鏈路層可以開始Flow Control初始化了。

如下圖所示:

注:由于VC0是默認使能的,所以當Flow Control初始化開始時,其會被自動的初始化。其他的Virtual Channel是可選的,只有當被配置為使能的時候才會被初始化。

Flow Control初始化被分為兩個步驟,FC_Init1和FC_Init2,其在整個數據鏈路控制和管理狀態機(Data Link Control & Management State Machine)的位置如下圖所示:

在FC_Init1步驟中,PCIe設備會連續地發送三個InitFC1類型的Flow Control DLLP來報告其接收Buffer 的大小。三個DLLP的順序是固定的:Posted、Non-Posted然后是Completions。如下圖所示:

FC_Init2與FC-Init1類似,同樣是連續的發送三個InitFC2類型的DLLP,當完成后,DLCMSM(上一篇文章中提到的狀態機)會切換到DL_Active狀態,表明數據鏈路層初始化完成。

注:可能有人會有疑惑了,FC_Init1和FC_Init2干的活不是差不多嘛,為什么還需要FC_Init2呢?原因是,不同的設備完成FC_Init1的時間可能是不同的,增加FC_Init2是為了保證每個設備都能收到FC初始化DLLP。

FC_Init DLLP的格式如下圖所示:

在完成FC初始化之后,相鄰的兩個設備之間會周期性的通過Updated FC DLLP更新接收Buffer的大小。如下圖所示:

Update FC DLLP的格式與FC_Init的格式是類似的,具體如下:

前面說到。Update FC DLLP是周期性發送的,周期的值可以通過以下公式計算得:

具體可以參考PCIe的Spec,這里不再詳細介紹,下面給出Gen1和Gen2的周期表格(根據公式計算的結果)。其中AF為AckFactor。

注:Mindshare的書中,為了便于理解,把AckFactor一詞修改為UpdateFactor,實際上指的是同一個東西。

Gen1 (2.5GT/s)如下表所示:

Gen2(5GT/s)如下表所示:

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

    關注

    10

    文章

    3040

    瀏覽量

    91657
  • PCIe
    +關注

    關注

    16

    文章

    1460

    瀏覽量

    88393
  • 數據鏈路層
    +關注

    關注

    0

    文章

    63

    瀏覽量

    12408

原文標題:【博文連載】PCIe掃盲——Flow Control基礎(二)

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

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    RT-Thread自動初始化詳解

    我們知道,在寫裸機程序時,當我們完成硬件初始化后,就需要在主函數中進行調用。當我們使用RT-Thread后,完全不需要這樣做了,我們可以將硬件等自動初始化。 RT-Thread?自動初始化
    的頭像 發表于 06-25 21:38 ?1.3w次閱讀
    RT-Thread自動<b class='flag-5'>初始化</b>詳解

    NVMe高速傳輸之擺脫XDMA設計之七:系統初始化

    路訓練由 PCIE 集成塊實現, 初始化模塊根據鏈路訓練完成信號和初始化啟動信號來執行 PCIe 初始化
    發表于 07-04 09:14

    NVMe高速傳輸之擺脫XDMA設計之八:PCIe初始化狀態機設計

    PCIe配置初始化狀態機實現PCIe設備枚舉和配置空間初始化過程,在完成鏈路訓練后,使用DFS(深度優先搜索)算法枚舉
    發表于 07-05 22:00

    NVMe高速傳輸之擺脫XDMA設計34:初始化功能驗證與分析2

    本文主要交流NVMe設計思路,在本博客已給出相關博文幾十篇,希望對初學者有用。注意這里只是拋磚引玉,切莫認為參考這就可以完成商用IP設計。 2) PCIe 初始化功能測試結果 PCIe
    發表于 10-09 11:31

    CAN總線初始化

    1、CAN總線初始化void can_init(void){CAN_InitTypeDefCAN_InitStructure
    發表于 08-19 07:17

    FPGA的ROM初始化問題討論

    本文討論FPGA的ROM初始化問題,詳細介紹mit文件的創建與使用。利用FPGA實現的ROM只能認為器件處于用戶狀態時具備ROM功能。使用時不必要刻意劃分,而ROM單元的初始化則是設計人員必須
    發表于 02-08 14:24 ?5905次閱讀
    FPGA的ROM<b class='flag-5'>初始化</b>問題討論

    RDA1846S初始化設置

    RDA1846S初始化設置RDA1846S初始化設置RDA1846S初始化設置
    發表于 01-15 17:08 ?0次下載

    CAN總線控制器SJA1000的初始化程序設計

    CAN總線控制器SJA1000的初始化程序設計。
    發表于 05-06 11:29 ?12次下載

    采用Flow Control機制的PCIe總線

    PCIe總線為了解決這一問題,提出了Flow Control的概念,如下圖所示。PCIe總線中要
    的頭像 發表于 04-26 08:54 ?6967次閱讀
    采用<b class='flag-5'>Flow</b> <b class='flag-5'>Control</b>機制的<b class='flag-5'>PCIe</b><b class='flag-5'>總線</b>

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

    PCIe Spec規定,PCIe設備的每一個端口(Ports)都必須支持Flow Control機制,在發送TLP之前,
    的頭像 發表于 05-24 09:26 ?7964次閱讀
    <b class='flag-5'>Flow</b> <b class='flag-5'>Control</b>機制可以顯著地提高<b class='flag-5'>總線</b>的傳輸效率

    PCIe總線中的鏈路初始化與訓練

    前面的文章中介紹過,PCIe收發的都是差分信號,有的時候Link兩端的設備的對應信號的極性可能是相反的。因此,PCIe Spec允許在鏈路訓練與初始化的時候,對其進行調整,如下圖所示。和通道位置翻轉
    的頭像 發表于 06-05 09:06 ?1.2w次閱讀
    <b class='flag-5'>PCIe</b><b class='flag-5'>總線</b>中的鏈路<b class='flag-5'>初始化</b>與訓練

    IIC總線初始化基本驅動參考程序應用代碼免費下載

    本文檔的主要內容詳細介紹的是IIC總線初始化基本驅動參考程序應用代碼免費下載。程序功能:為IIC總線的基本驅動程序(此程序沒有寫主函數,只是一些IIC必備的子函數)
    發表于 01-16 08:00 ?5次下載
    IIC<b class='flag-5'>總線</b><b class='flag-5'>初始化</b>基本驅動參考程序應用代碼免費下載

    GraniStudio:初始化例程

    1.文件運行 導入工程 雙擊運行桌面GraniStudio.exe。 通過引導界面導入初始化例程,點擊導入按鈕。 打開初始化例程所在路徑,選中初始化.gsp文件,點擊打開,完成導入。
    的頭像 發表于 08-22 16:45 ?891次閱讀
    GraniStudio:<b class='flag-5'>初始化</b>例程

    EtherCAT總線初始化步驟

    EtherCAT(Ethernet for Control Automation Technology)是一種高性能的工業以太網通信協議,廣泛應用于工業自動領域。其初始化過程是確保系統穩定運行
    的頭像 發表于 12-22 10:10 ?575次閱讀
    EtherCAT<b class='flag-5'>總線</b><b class='flag-5'>初始化</b>步驟

    PC強實時運動控制(一):C#的EtherCAT總線初始化(下)

    通過使用配置工具導出ZAR文件進行EtherCAT總線初始化
    的頭像 發表于 02-05 10:00 ?918次閱讀
    PC強實時運動控制(一):C#的EtherCAT<b class='flag-5'>總線</b><b class='flag-5'>初始化</b>(下)