Reading Device DNA from the FPGA on Papilio

Recommended Posts

I expect so, though I haven't tried it.  The Spartan6 FPGA, at least, can read its own "Device DNA" with the DNA_PORT primitive according to  It sounds like maybe Spartan3E can't according to

I don't know if reading it via JTAG boundary scan over the USB connection will work, but that also seems like a possibility.


Share this post

Link to post
Share on other sites

The "papilio-prog" command line tool displays the device DNA when I use it to load a bitfile on a Papilio Pro (Spartan6).  Source code is in the "papilio_prog" subdirectory of

Example (underlining added):

user@host:~ $ sudo ~/bin/papilio-prog -vf fpga_robots_game.bit 

Using built-in device list

JTAG chainpos: 0 Device IDCODE = 0x24001093    Desc: XC6SLX9

Created from NCD file: fpga_robots_game.ncd;UserID=0xFFFFFFFF

Target device: 6slx9tqg144

Created: 2016/06/25 15:02:07

Bitstream length: 2724832 bits


Uploading "fpga_robots_game.bit". DNA is 0x59aa4afe43849eff


Programming time 684.9 ms

USB transactions: Write 176 read 8 retries 7

Share this post

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now