欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種在線檢測(cè)報(bào)文傳輸超時(shí)的方法與裝置的制造方法

文檔序號(hào):9202556閱讀:1913來(lái)源:國(guó)知局
一種在線檢測(cè)報(bào)文傳輸超時(shí)的方法與裝置的制造方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及計(jì)算機(jī)芯片技術(shù)領(lǐng)域,具體地說(shuō)是一種實(shí)用性強(qiáng)、在線檢測(cè)報(bào)文傳輸超時(shí)的方法與裝置。
【背景技術(shù)】
[0002]隨著國(guó)家對(duì)信息安全的越來(lái)越重視,打破國(guó)外廠商在小型機(jī)服務(wù)器上的壟斷迫在眉睫。而小型機(jī)服務(wù)器的研發(fā)在于需要網(wǎng)絡(luò)控制類(lèi)芯片控制多路處理器系統(tǒng),這個(gè)系統(tǒng)使得多個(gè)處理器之間能夠進(jìn)行高速有效、可靠安全地進(jìn)行報(bào)文交換處理。對(duì)應(yīng)這個(gè)系統(tǒng)的前期驗(yàn)證調(diào)試過(guò)程肯定是要在FPGA平臺(tái)上進(jìn)行的。為了在FPGA平臺(tái)上很好地驗(yàn)證,使用一些調(diào)試手段是必需的。在FPGA調(diào)試過(guò)程中發(fā)現(xiàn)處理器會(huì)出現(xiàn)宕機(jī)現(xiàn)象,其一個(gè)原因就包括處理器發(fā)出的報(bào)文在有效的時(shí)間內(nèi)沒(méi)有接收所對(duì)應(yīng)的遠(yuǎn)端回復(fù)報(bào)文,導(dǎo)致處理器等待超時(shí)最終宕機(jī)。因?yàn)樘幚砥髟诙虝r(shí)間內(nèi)發(fā)送大量報(bào)文,人工很難查找出具體哪個(gè)報(bào)文出現(xiàn)了超時(shí)冋題。
[0003]針對(duì)這種問(wèn)題,本專(zhuān)利提出一種在線檢測(cè)報(bào)文傳輸超時(shí)的方法與裝置,通過(guò)加入超時(shí)檢測(cè)機(jī)制,有效解決上述問(wèn)題。

【發(fā)明內(nèi)容】

[0004]本發(fā)明的技術(shù)任務(wù)是針對(duì)以上不足之處,提供一種實(shí)用性強(qiáng)、在線檢測(cè)報(bào)文傳輸超時(shí)的方法與裝置。
[0005]一種在線檢測(cè)報(bào)文傳輸超時(shí)的方法,其具體實(shí)現(xiàn)過(guò)程為:
在FPGA驗(yàn)證平臺(tái)中,構(gòu)建一個(gè)存儲(chǔ)空間RAM ;
檢測(cè)程序啟動(dòng),RAM接收并處理由處理器發(fā)送過(guò)來(lái)的源端報(bào)文;
然后對(duì)處理器發(fā)出的源端報(bào)文和遠(yuǎn)端返回報(bào)文的時(shí)間進(jìn)行記錄比較,確定遠(yuǎn)端返回的報(bào)文是不是在處理器要求的有效時(shí)間內(nèi)返回,否則進(jìn)行超時(shí)報(bào)錯(cuò)。
[0006]所述RAM的地址是唯一的且該地址由報(bào)文的RTID數(shù)值來(lái)確定。
[0007]所述時(shí)間記錄通過(guò)循環(huán)計(jì)數(shù)器完成,該循環(huán)計(jì)數(shù)器對(duì)時(shí)鐘具有計(jì)數(shù)功能,所記數(shù)值作為時(shí)間軸上的標(biāo)志,即時(shí)間戳,該時(shí)間戳為計(jì)數(shù)值。
[0008]所述循環(huán)計(jì)數(shù)器對(duì)源端報(bào)文、遠(yuǎn)端報(bào)文進(jìn)行時(shí)間上的記錄,即打入時(shí)間戳;當(dāng)報(bào)文存入RAM空間的時(shí)候,該循環(huán)計(jì)數(shù)器打入時(shí)間戳,并將報(bào)文和時(shí)間戳一起存入RAM中,完成了報(bào)文的存入。
[0009]所述超時(shí)報(bào)錯(cuò)是指有效時(shí)間內(nèi)沒(méi)有與源端報(bào)文對(duì)應(yīng)的遠(yuǎn)端報(bào)文返回,該超時(shí)報(bào)錯(cuò)包括以下兩種:
當(dāng)與源端報(bào)文對(duì)應(yīng)的遠(yuǎn)端報(bào)文返回時(shí)已經(jīng)超出有效時(shí)間,進(jìn)行超時(shí)報(bào)錯(cuò);
當(dāng)源端報(bào)文沒(méi)有得到回復(fù),即沒(méi)有所對(duì)應(yīng)的報(bào)文返回時(shí),進(jìn)行超時(shí)報(bào)錯(cuò)。
[0010]所述記錄的時(shí)間在以下三種情況下進(jìn)行比較:
一、當(dāng)沒(méi)有處理器發(fā)送過(guò)來(lái)本地源端報(bào)文要存儲(chǔ),且有報(bào)文從遠(yuǎn)端返回時(shí); 二、既沒(méi)有處理器發(fā)送的報(bào)文需要處理,也沒(méi)有由遠(yuǎn)端返回報(bào)文需要處理時(shí);
三、當(dāng)源端報(bào)文和遠(yuǎn)端報(bào)文同時(shí)到來(lái)時(shí)。
[0011]所述第一種情況下進(jìn)行記錄時(shí)間比較的過(guò)程為:
當(dāng)沒(méi)有處理器發(fā)送過(guò)來(lái)的本地源端報(bào)文要存儲(chǔ)時(shí),查詢(xún)是否有遠(yuǎn)端返回來(lái)的報(bào)文需要處理;
當(dāng)有報(bào)文從遠(yuǎn)端返回時(shí),根據(jù)此報(bào)文的RTID作為地址,從存儲(chǔ)空間RAM中取出所對(duì)應(yīng)的源報(bào)文,同時(shí)得到當(dāng)時(shí)輸入源報(bào)文時(shí)候的時(shí)間戳;
源報(bào)文時(shí)間戳和當(dāng)前時(shí)間計(jì)數(shù)器數(shù)字比較,判斷是否進(jìn)行超時(shí)報(bào)錯(cuò)。
[0012]所述第二種情況下進(jìn)行記錄時(shí)間比較的過(guò)程為:對(duì)存儲(chǔ)空間RAM內(nèi)的源端報(bào)文進(jìn)行超時(shí)檢測(cè)遍歷,即從存儲(chǔ)空間遍歷一個(gè)個(gè)地取出所有存儲(chǔ)的本地源端報(bào)文,查看其時(shí)間戳與當(dāng)前時(shí)間計(jì)數(shù)器數(shù)值進(jìn)行比較;當(dāng)二者相對(duì)差值超過(guò)設(shè)定數(shù)值的時(shí)候,說(shuō)明源端報(bào)文存儲(chǔ)時(shí)間超出一定時(shí)間,則視為該源端報(bào)文對(duì)應(yīng)的回復(fù)已經(jīng)超時(shí),進(jìn)行超時(shí)報(bào)錯(cuò)。
[0013]所述第三種情況下進(jìn)行記錄時(shí)間比較的過(guò)程為:
首先設(shè)計(jì)一個(gè)優(yōu)先級(jí),即將源端報(bào)文的輸入優(yōu)先級(jí)高于遠(yuǎn)端返回報(bào)文的優(yōu)先級(jí);
在遠(yuǎn)端報(bào)文返回輸入的位置設(shè)置一個(gè)FIFO緩存,當(dāng)有源端報(bào)文輸入時(shí),遠(yuǎn)端返回報(bào)文先存入該FIFO緩存中緩存,同時(shí)該返回時(shí)的計(jì)數(shù)器數(shù)值一并存入FIFO緩存中;
當(dāng)源端報(bào)文處理完后,從FIFO緩存中提取返回報(bào)文;
按照第一種情況進(jìn)行記錄時(shí)間比較處理。
[0014]一種在線檢測(cè)報(bào)文傳輸超時(shí)的裝置,其特征在于,其結(jié)構(gòu)包括:
RAM輸入信號(hào)模塊,即源端報(bào)文處理模塊,該輸入信號(hào)包括數(shù)據(jù)輸入端口 Data_in、輸入地址Dataln_addr、輸入使能信號(hào)Dataln_en、輸入時(shí)鐘信號(hào)Clk_in,其中輸入數(shù)據(jù)信號(hào)Datajn即為輸入的報(bào)文;使能信號(hào)Dataln_en來(lái)自于每個(gè)數(shù)據(jù)包的輸入使能信號(hào),用來(lái)對(duì)報(bào)文進(jìn)行選擇是否輸入存儲(chǔ)空間RAM中;輸入地址控制信號(hào)Dataln_addr,當(dāng)有效報(bào)文輸入的時(shí)候,地址根據(jù)報(bào)文中的RTID來(lái)確定;該RAM輸入信號(hào)模塊用于對(duì)上述源端報(bào)文信號(hào)進(jìn)行過(guò)濾,根據(jù)報(bào)文不同選擇是否存入該RAM中;
RAM輸出信號(hào)模塊,即遠(yuǎn)端報(bào)文處理模塊,該輸出信號(hào)模塊輸出的控制信號(hào)數(shù)目和輸入信號(hào)模塊輸入的控制信號(hào)數(shù)目一致,且該輸出信號(hào)包括輸出數(shù)據(jù)信號(hào)Data_out、輸出數(shù)據(jù)使能信號(hào)Dataout_en、輸出地址Dataout_addr、輸出時(shí)鐘Clk_out ;其中輸出數(shù)據(jù)信號(hào)Data_out是和輸入數(shù)據(jù)信號(hào)相同位寬,即是一個(gè)報(bào)文的寬度;輸出地址Dataout_addr根據(jù)遠(yuǎn)端報(bào)文的RTID確定,相同RTID的遠(yuǎn)端報(bào)文對(duì)應(yīng)著源端報(bào)文,當(dāng)沒(méi)有遠(yuǎn)端報(bào)文返回的時(shí)候,Dataout_addr可以自動(dòng)循環(huán),對(duì)RAM存儲(chǔ)空間內(nèi)所有報(bào)文進(jìn)行遍歷操作;
遠(yuǎn)端報(bào)文存儲(chǔ)FIFO,當(dāng)RAM有數(shù)據(jù)輸入時(shí),RAM無(wú)法同時(shí)讀寫(xiě),暫時(shí)不能輸出報(bào)文,該FIFO存儲(chǔ)遠(yuǎn)端報(bào)文作為緩沖;當(dāng)RAM可以輸出數(shù)據(jù)時(shí),再?gòu)拇薋IFO中提取遠(yuǎn)端報(bào)文進(jìn)行比較;
比較模塊,檢測(cè)并計(jì)算出結(jié)果,對(duì)從存儲(chǔ)空間RAM提取的含有時(shí)間戳的源端報(bào)文和遠(yuǎn)端傳回同樣還有時(shí)間戳的遠(yuǎn)端報(bào)文進(jìn)行比較:當(dāng)二者時(shí)間戳差值達(dá)到一定數(shù)值的時(shí)候,認(rèn)為遠(yuǎn)端報(bào)文返回的時(shí)間超過(guò)了協(xié)議的有效時(shí)間,此時(shí)應(yīng)該為超時(shí)錯(cuò)誤;在沒(méi)有遠(yuǎn)端報(bào)文輸入時(shí),對(duì)源端報(bào)文進(jìn)行比較,此時(shí)在源端報(bào)文的時(shí)間戳和當(dāng)前計(jì)數(shù)器數(shù)值,即當(dāng)前時(shí)間進(jìn)行比較:當(dāng)超過(guò)一定數(shù)值時(shí),即認(rèn)為超時(shí)錯(cuò)誤; 計(jì)數(shù)模塊,即一個(gè)多位循環(huán)時(shí)間計(jì)數(shù)器,循環(huán)計(jì)數(shù)的實(shí)時(shí)數(shù)值當(dāng)作當(dāng)前的時(shí)間戳;當(dāng)對(duì)源端報(bào)文輸入存儲(chǔ)空間RAM的時(shí)候以及遠(yuǎn)端報(bào)文暫存FIFO或者直接進(jìn)行比較的時(shí)候,都需要當(dāng)時(shí)計(jì)數(shù)器的數(shù)值;當(dāng)有報(bào)文存入RAM的時(shí)候,記錄下當(dāng)時(shí)的計(jì)數(shù)數(shù)值一起存入RAM。
[0015]本發(fā)明的一種在線檢測(cè)報(bào)文傳輸超時(shí)的方法與裝置,具有以下優(yōu)點(diǎn):
本發(fā)明提出的一種在線檢測(cè)報(bào)文傳輸超時(shí)的方法與裝置,解決了在FPGA平臺(tái)跟蹤查找處理器因?yàn)槟硞€(gè)報(bào)文收發(fā)超時(shí)的時(shí)候,由于FPGA資源有限的原因無(wú)法確定并抓取某個(gè)具體報(bào)文的困難;構(gòu)建一個(gè)可控地址的存儲(chǔ)空間和一個(gè)用來(lái)標(biāo)記時(shí)間軸的計(jì)數(shù)器,對(duì)本地源端發(fā)送報(bào)文加入時(shí)間戳存儲(chǔ)起來(lái),并與遠(yuǎn)端返回報(bào)文進(jìn)行比較來(lái)確定出現(xiàn)超時(shí)的某個(gè)具體報(bào)文;最大程度節(jié)約了 FPGA內(nèi)部有限的資源,提高了效率,更好使用了 FPGA相關(guān)軟件進(jìn)行代碼項(xiàng)目調(diào)試,實(shí)用性強(qiáng),易于推廣。
【附圖說(shuō)明】
[0016]附圖1為本發(fā)明的裝置結(jié)構(gòu)框圖。
【具體實(shí)施方式】
[0017]下面結(jié)合附圖和具體實(shí)施例對(duì)本發(fā)明作進(jìn)一步說(shuō)明。
[0018]現(xiàn)提供一種在線檢測(cè)報(bào)文傳輸超時(shí)的方法與裝置,其作用是針對(duì)在FPGA平臺(tái)驗(yàn)證調(diào)試過(guò)程中,無(wú)法跟蹤系統(tǒng)是否能夠在有效時(shí)間內(nèi)返回傳輸報(bào)文的問(wèn)題。系統(tǒng)運(yùn)行時(shí)候處理器發(fā)送報(bào)文等待遠(yuǎn)端返回相關(guān)報(bào)文,在有效時(shí)間內(nèi)沒(méi)有收到報(bào)文就會(huì)出現(xiàn)處理器宕機(jī)情況。采用了在FPGA內(nèi)部實(shí)時(shí)存儲(chǔ)記錄時(shí)間戳的方式,實(shí)現(xiàn)了程序自動(dòng)檢測(cè)返回報(bào)文時(shí)間并對(duì)比的功能,具有很高的可操作性和實(shí)用價(jià)值。
[0019]一種在線檢測(cè)報(bào)文傳輸超時(shí)的方法,其具體實(shí)現(xiàn)過(guò)程為:
在FPGA驗(yàn)證平臺(tái)中,構(gòu)建一個(gè)存儲(chǔ)空間RAM,
檢測(cè)程序啟動(dòng),RAM接收并處理由處理器發(fā)送過(guò)來(lái)的源端報(bào)文;
然后對(duì)處理器發(fā)出的源端報(bào)文和遠(yuǎn)端返回報(bào)文的時(shí)間進(jìn)行記錄比較,確定遠(yuǎn)端返回的報(bào)文是不是在處理器要求的有效時(shí)間內(nèi)返回,否則進(jìn)行超時(shí)報(bào)錯(cuò)。
[0020]檢測(cè)程序啟動(dòng)后,接收并處理由處理器發(fā)送過(guò)來(lái)的QPI報(bào)文。在QPI報(bào)文協(xié)議中規(guī)定,在沒(méi)有對(duì)應(yīng)報(bào)文返回的時(shí)候每個(gè)QPI報(bào)文中RTID數(shù)值是不同的,并且每個(gè)處理器發(fā)出的RTID總數(shù)目是一定的,所以可以利用RTID這種唯一性有限性作為存儲(chǔ)地址Addr將該報(bào)文存入存儲(chǔ)空間,本專(zhuān)利就采用的這種辦法。
[0021]由于要對(duì)報(bào)文進(jìn)行超時(shí)檢測(cè),所以要對(duì)輸入報(bào)文進(jìn)行在時(shí)間軸上做一個(gè)標(biāo)志。為了達(dá)到這個(gè)目的,需要構(gòu)建一個(gè)模塊。該模塊對(duì)時(shí)鐘具有計(jì)數(shù)功能,將此計(jì)數(shù)值作為時(shí)間戳,即TimeStamp。在將報(bào)文存入RAM空間的時(shí)候需打入時(shí)間戳。QPI報(bào)文協(xié)議中整個(gè)報(bào)文少的也有72位數(shù)據(jù),但報(bào)文中有些數(shù)據(jù)是對(duì)整個(gè)檢測(cè)系統(tǒng)沒(méi)有用的。為了盡量減少資源的使用,可以將時(shí)間戳,即計(jì)數(shù)器當(dāng)時(shí)數(shù)據(jù)存入在報(bào)文中一些不用于檢測(cè)系統(tǒng)使用的位置,例如RHNID[4:0]和RTID[5:0]。報(bào)文和時(shí)間戳一起存入RAM中,此時(shí)即完成了 QPI報(bào)文的存入。
[0022]如果沒(méi)有處理器發(fā)送過(guò)來(lái)的本地源端報(bào)文要存儲(chǔ),就要查詢(xún)是否有遠(yuǎn)端返回來(lái)的報(bào)文需要處理。當(dāng)有報(bào)文從遠(yuǎn)端返回的時(shí)候,因?yàn)榍拔乃龅腞TID唯一性,可以根據(jù)此報(bào)文的RTID作為地址,迅速?gòu)拇鎯?chǔ)空間取出所對(duì)應(yīng)的源報(bào)文,同時(shí)得到當(dāng)時(shí)輸入源報(bào)文時(shí)候的時(shí)間戳。源報(bào)文時(shí)間戳和當(dāng)前時(shí)間計(jì)數(shù)器數(shù)字比較,就可以判斷出遠(yuǎn)端返回的報(bào)文是不是在處理器要求的有效時(shí)間內(nèi)返回。否則的話,即可作為timeout報(bào)錯(cuò)。
[0023]Timeout超時(shí)錯(cuò)誤是指有效時(shí)間內(nèi)沒(méi)有與源報(bào)文對(duì)應(yīng)的遠(yuǎn)端報(bào)文返回,這樣錯(cuò)誤一種可能性是與源報(bào)文對(duì)應(yīng)的遠(yuǎn)端報(bào)文返回時(shí)候已經(jīng)超出有效時(shí)間,還有一種可能性就是直接沒(méi)有所對(duì)應(yīng)的報(bào)文返回。對(duì)于后一種情況,要在既沒(méi)有CPU發(fā)送的報(bào)文需要處理,也沒(méi)有由遠(yuǎn)端返回報(bào)文需要處理的時(shí)候,對(duì)存儲(chǔ)單元內(nèi)的源報(bào)文進(jìn)行TimeOut超時(shí)檢測(cè)遍歷機(jī)制。此刻從存儲(chǔ)空間遍歷一個(gè)個(gè)地取出所有存儲(chǔ)的本地源端報(bào)文,查看其時(shí)間戳與當(dāng)前時(shí)間計(jì)數(shù)器數(shù)值進(jìn)行比較。當(dāng)二者相對(duì)差值超過(guò)設(shè)定數(shù)值的時(shí)候,說(shuō)明源報(bào)文存儲(chǔ)時(shí)間超出一定時(shí)間,則視為該源端報(bào)文對(duì)應(yīng)的回復(fù)已經(jīng)超時(shí),TimeOut報(bào)警。
[0024]根據(jù)上文情況所述,會(huì)出現(xiàn)一種情況,即源端報(bào)文和遠(yuǎn)端報(bào)文同時(shí)到來(lái)。這時(shí)候就需要設(shè)計(jì)一個(gè)優(yōu)先級(jí)。本專(zhuān)利認(rèn)為源端報(bào)文的輸入優(yōu)先級(jí)高于遠(yuǎn)端返回報(bào)文的優(yōu)先級(jí)。所以在有源端報(bào)文輸入的情況下,
當(dāng)前第1頁(yè)1 2 
網(wǎng)友詢(xún)問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
榆中县| 板桥市| 富民县| 清徐县| 柘城县| 木兰县| 九寨沟县| 金坛市| 镇江市| 女性| 耿马| 蒙自县| 衡南县| 江油市| 永兴县| 湾仔区| 蓬溪县| 沁水县| 桐梓县| 呼和浩特市| 称多县| 喜德县| 象州县| 伊春市| 松阳县| 桐乡市| 荥阳市| 东兴市| 武胜县| 绩溪县| 长丰县| 航空| 桃源县| 东辽县| 晋江市| 鱼台县| 山丹县| 兰坪| 巴楚县| 阿坝县| 祁门县|