TW201336255A - 用於動態緩衝區管理的方法、用於無線通訊系統的緩衝區管理系統及其傳輸控制系統 - Google Patents
用於動態緩衝區管理的方法、用於無線通訊系統的緩衝區管理系統及其傳輸控制系統 Download PDFInfo
- Publication number
- TW201336255A TW201336255A TW101138254A TW101138254A TW201336255A TW 201336255 A TW201336255 A TW 201336255A TW 101138254 A TW101138254 A TW 101138254A TW 101138254 A TW101138254 A TW 101138254A TW 201336255 A TW201336255 A TW 201336255A
- Authority
- TW
- Taiwan
- Prior art keywords
- current
- buffer allocation
- transmission period
- allocation
- reduction
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/12—Arrangements for detecting or preventing errors in the information received by using return channel
- H04L1/16—Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
- H04L1/18—Automatic repetition systems, e.g. Van Duuren systems
- H04L1/1867—Arrangements specially adapted for the transmitter end
- H04L1/1874—Buffer management
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/12—Arrangements for detecting or preventing errors in the information received by using return channel
- H04L1/16—Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
- H04L1/18—Automatic repetition systems, e.g. Van Duuren systems
- H04L1/1867—Arrangements specially adapted for the transmitter end
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/12—Arrangements for detecting or preventing errors in the information received by using return channel
- H04L1/16—Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
- H04L1/18—Automatic repetition systems, e.g. Van Duuren systems
- H04L1/1867—Arrangements specially adapted for the transmitter end
- H04L1/188—Time-out mechanisms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/90—Buffering arrangements
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本公開涉及高輸送量無線系統中的動態緩衝區管理。其涉及高輸送量無線系統中的動態緩衝區管理。無線通訊系統的動態緩衝區管理有助於增強輸送量。動態緩衝區管理在當前服務期將結束時為當前服務期減少緩衝區分配,並在一個或多個後續服務期開始前為其分配空餘緩衝區空間。結果,主機可提前開始傳輸這些後續服務期的資料,以便在這些後續服務期一開始資料便可供立即發送。
Description
本公開涉及通訊協定。具體地,本公開涉及無線通訊系統的緩衝區(buffer)管理。
無線通訊技術的持續發展和快速進步已經使得跨越許多不同環境(包括家庭和商務環境)的資料速率得以增加以及無線功能得以拓展。促使這些發展和進步的部分原因就是廣泛採用了數位媒體,包括高畫質視訊、圖片和音樂。無線連接技術最近的發展使得新功能和遠遠超越802.11n和802.11 TGac標準所提供的速率的資料速率成為可能。這些最新發展包括位元無線千兆聯盟(WiGig)和802.11 TGad 60 GHz無線規範。
60 GHz規範提供了單個流中高達7 Gbps的資料傳輸速率,比802.11n多輸入多輸出(MIMO)標準支援的最高資料速率還要快10倍以上。60 GHz規範的另一優點是60 GHz生態系統中的設備無需以犧牲性能為代價,便可擁有無線傳送大量資訊的頻寬,從而避免了目前對於用來實體地連接設備的纏結線纜的需求。例如,WiGig相容設備可提供擴充基座(docking station)功能,只需少量或無需壓縮便可將高畫質視訊內容從藍光播放機直接無線傳輸至電視機。
對於這樣的無線通訊系統需要緩衝區管理方面的改進,特別
是改進視訊、音訊和其他類型流的輸送量,更特別是那些未保證特定服務品質(QoS)的流。
根據本發明的一個方面,提供了一種用於動態緩衝區管理的方法,包括:監控當前緩衝區分配所支持的當前傳輸期的特性;確定在所述當前傳輸期內減少所述當前緩衝區分配,以及作為回應:確定對所述當前緩衝區分配的減少量;將所述當前緩衝區分配減少所述減少量;以及在後續傳輸期的起始時間前,至少使用所述當前緩衝區分配中部分所述減少量為所述後續傳輸期增加後續緩衝區分配。
其中,監控特性包括:監控所述當前傳輸期的剩餘時間。
其中,監控特性包括:監控所述當前傳輸期的剩餘時間並確定在所述剩餘時間內能夠傳輸的最大資料量。
其中,確定對所述當前緩衝區分配的減少量包括:確定在所述剩餘時間內能夠傳輸的所述最大資料量是否小於所述當前緩衝區分配。
其中,確定對所述當前緩衝區分配的減少量包括:確定在所述剩餘時間內能夠傳輸的所述最大資料量小於所述當前緩衝區分配,以及作為回應:確定所述減少量,以便所述當前緩衝區分配在減少後不大於在所述剩餘時間內能夠傳輸的所述最大資料量。
其中:當接收到對之前傳輸資料的確認或當應答超時出現時,確定減少所述當前傳輸期內的所述當前緩衝區分配。
其中,該方法還包括:當所述當前傳輸期結束時,清除所述當前緩衝區分配中的選定資料;以及通知主機所述資料已被清除。
根據本發明的另一個方面,提供了一種系統,包括:位於源站中的發射機,可操作以在當前傳輸期內傳輸至目的站;以及位於所述源站中並與所述發射機通訊的傳輸控制邏輯電路,所述傳輸控制邏輯電路可操作,當執行時:監控當前緩衝區分配所支持
的當前傳輸期的特性;確定在所述當前傳輸期內減少所述當前緩衝區分配,以及作為回應:確定對所述當前緩衝區分配的減少量;將所述當前緩衝區分配減少所述減少量;以及在後續傳輸期的起始時間前,至少使用所述當前緩衝區分配中部分所述減少量為所述後續傳輸期增加後續緩衝區分配。
其中,所述傳輸控制邏輯電路可操作以:監控所述當前傳輸期的剩餘時間。
其中,所述特性包括:所述當前傳輸期的剩餘時間;以及在所述剩餘時間內能夠傳輸的最大資料量。
其中,所述傳輸控制邏輯電路可操作以:確定在所述剩餘時間內能夠傳輸的所述最大資料量是否小於所述當前緩衝區分配。
其中,所述傳輸控制邏輯電路可操作以:確定在所述剩餘時間內能夠傳輸的所述最大資料量小於所述當前緩衝區分配,以及作為回應:確定所述減少量,以便所述當前緩衝區分配在減少後不大於在所述剩餘時間內能夠傳輸的所述最大資料量。
其中,所述傳輸控制邏輯電路:當接收到對之前傳輸資料的確認或當應答超時出現時,確定減少所述當前傳輸期內的所述當前緩衝區分配。
其中,所述傳輸控制邏輯電路還可操作以:當所述當前傳輸期結束時,清除所述當前緩衝區分配中的選定資料;以及通知主機所述資料已被清除。
根據本發明的另一個方面,提供了一種傳輸控制系統,包括:系統記憶體,包括:當前傳輸期的當前緩衝區分配;以及後續傳輸期的後續緩衝區分配;與所述系統記憶體通訊的傳輸緩衝區管理器,所述傳輸緩衝區管理器可操作以:監控所述當前傳輸期的特性;響應於監控所述特性,確定減少所述當前傳輸期內的所述當前緩衝區分配,以及作為回應:確定對所述當前緩衝區分配的減少量;將所述當前緩衝區分配減少所述減少量;以及在後續傳
輸期的起始時間之前,至少使用所述當前緩衝區分配中的部分所述減少量為所述後續傳輸期增加後續緩衝區分配。
其中:所述後續緩衝區分配包括在所述起始時間之前的預定最小緩衝區分配;以及所述當前緩衝區分配包括所述當前傳輸期可用的預定最大緩衝區分配。
其中,所述特性包括:所述當前傳輸期的剩餘時間。
其中,所述特性包括:所述當前傳輸期的剩餘時間;以及在所述剩餘時間內能夠傳輸的最大資料量。
其中,所述傳輸緩衝區管理器可操作以:確定在所述剩餘時間內能夠傳輸的所述最大資料量小於所述當前緩衝區分配,以及作為回應:確定所述減少量,以便所述當前緩衝區分配在減少後不大於在所述剩餘時間內能夠傳輸的所述最大資料量。
其中,所述傳輸緩衝區管理器進一步可操作以:回應於接收對之前傳輸資料的確認或回應於應答超時出現,確定減少所述當前傳輸期內的所述當前緩衝區分配。
100‧‧‧通訊的環境
102‧‧‧媒體播放機
104‧‧‧電視
106‧‧‧家庭媒體伺服器
110‧‧‧筆記型電腦
112‧‧‧智慧型手機
114‧‧‧可攜式遊戲系統
116‧‧‧網路調度器
202‧‧‧服務請求
204‧‧‧資訊
206、208、210‧‧‧通訊流
300‧‧‧通訊圖
302‧‧‧第一服務期SP1
304‧‧‧第二服務期SP2
306‧‧‧第三服務期SP3
308‧‧‧集合
310、312、314、322、326‧‧‧資料框
316‧‧‧框間空間
318、320、324、328‧‧‧B/ACK框
400‧‧‧傳輸控制邏輯
402‧‧‧傳輸層連接
404‧‧‧可緩衝系統記憶體
406‧‧‧處理器
408‧‧‧傳輸緩衝區管理器
410‧‧‧傳輸引擎
412‧‧‧接收引擎
414‧‧‧聚合佇列管理器
416‧‧‧韌體
418‧‧‧DMA控制器
420‧‧‧SP1緩衝區分配
422‧‧‧SP2緩衝區分配
424‧‧‧SP3緩衝區分配
426‧‧‧實體層
428‧‧‧暫存器
500‧‧‧緩衝區分配邏輯
600‧‧‧系統模擬時序圖
602、604、606‧‧‧時序圖
700、800、900‧‧‧模擬結果
702、704、706、708‧‧‧曲線
802~812、902~912‧‧‧方案
1000‧‧‧站
1002‧‧‧收發機
1004‧‧‧主機處理器
1006‧‧‧主機記憶體
1008‧‧‧用戶介面
1010‧‧‧邏輯
S502~S518‧‧‧步驟
圖1顯示了無線站與另一無線站進行通訊的環境。
圖2顯示了家庭媒體伺服器請求服務期(在該期間使用不同通訊流以傳輸各種類型內容至多個目的站)的實例。
圖3是顯示了家庭媒體伺服器在不同服務期內與多個不同目的站通訊的實例的通訊圖。
圖4顯示了傳輸控制邏輯的實例。
圖5顯示了緩衝區分配邏輯。
圖6顯示了系統模擬時序圖。
圖7顯示了強調輸送量對比的模擬結果實例。
圖8顯示了當RF輸送量為7.040Gbps時,強調(highlight,突出)輸送量對比的模擬結果實例。
圖9顯示了當RF輸送量為4.620Gbps時,強調輸送量對比的
模擬結果實例。
圖10顯示了包括緩衝區分配邏輯的站。
本說明書涉及根據例如IEEE 802.11標準或WiGig標準(包括位元無線千兆聯盟和IEEE 802.11TGac標準提倡的60 GHz無線規範)的無線通訊。因此,以下論述參考了服務期(SP),比如由WiGig標準定義的服務期。在SP期間,源(來源)站將可能與多個目的站通訊。但所述技術不限於WiGig SP,而適用於任何能夠向站分配通道容量的無線通訊協定。
站的形式可以是多種多樣。例如,站可以是手機、智慧型手機、筆記型電腦、個人數位助理、袖珍電腦、平板電腦、可攜式電子郵件設備,或配備發射機的人或動物。站的其他實例包括電視機,音響設備比如放大器、前置放大器和無線電收音機,家庭媒體設備比如光碟(CD)/數位多功能光碟(DVD)播放機、可攜式MP3播放機、高畫質(比如藍光(TM)或DVD音訊)媒體播放機,或家庭媒體伺服器。站的其他實例包括樂器、麥克風、氣候控制系統、防竊警報器、音訊/視訊監控或安全設備、視訊遊戲、網路附加儲存設備、網路路由器和閘道、寵物追蹤頸圈或其他設備。
站幾乎可在任何環境(包括家庭、商務、公共空間或汽車)中找到。因此,站的其他實例還包括汽車音訊頭端或DVD播放機、衛星音樂收發機、雜訊消除系統、語音識別系統、氣候控制系統、導航系統、報警系統、發動機電腦系統或其他設備。
圖1顯示了站與另一站進行通訊的環境100的實例。在本實例中,環境100為家中的房間。例如,環境100包括將高畫質視訊和音訊內容發送至高畫質液晶顯示器(LCD)電視(TV)104的媒體播放機102(例如藍光(TM)播放機)。類似地,帶有無線網路介面的家庭媒體伺服器106將音訊(例如MP3內容)和視訊
(例如MP4、AVI或MPEG內容)發送至環境100中的多個目的站,包括筆記型電腦110、智慧型手機112以及可攜式遊戲系統114。網路調度器116提供網路管理功能,以支援環境100中使用的任何標準,比如透過在WiGig標準下對站的SP進行調度。通常,在無線網路中,多個站中的一個站作為網路調度器。
如圖2所示,例如透過發送包含流量規範元素(TSPEC)的服務請求202至網路調度器116,網路中的站向網路調度器116發送通訊要求。TSPEC可以是一套整數參數形式或者是在其他實施方案中的其他形式。根據無線通道的時間可用性,網路調度器116可拒絕或接受接收到的TSPEC。一旦接受來自站的TSPEC,網路調度器116將負責安排足夠的無線通道時間,例如SP形式的時間,來滿足所接受的TSPEC中規定的通訊要求。網路調度器116提前將已安排的通道時間分配資訊204(比如SP)傳送至當前與網路關聯的所有站上。通常情況下,SP與源站、一個或多個目的站相關聯,且具有起始時間和持續時間的特點。透過組合未來源站和/或未來目的站發出的多個TSPEC請求,網路調度器116可生成涉及多個目的站的SP分配。這樣做的原因之一是,為將來的源站留下足夠的精細的(fine-grained)安排靈活性,使得能夠基於動態需求來調整與各目的站通訊的順序和持續時間。在SP期間,SP所有者或源站被賦予特定時間視窗(由SP規定)來傳輸資訊,沒有其他站試圖存取此通道。由於SP分配資訊在SP開始之前已傳送至所有站,各站(包括源站即將與之通訊的目的站)已提前瞭解了所安排的SP。因此,若目的站知道何時聽取來自SP的通訊,且若目的站在SP期間利用定向天線,則目的站可在SP的起始時間將其接收天線調整至源站。
如上所指出的,請求站可利用源站識別字(例如單播源位址)來為任何請求的SP分配指定源站,且可指定一個或多個目的站。請求中多個目的站識別字可指定多個目的站。多個目的站識別字
可以是例如廣播識別字或多播識別字(例如為網路中所有站中的某組預定站設立的識別字)。在其他實施方案中,請求站可為目的站指定帶單獨識別字的多個目的站。
為說明之用,圖2顯示了家庭媒體伺服器106請求SP(在該期間在環境100中使用不同通訊流206、208和210以傳輸各種類型內容至多個目的站)的實例。在本實例中,多個目的站包括筆記型電腦110、智慧型手機112以及可攜式遊戲系統114。家庭媒體伺服器106例如可在不同SP內傳輸通訊流206-210,此SP是家庭媒體伺服器106向網路調度器116請求的。如下將詳述的那樣,家庭媒體伺服器106內的傳輸控制邏輯將為SP動態分配緩衝區記憶體,以有助於增加至目的站的輸送量。
圖3是顯示了作為源站的家庭媒體伺服器106與作為目的站的筆記型電腦110、智慧型手機112以及可攜式遊戲系統114之間通訊實例的通訊圖300。與筆記型電腦110的通訊發生在第一服務期SP1 302(以及稍後可能安排的其他SP)內。與智慧型手機112的通訊發生在隨後第二服務期SP2 304(以及稍後可能安排的其他SP)內。與遊戲系統116的通訊發生在隨後第三服務期SP3 306(以及稍後可能安排的其他SP)內。
家庭媒體伺服器106(或任何其他源站)可以以一個或多個資料框或資料框集合(比如A-MPDU或A-MSDU集合)的形式傳輸資料。在這種情況下,家庭媒體伺服器106例如可將資料框組織並聚合為由實體(PHY)層協定資料單元(PPDU)攜帶的媒體存取控制(MAC)層協定資料單元(MPDU)。在SP1內,家庭媒體伺服器106將資料框310、312和314的集合308傳輸至筆記型電腦110。
在SP1 302內,家庭媒體伺服器106將集合308發送至筆記型電腦110。然後在需要的框間空間316內,筆記型電腦110區塊與B/ACK框318共同確認成功接收到的資料框。在本實例中,
B/ACK框318承認資料框310和314的成功接收,但顯示資料框312接收失敗。家庭媒體伺服器106重新傳輸資料框312作為資料框318。此時筆記型電腦110成功接收到了資料框312並發送確認320。
在SP2 304內,家庭媒體伺服器106將資料框322傳送至智慧型手機112並接收來自該智慧型手機的ACK 324。在SP3 306內,家庭媒體伺服器106將資料框326傳送至遊戲系統114並接收ACK 328。SP 302-306中的每一個在源站中的傳輸控制邏輯內被緩衝區分配所支持。該緩衝區分配提供儲存空間,用來儲存源站將要傳輸至目的站的資料。傳輸控制邏輯動態調節緩衝區分配,以有助於改善源站和目的站之間的輸送量。
圖4顯示了傳輸控制邏輯400的一個實例。傳輸控制邏輯(TCL)400可以各種不同方式實現,比如MAC/PHY單晶片系統(SoC)。TCL 400連接待發送至目的站的資料源。在圖4中,資料源顯示為主機,傳輸層連接402將TCL 400和主機連接起來。傳輸層連接402可以是,例如高速資料、位址以及控制匯流排比如快捷外設互聯標準(PCIe)匯流排。TCL 400可緩衝系統記憶體404內的主機資料。這可部分上有助於緩和透過傳輸層連接402的資料傳輸的時間變化。
在本實例中,TCL 400包括單晶片處理器406,其監視傳輸(Tx)緩衝區管理器408、Tx引擎410、接收(Rx)引擎412以及聚合佇列管理器414的運作。例如,聚合佇列管理器414可支援框硬體加速聚合為A-MPDU。Tx引擎410可包括,例如可從DMA控制器418接收用於傳輸的資料並將資料打包成框的邏輯,以及將框編碼、調變並傳輸到實體(PHY)層426(例如當站為無線站時的空中介面)的邏輯。類似地,Rx引擎412可包括一邏輯,其例如可從PHY層426接收信號,解調、解碼以及打開接收到的框中的資料,並將接收到的資料傳輸至DMA控制器418,以便儲
存在系統記憶體404內。
單晶片處理器406可執行控制韌體416或儲存在韌體記憶體或其他記憶體內的其他程式指令。直接記憶體存取(DMA)控制器418在系統記憶體404、Tx引擎410以及Rx引擎412之間提供高速有效的資料傳輸機制。系統記憶體404無需放置在SoC上,相反可以是晶片外並透過優選地提供專用儲存介面的匯流排介面連接至DMA控制器418或TCL 400中的其他邏輯,使得TCL 400能夠不暴露於傳輸層連接402的變化,獲得需傳輸至目的站的資料。在一種實施方案中,系統記憶體的尺寸為1.5百萬位元組,但該尺寸可根據實施方案在很大範圍內變化。
Tx緩衝區管理器408可在系統記憶體內動態地分配和解除配置儲存緩衝區以支援特定SP。在一些實施方案中,Tx緩衝區管理器408創建並管理指針以追蹤系統記憶體404內的緩衝區分配,但管理可用其他方式實現。Tx緩衝區管理器408可配置為給SP分配高達預定最大值緩衝區分配。該預定最大值可根據SP的特性、SP預期支持的通訊量、SP的目的站或根據其他因素而變化。例如,預定最大緩衝區分配可為128 KB或256 KB。圖4顯示了圖3所示對於SP的三種緩衝區分配:SP1緩衝區分配420、SP2緩衝區分配422以及SP3緩衝區分配424。
Tx緩衝區管理器408不僅可在系統記憶體404內創建緩衝區分配,還可在SP期間動態修改緩衝區分配以有助於改善輸送量。如下將更為詳述的那樣,單晶片處理器406例如可透過讀取一組狀態暫存器428中的定時暫存器,運行並監控計時器或計數器或其他方式來監控SP的剩餘持續時間。當SP要結束時,Tx緩衝區管理器408可減少SP的緩衝區分配,並將空餘記憶體分配給下一還未開始的SP。Tx緩衝區管理器408可為當前SP保留預定最小緩衝區分配。如此,對於後續SP,主機可在後續SP之前將資料透過傳輸層連接402傳送至TCL 400,且可能還有額外緩衝區記憶
體可儲存後續SP的資料,而其他情況下不一定有額外空間。結果,當後續SP開始時,額外資料便在後續SP中立即可供傳輸,增加輸送量。
此外,Tx緩衝區管理器408可為當前處於節能模式的目的站創建並動態管理緩衝區分配。換言之,由於源站瞭解SP安排,所以源站知道至任何特定目的站的資料傳輸將在稍後的什麼時候開始。即使當目的站當前處於節能模式,目的站也能按時醒來以接收資料。因此,Tx緩衝區管理器408便可為當前處於節能模式的目的站分配並動態調節緩衝區分配來為待目的站醒來後將發送至該目的站的資料進行提前緩衝(或提供額外緩衝區)。
圖5顯示了Tx緩衝區管理器408可執行以動態調節緩衝區分配的緩衝區分配邏輯(BAL)500的實例。BAL 500可實現為硬體、軟體(例如儲存在與Tx緩衝區管理器408通訊的韌體記憶體中的韌體)、或硬體軟體的結合。BAL 500流程始於Tx緩衝區管理器事件檢查(步驟S502)。事件檢查(步驟S502)可出現在任何所需間隔或回應任何所需條件。例如,事件檢查(步驟S502)可出現在每時鐘週期,可出現在當從目的站接收到B/ACK時,當誤碼率上升到超過閾值量時,可出現在每1ms、10ms或其他時間表,當被另一處理器或邏輯區塊要求(例如當被單晶片處理器406要求)時或任何其他時間。
BAL 500確定當前SP是否結束。若未結束,BAL確定當前SP中傳輸資料的剩餘時間(步驟S504)。作為一個實例,BAL可將微秒(μS)剩餘時間確定為:RemDataTimeμS=TSF.RemSpDurμS-SIFS_
μS-ACK_BA_Time_μS;其中,TSF.RemSpDurμS是整體SP的以微秒為單位的剩餘持續時間,SIFS_μS是以微秒為單位的短框間間隔時間,
ACK_BA_Time是以微秒為單位的接收和處理來自目的站的B/ACK的通常所需時間。
BAL 500也可確定在當前SP的傳輸剩餘時間內還可傳輸的最大資料量(步驟S506)。BAL 500可將最大量確定為:CurSpBufferKB=ceil(RemDataTime
μS*CurRfThroughput/(1024*8*factor));其中,CurSpBufferKB為在剩餘的SP傳輸持續時間內還可傳輸的最大資料量,CurRfThroughput是以位元/微秒為單位的RF介面上的當前資料傳輸速率,1/(1024*8)轉化為KB/微秒,‘factor(因數)’為可變調諧參數,可用於增大或減小CurSpBufferKB結果以適應不確定性或提供計算結果左右的可變保護(variable guard)。
BAL 500確定CurSpBufferKB何時小於分配給在當前SP內活躍的通訊流的當前最大緩衝區大小。當前最大緩衝區大小在圖5中顯示為CurTS.MaxTbmKB,且如上所指出的那樣,可以為128KB或256KB或其他大小。換言之,BAL 500確定當前最大緩衝區大小是否大於在剩餘SP持續時間和資料速率內還可能被傳輸至目的站的資料量。
在當前最大緩衝區大小超過能夠被傳輸的資料量時,BAL 500便為當前SP動態更新緩衝區分配(步驟S508)。在一個實施方案中,BAL 500透過減少當前給SP的緩衝區分配來釋放特定記憶體量。例如:FreedTbmKB=CurTS.MaxTbmKB-CurSpBufferKB;換言之,若當前最大緩衝區分配超過可傳輸的最大資料量,BAL 500便計算空餘的緩衝區分配量。BAL 500然後減小SP中通訊流的當前緩衝區分配,例如,不再大於在剩餘SP時間內可能被傳輸的最大資料量:TBM[CurTS].MaxTbmKB=CurSpBufferKB;BAL 500還為後續SP(例如,下一SP)更新緩衝區分配(步
驟S510)。例如:TBM[NextTS].MaxTbmKB=Min(FreedTbmKB,NextTS.MaxTbmKB);換言之,BAL 500將對下一SP(更為具體地,對下一SP中的下一通訊流TS)的緩衝區分配設置為最少:1)當前SP空餘的緩衝區記憶體量以及2)可分配給下一SP的最大緩衝區大小(更為具體地,下一SP中的下一通訊流的最大緩衝區大小)。通常,可對任何後續SP或TS進行緩衝區分配更新,不僅僅只對下一SP或TS。BAL 500也可為後續SP增加當前SP空餘的緩衝區記憶體量。因此,後續SP具有被分配給它的當前SP空餘的緩衝區記憶體量的緩衝區記憶體或額外的緩衝區記憶體。結果,主機便可在後續SP之前將後續SP的資料傳輸至TCL 400或將後續SP的額外資料傳輸至TCL 400。因此,當後續SP一開始,額外資料便可立即開始在TCL 400中傳輸,以提高後續SP的輸送量。
再參考圖5,BAL 500確定當前SP是否結束。若SP結束,其緩衝區分配就可減為零或由變數CurTS.MinTbmKB表示的其他最小水準。相應地,BAL 500確定當前SP的緩衝區中保留的資料量是否超過已結束SP的最小緩衝區分配(步驟S512)。如果是,則BAL 500可向主機發送傳輸狀態消息(步驟S514)。傳輸狀態消息可通知主機特定資料例如特定框在當前SP中無法再傳輸。主機然後將這些框重新傳送至TCL 400以便在後續SP中傳輸。
BAL 500還為已結束的SP更新緩衝區分配(步驟S516)。例如,BAL 500可將已結束SP的緩衝區分配設置為最小水準:TBM[CurTS].MaxTbmKB=CurTS.MinTbmKB;為準備後續SP的開始,BAL 500也可將即將開始的下一SP中活躍的TS的緩衝區分配設置為預定最大緩衝區大小例如128KB或256KB,這可能不同或等同於剛剛結束的SP中TS的最大緩衝區大小(步驟S518):
TBM[NextTS].MaxTbmKB=NextTS.MaxTbmKB;總結:CurTS.MaxTbmKB:表示可分配給當前SP中活躍的通訊流的最大緩衝區大小。
NextTS.MaxTbmKB:表示可分配給下一SP中活躍的通訊流的最大緩衝區大小。
TBM[CurTS].MaxTbmKB=表示當前SP中當前活躍的TS可使用的最大緩衝區。
TBM[NextTS].MaxTbmKB=表示下一SP中將要活躍的TS可使用的最大緩衝區。
圖6顯示了系統模擬時序圖600。時序圖600假定SP的持續時間大約為3800微秒(μS),但SP通常可為任何持續時間。時序圖602顯示了隨著時間的推移系統記憶體404中框的數量。時序圖604顯示了當前SP和後續SP的當前緩衝區分配。時序圖606顯示了隨著時間的推移傳輸控制層的通訊量。
圖604顯示了初始和當前SP、SP1的SP2的SP1緩衝區分配608以及後續SP、SP2的SP2緩衝區分配610。緩衝區分配608顯示SP1最初已經被分配了最大緩衝量(例如128KB),而緩衝區分配610顯示後續SP2卻只被分配了系統記憶體404的一些預定最小緩衝量。SP1傳輸層活動612顯示主機使用匯流排來發送資料至TCL 400以便為SP1做準備。如下所述,對於SP2,稍晚時候才會出現少量或不出現傳輸層活動614。從主機至TCL 400的初始資料流程增加了系統記憶體404中的SP1框616的數量。如下所述,系統記憶體中SP2框的數量618保持為最小直到後來變為零。
圖6中,假定SP1開始於大約2200μS。當框被DMA控制器418從系統記憶體404上重新取回後,這些框被準備並透過Tx引擎410發送至PHY層426。該活動暫時減少系統記憶體404中SP1
框的量,然後主機再補充上資料,導致可變數量的框位於系統記憶體404中,如SP1框的數量616所示的那樣。
BAL 500監控SP1的剩餘持續時間。在參考標號620指示的時間(在本實例中大約為5500 μS),BAL 500開始減少SP1的緩衝區分配,如遞減的SP1緩衝區分配608所示的那樣。可參照按照上述參考圖5所詳述的那樣進行減少。此外,如SP2緩衝區分配610所示,即便SP2並未開始,BAL 500便開始增加SP2的緩衝區分配。
直到大約6000 μS才會開始SP2。然而,應注意到在5500 μS和6000μS之間,主機透過傳輸控制層402向TCL 400發送SP2資料。該通訊活動由SP2傳輸層活動614、系統記憶體404內SP2框數量的增加所顯示,由SP2框618的數量所顯示。因此,當SP2開始時,系統記憶體404已經提前為SP2儲存了比通常情況下更多的資料。如此,Tx引擎410可更快地為SP2發送更多的資料,從而提高輸送量。
與靜態256KB緩衝區分配相比,僅利用128KB的最大緩衝區分配和上述動態緩衝區調節便可實現相似水準的輸送量。圖7顯示了強調輸送量對比的模擬結果700的實例。曲線702顯示了動態128KB輸送量而曲線704顯示了靜態256KB輸送量,曲線706顯示了動態256KB輸送量而曲線708顯示了靜態128KB輸送量。圖8顯示了模擬結果800,其顯顯示動態128KB方案802的7.040Gbps的RF輸送量和靜態256KB方案804的相似結果,同樣顯示了方案806、808、810和812的結果,具體請參見圖8。圖9顯示了模擬結果900,其顯顯示動態128KB方案902的4.620 Gbps的RF輸送量和靜態256KB方案904的相似結果,同樣顯示了方案906、908、910和912的結果,具體請參見圖9。
圖10顯示了站1000(在該情況下為家庭媒體伺服器106)的實施方案實例。站1000包括收發機1002、一個或多個主機處理器
1004、主機記憶體1006以及用戶介面1008。收發機1002可以是無線收發機,其提供調變/解調、放大器、模數和數模轉換器和/或透過一根或多根天線或透過實體(例如電纜)介質傳輸和接收的其他邏輯電路。傳輸和接收到的信號可遵守現在或將來能支援WiGig服務期或類似類型的專用通道分配比如GHz WiGig/802.11TGad規範的各種格式、協定、調變、頻道、位元率以及編碼。
主機處理器1004執行邏輯(logic)1010。邏輯1010可包括作業系統、應用程式或其他邏輯。主機處理器1004與TCL 400保持通訊。如上所述,TCL 400可透過實體層426傳輸和接收資料。為此,TCL 400從主機處理器1004和主機記憶體1006上接收待傳輸的資料,並向主機處理器1004和主機記憶體1006提供接收到的資料。TCL 400執行上述動態緩衝區分配邏輯。TCL400可以是專用ASIC、SoC形式或站1000內與主機處理器1004連接來透過實體層426傳輸和接收資料的其他電路。結果,可提高站1000與目的站之間通訊的輸送量。如上指出的那樣,站1000可以是多種形式,並不限於家庭媒體伺服器106。
上述動態緩衝區管理有助於增加無論透過有線或無線實體介質通訊的視訊、音訊以及其他類型資料流程的輸送量。動態緩衝區管理也可採用較小最大緩衝區分配來提供接近或超過採用較大固定緩衝區分配提供的輸送量水準。動態緩衝區管理特別有助於增加那些未保證特定服務品質(QoS)的數量流的輸送量。
上述方法、站以及邏輯可按硬體、軟體或軟硬體的不同組合實現為許多不同方式。例如,站的全部或部分可包括一個或多個控制器、微處理器或專用積體電路(ASIC)中的電路,或可實現為離散邏輯電路或部件或其他類型電路的組合。邏輯的全部或部分可實現為處理器、控制器或其他處理設備能執行的指令,且這些指令可儲存在機器可讀或電腦可讀介質比如快閃記憶體、隨機
存取記憶體(RAM)或唯讀記憶體(ROM)、快閃記憶體、可抹拭可程式唯讀記憶體(EPROM)或其他機器可讀介質比如唯讀光碟(CDROM)或磁片或光碟之中。
儘管本發明描述了各種實施例,但對本領域的普通技術人員來說顯而易見的是在本發明範圍內本發明還可有更多實施例和實施方案。相應地,本發明將不受除所附申請專利範圍及其等同物之外的限制。
500‧‧‧緩衝區分配邏輯
S502~S518‧‧‧步驟
Claims (10)
- 一種用於動態緩衝區管理的方法,包括:監控當前緩衝區分配所支持的當前傳輸期的特性;確定在所述當前傳輸期內減少所述當前緩衝區分配,以及作為回應:確定對所述當前緩衝區分配的減少量;將所述當前緩衝區分配減少所述減少量;以及在後續傳輸期的起始時間前,至少使用所述當前緩衝區分配中部分所述減少量為所述後續傳輸期增加後續緩衝區分配。
- 根據申請專利範圍第1項所述的方法,其中,監控特性包括:監控所述當前傳輸期的剩餘時間並確定在所述剩餘時間內能夠傳輸的最大資料量。
- 根據申請專利範圍第2項所述的方法,其中,確定對所述當前緩衝區分配的減少量包括:確定在所述剩餘時間內能夠傳輸的所述最大資料量是否小於所述當前緩衝區分配。
- 根據申請專利範圍第3項所述的方法,其中,確定對所述當前緩衝區分配的減少量包括:確定在所述剩餘時間內能夠傳輸的所述最大資料量小於所述當前緩衝區分配,以及作為回應:確定所述減少量,以便所述當前緩衝區分配在減少後不大於在所述剩餘時間內能夠傳輸的所述最大資料量。
- 一種系統,包括:位於源站中的發射機,可操作以在當前傳輸期內傳輸至目的站;以及位於所述源站中並與所述發射機通訊的傳輸控制邏輯電路,所述傳輸控制邏輯電路可操作,當執行時:監控當前緩衝區分配所支持的當前傳輸期的特性; 確定在所述當前傳輸期內減少所述當前緩衝區分配,以及作為回應:確定對所述當前緩衝區分配的減少量;將所述當前緩衝區分配減少所述減少量;以及在後續傳輸期的起始時間前,至少使用所述當前緩衝區分配中部分所述減少量為所述後續傳輸期增加後續緩衝區分配。
- 根據申請專利範圍第5項所述的系統,其中,所述特性包括:所述當前傳輸期的剩餘時間;以及在所述剩餘時間內能夠傳輸的最大資料量。
- 根據申請專利範圍第6項所述的系統,其中,所述傳輸控制邏輯電路可操作以:確定在所述剩餘時間內能夠傳輸的所述最大資料量是否小於所述當前緩衝區分配。
- 根據申請專利範圍第6項所述的系統,其中,所述傳輸控制邏輯電路可操作以:確定在所述剩餘時間內能夠傳輸的所述最大資料量小於所述當前緩衝區分配,以及作為回應:確定所述減少量,以便所述當前緩衝區分配在減少後不大於在所述剩餘時間內能夠傳輸的所述最大資料量。
- 一種傳輸控制系統,包括:系統記憶體,包括:當前傳輸期的當前緩衝區分配;以及後續傳輸期的後續緩衝區分配;與所述系統記憶體通訊的傳輸緩衝區管理器,所述傳輸緩衝區管理器可操作以:監控所述當前傳輸期的特性;響應於監控所述特性,確定減少所述當前傳輸期內的所述當前緩衝區分配,以及作為回應:確定對所述當前緩衝區分配的減少量; 將所述當前緩衝區分配減少所述減少量;以及在後續傳輸期的起始時間之前,至少使用所述當前緩衝區分配中的部分所述減少量為所述後續傳輸期增加後續緩衝區分配。
- 根據申請專利範圍第9項所述的系統,其中:所述後續緩衝區分配包括在所述起始時間之前的預定最小緩衝區分配;以及所述當前緩衝區分配包括所述當前傳輸期可用的預定最大緩衝區分配。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/398,440 US20130215745A1 (en) | 2012-02-16 | 2012-02-16 | Dynamic buffer management in high-throughput wireless systems |
Publications (1)
Publication Number | Publication Date |
---|---|
TW201336255A true TW201336255A (zh) | 2013-09-01 |
Family
ID=46940191
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW101138254A TW201336255A (zh) | 2012-02-16 | 2012-10-17 | 用於動態緩衝區管理的方法、用於無線通訊系統的緩衝區管理系統及其傳輸控制系統 |
Country Status (5)
Country | Link |
---|---|
US (1) | US20130215745A1 (zh) |
EP (1) | EP2629446A1 (zh) |
KR (1) | KR20130094681A (zh) |
CN (1) | CN103259747A (zh) |
TW (1) | TW201336255A (zh) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9008122B2 (en) * | 2012-07-23 | 2015-04-14 | Cisco Technology, Inc. | Method and apparatus for triggering bandwidth upspeeding within an existing reservation |
US9098105B2 (en) * | 2012-08-24 | 2015-08-04 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Dynamic Y-buffer size adjustment for retained sector reprocessing |
US10075381B2 (en) | 2014-01-28 | 2018-09-11 | Mediatek Inc. | Buffer status report and logical channel prioritization for dual connectivity |
US9503928B2 (en) | 2014-04-07 | 2016-11-22 | Qualcomm Incorporated | Systems, methods and apparatus for adaptive persistent acknowledge priority control for bi-directional TCP throughput optimization |
CN104113778B (zh) * | 2014-08-01 | 2018-04-03 | 广州猎豹网络科技有限公司 | 一种视频流解码方法及装置 |
WO2016122644A1 (en) * | 2015-01-30 | 2016-08-04 | Hewlett Packard Enterprise Development Lp | Transmission over scsi protocol |
CN104660992B (zh) * | 2015-02-04 | 2018-01-19 | 江苏中科羿链通信技术有限公司 | 视频掉线重连***和方法 |
WO2019237261A1 (zh) * | 2018-06-12 | 2019-12-19 | 华为技术有限公司 | 一种内存管理方法、装置及*** |
CN111555800B (zh) * | 2020-05-15 | 2021-07-20 | 北京光润通科技发展有限公司 | 一种千兆双光口服务器适配器 |
US20220114440A1 (en) * | 2020-10-14 | 2022-04-14 | Google Llc | Queue Allocation in Machine Learning Accelerators |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7301906B2 (en) * | 2001-12-17 | 2007-11-27 | Lsi Corporation | Methods and structures for improved buffer management and dynamic adaption of flow control status in high-speed communication networks |
US7039013B2 (en) * | 2001-12-31 | 2006-05-02 | Nokia Corporation | Packet flow control method and device |
EP1728400B1 (en) * | 2004-01-12 | 2018-07-04 | Avaya Technology Corp. | Efficient power management in wireless local area networks |
US7362705B2 (en) * | 2004-05-13 | 2008-04-22 | International Business Machines Corporation | Dynamic load-based credit distribution |
JP2006189937A (ja) * | 2004-12-28 | 2006-07-20 | Toshiba Corp | 受信装置、送受信装置、受信方法及び送受信方法 |
US7796545B2 (en) * | 2006-01-10 | 2010-09-14 | Qualcomm Incorporated | Method and apparatus for scheduling in a wireless communication network |
US7616566B2 (en) * | 2006-04-28 | 2009-11-10 | Samsung Electroncis Co., Ltd | Data flow control apparatus and method of mobile terminal for reverse communication from high speed communication device to wireless network |
WO2008010007A1 (en) * | 2006-07-19 | 2008-01-24 | Stmicroelectronics S.R.L. | Method, apparatuses and program product for enabling multi-channel direct link connection in a communication network such as wlan |
-
2012
- 2012-02-16 US US13/398,440 patent/US20130215745A1/en not_active Abandoned
- 2012-09-06 EP EP12006291.4A patent/EP2629446A1/en not_active Withdrawn
- 2012-09-21 KR KR1020120105015A patent/KR20130094681A/ko not_active Application Discontinuation
- 2012-10-17 TW TW101138254A patent/TW201336255A/zh unknown
- 2012-12-27 CN CN2012105810627A patent/CN103259747A/zh active Pending
Also Published As
Publication number | Publication date |
---|---|
EP2629446A1 (en) | 2013-08-21 |
KR20130094681A (ko) | 2013-08-26 |
US20130215745A1 (en) | 2013-08-22 |
CN103259747A (zh) | 2013-08-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TW201336255A (zh) | 用於動態緩衝區管理的方法、用於無線通訊系統的緩衝區管理系統及其傳輸控制系統 | |
US9451386B2 (en) | Resource scheduling for machine-to-machine devices | |
US9345040B2 (en) | Securing transmit openings | |
US9042904B2 (en) | Localized dynamic channel time allocation | |
US9036478B2 (en) | Securing transmit openings by the requester | |
CN111527733B (zh) | 控制双模蓝牙低能耗多媒体装置 | |
US20170142732A1 (en) | Allocation of shared resources for virtualized networking | |
CN109392012B (zh) | 一种数据处理方法及相关设备 | |
US10523574B2 (en) | Apparatus and method for controlling data transmission speed in wireless communication system | |
US20130034061A1 (en) | Reverse direction protocol implementation | |
WO2022151912A1 (zh) | 传输机会的使用权恢复方法及相关装置 | |
TWI766080B (zh) | 一種回饋應答資訊的長度確定方法及相關產品 | |
KR20180088880A (ko) | 네트워크 이용을 개선하기 위한 네트워크 지원 프로토콜 사용 | |
JP2010081367A (ja) | 無線通信システム、無線通信端末、無線通信基地局及び無線通信方法 | |
WO2020227902A1 (zh) | 一种内存管理的方法和装置、终端设备 | |
CN108882345B (zh) | 蓝牙设备及其睡眠控制方法、装置、计算机可读存储介质 | |
WO2023010249A1 (zh) | 通信方法及装置、电子设备及存储介质 | |
WO2023065328A1 (zh) | 一种多连接场景下的资源分配方法及装置 | |
WO2018010673A1 (zh) | 设备间通信的信息配置方法及其基站和用户设备 | |
CN113453367B (zh) | 调度请求传输方法、终端设备和网络设备 | |
US8958302B2 (en) | Apparatus, system and method of controlling data flow over a wireless communication link with credit allocation | |
WO2024082223A1 (zh) | 通信方法、电子设备及存储介质 | |
WO2023169230A1 (zh) | 业务速率调整方法及通信装置 | |
WO2023035909A1 (zh) | 数据传输方法及装置 | |
WO2019001568A1 (zh) | Wlan链路建立方法及设备 |