About any auto zone will assist you in plugging in a computer to tell you the codes... Then you just have to replace those parts. O2 sensor, egr...pcv valve, lots of reasons... down to a lil pin hole in a vacuum line. Decent website here with alot of on hand parts, check all those items in the emissions section.
http://www.rockauto.com/catalog/x,ca...gname,Emission