It's likely the resistor 'pack' (looks like a white IC chip on the tach circuit board) or one of the capacitors. One of the traces usually goes bad on the pack, and eventually opens or shorts, causing the tach to stay at 0 (short) or peg at its max (open). The capacitor also has something to do with the linearity of the tach, but I don't remember that much about it... give this a read:
http://www.thirdgen.org/techboard/electronics/357893-90-92-tachometer-fix.html
The board doesn't look identical, but the same resistance applies. I tried this with a pair of resistors (temporary fix, didn't keep the tach in the car) and it got the tach dang close to what it should be.