How much difference is there when reading the encoder counts? If it is just a few counts (or just one count) I would agree that this is due to a microstepping problem.
Unfortunately not all microsteps are created equal. I.e., if you tell the motor driver just to advance one microstep, and then advance one more, the actual displacmenet may be somewhat different for each microstep (but the motor will reach exactly the same position if the number of microsteps equals one full step). So if the 7344 detects a (minor) following error it will issue a calculated number of microsteps to correct this following error - but probably will not reach the desired position exactly since the calculation assumes that each microstep pulse will cause the same dr
ive displacement.
Also, I have heard of problems when the ratio encoder counts to steps per rev. is NOT an even number, rounding errors may occur.
There is an excellent on-line essay about stepping motors, including possible microstepping problems, by a certain Mr Jones. Just do google search for 'jones on stepping motors'.