[USRP] OFDM 예제 (No HW, only LabVIEW)

요즘 연구실 능력자 분한테 LabVIEW 및 USRP 사용법을 전수 받고있다.
지난주 추석 연휴 동안 조금 짬이 나서 OFDM을 예제를 reproduce 해봤는데
몇몇 function block 들은 정확하게 뜯어보지 않았지만 일단 USRP 없이 LabVIEW만으로 OFDM simulation을 돌리는 데 성공했다.
(이런 것을 진짜 simulation이라고 하는건데.. 내 논문에서의 MATLAB 스크립트 따위와 비교됨 ㅜㅜ)
USRP를 넣는 것은 이번주에 완성할 계획!

뭐 아직 LabVIEW 왕초보라 큰 comment는 별로 없고 평소와 같이 몇 가지 결과 모습을 기념으로 저장해본다.

1. Tx

No HW 버젼의 LabVIEW OFDM 예제는 기본적으로 queue를 이용하고 한 queue에 OFDM 심볼을 5개 전송한다.
그래서 Loop 도는게 너무 빠르면 queue가 쌓이기 시작하고 컴퓨터 RAM을 야금 야금 잡아먹는듯.
Modulation은 4QAM이다.



2. Rx

Tx에서 queue를 이용하여 전송한 OFDM symbol이 Rx에도 차곡 차곡 쌓이고 처리된다.
OFDM 예제에서 Rx 이해하는 것이 훨씬 오래걸렸는데, 그 이유는 ideal 상황과 다르게 frequency offset이라던가 time offset 등의 현실적인 요소들을 보정해줘야하기 때문.
Van de Beek 알고리즘을 사용해서 하는데 이 function block을 이해하려면 Van de Beek의 논문 원본을 읽어봐야 할 것 같다.

J.J. van de Beek, M. Sandell and P.O. Borjesson,
"ML estimation of time and frequency offset in OFDM systems,"
IEEE Transactions on Signal Processing, Vol. 45, No. 7, pp. 1800 - 1805, Jul. 1997.

특히 내가 아직 이해하지 못해서 그런지는 모르겠지만 해당 OFDM 예제에서는 수신된 OFDM 심볼 5개 중 첫 번째 심볼은 frequency offset과 time offset을 보정하는 데 희생(?)되고 마지막 심볼은 큰 이유 없이 버린다.. (이유가 있을 수도 있다. 단지 나의 이해가 부족할 뿐일 수 있다.)
즉 오직 가운데 3개의 심볼만 decoding 함..

처음에 너무 이 점이 이상해서 OFDM 심볼 5개 모두 decoding 다 하도록 rx decoding loop를 5회 전부로 설정하고 돌려봤더니 다음과 같이 equalized constellation이 이따금씩 엉망이 되었다.


특히 Symbol들의 phase가 엉망진창이 되는 경우마다 equalized constellation이 decoding 하기 어렵게 망가지는 것을 확인할 수 있다.
Ideal 하게는 4QAM이기 때문에 네개의 모서리에 각각 옹기종기 모여있어야 한다.

이와 반대로 원래의 OFDM 예제처럼 OFDM symbol 중 가운데 3개의 symbol들만 decoding하도록 설정했더니 이게 웬일.. equalized constellation이 엄청나게 잘 찍혔다!
아래와 같이 4개의 꼭지점에 빈틈 없을 정도로 모여있는 것을 볼 수 있다.


대체 이 magic(?)은 무엇인가..
일단 논문부터 펴야...

Comments

  1. 혹시 usrp labview코드는 예제에 있는것을 사용하셨나요??

    ReplyDelete
    Replies
    1. 아 저는 아는 지인이 작성한 코드를 거의 따라하듯이 해서 구현했습니당

      Delete
    2. 혹시 usrp관련해서 학부생이 할만한 프로젝트가 어떤게 있을까요...

      Delete
    3. 저도 사실 요 포스트 이후에는 USRP를 안만져서 잘 모르겠지만..

      1) 위 예제처럼 OFDM을 구현해 보는 것도 좋을 것 같고

      2) Multiple Input Multiple Output (MIMO) 에 대해 어느 정도 아신다고 하면 Alamouti Space-Time Block Code (STBC) 구현 후 더 이전 기술인 Maximal Ratio Combining (MRC)와의 성능 비교 및 차이점 분석도 괜찮을 것 같고



      3) 무선 채널 측정 구현 정도? 채널 측정은 아마 수학적으로 굉장히 간단할 수 있으나, 실제 USRP로 구현할 때는 시간 동기화와 여러 calibration 이슈 등 때문에 애를 먹을 수 있다고 하네요. 그러므로 그러한 현실적인 issue들을 다뤄보는 것도 의미있는 프로젝트 것 같습니다.

      Delete
  2. 감사합니다!!한번 시도해봐야겠네요!

    ReplyDelete
  3. 혹시 본문에서 OFDM 심볼 5개 모두 decoding 다 할때 frequnecy offset하며 없어지는 문제 해결하셨나요??

    ReplyDelete
    Replies
    1. 해결하지 못했던 것으로 기억해요 ㅜ 제가 이 부분에 시간을 많이 투자해서 한건 아니라서.. 그냥 희생하는 것으로 마무리 지었었어요

      Delete

Post a Comment