초록
임베디드 시스템에 구현되는 대부분의 어플리케이션들은 MCU가 제공하는 타이머를 사용한다. 타이머 사용의 목적은 실시간 운영체제의 소프트웨어 타이머 구현에서부터 센서의 워밍업이나 처리의 경과 시간 측정 등에 이르기까지 다양하다. 이들어플리케이션들이의시간측정은그길이뿐만아니라정밀도측면에서수us~수백ms 정도로 그 범위가 다양하다. 이 논문에서는 타이머를 활용하는 과정에서 클록 펄스 비동기화로 인해 발생할 수 있는 오차 요인을 분석하고, 이러한 오차를 감소시키기 위한 타이머 클록 펄스 동기화 방안을 제시한다. 실험 결과, 32768Hz의 타이머를 8 분주한 4096Hz 타이머의 경우 약 230us까지의 편차가 발생하지만, 제안된 방법을 적용하면 타이머로 인한 편차를 10us 이내로 유지할 수 있다.
Most of the applications implemented in embedded systems use timers equipped in MCU. The purposes of timer usage of the applications lie in a wide range of areas such as implementing software timers of real-time operating systems to measuring processing time of sensors. The elapsed times measured by the applications are various in length as well as in precision ranging from several us to several hundreds of ms. The paper analyzes the timing error factors caused by un- synchronizing timer clock pulse when timers are manipulated, and proposes a method of how to synchronize timer clock pulse to reduce the timing errors. As a result of an experiment, this paper shows that an error of 230us is reduced within 10us in case of appling the proposed method to a 4096Hz timer prescaled from 32768Hz by 8.