VINDEX レジスタは 1 つのみであり、トリガを受信するたびにこの値が上書きされます。これは、ユーザーが「一意」の VINDEX 値を持つ複数のトリガ イベントをキューに入れることができないことを意味します。しかし、保存された VINDEX 値は、DDS で複数回再利用することができます。たとえば、DDS_BURST=3 の場合、1 つのトリガ イベントが特定の波形を 4 回再生します。この例の動作について、以下に詳細を示します。
- DDS がトリガ待ちで、DDS_SYM[0]=0 (非対称モード) と仮定します。
- DDS_VEC[80].VTRIG_MODE=1 と仮定します。
- TRIG[0] は TRIG[4:1]=5 で立ち上がります。DDS は VINDEX=5*16=80 を設定します。DDS はベクトル 80 の再生を開始します (DDS_BURST=3 以降、1 つのトリガが消費され、3 つのトリガ イベントがキューに入れられます)。
- DDS はベクトル 80 から 83 を再生します。
- DDS_VEC[83].LAST_VEC=1 であるため、DDS は DDS_VEC[VINDEX] にジャンプします (VINDEX が変更されていないため、これはベクトル 80 です)。DDS_VEC[80].VTRIG_MODE=1 であるため、1 つのトリガ イベントがキューから削除されます。
- ベクトル 80 から 83 は合計 4 回再生されます (再生のギャップはゼロです)。4 回目の再生後、トリガ キューは空になるため、DDS は停止 (ミュート) し、トリガを再び待機します。