SBASAO8 June 2025 DAC39RF20
ADVANCE INFORMATION
Each DDS channel has a local vector pointer that is updated after each vector is completed. The local vector pointer is added to a channel offset to index into DDS_VEC. The channel offset for each channel depends on how many channels are enabled, and is listed in Table 7-13.
| Channel | Channel Offset |
|---|---|
| 0 | 0 |
| 1 | 128 |
| 2 | 0 (or 64 if DSP channel 0 is also in vector mode) |
| 3 | 128 (or 256 if DSP channel 1 is also in vector mode) |
When symmetric mode is disabled (DDS_SYM=0), the local pointer starts at channel offset value and increments after each vector is completed. Once a vector is completed that has the LAST_VEC field set (=1), the pointer returns to the channel offset value and the incrementing sequence repeats.
Here is an example sequence for the local vector pointer (DDS_SYM=0, vector 5 has LAST_VEC=1) with channel offset = 0:
0, 1, 2, 3, 4, 5, 0, 1, 2, 3, 4, 5, 0, 1, 2, 3, 4, 5, …
When symmetric mode is enabled by setting DDS_SYM, the pointer does not reset to the channel offset value after playing a vector with LAST_VEC set. Instead, the pointer begins decrementing until reaching the channel offset value, then begins incrementing again (the channel offset vector is played twice).
Here is an example sequence for the local vector pointer (DDS_SYM=1, vector 5 has LAST_VEC=1) with channel offset = 0:
0, 1, 2, 3, 4, 5, 4, 3, 2, 1, 0, 0, 1, 2, 3, 4, 5, 4, 3, 2, 1, 0, 0, 1, 2, 3, 4, 5, …
Note that vector 5 is played once, but vector 0 is played twice (to support symmetric Frank codes). The vectors in the decrement phase are underlined above. During the decrement phase, the VTRIG_MODE field of the vectors are ignored and vectors are processed as if VTRIG_MODE was 0. This makes sure a complete symmetric waveform is played without requiring a trigger during the second half of the waveform.
Note that symmetric mode is intended for Frank codes (phase modulation with a symmetric phase sequence). While the waveform segments are played in reverse order, the actual samples that make up the waveform segments are not reversed in time (not played backwards).