Rex Belli (One of my students and an all-around bright guy, contact me if you're hiring a summer intern) pointed me towards the DS3231 as a possible replacement. It has several advantages over the DS1307:
- It runs fine on either 3.3V or 5V.
- It has a built-in oscillator: no external crystal required.
- It has two built-in alarms that can drive an interrupt pin, so if you just need a periodic interrupt signal this chip can in many cases do the job without a microcontroller.
- It' rated to 2 minutes per year (max) drift. (My best DS1307 clock drifts about 2 minutes per month!)
I wrote an Arduino library for it, so if you want to use this clock chip with that microcontroller it makes things a bit easier.
Here's the library: DS3231.zip
The header file (DS3231.h) is extensively commented, and there are several example sketches included as well. Enjoy! If you use the library for anything interesting, send me an email. I'd be happy to hear what's been done with it.