一種基于rtx-hla-反射內存卡的可重構分布式實時仿真方法
【專利摘要】本發(fā)明涉及計算機應用技術和計算機網(wǎng)絡領域,具體涉及一種基于RTX-HLA-反射內存卡的可重構分布式實時仿真方法,包括以下步驟:用實時的RTX進程和非實時的Win32進程共同構建實時子系統(tǒng);用非實時的Win32進程構建非實時子系統(tǒng);將兩個以上實時子系統(tǒng)通過反射內存網(wǎng)絡連接至反射內存交換機,將兩個以上非實時子系統(tǒng)通過HLA網(wǎng)絡連接至以太網(wǎng)交換機,然后將反射內存交換機和以太網(wǎng)交換機通過以太網(wǎng)連接形成仿真系統(tǒng);將兩個以上仿真系統(tǒng)通過反射內存網(wǎng)絡相互連接,組成仿真系統(tǒng)平臺。本發(fā)明能夠滿足分布式實時仿真系統(tǒng)對實時性和確定性的需求,而且其程序簡單,成本低,可靠性高。
【專利說明】—種基于RTX-HLA-反射內存卡的可重構分布式實時仿真方法
【技術領域】
[0001]本發(fā)明涉及計算機應用技術和計算機網(wǎng)絡領域,具體涉及一種基于RTX-HLA-反射內存卡的可重構分布式實時仿真方法。
【背景技術】
[0002]為了使分布式實時仿真系統(tǒng)(一個典型代表就行飛行模擬器)達到逼真的仿真效果,在系統(tǒng)內部,往往不僅需要對各種數(shù)據(jù)模型進行實時解算,而且需要一個延遲時間極低的確定性網(wǎng)絡在系統(tǒng)之間傳遞數(shù)據(jù),這樣才能讓各個子系統(tǒng)之間協(xié)調一致地工作。
[0003]傳統(tǒng)上,我們使用“高速度以太網(wǎng)+上下位機”的解決方案來滿足這兩方面的需求。
[0004]受TCP/IP協(xié)議所限,傳統(tǒng)的以太網(wǎng)并不能滿足各實時仿真子系統(tǒng)間實時、確定地傳輸數(shù)據(jù)的需求。盡管可以采取一些措施(如提高網(wǎng)絡速度、降低網(wǎng)絡負荷等)來降低延遲,但是仍然很難從根本上解決以太網(wǎng)不具有實時性和確定性的固有缺陷,并且這樣做均會增加額外的成本。
[0005]傳統(tǒng)的“上下位機”的主從開發(fā)模式方案如圖1所示,即實時仿真子系統(tǒng)中的實時計算任務在下位機(嵌入式實時操作系統(tǒng),如VxWorks、RTLinux、QNX等)中執(zhí)行,而包括界面顯示在內的非實時計算任務則在上位機(Windows操作系統(tǒng))中運行。這樣,在滿足實時計算任務對實時性的需求的同時,還利用了 Windows操作系統(tǒng)對開發(fā)工具(如Visual Studio等)和圖形顯示接口(GUI)的強大支持等優(yōu)點,從而在一定程度上提高了界面顯示部分的開發(fā)效率。但是該解決方案有著固有的局限性,(I)上下位機帶來了高費用、高成本和低可靠性。(2)復雜的分布式應用程序。(3)總線的傳輸性能容易成為系統(tǒng)總體性能的瓶頸。
【發(fā)明內容】
[0006]本發(fā)明的目的在于提供一種基于RTX-HLA-反射內存卡的可重構分布式實時仿真方法,解決傳統(tǒng)的以太網(wǎng)結構無法滿足分布式實時仿真系統(tǒng)對網(wǎng)絡實時性和確定性的需求,而目前的解決方式在成本上過高,程序也太復雜的問題。
[0007]為解決上述的技術問題,本發(fā)明采用以下技術方案:一種基于RTX-HLA-反射內存卡的可重構分布式實時仿真方法,包括以下步驟:
步驟一,用實時的RTX進程和非實時的Win32進程共同構建實時子系統(tǒng);
步驟二,用非實時的Win32進程構建非實時子系統(tǒng);(如飛行模擬器中的視景子系統(tǒng))步驟三,將兩個以上實時子系統(tǒng)通過反射內存網(wǎng)絡連接至反射內存交換機,將兩個以上非實時子系統(tǒng)通過HLA網(wǎng)絡連接至以太網(wǎng)交換機,然后將反射內存交換機和以太網(wǎng)交換機通過以太網(wǎng)連接形成仿真系統(tǒng);
步驟四,將兩個以上仿真系統(tǒng)通過反射內存網(wǎng)絡相互連接,組成仿真系統(tǒng)平臺。
[0008]進一步的,所述實時子系統(tǒng)主要由用于數(shù)據(jù)收發(fā)和實時計算的RTX進程和用于界面顯示或非實時計算的Win32進程,所述RTX進程和Win32進程通過實時共享內存機制進行通信。
[0009]進一步的,所述非實時子系統(tǒng)包括用HLA協(xié)議編寫的數(shù)據(jù)收發(fā)模塊和非實時計算或界面顯示模塊。
[0010]進一步的,所述步驟三中,反射內存網(wǎng)絡是基于環(huán)狀/星狀、高速復制的共享內存網(wǎng)絡,網(wǎng)絡上的每一個的節(jié)點上都有一塊本地反射內存卡;反射內存網(wǎng)絡的拓撲結構是環(huán)形或星形。
[0011]進一步的,所述步驟三中,反射內存網(wǎng)絡和HLA網(wǎng)絡都是集中式的星型網(wǎng)絡拓撲結構,各子系統(tǒng)均僅由一臺通用的計算機同時完成前臺的實時計算任務和后臺非實時計算任務及界面顯示任務。
[0012]一種基于RTX-HLA-反射內存卡的可重構分布式實時仿真系統(tǒng),包括用實時RTX進程和非實時Win32進程共同構建的實時子系統(tǒng),包括用非實時Win32進程構建的非實時子系統(tǒng),所述實時子系統(tǒng)通過反射內存網(wǎng)絡連接至反射內存網(wǎng)交換機,所述非實時子系統(tǒng)通過HLA網(wǎng)絡連接至以太網(wǎng)交換機,所述反射內存網(wǎng)交換機和以太網(wǎng)交換機通過以太網(wǎng)絡連接至以太網(wǎng)交換機。
[0013]與現(xiàn)有技術相比,本發(fā)明的有益效果是:本發(fā)明能夠滿足分布式實時仿真系統(tǒng)對實時性和確定性的需求,而且其程序簡單,成本低可靠性高。
【專利附圖】
【附圖說明】
[0014]圖1為本傳統(tǒng)上下位機示意圖。
[0015]圖2為本發(fā)明一種基于RTX-HLA-反射內存卡的可重構分布式實時仿真方法一個實施例中實時子系統(tǒng)框架示意圖。
[0016]圖3為本發(fā)明一種基于RTX-HLA-反射內存卡的可重構分布式實時仿真方法一個實施例中非實時子系統(tǒng)框架示意圖。
[0017]圖4為本發(fā)明一種基于RTX-HLA-反射內存卡的可重構分布式實時仿真方法一個實施例的框圖。
【具體實施方式】
[0018]為了使本發(fā)明的目的、技術方案及優(yōu)點更加清楚明白,以下結合附圖及實施例,對本發(fā)明進行進一步詳細說明。應當理解,此處所描述的具體實施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
[0019]圖2、圖3和圖4示出了本發(fā)明一種基于RTX-HLA-反射內存卡的可重構分布式實時仿真方法的一個實施例:一種基于RTX-HLA-反射內存卡的可重構分布式實時仿真方法,包括以下步驟:
步驟一,用實時的RTX進程和非實時的Win32進程共同構建實時子系統(tǒng);
步驟二,用非實時的Win32進程構建非實時子系統(tǒng)(如飛行模擬器中的視景子系統(tǒng));步驟三,將兩個以上實時子系統(tǒng)通過反射內存網(wǎng)絡連接至反射內存交換機,將兩個以上非實時子系統(tǒng)通過HLA網(wǎng)絡連接至以太網(wǎng)交換機,然后將反射內存交換機和以太網(wǎng)交換機通過以太網(wǎng)連接形成仿真系統(tǒng); 步驟四,將兩個以上仿真系統(tǒng)(如飛行模擬器)通過反射內存網(wǎng)絡相互連接,組成仿真系統(tǒng)平臺(如戰(zhàn)術模擬對抗系統(tǒng))。
[0020]RTX是Windows平臺的實時擴展子系統(tǒng),它不對Windows系統(tǒng)進行任何封裝或修改,只是在HAL層增加實時HAL擴展來實現(xiàn)基于優(yōu)先級搶占式的實時任務的管理和調度。RTX高精度的時鐘(可精確到Ius)及定時器(最低可支持IOOus的間隔時間)等機制可確保了實時任務的硬實時性和確定性。根據(jù)仿真系統(tǒng)中的各個子系統(tǒng)對實時性的要求,可以將其分為實時子系統(tǒng)(如飛行模擬器中的飛行仿真子系統(tǒng)、運動子系統(tǒng)、以及操縱負荷子系統(tǒng)等)和非實時子系統(tǒng)(如視景子系統(tǒng)、仿真控制臺IOS等)兩大類。
[0021]所述RTX進程是在RTX環(huán)境下運行,通過RTX精確的定時器機制,可以確保其周期性任務在每一個周期內都得到精確地運行;Win32進程是在windows環(huán)境下運行。為使各子系統(tǒng)間的仿真時間保持一致,必須對各個子系統(tǒng)之間傳輸?shù)臄?shù)據(jù)進行同步控制,以便整個系統(tǒng)能夠協(xié)調一致地工作。
[0022]“Windows + RTX”方案成功地規(guī)避了 “上下位機”這一傳統(tǒng)方案中的固有缺陷,滿足了我們在開發(fā)分布式實時仿真系統(tǒng)時,對性能、費用和開發(fā)周期等方面的苛刻要求。
[0023]根據(jù)本發(fā)明一種基于RTX-HLA-反射內存卡的可重構分布式實時仿真方法的一個優(yōu)選實施例,所述實時子系統(tǒng)主要由用于數(shù)據(jù)收發(fā)和實時計算的RTX進程(.rtss)和用于界面顯示或非實時計算的Win32進程(.exe),所述RTX進程和Win32進程通過實時共享內存機制進行通信。
[0024]根據(jù)本發(fā)明一種基于RTX-HLA-反射內存卡的可重構分布式實時仿真方法的另一個優(yōu)選實施例,所述非實時子系統(tǒng)包括用HLA協(xié)議編寫的數(shù)據(jù)收發(fā)模塊和非實時計算或界面顯示模塊。
[0025]根據(jù)本發(fā)明一種基于RTX-HLA-反射內存卡的可重構分布式實時仿真方法的另一個優(yōu)選實施例,所述步驟三中,反射內存網(wǎng)絡是基于環(huán)狀/星狀、高速復制的共享內存網(wǎng)絡,網(wǎng)絡上的每一個的節(jié)點(計算機)上都有一塊本地反射內存卡,計算機將數(shù)據(jù)寫入其本地反射內存卡后,在極短的時間內,網(wǎng)上所有的計算機都可以訪問該數(shù)據(jù)。反射內存的更新是通過硬件實現(xiàn)的,而CPU對反射內存的操作如同讀寫標準的RAM,因此其網(wǎng)絡延遲極小(在Ius以下)。
[0026]反射內存網(wǎng)絡的拓撲結構是環(huán)形或星形。通過在各個節(jié)點(如圖3中的實時子系統(tǒng)I所在的計算機)上插入反射內存卡(如GE公司的VMIPC1-5565),并將各卡用光纖相連接即可構成環(huán)形的反射內存網(wǎng)。而星型的反射內存網(wǎng)絡則需要增加一個反射內存交換機(如GE公司的VMIACC-5595),然后將各反射內存卡通過光纖與其相連接。
[0027]根據(jù)本發(fā)明一種基于RTX-HLA-反射內存卡的可重構分布式實時仿真方法的另一個優(yōu)選實施例,所述步驟三中,反射內存網(wǎng)絡和HLA網(wǎng)絡都是集中式的星型網(wǎng)絡拓撲結構,各子系統(tǒng)均僅由一臺通用的計算機同時完成前臺的實時計算任務和后臺非實時計算任務及界面顯示任務。用反射內存網(wǎng)絡來替代以太網(wǎng),滿足了實時仿真任務在網(wǎng)絡傳輸方面對實時性和確定性方面的要求。
[0028]本發(fā)明還示出了一種基于RTX-HLA-反射內存卡的可重構分布式實時仿真系統(tǒng):包括用實時RTX進程和非實時Win32進程共同構建的實時子系統(tǒng),包括用非實時Win32進程構建的非實時子系統(tǒng),所述實時子系統(tǒng)通過反射內存網(wǎng)絡連接至反射內存網(wǎng)交換機,所述非實時子系統(tǒng)通過HLA網(wǎng)絡連接至以太網(wǎng)交換機,所述反射內存網(wǎng)交換機和以太網(wǎng)交換機通過以太網(wǎng)絡連接至以太網(wǎng)交換。
[0029]HLA:高層體系結構(high level architecture)是美國國防部于1995年提出的一個新的仿真技術框架,其目的是為解決在國防領域內所有類型的模型、仿真和C4I系統(tǒng)的互操作和重用性問題,其顯著的特點是通過運行支撐環(huán)境(runtimeinfra-structure, RTI)提供通用的、相對獨立的支撐服務程序,將仿真應用層同底層支撐環(huán)境功能分離開。
[0030]HLA由規(guī)則、RTI的接口規(guī)則說明和對象模型模板三部分組成,為仿真部件之間通過RTI進行交互提供了一個技術框架。其中RTI為各仿真應用提供通用的服務,包括聯(lián)邦管理、對象管理、聲明管理、時間管理、所有權管理和數(shù)據(jù)分發(fā)管理六部分。通過這些服務,可以極大地減少網(wǎng)絡流量、降低網(wǎng)絡延遲,并且保證仿真中的畫面同步顯示和畫面中物理實體的運行邏輯的正確性。
[0031]要構建HLA仿真網(wǎng)絡,需要在其數(shù)據(jù)接口部分按照HLA的規(guī)范及接口進行編程,然后運行RTI即可。如CERTI就需要在運行過程中開啟RTIG全局服務器作為數(shù)據(jù)中轉站,各分布式仿真系統(tǒng)開啟本地局部服務器RTIA,通過全局服務器與局部服務器的交互,進行仿真邏輯的推進。
[0032]若仿真系統(tǒng)內部的各實時子系統(tǒng)之間(如飛行模擬器的飛行仿真子系統(tǒng)、運動子系統(tǒng)、以及操縱負荷子系統(tǒng)之間)的數(shù)據(jù)傳輸對實時性的要求不是特別地苛刻,考慮到經(jīng)濟成本,可以將這些實時子系統(tǒng)之間的網(wǎng)絡由反射內存網(wǎng)替換為以太網(wǎng)。這時,各實時子系統(tǒng)RTX實時程序(.rtss)的數(shù)據(jù)收發(fā)部分將使用RT-TCP/IP協(xié)議來與以太網(wǎng)通信,而非如前所說的直接讀取本地反射內存。子系統(tǒng)硬件上均僅由一臺通用的計算機構成。事實上,根據(jù)需要,可以對其進行擴展。將各子系統(tǒng)由一臺計算機,擴展為多臺計算機。
[0033]類似地,根據(jù)對實時性要求和經(jīng)濟成本的考慮,實時子系統(tǒng)所在的各計算機之間可以適當?shù)剡x用“反射內存網(wǎng)+RTX”、“HLA網(wǎng)絡+RTX”或“以太網(wǎng)+RTX”的方案來連接。而非實時子系統(tǒng)內部的各計算機之間則仍然采用“HLA網(wǎng)絡+RTX”或“以太網(wǎng)+RTX”的形式進行連接。
[0034]下面以一個實例作為測試:
(I)測試目的
測試該框架在實時性、確定性方面的性能參數(shù)。
[0035](2)測試平臺
構建基于RTX-HLA-反射內存卡的可重構分布式實時仿真系統(tǒng)的測試平臺。其中nl=n2=5, N=2。仿真系統(tǒng)內部的所有子系統(tǒng)均運行在Pentium IV 2.8GHz的雙核CPU的計算機上,反射內存卡均使用GE公司的VMIC-5565,反射內存交換機均使用GE公司的VMIACC-5595。實時子系統(tǒng)中的RTX均獨占一個CPU核。
[0036](3)測試內容
將一個數(shù)據(jù)包(大小分別設置為4Bytes、256Bytes、lKB、4KB、8KB)由一個實時子系統(tǒng)的RTX進程(.rtss,運行在RTX環(huán)境下)發(fā)送出去,另一個實時子系統(tǒng)的RTX進程(.rtss,運行在RTX環(huán)境下)采用中斷方式接收,接收到數(shù)據(jù)后再將該數(shù)據(jù)包發(fā)送回來。然后統(tǒng)計該時間周期(整個過程的時間間隔)的大小。將該值除以2即可得到時間延遲(包括RTX進程中執(zhí)行數(shù)據(jù)收發(fā)代碼所造成的延遲和網(wǎng)絡延遲兩部分)。測試結果見表1。
[0037]為了體現(xiàn)該方案中使用RTX后在實時性和確定性兩方面的優(yōu)勢,同時也進行了一組未使用RTX時(僅運行在Windows環(huán)境下)其延遲數(shù)據(jù)測試統(tǒng)計,以便進行數(shù)據(jù)對比。具體測試方案如下:
將同樣的數(shù)據(jù)包由一個實時子系統(tǒng)的Win32進程(.exe,運行在Windows環(huán)境下)發(fā)送出去,另一個實時子系統(tǒng)的Win32進程(.exe,運行在Windows環(huán)境下)采用中斷方式接收,接收到數(shù)據(jù)后再將該數(shù)據(jù)包發(fā)送回來。仍然統(tǒng)計其時間周期(整個過程的時間間隔)的大小。測試結果見表2。
[0038](4)測試結果
【權利要求】
1.一種基于RTX-HLA-反射內存卡的可重構分布式實時仿真方法,其特征在于:包括以下步驟: 步驟一,用實時的RTX進程和非實時的Win32進程共同構建實時子系統(tǒng); 步驟二,用非實時的Win32進程構建非實時子系統(tǒng); 步驟三,將兩個以上實時子系統(tǒng)通過反射內存網(wǎng)絡連接至反射內存交換機,將兩個以上非實時子系統(tǒng)通過HLA網(wǎng)絡連接至以太網(wǎng)交換機,然后將反射內存交換機和以太網(wǎng)交換機通過以太網(wǎng)連接形成仿真系統(tǒng); 步驟四,將兩個以上仿真系統(tǒng)通過反射內存網(wǎng)絡相互連接,組成仿真系統(tǒng)平臺。
2.根據(jù)權利要求1所述的一種基于RTX-HLA-反射內存卡的可重構分布式實時仿真方法,其特征在于:所述實時子系統(tǒng)主要由用于數(shù)據(jù)收發(fā)和實時計算的RTX進程和用于界面顯示或非實時計算的Win32進程,所述RTX進程和Win32進程通過實時共享內存機制進行通信。
3.根據(jù)權利要求1所述的一種基于RTX-HLA-反射內存卡的可重構分布式實時仿真方法,其特征在于:所述非實時子系統(tǒng)包括用HLA協(xié)議編寫的數(shù)據(jù)收發(fā)模塊和非實時計算或界面顯示模塊。
4.根據(jù)權利要求1所述的一種基于RTX-HLA-反射內存卡的可重構分布式實時仿真方法,其特征在于:所述步驟三中,反射內存網(wǎng)絡是基于環(huán)狀/星狀、高速復制的共享內存網(wǎng)絡,網(wǎng)絡上的每一個的節(jié)點上都有一塊本地反射內存卡;反射內存網(wǎng)絡的拓撲結構是環(huán)形或星形。
5.根據(jù)權利要求1所述的一種基于RTX-HLA-反射內存卡的可重構分布式實時仿真方法,其特征在于:所述步驟三中,反射內存網(wǎng)絡和HLA網(wǎng)絡都是集中式的星型網(wǎng)絡拓撲結構,各子系統(tǒng)均僅由一臺通用的計算機同時完成前臺的實時計算任務和后臺非實時計算任務及界面顯示任務。
6.一種基于RTX-HLA-反射內存卡的可重構分布式實時仿真系統(tǒng),其特征在于:包括用實時RTX進程和非實時Win32進程共同構建的實時子系統(tǒng),包括用非實時Win32進程構建的非實時子系統(tǒng),所述實時子系統(tǒng)通過反射內存網(wǎng)絡連接至反射內存網(wǎng)交換機,所述非實時子系統(tǒng)通過HLA網(wǎng)絡連接至以太網(wǎng)交換機,所述反射內存網(wǎng)交換機和以太網(wǎng)交換機通過以太網(wǎng)絡連接至以太網(wǎng)交換機。
【文檔編號】G06F9/455GK103713940SQ201310719029
【公開日】2014年4月9日 申請日期:2013年12月24日 優(yōu)先權日:2013年12月24日
【發(fā)明者】汪歸歸, 季玉龍, 戈文一, 湯坤, 茍慧, 黃世麟, 羅宇, 譚詩瀚, 宋歌, 高偉 申請人:四川川大智勝軟件股份有限公司