周 強,傅 余,修言彬
(北京航空航天大學(xué) 自動化科學(xué)與電氣工程學(xué)院,北京100191)
反射內(nèi)存網(wǎng)絡(luò)通常采用光纖作為傳輸介質(zhì),每個網(wǎng)絡(luò)中的宿主機配置一塊節(jié)點卡,每個節(jié)點卡都有自身獨立的板載內(nèi)存,并映射到宿主機內(nèi)存[1,2]。每塊節(jié)點卡的板載內(nèi)存又通過環(huán)形光纖網(wǎng)絡(luò)映射到一個虛擬的全局內(nèi)存。如此能夠?qū)崿F(xiàn)各個宿主機之間的數(shù)據(jù)交換。反射內(nèi)存網(wǎng)絡(luò)允許采用不同的總線結(jié)構(gòu)和不同操作系統(tǒng)的宿主機以確定的速率實時共享數(shù)據(jù),其具有嚴格的傳輸確定性和可預(yù)測性、速度高、通信協(xié)議簡單、宿主機負載輕、軟硬件平臺適應(yīng)性強、兼容性 好等突出優(yōu) 點[3-5]。
現(xiàn)有反射內(nèi)存網(wǎng)絡(luò)產(chǎn)品長期被國外產(chǎn)品所占據(jù),而且存在以下缺陷:板載內(nèi)存容量有待擴充;底層數(shù)據(jù)包僅4 bytes,有待優(yōu)化;手工設(shè)置節(jié)點板卡的節(jié)點號。因此,有必要開發(fā)針對上述問題進行優(yōu)化的PCI總線接口反射內(nèi)存網(wǎng)絡(luò)節(jié)點卡。
同時,對于反射內(nèi)存網(wǎng)絡(luò)節(jié)點卡的設(shè)計多采用經(jīng)驗法,有必要引入形式化設(shè)計與研究方法,對節(jié)點進行理論分析。Petri網(wǎng)是基于圖形的形式化數(shù)學(xué)建模工具,能夠很好地刻畫系統(tǒng)的動態(tài)行為、分析系統(tǒng)的性能[6,7]。特別是可以利用隨機Petri網(wǎng)對節(jié)點卡進行建模,而后將模型轉(zhuǎn)化為具有馬爾可夫特性的隨機過程進行分析,進而得出相關(guān)的性能參數(shù)指標[8-11]。
反射內(nèi)存網(wǎng)絡(luò)節(jié)點卡主要由以下部分構(gòu)成:PCI總線接口模塊、鏈路層FPGA 模塊、板載內(nèi)存模塊、串并/并串轉(zhuǎn)換模塊、光纖收發(fā)模塊、ID 號配置模塊、供電模塊。節(jié)點卡模塊結(jié)構(gòu)如圖1所示。
圖1 反射內(nèi)存卡模塊結(jié)構(gòu)
PCI總線接口模塊設(shè)計選用了PCI-9054接口芯片,其工作于從模式,將宿主機33 M32bit PCI總線接口轉(zhuǎn)換為50MHz 32bits地址/數(shù)據(jù)分離C模式本地總線。鏈路層FPGA 模塊設(shè)計選用CycloneⅢ系列FPGA產(chǎn)品EP3C120F780C8N,構(gòu)成鏈路層中邏輯鏈路控制(LLC)子層的核心組成部分。
板載SDRAM 模塊配置容量為256 MB,讀寫時鐘頻率最高應(yīng)達到140 MHz以上。串并/并串轉(zhuǎn)換模塊選用千兆位級收發(fā)器芯片TLK2501,其參考時鐘頻率為106.25 MHz。光纖收發(fā)SFP 模塊選用FTLF8519P2BNL,其采用了垂直腔面發(fā)射激光器 (VCSEL),光纖接口插頭為標準LC形式,全雙工雙向傳輸,最高傳輸速率2.125Gb/s。ID號配置模塊為每塊節(jié)點板卡存儲唯一的16位識別號。
建模主要是對節(jié)點卡鏈路層和物理層的處理過程建立廣義隨機Petri網(wǎng)模型。對節(jié)點卡建立廣義隨機Petri網(wǎng)模型的方法是用庫所表示節(jié)點卡運行過程中的各個狀態(tài),用變遷表示各個功能模塊的操作,位置和變遷之間的有向弧標識系統(tǒng)狀態(tài)與操作兩者之間的映射關(guān)系[12]。模型中引入了抑制弧,用來標識緩存FIFO 滿之后不可寫入的映射關(guān)系。每個時延變遷均針對所代表的操作賦予一個服從指數(shù)分布的實施時間τi(1/λi)。而λi為變遷的平均實施速率。節(jié)點卡隨機Petri網(wǎng)模型如圖2所示。
圖2中各庫所和變遷的含義見表1。
模型中用實心矩形表示瞬時變遷,空心矩形表示隨機時延變遷。由于節(jié)點卡鏈路層對映射數(shù)據(jù)的處理是以幀為單位進行的,因此模型中庫所中的一個標志均代表與一幀數(shù)據(jù)相關(guān)的狀態(tài)。對上述節(jié)點卡隨機Petri網(wǎng)進行化簡,去除瞬時變遷后的隨機Petri網(wǎng)模型如圖3所示。
圖2 節(jié)點卡隨機Petri網(wǎng)
表1 模型中庫所與變遷含義
圖3 化簡后的節(jié)點卡隨機Petri網(wǎng)
對化簡后的模型進行可達樹分析,得到模型的可達樹。因為可達樹同構(gòu)于嵌入式馬爾科夫鏈,因此可得到模型的嵌入式馬爾科夫狀態(tài)如圖4所示。
圖4 節(jié)點卡的嵌入式馬爾科夫狀態(tài)
圖4中各個變遷的激發(fā)率見表2。
表2 變遷的激發(fā)率
從圖4中可以看出,嵌入式馬爾科夫狀態(tài)圖有17個狀態(tài)。記Π= (π0,π1,…,π16)為嵌入式馬爾科夫鏈中的穩(wěn)態(tài)概率,其為一個行向量,Q= (qij)17X17為變遷的激發(fā)率轉(zhuǎn)移矩陣。
通過計算解得的穩(wěn)定概率Π= (π0,π1,…,π16)=(0.1301,0.1289,0.0079,0.0361,0.0164,0.0165,0.0009,0.0011, 0.0097, 0.2664, 0.1211, 0.1215,0.0032,0.0038,0.1219,0.0067,0.0078)。
通過穩(wěn)定概率Π 可以計算分析出節(jié)點卡的標記概率密度、位置中的平均標記數(shù)、子系統(tǒng)平均延時時間等性能指標。
在節(jié)點卡的設(shè)計中,RXFIFO、TXFIFO、FIFO1 這3個FIFO 的利用率至關(guān)重要。3 個庫所PRXFIFO、PTXFIFO、PRXFIFO1中在穩(wěn)定狀態(tài)下的平均標記數(shù)珔uRXFIFO、珔uTXFIFO和珔uRXFIFO1,反應(yīng)了各個FIFO 的利用率。
(1)計算標記概率密度
對 s∈S,i∈N ,令P[M(s)=i]表示位置s中包含i個標記的概率,則可從標識的穩(wěn)定概率求得位置s的標記概率密度函數(shù)如下
其中,Mj∈[M0>且Mj(s)=i,P[M(PRXFIFO)=1]=π2+π8+π9+π10+π11+π14+π15+π16=0.663,P[M(PTXFIFO)=1]=π3+π6+π9+π12+π15=0.3133,P [M(PRXFIFO1)=1]=π5+π8+π14=0.0165+0.0097+0.1219=0.1481。
(2)位置中的平均標記數(shù)
子系統(tǒng)N1 (包括庫所PRX、PRXFIFO、PTXFIFO、PTX1、以及變遷TRX1、TRX、TRD、TTX1、TTX2)的平均延時時間,即一個標記從庫所PRX2出發(fā)再返回PRX2的平均時間,時間上也就是每個節(jié)點卡處理數(shù)據(jù)所引起的平均延時時間 (也就是平均處理時間)。
(1)首先求出子系統(tǒng)N1庫所集中所含有的平均標記數(shù)N
(2)計算出流入子系統(tǒng)的平均標記流速
(3)利用Little規(guī)則和平衡原理,子系統(tǒng)N1的平均延時時間
實驗中由一塊、兩塊、三塊反射內(nèi)存節(jié)點卡構(gòu)分別建成了環(huán)形網(wǎng)絡(luò),稱為環(huán)形網(wǎng)絡(luò)1、環(huán)形網(wǎng)絡(luò)2 和環(huán)形網(wǎng)絡(luò)3。實驗對這3個典型網(wǎng)絡(luò)分別進行了測試,例如由三塊節(jié)點卡構(gòu)成的環(huán)形網(wǎng)絡(luò)物理連接圖5所示。
圖5 三節(jié)點環(huán)形網(wǎng)絡(luò)配置
實驗主要測試反射內(nèi)存網(wǎng)絡(luò)的數(shù)據(jù)更新延時時間。實驗中選取一個節(jié)點卡 (如節(jié)點1)為測試發(fā)起卡,其它節(jié)點卡為輔助卡。在測試發(fā)起卡開始發(fā)送一幀數(shù)據(jù)的時刻啟動計時器。當(dāng)一幀數(shù)據(jù)經(jīng)節(jié)點2和節(jié)點3返回節(jié)點1后,停止計時器,同時觸發(fā)中斷,宿主機讀取該計時器的值便可轉(zhuǎn)換為此幀數(shù)據(jù)經(jīng)過整個網(wǎng)絡(luò)的延時時間。
測試實驗結(jié)果見表3、表4和表5。
表3 環(huán)形網(wǎng)絡(luò)1測試結(jié)果
表4 環(huán)形網(wǎng)絡(luò)2測試結(jié)果
表5 環(huán)形網(wǎng)絡(luò)3測試結(jié)果
從表3、表4、表5的實驗數(shù)據(jù)中可以看出:傳輸平均時間與傳輸?shù)囊粠瑪?shù)據(jù)量和網(wǎng)絡(luò)中的節(jié)點數(shù)量有關(guān),數(shù)據(jù)量和更新延時時間呈線性關(guān)系。同時,在環(huán)形網(wǎng)絡(luò)中每增加一個節(jié)點,延時時間平均增加28.2ns/byte。
設(shè)計實現(xiàn)了一種基于PCI總線的反射內(nèi)存網(wǎng)絡(luò)節(jié)點卡硬件和鏈路層協(xié)議,克服了傳統(tǒng)節(jié)點卡的缺陷。其可廣泛應(yīng)用于對數(shù)據(jù)共享實時性要求高的網(wǎng)絡(luò)化工業(yè)過程控制領(lǐng)域,以及航空航天等分布式測控、仿真領(lǐng)域。廣義隨機Petri建模分析和實驗測試結(jié)果表明,反射內(nèi)存網(wǎng)絡(luò)節(jié)點卡設(shè)計合理,更新數(shù)據(jù)量和更新延時時間呈線性關(guān)系,工作穩(wěn)定、可靠。
[1]Chen Xin,F(xiàn)an Wenhui,Yue Yingchao.A reflective memory network based runtime infrastructure[C]//International Conference on Industrial Engineering and Engineering Management,2010:2048-2051.
[2]Duan Xiaojun,Wu Chengfu,Chen Huaimin,et al.A rapid test platform of redundant flight control computer software based on RFM [C]//The 7th International Conference on Computer Science &Education,2012:403-406.
[3]ZHENG Xiaobao.Real-time infrared image generation system based on reflective memory network [J].Computer Applications,2008,28 (S2):344-359 (in Chinese). [鄭小寶.基于反射內(nèi)存網(wǎng)的紅外圖像實時生成系統(tǒng) [J].計算機應(yīng)用,2008,28 (S2):344-359.]
[4]XU Qi,F(xiàn)ANG Cheng.Realization of clock synchronization in multi-simulator based on shared-memory network [J].Fire Control & Command Control,2009,34 (11):164-167 (in Chinese).[徐琦,方澄.基于反射內(nèi)存網(wǎng)的多飛行模擬器時間同步 [J].火力與指揮控制,2009,34 (11):164-167.]
[5]LI Hai,WU Siliang.Hardware-in-the-loop simulation system of communication satellite countermeasure based on HLA and reflective memory network [J].Journal of System Simulation,2006,18 (6):1520-1523 (in Chinese). [李海,吳嗣亮.基于HLA 和反射內(nèi)存網(wǎng)的半實物衛(wèi)星對抗仿真系統(tǒng) [J].系統(tǒng)仿真學(xué)報,2006,18 (6):1520-1523.]
[6]CHEN Lijie,TANG Tao.Modeling of GSM-R double-level network and its reliability analysis based on stochastic petri net[J].Journal of the China Railway Society,2012,34 (3):75-81 (in Chinese).[陳黎潔,唐濤.基于隨機Petri網(wǎng)的GSM_R雙層網(wǎng)絡(luò)建模與性能分析[J].鐵道學(xué)報,2012,34 (3):75-81.]
[7]Wang Ming,Zhang Chunxi,Yi Xiaosu.Performance evaluation of IEEE 1394bserial bus with deterministic and stochastic Petri nets[J].China Communications,2013,10 (2):121-133.
[8]HE Yanxiang,SHEN Hua.Rules and implementation of converting stochastic Petri net model to Markov chain [J].Journal of Frontiers of Computer Science and Technology,2013,7(1):55-62 (in Chinese).[何炎祥,沈華.隨機Petri網(wǎng)模型到馬爾可夫鏈的轉(zhuǎn)換規(guī)則與實現(xiàn) [J].計算機科學(xué)與探索,2013,7 (1):55-62.]
[9]LEI Ge,CHEN Xin.Performance analysis based on generalized stochastic Petri net [J].Journal of Beijing Information Science and Technology University,2013,28 (6):38-41 (in Chinese).[雷舸,陳昕.廣義隨機Petri網(wǎng)及性能分析 [J].北京信息科技大學(xué)學(xué)報,2013,28 (6):38-41.]
[10]FANG Dan,LU Huiqing,LIAN Guangyao,et al.Parallel ATS performance analysis based on generalized stochastic Petri nets [J].Computer Measurement & Control,2012,20(3):651-653 (in Chinese). [方丹,盧慧卿,連光耀,等.基于廣義隨機Petri網(wǎng)的并行自動測試系統(tǒng)性能分析研究[J].計算機測量與控制,2012,20 (3):651-653.]
[11]WANG Wenhao,WU Yong,ZHANG Jiandong.Fibre channel bus transport model based on the SPN [J].Fire Control&Command Control,2012,37 (4):185-187 (in Chinese).[王文豪,吳勇,張建東.隨機Petri網(wǎng)的光纖通道總線傳輸模型 [J].火力與指揮控制,2012,37 (4):185-187.]
[12]ZHAO Tao,ZHAN Huiqin,GU Jun.Modeling and performance analysis of Petri nets of multi-channel pressure measurement system [J].Measurement & Control Technology,2012,31 (6):87-90 (in Chinese). [趙濤,詹惠琴,古軍.多通道壓力測試系統(tǒng)Petri網(wǎng)建模及其性能分析 [J].測控技術(shù),2012,31 (6):87-90.]