← Documents Documentation/userspace-api/media/dvb/frontend-stat-properties.rst GitHub 원문 ↗

Linux 6.18.37 · Userspace API / Media / DVB / Frontend

Frontend statistics indicators

dtv_stats 배열, scale, signal/CNR, BER/PER counter를 설명합니다.

Source pathDocumentation/userspace-api/media/dvb/frontend-stat-properties.rst
Source versionLinux v6.18.37
TranslationDUJINLABS 전문 번역 + 해설

요약·해설과 원문, 전문 번역을 서로 분리했습니다. API 이름, symbol, source path는 원문 표기를 사용합니다.

1. 요약·해설

원문의 핵심 논리와 kernel programming 관점의 보충 설명입니다. 아래의 전문 번역과는 별도로 작성했습니다.

요약·해설

frontend-stat-properties.rst:1-245

Global metric은 index 0, ISDB layer는 index 1부터입니다. BER/PER은 반드시 같은 측정 구간의 error/total counter 쌍으로 계산합니다.

2. 영어 원문 전체

번역 기준이 된 Linux v6.18.37 원문입니다. 줄 번호는 이 버전의 파일 좌표입니다.

원문 전체 펼치기
1 .. SPDX-License-Identifier: GFDL-1.1-no-invariants-or-later
2
3 .. _frontend-stat-properties:
4
5 ******************************
6 Frontend statistics indicators
7 ******************************
8
9 The values are returned via ``dtv_property.stat``. If the property is
10 supported, ``dtv_property.stat.len`` is bigger than zero.
11
12 For most delivery systems, ``dtv_property.stat.len`` will be 1 if the
13 stats is supported, and the properties will return a single value for
14 each parameter.
15
16 It should be noted, however, that new OFDM delivery systems like ISDB
17 can use different modulation types for each group of carriers. On such
18 standards, up to 3 groups of statistics can be provided, and
19 ``dtv_property.stat.len`` is updated to reflect the "global" metrics,
20 plus one metric per each carrier group (called "layer" on ISDB).
21
22 So, in order to be consistent with other delivery systems, the first
23 value at :c:type:`dtv_property.stat.dtv_stats <dtv_stats>` array refers
24 to the global metric. The other elements of the array represent each
25 layer, starting from layer A(index 1), layer B (index 2) and so on.
26
27 The number of filled elements are stored at ``dtv_property.stat.len``.
28
29 Each element of the ``dtv_property.stat.dtv_stats`` array consists on
30 two elements:
31
32 - ``svalue`` or ``uvalue``, where ``svalue`` is for signed values of
33 the measure (dB measures) and ``uvalue`` is for unsigned values
34 (counters, relative scale)
35
36 - ``scale`` - Scale for the value. It can be:
37
38 - ``FE_SCALE_NOT_AVAILABLE`` - The parameter is supported by the
39 frontend, but it was not possible to collect it (could be a
40 transitory or permanent condition)
41
42 - ``FE_SCALE_DECIBEL`` - parameter is a signed value, measured in
43 1/1000 dB
44
45 - ``FE_SCALE_RELATIVE`` - parameter is a unsigned value, where 0
46 means 0% and 65535 means 100%.
47
48 - ``FE_SCALE_COUNTER`` - parameter is a unsigned value that counts
49 the occurrence of an event, like bit error, block error, or lapsed
50 time.
51
52
53 .. _DTV-STAT-SIGNAL-STRENGTH:
54
55 DTV_STAT_SIGNAL_STRENGTH
56 ========================
57
58 Indicates the signal strength level at the analog part of the tuner or
59 of the demod.
60
61 Possible scales for this metric are:
62
63 - ``FE_SCALE_NOT_AVAILABLE`` - it failed to measure it, or the
64 measurement was not complete yet.
65
66 - ``FE_SCALE_DECIBEL`` - signal strength is in 0.001 dBm units, power
67 measured in miliwatts. This value is generally negative.
68
69 - ``FE_SCALE_RELATIVE`` - The frontend provides a 0% to 100%
70 measurement for power (actually, 0 to 65535).
71
72
73 .. _DTV-STAT-CNR:
74
75 DTV_STAT_CNR
76 ============
77
78 Indicates the Signal to Noise ratio for the main carrier.
79
80 Possible scales for this metric are:
81
82 - ``FE_SCALE_NOT_AVAILABLE`` - it failed to measure it, or the
83 measurement was not complete yet.
84
85 - ``FE_SCALE_DECIBEL`` - Signal/Noise ratio is in 0.001 dB units.
86
87 - ``FE_SCALE_RELATIVE`` - The frontend provides a 0% to 100%
88 measurement for Signal/Noise (actually, 0 to 65535).
89
90
91 .. _DTV-STAT-PRE-ERROR-BIT-COUNT:
92
93 DTV_STAT_PRE_ERROR_BIT_COUNT
94 ============================
95
96 Measures the number of bit errors before the forward error correction
97 (FEC) on the inner coding block (before Viterbi, LDPC or other inner
98 code).
99
100 This measure is taken during the same interval as
101 ``DTV_STAT_PRE_TOTAL_BIT_COUNT``.
102
103 In order to get the BER (Bit Error Rate) measurement, it should be
104 divided by
105 :ref:`DTV_STAT_PRE_TOTAL_BIT_COUNT <DTV-STAT-PRE-TOTAL-BIT-COUNT>`.
106
107 This measurement is monotonically increased, as the frontend gets more
108 bit count measurements. The frontend may reset it when a
109 channel/transponder is tuned.
110
111 Possible scales for this metric are:
112
113 - ``FE_SCALE_NOT_AVAILABLE`` - it failed to measure it, or the
114 measurement was not complete yet.
115
116 - ``FE_SCALE_COUNTER`` - Number of error bits counted before the inner
117 coding.
118
119
120 .. _DTV-STAT-PRE-TOTAL-BIT-COUNT:
121
122 DTV_STAT_PRE_TOTAL_BIT_COUNT
123 ============================
124
125 Measures the amount of bits received before the inner code block, during
126 the same period as
127 :ref:`DTV_STAT_PRE_ERROR_BIT_COUNT <DTV-STAT-PRE-ERROR-BIT-COUNT>`
128 measurement was taken.
129
130 It should be noted that this measurement can be smaller than the total
131 amount of bits on the transport stream, as the frontend may need to
132 manually restart the measurement, losing some data between each
133 measurement interval.
134
135 This measurement is monotonically increased, as the frontend gets more
136 bit count measurements. The frontend may reset it when a
137 channel/transponder is tuned.
138
139 Possible scales for this metric are:
140
141 - ``FE_SCALE_NOT_AVAILABLE`` - it failed to measure it, or the
142 measurement was not complete yet.
143
144 - ``FE_SCALE_COUNTER`` - Number of bits counted while measuring
145 :ref:`DTV_STAT_PRE_ERROR_BIT_COUNT <DTV-STAT-PRE-ERROR-BIT-COUNT>`.
146
147
148 .. _DTV-STAT-POST-ERROR-BIT-COUNT:
149
150 DTV_STAT_POST_ERROR_BIT_COUNT
151 =============================
152
153 Measures the number of bit errors after the forward error correction
154 (FEC) done by inner code block (after Viterbi, LDPC or other inner
155 code).
156
157 This measure is taken during the same interval as
158 ``DTV_STAT_POST_TOTAL_BIT_COUNT``.
159
160 In order to get the BER (Bit Error Rate) measurement, it should be
161 divided by
162 :ref:`DTV_STAT_POST_TOTAL_BIT_COUNT <DTV-STAT-POST-TOTAL-BIT-COUNT>`.
163
164 This measurement is monotonically increased, as the frontend gets more
165 bit count measurements. The frontend may reset it when a
166 channel/transponder is tuned.
167
168 Possible scales for this metric are:
169
170 - ``FE_SCALE_NOT_AVAILABLE`` - it failed to measure it, or the
171 measurement was not complete yet.
172
173 - ``FE_SCALE_COUNTER`` - Number of error bits counted after the inner
174 coding.
175
176
177 .. _DTV-STAT-POST-TOTAL-BIT-COUNT:
178
179 DTV_STAT_POST_TOTAL_BIT_COUNT
180 =============================
181
182 Measures the amount of bits received after the inner coding, during the
183 same period as
184 :ref:`DTV_STAT_POST_ERROR_BIT_COUNT <DTV-STAT-POST-ERROR-BIT-COUNT>`
185 measurement was taken.
186
187 It should be noted that this measurement can be smaller than the total
188 amount of bits on the transport stream, as the frontend may need to
189 manually restart the measurement, losing some data between each
190 measurement interval.
191
192 This measurement is monotonically increased, as the frontend gets more
193 bit count measurements. The frontend may reset it when a
194 channel/transponder is tuned.
195
196 Possible scales for this metric are:
197
198 - ``FE_SCALE_NOT_AVAILABLE`` - it failed to measure it, or the
199 measurement was not complete yet.
200
201 - ``FE_SCALE_COUNTER`` - Number of bits counted while measuring
202 :ref:`DTV_STAT_POST_ERROR_BIT_COUNT <DTV-STAT-POST-ERROR-BIT-COUNT>`.
203
204
205 .. _DTV-STAT-ERROR-BLOCK-COUNT:
206
207 DTV_STAT_ERROR_BLOCK_COUNT
208 ==========================
209
210 Measures the number of block errors after the outer forward error
211 correction coding (after Reed-Solomon or other outer code).
212
213 This measurement is monotonically increased, as the frontend gets more
214 bit count measurements. The frontend may reset it when a
215 channel/transponder is tuned.
216
217 Possible scales for this metric are:
218
219 - ``FE_SCALE_NOT_AVAILABLE`` - it failed to measure it, or the
220 measurement was not complete yet.
221
222 - ``FE_SCALE_COUNTER`` - Number of error blocks counted after the outer
223 coding.
224
225
226 .. _DTV-STAT-TOTAL-BLOCK-COUNT:
227
228 DTV-STAT_TOTAL_BLOCK_COUNT
229 ==========================
230
231 Measures the total number of blocks received during the same period as
232 :ref:`DTV_STAT_ERROR_BLOCK_COUNT <DTV-STAT-ERROR-BLOCK-COUNT>`
233 measurement was taken.
234
235 It can be used to calculate the PER indicator, by dividing
236 :ref:`DTV_STAT_ERROR_BLOCK_COUNT <DTV-STAT-ERROR-BLOCK-COUNT>` by
237 :ref:`DTV-STAT-TOTAL-BLOCK-COUNT`.
238
239 Possible scales for this metric are:
240
241 - ``FE_SCALE_NOT_AVAILABLE`` - it failed to measure it, or the
242 measurement was not complete yet.
243
244 - ``FE_SCALE_COUNTER`` - Number of blocks counted while measuring
245 :ref:`DTV_STAT_ERROR_BLOCK_COUNT <DTV-STAT-ERROR-BLOCK-COUNT>`.
246

3. 한국어 전문 번역

영어 원문의 문단 순서와 의미를 유지한 전체 번역입니다. 코드, 함수명, symbol과 URL은 원문 표기를 유지합니다.

dtv_property.stat 배열과 scale

1-52

통계 값은 `dtv_property.stat`을 통해 반환됩니다. Property가 지원되면 `dtv_property.stat.len`은 0보다 큽니다.

대부분의 delivery system에서는 통계가 지원될 때 `len`이 1이고 매개변수마다 단일 값을 반환합니다. ISDB 같은 새로운 OFDM system은 carrier group마다 다른 변조를 사용할 수 있어 최대 3개 group 통계를 제공할 수 있습니다.

일관성을 위해 `dtv_property.stat.dtv_stats` 배열의 첫 값은 global metric입니다. 나머지는 layer A(index 1), layer B(index 2) 순서로 각 carrier group 또는 ISDB layer를 나타내며 채운 element 수는 `dtv_property.stat.len`에 저장됩니다.

각 `dtv_stats` element는 값 union과 `scale`로 구성됩니다. `svalue`는 dB처럼 signed 측정값, `uvalue`는 counter나 relative scale 같은 unsigned 값입니다.

Frontend 통계 scale
Scale의미
FE_SCALE_NOT_AVAILABLE지원은 하지만 일시적 또는 영구적인 이유로 수집하지 못함
FE_SCALE_DECIBEL1/1000 dB 단위 signed 값
FE_SCALE_RELATIVE0은 0%, 65535는 100%인 unsigned 상대값
FE_SCALE_COUNTERbit error, block error, 경과 시간 같은 event 발생 횟수 counter

값 해석에 사용하는 네 scale입니다.

Layer 통계 배열 해석
dtv_property.stat.len이 0보다 큰지 확인dtv_stats[0]에서 global metric 읽기dtv_stats[1]부터 layer A/B/C 순서로 읽기각 element의 svalue 또는 uvalue 선택scale에 맞춰 단위와 의미 해석

len과 배열 index로 global 및 layer metric을 구분합니다.

.. SPDX-License-Identifier: GFDL-1.1-no-invariants-or-later

.. _frontend-stat-properties:

******************************
Frontend statistics indicators
******************************

The values are returned via ``dtv_property.stat``. If the property is
supported, ``dtv_property.stat.len`` is bigger than zero.

For most delivery systems, ``dtv_property.stat.len`` will be 1 if the
stats is supported, and the properties will return a single value for
each parameter.

It should be noted, however, that new OFDM delivery systems like ISDB
can use different modulation types for each group of carriers. On such
standards, up to 3 groups of statistics can be provided, and
``dtv_property.stat.len`` is updated to reflect the "global" metrics,
plus one metric per each carrier group (called "layer" on ISDB).

So, in order to be consistent with other delivery systems, the first
value at :c:type:`dtv_property.stat.dtv_stats <dtv_stats>` array refers
to the global metric. The other elements of the array represent each
layer, starting from layer A(index 1), layer B (index 2) and so on.

The number of filled elements are stored at ``dtv_property.stat.len``.

Each element of the ``dtv_property.stat.dtv_stats`` array consists on
two elements:

-  ``svalue`` or ``uvalue``, where ``svalue`` is for signed values of
   the measure (dB measures) and ``uvalue`` is for unsigned values
   (counters, relative scale)

-  ``scale`` - Scale for the value. It can be:

   -  ``FE_SCALE_NOT_AVAILABLE`` - The parameter is supported by the
      frontend, but it was not possible to collect it (could be a
      transitory or permanent condition)

   -  ``FE_SCALE_DECIBEL`` - parameter is a signed value, measured in
      1/1000 dB

   -  ``FE_SCALE_RELATIVE`` - parameter is a unsigned value, where 0
      means 0% and 65535 means 100%.

   -  ``FE_SCALE_COUNTER`` - parameter is a unsigned value that counts
      the occurrence of an event, like bit error, block error, or lapsed
      time.

Signal strength와 CNR

53-90

`DTV_STAT_SIGNAL_STRENGTH`는 tuner 또는 demodulator analog 부분의 signal strength level을 나타냅니다.

Signal strength scale
Scale의미
FE_SCALE_NOT_AVAILABLE측정 실패 또는 아직 완료되지 않음
FE_SCALE_DECIBEL0.001 dBm 단위, milliwatt 기준 power이며 일반적으로 음수
FE_SCALE_RELATIVE0~65535가 0~100% power를 나타냄

DTV_STAT_SIGNAL_STRENGTH가 사용할 수 있는 scale입니다.

`DTV_STAT_CNR`은 주 반송파의 signal-to-noise ratio를 나타냅니다.

CNR scale
Scale의미
FE_SCALE_NOT_AVAILABLE측정 실패 또는 아직 완료되지 않음
FE_SCALE_DECIBEL0.001 dB 단위 Signal/Noise ratio
FE_SCALE_RELATIVE0~65535가 0~100% Signal/Noise를 나타냄

DTV_STAT_CNR이 사용할 수 있는 scale입니다.

.. _DTV-STAT-SIGNAL-STRENGTH:

DTV_STAT_SIGNAL_STRENGTH
========================

Indicates the signal strength level at the analog part of the tuner or
of the demod.

Possible scales for this metric are:

-  ``FE_SCALE_NOT_AVAILABLE`` - it failed to measure it, or the
   measurement was not complete yet.

-  ``FE_SCALE_DECIBEL`` - signal strength is in 0.001 dBm units, power
   measured in miliwatts. This value is generally negative.

-  ``FE_SCALE_RELATIVE`` - The frontend provides a 0% to 100%
   measurement for power (actually, 0 to 65535).


.. _DTV-STAT-CNR:

DTV_STAT_CNR
============

Indicates the Signal to Noise ratio for the main carrier.

Possible scales for this metric are:

-  ``FE_SCALE_NOT_AVAILABLE`` - it failed to measure it, or the
   measurement was not complete yet.

-  ``FE_SCALE_DECIBEL`` - Signal/Noise ratio is in 0.001 dB units.

-  ``FE_SCALE_RELATIVE`` - The frontend provides a 0% to 100%
   measurement for Signal/Noise (actually, 0 to 65535).

Inner FEC 이전 bit error와 total

91-147

`DTV_STAT_PRE_ERROR_BIT_COUNT`는 Viterbi, LDPC 등 inner code의 Forward Error Correction 이전 bit error 수를 측정합니다. `DTV_STAT_PRE_TOTAL_BIT_COUNT`와 같은 구간에서 측정합니다.

Pre-FEC BER은 `DTV_STAT_PRE_ERROR_BIT_COUNT / DTV_STAT_PRE_TOTAL_BIT_COUNT`로 계산합니다.

Error counter는 frontend가 더 많은 bit 측정값을 얻을수록 단조 증가하며 channel/transponder tuning 시 reset될 수 있습니다. Scale은 측정 불가 또는 `FE_SCALE_COUNTER`입니다.

`DTV_STAT_PRE_TOTAL_BIT_COUNT`는 같은 측정 구간의 inner code 이전 수신 bit 수입니다. Frontend가 측정을 수동으로 재시작하면서 구간 사이 data를 잃을 수 있으므로 transport stream 전체 bit 수보다 작을 수 있습니다.

Total counter도 단조 증가하고 tuning 시 reset될 수 있으며, scale은 측정 불가 또는 error count와 짝을 이루는 `FE_SCALE_COUNTER`입니다.

Pre-FEC BER 계산
PRE_ERROR_BIT_COUNT 읽기같은 구간의 PRE_TOTAL_BIT_COUNT 읽기Error count를 total count로 나누기Tuning에 따른 counter reset 여부 확인측정 재시작 사이의 누락 가능성 고려

동일 구간의 error와 total counter를 짝지어 사용합니다.

.. _DTV-STAT-PRE-ERROR-BIT-COUNT:

DTV_STAT_PRE_ERROR_BIT_COUNT
============================

Measures the number of bit errors before the forward error correction
(FEC) on the inner coding block (before Viterbi, LDPC or other inner
code).

This measure is taken during the same interval as
``DTV_STAT_PRE_TOTAL_BIT_COUNT``.

In order to get the BER (Bit Error Rate) measurement, it should be
divided by
:ref:`DTV_STAT_PRE_TOTAL_BIT_COUNT <DTV-STAT-PRE-TOTAL-BIT-COUNT>`.

This measurement is monotonically increased, as the frontend gets more
bit count measurements. The frontend may reset it when a
channel/transponder is tuned.

Possible scales for this metric are:

-  ``FE_SCALE_NOT_AVAILABLE`` - it failed to measure it, or the
   measurement was not complete yet.

-  ``FE_SCALE_COUNTER`` - Number of error bits counted before the inner
   coding.


.. _DTV-STAT-PRE-TOTAL-BIT-COUNT:

DTV_STAT_PRE_TOTAL_BIT_COUNT
============================

Measures the amount of bits received before the inner code block, during
the same period as
:ref:`DTV_STAT_PRE_ERROR_BIT_COUNT <DTV-STAT-PRE-ERROR-BIT-COUNT>`
measurement was taken.

It should be noted that this measurement can be smaller than the total
amount of bits on the transport stream, as the frontend may need to
manually restart the measurement, losing some data between each
measurement interval.

This measurement is monotonically increased, as the frontend gets more
bit count measurements. The frontend may reset it when a
channel/transponder is tuned.

Possible scales for this metric are:

-  ``FE_SCALE_NOT_AVAILABLE`` - it failed to measure it, or the
   measurement was not complete yet.

-  ``FE_SCALE_COUNTER`` - Number of bits counted while measuring
   :ref:`DTV_STAT_PRE_ERROR_BIT_COUNT <DTV-STAT-PRE-ERROR-BIT-COUNT>`.

Inner FEC 이후 bit error와 total

148-204

`DTV_STAT_POST_ERROR_BIT_COUNT`는 inner code의 FEC를 수행한 뒤의 bit error 수입니다. `DTV_STAT_POST_TOTAL_BIT_COUNT`와 같은 구간에서 측정합니다.

Post-FEC BER은 `DTV_STAT_POST_ERROR_BIT_COUNT / DTV_STAT_POST_TOTAL_BIT_COUNT`로 계산합니다.

Error counter는 단조 증가하며 channel/transponder tuning 시 reset될 수 있습니다. Scale은 측정 불가 또는 inner coding 뒤 error bit 수를 나타내는 `FE_SCALE_COUNTER`입니다.

`DTV_STAT_POST_TOTAL_BIT_COUNT`는 같은 구간의 inner coding 이후 수신 bit 수입니다. 측정을 수동 재시작하는 사이 data가 빠질 수 있어 transport stream 전체보다 작을 수 있습니다.

Total counter도 단조 증가하고 tuning 시 reset될 수 있으며 scale은 측정 불가 또는 paired total을 세는 `FE_SCALE_COUNTER`입니다.

Post-FEC BER 계산
POST_ERROR_BIT_COUNT 읽기같은 구간의 POST_TOTAL_BIT_COUNT 읽기Error count를 total count로 나누기Tuning reset 여부 확인측정 interval 사이 누락 가능성 고려

FEC 이후 error와 total counter를 같은 구간에서 사용합니다.

.. _DTV-STAT-POST-ERROR-BIT-COUNT:

DTV_STAT_POST_ERROR_BIT_COUNT
=============================

Measures the number of bit errors after the forward error correction
(FEC) done by inner code block (after Viterbi, LDPC or other inner
code).

This measure is taken during the same interval as
``DTV_STAT_POST_TOTAL_BIT_COUNT``.

In order to get the BER (Bit Error Rate) measurement, it should be
divided by
:ref:`DTV_STAT_POST_TOTAL_BIT_COUNT <DTV-STAT-POST-TOTAL-BIT-COUNT>`.

This measurement is monotonically increased, as the frontend gets more
bit count measurements. The frontend may reset it when a
channel/transponder is tuned.

Possible scales for this metric are:

-  ``FE_SCALE_NOT_AVAILABLE`` - it failed to measure it, or the
   measurement was not complete yet.

-  ``FE_SCALE_COUNTER`` - Number of error bits counted after the inner
   coding.


.. _DTV-STAT-POST-TOTAL-BIT-COUNT:

DTV_STAT_POST_TOTAL_BIT_COUNT
=============================

Measures the amount of bits received after the inner coding, during the
same period as
:ref:`DTV_STAT_POST_ERROR_BIT_COUNT <DTV-STAT-POST-ERROR-BIT-COUNT>`
measurement was taken.

It should be noted that this measurement can be smaller than the total
amount of bits on the transport stream, as the frontend may need to
manually restart the measurement, losing some data between each
measurement interval.

This measurement is monotonically increased, as the frontend gets more
bit count measurements. The frontend may reset it when a
channel/transponder is tuned.

Possible scales for this metric are:

-  ``FE_SCALE_NOT_AVAILABLE`` - it failed to measure it, or the
   measurement was not complete yet.

-  ``FE_SCALE_COUNTER`` - Number of bits counted while measuring
   :ref:`DTV_STAT_POST_ERROR_BIT_COUNT <DTV-STAT-POST-ERROR-BIT-COUNT>`.

Outer FEC 이후 block error와 PER

205-245

`DTV_STAT_ERROR_BLOCK_COUNT`는 Reed-Solomon 같은 outer code의 Forward Error Correction 이후 block error 수를 측정합니다.

이 counter는 더 많은 측정값을 얻을수록 단조 증가하고 channel/transponder tuning 시 reset될 수 있습니다. Scale은 측정 불가 또는 outer coding 이후 error block 수인 `FE_SCALE_COUNTER`입니다.

원문 heading은 `DTV-STAT_TOTAL_BLOCK_COUNT`처럼 첫 구분자에 hyphen을 사용하지만 property 참조는 `DTV_STAT_TOTAL_BLOCK_COUNT`입니다. 영어 원문 표기는 수정하지 않고 그대로 보존합니다.

`DTV_STAT_TOTAL_BLOCK_COUNT`는 error block과 같은 기간에 받은 전체 block 수입니다. PER은 `DTV_STAT_ERROR_BLOCK_COUNT / DTV_STAT_TOTAL_BLOCK_COUNT`로 계산합니다.

Total block scale은 측정 불가 또는 error block 측정 중 센 전체 block 수를 나타내는 `FE_SCALE_COUNTER`입니다.

PER 계산
ERROR_BLOCK_COUNT 읽기같은 구간의 TOTAL_BLOCK_COUNT 읽기Error block을 total block으로 나누기Tuning reset 여부 확인

동일 구간의 outer-code block counter를 나눕니다.

.. _DTV-STAT-ERROR-BLOCK-COUNT:

DTV_STAT_ERROR_BLOCK_COUNT
==========================

Measures the number of block errors after the outer forward error
correction coding (after Reed-Solomon or other outer code).

This measurement is monotonically increased, as the frontend gets more
bit count measurements. The frontend may reset it when a
channel/transponder is tuned.

Possible scales for this metric are:

-  ``FE_SCALE_NOT_AVAILABLE`` - it failed to measure it, or the
   measurement was not complete yet.

-  ``FE_SCALE_COUNTER`` - Number of error blocks counted after the outer
   coding.


.. _DTV-STAT-TOTAL-BLOCK-COUNT:

DTV-STAT_TOTAL_BLOCK_COUNT
==========================

Measures the total number of blocks received during the same period as
:ref:`DTV_STAT_ERROR_BLOCK_COUNT <DTV-STAT-ERROR-BLOCK-COUNT>`
measurement was taken.

It can be used to calculate the PER indicator, by dividing
:ref:`DTV_STAT_ERROR_BLOCK_COUNT <DTV-STAT-ERROR-BLOCK-COUNT>` by
:ref:`DTV-STAT-TOTAL-BLOCK-COUNT`.

Possible scales for this metric are:

-  ``FE_SCALE_NOT_AVAILABLE`` - it failed to measure it, or the
   measurement was not complete yet.

-  ``FE_SCALE_COUNTER`` - Number of blocks counted while measuring
   :ref:`DTV_STAT_ERROR_BLOCK_COUNT <DTV-STAT-ERROR-BLOCK-COUNT>`.