本發(fā)明涉及通信領(lǐng)域,尤其涉及一種管理光模塊的使能狀態(tài)的方法和裝置。
背景技術(shù):
TXDISABLE即光模塊發(fā)送關(guān)閉使能,TXDISABLE功能是直接控制光模塊信號發(fā)送開關(guān),當(dāng)TXDISABLE=1時(shí),光模塊發(fā)送關(guān)閉使能有效,光模塊激光器關(guān)閉,光口不對外發(fā)送光信號,當(dāng)TXDISABLE=0時(shí),光模塊發(fā)送關(guān)閉使能無效,光模塊激光器打開,光口正常對外發(fā)送光信號。通常在光模塊產(chǎn)品中,其對外電路接口中都有設(shè)計(jì)一個(gè)TXDISABLE引腳,在通信電路設(shè)計(jì)中系統(tǒng)通過監(jiān)控和控制該TXDISABLE引腳的電平值來獲取光模塊發(fā)光狀態(tài),并可操作該TXDISABLE引腳的電平狀態(tài)來實(shí)現(xiàn)控制光模塊的光口開關(guān)功能。
隨著通信傳輸技術(shù)的飛速發(fā)展,40G/100G光接口標(biāo)準(zhǔn)和可插拔光模塊標(biāo)準(zhǔn)的完成,40G和100G的光模塊逐步進(jìn)入市場。由于速率快,封裝小,功耗低等優(yōu)點(diǎn),40G的QSFP+光模塊迅速發(fā)展起來,其在高速通信系統(tǒng)中應(yīng)用也越來越多。然而因封裝的減小,QSFP(Quad Small Form-factor Pluggable,四通道小型可插拔)+光模塊封裝結(jié)構(gòu)中沒有設(shè)計(jì)TXDISABLE引腳,而是將其TXDISABLE狀態(tài)內(nèi)置到光模塊內(nèi)部TXDISABLE寄存器中了,并需要通過外部IIC總線去訪問和操作該寄存器來實(shí)現(xiàn)獲取和控制QSFP+光模塊的TXDISABLE狀態(tài),這導(dǎo)致系統(tǒng)不能像其它光模塊般直接調(diào)用通用接口來監(jiān)控和操作QSFP+光模塊TXDISABLE引腳來實(shí)現(xiàn)控制QSFP+光模塊的光口開關(guān)功能,達(dá)到系統(tǒng)控制QSFP+光模塊通信的功能。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明提供一種管理光模塊的使能狀態(tài)的方法和裝置,要解決的技術(shù)問題是如何對QSFP+光模塊的TXDISABLE引腳的使能狀態(tài)進(jìn)行管理。
為解決上述技術(shù)問題,本發(fā)明提供了如下技術(shù)方案:
一種管理光模塊的使能狀態(tài)的方法,包括:
當(dāng)接收到管理請求時(shí),獲取寄存器記錄的使能信息,其中所述寄存器用于模擬四通道小型可插拔QSFP+光模塊的光模塊發(fā)送關(guān)閉功能;
根據(jù)接收的管理請求,管理所述寄存器中記錄的使能信息;
如果所述使能信息發(fā)生變化,則向所述QSFP+光模塊發(fā)送所述使能信息。
其中,所述獲取寄存器中的使能信息之前,所述方法還包括:
設(shè)置所述寄存器中使能信息的初始值為1。
其中,所述使能信息是否發(fā)生變化是通過如下方式得到的,包括:
檢測所述寄存器中使能信息對應(yīng)的電平狀態(tài);
當(dāng)檢測到所述寄存器的電平狀態(tài)發(fā)生變化時(shí),確定所述光模塊發(fā)送關(guān)閉功能的使能信息發(fā)生變化。
其中,向所述QSFP+光模塊發(fā)送所述使能信息,包括:
生成寫操作信號,其中所述寫操作信號用于更改所述QSFP+光模塊內(nèi)光模塊關(guān)閉功能的使能狀態(tài);
通過集成電路總線IIC向所述QSFP+光模塊發(fā)送所述寫操作信號。
其中,向所述QSFP+光模塊發(fā)送所述使能信息之前,所述方法包括:
檢測所述IIC總線是否被占用;和/或,
檢測是否正在向所述QSFP+光模塊發(fā)送所述使能信息。
一種管理光模塊的使能狀態(tài)的裝置,所述裝置與QSFP+光模塊相連,其中所述裝置包括:
第一寄存器,用于模擬QSFP+光模塊的光模塊發(fā)送關(guān)閉功能,并記錄所述光模塊發(fā)送關(guān)閉功能的使能信息;
處理器,用于當(dāng)接收到管理請求時(shí),根據(jù)接收的管理請求,管理所述寄存器中的使能信息;如果所述使能信息發(fā)生變化,則向所述QSFP+光模塊發(fā)送所述使能信息。
其中所述處理器,還用于設(shè)置所述第一寄存器中使能信息的初始值為1。
其中,所述使能信息是否發(fā)生變化是通過如下方式得到的,包括:
檢測第一寄存器中使能信息對應(yīng)的電平狀態(tài);
當(dāng)檢測到第一寄存器的電平狀態(tài)發(fā)生變化時(shí),則確定所述光模塊發(fā)送關(guān)閉功能的使能信息發(fā)生變化。
其中,所述處理器,具體用于生成寫操作信號,并通過IIC總線向所述QSFP+光模塊發(fā)送所述寫操作信號,其中所述寫操作信號用于更改所述QSFP+光模塊內(nèi)光模塊關(guān)閉功能的使能狀態(tài)。
其中,所述裝置還包括:
第一子保護(hù)寄存器,用于記錄IIC總線是否被占用的信息,其中數(shù)值0表示IIC總線未被占用,其中數(shù)值1表示IIC總線被占用;
第二子保護(hù)寄存器,用于記錄所述處理器是否正在向所述QSFP+光模塊內(nèi)的光模塊發(fā)送關(guān)閉引腳對應(yīng)的寄存器發(fā)送所述寫操作信號,其中數(shù)值0表示所述處理器沒有發(fā)送所述寫操作信號,數(shù)值1表示所述處理器正在發(fā)送所述寫操作信號;
總保護(hù)寄存器,用于對所述第一子保護(hù)寄存器和第二子保護(hù)寄存器內(nèi)的數(shù)值進(jìn)行或操作,得到計(jì)算結(jié)果;
所述處理器,用于如果計(jì)算結(jié)果為0,則發(fā)送所述寫操作信號;如果計(jì)算結(jié)果為1,停止發(fā)送所述寫操作信號,其中所述寫操作信號用于更改所述QSFP+光模塊內(nèi)光模塊關(guān)閉功能的使能狀態(tài)。
其中,所述第一子保護(hù)寄存器和第二子保護(hù)寄存器的數(shù)值的初始值均為 0。
本發(fā)明提供的實(shí)施例,能夠模擬出QSFP+光模塊的TXDISABLE引腳,使得QSFP+光模塊也能與其它通用光模塊一樣,調(diào)用通用系統(tǒng)接口即可實(shí)現(xiàn)QSFP+光模塊的光口開關(guān)功能。本發(fā)明采用全硬件電路的實(shí)現(xiàn),實(shí)現(xiàn)方法簡單易操作且工作穩(wěn)定,不需要系統(tǒng)上的額外處理,就使得QSFP+光模塊能與其它光模塊一樣正常使用TXDISABLE功能,提高了整個(gè)系統(tǒng)的工作效率,也同時(shí)方便了系統(tǒng)上的統(tǒng)一管理和維護(hù)。
附圖說明
圖1為本發(fā)明提供的管理光模塊的使能狀態(tài)的裝置的結(jié)構(gòu)圖;
圖2為本發(fā)明提供的管理光模塊的使能狀態(tài)的方法的流程圖;
圖3為本發(fā)明提供的QSFP+光模塊初始化流程示意圖;
圖4為本發(fā)明提供的系統(tǒng)獲取QSFP+光模塊TXDISABLE狀態(tài)的示意圖;
圖5為本發(fā)明提供的系統(tǒng)操作QSFP+光模塊TXDISABLE狀態(tài)的示意圖;
圖6為本發(fā)明提供的邏輯自動操作IIC總線寫QSFP+光模塊內(nèi)部TXDISABLE寄存器示意圖;
圖7為本發(fā)明提供的系統(tǒng)操作IIC總線讀寫QSFP+光模塊內(nèi)部寄存器的示意圖。
具體實(shí)施方式
為使本發(fā)明的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合附圖及具體實(shí)施例對本發(fā)明作進(jìn)一步的詳細(xì)描述。需要說明的是,在不沖突的情況下,本申請中的實(shí)施例及實(shí)施例中的特征可以相互任意組合。
圖1為本發(fā)明提供的管理光模塊的使能狀態(tài)的裝置的結(jié)構(gòu)圖。其中所述 裝置與QSFP+光模塊相連,其中所述裝置包括:
第一寄存器101,用于模擬QSFP+光模塊的光模塊發(fā)送關(guān)閉功能,并記錄所述光模塊發(fā)送關(guān)閉功能的使能信息;
處理器102,用于當(dāng)接收到管理請求時(shí),根據(jù)接收的管理請求,管理所述寄存器中的使能信息;如果所述使能信息發(fā)生變化,則向所述QSFP+光模塊發(fā)送所述使能信息。
本發(fā)明提供的裝置實(shí)施例,利用第一寄存器模擬QSFP+光模塊的TXDISABLE引腳,使得QSFP+光模塊也能與其它通用光模塊一樣,調(diào)用通用系統(tǒng)接口即可實(shí)現(xiàn)QSFP+光模塊的光口開關(guān)功能,本發(fā)明采用全硬件電路的實(shí)現(xiàn),實(shí)現(xiàn)方法簡單易操作且工作穩(wěn)定,不需要系統(tǒng)上的額外處理,就使得QSFP+光模塊能與其它光模塊一樣正常使用TXDISABLE功能,提高了整個(gè)系統(tǒng)的工作效率,也同時(shí)方便了系統(tǒng)上的統(tǒng)一管理和維護(hù)。
下面對本發(fā)明提供的裝置作進(jìn)一步說明:
本發(fā)明的基本思想在于:通過在邏輯器件中,利用第一寄存器來模擬QSFP+光模塊的TXDISABLE引腳功能,系統(tǒng)通過讀取該第一寄存器的值便可以直接得知QSFP+光模塊內(nèi)部TXDISABLE的狀態(tài)。同時(shí),通過更改第一寄存器的值,再通過IIC總線將相應(yīng)的TXDISABLE狀態(tài)表征數(shù)值寫入到QSFP+光模塊內(nèi)部TXDISABLE寄存器,從而實(shí)現(xiàn)系統(tǒng)操作光模塊TXDISABLE狀態(tài)的切換功能。
具體的,在邏輯器件中設(shè)置一個(gè)寄存器,該寄存器屬性為可讀可寫,作為模擬QSFP+光模塊TXDISABLE引腳電平狀態(tài)來使用。此處命名為第一寄存器,并根據(jù)常規(guī)的光模塊TXDISABLE引腳功能,可定義當(dāng)該第一寄存器的值為0時(shí),表明TXDISABLE無效,QSFP+光模塊光口打開正常發(fā)光,當(dāng)該第一寄存器的值為1時(shí),表明TXDISABLE有效,QSFP+光模塊光口關(guān)閉不發(fā)光。系統(tǒng)可以通過讀取該第一寄存器的值來得知QSFP+光模塊的TXDISABLE狀態(tài)。系統(tǒng)需要操作光模塊TXDISALBE狀態(tài)時(shí),只需要操作邏輯器件中的第一寄存器的值即可。
其中,所述處理器,還用于設(shè)置所述寄存器中使能信息的初始值為1。
具體的,在QSFP+光模塊初始化流程中,根據(jù)光模塊通用處理原則,系統(tǒng)將第一寄存器的值寫為1,并將QSFP+內(nèi)部TXDISABLE寄存器(地址為0d86)值寫入0x0f,即光模塊默認(rèn)是處于TXDISABLE有效狀態(tài),待初始化完成后,根據(jù)系統(tǒng)需要在實(shí)現(xiàn)切換TXDISABLE狀態(tài)。
所述使能信息是否發(fā)生變化是通過如下方式得到的,包括:檢測寄存器中使能信息對應(yīng)的電平狀態(tài);當(dāng)檢測到該第一寄存器的電平狀態(tài)有變化時(shí),則確定所述使能信息發(fā)生變化。
具體的,所述光模塊發(fā)送關(guān)閉功能的使能狀態(tài)包括兩個(gè)狀態(tài),分別為0和1來表示,因此只要記錄使能信息的電平狀態(tài)發(fā)生變化,就可確定使能信息發(fā)生變化。
其中,所述處理器,具體用于生成寫操作信號,并通過集成電路總線(Inter-Integrated Circuit,IIC)向所述QSFP+光模塊發(fā)送所述寫操作信號,其中所述寫操作信號用于更改所述QSFP+光模塊內(nèi)光模塊關(guān)閉功能的使能狀態(tài)。
具體的,QSFP+光模塊正常工作時(shí),邏輯器件內(nèi)部以高速頻率不斷掃描檢測第一寄存器的電平狀態(tài),當(dāng)檢測到該第一寄存器的電平狀態(tài)有變化時(shí),邏輯器件產(chǎn)生一個(gè)寫脈沖,自動激發(fā)IIC總線并操作一次寫光模塊內(nèi)部的TXDISABLE寄存器至系統(tǒng)所需的TXDISABLE狀態(tài)。對于第一寄存器的電平狀態(tài)由0至1的上升沿跳變時(shí),邏輯器件自動激發(fā)將0x0f通過自動IIC寫模塊寫入到光模塊內(nèi)部的TXDISABLE寄存器,對于第一寄存器的電平狀態(tài)有1至0的下降沿跳變時(shí),邏輯器件則自動激發(fā)將0x00通過自動IIC寫模塊寫入到光模塊內(nèi)部的TXDISABLE寄存器。
進(jìn)一步的,為了防止本裝置使用光模塊IIC總線和系統(tǒng)使用IIC總線的的沖突錯(cuò)亂,增加相應(yīng)的總保護(hù)寄存器、第一子保護(hù)寄存器和第二子保護(hù)寄存器,通過增加上述用于實(shí)現(xiàn)保護(hù)功能的寄存器,有效保證QSFP+光模塊的TXDISABLE引腳功能的正常應(yīng)用。具體說明如下:
所述裝置還包括:
第一子保護(hù)寄存器,用于記錄IIC總線是否被占用的信息,其中數(shù)值0 表示IIC總線未被占用,其中數(shù)值1表示IIC總線被占用;
第二子保護(hù)寄存器,用于記錄所述處理器是否正在向所述QSFP+光模塊內(nèi)的光模塊發(fā)送關(guān)閉引腳對應(yīng)的寄存器發(fā)送所述寫操作信號,其中數(shù)值0表示所述處理器沒有發(fā)送所述寫操作信號,數(shù)值1表示所述處理器正在發(fā)送所述寫操作信號;
總保護(hù)寄存器,用于對所述第一子保護(hù)寄存器和第二子保護(hù)寄存器內(nèi)的數(shù)值進(jìn)行或操作,得到計(jì)算結(jié)果;
所述處理器,用于如果計(jì)算結(jié)果為0,則發(fā)送所述寫操作信號;如果計(jì)算結(jié)果為1,停止發(fā)送所述寫操作信號。
具體的,邏輯器件中增加三個(gè)保護(hù)寄存器,分別為總保護(hù)寄存器、第一子保護(hù)寄存器和第二子保護(hù)寄存器。其中總保護(hù)寄存器的值B為第一保護(hù)寄存器的值B1和第二子保護(hù)寄存器的值B2進(jìn)行或運(yùn)算得到的,即B=B1orB2,其中B1和B2均可讀可寫,B只可讀。當(dāng)?shù)谝蛔颖Wo(hù)寄存器和第二子保護(hù)寄存器中任何一個(gè)起保護(hù)功能時(shí),則總保護(hù)寄存器有效。
其中,所述第一子保護(hù)寄存器和第二子保護(hù)寄存器的數(shù)值的初始值均為0。
具體的,在光模塊初始化時(shí),系統(tǒng)將第一子保護(hù)寄存器和第二子保護(hù)寄存器的值均寫為0,即三個(gè)保護(hù)寄存器的值均默認(rèn)為0,即無保護(hù)作用。
下面對上述三個(gè)寄存器的作用進(jìn)行說明:
第一子保護(hù)寄存器用于表明邏輯器件是否正在自動激發(fā)IIC寫操作,防止邏輯器件處于自動IIC操作光模塊內(nèi)部的TXDISABLE寄存器過程時(shí),系統(tǒng)又突然異常操作寫第一寄存器的值,導(dǎo)致第一寄存器的電平狀態(tài)值與實(shí)際的光模塊TXDISABLE狀態(tài)對應(yīng)關(guān)系錯(cuò)誤。當(dāng)總保護(hù)寄存器的值為1時(shí),表明光模塊的I IC總線正在使用,此時(shí)不允許系統(tǒng)在操作寫第一寄存器的值,即使系統(tǒng)誤操作,由于第一子保護(hù)寄存器的作用,使得系統(tǒng)寫操作第一寄存器的操作無效;當(dāng)總保護(hù)寄存器的值為0時(shí),表明光模塊IIC總線空閑,能夠使用,此時(shí)系統(tǒng)可以隨時(shí)操作第一寄存器的值,來實(shí)現(xiàn)切換QSFP+光模塊的TXDISABLE狀態(tài)。因此,在使用光模塊IIC總線時(shí),先將第一子保護(hù)寄 存器的值置為1,表明已經(jīng)占據(jù)了光模塊的IIC總線,然后再進(jìn)行寫光模塊內(nèi)部TXDISABLE寄存器的操作。待邏輯器件執(zhí)行操作完畢后,再將第一保護(hù)寄存器置為0,邏輯器件釋放IIC總線。
其中第二子保護(hù)寄存器用于表明系統(tǒng)是否正在占用IIC總線,防止出現(xiàn)系統(tǒng)和邏輯器件同時(shí)占用IIC總線,導(dǎo)致IIC總線沖突。系統(tǒng)通過IIC總線操作訪問光模塊內(nèi)部寄存器時(shí),首先讀取總保護(hù)寄存器的值,當(dāng)總保護(hù)寄存器B的值為1時(shí),表明光模塊IIC總線正在使用,不允許系統(tǒng)通過IIC總線操作訪問光模塊內(nèi)部寄存器;如果此時(shí)系統(tǒng)發(fā)起了IIC總線操作訪問光模塊內(nèi)部寄存器命令,則上報(bào)IIC BUSY錯(cuò)誤告知系統(tǒng);當(dāng)總保護(hù)寄存器的值為0時(shí),表明光模塊IIC總線空閑可使用,則系統(tǒng)可以正常通過IIC總線操作訪問光模塊內(nèi)部寄存器。因此,系統(tǒng)使用IIC總線操作光模塊內(nèi)部寄存器時(shí),先將第二子保護(hù)寄存器的值置為1,表明系統(tǒng)正在占據(jù)光模塊IIC總線,然后系統(tǒng)執(zhí)行IIC總線操作光模塊內(nèi)部寄存器,待系統(tǒng)IIC總線操作執(zhí)行完畢后,又重新將第二子保護(hù)寄存器的值置回為0,系統(tǒng)釋放IIC總線。
圖2為本發(fā)明提供的管理光模塊的使能狀態(tài)的方法的流程圖。圖2所示方法包括:
步驟201、當(dāng)接收到管理請求時(shí),獲取寄存器記錄的使能信息,其中所述寄存器用于模擬QSFP+光模塊的光模塊發(fā)送關(guān)閉功能;
步驟202、根據(jù)接收的管理請求,管理所述寄存器中記錄的使能信息;
步驟203、如果所述使能信息發(fā)生變化,則向所述QSFP+光模塊發(fā)送所述使能信息。
本發(fā)明提供的方法實(shí)施例,能夠模擬出QSFP+光模塊的TXDISABLE引腳,使得QSFP+光模塊也能與其它通用光模塊一樣,調(diào)用通用系統(tǒng)接口即可實(shí)現(xiàn)QSFP+光模塊的光口開關(guān)功能,本發(fā)明采用全硬件電路的實(shí)現(xiàn),實(shí)現(xiàn)方法簡單易操作且工作穩(wěn)定,不需要系統(tǒng)上的額外處理,就使得QSFP+光模塊能與其它光模塊一樣正常使用TXDISABLE功能,提高了整個(gè)系統(tǒng)的工作效率,也同時(shí)方便了系統(tǒng)上的統(tǒng)一管理和維護(hù)。
其中,所述獲取寄存器中用于記錄QSFP+光模塊的光模塊發(fā)送關(guān)閉的引腳的使能信息之前,所述方法還包括:
設(shè)置所述寄存器中使能信息的初始值為1。
其中,所述使能信息是否發(fā)生變化是通過如下方式得到的,包括:
檢測所述寄存器中使能信息對應(yīng)的電平狀態(tài);
當(dāng)檢測到該寄存器的電平狀態(tài)發(fā)生變化時(shí),確定所述光模塊發(fā)送關(guān)閉功能的使能信息發(fā)生變化。
其中,向所述QSFP+光模塊發(fā)送所述使能信息,包括:
生成寫操作信號,其中所述寫操作信號用于更改所述QSFP+光模塊內(nèi)光模塊關(guān)閉功能的使能狀態(tài);
通過IIC總線向所述QSFP+光模塊內(nèi)的光模塊發(fā)送關(guān)閉引腳對應(yīng)的寄存器發(fā)送所述寫操作信號。
其中,向所述QSFP+光模塊的光模塊發(fā)送關(guān)閉的引腳發(fā)送所述使能信息之前,所述方法包括:
檢測所述IIC總線是否被占用;和/或,
檢測是否正在向所述QSFP+光模塊的光模塊發(fā)送關(guān)閉的引腳發(fā)送所述使能信息。
本發(fā)明提供的裝置實(shí)施例,利用第一寄存器模擬QSFP+光模塊的TXDISABLE引腳,使得QSFP+光模塊也能與其它通用光模塊一樣,調(diào)用通用系統(tǒng)接口即可實(shí)現(xiàn)QSFP+光模塊的光口開關(guān)功能,本發(fā)明采用全硬件電路的實(shí)現(xiàn),實(shí)現(xiàn)方法簡單易操作且工作穩(wěn)定,不需要系統(tǒng)上的額外處理,就使得QSFP+光模塊能與其它光模塊一樣正常使用TXDISABLE功能,提高了整個(gè)系統(tǒng)的工作效率,也同時(shí)方便了系統(tǒng)上的統(tǒng)一管理和維護(hù)。
下面對本發(fā)明提供的方法實(shí)施例作進(jìn)一步說明:
圖3為本發(fā)明提供的QSFP+光模塊初始化流程圖。其詳細(xì)流程為:
(1)QSFP+光模塊正常上電后,先將QSFP+光模塊解復(fù)位,即將其 RESET引腳電平拉高。通常光模塊上電時(shí)默認(rèn)配置為復(fù)位狀態(tài)。
(2)將QSFP+光模塊MODSEL引腳和LPMODE引腳拉低。MODSEL拉低的目的是讓QSFP+光模塊對IIC總線響應(yīng),LPMODE拉低的目的是讓QSFP+光模塊處于正常工作模式下。
(3)延時(shí)2s。根據(jù)SFF 8436協(xié)議,QSFP+光模塊完成解復(fù)位過程最大需要2s時(shí)間,此處延時(shí)2s使得光模塊充分完成解復(fù)位。
(4)系統(tǒng)通過IIC總線將QSFP+光模塊內(nèi)部的TXDISABLE寄存器(地址為0d86)寫為0x0f,將邏輯器件中的第一寄存器的值寫為1,目的是為了讓光模塊先默認(rèn)處于TXDISABLE使能狀態(tài),即光模塊光口關(guān)閉狀態(tài)。
(5)將第一子保護(hù)寄存器和第二子保護(hù)寄存器的值均寫為0,初始默認(rèn)不保護(hù)狀態(tài)。
由上可以看出,通過上述初始化流程,可以保證后續(xù)管理的正確執(zhí)行。
本發(fā)明中系統(tǒng)可以隨時(shí)讀取QSFP+光模塊的TXDISABLE狀態(tài),系統(tǒng)讀取光模塊TXDISABLE狀態(tài)。如圖4所示,當(dāng)系統(tǒng)需要獲取QSFP+光模塊TXDISABLE狀態(tài)時(shí),只需要去讀取邏輯器件中定義的第一寄存器的值,當(dāng)?shù)谝患拇嫫鞯闹禐?時(shí),表明當(dāng)前QSFP+光模塊的TXDISABLE有效,處于發(fā)送關(guān)閉,光口關(guān)閉狀態(tài);當(dāng)?shù)谝患拇嫫鞯闹禐?時(shí),表明當(dāng)前QSFP+光模塊的TXDISABLE無效,處于發(fā)送使能,光口打開狀態(tài)。
本發(fā)明中,系統(tǒng)可以操作QSFP+光模塊的TXDISABLE狀態(tài),系統(tǒng)操作QSFP+光模塊的TXDISABLE狀態(tài)分為兩大過程,分別是系統(tǒng)操作第一寄存器的值,邏輯器件掃描檢測到第一寄存器的值發(fā)生變化后,自動激發(fā)光模塊IIC總線,將最新的系統(tǒng)所需TXDISABLE狀態(tài)值寫入到光模塊TXDISABLE寄存器中,兩大過程流程示意圖分別如圖5和圖6所示。
(1)系統(tǒng)是否需要操作QSFP+光模塊的TXDISABLE狀態(tài),即系統(tǒng)是否需要寫第一寄存器的值,如是則進(jìn)入步驟(2),否則停留在步驟(1)。
(2)邏輯自動讀取總保護(hù)寄存器的值,如果總保護(hù)寄存器的值為1,則進(jìn)入步驟(3),否則如果總保護(hù)寄存器的值為0,則進(jìn)入步驟(4)
(3)當(dāng)前QSFP+光模塊總線正在使用,不允許系統(tǒng)寫第一寄存器的值,系統(tǒng)操作無效,第一寄存器值保持不變,系統(tǒng)操作完畢,退回到步驟(1)。
(4)當(dāng)前QSFP+光模塊總線空閑,允許系統(tǒng)寫第一寄存器的值,系統(tǒng)操作有效,第一寄存器的值寫為系統(tǒng)所需要的值。如果第一寄存器的值發(fā)生改變,即光模塊的TXDISABLE狀態(tài)有變化,則會被邏輯自動掃描檢測到,并進(jìn)入步驟(5),否則如果TXDISABLE狀態(tài)未有變化,不需要邏輯自動激發(fā)IIC總線寫光模塊內(nèi)部TXDISABLE寄存器,退回到步驟(1)。
(5)邏輯自動將保護(hù)寄存器B1置1,并判斷第一寄存器的值變化情況,如果第一寄存器的值由0變?yōu)?,則邏輯將待寫入光模塊內(nèi)部TXDISABLE寄存器的臨時(shí)變量置為0x0f,否則邏輯將臨時(shí)變量置為0x0。
(6)邏輯自動激發(fā)光模塊IIC總線,通過自動IIC寫模塊,將臨時(shí)變量的值寫入到光模塊內(nèi)部TXDISABLE寄存器。
(7)邏輯IIC總線執(zhí)行完畢后,邏輯再將第一子保護(hù)寄存器的值置回為0,流程結(jié)束,等待下一次系統(tǒng)操作流程。
本發(fā)明中,系統(tǒng)亦可以正常操作QSFP+光模塊內(nèi)部寄存器,系統(tǒng)操作QSFP+光模塊內(nèi)部寄存器的流程示意圖如圖7所示。
(1)系統(tǒng)是否需要操作光模塊內(nèi)部寄存器,如是則進(jìn)入步驟(2),否則停留在步驟(1)直到系統(tǒng)有相應(yīng)操作需求。
(2)系統(tǒng)讀取保護(hù)寄存器B的值,并判斷是否為1,如是則進(jìn)入到步驟(3),否則進(jìn)入到步驟(4)。
(3)QSFP+光模塊IIC總線當(dāng)前正在使用中,暫不能使用,上報(bào)IIC_BUSY錯(cuò)誤告知系統(tǒng),并退回到步驟(1)。
(4)QSFP+光模塊IIC總線空閑中,系統(tǒng)可以使用,系統(tǒng)先將第二子保護(hù)寄存器的值置為1,表明系統(tǒng)占用IIC總線。
(5)系統(tǒng)使用IIC總線執(zhí)行操作QSFP+光模塊內(nèi)部寄存器命令。
(6)系統(tǒng)執(zhí)行完畢后,系統(tǒng)將在第二子保護(hù)寄存器的值置回為0,流程操作結(jié)束,等待下一次操作流程。
綜上可以看出,通過在邏輯器件中,定義一個(gè)第一寄存器來模擬QSFP+光模塊的TXDISABLE引腳功能,系統(tǒng)通過讀取該第一寄存器的值便可以直接得知QSFP+光模塊內(nèi)部TXDISABLE的狀態(tài)。同時(shí),系統(tǒng)操作第一寄存器值變化時(shí),邏輯器件自動激發(fā)光模塊IIC總線,將相應(yīng)的TXDISABLE狀態(tài)表征數(shù)值寫入到QSFP+光模塊內(nèi)部TXDISABLE寄存器,從而實(shí)現(xiàn)系統(tǒng)操作光模塊TXDISABLE狀態(tài)的切換功能。為了防止邏輯器件使用光模塊IIC總線和系統(tǒng)使用IIC總線的的沖突錯(cuò)亂,增加相應(yīng)的總保護(hù)寄存器、第一子保護(hù)寄存器和第二子保護(hù)寄存器,增添少量的保護(hù)流程,保證QSFP+光模塊的TXDISABLE引腳功能的正常應(yīng)用。
本領(lǐng)域普通技術(shù)人員可以理解上述實(shí)施例的全部或部分步驟可以使用計(jì)算機(jī)程序流程來實(shí)現(xiàn),所述計(jì)算機(jī)程序可以存儲于一計(jì)算機(jī)可讀存儲介質(zhì)中,所述計(jì)算機(jī)程序在相應(yīng)的硬件平臺上(如系統(tǒng)、設(shè)備、裝置、器件等)執(zhí)行,在執(zhí)行時(shí),包括方法實(shí)施例的步驟之一或其組合。
可選地,上述實(shí)施例的全部或部分步驟也可以使用集成電路來實(shí)現(xiàn),這些步驟可以被分別制作成一個(gè)個(gè)集成電路模塊,或者將它們中的多個(gè)模塊或步驟制作成單個(gè)集成電路模塊來實(shí)現(xiàn)。這樣,本發(fā)明不限制于任何特定的硬件和軟件結(jié)合。
上述實(shí)施例中的各裝置/功能模塊/功能單元可以采用通用的計(jì)算裝置來實(shí)現(xiàn),它們可以集中在單個(gè)的計(jì)算裝置上,也可以分布在多個(gè)計(jì)算裝置所組成的網(wǎng)絡(luò)上。
上述實(shí)施例中的各裝置/功能模塊/功能單元以軟件功能模塊的形式實(shí)現(xiàn)并作為獨(dú)立的產(chǎn)品銷售或使用時(shí),可以存儲在一個(gè)計(jì)算機(jī)可讀取存儲介質(zhì)中。上述提到的計(jì)算機(jī)可讀取存儲介質(zhì)可以是只讀存儲器,磁盤或光盤等。
以上所述,僅為本發(fā)明的具體實(shí)施方式,但本發(fā)明的保護(hù)范圍并不局限于此,任何熟悉本技術(shù)領(lǐng)域的技術(shù)人員在本發(fā)明揭露的技術(shù)范圍內(nèi),可輕易想到變化或替換,都應(yīng)涵蓋在本發(fā)明的保護(hù)范圍之內(nèi)。因此,本發(fā)明的保護(hù)范圍應(yīng)以權(quán)利要求所述的保護(hù)范圍為準(zhǔn)。