samples/boards/nrf/clock_skew/README.html · samples/boards/nrf/clock_skew/README.rst 공식 원문 ↗

Zephyr 3.7.0 · Boards · Nordic Clock

nRF5x Clock Skew Demo

서로 다른 clock domain을 연관시켜 장시간 누적 오차를 보정합니다.

Official pathsamples/boards/nrf/clock_skew/README.html
Source filesamples/boards/nrf/clock_skew/README.rst
Source versionZephyr 3.7.0
TranslationFull · reviewed

본문 기준: Zephyr 3.7.0 LTS3 · 이후 유지보수 패치는 별도입니다.

Part 1

요약·해설

HFCLK/LFCLK correlation, HFXO 선택과 ppb 오차 출력을 설명합니다.

CPU clock

HFCLK · 16 MHz

System time

LFCLK · 32768 Hz

Correction

Skew · ppb

Part 2

접을 수 있는 영어 원문 전체

영어 원문 전체 펼치기
원문 SHA-256 5284EDC28C2E438A9B18E6DA350790F7F1C9A48B44B33A341BD3743D076C11E9
.. _nrf-clock-skew-sample:

nRF5x Clock Skew Demo
#####################

Overview
********

This sample uses the API for correlating time sources to measure the
skew between HFCLK (used for the CPU) and LFCLK (used for system time).
It also shows how to use this skew to correct durations measured in the
LFCLK domain to durations in the HFCLK domain.

The ``CONFIG_APP_ENABLE_HFXO`` Kconfig option can be select to configure
the high frequency clock to use a crystal oscillator rather than the
default RC oscillator.  (Capabilities like Bluetooth that require an
accurate high-frequency clock generally enable this source
automatically.)  The relative error is significantly lower when HFXO is
enabled.

Requirements
************

This application uses any nRF51 DK or nRF52 DK board for the demo.

Building, Flashing and Running
******************************

.. zephyr-app-commands::
   :zephyr-app: samples/boards/nrf/clock_skew
   :board: nrf52dk/nrf52832
   :goals: build flash
   :compact:

Running:


Sample Output
=============

.. code-block:: console

   *** Booting Zephyr OS build v2.5.0-rc3-94-g06a4b650467b  ***
   Power-up clocks: LFCLK[ON]: Running LFXO ; HFCLK[OFF]: Running HFINT
   Start TIMER_0: 0
   Timer-running clocks: LFCLK[ON]: Running LFXO ; HFCLK[OFF]: Running HFINT
   Checking TIMER_0 at 16000000 Hz against ticks at 32768 Hz
   Timer wraps every 268 s

   Ty  Latest           Base             Span             Err
   HF  00:00:00.015666
   LF  00:00:00.404937
   Started sync: 0

   Ty  Latest           Base             Span             Err
   HF  00:00:09.978436  00:00:00.015666  00:00:09.962769
   LF  00:00:10.414520  00:00:00.404937  00:00:10.009582  00:00:00.046813
   RHF 00:00:09.978435                                   -00:00:00.000000
   Skew 0.995323 ; err 4676818 ppb

   Ty  Latest           Base             Span             Err
   HF  00:00:19.959136  00:00:00.015666  00:00:19.943469
   LF  00:00:20.441589  00:00:00.404937  00:00:20.036651  00:00:00.093182
   RHF 00:00:19.959117                                   -00:00:00.000018
   Skew 0.995349 ; err 4650592 ppb

   Ty  Latest           Base             Span             Err
   HF  00:00:29.937181  00:00:00.015666  00:00:29.921514
   LF  00:00:30.468627  00:00:00.404937  00:00:30.063690  00:00:00.142176
   RHF 00:00:29.937175                                   -00:00:00.000005
   Skew 0.995271 ; err 4729151 ppb

   Ty  Latest           Base             Span             Err
   HF  00:00:39.917347  00:00:00.015666  00:00:39.901680
   LF  00:00:40.495666  00:00:00.404937  00:00:40.090728  00:00:00.189048
   RHF 00:00:39.917339                                   -00:00:00.000008
   Skew 0.995284 ; err 4715502 ppb

   Ty  Latest           Base             Span             Err
   HF  00:00:49.899493  00:00:00.015666  00:00:49.883826
   LF  00:00:50.522674  00:00:00.404937  00:00:50.117736  00:00:00.233910
   RHF 00:00:49.899486                                   -00:00:00.000007
   Skew 0.995333 ; err 4667222 ppb

   Ty  Latest           Base             Span             Err
   HF  00:00:59.878166  00:00:00.015666  00:00:59.862499
   LF  00:01:00.549713  00:00:00.404937  00:01:00.144775  00:00:00.282276
   RHF 00:00:59.878154                                   -00:00:00.000011
   Skew 0.995307 ; err 4693269 ppb
   ...
   Ty  Latest           Base             Span             Err
   HF  00:02:59.654855  00:00:00.015666  00:02:59.639188
   LF  00:03:00.873901  00:00:00.404937  00:03:00.468963  00:00:00.829775
   RHF 00:02:59.654857                                    00:00:00.000001
   Skew 0.995402 ; err 4597902 ppb
   ...
   Ty  Latest           Base             Span             Err
   HF  00:04:59.410593  00:00:00.015666  00:04:59.394926
   LF  00:05:01.198181  00:00:00.404937  00:05:00.793243  00:00:01.398317
   RHF 00:04:59.410594                                    00:00:00.000001
   Skew 0.995351 ; err 4648745 ppb
   ...
   Ty  Latest           Base             Span             Err
   HF  00:09:58.829511  00:00:00.015666  00:09:58.813845
   LF  00:10:02.008911  00:00:00.404937  00:10:01.603973  00:00:02.790128
   RHF 00:09:58.829509                                   -00:00:00.000002
   Skew 0.995362 ; err 4637837 ppb
   ...
   Ty  Latest           Base             Span             Err
   HF  00:29:56.607589  00:00:00.015666  00:29:56.591923
   LF  00:30:05.250732  00:00:00.404937  00:30:04.845794  00:00:08.253871
   RHF 00:29:56.607585                                   -00:00:00.000004
   Skew 0.995427 ; err 4573166 ppb
   ...
   Ty  Latest           Base             Span             Err
   HF  00:59:43.781443  00:00:00.015666  00:59:43.765776
   LF  01:00:00.085113  00:00:00.404937  00:59:59.680175  00:00:15.914399
   RHF 00:59:43.781535                                    00:00:00.000092
   Skew 0.995579 ; err 4421055 ppb
   ...
   Ty  Latest           Base             Span             Err
   HF  01:59:37.666395  00:00:00.015666  01:59:37.650728
   LF  02:00:09.810913  00:00:00.404937  02:00:09.405975  00:00:31.755247
   RHF 01:59:37.666057                                   -00:00:00.000338
   Skew 0.995595 ; err 4404723 ppb
   ...
   Ty  Latest           Base             Span             Err
   HF  05:58:33.905236  00:00:00.015666  05:58:33.889570
   LF  06:00:08.604980  00:00:00.404937  06:00:08.200042  00:01:34.310472
   RHF 05:58:33.904338                                   -00:00:00.000898
   ..
   Skew 0.995635 ; err 4364550 ppb
   Ty  Latest           Base             Span             Err
   HF  11:56:59.503922  00:00:00.015666  11:56:59.488255
   LF  12:00:06.793182  00:00:00.404937  12:00:06.388244  00:03:06.899989
   RHF 11:56:59.503948                                    00:00:00.000025
   Skew 0.995674 ; err 4325747 ppb

Part 3

한국어 전문 번역

개요

이 sample은 서로 다른 time source를 연관시키는 API를 사용해 CPU가 쓰는 HFCLK와 system time이 쓰는 LFCLK 사이의 clock skew를 측정합니다. 또한 이 skew를 이용해 LFCLK 영역에서 측정한 duration을 HFCLK 영역의 duration으로 보정하는 방법도 보여줍니다.

CONFIG_APP_ENABLE_HFXO Kconfig option을 선택하면 high-frequency clock이 기본 RC oscillator 대신 crystal oscillator를 사용하도록 구성할 수 있습니다. Bluetooth처럼 정확한 high-frequency clock이 필요한 기능은 일반적으로 이 source를 자동으로 활성화합니다. HFXO를 활성화하면 상대 오차가 크게 줄어듭니다.

요구 사항

이 demonstration application은 nRF51 DK 또는 nRF52 DK board를 사용할 수 있습니다.

Build, flash, 실행

west build -b nrf52dk/nrf52832 samples/boards/nrf/clock_skew
west flash

Board를 실행하면 다음과 같은 측정 결과가 출력됩니다.

Sample 출력

*** Booting Zephyr OS build v2.5.0-rc3-94-g06a4b650467b  ***
Power-up clocks: LFCLK[ON]: Running LFXO ; HFCLK[OFF]: Running HFINT
Start TIMER_0: 0
Timer-running clocks: LFCLK[ON]: Running LFXO ; HFCLK[OFF]: Running HFINT
Checking TIMER_0 at 16000000 Hz against ticks at 32768 Hz
Timer wraps every 268 s

Ty  Latest           Base             Span             Err
HF  00:00:00.015666
LF  00:00:00.404937
Started sync: 0

Ty  Latest           Base             Span             Err
HF  00:00:09.978436  00:00:00.015666  00:00:09.962769
LF  00:00:10.414520  00:00:00.404937  00:00:10.009582  00:00:00.046813
RHF 00:00:09.978435                                   -00:00:00.000000
Skew 0.995323 ; err 4676818 ppb

Ty  Latest           Base             Span             Err
HF  00:00:19.959136  00:00:00.015666  00:00:19.943469
LF  00:00:20.441589  00:00:00.404937  00:00:20.036651  00:00:00.093182
RHF 00:00:19.959117                                   -00:00:00.000018
Skew 0.995349 ; err 4650592 ppb

Ty  Latest           Base             Span             Err
HF  00:00:29.937181  00:00:00.015666  00:00:29.921514
LF  00:00:30.468627  00:00:00.404937  00:00:30.063690  00:00:00.142176
RHF 00:00:29.937175                                   -00:00:00.000005
Skew 0.995271 ; err 4729151 ppb

Ty  Latest           Base             Span             Err
HF  00:00:39.917347  00:00:00.015666  00:00:39.901680
LF  00:00:40.495666  00:00:00.404937  00:00:40.090728  00:00:00.189048
RHF 00:00:39.917339                                   -00:00:00.000008
Skew 0.995284 ; err 4715502 ppb

Ty  Latest           Base             Span             Err
HF  00:00:49.899493  00:00:00.015666  00:00:49.883826
LF  00:00:50.522674  00:00:00.404937  00:00:50.117736  00:00:00.233910
RHF 00:00:49.899486                                   -00:00:00.000007
Skew 0.995333 ; err 4667222 ppb

Ty  Latest           Base             Span             Err
HF  00:00:59.878166  00:00:00.015666  00:00:59.862499
LF  00:01:00.549713  00:00:00.404937  00:01:00.144775  00:00:00.282276
RHF 00:00:59.878154                                   -00:00:00.000011
Skew 0.995307 ; err 4693269 ppb
...
Ty  Latest           Base             Span             Err
HF  00:02:59.654855  00:00:00.015666  00:02:59.639188
LF  00:03:00.873901  00:00:00.404937  00:03:00.468963  00:00:00.829775
RHF 00:02:59.654857                                    00:00:00.000001
Skew 0.995402 ; err 4597902 ppb
...
Ty  Latest           Base             Span             Err
HF  00:04:59.410593  00:00:00.015666  00:04:59.394926
LF  00:05:01.198181  00:00:00.404937  00:05:00.793243  00:00:01.398317
RHF 00:04:59.410594                                    00:00:00.000001
Skew 0.995351 ; err 4648745 ppb
...
Ty  Latest           Base             Span             Err
HF  00:09:58.829511  00:00:00.015666  00:09:58.813845
LF  00:10:02.008911  00:00:00.404937  00:10:01.603973  00:00:02.790128
RHF 00:09:58.829509                                   -00:00:00.000002
Skew 0.995362 ; err 4637837 ppb
...
Ty  Latest           Base             Span             Err
HF  00:29:56.607589  00:00:00.015666  00:29:56.591923
LF  00:30:05.250732  00:00:00.404937  00:30:04.845794  00:00:08.253871
RHF 00:29:56.607585                                   -00:00:00.000004
Skew 0.995427 ; err 4573166 ppb
...
Ty  Latest           Base             Span             Err
HF  00:59:43.781443  00:00:00.015666  00:59:43.765776
LF  01:00:00.085113  00:00:00.404937  00:59:59.680175  00:00:15.914399
RHF 00:59:43.781535                                    00:00:00.000092
Skew 0.995579 ; err 4421055 ppb
...
Ty  Latest           Base             Span             Err
HF  01:59:37.666395  00:00:00.015666  01:59:37.650728
LF  02:00:09.810913  00:00:00.404937  02:00:09.405975  00:00:31.755247
RHF 01:59:37.666057                                   -00:00:00.000338
Skew 0.995595 ; err 4404723 ppb
...
Ty  Latest           Base             Span             Err
HF  05:58:33.905236  00:00:00.015666  05:58:33.889570
LF  06:00:08.604980  00:00:00.404937  06:00:08.200042  00:01:34.310472
RHF 05:58:33.904338                                   -00:00:00.000898
..
Skew 0.995635 ; err 4364550 ppb
Ty  Latest           Base             Span             Err
HF  11:56:59.503922  00:00:00.015666  11:56:59.488255
LF  12:00:06.793182  00:00:00.404937  12:00:06.388244  00:03:06.899989
RHF 11:56:59.503948                                    00:00:00.000025
Skew 0.995674 ; err 4325747 ppb

Source

출처

영어 원문에는 문단, 문서 지시문, 표, 코드, 코드 심벌, 경로를 그대로 보존했습니다.