RTC 드리프트 계산기
크리스탈이나 RTC의 ppm 정확도를 하루·한 달·1년 단위 실제 클럭 드리프트로 변환하거나, 직접 측정한 드리프트로 역산해 ppm 정확도를 구하세요.
오실레이터 종류별 일반적인 정확도
일반적인 데이터시트와 제조사 비교 자료에서 가져온 근사치입니다. 실제 정확도는 특정 부품의 데이터시트, 동작 온도, 노후 정도에 따라 달라집니다.
| 오실레이터 종류 | 일반적인 정확도 | 대략적인 드리프트 |
|---|---|---|
| MCU internal RC oscillator | ~10,000–20,000 ppm (1–2%) | tens of sec/day |
| Standard 32.768 kHz crystal | ~10–50 ppm | ~1–4 sec/day |
| TCXO (e.g. DS3231-class RTC) | ~2–5 ppm | ~0.2–0.4 sec/day |
| OCXO | ~0.01 ppm | ~1 ms/day |
DS3231 RTC는 저가형 TCXO 기반 RTC의 대표적인 예로 자주 언급되는데, 0~40°C에서는 약 2ppm, -40~85°C 전체 범위에서는 약 3.5ppm으로 규격화되어 있으며, 데이터시트에서는 이를 연간 약 2분 이내라고 설명합니다.
몇 ppm이 시간이 지나면 왜 중요해지는가
백만분의 1 오차는 무시할 만해 보이지만 계속 누적됩니다. 20ppm 오차가 있는 크리스탈은 단 한 번 20백만분의 1초를 잃는 게 아니라, 지나가는 매 초마다 20백만분의 1초씩 잃어서, 3개월마다 대략 1분 반 정도가 쌓입니다.
많은 MCU가 시간 관리에 외부 크리스탈을 쓰는 이유
마이크로컨트롤러 내장 RC 오실레이터는 별도 부품이 필요 없어 편리하지만, 정확도가 보통 ppm이 아니라 퍼센트 단위로 표기되는데 이는 10,000배나 더 나쁜 수치입니다. 대략적인 지연시간을 만드는 게 아니라 실제 시각을 정확히 유지해야 하는 애플리케이션이라면 외부 크리스탈이나 전용 RTC 칩이 필요합니다.
이 계산기가 반영하지 못하는 것
실제 오실레이터는 완전히 일정하지 않습니다: 온도 변화, 노후, 공급 전압 모두 시간이 지나면서 실효 ppm을 바꿉니다. 데이터시트의 ppm 수치 하나는 보통 특정 순간의 고정값이 아니라 특정 온도 범위에서의 워스트케이스 상한이므로, 여기서 계산된 드리프트 값은 그 상한을 기준으로 한 추정치로 봐야 합니다.
FAQ
클럭이나 크리스탈에서 ppm은 무슨 뜻인가요?
백만분율(parts per million)로, 오실레이터의 실제 주파수가 공칭 주파수와 그만큼의 백만분의 1만큼 차이난다는 뜻입니다. 20ppm 크리스탈은 매 초마다 최대 20마이크로초만큼 빠르거나 느릴 수 있습니다.
일반적인 32.768kHz 크리스탈은 하루에 얼마나 드리프트하나요?
흔한 20ppm 크리스탈은 하루에 약 1.7초씩 드리프트하는데, 오차가 일정하게 유지된다고 가정하면 한 달에 1분 미만, 1년이면 약 10분 정도가 쌓입니다.
DS3231 같은 전용 RTC 칩이 일반 크리스탈보다 정확한 이유는 무엇인가요?
내부 온도 센서를 기반으로 자체 타이밍을 계속 보정하는 온도보상 크리스탈 오실레이터(TCXO)를 내장하고 있어서, 단순히 여전히 온도에 민감한 더 타이트한 공차를 명시하는 대신 보상되지 않은 크리스탈의 주된 드리프트 원인 자체를 보정합니다.
이미 가지고 있는 클럭의 ppm 정확도는 어떻게 구하나요?
정확도가 알려진 기준과 일정 기간 동안 비교해 드리프트를 초 단위로 기록한 뒤, 이 계산기를 측정 드리프트 모드로 전환해 그 드리프트와 경과 시간을 입력하세요. 결과는 그 조건에서 해당 장치의 실효 ppm 정확도입니다.
온도가 이 ppm 수치에 영향을 주나요?
네. 데이터시트의 ppm 수치는 보통 특정 온도 범위 전체에 대해 명시되며, 고정된 온도에서의 실제 드리프트는 오실레이터의 turnover point가 동작 온도 대비 어디에 있는지에 따라 그 수치보다 더 타이트하거나 더 클 수 있습니다.