Even with an RTC you don't get a millisecond resolution without effort. The DS3232 has a programmable square wave output with 1Hz that you can use as an external interrupt trigger. Within the interrupt handler you can save the micros() value. Now if you need a timestamp read the RTC registers to get the day, hour, minute and second, then read the micros() and subtract the save value of the last interrupt call and divide by 1000 to get the milliseconds.