一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

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

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

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

基于Linux模塊的IDT PCIe熱插拔驅(qū)動程序

電子設(shè)計 ? 來源: IDT ? 作者: IDT ? 2021-05-14 07:44 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

在典型的基于PCIe的系統(tǒng)中,枚舉PCIe總線,并在系統(tǒng)初始化期間將資源分配給每個PCIe端點設(shè)備。由于枚舉和資源分配算法的局限性,PCIe拓?fù)湟坏┏跏蓟?,便已修?fù),這意味著不得將新的端點設(shè)備或交換機(jī)連接到系統(tǒng)。

pIYBAGCeIxuAOh0pAAJpmSizleY786.png

IDT PCIe熱插拔驅(qū)動程序是一個可加載的Linux模塊,采用IDT專有的枚舉,資源分配和設(shè)備檢測算法,允許PCIe端點設(shè)備和交換機(jī)在運行時連接到系統(tǒng)或與系統(tǒng)斷開連接,而不會影響系統(tǒng)的運行狀態(tài)。系統(tǒng)中的其他PCIe設(shè)備。以圖1為參考,如果雙GigE控制器與系統(tǒng)斷開連接并隨后重新連接至其他交換機(jī)上的端口,則光纖通道控制器和SATA / SAS控制器的操作狀態(tài)將保持不變。這與PCIe熱插拔的Windows Vista實施不同,后者必須禁用,重新枚舉和重新分配資源給共享同一根端口的所有設(shè)備,然后新連接的設(shè)備才能運行。通過寫入位于/ sysfs目錄下的文件,可以簡單地以任意方式或更舒適地將設(shè)備連接至系統(tǒng)或從系統(tǒng)斷開連接。將0寫入/sysfs/bus/pci/slots/0000:bb:dd.f/power文件(其中bb指定總線號,dd指定設(shè)備號,f指定下游端口的功能號)將禁用指定下游端口,同時將1寫入同一文件將啟用下游端口。禁用下游端口時,將從Linux內(nèi)核中刪除所有連接到該端口的設(shè)備,并且將調(diào)用PCI驅(qū)動程序remove()函數(shù)來執(zhí)行所需的清除操作。同樣,啟用下游端口后,將發(fā)現(xiàn)與其連接的所有設(shè)備,添加到Linux內(nèi)核中的PCI驅(qū)動程序probe()函數(shù)將被調(diào)用以執(zhí)行設(shè)備初始化。下游端口也可以由第三方內(nèi)核模式驅(qū)動程序通過使用標(biāo)題為“啟用和禁用下游端口”中描述的熱插拔驅(qū)動程序API來啟用或禁用。

下面的圖2描述了可以與運行IDT PCIe熱插拔驅(qū)動程序的系統(tǒng)連接或斷開連接的設(shè)備類型的示例。

pIYBAGCeIy2ALvVvAAKN2Wm073Y779.png

實現(xiàn)這種熱插拔功能的關(guān)鍵是能夠為系統(tǒng)中的每個下游端口分配其他未使用的總線號和內(nèi)存資源。當(dāng)新設(shè)備連接到系統(tǒng)時,這些額外資源將用于使該設(shè)備進(jìn)入運行狀態(tài),而不必?fù)p害共享同一根端口的其他設(shè)備的運行狀態(tài)。

系統(tǒng)互連注意事項

圖3中所示的IDT系統(tǒng)互連拓?fù)溆梢粋€基于x86的根聯(lián)合處理器(RP)組成,該根復(fù)雜處理器通過IDT系統(tǒng)互連PCIe交換機(jī)連接到一個或多個基于智能x86的端點處理器(EP)。每個EP都使用IDT域內(nèi)交換機(jī)將它們連接到系統(tǒng)互連PCIe交換機(jī)的下游端口。這種拓?fù)浣Y(jié)構(gòu)與IDT系統(tǒng)互連軟件結(jié)合使用,可以在系統(tǒng)中任何兩個對等方之間進(jìn)行高速數(shù)據(jù)傳輸。

o4YBAGCeIz2AP5lfAAKRpW-0Plo637.png

當(dāng)使用這種類型的拓?fù)鋵⑿碌腅P連接到系統(tǒng)或從系統(tǒng)斷開連接時,熱插拔驅(qū)動程序會將EP視為與任何普通端點設(shè)備相同。但是,當(dāng)RP連接到系統(tǒng)或從系統(tǒng)斷開時,處理RP的方式有所不同。

通常,當(dāng)PCIe交換機(jī)的上游端口斷開時,如圖4所示,該交換機(jī)將對其所有下游端口進(jìn)行熱復(fù)位。此功能在系統(tǒng)互連拓?fù)渲惺遣豢扇〉?,因為?dāng)RP與系統(tǒng)斷開連接時,它將阻止EP相互通信。熱插拔驅(qū)動程序通過檢測IDT PCIe系統(tǒng)互連交換機(jī)并禁用其上游端口斷開連接時生成熱重置的能力,從而解決了此問題。通過將linkDownHotReset模塊參數(shù)設(shè)置為非零值,可以在熱插拔驅(qū)動程序中禁用此功能。

熱插拔驅(qū)動程序還具有被動資源分配算法。該算法主要與IDT系統(tǒng)互連拓?fù)湟黄鹗褂?,該算法允許RP以最小的系統(tǒng)中斷將其連接到操作系統(tǒng)。通常,當(dāng)端點設(shè)備連接到根聯(lián)合體時,是根聯(lián)合體將內(nèi)存資源分配給該設(shè)備。對于被動資源分配,是由根聯(lián)合體將內(nèi)存資源分配給設(shè)備。在被動資源分配的情況下,應(yīng)該使用哪些內(nèi)存資源的“根聯(lián)合體”。默認(rèn)情況下,熱交換驅(qū)動程序中會啟用此功能,但可以通過設(shè)置passiveAllocationDisable模塊參數(shù)來禁用此功能。

編輯:hfy

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

    關(guān)注

    22

    文章

    2747

    瀏覽量

    101926
  • PCIe
    +關(guān)注

    關(guān)注

    16

    文章

    1342

    瀏覽量

    85153
  • PCIE總線
    +關(guān)注

    關(guān)注

    0

    文章

    58

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    熱插拔算力集群

    能力? 服務(wù)器節(jié)點熱插拔?:集群服務(wù)器支持在線更換計算節(jié)點(如2U服務(wù)器容納12個熱插拔AI節(jié)點,單節(jié)點集成5個算力卡)。 GPU/算力卡擴(kuò)展?:支持多張GPU卡熱插拔(如單服務(wù)器可擴(kuò)展10張450W GPU),通過
    的頭像 發(fā)表于 06-26 09:20 ?190次閱讀

    如何選擇可靠的熱插拔?連接器熱插拔防護(hù)等級詳解

    熱插拔(Hot Swap)是指能夠在不關(guān)閉系統(tǒng)電源的情況下,安全地插入或拔除設(shè)備板卡或模塊。為了確保熱插拔過程的安全性和可靠性,連接器的熱插拔防護(hù)設(shè)計至關(guān)重要。
    的頭像 發(fā)表于 04-23 09:53 ?426次閱讀

    Linux環(huán)境再升級:PLIN驅(qū)動程序正式發(fā)布

    PLIN驅(qū)動程序現(xiàn)已正式發(fā)布,本文將展示如何安裝PLIN驅(qū)動程序,以及如何在Linux環(huán)境下進(jìn)行基本的PLIN通信操作,確保您能夠快速掌握并應(yīng)用這一新工具。
    的頭像 發(fā)表于 04-21 15:29 ?351次閱讀
    <b class='flag-5'>Linux</b>環(huán)境再升級:PLIN<b class='flag-5'>驅(qū)動程序</b>正式發(fā)布

    Linux驅(qū)動程序程序員指南

    電子發(fā)燒友網(wǎng)站提供《Linux驅(qū)動程序程序員指南.pdf》資料免費下載
    發(fā)表于 11-22 15:53 ?0次下載
    <b class='flag-5'>Linux</b><b class='flag-5'>驅(qū)動程序</b><b class='flag-5'>程序</b>員指南

    PCIe熱插拔機(jī)制介紹

    前言本文主要講述PCIe熱插拔機(jī)制,通過圖形方式方便讀者快速掌握。 一、概述 如果在PCIe設(shè)備不支持熱插拔的條件下,在不斷電的情況下插拔
    的頭像 發(fā)表于 11-20 09:07 ?2731次閱讀
    <b class='flag-5'>PCIe</b><b class='flag-5'>熱插拔</b>機(jī)制介紹

    pcie設(shè)備驅(qū)動程序安裝步驟

    PCIe(Peripheral Component Interconnect Express)是一種高速串行計算機(jī)擴(kuò)展總線標(biāo)準(zhǔn),用于計算機(jī)內(nèi)部硬件組件之間的連接。安裝PCIe設(shè)備驅(qū)動程序是確保硬件
    的頭像 發(fā)表于 11-13 10:32 ?3337次閱讀

    熱插拔是什么意思

    熱插拔(Hot Swapping或Hot Swap),即帶電插拔,是指在不關(guān)閉系統(tǒng)電源的情況下,將模塊、板卡、存儲設(shè)備或其他外部設(shè)備插入或拔出系統(tǒng),且不影響系統(tǒng)正常工作的技術(shù)。這種技術(shù)廣泛應(yīng)用
    的頭像 發(fā)表于 10-29 17:49 ?5505次閱讀

    LSP 2.10 DaVinci Linux驅(qū)動程序

    電子發(fā)燒友網(wǎng)站提供《LSP 2.10 DaVinci Linux驅(qū)動程序.pdf》資料免費下載
    發(fā)表于 10-09 09:30 ?0次下載
    LSP 2.10 DaVinci <b class='flag-5'>Linux</b><b class='flag-5'>驅(qū)動程序</b>

    熱插拔電源是什么意思

    熱插拔電源,即帶電插拔電源,指的是在不關(guān)閉系統(tǒng)電源的情況下,能夠安全地將電源模塊、板卡等硬件設(shè)備插入或拔出系統(tǒng),而不影響系統(tǒng)的正常工作。這種技術(shù)大大提高了系統(tǒng)的可靠性、快速維修性、冗余性和對災(zāi)難
    的頭像 發(fā)表于 09-18 11:00 ?2162次閱讀

    面向熱插拔應(yīng)用的MOSFET

    至關(guān)重要,此時就需要熱插拔控制器來調(diào)控浪涌電流。在電信服務(wù)器應(yīng)用中,背板終端電壓主流為48V和12V。在典型的12V背板系統(tǒng)中,由冗余電源組成,每個電源通過Oring MOSFET與并聯(lián)的熱插拔模塊相連。MOSFET在
    發(fā)表于 09-09 16:21 ?1204次閱讀
    面向<b class='flag-5'>熱插拔</b>應(yīng)用的MOSFET

    Linux設(shè)備驅(qū)動程序分類有哪些

    Linux設(shè)備驅(qū)動程序是操作系統(tǒng)與硬件設(shè)備之間的橋梁,負(fù)責(zé)實現(xiàn)硬件設(shè)備與操作系統(tǒng)之間的通信和控制。Linux設(shè)備驅(qū)動程序的分類繁多,可以根據(jù)不同的標(biāo)準(zhǔn)進(jìn)行分類。 按硬件類型分類
    的頭像 發(fā)表于 08-30 15:11 ?1239次閱讀

    linux驅(qū)動程序如何加載進(jìn)內(nèi)核

    ,需要了解Linux內(nèi)核的基本概念和API。以下是一些關(guān)鍵概念: 1.1 內(nèi)核模塊Linux內(nèi)核模塊是一種動態(tài)加載和卸載的代碼,可以在不重新啟動系統(tǒng)的情況下加載和卸載。
    的頭像 發(fā)表于 08-30 15:02 ?1102次閱讀

    linux驅(qū)動程序主要有哪些功能

    Linux驅(qū)動程序是操作系統(tǒng)與硬件設(shè)備之間進(jìn)行通信的橋梁,負(fù)責(zé)實現(xiàn)硬件設(shè)備與操作系統(tǒng)之間的數(shù)據(jù)交換和控制。Linux驅(qū)動程序的主要功能包括以下幾個方面: 設(shè)備識別與初始化
    的頭像 發(fā)表于 08-30 14:47 ?906次閱讀

    linux驅(qū)動程序的編譯方法是什么

    Linux驅(qū)動程序的編譯方法主要包括兩種: 與內(nèi)核一起編譯 和 編譯成獨立的內(nèi)核模塊 。以下是對這兩種方法的介紹: 一、與內(nèi)核一起編譯 與內(nèi)核一起編譯意味著將驅(qū)動程序的源代碼直接集成到
    的頭像 發(fā)表于 08-30 14:46 ?1258次閱讀

    linux驅(qū)動程序運行在什么空間

    Linux 驅(qū)動程序是操作系統(tǒng)的一部分,負(fù)責(zé)管理硬件設(shè)備與操作系統(tǒng)之間的交互。驅(qū)動程序運行在內(nèi)核空間(Kernel Space),這是操作系統(tǒng)的核心部分,與用戶空間(User Space)相對。內(nèi)核
    的頭像 發(fā)表于 08-30 14:37 ?910次閱讀