專利名稱:一種加載固件的方法和設(shè)備的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及網(wǎng)絡(luò)通信領(lǐng)域,尤其涉及一種加載固件的方法和設(shè)備。
背景技術(shù):
通常,交換芯片通過一個串行管理接口 Serial Management hterface,簡稱為 SMI)連接多個物理層(physical layer,簡稱為PHY)芯片,各個PHY芯片通過不同的物理地址來區(qū)分。在為PHY芯片加載固件(Fireware)時,根據(jù)物理地址通過SMI依次為各個PHY 芯片加載。因此,通常的PHY芯片固件加載方式,加載固件時間長,導(dǎo)致設(shè)備啟動時間長,不能滿足快速啟動設(shè)備的需求。
發(fā)明內(nèi)容
本發(fā)明實(shí)施例提供了一種加載固件的方法和設(shè)備,以解決現(xiàn)有技術(shù)中加載固件時間長,設(shè)備不能快速啟動的問題。為解決上述技術(shù)問題,本發(fā)明實(shí)施例提供了一種加載固件的方法,所述固件加載的方法應(yīng)用于網(wǎng)絡(luò)設(shè)備中,所述網(wǎng)絡(luò)設(shè)備包括邏輯芯片和多個物理層PHY芯片,其中,所述邏輯芯片通過多個串行管理接口 SMI與所述多個PHY芯片連接,所述多個PHY芯片中至少有兩個PHY芯片的物理地址相同,并且所述多個SMI中的任意一個SMI連接的所有PHY芯片的物理地址各不相同;所述固件加載的方法包括所述邏輯芯片打開所述多個SMI中的至少兩個SMI ;所述邏輯芯片通過所述打開的至少兩個SMI,向物理地址相同的至少兩個PHY芯片并行加載固件。本發(fā)明實(shí)施例提供了一種網(wǎng)絡(luò)設(shè)備,包括邏輯芯片和多個物理層PHY芯片,其中所述邏輯芯片通過多個串行管理接口 SMI與所述多個PHY芯片連接;所述多個PHY芯片中至少有兩個PHY芯片的物理地址相同,并且所述多個SMI中的任意一個SMI連接的所有PHY芯片的物理地址各不相同;所述邏輯芯片,用于打開所述多個SMI中的至少兩個SMI,并通過所述打開的至少兩個SMI,向PHY芯片并行加載固件,所述打開的至少兩個SMI連接的PHY芯片中至少有兩個PHY芯片的物理地址相同。采用本發(fā)明實(shí)施例提供的技術(shù)方案,通過邏輯芯片向多個PHY芯片并行加載固件,可以縮短加載固件的時間,實(shí)現(xiàn)設(shè)備快速啟動。
圖1是本發(fā)明實(shí)施例提供的一種加載固件的方法流程圖;圖2是本發(fā)明實(shí)施例提供的一種邏輯芯片與PHY芯片連接的示意圖;圖3是本發(fā)明實(shí)施例提供的另一種邏輯芯片與PHY芯片連接的示意圖4是本發(fā)明實(shí)施例提供的一種網(wǎng)絡(luò)設(shè)備框圖;圖5是本發(fā)明實(shí)施例提供的另一種網(wǎng)絡(luò)設(shè)備框圖;圖6是本發(fā)明實(shí)施例提供的又一種網(wǎng)絡(luò)設(shè)備框圖。
具體實(shí)施例方式參見圖1,是本發(fā)明實(shí)施例提供的一種加載固件的方法流程圖,所述固件加載的方法應(yīng)用于網(wǎng)絡(luò)設(shè)備中,所述網(wǎng)絡(luò)設(shè)備包括邏輯芯片和多個PHY芯片,其中,所述邏輯芯片通過多個SMI與所述多個PHY芯片連接,所述多個PHY芯片中至少有兩個PHY芯片的物理地址相同,并且所述多個SMI中的任意一個SMI連接的所有PHY芯片的物理地址各不相同;所述固件加載的方法包括101 所述邏輯芯片打開所述多個SMI中的至少兩個SMI。
所述網(wǎng)絡(luò)設(shè)備可以是交換機(jī)或路由器。所述邏輯芯片可以是可擦除可編輯邏輯芯片(Erasable Programmable Logic Device,簡稱為 EPLD),現(xiàn)場可編程門陣列(Field-Programmable Gate Array,簡稱為FPGA),或用于擴(kuò)展SMI的特定應(yīng)用集成電路(Application Specific Integrated Circuit,簡稱為 ASIC)等。所述網(wǎng)絡(luò)設(shè)備還可以包括處理器,所述處理器可以是中央處理器(Central Processing Unit,簡稱為 CPU),網(wǎng)絡(luò)處理器(Network Processing Unit,簡稱為 NPU)等。所述處理器可以在所述邏輯芯片的寄存器中寫入打開所述至少兩個SMI的代碼, 以使所述邏輯芯片打開所述至少兩個SMI。102 所述邏輯芯片通過所述打開的至少兩個SMI,向物理地址相同的至少兩個 PHY芯片并行加載固件。所述處理器可以向所述邏輯芯片發(fā)送固件加載指令,所述固件加載指令中包括所述物理地址相同的至少兩個PHY芯片的物理地址;所述邏輯芯片可以根據(jù)所述固件加載指令,通過所述打開的至少兩個SMI向所述物理地址相同的至少兩個PHY芯片并行加載固件。所述網(wǎng)絡(luò)設(shè)備還可以包括交換芯片,所述交換芯片通過SMI與所述邏輯芯片連接。所述固件可以保存在所述邏輯芯片的存儲器中。所述固件也可以在加載固件之前,從所述處理器或所述交換芯片獲取。所述處理器可以檢測所述多個PHY芯片的固件是否加載成功,例如可以通過軟件檢測是否加載成功。當(dāng)所述多個PHY芯片中的一個PHY芯片的固件加載不成功時,可以單獨(dú)對該固件加載不成功的PHY芯片重新加載固件,即所述邏輯芯片打開連接到所述固件加載不成功的 PHY芯片的SMI,通過所述打開的連接到所述固件加載不成功的PHY芯片的SMI,向所述固件加載不成功的PHY芯片加載固件。當(dāng)所述多個PHY芯片中有多于一個PHY芯片的固件加載不成功時,則分別對每一個固件加載不成功的PHY芯片做上述單獨(dú)重新加載固件的流程。上述單獨(dú)重新加載固件的流程包括處理器在所述邏輯芯片的寄存器中寫入打開連接到所述固件加載不成功的PHY芯片的SMI的代碼,以使所述邏輯芯片打開所述連接到所述固件加載不成功的PHY芯片的 SMI ;所述邏輯芯片接收處理器發(fā)送的固件加載指令,所述固件加載指令中包括所述固件加載不成功的PHY芯片的物理地址;所述邏輯芯片根據(jù)所述固件加載指令,通過所述打開的連接到所述固件加載不成功的PHY芯片的SMI向所述固件加載不成功的PHY芯片加載固件。當(dāng)完成所述多個PHY芯片的固件加載,所述交換芯片需要訪問所述多個PHY芯片中的一個PHY芯片時,所述交換芯片通過所述邏輯芯片打開連接到所述需要訪問的PHY芯片的SMI,通過所述打開的連接到所述需要訪問的PHY芯片的SMI,訪問所述需要訪問的PHY芯片。如果所述多個PHY芯片的固件發(fā)生更新,可以通過軟件升級的方式更新固件。具體的,通過本實(shí)施例提供的技術(shù)方案,向所述多個PHY芯片加載更新后的固件。本發(fā)明實(shí)施例因?yàn)樵诩虞d固件時打開多個SMI,向這多個SMI連接的PHY芯片中的至少兩個物理地址相同的PHY芯片并行加載固件,和通常所有PHY芯片的固件都需要依次加載的方案相比,縮短了加載固件的時間。邏輯芯片與PHY芯片間的具體連接方式可以有多種變化,只要滿足以下兩個設(shè)計原則。一方面,打開的至少兩個SMI所連接的PHY芯片中需要有兩個或更多物理地址相同,以縮短加載固件的時間。另一方面,為了能夠準(zhǔn)確訪問特定的PHY芯片,多個SMI中的任意一個SMI連接的所有PHY芯片的物理地址必須各不相同。根據(jù)上述設(shè)計原則,可以設(shè)計多種具體的固件加載方案。一般來說,為了簡便起見,邏輯芯片會同時打開所有與PHY芯片相連的SMI。為了能最快的加載固件,可以將每一個PHY芯片都與邏輯芯片通過SMI單獨(dú)相連,即PHY芯片與SMI —一對應(yīng)。通常的多端口 PHY芯片相當(dāng)于將多個PHY芯片集成在一個芯片上,每個端口與一個被集成的PHY芯片對應(yīng)。多端口 PHY芯片可以視為多個獨(dú)立的PHY芯片。舉例來說,本發(fā)明實(shí)施例的一個具體應(yīng)用中,將集成在一個多端口 PHY芯片上的各個PHY芯片的物理地址設(shè)置為相同,并且將各個端口分別通過不同的SMI與邏輯芯片連接。如圖2所示,邏輯芯片通過8個SMI與4個2端口 PHY芯片,即PHY芯片1 PHY芯片 4,連接。每個端口的物理地址都為PHY_ADDR1。此外,也可以為一個多端口 PHY芯片上的各個PHY芯片的設(shè)置各不相同的物理地址,這樣整個多端口 PHY芯片可以通過一個SMI與邏輯芯片連接。例如圖3所示,邏輯芯片通過6個SMI分別與6個4端口 PHY芯片,即PHY芯片1 PHY芯片6,連接。每個4端口 PHY芯片的各個端口的物理地址依次為PHY_ADDR1、PHY_ADDR2、PHY_ADDR3和PHY_ADDR4。舉例來說,結(jié)合圖2,本發(fā)明實(shí)施例提供的加載固件的方法如下處理器向邏輯芯片的寄存器中寫入打開所有SMI的代碼,例如00,觸發(fā)邏輯芯片同時打開與PHY芯片連接的6個SMI,SMIl SMI6。然后,處理器向邏輯芯片發(fā)送固件加載指令,如果其中包括物理地址PHY_ADDR1,則邏輯芯片根據(jù)所述固件加載指令通過SMIl SMI6同時向PHY芯片1 PHY芯片6的端口 1加載固件;如果其中包括物理地址PHY_ADDR2, 則所述邏輯芯片根據(jù)所述固件加載通過SMIl SMI6并行向PHY芯片1 PHY芯片6的端口 2加載固件。如果通過檢測,PHY芯片3的端口 2加載不成功,處理器向邏輯芯片的寄存器中寫入打開連接到PHY芯片3的端口 2的SMI的代碼,例如03,觸發(fā)所述邏輯芯片打開SMI3。然后,處理器向邏輯芯片發(fā)送固件加載指令,其中包括PHY芯片3的端口 2的物理地址PHY_ ADDR2,邏輯芯片根據(jù)收到的所述固件加載指令,通過已打開的SMI3向PHY芯片3的端口 2 加載固件。參見圖4,是本發(fā)明實(shí)施例提供的一種網(wǎng)絡(luò)設(shè)備框圖,所述網(wǎng)絡(luò)設(shè)備包括邏輯芯片 401和多個物理層PHY芯片402。其中所述邏輯芯片401通過多個SMI與所述多個PHY芯片402連接;所述多個PHY芯片402中至少有兩個PHY芯片402的物理地址相同,并且所述多個SMI中的任意一個SMI連接的所有PHY芯片402的物理地址各不相同;所述邏輯芯片401,用于打開所述多個SMI中的至少兩個,并通過所述打開的至少兩個SMI,向PHY芯片402并行加載固件,所述打開的至少兩個SMI連接的PHY芯片中至少有兩個PHY芯片的物理地址相同。 所述網(wǎng)絡(luò)設(shè)備可以是交換機(jī)或路由器。所述邏輯芯片401可以是可擦除可編輯邏輯芯片EPLD,現(xiàn)場可編程門陣列FPGA, 或用于擴(kuò)展SMI的特定應(yīng)用集成電路ASIC等。如圖5所示,所述網(wǎng)絡(luò)設(shè)備還可以包括處理器403,所述處理器403與所述邏輯芯片401連接。所述處理器403,可以是中央處理器或網(wǎng)絡(luò)處理器等。所述處理器403,用于在所述邏輯芯片的寄存器中寫入打開所述至少兩個SMI的代碼,以使所述邏輯芯片打開所述至少兩個SMI。所述處理器403,還用于向所述邏輯芯片401發(fā)送固件加載指令,所述固件加載指令中包括PHY芯片402的物理地址,以使所述邏輯芯片通過所述打開的至少兩個SMI向PHY 芯片402并行加載固件。所述處理器403包括中央處理器CPU,網(wǎng)絡(luò)處理器NPU等。當(dāng)所述多個PHY芯片402中一個PHY芯片402的固件加載不成功時,所述邏輯芯片401還用于打開所述連接到固件加載不成功的PHY芯片的SMI,并通過所述打開的連接到固件加載不成功的PHY芯片的SMI,向所述固件加載不成功的PHY芯片加載固件。當(dāng)所述多個PHY芯片402中一個PHY芯片402的固件加載不成功時,所述處理器 403還用于在所述邏輯芯片401的寄存器中寫入打開連接到所述固件加載不成功的PHY芯片402的SMI的代碼,以使所述邏輯芯片401打開所述連接到所述固件加載不成功的PHY芯片402的SMI ;所述處理器403還用于向所述邏輯芯片401發(fā)送固件加載指令,所述固件加載指令中包括所述固件加載不成功的PHY芯片402的物理地址,以使所述邏輯芯片401通過所述打開的連接到所述固件加載不成功的PHY芯片402的SMI向所述固件加載不成功的 PHY芯片402加載固件。如圖6所示,所述網(wǎng)絡(luò)設(shè)備還可以包括交換芯片404,所述交換芯片404通過SMI與所述邏輯芯片401連接;可選的,所述邏輯芯片還用于在加載固件之前,從所述交換芯片404或者所示處理器403獲取所述固件。當(dāng)完成所述多個PHY芯片402的固件加載,所述交換芯片404需要訪問所述多個PHY芯片402中的一個PHY芯片402時,所述邏輯芯片401還用于打開所述PHY芯片402連接的SMI ;所述交換芯片404用于通過所述打開的連接到所述需要訪問的PHY芯片的SMI, 訪問所述需要訪問的PHY芯片。采用本發(fā)明實(shí)施例提供的技術(shù)方案,通過邏輯芯片向多個PHY芯片并行加載固件,可以縮短加載固件的時間,實(shí)現(xiàn)設(shè)備快速啟動。本領(lǐng)域普通技術(shù)人員可以理解實(shí)現(xiàn)上述實(shí)施例方法中的全部或部分步驟是可以通過程序來指令相關(guān)的硬件完成,所述的程序可以存儲于計算機(jī)可讀存儲介質(zhì)中,所述存儲介質(zhì)可以是R0M/RAM,磁盤或光盤等。以上所述,僅為本發(fā)明較佳的具體實(shí)施方式
,但本發(fā)明的保護(hù)范圍并不局限于此, 任何熟悉本技術(shù)領(lǐng)域的技術(shù)人員在本發(fā)明揭露的技術(shù)范圍內(nèi),可輕易想到的變化或替換, 都應(yīng)涵蓋在本發(fā)明的保護(hù)范圍之內(nèi)。
8
權(quán)利要求
1.一種加載固件的方法,其特征在于,所述固件加載的方法應(yīng)用于網(wǎng)絡(luò)設(shè)備中,所述網(wǎng)絡(luò)設(shè)備包括邏輯芯片和多個物理層PHY芯片,其中,所述邏輯芯片通過多個串行管理接口 SMI與所述多個PHY芯片連接,所述多個PHY芯片中至少有兩個PHY芯片的物理地址相同, 并且所述多個SMI中的任意一個SMI連接的所有PHY芯片的物理地址各不相同;所述固件加載的方法包括所述邏輯芯片打開所述多個SMI中的至少兩個SMI ;所述邏輯芯片通過所述打開的至少兩個SMI,向物理地址相同的至少兩個PHY芯片并行加載固件。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述邏輯芯片通過所述打開的至少兩個 SMI,向物理地址相同的至少兩個PHY芯片并行加載固件具體包括所述邏輯芯片接收處理器發(fā)送的固件加載指令,所述固件加載指令中包括所述物理地址相同的至少兩個PHY芯片的物理地址;所述邏輯芯片根據(jù)所述固件加載指令,通過所述打開的至少兩個SMI向所述物理地址相同的至少兩個PHY芯片并行加載固件。
3.根據(jù)權(quán)利要求1或2所述的方法,其特征在于,所述邏輯芯片打開所述多個SMI中的至少兩個SMI具體包括處理器在所述邏輯芯片的寄存器中寫入打開所述多個SMI中的至少兩個SMI的代碼, 以使所述邏輯芯片打開所述至少兩個SMI。
4.根據(jù)權(quán)利要求1至3任一項(xiàng)所述的方法,其特征在于,所述方法還包括當(dāng)所述多個PHY芯片中一個PHY芯片的固件加載不成功時,所述邏輯芯片打開連接到所述固件加載不成功的PHY芯片的SMI ;所述邏輯芯片通過所述打開的連接到所述固件加載不成功的PHY芯片的SMI,向所述固件加載不成功的PHY芯片加載固件。
5.根據(jù)權(quán)利要求4所述的方法,其特征在于,所述邏輯芯片通過所述打開的連接到所述固件加載不成功的PHY芯片的SMI,向所述固件加載不成功的PHY芯片加載固件具體包括所述邏輯芯片接收處理器發(fā)送的固件加載指令,所述固件加載指令中包括所述固件加載不成功的PHY芯片的物理地址;所述邏輯芯片根據(jù)所述固件加載指令,通過所述打開的連接到所述固件加載不成功的 PHY芯片的SMI向所述固件加載不成功的PHY芯片加載固件。
6.根據(jù)權(quán)利要求4或5所述的方法,其特征在于,所述邏輯芯片打開連接到所述固件加載不成功的PHY芯片的SMI具體包括處理器在所述邏輯芯片的寄存器中寫入打開連接到所述固件加載不成功的PHY芯片的SMI的代碼,以使所述邏輯芯片打開所述連接到所述固件加載不成功的PHY芯片的SMI。
7.根據(jù)權(quán)利要求1至6任一項(xiàng)所述的方法,其特征在于,所述方法還包括當(dāng)完成所述多個PHY芯片的固件加載,交換芯片需要訪問所述多個PHY芯片中的一個 PHY芯片時,所述邏輯芯片打開連接到所述需要訪問的PHY芯片的SMI ;所述邏輯芯片通過所述打開的連接到所述需要訪問的PHY芯片的SMI,訪問所述需要訪問的PHY芯片。
8.根據(jù)權(quán)利要求1至7任一項(xiàng)所述的方法,其特征在于,在加載固件之前,還包括所述邏輯芯片從交換芯片或者處理器獲取所述固件。
9.一種網(wǎng)絡(luò)設(shè)備,其特征在于,包括邏輯芯片和多個物理層PHY芯片,其中所述邏輯芯片通過多個串行管理接口 SMI與所述多個PHY芯片連接;所述多個PHY芯片中至少有兩個PHY芯片的物理地址相同,并且所述多個SMI中的任意一個SMI連接的所有PHY芯片的物理地址各不相同;所述邏輯芯片,用于打開所述多個SMI中的至少兩個SMI,并通過所述打開的至少兩個 SMI,向PHY芯片并行加載固件,所述打開的至少兩個SMI連接的PHY芯片中至少有兩個PHY 芯片的物理地址相同。
10.根據(jù)權(quán)利要求9所述的網(wǎng)絡(luò)設(shè)備,其特征在于,所述網(wǎng)絡(luò)設(shè)備還包括處理器,所述處理器與所述邏輯芯片連接。所述處理器,用于在所述邏輯芯片的寄存器中寫入打開所述至少兩個SMI的代碼,以使所述邏輯芯片打開所述至少兩個SMI ;所述處理器,還用于向所述邏輯芯片發(fā)送固件加載指令,所述固件加載指令中包括PHY 芯片的物理地址。
11.根據(jù)權(quán)利要求9或10所述的網(wǎng)絡(luò)設(shè)備,其特征在于,當(dāng)所述多個PHY芯片中一個PHY芯片的固件加載不成功時,所述邏輯芯片還用于打開所述連接到固件加載不成功的 PHY芯片的SMI,并通過所述打開的連接到固件加載不成功的PHY芯片的SMI,向所述固件加載不成功的PHY芯片加載固件。
12.根據(jù)權(quán)利要求9至11任一項(xiàng)所述的網(wǎng)絡(luò)設(shè)備,其特征在于,所述網(wǎng)絡(luò)設(shè)備還包括交換芯片,所述交換芯片通過SMI與所述邏輯芯片連接;當(dāng)完成所述多個PHY芯片的固件加載,所述交換芯片需要訪問所述多個PHY芯片中的一個PHY芯片時,所述邏輯芯片還用于打開連接到所述需要訪問的PHY芯片的SMI ;所述交換芯片用于通過所述打開的連接到所述需要訪問的PHY芯片的SMI,訪問所述需要訪問的PHY芯片。
全文摘要
本發(fā)明實(shí)施例公開了一種加載固件的方法和設(shè)備。所述方法包括邏輯芯片打開多個SMI;所述邏輯芯片通過所述打開的多個SMI,向物理地址相同的至少兩個PHY芯片并行加載固件。采用本發(fā)明實(shí)施例提供的技術(shù)方案,可以解決加載固件時間長,設(shè)備不能快速啟動的問題。
文檔編號G06F9/445GK102236572SQ20111021842
公開日2011年11月9日 申請日期2011年8月1日 優(yōu)先權(quán)日2011年8月1日
發(fā)明者周慶松, 孫長幸, 張津楊, 徐國梁 申請人:華為技術(shù)有限公司