Suma kontrolna dla całego programu

Suma kontrolna dla całego programu

Witam, 

Korzystamy z sterowników FX5 i chcielibyśmy zrobić coś w rodzaju sumy kontrolnej dla całego programu, która pozwoliłaby nam wykryć zmianę oprogramowania na sterowniku. Wyobrażam to sobie jako funkcję która wylicza sumę kontrolną i porównuje ją z sumą referencyjną, Jeżeli będzie jakaś zmiana w oprogramowaniu to zmieni się suma i będzie niezgodna z referencyjną. (Głównym celem jest szybka weryfikacja bez konieczności używania narzędzia Verify)  

1. Czy istnieje może już taka gotowa funkcja? 
2. Jeżeli nie ma takiej funkcji to chcielibyśmy napisać ją sami. Czy jest możliwość odczytu poprzez rejestry specjalne np. pamięci zajmowanej przez program lub ilości kroków (steps), tak aby na tej podstawie możliwe było napisanie takiej funkcji samemu. Ewentualnie jakieś inne rejestry na których można byłoby oprzeć sumę kontrolną weryfikującą zmiany w programie?
3. Może istnieje inne narzędzie które pozwoli nam zabezpieczyć dodatkowo sterownik przed nieautoryzowaną zmianą (poza hasłem read/write/kluczem dostępowym) 

Niestety nie znalazłem odpowiedzi na te pytania w manualach.