La pregunta igualmente importante, es cómo reprogramar mi AVR cuando mi código de usuario cuelga el chip (poco después del reinicio)... Es bueno tener una característica que funciona sin importar lo que está o no está programado en él.
Como ya se ha mencionado, se trata de un caso de lógica pura, o de algo de lógica y código en una rom utilizada para implementar esta característica. Bastante simple para la lógica pura.
El hecho de que un pin esté etiquetado como reset no significa que todo el diseño tenga que ser reiniciado por esa lógica. Mira el JTAG por ejemplo (en los chips que lo tienen), tiende a tener su propio reset separado del reset del chip primario y es o puede ser un dominio de reset completamente separado del reset del chip primario. El reset es sólo otra entrada que se utiliza como los diseñadores quieren, no hay ninguna razón automática por la que cada bit de lógica tenga que responder a él.
Obviamente hay lógica y quizás algo de código que no está en ese dominio de reinicio (está esencialmente en el dominio de reinicio de encendido, y/o reinicio invertido, cuando sueltas el pin de reinicio esta lógica misma puede entrar en reinicio y cuando afirmas el pin de reinicio esta lógica puede liberarse).