当前位置:网站首页>UCI and data multiplexing are transmitted on Pusch - Part I
UCI and data multiplexing are transmitted on Pusch - Part I
2022-07-03 09:39:00 【Communication pawn】
One . total
UCI Include harq-ack,csi,sr. these uci Information can be obtained through PUCCH transmission , It can also be done through pusch transmission ( There is a question about this ,sr Is in the pusch Before dispatching ,ue Need to send sr, But when sr When the dispatching base station cannot receive , By re connecting , then msg3 Carry the bsr Instead of , normal sr It can't go through pusch Sent , This is to be determined .),csi Pass periodically pucch transmission , Aperiodic passage pusch transmission , Semi persistent line passing PUCCH perhaps dci Activation of pusch.CSI The report consists of two parts :CSI port1 and CSI port2.CSI port1 There is a fixed load , Used to identify CSI port2 Number of information bits ,CSI port1 Must be in CSI port2 Complete transmission before transmission .CSI and harq-ack Can be in PUSCH Upper transmission can be multiplexed with data , It can also be transmitted separately ( This scene I understand is PUCCH There are not enough resources on , To be determined ). This time, there is UC_SCH Data reuse .
Case description
The introduction strategy of this article is based on matlab The built-in use case introduces the Protocol , Sort out the agreement , I wrote it myself directly , But on the company computer , Don't rewrite , Use the example of thread to sort . Because it will be empty to sort out the agreement directly , So it's better to sort out the agreement by case , This is my way of learning . This case ack =1 ,csi1=10,csi2=10, Choosing the example of comparative envoys can better introduce , Of course, the agreement introduced later is not just ; Count this case , Other information will also be introduced .
## Cell parameters entered in the use case
Inside NSizeGrid It refers to the community prb Count , This parameter is determined by two factors , Bandwidth and subcarrier spacing , bandwidth /( Subcarrier spacing 12)= 10M/(15K12)=55, Reserve a part on both sides, that is 52 了 ,
## Use case input ue Level parameter
tcr Is the target bit rate
1. According to the data a The length of A Calculation ,crc The length of , And then calculate crc Put it in the data Back , become b
2.graph The choice is 1 still 2, Later, you need to use .
The calculation process :
if A <= 292 || (A <= 3824 && R <= 0.67) || R <= 0.25
bgn = 2;
else
bgn = 1;
end
% Get transport block size after CRC attachment according to 38.212
% 6.2.1 and 7.2.1, and assign CRC polynomial to CRC field of output
% structure info
if A > 3824
L = 24;
info.CRC = '24A';
else
L = 16;
info.CRC = '16';
end
% Get the length of transport block after CRC attachment
B = A + L;
3., First calculate for each cb Size of the block data allocation container ,B‘=B+C*L , Then find out K’=B’/C,
Find another Zc The multiple is greater than the nearest K As the size of the container , Put the data b, according to K Put it into cr, Every cr Add your own crc, From here on, the following are based on each cb Block handled by itself .
% Get the maximum code block size
if bgn == 1 % This means graph
Kcb = 8448; % This refers to every cb The size of the block
else
Kcb = 3840;
end
% Get number of code blocks and length of CB-CRC coded block
if B <= Kcb
L = 0;
C = 1;
Bd = B;
else
L = 24; % Length of the CRC bits attached to each code block
C = ceil(B/(Kcb-L)); % This is divided into how many cb block
Bd = B+C*L;
end
% Obtain the number of bits per code block (excluding CB-CRC bits)
cbz = ceil(B/C);% This is exclusion crc Every cb The inclusion of the block bit The amount of
% Get number of bits in each code block (excluding filler bits)
Kd = ceil(Bd/C);% This is each cb Blocks exclude padding bit, contain crc Of bit Count
% Find the minimum value of Z in all sets of lifting sizes in 38.212
% Table 5.3.2-1, denoted as Zc, such that Kb*Zc>=Kd
if bgn == 1
Kb = 22;
else
if B > 640
Kb = 10;
elseif B > 560
Kb = 9;
elseif B > 192
Kb = 8;
else
Kb = 6;
end
end
Zlist = [2:16 18:2:32 36:4:64 72:8:128 144:16:256 288:32:384];
Zc = min(Zlist(Kb*Zlist >= Kd));% To calculate the ZC
% Get number of bits (including <NULL> filler bits) to be input to the LDPC
% encoder
if bgn == 1
K = 22*Zc; % Why must this be Zc Multiple , This is a problem ?
else
K = 10*Zc;
end
4. Get including padding bit Count bit Count
% Get number of bits (including filler bits) to be encoded by LDPC
% encoder
if bgInfo.BGN == 1
N = 66*cbInfo.Zc;
else
N = 50*cbInfo.Zc;
end
5. Calculation UCI and data Location and size that can be placed
according to type type , Select the table below , Yes type-1 Come on ,dmrs The location of
How to arrange the specific position ?
Calculation UCI Can be placed bit Subcarriers , Calculate the subcarrier position that the array can place
UCI It can only be done in the non dmr Put on the symbol , Data can be placed on data symbols , It can also be placed where there is no pilot station on the pilot symbol .
% Calculate bit capacity of PUSCH (excluding DM-RS and PT-RS)
E = sum(rinfo.MULSCH);
G = nlqm*E;
% Get the number of resource elements available for UCI transmission on
% PUSCH from l_0
if ~isempty(l0)
s2 = sum(rinfo.MUCI(l0(1):end)); %s2 Means uci Where you can put it
else
s2 = 0;
end
边栏推荐
- Flink learning notes (IX) status programming
- Convert IP address to int
- NR technology -- MIMO
- Detailed steps of windows installation redis
- 1922. Count Good Numbers
- Long类型的相等判断
- Shell logic case
- numpy. Reshape() and resize() functions
- Design and development of biological instruments
- Jestson Nano 从tftp服务器下载更新kernel和dtb
猜你喜欢
Design and development of biological instruments
Flink learning notes (XI) table API and SQL
Learning C language from scratch -- installation and configuration of 01 MinGW
Flink学习笔记(十一)Table API 和 SQL
顺利毕业[3]-博客系统 更新中。。。
Apply for domain name binding IP to open port 80 record
Flink CDC practice (including practical steps and screenshots)
Hudi integrated spark data analysis example (including code flow and test results)
Hudi data management and storage overview
Detailed steps of windows installation redis
随机推荐
顺利毕业[2]-学生健康管理系统 功能开发中。。。
Leetcode daily question (1162. as far from land as possible)
Leetcode daily question (968. binary tree cameras)
Equality judgment of long type
Process communication - semaphore
全球KYC服务商ADVANCE.AI 活体检测产品通过ISO国际安全认证 产品能力再上一新台阶
Hudi learning notes (III) analysis of core concepts
DSP data calculation error
Nodemcu-esp8266 development (vscode+platformio+arduino framework): Part 3 --blinker_ MIOT_ Light (lighting technology app control + Xiaoai classmate control)
Flink-CDC实践(含实操步骤与截图)
WARNING: You are using pip ; however. Later, upgrade PIP failed, modulenotfounderror: no module named 'pip‘
307. Range Sum Query - Mutable
Nodemcu-esp8266 development (vscode+platformio+arduino framework): Part 5 --blinker_ MIOT_ MULTI_ Outside (lighting technology app + Xiaoai classmate control socket multiple jacks)
Run flash demo on ECS
Find all possible recipes from given supplies
Matlab reads hexadecimal numbers and converts them into signed short
LeetCode每日一题(968. Binary Tree Cameras)
Common software open source protocols
Leetcode daily question (2212. maximum points in an archery competition)
The number of weak characters in the game (1996)