TBConfig#

class sionna.phy.nr.TBConfig(**kwargs)[source]#

Bases: sionna.phy.nr.config.Config

Sets parameters related to the transport block encoding, as described in TS 38.214 [3GPPTS38214].

All configurable properties can be provided as keyword arguments during initialization or changed later.

The TBConfig is configured by selecting the modulation and coding scheme (MCS) tables and index.

Examples

from sionna.phy.nr import TBConfig

tb_config = TBConfig(mcs_index=13)
tb_config.mcs_table = 3
tb_config.channel_type = "PUSCH"
tb_config.show()

The following tables provide an overview of the corresponding coderates and modulation orders.

Table 1 MCS Index Table 1 (Table 5.1.3.1-1 in [3GPPTS38214])#
MCS Index
\(I_{MCS}\)
Modulation Order
\(Q_m\)
Target Coderate
\(R\times[1024]\)
Spectral Efficiency

0

2

120

0.2344

1

2

157

0.3066

2

2

193

0.3770

3

2

251

0.4902

4

2

308

0.6016

5

2

379

0.7402

6

2

449

0.8770

7

2

526

1.0273

8

2

602

1.1758

9

2

679

1.3262

10

4

340

1.3281

11

4

378

1.4766

12

4

434

1.6953

13

4

490

1.9141

14

4

553

2.1602

15

4

616

2.4063

16

4

658

2.5703

17

6

438

2.5664

18

6

466

2.7305

19

6

517

3.0293

20

6

567

3.3223

21

6

616

3.6094

22

6

666

3.9023

23

6

719

4.2129

24

6

772

4.5234

25

6

822

4.8164

26

6

873

5.1152

27

6

910

5.3320

28

6

948

5.5547

Table 2 MCS Index Table 2 (Table 5.1.3.1-2 in [3GPPTS38214])#
MCS Index
\(I_{MCS}\)
Modulation Order
\(Q_m\)
Target Coderate
\(R\times[1024]\)
Spectral Efficiency

0

2

120

0.2344

1

2

193

0.3770

2

2

308

0.6016

3

2

449

0.8770

4

2

602

1.1758

5

4

378

1.4766

6

4

434

1.6953

7

4

490

1.9141

8

4

553

2.1602

9

4

616

2.4063

10

4

658

2.5703

11

6

466

2.7305

12

6

517

3.0293

13

6

567

3.3223

14

6

616

3.6094

15

6

666

3.9023

16

6

719

4.2129

17

6

772

4.5234

18

6

822

4.8164

19

6

873

5.1152

20

8

682.5

5.3320

21

8

711

5.5547

22

8

754

5.8906

23

8

797

6.2266

24

8

841

6.5703

25

8

885

6.9141

26

8

916.5

7.1602

27

8

948

7.4063

Table 3 MCS Index Table 3 (Table 5.1.3.1-3 in [3GPPTS38214])#
MCS Index
\(I_{MCS}\)
Modulation Order
\(Q_m\)
Target Coderate
\(R\times[1024]\)
Spectral Efficiency

0

2

30

0.0586

1

2

40

0.0781

2

2

50

0.0977

3

2

64

0.1250

4

2

78

0.1523

5

2

99

0.1934

6

2

120

0.2344

7

2

157

0.3066

8

2

193

0.3770

9

2

251

0.4902

10

2

308

0.6016

11

2

379

0.7402

12

2

449

0.8770

13

2

526

1.0273

14

2

602

1.1758

15

4

340

1.3281

16

4

378

1.4766

17

4

434

1.6953

18

4

490

1.9141

19

4

553

2.1602

20

4

616

2.4063

21

6

438

2.5564

22

6

466

2.7305

23

6

517

3.0293

24

6

567

3.3223

25

6

616

3.6094

26

6

666

3.9023

27

6

719

4.2129

28

6

772

4.5234

Table 4 MCS Index Table 4 (Table 5.1.3.1-4 in [3GPPTS38214])#
MCS Index
\(I_{MCS}\)
Modulation Order
\(Q_m\)
Target Coderate
\(R\times[1024]\)
Spectral Efficiency

0

2

120

0.2344

1

2

193

0.3770

2

2

449

0.8770

3

4

378

1.4766

4

4

490

1.9141

5

4

616

2.4063

6

6

466

2.7305

7

6

517

3.0293

8

6

567

3.3223

9

6

616

3.6094

10

6

666

3.9023

11

6

719

4.2129

12

6

772

4.5234

13

6

822

4.8154

14

6

873

5.1152

15

8

682.5

5.3320

16

8

711

5.5547

17

8

754

5.8906

18

8

797

6.2266

19

8

841

6.5703

20

8

885

6.9141

21

8

916.5

7.1602

22

8

948

7.4063

23

10

805.5

7.8662

24

10

853

8.3301

25

10

900.5

8.7939

26

10

948

9.2578

Attributes

property mcs_index: int#

Modulation and coding scheme (MCS) index (denoted as \(I_{MCS}\) in [3GPPTS38214]).

property mcs_table: int#

Indicates which MCS table from [3GPPTS38214] to use. Starts with “1”.

property channel_type: str#

5G NR physical channel type. Valid choices are “PDSCH” and “PUSCH”.

property n_id: int | None#

Data scrambling initialization \(n_\text{ID}\).

Data scrambling ID related to cell id and provided by higher layer. If None, the PUSCHConfig will automatically set \(n_\text{ID}=N_\text{ID}^{cell}\).

property name: str#

Configuration name.

property target_coderate: float#

Target coderate of the TB as defined by the selected MCS.

property num_bits_per_symbol: int#

Modulation order as defined by the selected MCS.

property tb_scaling: float#

TB scaling factor for PDSCH as defined in [3GPPTS38214] Tab. 5.1.3.2-2.

Methods

check_config() None[source]#

Test if configuration is valid.