--- 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,