LTE 有关HARQ
1 PDCCH和PDSCH在一個時隙中占用不同的OFDM symbol,前面一個 1~3個OFDM是控制域,用于存放PBCH、PHICH、PCFICH和PDCCH,前面的是PDSCH;
2 接收端確定PDCCH位置的過程為:首先接收位置固定的PBCH,獲得PHICH的格式和占用情況;接著收取位置固定的PCFICH,獲得PDCCH在一個子幀中的OFDM數目;最后在控制域中剔除PCFICH和PHICH,獲得PDCCH的起點;知道了起點和OFDM symbol數目,PDCCH就可以正確接收了,而PDSCH 屬于數據域,位置可以認為是固定的。
上報方法要在上行控制信息 UCI 里面找。
ACK/NACK 反饋模式要在PUCCH的反饋過程中有描述。大概思路:
1 首先根據高層配置選擇綁定模式還是復用模式
2 如果是綁定,則綁定范圍內多個子幀的同一個codeword的CRC結果相與,得到和codeword數目相同的bit,每一個對應一個 codeword的綁定 ACK/NACK消息,根據比特數目為 1 或者 2 分別選擇 1a 或者 1b。
3 如果是復用模式,則每個子幀內可能的 codeword的CRC校驗結果相與,得到一個 bit的ACK消息,然后再根據復用范圍內每個子幀的ACK消息,然后再根據復用范圍內每個子幀的 ACK消息,查表獲得最終的上報比特。
HARQ重傳
HARQ重傳是一種結合FEC(FORWARD error correction )與ARQ(automatic repeat request、)的技術。
harq buffer 是指收集到的錯誤信息放到一個buffer池里面。
重傳的coded bit集合稱為冗余版本(redundancy version RV)。
在fec無法糾正的錯誤出現時,接收端根據crc效驗碼對比,確定是否反饋NACK,若接收到了nack,則會重發數據。在增量冗余方式中,每次重傳并不需要與初始傳輸相同,而會把初始版本分成多個coded 比特的集合,每個集合都攜帶相同的信息,當需要重傳時,則會傳輸與前一次不同的額coded bit集合,接收端會把重傳的數據與前一次進行軟合并。
從上圖可以看出,經過turbo編碼后一個重傳版本會生成包含所有信息的systematic bits ,和多個parity bits,若收到的反饋是dtx,則重傳 systematic bits,若收到的為nack,則重傳額外的parity bits。
在lte中,下行采用異步,自適應harq,上行采用同步harq,但重傳可以自適應,也可以非自適應。
HARQ中的冗余版本如何控制 Rate Matching中數據比特選擇和修剪的?
1 首先看看算法怎么求每個 RV 的吧,主要有幾個參數:G、Nsoft、Ncb、NIRN_{IR}NIR?、E
(1) 先說說G吧。G是信道資源,也就是傳輸數據可用的RB資源,說白了就是總的信道資源減去同步信號、參考信號等占用的信道資源,為了最大程度利用信道資源我們當然要把可用的信道都占用,那么G也就成了我們可以傳輸的數據最大比特數。那么E又是怎么呢回事呢?為什么速率匹配后根據 E的個數來傳送數據呢?雖然我們希望盡可能在有效信道資源傳輸盡可能多的數據,但接收端、發射端緩存、數據處理速度、信道狀況等限制了我們能傳送的數據個數。比如我要傳送 1288bit 數,但是終端只能處理 1208 bit,那么有 1288-1208 bit數會被打掉,這就是速率匹配。
(2)NIRN_{IR}NIR?
NIR=floor(UE.Nsoft/(KMIMO?min(LTEparams.HARQprocess,Mlimit)))N_{IR} = floor(UE.N_{soft}/(K_{MIMO}*min(LTE_{params}.HARQ_{process},M_{limit})))NIR?=floor(UE.Nsoft?/(KMIMO??min(LTEparams?.HARQprocess?,Mlimit?)))
其中NsoftN_{soft}Nsoft? 代表UE能夠處理的數據最大緩存,KMIMOK_{MIMO}KMIMO? 是由天線個數決定的參數可為 1 或 2
MlimitM_{limit}Mlimit? 指HARQ最大進程數 8 。HARQ進程數可配置為 8 或 7 或其他數,我們取這兩者的最小數表明 UE的一個 HARQ進程的緩存大小。 所以 NIRN_{IR}NIR?表示UE能處理的單個HARQ進程數據比特數。
(3)NcbN_{cb}Ncb?
Ncb=floor(NIR/C)<=Kw?floor(NIR/C):KwN_{cb} = floor(N_{IR}/C)<=K_w ?floor(N_{IR}/C):K_wNcb?=floor(NIR?/C)<=Kw??floor(NIR?/C):Kw?
其中KwK_wKw?即 Circular Buffer,它等于發送數據的總長度,這個長度由G來決定。
其中 C 為碼塊的數量。
即NcbN_{cb}Ncb? 就是從UE能處理的數據數和發送資源允許發送的數據數中選較小的那個
(4)E,即速率匹配后輸出的長度
E的計算
// G’ — number of symbols sent per layer
// G — 一個傳輸塊的總的可用比特數
G’ = G / NL?QmN_L * Q_mNL??Qm?
// 其中 QmQ_mQm? 在調制方式為 QPSK、16QAM、64QAM時取值分別為 2、4、6
// 當傳輸塊映射到單層傳輸層的時候, NLN_LNL? 為1
// 當傳輸塊映射到 2 或 4 層傳輸層的時候, NLN_LNL? 為2
γ=G′modC\gamma=G' mod Cγ=G′modC
if r<=C?γ?1r < = C - \gamma - 1r<=C?γ?1{
E=NL?Qm?floor(G′/C)E = N_L * Q_m * floor(G'/C)E=NL??Qm??floor(G′/C) }
else{
E=NL?Qm?ceil(G′/C)E = N_L * Q_m * ceil(G'/C)E=NL??Qm??ceil(G′/C)}
參考鏈接:
https://www.docin.com/p-1134591557.html
速率匹配 https://www.renrendoc.com/paper/103257230.html
https://www.cnblogs.com/lmpsoftware/p/8194459.html
總結
以上是生活随笔為你收集整理的LTE 有关HARQ的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: HARQ技术
- 下一篇: LTE中的TB/codeword/lay