Hi Leon -
I don't think that OFF is a legitimate setting for this. It's off by default, so "set_instance_assignment -name PRESERVE_UNUSED_XCVR_CHANNEL OFF -to PIN_AC38" would have no effect.
I think the best way to handle this is to do a global enable:
set_instance_assignment -name PRESERVE_UNUSED_XCVR_CHANNEL ON
This will preserve all unused transceiver channels at the cost (supposedly) of only 1mW extra power dissipated per channel.
See this as well:
https://www.altera.com/support/support-resources/knowledge-base/solutions/rd06092016_720.html So to get the full effect you need to install update 1 to QP 16.0. This was news to me as well. Altera has done a terrible job of explaining this whole unused transceiver BTI degradation issue. It's not mentioned anywhere in the Arria 10 documentation. I discovered it when I saw lines like this in the .qsf files for Arria 10 reference designs from rocketboards:
set_instance_assignment -name ENABLE_UNUSED_RX_CLOCK_WORKAROUND ON -to AE33
I asked our local Altera account manager about it and she forwarded me some info on it from a super-secret Altera internal presentation. Really stupefying to me the way they handle issues sometimes.
Now when I build with 16.0 I get the following fitter messages:
Warning (18687): The QSF assignment ENABLE_UNUSED_RX_CLOCK_WORKAROUND has been deprecated. It has been superseded by the QSF assignment PRESERVE_UNUSED_XCVR_CHANNEL.
Info (17952): Channel-specific preservation of unused RX channels is enabled. Preserving 10 unused RX channel location(s).
Info (17953): Preserved 10 unused RX channel(s).
So the ENABLE_UNUSED_RX_CLOCK_WORKAROUND setting has been replaced by PRESERVE_UNUSED_XCVR_CHANNEL in 16.0, but they forgot to preserve the unused Tx channels. To get that you need to update to 16.0.1.
Hard to keep up with all the secret half-information with Arria 10.
Good luck. I hope this helps.
Bob