Update UE design doc
This commit is contained in:
+12
-11
@@ -16,19 +16,20 @@ The UE exits when at any point in operation it gets out of synchronization. When
|
|||||||
## Initial Synchronization Block
|
## Initial Synchronization Block
|
||||||
```mermaid
|
```mermaid
|
||||||
graph TD
|
graph TD
|
||||||
A(Start) -->|UE_thread| B["readFrame<br/>--Reads samples worth 2 frames"]
|
start(Start) -->|UE_thread| rxRu["RU read<br/>(Reads two frames)"]
|
||||||
B --> |Tpool thread| C["UE_synch<br/>--PSS & SSS detection<br/>--PBCH decode"]
|
rxRu --> |Tpool thread| sync["SSB detection<br/>(PSS & SSS detection<br/>PBCH decoding<br/>SIB decoding)"]
|
||||||
B --> |UE_thread| D["readFrame<br/>--trash samples to unblock radio"]
|
rxRu --> |UE_thread| rxRuDummy["RU read<br/>(Dummy read till sync detection to avoid buffer overflow at radio)"]
|
||||||
C --> |Tpool thread| E[syncInFrame<br/>--shift first sample to start of frame]
|
sync --> |Tpool thread| frameSync["Frame synchronization<br/>(Shift received samples to align with frame)"]
|
||||||
D --> |UE_thread| E
|
rxRuDummy --> |UE_thread| frameSync
|
||||||
```
|
```
|
||||||
## Regular Slot Processing
|
## Regular Slot Processing
|
||||||
```mermaid
|
```mermaid
|
||||||
graph TD
|
graph TD
|
||||||
E[syncInFrame<br/>--shift first sample to start of frame] -->|UE_thread| F["trx_read_func (slot n)"]
|
sync["Frame synchronization<br/>(Shift received samples to align with frame)"] -->|UE_thread| hw_read["RU read (slot n)"]
|
||||||
F --> |Tpool thread| G["processSlotTX (slot n+4)<br/>--PUSCH encode<br/>--PUCCH encode<br/>--trx_write_func"]
|
hw_read --> |UE_thread| rxPreProc["PBCH & PDCCH decoding (slot n)"]
|
||||||
F --> |Tpool thread| J["UE_processing (slot n)<br/>--PDCCH decode<br/>--PDSCH decode"]
|
hw_read --> |Tpool thread| txProc["Tx processing (slot n+3)<br/>PUSCH encode<br/>PUCCH encode (wait for DLSCH in slot n+3-k1 to finish)<br/>RU write"]
|
||||||
F --> |UE_thread| I(Merge)
|
rxPreProc --> |Tpool thread| rxProc["PDSCH decoding (slot n)"]
|
||||||
G --> |Tpool thread| I
|
rxPreProc --> |UE_thread| join(Merge)
|
||||||
I --> |Go to next slot<br/>UE_thread| F
|
txProc --> |Tpool thread| join
|
||||||
|
join --> |Go to next slot<br/>UE_thread| hw_read
|
||||||
```
|
```
|
||||||
|
|||||||
Reference in New Issue
Block a user