Hãy nhớ là: có bao nhiêu khối mã hình thành sau quá trình phân đoạn C thì có tương ứng bấy nhiêu khối mã hóa turbo code riêng cho từng cái một.
27
Hình 3.16 – Bảng tham số cho bộ interleaver trong bộ Turbo code
Contention-free interleaver
Quadratic permutation polynomial (QPP) interleaver Almost regular permutation interleaver
3.2.5 Rate matching (phối hợp tốc độ):
Rate matching bao gồm quá trình interleaving cho 3 đường dữ liệu chạy từ
bộ tubor code và bộ convolution code. Ý nghĩa của việc interleaving là làm xáo chộn các bit theo một quy luật riêng, để tránh sảy ra hiện tượng lỗi bit theo cụm.
Trong truyền phát dữ liệu số trên các kênh truyền thì hiện tượng lỗi bit theo cụm sảy ra nhiều hơn là hiện tượng lỗi bit đơn, vì thể đơi khi lỗi bit theo cụm mà vượt quá khả năng của mã kiểm tra thì việc sửa lỗi là gần như khơng thể, vì thể mà người ta phải interleaving data (xáo trộn dữ liệu) trươc khi lên kênh truyền đi để khi sang bên nhận họ de-interleaving data (giải trộn dữ liệu) để tránh hiện tượng lỗi cụm.
Mục tiêu của bộ rate matching là đạt được chuỗi bit đầu ra có tốc độ như
28
thu thập (collection) để tạo ra bộ đệm vịng (circular buffer), sau đó qua bộ lựa chọn (selection) hay cắt gọt (pruning) để ta thu lại chuỗi bit có tốc độ như mong muốn.
a. Rate matching cho bộ mã tubor trên các kênh vận chuyển:
Hình 3.17 – Sơ đồ khối một bộ Rate matching
Ta thấy ở đây có hai bộ thu thập và lựa chọn bit, mục đích tạo ra bộ đệm vịng (circular buffer) từ 3 chùm bit đã được mã hóa, interleaved và intelaced từ các khối mã ở trên, chúng ta có thể xem hình minh họa bên dưới:
Hình 3.18 – Minh họa khối bit sau khi được thu thập và lựa chọn
b. Cho bộ mã chập (For tail-biting convolution code):
Trellis termination: Trellis bị giới hạn bằng cách thêm các bit 0 vào sau chuỗi
đầu vào. Vì thế cho nên, trellis termination được hiểu đơn giản là đưa các bộ mã chập thông thường (conventional convolutional encoder) về trạng thái tất cả bằng 0. Có
nghĩa là trong trellis termination trạng thái bắt đầu và trạng thái kết thúc của thanh ghi dịch đều được xác định trước vì thế mà nó có các ưu điểm sau:
29
Và không gây tác động vào lỗi vào bộ convolution code.
Tuy nhiên nó có hai nhược điểm như sau:
Các bits thêm phải được phát đi dẫn đến giảm tốc độ bộ mã.
Nếu có N bit trong một gói thì cần phát đi (N+Z)/R bit, Z là chiều dài thanh ghi
dịch, và R là tốc độ bộ mã. Gây trễ thời gian và ảnh hưởng tỉ số E0/Nb.
Trong khi đó cơng nghệ tail-biting giúp khắc phục vượt qua vấn đề về việc phải phát thêm các bit phụ trong trellis termanation. Các ưu điểm của công nghệ này:
Không ảnh hưởng đên tốc độ bộ mã (N/R)
Khơng ảnh hưởng tới thuộc tính sửa lỗi của bộ mã chập.
Một cách đơn giản để loại bỏ các tail bits trong bộ mã chập là ta xoá bỏ chúng
sau khi đã mã hố các bit thơng tin, điều này dễ làm nhưng sẽ gây giảm hiệu năng phát và làm phức tạp hơn cho thiết kế bộ mã.
3.2.6 Circular-buffer rate matching for turbo code:
Một asynchromous hybrid ARQ được dùng cho cả hai quá trình truyền phát
downlink và uplink, trong q trình truyền lại thì điều chế, vị trí nguồn (resource) là các yếu tố có thể bị thay đổi dẫn đến là số bít phát lại có thể khác so với lần phát đầu, vì thế mà, trong trường hợp của bộ mã tubor code các bits hệ thống phải được phát đi từ lần đầu tiên, vì hiệu năng bộ mã tubor code rất nhạy với các bit hệ thống. Điều này yêu cầu một giản đồ rate matching mềm dẻo hơn. Để giải quyết vấn đề này, một bộ đệm vòng a circular-buffer-based rate-matching scheme được dùng cho LTE system, từ bộ tubor code có ba chùm bit đầu ra (chùm bit hệ thống , và hai chùm bit chẵn lẻ (parity)), ba chùm này được đưa vào ba bộ interleaver , trước khi interlacing hai chùm parity sau đó đi vào bộ đệm vịng như hình bên dưới. Mỗi một lần phát sẽ đọc các bit từ bộ đệm tại một vị trí lệch nào đó, và tăng dần chỉ số bit, khi chỉ số đó tăng đến cực đại thì nó lại set về giá trị đầu tiên, hay nói cách khác là bộ đệm quay vòng.
c. Subblock interleaving:
Chuỗi đầu vào của các bộ subblock interleaver là 3 chuỗi bit đi ra từ bộ tubor code, ở đây gọi D là số bit của chuỗi đầu ra, D= K+4; lưu ý là do thanh ghi dịch sử dụng trong bộ tubor code hay bộ tail-biting convolution code là 4 ô nhớ lên vì thế khi
30
ta trellis termination mỗi chùm bit này sẽ xuất hiện thêm 4 bit phụ zero như đã đề cập ở phần trên dẫn đến D = K + 4;
Chúng ta biết rằng theo như khuyến cáo của 3GPP thì các bộ interleaver sẽ ghi dữ liệu vào trong các ma trận có kích thước cột cố định là C = 32;
Hình 3.19 – Mơ hình bộ đệm vịng cho mã tubor
Và kích thước cột được tính dựa trên tìm ra số nguyên R min thoả mãn :
RxC >D; nếu trường hợp các bit đầu vào không được điền đầy vào ma trận thì chúng ta trèn thêm các bit phụ cho đầy ma trận sau đo mới truyền đi. (trước khi truyền ma trận được hoán vị các cột cho nhau mục tiêu để xáo trộn các bit từ chuỗi ban đầu).
d. Subblock interlacing :
Hiển nhiên là chiều dài bộ đệm vịng khi đó là: Komega = 3Kpi. (Kpi là số bit ra từ các bộ interleaver ). Hai chuỗi bit parity phải được interlacing còn chuỗi bit hệ thống thì khơng được vì lí do các bit hệ thống phải được phát đi trong lần phát đáp HARQ đầu tiên như đã nói ở phần trên. (xem trên hình) và quá trình interlacing đảm bảo là các số lượng bit của hai chuỗi parity đươc phát đi như nhau.
31
Tương tự như với bộ tubor code , bộ đệm vòng cho convolution code cũng tương tự, nhưng khác một điều là, quá trình convolution code thì khơng phát sinh ra chùm bit hệ thống mà là 3 chùm bit tương đương 3 chùm bit của bộ mã tubor code nhưng vai trị thì như nhau, và khơng có q trình interlacing .
Hình 3.20 – Mơ hình bộ đệm vịng cho mã chập
e. Code block concatenation :
Bộ concatenation chỉ cần dùng khi số khối mã lớn hơn 1 và áp dụng cho trường hợp bộ tubor code. Lưu ý là, code block concatenation mục tiêu ghép tuần tự các đầu ra cho các khối mã khác nhau thành một chuỗi.
3.3 Kênh vật lí
Hình 3.21 – Sơ đồ khối kênh vật lí
32
Cho mỗi từ mã q, có Mbit(q) bit được phát trong từ mã q trên kênh PUSCH trong một khung con, sẽ được xáo trộn với chuỗi xáo trộn UE riêng trước quá trình điều chế, đưa ra một chuỗi tương xứng được xáo trộn theo chuỗi giả ngẫu nhiên như sau:
Hình 3.22 – Bộ xáo trộn
Giải thích thêm về bộ xáo trộn:
Bitwise được hiểu đơn giàn là một loại phép toán, các phép toán như logic như:
AND, OR, NOT … là bitwise . Các từ mã (codeword) được nhân Bitwise (XOR) với một chuỗi trực giao và một chuỗi cơ bản được xáo trộn đặc biệt để tạo ra một chuỗi các kí tự cho từ mã.
.
Chuỗi xáo trộn là một chuỗi giả ngẫu nhiên, được tạo ra từ một bộ sinh chuỗi GOLD chiều dài 31, ngay thời điểm bắt đầu của mỗi khung con sẽ được khởi tạo thông qua các tham số:
Số khe trong bộ định thời mạng vơ tuyến có liên quan tới q trình phát của kênh PDSCH : nRNT1
Mã cell: NIDcell
Số khe trong khung vô tuyến : ns
Và chỉ số từ mã q = {0,1}, nếu phát 1 từ mã cho một khung con thì q =0.
Xáo trộn với một chuỗi đặc biệt của các cell phục vụ mục đích loại bỏ đan xen các cell với nhau, khi một UE nhận được một chuỗi bit đã được xáo trộn với một chuỗi đặc biệt cho riêng cell đã biết thì ảnh hưởng từ các cell lân cận sau khi được giải trộn sau đó sẽ chỉ như các nhiễu không tương quan. Các chuỗi mã giả ngẫu nhiên được sinh ra bằng cách sử dụng các thanh ghi dịch phản hồi tuyến tính.
33
Hình 3.23 – Bộ điều chế
Điều chế là q trình biến đổi chùm bit tín hiệu từ sau khối scrambler thành khối các kí tự mang giá trị phức được kí hiệu là:
.
Bảng dưới minh họa các phương pháp điều chế thích hợp với kênh chia sẻ đường lên (physical uplink shared channel).
Bảng 3.1 – Khuyến cáo 3GPP về mã hóa sử dụng cho kênh PUSCH
Điều này làm tăng tính linh hoạt cho việc truyền phát dữ liệu trên các điều kiện kênh truyền sao cho dữ liệu phát đi đạt kích thước tối đa.
3.3.3 Modulation mapper:
Các phương pháp điều chế lấy đầu vào là các bit nhị phân 0,1 đầu ra là các kí tự phức, như là: x = I + jQ. Các giản đồ điều chế dùng cho kênh vật lí : QPSK, 16QAM, 64QAM.
Layer mapper:
Các kí tự điều chế mang giá trị phức của mỗi từ mã để phát đi được ánh xạ lên 1 hoặc
2 lớp, các kí tự điều chế mang giá trị phức của từ mã q sẽ được sẽ được ánh xạ lên các lớp
ở đây v là số lớp và là số kí tự trên 1 lớp.
a. Ánh xạ lớp cho quá trình phát trên một port đơn anten:
Chỉ đơn giản là chúng ta sẽ ánh xạ 1-1:
Với :
34
Ghép kênh theo không gian, ánh xạ lớp được tham khảo theo bảng sau:
Bảng 3.2 – Quy định số lớp và số từ mã tương ứng cho quá trình ánh xạ lớp
Số lớp v ln ít hơn hoặc bằng số port anten P được sử dụng cho quá trình phát của kênh physical uplink shared channel, trong trường hợp một từ mã đơn được ánh xạ lên nhiều lớp thì chỉ phù hợp khi số port anten dùng cho kênh PUSCH là 4 . Như trong bảng trên chúng ta quan sát thấy rằng:
Số kí tự được điều chế của một từ mã q là Msymb (q) trong khi đó số lớp được ánh xạ chỉ là 1 hoặc 2 (hiện tại có thể lên là 4). Từ đó ta thấy rằng:
Nếu số lớp ánh xạ là 1 : thì khơng có gì đáng nói
Nếu số lớp ánh xạ là 2 : thì Msymb layer = Msymb (q) /2 . (Msymb layer số kí tự ánh xạ trên một lớp). Và khi đó các kí tự chẵn được ánh xạ lên lớp 0, các kí tự có chỉ số lẻ được ánh xạ lên lớp 1.
35
Nếu số lớp ánh xạ là 3,4… : Msymb layer = Msymb (q) /3 (4) , khi đó các kí tự được chia đều thành 4 phần theo chỉ số của chúng và được ánh xạ theo trình tự đó lên các lớp tương ứng.
Hình 3.25 – Quá trình ánh xạ cho 1 từ mã và 2 hoặc 4 port anten
Trường hợp chúng ta có hai từ mã thì khi đó:
Hình 3.26 – Quá trình ánh xạ cho 2 từ mã
36
Hình 3.27 – Quá trình ánh xạ cho 2 từ mã và 3 lớp
Hoặc khi phải ánh xạ lên 4 lớp với 2 từ mã:
Hình 3.28 – Quá trình ánh xạ cho 2 từ mã và 4 lớp
3.3.4 Biến đổi trước khi mã hóa (Transform precoding):
Hình 3.29 – Khối tiền mã hóa
Với mỗi lớp λ = 0,1,…, v-1, khối các kí tự phức được
37
kênh truyền PUSCH, hay tương xứng với 1 symbol SC-FDMA – như vậy chúng ta cũng có thể hiểu rộng ra là một lớp sẽ có N từ mã, và được ánh xạ lên sóng mang con ). Biến đổi tiền mã hóa sẽ được thực hiện như sau:
Bản chất chính là một biến đổi Furier rời rạc. (FFT) Kết quả đưa ra một khối các giá trị phức mà kí hiệu là:
Lưu ý là: , trong đó thể hiện băng thơng của
kênh PUSCH , hiểu đơn giản là: số resource block của kênh PUSCH, thỏa mãn điều kiện:
là bộ các số nguyên không âm. (UULRB số RB của đường uplink).
3.3.5 Precoding – Tiền mã hóa:
Chuỗi đầu vào được lấy từ khối chuyển đổi tiền mã hóa là:
được thực hiện Precoding thành
chuỗi sau: sau đó được ánh xạ
lên các resource element .
3.3.5.1 Tiền mã hóa cho q trình phát một cổng:
Quá trình này được định nghĩa như sau: trong đó:
38
Có ba dạng Precoding được khuyến cáo dùng ở đây : Spatial multiplexing, transmit diversity and single antenna port transmission.
Ở dạng Spatial multiplexing có hai giản đồ mã hóa được dùng bao gồm:
Có trễ lớn CDD (Cyclic Delay Diversity) được biết đến như là “open loop spatial multiplexing”.
Không bao gồm trễ lớn CDD được biết đến như là “closed loop spatial multiplexing”.
Hình 3.30 – Quá trình tiền mã hóa phát đa hướng sử dụng CDD
Lưu ý là: ghép lênh không gian “spatial multiplexing” thực hiện như sau:
Trong đó: .
Hiển nhiên là khi thực hiên nhân ma trận thì chúng ta sẽ phải đảm bảo tính đúng cho phương trình , đồng nghĩa với việc: ma trận W có kích thước là pxv.
39
Bảng 3.3 – Bảng quy định codebook cho các lớp tương ứng
Với trường hợp số port anten là P = 4 thì:
40
Bảng 3.5 – Bảng quy định codebook cho các port với v = 2
41
Bảng 3.7 – Bảng quy định codebook cho các port với v = 4
3.3.6 Ánh xạ lên tài nguyên vật lí:
Với mỗi một port anten p được dùng cho quá trình phát của PUSCH trong một
khung con với các symbol mang giá trị phức sẽ được
nhân với hệ số thang đo biên độ βPUSCH để tương thích với cơng suất phát PPUSCH . Chuỗi Z p(i) được ánh xạ thành chuỗi các resource element mà hiện tại không
bị chiếm chỗ bởi các kênh PCFICH, PHICH, PDCCH, PBCH hay các tín hiệu tham chiếu hoặc tín hiệu đồng bộ, số resource element ánh xạ được điều khiển bởi số resource block mà được xác định trong kênh PUSCH , số kí tự ánh xạ tăng dần theo chỉ số sóng mang và được ánh xạ lên tất cả các resource element sẵn có trong các
resource block cho mỗi kí tự OFDM như hình sau:
Hình 3.30 – Minh họa quá trình ánh xạ lên lưới tài nguyên Chi tiết cụ thể hơn tham khảo tại [7] Chi tiết cụ thể hơn tham khảo tại [7]
3.4 Thủ tục cho các kênh truyền
42
Cell search ( dị tìm cell)
Power control (điều khiển công suất)
Uplink synchronisation and Uplink timing control (đồng bộ đường lên và điều khiển thời gian đường lên)
Random access related procedures (thủ tục liên quan đến truy cập ngẫu nhiên)
HARQ related procedures (thủ tục HARQ)
Relay related procedures (thủ tục chuyển tiếp)
43
CHƯƠNG 4: THÔNG SỐ KĨ THUẬT CHO TỪNG KÊNH TRUYỀN LỚP VẬT LÍ
Chương này sẽ trình bày các thông số chi tiết cho từng khối chức năng trên mơ hình các kênh vật lí và kênh vận chuyển, chi tiết cho trên từng kênh truyền, chức năng và vai trò của mỗi kênh ra sao.
4.1 Uplink:
4.1.1 Kênh vận chuyển: 4.1.1.1 Kênh UCI
UCI – uplink control information, hiểu là thông tin điều khiển đường lên. Nó được mang bởi kênh PUSCH hay PUCCH. Nó tương tự với kênh vận chuyển DCI được mang bởi PDCCH. [6]
Có 3 loại thơng tin chính được mang bởi UCI như sau:
SR - Scheduling Request (yêu cầu lập kế hoạch)
HARQ ACK/NACK
CQI
UE phát một thông tin bao gồm 3 thơng tin kia phụ thuộc vào từng hồn cảnh. Đơi khi nó chỉ mang SR, hay đơi khi nó chỉ mang SR và HARQ ACK/NACK cùng nhau. Có hai kênh có thể mang UCI là PUCCH và PUSCH. Đôi khi PUCCH mang UCI và đôi khi PUSCH mang nó. Vậy thì khi nào PUSCH mang nó và khi nào PUCCH mang nó?
Theo quy chuẩn của 3GPP, UCI trong khung con thứ n sẽ được phát đi :
Trên kênh PUCCH sử dụng định dạng 1/1a/1b hay 2/2a/2b nếu UE không phát