国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      一種在線檢測(cè)報(bào)文傳輸錯(cuò)誤的方法與裝置的制造方法

      文檔序號(hào):8447355閱讀:617來源:國(guó)知局
      一種在線檢測(cè)報(bào)文傳輸錯(cuò)誤的方法與裝置的制造方法
      【技術(shù)領(lǐng)域】
      [0001]本發(fā)明涉及計(jì)算機(jī)芯片技術(shù)領(lǐng)域,具體地說是一種實(shí)用性強(qiáng)、在線檢測(cè)報(bào)文傳輸錯(cuò)誤的方法與裝置。
      【背景技術(shù)】
      [0002]隨著國(guó)家對(duì)信息安全的越來越重視,打破國(guó)外廠商在小型機(jī)服務(wù)器上的壟斷迫在眉睫。而小型機(jī)服務(wù)器的研發(fā)在于需要網(wǎng)絡(luò)控制類芯片控制多路處理器系統(tǒng),這個(gè)系統(tǒng)使得多個(gè)處理器之間能夠進(jìn)行高速有效、可靠安全地進(jìn)行報(bào)文交換處理。對(duì)應(yīng)這個(gè)系統(tǒng)的前期驗(yàn)證調(diào)試過程肯定是要在FPGA平臺(tái)上進(jìn)行的。為了在FPGA平臺(tái)上很好地驗(yàn)證,使用一些調(diào)試手段是必需的。在FPGA平臺(tái)驗(yàn)證調(diào)試過程中,處理器短時(shí)間內(nèi)發(fā)送大量報(bào)文。這些本地源端發(fā)送的報(bào)文都需要有相關(guān)對(duì)應(yīng)的遠(yuǎn)端報(bào)文正確返回。一旦有報(bào)文沒有正確回復(fù),就會(huì)導(dǎo)致處理器異常。但是在大量報(bào)文中無法人工快速確定哪個(gè)報(bào)文出現(xiàn)了問題,導(dǎo)致調(diào)試工作進(jìn)展緩慢。
      [0003]針對(duì)這種問題,本專利提出一種在線檢測(cè)報(bào)文傳輸錯(cuò)誤的方法與裝置,通過加入錯(cuò)誤檢測(cè)機(jī)制,有效解決工作效率低的問題。

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

      [0004]本發(fā)明的技術(shù)任務(wù)是針對(duì)以上不足之處,提供一種實(shí)用性強(qiáng)、在線檢測(cè)報(bào)文傳輸錯(cuò)誤的方法與裝置。
      [0005]一種在線檢測(cè)報(bào)文傳輸錯(cuò)誤的方法,其具體實(shí)現(xiàn)過程為:
      在FPGA驗(yàn)證平臺(tái)中,構(gòu)建一個(gè)存儲(chǔ)空間RAM ;
      檢測(cè)程序啟動(dòng),RAM接收并處理由處理器發(fā)送過來的源端報(bào)文;
      然后對(duì)處理器發(fā)出的源端報(bào)文和遠(yuǎn)端返回報(bào)文的進(jìn)行協(xié)議比較,確定遠(yuǎn)端返回的報(bào)文種類是否在處理器要求的報(bào)文種類,是則刪除對(duì)應(yīng)存儲(chǔ)空間中的報(bào)文,并進(jìn)行下一報(bào)文存儲(chǔ);否則進(jìn)行錯(cuò)誤報(bào)錯(cuò)。
      [0006]所述RAM的地址是唯一的且該地址由報(bào)文的RTID數(shù)值來確定。
      [0007]所述源端報(bào)文儲(chǔ)存入存儲(chǔ)空間RAM之前進(jìn)行過濾的步驟,即過濾源端報(bào)文的純數(shù)據(jù),保留頭報(bào)文信息,同時(shí)過濾掉不需要的bit位上的數(shù)據(jù)。
      [0008]所述協(xié)議比較通過查找表完成,該查找表記錄遠(yuǎn)端報(bào)文和本地源端報(bào)文直接的各種規(guī)則協(xié)議,即在報(bào)文傳輸協(xié)議下,其記錄本地源端的每種報(bào)文所對(duì)應(yīng)著應(yīng)該返回的遠(yuǎn)端報(bào)文種類。
      [0009]所述協(xié)議比較包括以下兩種情況:
      一、當(dāng)沒有處理器發(fā)送過來本地源端報(bào)文要存儲(chǔ),且有報(bào)文從遠(yuǎn)端返回時(shí);
      二、當(dāng)源端報(bào)文和遠(yuǎn)端報(bào)文同時(shí)到來時(shí)。
      [0010]所述第一種情況下的協(xié)議比較過程為:
      首先根據(jù)返回報(bào)文的RTID從存儲(chǔ)空間中提取相關(guān)本地源端報(bào)文; 提取的源端報(bào)文和遠(yuǎn)端返回的報(bào)文共同進(jìn)行協(xié)議比較;
      先根據(jù)本地源端報(bào)文的種類,在查找表中找到對(duì)應(yīng)著的應(yīng)該返回報(bào)文的種類或者相關(guān)數(shù)據(jù)信息;
      再根據(jù)找出來的報(bào)文種類去比較此時(shí)遠(yuǎn)端返回的報(bào)文;
      如果返回的遠(yuǎn)端報(bào)文不是所希望的報(bào)文,則認(rèn)為遠(yuǎn)端返回報(bào)文錯(cuò)誤,系統(tǒng)出現(xiàn)錯(cuò)誤報(bào)錯(cuò);反之則為正常,對(duì)應(yīng)存儲(chǔ)空間中的報(bào)文可以被刪除了,為下一條報(bào)文存儲(chǔ)做準(zhǔn)備。
      [0011]所述第二種情況下的協(xié)議比較過程為:
      首先設(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緩存中緩存;
      當(dāng)源端報(bào)文處理完后,從FIFO緩存中提取返回報(bào)文;
      根據(jù)本地源端報(bào)文的種類,在查找表中找到對(duì)應(yīng)著的應(yīng)該返回報(bào)文的種類或者相關(guān)數(shù)據(jù)信息;
      再根據(jù)找出來的報(bào)文種類去比較此時(shí)遠(yuǎn)端返回的報(bào)文;
      如果返回的遠(yuǎn)端報(bào)文不是所希望的報(bào)文,則認(rèn)為遠(yuǎn)端返回報(bào)文錯(cuò)誤,系統(tǒng)出現(xiàn)錯(cuò)誤報(bào)錯(cuò);反之則為正常,對(duì)應(yīng)存儲(chǔ)空間中的報(bào)文可以被刪除了,為下一條報(bào)文存儲(chǔ)做準(zhǔn)備。
      [0012]一種在線檢測(cè)報(bào)文傳輸錯(cuò)誤的裝置,其結(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來自于每個(gè)數(shù)據(jù)包的輸入使能信號(hào),用來對(duì)報(bào)文進(jìn)行選擇是否輸入存儲(chǔ)空間RAM中;輸入地址控制信號(hào)Dataln_addr,當(dāng)有效報(bào)文輸入的時(shí)候,地址根據(jù)報(bào)文中的RTID來確定;該RAM輸入信號(hào)模塊用于對(duì)上述源端報(bào)文信號(hào)進(jìn)行過濾,根據(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)文;
      遠(yuǎn)端報(bào)文存儲(chǔ)FIFO,用于當(dāng)RAM有數(shù)據(jù)輸入的時(shí)候,先存儲(chǔ)遠(yuǎn)端報(bào)文作為緩沖;當(dāng)RAM可以輸出數(shù)據(jù)的時(shí)候,再?gòu)拇薋IFO中提取遠(yuǎn)端報(bào)文進(jìn)行比較;
      協(xié)議對(duì)比模塊,根據(jù)本地源端報(bào)文推測(cè)出理論上應(yīng)該得到的遠(yuǎn)端報(bào)文,然后與實(shí)際得到的遠(yuǎn)端報(bào)文進(jìn)行對(duì)比,判斷實(shí)際遠(yuǎn)端返回的報(bào)文是否正確,該協(xié)議對(duì)比模塊內(nèi)置協(xié)議查找表,記錄在各種情況下某個(gè)本地源端報(bào)文所對(duì)應(yīng)出現(xiàn)的遠(yuǎn)端報(bào)文情況。
      [0013]本發(fā)明的一種在線檢測(cè)報(bào)文傳輸錯(cuò)誤的方法與裝置,具有以下優(yōu)點(diǎn):
      本發(fā)明提出的一種在線檢測(cè)報(bào)文傳輸錯(cuò)誤的方法與裝置,采用了在FPGA內(nèi)部實(shí)時(shí)存儲(chǔ)檢測(cè)對(duì)比的方式,實(shí)現(xiàn)了程序自動(dòng)檢測(cè)返回報(bào)文錯(cuò)誤并記錄的功能,具有很高的可操作性和實(shí)用價(jià)值;解決了在FPGA平臺(tái)跟蹤查找處理器因?yàn)槟硞€(gè)報(bào)文收發(fā)錯(cuò)誤的時(shí)候,由于FPGA資源有限的原因無法確定并抓取某個(gè)具體報(bào)文的困難;構(gòu)建一個(gè)可控地址的存儲(chǔ)空間和一個(gè)報(bào)文傳輸協(xié)議的查找表,有選擇地存儲(chǔ)了本地處理器發(fā)送報(bào)文,并根據(jù)查找表對(duì)比遠(yuǎn)端返回報(bào)文,來確定具體某個(gè)出錯(cuò)的報(bào)文;最大程度節(jié)約了 FPGA內(nèi)部有限的資源,提高了效率,更好使用了 FPGA相關(guān)軟件進(jìn)行代碼項(xiàng)目調(diào)試,實(shí)用性強(qiáng),易于推廣。
      【附圖說明】
      [0014]附圖1為本發(fā)明的裝置結(jié)構(gòu)框圖。
      【具體實(shí)施方式】
      [0015]下面結(jié)合附圖和具體實(shí)施例對(duì)本發(fā)明作進(jìn)一步說明。
      [0016]現(xiàn)提供一種在線檢測(cè)報(bào)文傳輸錯(cuò)誤的方法與裝置,其作用針對(duì)在FPGA平臺(tái)驗(yàn)證調(diào)試過程中,無法跟蹤系統(tǒng)是由于處理器哪個(gè)報(bào)文出現(xiàn)問題導(dǎo)致宕機(jī)的情況。處理器在短時(shí)間內(nèi)發(fā)送大量報(bào)文,并且收到遠(yuǎn)端回復(fù)相關(guān)報(bào)文,如果其中某個(gè)回復(fù)報(bào)文不是本地源端所希望的報(bào)文,即沒有按照規(guī)定的協(xié)議回復(fù)報(bào)文,就會(huì)導(dǎo)致處理器宕機(jī)。而此時(shí)短時(shí)間內(nèi)來回傳輸有大量的報(bào)文,無法確定是哪個(gè)本地源端報(bào)文對(duì)應(yīng)的回復(fù)報(bào)文出了問題。本專利對(duì)處理器發(fā)出的源報(bào)文和遠(yuǎn)端返回報(bào)文在FPGA內(nèi)部實(shí)時(shí)監(jiān)控進(jìn)行記錄比較,能具體確定哪個(gè)報(bào)文出了問題,并且記錄下來出問題對(duì)應(yīng)的本地源端報(bào)文,方便在線查看調(diào)試。
      [0017]一種在線檢測(cè)報(bào)文傳輸錯(cuò)誤的方法,其具體實(shí)現(xiàn)過程為:
      在FPGA驗(yàn)證平臺(tái)中,構(gòu)建一個(gè)存儲(chǔ)空間RAM ;
      檢測(cè)程序啟動(dòng),RAM接收并處理由處理器發(fā)送過來的源端報(bào)文;
      然后對(duì)處理器發(fā)出的源端報(bào)文和遠(yuǎn)端返回報(bào)文的進(jìn)行協(xié)議比較,確定遠(yuǎn)端返回的報(bào)文種類是否在處理器要求的報(bào)文種類,是則刪除對(duì)應(yīng)存儲(chǔ)空間中的報(bào)文,并進(jìn)行下一報(bào)文存儲(chǔ);否則進(jìn)行錯(cuò)誤報(bào)錯(cuò)。
      [0018]檢測(cè)程序啟動(dòng)后,接收并處理由處理器發(fā)送過來的QPI報(bào)文。在QPI報(bào)文協(xié)議中規(guī)定,在沒有對(duì)應(yīng)報(bào)文返回的時(shí)候每個(gè)QPI報(bào)文中RTID數(shù)值是不同的,并且每個(gè)處理器發(fā)出的RTID總數(shù)目是一定的,所以可以利用RTID這種唯一性有限性作為存儲(chǔ)地址Addr將該報(bào)文存入存儲(chǔ)空間,本專利就采用的這種辦法。因?yàn)橐幚淼膱?bào)文比較多,本專利根據(jù)不同的報(bào)文類型構(gòu)建了不同的存儲(chǔ)空間。
      [0019]當(dāng)一個(gè)本地源報(bào)文送到時(shí)候,根據(jù)報(bào)文的類型將報(bào)文存入相關(guān)的存儲(chǔ)空間RAM中。在存儲(chǔ)之前可以先對(duì)本地源報(bào)文進(jìn)行一下過濾。這是因?yàn)橛行﹫?bào)文只是數(shù)據(jù)報(bào)文,其中所帶的信息為純數(shù)據(jù)信息,這種報(bào)文是肯定有頭報(bào)文的一起發(fā)送的。而我們需要的是頭報(bào)文信息,這種純數(shù)據(jù)報(bào)文可以不用存儲(chǔ),只需要用相關(guān)的頭報(bào)文進(jìn)行檢測(cè)。在實(shí)際應(yīng)用中,即使是頭報(bào)文也會(huì)有些bit位上的數(shù)據(jù)是不需要的,可以忽略不用作存儲(chǔ),這樣可以保證FPGA有限資源的利用率。
      [0020]當(dāng)有遠(yuǎn)端報(bào)文返回的時(shí)候,就要根據(jù)RTID的信息從存儲(chǔ)空間中提取相關(guān)的源端報(bào)文,用來對(duì)遠(yuǎn)端報(bào)文進(jìn)行比較。當(dāng)然,對(duì)于存儲(chǔ)空間來說,在需要提取報(bào)文的時(shí)候同時(shí)有可能又有新的報(bào)文輸入,而存儲(chǔ)空間RAM是不能同時(shí)讀寫的,這時(shí)候考慮到本地源端報(bào)文的優(yōu)先級(jí)是高于遠(yuǎn)端報(bào)文的優(yōu)先級(jí)。所以在遠(yuǎn)端報(bào)文返回輸入處加入一個(gè)小FIFO作為緩存。當(dāng)
      當(dāng)前第1頁1 2 
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1