Programmable Devices
CPLDs, FPGAs, SoC FPGAs, Configuration, and Transceivers
20725 Discussions

Official quick method of switching between devices in device migration list

Steve-Mowbray-ENL
New Contributor I
960 Views

what is the official but quick method for switching between devices in the device migration list?

 

I do hope it doesn't involve creating a whole new project variant for each target device as this will (manually) duplicate any project level improvements between the project variants... 

Labels (1)
0 Kudos
1 Solution
sstrell
Honored Contributor III
884 Views

That's your call then.  I thought the only thing you wanted was to quickly switch devices and I/O assignments, but if there are other things that may change and need to match between the different revisions, then it might not be the best way to go.

You could instead use Tcl scripting in the .qsf for this type of stuff.

View solution in original post

0 Kudos
11 Replies
sstrell
Honored Contributor III
909 Views

I'm presuming you are talking about the feature of adding migration devices in the Pin Planner to make sure pin assignments are valid across the multiple devices.

Probably the best way to implement this would be to use the revisions feature in Quartus.  Create a new revision of your project based off the current project and then switch the device in the new revision.  You can always switch back to the original revision.

I'm not sure if you'll lose the I/O assignments when you change the device, but before doing so, you can export the I/O assignments from the Pin Planner and then import them back in after changing the device (kind of like a backup).

0 Kudos
Steve-Mowbray-ENL
New Contributor I
893 Views

Hi sstrell

I am specifically hoping to avoid creating a project variant -- how about manual edit the QSF file:

### pick active device
#set_global_assignment -name DEVICE 10AX027H4F34E3SG
#set_global_assignment -name DEVICE 10AX032H4F34E3SG
#set_global_assignment -name DEVICE 10AX048H4F34E3SG
set_global_assignment -name DEVICE 10AX066H4F34E3SG
#...
set_global_assignment -name DEVICE_MIGRATION_LIST "10AX066H4F34E3SG,10AX057H4F34E3SG,10AX048H4F34E3SG,10AX032H4F34E3SG,10AX027H4F34E3SG"

Regards

Steve

0 Kudos
sstrell
Honored Contributor III
891 Views

I'm not sure what you mean by a project variant.  The revisions feature is still a single project (single .qpf file) with multiple settings files (.qsf files).  When you switch revisions (pop-up list in toolbar or Revisions dialog box), you're just switching between the .qsf files so you don't have to go in and edit them manually like this.

0 Kudos
Steve-Mowbray-ENL
New Contributor I
886 Views

Hi sstrell 

I would prefer 1x QSF file if possible -- the device migration list ensures everything is otherwise compatible across the prospective devices so why have multiple QSF files -- say for instance we discover an transceiver assignment change improves transceiver performance then we would have to edit multiple QSF files (via Quartus GUI of course) to keep them in synch functionally

Regards

Steve 

0 Kudos
sstrell
Honored Contributor III
885 Views

That's your call then.  I thought the only thing you wanted was to quickly switch devices and I/O assignments, but if there are other things that may change and need to match between the different revisions, then it might not be the best way to go.

You could instead use Tcl scripting in the .qsf for this type of stuff.

0 Kudos
Steve-Mowbray-ENL
New Contributor I
875 Views

thanks sstrell -- was just checking there wasnt a quick and easy GUI method of switching devices from the Quartus GUI

0 Kudos
sstrell
Honored Contributor III
798 Views

Switching devices is easy in the GUI (Assignments menu -> Device).  It's just that many assignments get blown away when you switch devices and you also may have to regenerate IP.

0 Kudos
Steve-Mowbray-ENL
New Contributor I
787 Views

Hi sstrell certainly that was what I was concerned about -- I did an experiment and it appears that the only assignment that gets stomped in QSF is the DEVICE_MIGRATION_LIST which is easy enough recreated -- regenerate the the QSYS and it seems to work -- will use this method with extreme caution going forward...

0 Kudos
Fakhrul
Employee
710 Views

Hi Steve-Mowbray-ENL,


Do you have any further questions on this matter? Else, I'll move this to community support, making it a helpful reference for others in the forum.


Regards,

Fakhrul


0 Kudos
Steve-Mowbray-ENL
New Contributor I
700 Views

All good now thanks Fakhrul

0 Kudos
Fakhrul
Employee
660 Views

Hi Steve-Mowbray-ENL,


Thanks for your clarification. I’m glad that your question has been addressed, I now transition this thread to community support. If you have a new question, Please login to ‘https://supporttickets.intel.com’, view details of the desire request, and post a feed/response within the next 15 days to allow me to continue to support you. After 15 days, this thread will be transitioned to community support. The community users will be able to help you on your follow-up questions. Thanks.


0 Kudos
Reply