시작페이지로 시작페이지로
즐겨찾기추가 즐겨찾기추가
로그인 회원가입 | 아이디찾기 | 비밀번호찾기 | 장바구니 모바일모드
홈으로 와싸다닷컴 HIFI게시판 상세보기

트위터로 보내기 미투데이로 보내기 요즘으로 보내기 싸이월드 공감
디지털 오디오의 기초 - 클럭과 지터
HIFI게시판 > 상세보기 | 2011-11-25 17:40:38
추천수 5
조회수   3,260

제목

디지털 오디오의 기초 - 클럭과 지터

글쓴이

전동환 [가입일자 : 2003-03-05]
내용
디지털 오디오의 음질을 결정하는 요소는 두 가지 - PCM 데이터와 클럭입니다. 지난 글에서는 왜 PCM 데이터에 대해서 걱정할 필요가 없는지 말씀드렸습니다. 이번 글에서는 클럭과 지터에 대해 다룹니다. 클럭은 PCM 데이터를 아날로그 신호로 변화시킬 때 시간 간격을 결정해주며, 지터는 이러한 클럭의 오차를 의미합니다.



이 글은 오디오 커뮤니티에서 흔히 반복되는 몇 가지 주장에 대해 반론하는 포맷으로 작성되었습니다. 초점은 “음질 차이가 나느냐 나지 않느냐”보다는 “왜 음질 차이가 날 수 있고 날 수 없는가”에 맞추었습니다. 음질 차이에 대해 이야기하려면 너무나도 많은 변수를 고려해야 하기 때문입니다. 다음 글에서 지터의 측정 방법과 함께 음질에 미치는 영향도 조심스럽게 다뤄볼까 생각중입니다.



제가 디지털 시스템 설계 (하드웨어 / 소프트웨어)에 관한 지식이 있기는 하지만 오디오 설계를 하는 사람은 아니므로 제 글에 틀린 점이 있을 수 있습니다. 그러한 경우 지적해주시면 겸허히 받아드리겠습니다. 다만 가급적 생산적인 토론이 될 수 있도록 본인의 주장과 근거를 명료하게 적어주시면 좋겠습니다. 글이 길어진다면 별도의 글로 댓글을 달아주셔도 좋습니다.



자 그럼 시작해 보겠습니다.





Q1. SPDIF나 USB 오디오는 디지털 전송이잖습니까. 디지털 전송을 사용하면 당연히 음질이 같아야지요. 외장 하드에 복사한다고 파일이 깨집니까. 디지털이 뭔지도 모르는 사람들이 미신을 조장하고 있어요.



A1. 이전 글에서 말씀드렸지만 DAC 칩의 입력은 PCM 데이터와 클럭입니다. PCM 데이터는 SPDIF를 사용하시건 USB 오디오를 사용하시건 네트워크 오디오를 사용하시건 변하지 않습니다. 이는 외장 하드에 파일을 복사해도 깨지지 않는 것과 같은 이치입니다. 하지만 SPDIF나 USB는 PCM 데이터 뿐 아니라 클럭도 전송합니다. 클럭은 PCM 데이터와 달리 손상되기 쉬운 아날로그 신호인데, 전송되는 클럭의 품질에 따라 DAC 칩의 아날로그 출력 신호가 바뀔 수 있습니다.



네트워크 전송을 사용하신다면 클럭을 전송하지 않기 때문에 어떤 PC를 사용하건 어떤 네트워크 케이블을 사용하시건 지터의 변화는 없어야 합니다. 다만 네트워크 케이블로 인해 유입되는 노이즈가 너무 크다면 간접적인 신호 간섭으로 인해 DAC의 지터가 커질 가능성이 있습니다. 아쉽게도 아직 이에 관한 데이터를 본 적이 없기 때문에 결론은 유보하겠습니다.







Q2. 제가 전자공학 전공했고, 관련 직장 경력이 10년입니다. 지터는 디지털 시스템에서 아주 기초적인 개념이지요. 그런데 겨우 44.1kHz 클럭을 사용하는 디지털 오디오에서 지터 때문에 음질 저하가 일어난다는게 말이 안됩니다. 요즘 CPU는 몇 GHz로 동작해도 지터 문제 없이 잘 돌잖아요. 업자들이 말을 지어내서 사람들 혼란시키는 겁니다.



A2. 말씀하신대로 디지털 시스템에서 지터는 매우 기본적인 개념입니다. 디지털 시스템은 클럭에 변화가 있을 때 동작하도록 설계되어 있는데, 클럭 지터가 커지면 시스템의 정확성에 문제가 발생하게 됩니다. 예를 들어 “1 2 3 4 5” 라는 데이터가 전달되어야 하는데 지터가 너무 커지면 “1 2 2 4 5”가 전달될 수 있습니다. 특히 시스템의 클럭 속도가 커질수록 지터의 크기가 문제가 됩니다. 실제 CPU 처럼 고속으로 동작하는 제품의 경우 설계상 클럭 지터 문제가 매우 중요합니다. 이러한 관점에서 볼 때 44.1kHz로 동작하는 디지털 오디오의 경우 지터는 문제를 야기할리 없지요. (사실 이 논리는 디지털 오디오에서 PCM 데이터가 왜 깨질리 없는지 잘 설명해 줍니다.)



그런데 이러한 주장에는 커다란 오류가 있습니다. 일반적인 디지털 시스템은 시스템 전체가 디지털로 이루어지지만 디지털 오디오의 출력은 아날로그라는 점입니다. 디지털 데이터를 입력 받아 디지털 데이터를 출력한다면 지터로 인해 데이터가 깨지는 경우는 없다고 봐도 됩니다. 하지만 디지털 오디오는 디지털 데이터를 입력 받아 아날로그 데이터를 출력하는 시스템입니다. 아날로그 데이터를 결정하는데 클럭이 중요한 역할을 하기 때문에, 클럭 오류인 지터를 최소화시키는 것이 본래 의도된 아날로그 신호를 듣는데 가까이 가는 방법입니다. 다시 말씀드리지만 일반적인 디지털 시스템의 지터는 시스템의 정확성 (correctness)을 위협하지만 디지털 오디오의 지터는 품질 (quality)을 위협합니다.







Q3. 좋아요. 지터때문에 아날로그 파형이 변화할 수 있다 치지요. 그런데 이러한 지터는 간단한 버퍼 사용으로 모두 없앨 수 있어요. 이건 관련 전공 대학교 3학년이면 다 아는 초보적인 내용인데, 오디오에서 지터를 걱정하는 사람들이 이해가 안갑니다.



A3. 버퍼 사용으로 지터를 줄일 수 있는 것은 사실입니다. 하지만 그 과정이 말처럼 쉬운 일은 아닙니다.



PC에서 출력해준 SPDIF를 통해 음원을 재생하는 DAC을 생각해보지요. SPDIF로 전송된 PCM 데이터가 DAC에 있는 버퍼에 저장되고, DAC은 고정밀 저지터 클럭을 통해 데이터를 뽑아서 사용합니다. 이렇게 되면 지터 문제가 해결됩니다. 정말 쉽지요?



그런데 현실에서 문제는 버퍼의 크기입니다. SPDIF를 통해 전달되는 클럭과 DAC에서 사용하는 고정밀 클럭은 완전히 같을 수 없습니다. 벽시계와 손목 시계가 완전히 같지 않은 것과 마찬가지입니다. 만약 DAC의 클럭이 SPDIF 클럭보다 조금 빠르게 동작한다면 버퍼가 금방 바닥나서 DAC에서 재생할 PCM 음원이 없을 것이고 (버퍼 언더런이라 합니다.) 반대로 SPDIF 클럭이 더 빠르다면 버퍼가 가득 차서 더 이상 PCM 데이터를 저장할 공간이 없을 것입니다. (버퍼 오버런이라 합니다.) 현실에서는 SPDIF 칩의 단가와 크기 때문에 매우 제한된 크기의 버퍼를 사용하므로, 지터 측면에서 조금 손해를 보더라도 버퍼 컨트롤을 해주는 장치가 필요합니다. 그렇지 않으면 음악이 뚝뚝 끊겨버릴테니까요.



그래서 대부분의 시스템에서는 PLL이라는 부품을 사용해서 클럭 속도를 변경해줍니다. 들어오는 SPDIF 클럭이 빠르다 싶으면 버퍼에서 꺼내는 클럭도 빠르게 해주고 반대로 들어오는 클럭이 느리면 버퍼에서 꺼내는 클럭 속도도 늦춰주는 것이죠. 이렇게 되면 이상적인 시스템에 비해 DAC 칩에 사용되는 클럭의 품질이 저하되고 지터가 높아지겠지만, 버퍼 오버런이나 언더런이 발생하는 것보다는 시나리오보다는 훨씬 낫습니다. 그리고 버퍼링을 하지 않는 경우에 비하면 지터가 훨씬 낮아지지요. 자세한 내용이 궁금하신 분은 울프슨에서 작성한 AES 페이퍼를 참고하시기 바랍니다. (www.wolfsonmicro.com/documents/uploads/misc/en/A_high_performance_SPDIF_receiver_Oct_2006.pdf)



Adaptive USB 오디오도 마찬가지입니다. PC에서는 클럭 정보를 전달하기 위해 PCM 데이터에 덧붙여 1ms 마다 주기적으로 패킷을 쏴줍니다. USB 리시버 칩에서는 주기적으로 들어오는 패킷 속도를 보고 PLL을 사용해서 클럭을 생성합니다. PC를 튜닝해서 USB 패킷의 지터를 낮춰준다면 결국 DAC에서 더 낮은 지터로 음악을 재생할 수 있다는 이야기지요. 애초에 “Adaptive USB”라는 이름을 붙인 이유가 상황에 맞춰서 (adaptive) 클럭을 바꿔주기 때문입니다.



USB Async 전송이나 네트워크 스트리밍을 사용할 경우 PC 지터의 영향을 받지 않습니다. 하지만 그렇다고 해서 네트워크 스트리밍이나 Async USB를 사용한 제품이 USB Adaptive나 SPDIF 전송을 사용하는 제품에 비해 언제나 우월한 것은 아닙니다. 지터는 음원 전송 방식 이외에도 어떤 오실레이터를 사용하는지, 파워가 얼마나 깨끗한지, PCB를 얼마나 효율적으로 디자인했는지 등 수 없이 많은 변수에 의해 결정되므로 실제 구현에 따라 다르다고 보는 편이 맞습니다. 같은 이유로 인해 Async USB나 네트워크 플레이어라고 하더라도 제대로 구현되지 않은 제품의 지터 특성은 매우 좋지 않을 수도 있습니다.





Q4. SATA 케이블을 바꿨더니 음질이 좋아졌습니다. 아무래도 지터 때문인것 같아요. 컴퓨터는 오디오 감상용으로 제작된 기기가 아니잖아요.



A4. 민감한 이슈니 글을 쓰기 두렵습니다만, 지금까지 설명한 클럭 / 지터 측면에서 바라보겠습니다. SATA 케이블은 디스크에서 메인 메모리로의 데이터 전송을 담당합니다. 추후 메인 메모리에 있는 PCM 데이터가 USB 또는 SPDIF 프로토콜을 사용해서 외부 DAC으로 전송이 되지요.



먼저 SATA 케이블에 따라 디스크 -> 메모리 데이터 전송시 지터가 달라질 개연성은 충분히 있습니다. 어떤 분들이 주장하시는 것처럼 고품질의 케이블을 사용하면 에러율이 낮아져서 같은 데이터를 복사할 때 시간이 덜 걸릴 가능성도 높습니다. 하지만 이 때 발생한 지터는 메인 메모리에 전달되면서 모두 사라집니다. 메인 메모리는 버퍼 오버플로우 / 언더플로우 걱정이 없는 버퍼와 같은 역할을 하기 때문입니다.



그렇다고 해서 SATA 케이블이 음질에 영향을 미칠 가능성이 없다고 말씀드리는 것은 아닙니다. SATA 케이블 교체로 인해 케이블에서 발생하는 노이즈가 변화할 수 있고, 이에 따라 최종적으로 USB나 SPDIF의 클럭 시그널이 미묘하게 변할 가능성은 여전히 존재합니다. 다만 노이즈 덩어리인 컴퓨터 내부에서 SATA 케이블 교체가 과연 의미 있는 수준의 노이즈 변화를 가져올 수 있을지는 여전히 의문스럽습니다. 또한 정말 노이즈가 문제라면 케이블 교체보다 더 저렴한 방법으로 근본적인 대책을 마련하는 것도 가능할 것으로 생각됩니다. 이런 측면에서 볼 때 SATA 케이블 교체는 음질 개선을 가져올 가능성은 있지만 그 개연성이 상당히 낮은 편이고 투자대비 효용도 의문시 된다 할 수 있습니다.







결론

디지털 오디오의 음질을 결정하는 두 요소는 PCM 데이터와 클럭입니다. 대부분의 시스템에서 PCM 데이터는 걱정할 이유가 없으므로 본래 녹음시 의도한 음악에 가깝게 재생을 하기 위해서는 고품질 클럭을 사용해야 합니다. 일반적인 디지털 시스템에서 지터가 시스템의 정확성에 영향을 미치지는데 반해 디지털 오디오 시스템에서는 품질에 영향을 미칩니다.



DAC에 고품질 클럭을 공급하는 것은 일견 쉬워 보이지만 버퍼 관리 문제로 인해 생각보다 복잡한 문제를 해결해야 합니다. 최근 많이 사용되는 네트워크 스트리밍이나 Async USB를 사용하는 경우 이러한 문제에서 비교적 자유로워질 수 있지만, 최종적으로 지터 특성을 결정하는 수 많은 요소 때문에 단정적으로 어느 제품이 우월하다고 말하기는 어렵습니다. 다음번에는 지터 측정 (J-Test)에 대해 알아보겠습니다.
추천스크랩소스보기 목록
김필성 2011-11-25 17:48:12
답글

지터나 노이즈보단 pc의 팬소음이 영향을 미치는 부분이 더 크지 않을까란 생각도 듭니다.<br />
일단 pc는 기본적으로 데탑일 경우 배기팬이랑 시퓨팬 최소 2개는 들어가니까요...노트북이라도 시퓨팬은<br />
달려있을테고...그외 모터 소음도 있고....그런데서 오는 영향이 더 크지 않을까란 생각도 듭니다만...<br />
물론 그런부분은 다 제외한 이후의 이야길 다루신 거겠지만요..^^a..<br />
<br />
보통은 그런

장명호 2011-11-25 17:50:29
답글

정확하면서도 이해하기 쉬운 글이네요. 좋은 글을 보면 그 글을 쓸 수 있는 능력이 항상 부럽습니다.<br />
특히 잘 이야기하기 힘든 버퍼와 지터의 연관성에 대한 설명이 인상적이네요. 와싸다에서 그 부분을 자세히 설명한건 처음 본거 같아요.

장명호 2011-11-25 17:57:00
답글

항상 의문이었던 것은 지터를 분리하는 것이 어렵지 않은데 제대로 분리하는 설계를 하지 않는거였어요. 비용이 조금 들어가긴 하겠지만 오디오쟁이의 강박증과 일부 DAC의 황당한 가격을 생각하면 무리는 아니라고 생각하거든요. 제가 내린 결론은 어차피 별 필요가 없어서 안 만든다였지만요.

전동환 2011-11-25 18:04:21
답글

김필성님, 팬 소음이 음질에 영향을 미친다면 그 역시 노이즈나 지터를 유발하기 때문이라는게 제 생각입니다. (팬 소리가 직접 들려서 음악감상을 방해하는 것은 예외로 합니다.) 제 관점에서 볼 때 팬리스 시스템을 만드는 목적은 결국 지터와 노이즈를 줄이기 위함입니다.

전동환 2011-11-25 18:05:56
답글

장명호님, 좋은 말씀 감사합니다. 네임 DAC이나 코드 DAC의 경우는 아주 커다란 버퍼를 사용해서 지터 문제를 해결하는 것으로 알고 있습니다만, 그럼에도 불구하고 사용하시는 분들은 트랜스포트의 차이가 느껴지신다고 하시네요. 정답은 잘 모르겠습니다.

박철휘 2011-11-25 18:18:41
답글

잘 정리된 좋은 글이네요.<br />
문제는 이게 이해하기 쉬운건 아니자나요. ㅋ<br />
<br />
버퍼 언더런/오버플로우를 피하기 위해 spdif나 adaptive mode usb 전송은 PLL이 속도를 조절해줘야겠지만, async mode의 경우는 locking mode를 사용해서 일관된 속도를 유지할 수 있을텐데... 하는 생각이 듭니다. 결국 구현체에 따라 다르겠죠. <br />
제품에 이러한 정보도 제공해줬으면 좋겠는데 말

박철휘 2011-11-25 18:19:55
답글

네임댁은 24비트 이상일 경우에는 동기화모드로 들어갑니다.

이종남 2011-11-25 20:52:40
답글

지터의 원인인 디지털클럭이 생각보다 아주 약한 존재라는 것이 지터를 해결하지 못하는 가장 커다란 문제로 볼 수 있습니다.. <br />
<br />
FIFO 버퍼와 비동기식 클럭을 사용한 DAC는 이미 90년대에 아이디어가 나왔지요... 이론만 보자면 분명 해결이 될 듯 하나.. 실제 그렇지 못하다는 것이 가장 문제입니다.... <br />
<br />
지터의 원인은 노이즈나 진동에 의한 간섭이지요.. 이 노이즈나 진동에 의한 간섭은

장재선 2011-11-25 23:55:42
답글

초보가 좋은 공부가 되었습니다.. 감사합니다~~

배준호 2011-11-26 01:10:12
답글

좋은 정보 감사 드립니다. ^_^

박상용 2011-11-26 01:12:11
답글

클럭 오차인 지터가 DAC에서 음질 변화를 일으킬 가능성이 있다는 글로 보입니다.<br />
<br />
그 차이를 사람이 감지한다면 그사람은 초능력의 청각을 가졌다고 밖에는...<br />
<br />
또한 그정도 능력의 청각이라면 아날로그 시스템의 소리는 거의 잡음수준으로 밖에는 안들릴 거라 생각 되는데.. 어떻게 지금까지 참고 살았는지...<br />
<br />
아직도 굿판을 벌여 떡을 먹는 사람들이 많은가 보네..

석경욱 2011-11-26 15:38:00
답글

지터가 문제될 정도라면 디지털 시계는 다 갖다 버려야 할 물건이겠네요.<br />
수정 발진자에 의한 클럭 만큼 정확한 것도 별로 없어요.<br />
거기에 분주 (예를 들면 16클럭을 1클럭으로) 까지 한다면.

전동환 2011-11-26 15:59:53
답글

박상용님 석경욱님, 여러분들의 의견은 존중합니다만 가급적 토론에 도움이 되는 내용을 적어주시면 좋겠습니다. 저는 지터로 인한 음질 차이가 들리는 것과 디지털 시계의 유용성 사이의 논리 관계를 파악하기 어렵네요.

김용관 2011-11-26 18:15:41
답글

반론을 만들기힘든 글이라..<br />
<br />
아무튼 Network player 나 Async USB 나 방식 자체에서 오는 음질 차이는 없다는 데에는 동의합니다. 동의하지 않는 분 계실테지만서도요. (사실 이 글 시리즈에 관심을 가지게 된게 어떤 분하고 그것 관련 얘기하다 답답해서였거든요.. )<br />
<br />
수고하셨습니다.

이종남 2011-11-26 19:47:50
답글

하긴 지터자체가 뭔지도 모르시는 분들이었는데... <br />
<br />
들려야.. 공부도 하는 것이고..... 안들리면 당연히 공부도 안하고. 모르는 것이 맞지요.. <br />
<br />
이제 와서 그동안 들리지도 않던 것을 꼭 지금은 들리는 것처럼 말 하는 것도 우습고... <br />
<br />
차라리 "지터 그딴 것 없다!!!!" <br />
<br />
그게 더 일관성 있어 보입니다......... ^^

이종남 2011-11-26 20:02:43
답글

USB오디오가 처음 나왔을 때. 그것이 SPDIF와 무슨 차이가 있나?? <br />
<br />
그럼 이론상 USB 오디오가 좋아야 하는데.. 오히려 나쁘게 나온 이유는 무엇일까??? <br />
<br />
버퍼와 비동기식 클럭은 꼭 USB에서만 구현이 가능하가??? <br />
<br />
버퍼와 비동기식 클럭은 USB가 나와서 비로서 나온 것인가?? 아니면 SPDIF 때 이미 나온 이론인가?? <br />
<br />
생각

최낙현 2011-11-26 22:43:11
답글

이 글과 별로 관계는 없지만 많이들 사용하시는 디지털시계는 RTC를 사용합니다. RTC 주파수가 낮음에도 불구하고 정확도가 일정하지는 않습니다. 당연한거지만 시간이 지날수록 실제시간과 오차가 점점 벌어집니다. 그럼에도 불구하고 주변에서 정확한 시간을 볼수있는 이유는 다른 시스템과 동기화를 시키기때문입니다.<br />
주기적으로 메인시스템의 시간을 체크하여 동기화시켜서 오차를 줄여나가는것이죠. 물론 지터같은 노이즈가 많아지면 동기화만으론 시간유

김영민 2011-11-27 12:48:26
답글

내용을 떠나, 논란의 핵심과 예상되는 반론을 충분히 사전숙지한 차분한 글쓰기에 찬사를 보내드립니다. 시간내서 찬찬히 읽어보겠습니다.

  • 광고문의 결제관련문의