本申請基于在2016年3月17日提交的日本專利申請?zhí)?016-053568并且要求其優(yōu)先權(quán)的權(quán)益,其公開的全部內(nèi)容通過引用合并于此。
本申請涉及固件激活設備以及固件激活方法,并且特別涉及用于控制器和光學收發(fā)器的固件激活設備以及固件激活方法。
背景技術(shù):
近年來,隨著信息通信服務的進步和多樣化,要求光通信網(wǎng)絡具有大容量和靈活性。結(jié)果,用于光纖網(wǎng)絡連接的光收發(fā)器主要采用熱插拔光收發(fā)器,以使得在系統(tǒng)操作開始之后添加或替代光收發(fā)器。
這樣的光收發(fā)器的示例在日本專利申請未決公開no.2014-150426中描述。在日本專利申請決公開no.2014-150426中描述的有關(guān)的光收發(fā)器是用于100gbps(每秒千兆位)傳輸?shù)臒岵灏喂馐瞻l(fā)器模塊的cfp(centum形狀-因子可插拔)等。
有關(guān)的光收發(fā)器包括具有cpu(中央處理單元)的控制器和存儲器、以及光發(fā)射器-接收器。存儲器包括存儲用于控制器的固件的rom(只讀存儲器)和ram(隨機存取存儲器)。cpu執(zhí)行諸如存儲在rom等中的固件的計算機程序,由此cpu作為整體控制光發(fā)射器-接收器。
rom包括第一存儲體、第二存儲體和第三存儲體。第一存儲體包括引導程序區(qū)和數(shù)據(jù)區(qū)。引導程序被存儲在引導程序區(qū),并且存儲體切換數(shù)據(jù)被存儲在數(shù)據(jù)區(qū)中。
存儲在引導程序區(qū)中的引導程序充當光收發(fā)器的固件的一部分。cpu通過執(zhí)行引導程序激活控制器。存儲在數(shù)據(jù)區(qū)中的存儲體切換數(shù)據(jù)是指示控制器在第二存儲體和第三存儲體之間使用哪個存儲體的數(shù)據(jù)。也就是說,存儲在數(shù)據(jù)區(qū)中的存儲體切換數(shù)據(jù)是指示cpu在存儲在第二存儲體中的應用程序和存儲在第三存儲體中的應用程序之間執(zhí)行哪個應用程序的數(shù)據(jù)。cpu參考存儲在數(shù)據(jù)區(qū)中的存儲體切換數(shù)據(jù)并且確定在存儲在第二存儲體中的應用程序和存儲在第三存儲體中的應用程序之間執(zhí)行哪個應用程序。這里,存儲在第二存儲和第三存儲體每個中的應用程序充當光收發(fā)器的固件的一部分。
當cpu通過一系列通信信號從外部設備接收到更新應用程序時,cpu將更新應用程序存儲在與存儲當前正在使用的應用程序的第二存儲體不同的第三存儲體中。當cpu通過一系列通信信號從外部設備接收到切換指令(也就是,切換應用程序的指令)時,cpu更新存儲體切換數(shù)據(jù)的內(nèi)容。特別地,當cpu接收到切換指令時,cpu對從存儲當前使用的應用程序的第二存儲體到存儲更新應用程序的第三存儲體的存儲體切換數(shù)據(jù)的內(nèi)容進行更新。
在那些處理之后,cpu執(zhí)行軟件-重置。因為軟件重置是重新啟動由cpu執(zhí)行的計算機程序,而不是執(zhí)行重置光發(fā)射器-接收器以及消除數(shù)據(jù)設置或ram數(shù)據(jù)。相應地,如果執(zhí)行軟件重置,并不發(fā)生光發(fā)射信號和光接收信號的瞬間中斷。
因此,根據(jù)有關(guān)的光收發(fā)器,能在不瞬間中斷光發(fā)射信號和光接收信號的情況下更新程序。
技術(shù)實現(xiàn)要素:
本發(fā)明的示例目的是提供固件激活設備和固件激活方法,其解決以下問題:基于激活區(qū)信息來激活多個固件程序中的一個,如果由指示區(qū)信息指示的固件程序出現(xiàn)故障,則激活處理變得復雜。
根據(jù)本發(fā)明的一個示例方面,固件激活設備包括獲取裝置,所述獲取裝置用于獲取激活區(qū)選擇信號和有效信息信號,所述激活區(qū)選擇信號在存儲在多個存儲器區(qū)中的固件程序之間指定要被激活的固件程序,所述有效信息信號包括與激活區(qū)選擇信號的有效性有關(guān)的信息;固件確定裝置,所述固件確定裝置用于基于激活區(qū)選擇信號和有效信息信號確定要被激活的激活固件;以及固件設置裝置,所述固件設置裝置用于將所述激活固件設置為可執(zhí)行的。
根據(jù)本發(fā)明的一個示例方面,固件激活方法包括獲取激活區(qū)選擇信號和有效信息信號,所述激活區(qū)選擇信號在存儲在多個存儲器區(qū)中的固件程序之間指定要被激活的固件程序,所述有效信息信號包括與激活區(qū)選擇信號的有效性有關(guān)的信息;基于激活區(qū)選擇信號和有效信息信號確定要被激活的激活固件;以及將激活固件設置為可執(zhí)行的。
附圖說明
本發(fā)明的示例性的特征和優(yōu)點在參考附圖時從下面詳細描述將變得顯而易見。附圖為:
圖1是圖示出根據(jù)本發(fā)明的第一示例實施例的固件激活設備的配置的框圖;
圖2是圖示出根據(jù)本發(fā)明的第二示例實施例的控制器的配置的框圖;
圖3a是圖示出根據(jù)本發(fā)明的第二示例實施例的控制器的操作的流程圖;
圖3b是圖示出根據(jù)本發(fā)明的第二示例實施例的控制器的操作的流程圖;
圖3c是圖示出根據(jù)本發(fā)明的第二示例實施例的控制器的操作的流程圖;以及
圖4是圖示出包括根據(jù)本發(fā)明的第二示例實施例的控制器的光收發(fā)器的配置的框圖。
具體實施方式
本發(fā)明的示例實施例將參考附圖在以下描述。
[第一示例實施例]
圖1是圖示出根據(jù)本發(fā)明的第一示例實施例的固件激活設備100的配置的框圖。
根據(jù)本示例實施例的固件激活設備100包括獲取裝置110、固件確定裝置120、以及固件設置裝置130。
獲取裝置110獲取激活區(qū)選擇信號s11和有效信息信號s12,激活區(qū)選擇信號s11在存儲在多個存儲器區(qū)中的固件程序之間指定要被激活的固件程序,有效信息信號s12包括與激活區(qū)選擇信號s11的有效性有關(guān)的信息。固件確定裝置120基于激活區(qū)選擇信號s11和有效信息信號s12來確定要被激活的激活固件。固件設置裝置130將激活固件設置為可執(zhí)行的。
該配置使得根據(jù)本示例實施例的固件激活設備100能夠使用激活區(qū)選擇信號s11和有效信息信號s12來在存儲在多個存儲器區(qū)的固件程序之間確定激活固件程序。即使存儲在多個存儲器區(qū)的固件程序之一出現(xiàn)故障,也可能通過激活區(qū)選擇信號s11指定和激活存儲在另一存儲器區(qū)中的固件程序。
也就是說,根據(jù)本示例實施例,在激活多個固件程序之一時,即使固件程序之一發(fā)生故障,固件激活設備100也使得可能通過簡單處理激活另一固件程序。
這里,固件確定裝置120可以被配置成基于有效信息信號s12來確定激活區(qū)選擇信號s11是否有效。這使得可能防止激活區(qū)選擇信號s11誤操作。固件確定裝置120可以被配置為如果確定激活區(qū)選擇信號s11有效,則選擇由激活區(qū)選擇信號s11指定的固件作為激活固件。
固件激活設備100可以被配置成包括存儲裝置,所述存儲裝置用于存儲關(guān)于所述激活固件的信息,該信息被命名為激活區(qū)信息。在這樣的情況下,固件確定裝置120基于有效信息信號s12來確定激活區(qū)選擇信號s11是否有效,如上述情況。固件確定裝置120可以被配置成如果確定激活區(qū)選擇信號s11無效,則基于存儲在上述存儲裝置中的激活區(qū)信息來確定激活固件。
接下來,將描述根據(jù)本示例實施例的固件激活方法。
根據(jù)本示例實施例的固件激活方法包括:首先,獲取激活區(qū)選擇信號和有效信息信號,激活區(qū)選擇信號在存儲在多個存儲器區(qū)中的固件程序之間指定要被激活的固件程序,有效信息信號包括與激活區(qū)選擇信號的有效性有關(guān)的信息?;诩せ顓^(qū)選擇信號和有效信息信號確定要被激活的、被命名為激活固件的固件。激活固件被設置為可執(zhí)行的。
這里,確定激活固件的處理可以包括基于有效信息信號來確定激活區(qū)選擇信號是否有效的處理。其可以被配置為包括如果確定激活區(qū)選擇信號有效,則選擇由激活區(qū)選擇信號指定的固件作為激活固件的處理。
上述處理的每一個可以由計算機執(zhí)行。這里,計算機是例如包括在光收發(fā)器的控制裝置中的中央處理單元(cpu)等。固件激活程序可以被使用以使計算機充當獲取裝置、固件確定裝置和固件設置裝置。
這里,獲取裝置獲取激活區(qū)選擇信號和有效信息信號,激活區(qū)選擇信號在存儲在多個存儲器區(qū)中的固件程序之間指定要被激活的固件程序,有效信息信號包括與激活區(qū)選擇信號的有效性有關(guān)的信息。固件確定裝置基于激活區(qū)選擇信號和有效信息信號來確定要被激活的激活固件。固件設置裝置將激活固件設置為可執(zhí)行的。
在這樣的情況下,固件確定裝置可以被配置成基于有效信息信號來確定激活區(qū)選擇信號是否有效。它可以被配置為如果確定激活區(qū)選擇信號有效,則選擇由激活區(qū)選擇信號指定的固件作為激活固件。
如上描述,根據(jù)本示例實施例的固件激活設備100、固件激活方法以及固件激活程序,在激活多個固件程序之一時,即使固件程序之一發(fā)生故障,也能夠簡單地激活另一固件程序。
[第二示例實施例]
接下來,將會描述本發(fā)明的第二示例實施例。圖2是圖示出根據(jù)本發(fā)明的第二示例實施例的控制器200的配置的框圖??刂破?00是激活例如包括在光收發(fā)器的控制單元中的cpu(中央處理單元)等的模塊。
控制器200包括cpu(處理器)210、易失性存儲器(第一存儲裝置)220以及非易失性存儲器(第二存儲裝置)230。
cpu210從外部系統(tǒng)20接收cpu開始信號s20、激活區(qū)選擇信號s21和有效信息信號s22。這里,激活區(qū)選擇信號s21是在存儲在多個存儲器區(qū)中的固件程序之間指定要被激活的固件程序的信號。有效信息信號s22是包括與激活區(qū)選擇信號s21的有效性有關(guān)的信息的信號。
借接收cpu開始信號s20的機會,cpu210將存儲在非易失性存儲器230中的引導加載器(bootloader)程序p21加載到易失性存儲器220中的引導加載器程序區(qū)。cpu210具有從易失性存儲器220的地址“n”讀取引導加載器程序p11的功能。根據(jù)第一示例實施例,固件激活設備100由被讀取到cpu210內(nèi)的引導加載器程序p11配置。
引導加載器程序p11優(yōu)先于存儲在非易失性存儲器230中的激活區(qū)信息p22,來參考激活區(qū)選擇信號s21和有效信息信號s22。引導加載器程序p11基于激活區(qū)選擇信號s21和激活區(qū)信息p22來確定非易失性存儲器230的、在其中存儲有要被激活的固件的區(qū)。這里,假設非易失性存儲器230包括兩個激活區(qū),也就是,由a側(cè)和b側(cè)組成的兩個激活側(cè)。
根據(jù)上述確定,引導加載器程序p11復制存儲在非易失性存儲器230中的a側(cè)的固件p23或b側(cè)的固件p24,并且將其布置在包括在易失性存儲器220中的用于cpu210操作的操作固件區(qū)。也就是說,作為要被激活的固件的激活固件被設置為可執(zhí)行的。引導加載器程序p11從易失性存儲器220中的操作固件區(qū)的前導地址(地址“n1”)激活用于cpu210操作的固件p12作為激活固件。
如上所述,根據(jù)本示例實施例,控制器200包括引導加載器程序p11。引導加載器程序p11接收cpu開始信號s20、激活區(qū)選擇信號s21來指定作為激活側(cè)的a側(cè)或b側(cè),并且接收有效信息信號s22來防止激活區(qū)選擇信號s21誤操作。
這里,例如,引導加載器程序p11讀取激活區(qū)選擇信號s21和有效信息信號s22的極性,并且確定非易失性存儲器230的、在其中存儲有要被激活的固件的激活側(cè)(a側(cè)或b側(cè))。優(yōu)先于讀取存儲在非易失性存儲器230中的激活區(qū)的信息,先執(zhí)行激活側(cè)的確定。引導加載器程序p11激活存儲在已經(jīng)被確定的激活側(cè)中的固件。
根據(jù)本示例實施例的控制器200的配置使得cpu210能夠激活固件,即使存儲在非易失性存儲器230的激活區(qū)的固件程序之一的數(shù)據(jù)損壞。這是因為包括在根據(jù)本示例實施例的控制器200中的引導加載器程序p11優(yōu)先地讀取激活區(qū)選擇信號s21和有效信息信號s22,并且因此可以確定激活側(cè)。也就是說,根據(jù)本示例實施例的控制器200,能夠在cpu210上激活由來自外部系統(tǒng)20的信號控制指定的激活區(qū)(激活側(cè))中的固件。
如上所述,在根據(jù)本示例實施例的控制器200中,引導加載器程序p11被讀取到cpu210中,由其配置固件激活設備。這實現(xiàn)了上述的效果,即在激活多個固件程序之一時,即使固件程序之一發(fā)生故障,也能夠簡單地激活另一固件程序。
接下來,將會描述根據(jù)本示例實施例的控制器200的操作。圖3a、圖3b和圖3c是描述根據(jù)本示例實施例的控制器200的操作的流程圖。
激活控制器200中的cpu210的操作將如下描述。包括在控制器200中的cpu從外部系統(tǒng)20接收激活區(qū)選擇信號s21和有效信息信號s22(步驟s201)。cpu210從外部系統(tǒng)20接收cpu開始信號s20(步驟s202)。
隨后,cpu210從非易失性存儲器230的地址“n”讀取引導加載器程序p21,并且將其復制在易失性存儲器220的地址“n”中(步驟s203)。被復制在易失性存儲器220中的引導加載器程序p11開始在cpu210上運行(步驟s204)。
引導加載器程序p11讀取有效信息信號s22(步驟s205)并且確定激活區(qū)選擇信號s21是否有效(步驟s206)。如果有效信息信號s22是有效的(步驟s206/是),則引導加載器程序p11讀取激活區(qū)選擇信號s21(圖3b中步驟s207)并且確定由激活區(qū)選擇信號s21指示的激活側(cè)是a側(cè)還是b側(cè)(步驟s208)。
如果由激活區(qū)選擇信號s21指示的激活側(cè)是a側(cè)(步驟s208/是),則引導加載器程序p11確定要被復制的地址是非易失性存儲器230的a側(cè)的固件p23被存儲在其中的地址“n2”(步驟s209)。引導加載器程序p11將來自與非易失性存儲器230中的a側(cè)的激活側(cè)相對應的地址“n2”的a側(cè)固件(fw)復制到易失性存儲器220的地址“n1”中(步驟s210)。
另一方面,如果由激活區(qū)選擇信號s21指示的激活側(cè)是b側(cè)(步驟s208/否),則引導加載器程序p11確定要被復制的地址是非易失性存儲器230的b側(cè)的固件p24被存儲在其中的地址“n3”(步驟s211)。引導加載器程序p11將與來自非易失性存儲器230中的b側(cè)的激活側(cè)相對應的地址“n3”的b側(cè)固件(fw)復制到易失性存儲器220的地址“n1”中(步驟s212)。
如果激活區(qū)選擇信號s21無效(圖3a中步驟s206/否),則引導加載器程序p11讀取存儲在非易失性存儲器230中的激活區(qū)信息p22(圖3c中的步驟301)并且確定激活側(cè)是a側(cè)還是b側(cè)(步驟s302)。隨后的處理與上述步驟(圖3b中步驟s209至s212)類似。
最后,用于cpu210的、被復制在易失性存儲器220中的固件p12開始在cpu210上運行(步驟s213);結(jié)果,激活cpu210的操作完成。
如上所述,根據(jù)本示例實施例的控制器200,可以獲得以下的效果。也就是說,即使存儲在非易失性存儲器230中的、由激活區(qū)信息指示的激活側(cè)(a側(cè)或b側(cè))的固件損壞,沒有損壞的固件可以被從外部系統(tǒng)、通過指示另一激活側(cè)來激活。這使得即使在設置系統(tǒng)包括控制器200之后,有可能在安裝環(huán)境中激活cpu210。這排除了需要召回諸如cpu激活模塊的安裝的控制器200,并且即使固件程序之一損壞也可能避免費用增加。
根據(jù)本示例實施例的控制器200可以被安裝在光收發(fā)器中。這樣的光收發(fā)器的示例在圖4中圖示出。光收發(fā)器300包括根據(jù)本示例實施例的控制器200,用于發(fā)射由具有數(shù)據(jù)信號的調(diào)制激光獲得的光信號的光發(fā)射裝置310,以及用于通過接收和解調(diào)光信號來接收數(shù)據(jù)信號的光接收裝置320??刂破?00控制光發(fā)射裝置310和光接收裝置320的操作。
這里,光收發(fā)器300是例如,作為用于100gbps(每秒千兆)傳輸?shù)臒岵灏喂馐瞻l(fā)器模塊的cfp(centum形狀因子可插拔)等。在線升級功能在作為cfp的行業(yè)標準規(guī)范的msa(多源協(xié)議)中指定。在線升級的功能,包括非易失性存儲器中的具有兩側(cè)(a側(cè)和b側(cè))的固件,參照a側(cè)和b側(cè)上的激活側(cè)信息,被定義為規(guī)范。在這樣的情況下,cpu激活失敗可以由在線升級操作期間的人為失誤引起。
然而,根據(jù)本示例實施例的光收發(fā)器300,如上描述,能夠防止這樣問題發(fā)生。
如上所述,在日本專利申請未決公開no.2014-150426中描述的有關(guān)的光收發(fā)器,包括在控制器中的cpu基于存儲在rom的數(shù)據(jù)區(qū)中的存儲體切換數(shù)據(jù)(激活區(qū)信息)執(zhí)行應用程序(固件)。也就是說,cpu是指激活區(qū)信息并且執(zhí)行存儲在第二存儲體或第三存儲體中的固件。
此時,如果固件有故障,諸如存儲在由激活區(qū)信息指示的存儲體中的固件損壞,cpu不能執(zhí)行固件。在這樣的情況下,有關(guān)的光收發(fā)器需要分別執(zhí)行更新激活區(qū)信息的內(nèi)容的處理以便執(zhí)行存儲在其他存儲體中固件。結(jié)果,問題是由包括在有關(guān)光收發(fā)器中的控制器執(zhí)行的處理變得復雜。
因此,問題是在基于激活區(qū)信息激活多個固件程序中的一個中,如果由激活區(qū)信息指示的固件程序發(fā)生故障,則激活處理會變得復雜。
根據(jù)本發(fā)明的示例優(yōu)點是,根據(jù)本發(fā)明的固件激活設備以及固件激活方法,在激活多個固件程序之一時,即使固件程序之一發(fā)生故障,也能夠簡單地激活另一固件程序。
盡管本發(fā)明已經(jīng)參考其示例實施例被特別的示出以及描述,但是本發(fā)明不限于這些實施例。本領(lǐng)域的技術(shù)人員將理解,可以做出各種形式和細節(jié)變化而不偏離由權(quán)利要求限定的本發(fā)明的精神和范圍。