What is the function of the SYNCIO pin on the DDS parts?
The SYNCIO pin function is used to abort an I/O operation and reset the pointer of the serial port controller. Every completed byte written prior to a SYNCIO is preserved in the serial port buffer. After issuing SYNCIO, the SPI port expects that the next byte contains the instruction.
Suppose I want to power down the DAC in AD9914. As depicted in Figure 1, Control Function Register 1 is 4 bytes wide. Without using SYNCIO, to set DAC power down would require to issue a bit stream in SPI that would look like this.
0x00 0x48 0x00 0x01 0x00
It is a one byte instruction with four bytes data. It is noticeable that a one bit change would require overwriting the whole register value. The need for flexibility in functionality arises, and that is addressed by SYNCIO. Thus issuing an instruction with SYNCIO would look like this.
0x00 0x48 (Issue SYNCIO)
Suppose I have an initial value in P0 Phase/Amplitude Register(0x0C) which is:
0x45 0x80 0x0E 0x0F
Now, I want to increment the Phase Offset word by 2. This can be done in two ways; with or without SYNCIO
Without SYNCIO: 0x0C 0x47 0x80 0x0E 0x0F
With SYNCIO: 0x0C 0x47 (Issue SYNCIO)
The examples show that SYNCIO is used to eliminate the need to re-write the extra bytes in order to fill up the register value. This means that SYNCIO can increase the efficiency in doing serial I/O operations. Lastly, the terms such as IORESET or I/O_RESET that are used by some of our DDS products are synonymous to SYNCIO.