---
# System prepended metadata

title: Daily Note 24/07/2020
tags: [O-RAN, Daily Notes]

---

# Daily Note 24/07/2020
###### tags: `Daily Notes` , `O-RAN`
## Name : Christofel Rio Goenawan
## University : Bandung Institute of Technology (ITB)


---

## Schedule:
1. Study detailed works of L2 MAC Scheduler.
2. Study architecture of O- DU Interfaces.

## Outcome : 
1. Explained detailed work of L2 MAC Scheduler.
2. Explained architecture of O- DU Interfaces.

## Further Plan : 
- Study more detailed about L2 Interfaces
- Study more detailed about AIO Installation in Kubernets
- Try to deploy Acumos AIO in NTUST server


---

## Daily Log

### 1.Study detailed works of L2 MAC Scheduler. <mark>(9.00)</mark>
- In this meeting Writer presents the progress and latest result to Prof Ray, mentors and internee.

### 2.Study architecture of O- DU Interfaces. <mark>(13.00)</mark>
- Study more detail explanation in [Documentation](https://wiki.o-ran-sc.org/display/ORANDU/O-DU+High) and other sources.




---

## Report


### 1. L2 MAC Scheduler

>In this note Writer use [Documentation](https://wiki.o-ran-sc.org/display/ORANDU/O-DU+High) and [Ferlinda's Note](https://hackmd.io/@ferlinda/S1iQ2--pL) as study sources.

#### L2 MAC Scheduler Functional Blocks
From documentation , The simple functionality scheme of L2 MAC Scheduler can be seen as below.

![](https://i.imgur.com/KqMRKUS.png)


It is assumed that **DU includes complete MAC and scheduler functions implemented in the same physical platform**. Actual implementation may devide scheduler into functional sub-blocks differently.

#### Functionality

From scheme above , we can see there are 5 main functionality as below.

- **DL/UL Resource Scheduler** 
  - Corresponds to functionality of time-domain and frequency domain scheduling in DL and UL respectively.
  - Performed per scheduling period for single/multiple slots.
  - May include other functions: **beam selection, selecting of UEs and associated bearers per scheduling period, allocation of radio resources for PDCCH, PUSCH, PDSCH** and associated channels like DMRS.
- **DL/UL Link Adaptation**
  - Performs per UE Link Adaptation in DL and UL, respectively, return **effective MCS** to be used for channel allocation to UE.
- **UL Tx Power Control** 
  - Performs closed loop UL power control for PUSCH, SRS and PUCCH, mau estimate UL Tx power based on UE feedback/measured UL channels.
- **DL/UL MIMO Mode Control** 
  - Determines MIMO mode in DL and UL tobe used along with corresponding precoding matrix per UE.
- **TA Manager** 
  - Estimating TA command for UE based on feedback from L1 using PUSCH, PUCCH and SRS.


---

### 2.  O- DU Interfaces

> In this note Writer use [Documentation](https://www.o-ran.org/specification-access) and [Ferlinda's Note](https://hackmd.io/@ferlinda/SJaaKXCT8) as study sources.

There are 2 interfaces in O- DU that is **L1/L2** and **L2** Interfaces.

####  L1/L2 Interfaces

From Ferlinda's Notes , L1/L2 Interface **governs interaction between L1 and L2 is using NR FAPI (standardized by Small Cells Forum)** have 3 components as below.

1. P5: PHY configuration interface
2. P7: Main data path interface
3. P19: RF control interface

:::info
Note: O-RAN based implementation of O-DU will use an adaptation module at Frontend to handle P19 interface.
:::

#### L2 Interfaces

L2 Interfaces consisted of components as below.
1. **RLC - MAC Interface**
2. **MAC – Scheduler Interface**
3. **F1AP handler – MAC Interface**
4. **F1AP handler – RLC Interface**


### RLC - MAC Interface

- **RLC-MAC Interface**


| Direction | Message/API  | Description |
| -------- | -------- | -------- |
| RLC to MAC | Data transfer (DL) | API to transfer downlink data|
|MAC to RLC | Data transfer (UL)| API to transfer uplink data
|MAC to RLC | Schedule result reporting (DL) | DL schedule result Reporting to RLC
|RLC to MAC | Buffer status reporting (DL) | DL data volume in the RLC entity

- **RLC-MAC Data Transfer (DL) Message Contents**

|Element|Description|
|--|--|
|Frame Number | Air interface time | 
|Slot Number | Air interface time | 
|Cell index | Identification of the Cell | 
|UE index | Identification of the UE | 
|Number of RLC PDU | Number of RLC PDU to be send
|RLC PDU info(LCID,PDU LEN,RLC PDU) | LCID and length for the RLC PDU, RLC PDU data| 

- **RLC-MAC Data transfer (UL) message contents**

|Element|Description|
|--|--|
| Frame Number | Air interface time |
| Slot Number | Air interface time |
| Cell index | Identification of the Cell |
| UE index | Identification of the UE |
| Number of RLC PDU | Number of RLC PDU receive from MAC |
| RLC PDU info (RB id, PDU LEN, RLC PDU) | LCID and length for the RLC PDU, RLC PDU data | 

- **RLC-MAC Schedule result reporting (DL) message contents**

|Element|Description|
|--|--|
| Frame Number | Air interface time | 
| Slot Number | Air interface time | 
| Cell index | Identification of the Cell | 
| UE index | Identification of the UE | 
| Number of RB Number of RBs to send RLC PDU info (RB id, overall length for each RB) | RB id and length overall length for each RB | 

- **RLC-MAC Buffer Status reporting (DL) message contents**

|Element|Description|
|--|--|
| Cell index | Identification of the Cell |
| UE index | Identification of the UE |
| Number of RLC PDU | Number of RLC PDU in RLC buffer |
| RLC PDU info(RB id, PDU LEN) | LCID and length for each RLC PDU |

### MAC – Scheduler Interface
From Ferlinda's Notes , this modules interact via well-defined APIs which **ensure any scheduler implementation interworks with MAC**, allowing scheduler implementation from third-party vendor to be plugged in.

Scheduler module cater to the need of gNB for transmission of:
1. **UE specific UL/DL data and signalling messages**
2. **Broadcast Messages**

- **MAC-Scheduler interface**

![](https://i.imgur.com/KtNlrlq.png)

- **MAC to Scheduler APIs**

| Message/API                | Description                                                                                                                                                                                                         |
| -------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Cell configuration         | MAC provides SCH the cell configuration                                                                                                                                                                             |
| UE configuration           | MAC provides SCH the configuration/capabilities of a UE                                                                                                                                                             |
| Radio bearer configuration | MAC provides SCH the configuration of a radio bearer                                                                                                                                                                |
| DL HARQ Indication         | Contains the list of UEs for which DL HARQ ACK / NACK received from UE in a given TTI. **Note:** It is responsibility of the SCH to associate the DL HARQ ACK/NACKs received in a TTI to the corresponding HARQ process Ids.| 
|UL HARQ Indication |Contains the list of UEs for which UL Data on PUSCH was received. Per UE, indication of CRC check success or failure is sent by MAC to SCH based on CRC Indication received from L1. **Note:** It is responsibility of the SCH to associate the UL HARQ Indication received in a TTI to the corresponding HARQ process Ids.|
|Uplink channel condition information|MAC provides SCH channel condition (including RI, PMI, CQI) information for UEs for scheduling UL|
|Downlink channel condition information|MAC provides SCH channel condition (including RI, PMI, CQI) information for UEs for scheduling DL|
|RACH Indication Contents|MAC receives the RACH Indication and share the contents with SCH|
|Paging Indication Contents|MAC indicates Paging message (F1AP Paging) contents to scheduler|
|RACH Resource Request|This API is used to get CRNTI, preamble information from MAC for Contention Free Random Access|
|RACH Resource Release |This API is used to release the Contention Free RACH Resources at MAC|
|RLC Buffer Status Info |DL data volume in the RLC entity|
|Scheduling request indication|MAC provides SCH scheduling request information for UL|
|Buffer status report indication|MAC provides SCH buffer status report for UL scheduling|
|Power headroom indication|MAC provides SCH power headroom for UL scheduling|

- **Scheduler to MAC APIs**

|Message/API |Description|
|--|--|
|Scheduled Bytes in DL| SCH provides scheduling information for a given TTI for scheduling DL data. The scheduling information provides time and frequency domain resources to be scheduled with a list Logical Channels (LC) and transport block size opportunity per LC.|
|Scheduled Bytes in UL|SCH provides scheduling information for a given TTI for scheduling UL data. The scheduling information provides time and frequency domain resources to be scheduled based on the LC Group (LCG) buffer status or Scheduling Request from UE.|
|RAR Information |SCH shares the RAR and uplink scheduling and Msg3 scheduling information with MAC|
|Downlink control channel information| SCH provides to MAC information for DCI scheduling on PDCCH|

:::info
**Next Writer Will Study About Last 2 L2 Interface Part, that is F1AP handler – MAC Interface and F1AP handler – RLC Interface**
:::

---



## Reference
1. https://wiki.o-ran-sc.org/display/ORANDU/O-DU+High
2. https://www.o-ran.org/specification-access
