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

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

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

3天內不再提示

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

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

掃碼添加小助手

加入工程師交流群

PCIe總線中的鏈路初始化與訓練(Link Initialization & Training)是一種完全由硬件實現的功能,處于PCIe體系結構中的物理層。整個過程由鏈路訓練狀態機(Link Training and Status State Machine,LTSSM)自動完成,也就說基本沒有數據鏈路層和事務層啥事。

LTSSM在PCIe體系結構中的位置的示意圖如下:

在系統復位后,會自動進行鏈路訓練,以達成以下目標:位鎖定(Bit Lock)、字符鎖定(Symbol Lock,Gen1 & Gen2 Only)、塊鎖定(Block Lock,Gen3 Only)、確定鏈路寬度(Link Width)、通道位置翻轉(Lane Reversal)、信號極性翻轉(Polarity Inversion)、確定鏈路的數據率(Data Rate)和通道對齊(Lane-to-Lane De-skew)等功能。

下面依次的,簡要地介紹一下這些目標。

注:本次連載博文主要Gen2為主,所以一些和Gen3相關的內容只會簡單提及,并不會深入地介紹,有興趣的可以閱讀PCIe Spec V3.0或者Mindshare的相關書籍。

首先是

位鎖定(Bit Lock):

前面的文章中提到過,PCIe總線采用了一種嵌入式時鐘的機制,即發送端只向接收端發送數據信號,并不發送時鐘信號(時鐘信號影藏在數據信號中)。接收端可以通過CDR(Clock and Data Recovery)邏輯將時鐘從數據流中恢復出來,然后再用恢復出來的時鐘對數據信號進行采樣。當然,時鐘恢復需要一定的時間,才能保證時鐘信號與數據信號的相位對應關系符合要求。一旦CDR完成了時鐘的恢復,我們就說PCIe總線完成了位鎖定。

字符鎖定(Symbol Lock):

完成了位鎖定之后,只是能夠準確地識別出數據流中的0和1,還是不知道發送的內容是個啥。對于Gen1&Gen2來說,采用的8b/10b編碼,即傳輸的數據是以10bit為一個字符。LTSSM可以引導物理層相關邏輯通過識別COM字符(K28.5)來確定每個字符的開始與結束為止,即字符鎖定。

鏈路寬度(Link Width):

由于PCIe允許將x1的PCIe卡插入x4、x8甚至是x16的PCIe插槽中。因此在鏈路訓練與初始化過程中,相鄰的兩個PCIe設備需要相互通信來確定其支持的最大鏈路寬度。

注:實際上PCIe Spec還允許采用動態帶寬的機制,即允許鏈路寬度和數據率動態調整,以實現降低功耗等功能。

通道位置翻轉(Lane Reversal):

有的時候兩個PCIe設備的通道排列位置可能不太一致,PCIe Spec允許對默認的通道排列位置重新排列,如下圖所示。但是,從大部分的PCIe設備(PCIe卡和插槽等)都是按照統一的標準實現的,一般不會出現這種情況,因此這一功能是可選的。

信號極性翻轉(Polarity Inversion):

前面的文章中介紹過,PCIe收發的都是差分信號,有的時候Link兩端的設備的對應信號的極性可能是相反的。因此,PCIe Spec允許在鏈路訓練與初始化的時候,對其進行調整,如下圖所示。和通道位置翻轉(Lane Reversal)不一樣的是,信號極性翻轉(Polarity Inversion)并不是一個可選項,而是所有標準PCIe設備都應支持的。

鏈路的數據率(Data Rate):

系統剛復位的時候,鏈路訓練和初始化都是基于2.5G T/s的速率的。如果Link兩端的設備都支持更高的速率,則會自動進入Re-training狀態,以重新切換速率。

注:PCIe Spec規定,高速率的PCIe設備必須能夠向下兼容。即Gen2必須同時支持2.5G T/s和5G T/s。

通道對齊(Lane-to-Lane De-skew):

PCIe鏈路完成字符鎖定后,還需要進行通道對齊。因為有的通道的信號可能先到達,有的可能后到達。PCIe Spec規定PCIe鏈路應有能力對一定范圍了的Lane-to-Lane Skew進行移除,使得各個Lane上的信號是同步的。關于通道對齊,會在后續的博文中詳細地介紹。

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

    關注

    5198

    文章

    20442

    瀏覽量

    333967
  • 總線
    +關注

    關注

    10

    文章

    3040

    瀏覽量

    91657
  • PCIe
    +關注

    關注

    16

    文章

    1460

    瀏覽量

    88392

原文標題:【博文連載】PCIe掃盲——鏈路初始化與訓練基礎(一)

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

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

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

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

    直接采用PCIe實現NVMe功能,它的系統初始化流程主要分為訓練PCIe
    發表于 07-04 09:14

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

    PCIe配置初始化狀態機實現PCIe設備枚舉和配置空間初始化過程,在完成
    發表于 07-05 22:00

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

    信號置高, 表示訓練完成。 配置初始化控制寄存器(init_ctrl) 值為 1, 表示啟動PCIe
    發表于 10-08 08:02

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

    初始化功能的重要步驟之一, 這一過程PCIe 路上的所有設備進行枚舉和初始化配置。 對 PCI
    發表于 10-09 11:31

    NVMe高速傳輸之擺脫XDMA設計48: 核心測試內容

    初始化功能測試 系統在上電復位后, 首先由 PCIE 集成塊執行訓練
    發表于 11-18 07:52

    NVMe高速傳輸之擺脫XDMA設計49:主要功能測試結果與分析1

    。 此時初始化狀態 機(NoPHAE_init_state) 值為 1, 處于 PCIe 訓練狀態。 讀取地址為 0xA0000008,
    發表于 11-28 08:33

    SRIO重復初始化不通了

    專家好: 調試接口時經常會出現重新load程序的情況,發現如果SRIO雙方已經進行數據通信,重新加載程序進行SRIO初始化后,srio不通了,需要重新斷電重連,這樣調試起來比較浪費時間,請問有什么好的方法,可以節省調試時間
    發表于 01-07 11:15

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

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

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

    由于VC0是默認使能的,所以當Flow Control初始化開始時,其會被自動的初始化。其他的Virtual Channel是可選的,只有當被配置為使能的時候才會被初始化
    的頭像 發表于 05-24 09:18 ?8750次閱讀
    <b class='flag-5'>PCIe</b><b class='flag-5'>總線</b>必須要先完成Flow Control<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>基本驅動參考程序應用代碼免費下載

    神經網絡如何正確初始化?

    初始化訓練深度神經網絡的收斂性有重要影響。
    的頭像 發表于 05-17 16:32 ?8848次閱讀
    神經網絡如何正確<b class='flag-5'>初始化</b>?

    DDR4-初始化訓練和校準

    上電與初始化是由一系列精心設計的步驟組成的序列(sequence)。一般來說,在系統上電之后,ASIC/FPGA/處理器的 DDR 控制器會被從復位狀態釋放,自動執行上電與初始化
    的頭像 發表于 07-03 11:48 ?1.2w次閱讀
    DDR4-<b class='flag-5'>初始化</b>、<b class='flag-5'>訓練</b>和校準

    GraniStudio:初始化例程

    說明 通過初始化運控板卡算子連接格拉尼總線型運控卡,導入工程自動進行連接,此算子為使用運控控制板卡的第一項操作,后續運控算子需引用其輸出板卡對象才可使用。 3.異常處理 當手動執行初始化運控板卡算子出現錯誤時: 查看
    的頭像 發表于 08-22 16:45 ?891次閱讀
    GraniStudio:<b class='flag-5'>初始化</b>例程

    EtherCAT總線初始化步驟

    的關鍵環節,涉及硬件配置、軟件設置以及網絡拓撲的建立。以下是EtherCAT總線初始化的詳細步驟,結合實際應用場景和常見問題解決方案,為工程師提供系統的操作指南。 1. 硬件連接與物理層檢查
    的頭像 發表于 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 ?916次閱讀
    PC強實時運動控制(一):C#的EtherCAT<b class='flag-5'>總線</b><b class='flag-5'>初始化</b>(下)