IMPLEMENTATION OF TM4 INTO OAI SOFTMODEMΒ Β· pmiq # of layer 2 (RI 1) 1 1 2 s s sβˆ’ s 2 1 2 s s βˆ’...

45
Β© Fraunhofer IIS IMPLEMENTATION OF TM4 INTO OAI SOFTMODEM Joint ETSI - OSA Workshop: Open Implementations and Standardization Pre Event Training – 11 December 2018 Khodr Saaifan [email protected] Fraunhofer Institute for Integrated Circuits (IIS)

Transcript of IMPLEMENTATION OF TM4 INTO OAI SOFTMODEMΒ Β· pmiq # of layer 2 (RI 1) 1 1 2 s s sβˆ’ s 2 1 2 s s βˆ’...

Page 1: IMPLEMENTATION OF TM4 INTO OAI SOFTMODEMΒ Β· pmiq # of layer 2 (RI 1) 1 1 2 s s sβˆ’ s 2 1 2 s s βˆ’ 𝜌21= 12 βˆ— 22 βˆ— 11 21 pmiq= s, for Re(𝜌21)β‰₯Im(𝜌21) t, for Re𝜌21

Β© Fraunhofer IIS

IMPLEMENTATION OF TM4 INTO OAI SOFTMODEM

Joint ETSI - OSA Workshop: Open

Implementations and

Standardization

Pre Event Training – 11 December 2018

Khodr Saaifan

[email protected]

Fraunhofer Institute for Integrated Circuits (IIS)

Page 2: IMPLEMENTATION OF TM4 INTO OAI SOFTMODEMΒ Β· pmiq # of layer 2 (RI 1) 1 1 2 s s sβˆ’ s 2 1 2 s s βˆ’ 𝜌21= 12 βˆ— 22 βˆ— 11 21 pmiq= s, for Re(𝜌21)β‰₯Im(𝜌21) t, for Re𝜌21

Β© Fraunhofer IIS

2

Agenda

o TM4 Basics in LTE

o Review of OAI-eNB Thread and PHY Procedures

o eNB: PHY TX Procedures

o MAC: DL Scheduling

o Review of OAI-UE Thread and PHY Procedures

o UE: PHY RX Procedures

o UE Measurement Procedures

o Demo Setup and Results

o UE Statistics

o eNB Statistics

Page 3: IMPLEMENTATION OF TM4 INTO OAI SOFTMODEMΒ Β· pmiq # of layer 2 (RI 1) 1 1 2 s s sβˆ’ s 2 1 2 s s βˆ’ 𝜌21= 12 βˆ— 22 βˆ— 11 21 pmiq= s, for Re(𝜌21)β‰₯Im(𝜌21) t, for Re𝜌21

Β© Fraunhofer IIS

3

txdataF[0][ttioffest]

1

𝑋1

2

1

txdataF[1][ttioffest]

1

𝑋2

2

1

π»π‘‘π‘™π‘β„Ž 0 :𝐻11[π‘˜]

π»π‘‘π‘™π‘β„Ž[2]: 𝐻12[π‘˜]

π»π‘‘π‘™π‘β„Ž 1 : 𝐻21[π‘˜]

π»π‘‘π‘™π‘β„Ž[3]: 𝐻22[π‘˜]

rxdataFext[0][ttioffest]

1

π‘Œ1

2

1

rxdataFext[1][ttioffest]

1

π‘Œ2

2

1

TM4 Basics in LTE

The MIMO channel at the π‘˜th subcarrier:

𝑯 =𝐻11[π‘˜] 𝐻12[π‘˜]

𝐻21[π‘˜] 𝐻22[π‘˜]

Channel decomposition:

𝑯 = π‘Όπœ†1 00 πœ†2

𝑽𝐻

𝑿 = 𝑽𝑿 𝒀 = 𝑼𝐻𝒀

𝑋 1

𝑋 2

Modulated Symbols

π‘Œ 1 = πœ†1𝑋 1 + 𝑍 1

π‘Œ 2 = πœ†2𝑋 2 + 𝑍 2

π‘˜th RE π‘˜th RE

Feedback

𝒀 = 𝑯𝑿 + 𝒁 𝑯 𝑿 = 𝑽𝑿

Non Access-Stratum (NAS)

PDCP

RRC

MAC

RLC

PHY

RF

OAI-eNB

Non Access-Stratum (NAS)

PDCP

RRC

MAC

RLC

PHY

RF

OAI-UE Master Branch Master Branch

Page 4: IMPLEMENTATION OF TM4 INTO OAI SOFTMODEMΒ Β· pmiq # of layer 2 (RI 1) 1 1 2 s s sβˆ’ s 2 1 2 s s βˆ’ 𝜌21= 12 βˆ— 22 βˆ— 11 21 pmiq= s, for Re(𝜌21)β‰₯Im(𝜌21) t, for Re𝜌21

Β© Fraunhofer IIS

4

π»π‘‘π‘™π‘β„Ž 1 : 𝐻21[π‘˜]

π»π‘‘π‘™π‘β„Ž[3]: 𝐻22[π‘˜]

TM4 Basics in LTE

Modulated Symbols

Feedback

pmiq # of layer 1 (RI 0)

0 1

2

11

1 1

2

1βˆ’1

2 1

2

1j

3 1

2

1βˆ’j

Index 3: 1

2

1βˆ’π‘—

𝐻11

𝐻112 + 𝐻12

2 βˆ’π‘—π»12

𝐻12

π»π‘‘π‘™π‘β„Ž 0 :𝐻11[π‘˜]

π»π‘‘π‘™π‘β„Ž[2]: 𝐻12[π‘˜]

𝑿= 𝑷𝑿

𝑯eff

=𝐻11 𝐻12

𝐻21 𝐻22𝑷

𝑋 1

𝑋 2

π‘Œ 1

π‘Œ 2

𝒀 = 𝑯eff𝑿 + 𝒁 𝑯 𝑿 = 𝑷𝑿

Non Access-Stratum (NAS)

PDCP

RRC

MAC

RLC

PHY

RF

OAI-eNB

Non Access-Stratum (NAS)

PDCP

RRC

MAC

RLC

PHY

RF

OAI-UE

Closed loop precoding in LTE:

Requires feedback from the UE

Rank indicator (RI)

Precoding matrix indicator (PMI)

Page 5: IMPLEMENTATION OF TM4 INTO OAI SOFTMODEMΒ Β· pmiq # of layer 2 (RI 1) 1 1 2 s s sβˆ’ s 2 1 2 s s βˆ’ 𝜌21= 12 βˆ— 22 βˆ— 11 21 pmiq= s, for Re(𝜌21)β‰₯Im(𝜌21) t, for Re𝜌21

Β© Fraunhofer IIS

5

π»π‘‘π‘™π‘β„Ž 0 :𝐻11[π‘˜]

π»π‘‘π‘™π‘β„Ž[2]: 𝐻12[π‘˜]

π»π‘‘π‘™π‘β„Ž 1 : 𝐻21[π‘˜]

π»π‘‘π‘™π‘β„Ž[3]: 𝐻22[π‘˜]

TM4 Basics in LTE

𝑿= 𝑷𝑿

𝑯eff

=𝐻11 𝐻12

𝐻21 𝐻22𝑷

𝑋 1

𝑋 2

Modulated Symbols

π‘Œ 1

π‘Œ 2

Feedback pmiq # of layer 2 (RI 1)

1 1

2

1 11 βˆ’1

2 1

2

1 1𝑗 βˆ’π‘—

𝜌21 = 𝐻12βˆ— 𝐻22

βˆ— 𝐻11

𝐻21

pmiq = 1, for Re(𝜌21) β‰₯ Im(𝜌21)

2, for Re 𝜌21 < Im(𝜌21)

𝒀 = 𝑯eff𝑿 + 𝒁 𝑯 𝑿 = 𝑷𝑿

Non Access-Stratum (NAS)

PDCP

RRC

MAC

RLC

PHY

RF

OAI-eNB

Non Access-Stratum (NAS)

PDCP

RRC

MAC

RLC

PHY

RF

OAI-UE

Closed loop precoding in LTE:

Requires feedback from the UE

Rank indicator (RI)

Precoding matrix indicator (PMI)

Page 6: IMPLEMENTATION OF TM4 INTO OAI SOFTMODEMΒ Β· pmiq # of layer 2 (RI 1) 1 1 2 s s sβˆ’ s 2 1 2 s s βˆ’ 𝜌21= 12 βˆ— 22 βˆ— 11 21 pmiq= s, for Re(𝜌21)β‰₯Im(𝜌21) t, for Re𝜌21

Β© Fraunhofer IIS

6

π»π‘‘π‘™π‘β„Ž 0 :𝐻11[π‘˜]

π»π‘‘π‘™π‘β„Ž[2]: 𝐻12[π‘˜]

π»π‘‘π‘™π‘β„Ž 1 : 𝐻21[π‘˜]

π»π‘‘π‘™π‘β„Ž[3]: 𝐻22[π‘˜]

TM4 Basics in LTE

𝑿= 𝑷𝑿

𝑯eff

=𝐻11 𝐻12

𝐻21 𝐻22𝑷

𝑋 1

𝑋 2

Modulated Symbols

π‘Œ 1

π‘Œ 2

Feedback

CQI/PMI reporting

UCI format CQI, PMI, and RI

UE measurements

𝒀 = 𝑯eff𝑿 + 𝒁 𝑯 𝑿 = 𝑷𝑿

Non Access-Stratum (NAS)

PDCP

RRC

MAC

RLC

PHY

RF

OAI-eNB

Non Access-Stratum (NAS)

PDCP

RRC

MAC

RLC

PHY

RF

OAI-UE

UE statistics

In OAI-eNB, we verify and review the MAC/PHY code to support:

MAC: format2 with 𝑁𝑙=1, 2

PHY: layer mapping of 1 codeword into 𝑁𝑙 layers

Page 7: IMPLEMENTATION OF TM4 INTO OAI SOFTMODEMΒ Β· pmiq # of layer 2 (RI 1) 1 1 2 s s sβˆ’ s 2 1 2 s s βˆ’ 𝜌21= 12 βˆ— 22 βˆ— 11 21 pmiq= s, for Re(𝜌21)β‰₯Im(𝜌21) t, for Re𝜌21

Β© Fraunhofer IIS

7

Non Access-Stratum (NAS)

PDCP

RRC

MAC

RLC

PHY

RF

OAI-eNB

π»π‘‘π‘™π‘β„Ž 0 :𝐻11[π‘˜]

π»π‘‘π‘™π‘β„Ž[2]: 𝐻12[π‘˜]

π»π‘‘π‘™π‘β„Ž 1 : 𝐻21[π‘˜]

π»π‘‘π‘™π‘β„Ž[3]: 𝐻22[π‘˜]

Non Access-Stratum (NAS)

PDCP

RRC

MAC

RLC

PHY

RF

OAI-UE

TM4 Basics in LTE

𝒀 = 𝑯eff𝑿 + 𝒁

𝑿= 𝑷𝑿

𝑯eff

=𝐻11 𝐻12

𝐻21 𝐻22𝑷

𝑋 1

𝑋 2

Modulated Symbols

π‘Œ 1

π‘Œ 2

Feedback

𝑯 𝑿 = 𝑷𝑿

CQI/PMI reporting

UCI format CQI, PMI, and RI

UE measurements UE statistics

In OAI-UE, we verify and review the PHY code to support:

lte_ue_measurements: CQI, PMI, and RI

ue_pdcch_procedures: format2 detection

generate_ue_dlsch_params_from_dci: extract format2 for DL decoding

ue_pdsch_procedures: rx_pdsch for processing 2 layers into 1 codeword

Page 8: IMPLEMENTATION OF TM4 INTO OAI SOFTMODEMΒ Β· pmiq # of layer 2 (RI 1) 1 1 2 s s sβˆ’ s 2 1 2 s s βˆ’ 𝜌21= 12 βˆ— 22 βˆ— 11 21 pmiq= s, for Re(𝜌21)β‰₯Im(𝜌21) t, for Re𝜌21

Β© Fraunhofer IIS

8

Review of OAI-eNB Thread and PHY Procedures

Page 9: IMPLEMENTATION OF TM4 INTO OAI SOFTMODEMΒ Β· pmiq # of layer 2 (RI 1) 1 1 2 s s sβˆ’ s 2 1 2 s s βˆ’ 𝜌21= 12 βˆ— 22 βˆ— 11 21 pmiq= s, for Re(𝜌21)β‰₯Im(𝜌21) t, for Re𝜌21

Β© Fraunhofer IIS

9

Review of OAI-eNB Thread and PHY Procedures

eNB: phy_procedures_eNB_TX openair1/SCHED/phy_procedures_lte_eNb.c

RB12

RB9

RB15

2

1

1

2

2

1

1

2

2

1

1

2

2

1

1

2

2

1

1

2

2

1

1

2

2

1

1

2

2

1

1

2

subframe 0

Page 10: IMPLEMENTATION OF TM4 INTO OAI SOFTMODEMΒ Β· pmiq # of layer 2 (RI 1) 1 1 2 s s sβˆ’ s 2 1 2 s s βˆ’ 𝜌21= 12 βˆ— 22 βˆ— 11 21 pmiq= s, for Re(𝜌21)β‰₯Im(𝜌21) t, for Re𝜌21

Β© Fraunhofer IIS

10

Review of OAI-eNB Thread and PHY Procedures

PSS/SSS/PBCH: common_signal_procedures()

generate_pilots_slot()

generate_pss()/generate_sss()

generate_pbch(): SISO and Alamouti

HARQ_UL: synchronous ul_subframe=((subframe_tx+4)%10) ul_frame=(frame+(subframe_tx>=6 ? 1 :0)) harq_pid=(((ul_frame<<1)+ul_subframe)&7);

eNB: phy_procedures_eNB_TX openair1/SCHED/MAC/phy_procedures_lte_eNb.c

Page 11: IMPLEMENTATION OF TM4 INTO OAI SOFTMODEMΒ Β· pmiq # of layer 2 (RI 1) 1 1 2 s s sβˆ’ s 2 1 2 s s βˆ’ 𝜌21= 12 βˆ— 22 βˆ— 11 21 pmiq= s, for Re(𝜌21)β‰₯Im(𝜌21) t, for Re𝜌21

Β© Fraunhofer IIS

11

Review of OAI-eNB Thread and PHY Procedures

eNB: phy_procedures_eNB_TX openair1/SCHED/phy_procedures_lte_eNb.c

Page 12: IMPLEMENTATION OF TM4 INTO OAI SOFTMODEMΒ Β· pmiq # of layer 2 (RI 1) 1 1 2 s s sβˆ’ s 2 1 2 s s βˆ’ 𝜌21= 12 βˆ— 22 βˆ— 11 21 pmiq= s, for Re(𝜌21)β‰₯Im(𝜌21) t, for Re𝜌21

Β© Fraunhofer IIS

12

Review of OAI-eNB Thread and PHY Procedures

eNB: phy_procedures_eNB_TX openair1/SCHED/phy_procedures_lte_eNb.c

Page 13: IMPLEMENTATION OF TM4 INTO OAI SOFTMODEMΒ Β· pmiq # of layer 2 (RI 1) 1 1 2 s s sβˆ’ s 2 1 2 s s βˆ’ 𝜌21= 12 βˆ— 22 βˆ— 11 21 pmiq= s, for Re(𝜌21)β‰₯Im(𝜌21) t, for Re𝜌21

Β© Fraunhofer IIS

13

Review of OAI-eNB Thread and PHY Procedures

eNB: phy_procedures_eNB_TX openair1/SCHED/phy_procedures_lte_eNb.c

Page 14: IMPLEMENTATION OF TM4 INTO OAI SOFTMODEMΒ Β· pmiq # of layer 2 (RI 1) 1 1 2 s s sβˆ’ s 2 1 2 s s βˆ’ 𝜌21= 12 βˆ— 22 βˆ— 11 21 pmiq= s, for Re(𝜌21)β‰₯Im(𝜌21) t, for Re𝜌21

Β© Fraunhofer IIS

14

eNB: TX (MAC+PDSCH)

phy_procedures_eNB_TX() openair1/SCHED/phy_procedures_lte_eNb.c

Logical channel Prioritization/Multiplexing

DCCH DCCH1

DTCH

DLSCH_pdu TBS

dlsch_encoding() crc, lte_segmentation, turbo_encoding,

rate_matching

DCI pdu

format1, format1A format2

schedule_RA

schedule_ulsch

schedule_ue_spec

schedule_SI

fill_DLSCH_dci

generate eNB_dlsch params() generate eNB_dlsch params_from_dci()

generate eNB_ulsch params() generate eNB_ulsch params_from_dci()

format0

eNB_dlsch_ulsch_scheduler() openair2/LAYER2/MAC/eNB_scheduler.c

Turbo Encoding LTE_TRANSPORT/dlsch_coding.c

𝐺 bits

allocate_res_in_RB()

𝐺/π‘„π‘š/𝑁𝑙 symbols

dlsch_ scrambling()

dlsch_ modulation()

𝐺 bits

LTE_TRANSPORT/dlsch_modulation.c

𝐺/π‘„π‘š symbols

𝑋0𝑖 = 𝑄𝐴𝑀 𝑒 π‘„π‘š2𝑖, … , π‘„π‘š2𝑖 + π‘„π‘š βˆ’ 1 , 𝑖 = 0,… , 𝐺/π‘„π‘š βˆ’ 1

𝑋1𝑖 = 𝑄𝐴𝑀 𝑒 π‘„π‘š(2𝑖 + 1),… , π‘„π‘š(2𝑖 + 1) + π‘„π‘š βˆ’ 1 ,

𝑋0𝑖

𝑋1𝑖

pdsch_procedures() openair1/SCHED/phy_procedures_lte_eNb.c

For 𝑁𝑙=2 layers, dlsch0_harq->mimo_mode is configured based on tpmi

β€’ TBS is assigned based on 𝑁𝑙 Γ— π‘›π‘π‘Ÿπ‘

β€’ 𝐺 = (π‘›π‘π‘Ÿπ‘ Γ—π‘šπ‘œπ‘‘π‘œπ‘Ÿπ‘‘π‘’π‘Ÿ Γ— ((14 βˆ’ π‘›π‘’π‘šπ‘π‘‘π‘π‘β„Žπ‘ π‘¦π‘šπ‘π‘œπ‘™π‘ ) Γ— 12 βˆ’ 3 Γ— 4) βˆ’ πΊπ‘Žπ‘‘π‘— ) Γ— 𝑁𝑙

format2

nb_antenna_ports_eNB = 2

TBS1 off (mcs2 = 0, rv2 = 1) TBS0 on

tpmi=0 to 7

txdataF[0][ttioffest]

1

𝑋0

2

1

txdataF[1][ttioffest]

1

𝑋1

2

1

Page 15: IMPLEMENTATION OF TM4 INTO OAI SOFTMODEMΒ Β· pmiq # of layer 2 (RI 1) 1 1 2 s s sβˆ’ s 2 1 2 s s βˆ’ 𝜌21= 12 βˆ— 22 βˆ— 11 21 pmiq= s, for Re(𝜌21)β‰₯Im(𝜌21) t, for Re𝜌21

Β© Fraunhofer IIS

15

MAC: schedule_ue_spec(module_idP,frameP,subframeP,mbsfn_flag) /openair2/LAYER2/MAC/eNB_scheduler_dlsch.c

Direction: E-UTRAN => UE

RLC Mode: AM (ARQ)

Logical Channel: DCCH-DTCH

Transport Channel: DL-SCH

β€’ The eNB scheduler consists of a scheduling entity, a DL HARQ entity, and a multiplexing entity

β€’ The scheduling entity supports resource requirement, assignment, and allocation (implemented in dlsch_scheduler_pre_processor())

β€’ The transmit HARQ operation includes transmission and retransmission of TBs, and reception and processing of ACK/NACK signaling

β€’ In OAI, synchronous HARQ is used for both the downlink and the uplink

harq_pid=((frame_tx Γ—10)+subframe_tx)&7

Page 16: IMPLEMENTATION OF TM4 INTO OAI SOFTMODEMΒ Β· pmiq # of layer 2 (RI 1) 1 1 2 s s sβˆ’ s 2 1 2 s s βˆ’ 𝜌21= 12 βˆ— 22 βˆ— 11 21 pmiq= s, for Re(𝜌21)β‰₯Im(𝜌21) t, for Re𝜌21

Β© Fraunhofer IIS

16

MAC: schedule_ue_spec(module_idP,frameP,subframeP,mbsfn_flag) /openair2/LAYER2/MAC/eNB_scheduler_dlsch.c

Page 17: IMPLEMENTATION OF TM4 INTO OAI SOFTMODEMΒ Β· pmiq # of layer 2 (RI 1) 1 1 2 s s sβˆ’ s 2 1 2 s s βˆ’ 𝜌21= 12 βˆ— 22 βˆ— 11 21 pmiq= s, for Re(𝜌21)β‰₯Im(𝜌21) t, for Re𝜌21

Β© Fraunhofer IIS

17

MAC: dlsch_scheduler_pre_processor (module_idP, frameP, subframeP, N_RBG, mbsfn_flag) /openair2/LAYER2/MAC/pre_processor.c

Page 18: IMPLEMENTATION OF TM4 INTO OAI SOFTMODEMΒ Β· pmiq # of layer 2 (RI 1) 1 1 2 s s sβˆ’ s 2 1 2 s s βˆ’ 𝜌21= 12 βˆ— 22 βˆ— 11 21 pmiq= s, for Re(𝜌21)β‰₯Im(𝜌21) t, for Re𝜌21

Β© Fraunhofer IIS

18

MAC: assign_rbs_required (module_idP,frameP,subframeP,nb_rbs_required[MAX_NUM_CCs][NUM_UE_MAX], min_rb_unit[MAX_NUM_CCs])

/openair2/LAYER2/MAC/pre_processor.c

Page 19: IMPLEMENTATION OF TM4 INTO OAI SOFTMODEMΒ Β· pmiq # of layer 2 (RI 1) 1 1 2 s s sβˆ’ s 2 1 2 s s βˆ’ 𝜌21= 12 βˆ— 22 βˆ— 11 21 pmiq= s, for Re(𝜌21)β‰₯Im(𝜌21) t, for Re𝜌21

Β© Fraunhofer IIS

19

MAC: schedule_ue_spec(module_idP,frameP,subframeP,mbsfn_flag) /openair2/LAYER2/MAC/eNB_scheduler_dlsch.c

Page 20: IMPLEMENTATION OF TM4 INTO OAI SOFTMODEMΒ Β· pmiq # of layer 2 (RI 1) 1 1 2 s s sβˆ’ s 2 1 2 s s βˆ’ 𝜌21= 12 βˆ— 22 βˆ— 11 21 pmiq= s, for Re(𝜌21)β‰₯Im(𝜌21) t, for Re𝜌21

Β© Fraunhofer IIS

20

MAC: schedule_ue_spec(module_idP,frameP,subframeP,mbsfn_flag) /openair2/LAYER2/MAC/eNB_scheduler_dlsch.c

Page 21: IMPLEMENTATION OF TM4 INTO OAI SOFTMODEMΒ Β· pmiq # of layer 2 (RI 1) 1 1 2 s s sβˆ’ s 2 1 2 s s βˆ’ 𝜌21= 12 βˆ— 22 βˆ— 11 21 pmiq= s, for Re(𝜌21)β‰₯Im(𝜌21) t, for Re𝜌21

Β© Fraunhofer IIS

21

MAC: schedule_ue_spec(module_idP,frameP,subframeP,mbsfn_flag) /openair2/LAYER2/MAC/eNB_scheduler_dlsch.c

Page 22: IMPLEMENTATION OF TM4 INTO OAI SOFTMODEMΒ Β· pmiq # of layer 2 (RI 1) 1 1 2 s s sβˆ’ s 2 1 2 s s βˆ’ 𝜌21= 12 βˆ— 22 βˆ— 11 21 pmiq= s, for Re(𝜌21)β‰₯Im(𝜌21) t, for Re𝜌21

Β© Fraunhofer IIS

22

MAC: schedule_ue_spec(module_idP,frameP,subframeP,mbsfn_flag) /openair2/LAYER2/MAC/eNB_scheduler_dlsch.c

Page 23: IMPLEMENTATION OF TM4 INTO OAI SOFTMODEMΒ Β· pmiq # of layer 2 (RI 1) 1 1 2 s s sβˆ’ s 2 1 2 s s βˆ’ 𝜌21= 12 βˆ— 22 βˆ— 11 21 pmiq= s, for Re(𝜌21)β‰₯Im(𝜌21) t, for Re𝜌21

Β© Fraunhofer IIS

23

MAC: schedule_ue_spec(module_idP,frameP,subframeP,mbsfn_flag) /openair2/LAYER2/MAC/eNB_scheduler_dlsch.c

Page 24: IMPLEMENTATION OF TM4 INTO OAI SOFTMODEMΒ Β· pmiq # of layer 2 (RI 1) 1 1 2 s s sβˆ’ s 2 1 2 s s βˆ’ 𝜌21= 12 βˆ— 22 βˆ— 11 21 pmiq= s, for Re(𝜌21)β‰₯Im(𝜌21) t, for Re𝜌21

Β© Fraunhofer IIS

24

PHY: generate_eNB_dlsch_params_from_dci(): /openair1/PHY/LTE_TRANSPORT/dci_tools.c

TB1 OFF

(DCI2_5MHz_2A_FDD_t*)dci_pdu

DL Scheduling assignment for MIMO closed loop spatial multiplexing

tpmi=0: AlAMOUTI, Nl=1 tpmi=1: UNIFORM_PRECODING11 pmiq 0, Nl=1 tpmi=2: UNIFORM_PRECODING1m1, pmiq1, Nl=1 tpmi=3: UNIFORM_PRECODING1j , pmiq2, Nl=1 tpmi=4: UNIFORM_PRECODING1mj, pmiq3, Nl=1 tpmi=5: PUSCH_PRECODING0, Nl=2 tpmi=6: PUSCH_PRECODING1, Nl=2 tpmi=7: TM4_NO_PRECODING, Nl=2

rah rballoc TPC Harq pid Tb

swap

mcs

1

ndi1 rv1 mcs

2

ndi2 rv2 tpmi

1 13 2 3 1 5 1 2 5 1 2 3

0 rballoc tpc harq_pid mcs 1-oldNDI 0 0 1 0/7

TB0 ON

dlsch0=dlsch[0] dlsch1=NULL

dlsch0_harq->mimo_mode dlsch0_harq->Nl

dlsch0_harq->pmi_alloc

dlsch0_harq->nb_rb dlsch0_harq->TBS

eNB->UE_stats[UE_id]->DL_pmi_single

Page 25: IMPLEMENTATION OF TM4 INTO OAI SOFTMODEMΒ Β· pmiq # of layer 2 (RI 1) 1 1 2 s s sβˆ’ s 2 1 2 s s βˆ’ 𝜌21= 12 βˆ— 22 βˆ— 11 21 pmiq= s, for Re(𝜌21)β‰₯Im(𝜌21) t, for Re𝜌21

Β© Fraunhofer IIS

25

eNB: TX (MAC+PDSCH)

phy_procedures_eNB_TX() openair1/SCHED/phy_procedures_lte_eNb.c

Logical channel Prioritization/Multiplexing

DCCH DCCH1

DTCH

DLSCH_pdu TBS

dlsch_encoding() crc, lte_segmentation, turbo_encoding,

rate_matching

DCI pdu

format1, format1A format2

schedule_RA

schedule_ulsch

schedule_ue_spec

schedule_SI

fill_DLSCH_dci

generate eNB_dlsch params() generate eNB_dlsch params_from_dci()

generate eNB_ulsch params() generate eNB_ulsch params_from_dci()

format0

eNB_dlsch_ulsch_scheduler() openair2/LAYER2/MAC/eNB_scheduler.c

Turbo Encoding LTE_TRANSPORT/dlsch_coding.c

𝐺 bits

allocate_REs_in_RB()

𝐺/π‘„π‘š/𝑁𝑙 symbols

dlsch_ scrambling()

dlsch_ modulation()

𝐺 bits

LTE_TRANSPORT/dlsch_modulation.c

𝐺/π‘„π‘š symbols

𝑋0𝑖 = 𝑄𝐴𝑀 𝑒 π‘„π‘š2𝑖, … , π‘„π‘š2𝑖 + π‘„π‘š βˆ’ 1 , 𝑖 = 0,… , 𝐺/π‘„π‘š βˆ’ 1

𝑋1𝑖 = 𝑄𝐴𝑀 𝑒 π‘„π‘š(2𝑖 + 1),… , π‘„π‘š(2𝑖 + 1) + π‘„π‘š βˆ’ 1 ,

𝑋0𝑖

𝑋1𝑖

pdsch_procedures() openair1/SCHED/phy_procedures_lte_eNb.c

For 𝑁𝑙=2 layers, dlsch0_harq->mimo_mode is configured based on tpmi

β€’ TBS is assigned based on 𝑁𝑙 Γ— π‘›π‘π‘Ÿπ‘

β€’ 𝐺 = (π‘›π‘π‘Ÿπ‘ Γ—π‘šπ‘œπ‘‘π‘œπ‘Ÿπ‘‘π‘’π‘Ÿ Γ— ((14 βˆ’ π‘›π‘’π‘šπ‘π‘‘π‘π‘β„Žπ‘ π‘¦π‘šπ‘π‘œπ‘™π‘ ) Γ— 12 βˆ’ 3 Γ— 4) βˆ’ πΊπ‘Žπ‘‘π‘— ) Γ— 𝑁𝑙

format2

nb_antenna_ports_eNB = 2

TBS1 off (mcs2 = 0, rv2 = 1) TBS0 on

tpmi=0 to 7

txdataF[0][ttioffest]

1

𝑋0

2

1

txdataF[1][ttioffest]

1

𝑋1

2

1

Page 26: IMPLEMENTATION OF TM4 INTO OAI SOFTMODEMΒ Β· pmiq # of layer 2 (RI 1) 1 1 2 s s sβˆ’ s 2 1 2 s s βˆ’ 𝜌21= 12 βˆ— 22 βˆ— 11 21 pmiq= s, for Re(𝜌21)β‰₯Im(𝜌21) t, for Re𝜌21

Β© Fraunhofer IIS

26

Review of OAI-UE Thread and PHY Procedures

Page 27: IMPLEMENTATION OF TM4 INTO OAI SOFTMODEMΒ Β· pmiq # of layer 2 (RI 1) 1 1 2 s s sβˆ’ s 2 1 2 s s βˆ’ 𝜌21= 12 βˆ— 22 βˆ— 11 21 pmiq= s, for Re(𝜌21)β‰₯Im(𝜌21) t, for Re𝜌21

Β© Fraunhofer IIS

27

Review of OAI-UE Thread and PHY Procedures

After synchronization, the flag start_rx_stream=0. Hence,

Correct rx_offest by capturing rx_offest samples from the USRP

UE->rx_offset=0; (sync with rx_offest)

UE->time_sync_cell=0; (sync with the cell)

Set UE->proc.proc_rxtx[th_id].frame_rx=0 (Ready to read frame 0)

Read the first OFDM symbol of the subframe 0 from the RF device

slot_fep(UE,0, 0, 0, 0, 0) for l=0

Page 28: IMPLEMENTATION OF TM4 INTO OAI SOFTMODEMΒ Β· pmiq # of layer 2 (RI 1) 1 1 2 s s sβˆ’ s 2 1 2 s s βˆ’ 𝜌21= 12 βˆ— 22 βˆ— 11 21 pmiq= s, for Re(𝜌21)β‰₯Im(𝜌21) t, for Re𝜌21

Β© Fraunhofer IIS

28

Review of OAI-UE Thread and PHY Procedures

After the first slot_fep(), the UE thread loops over subframe_rx=0, ..., 9

In each loop, the UE thread gets TTI samples from USRP

The UE thread wakes up the even or the odd UE_thread_rxn_txnp4 according to the subframe number

phy_procedures_UE_RX(): LTE UE Receiver

UE_MAC(): MAC layer of UE

phy_procedures_UE_TX(): LTE UE Transmitter

Page 29: IMPLEMENTATION OF TM4 INTO OAI SOFTMODEMΒ Β· pmiq # of layer 2 (RI 1) 1 1 2 s s sβˆ’ s 2 1 2 s s βˆ’ 𝜌21= 12 βˆ— 22 βˆ— 11 21 pmiq= s, for Re(𝜌21)β‰₯Im(𝜌21) t, for Re𝜌21

Β© Fraunhofer IIS

29

UE: RX (PDCCH+PDSCH)

DCI pdu

generate_ue_dlsch_params_from_dci()

DL format 2: format2: Alamouti/TM4

ue_pdsch_procedures() LTE_TRANSPORT/dlsch_demodulation.c

rx_pdsch() rxdataF[0][ttioffest]

1

π‘Œ0[π‘˜]

2

1

rxdataF[1][ttioffest]

1

π‘Œ1[π‘˜]

2

1

ue_pdcch_procedures() openair1/SCHED/phy_procedures_lte_ue.c

rx_pdcch()

prepare_dl_decoding_format2_2A()

nb_rb = dlsch_extract

_rbs_dual

dlsch_scale_channel

dlsch_channel_level()

dlsch_channel_compensation

dlsch_detection_mrc

dlsch _alamouti

dlsch_qam_llr()

dci_cnt =

dci_decoding_procedure()

search all possible DCIs

rx_phich ()

is_phich_subframe generate_ue_ulsch_params_from_dci()

Format 1,1A, 2, ... Format 0

extract_dci2_info()

status = check_dci_format2_2a

_coherency()

generate_ue_dlsch_params_from_dci() LTE_TRANSPORT/dci_tools.c

𝑁𝑙 = 2

dlsch0_harq->mimo_mode tpmi:0 Alamouti tpmi: 7 test TM4

TBS0 on TBS1 off (mcs2 = 0, rv2 = 1) dlsch0_harq->Nl = 2 dlsch0_harq->mimo_mode = Alamouti/TM4_NO_PRECODING

lte_ue_measurements()

ue_ulsch_uespec_procedures()

RI + CQI/PMI reporting

UCI format: Wideband CQI1 (4 bits) PMI (14 bits)

TM4 postprocessor

ue_measurement_procedures() /openair1/SCHED/phy_procedures_lte_ue.c

Page 30: IMPLEMENTATION OF TM4 INTO OAI SOFTMODEMΒ Β· pmiq # of layer 2 (RI 1) 1 1 2 s s sβˆ’ s 2 1 2 s s βˆ’ 𝜌21= 12 βˆ— 22 βˆ— 11 21 pmiq= s, for Re(𝜌21)β‰₯Im(𝜌21) t, for Re𝜌21

Β© Fraunhofer IIS

30

ue_measurement_procedures openair1/SCHED/phy_procedures_lte_ue.c

lte_ue_measurements(): OFDM symbol l=0 at every slot

Rx spatial power: rx_spatial_power[eNB_id][aatx][aarx] and rx_power_tot[eNB_id]

Rank Estimation: rank_estimation_tm3_tm4()

Signal and noise average power computation: rx_power_avg and n0_power_avg

CQI measurements: wideband_cqi_tot, wideband_cqi_avg, and rx_rssi_dBm

Subband CQI measurements: subband_cqi[eNB_id][aarx][subband], subband_cqi_tot[eNB_id][subband]

PMI measurements: subband_pmi_re[eNB_id][subband][aarx], subband_pmi_im[eNB_id][subband][aarx], wideband_pmi_re[eNB_id][aarx], and wideband_pmi_im[eNB_id][aarx]

ue_rcc_measurements(): OFDM symbol l=6 at subframe 0/subframe 5

Noise Floor Calculation: n0_power[aarx], n0_power_dB[aarx], n0_power_tot, n0_power_tot_dB, n0_power_tot_dBm

Reference Signal Rx power: rsrp and rssi

Additional measurements: every subfarme at slot 0 and OFDM symbol 4

phy_adjust_gain(): AGC

lte_adjust_synch(): Accum/filtering time offest estimation

Page 31: IMPLEMENTATION OF TM4 INTO OAI SOFTMODEMΒ Β· pmiq # of layer 2 (RI 1) 1 1 2 s s sβˆ’ s 2 1 2 s s βˆ’ 𝜌21= 12 βˆ— 22 βˆ— 11 21 pmiq= s, for Re(𝜌21)β‰₯Im(𝜌21) t, for Re𝜌21

Β© Fraunhofer IIS

31

ue_measurement_procedures openair1/SCHED/phy_procedures_lte_ue.c

The received quantized OFDM samples can be expressed as

𝑦 𝑛 =π‘ƒπ‘Ÿπ’™π΄πΊ

2

2 π‘‹π‘˜π‘’

𝑗2πœ‹π‘˜π‘›/π‘π‘βˆ’1π‘˜=0 + 𝑧[𝑛], 0 < 𝑛 < 𝑁 βˆ’ 1

where π‘ƒπ‘Ÿπ‘₯ denotes the power of the received passband signal and 𝐴𝐺 is the voltage Gain of the USRP

The samples of 𝑧[𝑛] are complex-valued Gaussian RVs with zero mean and variance (power) 1

2𝑁0𝐹 Γ— π‘βˆ†π‘“

The quantized IQ samples are represented by 16-bit short integers (1 bit: sign and 15 bits: fixed point representation)

I Q

16 bits 16 bits +1

βˆ’1

𝑅 = 2

𝑦(𝑑) 𝑦[𝑛]

π‘¦π‘ž[𝑛]

𝑛𝑇𝑠 𝑑

β€’ The quantization width is given by:

𝑄 =𝑅

216 =

1

215 = 30 πœ‡V

Page 32: IMPLEMENTATION OF TM4 INTO OAI SOFTMODEMΒ Β· pmiq # of layer 2 (RI 1) 1 1 2 s s sβˆ’ s 2 1 2 s s βˆ’ 𝜌21= 12 βˆ— 22 βˆ— 11 21 pmiq= s, for Re(𝜌21)β‰₯Im(𝜌21) t, for Re𝜌21

Β© Fraunhofer IIS

32

ue_measurement_procedures openair1/SCHED/phy_procedures_lte_ue.c

The received quantized OFDM samples can be expressed as

𝑦 𝑛 =π‘ƒπ‘Ÿπ’™π΄πΊ

2

2 π‘‹π‘˜π‘’

𝑗2πœ‹π‘˜π‘›/π‘π‘βˆ’1π‘˜=0 + 𝑧[𝑛], 0 < 𝑛 < 𝑁 βˆ’ 1

where π‘ƒπ‘Ÿπ‘₯ denotes the power of the received passband signal and 𝐴𝐺 is the voltage Gain of the USRP

The samples of 𝑧[𝑛] are complex-valued Gaussian RVs with zero mean and variance (power) 1

2𝑁0𝐹 Γ— π‘βˆ†π‘“

512 subcarriersΓ—32 bits (I/Q 16 bits per samples input OFDM discrete signal)

nb prefix samples (40 or 36)

rx_offset &common_vars->rxdata[aa]

[rx_offset % frame_length_samples]

512-DFT operation

&common_vars_rx_data_per_thread.rxdataF[aa]

[frame_parms->ofdm_symbol_size*symbol]

Channel Estimation

If(l==0|l==4) Pilot positions

slot_fep() signal processing

Page 33: IMPLEMENTATION OF TM4 INTO OAI SOFTMODEMΒ Β· pmiq # of layer 2 (RI 1) 1 1 2 s s sβˆ’ s 2 1 2 s s βˆ’ 𝜌21= 12 βˆ— 22 βˆ— 11 21 pmiq= s, for Re(𝜌21)β‰₯Im(𝜌21) t, for Re𝜌21

Β© Fraunhofer IIS

33

ue_measurement_procedures openair1/SCHED/phy_procedures_lte_ue.c

The received quantized OFDM samples can be expressed as

𝑦 𝑛 =π‘ƒπ‘Ÿπ’™π΄πΊ

2

2 π‘‹π‘˜π‘’

𝑗2πœ‹π‘˜π‘›/π‘π‘βˆ’1π‘˜=0 + 𝑧[𝑛], 0 < 𝑛 < 𝑁 βˆ’ 1

where π‘ƒπ‘Ÿπ‘₯ denotes the power of the received passband signal and 𝐴𝐺 is the voltage Gain of the USRP

The samples of 𝑧[𝑛] are complex-valued Gaussian RVs with zero mean and variance (power) 1

2𝑁0𝐹 Γ— π‘βˆ†π‘“

512 subcarriersΓ—32 bits (I/Q 16 bits per samples input OFDM discrete signal)

nb prefix samples (40 or 36)

rx_offset &common_vars->rxdata[aa]

[rx_offset % frame_length_samples]

512-DFT operation

&common_vars_rx_data_per_thread.rxdataF[aa]

[frame_parms->ofdm_symbol_size*symbol]

Channel Estimation

If(l==0|l==4) Pilot positions l=0

l=4

π‘Œπ‘˜ = 1

𝑁 𝑦𝑛

π‘βˆ’1

𝑛=0

π‘’βˆ’π‘—2πœ‹π‘˜π‘›/𝑁

0

6βˆ†π‘“

0 6βˆ†π‘“ 𝑓𝑠 = π‘βˆ†π‘“

π‘Œπ‘˜

𝐴 𝑁

…

𝐴 𝑁

𝐴 =π‘ƒπ‘Ÿπ’™π΄πΊ

2

2

slot_fep() signal processing

Page 34: IMPLEMENTATION OF TM4 INTO OAI SOFTMODEMΒ Β· pmiq # of layer 2 (RI 1) 1 1 2 s s sβˆ’ s 2 1 2 s s βˆ’ 𝜌21= 12 βˆ— 22 βˆ— 11 21 pmiq= s, for Re(𝜌21)β‰₯Im(𝜌21) t, for Re𝜌21

Β© Fraunhofer IIS

34

ue_measurement_procedures openair1/SCHED/phy_procedures_lte_ue.c

The received quantized OFDM samples can be expressed as

𝑦 𝑛 =π‘ƒπ‘Ÿπ’™πΊπ΄

2 π‘‹π‘˜π‘’

𝑗2πœ‹π‘˜π‘›/π‘π‘βˆ’1π‘˜=0 + 𝑧[𝑛], 0 < 𝑛 < 𝑁 βˆ’ 1

where π‘ƒπ‘Ÿπ‘₯ denotes the power of the received passband signal and 𝐺𝐴 is the voltage Gain of the USRP

The samples of 𝑧[𝑛] are complex-valued Gaussian RVs with zero mean and variance (power) 1

2𝑁0𝐹 Γ— π‘βˆ†π‘“

l=0

l=4 0

6βˆ†π‘“

0 6βˆ†π‘“ 𝑓𝑠 = π‘βˆ†π‘“

π‘Œ[π‘˜]

𝐴 𝑁

…

𝐴 𝑁

𝐴 =π‘ƒπ‘Ÿπ’™πΊπ΄

2

Reference Signal Rx power: rsrp and rssi

rsrp = 1

𝑁𝐸 π‘Œ[π‘˜] 2 = 𝐴2, π‘˜ ∈ pilots

= 1

2π‘ƒπ‘Ÿπ’™πΊπ΄ Γ— 230 (W/RE)

where 𝐺𝐴(dB) = π‘ˆπΈπ‘Ÿπ‘₯π‘”π‘Žπ‘–π‘› βˆ’ π‘ˆπ‘†π‘…π‘ƒπ‘‚π‘“π‘“π‘’π‘ π‘‘ is

the RX gain of the USRP rssi = RSRP Γ— 12 βˆ— 𝑁𝑅𝐡

𝐷𝐿

π‘Œπ‘˜ = 1

𝑁 𝑦𝑛

π‘βˆ’1

𝑛=0

π‘’βˆ’π‘—2πœ‹π‘˜π‘›/𝑁

β€’ The max gain for RX on the AD936x is 76 dB, for TX 89 dB

β€’ The ranges can be printed out when you run 'uhd_usrp_probe' for any USRP

Page 35: IMPLEMENTATION OF TM4 INTO OAI SOFTMODEMΒ Β· pmiq # of layer 2 (RI 1) 1 1 2 s s sβˆ’ s 2 1 2 s s βˆ’ 𝜌21= 12 βˆ— 22 βˆ— 11 21 pmiq= s, for Re(𝜌21)β‰₯Im(𝜌21) t, for Re𝜌21

Β© Fraunhofer IIS

35

ue_measurement_procedures openair1/SCHED/phy_procedures_lte_ue.c

The received quantized OFDM samples can be expressed as

𝑦 𝑛 =π‘ƒπ‘Ÿπ’™πΊπ΄

2 π‘‹π‘˜π‘’

𝑗2πœ‹π‘˜π‘›/π‘π‘βˆ’1π‘˜=0 + 𝑧[𝑛], 0 < 𝑛 < 𝑁 βˆ’ 1

The samples of 𝑧[𝑛] are complex-valued Gaussian RVs with zero mean and variance (power) 1

2𝑁0𝐹 Γ— π‘βˆ†π‘“

Noise Floor Calculation: 𝑛0π‘π‘œπ‘€π‘’π‘Ÿ(π‘Žπ‘Žπ‘Ÿπ‘₯) and 𝑛0π‘π‘œπ‘€π‘’π‘Ÿπ‘‘π‘œπ‘‘

𝑛0π‘π‘œπ‘€π‘’π‘Ÿ π‘Žπ‘Žπ‘Ÿπ‘₯ = 𝐸 π‘π‘Žπ‘Žπ‘Ÿπ‘₯ π‘˜ 2 , π‘˜ ∈ null RE SSS/PSS

=1

2𝑁0𝐹 Γ— π‘βˆ†π‘“ Γ— 230 (W)

where 𝑁0𝐹 = βˆ’174 dBm/Hz + 𝑡𝑭 dB + 𝐺𝐴(dB) and 𝐺𝐴(dB) = π‘ˆπΈπ‘Ÿπ‘₯π‘”π‘Žπ‘–π‘› βˆ’ π‘ˆπ‘†π‘…π‘ƒπ‘‚π‘“π‘“π‘’π‘ π‘‘ is the RX gain of the USRP

RB12

RB9

RB15

Subframe0/5, slot0, at l=5,6

Null REs

β€’ The max gain for RX on the AD936x is 76 dB, for TX 89 dB

Page 36: IMPLEMENTATION OF TM4 INTO OAI SOFTMODEMΒ Β· pmiq # of layer 2 (RI 1) 1 1 2 s s sβˆ’ s 2 1 2 s s βˆ’ 𝜌21= 12 βˆ— 22 βˆ— 11 21 pmiq= s, for Re(𝜌21)β‰₯Im(𝜌21) t, for Re𝜌21

Β© Fraunhofer IIS

36

ue_measurement_procedures openair1/SCHED/phy_procedures_lte_ue.c

The MIMO channel: 𝑯(π‘˜) =𝐻11[π‘˜] 𝐻12[π‘˜]

𝐻21[π‘˜] 𝐻22[π‘˜]

𝑨MF(π‘˜) = π‘―βˆ— π‘˜ 𝑯 π‘˜

=𝐻11

2 + 𝐻212 𝐻11

βˆ— 𝐻12 + 𝐻21βˆ— 𝐻22

𝐻12βˆ— 𝐻11 + 𝐻22

βˆ— 𝐻21 𝐻122 + 𝐻22

2

The eignvalues of 𝑯 are related to those of 𝑨MF as

πœ†π‘– = 𝛽𝑖 , 𝑖 = 1, 2

For a unitary matrix, the condition number πœ– π‘˜ β‰‘πœ†maxπœ†min

= 1, conddB π‘˜ = 0 dB

In OAI, the condition number:

πœ– π‘˜ =𝑨MF(π‘˜)

2

det(𝑨MF π‘˜ )

conddB[π‘˜] = numerdB(π‘˜) βˆ’ denumdB(π‘˜) If conddB π‘˜ ≀ 5 dB, hence, Rank=2

πœ– π‘˜ =𝛽max

𝛽min

=

Rank Indicator (RI)

π»π‘‘π‘™π‘β„Ž 1 : 𝐻21[π‘˜]

π»π‘‘π‘™π‘β„Ž[3]: 𝐻22[π‘˜]

π»π‘‘π‘™π‘β„Ž 0 :𝐻11[π‘˜]

π»π‘‘π‘™π‘β„Ž[2]: 𝐻12[π‘˜]

(𝐻11, 𝐻12, 𝐻21, 𝐻22, 𝑁𝑅𝐡)

rank_estimation

_tm3_tm4

Page 37: IMPLEMENTATION OF TM4 INTO OAI SOFTMODEMΒ Β· pmiq # of layer 2 (RI 1) 1 1 2 s s sβˆ’ s 2 1 2 s s βˆ’ 𝜌21= 12 βˆ— 22 βˆ— 11 21 pmiq= s, for Re(𝜌21)β‰₯Im(𝜌21) t, for Re𝜌21

Β© Fraunhofer IIS

37

ue_measurement_procedures openair1/SCHED/phy_procedures_lte_ue.c

The UE computes

π‘ π‘’π‘π‘π‘Žπ‘›π‘‘π‘π‘šπ‘–π‘Ÿπ‘’/π‘–π‘š π‘ π‘’π‘π‘π‘Žπ‘›π‘‘ π‘›π‘Ÿπ‘₯ = 𝐸 π»π‘›π‘Ÿπ‘₯1 π‘˜ π»π‘›π‘Ÿπ‘₯2βˆ— π‘˜ ,

π‘›π‘Ÿπ‘₯ = 1, 2

The correlation coefficient

π‘ π‘’π‘π‘π‘Žπ‘›π‘‘π‘π‘šπ‘–π‘Ÿπ‘’/π‘–π‘š π‘ π‘’π‘π‘π‘Žπ‘›π‘‘ += π‘ π‘’π‘π‘π‘Žπ‘›π‘‘π‘π‘šπ‘–π‘Ÿπ‘’/π‘–π‘š π‘ π‘’π‘π‘π‘Žπ‘›π‘‘ π‘›π‘Ÿπ‘₯

Precoding for (rank =1) TM4

π‘π‘šπ‘–π‘£π‘’π‘π‘‘ | = π‘π‘šπ‘–π‘ž << (2 βˆ— 𝑖), for 𝑖 = 0,… , π‘›π‘π‘ π‘’π‘π‘π‘Žπ‘›π‘‘π‘  βˆ’ 1

PM Indicator (PMI)

π»π‘‘π‘™π‘β„Ž 1 : 𝐻21[π‘˜]

π»π‘‘π‘™π‘β„Ž[3]: 𝐻22[π‘˜]

π»π‘‘π‘™π‘β„Ž 0 :𝐻11[π‘˜]

π»π‘‘π‘™π‘β„Ž[2]: 𝐻12[π‘˜]

RB 21

RB 20

RB 23

RB 22

RB 24

RB 3

RB 2

RB 1

RB 0

0

5

6

pmiq

pmiq

pmiq

πœƒπ‘π‘šπ‘–π‘Ÿπ‘’/π‘–π‘š: (45o, 135o)

Index 2: 1

2

1𝑗

real axis

Imaginary axis

πœƒπ‘π‘šπ‘–π‘Ÿπ‘’/π‘–π‘š: (135o, 225o)

Index 1: 1

2

1βˆ’1

πœƒπ‘π‘šπ‘–π‘Ÿπ‘’/π‘–π‘š: (225o, 315o)

Index 3: 1

2

1βˆ’π‘—

πœƒπ‘π‘šπ‘–π‘Ÿπ‘’/π‘–π‘š: (45o, βˆ’45o)

Index 0: 1

2

11

Page 38: IMPLEMENTATION OF TM4 INTO OAI SOFTMODEMΒ Β· pmiq # of layer 2 (RI 1) 1 1 2 s s sβˆ’ s 2 1 2 s s βˆ’ 𝜌21= 12 βˆ— 22 βˆ— 11 21 pmiq= s, for Re(𝜌21)β‰₯Im(𝜌21) t, for Re𝜌21

Β© Fraunhofer IIS

38

ue_measurement_procedures openair1/SCHED/phy_procedures_lte_ue.c

The UE computes

π‘ π‘’π‘π‘π‘Žπ‘›π‘‘π‘π‘šπ‘–π‘Ÿπ‘’/π‘–π‘š π‘ π‘’π‘π‘π‘Žπ‘›π‘‘ π‘›π‘Ÿπ‘₯ = 𝐸 π»π‘›π‘Ÿπ‘₯1 π‘˜ π»π‘›π‘Ÿπ‘₯2βˆ— π‘˜ ,

π‘›π‘Ÿπ‘₯ = 1, 2

The correlation coefficient

π‘ π‘’π‘π‘π‘Žπ‘›π‘‘π‘π‘šπ‘–π‘Ÿπ‘’/π‘–π‘š π‘ π‘’π‘π‘π‘Žπ‘›π‘‘ += π‘ π‘’π‘π‘π‘Žπ‘›π‘‘π‘π‘šπ‘–π‘Ÿπ‘’/π‘–π‘š π‘ π‘’π‘π‘π‘Žπ‘›π‘‘ π‘›π‘Ÿπ‘₯

Precoding for (rank =2) TM4

π‘π‘šπ‘–π‘£π‘’π‘π‘‘ | = (π‘π‘šπ‘–π‘ž βˆ’ 1) << 𝑖, for 𝑖 = 0, … , π‘›π‘π‘ π‘’π‘π‘π‘Žπ‘›π‘‘π‘  βˆ’1

PM Indicator (PMI)

π»π‘‘π‘™π‘β„Ž 1 : 𝐻21[π‘˜]

π»π‘‘π‘™π‘β„Ž[3]: 𝐻22[π‘˜]

π»π‘‘π‘™π‘β„Ž 0 :𝐻11[π‘˜]

π»π‘‘π‘™π‘β„Ž[2]: 𝐻12[π‘˜]

RB 21

RB 20

RB 23

RB 22

RB 24

RB 3

RB 2

RB 1

RB 0

0

5

6

pmiq

pmiq

pmiq

pmiq # of layer 2 (RI 1)

1 1

2

1 11 βˆ’1

2 1

2

1 1𝑗 βˆ’π‘—

𝜌21 = 𝐻12βˆ— 𝐻22

βˆ— 𝐻11

𝐻21

pmiq = 1, for Re(𝜌21) β‰₯ Im(𝜌21)

2, for Re 𝜌21 < Im(𝜌21)

Page 39: IMPLEMENTATION OF TM4 INTO OAI SOFTMODEMΒ Β· pmiq # of layer 2 (RI 1) 1 1 2 s s sβˆ’ s 2 1 2 s s βˆ’ 𝜌21= 12 βˆ— 22 βˆ— 11 21 pmiq= s, for Re(𝜌21)β‰₯Im(𝜌21) t, for Re𝜌21

Β© Fraunhofer IIS

39

TM4 Setup and Results

OAI-eNB U

SRP

B210

IF5 URU

USRP

B210

OAI-UE

Shared UE-Side Distributed Antenna System

RI and 𝐢𝑄𝐼/𝑃𝑀𝐼

Feedback

ue_TransmissionMode=4

--fh IF5

Multiple UEs

Page 40: IMPLEMENTATION OF TM4 INTO OAI SOFTMODEMΒ Β· pmiq # of layer 2 (RI 1) 1 1 2 s s sβˆ’ s 2 1 2 s s βˆ’ 𝜌21= 12 βˆ— 22 βˆ— 11 21 pmiq= s, for Re(𝜌21)β‰₯Im(𝜌21) t, for Re𝜌21

Β© Fraunhofer IIS

40

TM4 Setup and Results

UE Statistics

Noise Floor Calculation:

𝑛0π‘π‘œπ‘€π‘’π‘Ÿ π‘Žπ‘Žπ‘Ÿπ‘₯ =1

2𝑁0𝐹 Γ— π‘βˆ†π‘“ Γ— 230 (W)

where 𝑁0𝐹 = βˆ’174 dBm/Hz + 𝑡𝑭 dB + 𝐺𝐴(dB) and 𝐺𝐴(dB) = π‘ˆπΈπ‘Ÿπ‘₯π‘”π‘Žπ‘–π‘› βˆ’ π‘ˆπ‘†π‘…π‘ƒπ‘‚π‘“π‘“π‘’π‘ π‘‘ is the RX gain of the

USRP

RI=1 (2 layers)

Page 41: IMPLEMENTATION OF TM4 INTO OAI SOFTMODEMΒ Β· pmiq # of layer 2 (RI 1) 1 1 2 s s sβˆ’ s 2 1 2 s s βˆ’ 𝜌21= 12 βˆ— 22 βˆ— 11 21 pmiq= s, for Re(𝜌21)β‰₯Im(𝜌21) t, for Re𝜌21

Β© Fraunhofer IIS

41

TM4 Setup and Results

eNB Statistics RI=1 (2 layers)

Page 42: IMPLEMENTATION OF TM4 INTO OAI SOFTMODEMΒ Β· pmiq # of layer 2 (RI 1) 1 1 2 s s sβˆ’ s 2 1 2 s s βˆ’ 𝜌21= 12 βˆ— 22 βˆ— 11 21 pmiq= s, for Re(𝜌21)β‰₯Im(𝜌21) t, for Re𝜌21

Β© Fraunhofer IIS

42

TM4 Setup and Results

eNB Statistics RI=1 (2 layers)

Page 43: IMPLEMENTATION OF TM4 INTO OAI SOFTMODEMΒ Β· pmiq # of layer 2 (RI 1) 1 1 2 s s sβˆ’ s 2 1 2 s s βˆ’ 𝜌21= 12 βˆ— 22 βˆ— 11 21 pmiq= s, for Re(𝜌21)β‰₯Im(𝜌21) t, for Re𝜌21

Β© Fraunhofer IIS

43

UE Statistics

TM4 Setup and Results

RI=0 (1 layers)

Page 44: IMPLEMENTATION OF TM4 INTO OAI SOFTMODEMΒ Β· pmiq # of layer 2 (RI 1) 1 1 2 s s sβˆ’ s 2 1 2 s s βˆ’ 𝜌21= 12 βˆ— 22 βˆ— 11 21 pmiq= s, for Re(𝜌21)β‰₯Im(𝜌21) t, for Re𝜌21

Β© Fraunhofer IIS

44

eNB Statistics

TM4 Setup and Results

RI=0 (1 layers)

Page 45: IMPLEMENTATION OF TM4 INTO OAI SOFTMODEMΒ Β· pmiq # of layer 2 (RI 1) 1 1 2 s s sβˆ’ s 2 1 2 s s βˆ’ 𝜌21= 12 βˆ— 22 βˆ— 11 21 pmiq= s, for Re(𝜌21)β‰₯Im(𝜌21) t, for Re𝜌21

Β© Fraunhofer IIS

45

Thank You