期重現(xiàn),對(duì)故障的路由器和數(shù)據(jù)包進(jìn)行監(jiān)視;
[0042] S43 :診斷子步驟:根據(jù)片上網(wǎng)絡(luò)的設(shè)計(jì)和原理,診斷路由器的運(yùn)行和數(shù)據(jù)包的傳 輸。
[0043] 一種片上網(wǎng)絡(luò)運(yùn)行過(guò)程重現(xiàn)系統(tǒng),它包括:
[0044] 數(shù)據(jù)獲取模塊:用于從片上網(wǎng)絡(luò)仿真器或驗(yàn)證平臺(tái)獲取片上網(wǎng)絡(luò)配置參數(shù)和運(yùn)行 日志數(shù)據(jù);
[0045] 片上網(wǎng)絡(luò)繪制模塊:用于根據(jù)數(shù)據(jù)獲取模塊獲取的片上網(wǎng)絡(luò)配置參數(shù),繪制網(wǎng)絡(luò) 拓?fù)浜吐酚善鳎?br>[0046] 片上網(wǎng)絡(luò)重現(xiàn)模塊:用于根據(jù)數(shù)據(jù)獲取模塊獲取的運(yùn)行日志數(shù)據(jù)和片上網(wǎng)絡(luò)繪制 模塊繪制的繪制網(wǎng)絡(luò)拓?fù)?,通過(guò)圖像化界面重現(xiàn)片上網(wǎng)絡(luò)行為;
[0047] 片上網(wǎng)絡(luò)行為診斷分析模塊:用于根據(jù)片上網(wǎng)絡(luò)重現(xiàn)模塊重現(xiàn)的片上網(wǎng)絡(luò)行為, 分析W及調(diào)試片上網(wǎng)絡(luò)設(shè)計(jì)。
[0048] 本發(fā)明的有益效果是:通過(guò)本發(fā)明提供的片上網(wǎng)絡(luò)運(yùn)行重現(xiàn)系統(tǒng)和方法,更直觀(guān) 和形象地重現(xiàn)片上網(wǎng)絡(luò)的運(yùn)行過(guò)程,可W幫助研發(fā)人員迅速并準(zhǔn)確地尋找到設(shè)計(jì)的缺陷和 錯(cuò)誤并做出調(diào)整,W便于縮短設(shè)計(jì)周期,提高設(shè)計(jì)準(zhǔn)確度。
[0049] 通過(guò)提取到運(yùn)行過(guò)程中大量微觀(guān)數(shù)據(jù)和狀態(tài),同時(shí)進(jìn)行必要圖形化的重現(xiàn)和回放 W直接呈現(xiàn)其物理含義,對(duì)開(kāi)發(fā)人員完成片上網(wǎng)絡(luò)的FPGA原型驗(yàn)證具有極大的意義。
【附圖說(shuō)明】
[0050] 圖1為本發(fā)明方法流程圖;
[0051] 圖2為路由器繪制示意圖;
[0052] 圖3為圖像化界面示意圖;
[0053] 圖4為網(wǎng)絡(luò)擁堵分析示意圖;
[0054] 圖5為死鎖分析示意圖; 陽(yáng)化5] 圖6為本發(fā)明系統(tǒng)框圖。
【具體實(shí)施方式】
[0056] 下面結(jié)合附圖進(jìn)一步詳細(xì)描述本發(fā)明的技術(shù)方案:如圖1所示,一種片上網(wǎng)絡(luò)運(yùn) 行過(guò)程重現(xiàn)方法,它包括W下步驟:
[0057] Sl:從片上網(wǎng)絡(luò)仿真器或驗(yàn)證平臺(tái)獲取片上網(wǎng)絡(luò)配置參數(shù)和運(yùn)行日志數(shù)據(jù)。
[0058] 網(wǎng)絡(luò)配置參數(shù)保存在XML文件中。通過(guò)修改仿真器,將網(wǎng)絡(luò)運(yùn)行事件按照二進(jìn)制 格式輸入到運(yùn)行日志文件中。其中事件觸發(fā)時(shí)間、微片生成時(shí)間為雙精度類(lèi)型,微片編號(hào)為 長(zhǎng)整形,其他字段為無(wú)符號(hào)短整形。
[0059] S2:根據(jù)步驟Sl中獲取的片上網(wǎng)絡(luò)配置參數(shù),繪制網(wǎng)絡(luò)拓?fù)浜吐酚善鳌?W60] 如圖2所示,路由器繪制成八邊形,分別對(duì)應(yīng)于北、南、西、東、西北、東北、西南、東 南八個(gè)方向。片上網(wǎng)絡(luò)路由器的端口可W繪制在運(yùn)8個(gè)方向上,進(jìn)行鏈接。路由器端口繪 制成長(zhǎng)方形,輸入端口、輸出端口和虛通道分開(kāi)繪制。如果是同一方向上有多個(gè)物理通道, 則物理通道之間增加空白W示區(qū)別;如果物理通道包含多個(gè)虛通道,虛通道之間不加分割。 微片繪制為與端口等寬的長(zhǎng)方形,其長(zhǎng)度剛好對(duì)應(yīng)于一個(gè)端口緩存的一個(gè)單元。微片用不 同顏色代表其在數(shù)據(jù)包中的位置,綠色為頭部,藍(lán)色為尾部,其他為白色。當(dāng)緩存未滿(mǎn)時(shí),端 口用黑色繪制;當(dāng)緩存已滿(mǎn)時(shí),端口用紅色繪制,起提示作用。RC電路發(fā)出的請(qǐng)求用虛線(xiàn)箭 頭表示,連接輸入端口和輸出端口;輸入端口和輸出端口的綁定用加粗的實(shí)線(xiàn)箭頭表示,也 是連接對(duì)應(yīng)的輸入端口和輸出端口。路由器中屯、寫(xiě)路由器編號(hào);端口緩沖中部寫(xiě)端口狀態(tài)。
[0061] 步驟S2中繪制路由器的包括W下計(jì)算子步驟:
[0062] 計(jì)算步驟使用的參數(shù)有:地表示端口數(shù)量,VC(Ph)表示端口地的虛通道數(shù)量, in (地,VC)表示端口地虛通道VC的輸入緩存大小,out (地,VC)表示端口地虛通道VC的 輸出緩存大?。籛表示長(zhǎng)方形寬度,1表示長(zhǎng)方形長(zhǎng)度;B表示端口緩存,F(xiàn)表示微片;We表示 端口緩存的寬度,Ie表示端口緩存的長(zhǎng)度;WP表示微片的寬度,Ip表示微片的長(zhǎng)度;dir表 示可W放置端口緩存的方向,Ph(dir)表示dir方向上的物理端口數(shù)量,nb(dir)表示dir 方向上放置的端口緩存數(shù)量;r表示路由器的半徑。
[0063] S20 :提取步驟Sl獲取的片上網(wǎng)絡(luò)配置參數(shù),包括給定端口緩存的寬度We和長(zhǎng)度 Ie, W及路由器配置參數(shù),所述的路由器配置參數(shù)包括端口數(shù)量地,虛通道數(shù)量VC (Ph),輸 入緩存大小in (ph, VC)和輸出緩存大小out (地,VC);
[0064] S21 :在端口緩存的坐標(biāo)系中,繪制出端口緩存和微片,具體地:端口緩存的四個(gè) 錯(cuò)點(diǎn)分別為:(〇,Wb/^,〇),-Wb/2),(1b,Wb/2),(1b,-Wb/2),微片的寬度為 %=Wb,長(zhǎng)度為 Ip =le/in (地,VC)或者Ip= I e/〇ut(ph, VC);位于端口緩存中第i個(gè)單元的微片的四個(gè)錯(cuò)點(diǎn) 為(噸,聽(tīng)/2),(ilF,-WB/2),((i+l)lF,WB/2),((i+l)lF,-WB/2),其中 i = 0, 1,…; 陽(yáng)0化]S22 :在路由器的坐標(biāo)系中,繪制出路由器,具體地:每個(gè)方向上的物理端口的 數(shù)量為地(dir),輸入緩存和輸出緩存的總數(shù)量為nb (dir),在dir方向上邊的端口總寬 度為:PW(Clir)=(地(di;r)+nb(di;r))Xwe,取最大的端口總寬度來(lái)計(jì)算路由器的半徑r:
;由路由器的半徑r得到路由器的8個(gè)錯(cuò)點(diǎn)坐標(biāo),分別為:(tan22. 5 'r,-r), (r, -tan22. 5 ? r),(r, tan22. 5 ? r),(tan22. 5 ? r, r),(-tan22. 5 ? r, r),(-r, tan22. 5 ? r), (-r, -tan22. 5 ? r),(-tan22. 5 ? r, -r);每條邊的中屯、點(diǎn)是(;0, -r),(;0, r),(-r, 0),(r, 0), (-cos45?r,-sin 45 ? r),(cos45 ? r, -sin 45 ?r), (-cos45?r,sin 45?r),(cos45?r,sin 45 ? r);
[0066] S23 :將端口緩存和微片合并到路由器的坐標(biāo)系中,具體地:端口緩存按照邊的中 屯、點(diǎn)對(duì)稱(chēng)排列,端口緩存的寬與路由器的邊重合,緩存的長(zhǎng)與路由器的邊相垂直;同一個(gè)方 向的物理端口中間相隔We,同一個(gè)物理端口的端口緩存的長(zhǎng)邊重合。
[0067] S3 :根據(jù)步驟Sl獲取的運(yùn)行日志數(shù)據(jù),在步驟S2中繪制的網(wǎng)絡(luò)拓?fù)?,通過(guò)圖像化 界面重現(xiàn)片上網(wǎng)絡(luò)行為。 W側(cè)如圖3所示,圖像化界面由重現(xiàn)窗口、重現(xiàn)控制面板和路由器監(jiān)視面板構(gòu)成。
[0069] 重現(xiàn)窗口繪制有片上網(wǎng)絡(luò)的路由器和拓?fù)溥B接,W及網(wǎng)絡(luò)狀態(tài)。重現(xiàn)窗口下方列 出了當(dāng)前時(shí)鐘周期內(nèi)紀(jì)錄的事件列表。
[0070] 重現(xiàn)控制面板由重現(xiàn)控制按鈕組、定時(shí)器設(shè)定和進(jìn)度條組成。重現(xiàn)控制按鈕組包 含快進(jìn)、快退、前進(jìn)、后退和暫停5個(gè)按鈕,分別對(duì)應(yīng)于連續(xù)重現(xiàn)下一周期網(wǎng)絡(luò)狀態(tài)、連續(xù)重 現(xiàn)上一周期網(wǎng)絡(luò)狀態(tài)、重現(xiàn)下一周期網(wǎng)絡(luò)、重現(xiàn)上一周期網(wǎng)絡(luò)狀態(tài)和暫停連續(xù)重現(xiàn)功能。定 時(shí)器設(shè)定連續(xù)重現(xiàn)的速度。進(jìn)度條展示當(dāng)前時(shí)鐘周期在整個(gè)事件隊(duì)列中的位置。
[0071] 路由器監(jiān)視面板提供輸入端口列表和輸出端口列表,分別展現(xiàn)某個(gè)特定路由器的 輸入端口和輸出端口中的最先插入的微片的頭部信息(ID號(hào),源地址和目的地址),也就是 馬上要被服務(wù)的微片的頭部信息。特定路由器在重現(xiàn)界面中選定。
[0072] S4:通過(guò)步驟S3中重現(xiàn)的片上網(wǎng)絡(luò)行為,觀(guān)察路由器行為,對(duì)片上網(wǎng)絡(luò)進(jìn)行診斷 分析,并且調(diào)試片上網(wǎng)絡(luò)設(shè)計(jì)。
[0073]片上網(wǎng)絡(luò)診斷分析可W分為定位和監(jiān)視兩個(gè)步驟。首先,利用向前、向后連續(xù)播放 的功能快速檢索故障,比如緩存滿(mǎn)、微片無(wú)變化等。通過(guò)定位,可W找到出現(xiàn)故障的時(shí)間、路 由器和數(shù)據(jù)包。然后利用按時(shí)間周期重現(xiàn)的功能,對(duì)故障的路由器和數(shù)據(jù)包進(jìn)行監(jiān)視。根 據(jù)片上網(wǎng)絡(luò)的設(shè)計(jì)和原理,診斷路由器的運(yùn)行和數(shù)據(jù)包的傳輸。例如分析擁塞情況和死鎖 情況。
[0074] (I)擁塞情況分析
[00巧]在片上網(wǎng)絡(luò)重現(xiàn)過(guò)程中,路由器緩存的情況是實(shí)時(shí)呈現(xiàn)的。進(jìn)一步,緩存未滿(mǎn),用 黑色繪制;緩存已滿(mǎn),則變?yōu)榧t色。在連續(xù)運(yùn)行過(guò)程中,根據(jù)緩存中微片的情況和根據(jù)緩存 的顏色,可W形象地展示出,片上網(wǎng)絡(luò)各個(gè)路由器的擁塞情況。
[0076]具體地,圖4是由9個(gè)路由器構(gòu)成片上網(wǎng)絡(luò)。根據(jù)其中緩存的請(qǐng)求(虛線(xiàn)箭頭表 示),可W明顯看出,網(wǎng)絡(luò)中的通信負(fù)載具有很強(qiáng)的方向性,從其他路由器向路由器(7)發(fā) 送。通過(guò)觀(guān)察緩存中微片的數(shù)量,可W看到路由器7具有最高的通信負(fù)載,向北、東、西的緩 存都處于擁塞或接近擁塞的狀態(tài)。通過(guò)分析可知,需要提高網(wǎng)絡(luò)整體性能,或者單獨(dú)提高路 由器(7)的性能,或者優(yōu)化通信負(fù)載。
[0077] (2)死鎖情況分析
[0078] 在連續(xù)播放重現(xiàn)某仿真時(shí),經(jīng)過(guò)一段時(shí)間后,發(fā)現(xiàn)所有的微片全部停止