You need to be at MySQL version 5.6.4 or later to declare columns with fractional-second time datatypes.
DATETIME(3) will give you millisecond resolution in your timestamps, and
TIMESTAMP(6) will give you microsecond resolution on a *nix-style timestamp.
Read this: http://dev.mysql.com/doc/refman/5.7/en/fractional-seconds.html
NOW(3) will give you the present time from your MySQL server's operating system with millisecond precision.
(Notice that MySQL internal fractional arithmetic, like * 0.001, is always handled as IEEE754 double precision floating point, so it's unlikely you'll lose precision before the Sun becomes a white dwarf star.)