티스토리 뷰

Study/comm

[Signal] Frequency Division Multiplexing

생각많은 소심남 2015. 11. 24. 01:13

요즘 블로그에 글을 올리는게 뜸해졌다.

회사일도 회사일이지만.. 강의를 듣다보니까 뭔가를 정리할 시간이 부족해진다. 그냥 듣다가 한걸 정리하는 수단으로만 쓰고 있다는게 참..

아무튼 신호 통신 수업을 들으니까 Frequency Division Multiplexing 관련 내용이 나와서 몇가지 figure를 소개해본다.


본래 사람의 목소리같은건 공기라는 매질을 통해서 전달되는 신호이다. 따라서 같은 공기층내에서 이야기를 하게 되면 동일한 매질을 타기 때문에 목소리간의 간섭 효과가 발생하고 이때문에 원래의 목소리를 다시 복원하기 힘들다. 이 때문에 이 목소리들을 서로 분리해서 전달하는 기술 자체가 Division Multiplexing이라는 것이고, 이게 기준이 Time이나 Frequency냐 혹은 두개를 복합적으로 썼느냐에 따라서 FDM, TDM, 혹은 CDMA라고 표현할 수 있겠다. 그중 Frequency Division Multiplexing이란 이름에 내포되어 있는 그대로 Frequency를 기준으로 분리한 방법인데, 아마 음성에 대해서 알고 있는 사람이라면, 이런 궁금증을 가지게 될 것이다. 사람의 목소리가 다 다르기는 하지만 그래도 인간이 표현할 수 있는 음역대역은 정해져있는데 이걸로 분리한다? 그 많은 사람들이 말하면 다 분리할 수 있을까? 라는 궁금증이 생길텐데, 여기서 분리하는 기준은 사람의 목소리에 포함된 Frequency가 아니다. 바로 이 목소리를 특정 주파수의 신호와 함께 전달하는 과정을 거치면서 이 주파수를 다르게 하는데, 이걸 기준으로 삼는 것이다. 이 Frequency를 보통 Carrier Frequency라고 한다. 

 위의 사진도 그걸 표현하는 것인데, 맨위의 그래프처럼 20kHz, 40kHz, 60kHz 대로 Carrier Frequency로 나눠서 신호를 전달한다. 보통 신호를 전달할때는 Time Domain에 있는 신호를 Frequency Domain으로 바꾸는 과정을 거치는데, 이 과정을 보통 Mixing이라고 한다. 일반적으로 원래의 신호에 cosinusoidal 신호를 곱하는 수식이 포함된다. 이렇게 전달되고 난후의 신호가 바로 아래의 그래프인데, 잘보면 위의 그래프와 아래의 그래프를 비교해보면 뭔가 닮은 듯 하면서 달라보인다. 결국 원래 보냈던 신호와 똑같은 신호를 받으려면 아래의 그래프에서 불필요한 부분을 제거해야 될거 같은데, 이 때 필요한 과정이 Filtering이 되겠다. 이때 많이 들어봤던 Low Pass Filter니 High Pass Filter 같은걸 사용해서 특정 대역대 목소리만 뽑아내게 되는데 당연히 목소리마다 기준이 되는 주파수를 다르게 해야 될 것이다. 이 기준이 되는 Frequency를 Cutoff Frequency 라고 한다. 


 이와 같이 3개 대역의 Carrier Frequency를 통해서 전달된 신호는 다시 Filtering과정을 거처서 개별적으로 분리할 수 있게 된다. 요기까지 오면 이제 말그대로 목소리를 분리한 형식이 되므로 이걸 다시 Time Domain으로 바꾸게 되면 우리는 듣고 싶은 목소리만 들을 수 있게 될 것이다.


당연히 이 기술의 목적은 정해진 매질속에서 주파수만을 사용해서 여러개의 신호들을 효율적으로 전달하는 것이 되겠다.위와 같이 Filtering을 나름 맞게 하면 목소리를 각각 분리할 수 있다는 것을 확인할 수 있다. (여기서는 그 척도로 원래 신호와 복원된 신호간의 Normalized Root Mean Square 값을 도출했다. 물론 이 값이 작을 수록 오차가 적다는 것이다,)

 결국 Frequency를 통해서 분리를 하려면 Time Domain 상의 신호를 Frequency Domain으로 바꾼후 각각의 신호를 서로 다른 Carrier Frequency를 통해서 전달하고, 다시 이의 역과정을 거치면서 적절한 Cutoff Frequency의 Filtering 과정이 필요하다는 것을 알 수 있다.

'Study > comm' 카테고리의 다른 글

[Signal] Run-length Encoding  (0) 2015.11.03
[Signal] Matlab으로 만드는 기타소리.  (4) 2015.04.18
[Signal] zp2tf and freqz function in matlab  (0) 2015.04.10
댓글