1、什么是Pause幀
Pause幀是一種報文類型。在IEEE802.3協(xié)議中規(guī)定中,pause幀是一種控制幀,用于控制數(shù)據(jù)流停止發(fā)送,在MAC 發(fā)送側(cè)產(chǎn)生,在MAC接收側(cè)解析并執(zhí)行。當(dāng)此端設(shè)備輸入數(shù)據(jù)量過大,無法及時處理時會在此端發(fā)送側(cè)MAC產(chǎn)生pause幀,發(fā)給對端,要求對端在一定時間內(nèi)停止發(fā)送數(shù)據(jù)。
Pause報文由IEEE802.3協(xié)議規(guī)定,與標(biāo)準以太幀格式相似:
DA表示目的地址,地址數(shù)據(jù)固定為0x180c2000001
SA表示源地址 地址由發(fā)送方確定
TYPE為報文類型字段,固定為0X8808
OPCODE為操作碼,固定為0X0001
PAUSE_TIMING字段為上游MAC停止發(fā)送數(shù)據(jù)的時間,每單位為512bit傳輸時間,數(shù)值為16’d1024表示暫停時間為MAC傳輸1024*512bit數(shù)據(jù)所需要的時間
PAD:為填充字段,所有值為0
FCS: 為校驗字段,通常為CRC校驗值
2、Pause幀的流程過程
如圖所示,左側(cè)為本端芯片,右側(cè)為對端芯片。MAC0和MAC1都包含發(fā)送側(cè)tx和接收側(cè)rx。左側(cè)芯片內(nèi)部mac上游模塊A與mac0發(fā)送側(cè)有流控信號fc_rdy。信號高表示模塊A無法及時處理輸入數(shù)據(jù),需要進行流控。為了方便突出重點,圖中省略了PCS以及serdes等模塊。
流程處理如下:
1~2步:對端mac1發(fā)送數(shù)據(jù)給mac0接收側(cè),進行發(fā)送到模塊A
3步:模塊A無法及時處理輸入的數(shù)據(jù),需要減少數(shù)據(jù)輸入,從而將fc_rdy拉高。
4步:mac0發(fā)送側(cè)tx發(fā)現(xiàn)流控信號fc_rdy為高,產(chǎn)生pause幀,發(fā)送給mac1接收側(cè)。只要fc_rdy為高,mac0發(fā)送側(cè)tx每隔一段時間發(fā)送一個pause幀,間隔時間由配置寄存器控制。間隔時長計算由計數(shù)器counting計算。Pause幀內(nèi)停止發(fā)送數(shù)據(jù)的時間由另外一個配置寄存器控制。只要fc_rdy為高期間,mac0發(fā)送側(cè)不發(fā)送普通數(shù)據(jù)。
5步:mac1接收側(cè)rx接收到pause報文后,提取pause幀內(nèi)包含的暫停時間,產(chǎn)生流控信號fc通知MAC發(fā)送側(cè)上游模塊module B停止發(fā)送數(shù)據(jù)
678:mac1 TX側(cè)在暫停時間內(nèi),停止發(fā)送數(shù)據(jù)。MAC0 TX側(cè)可能會發(fā)起多個Pause幀。一旦模塊A處理完之前的數(shù)據(jù)后將fc_rdy拉低,則進入第9步
9:步:第9步分2種情況。
情況1:fc_rdy拉低,并且counting在計數(shù)沒有到一個間隔周期,此時發(fā)送pause幀,但是幀內(nèi)暫停時間為0. Mac1接收到pause幀后,控制tx控制立即開始發(fā)送數(shù)據(jù)。
情況2:fc_rdy拉低的同時,counting正好計數(shù)到一個間隔周期,此時不發(fā)送pause幀。等到上一個pause幀的暫停時間到達后,mac1發(fā)送側(cè)tx繼續(xù)發(fā)送數(shù)據(jù)。
3、pause幀處理協(xié)議強制要求
1)pause的產(chǎn)生發(fā)送過程不能中斷一個完整的數(shù)據(jù)報文。即在第4步中,fc_rdy拉高后,首先mac0 tx側(cè)需要判斷當(dāng)前是否正常數(shù)據(jù)報文在傳輸。如果有,則需要在當(dāng)前數(shù)據(jù)報文傳輸完成后才能發(fā)送pause幀。也就是說在發(fā)送過程中,只能在完整數(shù)據(jù)報文的間隙插入pause幀。
2)新的pause報文暫停時間會覆蓋上一個暫停時間。對mac1來說,當(dāng)mac1接收到新的pause幀后,暫停時間以最新時間為準。
-
處理器
+關(guān)注
關(guān)注
68文章
19395瀏覽量
230672 -
寄存器
+關(guān)注
關(guān)注
31文章
5362瀏覽量
120896 -
CRC校驗
+關(guān)注
關(guān)注
0文章
84瀏覽量
15252 -
PCS
+關(guān)注
關(guān)注
1文章
142瀏覽量
14721 -
MAC控制器
+關(guān)注
關(guān)注
0文章
6瀏覽量
2636
發(fā)布評論請先 登錄
相關(guān)推薦
評論