Ⅰ. 서 론
최근 무선 통신 기술의 발전과 함께 무선 통신망을 이용한 다양한 데이터 통신 시스템과 이를 이용하는 서비스에 대한 수요가 빠르게 증가하면서 주파수 자원의 고갈 문제가 발생하고 있다. 이러한 문제를 해결하기 위해 인지무선(cognitive radio, CR) 통신 기술과 동일대역 전이중(in-band full duplex, IFD) 통신 기술에 관한 연구가 진행되고 있다[1]~[3]. 이 과정에서 다양한 통신 방식을 지원하는 소프트웨어 정의 라디오(software defined radio, SDR) 기술을 사용한다. SDR은 기존 무선 통신 시스템의 고정된 하드웨어의 범주를 줄이고, 안테나 단에서 수신 신호를 디지털화하여 소프트웨어로 프로그램 가능한 하드웨어를 확장한다. 소프트웨어의 유연성을 이용하여 모든 프로토콜 스택을 조정 가능한 통신 시스템으로 구현하여 이를 이용하면 소프트웨어로 신호처리가 가능해 채널의 특성에 따라 통신 방식을 쉽게 재구성할 수 있다. 그리고 무선 통신 시스템의 RF 송·수신 하드웨어 플랫폼으로는 USRP(universal software radio peripheral)를 이용한다[4]. 이는 SDR을 개발하고 연구하는 데 사용되는 대표적인 플랫폼으로, 넓은 주파수 범위의 무선 통신 채널 구현을 가능하게 한다. 변조방식으로는 최근의 디지털 방송(digital video broadcasting, DVB)뿐만 아니라, 무선랜 IEEE 802.11 a/g/n/ac 등의 고속 무선 데이터 전송에서 이용하며, 5G 기술의 기반이 되는 직교 주파수 분할 다중 방식(orthogonal frequency division multiplexing, OFDM)을 활용한다[1~3],[5]. 이 방식은 주파수 효율(spectrum efficiency)이 높으며, 유·무선 채널에서 고속 데이터 전송에 적합한 방식으로 특히 다중경로 환경에서 우수한 특성이 있다. 그러나 OFDM 방식을 사용할 경우에 PAPR(peak to average power ratio)이 크다는 단점이 있어 하드웨어의 선형성이 요구된다.
현재까지 USRP 플랫폼과 SDR을 이용하여 데이터 통신 시스템을 구현하는 연구들이 다수 진행되었다. 참고문헌 [6]은 USRP와 GNU Radio를 이용한 MIMO-OFDM 신호 송·수신 시스템을 구현하여 비트 오류율(bit error rate, BER)을 제시하고, 각 변조방식별 통신 성능을 평가하였다. 참고문헌 [7] 또한 USRP와 GNU Radio를 이용하여 concatenated coding 방식의 OFDM 신호 송·수신 시스템을 구현하였다. 통신에 영향을 주는 여러 변수의 영향을 분석하며, 다양한 변조 방식에 대한 비트 오류율을 측정하였다. 참고문헌 [8]에서는 USRP와 LabVIEW를 이용해 변조 방식을 다르게 하여 OFDM 신호 송·수신 시스템을 구현하였으며, 신호 대 잡음비(signal to noise ratio, SNR)와 주기적 전치 부호(cyclic prefix, CP)를 다르게 하여 비트 오류율을 측정하였다. 그러나 USRP를 이용하여 구현한 대부분의 통신 시스템의 경우, 신호 대 잡음비와 비트 오류율 성능이 최적화되어 있지 않은 결과를 보여주고 있다. OFDM 신호와 같이 PAPR이 높은 신호를 USRP로 송수신하는 경우에는 선형성 보장을 위한 최적화 과정이 필요하다[9].
본 논문에서는 다른 USRP 플랫폼에 비해 상대적으로 저비용·저사양인 USRP B200과 SDR을 이용하여 송·수신부를 설계하였으며, 다양한 시스템에 적용할 수 있는 광대역 무선 통신 시스템을 구현하였다. 송·수신 신호는 잘 알려진 무선랜 표준 64-QAM OFDM 신호를 사용하였으며, 다른 신호와의 간섭을 피하기 위해 반송파는 2.61 GHz로 사용하였고, 점유 대역폭은 20 MHz이다[10]. USRP의 송신 Back-off와 이득 제어, 업샘플링 및 디지털 필터 최적화를 통하여 우수한 비트 오류율 특성을 획득했으며, 이미지 데이터를 송·수신하여 무선 채널 통신 간에 발생하는 오류를 정정하는 채널 코드의 성능도 확인하였다.
본 논문은 다음과 같이 구성된다. 2장에서는 구현한 송신부와 수신부에 대해 설명하였으며, 3장에서는 구현한 무선 통신 시스템을 이용해 시험한 결과에 대해 설명하고 이를 분석한다. 마지막으로 4장에서는 구현한 시스템의 성능을 정리하고 연구적 의의를 제시하며 결론을 맺는다.
Ⅱ. OFDM 송신 및 수신부 설계
본 논문에서 구현한 송신부의 구조는 그림 1과 같다. USRP를 통해 송신할 데이터는 패킷(packet) 단위로 구성하고 각 패킷마다 2,000개의 심볼 데이터를 할당하여 데이터 페이로드(payload)를 구성하였다. 그리고 채널 추정을 위해 물리계층 수렴 처리(physical layer convergence procedure, PLCP) 프리앰블(preamble)을 패킷의 앞쪽에 추가하였다. 각 패킷을 구성하는 데이터 페이로드의 시간은 8 ms이며, 데이터 페이로드를 구성하는 각 심볼의 시간은 4 us이다.
송신 정보의 일부를 담고 있는 하나의 패킷은 가장 먼저 그림 2의 스크램블러(scrambler)를 통과한다. 스크램블러는 S(x)=x7+x4+1의 생성 다항식을 사용하여 구현하였다. 또한 채널 추정을 위해 사용하는 파일럿(pilot) 신호 생성에도 동일한 스크램블러를 사용한다. 이후 콘볼루션 인코더(convolution encoder)를 통해 오류 정정을 위한 순방향 오류 정정(forward error correction) 코드를 생성하고 블록 인터리버(block interleaver)를 지난다[11]. 콘볼루션 인코더는 설정된 구속장(constraint length)과 생성 다항식(generator polynomial)에 따라 구성되어 통신 중에 발생하는 오류를 정정할 수 있도록 데이터를 부호화(encoding)하는데, 이 과정에서 오류 정정 시 사용되는 중복 데이터(redundant data)가 추가된다. 동작 방식은 그림 3과 같이 구속장 K를 7, 부호화율을 1/2, 생성 다항식을 (171, 133)으로 설정하였다. 블록 인터리버는 집단으로 발생하는 오류인 집단 오류(burst error)의 영향을 줄이는 역할을 한다. 본 논문에서는 행으로 쓰고 열로 읽어가는 방식으로 인터리빙(interleaving)을 진행하였다. 채널 코딩 후 64-QAM 매퍼(Mapper)를 사용하여 변환한 복소수 신호를 그림 4와 같이 802.11a 표준을 따르는 OFDM 심볼의 부반송파(subcarrier)에 할당하여 OFDM 심볼을 구성한다. OFDM 변조는 직교성(orthogonality)을 가지는 다수의 부반송파들을 이용하여 다중 반송파 방식으로 데이터를 보내기 때문에 전송속도가 빠르고 페이딩(fading)에도 강한 장점이 있다. 전체 64개의 부반송파는 48개의 데이터 부반송파와 4개의 파일럿 부반송파, 그리고 보호대역을 위한 12개의 널(Null) 부반송파로 구성된다. 각 데이터 부반송파는 64-QAM으로 매핑한 복소수 데이터로 변조되어 있어서 6비트 정보를 가진다. 주파수 영역에서 20 MHz의 대역폭을 가지고 부반송파 주파수 간격은 312.5 kHz이다. 인접 채널 간 간섭을 막기 위해 11개의 널 부반송파로 구성된 보호대역이 있어 실제 점유 대역폭(occupied bnadwidth, OBW)은 16.6 MHz를 만족한다. 주파수 영역에서 OFDM 심볼을 구성한 뒤, 역푸리에 변환(inverse fast Fourier transform, IFFT)을 통해 시간 영역에서의 OFDM 변조 신호를 얻는다. 그리고 다중경로 환경에서 발생하는 부호 간 간섭(intersymbol interference, ISI)과 부반송파 간 간섭(intercarrier interference, ICI)을 막기 위해 신호 끝단의 1/4에 해당하는 신호를 가져와 앞에 CP로 붙여준다. 이어서 수신부에서 후처리 시 신호를 감지하고 주파수 오차를 측정하며 동기를 맞출 수 있도록 PLCP 프레임인 Short code 프리앰블과 Long code 프리앰블을 추가한다. 그림 5는 PLCP 프레임과 OFDM 데이터 페이로드의 시간 영역 송신 신호를 나타낸다. 수신부에서 데시메이션과 디지털 필터를 통한 잡음 제거를 위해 2배 업샘플링(up-sampling)하여 40 MHz 신호를 생성한 후 레이즈드-코사인 필터(raised-cosine filter)를 통과한다. 그리고 OFDM 신호의 PAPR이 높기 때문에 USRP의 디지털-아날로그 변환기(digital-to-analog converter, DAC)의 최대 출력에서 14 dB back-off하여 송출하였다. 데이터 송신 시 필요에 따라 데이터를 구성하는 패킷을 여러 개 붙여서 보내거나 패킷을 하나씩 연쇄적으로 보낼 수 있다. 그림 6은 생성한 OFDM 신호를 USRP를 이용하여 반송파 2.61 GHz로 송출한 RF 신호를 스펙트럼 분석기로 측정한 결과이다.
그림 7은 구현한 수신부 구조이다. USRP를 통해 수신한 40 MHz 샘플 신호는 데시메이션(decimation) 필터를 통과하여 20 MHz 샘플 신호로 변환한다. 그리고 신호의 유무를 검출하기 위해 수신 신호 강도 지수(received signal strength indicator, RSSI)를 측정한다. RSSI는 수신 신호의 자기상관(autocorrelation) 값으로 Short code 프리앰블을 이용하여 검출하며, 자동 이득 제어(automatic gain control, AGC)에 활용한다. 그리고 Short code 프리앰블을 이용하여 coarse frequency offset(CFO)을 추정하여 데이터를 보정한다. 짧은 시간의 short code 프리앰블을 이용한 주파수 오차 보정이 완벽하지 않으므로, long code 프리앰블을 이용하여 한번더 fine frequency offset(FFO)을 추정하고 보정한다[12],[13]. 그리고 알려진 long code 프리앰블과 신호의 상호 상관(cross correlation)을 통해 CP의 위치를 추정한다. 추정한 위치를 이용하여 CP를 제거하고 모든 신호에 대해 푸리에 변환(fast fourier transform, FFT)을 계산한다. 푸리에 변환 후, 송신한 Long code 프리앰블과 수신한 long code 프리앰블의 크기와 위상 차이를 주파수 영역에서 추정하여 등화기(equalizer)로 보정한다. 그리고 데이터 페이로드의 각 심볼에 포함된 4개의 파일럿을 이용하여 파일럿의 공통 위상(common phase)과 차동 위상(differential phase)을 구하여 채널 보정을 수행한다. 채널 보정을 완료한 복소수 데이터들이 64-QAM 디매퍼(de- mapper)를 지나면 하나의 복소수 데이터 당 6비트 정보를 얻을 수 있다. 얻은 비트 데이터들은 채널에서 발생한 오류 정보를 포함하고 있는데, 디인터리버(de-interleaver)와 비터비(viterbi) 디코더를 지나면서 오류를 정정한다[11]. 먼저 디인터리버가 송신부의 인터리버 동작 방식과 반대로 이진 데이터를 열로 쓰고 행으로 읽어간다. 이어서 비터비 디코더가 트렐리스 다이어그램(Trellis diagram)을 이용하여 선행자(predecessor)와 각 분기 메트릭(branch metric) 의 합인 경로 메트릭(path metric)이 최소가 되는 경로를 찾아 해당 경로의 데이터로 복호하며 오류를 정정한다. 채널 복호화 과정을 통한 오류 정정이 끝나면 스크램블러와 동일한 방식으로 동작하는 디스크램블러(de-scrambler)를 거쳐 최종 수신 데이터를 얻는다.
Ⅲ. 시험 및 측정 결과
본 논문에서는 OFDM 데이터를 통신하기 위해 그림 8과 같이 시험 환경을 구성하였다. 송신부와 수신부로 Ettus사의 USRP B200을 사용하였으며, 데이터 전처리와 후처리를 위해 MATLAB을 이용하였다.
표 1은 시험 환경에 사용한 컴퓨터와 USRP B200의 사양이다. 그리고 표 2는 채널 조건으로 반송파는 2.61 GHz, 기저대역 샘플링은 40 MHz, 신호의 대역폭은 20 MHz으로 설정하였고, 변조방식으로 64-QAM과 OFDM을 사용하여 송·수신 시험하였다.
Host PC | |
---|---|
OS | Ubuntu 18.04 LTS |
CPU | Intel Core i7-4790 CPU @3.60 GHz |
Memory | 32 GB |
USRP B200 | |
Host interface | USB 3.1 |
A/D converter | 12 bits / 61.44 MS/s |
D/A converter | 12 bits / 61.44 MS/s |
System parameters | Value |
---|---|
Carrier frequency | 2.61 GHz |
Sampling rate | 40 Msps |
Bandwidth | 20 MHz |
Mapping | 64-QAM |
FFT size | 64 |
GI length | 1/4 |
무선 시스템 성능 평가를 위해 먼저 신호 대 잡음비에 따른 비트 오류율을 확인하고, 이후 이미지 데이터를 이용하여 오류 정정 코드의 오류 정정 성능을 확인하였다.
먼저 비트 오류율을 확인하기 위해 무작위 데이터를 생성하여 10개의 패킷을 송신하고, 수신한 신호 대 잡음비에 따른 비트 오류율을 측정하였다. 각 패킷은 PLCP 프리앰블과 데이터 페이로드로 구성하였고, 데이터 페이로드는 2,000개의 심볼로 구성하였다. 그리고 각 심볼은 48개의 데이터 부반송파에 각각 6 bits의 정보가 할당되어 있어 각 패킷은 576 Kbits의 정보를 가지고, 송신한 10개의 패킷에는 5.76 Mbits가 포함되어 있다. 각 심볼 점유 시간은 4 us이며, 각 패킷의 데이터 페이로드 전체 점유 시간은 8 ms이다.
그림 9는 USRP로 수신한 수신 신호의 전력 밀도 스펙트럼을 나타내고, 그림 10은 신호 대 잡음비에 따른 비트 오류율 측정 결과이다. 그리고 표 3은 참고문헌 별로 제시된 최대 비트 오류율을 정리한 표이며, 각 문헌의 우수한 비트 오류 성능을 비교할 수 있다.
Ref [6] | Ref [7] | Ref [8] | Ours | |
---|---|---|---|---|
Mod | 64-QAM | 64-QAM | 16-QAM | 64-QAM |
BER | 7.8×10−1 | 8.7×10−1 | 9×10−2 | 1.7×10−6 |
그림 11은 패킷 하나의 데이터 페이로드를 파일럿 보정한 후에 그린 성상도이다.
채널 코드의 오류 정정 성능을 검증하기 위해 512×512, 8 bits의 이미지 데이터로 OFDM 신호를 만들어 송·수신하였다. 채널 코드가 없는 경우에는 비트 오류율이 2.73× 10−5이었으며, 채널 코드를 통한 오류 정정을 진행한 후에는 비트 오류가 발생하지 않았다.
Ⅳ. 결 론
본 논문은 Ettus사의 USRP B200 2대를 사용하여 802.11a WiFi 표준을 따르는 OFDM 데이터 통신 시스템을 구현하였으며, 구현한 시스템이 낮은 비트 오류율을 가지도록 최적화하였다. 송·수신 데이터는 64-QAM 방식을 사용하였고, 반송파 주파수는 2.61 GHz이고, 점유 대역폭은 20 MHz, 기저대역 샘플링 속도는 40 MHz를 사용하였다. 시험을 위해 채널 추정과 보정, 그리고 동기화 알고리즘을 구현하였다. 또한 성능 평가를 위해 신호 대 잡음비에 따른 비트 오류율을 측정하였고 채널 코드를 추가하여 오류 정정을 수행하였다. 시험 결과, 최적의 비트 오류율 1.75×10−6을 달성하였다. 그리고 2 Mbits 크기의 이미지 데이터로 신호를 구성하여 송·수신하였을 때, 2.73×10−5의 비트 오류율을 얻었으며, 오류 정정을 진행했을 때 비트 오류 없이 데이터가 송·수신된 것을 확인하였다. 이를 통해 구현한 시스템을 이용하여 문제없이 무선 데이터 통신이 가능하다는 것을 확인하였다.
본 연구에서는 USRP를 이용하여 고속 데이터 전송이 가능한 OFDM 변조와 복조 및 채널 보정과 동기화 과정을 구현하였다. 특히 저사양의 USRP를 PAPR이 큰 OFDM 신호 전송에 최적화하여 낮은 비트 오류율을 달성하였다.