Production Data
WM9090
w
PD, November 2010, Rev 4.1
39
WSEQ_DATA_WIDTH is a 3-bit field which identifies the width of the data block to be written. This
enables selected portions of a Control Register to be updated without any concern for other bits
within the same register, eliminating the need for read-modify-write procedures. Values of 0 to 7
correspond to data widths of 1 to 8 respectively. For example, setting WSEQ_DATA_WIDTH = 010
will cause a 3-bit data block to be written. Note that the maximum value of this field corresponds to
an 8-bit data block; writing to register fields greater than 8 bits wide must be performed using two
separate operations of the Control Write Sequencer.
WSEQ_DATA is an 8-bit field which contains the data to be written to the selected Control Register.
The WSEQ_DATA_WIDTH field determines how many of these bits are written to the selected
register; the most significant bits (above the number indicated by WSEQ_DATA_WIDTH) are
ignored.
WSEQ_DELAY is a 4-bit field which controls the waiting time between the current step and the next
step in the sequence i.e. the delay occurs after the write in which it was called. The total delay time
per step (including execution) is given by:
T = k × (2
WSEQ_DELAY
+ 8)
where k = 62.5
μ
s (under recommended operating conditions)
This gives a useful range of execution/delay times from 562
μ
s up to 2.048s per step.
WSEQ_EOS is a 1-bit field which indicates the End of Sequence. If this bit is set, then the Control
Write Sequencer will automatically stop after this step has been executed.
REGISTER
ADDRESS
BIT LABEL DEFAULT
DESCRIPTION
R70 (46h)
Write
Sequencer 0
3:0
WSEQ_WRIT
E_INDEX [3:0]
0000
Sequence Write Index. This is the
memory location to which any updates
to R71 and R72 will be copied.
0 to 15 = RAM addresses
R71 (47h)
Write
Sequencer 1
14:12 WSEQ_DATA
_WIDTH [2:0]
000
Width of the data block written in this
sequence step.
000 = 1 bit
001 = 2 bits
010 = 3 bits
011 = 4 bits
100 = 5 bits
101 = 6 bits
110 = 7 bits
111 = 8 bits
11:8
WSEQ_DATA
_START [3:0]
0000
Bit position of the LSB of the data block
written in this sequence step.
0000 = Bit 0
…
1111 = Bit 15
7:0
WSEQ_ADDR
[7:0]
0000_0000
Control Register Address to be written to
in this sequence step.
R72 (48h)
Write
Sequencer 2
14
WSEQ_EOS
0
End of Sequence flag. This bit indicates
whether the Control Write Sequencer
should stop after executing this step.
0 = Not end of sequence
1 = End of sequence (Stop the
sequencer after this step).
11:8
WSEQ_DELA
Y [3:0]
0000
Time delay after executing this step.
Total time per step (including execution)
= 62.5
μ
s × (2
WSEQ_DELAY
+ 8)
7:0
WSEQ_DATA
[7:0]
0000_0000
Data to be written in this sequence step.
When the data width is less than 8 bits,
then one or more of the MSBs of
WSEQ_DATA are ignored. It is
recommended that unused bits be set to
0.
Table 20 Write Sequencer Control - Programming a Sequence