5G/NR - Resource Allocation Type  

 

 

 

Resource Allocation Type in a Nutshell
  • Resource Allocation Type indicates a method for resource allocation in frequency domain
  • Three types are supported in NR : Type 0(bitmap), Type 1(start RB,nRB) and Dynamic Swtich
  • Resource Allocation Type is configured in RRC and the resource allocation for specific scheduling for PDSCH/PUSCH is indicated in DCI.
  • In DCI, Resource Allocation  for Type 0 is configured in the form of bitmap and Resource Allocation for Type 1 is configured in RIV

Resource Allocation Type in Detail

Resource Allocation Type indicates a method for resource allocation in frequency domain. Similar concept is used in LTE Resource Allocation as well. So if you are familiar with LTE Resource Allocation Type, you would easily understand the concepts on NR Resource Allocation Type.

What kind of resource allocation types are supported ?

NR Resource Allocation Type is specified in the following specification.

  • Downlink : 38.214 - 5.1.2.2 Resource allocation in frequency domain
  • Uplink : 38.214 - 6.1.2.2 Resource allocation in frequency domain

Resource Allocation Type specifies the way in which the scheduler allocate resource blocks for each transmission. Just in terms of flexibility, the way to give the maximum flexibility of resource block allocation would be to use a string of a bit map (bit stream), each bit of which represent each resource block. This way you would achieve the maximum flexibility, but it would create too much complication of resource allocation process or too much data (too long bit map) to allocate the resources.

As mentioned above, LTE also use similar concept. Following table shows the comparision of NR and LTE Resource Allocation Type.

NR Resource Allocation Type

LTE Resource Allocation Type

Allocation Method

Type 0

Type 0

Bitmap

N/A

Type 1

Bitmap

Type 1

Type 2

Start RB and Number of RB

Dynamic Switch

  Set As per DCI field

How to determine Resource Allocation Type ?

According to 38.214 - 5.1.2.2, the Resource Allocation Type is determined implcitely by DCI format or by RRC layer message as described below.

  •   The UE may assume that when the scheduling grant is received with DCI format 1_0 downlink resource allocation type 1 is used.
  •   If the scheduling DCI is configured to indicated the downlink resource allocation type as part of the Frequency-domainPDSCHresource field, the UE shall use downlink resource allocation type 0 or type 1 as defined by this field. Otherwise the UE shall use the downlink frequency resource allocation type as defined by the RRC configured parameter Resource-allocation-config for PDSCH.

Allocation Type 0

In this type, we bundle multiple number of consecutive RBs into RBG(Resource Block Group) and allocate PDSCH / PUSCH only in the multiples of RBG. The number of RBs within a RBS varies depending on Bandwidth Part Size and Configuration as shown in the following table. The configuration type is determined by rbg-size field in PDSCH-Config in a RRC message. We specify the bitmap in DCI indicating the RBG number that carries PDSCH or PUSCH data. Since this is the bitmap, it is not required for the RBGs to be consecutive.

<  38.214 - Table 5.1.2.2.1-1: Nominal RBG size P, Table 6.1.2.2.1-1: Nominal RBG size P >

Bandwidth Part Size

Configuration 1

Configuration 2

1 36

2

4

37 72

4

8

73 144

8

16

145 275

16

16

 

Bandwidth Size
(1-36)

Bandwidth Size
(37-72)

Bandwidth Size
(73-144)

Bandwidth Size
(145-275)

PRB #

Config 1

Config 2

Config 1

Config 2

Config 1

Config 2

Config 1

Config 2

0

RBG 00

RBG 00

RBG 00

RBG 00

RBG 00

RGB 00

RGB 00

RGB 00

1

2

RBG 01

3

4

RBG 02

RBG 01

RBG 01

5

6

RBG 03

7

8

RBG 04

RBG 02

RBG 02

RBG 01

RBG 01

9

10

RBG 05

11

12

RBG 06

RBG 03

RBG 03

13

14

RBG 07

15

16

RBG 08

RBG 04

RBG 04

RBG 02

RBG 02

RGB 01

RGB 01

RGB 01

17

18

RBG 09

19

20

RBG 10

RBG 05

RBG 05

21

22

RBG 11

23

24

RBG 12

RBG 06

RBG 06

RBG 03

RBG 03

25

26

RBG 13

27

28

RBG 14

RBG 07

RBG 07

29

30

RBG 15

31

32

RBG 16

RBG 08

RBG 08

RBG 04

RBG 04

RGB 02

RGB 02

RGB 02

33

34

RBG 17

35

36

RBG 09

37

38

39

40

RBG 10

RBG 05

RBG 05

41

42

43

44

RBG 11

45

46

47

48

RBG 12

RBG 06

RBG 06

RGB 03

RGB 03

RGB 03

49

50

51

52

RBG 13

53

54

55

56

RBG 14

RBG 07

RBG 07

57

58

59

60

RBG 15

61

62

63

64

RBG 16

RBG 08

RBG 08

RGB 04

RGB 04

RGB 04

65

66

67

68

RBG 17

69

70

71

72

RBG 09

73

74

75

76

77

78

79

80

RBG 10

RGB 05

RGB 05

RGB 05

81

82

83

84

85

86

87

88

RBG 11

89

90

91

92

93

94

95

96

RBG 12

RGB 06

RGB 06

RGB 06

97

98

99

100

101

102

103

104

RBG 13

105

106

107

108

109

110

111

112

RBG 14

RGB 07

RGB 07

RGB 07

113

114

115

116

117

118

119

120

RBG 15

121

122

123

124

125

126

127

128

RBG 16

RGB 08

RGB 08

RGB 08

129

130

131

132

133

134

135

136

RBG 17

137

138

139

140

141

142

143

144

RGB 09

RGB 09

145

146

147

148

149

150

151

152

153

154

155

156

157

158

159

160

RGB 10

RGB 10

161

162

163

164

165

166

167

168

169

170

171

172

173

174

175

176

RGB 11

RGB 11

177

178

179

180

181

182

183

184

185

186

187

188

189

190

191

192

RGB 12

RGB 12

193

194

195

196

197

198

199

200

201

202

203

204

205

206

207

208

RGB 13

RGB 13

209

210

211

212

213

214

215

216

217

218

219

220

221

222

223

224

RGB 14

RGB 14

225

226

227

228

229

230

231

232

233

234

235

236

237

238

239

240

RGB 15

RGB 15

241

242

243

244

245

246

247

248

249

250

251

252

253

254

255

256

RGB 16

RGB 16

257

258

259

260

261

262

263

264

265

266

267

268

269

270

271

272

RBG 17

RBG 17

273

274

Allocation Type 1

In this type, the resource is allocated to one or more consecutive RBs. The resource allocation area is defined by two parameters RB_Start and Number of Consecutive RBs within a specific BWP(BandWidth Part). When the resource allocation is specified in DCI, RB_Start and Number of Consecutive RBs within the BWP is combined into a specific single value called RIV(Resource Indicator Value).

When the resource allocation for type 1 is configured in DCI, it is specified as a specific number called RIV. RIV is a number to specify PDSCH or PUSCH resource allocation. In more intuitive form,  we normally use two values (i.e, Number of RBs and Start RB) for the resource allocation. But with RIV, we can represent Number of RBs and Start RB in a single value. It would have some advantage in terms of number of bits to carry the information.. but it causes some confusion for us to convert RIV into Number of RBs and Start RB

The RIV is calculated in following formula.

< Downlink >

< Uplink >

NOTE : For easy conversion between RIV and RB, check out this site.

Dynamic Switch

Whether to use Type 0 or Type 1 is determined by DCI at the time of each transmission.

In 38.214-5.1.2.2, it is stated as follows.

    If the scheduling DCI is configured to indicate the downlink resource allocation type as part of the Frequency domain resource assignment field by setting a higher layer parameter resourceAllocation in pdsch-Config to 'dynamicswitch', the UE shall use downlink resource allocation type 0 or type 1 as defined by this DCI field. Otherwise the UE shall use the downlink frequency resource allocation type as defined by the higher layer parameter resourceAllocation.

In 38.212-7.3.1.2.2, it is stated as follows.

    If both resource allocation type 0 and 1 are configured, the MSB bit is used to indicate resource allocation type 0 or resource allocation type 1, where the bit value of 0 indicates resource allocation type 0 and the bit value of 1 indicates resource allocation type 1.

Reference

[1]