專利名稱:數(shù)據(jù)傳輸控制方法、裝置及用戶設(shè)備的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及移動通信技術(shù)領(lǐng)域,尤其涉及一種數(shù)據(jù)傳輸控制技術(shù)。
背景技術(shù):
在移動通信系統(tǒng)中,用戶設(shè)備(User Equipment, UE)由多個不同功能
的模塊組成,常用UE為移動電話。UE的基本結(jié)構(gòu)如圖1所示,主要包括射 頻模塊、物理層模塊、高層協(xié)議模塊和面向用戶的人機(jī)界面處理模塊等幾個主 要組成部分,只有將各個模塊集成起來才能實現(xiàn)UE的基本功能。在UE中, 高層協(xié)議模塊和物理層模塊是相對獨立的兩個模塊,通常是根據(jù)協(xié)議分別進(jìn)行 開發(fā),并且位于不同的芯片上,有可能一個UE中的高層協(xié)議模塊和物理層模 塊是不同制造商分別開發(fā)的。不同芯片之間通過集成,通信的實時性相比同一 個芯片上通信的實時性會降低很多。
現(xiàn)有技術(shù)中位于不同芯片的高層協(xié)議模塊和物理層模塊之間通信過程如 圖2所示,高層協(xié)議模塊和物理層模塊之間的通信接口根據(jù)定義的接口標(biāo)準(zhǔn)傳 輸控制信息和數(shù)據(jù)塊。高層協(xié)議模塊負(fù)責(zé)生成要發(fā)送的數(shù)據(jù)塊內(nèi)容,可以將一 個或多個數(shù)據(jù)包合成一個數(shù)據(jù)塊,也可以將一個數(shù)據(jù)包分成多個數(shù)據(jù)塊,由數(shù) 據(jù)包的大小而定。物理層模塊負(fù)責(zé)將高層發(fā)送過來的數(shù)據(jù)塊經(jīng)過信道編碼和調(diào) 制之后通過高層配置的物理信道發(fā)送到網(wǎng)絡(luò)中。高層和物理層之間的傳輸和控 制都是針對數(shù)據(jù)塊。高層無法得知發(fā)送數(shù)據(jù)的時刻,物理層通過檢測物理信道 得知能夠發(fā)送數(shù)據(jù)的時刻,在可以發(fā)送上行數(shù)據(jù)時請求高層,高層將^"發(fā)送的 數(shù)據(jù)塊發(fā)送給物理層,由物理層將數(shù)據(jù)塊發(fā)送到網(wǎng)絡(luò)中,物理層發(fā)送數(shù)據(jù)塊之 后會通知高層已經(jīng)發(fā)送的數(shù)據(jù)塊數(shù)量。
由于位于不同芯片的高層協(xié)議模塊和物理層模塊之間通過集成,通信的實時性比較低,可能會產(chǎn)生以下問題,導(dǎo)致系統(tǒng)不能夠有效運行
如果物理層監(jiān)測到可以向網(wǎng)絡(luò)發(fā)送數(shù)據(jù)的上行資源時,才請求高層將數(shù)據(jù) 塊發(fā)送下來的話,那么經(jīng)過物理層和高層之間的交互通信,和物理層完成對數(shù) 據(jù)塊的信道編碼、調(diào)制等操作之后,可能上行資源的時間已經(jīng)過去,使得物理 層不能夠在正確的時間將數(shù)據(jù)發(fā)送給網(wǎng)絡(luò),不能有效利用上行資源,造成了無 線資源的浪費和傳輸效率的低下。
因此物理層需要提前保存一定數(shù)量高層發(fā)送的數(shù)據(jù)塊,如果高層向物理層 提前發(fā)送了要向網(wǎng)絡(luò)側(cè)發(fā)送的數(shù)據(jù)塊,但是在物理層收到這些數(shù)據(jù)塊和將該數(shù) 據(jù)塊發(fā)送給網(wǎng)絡(luò)之間的這段時間內(nèi),如果高層收到了網(wǎng)絡(luò)的信息,使高層的狀 態(tài)發(fā)生變化,從而導(dǎo)致已經(jīng)給物理層的數(shù)據(jù)塊需要改變大小或者內(nèi)容之后才能 夠發(fā)送給網(wǎng)絡(luò),那么已經(jīng)發(fā)送給物理層的數(shù)據(jù)塊就不能夠再使用了。雖然物理 層會主動丟棄一些凄t據(jù),高層也可以通過重傳的方式將對端沒有收到的數(shù)據(jù)重 新發(fā)送,但是這勢必仍然造成無線資源的浪費和傳輸效率的低下。
發(fā)明內(nèi)容
本發(fā)明提供一種數(shù)據(jù)傳輸控制方法、裝置及用戶設(shè)備,用以解決數(shù)據(jù)傳輸 時由于延時產(chǎn)生的無線資源浪費和傳輸效率低下問題,有效利用了無線資源, 實現(xiàn)了數(shù)據(jù)的高效、正確傳輸。
本發(fā)明實施例提供了 一種數(shù)據(jù)傳輸控制方法,包括
接收并緩存高層發(fā)送的數(shù)據(jù)塊;
向物理層發(fā)送緩存的數(shù)據(jù)塊,當(dāng)接收到物理層已發(fā)送所述數(shù)據(jù)塊的消息
時,清除所述數(shù)據(jù)塊并通知高層;或者,
當(dāng)接收到高層中止發(fā)送所述數(shù)據(jù)塊的消息時,通知物理層停止所述數(shù)據(jù)塊 的發(fā)送。
本發(fā)明實施例4是供了一種數(shù)據(jù)傳輸控制裝置,包括
控制單元用于接收并緩存高層發(fā)送的數(shù)據(jù)塊,向物理層發(fā)送緩存的數(shù)據(jù)塊,當(dāng)接收到物理層已發(fā)送所述數(shù)據(jù)塊的消息時,清除所述數(shù)據(jù)塊并通知高層, 或者,當(dāng)接收到高層中止發(fā)送所述數(shù)據(jù)塊的消息時,通知物理層停止所述數(shù)據(jù)
塊的發(fā)送;
數(shù)據(jù)緩存單元用于存儲控制單元緩存的數(shù)據(jù)塊。
本發(fā)明實施例提供了 一種包括高層協(xié)議模塊和物理層模塊的用戶設(shè)備,還 包括
控制單元用于接收并緩存所述高層協(xié)議模塊發(fā)送的數(shù)據(jù)塊,向所述物理 層模塊發(fā)送緩存的數(shù)據(jù)塊,當(dāng)接收到物理層模塊已發(fā)送所述數(shù)據(jù)塊的消息時, 清除所述數(shù)據(jù)塊并通知高層協(xié)議模塊,或者,當(dāng)接收到高層協(xié)議模塊中止發(fā)送 所述數(shù)據(jù)塊的消息時,通知物理層模塊停止所述數(shù)據(jù)塊的發(fā)送;
數(shù)據(jù)緩存單元用于存儲控制單元緩存的數(shù)據(jù)塊。
本發(fā)明實施例提供的數(shù)據(jù)傳輸控制方法,通過緩存一定數(shù)量高層發(fā)送的數(shù) 據(jù)塊,并向物理層發(fā)送緩存的數(shù)據(jù)塊,可以使物理層在上行資源的時間到來時 及時向網(wǎng)絡(luò)發(fā)送數(shù)據(jù)塊,有效利用了無線資源,實現(xiàn)了數(shù)據(jù)的高效傳輸;當(dāng)接 收到高層中止發(fā)送該數(shù)據(jù)塊的消息時,通知物理層停止該數(shù)據(jù)塊的發(fā)送,降低 了無線資源的浪費,實現(xiàn)了數(shù)據(jù)的正確傳輸。本發(fā)明實施例提供的數(shù)據(jù)傳輸控 制裝置可以適用于位于不同芯片、甚至不同制造商的高層協(xié)議^t塊和物理層沖莫 塊之間的集成,解決了兩個模塊集成產(chǎn)生的延時造成的無線資源浪費和傳輸效 率低下問題,有效利用了無線資源,實現(xiàn)了凝:據(jù)的高效、正確傳輸。
圖1為現(xiàn)有技術(shù)中UE的基本結(jié)構(gòu)示意圖; 圖2為現(xiàn)有技術(shù)中高層協(xié)議模塊和物理層模塊通信過程示意圖; 圖3為本發(fā)明實施例中高層協(xié)議模塊和物理層才莫塊之間增加數(shù)據(jù)傳輸控制 裝置的通信過程示意圖4為本發(fā)明實施例中彩:據(jù)傳輸控制裝置結(jié)構(gòu)框圖;圖5a、圖5b、圖5c、圖5d為本發(fā)明實施例中數(shù)據(jù)^爰存隊列的參數(shù)信息 變化示意圖6a、圖6b、圖6c為本發(fā)明實施例中狀態(tài)緩存隊列的參數(shù)信息變化示意
圖7為本發(fā)明實施例中數(shù)據(jù)傳輸控制方法流程圖; 圖8為本發(fā)明實施例中接收高層消息后的處理流程圖; 圖9為本發(fā)明實施例中接收物理層消息后的處理流程圖。
具體實施例方式
目前UE的解決方案中,分別完整的實現(xiàn)了高層協(xié)議和物理層協(xié)議,但是 當(dāng)兩個協(xié)議在不同的芯片上運行的時候,尤其是當(dāng)高層協(xié)議模塊和物理層模塊 來自不同制造商時,兩個模塊集成后的非實時數(shù)據(jù)傳輸控制尤為重要。本發(fā)明 實施例提供了 一種用于確認(rèn)數(shù)據(jù)傳輸?shù)臄?shù)據(jù)傳輸控制方法及裝置,可以提高高 層協(xié)議模塊和物理層模塊集成時的無線資源利用率,實現(xiàn)了數(shù)據(jù)的高效、正確 傳輸。
如圖3所示,為本發(fā)明實施例提供的UE中增加數(shù)據(jù)傳輸控制裝置的連接 關(guān)系示意圖,在物理層模塊300和高層協(xié)議模塊301之間增加數(shù)據(jù)傳輸控制 裝置302,高層協(xié)議模塊301將要發(fā)送的數(shù)據(jù)塊經(jīng)由數(shù)據(jù)傳輸控制裝置302 發(fā)送到物理層模塊300,物理層模塊300和高層協(xié)議模塊301之間也會通過數(shù) 據(jù)傳輸控制裝置302傳輸一些相關(guān)的本地控制信息,用以確認(rèn)數(shù)據(jù)的正確傳 輸。該數(shù)據(jù)傳輸控制裝置可以用硬件方式實現(xiàn),也可以用軟件方式實現(xiàn),可以 位于高層協(xié)議模塊一側(cè),也可以位于物理層協(xié)議模塊一側(cè),使用相當(dāng)靈活。
其中數(shù)據(jù)傳輸控制裝置302的一種可能內(nèi)部結(jié)構(gòu)如圖4所示,包括控制 單元401和數(shù)據(jù)緩存單元402,其中
控制單元401:用于接收并緩存高層發(fā)送的數(shù)據(jù)塊,向物理層發(fā)送緩存的 數(shù)據(jù)塊,當(dāng)接收到物理層已發(fā)送數(shù)據(jù)塊的消息時,清除該數(shù)據(jù)塊并通知高層,或者,當(dāng)接收到高層中止發(fā)送據(jù)塊的消息時,通知物理層停止該數(shù)據(jù)塊的發(fā)送; 數(shù)據(jù)緩存單元402:用于存儲控制單元401緩存的數(shù)據(jù)塊。 由于高層發(fā)送的數(shù)據(jù)塊具備數(shù)據(jù)塊的狀態(tài),數(shù)據(jù)塊的狀態(tài)分為三種,分別 是不正確確認(rèn)(NACK)狀態(tài)、新數(shù)據(jù)(NEW)狀態(tài)和等待確認(rèn)(PEND)狀 態(tài)。優(yōu)選的,可以將lt據(jù)緩存單元分為三個子單元,并才艮據(jù)lt據(jù)塊的狀態(tài)將已 接收的數(shù)據(jù)塊分別i爰存在不同的子單元中,每個子單元中以隊列的形式存儲具 備同一種狀態(tài)的數(shù)據(jù)塊,則數(shù)據(jù)緩存單元402包括第一數(shù)據(jù)緩存子單元4021、 第二數(shù)據(jù)緩存子單元4022、第三數(shù)據(jù)緩存子單元4023,其中
控制單元401當(dāng)已接收的數(shù)據(jù)塊為不正確確^人狀態(tài)時,將該數(shù)據(jù)塊緩存在 第一數(shù)據(jù)緩存子單元4021,當(dāng)已接收的數(shù)據(jù)塊為新數(shù)據(jù)狀態(tài)時,將該數(shù)據(jù)塊 緩存在第二數(shù)據(jù)緩存子單元4022,當(dāng)已接收的數(shù)據(jù)塊為等待確認(rèn)狀態(tài)時,將 該數(shù)據(jù)塊緩存在第三數(shù)據(jù)緩存子單元4023;
第一數(shù)據(jù)緩存子單元4021:用于存儲第一數(shù)據(jù)緩存隊列,第一數(shù)據(jù)緩存 隊列用于緩存不正確確認(rèn)狀態(tài)的數(shù)據(jù)塊;
第二數(shù)據(jù)緩存子單元4022:用于存儲第二數(shù)據(jù)緩存隊列,第二數(shù)據(jù)緩存
隊列用于緩存新數(shù)據(jù)狀態(tài)的數(shù)據(jù)塊;
第三數(shù)據(jù)緩存子單元4023'.用于存儲第三數(shù)據(jù)緩存隊列,第三數(shù)據(jù)緩存 隊列用于緩存等待確認(rèn)狀態(tài)的數(shù)據(jù)塊。
當(dāng)然,三個數(shù)據(jù)緩存子單元也可以合并設(shè)置在一個物理實體上,即數(shù)據(jù)緩 存單元402中存儲三個數(shù)據(jù)緩存隊列。其中,數(shù)據(jù)緩存單元和各數(shù)據(jù)緩存子單 元采用的物理實體一般為寄存器。
因為數(shù)據(jù)緩存單元中緩存的數(shù)據(jù)塊具備不同的狀態(tài),數(shù)據(jù)傳輸控制裝置中 還包括狀態(tài)緩存單元403,其中
控制單元401還當(dāng)向物理層發(fā)送緩存的數(shù)據(jù)塊時,記錄該數(shù)據(jù)塊的狀態(tài);
狀態(tài)緩存單元403:用于存儲控制單元401向物理層已發(fā)送的數(shù)據(jù)塊的狀態(tài)。存隊列均是先入先出的隊列,有三個標(biāo)志用來指出隊列的特定位置,分別是開
始(start )、準(zhǔn)備(ready)和總數(shù)(total—num ),其中start指出了隊列中保存
的第一個數(shù)據(jù)塊的位置信息,ready指出了還沒有送到物理層的第一個數(shù)據(jù)塊 的位置信息,total—num表示隊列中所有的數(shù)據(jù)塊總數(shù)。
每當(dāng)高層向數(shù)據(jù)傳輸控制裝置發(fā)送若千數(shù)據(jù)塊之后,數(shù)據(jù)傳輸控制裝置根 據(jù)高層發(fā)送過來的數(shù)據(jù)塊的狀態(tài)和個數(shù),將對應(yīng)數(shù)據(jù)緩存隊列中的total一num 增加相應(yīng)的個數(shù),ready和start保持不變。如圖5a所示,高層向物理層發(fā)送 的數(shù)據(jù)塊首先在數(shù)據(jù)傳輸控制裝置中緩存,高層發(fā)送數(shù)據(jù)塊之前,數(shù)據(jù)傳輸控 制裝置中與該數(shù)據(jù)塊的狀態(tài)相對應(yīng)的數(shù)據(jù)緩存隊列中start和ready指示的數(shù) 據(jù)塊的位置信息均為0, total一num也為0,表明該數(shù)據(jù)緩存隊列中沒有存儲數(shù) 據(jù)塊;當(dāng)高層發(fā)送兩個數(shù)據(jù)塊給物理層之后,首先在數(shù)據(jù)傳輸控制裝置中緩存, 對應(yīng)的數(shù)據(jù)緩存隊列中start和ready指示的位置信息不變,相應(yīng)的total—num 變?yōu)?,表明該數(shù)據(jù)緩存隊列中保存了兩個數(shù)據(jù)塊。
每當(dāng)數(shù)據(jù)傳輸控制裝置將緩存的數(shù)據(jù)塊向物理層發(fā)送若干之后,數(shù)據(jù)傳輸 控制裝置根據(jù)發(fā)送給物理層的數(shù)據(jù)塊的個數(shù)和狀態(tài),將對應(yīng)數(shù)據(jù)緩存隊列中的 ready向前移動相應(yīng)的個數(shù),但是start和total—num保持不變。如圖5b所示, 數(shù)據(jù)傳輸控制裝置向物理層發(fā)送緩存的數(shù)據(jù)塊之前,數(shù)據(jù)傳輸控制裝置中與該 數(shù)據(jù)塊的狀態(tài)相對應(yīng)的數(shù)據(jù)緩存隊列中start和ready指示的數(shù)據(jù)塊的位置信 息均為O, total—num為2,表明該數(shù)據(jù)緩存隊列中存儲了兩個數(shù)據(jù)塊;當(dāng)數(shù)據(jù) 傳輸控制裝置發(fā)送這兩個數(shù)據(jù)塊給物理層之后,該數(shù)據(jù)緩存隊列中start指示 的位置信息不變,ready向前移動2個位置,指示的位置信息為2, total—num 仍為2,表明數(shù)據(jù)緩存隊列中緩存的這兩個數(shù)據(jù)塊仍然有效。
每當(dāng)物理層通知數(shù)據(jù)傳輸控制裝置若干數(shù)據(jù)塊已成功發(fā)向網(wǎng)絡(luò)之后,數(shù)據(jù) 傳輸控制裝置就根據(jù)已成功發(fā)向網(wǎng)絡(luò)的數(shù)據(jù)塊的個數(shù)和狀態(tài),將對應(yīng)的數(shù)據(jù)緩 存隊列中相應(yīng)的個數(shù)清除,這時start會向前移動相應(yīng)的個數(shù),但是ready保 持不變,total num也會減少相應(yīng)的個數(shù)。如圖5c所示,在物理層向網(wǎng)絡(luò)成功發(fā)送數(shù)據(jù)塊之前,數(shù)據(jù)傳輸控制裝置中與該數(shù)據(jù)塊的狀態(tài)相對應(yīng)的數(shù)據(jù)緩存隊
列中start指示的數(shù)據(jù)塊的位置信息為0, ready指示的位置信息為2,total一num
為2,表明該數(shù)據(jù)緩存隊列中緩存了兩個數(shù)據(jù)塊;當(dāng)?shù)弥锢韺酉蚓W(wǎng)絡(luò)成功發(fā) 送兩個數(shù)據(jù)塊之后,該數(shù)據(jù)緩存隊列中ready指示的位置信息不變,start向前 移動兩個位置,指示的位置信息為2, total—num變?yōu)?,表明該數(shù)據(jù)緩存隊列 中沒有存儲數(shù)據(jù)塊。
每當(dāng)高層的狀態(tài)發(fā)生變化,需要改變數(shù)據(jù)塊的大小或者內(nèi)容,即要中止當(dāng) 前數(shù)據(jù)塊的發(fā)送時,數(shù)據(jù)傳輸控制裝置就會根據(jù)數(shù)據(jù)塊的狀態(tài)將對應(yīng)數(shù)據(jù)緩存 隊列中ready退回到起始位置,而start保持不變,total一num也會減少相應(yīng)的 個數(shù),同時通知物理層停止使用尚未發(fā)送出去的數(shù)據(jù)塊。如圖5d所示,接收 到高層的狀態(tài)發(fā)生變化的通知之前,數(shù)據(jù)傳輸控制裝置中與該數(shù)據(jù)塊的狀態(tài)相 對應(yīng)的數(shù)據(jù)緩存隊列中start指示的數(shù)據(jù)塊的位置信息為0, ready指示的位置 信息為2, total—num為2,表明數(shù)據(jù)緩存單元中存儲了兩個數(shù)據(jù)塊;當(dāng)?shù)弥?層的狀態(tài)發(fā)生變化,需要改變該兩個數(shù)據(jù)塊的大小或者內(nèi)容的時候,數(shù)據(jù)傳輸 控制裝置根據(jù)數(shù)據(jù)塊的狀態(tài)將該數(shù)據(jù)緩存隊列中ready向后退回兩個位置,指 示的位置信息為0,而start指示的位置信息不變,total—num變?yōu)?,表明該 數(shù)據(jù)緩存隊列中沒有存儲數(shù)據(jù)塊。
狀態(tài)緩存單元中存儲一個先入先出的狀態(tài)緩存隊列,用來記錄高層通過數(shù) 據(jù)傳輸控制裝置已經(jīng)發(fā)送給物理層的數(shù)據(jù)塊的狀態(tài),作為對每個數(shù)據(jù)緩存隊列 的定位。有兩個標(biāo)志用來指出該狀態(tài)緩存隊列的特定位置,分別是開始(start) 和總數(shù)(total一num ),其中start指出了已經(jīng)發(fā)送給物理層但物理層還沒有發(fā)送 到網(wǎng)絡(luò)的第一個數(shù)據(jù)塊的位置信息,total_num表示狀態(tài)緩存隊列中保存的數(shù) 據(jù)塊的總數(shù)。初始狀態(tài)的狀態(tài)緩存隊列如圖6a所示,start指示的數(shù)據(jù)塊的位 置信息為0, total_num也為0;
當(dāng)高層通過數(shù)據(jù)傳輸控制裝置已經(jīng)發(fā)送給物理層四個數(shù)據(jù)塊之后狀態(tài)緩 存隊列如圖6b所示,start指示的數(shù)據(jù)塊的位置信息仍為0, total num為4,存儲的已經(jīng)發(fā)送給物理層但物理層沒有發(fā)送到網(wǎng)絡(luò)的四個數(shù)據(jù)塊的狀態(tài)分別
為NEW、 NACK、 NEW、 NEW。
當(dāng)?shù)弥锢韺酉蚓W(wǎng)絡(luò)成功發(fā)送出去兩個數(shù)據(jù)塊之后,狀態(tài)緩存隊列如圖6c 所示,start指示的數(shù)據(jù)塊的位置信息為2, total一num變?yōu)?,由于已經(jīng)向網(wǎng) 絡(luò)發(fā)送了兩個數(shù)據(jù)塊,存儲的沒有向網(wǎng)絡(luò)發(fā)送的兩個數(shù)據(jù)塊的狀態(tài)分別為 NEW、 NEW;然后將變化后的存儲內(nèi)容通知高層。高層就可以確切地知道物 理層剛剛發(fā)送出去的數(shù)據(jù)塊的狀態(tài),進(jìn)而處理對應(yīng)狀態(tài)的數(shù)據(jù)緩存隊列。
以上例子中用兩個數(shù)據(jù)塊只是為了說明問題的方便,實際上任何滿足存儲 空間大小的數(shù)據(jù)塊組合都是可行的。
數(shù)據(jù)傳輸控制裝置對數(shù)據(jù)緩存單元中存儲隊列的控制和處理都是由控制 單元執(zhí)行的,控制單元會收到來自高層的數(shù)據(jù)塊,以及高層和物理層發(fā)送過來 的本地控制信息,并根據(jù)接收到的消息進(jìn)行控制處理,如圖7所示,本發(fā)明實 施例提供的數(shù)據(jù)傳輸控制方法,包括步驟
5701、 接收并緩存高層發(fā)送的數(shù)據(jù)塊;
5702、 向物理層發(fā)送緩存的數(shù)據(jù)塊,當(dāng)接收到物理層已發(fā)送數(shù)據(jù)塊的消 息時,清除該數(shù)據(jù)塊并通知高層;或者,
當(dāng)接收到高層中止發(fā)送數(shù)據(jù)塊的消息時,通知物理層停止該數(shù)據(jù)塊的發(fā)送。
較優(yōu)的,控制單元根據(jù)數(shù)據(jù)塊的狀態(tài)將接收到的數(shù)據(jù)塊分別存儲在三個數(shù) 據(jù)緩存隊列中,并根據(jù)本地控制信息對三個數(shù)據(jù)緩存隊列分別進(jìn)行控制和處 理,當(dāng)接收到來自高層的消息時,該消息包括數(shù)據(jù)塊和本地控制信息,根據(jù)以 下流程對三個數(shù)據(jù)緩存隊列分別進(jìn)行控制處理,如圖8所示,包括
5801、 控制單元接收到來自高層的消息之后,判斷是否是高層發(fā)送的數(shù) 據(jù)塊,如果是則執(zhí)行S802,否則執(zhí)行S804;
5802、 控制單元才艮據(jù)數(shù)據(jù)塊的狀態(tài)將數(shù)據(jù)塊存入對應(yīng)的數(shù)據(jù)緩存隊列;
5803、 該數(shù)據(jù)緩存隊列的total num根據(jù)數(shù)據(jù)塊的個數(shù)發(fā)生相應(yīng)的變化,5803、 該數(shù)據(jù)緩存隊列的total一num根據(jù)數(shù)據(jù)塊的個數(shù)發(fā)生相應(yīng)的變化, 而start和ready不變,返回執(zhí)行S801;
如果不是來自高層的數(shù)據(jù)塊,那么這個消息一定是本地控制信息,亍是控 制單元會根據(jù)這個本地控制信息來決定高層是否中止發(fā)送該數(shù)據(jù)塊,如果是則 在對應(yīng)的數(shù)據(jù)緩存隊列中清除該數(shù)據(jù)塊,并通知物理層清除尚未發(fā)送出去的數(shù) 據(jù)塊即停止該數(shù)據(jù)塊的發(fā)送,原因是由于延時的存在,已經(jīng)組好的數(shù)據(jù)塊在等 待物理層發(fā)送的過程中,整個協(xié)議的狀態(tài)又發(fā)生了變化,這種狀態(tài)的變化發(fā)生 在兩種情況下
一種是當(dāng)?shù)谌龜?shù)據(jù)緩存隊列中PEND狀態(tài)的數(shù)據(jù)塊收到了來自網(wǎng)絡(luò)的確 認(rèn)信息,使得第三數(shù)據(jù)緩存隊列中的該數(shù)據(jù)塊沒有重傳的必要,于是物理層還 未發(fā)送的PEND狀態(tài)的數(shù)據(jù)塊就不用再發(fā)送了 ,需要清除并要根據(jù)這種情況來 處理第三數(shù)據(jù)緩存隊列中三個參數(shù)start、 ready和total一num的取值;
另一種是網(wǎng)絡(luò)側(cè)給了新的配置信息給高層,使得NEW狀態(tài)的數(shù)據(jù)塊需要 按照新的數(shù)據(jù)塊大小重新組成,也就是改變了分段的方式,于是原先已經(jīng)發(fā)送 給物理層的按照舊的分段方式生成的數(shù)據(jù)塊就不能用了 ,需要將其退回給高 層,于是需要清除第二數(shù)據(jù)緩存隊列中尚沒有發(fā)送出去的NEW狀態(tài)的數(shù)據(jù)塊, 這種清除操作稱為刷新,是通過中斷的方式通知物理層的,所以控制單元接收 到高層的本地控制信息的后續(xù)流程包括
5804、 判斷該本地控制信息是否是PEND狀態(tài)的數(shù)據(jù)塊的確認(rèn)信息,如 果是則執(zhí)行S805,否則執(zhí)行S807;
5805、 清除第三數(shù)據(jù)緩存隊列中該PEND狀態(tài)的數(shù)據(jù)塊;
5806、 第三數(shù)據(jù)緩存隊列的total—num發(fā)生變化,start向前移動,ready 不變,并繼續(xù)執(zhí)行S811;
5807、 判斷該本地控制信息是否指示高層改變了分段方式,即需要改變 數(shù)據(jù)塊的大小,中止發(fā)送當(dāng)前數(shù)據(jù)塊,如果是則執(zhí)行S808,否則返回執(zhí)行 S801;如果是則執(zhí)行S809,否則返回執(zhí)行S801;
5809、 將該數(shù)據(jù)塊退回給高層;
5810、 第二數(shù)據(jù)緩存隊列的total—num發(fā)生變化、start不變,ready向后
移動;
S811 、通知物理層清除尚未發(fā)送出去的數(shù)據(jù)塊并返回執(zhí)行S801 。 物理層通過數(shù)據(jù)傳輸控制裝置發(fā)送給高層的消息包含兩方面的內(nèi)容, 一方 面是物理層要通知高層剛才發(fā)送出去數(shù)據(jù)塊的個數(shù),另一方面要向高層請求一 定數(shù)量的數(shù)據(jù)塊,用于發(fā)送前的準(zhǔn)備。物理層將已經(jīng)發(fā)送出去的數(shù)據(jù)塊的個數(shù) 通知高層后,高層根據(jù)已經(jīng)發(fā)送出去數(shù)據(jù)塊的個數(shù)和狀態(tài)緩存隊列的內(nèi)容,就 可以知道已經(jīng)發(fā)送出去的數(shù)據(jù)塊的狀態(tài),從而對不同數(shù)據(jù)塊狀態(tài)對應(yīng)的數(shù)據(jù)緩 存隊列進(jìn)行處理,改變不同數(shù)據(jù)緩存隊列的參數(shù)取值。
物理層向高層請求一定數(shù)量的數(shù)據(jù)塊是因為物理層的緩存空間還有剩余, 這時控制單元就會#4居數(shù)據(jù)塊狀態(tài)優(yōu)先級的順序,從不同狀態(tài)對應(yīng)的數(shù)據(jù)緩存 隊列中取出數(shù)據(jù)塊發(fā)給物理層,優(yōu)先級的順序是NACK最高,NEW居中,PEND 最低,這是符合協(xié)議要求的。狀態(tài)緩存隊列中會紀(jì)錄發(fā)送給物理層的各個數(shù)據(jù) 塊的狀態(tài)。
當(dāng)控制單元收到來自物理層的消息,根據(jù)以下流程對三個數(shù)據(jù)緩存隊列和 狀態(tài)緩存隊列分別進(jìn)行控制處理,如圖9所示,包括
5901、 判斷是否有數(shù)據(jù)塊被物理層成功發(fā)向網(wǎng)絡(luò),如果是則執(zhí)行S902, 否則執(zhí)行S910;
5902、 根據(jù)狀態(tài)緩存隊列獲得該已成功發(fā)向網(wǎng)絡(luò)的數(shù)據(jù)塊的狀態(tài);
5903、 改變狀態(tài)緩存隊列中start指示的位置信息,減小total—num;
5904、 判斷已成功發(fā)送的數(shù)據(jù)塊是否為NACK狀態(tài),如果是則執(zhí)行S905, 否則執(zhí)行S906;
5905、 第一數(shù)據(jù)緩存隊列的totaLnum發(fā)生變化,start向前移動,ready 不變,并返回執(zhí)行S901;不變,并返回執(zhí)4亍S901;
5906、 判斷已成功發(fā)送的數(shù)據(jù)塊是否為NEW狀態(tài),如果是則執(zhí)行S907, 否則執(zhí)行S908;
5907、 第二數(shù)據(jù)緩存隊列的total—num發(fā)生變化,start向前移動,ready 不變,并返回執(zhí)行S901;
5908、 判斷已成功發(fā)送的數(shù)據(jù)塊是否為PEND狀態(tài),如果是則執(zhí)行S909, 否則判斷為發(fā)生錯誤,流程結(jié)束;
5909、 第三數(shù)據(jù)緩存隊列的total—num發(fā)生變化,start向前移動,ready 不變,并返回執(zhí)行S901;
5910、 判斷物理層是否向高層請求數(shù)據(jù)塊,如果是則執(zhí)行S911,否則流 程結(jié)束;
5911、 判斷第一數(shù)據(jù)緩存隊列中是否緩存有數(shù)據(jù)塊,如果是則執(zhí)行S912, 否則執(zhí)行S913;
5912、 第一數(shù)據(jù)緩存隊列的total—num和start不變,ready向前移動, 并繼續(xù)執(zhí)行S917;
5913、 判斷第二數(shù)據(jù)緩存隊列中是否緩存有數(shù)據(jù)塊,如果是則執(zhí)行S914, 否則執(zhí)行S915;
5914、 第二數(shù)據(jù)緩存隊列的total_num和start不變,ready向前移動, 并繼續(xù)執(zhí)行S917;
5915、 判斷第三數(shù)據(jù)緩存隊列中是否緩存有數(shù)據(jù)塊,如果是則執(zhí)行S916,
否則流程結(jié)束;
5916、 第三數(shù)據(jù)緩存隊列的total—num和start不變,ready向前移動, 并繼續(xù)執(zhí)行S917;
5917、 向物理層發(fā)送該數(shù)據(jù)緩存隊列中的數(shù)據(jù)塊;
5918、 在狀態(tài)緩存隊列中記錄發(fā)送給物理層的該數(shù)據(jù)塊的狀態(tài),并返回 執(zhí)行S910。率和實現(xiàn)數(shù)據(jù)的高效、正確傳輸,通過一個相對獨立的數(shù)據(jù)傳輸控制裝置,可 以解決不同芯片乃至不同制造商的模塊之間集成產(chǎn)生的延時造成的無線資源 浪費和傳輸效率低下問題,使得有效的集成成為可能。該數(shù)據(jù)傳輸控制裝置可 以用硬件,也可以用軟件的方式來實現(xiàn),可以位于高層協(xié)議模塊一側(cè),也可以 位于物理層模塊一側(cè),使用相當(dāng)靈活。同時本發(fā)明實施例提供的數(shù)據(jù)傳輸控制 裝置及方法對現(xiàn)有模塊只需要做少量接口上的改動,而無需改變模塊本身,使 得模塊之間的連接變得簡單易行,并且可以通過改變參數(shù)的大小來實現(xiàn)模塊之 間的最佳匹配,極大的節(jié)約了成本。
明的精神和范圍。這樣,倘若本發(fā)明的這些修改和變型屬于本發(fā)明權(quán)利要求及
其等同技術(shù)的范圍之內(nèi),則本發(fā)明也意圖包含這些改動和變型在內(nèi)。
權(quán)利要求
1、一種數(shù)據(jù)傳輸控制方法,其特征在于,包括接收并緩存高層發(fā)送的數(shù)據(jù)塊;向物理層發(fā)送緩存的數(shù)據(jù)塊,當(dāng)接收到物理層已發(fā)送所述數(shù)據(jù)塊的消息時,清除所述數(shù)據(jù)塊并通知高層;或者,當(dāng)接收到高層中止發(fā)送所述數(shù)據(jù)塊的消息時,通知物理層停止所述數(shù)據(jù)塊的發(fā)送。
2、 如權(quán)利要求1所述的方法,其特征在于,還包括根據(jù)已接收的數(shù)據(jù) 塊的狀態(tài),將所述數(shù)據(jù)塊分別緩存在不同的數(shù)據(jù)緩存隊列中,其中當(dāng)所述已接收的數(shù)據(jù)塊為不正確確認(rèn)狀態(tài)時,將該數(shù)據(jù)塊緩存在第一數(shù)據(jù) 緩存隊列,所述第一數(shù)據(jù)緩存隊列用于緩存不正確確認(rèn)狀態(tài)的數(shù)據(jù)塊;當(dāng)所述已接收的數(shù)據(jù)塊為新數(shù)據(jù)狀態(tài)時,將該數(shù)據(jù)塊緩存在第二數(shù)據(jù)緩存 隊列,所述第二數(shù)據(jù)緩存隊列用于緩存新數(shù)據(jù)狀態(tài)的數(shù)據(jù)塊;當(dāng)所述已接收的數(shù)據(jù)塊為等待確認(rèn)狀態(tài)時,將該數(shù)據(jù)塊緩存在第三數(shù)據(jù)緩 存隊列,所述第三數(shù)據(jù)緩存隊列用于緩存等待確認(rèn)狀態(tài)的數(shù)據(jù)塊。
3、 如權(quán)利要求2所述的方法,其特征在于,向物理層發(fā)送緩存的數(shù)據(jù)塊 時,將所述數(shù)據(jù)塊的狀態(tài)記錄在狀態(tài)緩存隊列中。
4、 如權(quán)利要求2或3所述的方法,其特征在于,當(dāng)接收到等待確認(rèn)狀態(tài) 的數(shù)據(jù)塊的確認(rèn)信息,或者需要改變新數(shù)據(jù)狀態(tài)的數(shù)據(jù)塊時,高層發(fā)出中止發(fā) 送所述數(shù)據(jù)塊的消息。
5、 如權(quán)利要求2或3所述的方法,其特征在于,所述當(dāng)接收到物理層已 發(fā)送所述lt據(jù)塊的消息時,清除所述數(shù)據(jù)塊并通知高層,包括當(dāng)接收到物理層已發(fā)送所述數(shù)據(jù)塊的消息時,才艮據(jù)狀態(tài)緩存隊列獲取所述 數(shù)據(jù)塊的狀態(tài);根據(jù)所述數(shù)據(jù)塊的狀態(tài)在對應(yīng)的數(shù)據(jù)緩存隊列中清除所述數(shù)據(jù)塊; 通知高層已被物理層發(fā)送的所述數(shù)據(jù)塊的狀態(tài)和個數(shù)。
6、 如權(quán)利要求2所述的方法,其特征在于,所述向物理層發(fā)送緩存的數(shù) 據(jù)塊優(yōu)先從第一數(shù)據(jù)緩存隊列中獲取,如果所述第一數(shù)據(jù)緩存隊列中沒有緩存 數(shù)據(jù)塊時,再從所述第二數(shù)據(jù)緩存隊列中獲取,如果所述第一數(shù)據(jù)緩存隊列中 和所述第二數(shù)據(jù)緩存隊列中都沒有緩存數(shù)據(jù)塊時,再從所述第三數(shù)據(jù)緩存隊列 中獲取,如果三個數(shù)據(jù)緩存隊列中全部沒有緩存數(shù)據(jù)塊則流程結(jié)束。
7、 如權(quán)利要求1、 2、 3或6所述的方法,其特征在于,當(dāng)接收到物理層向高層請求數(shù)據(jù)塊的消息時,向物理層發(fā)送緩存的數(shù)據(jù)塊。
8、 一種數(shù)據(jù)傳輸控制裝置,其特征在于,包括控制單元用于接收并緩存高層發(fā)送的數(shù)據(jù)塊,向物理層發(fā)送緩存的數(shù)據(jù) 塊,當(dāng)接收到物理層已發(fā)送所述數(shù)據(jù)塊的消息時,清除所述數(shù)據(jù)塊并通知高層, 或者,當(dāng)接收到高層中止發(fā)送所述數(shù)據(jù)塊的消息時,通知物理層停止所述數(shù)據(jù) 塊的發(fā)送;數(shù)據(jù)緩存單元用于存儲控制單元緩存的數(shù)據(jù)塊。
9、 如權(quán)利要求8所述的裝置,其特征在于,所述數(shù)據(jù)緩存單元包括第一 數(shù)據(jù)緩存子單元、第二數(shù)據(jù)緩存子單元和第三數(shù)據(jù)緩存子單元,其中所述控制單元當(dāng)已接收的數(shù)據(jù)塊為不正確確認(rèn)狀態(tài)時,將該數(shù)據(jù)塊緩存在 第一數(shù)據(jù)緩存子單元,當(dāng)已接收的數(shù)據(jù)塊為新數(shù)據(jù)狀態(tài)時,將該數(shù)據(jù)塊緩存在 第二數(shù)據(jù)緩存子單元,當(dāng)已接收的數(shù)據(jù)塊為等待確認(rèn)狀態(tài)時,將該數(shù)據(jù)塊緩存 在第三數(shù)據(jù)緩存子單元;所述第一數(shù)據(jù)緩存子單元用于存儲第一數(shù)據(jù)緩存隊列,所述第一數(shù)據(jù)緩 存隊列用于緩存不正確確認(rèn)狀態(tài)的數(shù)據(jù)塊;所述第二數(shù)據(jù)緩存子單元用于存儲第二數(shù)據(jù)緩存隊列,所述第二數(shù)據(jù)緩 存隊列用于緩存新數(shù)據(jù)狀態(tài)的數(shù)據(jù)塊;所述第三數(shù)據(jù)緩存子單元用于存儲第三數(shù)據(jù)緩存隊列,所述第三數(shù)據(jù)緩 存隊列用于緩存等待確認(rèn)狀態(tài)的數(shù)據(jù)塊。
10、 如權(quán)利要求9所述的裝置,其特征在于,所述裝置還包括狀態(tài)緩存單元,其中所述控制單元還當(dāng)向物理層發(fā)送緩存的數(shù)據(jù)塊時,記錄所述數(shù)據(jù)塊的狀態(tài);所述狀態(tài)緩存單元用于存儲控制單元向物理層已發(fā)送的所述數(shù)據(jù)塊的狀態(tài)。
11、 如權(quán)利要求9所述的裝置,其特征在于,所述第一數(shù)據(jù)緩存子單元、 第二數(shù)據(jù)緩存子單元和第三數(shù)據(jù)緩存子單元合并設(shè)置。
12、 一種用戶設(shè)備,包括高層協(xié)議模塊和物理層模塊,其特征在于,包括 控制單元用于接收并緩存所述高層協(xié)議模塊發(fā)送的數(shù)據(jù)塊,向所述物理層模塊發(fā)送緩存的數(shù)據(jù)塊,當(dāng)接收到物理層模塊已發(fā)送所述數(shù)據(jù)塊的消息時, 清除所述數(shù)據(jù)塊并通知高層協(xié)議沖莫塊,或者,當(dāng)接收到高層協(xié)議^^莫塊中止發(fā)送 所述數(shù)據(jù)塊的消息時,通知物理層模塊停止所述數(shù)據(jù)塊的發(fā)送; 數(shù)據(jù)緩存單元用于存儲控制單元緩存的數(shù)據(jù)塊。
13、 如權(quán)利要求12所述的用戶設(shè)備,其特征在于,所述數(shù)據(jù)緩存單元包 括第一數(shù)據(jù)緩存子單元、第二數(shù)據(jù)緩存子單元和第三數(shù)據(jù)緩存子單元,其中所述控制單元當(dāng)已接收的數(shù)據(jù)塊為不正確確認(rèn)狀態(tài)時,將該數(shù)據(jù)塊緩存在 第一數(shù)據(jù)緩存子單元,當(dāng)已接收的數(shù)據(jù)塊為新數(shù)據(jù)狀態(tài)時,將該數(shù)據(jù)塊緩存在 第二數(shù)據(jù)緩存子單元,當(dāng)已接收的數(shù)據(jù)塊為等待確認(rèn)狀態(tài)時,將該數(shù)據(jù)塊緩存 在第三數(shù)據(jù)緩存子單元;所述第一數(shù)據(jù)緩存子單元用于存儲第一數(shù)據(jù)緩存隊列,所述第一數(shù)據(jù)緩 存隊列用于緩存不正確確認(rèn)狀態(tài)的數(shù)據(jù)塊;所述第二數(shù)據(jù)緩存子單元用于存儲第二數(shù)據(jù)緩存隊列,所述第二數(shù)據(jù)緩 存隊列用于緩存新數(shù)據(jù)狀態(tài)的數(shù)據(jù)塊;所述第三數(shù)據(jù)緩存子單元用于存儲第三數(shù)據(jù)緩存隊列,所述第三數(shù)據(jù)緩 存隊列用于緩存等待確認(rèn)狀態(tài)的數(shù)據(jù)塊。
14、 如權(quán)利要求13所述的用戶設(shè)備,其特征在于,所述用戶設(shè)備還包括狀態(tài)緩存單元,其中所述控制單元還當(dāng)向所述物理層模塊發(fā)送緩存的數(shù)據(jù)塊時,記錄所述數(shù)據(jù) 塊的狀態(tài);所述狀態(tài)緩存單元用于存儲控制單元向所述物理層模塊已發(fā)送的所述^t 據(jù)塊的狀態(tài)。
全文摘要
本發(fā)明涉及移動通信技術(shù)領(lǐng)域,尤其涉及一種數(shù)據(jù)傳輸控制技術(shù)。本發(fā)明實施例公開了一種數(shù)據(jù)傳輸控制方法、裝置及用戶設(shè)備,用以解決數(shù)據(jù)傳輸時由于延時產(chǎn)生的無線資源浪費和傳輸效率低下問題,有效利用了無線資源,實現(xiàn)了數(shù)據(jù)的高效、正確傳輸。所述數(shù)據(jù)傳輸控制方法,包括接收并緩存高層發(fā)送的數(shù)據(jù)塊;向物理層發(fā)送緩存的數(shù)據(jù)塊,當(dāng)接收到物理層已發(fā)送所述數(shù)據(jù)塊的消息時,清除所述數(shù)據(jù)塊并通知高層;或者,當(dāng)接收到高層中止發(fā)送所述數(shù)據(jù)塊的消息時,通知物理層停止所述數(shù)據(jù)塊的發(fā)送。所述數(shù)據(jù)傳輸控制裝置包括控制單元和數(shù)據(jù)緩存單元。本發(fā)明實施例還公開了一種用戶設(shè)備。
文檔編號H04L1/16GK101420363SQ200710176348
公開日2009年4月29日 申請日期2007年10月25日 優(yōu)先權(quán)日2007年10月25日
發(fā)明者李引新, 甘慧彥 申請人:大唐移動通信設(shè)備有限公司;上海大唐移動通信設(shè)備有限公司