What is the function of the SYNC_IO pin on the DDS parts?

Document created by LouijieC Employee on Sep 26, 2013
Version 1Show Document
  • View in full screen mode


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.


Example 1

Clipboard01.png Figure 1


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)


Example 2

Clipboard02.pngFigure 2

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.