專利名稱:一種支持串行管理接口熱插拔的方法和裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種支持SMI (Serial Management Interface,串行管理接口) 熱插拔技術(shù),尤其涉及一種用來實(shí)現(xiàn)支持SMI的子卡在熱插拔時可以正常傳 輸管理命令的方法和裝置。
背景技術(shù):
隨著對網(wǎng)絡(luò)需求的高速發(fā)展,對SMI接口的需求也快速發(fā)展。現(xiàn)有技術(shù) 是將主板CPU (處理器)與子卡連接,圖1是現(xiàn)有技術(shù)中SMI裝置的拓?fù)浣Y(jié) 構(gòu)示意圖,圖中主板處理器1直接連接子卡的各物理通道(PHY1-PHY4) 2 5的MDIO (管理數(shù)據(jù)輸入/輸出接口)通道。但由于MDIO接口數(shù)據(jù)信號是雙 向信號, 一旦插拔子卡,可能MDIO接口正處于讀寫狀態(tài),因此產(chǎn)生的干擾 可能導(dǎo)致數(shù)據(jù)讀寫錯誤?,F(xiàn)有技術(shù)尚不能對SMI總線的MDIO返回信號進(jìn)行 選擇,以達(dá)到控制返回主板CPU的MDIO接口數(shù)據(jù)信號通路的目的,進(jìn)而導(dǎo) 致SMI接口無法支持熱拔插功能。
由上所述可知,現(xiàn)有SMI接口熱拔插技術(shù),在實(shí)際使用上顯然存在不便 與缺陷,所以有必要加以改進(jìn)。
發(fā)明內(nèi)容
針對上述的缺陷,本發(fā)明的目的在于提供一種支持SMI (串行管理接口) 熱插拔的方法和裝置,其能夠在插拔子卡時,提高SMI數(shù)據(jù)傳輸?shù)目煽啃裕?從而實(shí)現(xiàn)支持SMI接口的熱插拔功能。
為實(shí)現(xiàn)上述目的,本發(fā)明提供一種支持串行管理接口熱插拔的裝置,為設(shè) 置在一主板處理器與多個子卡之間的一隔離裝置,該隔離裝置又包括
主板數(shù)據(jù)分析器,用于對該主板處理器的MDIO接口數(shù)據(jù)信號進(jìn)行分析 并輸出確認(rèn)的接口參數(shù);
MDIO數(shù)據(jù)傳輸方向狀態(tài)產(chǎn)生器,用于接收該主板數(shù)據(jù)分析器傳送的接口
參數(shù)以及該子卡輸出的在位信號,并確定數(shù)據(jù)傳輸方向狀態(tài)的參數(shù)值;
MDIO數(shù)據(jù)傳輸方向控制器,用于接收該MDIO數(shù)據(jù)傳輸方向狀態(tài)產(chǎn)生器 輸出的數(shù)據(jù)傳輸方向狀態(tài)的參數(shù)值,并根據(jù)該數(shù)據(jù)傳輸方向狀態(tài)的參數(shù)值控制 該主板處理器與多個子卡之間的數(shù)據(jù)傳輸方向。
根據(jù)本發(fā)明支持串行管理接口熱插拔的裝置,所述主板數(shù)據(jù)分析器輸出的 接口參數(shù)為當(dāng)前主板處理器訪問的物理地址、時隙數(shù)、傳輸數(shù)據(jù)狀態(tài)及MDIO 的操作命令是否為讀。
根據(jù)本發(fā)明支持串行管理接口熱插拔的裝置,所述MDIO數(shù)據(jù)傳輸方向 狀態(tài)產(chǎn)生器進(jìn)行如下判斷當(dāng)傳輸數(shù)據(jù)狀態(tài)有效,物理地址等于本子卡號,子 卡在位,MDIO處于第13時隙且操作命令為讀,將數(shù)據(jù)傳輸方向狀態(tài)確認(rèn)為 子卡到主板處理器;否則將數(shù)據(jù)傳輸方向狀態(tài)確認(rèn)為主板處理器到子卡。
根據(jù)本發(fā)明支持串行管理接口熱插拔的裝置,所述MDIO數(shù)據(jù)傳輸方向 控制器在進(jìn)行如下控制時當(dāng)所述MDIO數(shù)據(jù)傳輸方向狀態(tài)產(chǎn)生器輸出的信 號Read—EN0=1、 Read—EN1=1、 Read—EN2=1、 Read—EN3=1時,將相應(yīng)物理 地址的數(shù)據(jù)傳輸方向控制為子卡到主板處理器;當(dāng)所述MDIO數(shù)據(jù)傳輸方向 狀態(tài)產(chǎn)生器輸出的信號Read—EN0=0、Read—EN1=0、Read—EN2=0、Read—EN3=0 時,將數(shù)據(jù)傳輸方向控制為主板處理器到子卡。
根據(jù)本發(fā)明支持串行管理接口熱插拔的裝置,該隔離裝置為FPGA、 DSP、' 邏輯器件或CPU。
本發(fā)明還提供一種實(shí)現(xiàn)支持MDIO信號熱插拔的方法,包括在主板處理 器與多個子卡之間進(jìn)行數(shù)據(jù)傳輸過程中設(shè)置一隔離步驟,該隔離步驟又包括
A、 主板數(shù)據(jù)分析步驟,用于對該主板處理器的MDIO接口數(shù)據(jù)信號進(jìn)行 分析并輸出確認(rèn)的接口參數(shù);
B、 MDIO數(shù)據(jù)傳輸方向狀態(tài)產(chǎn)生步驟,用于接收該主板數(shù)據(jù)分析步驟傳 送的接口參數(shù)以及該子卡輸出的在位信號,確定數(shù)據(jù)傳輸方向狀態(tài)的參數(shù)值;
C、 MDIO數(shù)據(jù)傳輸方向控制步驟,用于接收該MDIO數(shù)據(jù)傳輸方向狀態(tài) 產(chǎn)生步驟輸出的數(shù)據(jù)傳輸方向狀態(tài)的參數(shù)值,并根據(jù)該數(shù)據(jù)傳輸方向狀態(tài)的參 數(shù)值控制該主板處理器與多個子卡之間的數(shù)據(jù)傳輸方向。
根據(jù)本發(fā)明實(shí)現(xiàn)支持MDIO信號熱插拔的方法,所述A歩驟輸出的接口 參數(shù)為當(dāng)前主板處理器訪問的物理地址、時隙數(shù)、傳輸數(shù)據(jù)狀態(tài)及MDIO
的操作命令是否為讀。
根據(jù)本發(fā)明實(shí)現(xiàn)支持MDIO信號熱插拔的方法,在所述B步驟中,當(dāng)傳 輸數(shù)據(jù)狀態(tài)有效,物理地址等于本子卡號,子卡在位,MDIO處于第13時隙 且操作命令為讀,將數(shù)據(jù)傳輸方向狀態(tài)確認(rèn)為子卡到主板處理器;否則將數(shù)據(jù) 傳輸方向狀態(tài)確認(rèn)為主板處理器到子卡。
根據(jù)本發(fā)明實(shí)現(xiàn)支持MDIO信號熱插拔的方法,所述歩驟A又包括
步驟S100,設(shè)置時隙數(shù)Slot—Num=0,傳輸狀態(tài)Tran—Status二O;
步驟SlOl,用MDC做為時鐘采樣MDIO信號,用5位移位寄存器檢測 傳輸起始符Ol;
步驟S102,當(dāng)檢測到低2位的值為傳輸起始符01后,進(jìn)行下一步操作, 否則回到步驟S100繼續(xù)檢測;
步驟S103,設(shè)置時隙數(shù)Slot—Num=3,用MDC做為時鐘對Slot—Num累 加,設(shè)置傳輸狀態(tài)Tran—Status= 1;
步驟S104,當(dāng)Slot—Num=4時,如果移位寄存器低2位的值為10時,設(shè) 置Read—OP=l ,否貝lj Read—OP=0;
步驟S105,當(dāng)Slot—Nun^9時,將5位移位寄存器的值輸出給物理地址寄 存器Phy—Addr;
步驟S106,當(dāng)Slot—Num=31時,回到步驟S100,否則繼續(xù)等待。 根據(jù)本發(fā)明實(shí)現(xiàn)支持MDIO信號熱插拔的方法,所述C步驟中,當(dāng)所述 B步驟輸出的信號Read—EN0=1、 Read—EN1=1、 Read—EN2=1、 Read—EN3=1 時,將相應(yīng)物理地址的數(shù)據(jù)傳輸方向控制為子卡到主板處理器;當(dāng)所述B步 驟輸出的信號Read—EN0=0、 Read—EN1=0、 Read—EN2=0、 Read—EN3=0時, 將數(shù)據(jù)傳輸方向控制為主板處理器到子卡。
本發(fā)明通過對主板處理器的MDIO接口通道進(jìn)行隔離,并對MDIO接口 數(shù)據(jù)信號進(jìn)行分析并輸出確認(rèn)的接口參數(shù),再根據(jù)該接口參數(shù)以及子卡輸出的 在位信號,來確定數(shù)據(jù)傳輸方向狀態(tài),并根據(jù)數(shù)據(jù)傳輸方向狀態(tài)來控制該主板 處理器與多個子卡之間的數(shù)據(jù)傳輸方向。因此,本發(fā)明在熱插拔子卡時,隔離
插拔子卡時MDIO接口數(shù)據(jù)信號對正常傳輸線的干擾,增加了 SMI數(shù)據(jù)傳輸 的可靠性,從而實(shí)現(xiàn)支持SMI接口的熱插拔功能;同時,本發(fā)明降低了系統(tǒng) 開發(fā)的難度和提高了系統(tǒng)的可靠性。
圖1是現(xiàn)有技術(shù)中SMI裝置的拓?fù)浣Y(jié)構(gòu)示意圖; 圖2是本發(fā)明SMI的讀時序圖3是本發(fā)明SMI的寫時序圖4是本發(fā)明支持SMI熱插拔裝置的拓?fù)浣Y(jié)構(gòu)示意圖; 圖5是本發(fā)明支持SMI熱插拔裝置的總體結(jié)構(gòu)示意圖; 圖6是本發(fā)明支持SMI熱插拔的方法流程圖; 圖7是本發(fā)明的主板數(shù)據(jù)分析器邏輯的流程圖8是本發(fā)明的通道0的MDIO數(shù)據(jù)傳輸方向狀態(tài)產(chǎn)生器邏輯的流程圖; 圖9是本發(fā)明通道0的MDIO數(shù)據(jù)傳輸方向控制器邏輯的流程圖。
具體實(shí)施例方式
為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下結(jié)合附圖及實(shí) 施例,對本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅 僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
本發(fā)明的基本思想是在主板處理器與多個子卡之間增加了一隔離裝置,
以對主板處理器的MDIO接口通道進(jìn)行隔離,并對MDIO接口數(shù)據(jù)信號進(jìn)行 分析并輸出確認(rèn)的接口參數(shù),再根據(jù)該接口參數(shù)以及子卡輸出的在位信號,來 確定數(shù)據(jù)傳輸方向狀態(tài),并根據(jù)數(shù)據(jù)傳輸方向狀態(tài)來控制該主板處理器與多個 子卡之間的數(shù)據(jù)傳輸方向。由于MDIO接口數(shù)據(jù)信號是雙向信號,如圖2和 圖3所示, 一旦插拔子卡,可能MDIO正處于讀寫狀態(tài),因此產(chǎn)生的干擾可 能導(dǎo)致數(shù)據(jù)讀寫錯誤。本發(fā)明可實(shí)現(xiàn)對SMI的MDIO返回信號進(jìn)行選擇,以 達(dá)到控制返回主板處理器的MDIO信號通路的目的。
本發(fā)明提供一種支持SMI熱插拔的裝置,其為設(shè)置在一主板處理器與多 個子卡之間的一隔離裝置20,如圖4所示,主板處理器10通過隔離裝置20 間接連接子卡的各物理通道(PHY1 PHY4) 30 60的MDIO通道。該隔離裝 置20優(yōu)選為CPLD (Complex Programmable Logic Device,復(fù)雜可編禾呈邏輯器 件),當(dāng)然隔離裝置20也可以是其他的FPGA、 DSP、邏輯器件或CPU等。
如圖5所示,該隔離裝置20主要包括主板數(shù)據(jù)分析器(Data—Analyse)100、 MDIO數(shù)據(jù)傳輸方向狀態(tài)產(chǎn)生器(Direction—Status) 200、 MDIO數(shù)據(jù)傳 輸方向控制器(Direction—CTRL) 300,其中
該主板數(shù)據(jù)分析器100,對該主板處理器的MDIO接口數(shù)據(jù)信號進(jìn)行分析 并輸出確認(rèn)的接口參數(shù)。優(yōu)選的是,該主板數(shù)據(jù)分析器100輸出的接口參數(shù)為 當(dāng)前主板處理器訪問的物理地址(Phy—Addr)、時隙數(shù)(Slot—Num)、傳輸 數(shù)據(jù)狀態(tài)(Tran—Status)及MDIO的操作命令是否為讀(Read—OP)等。
MDIO數(shù)據(jù)傳輸方向狀態(tài)產(chǎn)生器200,接收該主板數(shù)據(jù)分析器100傳送的 接口參數(shù)以及該物理通道或子卡的在位信號(如Plug0、 Plugl、 Plug2,Plug 3),并確定數(shù)據(jù)傳輸方向狀態(tài)的參數(shù)值。這里,各個子卡的在位信號包括Plug 0、 Plugl、 Plug 2以及Plug 3。具體而言,所述MDIO數(shù)據(jù)傳輸方向狀態(tài)產(chǎn)生 器200進(jìn)行如下判斷當(dāng)傳輸數(shù)據(jù)狀態(tài)(Tran—Status)有效,物理地址 (Phy—Addr)等于本子卡號,子卡在位,MDIO處于第13時隙且操作命令為 讀(Read),以上條件全滿足時,將數(shù)據(jù)傳輸方向狀態(tài)確認(rèn)為子卡到主板處理 器(Read—EN0=1; Read—EN1=1; Read_EN2=l; Read—EN3=1);否則將數(shù)據(jù) 傳輸方向狀態(tài)確認(rèn)為主板處理器到子卡(Read—EN0=0; Read—EN1=0; ReadEN2=0; Read—EN3=0)。
MDIO數(shù)據(jù)傳輸方向控制器300,接收該MDIO數(shù)據(jù)傳輸方向狀態(tài)產(chǎn)生器 200輸出的數(shù)據(jù)傳輸方向狀態(tài)的參數(shù)值,并根據(jù)該數(shù)據(jù)傳輸方向狀態(tài)的參數(shù)值 控制該主板處理器與多個子卡之間的數(shù)據(jù)傳輸方向。這里,各個子卡的數(shù)據(jù)信 號包括MDIOO、 MDIOl、 MDI02以及MDI03。具體而言,當(dāng)所述MDIO數(shù) 據(jù)傳輸方向狀態(tài)產(chǎn)生器200輸出的信號Read—EN0=1、 Read—EN1=1 、 Read—EN2=1、 Read—EN3=1時,MDIO數(shù)據(jù)傳輸方向控制器300將相應(yīng)物理地 址的數(shù)據(jù)傳輸方向控制為子卡到主板處理器。而當(dāng)所述MDIO數(shù)據(jù)傳輸方向 狀態(tài)產(chǎn)生器200輸出的信號Read—EN0=0、 Read—EN1=0、 Read—EN2=0、 Read—EN3=0時,MDIO數(shù)據(jù)傳輸方向控制器300將相應(yīng)物理地址的數(shù)據(jù)傳輸 方向控制為主板處理器到子卡。
本發(fā)明還揭示了一種實(shí)現(xiàn)支持MDIO信號熱插拔的方法,如圖6所示, 包括在主板處理器與多個子卡之間進(jìn)行數(shù)據(jù)傳輸過程中設(shè)置一隔離步驟,其可 通過圖5所示的隔離裝置20實(shí)現(xiàn),具體的隔離步驟又包括主板數(shù)據(jù)分析步驟 S10、 MDIO數(shù)據(jù)傳輸方向狀態(tài)產(chǎn)生步驟S20、 MDIO數(shù)據(jù)傳輸方向控制步驟S30,其中
該主板數(shù)據(jù)分析步驟,對該主板處理器的MDIO接口數(shù)據(jù)信號進(jìn)行分析
并輸出確認(rèn)的接口參數(shù)。本步驟中輸出的接口參數(shù)優(yōu)選為當(dāng)前主板處理器訪 問的物理地址(Phy_Addr)、時隙數(shù)(Slot—Num)、傳輸數(shù)據(jù)狀態(tài)(Tran—Status) 及MDIO的操作命令是否為讀(Read—OP)等。本主板數(shù)據(jù)分析歩驟具體由圖 5中的主板數(shù)據(jù)分析器100來實(shí)現(xiàn),圖7示出了本發(fā)明的主板數(shù)據(jù)分析器100 邏輯的流程,通過主板數(shù)據(jù)分析器100對主板處理器的MDIO接口數(shù)據(jù)信號 進(jìn)行分析,包括步驟如下
步驟S100,設(shè)置時隙數(shù)Slot—Num=0;傳輸狀態(tài)Tran—Status=0。 步驟S101,用MDC做為時鐘采樣MDIO信號,用5位移位寄存器檢測 傳輸起始符Ol。
步驟S102,當(dāng)檢測到低2位的值為傳輸起始符01后,進(jìn)行下一步操作, 否則回到步驟S100繼續(xù)檢測。
步驟S103,設(shè)置時隙數(shù)Slot—Num=3,用MDC做為時鐘對Slot—Num累 加。設(shè)置傳輸狀態(tài)Tran—Status = 1 。
步驟S104,當(dāng)時隙數(shù)Slot—Num=4時,如果移位寄存器低2位的值為10 時,設(shè)置Read—OP=l,否則Read—OP=0。
步驟S105,當(dāng)時隙數(shù)Slot—Nun^9時,將5位移位寄存器的值輸出給物理 地址寄存器Phy—Addr。
步驟S106,當(dāng)時隙數(shù)Slot—Num=31時,回到步驟1,否則繼續(xù)等待。
MDIO數(shù)據(jù)傳輸方向狀態(tài)產(chǎn)生步驟,用于接收所述主板數(shù)據(jù)分析步驟傳送 的接口參數(shù)以及該子板輸出的在位信號,并確定數(shù)據(jù)傳輸方向狀態(tài)的參數(shù)值。 本MDIO數(shù)據(jù)傳輸方向狀態(tài)產(chǎn)生步驟具體由圖5中的MDIO數(shù)據(jù)傳輸方向狀 態(tài)產(chǎn)生器200來實(shí)現(xiàn),圖8示出了本發(fā)明的通道0 (其它通道類似)的MDIO 數(shù)據(jù)傳輸方向狀態(tài)產(chǎn)生器邏輯的流程,其數(shù)據(jù)處理方法流程如下
步驟S200,數(shù)據(jù)傳輸方向狀態(tài)為設(shè)置為主板處理器到子卡 (ReadEN0=0)。
步驟S201 S202,當(dāng)檢測到傳輸數(shù)據(jù)狀態(tài)有效(Tran—Status=l),子卡 在位,操作命令為讀(Read—OP=l),物理地址等于本子卡號(Phy—Addr=0), MDIO處于第13時隙(Slot—Num=13)時,以上條件全滿足時,設(shè)置數(shù)據(jù)傳輸
方向狀態(tài)Read—EN0=1,即子卡到主板處理器;否則依然將數(shù)據(jù)傳輸方向狀態(tài) 確認(rèn)為主板處理器到子卡。
步驟S203,當(dāng)傳輸數(shù)據(jù)狀態(tài)無效(Tran—Status=0)時,則回到步驟S200, 否則繼續(xù)等待。
MDIO數(shù)據(jù)傳輸方向控制步驟,用于接收該MDIO數(shù)據(jù)傳輸方向狀態(tài)產(chǎn)生 步驟輸出的數(shù)據(jù)傳輸方向狀態(tài)的參數(shù)值,并根據(jù)該數(shù)據(jù)傳輸方向狀態(tài)的參數(shù)值 控制該主板處理器與多個子卡之間的數(shù)據(jù)傳輸方向。本MDIO數(shù)據(jù)傳輸方向 控制步驟具體由圖5中的MDIO數(shù)據(jù)傳輸方向控制器300來實(shí)現(xiàn),圖9示出 了本發(fā)明通道0(其它通道類似)MDIO數(shù)據(jù)傳輸方向控制器邏輯的流程,MDIO 數(shù)據(jù)傳輸方向控制器300根據(jù)數(shù)據(jù)傳輸方向狀態(tài)Read—EN的值,控制數(shù)據(jù)傳 輸方向,其數(shù)據(jù)處理方法流程如下
步驟S300,將數(shù)據(jù)傳輸方向設(shè)置為本板處理器到子卡。 步驟S301,如果Read—EN0=1,執(zhí)行下一步;否則回到步驟S300。 步驟S302,將數(shù)據(jù)傳輸方向設(shè)置為子卡到本板處理器;返回步驟S301。 整體而言,當(dāng)所述MDIO數(shù)據(jù)傳輸方向狀態(tài)產(chǎn)生步驟輸出的信號 Read—EN0=1、 Read—EN1=1、 Read—EN2=1、 Read—EN3=1時,將相應(yīng)物理地址 的數(shù)據(jù)傳輸方向控制為子卡到主板處理器;當(dāng)所述MDIO數(shù)據(jù)傳輸方向狀態(tài) 產(chǎn)生步驟輸出的信號Read一EN0=0、 Read—EN1=0、 Read—EN2=0、 Read—EN3=0
時,則將數(shù)據(jù)傳輸方向控制為主板處理器到子卡。
綜上所述,本發(fā)明通過對主板處理器的MDIO接口通道進(jìn)行隔離,并對 MDIO接口數(shù)據(jù)信號進(jìn)行分析并輸出確認(rèn)的接口參數(shù),再根據(jù)該接口參數(shù)以及 子卡輸出的在位信號,來確定數(shù)據(jù)傳輸方向狀態(tài),并根據(jù)數(shù)據(jù)傳輸方向狀態(tài)來 控制該主板處理器與多個子卡之間的數(shù)據(jù)傳輸方向。因此,本發(fā)明在熱插拔子 卡時,隔離插拔子卡時MDIO接口數(shù)據(jù)信號對正常傳輸線的干擾,增加了 SMI 數(shù)據(jù)傳輸?shù)目煽啃?,從而?shí)現(xiàn)支持SMI接口的熱插拔功能;同時,本發(fā)明降 低了系統(tǒng)開發(fā)的難度和提高了系統(tǒng)的可靠性。
可以理解的是,對于本領(lǐng)域的普通技術(shù)人員來說,可以根據(jù)本發(fā)明的技術(shù) 方案和技術(shù)構(gòu)思作出其他各種相應(yīng)的改變和變形,而所有這些改變和變形都應(yīng) 屬于本發(fā)明后附的權(quán)利要求的保護(hù)范圍。
權(quán)利要求
1、一種支持串行管理接口熱插拔的裝置,其特征在于,為設(shè)置在一主板處理器與多個子卡之間的一隔離裝置,該隔離裝置又包括主板數(shù)據(jù)分析器,用于對該主板處理器的MDIO接口數(shù)據(jù)信號進(jìn)行分析并輸出確認(rèn)的接口參數(shù);MDIO數(shù)據(jù)傳輸方向狀態(tài)產(chǎn)生器,用于接收該主板數(shù)據(jù)分析器傳送的接口參數(shù)以及該子卡輸出的在位信號,并確定數(shù)據(jù)傳輸方向狀態(tài)的參數(shù)值;MDIO數(shù)據(jù)傳輸方向控制器,用于接收該MDIO數(shù)據(jù)傳輸方向狀態(tài)產(chǎn)生器輸出的數(shù)據(jù)傳輸方向狀態(tài)的參數(shù)值,并根據(jù)該數(shù)據(jù)傳輸方向狀態(tài)的參數(shù)值控制該主板處理器與多個子卡之間的數(shù)據(jù)傳輸方向。
2、 根據(jù)權(quán)利要求1所述的支持串行管理接口熱插拔的裝置,其特征在于, 所述主板數(shù)據(jù)分析器輸出的接口參數(shù)為當(dāng)前主板處理器訪問的物理地址、時 隙數(shù)、傳輸數(shù)據(jù)狀態(tài)及MDIO的操作命令是否為讀。
3、 根據(jù)權(quán)利要求2所述的支持串行管理接口熱插拔的裝置,其特征在于, 所述MDIO數(shù)據(jù)傳輸方向狀態(tài)產(chǎn)生器進(jìn)行如下判斷當(dāng)傳輸數(shù)據(jù)狀態(tài)有效, 物理地址等于本子卡號,子卡在位,MDIO處于第13時隙且操作命令為讀, 將數(shù)據(jù)傳輸方向狀態(tài)確認(rèn)為子卡到主板處理器;否則將數(shù)據(jù)傳輸方向狀態(tài)確認(rèn) 為主板處理器到子卡。
4、 根據(jù)權(quán)利要求3所述的支持串行管理接口熱插拔的裝置,其特征在于, 所述MDIO數(shù)據(jù)傳輸方向控制器在進(jìn)行如下控制時當(dāng)所述MDIO數(shù)據(jù)傳輸 方向狀態(tài)產(chǎn)生器輸出的信號Read—EN0=1、 Read—EN1=1 、 Read_EN2=l 、 Read—EN3=1時,將相應(yīng)物理地址的數(shù)據(jù)傳輸方向控制為子卡到主板處理器; 當(dāng)所述MDIO數(shù)據(jù)傳輸方向狀態(tài)產(chǎn)生器輸出的信號Read—EN0=0、 Read—EN1=0、 Read—EN2=0、 Read—EN3=0時,將數(shù)據(jù)傳輸方向控制為主板處 理器到子卡。
5、 根據(jù)權(quán)利要求l、 2、 3或4所述的支持串行管理接口熱插拔的裝置, 其特征在于,該隔離裝置為FPGA、 DSP、邏輯器件或CPU。
6、 一種實(shí)現(xiàn)支持MDIO信號熱插拔的方法,包括在主板處理器與多個子 卡之間進(jìn)行數(shù)據(jù)傳輸過程中設(shè)置一隔離步驟,其特征在于,該隔離步驟又包括: A、 主板數(shù)據(jù)分析步驟,用于對該主板處理器的MDIO接口數(shù)據(jù)信號進(jìn)行 分析并輸出確認(rèn)的接口參數(shù);B、 MDIO數(shù)據(jù)傳輸方向狀態(tài)產(chǎn)生步驟,用于接收該主板數(shù)據(jù)分析步驟傳 送的接口參數(shù)以及該子卡輸出的在位信號,并確定數(shù)據(jù)傳輸方向狀態(tài)的參數(shù) 值;C、 MDIO數(shù)據(jù)傳輸方向控制步驟,用于接收該MDIO數(shù)據(jù)傳輸方向狀態(tài) 產(chǎn)生步驟輸出的數(shù)據(jù)傳輸方向狀態(tài)的參數(shù)值,并根據(jù)該數(shù)據(jù)傳輸方向狀態(tài)的參 數(shù)值控制該主板處理器與多個子卡之間的數(shù)據(jù)傳輸方向。
7、 根據(jù)權(quán)利要求6所述的實(shí)現(xiàn)支持MDIO信號熱插拔的方法,其特征在 于,所述A步驟輸出的接口參數(shù)為當(dāng)前主板處理器訪問的物理地址、時隙 數(shù)、傳輸數(shù)據(jù)狀態(tài)及MDIO的操作命令是否為讀。
8、 根據(jù)權(quán)利要求7所述的支持串行管理接口熱插拔的方法,其特征在于, 在所述B步驟中,當(dāng)傳輸數(shù)據(jù)狀態(tài)有效,物理地址等于本子卡號,子卡在位, MDIO處于第13時隙且操作命令為讀,將數(shù)據(jù)傳輸方向狀態(tài)確認(rèn)為子卡到主 板處理器;否則將數(shù)據(jù)傳輸方向狀態(tài)確認(rèn)為主板處理器到子卡。
9、 根據(jù)權(quán)利要求6或7所述的支持串行管理接口熱插拔的方法,其特征 在于,所述步驟A又包括步驟S100,設(shè)置時隙數(shù)Slot—Num=0,傳輸狀態(tài)i:ran—Status = 0; 步驟S101,用MDC做為時鐘采樣MDIO信號,用5位移位寄存器檢測 傳輸起始符01;步驟S102,當(dāng)檢測到低2位的值為傳輸起始符01后,進(jìn)行下一步操作, 否則回到步驟S100繼續(xù)檢測;步驟S103,設(shè)置時隙數(shù)Slot—Num=3,用MDC做為時鐘對Slot一Num累 加,設(shè)置傳輸狀態(tài)Tran—Status 二 1;步驟S104,當(dāng)Slot—Num=4時,如果移位寄存器低2位的值為10時,設(shè) 置Read_OP=l ,否貝U Read—OP=0;步驟S105,當(dāng)Slot—Nun^9時,將5位移位寄存器的值輸出給物理地址寄 存器Phy—Addr;步驟S106,當(dāng)Slot—Num=31時,回到步驟S100,否則繼續(xù)等待。
10、 根據(jù)權(quán)利要求8或9所述的支持串行管理接口熱插拔的方法,其特征 在于,所述C步驟中,當(dāng)所述B歩驟輸出的信號Read—EN0=1、 Read—EN1=1、 Read—EN2=1、 Read—EN3=1時,將相應(yīng)物理地址的數(shù)據(jù)傳輸方向控制為子卡 到主板處理器;當(dāng)所述B步驟輸出的信號Read—EN0=0、 Read—EN1=0、 Read—EN2=0、 Read—EN3=0時,將數(shù)據(jù)傳輸方向控制為主板處理器到子卡。
全文摘要
本發(fā)明公開了一種支持串行管理接口熱插拔的裝置,為設(shè)置在一主板處理器與多個子卡之間的一隔離裝置,其包括主板數(shù)據(jù)分析器,用于對主板處理器的MDIO接口數(shù)據(jù)信號進(jìn)行分析并輸出確認(rèn)的接口參數(shù);MDIO數(shù)據(jù)傳輸方向狀態(tài)產(chǎn)生器,用于接收接口參數(shù)以及子卡輸出的在位信號,并確定數(shù)據(jù)傳輸方向狀態(tài)的參數(shù)值;MDIO數(shù)據(jù)傳輸方向控制器,用于接收并根據(jù)該數(shù)據(jù)傳輸方向狀態(tài)的參數(shù)值控制該主板處理器與多個子卡之間的數(shù)據(jù)傳輸方向。本發(fā)明還相應(yīng)公開了一種實(shí)現(xiàn)支持串行管理接口熱插拔的方法。借此,本發(fā)明能夠在插拔子卡時,提高SMI數(shù)據(jù)傳輸?shù)目煽啃?,從而?shí)現(xiàn)支持SMI接口的熱插拔功能。
文檔編號G06F13/40GK101178699SQ20071017811
公開日2008年5月14日 申請日期2007年11月26日 優(yōu)先權(quán)日2007年11月26日
發(fā)明者吳雪松, 昶 周, 潘向明 申請人:中興通訊股份有限公司