http://www.markharvey.info

Putting a readable timestamp in FPGA hardware

When compiling multiple versions of a single project, it can be useful to have a readable hardware timestamp that can be used to check which version of firmware has actually been loaded into the target platform.

A tcl script can be used to read the current date and time from the system clock. The date and time are then converted into hexadecimal numbers and saved in registers that can be read via ChipScope or directly by other logic inside the FPGA.

This tcl script can be run from a tcl shell, from ISE or from PlaAhead. It can also be run as part of a more complete implementation script.

The script and documentation can be downloaded here. The zip archive contains the following files:

  • tcl/timestamp.tcl — the tcl script.
  • docs/timestamp.pdf — instructions for running the tcl script.
  • vhdl/timestamp.vhd — example of VHDL that is generated.
  • vhdl/tb1.vhd — VHDL testbench.
  • Note: This script has only been tested under WindowsXP 32bit.