專利名稱:適合于多處理器片上網(wǎng)絡(luò)的傳輸協(xié)議的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及片上網(wǎng)絡(luò)通訊領(lǐng)域,具體涉及一種適合于多處理器片上網(wǎng)絡(luò)的傳輸協(xié)議。
技術(shù)背景隨著集成電路制造工藝的不斷進步,單片系統(tǒng)芯片(System-ori-Chip)將可以集成數(shù) 十甚至更多的處理器。傳統(tǒng)的總線結(jié)構(gòu)無法有效支持越來越多的處理器,而片上網(wǎng)絡(luò) (Network-on-Chip)則是目前用于解決多處理器互聯(lián)的最有前途的方案。片上網(wǎng)絡(luò)的主要特征是多處理器和網(wǎng)絡(luò)通訊,片上網(wǎng)絡(luò)通訊的關(guān)鍵技術(shù)包括通訊協(xié)議 和拓撲結(jié)構(gòu)。通訊協(xié)議定義了節(jié)點如何連接到網(wǎng)絡(luò)上以及節(jié)點間如何傳輸信息,通常分為 多個層次。本發(fā)明所描述的一種數(shù)據(jù)傳輸協(xié)議相當(dāng)于OSI協(xié)議模型中的傳輸層及其上層協(xié) 議,可以應(yīng)用于任何物理層、數(shù)據(jù)鏈路層和網(wǎng)絡(luò)層。發(fā)明內(nèi)容本發(fā)明要解決的技術(shù)問題是提供一種適合于多處理器片上網(wǎng)絡(luò)的傳輸協(xié)議,主要用于 多處理器片上網(wǎng)絡(luò)的節(jié)點間的數(shù)據(jù)傳輸。多處理器片上網(wǎng)絡(luò)一般包括一個主控處理器和多個從控處理器,針對這個特點,本發(fā) 明提供了兩類數(shù)據(jù)傳輸方式,即主請求傳輸和從請求傳輸。片上網(wǎng)絡(luò)中的主控處理器可以 發(fā)起主請求傳輸和從請求傳輸,從控處理器只能發(fā)起主請求傳輸。所述主請求傳輸是指兩節(jié)點間的傳輸由其中一個節(jié)點發(fā)起,另一節(jié)點響應(yīng)請求。發(fā)起 傳輸?shù)墓?jié)點稱為主節(jié)點,響應(yīng)請求的節(jié)點稱為從節(jié)點。所述從請求傳輸是指兩節(jié)點間的傳輸由第三節(jié)點向兩節(jié)點中的其中一個節(jié)點發(fā)出從 請求傳輸請求,再由接收到請求的節(jié)點向另一節(jié)點發(fā)出傳輸請求。發(fā)起從請求傳輸?shù)墓?jié)點 稱為主節(jié)點,接收主節(jié)點請求的節(jié)點稱為直接從節(jié)點,剩下的一個節(jié)點稱為間接從節(jié)點。為了解決上述技術(shù)問題,本發(fā)明提供一種適合于多處理器片上網(wǎng)絡(luò)的傳輸協(xié)議,適用 于片上網(wǎng)絡(luò)節(jié)點間的數(shù)據(jù)傳輸,根據(jù)不同的傳輸方式和數(shù)據(jù)傳輸方向,包括下列四類傳輸過程過程一、主請求發(fā)送,包括以下步驟步驟1.1、主節(jié)點向從節(jié)點發(fā)送包含傳輸參數(shù)的"主請求發(fā)送"請求包,等待接收從 節(jié)點發(fā)出的反饋包;步驟1.2、從節(jié)點接收到"主請求發(fā)送"請求包;若從節(jié)點忙,無法進行傳輸,則向主節(jié)點發(fā)送"從節(jié)點忙"反饋包,主節(jié)點收到后, 經(jīng)過一定的延時,重新執(zhí)行步驟l.l;若請求包中的傳輸參數(shù)有誤,從節(jié)點向主節(jié)點發(fā)送"出錯"反饋包,主節(jié)點收到后, 本次傳輸結(jié)束;若請求包中的傳輸參數(shù)正確,且從節(jié)點可以進行傳輸,從節(jié)點向主節(jié)點發(fā)送"準(zhǔn)備傳 輸"反饋包,并等待主節(jié)點發(fā)送數(shù)據(jù)包;步驟1.3、主節(jié)點收到從節(jié)點發(fā)出"準(zhǔn)備傳輸"反饋包后,開始依次發(fā)送若干數(shù)據(jù)包, 直至達到請求包中設(shè)定的數(shù)據(jù)傳輸量,之后等待接收從節(jié)點發(fā)出的"傳輸完畢"反饋包;步驟1.4、從節(jié)點接收主節(jié)點發(fā)出的數(shù)據(jù)包,將其中的數(shù)據(jù)逐個保存在請求包中設(shè)定 的相應(yīng)地址,直至接收的數(shù)據(jù)量達到請求包中設(shè)定的數(shù)據(jù)傳輸量,之后向主節(jié)點發(fā)送"傳 輸完畢"反饋包;步驟1.5、主節(jié)點收到從節(jié)點發(fā)出的"傳輸完畢"反饋包,本次傳輸完成; 過程二、主請求接收,包括以下步驟步驟2.1、主節(jié)點向從節(jié)點發(fā)送包含傳輸參數(shù)的"主請求接收"請求包,等待接收從 節(jié)點發(fā)出的反饋包;步驟2.2、從節(jié)點接收到"主請求接收"請求包;若從節(jié)點忙,無法進行傳輸,則向主節(jié)點發(fā)送"從節(jié)點忙"反饋包,主節(jié)點收到后, 經(jīng)過一定的延時,重新執(zhí)行步驟2.1;若請求包中的傳輸參數(shù)有誤,從節(jié)點向主節(jié)點發(fā)送"出錯"反饋包,主節(jié)點收到后, 本次傳輸結(jié)束;若請求包中的傳輸參數(shù)正確,且從節(jié)點可以進行傳輸,從節(jié)點向主節(jié)點發(fā)送"準(zhǔn)備傳輸"反饋包,之后執(zhí)行步驟2.3;步驟2.3、從節(jié)點開始從請求包中設(shè)定的相應(yīng)地址中依次讀出數(shù)據(jù),并打包成數(shù)據(jù)包發(fā)送至主節(jié)點,直至達到請求包中設(shè)定的數(shù)據(jù)量,之后等待接收主節(jié)點發(fā)出的"傳輸完畢"反饋包;步驟2.4、主節(jié)點收到從節(jié)點發(fā)出的"準(zhǔn)備傳輸"反饋包后,開始接收從節(jié)點發(fā)出的 數(shù)據(jù)包,將其中的數(shù)據(jù)逐個取出并保存,直至達到請求包中設(shè)定的數(shù)據(jù)量,之后向從節(jié)點 發(fā)送"傳輸完畢"反饋包;步驟2.5、從節(jié)點收到主節(jié)點發(fā)出的"傳輸完畢"反饋包,本次傳輸完成;過程三、從請求發(fā)送,包括以下步驟步驟3.1、主節(jié)點向直接從節(jié)點發(fā)送一個包含直接從節(jié)點端傳輸參數(shù)的"從請求發(fā)送"請求包和一個包含間接從節(jié)點端傳輸參數(shù)的"從請求發(fā)送"請求包,等待接收直接從節(jié)點發(fā)出的反饋包;步驟3.2、直接從節(jié)點接收到主節(jié)點發(fā)出的"從請求發(fā)送"請求包; 若直接從節(jié)點忙,無法進行傳輸,則向主節(jié)點發(fā)送"從節(jié)點忙"反饋包,主節(jié)點收到后,經(jīng)過一定的延時,重新執(zhí)行步驟3.1;若請求包中的傳輸參數(shù)有誤,直接從節(jié)點向主節(jié)點發(fā)送出"出錯"反饋包,主節(jié)點收到后,本次傳輸結(jié)束;若請求包中的傳輸參數(shù)正確,且直接從節(jié)點可以進行傳輸,則執(zhí)行步驟3.3;步驟3.3、直接從節(jié)點向間接從節(jié)點發(fā)送包含間接從節(jié)點傳輸參數(shù)"主請求發(fā)送"請 求包,之后等待間接從節(jié)點發(fā)出的反饋包;步驟3.4、間接從節(jié)點接收到直接從節(jié)點發(fā)出"主請求發(fā)送"請求包;若間接從節(jié)點忙,無法進行傳輸,則向直接從節(jié)點發(fā)送"從節(jié)點忙"反饋包,直接從 節(jié)點收到后,經(jīng)過一定的延時,重新執(zhí)行步驟3.3;若請求包中的傳輸參數(shù)有誤,間接從節(jié)點向直接從節(jié)點發(fā)送"出錯"反饋包,直接從 節(jié)點收到后,向主節(jié)點發(fā)送發(fā)送"出錯"反饋包,本次傳輸結(jié)束;若請求包中的傳輸參數(shù)正確,且間接從節(jié)點可以進行傳輸,間接從節(jié)點向直接從節(jié)點 發(fā)送"準(zhǔn)備傳輸"反饋包,之后等待直接從節(jié)點發(fā)送數(shù)據(jù)包;步驟3.5、直接從節(jié)點收到間接從節(jié)點發(fā)出的"準(zhǔn)備傳輸"反饋包后,從請求包中設(shè) 定的相應(yīng)地址中依次讀出數(shù)據(jù),并打包成數(shù)據(jù)包發(fā)送至主節(jié)點,直至達到請求包中設(shè)定的 數(shù)據(jù)量,之后等待接收間接從節(jié)點發(fā)出的"傳輸完畢"反饋包;步驟3.6、間接從節(jié)點接收直接從節(jié)點發(fā)出的數(shù)據(jù)包,將其中的數(shù)據(jù)逐個保存在請求 包中設(shè)定的相應(yīng)地址,直至接收的數(shù)據(jù)量達到請求包中設(shè)定的數(shù)據(jù)傳輸量,之后向直接從 節(jié)點發(fā)送"傳輸完畢"反饋包;步驟3.7、直接從節(jié)點收到間接從節(jié)點發(fā)出的"傳輸完畢"反饋包,向主節(jié)點發(fā)送"傳 輸完畢"反饋包;步驟3.8、主節(jié)點收到直接從節(jié)點發(fā)出的"傳輸完畢"反饋包,本次傳輸完成; 過程四、從請求接收,包括以下步驟步驟4.1、主節(jié)點向直接從節(jié)點發(fā)送一個包含直接從節(jié)點端傳輸參數(shù)的"從請求接收" 請求包和一個包含間接從節(jié)點端傳輸參數(shù)的"從請求接收"請求包,等待接收直接從節(jié)點 發(fā)出的反饋包;步驟4.2、直接從節(jié)點接收到主節(jié)點發(fā)出的"從請求接收"請求包;若直接從節(jié)點忙,無法進行傳輸,則向主節(jié)點發(fā)送"從節(jié)點忙"反饋包,主節(jié)點收到 后,經(jīng)過一定的延時,重新執(zhí)行步驟4.1;若請求包中的傳輸參數(shù)有誤,直接從節(jié)點向主節(jié)點發(fā)送出"出錯"反饋包,主節(jié)點收 到后,本次傳輸結(jié)束;若請求包中的傳輸參數(shù)正確,且直接從節(jié)點可以進行傳輸,則執(zhí)行步驟4.3;步驟4.3、直接從節(jié)點向間接從節(jié)點發(fā)送包含間接從節(jié)點傳輸參數(shù)"主請求接收"請 求包,之后等待間接從節(jié)點發(fā)出的反饋包;步驟4.4、間接從節(jié)點接收到直接從節(jié)點發(fā)出"主請求接收"請求包;若間接從節(jié)點忙,無法進行傳輸,則向直接從節(jié)點發(fā)送"從節(jié)點忙"反饋包,直接從 節(jié)點收到后,經(jīng)過一定的延時,重新執(zhí)行步驟4.3;若請求包中的傳輸參數(shù)有誤,間接從節(jié)點向直接從節(jié)點發(fā)送"出錯"反饋包,直接從 節(jié)點收到后,向主節(jié)點發(fā)送發(fā)送"出錯"反饋包,本次傳輸結(jié)束;若請求包中的傳輸參數(shù)正確,且間接從節(jié)點可以進行傳輸,間接從節(jié)點向直接從節(jié)點 發(fā)送"準(zhǔn)備傳輸"反饋包,之后執(zhí)行步驟4.5;步驟4.5、間接從節(jié)點從請求包中設(shè)定的相應(yīng)地址中依次讀出數(shù)據(jù),并打包成數(shù)據(jù)包 發(fā)送至直接從節(jié)點,直至達到請求包中設(shè)定的數(shù)據(jù)量,之后等待接收直接從節(jié)點發(fā)出的"傳 輸完畢"反饋包;步驟4.6、直接從節(jié)點收到間接從節(jié)點發(fā)出的"準(zhǔn)備傳輸"反饋包后,開始接收間接 從節(jié)點發(fā)出的數(shù)據(jù)包,將其中的數(shù)據(jù)逐個保存在請求包中設(shè)定的相應(yīng)地址,直至達到請求 包中設(shè)定的數(shù)據(jù)量,之后向間接從節(jié)點發(fā)送"傳輸完畢"反饋包,并向主節(jié)點發(fā)送"傳輸 完畢"反饋包;步驟4.7、間接從節(jié)點收到直接從節(jié)點發(fā)出的"傳輸完畢"反饋包;步驟4.8、主節(jié)點收到直接從節(jié)點發(fā)出的"傳輸完畢"反饋包,本次傳輸完成。所述的數(shù)據(jù)傳輸?shù)幕締挝皇前?,包由頭信息(Header)和載荷(Payload)組成。頭 信息包括了包類型,源節(jié)點編號和目標(biāo)節(jié)點編號三部分信息,所述的包類型包括請求包、 數(shù)據(jù)包和反饋包三類。請求包的載荷包括請求類型、目標(biāo)節(jié)點編號、傳輸方向、數(shù)據(jù)位寬、 數(shù)據(jù)傳輸量,數(shù)據(jù)首地址和地址變化模式。數(shù)據(jù)包的載荷為數(shù)據(jù)和當(dāng)前數(shù)據(jù)傳輸量,或僅 為數(shù)據(jù)。反饋包的載荷為反饋類型。所述的請求包中的請求類型分為主請求,直接從請求和間接從請求三類。主請求類型 的請求包包括從節(jié)點端的傳輸參數(shù),用于所有四類傳輸過程。直接從請求類型的請求包包 括直接從節(jié)點端的傳輸參數(shù),間接從請求類型的請求包包括間接從節(jié)點端的傳輸參數(shù)。直 接從請求類型的請求包和間接從請求類型的請求包用于從請求發(fā)送過程和從請求接收過 程,由主節(jié)點向直接從節(jié)點發(fā)送。請求包中的目標(biāo)節(jié)點編號在主請求發(fā)送過程和主請求接收過程為從節(jié)點編號,在從請 求發(fā)送過程和從請求接收過程中為間接從節(jié)點編號。請求包中的傳輸方和請求類型一同決定傳輸過程屬于主請求發(fā)送、主請求接收、從請 求發(fā)送或從請求接收之一。請求包中的數(shù)據(jù)位寬用于決定數(shù)據(jù)包中單個數(shù)據(jù)的位寬,包括8比特、16比特、32 比特和64比特四類。請求包中的地址變化模式請求包中的地址變化模式包括遞增,遞減和恒定三類;當(dāng)前 數(shù)據(jù)地址根據(jù)數(shù)據(jù)首地址、數(shù)據(jù)位寬和當(dāng)前數(shù)據(jù)傳輸量計算得到。在遞增模式下,當(dāng)前數(shù) 據(jù)地址是數(shù)據(jù)首地址加上(當(dāng)前數(shù)據(jù)傳輸量《當(dāng)前數(shù)據(jù)位寬對應(yīng)的地址對齊量);在遞減 模式下,當(dāng)前數(shù)據(jù)地址是數(shù)據(jù)首地址減去(當(dāng)前數(shù)據(jù)傳輸量《當(dāng)前數(shù)據(jù)位寬對應(yīng)的地址對 齊量);在恒定模式下,當(dāng)前數(shù)據(jù)地址等于數(shù)據(jù)首地址;恒定模式只能用于包按序到達的 片上網(wǎng)絡(luò)中。所述的反饋包中的反饋類型包括準(zhǔn)備傳輸、節(jié)點忙、出錯、傳輸完畢四類。其中"準(zhǔn) 備傳輸"、"節(jié)點忙"和"出錯"反饋包用于回應(yīng)請求包,分別表示接受請求,拒絕請求和 請求包中的參數(shù)有誤。"傳輸完畢"反饋包表示節(jié)點巳接收完所有數(shù)據(jù)。所述的數(shù)據(jù)包中可以包含或不包含當(dāng)前數(shù)據(jù)傳輸量,在包亂序到達的片上網(wǎng)絡(luò)中必須 包含當(dāng)前數(shù)據(jù)傳輸量。數(shù)據(jù)包中的數(shù)據(jù)部分由多個數(shù)據(jù)打包得到,待傳輸數(shù)據(jù)依次填充不同的數(shù)據(jù)包。在最 后一個數(shù)據(jù)包中,若數(shù)據(jù)不能填滿,則剩余部分用零填充。本發(fā)明提供的數(shù)據(jù)傳輸協(xié)議可以用于按序到達和亂序到達的片上網(wǎng)絡(luò)中,在按序到達 的片上網(wǎng)絡(luò)中,數(shù)據(jù)包不用包含當(dāng)前數(shù)據(jù)傳輸量,節(jié)省了傳輸量。在亂序到達的片上網(wǎng)絡(luò) 中,由于數(shù)據(jù)傳輸絕大部分在隨機訪問存儲器間進行,接收到的數(shù)據(jù)包無需排序即可寫入 隨機訪問存儲器。
下面結(jié)合附圖對本發(fā)明的具體實施方式
作進一步詳細說明。 圖1是主請求發(fā)送過程的流程示意圖; 圖2是主請求接收過程的流程示意圖; 圖3是從請求發(fā)送過程的流程示意圖; 圖4是從請求接收過程的流程示意圖。
具體實施方式
以下結(jié)合附圖來說明本發(fā)明的一種具體實施方式
,但不作為對本發(fā)明的限定。本實施 實例包括主請求發(fā)送,主請求接收,從請求發(fā)送和從請求接收四種傳輸過程。在本實施例中,片上網(wǎng)絡(luò)包含三個節(jié)點,節(jié)點零可以發(fā)起主請求傳輸和從請求傳輸,節(jié)點i和節(jié)點n可以響應(yīng)主請求傳輸和從請求傳輸,并發(fā)起主請求傳輸。數(shù)據(jù)地址為32比特,且為字節(jié)地址,數(shù)據(jù)傳輸量為16比特,節(jié)點編號為3比特。片上網(wǎng)絡(luò)中的包為亂 序到達。包的位寬為88比特,其中包括8比特的頭信息和80比特的載荷。所述頭信息包括2比特的包類型,3比特的源節(jié)點編號和3比特的目標(biāo)節(jié)點編號。包 類型的二進制表示是請求包00 數(shù)據(jù)包01 反饋包10所述的三個節(jié)點編號的二進制表示是 節(jié)點零000 節(jié)點I : 001 節(jié)點II: 010 所述請求包的載荷包括好的消息由新的簇頭廣播給簇內(nèi)所有節(jié)點,這時下一輪簇頭在當(dāng)前輪的TDMA
時隙就轉(zhuǎn)給當(dāng)前輪的簇頭來進行傳輸數(shù)據(jù),省去了重新分配TDMA時隙的過程。
3.根據(jù)權(quán)利要求l所述的一種應(yīng)用于無線傳感器網(wǎng)絡(luò)的分簇節(jié)能路由算法,
其特征是
1) 不是每 一次傳輸數(shù)據(jù)后都構(gòu)造簇,而是R輪之后才重新構(gòu)造簇;
2) 簇頭的選擇不是隨機的,而是根據(jù)每輪之后節(jié)點的剩余能量值對下一輪 的簇頭節(jié)點作出預(yù)測,不會選擇到剩余能量值低的節(jié)點作為簇頭;
3) 分簇是均勻的,均勻分簇包括兩個含義 一是簇內(nèi)節(jié)點數(shù)目大體相同; 二是簇的物理范圍大體相當(dāng);
4) 引入功率控制機制,使得每個節(jié)點傳輸數(shù)據(jù)的能量最小化;
5) 不必每輪傳輸數(shù)據(jù)之前都廣播這一輪的TDMA時隙表,采取的方法是將 預(yù)測的下一輪簇頭在當(dāng)前輪的TDMA時隙轉(zhuǎn)給當(dāng)前輪的簇頭在下一輪中進行數(shù) 據(jù)傳輸使用,這樣省去了重新分配TDMA時隙的過程。
4.根據(jù)權(quán)利要求2所述的一種應(yīng)用于無線傳感器網(wǎng)絡(luò)的分簇節(jié)能路由算法, 其特征是
簇頭預(yù)測階段,簇頭預(yù)測的出發(fā)點為選擇距離原簇頭較近的節(jié)點作為新簇
頭或選擇剩余能量較多的節(jié)點作為新的簇頭;簇頭維系一張關(guān)于簇內(nèi)節(jié)點信息
的表格,表格數(shù)據(jù)格式為簇內(nèi)節(jié)點"節(jié)點;的位置信息丄,,節(jié)點/的剩余能量g;
簇頭需過計算每個簇成員節(jié)點《值來預(yù)測新的簇頭,^值通過(1)式得到
一簇內(nèi)節(jié)點倒簇頭的距離=S, () 《—簇內(nèi)節(jié)點/的剩余能量—5遞減模式下,當(dāng)前數(shù)據(jù)地址=數(shù)據(jù)首地址_ (當(dāng)前數(shù)據(jù)傳輸量《當(dāng)前數(shù)據(jù)位寬對應(yīng)的地址 對齊量)。恒定模式不能用于亂序到達的片上網(wǎng)絡(luò)。當(dāng)數(shù)據(jù)地址用字節(jié)地址表示時,計算 公式中的移位運算"<<當(dāng)前數(shù)據(jù)位寬對應(yīng)的地址對齊量"對于不同數(shù)據(jù)位寬分別是8比特不移位16比特左移l位32比特左移2位64比特左移3位所述主請求發(fā)送過程,由節(jié)點零發(fā)起,節(jié)點I響應(yīng),節(jié)點零向節(jié)點I的0x10000000 (十六進制)地址發(fā)送3個32比特的數(shù)據(jù),地址變化模式為遞增。傳輸過程包括以下步驟步驟1.1、節(jié)點零向節(jié)點I發(fā)送包含傳輸參數(shù)的"主請求發(fā)送"請求包,頭信息中包類型為00,源節(jié)點為000,目標(biāo)節(jié)點為001,載荷中地址變化模式為10,數(shù)據(jù)首地址為 0x10000000,請求類型為OO,目標(biāo)節(jié)點編號為001,傳輸方向為l,數(shù)據(jù)位寬為IO,數(shù)據(jù) 傳輸量為0x0003 (十六進制)。節(jié)點零等待接收節(jié)點I發(fā)出的反饋包; 步驟1.2、節(jié)點I接收到"主請求發(fā)送"請求包;若節(jié)點I忙,無法進行傳輸,則向節(jié)點零發(fā)送"從節(jié)點忙"反饋包,頭信息中包類型 為10,源節(jié)點為001,目標(biāo)節(jié)點為000,載荷中反饋類型為Ol。節(jié)點零收到后,經(jīng)過一定 的延時,重新執(zhí)行步驟l.l;若請求包中的傳輸參數(shù)有誤,節(jié)點I向節(jié)點零發(fā)送"出錯"反饋包,頭信息中包類型 為io,源節(jié)點為ooi,目標(biāo)節(jié)點為OOO,載荷中反饋類型為IO。節(jié)點零收到后,本次傳輸 結(jié)束;若請求包中的傳輸參數(shù)正確,且節(jié)點I可以進行傳輸,節(jié)點I向節(jié)點零發(fā)送"準(zhǔn)備傳輸"反饋包,頭信息中包類型為10,源節(jié)點為ooi,目標(biāo)節(jié)點為ooo,載荷中反饋類型為00。節(jié)點I等待節(jié)點零發(fā)送數(shù)據(jù)包;步驟1.3、節(jié)點零收到節(jié)點I發(fā)出"準(zhǔn)備傳輸"反饋包后,開始依次發(fā)送2個數(shù)據(jù)包, 頭信息中包類型為01,源節(jié)點為000,目標(biāo)節(jié)點為001。第1個數(shù)據(jù)包的第0到31比特為 第1個數(shù)據(jù),第32到63比特為第2個數(shù)據(jù),第64到79比特為當(dāng)前數(shù)據(jù)傳輸量0。第2 個數(shù)據(jù)包的第0到31比特為第3個數(shù)據(jù),第32到63比特填充為零,第64到79比特為當(dāng)前數(shù)據(jù)傳輸量2。節(jié)點零等待接收節(jié)點I發(fā)出的"傳輸完畢"反饋包;步驟1.4、節(jié)點I接收節(jié)點零發(fā)出的數(shù)據(jù)包,可能先收到第l個數(shù)據(jù)包,也可能先收 到第2個數(shù)據(jù)包。收到第1個數(shù)據(jù)包時,取出第1個數(shù)據(jù)存放在地址0x10000000,第2個 數(shù)據(jù)存放在地址0x10000004。收到第2個數(shù)據(jù)包時,取出第3個數(shù)據(jù)存放在地址 0x10000008。節(jié)點I發(fā)送"傳輸完畢"反饋包,頭信息中包類型為IO,源節(jié)點為001,目 標(biāo)節(jié)點為000,載荷中反饋類型為ll;步驟1.5、節(jié)點零收到節(jié)點I發(fā)出的"傳輸完畢"反饋包,本次傳輸完成。 圖1示意了一次主請求發(fā)送過程。所述主請求接收過程,由節(jié)點零發(fā)起,節(jié)點I響應(yīng),節(jié)點零節(jié)點I 1的0x10000000 地址接收2個64比特的數(shù)據(jù),地址變化模式為遞增。傳輸過程包括以下步驟步驟2.1、節(jié)點零向節(jié)點I發(fā)送包含傳輸參數(shù)的"主請求接收"請求包,頭信息中包 類型為00,源節(jié)點為000,目標(biāo)節(jié)點為001,載荷中地址變化模式為10,數(shù)據(jù)首地址為 0x10000000,請求類型為OO,目標(biāo)節(jié)點編號為001,傳輸方向為0,數(shù)據(jù)位寬為ll,數(shù)據(jù) 傳輸量為0x0002。節(jié)點零等待接收節(jié)點I發(fā)出的反饋包;步驟2.2、節(jié)點I接收到"主請求接收"請求包;若節(jié)點I忙,無法進行傳輸,則向節(jié)點零發(fā)送"從節(jié)點忙"反饋包,頭信息中包類型 為10,源節(jié)點為001,目標(biāo)節(jié)點為000,載荷中反饋類型為Ol。節(jié)點零收到后,經(jīng)過一定 的延時,重新執(zhí)行步驟2.1;若請求包中的傳輸參數(shù)有誤,節(jié)點I向節(jié)點零發(fā)送"出錯"反饋包,頭信息中包類型 為10,源節(jié)點為001,目標(biāo)節(jié)點為000,載荷中反饋類型為IO。節(jié)點零收到后,本次傳輸 結(jié)束;若請求包中的傳輸參數(shù)正確,且節(jié)點i可以進行傳輸,節(jié)點i向節(jié)點零發(fā)送"準(zhǔn)備傳輸"反饋包,頭信息中包類型為io,源節(jié)點為ooi,目標(biāo)節(jié)點為ooo,載荷中反饋類型為00。節(jié)點I執(zhí)行步驟2.3;步驟2.3、節(jié)點I開始從地址0x10000000和0x10000008讀出2個64比特數(shù)據(jù),并 依次打包成2個數(shù)據(jù)包發(fā)送至節(jié)點零。數(shù)據(jù)包頭信息中包類型為Ol,源節(jié)點為001,目標(biāo) 節(jié)點為000。第1個數(shù)據(jù)包的第0到63比特為第1個數(shù)據(jù),第64到79比特為當(dāng)前數(shù)據(jù)傳 輸量0。第2個數(shù)據(jù)包的第0到63比特為第2個數(shù)據(jù),第64到79比特為當(dāng)前數(shù)據(jù)傳輸量1。節(jié)點I等待接收節(jié)點零發(fā)出的"傳輸完畢"反饋包;步驟2.4、節(jié)點零收到節(jié)點I發(fā)出的"準(zhǔn)備傳輸"反饋包后,可能先收到第1個數(shù)據(jù) 包,也可能先收到第2個數(shù)據(jù)包。收到第l個數(shù)據(jù)包時,取出第l個數(shù)據(jù)。收到第2個數(shù) 據(jù)包時,取出第2個數(shù)據(jù)。節(jié)點零向節(jié)點I發(fā)送"傳輸完畢"反饋包,頭信息中包類型為 10,源節(jié)點為OOl,目標(biāo)節(jié)點為OOO,載荷中反饋類型為ll;步驟2.5、節(jié)點I收到節(jié)點零發(fā)出的"傳輸完畢"反饋包,本次傳輸完成。圖2示意了一次主請求接收過程。所述從請求發(fā)送過程,由節(jié)點零發(fā)起,節(jié)點I響應(yīng),節(jié)點I從地址0x11000000向節(jié) 點II的0x12000000地址發(fā)送2個64比特的數(shù)據(jù),地址變化模式為遞增。傳輸過程包括以下步驟步驟3.1、節(jié)點零向節(jié)點I發(fā)送一個包含節(jié)點I端傳輸參數(shù)的"從請求發(fā)送"請求包, 頭信息中包類型為OO,源節(jié)點為OOO,目標(biāo)節(jié)點為OOl,載荷中地址變化模式為10,數(shù)據(jù) 首地址為0x11000000,請求類型為10,目標(biāo)節(jié)點編號為OIO,傳輸方向為l,數(shù)據(jù)位寬為ii,數(shù)據(jù)傳輸量為oxooo2;和一個包含節(jié)點n端傳輸參數(shù)的"從請求發(fā)送"請求包,頭信息中包類型為oo,源節(jié)點為OOO,目標(biāo)節(jié)點為OOl,載荷中地址變化模式為10,數(shù)據(jù)首地 址為0x12000000,請求類型為ll,目標(biāo)節(jié)點編號為OIO,傳輸方向為l,數(shù)據(jù)位寬為ll, 數(shù)據(jù)傳輸量為0x0002。節(jié)點零等待接收節(jié)點I發(fā)出的反饋包;步驟3.2、節(jié)點I接收到節(jié)點零發(fā)出的"從請求發(fā)送"請求包;若節(jié)點I忙,無法進行傳輸,則向節(jié)點零發(fā)送"從節(jié)點忙"反饋包,頭信息中包類型 為10,源節(jié)點為OOl,目標(biāo)節(jié)點為OOO,載荷中反饋類型為Ol。節(jié)點零收到后,經(jīng)過一定 的延時,重新執(zhí)行步驟3.1;若請求包中的傳輸參數(shù)有誤,節(jié)點I向節(jié)點零發(fā)送出"出錯"反饋包,頭信息中包類 型為IO,源節(jié)點為OOl,目標(biāo)節(jié)點為OOO,載荷中反饋類型為IO。節(jié)點零收到后,本次傳 輸結(jié)束;若請求包中的傳輸參數(shù)正確,且節(jié)點I可以進行傳輸,則執(zhí)行步驟3.3;步驟3.3、節(jié)點I向節(jié)點II發(fā)送包含節(jié)點II傳輸參數(shù)"主請求發(fā)送"請求包,頭信息 中包類型為OO,源節(jié)點為OOl,目標(biāo)節(jié)點為OIO,載荷中地址變化模式為10,數(shù)據(jù)首地址 為0x12000000,請求類型為OO,目標(biāo)節(jié)點編號為OIO,傳輸方向為l,數(shù)據(jù)位寬為11,數(shù)據(jù)傳輸量為ox0002。節(jié)點i等待節(jié)點n發(fā)出的反饋包;步驟3.4、節(jié)點n接收到節(jié)點I發(fā)出"主請求發(fā)送"請求包;若節(jié)點n忙,無法進行傳輸,則向節(jié)點i發(fā)送"從節(jié)點忙"反饋包,頭信息中包類型 為io,源節(jié)點為oio,目標(biāo)節(jié)點為ooi,載荷中反饋類型為oi。節(jié)點i收到后,經(jīng)過一定的延時,重新執(zhí)行步驟3.3;若請求包中的傳輸參數(shù)有誤,節(jié)點n向節(jié)點i發(fā)送"出錯"反饋包,頭信息中包類型 為io,源節(jié)點為oio,目標(biāo)節(jié)點為ooi,載荷中反饋類型為io。節(jié)點i收到后,向節(jié)點零發(fā)送發(fā)送"出錯"反饋包,頭信息中包類型為10,源節(jié)點為ooi,目標(biāo)節(jié)點為ooo,載荷中反饋類型為10。本次傳輸結(jié)束;若請求包中的傳輸參數(shù)正確,且節(jié)點n可以進行傳輸,節(jié)點n向節(jié)點i發(fā)送"準(zhǔn)備傳 輸"反饋包,頭信息中包類型為io,源節(jié)點為oio,目標(biāo)節(jié)點為ooi,載荷中反饋類型為 oo。節(jié)點n等待節(jié)點i發(fā)送數(shù)據(jù)包;步驟3.5、節(jié)點I收到節(jié)點n發(fā)出的"準(zhǔn)備傳輸"反饋包后,從地址(bdlOOOOOO和 0x11000008讀出2個64比特數(shù)據(jù),并依次打包成2個數(shù)據(jù)包發(fā)送至節(jié)點零。數(shù)據(jù)包頭信 息中包類型為Ol,源節(jié)點為001,目標(biāo)節(jié)點為010。第1個數(shù)據(jù)包的第0到63比特為第1 個數(shù)據(jù),第64到79比特為當(dāng)前數(shù)據(jù)傳輸量0。第2個數(shù)據(jù)包的第0到63比特為第2個數(shù) 據(jù),第64到79比特為當(dāng)前數(shù)據(jù)傳輸量1。節(jié)點I等待接收節(jié)點II發(fā)出的"傳輸完畢"反 饋包;步驟3.6、節(jié)點II接收節(jié)點I發(fā)出的數(shù)據(jù)包,可能先收到第l個數(shù)據(jù)包,也可能先收 到第2個數(shù)據(jù)包。收到第1個數(shù)據(jù)包時,取出第1個數(shù)據(jù)存放在地址0x12000000。收到第 2個數(shù)據(jù)包時,取出第2個數(shù)據(jù)存放在地址0x12000008。節(jié)點II向節(jié)點I發(fā)送"傳輸完畢" 反饋包,頭信息中包類型為IO,源節(jié)點為OIO,目標(biāo)節(jié)點為OOl,載荷中反饋類型為ll;步驟3.7、節(jié)點I收到節(jié)點II發(fā)出的"傳輸完畢"反饋包,向節(jié)點零發(fā)送"傳輸完畢" 反饋包,頭信息中包類型為IO,源節(jié)點為OOl,目標(biāo)節(jié)點為OOO,載荷中反饋類型為ll;步驟3.8、節(jié)點零收到節(jié)點I發(fā)出的"傳輸完畢"反饋包,本次傳輸完成。圖3示意了一次從請求發(fā)送過程。所述從請求接收過程,由節(jié)點零發(fā)起,節(jié)點I響應(yīng),節(jié)點I的0x12000000地址接收 3個32比特的數(shù)據(jù),保存在從0x11000000開始的地址空間,地址變化模式為遞增。傳輸過程包括以下步驟步驟4.1、節(jié)點零向節(jié)點I發(fā)送一個包含節(jié)點I端傳輸參數(shù)的"從請求發(fā)送"請求包, 頭信息中包類型為OO,源節(jié)點為000,目標(biāo)節(jié)點為001,載荷中地址變化模式為10,數(shù)據(jù)首地址為0x11000000,請求類型為io,目標(biāo)節(jié)點編號為oio,傳輸方向為o,數(shù)據(jù)位寬為io,數(shù)據(jù)傳輸量為oxooo3;和一個包含節(jié)點n端傳輸參數(shù)的"從請求發(fā)送"請求包,頭信息中包類型為oo,源節(jié)點為ooo,目標(biāo)節(jié)點為001,載荷中地址變化模式為10,數(shù)據(jù)首地 址為0x12000000,請求類型為ll,目標(biāo)節(jié)點編號為010,傳輸方向為0,數(shù)據(jù)位寬為IO, 數(shù)據(jù)傳輸量為0x0003。節(jié)點零等待接收節(jié)點I發(fā)出的反饋包;步驟4.2、節(jié)點I接收到節(jié)點零發(fā)出的"從請求接收"請求包;若節(jié)點I忙,無法進行傳輸,則向節(jié)點零發(fā)送"從節(jié)點忙"反饋包,頭信息中包類型 為io,源節(jié)點為ooi,目標(biāo)節(jié)點為OOO,載荷中反饋類型為Ol。節(jié)點零收到后,經(jīng)過一定 的延時,重新執(zhí)行步驟3.1;若請求包中的傳輸參數(shù)有誤,節(jié)點I向節(jié)點零發(fā)送出"出錯"反饋包,頭信息中包類 型為io,源節(jié)點為ooi,目標(biāo)節(jié)點為OOO,載荷中反饋類型為IO。節(jié)點零收到后,本次傳 輸結(jié)束;若請求包中的傳輸參數(shù)正確,且節(jié)點I可以進行傳輸,則執(zhí)行步驟4.3;步驟4.3、節(jié)點I向節(jié)點II發(fā)送包含節(jié)點II傳輸參數(shù)"主請求發(fā)送"請求包,頭信息 中包類型為OO,源節(jié)點為001,目標(biāo)節(jié)點為010,載荷中地址變化模式為10,數(shù)據(jù)首地址 為0x12000000,請求類型為OO,目標(biāo)節(jié)點編號為010,傳輸方向為0,數(shù)據(jù)位寬為10,數(shù)據(jù)傳輸量為ox0003。節(jié)點i等待節(jié)點n發(fā)出的反饋包;步驟4.4、節(jié)點n接收到節(jié)點I發(fā)出"主請求接收"請求包;若節(jié)點n忙,無法進行傳輸,則向節(jié)點i發(fā)送"從節(jié)點忙"反饋包,頭信息中包類型為io,源節(jié)點為oio,目標(biāo)節(jié)點為001,載荷中反饋類型為Ol。節(jié)點I收到后,經(jīng)過一定的延時,重新執(zhí)行步驟4.3;若請求包中的傳輸參數(shù)有誤,節(jié)點n向節(jié)點i發(fā)送"出錯"反饋包,頭信息中包類型為io,源節(jié)點為oio,目標(biāo)節(jié)點為001,載荷中反饋類型為IO。節(jié)點I收到后,向節(jié)點零 發(fā)送發(fā)送"出錯"反饋包,頭信息中包類型為10,源節(jié)點為001,目標(biāo)節(jié)點為000,載荷 中反饋類型為10。本次傳輸結(jié)束;若請求包中的傳輸參數(shù)正確,且節(jié)點n可以進行傳輸,節(jié)點n向節(jié)點i發(fā)送"準(zhǔn)備傳輸"反饋包,頭信息中包類型為10,源節(jié)點為010,目標(biāo)節(jié)點為001,載荷中反饋類型為 00。節(jié)點II執(zhí)行步驟4.5;步驟4.5、節(jié)點II從地址0x12000000, 0x12000004和0x12000008讀出3個32比特數(shù) 據(jù),并依次打包成2個數(shù)據(jù)包發(fā)送至節(jié)點I 。數(shù)據(jù)包頭信息中包類型為Ol,源節(jié)點為010, 目標(biāo)節(jié)點為001。第1個數(shù)據(jù)包的第0到31比特為第l個數(shù)據(jù),第32到63比特為第2個 數(shù)據(jù),第64到79比特為當(dāng)前數(shù)據(jù)傳輸量0。第2個數(shù)據(jù)包的第0到31比特為第3個數(shù)據(jù), 第32到63比特填充為零,第64到79比特為當(dāng)前數(shù)據(jù)傳輸量2。節(jié)點II等待接收節(jié)點I 發(fā)出的"傳輸完畢"反饋包;步驟4.6、節(jié)點I收到節(jié)點II發(fā)出的"準(zhǔn)備傳輸"反饋包后,開始接收節(jié)點II發(fā)出的 數(shù)據(jù)包,可能先收到第l個數(shù)據(jù)包,也可能先收到第2個數(shù)據(jù)包。收到第l個數(shù)據(jù)包時, 取出第1個數(shù)據(jù)存放在地址0x11000000,第2個數(shù)據(jù)存放在地址0x11000004。收到第2 個數(shù)據(jù)包時,取出第3個數(shù)據(jù)存放在地址0x11000008。節(jié)點I向節(jié)點II發(fā)送"傳輸完畢" 反饋包,頭信息中包類型為IO,源節(jié)點為OOl,目標(biāo)節(jié)點為OIO,載荷中反饋類型為ll。 節(jié)點I向節(jié)點零發(fā)送"傳輸完畢"反饋包,頭信息中包類型為10,源節(jié)點為001,目標(biāo)節(jié) 點為OOO,載荷中反饋類型為ll;步驟4.7、節(jié)點n收到節(jié)點i發(fā)出的"傳輸完畢"反饋包;步驟4.8、節(jié)點零收到節(jié)點I發(fā)出的"傳輸完畢"反饋包,本次傳輸完成。圖4示意了一次從請求接收過程。最后,還需要注意的是,以上列舉的僅是本發(fā)明的一個具體實施例。顯然,本發(fā)明不 限于以上實施例,還可以有許多變形。本領(lǐng)域的普通技術(shù)人員能從本發(fā)明公開的內(nèi)容直接 導(dǎo)出或聯(lián)想到的所有變形,均應(yīng)認為是本發(fā)明的保護范圍。
權(quán)利要求
1、一種適合于多處理器片上網(wǎng)絡(luò)的傳輸協(xié)議,適用于片上網(wǎng)絡(luò)節(jié)點間的數(shù)據(jù)傳輸,其特征在于,包括下列四類傳輸過程過程一、主請求發(fā)送,包括以下步驟步驟1.1、主節(jié)點向從節(jié)點發(fā)送包含傳輸參數(shù)的“主請求發(fā)送”請求包,等待接收從節(jié)點發(fā)出的反饋包;步驟1.2、從節(jié)點接收到“主請求發(fā)送”請求包;若從節(jié)點忙,無法進行傳輸,則向主節(jié)點發(fā)送“從節(jié)點忙”反饋包,主節(jié)點收到后,經(jīng)過一定的延時,重新執(zhí)行步驟1.1;若請求包中的傳輸參數(shù)有誤,從節(jié)點向主節(jié)點發(fā)送“出錯”反饋包,主節(jié)點收到后,本次傳輸結(jié)束;若請求包中的傳輸參數(shù)正確,且從節(jié)點可以進行傳輸,從節(jié)點向主節(jié)點發(fā)送“準(zhǔn)備傳輸”反饋包,并等待主節(jié)點發(fā)送數(shù)據(jù)包;步驟1.3、主節(jié)點收到從節(jié)點發(fā)出“準(zhǔn)備傳輸”反饋包后,開始依次發(fā)送若干數(shù)據(jù)包,直至達到請求包中設(shè)定的數(shù)據(jù)傳輸量,之后等待接收從節(jié)點發(fā)出的“傳輸完畢”反饋包;步驟1.4、從節(jié)點接收主節(jié)點發(fā)出的數(shù)據(jù)包,將其中的數(shù)據(jù)逐個保存在請求包中設(shè)定的相應(yīng)地址,直至接收的數(shù)據(jù)量達到請求包中設(shè)定的數(shù)據(jù)傳輸量,之后向主節(jié)點發(fā)送“傳輸完畢”反饋包;步驟1.5、主節(jié)點收到從節(jié)點發(fā)出的“傳輸完畢”反饋包,本次傳輸完成;過程二、主請求接收,包括以下步驟步驟2.1、主節(jié)點向從節(jié)點發(fā)送包含傳輸參數(shù)的“主請求接收”請求包,等待接收從節(jié)點發(fā)出的反饋包;步驟2.2、從節(jié)點接收到“主請求接收”請求包;若從節(jié)點忙,無法進行傳輸,則向主節(jié)點發(fā)送“從節(jié)點忙”反饋包,主節(jié)點收到后,經(jīng)過一定的延時,重新執(zhí)行步驟2.1;若請求包中的傳輸參數(shù)有誤,從節(jié)點向主節(jié)點發(fā)送“出錯”反饋包,主節(jié)點收到后,本次傳輸結(jié)束;若請求包中的傳輸參數(shù)正確,且從節(jié)點可以進行傳輸,從節(jié)點向主節(jié)點發(fā)送“準(zhǔn)備傳輸”反饋包,之后執(zhí)行步驟2.3;步驟2.3、從節(jié)點開始從請求包中設(shè)定的相應(yīng)地址中依次讀出數(shù)據(jù),并打包成數(shù)據(jù)包發(fā)送至主節(jié)點,直至達到請求包中設(shè)定的數(shù)據(jù)量,之后等待接收主節(jié)點發(fā)出的“傳輸完畢”反饋包;步驟2.4、主節(jié)點收到從節(jié)點發(fā)出的“準(zhǔn)備傳輸”反饋包后,開始接收從節(jié)點發(fā)出的數(shù)據(jù)包,將其中的數(shù)據(jù)逐個取出并保存,直至達到請求包中設(shè)定的數(shù)據(jù)量,之后向從節(jié)點發(fā)送“傳輸完畢”反饋包;步驟2.5、從節(jié)點收到主節(jié)點發(fā)出的“傳輸完畢”反饋包,本次傳輸完成;過程三、從請求發(fā)送,包括以下步驟步驟3.1、主節(jié)點向直接從節(jié)點發(fā)送一個包含直接從節(jié)點端傳輸參數(shù)的“從請求發(fā)送”請求包和一個包含間接從節(jié)點端傳輸參數(shù)的“從請求發(fā)送”請求包,等待接收直接從節(jié)點發(fā)出的反饋包;步驟3.2、直接從節(jié)點接收到主節(jié)點發(fā)出的“從請求發(fā)送”請求包;若直接從節(jié)點忙,無法進行傳輸,則向主節(jié)點發(fā)送“從節(jié)點忙”反饋包,主節(jié)點收到后,經(jīng)過一定的延時,重新執(zhí)行步驟3.1;若請求包中的傳輸參數(shù)有誤,直接從節(jié)點向主節(jié)點發(fā)送出“出錯”反饋包,主節(jié)點收到后,本次傳輸結(jié)束;若請求包中的傳輸參數(shù)正確,且直接從節(jié)點可以進行傳輸,則執(zhí)行步驟3.3;步驟3.3、直接從節(jié)點向間接從節(jié)點發(fā)送包含間接從節(jié)點傳輸參數(shù)“主請求發(fā)送”請求包,之后等待間接從節(jié)點發(fā)出的反饋包;步驟3.4、間接從節(jié)點接收到直接從節(jié)點發(fā)出“主請求發(fā)送”請求包;若間接從節(jié)點忙,無法進行傳輸,則向直接從節(jié)點發(fā)送“從節(jié)點忙”反饋包,直接從節(jié)點收到后,經(jīng)過一定的延時,重新執(zhí)行步驟3.3;若請求包中的傳輸參數(shù)有誤,間接從節(jié)點向直接從節(jié)點發(fā)送“出錯”反饋包,直接從節(jié)點收到后,向主節(jié)點發(fā)送發(fā)送“出錯”反饋包,本次傳輸結(jié)束;若請求包中的傳輸參數(shù)正確,且間接從節(jié)點可以進行傳輸,間接從節(jié)點向直接從節(jié)點發(fā)送“準(zhǔn)備傳輸”反饋包,之后等待直接從節(jié)點發(fā)送數(shù)據(jù)包;步驟3.5、直接從節(jié)點收到間接從節(jié)點發(fā)出的“準(zhǔn)備傳輸”反饋包后,從請求包中設(shè)定的相應(yīng)地址中依次讀出數(shù)據(jù),并打包成數(shù)據(jù)包發(fā)送至主節(jié)點,直至達到請求包中設(shè)定的數(shù)據(jù)量,之后等待接收間接從節(jié)點發(fā)出的“傳輸完畢”反饋包;步驟3.6、間接從節(jié)點接收直接從節(jié)點發(fā)出的數(shù)據(jù)包,將其中的數(shù)據(jù)逐個保存在請求包中設(shè)定的相應(yīng)地址,直至接收的數(shù)據(jù)量達到請求包中設(shè)定的數(shù)據(jù)傳輸量,之后向直接從節(jié)點發(fā)送“傳輸完畢”反饋包;步驟3.7、直接從節(jié)點收到間接從節(jié)點發(fā)出的“傳輸完畢”反饋包,向主節(jié)點發(fā)送“傳輸完畢”反饋包;步驟3.8、主節(jié)點收到直接從節(jié)點發(fā)出的“傳輸完畢”反饋包,本次傳輸完成;過程四、從請求接收,包括以下步驟步驟4.1、主節(jié)點向直接從節(jié)點發(fā)送一個包含直接從節(jié)點端傳輸參數(shù)的“從請求接收”請求包和一個包含間接從節(jié)點端傳輸參數(shù)的“從請求接收”請求包,等待接收直接從節(jié)點發(fā)出的反饋包;步驟4.2、直接從節(jié)點接收到主節(jié)點發(fā)出的“從請求接收”請求包;若直接從節(jié)點忙,無法進行傳輸,則向主節(jié)點發(fā)送“從節(jié)點忙”反饋包,主節(jié)點收到后,經(jīng)過一定的延時,重新執(zhí)行步驟4.1;若請求包中的傳輸參數(shù)有誤,直接從節(jié)點向主節(jié)點發(fā)送出“出錯”反饋包,主節(jié)點收到后,本次傳輸結(jié)束;若請求包中的傳輸參數(shù)正確,且直接從節(jié)點可以進行傳輸,則執(zhí)行步驟4.3;步驟4.3、直接從節(jié)點向間接從節(jié)點發(fā)送包含間接從節(jié)點傳輸參數(shù)“主請求接收”請求包,之后等待間接從節(jié)點發(fā)出的反饋包;步驟4.4、間接從節(jié)點接收到直接從節(jié)點發(fā)出“主請求接收”請求包;若間接從節(jié)點忙,無法進行傳輸,則向直接從節(jié)點發(fā)送“從節(jié)點忙”反饋包,直接從節(jié)點收到后,經(jīng)過一定的延時,重新執(zhí)行步驟4.3;若請求包中的傳輸參數(shù)有誤,間接從節(jié)點向直接從節(jié)點發(fā)送“出錯”反饋包,直接從節(jié)點收到后,向主節(jié)點發(fā)送發(fā)送“出錯”反饋包,本次傳輸結(jié)束;若請求包中的傳輸參數(shù)正確,且間接從節(jié)點可以進行傳輸,間接從節(jié)點向直接從節(jié)點發(fā)送“準(zhǔn)備傳輸”反饋包,之后執(zhí)行步驟4.5;步驟4.5、間接從節(jié)點從請求包中設(shè)定的相應(yīng)地址中依次讀出數(shù)據(jù),并打包成數(shù)據(jù)包發(fā)送至直接從節(jié)點,直至達到請求包中設(shè)定的數(shù)據(jù)量,之后等待接收直接從節(jié)點發(fā)出的“傳輸完畢”反饋包;步驟4.6、直接從節(jié)點收到間接從節(jié)點發(fā)出的“準(zhǔn)備傳輸”反饋包后,開始接收間接從節(jié)點發(fā)出的數(shù)據(jù)包,將其中的數(shù)據(jù)逐個保存在請求包中設(shè)定的相應(yīng)地址,直至達到請求包中設(shè)定的數(shù)據(jù)量,之后向間接從節(jié)點發(fā)送“傳輸完畢”反饋包,并向主節(jié)點發(fā)送“傳輸完畢”反饋包;步驟4.7、間接從節(jié)點收到直接從節(jié)點發(fā)出的“傳輸完畢”反饋包;步驟4.8、主節(jié)點收到直接從節(jié)點發(fā)出的“傳輸完畢”反饋包,本次傳輸完成。
2、 根據(jù)權(quán)利要求l所述的適合于多處理器片上網(wǎng)絡(luò)的傳輸協(xié)議,其特征在于主請求發(fā) 送和主請求接收過程在兩個節(jié)點間進行,發(fā)出請求包的節(jié)點稱為主節(jié)點,接收請求包的節(jié)點 稱為從節(jié)點;從請求發(fā)送和從請求接收過程在三個節(jié)點間進行,發(fā)出"從請求發(fā)送"和"從 請求接收"請求包的節(jié)點稱為主節(jié)點,接收"從請求發(fā)送"和"從請求接收"請求包的節(jié)點 稱為直接從節(jié)點,另一節(jié)點稱為間接從節(jié)點。
3、 根據(jù)權(quán)利要求l所述的適合于多處理器片上網(wǎng)絡(luò)的傳輸協(xié)議,其特征在于數(shù)據(jù)傳輸 的基本單位是包,包括頭信息和載荷組成;頭信息包括了包類型、源節(jié)點編號和目標(biāo)節(jié)點編 號三部分信息,所述的包類型包括請求包、數(shù)據(jù)包和反饋包三類;請求包的載荷包括請求類 型、目標(biāo)節(jié)點編號、傳輸方向、數(shù)據(jù)位寬、數(shù)據(jù)傳輸量,數(shù)據(jù)首地址和地址變化模式;數(shù)據(jù) 包的載荷為數(shù)據(jù)和當(dāng)前數(shù)據(jù)傳輸量,或僅為數(shù)據(jù);反饋包的載荷為反饋類型。
4、 根據(jù)權(quán)利要求1或3所述的適合于多處理器片上網(wǎng)絡(luò)的傳輸協(xié)議,其特征在于請求 包中的請求類型分為主請求、直接從請求和間接從請求三類;主請求類型的請求包包括從節(jié) 點端的傳輸參數(shù),用于所有四類傳輸過程;直接從請求類型的請求包包括直接從節(jié)點端的傳 輸參數(shù),間接從請求類型的請求包包括間接從節(jié)點端的傳輸參數(shù);直接從請求類型的請求包 和間接從請求類型的請求包用于從請求發(fā)送過程和從請求接收過程,由主節(jié)點向直接從節(jié)點 發(fā)送;請求包中的目標(biāo)節(jié)點編號在主請求發(fā)送過程和主請求接收過程為從節(jié)點編號,在從請求 發(fā)送過程和從請求接收過程中為間接從節(jié)點編號;請求包中的傳輸方和請求類型一同決定傳輸過程屬于主請求發(fā)送、主請求接收、從請求 發(fā)送或從請求接收之一;請求包中的數(shù)據(jù)位寬用于決定數(shù)據(jù)包中單個數(shù)據(jù)的位寬,包括8比特、16比特、32比特 和64比特四類;請求包中的地址變化模式請求包中的地址變化模式包括遞增,遞減和恒定三類;當(dāng)前數(shù) 據(jù)地址根據(jù)數(shù)據(jù)首地址、數(shù)據(jù)位寬和當(dāng)前數(shù)據(jù)傳輸量計算得到;在遞增模式下,當(dāng)前數(shù)據(jù)地 址是數(shù)據(jù)首地址和當(dāng)前數(shù)據(jù)傳輸量之和;在遞減模式下,當(dāng)前數(shù)據(jù)地址是數(shù)據(jù)首地址和當(dāng)前 數(shù)據(jù)傳輸量之差;在恒定模式下,當(dāng)前數(shù)據(jù)地址是數(shù)據(jù)首地址;恒定模式只能用于包按序到 達的片上網(wǎng)絡(luò)中。
5、根據(jù)權(quán)利要求1或3所述的適合于多處理器片上網(wǎng)絡(luò)的傳輸協(xié)議,其特征在于數(shù)據(jù) 包中可以包含或不包含當(dāng)前數(shù)據(jù)傳輸量,在包亂序到達的片上網(wǎng)絡(luò)中必須包含當(dāng)前數(shù)據(jù)傳輸數(shù)據(jù)包中的數(shù)據(jù)部分由多個數(shù)據(jù)打包得到,待傳輸數(shù)據(jù)依次填充不同的數(shù)據(jù)包;在最后 一個數(shù)據(jù)包中,若數(shù)據(jù)不能填滿,則剩余部分用零填充。
6、根據(jù)權(quán)利要求1或3所述的適合于多處理器片上網(wǎng)絡(luò)的傳輸協(xié)議,其特征在于反饋 包中的反饋類型包括準(zhǔn)備傳輸、節(jié)點忙、出錯、傳輸完畢四類;其中"準(zhǔn)備傳輸"、"節(jié)點忙" 和"出錯"反饋包用于回應(yīng)請求包,分別表示接受請求,拒絕請求和請求包中的參數(shù)有誤;"傳 輸完畢"反饋包表示節(jié)點己接收完所有數(shù)據(jù)。
全文摘要
本發(fā)明公開了一種適合于多處理器片上網(wǎng)絡(luò)的傳輸協(xié)議,適用于片上網(wǎng)絡(luò)節(jié)點間的數(shù)據(jù)傳輸,包括下列四類傳輸過程過程一、主請求發(fā)送;過程二、主請求接收;過程三、從請求發(fā)送;過程四、從請求接收。本發(fā)明的適合于多處理器片上網(wǎng)絡(luò)的傳輸協(xié)議,主要用于多處理器片上網(wǎng)絡(luò)的節(jié)點間的數(shù)據(jù)傳輸。
文檔編號H04L29/06GK101227486SQ200810059579
公開日2008年7月23日 申請日期2008年2月3日 優(yōu)先權(quán)日2008年2月3日
發(fā)明者鵬 劉, 冊 史, 吳江南, 夏冰杰, 姚慶棟, 王維東, 項存昶 申請人:浙江大學(xué)