Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ стороТСвой Ρ‚Π°ΠΉΠΌΠ΅Ρ€

Π‘Ρ‚ΠΎΡ€ΠΎΠΆΠ΅Π²ΠΎΠΉ Ρ‚Π°ΠΉΠΌΠ΅Ρ€ Π² Π½Π°Π΄Π΅ΠΆΠ½Ρ‹Ρ… встраиваСмых систСмах

Как ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ, WTD состоит ΠΈΠ· счСтчика ΠΈ Ρ‚Π°ΠΊΡ‚ΠΈΡ€ΡƒΡŽΡ‰Π΅Π³ΠΎ устройства. Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ счСтчика ΠΏΠΎ сигналам Ρ‚Π°ΠΊΡ‚ΠΎΠ²ΠΎΠ³ΠΎ устройства постоянно ΡƒΠΌΠ΅Π½ΡŒΡˆΠ°Π΅Ρ‚ΡΡ. Когда ΠΎΠ½ΠΎ достигаСт нуля, гСнСрируСтся ΠΊΠΎΡ€ΠΎΡ‚ΠΊΠΈΠΉ ΠΈΠΌΠΏΡƒΠ»ΡŒΡ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ сбрасываСт ΠΈ пСрСзапускаСт систСму.

ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡŽ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ пСриодичСски, Π΄ΠΎ срабатывания Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π°, ΠΎΠ±Π½ΠΎΠ²Π»ΡΡ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ счСтчика, ΠΈΠ½Π°Ρ‡Π΅ WTD Π²Ρ‹Π·ΠΎΠ²Π΅Ρ‚ ΠΏΠ΅Ρ€Π΅Π·Π°Π³Ρ€ΡƒΠ·ΠΊΡƒ систСмы. ПослС обновлСния счСтчика Π΅Π³ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ вновь ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚ ΡƒΠΌΠ΅Π½ΡŒΡˆΠ°Ρ‚ΡŒΡΡ. ΠŸΡ€ΠΎΡ‰Π΅ говоря, WDT постоянно «слСдит» Π·Π° Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ΠΌ ΠΊΠΎΠ΄Π° ΠΈ ΠΏΠ΅Ρ€Π΅Π·Π°Π³Ρ€ΡƒΠΆΠ°Π΅Ρ‚ систСму, Ссли ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ обСспСчСниС зависаСт ΠΈΠ»ΠΈ большС Π½Π΅ выполняСт ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΡƒΡŽ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΊΠΎΠ΄Π°. ΠŸΠ΅Ρ€Π΅Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ° значСния WDT с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния называСтся β€œkicking the watchdog” (пСрСзапуск стороТСвого Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π°).

ΠžΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ с ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ стороТСвых Ρ‚Π°ΠΉΠΌΠ΅Ρ€ΠΎΠ²

Π’ΠΈΠΏΡ‹ стороТСвых Ρ‚Π°ΠΉΠΌΠ΅Ρ€ΠΎΠ²

WDT ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Ρ€Π°Π·Π΄Π΅Π»Π΅Π½Ρ‹ Π½Π° Π΄Π²Π΅ Π±ΠΎΠ»ΡŒΡˆΠΈΡ… ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΠΈ – внСшниС стороТСвыС Ρ‚Π°ΠΉΠΌΠ΅Ρ€Ρ‹ (рисунок 1) ΠΈ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠ΅, ΠΈΠ»ΠΈ встроСнныС (рисунок 2). ΠŸΠΎΠ΄Π°Π²Π»ΡΡŽΡ‰Π΅Π΅ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ соврСмСнных ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ΠΎΠ² ΠΈΠΌΠ΅ΡŽΡ‚ встроСнныС стороТСвыС Ρ‚Π°ΠΉΠΌΠ΅Ρ€Ρ‹. ΠŸΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΠΈ Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΡ€Π΅Π΄Π»Π°Π³Π°ΡŽΡ‚ спСциализированныС микросхСмы стороТСвых Ρ‚Π°ΠΉΠΌΠ΅Ρ€ΠΎΠ².

Π’Ρ‹Ρ…ΠΎΠ΄ внСшнСго WDT ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ ΠΊ Π²Ρ‹Π²ΠΎΠ΄Ρƒ сброса ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π°. Один ΠΈΠ»ΠΈ нСсколько Π²Ρ‹Π²ΠΎΠ΄ΠΎΠ² ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ для пСрСзапуска стороТСвого Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π°.

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ стороТСвой Ρ‚Π°ΠΉΠΌΠ΅Ρ€. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ стороТСвой Ρ‚Π°ΠΉΠΌΠ΅Ρ€. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ стороТСвой Ρ‚Π°ΠΉΠΌΠ΅Ρ€. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ стороТСвой Ρ‚Π°ΠΉΠΌΠ΅Ρ€. Π€ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ стороТСвой Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ стороТСвой Ρ‚Π°ΠΉΠΌΠ΅Ρ€. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ стороТСвой Ρ‚Π°ΠΉΠΌΠ΅Ρ€. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ стороТСвой Ρ‚Π°ΠΉΠΌΠ΅Ρ€. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ стороТСвой Ρ‚Π°ΠΉΠΌΠ΅Ρ€. Π€ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ стороТСвой Ρ‚Π°ΠΉΠΌΠ΅Ρ€
Рис. 1. Π’Π½Π΅ΡˆΠ½ΠΈΠΉ стороТСвой таймСрРис. 2. Π’Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠΉ стороТСвой Ρ‚Π°ΠΉΠΌΠ΅Ρ€

ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹, Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡŽΡ‰ΠΈΠ΅ ΠΏΡ€ΠΈ отсутствии стороТСвого Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π°

Π’ 1994 Π³ΠΎΠ΄Ρƒ для наблюдСния Π·Π° Π›ΡƒΠ½ΠΎΠΉ ΠΈ астСроидом 1620 Geo Π±Ρ‹Π» Π·Π°ΠΏΡƒΡ‰Π΅Π½ Π·ΠΎΠ½Π΄ Β«ΠšΠ»Π΅ΠΌΠ΅Π½Ρ‚ΠΈΠ½Π°Β». ПослС Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… мСсяцСв Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ сбой ΠΏΡ€ΠΈΠ²Π΅Π» ΠΊ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡŽ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½ΠΎΠ³ΠΎ двигатСля Π½Π° 11 ΠΌΠΈΠ½ΡƒΡ‚, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈΠ²Π΅Π»ΠΎ ΠΊ Π±ΠΎΠ»ΡŒΡˆΠΎΠΌΡƒ расходу Ρ‚ΠΎΠΏΠ»ΠΈΠ²Π° ΠΈ Π²Ρ€Π°Ρ‰Π΅Π½ΠΈΡŽ Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π° со ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒΡŽ 80 ΠΎΠ±/ΠΌΠΈΠ½. Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π±Ρ‹Π»ΠΎ Π² ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎΠΌ ΠΈΡ‚ΠΎΠ³Π΅ восстановлСно, Π½ΠΎ слишком ΠΏΠΎΠ·Π΄Π½ΠΎ для ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎΠ³ΠΎ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ миссии.

Π”Π°ΠΆΠ΅ Ссли ΠΊΠΎΠ΄ Π±Ρ‹Π» Ρ‚Ρ‰Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ спроСктирован ΠΈ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½, ошибка всСгда Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Π°. Если устройство тСстируСтся Π½Π° ΡƒΡΡ‚ΠΎΠΉΡ‡ΠΈΠ²ΠΎΡΡ‚ΡŒ ΠΊ элСктромагнитным ΠΏΠΎΠΌΠ΅Ρ…Π°ΠΌ, Π²Ρ‹ΡΠΎΠΊΠΎΠ²ΠΎΠ»ΡŒΡ‚Π½Ρ‹ΠΉ ΠΈΠΌΠΏΡƒΠ»ΡŒΡ ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ счСтчика ΠΈΠ»ΠΈ указатСля стСка. ΠšΠΎΡΠΌΠΈΡ‡Π΅ΡΠΊΠΈΠ΅ Π»ΡƒΡ‡ΠΈ Ρ‚Π°ΠΊΠΆΠ΅ опасны для Ρ†ΠΈΡ„Ρ€ΠΎΠ²ΠΎΠΉ Ρ‚Π΅Ρ…Π½ΠΈΠΊΠΈ ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ привСсти ΠΊ искаТСнию содСрТимого рСгистров процСссора.

Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ пСрСполнСния Π±ΡƒΡ„Π΅Ρ€Π° ΠΈΠ»ΠΈ Π²Π·Π°ΠΈΠΌΠ½ΠΎΠΉ Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠΈ процСссов Ρ€Π°Π±ΠΎΡ‚Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ зависанию систСмы Π² бСсконСчном Ρ†ΠΈΠΊΠ»Π΅. Π’ Π½Π΅Π±ΠΎΠ»ΡŒΡˆΠΈΡ… систСмах достаточно Π»Π΅Π³ΠΊΠΎ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠΈΡ‚ΡŒ источник ошибки, Π½ΠΎ Π² Π±ΠΎΠ»ΡŒΡˆΠΈΡ… встроСнных систСмах ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ это Π½Π΅ Ρ‚Π°ΠΊ просто. Как ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ стороТСвой Ρ‚Π°ΠΉΠΌΠ΅Ρ€, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ Π±Ρ‹Ρ‚ΡŒ ΡƒΠ²Π΅Ρ€Π΅Π½Ρ‹, Ρ‡Ρ‚ΠΎ систСма Π½Π΅ зависнСт навсСгда.

БистСмноС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ обСспСчСниС Ρ‚Π°ΠΊΠΆΠ΅ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π·Π°Ρ†ΠΈΠΊΠ»ΠΈΠ²Π°Ρ‚ΡŒΡΡ Π½Π° Π΄Π»ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΠ΅Ρ€ΠΈΠΎΠ΄. ΠžΠ±Ρ‰ΠΈΠΌ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ΠΌ являСтся сброс систСмы, ΠΈ Π² этом ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ стороТСвой Ρ‚Π°ΠΉΠΌΠ΅Ρ€.

Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π° систСм, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰ΠΈΡ… стороТСвой Ρ‚Π°ΠΉΠΌΠ΅Ρ€

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π² Ρ…ΠΎΠ΄Π΅ своСго выполнСния постоянно Π΄ΠΎΠ»ΠΆΠ½Π° ΠΎΠ±Π½ΠΎΠ²Π»ΡΡ‚ΡŒ стороТСвой Ρ‚Π°ΠΉΠΌΠ΅Ρ€. Π’ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… случаях для обновлСния значСния стороТСвого Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π° Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚ΡŒ Π΅ΠΌΡƒ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΡƒΡŽ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π±Π°ΠΉΡ‚ΠΎΠ². Π­Ρ‚ΠΎ сниТаСт Π²Π΅Ρ€ΠΎΡΡ‚Π½ΠΎΡΡ‚ΡŒ появлСния ошибки, способной ΠΎΠ±Π½ΠΎΠ²ΠΈΡ‚ΡŒ стороТСвой Ρ‚Π°ΠΉΠΌΠ΅Ρ€.

ПослС пСрСполнСния WDT Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€ΡƒΠ΅Ρ‚ линию сброса процСссора. Π’ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… процСссорах ΠΈ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π°Ρ… ΠΏΠ΅Ρ€Π΅Π΄ сбросом систСмы гСнСрируСтся ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠ΅ ΠΏΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΠ΅, своСобразноС ΠΏΡ€Π΅Π΄ΡƒΠΏΡ€Π΅ΠΆΠ΄Π΅Π½ΠΈΠ΅ ΠΎΡ‚ стороТСвого Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π° ΠΎ прСдстоящСм сбросС. Благодаря этому ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ ΠΏΠΎΠ»Π΅Π·Π½ΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ Π½Π°ΠΏΠΎΠ΄ΠΎΠ±ΠΈΠ΅ значСния рСгистра статуса Π² энСргонСзависимой памяти для ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π³ΠΎ Π°Π½Π°Π»ΠΈΠ·Π° послС рСстарта систСмы. ΠŸΡƒΡ‚Π΅ΠΌ Π°Π½Π°Π»ΠΈΠ·Π° ΠΆΡƒΡ€Π½Π°Π»ΠΎΠ² сброса ΠΌΠΎΠΆΠ½ΠΎ Π²Ρ‹ΡΠ²ΠΈΡ‚ΡŒ ΠΎΡΠ½ΠΎΠ²Π½ΡƒΡŽ ΠΏΡ€ΠΈΡ‡ΠΈΠ½Ρƒ сброса, ΠΈ, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, ΠΏΡ€ΠΈΡ‡ΠΈΠ½Ρƒ сбоя.

Π‘Ρ‚ΠΎΡ€ΠΎΠΆΠ΅Π²ΠΎΠΉ Ρ‚Π°ΠΉΠΌΠ΅Ρ€ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ использован для Π²Ρ‹Π²ΠΎΠ΄Π° устройства ΠΈΠ· спящСго Ρ€Π΅ΠΆΠΈΠΌΠ° ΠΈΠ»ΠΈ Ρ€Π΅ΠΆΠΈΠΌΠ° оТидания. Π’ спящСм Ρ€Π΅ΠΆΠΈΠΌΠ΅ срабатываниС стороТСвого Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π° Π½Π΅ сбрасываСт систСму, Π° просто ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄ΠΈΡ‚ Π΅Π΅ Π² Π°ΠΊΡ‚ΠΈΠ²Π½Ρ‹ΠΉ Ρ€Π΅ΠΆΠΈΠΌ.

Для Π½Π°Π΄Π΅ΠΆΠ½ΠΎΠΉ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π²Π½Π΅Π΄Ρ€Π΅Π½ΠΈΠ΅ стороТСвого Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π° являСтся ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ.

ΠŸΠ΅Ρ€ΠΈΠΎΠ΄ срабатывания стороТСвого Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π°

Для ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΠ³ΠΎ Π²Ρ‹Π±ΠΎΡ€Π° ΠΈΠ½Ρ‚Π΅Ρ€Π²Π°Π»Π° срабатывания стороТСвого Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π° Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Ρ‡Π΅Ρ‚ΠΊΠΎΠ΅ ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Ρ… Π΄Π»ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡΡ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Ρ… Ρ†ΠΈΠΊΠ»ΠΎΠ². Π’Π°Ρ€ΠΈΠ°Ρ†ΠΈΠΈ количСства Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡŽΡ‰ΠΈΡ… ΠΏΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΠΉ ΠΈΠ»ΠΈ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ врСмя, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΠ΅ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΡƒ прСрывания, ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ Ρ‚ΠΈΠΏΠΈΡ‡Π½ΡƒΡŽ Π΄Π»ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ Ρ†ΠΈΠΊΠ»Π°. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Π΅ Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΈ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠ³ΡƒΡ‚ ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΠ²Π°Ρ‚ΡŒ Π΄Π»ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ Ρ†ΠΈΠΊΠ»Π°. Π’ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ с Π΄Π»ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌΠΈ Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠ°ΠΌΠΈ Π² Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… мСстах ΠΌΠ΅ΠΆΠ΄Ρƒ участками ΠΊΠΎΠ΄Π° ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ стороТСвым Ρ‚Π°ΠΉΠΌΠ΅Ρ€ΠΎΠΌ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΡ‚ΠΎΠ»ΠΊΠ½ΡƒΡ‚ΡŒΡΡ с ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°ΠΌΠΈ.

Π’ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΊΡ€ΠΈΡ‚ΠΈΡ‡Π½Ρ‹Ρ… Π·Π°Π΄Π°Ρ‡Π°Ρ… Π²Π°ΠΆΠ½Π° Π΄Π»ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ восстановлСния послС сброса, ΠΈΠ½ΠΈΡ†ΠΈΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ стороТСвым Ρ‚Π°ΠΉΠΌΠ΅Ρ€ΠΎΠΌ. Π’ Ρ‚Π°ΠΊΠΈΡ… систСмах ΠΈΠ½Ρ‚Π΅Ρ€Π²Π°Π» срабатывания стороТСвого Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π° Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ Π²Ρ‹Π±Ρ€Π°Π½ ΠΎΡ‡Π΅Π½ΡŒ Ρ‚Ρ‰Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ. ПослС сброса ΠΎΡ‚ стороТСвого Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π° систСма Π΄ΠΎΠ»ΠΆΠ½Π° Π²ΠΎΡΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒΡΡ ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ быстрСС. К ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρƒ, Π² случаС кардиостимулятора Ρ€Π°Π±ΠΎΡ‚Π° Π΄ΠΎΠ»ΠΆΠ½Π° Π±Ρ‹Ρ‚ΡŒ восстановлСна Π·Π° ΠΈΠ½Ρ‚Π΅Ρ€Π²Π°Π», мСньший, Ρ‡Π΅ΠΌ Π΄Π»ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈΠ½Ρ‚Π΅Ρ€Π²Π°Π»Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΡƒΠ΄Π°Ρ€Π°ΠΌΠΈ сСрдца. Π˜Π½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΡ послС сброса ΠΎΡ‚ стороТСвого Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π° Π΄ΠΎΠ»ΠΆΠ½Π° Π±Ρ‹Ρ‚ΡŒ ΠΊΠΎΡ€ΠΎΡ‡Π΅, Ρ‡Π΅ΠΌ инициализация ΠΏΡ€ΠΈ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΈ.

ΠžΡ‡Π΅Π½ΡŒ ΠΊΠΎΡ€ΠΎΡ‚ΠΊΠΈΠ΅ Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ ΠΈΠ½Ρ‚Π΅Ρ€Π²Π°Π»Ρ‹ стороТСвого Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π° ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΊ лишним пСрСзапускам систСмы. Если систСма Π½Π΅ ΠΊΡ€ΠΈΡ‚ΠΈΡ‡Π½Π° ΠΏΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ, ΠΈΠ½Ρ‚Π΅Ρ€Π²Π°Π» сброса Π»ΡƒΡ‡ΡˆΠ΅ Π²Ρ‹Π±ΠΈΡ€Π°Ρ‚ΡŒ Π² ΠΏΡ€Π΅Π΄Π΅Π»Π°Ρ… Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… сСкунд.

Π‘Ρ‚ΠΎΡ€ΠΎΠΆΠ΅Π²ΠΎΠΉ Ρ‚Π°ΠΉΠΌΠ΅Ρ€ Π² ΠΎΠ΄Π½ΠΎΠΏΠΎΡ‚ΠΎΡ‡Π½ΠΎΠΌ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ

ΠžΠ±Ρ‹Ρ‡Π½ΠΎ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅/ пСрСзапуск стороТСвого Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π° происходит Π² ΠΊΠΎΠ½Ρ†Π΅ основного Ρ†ΠΈΠΊΠ»Π°, ΠΏΠ΅Ρ€Π΅Π΄ ΡƒΡ…ΠΎΠ΄ΠΎΠΌ Π½Π° Π½ΠΎΠ²Ρ‹ΠΉ ΠΊΡ€ΡƒΠ³ (рисунок 3).

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ стороТСвой Ρ‚Π°ΠΉΠΌΠ΅Ρ€. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ стороТСвой Ρ‚Π°ΠΉΠΌΠ΅Ρ€. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ стороТСвой Ρ‚Π°ΠΉΠΌΠ΅Ρ€. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ стороТСвой Ρ‚Π°ΠΉΠΌΠ΅Ρ€. Π€ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ стороТСвой Ρ‚Π°ΠΉΠΌΠ΅Ρ€

Рис. 3. Виповая схСма обновлСния стороТСвого Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π° Π² основном ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠΌ Ρ†ΠΈΠΊΠ»Π΅ прилоТСния

Π’ ΠΎΠ΄Π½ΠΎΠΏΠΎΡ‚ΠΎΡ‡Π½ΠΎΠΌ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ, ΠΊ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρƒ, Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΎ-тСорСтичСский ΠΏΠΎΠ΄Ρ…ΠΎΠ΄, ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π² ΠΊΠΎΠ΄ΠΎΠ²ΠΎΠΉ вставкС Π½ΠΈΠΆΠ΅. Π’ основном Ρ†ΠΈΠΊΠ»Π΅ Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΈΠ· состояний провСряСтся пСрСмСнная состояния ΠΈ, Π² случаС совпадСния, Π΅Π΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ измСняСтся Π½Π° Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π³ΠΎ состояния. Π’ Ρ‚ΠΎΠΌ случаС, Ссли Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ состояния Ρ€Π°Π²Π½ΠΎ Ρ‚Ρ€Π΅ΠΌ, происходит ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ стороТСвого Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π° ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‚ ΠΊ Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠΌΡƒ ΡΠΎΡΡ‚ΠΎΡΠ½ΠΈΡŽ. Если Π΄ΠΎ истСчСния ΠΈΠ½Ρ‚Π΅Ρ€Π²Π°Π»Π° стороТСвого Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π° пСрСмСнная состояния Π½Π΅ Ρ€Π°Π²Π½Π° Ρ‚Ρ€Π΅ΠΌ, это Π·Π½Π°Ρ‡ΠΈΡ‚, Ρ‡Ρ‚ΠΎ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ выполнСния ΠΊΠΎΠ΄Π° Π½Π°Ρ€ΡƒΡˆΠ΅Π½Π° ΠΈ систСма Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠ΅Ρ€Π΅Π·Π°Π³Ρ€ΡƒΠΆΠ΅Π½Π° ΠΏΠΎ ΡΡ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π½ΠΈΡŽ Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π°.

К ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρƒ, Ссли Π΄Π»ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ основного Ρ†ΠΈΠΊΠ»Π° составляСт 500 мс, Π° ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΈΠ½Ρ‚Π΅Ρ€Π²Π°Π» стороТСвого Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π° – 100 мс, Ρ‚ΠΎ Π½Π΅Ρ‚ возмоТности ΠΏΠ΅Ρ€Π΅Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ Π΅Π³ΠΎ Π² основном Ρ†ΠΈΠΊΠ»Π΅. Π’ Π΄Π°Π½Π½ΠΎΠΌ случаС ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· основных Ρ‚Π°ΠΉΠΌΠ΅Ρ€ΠΎΠ² процСссора/ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π° Π½Π° срабатываниС, ΠΊ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρƒ, ΠΊΠ°ΠΆΠ΄Ρ‹Π΅ 50 мс ΠΈ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ Ρ„Π»Π°Π³, ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΉ, Ρ‡Ρ‚ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΈΠ΄Π΅Ρ‚ ΡˆΡ‚Π°Ρ‚Π½ΠΎ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€ΠΎΠ²Π΅Ρ€Π΅Π½ Π² ΠΊΠΎΠ½Ρ†Π΅ основного Ρ†ΠΈΠΊΠ»Π°.

ΠšΠ°ΠΆΠ΄Ρ‹Π΅ 50 мс ΠΏΠΎ ΡΡ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π½ΠΈΡŽ основного Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π° провСряСтся Ρ„Π»Π°Π³ состояния, инкрСмСнтируСтся счСтчик. ОбновлСниС Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π° происходит Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² Ρ‚ΠΎΠΌ случаС, Ссли систСма находится Π² извСстном состоянии. Если Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ счСтчика прСвысило Π΄Π΅ΡΡΡ‚ΡŒ (ΠΏΡ€ΠΎΡˆΠ»ΠΎ Π±ΠΎΠ»Π΅Π΅ 500 мс), ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ ΠΏΡ€ΠΈ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ ΠΏΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΠΈ провСряСт Ρ„Π»Π°Π³ состояния, ΠΈ Ссли ΠΎΠ½ соотвСтствуСт Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎΠΌΡƒ исполнСнию ΠΊΠΎΠ΄Π°, Ρ‚ΠΎ считаСтся, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° выполняСтся ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎ. Π’ ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΎΠΌ случаС выставляСтся состояниС «нСизвСстноС», обновлСния стороТСвого Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π° ΠΏΡ€ΠΈ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ Π²Ρ‹Π·ΠΎΠ²Π΅ Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΈ систСма Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠ΅Ρ€Π΅Π·Π°ΠΏΡƒΡ‰Π΅Π½Π° ΠΏΠΎ ΠΈΡΡ‚Π΅Ρ‡Π΅Π½ΠΈΡŽ ΠΈΠ½Ρ‚Π΅Ρ€Π²Π°Π»Π° стороТСвого Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π°.

β€”β€”β€”β€”β€”-CODEβ€”β€”β€”β€”β€”β€”
ISR() //50ms free running
<
Count++;
If(Count > 10) //10x50ms
<
Count = 0;

If(State == ALIVE)
<
State = RESET;
>
else
<
State = UNKNOWN;
>
>

НС стоит Π΄ΠΎΠ²Π΅Ρ€ΡΡ‚ΡŒ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ стороТСвого Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π°, Π±Π΅Π· ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ ΠΊΠ°ΠΊΠΈΡ…-Π»ΠΈΠ±ΠΎ условий, ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΡƒ ΠΏΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΠΉ ΠΈΠ»ΠΈ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠΉ Π·Π°Π΄Π°Ρ‡Π΅ ΠžΠ‘Π Π’, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Π² случаС ошибки Π² основной Π²Π΅Ρ‚ΠΊΠ΅ ΠΊΠΎΠ΄Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΏΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΠΉ ΠΈΠ»ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Π΄Ρ€ΡƒΠ³ΠΈΡ… Π·Π°Π΄Π°Ρ‡ ΠžΠ‘Π Π’ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚ΡŒΡΡ, ΠΈ условия срабатывания стороТСвого Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π° Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ наступят. Π’Π°ΠΊΠΎΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ Π½Π΅ рСкомСндуСтся, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Π½Π΅Ρ‚ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΠΈ, Ρ‡Ρ‚ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ основной ΠΊΠΎΠ΄.

Π‘Ρ‚ΠΎΡ€ΠΎΠΆΠ΅Π²ΠΎΠΉ Ρ‚Π°ΠΉΠΌΠ΅Ρ€ Π² прилоТСниях Π½Π° Π±Π°Π·Π΅ ΠžΠ‘Π Π’

Π’ ΠΌΠ½ΠΎΠ³ΠΎΠ·Π°Π΄Π°Ρ‡Π½ΠΎΠΉ срСдС Π½Π°Π±Π»ΡŽΠ΄Π°Π΅Ρ‚ΡΡ мноТСство нСзависимых ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Ρ… Ρ†ΠΈΠΊΠ»ΠΎΠ², Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΡ‹Ρ… Π·Π°Π΄Π°Ρ‡Π°ΠΌΠΈ. ΠŸΠ»Π°Π½ΠΈΡ€ΠΎΠ²Ρ‰ΠΈΠΊ управляСт Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ΠΌ Π·Π°Π΄Π°Ρ‡ с ΡƒΡ‡Π΅Ρ‚ΠΎΠΌ ΠΈΡ… ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚Π°. Для Ρ‚ΠΎΠ³ΠΎ Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ±Π΅Π΄ΠΈΡ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎ Π·Π°Π΄Π°Ρ‡ΠΈ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ ΡˆΡ‚Π°Ρ‚Π½ΠΎ, каТдая ΠΈΠ· Π½ΠΈΡ… Π΄ΠΎΠ»ΠΆΠ½Π° Π²Π½ΠΎΡΠΈΡ‚ΡŒ свой Π²ΠΊΠ»Π°Π΄ Π² принятиС Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΎ пСрСзапускС стороТСвого Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π°.

Рассмотрим ΠΏΠΎΠ΄Ρ…ΠΎΠ΄, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ сущСствуСт слово статуса, ΠΈ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Π±ΠΈΡ‚ этого слова ассоциируСтся с ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠΉ Π·Π°Π΄Π°Ρ‡Π΅ΠΉ. К ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρƒ, Π² нашСй систСмС Π·Π°ΠΏΡƒΡ‰Π΅Π½Ρ‹ Ρ‚Ρ€ΠΈ Π·Π°Π΄Π°Ρ‡ΠΈ, ΠΈ каТдая ΠΈΠ· Π·Π°Π΄Π°Ρ‡ Π±ΡƒΠ΄Π΅Ρ‚ ΡƒΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°Ρ‚ΡŒ ΠΎΡ‚Π²Π΅Π΄Π΅Π½Π½Ρ‹ΠΉ Π΅ΠΉ Π±ΠΈΡ‚ Π² словС статуса Π² ΠΊΠΎΠ½Ρ†Π΅ своСго ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ Ρ†ΠΈΠΊΠ»Π°.

ΠŸΠΎΠ΄Ρ…ΠΎΠ΄, прСдставлСнный Π½Π° рисункС 4, Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π² Ρ‚ΠΎΠΌ случаС, Ссли Π΄Π»ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ Ρ†ΠΈΠΊΠ»ΠΎΠ² всСх Π·Π°Π΄Π°Ρ‡ Π±ΡƒΠ΄ΡƒΡ‚ мСньшС ΠΈ Π΄Π»ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΏΠ΅Ρ€ΠΈΠΎΠ΄Π° стороТСвого Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π°, ΠΈ пСриодичности срабатывания Π·Π°Π΄Π°Ρ‡ΠΈ стороТСвого Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π°. Однако Π² случаС, Ссли хотя Π±Ρ‹ ΠΎΠ΄Π½Π° ΠΈΠ· Π·Π°Π΄Π°Ρ‡ Π½Π΅ укладываСтся Π² этот ΠΏΠ΅Ρ€ΠΈΠΎΠ΄ ΠΏΠΎ ΠΊΠ°ΠΊΠΈΠΌ-Π»ΠΈΠ±ΠΎ ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π°ΠΌ (ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ Π² спящСС состояниС, ΠΎΠΆΠΈΠ΄Π°Π½ΠΈΠ΅ события, ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΏΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΠΉ), Π΄Π°ΠΆΠ΅ ΠΏΡ€ΠΈ ΡˆΡ‚Π°Ρ‚Π½ΠΎΠΌ исполнСнии стороТСвая Π·Π°Π΄Π°Ρ‡Π°, ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠΈΠ² нСустановлСнный Π±ΠΈΡ‚, Π½Π΅ ΠΎΠ±Π½ΠΎΠ²ΠΈΡ‚ Ρ‚Π°ΠΉΠΌΠ΅Ρ€, ΠΈ ΠΏΡ€ΠΎΠΈΠ·ΠΎΠΉΠ΄Π΅Ρ‚ пСрСзапуск всСй систСмы.

Π‘ΠΎΠ»Π΅Π΅ ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡Ρ‚ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ΠΌ являСтся использованиС ΠΌΠ΅Ρ‚ΠΎΠ΄Π° ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ сообщСний, ΠΊΠΎΠ³Π΄Π° каТдая Π·Π°Π΄Π°Ρ‡Π° блокируСтся Π² ΠΎΡ‡Π΅Ρ€Π΅Π΄ΠΈ сообщСний (рисунок 5). Π—Π°Π΄Π°Ρ‡Π° стороТСвого Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π° Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‚ΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ сообщСния всСм Π·Π°Π΄Π°Ρ‡Π°ΠΌ ΠΈ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒ Π² спящий Ρ€Π΅ΠΆΠΈΠΌ Π½Π° ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΉ ΠΏΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΎΠΊ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ (мСньший, Ρ‡Π΅ΠΌ ΠΏΠ΅Ρ€ΠΈΠΎΠ΄ Ρ‚Π°ΠΉΠΌ-Π°ΡƒΡ‚Π° Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π°).

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ стороТСвой Ρ‚Π°ΠΉΠΌΠ΅Ρ€. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ стороТСвой Ρ‚Π°ΠΉΠΌΠ΅Ρ€. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ стороТСвой Ρ‚Π°ΠΉΠΌΠ΅Ρ€. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ стороТСвой Ρ‚Π°ΠΉΠΌΠ΅Ρ€. Π€ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ стороТСвой Ρ‚Π°ΠΉΠΌΠ΅Ρ€

Рис. 4. РСализация стороТСвого Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π° Π² ΠžΠ‘Π Π’, Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ 1

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ стороТСвой Ρ‚Π°ΠΉΠΌΠ΅Ρ€. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ стороТСвой Ρ‚Π°ΠΉΠΌΠ΅Ρ€. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ стороТСвой Ρ‚Π°ΠΉΠΌΠ΅Ρ€. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ стороТСвой Ρ‚Π°ΠΉΠΌΠ΅Ρ€. Π€ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ стороТСвой Ρ‚Π°ΠΉΠΌΠ΅Ρ€

Рис. 5. РСализация стороТСвого Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π° Π² ΠžΠ‘Π Π’, Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ 2

ПослС поступлСния сообщСния Π² ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ прикладная Π·Π°Π΄Π°Ρ‡Π°, Π² соотвСтствии со своим ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚ΠΎΠΌ, ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅. Π—Π°Π΄Π°Ρ‡Π° считываСт сообщСниС, ΠΈ, Ссли ΠΎΠ½Π° Π±Ρ‹Π»Π° Ρ€Π°Π·Π±ΡƒΠΆΠ΅Π½Π° Π·Π°Π΄Π°Ρ‡Π΅ΠΉ стороТСвого Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π°, выставит ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ Π±ΠΈΡ‚ Π² словС статуса. ΠŸΡ€ΠΈ ΠΏΡ€ΠΎΠ±ΡƒΠΆΠ΄Π΅Π½ΠΈΠΈ Π·Π°Π΄Π°Ρ‡ΠΈ стороТСвого Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π° происходит ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π°ΠΊΡ‚ΠΈΠ²Π½Ρ‹Ρ… Π±ΠΈΡ‚ΠΎΠ² слова статуса Π·Π°Π΄Π°Ρ‡. Если всС ΠΎΠ½ΠΈ Π² Π½Π°Π»ΠΈΡ‡ΠΈΠΈ, стороТСвой Ρ‚Π°ΠΉΠΌΠ΅Ρ€ сбрасываСтся ΠΈ слово статуса обнуляСтся. ΠŸΡ€ΠΈ Ρ‚Π°ΠΊΠΎΠΌ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Π΅ Π·Π°Π΄Π°Ρ‡Π° стороТСвого Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π° Π΄ΠΎΠ»ΠΆΠ½Π° ΠΈΠΌΠ΅Ρ‚ΡŒ больший ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚ ΠΏΠΎ ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ с ΠΏΡ€ΠΈΠΊΠ»Π°Π΄Π½Ρ‹ΠΌΠΈ Π·Π°Π΄Π°Ρ‡Π°ΠΌΠΈ. Π’Ρ‹Π±ΠΎΡ€ ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚Π° стороТСвой Π·Π°Π΄Π°Ρ‡ΠΈ вСсьма Π²Π°ΠΆΠ΅Π½ ΠΈ зависит ΠΎΡ‚ ΠΎΠ±Ρ‰Π΅ΠΉ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹ систСмы.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ стороТСвой Ρ‚Π°ΠΉΠΌΠ΅Ρ€. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ стороТСвой Ρ‚Π°ΠΉΠΌΠ΅Ρ€. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ стороТСвой Ρ‚Π°ΠΉΠΌΠ΅Ρ€. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ стороТСвой Ρ‚Π°ΠΉΠΌΠ΅Ρ€. Π€ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ стороТСвой Ρ‚Π°ΠΉΠΌΠ΅Ρ€

А стороТСвой Ρ‚Π°ΠΉΠΌΠ΅Ρ€ (ΠΈΠ½ΠΎΠ³Π΄Π° Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΡ‹ΠΉ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎ ΠΈΠ»ΠΈ ΠΆΠ΅ КБ Ρ‚Π°ΠΉΠΌΠ΅Ρ€, ΠΈΠ»ΠΈ просто стороТСвая собака) являСтся элСктронным ΠΈΠ»ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΌ Ρ‚Π°ΠΉΠΌΠ΅Ρ€ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для обнаруТСния ΠΈ устранСния нСисправностСй ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π°. Π’ΠΎ врСмя Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ рСгулярно сбрасываСт стороТСвой Ρ‚Π°ΠΉΠΌΠ΅Ρ€, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€Π΅Π΄ΠΎΡ‚Π²Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ Π΅Π³ΠΎ истСчСниС ΠΈΠ»ΠΈ Β«Ρ‚Π°ΠΉΠΌ-Π°ΡƒΡ‚Β». Если ΠΈΠ·-Π·Π° Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½ΠΎΠ³ΠΎ сбоя ΠΈΠ»ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠΉ ошибки ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Ρƒ Π½Π΅ удаСтся ΡΠ±Ρ€ΠΎΡΠΈΡ‚ΡŒ стороТСвой Ρ‚Π°ΠΉΠΌΠ΅Ρ€, Ρ‚Π°ΠΉΠΌΠ΅Ρ€ истСчСт ΠΈ выдаст сигнал Ρ‚Π°ΠΉΠΌ-Π°ΡƒΡ‚Π°. Π‘ΠΈΠ³Π½Π°Π» Ρ‚Π°ΠΉΠΌ-Π°ΡƒΡ‚Π° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для запуска ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚ΠΈΡ€ΡƒΡŽΡ‰ΠΈΡ… дСйствий. ΠšΠΎΡ€Ρ€Π΅ΠΊΡ‚ΠΈΡ€ΡƒΡŽΡ‰ΠΈΠ΅ дСйствия ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½ΠΎΠΉ систСмы Π² бСзопасноС состояниС ΠΈ восстановлСниС Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹ систСмы.

Π‘Ρ‚ΠΎΡ€ΠΎΠΆΠ΅Π²Ρ‹Π΅ Ρ‚Π°ΠΉΠΌΠ΅Ρ€Ρ‹ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ находятся Π² встроСнныС систСмы ΠΈ Π΄Ρ€ΡƒΠ³ΠΎΠ΅ ΠΎΠ±ΠΎΡ€ΡƒΠ΄ΠΎΠ²Π°Π½ΠΈΠ΅ с ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½Ρ‹ΠΌ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ, Π³Π΄Π΅ люди Π½Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π»Π΅Π³ΠΊΠΎ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ доступ ΠΊ ΠΎΠ±ΠΎΡ€ΡƒΠ΄ΠΎΠ²Π°Π½ΠΈΡŽ ΠΈΠ»ΠΈ Π½Π΅ ΠΌΠΎΠ³ΡƒΡ‚ своСврСмСнно Ρ€Π΅Π°Π³ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π½Π° нСисправности. Π’ Ρ‚Π°ΠΊΠΈΡ… систСмах ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π·Π°Π²ΠΈΡΠ΅Ρ‚ΡŒ ΠΎΡ‚ Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊΠ°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²Ρ‹Π·ΠΎΠ²Π΅Ρ‚ ΠΏΠ΅Ρ€Π΅Π·Π°Π³Ρ€ΡƒΠ·ΠΊΡƒ, Ссли ΠΎΠ½ висит; ΠΎΠ½ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ. НапримСр, ΡƒΠ΄Π°Π»Π΅Π½Π½Ρ‹Π΅ встроСнныС систСмы, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ космичСскиС Π·ΠΎΠ½Π΄Ρ‹ физичСски нСдоступны для людСй-ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ²; ΠΎΠ½ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΡΡ‚Π°Ρ‚ΡŒ навсСгда ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½Π½Ρ‹ΠΌΠΈ, Ссли Π½Π΅ смогут ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ Π²ΠΎΡΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒΡΡ послС сбоСв. Π’ ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Ρ… случаях ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ стороТСвой Ρ‚Π°ΠΉΠΌΠ΅Ρ€. Π‘Ρ‚ΠΎΡ€ΠΎΠΆΠ΅Π²Ρ‹Π΅ Ρ‚Π°ΠΉΠΌΠ΅Ρ€Ρ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΏΡ€ΠΈ запускС Π½Π΅Π½Π°Π΄Π΅ΠΆΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° Π² пСсочница, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΡ‚ΡŒ процСссорноС врСмя, доступноС ΠΊΠΎΠ΄Ρƒ ΠΈ, Ρ‚Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, ΠΏΡ€Π΅Π΄ΠΎΡ‚Π²Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ‚ΠΈΠΏΡ‹ Π°Ρ‚Π°ΠΊΠΈ ΠΎΡ‚ΠΊΠ°Π·Π° Π² обслуТивании. [1]

Π‘Ρ‚ΠΎΡ€ΠΎΠΆΠ΅Π²Ρ‹Π΅ Ρ‚Π°ΠΉΠΌΠ΅Ρ€Ρ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Π² ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… систСмах, Π³Π΄Π΅ трСбуСтся Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… высокоприоритСтных ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ Π² ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΉ ΠΈΠ½Ρ‚Π΅Ρ€Π²Π°Π» Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ. Если Ρ‚Π°ΠΉΠΌΠ΅Ρ€ истСкаСт Π΄ΠΎ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ, Ρ‚ΠΎΠ³Π΄Π° ОБ Ρ€Π΅Π°Π³ΠΈΡ€ΡƒΠ΅Ρ‚ Π½Π° ΠΏΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΠ΅ Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π°, записывая Π΄Π°Π½Π½Ρ‹Π΅ ΠΎΠ± ошибкС ΠΈ Π·Π°Π²Π΅Ρ€ΡˆΠ°Ρ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΡŽ. БистСма ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ ΠΎΠ±Π° Ρ‚ΠΈΠΏΠ° стороТСвого Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π°.

Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠ°Π½ΠΈΠ΅

АрхитСктура ΠΈ Ρ€Π°Π±ΠΎΡ‚Π°

ΠŸΠ΅Ρ€Π΅Π·Π°ΠΏΡƒΡΠΊ стороТСвого Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π°

На ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π°Ρ…, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Π΅ систСмы, сброс стороТСвого Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π° ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ вызываСтся Ρ‡Π΅Ρ€Π΅Π· Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ устройства. НапримСр, Π² ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Π°Ρ систСма Linux, Π° пространство ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° запускаСт стороТСвой Ρ‚Π°ΠΉΠΌΠ΅Ρ€, взаимодСйствуя с Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ΠΎΠΌ стороТСвого устройства, ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ записывая Π½ΡƒΠ»Π΅Π²ΠΎΠΉ символ Π² / dev / стороТСвой Ρ‚Π°ΠΉΠΌΠ΅Ρ€. Π”Ρ€Π°ΠΉΠ²Π΅Ρ€ устройства, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ слуТит для абстрагирования стороТСвого устройства ΠΎΡ‚ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ пространства, Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для настройки ΠΏΠ΅Ρ€ΠΈΠΎΠ΄Π° оТидания ΠΈ запуска ΠΈ остановки Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π°.

ΠžΠ΄Π½ΠΎΡΡ‚ΡƒΠΏΠ΅Π½Ρ‡Π°Ρ‚Ρ‹ΠΉ стороТСвой Ρ‚Π°ΠΉΠΌΠ΅Ρ€

Π‘Ρ‚ΠΎΡ€ΠΎΠΆΠ΅Π²Ρ‹Π΅ Ρ‚Π°ΠΉΠΌΠ΅Ρ€Ρ‹ Π±Ρ‹Π²Π°ΡŽΡ‚ Ρ€Π°Π·Π½Ρ‹Ρ… ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΉ, ΠΈ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΠΈΠ· Π½ΠΈΡ… ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ ΠΈΡ…. ΠœΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Ρ‹ часто Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ встроСнный стороТСвой Ρ‚Π°ΠΉΠΌΠ΅Ρ€. Π’ Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π°Ρ… стороТСвой Ρ‚Π°ΠΉΠΌΠ΅Ρ€ ΠΌΠΎΠΆΠ΅Ρ‚ Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ Π² сосСднСм Ρ‡ΠΈΠΏΠ΅, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ нСпосрСдствСнно ΠΊ ЦПУ, ΠΈΠ»ΠΈ ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ располоТСн Π½Π° внСшнСм ΠΊΠ°Ρ€Ρ‚Π° Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ Π² корпусС ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π°. Π‘Ρ‚ΠΎΡ€ΠΎΠΆΠ΅Π²ΠΎΠΉ Ρ‚Π°ΠΉΠΌΠ΅Ρ€ ΠΈ ЦП ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ ΠΎΠ±Ρ‰ΠΈΠΉ Ρ‚Π°ΠΊΡ‚ΠΎΠ²Ρ‹ΠΉ сигнал, ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π½Π° Π±Π»ΠΎΠΊ-схСмС Π½ΠΈΠΆΠ΅, ΠΈΠ»ΠΈ ΠΎΠ½ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ нСзависимыС Ρ‚Π°ΠΊΡ‚ΠΎΠ²Ρ‹Π΅ сигналы.

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ стороТСвой Ρ‚Π°ΠΉΠΌΠ΅Ρ€. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ стороТСвой Ρ‚Π°ΠΉΠΌΠ΅Ρ€. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ стороТСвой Ρ‚Π°ΠΉΠΌΠ΅Ρ€. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ стороТСвой Ρ‚Π°ΠΉΠΌΠ΅Ρ€. Π€ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ стороТСвой Ρ‚Π°ΠΉΠΌΠ΅Ρ€

ΠœΠ½ΠΎΠ³ΠΎΡΡ‚ΡƒΠΏΠ΅Π½Ρ‡Π°Ρ‚Ρ‹ΠΉ стороТСвой Ρ‚Π°ΠΉΠΌΠ΅Ρ€

Иногда Π΄Π²Π° ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π° ΡΠΎΠ΅Π΄ΠΈΠ½ΡΡŽΡ‚ΡΡ каскадом, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΡ„ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ многоступСнчатый стороТСвой Ρ‚Π°ΠΉΠΌΠ΅Ρ€, Π³Π΄Π΅ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ‚Π°ΠΉΠΌΠ΅Ρ€ называСтся этап Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π°, ΠΈΠ»ΠΈ просто сцСна. НапримСр, Π½Π° Π±Π»ΠΎΠΊ-схСмС Π½ΠΈΠΆΠ΅ ΠΏΠΎΠΊΠ°Π·Π°Π½ трСхступСнчатый стороТСвой Ρ‚Π°ΠΉΠΌΠ΅Ρ€. Π’ многоступСнчатом стороТСвом Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π΅ процСссор запускаСт Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ этап. По истСчСнии Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ оТидания ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ этапа инициируСтся ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚ΠΈΡ€ΡƒΡŽΡ‰Π΅Π΅ дСйствиС ΠΈ запускаСтся ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ этап каскада. По истСчСнии Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ оТидания ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π³ΠΎ этапа запускаСтся ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚ΠΈΡ€ΡƒΡŽΡ‰Π΅Π΅ дСйствиС ΠΈ начинаСтся ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ этап. По истСчСнии Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ оТидания послСднСго этапа инициируСтся ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚ΠΈΡ€ΡƒΡŽΡ‰Π΅Π΅ дСйствиС, Π½ΠΎ Π½ΠΈΠΊΠ°ΠΊΠΈΠ΅ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ этапы Π½Π΅ Π·Π°ΠΏΡƒΡΠΊΠ°ΡŽΡ‚ΡΡ, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ достигнут ΠΊΠΎΠ½Π΅Ρ† каскада. Как ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ, одноступСнчатыС стороТСвыС Ρ‚Π°ΠΉΠΌΠ΅Ρ€Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ для простого пСрСзапуска ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π°, Ρ‚ΠΎΠ³Π΄Π° ΠΊΠ°ΠΊ многоступСнчатыС стороТСвыС Ρ‚Π°ΠΉΠΌΠ΅Ρ€Ρ‹ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ Π·Π°ΠΏΡƒΡΠΊΠ°ΡŽΡ‚ ΡΠ΅Ρ€ΠΈΡŽ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚ΠΈΡ€ΡƒΡŽΡ‰ΠΈΡ… дСйствий, ΠΏΡ€ΠΈΡ‡Π΅ΠΌ послСдний этап запускаСт ΠΏΠ΅Ρ€Π΅Π·Π°Π³Ρ€ΡƒΠ·ΠΊΡƒ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π°. [3]

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ стороТСвой Ρ‚Π°ΠΉΠΌΠ΅Ρ€. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ стороТСвой Ρ‚Π°ΠΉΠΌΠ΅Ρ€. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ стороТСвой Ρ‚Π°ΠΉΠΌΠ΅Ρ€. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ стороТСвой Ρ‚Π°ΠΉΠΌΠ΅Ρ€. Π€ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ стороТСвой Ρ‚Π°ΠΉΠΌΠ΅Ρ€

Π’Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ ΠΈΠ½Ρ‚Π΅Ρ€Π²Π°Π»Ρ‹

Π‘Ρ‚ΠΎΡ€ΠΎΠΆΠ΅Π²Ρ‹Π΅ Ρ‚Π°ΠΉΠΌΠ΅Ρ€Ρ‹ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ фиксированныС ΠΈΠ»ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΡƒΠ΅ΠΌΡ‹Π΅ Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ ΠΈΠ½Ρ‚Π΅Ρ€Π²Π°Π»Ρ‹. НСкоторыС стороТСвыС Ρ‚Π°ΠΉΠΌΠ΅Ρ€Ρ‹ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΈΠ½Ρ‚Π΅Ρ€Π²Π°Π», выбирая ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… Π²Ρ‹Π±ΠΈΡ€Π°Π΅ΠΌΡ‹Ρ… дискрСтных Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ. Π’ Π΄Ρ€ΡƒΠ³ΠΈΡ… случаях ΠΈΠ½Ρ‚Π΅Ρ€Π²Π°Π» ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π·Π°ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ Π½Π° ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½Ρ‹Π΅ значСния. ΠžΠ±Ρ‹Ρ‡Π½ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ ΠΈΠ½Ρ‚Π΅Ρ€Π²Π°Π»Ρ‹ стороТСвого Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π° ΡΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‚ ΠΎΡ‚ дСсяти миллисСкунд Π΄ΠΎ ΠΌΠΈΠ½ΡƒΡ‚Ρ‹ ΠΈ Π±ΠΎΠ»Π΅Π΅. Π’ многоступСнчатом стороТСвом Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π΅ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ‚Π°ΠΉΠΌΠ΅Ρ€ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ свой ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΈΠ½Ρ‚Π΅Ρ€Π²Π°Π».

ΠšΠΎΡ€Ρ€Π΅ΠΊΡ‚ΠΈΡ€ΡƒΡŽΡ‰ΠΈΠ΅ дСйствия

Π‘Ρ‚ΠΎΡ€ΠΎΠΆΠ΅Π²ΠΎΠΉ Ρ‚Π°ΠΉΠΌΠ΅Ρ€ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠ½ΠΈΡ†ΠΈΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ любой ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… Ρ‚ΠΈΠΏΠΎΠ² ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚ΠΈΡ€ΡƒΡŽΡ‰ΠΈΡ… дСйствий, Π² Ρ‚ΠΎΠΌ числС: маскируСмоС ΠΏΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΠ΅, нСмаскируСмоС ΠΏΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΠ΅, сброс процСссора, Π±Π΅Π·ΠΎΡ‚ΠΊΠ°Π·Π½Ρ‹ΠΉ активация состояния, Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΈ Π²Ρ‹ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ питания ΠΈΠ»ΠΈ ΠΈΡ… ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ†ΠΈΠΈ. Π’ зависимости ΠΎΡ‚ Π΅Π³ΠΎ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹ Ρ‚ΠΈΠΏ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚ΠΈΡ€ΡƒΡŽΡ‰Π΅Π³ΠΎ дСйствия ΠΈΠ»ΠΈ дСйствий, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ стороТСвой Ρ‚Π°ΠΉΠΌΠ΅Ρ€, ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ фиксированным ΠΈΠ»ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΌ. НСкоторым ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π°ΠΌ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, совмСстимым с ПК) трСбуСтся ΠΈΠΌΠΏΡƒΠ»ΡŒΡΠ½Ρ‹ΠΉ сигнал, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²Ρ‹Π·Π²Π°Ρ‚ΡŒ сброс процСссора. Π’ Ρ‚Π°ΠΊΠΈΡ… случаях стороТСвой Ρ‚Π°ΠΉΠΌΠ΅Ρ€ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ запускаСт сброс процСссора, активизируя Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠΉ ΠΈΠ»ΠΈ внСшний Π³Π΅Π½Π΅Ρ€Π°Ρ‚ΠΎΡ€ ΠΈΠΌΠΏΡƒΠ»ΡŒΡΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ, Π² свою ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ, создаСт Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ ΠΈΠΌΠΏΡƒΠ»ΡŒΡΡ‹ сброса. [3]

Π’ΠΎ встроСнных систСмах ΠΈ систСмах управлСния стороТСвыС Ρ‚Π°ΠΉΠΌΠ΅Ρ€Ρ‹ часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ для Π°ΠΊΡ‚ΠΈΠ²Π°Ρ†ΠΈΠΈ Π±Π΅Π·ΠΎΡ‚ΠΊΠ°Π·Π½Ρ‹ΠΉ схСма. ΠŸΡ€ΠΈ Π°ΠΊΡ‚ΠΈΠ²Π°Ρ†ΠΈΠΈ схСма отказоустойчивости ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄ΠΈΡ‚ всС ΡƒΠΏΡ€Π°Π²Π»ΡΡŽΡ‰ΠΈΠ΅ Π²Ρ‹Ρ…ΠΎΠ΄Ρ‹ Π² бСзопасноС состояниС (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π²Ρ‹ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π΄Π²ΠΈΠ³Π°Ρ‚Π΅Π»ΠΈ, Π½Π°Π³Ρ€Π΅Π²Π°Ρ‚Π΅Π»ΠΈ инапряТСния), Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€Π΅Π΄ΠΎΡ‚Π²Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ Ρ‚Ρ€Π°Π²ΠΌΡ‹ ΠΈ ΠΏΠΎΠ²Ρ€Π΅ΠΆΠ΄Π΅Π½ΠΈΠ΅ оборудования, ΠΏΠΎΠΊΠ° Π½Π΅ΠΈΡΠΏΡ€Π°Π²Π½ΠΎΡΡ‚ΡŒ сохраняСтся. Π’ двухступСнчатом стороТСвом Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π΅ ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ Ρ‚Π°ΠΉΠΌΠ΅Ρ€ часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для Π°ΠΊΡ‚ΠΈΠ²Π°Ρ†ΠΈΠΈ отказоустойчивых Π²Ρ‹Ρ…ΠΎΠ΄ΠΎΠ² ΠΈ запуска Π²Ρ‚ΠΎΡ€ΠΎΠΉ ступСни Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π°; Π²Ρ‚ΠΎΡ€ΠΎΠΉ этап сбросит ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€, Ссли Π½Π΅ΠΈΡΠΏΡ€Π°Π²Π½ΠΎΡΡ‚ΡŒ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ устранСна Π΄ΠΎ истСчСния Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π°.

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ стороТСвой Ρ‚Π°ΠΉΠΌΠ΅Ρ€. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ стороТСвой Ρ‚Π°ΠΉΠΌΠ΅Ρ€. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ стороТСвой Ρ‚Π°ΠΉΠΌΠ΅Ρ€. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ стороТСвой Ρ‚Π°ΠΉΠΌΠ΅Ρ€. Π€ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ стороТСвой Ρ‚Π°ΠΉΠΌΠ΅Ρ€

НапримСр, Π½Π° ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΉ Π²Ρ‹ΡˆΠ΅ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ΅ ΠΏΠΎΠΊΠ°Π·Π°Π½Π° вСроятная конфигурация двухступСнчатого стороТСвого Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π°. Π’ΠΎ врСмя Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ рСгулярно запускаСт Stage1 для прСдотвращСния Ρ‚Π°ΠΉΠΌ-Π°ΡƒΡ‚Π°. Если ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Ρƒ Π½Π΅ удаСтся Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ Stage1 (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΈΠ·-Π·Π° Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½ΠΎΠ³ΠΎ сбоя ΠΈΠ»ΠΈ ошибки программирования), Stage1 Ρ€Π°Π½ΠΎ ΠΈΠ»ΠΈ ΠΏΠΎΠ·Π΄Π½ΠΎ истСчСт врСмя оТидания. Π­Ρ‚ΠΎ событиС запустит Ρ‚Π°ΠΉΠΌΠ΅Ρ€ Stage2 ΠΈ ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ ΡƒΠ²Π΅Π΄ΠΎΠΌΠΈΡ‚ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ (посрСдством нСмаскируСмого прСрывания) ΠΎ нСизбСТности сброса. Пока Π½Π΅ истСчСт врСмя оТидания Stage2, ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠΏΡ‹Ρ‚Π°Ρ‚ΡŒΡΡ Π·Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ состоянии, ΠΎΡ‚Π»Π°Π΄ΠΎΡ‡Π½ΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΈΠ»ΠΈ ΠΈ Ρ‚ΠΎ, ΠΈ Π΄Ρ€ΡƒΠ³ΠΎΠ΅. ΠšΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠ΅Ρ€Π΅Π·Π°Π³Ρ€ΡƒΠΆΠ΅Π½ ΠΏΠΎ истСчСнии Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ оТидания Π­Ρ‚Π°ΠΏΠ° 2.

ΠžΠ±Π½Π°Ρ€ΡƒΠΆΠ΅Π½ΠΈΠ΅ нСисправности

ΠšΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½Π°Ρ систСма ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ проСктируСтся Ρ‚Π°ΠΊ, Ρ‡Ρ‚ΠΎ Π΅Π΅ стороТСвой Ρ‚Π°ΠΉΠΌΠ΅Ρ€ срабатываСт Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² Ρ‚ΠΎΠΌ случаС, Ссли ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ считаСт систСму работоспособной. ΠšΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ опрСдСляСт, Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π»ΠΈ систСма, проводя ΠΎΠ΄ΠΈΠ½ ΠΈΠ»ΠΈ нСсколько тСстов Π½Π° ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠ΅Π½ΠΈΠ΅ нСисправностСй, ΠΈ запускаСт стороТСвой Ρ‚Π°ΠΉΠΌΠ΅Ρ€ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² Ρ‚ΠΎΠΌ случаС, Ссли всС тСсты ΠΏΡ€ΠΎΠΉΠ΄Π΅Π½Ρ‹. На ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π°Ρ… ΠΏΠΎΠ΄ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы ΠΈ нСсколько процСссов, ΠΎΠ΄Π½ΠΎΠ³ΠΎ простого тСста ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ нСдостаточно, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΡƒΡŽ Ρ€Π°Π±ΠΎΡ‚Ρƒ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ‚ Π½Π΅ Π²Ρ‹ΡΠ²ΠΈΡ‚ΡŒ Π½Π΅Π·Π°ΠΌΠ΅Ρ‚Π½ΡƒΡŽ Π½Π΅ΠΈΡΠΏΡ€Π°Π²Π½ΠΎΡΡ‚ΡŒ ΠΈ, ΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ΡŒ ΡΡ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ стороТСвому Ρ‚Π°ΠΉΠΌΠ΅Ρ€Ρƒ, Π΄Π°ΠΆΠ΅ Ссли состояниС нСисправности сущСствуСт.

НапримСр, Π² случаС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы Linux стороТСвой Ρ‚Π°ΠΉΠΌΠ΅Ρ€ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ пространства Π΄Π΅ΠΌΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ‚ просто пСриодичСски Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ стороТСвой Ρ‚Π°ΠΉΠΌΠ΅Ρ€ Π±Π΅Π· выполнСния ΠΊΠ°ΠΊΠΈΡ…-Π»ΠΈΠ±ΠΎ тСстов. Пока Π΄Π΅ΠΌΠΎΠ½ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎ, систСма Π±ΡƒΠ΄Π΅Ρ‚ Π·Π°Ρ‰ΠΈΡ‰Π΅Π½Π° ΠΎΡ‚ ΡΠ΅Ρ€ΡŒΠ΅Π·Π½Ρ‹Ρ… сбоСв систСмы, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ ΠΏΠ°Π½ΠΈΠΊΠ° ядра. Для обнаруТСния ΠΌΠ΅Π½Π΅Π΅ ΡΠ΅Ρ€ΡŒΠ΅Π·Π½Ρ‹Ρ… нСисправностСй Π΄Π΅ΠΌΠΎΠ½ [4] ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ настроСн для выполнСния тСстов, ΠΎΡ…Π²Π°Ρ‚Ρ‹Π²Π°ΡŽΡ‰ΠΈΡ… Π΄ΠΎΡΡ‚ΡƒΠΏΠ½ΠΎΡΡ‚ΡŒ рСсурсов (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, достаточноС объСм памяти ΠΈ Ρ„Π°ΠΉΠ»ΠΎΠ²Ρ‹Π΅ Ρ€ΡƒΡ‡ΠΊΠΈ, Ρ€Π°Π·ΡƒΠΌΠ½ΠΎΠ΅ врСмя ЦП), ΡΠ²ΠΈΠ΄Π΅Ρ‚Π΅Π»ΡŒΡΡ‚Π²Π° ΠΎΠΆΠΈΠ΄Π°Π΅ΠΌΠΎΠΉ активности процСсса (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π·Π°ΠΏΡƒΡ‰Π΅Π½Ρ‹ систСмныС Π΄Π΅ΠΌΠΎΠ½Ρ‹, ΠΏΡ€ΠΈΡΡƒΡ‚ΡΡ‚Π²ΡƒΡŽΡ‚ ΠΈΠ»ΠΈ ΠΎΠ±Π½ΠΎΠ²Π»ΡΡŽΡ‚ΡΡ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹), ΠΏΠ΅Ρ€Π΅Π³Ρ€Π΅Π² ΠΈ сСтСвая Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒ, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Π·Π°ΠΏΡƒΡ‰Π΅Π½Ρ‹ спСцифичныС для систСмы тСстовыС скрипты ΠΈΠ»ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. [5]

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

5.4 Π‘Ρ‚ΠΎΡ€ΠΎΠΆΠ΅Π²ΠΎΠΉ Ρ‚Π°ΠΉΠΌΠ΅Ρ€

Данная ΡΡ‚Π°Ρ‚ΡŒΡ являСтся наброском ΠΊ Π³Π»Π°Π²Π΅ «5.4 Π‘Ρ‚ΠΎΡ€ΠΎΠΆΠ΅Π²ΠΎΠΉ Ρ‚Π°ΠΉΠΌΠ΅Ρ€» ΠΊΠ½ΠΈΠ³ΠΈ «ΠžΡ‚казоустойчивоС ПО для МК».

ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅

Если ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° пСрСстаСт ΠΏΠΎΡΡ‹Π»Π°Ρ‚ΡŒ сигналы стороТСвому Ρ‚Π°ΠΉΠΌΠ΅Ρ€Ρƒ, Ρ‚.Π΅. сигналы обнулСния WDT ΠΎΡ‚ΡΡƒΡ‚ΡΡ‚Π²ΡƒΡŽΡ‚ Π² Ρ‚Π΅Ρ‡Π΅Π½ΠΈΠ΅ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ, достаточного для пСрСполнСния счСтчика, Ρ‚ΠΎ это ΡΠ²ΠΈΠ΄Π΅Ρ‚Π΅Π»ΡŒΡΡ‚Π²ΡƒΠ΅Ρ‚ ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° зависла, ΠΈ ситуация воспринимаСтся ΠΊΠ°ΠΊ аварийная. Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ Π΄Π»ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ отсутствия сигналов ΠΎΡ‚ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ схСма WDT Ρ„ΠΎΡ€ΠΌΠΈΡ€ΡƒΠ΅Ρ‚ сигнал сброса ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π° (Π² Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Ρ‚ΠΈΠΏΠ°Ρ… ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ΠΎΠ² WDT Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΡƒΠ΅Ρ‚ Π΅Ρ‰Π΅ нСмаскируСмоС ΠΏΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΠ΅).

Π’Π°ΠΊΠΆΠ΅ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ WDT ΠΌΠΎΠ³ΡƒΡ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π² ΠΎΠΊΠΎΠ½Π½ΠΎΠΌ Ρ€Π΅ΠΆΠΈΠΌΠ΅, ΠΊΠΎΠ³Π΄Π° сигнал ΠΎΡ‚ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° ΠΎΠ±Π½ΡƒΠ»Π΅Π½ΠΈΠ΅ WDT Π½Π΅ допускаСтся Ρ€Π°Π½ΡŒΡˆΠ΅ ΠΊΠ°ΠΊΠΎΠ³ΠΎ-Ρ‚ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ. Π’.Π΅. ΠΎΠ½ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΏΡ€ΠΈΡ…ΠΎΠ΄ΠΈΡ‚ΡŒ слишком Ρ€Π°Π½ΠΎ ΠΈΠ»ΠΈ слишком ΠΏΠΎΠ·Π΄Π½ΠΎ. Вакая функция ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠΊΠ°Π·Π°Ρ‚ΡŒΡΡ ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠΉ для Π±ΠΎΠ»Π΅Π΅ быстрого рСагирования Π½Π° Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²ΠΈΠ΄Ρ‹ сбоя. НапримСр, Ссли функция обнулСния WDT вызываСтся Ρ€Π°Π½ΡŒΡˆΠ΅ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ, Ρ‚ΠΎ это Π³ΠΎΠ²ΠΎΡ€ΠΈΡ‚ ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅-Ρ‚ΠΎ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΎΡ‚Ρ€Π°Π±ΠΎΡ‚Π°Π»ΠΈ быстрСС, Ρ‡Π΅ΠΌ оТидалось, Ρ‡Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠ²ΠΈΠ΄Π΅Ρ‚Π΅Π»ΡŒΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ ΠΎ Π½Π°Π»ΠΈΡ‡ΠΈΠΈ сбоя. Из Ρ‚Π°ΠΊΠΎΠ³ΠΎ Ρ€Π΅ΠΆΠΈΠΌΠ° Π½ΡƒΠΆΠ½ΠΎ Π²Ρ‹ΠΉΡ‚ΠΈ ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ быстрСС, Π½Π΅ доТидаясь пСрСполнСния WDT (Ρ‚.Π΅. Π½Π΅ давая ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ Π΅Ρ‰Π΅ ΠΊΠ°ΠΊΠΎΠ΅-Ρ‚ΠΎ врСмя Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π²ΠΎ Π²Π½Π΅ΡˆΡ‚Π°Ρ‚Π½ΠΎΠΌ Ρ€Π΅ΠΆΠΈΠΌΠ΅). ΠžΠΊΠΎΠ½Π½Ρ‹Π΅ WDT ΡƒΠ΄ΠΎΠ±Π½ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒ Π² Ρ‚Π΅Ρ… случаях, ΠΊΠΎΠ³Π΄Π° Π½Π΅Ρ‚ возмоТности ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ врСмя выполнСния участков ΠΊΠΎΠ΄Π° с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½ΠΎΠ³ΠΎ Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π°.

Π’ΠΈΠΏΡ‹ WDT

Π’Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠΉ WDT

ВстроСнный Π² МК стороТСвой Ρ‚Π°ΠΉΠΌΠ΅Ρ€ являСтся самым Π½Π΅Π½Π°Π΄Π΅ΠΆΠ½Ρ‹ΠΌ ΠΈΠ· пСрСчислСнных ΠΈ Π½Π° Π½Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ»Π°Π³Π°Ρ‚ΡŒΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² малоотвСтствСнных систСмах. Π•ΡΡ‚ΡŒ Π΄Π²Π΅ ΠΏΡ€ΠΈΡ‡ΠΈΠ½Ρ‹:

Π‘Ρ‚ΠΎΠΈΡ‚ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Ρ‹ Π΄ΠΎΠΏΡƒΡΠΊΠ°ΡŽΡ‚ Ρ‚Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½Π΅Π³ΠΎ WDT ΠΎΡ‚ систСмного Π³Π΅Π½Π΅Ρ€Π°Ρ‚ΠΎΡ€Π°, Ρ‡Ρ‚ΠΎ Π΄Π΅Π»Π°Π΅Ρ‚ Π΅Π³ΠΎ нСэффСктивным ΠΏΡ€ΠΈ срывС Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΠΈ ΠΈΠ»ΠΈ ΠΏΡ€ΠΈ случайном Π²Ρ…ΠΎΠ΄Π΅ Π² Sleep-Ρ€Π΅ΠΆΠΈΠΌ.

ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠΉ WDT ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² малоотвСтствСнных систСмах ΠΈΠ»ΠΈ, Π½Π° Ρ…ΡƒΠ΄ΠΎΠΉ ΠΊΠΎΠ½Π΅Ρ†, Ρ‚Π°ΠΌ, Π³Π΄Π΅ ΠΊΡ€ΠΈΡ‚ΠΈΡ‡Π½Π° ΡΡ‚ΠΎΠΈΠΌΠΎΡΡ‚ΡŒ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Π°, ΠΈ лишний элСмСнт Π² Π²ΠΈΠ΄Π΅ внСшнСго WDT Π±ΡƒΠ΄Π΅Ρ‚ Π½Π΅ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ Ρ€ΠΎΡΠΊΠΎΡˆΡŒΡŽ, ΠΈΠ»ΠΈ Π³Π΄Π΅ Π΅ΡΡ‚ΡŒ ограничСния ΠΏΠΎ Π³Π°Π±Π°Ρ€ΠΈΡ‚Π°ΠΌ ΠΈΠ»ΠΈ массС ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎΠ³ΠΎ устройства. Однако Π½Π΅ слСдуСт Π·Π°Π±Ρ‹Π²Π°Ρ‚ΡŒ ΠΈ ΠΎ достоинствах Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½Π΅Π³ΠΎ стороТСвого Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π°:

Π’Π½Π΅ΡˆΠ½ΠΈΠΉ WDT Π² Π²ΠΈΠ΄Π΅ спСциализированной микросхСмы

Π’ зависимости ΠΎΡ‚ Π·Π°Π΄Π°Ρ‡, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ Π²ΠΎΠ·Π»ΠΎΠΆΠΈΡ‚ΡŒ Π½Π° WDT, ΠΏΠΎΠΌΠΈΠΌΠΎ Π΅Π³ΠΎ основной Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ Π²Ρ‹Π±ΠΈΡ€Π°Ρ‚ΡŒ Ρ‚Ρƒ ΠΈΠ»ΠΈ ΠΈΠ½ΡƒΡŽ микросхСму. Для управлСния WDT Π² составС Ρ‚Π°ΠΊΠΎΠΉ микросхСмы Π½Π°ΠΌ понадобится ΠΎΠ΄ΠΈΠ½ Π²Ρ‹Π²ΠΎΠ΄ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π°, настроСнный Π½Π° Π²Ρ‹Ρ…ΠΎΠ΄, для Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΠΈ сигналов обнулСния WDT (Π² случаС контроля Π²Ρ‹Ρ…ΠΎΠ΄Π° WDO потрСбуСтся Π΅Ρ‰Π΅ ΠΎΠ΄ΠΈΠ½ Π²Ρ‹Π²ΠΎΠ΄ МК, настроСнный Π½Π° Π²Ρ…ΠΎΠ΄).

Π’Π°ΠΊΠΆΠ΅ ΠΏΡ€ΠΈ Π²Ρ‹Π±ΠΎΡ€Π΅ микросхСмы супСрвизора слСдуСт ΠΎΠ±Ρ€Π°Ρ‰Π°Ρ‚ΡŒ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹:

НиТС ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Ρ‹ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ микросхСм-супСрвизоров, Π² составС ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… имССтся WDT (это ΠΊΡ€Π°Ρ‚ΠΊΠΈΠΉ список, Π½Π° самом Π΄Π΅Π»Π΅ Ρ‚Π°ΠΊΠΈΡ… микросхСм Π²Π΅Π»ΠΈΠΊΠΎΠ΅ мноТСство):

TODO: Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΠΈ Ρ€Π°Π·ΡŠΡΡΠ½ΠΈΡ‚ΡŒ

Π’Π½Π΅ΡˆΠ½ΠΈΠΉ WDT Π² Π²ΠΈΠ΄Π΅ устройства

ΠžΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠ΅ устройство разрабатываСтся ΠΈΠ½Π΄ΠΈΠ²ΠΈΠ΄ΡƒΠ°Π»ΡŒΠ½ΠΎ с ΡƒΡ‡Π΅Ρ‚ΠΎΠΌ особСнностСй ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ³ΠΎ устройства, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠΎΠ³ΠΎ Π² Π½Π΅ΠΌ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π° ΠΈ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. Π‘Π΅Ρ€Π΄Ρ†Π΅ΠΌ Ρ‚Π°ΠΊΠΎΠ³ΠΎ устройства ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ малСнький, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, 8-разрядный ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ (Ρ‡Π°Ρ‰Π΅ OTP, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, PIC12CE518), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ, ΠΏΠΎΠΌΠΈΠΌΠΎ стандартного Π½Π°Π±ΠΎΡ€Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ WDT, ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ ряд Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… возмоТностСй. Π’.Π΅. прСимущСства Ρ‚Π°ΠΊΠΈΡ… WDT Π² Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½ΠΎΠΌ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»Π΅ ΠΈ гибкости настройки.

НСдостатками Ρ‚Π°ΠΊΠΈΡ… WDT ΡΠ²Π»ΡΡŽΡ‚ΡΡ Π³Π°Π±Π°Ρ€ΠΈΡ‚Ρ‹, Π° Ρ‚Π°ΠΊΠΆΠ΅ Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π² малСньком МК Π΄ΠΎΠ»ΠΆΠ½Π° ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ всСм трСбованиям бСзопасности (начиная с самодиагностики ΠΈ заканчивая ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π΅ΠΌ собствСнного Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½Π΅Π³ΠΎ WDT), Π° Ρ‚Π°ΠΊΠΆΠ΅ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ Ρ‚Ρ‰Π°Ρ‚Π΅Π»ΡŒΠ½Π΅ΠΉΡˆΠ΅ΠΉ ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, сам ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹ΠΉ Π² качСствС WDT, Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΠΎΠ΄Π²Π΅Ρ€ΠΆΠ΅Π½ всСм Π²ΠΈΠ΄Π°ΠΌ сбоСв, Π²Ρ‹Π·Π²Π°Π½Π½Ρ‹Ρ… ΠΏΠΎΠΌΠ΅Ρ…Π°ΠΌΠΈ. Но это компСнсируСтся, Π²ΠΎ-ΠΏΠ΅Ρ€Π²Ρ‹Ρ…, Ρ‚Π΅ΠΌ, Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Ρ‹ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½Ρ‹ ΠΏΠΎ Π±ΠΎΠ»Π΅Π΅ Π³Ρ€ΡƒΠ±ΠΎΠΉ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ, Ρ‡Π΅ΠΌ Ρ‚ΠΎΡ‚, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ ΠΎΠ½ΠΈ Π±ΡƒΠ΄ΡƒΡ‚ ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ, ΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, ΠΎΠ½ΠΈ ΠΏΠΎΠΌΠ΅Ρ…Π°ΠΌ ΠΏΠΎΠ΄Π²Π΅Ρ€ΠΆΠ΅Π½Ρ‹ Π³ΠΎΡ€Π°Π·Π΄ΠΎ мСньшС; Π²ΠΎ-Π²Ρ‚ΠΎΡ€Ρ‹Ρ…, Π΅ΡΡ‚ΡŒ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΎΡ€Π³Π°Π½ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ «ΠΊΡ€ΡƒΠ³ΠΎΠ²ΡƒΡŽ ΠΏΠΎΡ€ΡƒΠΊΡƒ», ΠΊΠΎΠ³Π΄Π° малСнький МК слСдит Π·Π° большим, Π° большой слСдит Π·Π° малСньким, Ρ‡Ρ‚ΠΎ Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΎ Ρ€Π°Π· ΠΏΠΎΠ²Ρ‹ΡˆΠ°Π΅Ρ‚ Π²Π΅Ρ€ΠΎΡΡ‚Π½ΠΎΡΡ‚ΡŒ самовосстановлСния работоспособности систСмы послС сбоя.

Но построСниС схСм-ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΎΠ² (Π½Π΅ Π½Π°Π·Ρ‹Π²Π°ΡŽ ΠΈΡ… WDT, Ρ‚.ΠΊ. Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π» ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π³ΠΎΡ€Π°Π·Π΄ΠΎ ΡˆΠΈΡ€Π΅ простого счСтчика) Π΄Π°Π΅Ρ‚ массу Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… возмоТностСй, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ:

К WDT этого Ρ‚ΠΈΠΏΠ° ΠΌΠΎΠΆΠ½ΠΎ Ρ‚Π°ΠΊΠΆΠ΅ отнСсти ΠΎΠ΄Π½ΠΎΠ²ΠΈΠ±Ρ€Π°Ρ‚ΠΎΡ€Ρ‹, собранныС Π½Π° дискрСтных ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°Ρ… (ΠΈΠ½ΠΎΠ³Π΄Π° с использованиСм ΠΊΠΎΠΌΠΏΠ°Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ²). Π’Π°ΠΊΠΈΠ΅ WDT Π½Π°ΠΈΠΌΠ΅Π½Π΅Π΅ всСго ΠΏΠΎΠ΄Π²Π΅Ρ€ΠΆΠ΅Π½Ρ‹ ΠΏΠΎΠΌΠ΅Ρ…Π°ΠΌ, Π½ΠΎ ΠΎΠ½ΠΈ Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‚ ΠΌΠ½ΠΎΠ³ΠΎ мСста Π½Π° ΠΏΠ»Π°Ρ‚Π΅, Π½Π΅ ΠΎΡ‡Π΅Π½ΡŒ экономичны Π² энСргопотрСблСнии ΠΈ Π±ΠΎΠ»Π΅Π΅ слоТны Π² настройкС ΠΈ ΠΎΡ‚Π»Π°Π΄ΠΊΠ΅.

ΠŸΡ€Π΅Π΄ΠΏΠΎΡΡ‹Π»ΠΊΠΈ ΠΊ использованию

Как описано Π² ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅ΠΌ ΠΏΠ°Ρ€Π°Π³Ρ€Π°Ρ„Π΅, всС ошибки ΠΈ сбои ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡŽΡ‰ΠΈΠ΅ Π²ΠΎ врСмя Π΅Π΅ Ρ€Π°Π±ΠΎΡ‚Ρ‹, Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΏΠΎ возмоТности ΠΎΡ‚ΡΠ»Π΅ΠΆΠΈΠ²Π°Ρ‚ΡŒΡΡ Π² Ρ…ΠΎΠ΄Π΅ Π΅Π΅ выполнСния срСдствами самой ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. ΠŸΡ€ΠΈ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠ΅Π½ΠΈΠΈ Π½Π΅ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΠ³ΠΎ Π΅Π΅ повСдСния слСдуСт Π΄Π΅Π»Π°Ρ‚ΡŒ Π°Π½Π°Π»ΠΈΠ· состояния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ с Ρ†Π΅Π»ΡŒΡŽ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ ΠΊΡ€ΠΈΡ‚ΠΈΡ‡Π½ΠΎΡΡ‚ΡŒ сбоя ΠΈ, Ссли это Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, ΠΏΡ€ΠΈΠ½ΡΡ‚ΡŒ Π°Π΄Π΅ΠΊΠ²Π°Ρ‚Π½Ρ‹Π΅ ΠΌΠ΅Ρ€Ρ‹ ΠΏΠΎ Π²ΠΎΡΡΡ‚Π°Π½ΠΎΠ²Π»Π΅Π½ΠΈΡŽ работоспособности ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. WDT являСтся послСдним Ρ€ΡƒΠ±Π΅ΠΆΠΎΠΌ ΠΏΡ€ΠΈ обСспСчСнии отказоустойчивости ПО, ΠΎΠ½ Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΡƒΠ΅Ρ‚ сигнал сброса Π² Ρ‚ΠΎΠΌ случаС, Ссли срСдствами ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠΈΡ‚ΡŒ сбой Π½Π΅ ΡƒΠ΄Π°Π»ΠΎΡΡŒ, ΠΈΠ»ΠΈ Ссли ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° ΠΏΠΎΠΏΠ°Π»Π° Π² нСпрСдусмотрСнноС Π·Π°Ρ†ΠΈΠΊΠ»ΠΈΠ²Π°Π½ΠΈΠ΅. ΠŸΡ€ΠΈΡ‡ΠΈΠ½Π°ΠΌΠΈ Ρ‚Π°ΠΊΠΎΠ³ΠΎ повСдСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ нСсколько Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΎΠ²:

(Π”Π΅Ρ‚Π°Π»ΡŒΠ½ΠΎ ΠΎ ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π°Ρ… ΠΎΡ‚ΠΊΠ°Π·ΠΎΠ² ПО см. «2. ΠŸΡ€ΠΈΡ‡ΠΈΠ½Ρ‹ ΠΈ послСдствия сбоСв»)

Π‘Π»Π΅Π΄ΡƒΠ΅Ρ‚ ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ Ρ„Π°ΠΊΡ‚ΠΎΡ€Ρ‹ Π½Π΅ зависят Π½ΠΈ ΠΎΡ‚ программистов, Π½ΠΈ ΠΎΡ‚ схСмотСхников, Π½ΠΈ ΠΎΡ‚ ОВК.

Π’Π°ΠΆΠ½ΠΎΠ΅ Π·Π°ΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅: сбой всСгда ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡Ρ‚ΠΈΡ‚Π΅Π»ΡŒΠ½Π΅Π΅ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠΈΡ‚ΡŒ срСдствами самой ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ (это достигаСтся Π²Π²Π΅Π΄Π΅Π½ΠΈΠ΅ΠΌ Π² Π»ΠΎΠ³ΠΈΠΊΡƒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ сигнатур, ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ Π΄Π°Π½Π½Ρ‹Ρ…, ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ рассчСтов ΠΈ ΠΏΡ€.), Ρ‚.ΠΊ. Π² этом случаС Π΅ΡΡ‚ΡŒ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ бСзопасного восстановлСния работоспособности, Π΄Π°ΠΆΠ΅ Ссли придСтся для этого произвСсти ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ сброс ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π°, ΠΏΠ΅Ρ€Π΅Π΄ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ имССтся Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ пСрСвСсти всС внСшнСС ΠΎΠ±ΠΎΡ€ΡƒΠ΄ΠΎΠ²Π°Π½ΠΈΠ΅ Π² бСзопасный ΠΈΠ»ΠΈ Π½Π΅ΠΉΡ‚Ρ€Π°Π»ΡŒΠ½Ρ‹ΠΉ Ρ€Π΅ΠΆΠΈΠΌ.

Но, Π²ΠΎ-ΠΏΠ΅Ρ€Π²Ρ‹Ρ…, срСдствами ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ всСго ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ ΠΈ ΠΏΠ΅Ρ€Π΅ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ нСльзя. И ограничСния здСсь Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² памяти, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠΎΠΉ для тСстов, ΠΈ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ тСсты ΠΎΡ‚Π½ΠΈΠΌΡƒΡ‚, Π½ΠΎ ΠΈ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ сами тСсты, являясь Ρ‡Π°ΡΡ‚ΡŒΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, Π½ΡƒΠΆΠ½ΠΎ Π±Ρ‹ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡΡ‚ΡŒ. А ΠΏΠΎΡ‚ΠΎΠΌ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡΡ‚ΡŒ ΠΈ эти ΠΏΡ€ΠΎΠ²Π΅Ρ€Ρ‰ΠΈΠΊΠΈ ΠΈ Ρ‚.Π΄. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ run-time тСсты всСгда Π½Π΅ΠΏΠΎΠ»Π½Ρ‹Π΅. Π’ΠΎ-Π²Ρ‚ΠΎΡ€Ρ‹Ρ…, ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ Π½Π΅ΠΏΡ€Π΅Π΄Π²ΠΈΠ΄Π΅Π½Π½Ρ‹Π΅ сбои, ΠΏΡ€ΠΈ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ счСтчик ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€Ρ‹Π³Π½ΡƒΡ‚ΡŒ Π² Ρ‚Π°ΠΊΡƒΡŽ Ρ‚ΠΎΡ‡ΠΊΡƒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΏΡ€ΠΈ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΌ состоянии ячССк RAM-памяти ΠΈ Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΡ… настройках ΠΏΠ΅Ρ€ΠΈΡ„Π΅Ρ€ΠΈΠΈ, ΠΌΠΎΠΆΠ½ΠΎ Π·Π°Π΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒΡΡ ΠΎΡ‡Π΅Π½ΡŒ Π½Π°Π΄ΠΎΠ»Π³ΠΎ. НапримСр, сбоСм ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ счСтчика, ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° ΠΏΠΎΠΏΠ°Π»Π° Π² ΠΊΠΎΠ΄ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ Π±Π°ΠΉΡ‚Π° Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠΉ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ интСрфСйса SPI:

На ΠΌΠΎΠΌΠ΅Π½Ρ‚ сбоя Π² ячСйкС памяти, Π³Π΄Π΅ располагаСтся пСрСмСнная i, ΠΌΠΎΠ³Π»ΠΎ Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ любоС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, ΠΈ Π±Π΅Π·ΠΎΠ±ΠΈΠ΄Π½Ρ‹ΠΉ Ρ†ΠΈΠΊΠ» Π½Π° 8 ΠΏΡ€ΠΎΡ…ΠΎΠ΄ΠΎΠ² ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€Π΅Π²Ρ€Π°Ρ‚ΠΈΡ‚ΡŒΡΡ Π² Ρ†ΠΈΠΊΠ» Π½Π° 50000 ΠΏΡ€ΠΎΡ…ΠΎΠ΄ΠΎΠ². Π’ ΠΎΠ±Ρ‰Π΅ΠΌ случаС ΠΎΡ‚ ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Ρ… сбоСв ΠΌΠΎΠΆΠ΅Ρ‚ спасти Ρ‚ΠΎΠ»ΡŒΠΊΠΎ WDT. Π’ ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅ΠΌ ΠΏΠ°Ρ€Π°Π³Ρ€Π°Ρ„Π΅ (5.3 run-time ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒ) Π±Ρ‹Π»ΠΎ сказано ΠΎ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π΅ стСка ΠΈ сигнатурах, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³Π»ΠΈ Π±Ρ‹ ΡΠΈΠ³Π½Π°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ ΠΈΠ΄Π΅Ρ‚ Π½Π΅ Ρ‚Π°ΠΊ, Π½ΠΎ ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Π΅ тСсты, Π²ΠΎ-ΠΏΠ΅Ρ€Π²Ρ‹Ρ…, нСцСлСсообразно ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒ Π²ΠΎ всСх функциях Π±Π΅Π· ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ, Π° Π²ΠΎ-Π²Ρ‚ΠΎΡ€Ρ‹Ρ…, ΠΏΡ€ΠΈ большом Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΈ числа Π² ячСйках памяти, занятых ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ i, WDT ΠΌΠΎΠΆΠ΅Ρ‚ ΡƒΡΠΏΠ΅Ρ‚ΡŒ ΠΏΠ΅Ρ€Π΅ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒΡΡ Ρ€Π°Π½ΡŒΡˆΠ΅, Ρ‡Π΅ΠΌ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π΄ΠΎΠΉΠ΄Π΅Ρ‚ Π΄ΠΎ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΎΠΊ Π² ΠΊΠΎΠ½Ρ†Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ.

Π”Π²Π° слова стоит ΡΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΎΠ± ΠΎΡˆΠΈΠ±ΠΊΠ°Ρ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ привСсти ΠΊ зависанию. Π‘Π°ΠΌΠΎ собой разумССтся, Ρ‡Ρ‚ΠΎ Π½Π°Π΄ΠΎ ΡΡ‚Ρ€Π΅ΠΌΠΈΡ‚ΡŒΡΡ ΠΊ написанию Π½Π΅ Π·Π°Π²ΠΈΡΠ°ΡŽΡ‰ΠΈΡ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ, удСляя Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ качСствСнной ΠΏΡ€ΠΎΡ€Π°Π±ΠΎΡ‚ΠΊΠ΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΡ€ΡƒΠ΅ΠΌΠΎΠ³ΠΎ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ°, Π½ΠΎ Ρ‚Π°ΠΊΠΆΠ΅ ΠΈ качСствСнному ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ, ΠΈ качСствСнному Ρ‚Π΅ΡΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ. Однако, сущСствуСт нСсколько Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΈΠ»ΠΈ всС вмСсти Π·Π°Ρ‚Ρ€ΡƒΠ΄Π½ΡΡŽΡ‚ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊΠ°ΠΊΠΎΠ³ΠΎ-Π»ΠΈΠ±ΠΎ этапа. НапримСр, Π½Π΅ всСгда Π·Π°Ρ€Π°Π½Π΅Π΅ извСстСн Ρ‚ΠΎΡ‡Π½Ρ‹ΠΉ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ Π±ΡƒΠ΄ΡƒΡ‰Π΅Π³ΠΎ устройства (для ΠΈΠ½Π½ΠΎΠ²Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ²), ΠΊΠΎΠ³Π΄Π° измСнСния Π² Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ вносятся Π½Π° этапС Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ. Π’Π°ΠΊΠΈΠ΅ измСнСния ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΡ€ΠΎΠ΄ΠΈΠΊΡ‚ΠΎΠ²Π°Π½Ρ‹ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ ΠΎΠ±ΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΡΡ‚Π²Π°ΠΌΠΈ, начиная ΠΌΠ°Ρ€ΠΊΠ΅Ρ‚ΠΈΠ½Π³ΠΎΠ²Ρ‹ΠΌΠΈ исслСдованиями ΠΈ заканчивая статусом Ρ„ΠΈΡ€ΠΌ-ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»Π΅ΠΉ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² (банкротство, ΠΏΠ΅Ρ€Π΅ΠΏΡ€ΠΎΠ΄Π°ΠΆΠ° ΠΈ ΠΏΡ€.). Алгоритм Π² Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ внСсСния ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² Π½Π΅Π³ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠΊΠ°Π·Π°Ρ‚ΡŒΡΡ нСсогласованным.

Π’Π°ΠΊΠΆΠ΅ ΠΏΠΎΠ²Π»ΠΈΡΡ‚ΡŒ Π½Π° качСствСнноС Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊΠ°ΠΊΠΎΠ³ΠΎ-Π»ΠΈΠ±ΠΎ этапа Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΌΠΎΠ³ΡƒΡ‚ Ρ„Π°ΠΊΡ‚ΠΎΡ€Ρ‹ ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠ³ΠΎ Ρ…Π°Ρ€Π°ΠΊΡ‚Π΅Ρ€Π°: Π½Π°Π΄ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΎΠΉ трудятся нСсколько Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊ, ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎ-своСму ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠ°ΠΊΠΈΠ΅-Π»ΠΈΠ±ΠΎ ΠΌΠΎΠΌΠ΅Π½Ρ‚Ρ‹, описанныС Π² Π’Π—, ΠΈΠ»ΠΈ ΠΏΠΎ-своСму Π΄ΠΎΠ΄ΡƒΠΌΠ°Ρ‚ΡŒ Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Π² Π’Π— Π½Π΅ ΡƒΠΊΠ°Π·Π°Π½ΠΎ явно; ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° ΠΈΠ»ΠΈ Π΅Π΅ Ρ‡Π°ΡΡ‚ΡŒ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΠΎΡ€ΡƒΡ‡Π΅Π½Π° программисту, Π½Π΅ ΠΈΠΌΠ΅ΡŽΡ‰Π΅ΠΌΡƒ достаточной ΠΊΠ²Π°Π»ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΈΠ»ΠΈ достаточного ΠΎΠΏΡ‹Ρ‚Π° для качСствСнной Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ. НС слСдуСт Π·Π°Π±Ρ‹Π²Π°Ρ‚ΡŒ ΠΎ Ρ„Π°ΠΊΡ‚ΠΎΡ€Π΅ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ, Π²Ρ‹Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ Π½Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΠ΅ большоС количСство состояний, Ρ€Π΅ΠΆΠΈΠΌΠΎΠ² Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΈ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½Ρ‹Ρ… процСссов, Π½Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ протСстированы Ρ†Π΅Π»ΠΈΠΊΠΎΠΌ, Ρ‚.ΠΊ. врСмя тСстирования ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€Π΅Π²Ρ‹ΡΠΈΡ‚ΡŒ экономичСски цСлСсообразныС сроки выпуска устройства; поэтому ΠΊ ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎΠΌΡƒ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π»ΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠΏΠ°ΡΡ‚ΡŒ, Π³Ρ€ΡƒΠ±ΠΎ говоря, Π½Π΅Π΄ΠΎΠΎΡ‚Π»Π°ΠΆΠ΅Π½Π½ΠΎΠΉ. Π­Ρ‚ΠΎ Π½Π΅ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΎΠ½Π° Π±ΡƒΠ΄Π΅Ρ‚ ΡΠ±ΠΎΠΈΡ‚ΡŒ ΠΈ Π²ΠΈΡΠ½ΡƒΡ‚ΡŒ Π½Π° ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΡˆΠ°Π³Ρƒ, просто ΠΏΡ€ΠΈ совокупности Π²Π½Π΅ΡˆΡ‚Π°Ρ‚Π½Ρ‹Ρ… ситуаций ΠΈ стСчСнии ΠΊΠ°ΠΊΠΈΡ…-Ρ‚ΠΎ ΠΎΠ±ΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΡΡ‚Π², ΠΎΠ½Π° ΠΌΠΎΠΆΠ΅Ρ‚ Π·Π°Π²ΠΈΡΠ½ΡƒΡ‚ΡŒ.

Как ΡƒΠΆΠ΅ Π±Ρ‹Π»ΠΎ сказано, нСльзя ΠΈΡΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ ΠΈΠ½ΡΡ‚Ρ€ΡƒΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Ρ‹Π΅ ошибки, Ρ‚.Π΅. ошибки компиляторов, ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€ΠΎΠ², Π½Π°ΠΊΠΎΠ½Π΅Ρ†, самих ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ΠΎΠ². Они ΡΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‚ лишь ΠΌΠ°Π»ΡƒΡŽ Ρ‚ΠΎΠ»ΠΈΠΊΡƒ ΠΎΡ‚ ошибок, допускаСмых самими Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌΠΈ, Π½ΠΎ, Ρ‚Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, ΠΈΠΌΠ΅ΡŽΡ‚ мСсто Π±Ρ‹Ρ‚ΡŒ.

Π˜Ρ‚Π°ΠΊ, Π΄Π°ΠΆΠ΅ Ссли Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ ΡƒΠ²Π΅Ρ€Π΅Π½ Π² своСй аккуратности, мСтодичности ΠΈ ΠΏΡƒΠ½ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ Ρ„Π°ΠΊΡ‚ΠΎΡ€Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ привСсти ΠΊ Π½Π΅ΠΏΡ€Π΅Π΄Π²ΠΈΠ΄Π΅Π½Π½Ρ‹ΠΌ ошибкам Π² ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΠΌΠΎΠΌ ΠΈΠΌ ПО, Π²Ρ‹Π·Ρ‹Π²Π°ΡŽΡ‰ΠΈΡ… Π² Ρ‚ΠΎΠΌ числС ΠΈ нСпрСдусмотрСнноС зависаниС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ использованиС стороТСвого Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π° Π² качСствС систСмного ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€Π° являСтся ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ, особСнно, ΠΊΠΎΠ³Π΄Π° Ρ€Π΅Ρ‡ΡŒ ΠΈΠ΄Π΅Ρ‚ ΠΎΠ± отвСтствСнных систСмах, сбои Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΌΠΎΠ³ΡƒΡ‚ привСсти ΠΊ ΡƒΠ±Ρ‹Ρ‚ΠΊΠ°ΠΌ ΠΈΠ»ΠΈ нанСсСнию Π²Ρ€Π΅Π΄Π° Π·Π΄ΠΎΡ€ΠΎΠ²ΡŒΡŽ людСй.

ΠŸΠΎΡ€ΡΠ΄ΠΎΠΊ обнулСния WDT

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅: Π² Π΄Π°Π½Π½ΠΎΠΌ ΠΏΠ°Ρ€Π°Π³Ρ€Π°Ρ„Π΅ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡΡ Π²Ρ‹Π·ΠΎΠ²Ρ‹ псСвдо-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ wdt_clear() ΠΈ soft_reset().

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ порядок обнулСния WDT

Π£ΠΌΠ΅Π½ΠΈΠ΅ программиста ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ Π½Π°Π±ΠΎΡ€ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Ρ‹Ρ… Ρ‚ΠΎΡ‡Π΅ΠΊ, способных Π·Π°ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ наибольшСС число ΠΎΡ‚ΠΊΠ»ΠΎΠ½Π΅Π½ΠΈΠΉ Π² ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, акцСнтируя Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° отвСтствСнных участках, Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΎΠΌ опрСдСляСт насколько WDT окаТСтся ΠΏΠΎΠ»Π΅Π·Π½Ρ‹ΠΌ Π² ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠ΅Π½ΠΈΠΈ сбоя для ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.

Π”ΠΎΠ²ΠΎΠ»ΡŒΠ½ΠΎ часто ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΡ‚Ρ€Π΅Ρ‚ΠΈΡ‚ΡŒ Ρ‚Π°ΠΊΠΎΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄, ΠΏΡ€ΠΈ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ счСтчик WDT бСзусловно обнуляСтся Π² Π³Π»Π°Π²Π½ΠΎΠΌ Ρ†ΠΈΠΊΠ»Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, Π² ΠΏΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΠΈ ΠΏΠΎ Ρ‚Π°ΠΉΠΌΠ΅Ρ€Ρƒ, Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡŽΡ‰Π΅ΠΌΡƒ Ρ€Π°Π· Π² миллисСкунду, ΠΈΠ»ΠΈ нСсколько Ρ€Π°Π· Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ с ΠΈΠ½Ρ‚Π΅Ρ€Π²Π°Π»ΠΎΠΌ Π² 5-10 инструкций (ΠΈΠ»ΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ²). Π”Ρ€ΡƒΠ³ΠΈΠΌΠΈ словами, программист Π΄Π΅Π»Π°Π΅Ρ‚ всС, Ρ‡Ρ‚ΠΎΠ±Ρ‹ стороТСвой Ρ‚Π°ΠΉΠΌΠ΅Ρ€ Π½Π΅ успСл ΠΏΠ΅Ρ€Π΅ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒΡΡ Π½ΠΈ ΠΏΡ€ΠΈ ΠΊΠ°ΠΊΠΈΡ… условиях. Π”ΠΎΡ…ΠΎΠ΄ΠΈΡ‚ Π΄Π°ΠΆΠ΅ Π΄ΠΎ ΠΊΠΎΠΌΠΈΡ‡Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°:

Π”ΡƒΠΌΠ°ΡŽ, Π½Π΅ Π½Π°Π΄ΠΎ ΠΏΠΎΡΡΠ½ΡΡ‚ΡŒ, Ρ‡Π΅ΠΌ этот ΠΊΠΎΠ΄ ΠΏΠ»ΠΎΡ…. Достаточно ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π² эту Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΠΎΠΏΠ°ΡΡ‚ΡŒ ΠΏΡ€ΠΈ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½Π½ΠΎΠΌ ΠΌΠΎΠ΄ΡƒΠ»Π΅ USART, Π² Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ Ρ‡Π΅Π³ΠΎ повиснСм Π½Π° всС врСмя ΠΆΠΈΠ·Π½ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.

ΠŸΠ΅Ρ€ΠΈΠΎΠ΄ΠΈΡ‡Π΅ΡΠΊΠΎΠ΅ ΠΎΠ±Π½ΡƒΠ»Π΅Π½ΠΈΠ΅ с ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΎΠΉ Ρ„Π»Π°Π³ΠΎΠ²

Часто ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΡ‚Ρ€Π΅Ρ‚ΠΈΡ‚ΡŒ Ρ‚Π°ΠΊΡƒΡŽ Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°Ρ†ΠΈΡŽ (Π² Π»ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΡƒΡ€Π΅, Π² ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚-ΡΡ‚Π°Ρ‚ΡŒΡΡ…, Π½Π° тСхничСских Ρ„ΠΎΡ€ΡƒΠΌΠ°Ρ…): основныС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ послС своСго выполнСния ΡƒΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°Ρ‚ΡŒ Ρ„Π»Π°ΠΆΠΎΠΊ, ΠΏΠΎΠ΄Ρ‚Π²Π΅Ρ€ΠΆΠ΄Π°ΡŽΡ‰ΠΈΠΉ, Ρ‡Ρ‚ΠΎ функция Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½Π°; Π² Π³Π»Π°Π²Π½Ρ‹ΠΉ Ρ†ΠΈΠΊΠ» Π² main() ΠΈΠ»ΠΈ Π² ΠΏΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΠ΅ добавляСтся ΠΊΠΎΠ΄, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ провСряСт, Ρ‡Ρ‚ΠΎ всС Π½ΡƒΠΆΠ½Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΎΡ‚Ρ€Π°Π±ΠΎΡ‚Π°Π»ΠΈ, ΠΈ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ послС этого обнуляСт WDT.

Для этого Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ заводится пСрСмСнная, содСрТащая ΠΏΠΎ ΠΎΠ΄Π½ΠΎΠΌΡƒ Π±ΠΈΡ‚Ρƒ Π½Π° ΠΊΠ°ΠΆΠ΄ΡƒΡŽ ΠΊΡ€ΠΈΡ‚ΠΈΡ‡Π΅ΡΠΊΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ:

Π’ Π³Π»Π°Π²Π½ΠΎΠΌ Ρ†ΠΈΠΊΠ»Π΅ main() (ΠΈΠ»ΠΈ Π² ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ΅ пСриодичСского пСррывания) вставляСтся ΠΊΠΎΠ΄ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ Ρ„Π»Π°Π³ΠΎΠ²:

КаТдая критичСская функция сбрасываСт ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ Π΅ΠΉ Π±ΠΈΡ‚, Ссли ΠΎΠ½Π° Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΠ»Π°ΡΡŒ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€:

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅: Ρ„Π»Π°Π³ΠΈ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°Π²ΠΎΠ΄ΠΈΡ‚ΡŒ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для Ρ‚Π΅Ρ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Ρ‹Π·Ρ‹Π²Π°ΡŽΡ‚ΡΡ ΠΈΠ· основного Ρ†ΠΈΠΊΠ»Π° main(), Π½ΠΎ ΠΈΠ½ΠΎΠ³Π΄Π° ΠΈ для Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΈ Π΄Π°ΠΆΠ΅ для ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² ΠΏΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΠΉ. ΠšΠΎΠ΄Ρƒ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ Π²Π°ΠΆΠ½ΠΎ Π·Π½Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ отвСтствСнныС участки ΠΊΠΎΠ΄Π° Π±Ρ‹Π»ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½Ρ‹.

Для простых ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Ρ‚Π°ΠΊΠΎΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ ΠΌΠΎΠΆΠ½ΠΎ ΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ ΠΎΡ‡Π΅Π½ΡŒ ΡƒΠ΄Π°Ρ‡Π½Ρ‹ΠΌ, Ρ‚.ΠΊ. ΠΎΠ½ ΠΈΠΌΠ΅Π΅Ρ‚ ΠΎΡ‡Π΅Π²ΠΈΠ΄Π½Ρ‹Π΅ прСимущСства:

Однако ΠΎΠ½ ΠΈΠΌΠ΅Π΅Ρ‚ ΠΈ свои нСдостатки:

ΠžΠ±Π½ΡƒΠ»Π΅Π½ΠΈΠ΅ с ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π΅ΠΌ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ

Π’Π°ΠΊΠΆΠ΅ часто встрСчаСтся рСкомСндация Π² Π²Ρ‹Π·Ρ‹Π²Π°Π΅ΠΌΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π²Ρ‹ΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, Π° послС Π²Ρ‹Ρ…ΠΎΠ΄Π° ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡΡ‚ΡŒ Π΅Π³ΠΎ ΠΈ, Ссли ΠΎΠ½ΠΎ соотвСтствуСт ΠΎΠΆΠΈΠ΄Π°Π΅ΠΌΠΎΠΌΡƒ, ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΎΠ±Π½ΡƒΠ»Π΅Π½ΠΈΠ΅ WDT:

ΠœΠ΅Ρ‚ΠΎΠ΄ являСтся ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ†ΠΈΠ΅ΠΉ с ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· Π²ΠΈΠ΄ΠΎΠ² run-time ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΎΠΊ. Если ΠΌΡ‹ случайно пропускаСм Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊΠ°ΠΊΠΎΠΉ-Π»ΠΈΠ±ΠΎ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΈΠ·-Π·Π° сбоя PC), Ρ‚ΠΎ run-time ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° сигнатуры Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π²Ρ‹Π·ΠΎΠ²Π΅Ρ‚ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ soft_reset(). Π’Π½Π΅ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ†ΠΈΠΈ с run-time ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ°ΠΌΠΈ этот ΠΌΠ΅Ρ‚ΠΎΠ΄ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ малоэффСктивСн, Π½ΠΎ Π΄Π°ΠΆΠ΅ опасСн, Ρ‚.ΠΊ. Ссли ΡƒΠ±Ρ€Π°Ρ‚ΡŒ Π²ΠΎ всСх условиях Π²Π΅Ρ‚ΠΊΡƒ else, Ρ‚ΠΎ Π΄Π°ΠΆΠ΅ послС обнаруТСния сбоя (Ρ‚.Π΅. сбой Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΡ€ΠΎΠΈΠ·ΠΎΡˆΠ΅Π», Π½ΠΎ ΡƒΠΆΠ΅ Π·Π°ΠΌΠ΅Ρ‡Π΅Π½) ΠΌΡ‹ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΠΌ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ Π΅Ρ‰Π΅ нСсколько Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, ΡƒΠΆΠ΅ Π½Π°Ρ…ΠΎΠ΄ΡΡΡŒ Π²ΠΎ Π²Π½Π΅ΡˆΡ‚Π°Ρ‚Π½ΠΎΠΌ Ρ€Π΅ΠΆΠΈΠΌΠ΅.

Π’.Π΅. Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ являСтся Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ΠΌ ΠΊ run-time ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ°ΠΌ. На ΠΌΠΎΠΉ взгляд, ΠΎΠ½ Π½Π΅ ΠΎΡ‡Π΅Π½ΡŒ эффСктивСн, Ρ‚.ΠΊ.:

Однако ΠΎΠ½ ΠΈΠΌΠ΅Π΅Ρ‚ Π΄Π²Π° прСимущСства:

ΠŸΠ΅Ρ€ΠΈΠΎΠ΄ΠΈΡ‡Π΅ΡΠΊΠΎΠ΅ ΠΎΠ±Π½ΡƒΠ»Π΅Π½ΠΈΠ΅ с ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π΅ΠΌ состояния

Π‘ΡƒΡ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ WDT, анализируя ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎ Π·Π°Π²Π΅Π΄Π΅Π½Π½Ρ‹Π΅ для этих Ρ†Π΅Π»Π΅ΠΉ Π³Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹Π΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅, Π·Π½Π°Π΅Ρ‚, Π² ΠΊΠ°ΠΊΠΎΠΌ Ρ€Π΅ΠΆΠΈΠΌΠ΅ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°, Ρ‡Ρ‚ΠΎ ΠΎΠ½Π° Π΄ΠΎΠ»ΠΆΠ½Π° Π΄Π΅Π»Π°Ρ‚ΡŒ ΠΈ Ρ‡Π΅Π³ΠΎ ΠΎΠ½Π° Π΄Π΅Π»Π°Ρ‚ΡŒ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Π°. Π’Ρ‹Π·ΠΎΠ² wdt_clear() производится ΠΏΡ€ΠΈ ΠΏΡ€ΠΎΡ…ΠΎΠΆΠ΄Π΅Π½ΠΈΠΈ всСх ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΎΠΊ Π²Π½ΡƒΡ‚Ρ€ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° пСриодичСского прСрывания (Ρ‡Π°Ρ‰Π΅ всСго ΠΎΡ‚ Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π°). Π­Ρ‚ΠΎ позволяСт Π½Π°ΠΌ вСсти постоянный ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒ Π·Π° состояниСм ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ с ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΌ ΠΏΠ΅Ρ€ΠΈΠΎΠ΄ΠΎΠΌ Π²Π½Π΅ зависимости ΠΎΡ‚ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ выполнСния ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ. Π’ сущности этот ΠΌΠ΅Ρ‚ΠΎΠ΄ являСтся Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½ΠΎΠΉ вСрсиСй ΠΌΠ΅Ρ‚ΠΎΠ΄Π° обнулСния с ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π΅ΠΌ Ρ„Π»Π°Π³ΠΎΠ² Π·Π° ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² Ρ€Π΅Π΄ΠΊΠΈΡ… случаях ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π²Π½Π΅ прСрывания.

ΠœΠ΅Ρ‚ΠΎΠ΄ Ρ…ΠΎΡ€ΠΎΡˆ Ρ‚Π΅ΠΌ, Ρ‡Ρ‚ΠΎ позволяСт Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ для Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Ρ€Π΅ΠΆΠΈΠΌΠΎΠ² Ρ€Π°Π±ΠΎΡ‚Ρ‹, Ρ‚.Π΅. позволяСт ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΡΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π² Ρ†Π΅Π»ΠΎΠΌ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, для Π΄ΠΈΠΊΡ‚ΠΎΡ„ΠΎΠ½Π° Π½Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ Π°ΠΊΡ‚ΠΈΠ²Π½Ρ‹ Ρ€Π΅ΠΆΠΈΠΌΡ‹ записи ΠΈ воспроизвСдСния; автосигнализация Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π·Π°ΠΏΠΎΠΌΠΈΠ½Π°Ρ‚ΡŒ Π½ΠΎΠ²Ρ‹Π΅ сСрийныС Π½ΠΎΠΌΠ΅Ρ€Π° Π±Ρ€Π΅Π»ΠΎΠΊΠΎΠ², Ссли ΠΎΠ½Π° Π½Π΅ Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ программирования ΠΈ Ρ‚.ΠΏ.). Π’ зависимости ΠΎΡ‚ Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π³ΠΎ Ρ€Π΅ΠΆΠΈΠΌΠ° Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΈ выпоняСмых Π² Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ дСйствий, порядок ΠΈ Π½Π°Π±ΠΎΡ€ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΎΠΊ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΌΠ΅Π½ΡΡ‚ΡŒΡΡ. К ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρƒ, элСктричСская ΠΏΠ»ΠΈΡ‚Π° ΠΌΠΎΠΆΠ΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π² 3Ρ… Ρ€Π΅ΠΆΠΈΠΌΠ°Ρ…: Ρ€Π΅ΠΆΠΈΠΌ сна, Ρ€Π΅ΠΆΠΈΠΌ Π³ΠΎΡ‚ΠΎΠ²ΠΊΠΈ ΠΈ Ρ€Π΅ΠΆΠΈΠΌ настройки. Π’ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΈΠ· Π½ΠΈΡ… Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ Ρ€Π°Π·Π½Ρ‹Π΅ Π½Π°Π±ΠΎΡ€Ρ‹ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±Ρ‹Π»ΠΎ Π±Ρ‹ Π½Π΅ΡƒΠ΄ΠΎΠ±Π½ΠΎ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ скопом, поэтому для контроля ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Π½Π°Π±ΠΎΡ€Π° создаСтся своя Π²Π΅Ρ‚Π²ΡŒ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΎΠΊ Π² зависимости ΠΎΡ‚ Ρ€Π΅ΠΆΠΈΠΌΠ°.

Π­Ρ‚ΠΎΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ лишСн основных нСдостатков Π΄Π²ΡƒΡ… ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΡ… ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² обнулСния (с ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π΅ΠΌ Ρ„Π»Π°Π³ΠΎΠ² ΠΈ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π΅ΠΌ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ), Π° ΠΈΠΌΠ΅Π½Π½ΠΎ:

Но Π³Π»Π°Π²Π½ΠΎΠ΅ прСимущСство этого ΠΌΠ΅Ρ‚ΠΎΠ΄Π° Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ Ρ‚ΠΎΠ³Π΄Π°, ΠΊΠΎΠ³Π΄Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ внСшниС Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ, учитывая, Ρ‡Ρ‚ΠΎ Π² Π½ΠΈΡ… Π½Π΅Ρ‚ Ρ‡Π΅Ρ‚ΠΊΠΎΠ³ΠΎ Ρ€Π΅Π³Π»Π°ΠΌΠ΅Π½Ρ‚Π° ΠΏΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ выполнСния ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΏΠΎΠ΄ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ RTOS, Π³Π΄Π΅ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… процСссов ΠΆΠΈΠ²Π΅Ρ‚ своСй Тизнью (см. Π½ΠΈΠΆΠ΅).

Однако, ΠΏΡ€ΠΈ своСй ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ этот ΠΌΠ΅Ρ‚ΠΎΠ΄ Π½Π΅ лишСн нСдостатков:

ΠšΠΎΠΌΠ±ΠΈΠ½ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄

Иногда Π±Ρ‹Π²Π°Π΅Ρ‚ ΡƒΠ΄ΠΎΠ±Π½ΠΎ Π²Ρ‹Ρ…Π²Π°Ρ‚ΠΈΡ‚ΡŒ ΠΈΠ· ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° Ρ‡Ρ‚ΠΎ-Π½ΠΈΠ±ΡƒΠ΄ΡŒ ΠΎΠ΄Π½ΠΎ ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π² ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ†ΠΈΠΈ с Π΄Ρ€ΡƒΠ³ΠΈΠΌ. НапримСр, ΠΌΠΎΠΆΠ΅Ρ‚ понадобится Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ (скаТСм, Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ состояний), для ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ сам Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ состояний прСвратится Π² слоТный вСтвящийся комплСкс ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ² Π²Π΅Ρ‚Π²Π»Π΅Π½ΠΈΠΉ ΠΈ Ρ†ΠΈΠΊΠ»ΠΎΠ². Π’ Ρ‚Π°ΠΊΠΎΠΌ случаС ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠΊΠ°Π·Π°Ρ‚ΡŒΡΡ цСлСсообразным Π½Π΅ ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ эту Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ Π² ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ°Ρ… Π²Π½ΡƒΡ‚Ρ€ΠΈ прСрывания, Π° Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ для Π½Π΅Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ обнулСния с ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π΅ΠΌ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΈΠ»ΠΈ ΠΎΠ±Π½ΡƒΠ»Π΅Π½ΠΈΠ΅ΠΌ Π² Ρ†ΠΈΠΊΠ»Π΅, Ρ‚.Π΅. Π² критичСских ΡƒΠ·Π»Π°Ρ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Ρ€Π°ΡΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Π²Ρ‹Π·ΠΎΠ²Ρ‹ wdt_clear() (ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ с ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΎΠΉ Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π³ΠΎ состояния). Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ ΡƒΡΠ»ΠΎΠΆΠ½ΠΈΡ‚ΡŒ Π°Π½Π°Π»ΠΈΠ· ΠΏΡ€ΠΈΡ‡ΠΈΠ½ сброса, Π½ΠΎ ΠΈΠ½ΠΎΠ³Π΄Π° Π½Π°ΠΌΠ½ΠΎΠ³ΠΎ ΡƒΠΏΡ€ΠΎΡ‰Π°Π΅Ρ‚ ΠΏΡ€ΠΎΡ€Π°Π±ΠΎΡ‚ΠΊΡƒ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° контроля выполнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.

Π’Ρ‹Π±ΠΎΡ€ ΠΈΠ½Ρ‚Π΅Ρ€Π²Π°Π»Π°

ΠŸΡ€ΠΈ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° обнулСния WDT ΠΏΠ΅Ρ€Π΅Π΄ прораммистом встаСт вопрос Π²Ρ‹Π±ΠΎΡ€Π° ΠΈΠ½Ρ‚Ρ€Π΅Π²Π°Π»Π° WDT. Π”ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… ΠΈΠ½Ρ‚Π΅Ρ€Π²Π°Π»ΠΎΠ², проСдоставляСмый стороТСвыми Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π°ΠΌΠΈ Ρ€Π°Π·Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»Π΅ΠΉ, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠΌ WDT, довольно ΡˆΠΈΡ€ΠΎΠΊ: ΠΎΡ‚ Π΅Π΄ΠΈΠ½ΠΈΡ† миллисСкунд Π΄ΠΎ Π΅Π΄ΠΈΠ½ΠΈΡ† сСкунд (для Π²Π½Π΅ΡˆΠ½ΠΈΡ…) ΠΈΠ»ΠΈ Π΄ΠΎ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… суток (для Π²Ρ‚ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΡ…). Π˜Π½Ρ‚Ρ€Π΅Π²Π°Π» слСдуСт Π²Ρ‹Π±ΠΈΡ€Π°Ρ‚ΡŒ исходя ΠΈΠ· Π²ΠΎΠ·Π»Π°Π³Π°Π΅ΠΌΡ‹Ρ… Π½Π° WDT Π·Π°Π΄Π°Ρ‡. НапримСр, Ссли ΠΌΡ‹ ΠΏΠ»Π°Π½ΠΈΡ€ΡƒΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ WDT Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для Π²Ρ‹Π²ΠΎΠ΄Π° МК ΠΈΠ· зависания, Ρ‚ΠΎ Ρ€Π΅Π΄ΠΊΠΎ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΡ‚ΡŒΡΡ ΠΈΠ½Ρ‚Π΅Ρ€Π²Π°Π»Ρ‹ Π΄Π»ΠΈΠ½Π½Π΅Π΅ сСкунды-Π΄Π²ΡƒΡ…. Если ΠΆΠ΅ WDT Π±ΡƒΠ΄Π΅Ρ‚ использован для пСриодичСской Π°ΠΊΡ‚ΠΈΠ²Π°Ρ†ΠΈΠΈ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π°, Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰Π΅Π³ΠΎ Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ ΠΏΠΎΠ½ΠΈΠΆΠ΅Π½Π½ΠΎΠ³ΠΎ энСргопотрСблСния, Ρ‚ΠΎ Ρ‚ΡƒΡ‚, Π² зависимости ΠΎΡ‚ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ Π·Π°Π΄Π°Ρ‡ΠΈ, ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ умСстны ΠΈΠ½Ρ‚Π΅Ρ€Π²Π°Π»Ρ‹ Π² нСсколько часов ΠΈΠ»ΠΈ Π΄Π°ΠΆΠ΅ суток. Π’ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… случаях цСлСсообразно ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ ΠΈΠ½Ρ‚Π΅Ρ€Π²Π°Π» Π² Ρ…ΠΎΠ΄Π΅ Ρ€Π°Π±ΠΎΡ‚Ρ‹: Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π΄Π΅Π»Π°Ρ‚ΡŒ ΠΊΠΎΡ€ΠΎΡ‡Π΅ ΠΏΡ€ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ отвСтствСнных Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΈΠ»ΠΈ, Π½Π°ΠΎΠ±ΠΎΡ€ΠΎΡ‚, Π΄Π΅Π»Π°Ρ‚ΡŒ Π΄Π»ΠΈΠ½Π½Π΅Π΅ ΠΏΡ€ΠΈ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π΅ Π² Ρ€Π΅ΠΆΠΈΠΌ ΠΏΠΎΠ½ΠΈΠΆΠ΅Π½Π½ΠΎΠ³ΠΎ энСргопотрСблСния.

Максимальная ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ Ρ€Π΅Π°ΠΊΡ†ΠΈΠΈ

Π§Π΅ΠΌ быстрСС ΠΏΡ€ΠΎΠΈΠ·ΠΎΠΉΠ΄Π΅Ρ‚ сброс ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π° послС возникновСния сбоя, Ρ‚Π΅ΠΌ Π»ΡƒΡ‡ΡˆΠ΅. Π­Ρ‚ΠΎ ΠΈ понятно, Ρ€Π°Π· ΠΏΡ€ΠΎΠΈΠ·ΠΎΡˆΠ΅Π» сбой ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π½Π°Ρ‡Π°Π»Π° Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ ΠΏΠΎ Π²Π½Π΅ΡˆΡ‚Π°Ρ‚Π½ΠΎΠΌΡƒ Ρ€Π°ΡΠΏΠΈΡΠ°Π½ΠΈΡŽ, Ρ‚.Π΅. пСрСстала ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ спСцификации, Ρ‚ΠΎ Π½ΡƒΠΆΠ½ΠΎ это ΠΏΡ€Π΅ΠΊΡ€Π°Ρ‚ΠΈΡ‚ΡŒ ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ быстрСС. НапримСр, для ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΠΈΡ€ΡƒΡŽΡ‰Π΅ΠΉ Ρ†Π΅Π»ΠΎΡΡ‚Π½ΠΎΡΡ‚ΡŒ настила ступСнСй двиТущСгося эскалатора, Π½Π΅ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ Π² зависшСм состоянии Π² Ρ‚Π΅Ρ‡Π΅Π½ΠΈΠ΅ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ, соизмСримого со Π²Ρ€Π΅ΠΌΠ΅Π½Π΅ΠΌ ΠΏΡ€ΠΎΡ…ΠΎΠ΄Π° ΠΎΠ΄Π½ΠΎΠΉ ступСни Π½Π°Π΄ Π΄Π°Ρ‚Ρ‡ΠΈΠΊΠΎΠΌ.

ВрСмя выполнСния ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΎΠΊ

Если ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° являСтся ΠΌΠ½ΠΎΠ³ΠΎΠΏΠΎΡ‚ΠΎΡ‡Π½Ρ‹ΠΌ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ, ΠΌΠ½ΠΎΠ³ΠΈΠ΅ процСссы Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΆΠΈΠ²ΡƒΡ‚ большСй Ρ‡Π°ΡΡ‚ΡŒΡŽ собствСнной Тизнью, Ρ‚ΠΎ ΠΊΠΎΠ΄ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΎΠΊ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΡΡ‚ΠΈ состояния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠΊΠ°Π·Π°Ρ‚ΡŒΡΡ слоТным ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ довольно Π΄Π»ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ врСмя (Π² Ρ…ΡƒΠ΄ΡˆΠ΅ΠΌ случаС ΠΌΠΎΠΆΠ΅Ρ‚ Π΄ΠΎΡΡ‚ΠΈΠ³Π°Ρ‚ΡŒ дСсятков ΠΈ сотСн микросСкунд). Бтановится ΠΎΡ‡Π΅Π²ΠΈΠ΄Π½Ρ‹ΠΌ, Ρ‡Ρ‚ΠΎ Ссли Π΄Π΅Π»Π°Ρ‚ΡŒ эти ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ ΡΡ€Π°Π²Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ часто, Ρ‚ΠΎ снизится ΡΡ„Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒ самой ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. И Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΈΠ·-Π·Π° Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ 1% ΠΈΠ»ΠΈ 10% Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Π±ΡƒΠ΄Π΅Ρ‚ ΡƒΡ…ΠΎΠ΄ΠΈΡ‚ΡŒ Π½Π° ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ, Π° Π΅Ρ‰Π΅ ΠΈ ΠΈΠ·-Π·Π° Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° состояния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π°Ρ€ΡƒΡˆΠ°Π΅Ρ‚ врСмя Π΅Π΅ Ρ€Π΅Π°ΠΊΡ†ΠΈΠΈ Π½Π° ΠΊΠ°ΠΊΠΎΠ΅-Π»ΠΈΠ±ΠΎ событиС (особСнно, Ссли ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° находится Π² ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ΅ прСрывания высокого уровня).

ΠšΡ€ΠΈΡ‚ΠΈΡ‡Π΅ΡΠΊΠΈΠ΅ участки ΠΊΠΎΠ΄Π°

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ участки ΠΊΠΎΠ΄Π°, ΠΊΡ€ΠΈΡ‚ΠΈΡ‡Π½Ρ‹Π΅ ΠΊ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΡŽ с Ρ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒΡŽ Π΄ΠΎ Ρ‚Π°ΠΊΡ‚Π°, Π³Π΄Π΅ инструкции для обнулСния счСтчика стороТСваого Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π° Π±ΡƒΠ΄Π΅Ρ‚ просто Π½Π΅ΠΊΡƒΠ΄Π° Π²Ρ‚ΠΈΡΠ½ΡƒΡ‚ΡŒ. Π‘Π°ΠΌΠΈ инструкции обнулСния Π²ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, удастся, Π½ΠΎ Π½Π° ΠΊΠΎΠ΄ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΡΡ‚ΠΈ состояния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΌΠΎΠΆΠ΅Ρ‚ ΡƒΠΆΠ΅ Π½Π΅ ΠΎΡΡ‚Π°Ρ‚ΡŒΡΡ мСста, Π° Π±Π΅Π· этого ΠΊΠΎΠ΄Π° WDT ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΎΡΠ»ΡƒΠΆΠΈΡ‚ΡŒ ΠΏΠ»ΠΎΡ…ΡƒΡŽ слуТбу (ΠΌΡ‹ ΡƒΠΆΠ΅ Π³ΠΎΠ²ΠΎΡ€ΠΈΠ»ΠΈ ΠΎ зависании Π² Ρ†ΠΈΠΊΠ»Π΅ с бСзусловным ΠΎΠ±Π½ΡƒΠ»Π΅Π½ΠΈΠ΅ΠΌ WDT). Π’Π°ΠΊΠΈΠΌ ΠΊΠΎΠ΄ΠΎΠΌ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠΊΠ°Π·Π°Ρ‚ΡŒΡΡ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΊΠ°ΠΊΠΎΠ³ΠΎ-Ρ‚ΠΎ внСшнСго синала, Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‰Π°Ρ Ρ‚ΠΎΡ‡Π½ΠΎΠΉ Π²Ρ‹Π±ΠΎΡ€ΠΊΠΈ ΠΏΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ. ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΠ° ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ частично Ρ€Π΅ΡˆΠ΅Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ DMA-модуля, Ссли ΠΎΠ½ Π΅ΡΡ‚ΡŒ. Но Π² ΠΎΠ±Ρ‰Π΅ΠΌ случаС Π½Π°Π΄ΠΎ ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ Ρ‚Π°ΠΊΠΈΡ… Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚ΠΎΠ² ΠΊΠΎΠ΄Π° ΠΏΡ€ΠΈ Π²Ρ‹Π±ΠΎΡ€Π΅ ΠΈΠ½Ρ‚Π΅Ρ€Π²Π°Π»Π° обнулСния WDT.

Π’Π°ΠΊΠΆΠ΅ стоит ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Ρ‹ ΠΈΠΌΠ΅ΡŽΡ‚ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒΡΡ Π½Π° Ρ€Π΅Π·Π΅Ρ€Π²Π½Ρ‹ΠΉ Π³Π΅Π½Π΅Ρ€Π°Ρ‚ΠΎΡ€ ΠΏΡ€ΠΈ срывС Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΠΈ основного. ΠžΠ±Ρ‹Ρ‡Π½ΠΎ Ρ€Π΅Π·Π΅Ρ€Π²Π½Ρ‹ΠΉ Π³Π΅Π½Π΅Ρ€Π°Ρ‚ΠΎΡ€ ΠΈΠΌΠ΅Π΅Ρ‚ частоту Π½Π° Π΄Π²Π°-Ρ‚Ρ€ΠΈ порядка Π½ΠΈΠΆΠ΅ частоты основного Π³Π΅Π½Π΅Ρ€Π°Ρ‚ΠΎΡ€Π° (часто 32768 Π“Ρ†). ΠžΠ±Ρ‹Ρ‡Π½ΠΎ ΠΏΡ€ΠΈ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π΅ Π½Π° Ρ€Π΅Π·Π΅Ρ€Π²Π½Ρ‹ΠΉ Π³Π΅Π½Π΅Ρ€Π°Ρ‚ΠΎΡ€ гСнСрируСтся нСмаскируСмоС ΠΏΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΠ΅, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ позволяСт Π½Π°ΠΌ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΠΊΠΎΠ΄ ΠΏΠΎ ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄Ρƒ устройства Π² Ρ€Π΅Π·Π΅Ρ€Π²Π½Ρ‹ΠΉ Ρ€Π΅ΠΆΠΈΠΌ ΠΏΠ΅Ρ€Π΅Π΄ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ΠΌ сброса. Но слСдуСт ΡƒΡ‡Π΅ΡΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ этот ΠΊΠΎΠ΄ Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ Π² сотни ΠΈΠ»ΠΈ тысячи Ρ€Π°Π· ΠΌΠ΅Π΄Π»Π΅Π½Π½Π΅Π΅, Ρ‡Π΅ΠΌ ΠΏΡ€ΠΈ Ρ‚Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ ΠΎΡ‚ основного Π³Π΅Π½Π΅Ρ€Π°Ρ‚ΠΎΡ€Π°, Π° Ρ‚Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ стороТСвого Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π° ΠΏΡ€ΠΈ этом останСтся Π±Π΅Π· ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ. И ΠΏΡ€ΠΈ Π½Π΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠΌ Π²Ρ‹Π±ΠΎΡ€Π΅ ΠΈΠ½Ρ‚Π΅Ρ€Π²Π°Π»Π° стороТСвого Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π° ΠΈΠ»ΠΈ ΠΏΡ€ΠΈ Π½Π΅ΡƒΡ‡Π΅Ρ‚Π΅ особСнностСй выполнСния ΠΊΠΎΠ΄Π° ΠΏΡ€ΠΈ Ρ‚Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ ΠΎΡ‚ Ρ€Π΅Π·Π΅Ρ€Π²Π½ΠΎΠ³ΠΎ Π³Π΅Π½Π΅Ρ€Π°Ρ‚ΠΎΡ€Π° ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒΡΡ ситуация, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ счСтчик WDT успССт ΠΏΠ΅Ρ€Π΅ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒΡΡ Π΄ΠΎ Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Π±ΡƒΠ΄ΡƒΡ‚ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½Ρ‹ всС дСйствия ΠΏΠΎ ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠ΅ ΠΊ сбросу. Π’.Π΅. Π² ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ΅ нСмаскируСмого прСрывания, Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡŽΡ‰Π΅Π³ΠΎ ΠΏΡ€ΠΈ срывС Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΠΈ основного Π³Π΅Π½Π΅Ρ€Π°Ρ‚ΠΎΡ€Π°, слСдуСт ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒ ΠΎΠ±Π½ΡƒΠ»Π΅Π½ΠΈΠ΅ WDT ΠΏΠΎ особым ΠΏΡ€Π°Π²ΠΈΠ»Π°ΠΌ. РазумССтся, Π² Ρ‚Π°ΠΊΠΎΠΌ случаС ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΡƒΠΆΠ΅ Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ‚ смысла, Π½ΠΎ ΠΊΠΎΠ΅-ΠΊΠ°ΠΊΠΈΠ΅ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ ΠΏΠ΅Ρ€Π΅Π΄ ΠΎΠ±Π½ΡƒΠ»Π΅Π½ΠΈΠ΅ΠΌ WDT Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ, скорСС всСго, придСтся. Π’ Π΄Π°Π½Π½ΠΎΠΌ случаС ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄ обнулСния с ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π΅ΠΌ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ.

Π Π°Π±ΠΎΡ‚Π° с Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅Ρ‡Π½Ρ‹ΠΌΠΈ функциями

ΠžΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎ стоит вопрос порядка обнулСния стороТСвого Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π°, ΠΊΠΎΠ³Π΄Π° Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ сторонних ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»Π΅ΠΉ. Π‘Π°ΠΌΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅Ρ‡Π½Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ производят ΠΎΠ±Π½ΡƒΠ»Π΅Π½ΠΈΠ΅ WDT, с Π΄Ρ€ΡƒΠ³ΠΎΠΉ стороны Π² ΠΎΠ±Ρ‰Π΅ΠΌ случаС нСизвСстно, сколько Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π½Π° Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊΠ°ΠΊΠΎΠΉ-Π»ΠΈΠ±ΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅Ρ‡Π½ΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ. ΠŸΡ€ΠΎΡΡ‚Π°Ρ строка:

ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ тысячи Ρ‚Π°ΠΊΡ‚ΠΎΠ², ΠΈ Π΄Π°ΠΆΠ΅ ΠΎΠ±Ρ€Π°ΠΌΠ»Π΅Π½ΠΈΠ΅ Π΅Π΅ Π²Ρ‹Π·ΠΎΠ²Π°ΠΌΠΈ wdt_clear():

Π½Π΅ всСгда ΠΌΠΎΠΆΠ΅Ρ‚ спасти ΠΎΡ‚ пСрСполнСния WDT. Π’Ρ‹Ρ…ΠΎΠ΄Π° здСсь Π΄Π²Π°:

ΠžΠ±Π½ΡƒΠ»Π΅Π½ΠΈΠ΅ Π² ΠΏΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΠΈ с ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π΅ΠΌ состояния Π½Π°ΠΌΠ½ΠΎΠ³ΠΎ Π»ΡƒΡ‡ΡˆΠ΅ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ этой Π·Π°Π΄Π°Ρ‡ΠΈ. Π’Π°ΠΊΠΎΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ позволяСт Π½Π°ΠΌ ΡƒΡ‡Π΅ΡΡ‚ΡŒ Π΄Π»ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ врСмя выполнСния Π±Ρ‹Π±Π»ΠΈΠΎΡ‚Π΅Ρ‡Π½ΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, Π½Π΅ увСличивая ΠΏΡ€ΠΈ этом ΠΈΠ½Ρ‚Π΅Ρ€Π²Π°Π» самого стороТСвого Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π°. Для этого Π½ΡƒΠΆΠ½ΠΎ всСго лишь завСсти Π³Π»ΠΎΠ±Π°Π»ΡŒΠ½ΡƒΡŽ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ, Π² ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΏΠ΅Ρ€Π΅Π΄ Π²Ρ‹Π·ΠΎΠ²ΠΎΠΌ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅Ρ‡Π½ΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒ ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅ΠΌΠΎΠ΅ врСмя Π΅Π΅ выполнСния с ΠΊΠ°ΠΊΠΈΠΌ ΡƒΠ³ΠΎΠ΄Π½ΠΎ запасом. А Π² ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ΅ прСрывания ΠΊ ΠΊΠΎΠ΄Ρƒ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΎΠΊ состояния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ этой ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ.

ΠŸΠ΅Ρ€Π΅Π΄ Π²Ρ‹Π·ΠΎΠ²ΠΎΠΌ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅Ρ‡Π½Ρ‹Ρ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, врСмя выполнСния ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π²Ρ‹Π²Π°Π΅Ρ‚ сомнСния, пСрСмСнная g_WDT_Library.nCounter устанавливаСтся Π² соотвСтствии с ΠΎΠΆΠΈΠ΄Π°Π΅ΠΌΡ‹ΠΌ Π²Ρ€Π΅ΠΌΠ΅Π½Π΅ΠΌ выполнСния (это ΡƒΠ΄ΠΎΠ±Π½ΠΎ ΠΎΡ€Π³Π°Π½ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π² Π²ΠΈΠ΄Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, Ρ‚.ΠΊ. ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΎΠ²Π°Ρ‚ΡŒΡΡ дСйствия для обСспСчСния Π°Ρ‚ΠΎΠΌΠ°Ρ€Π½ΠΎΠ³ΠΎ доступа ΠΊ счСтчику):

Π Π°Π±ΠΎΡ‚Π° Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ ΠΏΠΎΠ΄ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ RTOS

Π’Π²ΠΈΠ΄Ρƒ этих слоТностСй ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΠ²Π°ΡŽΡ‚ΡΡ построСниСм простых ΠΈΠ½Π΄ΠΈΠ²ΠΈΠ΄ΡƒΠ°Π»ΡŒΠ½Ρ‹Ρ… тСстов с ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π΅ΠΌ состояний для ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎΠΉ Π·Π°Π΄Π°Ρ‡ΠΈ ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ ΠΎΠ±Π½ΡƒΠ»Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΈ ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎΠΌ ΠΏΡ€ΠΎΡ…ΠΎΠΆΠ΄Π΅Π½ΠΈΠΈ ΠΈΡ… всСх. Π’.Π΅. своСго Ρ€ΠΎΠ΄Π° надстройка Π½Π°Π΄ этими тСстами Π² Π²ΠΈΠ΄Π΅ обнулСния с ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΎΠΉ Ρ„Π»Π°Π³ΠΎΠ². ΠŸΡ€ΠΈΡ‡Π΅ΠΌ Π² случаС с RTOS эти ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ ΠΌΠΎΠΆΠ½ΠΎ Π΄Π΅Π»Π°Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² ΠΏΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΠΈ высокого ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚Π° (Π²Ρ‹ΡˆΠ΅ систСмного). ВсС Π±ΠΎΠ»Π΅Π΅ Π΄Π΅Ρ‚Π°Π»ΡŒΠ½Ρ‹Π΅ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ Π»ΡƒΡ‡ΡˆΠ΅ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Ρ‹Π²Π°Ρ‚ΡŒ Π² Π²ΠΈΠ΄Π΅ run-time тСстов. Π­Ρ‚ΠΎ, Π²ΠΎ-ΠΏΠ΅Ρ€Π²Ρ‹Ρ…, ΠΎΡ‡Π΅Π½ΡŒ Ρ€Π°Π·Π³Ρ€ΡƒΠ·ΠΈΡ‚ ΠΊΠΎΠ΄ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ условий обнулСния WDT, Π° Π²ΠΎ-Π²Ρ‚ΠΎΡ€Ρ‹Ρ…, ΠΊΠ°ΠΊ ΡƒΠΆΠ΅ Π±Ρ‹Π»ΠΎ сказано, Ρ‡Ρ‚ΠΎ сбой всСгда ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡Ρ‚ΠΈΡ‚Π΅Π»ΡŒΠ½Π΅Π΅ Π·Π°ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ Π½Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠΌ ΡƒΡ€ΠΎΠ²Π½Π΅, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΠΌΠ΅Ρ‚ΡŒ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΏΠΎΠΏΡ‹Ρ‚Π°Ρ‚ΡŒΡΡ Π²ΠΎΡΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚ΠΎΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡ‚ΡŒ ΠΈΠ»ΠΈ, Π² ΠΊΡ€Π°ΠΉΠ½Π΅ΠΌ случаС, произвСсти сброс бСзопасно, ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ пСрСвСдя всС внСшнСС ΠΎΠ±ΠΎΡ€ΡƒΠ΄ΠΎΠ²Π°Π½ΠΈΠ΅ Π² бСзопасный Ρ€Π΅ΠΆΠΈΠΌ. А стороТСвому Ρ‚Π°ΠΉΠΌΠ΅Ρ€Ρƒ ΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ сброса Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² самых критичСских ситуациях.

Но, Π΄Π°ΠΆΠ΅ рСализуя ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ ΠΏΠΎ ΡƒΠΏΡ€ΠΎΡ‰Π΅Π½Π½ΠΎΠΉ схСмС, Π½Π΅ стоит Π·Π°Π±Ρ‹Π²Π°Ρ‚ΡŒ ΠΎ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… особСнностях, прСвносимых RTOS:

ВСстированиС WDT ΠΏΡ€ΠΈ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΈ питания

Π’ особо отвСтствСнных систСмах WDT ΠΊΠ°ΠΊ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΠΈΡ€ΡƒΡŽΡ‰ΠΈΠΉ ΡƒΠ·Π΅Π» ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ протСстирован (ΠΈΠ½Π°Ρ‡Π΅ ΠΏΠΎΠ»Π°Π³Π°Ρ‚ΡŒΡΡ Π½Π° Π½Π΅Π³ΠΎ нСльзя). Π’Π°ΠΊΠΈΠ΅ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ ΠΏΡ€Π΅Π΄ΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‚ Π΄Π΅Π»Π°Ρ‚ΡŒ СвропСйский стандарт IEC 60730 (Annex H 11.12.7 ΠΏ. 8) ΠΈΠ»ΠΈ амСриканский стандарт UL1998 (A2.1 ΠΏ.8). Π’ зависимости ΠΎΡ‚ условий Ρ€Π°Π±ΠΎΡ‚Ρ‹ тСстированиС ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ Π΅Π΄ΠΈΠ½ΠΎΠΆΠ΄Ρ‹ ΠΏΡ€ΠΈ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΈ питания ΠΈΠ»ΠΈ с ΠΊΠ°ΠΊΠΈΠΌ-Ρ‚ΠΎ ΠΏΠ΅Ρ€ΠΈΠΎΠ΄ΠΎΠΌ, Π½ΠΎ Π½Π΅ Π½Π°Ρ€ΡƒΡˆΠ°Ρ ΠΏΡ€ΠΈ этом Ρ†Π΅Π»ΠΎΡΡ‚Π½ΠΎΡΡ‚ΡŒ выполнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ (Ρ‚.Π΅. Π² случаС пСриодичСского тСстирования ΠΏΠ΅Ρ€Π΅Π΄ ΠΏΡ€ΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ΠΌ тСста всС внСшнСС ΠΎΠ±ΠΎΡ€ΡƒΠ΄ΠΎΠ²Π°Π½ΠΈΠ΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ ΠΏΠ΅Ρ€Π΅Π²Π΅Π΄Π΅Π½ΠΎ Π² бСзопасный Ρ€Π΅ΠΆΠΈΠΌ, сохранСны Π² ΡΠ½Π΅Ρ€Π³ΠΎΠ½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΡƒΡŽ ΠΏΠ°ΠΌΡΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π²ΠΎΡΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ послС ΠΏΠ΅Ρ€Π΅Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ.

Π‘ΠΎΠ»Π΅Π΅ Π΄Π΅Ρ‚Π°Π»ΡŒΠ½ΠΎ тСстированиС WDT описано Π² «5.2 Бамодиагностика», здСсь ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΡŽ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ основныС ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΡ‹ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ:

ПовСдСниС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΏΡ€ΠΈ сбросС ΠΎΡ‚ WDT

Основной ΠΏΠ°Ρ€Π°Π³Ρ€Π°Ρ„, ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‰ΠΈΠΉ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΏΡ€ΠΈ сбросС, это «5.5 Π§Ρ‚ΠΎ Π΄Π΅Π»Π°Ρ‚ΡŒ ΠΏΡ€ΠΈ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠ΅Π½ΠΈΠΈ сбоя». Π—Π΄Π΅ΡΡŒ ΠΎΠΏΠΈΡˆΡƒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ основныС ΠΌΠΎΠΌΠ΅Π½Ρ‚Ρ‹, ΠΊΠ°ΡΠ°ΡŽΡ‰ΠΈΠ΅ΡΡ сброса ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π°, Π²Ρ‹Π·Π²Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΠ΅Ρ€Π΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ΠΌ WDT.

ВсС дСйствия дСлятся Π½Π° Π΄Π²Π° этапа:

ΠŸΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅

Π£ΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΠΏΡ€ΠΈΡ‡ΠΈΠ½Ρ‹ сброса, Π²Ρ‹Π·Π²Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΠ΅Ρ€Π΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ΠΌ WDT, ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΌΠΈ срСдствами довольно Π·Π°Ρ‚Ρ€ΡƒΠ΄Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ. Π”Π°ΠΆΠ΅ Ссли ΠΌΡ‹ ΠΏΡ€ΠΎΠ°Π½Π°ΠΈΠ·ΠΈΡ€ΡƒΠ΅ΠΌ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Ρ‹Π΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ Π² памяти (Ρ‚Π°ΠΊΠΈΠ΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ Ρ€Π°Π·ΠΌΠ΅Ρ‰Π΅Π½Ρ‹ Π² сСгмСнтах RAM, Π½Π΅ ΠΏΠΎΠ΄Π²Π΅Ρ€Π³Π°ΡŽΡ‰ΠΈΡ…ΡΡ Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠΉ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΈΠ»ΠΈ ΠΎΠ±Π½ΡƒΠ»Π΅Π½ΠΈΡŽ; для этого Π² Ρ€Π°Π·Π½Ρ‹Ρ… компиляторах Π΅ΡΡ‚ΡŒ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Ρ‹), Ρ‚ΠΎ Π² Π»ΡƒΡ‡ΡˆΠ΅ΠΌ случаС ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠΌ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ послСдствия сбоя, Ρ‚.Π΅. нСсоотвСтствиС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ этих ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅ΠΌΡ‹ΠΌ, Π° саму ΠΏΡ€ΠΈΡ‡ΠΈΠ½Ρƒ Ρ‚Π°ΠΊΠΈΠΌ способом Π½Π΅ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, всС эти ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ достовСрныС значСния, Ρ‚.ΠΊ. сбой ΠΌΠΎΠ³ ΠΏΡ€ΠΎΠΈΠ·ΠΎΠΉΡ‚ΠΈ ΠΈΠ·-Π·Π° срыва Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΠΈ, ΠΈΠ»ΠΈ ΠΈΠ·-Π·Π° измСнСния значСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ счСтчика, ΠΈΠ»ΠΈ ΠΈΠ·-Π·Π° измСнСния Ρ‚Ρ€ΠΈΠ³Π³Π΅Ρ€ΠΎΠ² самого WDT (ΠΎΠ± этом Π½ΠΈΠΆΠ΅).

Но ΠΏΡ€ΠΈΡ‡ΠΈΠ½Ρ‹ сбоя ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠΏΡ‹Ρ‚Π°Ρ‚ΡŒΡΡ ΠΏΡ€ΠΎΠ°Π½Π°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ. Для этого ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π΄ΠΎΠ»ΠΆΠ½Π° ΠΈΠΌΠ΅Ρ‚ΡŒ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΏΡ€ΠΈ стартС ΡΠΎΡ…Ρ€Π°Π½ΡΡ‚ΡŒ Π² ΡΠ½Π΅Ρ€Π³ΠΎΠ½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΡƒΡŽ ΠΏΠ°ΠΌΡΡ‚ΡŒ ΠΈΠ»ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Ρ‚ΡŒ ΠΏΠΎ внСшним ΠΊΠ°Π½Π°Π»Π°ΠΌ связи Π½Π°Π±ΠΎΡ€ Π·Π½Π°Ρ‡ΠΈΠΌΡ‹Ρ… ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…, рСгистров, Π° Ρ‚Π°ΠΊΠΆΠ΅ участка стСка. ВсС эти Π΄Π°Π½Π½Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π² дальнСйшСм ΠΏΠΎΠΌΠΎΡ‡ΡŒ Π½Π°ΠΌ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π² ΠΊΠ°ΠΊΠΎΠΌ мСстС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΈ Π² ΠΊΠ°ΠΊΠΎΠΌ Π΅Π΅ состоянии ΠΏΡ€ΠΎΠΈΠ·ΠΎΡˆΠ΅Π» сбой. ΠŸΡ€ΠΈΡ‡Π΅ΠΌ ΠΏΠΎ возмоТности ΠΏΡ€ΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ сбоС Π»ΡƒΡ‡ΡˆΠ΅ ΡΠΎΡ…Ρ€Π°Π½ΡΡ‚ΡŒ всС эти Π΄Π°Π½Π½Ρ‹Π΅ Π² Ρ€Π°Π·Π½Ρ‹Π΅ участки энСргонСзависимой памяти. Π­Ρ‚ΠΎ Π½Π°Π±Π΅Ρ€Π΅Ρ‚ статистикку сбоСв ΠΈ ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΡ‚ наши ΡˆΠ°Π½ΡΡ‹ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΠΏΡ€ΠΈΡ‡ΠΈΠ½Ρƒ, Ρ‡Ρ‚ΠΎ особСнно ΠΏΠΎΠ»Π΅Π·Π½ΠΎ, Ссли ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π° Π±Ρ‹Π»Π° Π² нСдостаточно Ρ…ΠΎΡ€ΠΎΡˆΠΎ ΠΏΡ€ΠΎΡ€Π°Π±ΠΎΡ‚Π°Π½Π½ΠΎΠΌ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, Ρ‚.Π΅. Ссли сбой Π±Ρ‹Π» Π²Ρ‹Π·Π²Π°Π½ самой ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΎΠΉ, Π° Π½Π΅ внСшними ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π°ΠΌΠΈ. Но Π΄Π°ΠΆΠ΅ ΠΏΡ€ΠΈ нСвозмоТности ΡΠΎΡ…Ρ€Π°Π½ΡΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ Π² Ρ€Π°Π·Π½Ρ‹Π΅ участки энСргонСзависимой памяти (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Ссли Π½Π΅ позволяСт Π΅Π΅ свободный объСм), Ρ‚ΠΎ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ Π½ΡƒΠΆΠ½ΠΎ ΡΠΎΡ…Ρ€Π°Π½ΡΡ‚ΡŒ счСтчик сбоСв. ΠŸΡ€ΠΈ обслуТивании устройства ΠΏΠΎ этому счСтчику ΠΌΠΎΠΆΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ Π΄Π΅Π»Π°Ρ‚ΡŒ Π²Ρ‹Π²ΠΎΠ΄Ρ‹ ΠΎ Ρ‚ΠΎΠΌ, Π±Ρ‹Π» Π»ΠΈ это случайный сбой, ΠΈΠ»ΠΈ ΠΆΠ΅ систСматичСский, Ρ‡Ρ‚ΠΎ являСтся сигналом ΠΊ срочной ΠΏΠ΅Ρ€Π΅Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ устройства.

КакиС Π΄Π°Π½Π½Ρ‹Π΅ Π½ΡƒΠΆΠ½ΠΎ ΡΠΎΡ…Ρ€Π°Π½ΡΡ‚ΡŒ:

Π§Π΅ΠΌ большС Π΄Π°Π½Π½Ρ‹Ρ… ΠΌΡ‹ сохраним, Ρ‚Π΅ΠΌ большС возмоТностСй ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΠΏΡ€ΠΈΡ‡ΠΈΠ½Ρƒ сбоя ΠΈ, Ссли это Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, ΡƒΡΡ‚Ρ€Π°Π½ΠΈΡ‚ΡŒ Π΅Π΅.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

Π’Π°Ρˆ адрСс email Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½. ΠžΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ поля ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½Ρ‹ *