Modernejsie nahrady za watchdogy
Jan Waclawek
konfera na efton.sk
Čtvrtek Červen 15 11:08:27 CEST 2023
[preposielam]
Ahojte,
>>>
Taky by me zajimalo, co je dneska na tohle in...
Najlepsi prehlad ma v tomto smere Texas Instruments:
Supervisor & reset ICs | TI.com
<https://www.ti.com/power-management/supervisor-reset-ic/overview.html>
Analog Devices co je dnes Maxim a Dallas maju len starsie typy z 90 rokov a
okolo roku 2000.
Viacej sa mi nepodarilo vybrowsovat a vygooglit.
>>>
Nějak jsem si zvyknul, že moderníi AVR, vlastně i dost staré AVR, mají
WDT a brown-out reset, takže to žádný běžný externí triviální obvod
nemůže vylepšit, spíš naopak.
Předpokládám, že spousta moderních MCU to má taky tak, takže kdo
potřebuje spolehlivý provoz, velmi pravděpodobně vybere takto vybavený MCU.
Proto segment univerzálních externích hlídačů bude spíše upadat, než že
by výrobci investovali do nových produktů.
Teoria spolahlivosti systemov hovori, ze spolahlivost systemu sa zvysi
pri pouziti dvoch roznych systemov s rovnakou funkciou. WDT v mcu su
prevazne digitalneho typu, zatial co externe WDT by mali byt analogove
(casovacia kapacita). Takze pouzitie tych externych WDT by malo zvysit
spolahlivost celeho embedded systemu s mcu. Navyse tie externe su
casto vybavene aj pomocnymi funkciami ako definovana dlzka RESET
signalu, ci power-fail indikator. Niektore maju aj maual RESET button
input (MAX705-6). Takze su vhodne na komplexnu kontrolu napajacieho
zdroja ako takeho.
Problem tychto externych watchdogov je ten, ze treba napisat komplexnu
rutinu na obsluhu RESET-u mcu. Problem je hlavne identifikovat vsetky
typy moznych RESETov plus este ten externy WDT. Ako tu zaznelo, mcu
maju na tento ucel vyhradeny register, kde sa daju jednotlive typy
RESET signalu identifikovat. Napr. power-up, ext. pin RESET, WDT od
mcu, WDT od mcu sleep a podobne. Kazdy procesor to ma specificke. Mne
sa takuto obsluznu rutinu RESETu, ktora by vyuzivala vsetky
RESET-typy, nepodarilo napisat. Vzdy som skoncil pri tych
jednoduchsich rutinach.
Druhy problem, pouzitia WDT ci uz internych v mcu alebo externych, je
pri pisani programu v C. Niektore matematicke rutiny su velke co sa
tyka kodu a trvaju dlhy cas, takze casto sa stane, ze interval na
refresh WDT sa prekroci a mcu sa zresetuje. Takze potom treba vypocty
rozlozit na ciastkove vypocty a vlozit medzi ne refresh WDT. To je
este ten jednoduchsi pripad. V tom zlozitejsom pripade treba vliezt do
zdrojovych kodov z kniznic a doplnit refresh v nich. A to uz nie je
trivialna uloha, nakolko kompilatory nemusia obsahovat zdrojove subory
kniznicnych funkcii.
A ku tomu este pride logistika a cena a dalsie technologicke faktory...
Takze takto vidim problematiku externych WDT ja.
A.
Další informace o konferenci Hw-list