ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 5G를 위한 다양한 기술들
    5G & 6G 통신 기반 기술 2020. 7. 6. 07:16
    반응형

     5G는 여러 기술들이 복합적으로 사용되어 Requirement를 만족하는 기술이다. 먼저, 안정적인 통신 시스템을 구성하기 위해 어떤 기술들이 있으며, 5G에서 이런 기술들이 어떻게 적용되는지 간략하게 알아보자.

     

    Channel Coding

     데이터를 전송하는 과정에서 간섭이 있는 Channel을 통과하기 때문에 보내고자 하는 데이터가 제대로 전송되지 못할 수가 있다. 따라서, Receiver (Rx)에서 Transmitter (Tx)가 보낸 데이터를 Decoding할 때, 성공 확률을 올리기 위해 서로 몇 가지 기술을 약속한다. 그 중에, Tx에서 Rx가 사용할 수 있도록 오류 수정 코드를 함께 Encoding하여 보내는 방식을 Channel Coding이라 한다. Channel Coding은 크게 4가지 Step이 있다.

    1. CRC를 통해 'Error Detection'

    2. Redundancy bit를 붙여서 'Error Correction'

    3. 지정한 Rate를 맞춰주기 위해 puncturing이나 Repetition을 하는 'Rate matching'

    4. Bit error가 한 쪽에 쏠려 decoding 확률이 낮아지는 Error Burst를 줄이기 위해, bit를 섞어주는 'Interleaving'

     LTE에서 5G NR로 넘어가면서 가장 크게 바뀐 부분은 Data를 주고 받을 때는 LDPC Coding을, Control 메시지를 주고받을 때는 Polar Coding이라는 방식을 선택한다는 점이다. Channel Coding에 대한 설명은 별도의 페이지에서 다루도록 한다.

     

    HARQ

     두 번째로 알아볼 기술은 Hybrid Automatic Repeat Request (HARQ)다. HARQ는 Rx가 Decoding에 실패하면 재전송을 요구하는 ARQ 방식과 Rx가 Redundancy bit를 이용해 오류를 복구하는 과정인 Forward Error Correction (FEC)를 섞은 방식이다. 기본적인 아이디어는 예전에 받았던 데이터들과 새로 재전송 받은 데이터들을 모두 사용해서 최대한 복구를 시도해서 Decoding해보고 Decoding이 안 되면 다음 재전송을 받는 방식이다. 같은 메시지를 계속 받는 방식을 Chase Combining HARQ (CC-HARQ), 오류 정정을 위한 코드(Redundancy)를 바꿔가며 보내는 Incremental Redundancy HARQ (IR-HARQ) 방식이 있다. 참고로 HARQ은 5G에서 처음 생긴 기술은 아니다.

     5G에서 HARQ이 달라진 부분은 Code-Block Group (CBG)라는 기술이다. 개념만 쉽게 말하면, MAC Layer에서 내려온 Transport Block (TB)라는 데이터 단위를 여러 개의 Code-Block Group으로 쪼개서 보내자는 얘기다. 멀쩡한 TB를 왜 잘라서 보내는지는 예를 들어서 설명하도록 하겠다. 

     5G에는 크기가 큰 eMBB 데이터를 보내는 중에 긴급한 URLLC 메시지가 새치기해서 보내는 Pre-emption이라는 방식이 있다. 그러면 새치기를 당한 eMBB입장에서는 URLLC 데이터 크기만큼 데이터를 제대로 전송 못 할 가능성이 커진다. 기존에는 전송이 실패하게 되면 커다란 데이터를 통째로 다시 전송해야 한다. 이런 방식이 너무 비효율적이기 때문에 5G에서는  여러 개의 Code-Block으로 나눠서 보내고, 이 Code-Block을 몇 개씩 묶어서 Code-Block Group (CBG)을 재전송의 단위로 잡는 것이다. 즉, 재전송이 필요하면 해당하는 CBG만 다시 보내는 것이다. UE는 HARQ를 할 때, 자기가 얼만큼의 processing resource를 가지고 있는지, 얼마나 빠르게 feedback을 줄 수 있는지에 대해서 말해준다.

      

    CORESET

    CORESET는 Control Channel이 될 수 있는 후보군으다. UE는 Control Channel을 찾기위해 모든 Channel BW를 뒤져야하는 LTE와 다르게, Bandwidth Part (BWP)의 일부분만을 CORESET으로 지정함으로써 효율적으로 Control Channel을 찾을 수 있다. CORESET은 3가지로 나뉜다.

     첫 번째 CORESET는 PBCH를 통해 CORESET의 위치가 전달되는 Common COESET이다. 이 CORESET는 Remaining Minimum SI (RMSI)을 스케쥴링하기 위한 PDCCH의 후보군이다. PBCH와 RMSI는 Initial Access에서 조금 더 자세히 설명하고 있다.

     두 번째는 RMSI를 통해 CORESET의 위치가 전달되는 Common CORESET이다. 이 CORESET는 이후 Random Access에 필요한 Control 정보가 담긴 PDCCH의 후보군이다.

     마지막으로는 Random Access가 끝나고, BS - UE와의 RRC signal을 통해서 CORESET의 위치가 전달되는 UE-Specific CORESET이 있다. 일반적인 Control Channel의 후보군이다. 앞에 두개의 CORESET은 보통 slot의 맨 앞 1~3 Symbol에 위치하지만, 나중에 UE-Specific CORESET은 어느 symbol에서 시작하던 상관없다. CORESET은 5G에서 가장 중요한 개념 중 하나이기 때문에 별도의 페이지에서 조금 더 자세히 다룰 예정이다.

     CORESET는 Control Channel이 될 수 있는 후보군이기 때문에 Channel 전체를 다 볼 필요없이 여기만 보고있으면 Control message를 받을 수 있다.

     

    •   Control Channel

     Control Channel은 기본적으로 Uplink를 위한 PUCCH, Downlink를 위한 PDCCH로 나뉜다. PDCCH는 Control Resource Sets (CORESETs)라는 부분에 할당될 수 있다. LTE는 Carrier Bandwidth 전체에서 PDCCH가 할당될 수 있지만, NR은 Carrier Bandwidth 중 일부분인 CORESETs 중에서 선택이 되기 때문에 UE 입장에서는 CORESETs만 모니터링 하고 있다가 Control message를 Decoding하면 된다. PUCCH는 주로 HARQ의 ACK 신호, Channel state에 대한 Report, Uplink Scheduling 요청신호를 전송한다. PUCCH는 Short PUCCH와 Long PUCCH가 있는데, Short PUCCH는 1 slot에서 1~2 symbol을 보내는 방식으로, 빠르게 HARQ ACK를 보내는 Self-Contained slot을 위해 쓰인다. 이처럼 Latency가 중요할 때는 Short PUCCH를 보낸다. 하지만, Power를 높이지 못할 때도 있는데, 이 경우, E=P*t 에서 시간을 늘림으로써 필요한 Signal Energy를 확보해서 SNR값을 올릴 수 있다.

     

    Beam Management

     고주파로 갈 수록 직진성이 강해지고, Coverage가 줄어들기 때문에 Beam 관리가 중요하다는 말을 했다. 낮은 주파수에서도, Massive MIMO으로 방향성이 있는 빔을 쏴서 Spatial Multiplexing을 통해, Data Rate을 높일 수 있다. 예를 들어서 Tx에 32개의 Antenna가, Rx에 16개의 Antenna가 있으면 '이론적'으로는 16개의 RANK가 가능하다. 하지만 실제 시스템에서는 Single User MIMO (SU-MIMO)는 8개의 Rank, Multi User MIMO (MU-MIMO)는 12개의 RANK가 있다고 한다. 그 이유는 반사파의 힘이 약해서 Matrix를 보면 0에 가까운 항들이 많고, 각각의 안테나에서 보낸 신호들이 높은 Correlation을 갖기 때문에 RANK가 확 뛰지 않는다는 것이다.

     이렇게 RANK와 SNR이 충분히 확보되어 있는 까다로운 상황에서는 Spatial Multiplexing이라는 방법을 통해서 Interference의 영향력이 최소화 된 상태에서 Data Rate을 증가시킬 수 있다. 정해진 RANK에서는 각자의 DMRS Port가 할당되고, 채널상태를 주고 받게된다. 그리고, 관련 논문들 보다 보면 Codeword라는 용어가 나오는데, 각각에 맞는 Modulation Coding Scheme (MCS)가 사용된다 즉, 1 codeword는 1개의 MCS를 사용, 2 codeword는 2개의 MCS를 사용한다. NR에서는 4개의 Layer까지는 1개의 codeword를, 5~8개의 Layer는 2개의 codeword를 사용한다.

    이렇게 Tx와 Rx 사이에 Setting된 안테나 Matching은 DL과 UL에서 Channel 상태가 비슷하다고 가정할 수 있기 때문에 같은 Matching을 사용할 수 있다. 결국 Tx와 Rx 사이에 어떤 Beam으로 통신할지는  

    • 어떤 Beam을 쏠지 결정하고 (Selection)
    • Beam의 특성을 서로 측정해보고 (Mesaurement)
    • 각자 측정한 특성을 알려주고, (Report)
    • 공간적으로 흩어진 User들에게 Antenna에서 나오는 Beam을 조절해가며 (Sweeping) 데이터를 주고 받는다.

    의 순서로 작동하게 된다.

      

    Synchronization

    UE 기준으로 Downlink는 gNB에서 보내는 SS block을 통해서 통신 초기에 어디부터 신호가 시작인지를 알아낸다. UE와 gNB 사이에 신호를 주고 받을 타이밍을 동기화하기 위해 Primary & Secondary Synchronization Signals (PSS &SSS)라는 신호를 주고 받는다. 이 후, Broadcast Channel에서 Master Information Block (MIB)을 받고, RACH를 통해 gNB와의 Connection을 완성한다.

     

    Initial Access에서 Cell 정보 받기 (MIB / SIB)

     처음 UE가 Cell 안에 들어왔을 때의 Access 방식은 일반적인 DL이나 UL과는 살짝 다르다. 이 때의 Access 방식을 Initial Access라고 한다. 

    UE 입장에서는 처음 Cell에 들어왔기 때문에 Cell의 정보를 받아야 하는데 이 정보들을 Minimum System Information (MSI)라고 한다. 그런데, MSI를 한번에 전부 받으면 비효율적이기 때문에, 우선순위를 정해서 MIB와 SIB로 나뉜다.  

    gNB가 Physical Broadcast Channel (PBCH)를 통해서 주기적으로 Master Information Block (MIB)라는 Cell의 기본적인 특성을 담은 신호를 계속 Broadcast한다. 이 주기는 Carrier Frequency의 범위에 따라서 정해진다. 대략적으로 40~60 bits 정도되는 작은 크기로, UE는 이를 Decoding한다. PBCH를 통한 MIB와 추가적인 Control Channel을 통해서 SIB를 Scheduling한다.

     가장은 아니지만 중요한 Cell의 나머지 특성들을 담은 정보들을 System information Block (SIB)라는 정보에 담아서 보낸다. 이 때 SIB는 PDSCH에 담겨서 가는데, 이런 정보들을 Remaining MSI (RMSI)라고 한다. SIB는 필요에 따라서 SIB 1, SIB 2 등 여러 종류의 SIB가 전달될 수 있다. 2, 4, 7 symbol 단위의 PDSCH mini-slot 전송도 가능하고, Slot-based의 PDCCH, PDSCH 단위 전송도 가능하다.

    LTE에서는 SIB가 UE가 원하던 원하지 않던 주기적으로 Broadcast된다. 하지만 NR에서는 SIB가 UE가 원하는 타이밍에 전송되는 Type이 추가되었다.

    우선 UE의 Power가 On되면, Cell을 찾고 Cell에서 Broadcast된 MIB를 Decoding한다. MIB의 내용들을 토대로 SIB들을 Decoding한다. MIB는 BCH를 통해서 전송되고, 80ms 주기로 전송된다. SIB Type1의 decoding에 필요한 parameter값들(SCS, DMRS의 위치, PDCCH의 위치 등)을 가지고 있다.

     SIB Type 1은 MIB를 제외한 RRC에서의 첫 번째 message고, DL-SCH를 통해 전송된다. 따라서 관련된 정보들 (DCI나 PDSCH를 decoding하기 위한 정보들)을 정의하고 있다. 기본적으로 160 ms마다 전송하며, 주기적으로 보낼지, 요청을 받아서 전송할지를 알려줘야 한다. 주변 Cell의 List나 Re-selection 기준 등을 담은 다양한 SIB Type들이 존재한다.


      

    Initial Access에서 UE 연결하기

     기본적인 Cell의 정보를 얻었으면 이제 본격적으로 UE를 연결할 때다. 처음에는 UE가 특정신호를 gNB로 쏴서 내가 할 말이 있음을 알린다. 이 특정신호를 Preamble이라 하는데, 이미 정해진 64개의 Preamble중에 UE가 골라서 쏘는 방식이다. 그러면 gNB 입장에서는 UE와의 거리 등을 계산해서 전송할 타이밍 Time advance (TA)을 잡아주고, Uplink를 보낼 자원을 할당해준다. UE는 할당된 자원을 통해 UL-SCH를 통해서 데이터를 보내고, gNB는 Contention Resolution 메시지를 전송함으로써 initial access가 일반적인 통신 Mechanism으로 들어온다.

     Contention Resolution을 보내주는 이유는 64개의 Preamble이 다른 User와 겹쳐서 이 과정이 원활하게 이어지지 않을 수도 있기 때문에, 이 과정들이 잘 이루어졌다고 알려주는 과정이다. 이처럼 Contention based이기 때문에 번거로운 절차가 있다. Handover는 Cell을 이동해서 처음 Access 하는 것이지만, 이전 연결 정보들을 활용해서 Contention-free한 initial Access를 할 수 있다.

     

    Downlink Control Indicator (DCI)

    Downlink Control Indicator (DCI)는 PDSCH와 PUSCH를 어떻게 Scheduling할지 알려주는 정보로 slot format을 UE에게 알려주는 Format 2_0, PUSCH를 스케줄링하는 Format 0, PDSCH를 스케줄링하는 Format 1 등의 다양한 DCI Format이 나눠져 있다. 자세한 내용은 TS 38.212에 있고, 각 Format마다 다른 Field (bit)들로 구성되어 있는데, 세부 bit 할당에 대해서는 TS 38.212를 보면 되지만, 직접 프로토콜을 건드리는 엔지니어가 아니면 굳이 볼 필요는 없다. 보통 MCS나 Coding rate, Spectral Efficiency, HARQ process 개수 등 data decoding에 필요한 정보들은 대부분 DCI에 들어있다. DCI가 PDCCH를 통해서 전송되는 것처럼 UCI가 PUCCH를 통해서 전송된다. 하지만 UCI는 PUSCH를 통해서도 전송할 수 있다는 차이가 있다.


      

    Start and Length Indicator Value(SLIV)

     SLIV는 PDSCH, PUSCH에서 time축으로 시작 Symbol과 연속적인 symbol의 개수를 표현해주는 테이블 형태다. TS 38.214에 나와있는 Resource Allocation Table에 나와있는 대로 S와 L의 조합으로 표현한다. 몇 번째 symbol에서 시작하는 어느 길이의 symbol이 할당되는지를 통해 mini-slot의 길이가 정해진다.

     

    Dual Connectivity

    여러 개의 Tx/Rx를 가지고 있는 user가 여러 개의 기지국에 연결되어 Resource를 동시에 지원받는 시스템을 Dual Connectivity라고 한다. 예를 들어서, NSA에서 user는 4G의 eNB망과 5G의 gNB에 연결되어 Resource를 동시에 지원받을 수 있다. 이런 구조 또한 Dual connectivity라 할 수 있다. 사실 Dual Connectivity는 5G에서 처음 나온 개념은 아니다. LTE 시절부터 LTE망 두 개에서 서비스를 받는 구조도 Dual Connectivity라고 한다. 예를 들어서, 앞서 말한 바와 같이 Carrier Frequency가 높은 LTE망은 전송 거리가 짧고, 이런 Cell을 Small Cell이라 한다. 이런 Small Cell과 Carrier Frequency가 낮은 LTE망 즉, Macro cell을 상황에 따라서 Resource allocation을 효율적으로 할 수 있게 되는 것이다. 현재 NSA 논의에서는 이미 깔려있는 LTE망을 잘 써보자는 취지로 LTE의 EPC라는 Core Network망을 Master노드로, NR의 gNB로 쓰는 경우가 많다.

      

    Packet Duplication

    Release-15에서 Latency와 Reliability를 모두 만족시키기 위해 논의되었다. 말 그대로 1개 Packet을 복제해서 여러 번 보내는건데, Dual-Connectivity와 연계되어 다양한 경로로 Rx에게 전송하는 경우가 많다.

     

    Blind Re-transmission

     HARQ방식이던, Reliability를 만족하기 위해서는 재전송 방식이 있어야한다. 기존의 재전송 시스템은 ACK 메시지가 없던가, NACK 메시지가 오면 패킷이 제대로 전송되지 않았기 때문에 재전송하는 구조다. 하지만, ACK/NACK가 오는 Feedback delay가 URLLC에서는 무시할수 없을만큼 크기 때문에 Feedback을 기다리지 않고 미리 보내는 방식을 말한다. 주로, Latency가 중요한 V2X에서 많이 사용이 된다. Reliability와 Latency는 확보할 수 있지만, 그만큼 Resource 소모가 불필요하게 많아지기도 한다.

     

    반응형

    댓글

Designed by Tistory.