- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Is there a JTAG IR code that reads back the unique chip ID? I'm hoping to read the chip ID back with a code like this:
device_ir_shift -ir_value <CHIP-ID-IR> -no_captured_ir_value device_dr_shift -length 64 -value_in_hex Cheers,Link Copied
5 Replies
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
--- Quote Start --- Is there a JTAG IR code that reads back the unique chip ID? I'm hoping to read the chip ID back with a code like this: device_ir_shift -ir_value <CHIP-ID-IR> -no_captured_ir_value device_dr_shift -length 64 -value_in_hex Cheers, --- Quote End --- You mean the silicon-specific IDCODE value, like this:
******************************************************************************
* Altera Chain Interrogation Version 5.0 *
* Copyright (c) 1999-2007 Altera Corporation. All Rights Reserved. *
******************************************************************************
Chain Continuity Checker
Chain Continuity during IR is not stuck at zero or one
******************************************************************************
Chain Length -- Load IR of all ones then count DR length
Number of Devices is 22
******************************************************************************
IR Length Calculator
Instruction Register Length is 157
******************************************************************************
IDCODE Reader
------ | ---------- | ---- ------------------- ------------- - |
Device | IDCODE | Rev DeviceCode Manufacturer 1 |
------ | ---------- | ---- ------------------- ------------- - |
ID 001 | 0x7A363013 | 0111 1010 0011 0110 0011 0000 0001 001 1 |
ID 002 | 0x85101013 | 1000 0101 0001 0000 0001 0000 0001 001 1 |
ID 003 | 0x95100013 | 1001 0101 0001 0000 0000 0000 0001 001 1 |
ID 004 | 0x1000011B | 0001 0000 0000 0000 0000 0001 0001 101 1 |
ID 005 | 0x1000011B | 0001 0000 0000 0000 0000 0001 0001 101 1 |
ID 006 | 0x1000011B | 0001 0000 0000 0000 0000 0001 0001 101 1 |
ID 007 | 0x1000011B | 0001 0000 0000 0000 0000 0001 0001 101 1 |
ID 008 | 0x1000011B | 0001 0000 0000 0000 0000 0001 0001 101 1 |
ID 009 | 0x1000011B | 0001 0000 0000 0000 0000 0001 0001 101 1 |
ID 010 | 0x1000011B | 0001 0000 0000 0000 0000 0001 0001 101 1 |
ID 011 | 0x1000011B | 0001 0000 0000 0000 0000 0001 0001 101 1 |
ID 012 | 0x1000011B | 0001 0000 0000 0000 0000 0001 0001 101 1 |
ID 013 | 0x1000011B | 0001 0000 0000 0000 0000 0001 0001 101 1 |
ID 014 | 0x1000011B | 0001 0000 0000 0000 0000 0001 0001 101 1 |
ID 015 | 0x1000011B | 0001 0000 0000 0000 0000 0001 0001 101 1 |
ID 016 | 0x1874839B | 0001 1000 0111 0100 1000 0011 1001 101 1 |
ID 017 | 0x00000000 | .... .... .... .... .... .... .... ... 0 |
ID 018 | 0x00000000 | .... .... .... .... .... .... .... ... 0 |
ID 019 | 0x175D014B | 0001 0111 0101 1101 0000 0001 0100 101 1 |
ID 020 | 0x4403D093 | 0100 0100 0000 0011 1101 0000 1001 001 1 |
ID 021 | 0xD5059093 | 1101 0101 0000 0101 1001 0000 1001 001 1 |
ID 022 | 0x2402E093 | 0010 0100 0000 0010 1110 0000 1001 001 1 |
------ | ---------- | ---- ------------------- ------------- - |
******************************************************************************
Exit code = 0... Success
I did this using the Altera JAM STAPL player using an Altera USB Blaster connected to a board with lots of devices (22) in the JTAG chain. For a simple example of how to toggle the JTAG lines to read the IDCODE register in devices see: http://www.fpga4fun.com/jtag3.html This page assumes you have a simple way (via GPIO port, for example) of controlling the JTAG lines.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Thank you for the response. Unfortunately that’s not a chip serial number it’s only a 32-bit identifier that gives only the family and stuff. It’s not unique across devices of the same family as you can see in your example.
Altera has a chip id IP that provides a unique 64-bit id but I’d like to read that ID from jtag without instantiating the ip in the design. Cheers,- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
--- Quote Start --- Thank you for the response. Unfortunately that’s not a chip serial number it’s only a 32-bit identifier that gives only the family and stuff. It’s not unique across devices of the same family as you can see in your example. Altera has a chip id IP that provides a unique 64-bit id but I’d like to read that ID from jtag without instantiating the ip in the design. Cheers, --- Quote End --- So this is something only a few of the newer devices support: https://www.altera.com/en_us/pdfs/literature/ug/altchipid.pdf There is a note that the ID is accessible thru JTAG for the Arria 10 and Cyclone 10 GX, but it appears you still need to instantiate the IP block.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
--- Quote Start --- So this is something only a few of the newer devices support: https://www.altera.com/en_us/pdfs/literature/ug/altchipid.pdf There is a note that the ID is accessible thru JTAG for the Arria 10 and Cyclone 10 GX, but it appears you still need to instantiate the IP block. --- Quote End --- That note is a bit vague, but I believe it means you cannot have a pending master transaction over JTAG while CHIP ID is being read. Which leads me to believe that CHIPID IP, underneath, is actually using JTAG to retrieve the unique 64-bit number. So I believe there must be a way to read the number from JTAG directly. Unless it's deliberately closed off. You are correct however, CHIPID is not available for all devices. cheers,
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I'd like to know the answer to this as well. The other FPGA vendor supports their equivalent of the unique ID in their equivalent of the JTAG programming GUI

Reply
Topic Options
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page