디지털 오디오의 음질을 결정하는 요소는 두 가지 - 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)에 대해 알아보겠습니다.
|