編輯:關於Android編程
1 HSDPA 簡介
HSDPA中引入的HS-DSCH棄用了R99中的功率控制技術、軟切換技術和可變擴頻增益技術。同時引入了一系列關鍵技術:
1) 更短的無線幀結構;(2ms子幀)
2) 使用新的共享的高速下行信道;(HS-PDSCH)
3) 除了QPSK,還引入了16QAM高階調制;
4) 將碼分復用和時分復用相結合;(多用戶共享HS-PDSCH)
5) 引入新的上行控制信道;(HS-PDCCH)
6) 使用自適應編碼調制(AMC)實現快速鏈路適配;(Turbo/卷積碼;QPSK/16QAM)
7) 物理層的快速混合自動重傳(HARQ); (一個用戶對應多個HARQprocess)
8) MAC實體(MAC-hs)在Node B中的數據調度控制。
下面將詳細介紹這些關鍵技術。
1.1 擴頻和復用技術
HSDPA中引入的HS-PDSCH使用固定的擴頻增益(SF=16),這點與R99系統不一樣。HSDPA同時規定,最多有15個SF=16的碼字可以用於HS-DSCH。
碼分復用和時分復用相結合:不同用戶在下行鏈路上,既可以使用基於碼分復用傳輸技術,也可以使用基於時分復用傳輸技術。
1.2 自適應編碼調制技術
功率控制是保證一條鏈路傳輸速率不變的前提下,針對信道環境發生的變化,通過調節發射功率來滿足數據傳輸速率的要求。
在HSDPA中引入的HS-DSCH沒有使用傳統R99的專用信道中采用的功率控制技術。那針對信道環境的變化,HSDPA中是怎麼做的呢?是通過自動調節編碼和調制技術,來調整數據傳輸速率,來達到與當前的信號質量或信道條件相匹配。比如信號條件變差了,就使用低階調制方式和信道編碼方式;信號條件變好了,就使用高階調制方式和信道編碼方式。
那麼,對於某個小區來說,在滿足公共信道和專用信道的發射功率的前提下,將小區剩余的功率用於高速共享下行信道發射。這樣,恆定速率的專用信道使用快速功率控制,而可容忍速率變化的業務則可使用基於AMC的下行高速共享信道傳輸數據。因為對於HSDPA來說,其分配到的總的功率是固定的,但是速率卻可以波動。
這樣就不難理解AMC技術的引入了。AMC技術根據鏈路的狀態調整調制方式和編碼速率。信道編碼采用R99的1/3Turbo碼,通過速率匹配實現不同的實際編碼速率。HS-DSCH的調制方式可以選擇QPSK、16QAM。通過調制方式和編碼速率的組合,可以獲得不同的傳輸速率。
1.3 基於HARQ的物理層混合自動重傳技術
在HSDPA中,快速混合自動重傳是指接收方在解碼失敗時,保存接收到的數據,由基站而非RNC完成數據重傳。UE將基站重傳的數據和先前接收到的數據在解碼前進行軟合並,極大地提高了重傳成功的幾率。直到數據成功解碼或者達到預先定義的最大嘗試次數,數據重傳操作才會停止。
HARQ重傳有兩種方式:一種是在重傳時,使用與初次發射時相同的編碼比特集合,這種方式稱為追蹤合並(CC,Chase Combining);另一種方式是使用與上次發射不同的編碼比特集合,這種方式稱為遞增冗余(IR,Incremental Redundancy)。後一種方式的性能要優於前一種,但UE端需要更多的內存。
編碼比特集合是指,編碼後的數據進行打孔後得到的數據。一般來說,打孔後會得到多組數據,比如RV0(RedundancyVersion), RV1等。追蹤合並,指的是第一次、第二次發送的數據都是RV0。遞增冗余,指的是第一次發送的數據是RV0,第二次發送的是RV1。
1.4 快速數據調度機制
由於多個用戶共享傳輸信道,NodeB根據UE的信道質量反饋信息知道哪個UE的信道條件最好,並挑選信道條件最好的UE使用HSDPA信道發送數據。從而有效的提高了系統資源的利用率,並提高了系統吞吐量。見下圖。
2. HSDPA的信道結構
HSDPA新增了一些全新的信道:
1) 傳輸信道:HS-DSCH
2) 物理信道:HS-PDSCH,HS-SCCH,HS-DPCCH
在下行方向,先使用一個簡單容易解調的HS-SCCH來指示HS-DSCH的控制信息,隨後再通過相應的HS-PDSCH傳輸業務信息。
在上行方向,UE使用HS-PDCCH用於針對HS-PDSCH信道傳輸的數據進行信息反饋。這些信息反饋包括對數據包的ACK/NACK,和一個有關信道質量指示的報告(CQI)。
2.1 HS-SCCH
HS-SCCH采用固定速率發送(SF=128,QPSK),其用於承載與HS-DSCH相關的下行鏈路信令。其幀結構如下,一個slot承載40bit數據(2560/128* 2)。
HS-SCCH承載的數據有:
I.HS-PDSCH信道化碼信息:7bit
II.調制信息:1bit
III.傳輸塊大小:6bit
IV.HARQ進程信息:3bit
V.RV信息:3bit
VI.新數據指示:1bit
VII.UE Id:HS-SCCH要指明後續的HS-PDSCH子幀是針對哪個UE,UE id用於計算CRC, 16bit
其中I,II為第一部分,放在第一個時隙傳輸,這部分信息共8bit,經過1/3 速率的卷積編碼和速率匹配後,成為40Symbol,映射到第一個時隙傳輸;III~VI的數據,結合這些數據與UEId計算出的CRC(16bit),一起作為第二部分,映射到第二、第三時隙傳輸。
HS-SCCH比相應的HS-PDSCH數據要提前2個時隙發送。
2.2 HS-DSCH和HS-PDSCH
HS-PDSCH用於承載高數據速率下行共享信道(HS-DSCH),HS-PDSCH采用固定擴頻因子(SF=16),可以為HS-DSCH預留多個信道化碼,每條HS-PDSCH使用一個信道化碼。HSDPA允許多碼傳輸,即一條HS-DSCH的在一個子幀可以映射到多條HS-PDSCH物理信道上,但依賴於UE的能力。
一條HS-PDSCH可以使用QPSK or 16QAM兩種調制方式,不同的調制方式承載的數據速率不同,16QAM的數據速率是QPSK的數據速率的兩倍。從Table1可看出HS-PDSCH只有兩種時隙格式0和1,分別對應兩種不同的調制方式。HS-PDSCH的幀結構圖中的M是一個調制符號所對應的數據比特數,對於QPSK,M=2, 對於16QAM,M=4。
HS-PDSCH上所承載的都是數據,與其相關的物理層信息,由HS-SCCH來承載。
Table 1: HS-DSCH fields
Slot format #iChannel Bit Rate (kbps)Channel Symbol Rate (ksps)SFBits/ HS-DSCH subframeBits/ SlotNdata
0(QPSK)48024016960320320
1(16QAM)960240161920640640
UE所有通過HSDPA傳輸的數據都經過HS-DSCH傳輸,到達物理層。下圖是通過HS-DSCH信道到達物理層的數據的處理過程,我們可以看看數據是怎麼一步步被映射到HS-PDSCH的。
1. CRC添加
HS-DSCH采用24bitCRC。
2. 位加擾
3. 碼塊分割
如果數據大於5114bit(因為信道編碼使用的是1/3速率的Turbo碼),則需要對數據進行碼塊分割,分割過程同R99方式。
4. 信道編碼
HS-DSCH總是使用1/3速率的Turbo編碼。
5. 物理層HARQ操作
物理層HARQ操作的目的是將信道編碼的輸出數據進行速率匹配,以得到HS-DSCH相對應的HS-PDSCH集合(比如HS-DSCH映射到5個HS-PDSCH信道)上傳輸所需要的比特數。
由於HSDPA支持兩種方式的HARQ方式,即CC和IR方式,那麼在速率匹配環節,即打孔環節,可以分別得到多組數據子集,比如RV0,RV1等。HARQ模塊根據當前的狀態選擇某一組數據子集作為該步HARQ操作的輸出。
6. 物理信道幀分割
經過HARQ操作得到的數據還需要進行物理信道幀分割。例如HS-DSCH使用5個碼字進行數據傳播,則需要將第5步得到數據分割為5份,這5份數據分別映射到5個HS-PDSCH上進行傳輸。
7. HS-DSCH交織
針對分割的每份數據分別進行交織處理,類似與R99中的幀內交織。
8. 16QAM比特調整
對於16QAM調制方式,遇錯重傳時還可能需要重新調整數據組(4bit為一組)的排列順序,這樣重傳後能保證每個比特位都具有相同的誤碼概率,從而有效提高UE端解碼效果。
此過程對於QPSK調制方式不存在。
9. 物理信道映射
將第7步或第8步的輸出數據組,映射多個HS-PDSCH上。
2.3 HS-DPCCH
HS-DPCCH使用固定擴頻因子,SF=256,調制方式QPSK,每個子幀有3個時隙。那麼每個時隙承載的數據為10bit,共30bit,信道速率為15kbit/s。
HS-DPCCH分為兩部分,第一部分承載HARQ的確認信息ACK/NACK,占用一個時隙;第二部分承載信道質量指示信息CQI,占用兩個時隙,見下圖。
對於ACK/NACK部分來說,1代表ACK,0代表NACK,這個bit信息重復10 次,然後放在第一個時隙。
對於CQI信息,HSDPA使用0~30的整數來指示信道質量,這個整數信息首先映射為5bit的二進制序列,然後再通過一個(20,5)編碼序列,獲得一個20bit的輸出序列,映射到第2、3個時隙。
網絡可以根據需要設置UE發送CQI的時間間隔,這個間隔可以是2ms或更大,即HS-DPCCH的有些時隙可以不發送HARQ-ACK和CQI,HS-DPCCH可以是不連續的突發信道。
HS-DPCCH的擴頻和加擾是可以與上行的其他信道一起進行的,比如DPDCH和DPCCH。
2.4 HSDPA各個物理信道的定時關系
如下圖,HS-SCCH在時間上與P-CCPCH對齊,HS-PDSCH滯後HS-SCCH2個時隙,HS-DPCCH滯後相應的HS-PDSCH7.5個時隙。
從上圖可以看出,網絡側數據重傳的最小時間間隔可以大約計算如下:
2TS+傳輸時延+3TS+7.5TS+傳輸時延+3TS= 15.5TS+ 2×傳輸時延
即,網絡將HS-PDSCH無線幀0解碼後的時刻大約比HS-DSCH滯後約15.5個時隙。因為HS-SCCH和HS-PDSCH無線幀長度都是3個時隙,發送時需要幀對齊發送,所以HS-SCCH和HS-PDSCH的重傳無線幀最早需要在18個時隙後發生,即12ms。
2.5 UE的HSDPA能力
UE的具體能力表,參見25.306,Table5.1a。根據UE能力不同,使用HSDPA信道可以獲得0.9~14.4Mbit/s的峰值數率。
2.6 HSDPA相關物理信道的功率控制
HS-PDSCH沒有閉環功控,當UE在某個TTI被調度數據時,則其所分配的HS-PDSCH(s)物理信道所使用的功率等於MPO(Measure Power Offset)。
HS-SCCH執行閉環功控:因為HS-SCCH POWER OFFSET是基於伴隨DPCH的PILOT域的, DPCH做閉環功控。
HS-DPCCH的功率是受Bhs(Beta ratio hs)所控制,Bhs是相對於DPCCH的,因DPCCH做閉環功控, 因此HS-DPCCH也做閉環功控。HS-DPCCH的功率位准是以相對於上行DPCCH的偏移量來產生的,
bhs的值是由HARQ-ACK和CQI欄位的功率偏移量推導出來的,且是透過較高層來進行信令控制。
一、 MonkeyRunner簡介monkeyrunner也是一款安卓sdk自有的測試工具,開源,位於\sdk\tools下面,它主要做性能測試,回歸測試,並且可以自定義
概述本篇博文主要介紹的是Android中的Java服務。這部分服務大部分都有一個Manager類,其實就是一個RPC調用,用戶通過調用xxxManager的方法,實際上被
Android跨進程通信的功能,下面就讓我們具體地學習一下。在上篇文章中我們知道了,Service其實是運行在主線程裡的,如果直接在Service中處理一些耗時的邏輯,就
1、繼承TabActivity package com.example.yqqmobilesafe; import android.app.TabActivity; i