Altera_Forum
Honored Contributor
7 years agoQuartus Pro and post-synth QDB for IP cores: Covering more than a single FPGA
Hello,
I'm looking for is a substitute for a post-synthesis netlist in Quartus Pro, for the purpose of delivering IP cores. The Standard Edition has the QXP format, which works reasonably well for this purpose, but is not supported by Quartus Pro. Following section 7.4 in the Pro Edition's Handbook Volume 1, I've successfully managed to generate a post-synthesis QDB in Quartus Pro, and deploy it in a target design. However Quartus Pro will not accept the QDB file in the target design unless the IP core has been compiled for exactly the same fpga part number. This means that if I deliver an IP core for Arria-10, the customer can't switch to another FPGA in the Arria-10 family without having me resynthesizing the IP core. There is no such problem with QXP files (let alone EDIF, which Quartus doesn't support). Attempting to compile a project with a QDB file that doesn't match the targeted part number exactly yields an error like Error(18097): Partition "|" contains assignment "DEVICE" with setting "10AX115S3F45E2SG", which is different from setting "10AX115S2F45I2VG" in partition "foo_ins|my_core_ins". Modify your design so all partitions use the same setting for the specified assignment. Is there a way to solve this? An QDB for a specific part number is pretty useless. Maybe allow the end users to change the target part number of the QDB somehow? Or a way to generate an QDB that covers an entire device family? Or maybe the QDB format isn't the way to go at all? But if so, what is? Encrypted sources is not an option. Software used: Quartus Prime Version 17.1.0 Build 240 SJ Pro Edition running on a Linux machine. Thanks in advance, Eli