Otn系列芯片軟件工具包架構的實現(xiàn)方法及裝置制造方法
【專利摘要】本發(fā)明公開了一種OTN系列芯片軟件工具包架構的實現(xiàn)方法及裝置,涉及軟件開發(fā)領域,該方法為:將模塊的寄存器類型細化為按照告警只讀類、狀態(tài)只讀類、計數(shù)只讀類、配置讀寫類和間址讀寫類順序編排的頭文件,每個寄存器按G.709規(guī)范形成相關拆分域,建立各分類的軟件配置文件表和對應的功能標志,形成統(tǒng)一操作接口;根據(jù)頭文件得到重用化抽象結構,并進行實例化;根據(jù)OTN芯片的業(yè)務映射路徑建立對應的映射路徑鏈表,將映射鏈表中的節(jié)點逐一指向映射路徑的模塊。本發(fā)明能提供模塊接口的統(tǒng)一操作、相同或類似模塊的SDK重用以及基于模塊重用的建立OTN系列芯片的映射結構,為二次應用開發(fā)提供簡單方便的軟件架構基礎。
【專利說明】OTN系列芯片軟件工具包架構的實現(xiàn)方法及裝置
【技術領域】
[0001]本發(fā)明涉及軟件開發(fā)領域,特別是涉及一種0TN(0ptical Transport Network,光傳送網(wǎng))系列芯片軟件工具包架構的實現(xiàn)方法及裝置。
【背景技術】
[0002]通常情況下,伴隨著芯片發(fā)布的SDK (Software Development Kit,軟件開發(fā)工具包)是為了便于軟件工程師進行二次開發(fā),這樣可以快速地構建基于芯片的應用系統(tǒng),省去編寫硬件底層代碼的過程。然而,隨著芯片復雜度的提高和關聯(lián)硬件模塊的增多,常規(guī)的SDK提供的基于寄存器或獨立硬件模塊的編程接口使得二次開發(fā)相關模塊的應用變得極其困難,關聯(lián)模塊較多的復雜芯片的二次應用開發(fā)也變得極其困難,模塊的異同操作接口也增加了應用的復雜性,并且同系列芯片的相同或類似硬件模塊的SDK的非重用性不僅增加了底層開發(fā)的任務量,而且導致較差的可移植性。上述不足在OTN系列芯片中體現(xiàn)得尤為明顯,主要是由于映射結構中相關硬件模塊較多,相同或類似的硬件模塊在同一芯片或系列芯片的映射結構中大量復用。
【發(fā)明內(nèi)容】
[0003]本發(fā)明的目的是為了克服上述【背景技術】的不足,提供一種OTN系列芯片軟件工具包架構的實現(xiàn)方法及裝置,能提供模塊接口的統(tǒng)一操作、相同或類似模塊的SDK重用以及基于模塊重用的建立OTN系列芯片的映射結構,為二次應用開發(fā)提供簡單方便的軟件架構基礎。
[0004]本發(fā)明提供一種OTN系列芯片軟件工具包架構的實現(xiàn)方法,包括以下步驟:
[0005]A:模塊操作接口重用化抽象及實例化:讀取芯片邏輯設計階段各模塊的寄存器定義文件,將模塊的寄存器類型細化為符合規(guī)定的按照告警只讀類、狀態(tài)只讀類、計數(shù)只讀類、配置讀寫類和間址讀寫類順序編排的頭文件,并且每個寄存器按照G.709規(guī)范形成相關拆分域,根據(jù)上述分類的寄存器建立各個分類的軟件配置文件表和對應的功能標志,該標志為后續(xù)模塊的重用配置標志,同時依據(jù)分類形成模塊的統(tǒng)一操作接口 ;根據(jù)上述編排且?guī)в邢嚓P拆分域的頭文件,得到重用化抽象結構;對現(xiàn)有模塊的新功能進行添加,對現(xiàn)有模塊沒有的功能采用功能標志進行使能;完成所有模塊的抽象之后,按照所有芯片的實際擁有模塊的模塊數(shù)進行實例化;
[0006]B:建立嵌入模塊的OTN芯片映射路徑:根據(jù)OTN芯片的業(yè)務映射路徑,建立對應的映射路徑鏈表,每一個業(yè)務映射路徑都對應建立一個映射路徑鏈表,完成映射路徑鏈表后,將映射鏈表中的節(jié)點逐一指向映射路徑的模塊,至此完成嵌入模塊的OTN芯片映射路徑,此后對業(yè)務映射模塊的操作將完全轉化為對鏈表和鏈表節(jié)點的統(tǒng)一操作。
[0007]在上述技術方案的基礎上,步驟A中所述統(tǒng)一操作接口包括[配置讀(配置類型,讀配置值)]/ [配置寫(配置類型,寫配置值)]、[計數(shù)讀(讀指針)]/ [告警讀(讀指針)]/[狀態(tài)讀(讀指針)]/[間址讀(配置類型,讀配置值)]/[間址寫(配置類型,寫配置值)]。[0008]在上述技術方案的基礎上,步驟A還包括以下步驟:如果某個模塊在之前的芯片軟件中存在相同或者類似的模塊接口,那么就只需采用直接或繼承的方式使用原有模塊接口,繼承使用;否則,按照規(guī)則對模塊新建接口重用化抽象結構。
[0009]在上述技術方案的基礎上,步驟A還包括以下步驟:如果某個模塊抽象在芯片中對應多個模塊,則對該模塊抽象進行多次實例化。
[0010]在上述技術方案的基礎上,步驟B還包括以下步驟:如果某個業(yè)務有多個映射路徑,則該映射路徑鏈表根據(jù)路徑變化進行動態(tài)的調(diào)整。
[0011]本發(fā)明還提供一種OTN系列芯片軟件工具包架構的實現(xiàn)裝置,包括模塊操作接口重用化抽象及實例化單元和嵌入模塊的OTN芯片映射路徑建立單元,其中:
[0012]所述模塊操作接口重用化抽象及實例化單元,用于:讀取芯片邏輯設計階段各模塊的寄存器定義文件,將模塊的寄存器類型細化為符合規(guī)定的按照告警只讀類、狀態(tài)只讀類、計數(shù)只讀類、配置讀寫類和間址讀寫類順序編排的頭文件,并且每個寄存器按照G.709規(guī)范形成相關拆分域,根據(jù)上述分類的寄存器建立各個分類的軟件配置文件表和對應的功能標志,該標志為后續(xù)模塊的重用配置標志,同時依據(jù)分類形成模塊的統(tǒng)一操作接口 ;根據(jù)上述編排且?guī)в邢嚓P拆分域的頭文件,得到重用化抽象結構;對現(xiàn)有模塊的新功能進行添力口,對現(xiàn)有模塊沒有的功能采用功能標志進行使能;完成所有模塊的抽象之后,按照所有芯片的實際擁有模塊的模塊數(shù)進行實例化;
[0013]所述嵌入模塊的OTN芯片映射路徑建立單元,用于:根據(jù)OTN芯片的業(yè)務映射路徑,建立對應的映射路徑鏈表,每一個業(yè)務映射路徑都對應建立一個映射路徑鏈表,完成映射路徑鏈表后,將映射鏈表中的節(jié)點逐一指向映射路徑的模塊,至此完成嵌入模塊的OTN芯片映射路徑,此后對業(yè)務映射模塊的操作將完全轉化為對鏈表和鏈表節(jié)點的統(tǒng)一操作。
[0014]在上述技術方案的基礎上,所述統(tǒng)一操作接口包括[配置讀(配置類型,讀配置值)]/[配置寫(配置類型,寫配置值)]、[計數(shù)讀(讀指針)]/[告警讀(讀指針)]/[狀態(tài)讀(讀指針)]/[間址讀(配置類型,讀配置值)]/[間址寫(配置類型,寫配置值)]。
[0015]在上述技術方案的基礎上,所述模塊操作接口重用化抽象及實例化單元還用于:如果某個模塊在之前的芯片軟件中存在相同或者類似的模塊接口,那么就只需采用直接或繼承的方式使用原有模塊接口,繼承使用;否則,按照規(guī)則對模塊新建接口重用化抽象結構。
[0016]在上述技術方案的基礎上,所述模塊操作接口重用化抽象及實例化單元還用于:如果某個模塊抽象在芯片中對應多個模塊,則對該模塊抽象進行多次實例化。
[0017]在上述技術方案的基礎上,所述嵌入模塊的OTN芯片映射路徑建立單元還用于:如果某個業(yè)務有多個映射路徑,則該映射路徑鏈表根據(jù)路徑變化進行動態(tài)的調(diào)整。
[0018]與現(xiàn)有技術相比,本發(fā)明的優(yōu)點如下:
[0019]( I)本發(fā)明為所有模塊提供統(tǒng)一操作接口的軟件架構支持。
[0020](2)本發(fā)明為同一芯片或者同系列芯片中相同或者類似模塊提供了高度重用性的軟件架構支持。
[0021](3)本發(fā)明為OTN芯片復雜的映射路徑提供了動態(tài)鏈表和模塊對應的等同操作的軟件架構支持。
[0022](4)本發(fā)明為多款OTN系列芯片提供統(tǒng)一的軟件架構支持?!緦@綀D】
【附圖說明】
[0023]圖1是本發(fā)明實施例中OTN系列芯片軟件工具包架構的實現(xiàn)方法的示例。
[0024]圖2是本發(fā)明實施例中模塊接口重用化結構抽象示例。
[0025]圖3是本發(fā)明實施例中類似模塊的接口重用化結構抽象示例。
[0026]圖4是本發(fā)明實施例中建立嵌入模塊的OTN芯片映射路徑示例。
【具體實施方式】
[0027]下面結合附圖及具體實施例對本發(fā)明作進一步的詳細描述。
[0028]參見圖1所示,本發(fā)明實施例提供一種OTN系列芯片軟件工具包架構的實現(xiàn)方法,包括以下步驟:
[0029]A:模塊操作接口重用化抽象及實例化:參見圖2所示,讀取芯片邏輯設計階段各模塊的寄存器定義文件,通過人工方法,將模塊的寄存器類型細化為符合規(guī)定的按照告警只讀類、狀態(tài)只讀類、計數(shù)只讀類、配置讀寫類和間址讀寫類順序編排的頭文件,并且每個寄存器按照G.709規(guī)范形成相關拆分域,根據(jù)上述分類的寄存器建立各個分類的軟件配置文件表和對應的功能標志,該標志為后續(xù)模塊的重用配置標志,同時依據(jù)分類形成模塊的統(tǒng)一操作接口 [配置讀(配置類型,讀配置值)]config_read(config_type_n,pvalue)/[配置寫(配置類型,寫配置值)]config_write (config_type_n, value)、[計數(shù)讀(讀指針)]counter (pvalue)/[告警讀(讀指針)]alarm (pvalue) / [狀態(tài)讀(讀指針)]state (pvalue)/[間址讀(配置類型,讀配置值)]indirect_read (indirect_type_n,pvalue)/[間址寫(配置類型,寫配置值)]indirect_write (indirect_type_n, value);根據(jù)上述編排且?guī)в邢嚓P拆分域的頭文件,得到重用化抽象結構。
[0030]如果某個模塊在之前的芯片軟件中存在相同或者類似的模塊接口,那么就只需采用直接或繼承的方式使用原有模塊接口,繼承使用,參見圖3所示;否則,按照規(guī)則對模塊新建接口重用化抽象結構;對現(xiàn)有模塊的新功能進行添加,對現(xiàn)有模塊沒有的功能采用功能標志進行使能。完成所有模塊的抽象之后,按照所有芯片的實際擁有模塊的模塊數(shù)進行實例化;如果某個模塊抽象在芯片中對應多個模塊則應對該模塊抽象進行多次實例化。
[0031]B:建立嵌入模塊的OTN芯片映射路徑:參見圖4所示,根據(jù)OTN芯片的業(yè)務映射路徑,建立對應的映射路徑鏈表。每一個業(yè)務映射路徑都對應建立一個映射路徑鏈表,如果某個業(yè)務有多個映射路徑,則該映射路徑鏈表根據(jù)路徑變化進行動態(tài)的調(diào)整;完成映射路徑鏈表后,將映射鏈表中的節(jié)點逐一指向映射路徑的模塊,至此完成嵌入模塊的OTN芯片映射路徑,此后對業(yè)務映射模塊的操作將完全轉化為對鏈表和鏈表節(jié)點的統(tǒng)一操作。
[0032]本發(fā)明實施例還提供一種OTN系列芯片軟件工具包架構的實現(xiàn)裝置,包括模塊操作接口重用化抽象及實例化單元和嵌入模塊的OTN芯片映射路徑建立單元,其中:
[0033]模塊操作接口重用化抽象及實例化單元,用于:參見圖2所示,讀取芯片邏輯設計階段各模塊的寄存器定義文件,通過人工方法,將模塊的寄存器類型細化為符合規(guī)定的按照告警只讀類、狀態(tài)只讀類、計數(shù)只讀類、配置讀寫類和間址讀寫類順序編排的頭文件,并且每個寄存器按照G.709規(guī)范形成相關拆分域,根據(jù)上述分類的寄存器建立各個分類的軟件配置文件表和對應的功能標志,該標志為后續(xù)模塊的重用配置標志,同時依據(jù)分類形成模塊的統(tǒng)一操作接口 [配置讀(配置類型,讀配置值)]config_read(config_type_n, pvalue)/[配置寫(配置類型,寫配置值)]conf ig_write (conf ig_type_n, value)、[計數(shù)讀(讀指針)]counter (pvalue)/[告警讀(讀指針)]alarm (pvalue) / [狀態(tài)讀(讀指針)]state (pvalue)/[間址讀(配置類型,讀配置值)]indirect_read (indirect_type_n,pvalue)/[間址寫(配置類型,寫配置值)]indirect_write (indirect_type_n, value);根據(jù)上述編排且?guī)в邢嚓P拆分域的頭文件,得到重用化抽象結構。如果某個模塊在之前的芯片軟件中存在相同或者類似的模塊接口,那么就只需采用直接或繼承的方式使用原有模塊接口,繼承使用,參見圖3所示;否則,按照規(guī)則對模塊新建接口重用化抽象結構;對現(xiàn)有模塊的新功能進行添加,對現(xiàn)有模塊沒有的功能采用功能標志進行使能。完成所有模塊的抽象之后,按照所有芯片的實際擁有模塊的模塊數(shù)進行實例化;如果某個模塊抽象在芯片中對應多個模塊則應對該模塊抽象進行多次實例化。
[0034]嵌入模塊的OTN芯片映射路徑建立單元,用于:參見圖4所示,根據(jù)OTN芯片的業(yè)務映射路徑,建立對應的映射路徑鏈表。每一個業(yè)務映射路徑都對應建立一個映射路徑鏈表,如果某個業(yè)務有多個映射路徑,則該映射路徑鏈表根據(jù)路徑變化進行動態(tài)的調(diào)整;完成映射路徑鏈表后,將映射鏈表中的節(jié)點逐一指向映射路徑的模塊,至此完成嵌入模塊的OTN芯片映射路徑,此后對業(yè)務映射模塊的操作將完全轉化為對鏈表和鏈表節(jié)點的統(tǒng)一操作。
[0035]圖1為OTN系列芯片軟件工具包架構的實現(xiàn)方法的示例。已經(jīng)存在的某個OTN芯片0TN_CHIP_1是已完成芯片的軟件工具包,其包括a/b/c/…/n模塊,映射路徑包括a<->c<->n和a〈->b〈->c〈->n ;現(xiàn)即將為另外一個OTN芯片0TN_CHIP_2芯片設計軟件工具包,其包括a/b' /d/…/n模塊,a/b/c/…/n表示芯片0TN_CHIP_1里面的模塊名,映射路徑包括a〈->屮<->n和a〈->屮<->d〈->n。b’表示另外一個芯片0TN_CHIP_2的模塊,并且與已經(jīng)存在的芯片0TN_CHIP_1中的b模塊類似。
[0036]在開發(fā)0TN_CHIP_2芯片設計軟件工具包時,首先對模塊進行結構化抽象及實例化,模塊a/n可以直接使用0`TN_CHIP_1芯片的抽象,模塊b'采用繼承模塊b的方式進行抽象,現(xiàn)在只需要對模塊d進行新的結構化抽象,全部抽象完成后再對模塊a/b' /d/…/n進行實例化,構成0TN_CHIP_2的模塊實體,接下來建立0TN_CHIP_2的映射路徑a〈->b' <->n和a〈->b ' <->d<->n鏈表并將鏈表的節(jié)點逐一指向已經(jīng)實體化的模塊,就得到了 0ΤΝ_CHIP_2的軟件工具包。
[0037]本領域的技術人員可以對本發(fā)明實施例進行各種修改和變型,倘若這些修改和變型在本發(fā)明權利要求及其等同技術的范圍之內(nèi),則這些修改和變型也在本發(fā)明的保護范圍之內(nèi)。
[0038]說明書中未詳細描述的內(nèi)容為本領域技術人員公知的現(xiàn)有技術。
【權利要求】
1.一種OTN系列芯片軟件工具包架構的實現(xiàn)方法,其特征在于,包括以下步驟: A:模塊操作接口重用化抽象及實例化:讀取芯片邏輯設計階段各模塊的寄存器定義文件,將模塊的寄存器類型細化為符合規(guī)定的按照告警只讀類、狀態(tài)只讀類、計數(shù)只讀類、配置讀寫類和間址讀寫類順序編排的頭文件,并且每個寄存器按照G.709規(guī)范形成相關拆分域,根據(jù)上述分類的寄存器建立各個分類的軟件配置文件表和對應的功能標志,該標志為后續(xù)模塊的重用配置標志,同時依據(jù)分類形成模塊的統(tǒng)一操作接口 ;根據(jù)上述編排且?guī)в邢嚓P拆分域的頭文件,得到重用化抽象結構;對現(xiàn)有模塊的新功能進行添加,對現(xiàn)有模塊沒有的功能采用功能標志進行使能;完成所有模塊的抽象之后,按照所有芯片的實際擁有模塊的模塊數(shù)進行實例化; B:建立嵌入模塊的OTN芯片映射路徑:根據(jù)OTN芯片的業(yè)務映射路徑,建立對應的映射路徑鏈表,每一個業(yè)務映射路徑都對應建立一個映射路徑鏈表,完成映射路徑鏈表后,將映射鏈表中的節(jié)點逐一指向映射路徑的模塊,至此完成嵌入模塊的OTN芯片映射路徑,此后對業(yè)務映射模塊的操作將完全轉化為對鏈表和鏈表節(jié)點的統(tǒng)一操作。
2.如權利要求1所述的OTN系列芯片軟件工具包架構的實現(xiàn)方法,其特征在于:步驟A中所述統(tǒng)一操作接口包括[配置讀(配置類型,讀配置值)]/[配置寫(配置類型,寫配置值)]、[計數(shù)讀(讀指針)]/[告警讀(讀指針)]/[狀態(tài)讀(讀指針)]/[間址讀(配置類型,讀配置值)]/ [間址寫(配置類型,寫配置值)]。
3.如權利要求1所述的OTN系列芯片軟件工具包架構的實現(xiàn)方法,其特征在于:步驟A還包括以下步驟:如果某個模塊在之前的芯片軟件中存在相同或者類似的模塊接口,那么就只需采用直接或繼承的方式使用原有模塊接口,繼承使用;否則,按照規(guī)則對模塊新建接口重用化抽象結構。
4.如權利要求1所述的OTN系列芯片軟件工具包架構的實現(xiàn)方法,其特征在于:步驟A還包括以下步驟:如果某個模塊抽象在芯片中對應多個模塊,則對該模塊抽象進行多次實例化。`
5.如權利要求1至4中任一項所述的OTN系列芯片軟件工具包架構的實現(xiàn)方法,其特征在于:步驟B還包括以下步驟:如果某個業(yè)務有多個映射路徑,則該映射路徑鏈表根據(jù)路徑變化進行動態(tài)的調(diào)整。
6.一種OTN系列芯片軟件工具包架構的實現(xiàn)裝置,其特征在于:包括模塊操作接口重用化抽象及實例化單元和嵌入模塊的OTN芯片映射路徑建立單元,其中: 所述模塊操作接口重用化抽象及實例化單元,用于:讀取芯片邏輯設計階段各模塊的寄存器定義文件,將模塊的寄存器類型細化為符合規(guī)定的按照告警只讀類、狀態(tài)只讀類、計數(shù)只讀類、配置讀寫類和間址讀寫類順序編排的頭文件,并且每個寄存器按照G.709規(guī)范形成相關拆分域,根據(jù)上述分類的寄存器建立各個分類的軟件配置文件表和對應的功能標志,該標志為后續(xù)模塊的重用配置標志,同時依據(jù)分類形成模塊的統(tǒng)一操作接口 ;根據(jù)上述編排且?guī)в邢嚓P拆分域的頭文件,得到重用化抽象結構;對現(xiàn)有模塊的新功能進行添加,對現(xiàn)有模塊沒有的功能采用功能標志進行使能;完成所有模塊的抽象之后,按照所有芯片的實際擁有模塊的模塊數(shù)進行實例化; 所述嵌入模塊的OTN芯片映射路徑建立單元,用于:根據(jù)OTN芯片的業(yè)務映射路徑,建立對應的映射路徑鏈表,每一個業(yè)務映射路徑都對應建立一個映射路徑鏈表,完成映射路徑鏈表后,將映射鏈表中的節(jié)點逐一指向映射路徑的模塊,至此完成嵌入模塊的OTN芯片映射路徑,此后對業(yè)務映射模塊的操作將完全轉化為對鏈表和鏈表節(jié)點的統(tǒng)一操作。
7.如權利要求6所述的OTN系列芯片軟件工具包架構的實現(xiàn)裝置,其特征在于:所述統(tǒng)一操作接口包括[配置讀(配置類型,讀配置值)]/[配置寫(配置類型,寫配置值)]、[計數(shù)讀(讀指針)]/ [告警讀(讀指針)]/ [狀態(tài)讀(讀指針)]/ [間址讀(配置類型,讀配置值)]/ [間址寫(配置類型,寫配置值)]。
8.如權利要求6所述的OTN系列芯片軟件工具包架構的實現(xiàn)裝置,其特征在于:所述模塊操作接口重用化抽象及實例化單元還用于:如果某個模塊在之前的芯片軟件中存在相同或者類似的模塊接口,那么就只需采用直接或繼承的方式使用原有模塊接口,繼承使用;否則,按照規(guī)則對模塊新建接口重用化抽象結構。
9.如權利要求6所述的OTN系列芯片軟件工具包架構的實現(xiàn)裝置,其特征在于:所述模塊操作接口重用化抽象及實例化單元還用于:如果某個模塊抽象在芯片中對應多個模塊,則對該模塊抽象進行多次實例化。
10. 如權利要求6至9中任一項所述的OTN系列芯片軟件工具包架構的實現(xiàn)裝置,其特征在于:所述嵌入模塊的OTN芯片映射路徑建立單元還用于:如果某個業(yè)務有多個映射路徑,則該映射路徑鏈表根據(jù)路徑變化進行動態(tài)的調(diào)整。
【文檔編號】G06F9/44GK103559028SQ201310506495
【公開日】2014年2月5日 申請日期:2013年10月24日 優(yōu)先權日:2013年10月24日
【發(fā)明者】徐志生, 馮波, 海增強, 沈羽綸 申請人:烽火通信科技股份有限公司