Where does the Garmin G1000 Nav ID come from?
Garmin doesn't explicitly state the method in the documentation I can find, but I believe the answer is #1. It decodes the Morse code and displays that value. I say that for two reasons:  

First; Garmin, like most successful aviation companies, makes it a habit to reuse technology where it can. Volumes are low and certification costs are high so using the same NAV receiver in more than one product saves costs and increases profit. From their web site, the GNC 225 decodes the ident.  


  
  Automatically displays tuned frequency's navaid or airport identifier  
  Automatically decodes Morse signals so you don't have to
  


Second; the fact that it takes several seconds for the ID to display indicates it's being decoded as it has to be received before it's displayed. If it were pulled from the database, it would be available almost instantly.