Closed ranzani closed 2 years ago
It seems that the APS3 uses a different convention to select the NCO frequency. Instead of using a 4 bit register (0001 for nco 1, 0010 for nco 2, 0100 for nco 3,etc...) it just saves the nco number in binary format (0001 is nco 1, 0010 is nco 2, 0011 is nco 3 and 0100 is nco 4). As a result read_sequence_file was failing for more than 2 ncos. I fixed that as well.
This is assuming that the generated sequence is indeed in the correct format. I haven't tried testing it on the actual device to see if it works.
In the old version any idle gate was creating a new NCO at zero frequency in the compiled sequence. Since the number of NCOs is limited, it looked like a waste. I modified it so that the idle gate simply reuses the frequency of the previous gate, without adding a new one. I modified just the APS3 pattern for now, but if it works we can do it for the APS2.