一種組合模型組件的高效調(diào)用方法
【專利摘要】本發(fā)明涉及一種組合模型組件的高效調(diào)用方法,該方法為:CM_I模塊調(diào)用上層仿真引擎產(chǎn)生組合模型組件內(nèi)部子組件實(shí)例,并通過(guò)CM_P模塊實(shí)現(xiàn)組合模型組件的調(diào)用,并將組合模型組件事件信息直接插入上層仿真引擎,實(shí)現(xiàn)以平面線形結(jié)構(gòu)的仿真引擎替代樹(shù)形層次化結(jié)構(gòu)的仿真引擎,減少了無(wú)效、僅用于時(shí)序協(xié)調(diào)的事件調(diào)度,降低了動(dòng)態(tài)內(nèi)存開(kāi)銷,從而極大地提高仿真系統(tǒng)運(yùn)行效率。
【專利說(shuō)明】一種組合模型組件的高效調(diào)用方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及一種模型組件的調(diào)用方法,特別是一種組合模型的高效調(diào)用方法。
【背景技術(shù)】
[0002]對(duì)于支持層次化建模的仿真系統(tǒng),仿真引擎如何調(diào)用組合模型組件直接影響到仿真系統(tǒng)的運(yùn)行效率。通常的實(shí)現(xiàn)方法是采用層次化的仿真引擎,即獨(dú)立的組合模型組件具有獨(dú)立的仿真引擎,通過(guò)為該獨(dú)立仿真弓I擎構(gòu)建空事件消息,插入到上級(jí)仿真引擎,實(shí)現(xiàn)上級(jí)仿真引擎和組合模型組件仿真引擎的時(shí)序協(xié)調(diào)。該實(shí)現(xiàn)方法簡(jiǎn)單易行,但構(gòu)建空消息引起無(wú)效的事件排序和空事件調(diào)用,導(dǎo)致調(diào)用效率低、動(dòng)態(tài)內(nèi)存消耗大,直接影響到全仿真系統(tǒng)的運(yùn)行效率。
【發(fā)明內(nèi)容】
[0003]針對(duì)以上現(xiàn)有技術(shù)的不足,本發(fā)明提供了一種組合模型組件的高效調(diào)用方法,其核心是將樹(shù)形的層次化仿真引擎歸一化為平面線性仿真引擎結(jié)構(gòu),以解決通常層次化組合模型組件調(diào)用方法中存在的調(diào)用效率低、動(dòng)態(tài)內(nèi)存消耗大的問(wèn)題,提高仿真系統(tǒng)運(yùn)行效率。
[0004]本發(fā)明的一個(gè)目的是提供一種組合模型組件的高效調(diào)用系統(tǒng),該調(diào)用系統(tǒng)包括:
[0005]組合模型組件描述CM_X模塊:用于描述組合模型組件的組成、內(nèi)部信息接口關(guān)系和實(shí)例化信息;
[0006]組合模型組件初始化CM_I模塊:用于建立上層模型組件與組合模型組件內(nèi)部子模型組件間的信息接口關(guān)系,并創(chuàng)建子模型組件的實(shí)例;
[0007]組合模型組件代理CM_P模塊:調(diào)用組合模型組件內(nèi)部的子模型組件,并按實(shí)驗(yàn)框架記錄仿真實(shí)驗(yàn)數(shù)據(jù);
[0008]組合模型組件析構(gòu)CM_D模塊:解除上層模型組件與組合模型組件內(nèi)部子模型組件間的信息接口,并刪除組合模型組件代理實(shí)例。
[0009]本發(fā)明的另一個(gè)目的是提供一種組合模型組件的高效調(diào)用方法,該調(diào)用方法包括如下步驟:
[0010]I)組合模型組件描述CM_X模塊生成組合模型組件的描述文件;
[0011]2)組合模型組件初始化CM_I模塊完成組合模型組件的接口集成;
[0012]3)組合模型組件代理CM_P模塊按時(shí)序完成組合模型組件的調(diào)用;
[0013]4)組合模型組件析構(gòu)CM_D模塊結(jié)束組合模型組件的帶調(diào)用。
[0014]本發(fā)明的優(yōu)點(diǎn)在于:
[0015]在本方法中,CM_X模塊調(diào)用上層仿真引擎產(chǎn)生組合模型組件內(nèi)部子組件實(shí)例,并通過(guò)塊實(shí)現(xiàn)組合模型組件的調(diào)用,以平面線形結(jié)構(gòu)的仿真引擎替代通常的樹(shù)形層次化結(jié)構(gòu)的仿真引擎,減少了僅用于時(shí)序協(xié)調(diào)、無(wú)效的事件調(diào)度,從而極大地提高了仿真系統(tǒng)運(yùn)行效率?!緦@綀D】
【附圖說(shuō)明】
[0016]圖1:系統(tǒng)結(jié)構(gòu)示意圖。
【具體實(shí)施方式】
[0017]如圖1所示為系統(tǒng)結(jié)構(gòu)示意圖,所述組合模型組件的高效調(diào)用方法的具體步驟為:
[0018]第一步構(gòu)建用于一種組合模型組件的高效調(diào)用的系統(tǒng)
[0019]用于組合模型組件高效調(diào)用的系統(tǒng)包括:組合模型組件描述CM_X模塊、組合模型組件初始化CM_I模塊、組合模型組件代理CM_P模塊、組合模型組件析構(gòu)CM_D模塊。
[0020]CM_X模塊的功能為:描述組合模型組件的組成、內(nèi)部信息接口關(guān)系和實(shí)例化信息;
[0021]CM_I模塊的功能為:建立上層模型組件與組合模型組件內(nèi)部子模型組件間的信息接口關(guān)系,并創(chuàng)建子模型組件的實(shí)例;
[0022]CM_P模塊的功能為:調(diào)用組合模型組件內(nèi)部的子模型組件,并按實(shí)驗(yàn)框架記錄仿真實(shí)驗(yàn)數(shù)據(jù);
[0023]CM_D模塊的功能為:解除上層模型組件與組合模型組件內(nèi)部子模型組件間的信息接口,并刪除組合模型組件代理實(shí)例。
[0024]第二步CM_X模塊生成組合模型組件的描述文件
[0025]CM_X模塊生成的組合模型組件的描述文件包括如下信息:
[0026]組合模型組件內(nèi)部信息流描述信息:組成組合模型組件的子模型集合、子模型間的接口關(guān)系、子模型間的時(shí)序關(guān)系。
[0027]組合模型組件內(nèi)部實(shí)驗(yàn)框架描述信息:組成組合模型組件的子模型實(shí)例化信息、子模型組件的初始化信息、子模型組件的實(shí)驗(yàn)數(shù)據(jù)記錄和處理信息。第三步CM_I模塊完成組合模型組件的接口集成
[0028]CM_I模塊以組合模型描述文件為參數(shù)輸入,實(shí)現(xiàn)組合模型組件的接口集成構(gòu)建虛擬組合模型組件仿真引擎,并獲取組合模型組件內(nèi)部子模型組件的應(yīng)用指針;
[0029]建立上層模型組件和組合模型組件內(nèi)部子組件的輸入/輸出接口關(guān)系
[0030]按組合模型組件內(nèi)部實(shí)驗(yàn)框架描述信息,創(chuàng)建子模型組件實(shí)例,注意該實(shí)例的產(chǎn)生必須使用上層仿真引擎,而不是虛擬組合模型組件仿真引擎。
[0031]第四步CM_P模塊按時(shí)序完成組合模型組件的調(diào)用
[0032]CM_P模塊接收到的仿真引擎的時(shí)序調(diào)用命令;
[0033]CM_P模塊遍歷組合模型組件內(nèi)部子組件實(shí)例
[0034]塊根據(jù)子模型組件的幀周期,判斷是否調(diào)用該子模型組件實(shí)例的功能接Π ;
[0035]CM_P模塊根據(jù)組合模型組件實(shí)驗(yàn)框架信息,判斷是否調(diào)用仿真實(shí)驗(yàn)數(shù)據(jù)記錄;
[0036]CM_P模塊判斷子模型組件實(shí)例是否有下一事件,如果有,調(diào)用仿真引擎API將其插入上層仿真引擎。
[0037]第五步CM_D模塊結(jié)束組合模型組件的帶調(diào)用
[0038]CM_D的功能為:解除上層模型組件與組合模型組件內(nèi)部子模型組件間的信息接口,并刪除組合模型組件代理實(shí)例
[0039]CM_D模塊接收到的仿真弓I擎的組合模型組件調(diào)用結(jié)束命令;
[0040]CM_D模塊遍歷組合模型組件內(nèi)部子組件實(shí)例,并刪除其與上層模型組件的信息接□關(guān)系;
[0041]CM_D模塊獲取虛擬組合模型組件仿真引擎,并刪除組合模型組件代理實(shí)例;
[0042]CM_D模塊清除上層仿真引擎中與該組合模型組件相關(guān)的事件;
[0043]CM_D模塊結(jié)束返回。
[0044]應(yīng)當(dāng)理解,以上借助優(yōu)選實(shí)施例對(duì)本發(fā)明的技術(shù)方案進(jìn)行的詳細(xì)說(shuō)明是示意性的而非限制性的。本領(lǐng)域的普通技術(shù)人員在閱讀本發(fā)明說(shuō)明書(shū)的基礎(chǔ)上可以對(duì)各實(shí)施例所記載的技術(shù)方案進(jìn)行修改,或者對(duì)其中部分技術(shù)特征進(jìn)行等同替換;而這些修改或者替換,并不使相應(yīng)技術(shù)方案的本質(zhì)脫離本發(fā)明各實(shí)施例技術(shù)方案的精神和范圍。
【權(quán)利要求】
1.一種組合模型組件的高效調(diào)用系統(tǒng),其特征在于,該調(diào)用系統(tǒng)包括: 組合模型組件描述CM_X模塊:用于描述組合模型組件的組成、內(nèi)部信息接口關(guān)系和實(shí)例化信息; 組合模型組件初始化CM_I模塊:用于建立上層模型組件與組合模型組件內(nèi)部子模型組件間的信息接口關(guān)系,并創(chuàng)建子模型組件的實(shí)例; 組合模型組件代理CM_P模塊:調(diào)用組合模型組件內(nèi)部的子模型組件,并按實(shí)驗(yàn)框架記錄仿真實(shí)驗(yàn)數(shù)據(jù); 組合模型組件析構(gòu)CM_D模塊:解除上層模型組件與組合模型組件內(nèi)部子模型組件間的信息接口,并刪除組合模型組件代理實(shí)例。
2.一種組合模型組件的高效調(diào)用方法,其特征在于,該調(diào)用方法包括如下步驟: 1)組合模型組件描述CM_X模塊生成組合模型組件的描述文件; 2)組合模型組件初始化CM_I模塊完成組合模型組件的接口集成; 3)組合模型組件代理CM_P模塊按時(shí)序完成組合模型組件的調(diào)用; 4)組合模型組件析構(gòu)CM_D模塊結(jié)束組合模型組件的帶調(diào)用。
3.根據(jù)權(quán)利要求2所述的一種組合模型組件的高效調(diào)用方法,其特征在于,所述步驟I中 CM_X模塊生成的組合模型組件的描述文件包括如下信息: 組合模型組件內(nèi)部信息流描述信息:組成組合模型組件的子模型集合、子模型間的接口關(guān)系、子模型間的時(shí)序關(guān)系。 組合模型組件內(nèi)部實(shí)驗(yàn)框架描述信息:組成組合模型組件的子模型實(shí)例化信息、子模型組件的初始化信息、子模型組件的實(shí)驗(yàn)數(shù)據(jù)記錄和處理信息。
4.根據(jù)權(quán)利要求2或3所述的一種組合模型組件的高效調(diào)用方法,其特征在于,所述步驟2CM_I模塊完成組合模型組件接口集成的方法為: CM_I模塊以組合模型描述文件為參數(shù)輸入,實(shí)現(xiàn)組合模型組件的接口集成: 構(gòu)建虛擬組合模型組件仿真引擎,并獲取組合模型組件內(nèi)部子模型組件的應(yīng)用指針; 建立上層模型組件和組合模型組件內(nèi)部子組件的輸入/輸出接口關(guān)系; 按組合模型組件內(nèi)部實(shí)驗(yàn)框架描述信息,創(chuàng)建子模型組件實(shí)例。
5.根據(jù)權(quán)利要求4所述的一種組合模型組件的高效調(diào)用方法,其特征在于,所述步驟3中CM_P模塊按時(shí)序完成組合模型組件的調(diào)用方法為: CM_P模塊接收到的仿真引擎的時(shí)序調(diào)用命令; CM_P模塊遍歷組合模型組件內(nèi)部子組件實(shí)例; CM_P模塊根據(jù)子模型組件的幀周期,判斷是否調(diào)用該子模型組件實(shí)例的功能接口 ; CM_P模塊根據(jù)組合模型組件實(shí)驗(yàn)框架信息,判斷是否調(diào)用仿真實(shí)驗(yàn)數(shù)據(jù)記錄; CM_P模塊判斷子模型組件實(shí)例是否有下一事件,如果有,調(diào)用仿真引擎API將其插入上層仿真引擎。
6.根據(jù)權(quán)利要求5所述的一種組合模型組件的高效調(diào)用方法,其特征在于,所述步驟4中CM_D模塊結(jié)束組合模型組件的帶調(diào)用方法為: CM_D模塊解除上層模型組件與組合模型組件內(nèi)部子模型組件間的信息接口,并刪除組合模型組件代理實(shí)例CM_D模塊接收到的仿真引擎的組合模型組件調(diào)用結(jié)束命令;CM_D模塊遍歷組合模型組件內(nèi)部子組件實(shí)例,并刪除其與上層模型組件的信息接口關(guān) 系;CM_D模塊獲取虛擬組合模型組件仿真引擎,并刪除組合模型組件代理實(shí)例;CM_D模塊清除上層仿真引擎中與該組合模型組件相關(guān)的事件;011_0模塊結(jié)束返回。`
【文檔編號(hào)】G06F17/50GK103777998SQ201410024829
【公開(kāi)日】2014年5月7日 申請(qǐng)日期:2014年1月20日 優(yōu)先權(quán)日:2014年1月20日
【發(fā)明者】張進(jìn), 卿杜政, 蔡繼紅 申請(qǐng)人:北京仿真中心