There is a very short Wikipedia entry on NMEA 0183. A much better explanation is at or in this PDF  by Klaus Betke. There is also a list of obsolete NMEA 0183 sentences . It is not very complicated to write a parser, but microcontrollers require a small footprint. The TinyGPS library is just perfect - a great compromise between space and functionality.

      Currently Parsing Redundant Satellite Information
Adafruit MTK3329 9600 x x   x x x
Sparkfun LS20031 57600 x x x x x x
GPSBee u-blox 5 9600 x x x x x x

GGA Global Positioning System Fix Data. Time, Position and fix related data for a GPS receiver
 1) Time (UTC)
 2) Latitude
 3) N or S (North or South)
 4) Longitude
 5) E or W (East or West)
 6) GPS Quality Indicator,  0 - fix not available, 1 - GPS fix, 2 - Differential GPS fix
 7) Number of satellites in view, 00 - 12
 8) Horizontal Dilution of precision
 9) Antenna Altitude above/below mean-sea-level (geoid)
10) Units of antenna altitude, meters
11) Geoidal separation, the difference between the WGS-84 earth ellipsoid and mean-sea-level (geoid),
    "-" means mean-sea-level below ellipsoid
12) Units of geoidal separation, meters
13) Age of differential GPS data, time in seconds since last SC104 type 1 or 9 update, null field when DGPS is not used
14) Differential reference station ID, 0000-1023
15) Checksum
RMC Recommended Minimum Navigation Information
 1) Time (UTC)
 2) Status, V = Navigation receiver warning
 3) Latitude
 4) N or S
 5) Longitude
 6) E or W
 7) Speed over ground, knots
 8) Track made good, degrees true
 9) Date, ddmmyy
10) Magnetic Variation, degrees
11) E or W
12) Checksum

You can buy a LS20031 from SparkFun for $60. This is a 32 Channel 5Hz GPS Receiver made by Locosys Technology.