I read
on this CR-V post that the date on some NAV systems is stored in a 32 bit word in this format:
YYMMDDHHMM
The value is stored as a signed integer, and thus the 32nd bit is not used. The largest integer is therefore 2^31 which equals 2,147,483,648. If it was an unsigned integer the largest number would be 4,294,967,296.
This means that Dec 31, 2021 would be stored as 211231HHMM and therefore within the signed integer range. However, Jan 1, 2022 would be 220101HHMM and exceeds 2^31, and thus is misread as 020101HHMM (Jan 1, 2002). The use of an unsigned integer was corrected at some point on later NAV systems as
@JJohnson mentions above.
I don't know if what I read was true. But, this makes sense to me since my 2010 Accord and 2011 Ridgeline computes the GPS date/time incorrectly (Jan 1, 2002), yet my 2018 Accord is calculating the proper date/time.
BTW, even using an unsigned 32 bit word the problem would appear again in the year 2043.