Buenasss!!
Vamos a ver. Hay una diferencia grande entre los tipos de chips que aquí se exponen.
Para empezar, el 16f629 no puede auto-reprogramarse. Es decir, no puede escribir en su zona flash para el código. Solo puede escribir en la eeprom.
De aquí, que las actualizaciones de los chips, como bien decís, cambien solo una mínima parte del código, ya que el chip lleva un loader para cargar y ejecutar código de la eeprom, y como la eeprom es mucho más pequeña que la flash, pues solo se podría cambiar cierta parte del código, pero nunca entero o una gran parte.
Sin embargo, el 16f683 si puede autoreprogramarse. Es decir, que puede escribir en su propia flash para código. Lo único que necesita es un loader para hacer esto. Lo que significa que gran parte del espacio de la flash (el que no está ocupado por el loader) puede reescribirse completamente, permitiendo cambiar en gran parte el código del chip. Como contrapartida, si quieres poder escribir en la flash del chip, no puedes activar el fuse de protección CP. Por lo que las empresas del chip no lo usaran. Wiinja Deluxe usa el 16f683 pero solo escribe en la eeprom ;)
Conclusión:
* 16f629 -> Sin actualizaciones, o muy pequeñas.
* 16f683 -> Puede actualizarse en gran parte a cambio de no protegerlo. Solo se verá en chips caseros.
Hasta luego!!