Supersedes August 1997 version, DS4548 - 3.2DS4548 - 4.0 August 1998
The VP16256 contains sixteen multiplier - accumulators, which
can be multi cycled to provide from 16 to 128 stages of digital filtering.
Input data and coefficients are both represented by 16-bit two’s
complement numbers with coefficients converted internally to 12 bits
and the results being accumulated up to 32 bits.
In 16-tap mode the device samples data at the system clock rate
of up to 40MHz. If a lower sample rate is acceptable then the number
of stages can be increased in powers of two up to a maximum of 128.
Each time the number of stages is doubled, the sample clock rate
must be halved with respect to the system clock. With 128 stages the
sample clock is therefore one eighth of the system clock.
In all speed modes devices can be cascaded to provide filters of
any length, only limited by the possibility of accumulator overflow. The
32-bit results are passed between cascaded devices without any
intermediate scaling and subsequent loss of precision.
The device can be configured as either one long filter or two
separate filters with half the number of taps in each. Both networks
can have independent inputs and outputs.
Both single and cascaded devices can be operated in decimateby-two mode. The output rate is then half the input rate, but twice the
number of stages are possible at a given sample rate. A single device
with a 40MHz clock would then, for example, provide a 128-stage low
pass filter, with a 10MHz input rate and 5MHz output rate.
Coefficients are stored internally and can be down loaded from
a host system or an EPROM. The latter requires no additional
support, and is used in stand alone applications. A full set of
coefficients is then automatically loaded at power on, or at the request
of the system. A single EPROM can be used to provide coefficients
for up to 16 devices.
CHANGE
COEFF
POWER-ON
RESET
RES
VP
16256
EPROM
GNDSCLK
EPROM
COEFFICIENTS
OUTPUT
DATA
CHANGE
COEFF
POWER-ON
RESET
RES
VP
16256
EPROM
GNDSCLK
OUTPUT
DATA
ANALOG
INPUT
EPROM
ADDR DATA
INPUT
DATA
Fig. 1 A dual filter application
ADDR DATA
ADC
CLKOP
Fig. 2 Typical system application
Pin identification diagram (top view)
See Table 1 for pin descriptions and Table 2 for pinout
FEATURES
■ Sixteen MACs in a Single Device
■ Basic Mode is 16-Tap Filter at up to 40MHz
Sample Rates
■ Programmable to give up to 128 Taps with
Sampling Rates Proportionally Reducing to 5MHz
■ 16-bit Data and 32-bit Accumulators
■ Can be configured as One Long Filter or Two Half-
Length Filters
■ Decimate-by-two Option will Double the Filter
Length
■ Coefficients supplied from a Host System or a local
DB15:0Delayed data output bus in the single filter mode. Connected to the data input bus of the next device in a
cascaded chain. Input to Network B in the dual filter modes.
X31:0Expansion input bus in the single filter mode. Connected to the previous filter output in a cascaded chain.
The inputs are not used on a single device system or on the Termination device in a cascaded chain. The
X bus provides the output from Network B in both dual modes.
F31:0In single filter mode this bus holds the main device output. In dual mode it holds the output from Network␣ A.
FENFilter enable. The first high present on an SCLK rising edge defines the first data sample. The control
register and coefficient memory must be configured before FEN is enabled. The signal must stay active
whilst valid data is being received and must be low if FRUN is high.
DFENDelayed filter enable. This output is connected to the Filter Enable input of the next device in a cascaded
chain when moving towards the termination device and with multiple stand-alone EPROM-loaded
configurations. It is used to coordinate the control logic within each device.
SWAPSelects either the upper or lower set of coefficients for Bank Swap. A low selects the lower bank, a high
the upper bank.
FRUNIn EPROM load mode, when high this signal allows continuous filter operations to occur without the need for
the initial FEN edge. If the device is not a single, interface or master device then this pin must be tied low.
DCLRA low on this signal on the SCLK rising edge will clear all the internal accumulators. DCLR need only remain
low for a single cycle, signal BUSY will indicate when the internal clearing is complete. After a clear the
device must be re-synchronised to the data stream using FEN. It is recommended that FEN is taken low
at the same time as clear. FEN may then be taken high to synchronise the data stream once BUSY has
returned low.
C15:016-bit coefficient input bus. In the Byte mode of operation, C15:8 have alternative uses as explained in the
text.
A7:0Coefficient address bus. In the EPROM mode A7:0 are address outputs for an EPROM. In the remote host
mode they are inputs from the host. A7 is not used when coefficients are loaded as 16-bit words.
CCSThis pin is similar in operation to A7:0 and provides a higher order address bit. When low the coefficients
are loaded, when high the control register is loaded.
WENIn the remote mode this pin is an input which when low enables the load operation. In the EPROM mode
it is an output which provides the write enable for other slave devices.
CSThis pin is always an input and must also be low for the internal write operation to occur.
BYTEWhen this pin is tied low, coefficients are loaded as two 8-bit bytes. When the pin is high they are loaded
as 16-bit words. In the EPROM mode this pin is ignored.
EPROMWhen this pin is tied low coefficients are loaded as bytes from an external EPROM. The device outputs
an address on A7:0. When the pin is high coefficients must be loaded from a remote master. They can then
be transferred individually rather than as a complete set.
SCLKThe main system clock; all operations are synchronous with this clock. The clock rate must be either 1, 2,
4, or 8 times the required data sampling rate. The factor used depends on the required filter length.
CLKOPThis output, when used to enable SCLK, can provide a data sampling clock. It has the effect of dividing
the SCLK rate by 1, 2, 4 or 8 depending on the filter mode selected.
OENTri-state enable for the F bus. When high the outputs will be high impedance. OEN is registered onto the
device and does not therefore take effect until the first SCLK rising edge
BUSYA high on this signal indicates that the device is completing internal operations and is not yet able to accept
new data. The signal is used during automatic EPROM loading, reset and accumulator clearing.
RESWhen this pin is low the control logic and accumulators are reset. In the EPROM mode it will initiate a load
sequence when it goes high.
NOTES
1. Unused buses (e.g. X31:0 when the device is configured in single or termination mode) can be set to any value. They should however be
maintained at a valid logic level to avoid an increase in power consumption.
2. To ensure correct input voltage thresholds are maintained all the VDD and GND pins must be connected to adequate power and ground planes.
Description
Table 1 Pin descriptions
2
Page 3
VP16256
Pin
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
Signal
V
DD
F0
F1
GND
F2
F3
V
DD
F4
F5
GND
F6
F7
V
DD
F8
GND
F9
F10
V
DD
F11
F12
GND
F13
F14
F15
V
DD
F16
F17
GND
F18
F19
V
DD
F20
F21
F22
F23
V
DD
F24
F25
GND
F26
V
DD
F27
Pin
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
Signal
F28
F29
GND
F30
F31
V
DD
FEN
DFEN
DCLR
GND
SWAP
GND
OEN
CLKOP
V
DD
DA0
V
DD
DA1
GND
DA2
V
DD
DA3
DA4
V
DD
DA5
GND
DA6
DA7
DA8
DA9
V
DD
DA10
GND
DA11
DA12
DA13
DA14
V
DD
DA15
GND
C0
C1
Pin
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
Signal
GND
C2
V
DD
C3
C4
C5
C6
V
DD
C7
GND
C8
C9
C10
GND
C11
C12
C13
V
DD
C14
V
DD
C15
GND
GND
WEN
CCS
CS
V
DD
RES
GND
SCLK
GND
V
DD
BYTE
EPROM
A0
V
DD
A1
GND
A2
A3
A4
V
DD
Pin
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
Signal
A5
A6
GND
A7
DB0
V
DD
DB1
GND
DB2
DB3
DB4
V
DD
DB5
GND
DB6
DB7
V
DD
DB8
V
DD
DB9
DB10
GND
DB11
DB12
V
DD
DB13
DB14
GND
DB15
V
DD
GND
BUSY
X0
V
DD
X1
GND
X2
V
DD
X3
X4
X5
X6
Pin
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
Signal
GND
X7
X8
V
DD
X9
GND
X10
X11
X12
V
DD
X13
X14
GND
X15
X16
X17
V
DD
X18
GND
X19
X20
X21
V
DD
X22
GND
X23
X24
X25
X26
GND
X27
V
DD
X28
X29
X30
GND
X31
V
DD
FRUN
GND
Table 2 VP16256 pinout (208-pin Power PQFP - GH208)
3
Page 4
VP16256
DA15:0F31:0OEN
SCLKFRUN
SWAP
A7:0
C15:0
CCS
WEN
CS
BYTE
EPROM
FEN
DFEN
DCLR
RES
COEFFICIENT
STORAGE
AND
CONTROL
CLKOPBUSY
Fig. 3 Block Diagram
OPERATIONAL OVERVIEW
The VP16256 is an application specific FIR filter for use in
high performance digital signal processing systems. Sampling
rates can be up to 40MHz. The device provides the filter
function without any software development, and the options
are simply selected by loading a control register. The device
can be user configured as either a single filter, or as two
separate filters. The latter can provide two independent filters
for the in-phase and quadrature channels after IQ splitting, or
can provide two filters in cascade for greater stop band
rejection.
The device operates from a system clock, with rates up to
40MHz. This clock must be 1, 2, 4, or 8 times the required
sampling frequency, with the higher multiplication rates
producing longer filter networks at the expense of lower
sampling rates. Devices can be connected in cascade to
produce longer filter lengths. This can be accomplished
without the need for any additional external data delays, and all
the single device options remain available.
Continuous inputs are accepted, and continuous results
produced after the internal pipeline delay. Connection can be
made directly to an A-D converter. The filter operation can be
synchronised to a Filter Enable signal (FEN) whose positive
going edge marks the first data sample. The internal multiplier
accumulator array can be cleared with a dedicated input. This
is necessary if erroneous results obtained during the normal
data ‘flush through’ are not permissible in the system.
NETWORK
A
DUAL
MUX
NETWORK
B
SINGLE
MODE
DB15:0X31:0
MODE
Coefficients can be loaded from a host system using a
conventional peripheral interface and separate data bus.
Alternatively, they can be loaded as a complete set from a byte
wide EPROM. The device produces addresses for the EPROM
and a BUSY output indicates that the transfer is occurring. Up
to sixteen devices can have their coefficients supplied from a
single EPROM. These devices need not necessarily be part of
the same filter network.
Each of the filter networks shown in Fig. 3 contains eight
systolic multiplier accumulator stages; an example with four
stages is shown in Fig. 4. Input data flows through the delay
lines and is presented for multiplication with the required
coefficient. This is added to either the last result from this
accumulator or the result from the previous accumulator. The
filter results progress along the adders at the data sample rate.
If the sample rate equals SCLK divided by four, for example,
then the accumulated result is passed onto the next stage
every fourth cycle. The structure described is highly efficient
when used to calculate filtered results from continuous input
data.
A comprehensive digital filter design program is available
for PC compatible machines. This will optimise the filter
coefficients for the filter type required and number of taps
available at the selected sample rate within the VP16256
device. An EPROM file can be automatically generated in
Motorola S-record format.
4
Page 5
VP16256
DATA
OUT
ACCUMULATE
EXPANSION
IN
DATA
DELAY LINE
ADDER
2
1
Z
COEFF
RAM
DATA
DELAY LINE
COEFF
ADDER
2
1
Z
RAM
Fig. 4 Filter network diagram
SINGLE FILTER OPTIONS
When operating as a single filter the device accepts data on
the 16-bit DA bus at the selected sample rate, see Figs. 5 and 6.
Results are presented on the 32-bit F bus, which may be
tristated using the OEN input. Signal OEN is registered onto the
device and does not therefore take effect until the first SCLK
rising edge. Devices may be cascaded this allows filters with
more taps than available from a single device. To accomplish
this two further buses are utilised. The DB bus presents the
input data to the next device in cascade after the appropriate
delay, while, partial results are accepted on the
X bus.
Single filter mode is selected by setting control register bit
15 to a one. The required filter length is then selected using
control register bits 14 and 13 as summarised in Table 3. The
options define the number of times each multiplier accumulator
is used per sample clock period. This can be once, twice, four
times, or eight times.
In addition a normal/decimate bit (CR12) allows the filter
length to be doubled at any sample rate. This is possible when
the filter coefficients are selected to produce a low pass filter,
since the filtered output would then not contain the higher
frequency components present in the input. The Nyquist
criterion, specifying that the sampling rate must be at least
double the highest frequency component, can still then be
satisfied even though the sampling rate has been halved.
DATA
DELAY LINE
COEFF
ADDER
2
1
Z
RAM
DATA
DELAY LINE
COEFF
ADDER
2
1
Z
RAM
DATA
IN
RESULT
OUT
The system clock latency for a single device is shown in
Table 3. This is defined as the delay from a particular data
sample being available on the input pins to the first result
including that input appearing on the output pins. It does not
include the delay needed to gather N samples, for an N tap filter,
before a mathematically correct result is obtained.
SPEED MODE 2 (Data input and output at a quarter f
SCLK
FEN
DA15:0
123
AB
4523 24
A′B′C′
First valid result
including data point (A)
available after edge 16
) CR14:13 = 01, CR12 = 0
A′B′
First valid result
including data point (A)
available after edge 16
) CR14:13 = 10, CR12 = 0
SCLK
2021 22
313233
A′′B′′C′′
3435
D′′E′′
Valid result contains
the first 16 data points
available after edge 31
787980
A′′B′′C′′
8182
Valid result contains
the first 32 data points
available after edge 78
272 273
274 275 276
F31:0
CLKOP
First data point (A)
is read on edge 1
SPEED MODE 3 (Data input and output at an eighth f
SCLK
FEN
DA15:0
F31:0
CLKOP
SPEED MODE 1 Decimating (Data input at half f
SCLK
FEN
DA15:0
F31:0
123
A
45
First data point (A)
is read on edge 1
123
AB
6789
B
SCLK
181920
A′B′
First valid result
including data point (A)
available after edge 20
) CR14:13 = 11, CR12 = 0
SCLK
2425 26
A′B′
27 28
29 30 3132
First valid result
including data point (A)
available after edge 24
and output at a quarter f
2122
B′
SCLK
A′′B′′
Valid result contains
the first 64 data points
available after edge 272
1040
1041 1042 1043
A′′
Valid result contains
the first 128 data points
available after edge 1040
) CR14:13 = 01, CR12 = 1.
142143144
B′′
145
CLKOP
First data point (A)
is read on edge 1
First valid result
including data point (A)
available after edge 18
Valid result contains
the first 64 data points
available after edge 142
Fig. 6 Single Filter timing diagrams
6
Page 7
DUAL INDEPENDENT FILTER OPTIONS
When operating as two independent filters the device
accepts 16 bit data on both the DA and DB buses at the selected
sample rate, see Fig. 7. Results are available from both the F
and X buses. The F bus may be tristated using the OEN input.
Signal OEN is registered onto the device and does not therefore
take effect until the first SCLK rising edge
Each filter must be configured in the same manner, and
multiple device expansion is not possible due to the pin re-
organization. The latter requirement can, of course, still be
satisfied by several devices configured as single filters.
Dual independent filter mode is selected by setting control
register bits 15 and 4 to a zero. The required filter length is
selected using control register bits 14 and 13 as summarised in
Table 4, which also shows the resulting latency. As in single
filter mode normal or decimate-by-two operation can be
selected using control register bit 12.
When operating as two cascaded filters the device accepts
16 bit data on the DA bus at the selected sample rate. Results
are presented on the 32-bit X bus, see Fig. 8. Each filter must
be configured in the same manner. Multiple device expansion
is not possible in this mode.
Dual cascaded filter mode is selected by setting control
register bit 15 to a zero and bit 4 to a one. The required filter
length is selected using control register bits 14 and 13 as
summarised in Table 4, which also shows the resulting latency.
The decimate-by-two option is not available in this mode.
The data for the second filter network is extracted as the
middle 16 bits from the first networks accumulated result. For
successful operation the first filter network must have unity
gain. See the section on filter accuracy for more details.
The cascade option is used to increase the stop band
rejection in a practical filter application. Theoretically,
increasing the number of taps in an FIR filter will increase the
stop band rejection, but this assumes floating point calculations
with no accuracy limitations. In practice, with fixed point
arithmetic, better performance is achieved with two smaller
filters in series.
Table 4. Dual Filter options
DA15:0F31:0OEN
NETWORK
A
DUAL
MUX
NETWORK
B
SINGLE
MODE
MODE
DA15:0F31:0OEN
NETWORK
A
DUAL
MUX
NETWORK
B
SINGLE
MODE
MODE
DB15:0X31:0
DB15:0X31:0
Fig. 8 Dual cascaded filter bus utilisationFig. 7 Dual independent filter bus utilisation
7
Page 8
VP16256
FILTER ACCURACY
Input data and coefficients are both represented by 16-bit
two’s complement numbers. The coefficients are converted to
twelve bits by rounding towards zero. This is achieved as
follows. If the coefficient is positive then the least significant
4 bits are discarded. If the coefficient is negative then the
logical ‘OR’ of the least significant 4 bits are added to the
remainder of the word. Twelve bit coefficients can be used
directly provided the least significant four bits are set to zero.
The FIR filter results are calculated using a multiplier
accumulator structure as shown in Fig. 9. The truncation and
word growth allowed for in the data path are explained in
Fig.␣ 10. The 16-bit data and 12-bit coefficient inputs (each with
one sign bit before the binary point), are presented to the
multiplier. This produces a 28-bit result with two bits before the
binary point. Producing the full 28-bit result ensures that if both
the data and coefficients are set to logic 1 a valid result is
generated. Prior to entering the accumulator the least
significant 4 bits of the multiplier result are truncated and the
resulting 24 bits sign extended to 32 bits. The final accumulator
result is 32 bits with 10 bits before the binary point. Thus 9 bits
of word growth are allowed within the accumulator. All
accumulator bits are made available on the output pins.
In cascade mode the middle 16 bits from the network A
accumulator are fed round to the network B data inputs, see
Fig. 10.
INPUT DATA
COEFFICIENT
ADDER
ACCUMULATOR
RESULT
Fig. 9 Multiplier Accumulator
INPUT DATA
COEFFICIENT
MULTIPLIER RESULT
ACCUMULATOR RESULT
SSSSSSSSS0
ACCUMULATOR RESULT
S876543210
S
S
S0-26
-14-13-12-11-10-9-8-7-6-5-4-3-2-1-15
-11-10-9-8-7-6-5-4-3-2-1
Multiplication producing a 28-bit result
Sign extended to 32 bits, least significant 4 bits truncated
These bits are passed to filter network B during cascade mode
Fig. 10 Filter accuracy
-25-24-23-22-14-13-12-11-10-9-8-7-6-5-4-3-2-1
-22-14-13-12-11-10-9-8-7-6-5-4-3-2-1
-22-14-13-12-11-10-9-8-7-6-5-4-3-2-1
8
Page 9
CASCADING DEVICES
When the filter requirements are beyond the capabilities
of a single device, it is possible to connect several devices in
cascade increasing the number of taps available at the required
sample rate. Within each device all filter length, decimate, and
bank swap options are still possible, but each device in the
chain must be similarly programmed and configured as a single
filter.
The number of devices which can be cascaded is only
limited by the possibility of overflow in the 32-bit intermediate
accumulations. If more than sixteen devices are cascaded in
auto EPROM load mode, then an additional EPROM will be
needed.
In modes where the data sample rate does not equal the
clock rate. Then the cascade arrangement shown in Fig. 11 is
used. Delayed data is passed from device to device in one
direction, while intermediate results flow in the opposite
direction. The interface device both accepts the input data and
produces the final result. It is not necessary for each device to
know its exact position in the chain, but the device which
receives the input data and produces the final result must be
identified, as must the device which terminates the chain. The
former is known as the Interface device and the latter as the
Termination device, all others are Intermediate devices.
Control Register bits CR11:10 are used to define these
positions as shown in Table 6.
The control logic in each of the devices must be
synchronised with respect to the Interface device. This is
achieved by connecting the Delayed Filter Enable output
(DFEN) to the Filter Enable input (FEN) of the next device in the
chain. The Interface device, itself, needs a FEN signal
produced by the system, unless in EPROM mode, where FRUN
VP16256
may be pulled high. Even when the latter is true, the FEN
connection must be made between the remaining devices in
the chain. By effectively extending the filter length, the cascade
latency is therefore the same as for the single device in the
same mode. Once the pipeline is initially flushed the latency is
as given in Table 3.
When devices are cascaded such that the data sample rate
equals the clock rate, (Control register bits 14:13 = 00), then a
different cascade configuration must be used. This is shown in
Fig. 12. The number of devices that can be cascaded is, again,
only limited by the 32-bit accumulators.
In this mode the delayed data is passed from device to
device in the same direction as the intermediate results. The
device which accepts the input data is now at the opposite end
of the chain to the device which produces the final result. The
control logic in each of the devices must be synchronised this
is achieved by connecting all the device FEN inputs to the
global FEN. The cascade latency for the complete filter is built
up from the 12 delays from the termination device, 8 delays
from the interface device and additional intermediate devices
each adding 4 delays.
AVAILABLE OPTIONS
No more than 128 coefficients can be stored internally. This
limits the filter length / decimate / bank swap options to those
which do not require more than that number of coefficients.
Thus when a filter with 128 taps is to be implemented in a single
device, it is not possible to decimate or bank swap. When a filter
with 64 taps is implemented, decimate or bank swap are
possible, but not both. With all other filter lengths, all decimate
and bank swap configurations are possible.
DATA IN FEN
DA15:0
DB15:0
DA15:0
DB15:0
DA15:0
DB15:0
FENF31:0
INTERFACE
DEVICE
DFEN X31:0
FENF31:0
INTERMEDIATE
DEVICE
DFEN X31:0
FENF31:0
TERMINATION
DEVICE
DFEN X31:0
RESULTS
OUT
DB15:0
DA15:0
DB15:0
DA15:0
DB15:0
DA15:0
DATA IN
FENF31:0
INTERFACE
DEVICE
DFEN X31:0
FENF31:0
INTERMEDIATE
DEVICE
DFEN X31:0
FENF31:0
TERMINATION
DEVICE
DFEN X31:0
OUT
FENRESULTS
Fig. 12 Full speed cascaded systemFig. 11 Three-device cascaded system
9
Page 10
VP16256
127
127
64
63
0
0
128 TAP
NO SWAP
POSSIBLE
64 TAP
FILTER B
NO SWAP
POSSIBLE
FILTER A
NO SWAP
POSSIBLE
127
64
63
127
96
95
64
63
32
31
0
0
UPPER
BANK
LOWER
BANK
B UPPER
BANK
A UPPER
BANK
B LOWER
BANK
A LOWER
BANK
127
64
63
32
31
0
(a) Single Filters
127
64
63
48
47
32
31
16
15
0
(b) Dual Filters
NOT USED
UPPER
BANK
LOWER
BANK
NOT USED
B UPPER
A UPPER
B LOWER
A LOWER
127
32
31
16
15
127
32
31
0
0
16 TAP32 TAP64 TAP
NOT USED
UPPER
BANK
LOWER
BANK
8 TAP16 TAP32 TAP
NOT USED
B UPPER
A UPPER
B LOWER
A LOWER
Fig. 13 Coefficient memory map
FILTER CONTROL
Two control modes are available selected by input signal
FRUN. In EPROM load mode, when FRUN is tied high the device
will commence operation once the coefficients have been
loaded. The CLKOP signal indicates when new input data is
required and that new results are available, see Fig. 6. In both
EPROM and remote master load modes, when FRUN is tied low
filter operation will not commence until a high has been detected
on signal FEN. This mode allows synchronisation to an existing
data stream. FEN should be taken high when the first valid data
sample is available so that both are read into the device on the
next SCLK rising edge.Proper device operation requires FEN to
be low during control register and coefficient loading both in
EPROM mode and Remote Master mode. After loading
coefficients, filter operation is determined by FRUN and FEN as
described above.
During device reset RES must be held low for a minimum of
16 SCLK cycles. After a reset the control register returns to its
default state of 8C80
. This places the device into the following
HEX
mode :
●
Single filter
●
Sample rate equal to the clock rate
10
●
Non-decimating
●
A single device (Not in a cascade chain)
●
Bank swap selected by bit in the control register
COEFFICIENT BANK SWAP
A Bank Swap feature is provided which allows all coefficients
to be simultaneously replaced with a different set. A bit in the
Control Register (CR7) allows the swap to be controlled by either
input signal SWAP or Control Register bit (CR6). The latter is
useful if the device is controlled by a microprocessor, when
driving a separate pin would entail additional address decoding
logic and an external latch.
If SWAP or bit CR6 is low, the coefficients used will be those
loaded into the lower banks illustrated in Fig. 13. When the
SWAP or CR6 is high, the upper banks are used.
The actual swap will occur when the next sampling clock
active going transition occurs. This can be up to seven system
clocks later than the swap transition, and is filter length
dependent. The first valid filtered output will then occur after the
pipeline latencies given in Tables 3 and 4.
By setting a bit in the Control Register it is possible to bank
Page 11
swap on every data sampling clock. This function does not
depend on the status of SWAP or bit, and the lower bank will be
initially selected after FEN goes active. The option can be used
to implement filters with complex coefficients.
LOADING COEFFICIENTS
When the device is to operate in a stand alone application
then the coefficients can be down loaded as a complete set from
a previously programmed EPROM. Alternatively if the system
contains a microprocessor they can be individually transferred
from a remote master under software control. In any mode the
system clock must be present and stable during the transfer, and
the addressing scheme is such that the least significant address
specifies the coefficient applied to the first multiplier seen by
incoming data.
The addresses used during the load operation are those
illustrated in Fig. 13. The Control Register is loaded when CCS
is high. In byte mode address A0 is used to select the portion of
control register loaded, otherwise the address bits are redundant.
VP16256
When an EPROM is used to provide coefficients, this redundancy
causes the number of locations needed for any device to be
double that for the coefficients alone.
AUTO EPROM LOAD
When EPROM is tied low, the VP16256 assumes the role of
a master device in the system and controls the loading of
coefficients from an external EPROM, see Fig.15. A load
sequence commences when the RES input goes high, and will
continue until every coefficient has been loaded. BUSY goes high
to indicate that a load sequence is occurring and the filter output
is invalid. The device will not commence a filter operation until the
FEN edge is received after BUSY has gone low. This requirement
can be avoided if FRUN is tied high.
The address bus pins become outputs on the Master device,
and produce a new address every four system clock periods. This
four clock interval, minus output delays and the data set up time,
defines the available EPROM access time.
The coefficients are always loaded as bytes. The state of the
BYTE pin on the master device is ignored. This arrangement also
allows the eight most significant coefficient bus pins (C15:8) to be
used for other purposes as described later. Since the 16-bit
coefficients are loaded in two bytes the A0 pin specifies the
required byte. The maximum number of stored coefficients is
128, eight address outputs are therefore provided for the
EPROM. These eight outputs from the Master must also drive the
address inputs on the slave devices.
SCLK
A7:0
CCS
RES
BUSY
SCLK
A7:0
CCS
C15:12
0001
LOAD MASTER CONTROL
REGISTER
0001
LOAD FIRST COEFFICIENT
VALID ADDRVALID ADDR
LOAD LAST COEFFICIENT
00
Fig. 14a EPROM load sequence
FEFF00010001FEFF00010001
0000000100010010
LOAD LAST
MASTER
COEFFICIENT
LOAD SLAVE 1
CONTROL
REGISTER
LOAD SLAVE 1
COEFFICIENTS
LOAD LAST
SLAVE 1
COEFFICIENT
LOAD SLAVE 2
CONTROL
REGISTER
LOAD SLAVE 2
COEFFICIENTS
Fig. 14b EPROM load sequence for a cascaded system
Fig. 14 EPROM load sequence timing diagrams
11
Page 12
VP16256
EPROM
ADDRESS
LSB
MSB
DATA
A7:0
CCS
C15:12
C7:0
A7:0
CCS
C15:12
C7:0
A7:0
CCS
C15:12
C7:0
VP16256
MASTER
VP16256
SLAVE 1
VP16256
SLAVE 2
C11:8
CS
EPROM
BYTE
WEN
C11:8
CS
EPROM
BYTE
WEN
C11:8
CS
EPROM
BYTE
WEN
(2 SLAVES)
0010
GND
GND
GND
0001
GND
V
DD
GND
0010
GND
V
DD
GND
Fig. 15 Three device auto EPROM load
When the filter length is less than the maximum, the
VP16256 will only transfer the correct number of coefficients,
and one or more significant address bits will remain low.
Sufficient coefficients are always loaded to allow for a possible
Bank Swap to occur, and the EPROM allocation must allow for
this even if the feature is not to be used. Table 5 shows the
number of coefficients loaded for each of the modes.
If several devices are cascaded, only one device assumes
the role of the Master by having its EPROM pin grounded. It
produces a WEN signal for the other devices, plus four higher
order address outputs on C15:12, see Fig. 14. The extra
address bits on C15:12 define separate areas of EPROM,
containing coefficients for up to fifteen additional devices. The
least significant block of memory must always be allocated to
the Master device. The additional devices need not in practice
be all part of the same cascaded chain, but can consist of
several independent filters. They must, however, all have their
BYTE pins tied low. FRUN can still be used to start these
independent filters after all the devices have been loaded. In
this case, however, each slave FEN pin should be driven by
DFEN from the master device.
When one EPROM is supplying information for several
devices, some means of selectively enabling each additional
device must be provided. This is achieved by using the C11:8
pins on the slave devices as binary coded inputs to define one
to fifteen extra devices. These coded inputs always
correspond to the block address used for the segment of
EPROM allocated to that device. Code ‘all zeros’ must not be
used since the Master device has implied use of the bottom
segment. This is necessary since the C11:8 pins are
alternatively used on the Master device to define the number
of devices supported by the EPROM.
In addition to providing the most significant addresses to
the EPROM, the C15:12 address outputs from the master
device must also drive the C15:12 inputs on the slave devices.
These C15:12 inputs are internally compared to the C11:8
inputs to decide if that device is currently to be loaded. This
approach avoids the need for external decoders and makes
the CS input redundant. This input, however, must be tied low
on every device in an EPROM supported system.
The Control Coefficient pin (CCS) is used to define when
the control register is to be loaded. It becomes an output on the
Master device which provides an EPROM address bit next in
significance above A7:0, and also drives the CCS inputs on the
slave devices. This output is high for the first two EPROM
transfers in order to access the control information, and then
remains low whilst the coefficients are loaded. This control
information is thus not stored adjacent to the coefficients within
the EPROM, and in fact the EPROM must provide twice the
storage necessary to contain the coefficients alone. All but two
of the bytes in the additional half are redundant. See Fig.16 for
the EPROM memory map.
12
Page 13
DEVICE 2
DEVICE 1
COEFFICIENTS
PER DEVICE
3264128
511
255
194
193
192
191
386
385
384
383
128
127
256
255
66
65
64
63
130
129
128
127
0
VP16256
ControlNumber of
RegisterCoefficients
Loaded
1023
NOT USED
770
769
CONTROL REG
768
767
FILTER
COEFFICIENTS
512
511
NOT USED
258
257
CONTROL REG
256
255
FILTER
COEFFICIENTS
0
0
NOTE:
The EPROM memory map assumes that, for the 32 and 64
coefficient per device options, the unused address pins are
unconnected. If all address pins are connected as shown in
Fig. 15 then the 128 coefficients per device memory map
column should be used. Only those coefficients required will be
read, hence the upper portions of the coefficient address space
will be ignored.
When a remote master is used to load coefficients, EPROM
must be tied high and a conventional peripheral interface is then
provided. It is not possible, however, to read coefficients
already stored. The master supplies an address and data bus,
and writes to the VP16256 occur under the control of
synchronous CS and WEN inputs. The Coefficient Control
Register pin (CCS) must be driven by a master address line
higher in significance than A7:0. Both the WEN and CS signals
must be low for the load operation to occur. When loading the
control register the CS signal must be held low for a further 2
cycles, see Fig. 19. Since the internal write operation is actually
performed with the system clock, it is necessary for the clock to
be present during the transfer.
The BYTE input defines whether coefficients are loaded as
a single 16 bit word or two 8-bit bytes. The latter saves on
connections to the remote master. Address bits A7:0 are used
in byte mode. 16-bit word mode uses bits A6:0, A7 being
redundant. When writing in byte mode the least significant byte
(A0 = 0) must be written first followed by the most significant
byte (A0 = 1).
In byte mode the internal comparison between C15:12 and
C11:8 is made, regardless of the state of EPROM. For this
reason pins C15:8 should all be tied low when a remote master
is used with byte transfers. This ensures that the internal
comparison gives equality and allows the load operation to
occur.
The address and coefficient buses plus the WEN and CS
signals must all meet the specified set up and hold times with
respect to the system clock, see Fig 19 and Switching
Characteristics. This synchronous interface is optimum for the
majority of high end applications, when individual coefficients
must be updated at sample clock rates. However, if the
coefficients are to be loaded under software control from a
general purpose microprocessor, the processor’s WRITE
STROBE will probably be asynchronous with the SCLK clock
used by the VP16256. In this case external synchronising logic
is needed, as shown in Fig.17.
Fig. 18 shows the recommended loading sequence and
filter operation initiation. The simplest technique is to reset the
device prior to loading a set of coefficients. Coefficients may be
loaded once BUSY returns low or 22 cycles after RES is taken
high.
When loading a device from a remote master the control
register must be loaded first followed by the filter coefficients.
Fig. 18 shows the required loading sequence, two examples
are given one for byte mode the other for word mode. A gap of
at least one cycle must be left after loading the control register
before loading the first coefficient.
Filter operations are started by presenting the first data
word at the same time as raising signal FEN; FRUN should
always be low.
13
Page 14
VP16256
SCLK
PROCESSOR WRITE STROBE
SCLK
PROCESSOR WRITE STROBE
REGISTERED STROBE
VP16256 WEN
ADDRESS/DATA
A7:0/C15:0
ADDRESS
DATA
REGISTERED INTO
SYNCHRONISATION
REGISTER
DQ
COEFFICIENT
LOAD
STATE MACHINE
WEN
VP
16256
HOLD
CIRCUIT
STROBE
ADDRESS AND DATA VALID
A7:0 AND C15:0 HELD AFTER FALLING EDGE OF WRITE STROBE
STROBE
REGISTERED
INTO STATE
MACHINE
A7:0
C15:0
COEFFICIENT
INPUT CLOCKED
TO VP16256 ON
THIS EDGE
Fig. 17 Remote Master synchronisation
14
Page 15
VP16256
DEVICE RESET
12345671617373839
SCLK
RES
BUSY
RES must be held low
for 16 cycles
BYTE WIDE COEFFICIENT LOAD
1234567
SCLK
CCS
A7:0
C15:0
CS
WEN
Control register loaded
with CCS high
0001000102033E3F
00AC100020000002
Blank cycles Coefficients loaded into the required address location.
BUSY goes activeCoefficient loading may start
86768697071
This example uses byte wide loading (
once BUSY has returned low
CS
BYTE
held low).
must be maintained
for two cycles
WORD WIDE COEFFICIENT LOAD
1234567
SCLK
CCS
A7:0
C15:0
CS
WEN
Control register loaded
with CCS high
000102031E1F
AC000020 00300040 0050001F0200
00
0010
Blank cycles Coefficients loaded into the required address location.
The first result available. CLKOP
indicates the first active result cycle
Fig. 18 Device startup timing diagrams
15
Page 16
VP16256
CONTROL REGISTER
The internal operation of the VP16256 is controlled by the
status of a 16-bit control register. In the dual filter modes both
networks are controlled by the same register. The significance
of the various bits are shown in Table 6. Tables 7 and 8 define
the control register bit interdependence for the filter and bank
swapping modes.
The control register is double buffered. This allows the
writing of a new control word without affecting the current
operation of the device. To activate the new control register
after it has been written to the device the bank swap signal must
be toggled. After a reset the active control register is loaded
directly and bank swap need not be used.
Bits Decode Function
15 0Dual filter mode
15 1Single filter mode
14:13 00Sample rate is the system clock
14:13 01Sample rate is half the system clock
14:13 10Sample rate is quarter the system clock
14:13 11Sample rate is eighth the system clock
7 0Bank swap is controlled by input pin
7 1Bank swap is controlled by Bit 6
6 0Lower bank if bit 7 is set
6 1Upper bank if bit 7 is set
5 0Normal Bank Swap
5 1Bank swap on every sample clock
4 0Two independent filters
4 1Two filters in cascade
3:0These bits MUST be at logical zero
Control
RegisterFunction
Bits
154
00Two independent filters
01Two filters in cascade
1XSingle Filter
Table 7 Control register filter mode bits
Control
Register
Bits
Function
765
0X0Control by input pin
100Lower bank selected
110Upper bank selected
XX1Swap on every sample clock
Table 8 Control register bank swap bits
Table 6 Control register bit allocation
ABSOLUTE MAXIMUM RATINGS (Note 1)
Supply voltage V
Input voltage V
Output voltage V
Clamp diode current per pin I
Static discharge voltage (HBM)500V
Storage temperature T
DD
IN
OUT
S
(see note 2)18mA
K
Ambient temperature with power applied T
Junction temperature with power applied T
20·5V to 17·0V
20·5V to VDD 10·5V
20·5V to VDD 10·5V
265°C to1150°C
0°C to170°C
AMB
J
120°C
Package power dissipation2500mW
Thermal resistance, junction-to-case θ
JC
1·0 °C/W
NOTES
1. Exceeding these ratings may cause permanent damage.
Functional operation under these conditions is not implied.
2. Maximum dissipation should not be exceeded for more
than1 second, only one output to be tested at any one time.
3. Exposure to absolute maximum ratings for extended
periods may affect device reliablity.
4. Current is defined as negative into the device.
5. The θ
data assumes that heat is extracted from the
JC
bottom of the package via the integral heat sink.
6. The metal ‘heat slug’ in the base of the package is
connected to the substrate, which is at V
potential.
DD
16
Page 17
VP16256
SCLK
CCS
CS
WEN
C15:0
A7:0
t
VALID ADDRESS
HS
VALID DATA
t
HH
(a) Coefficient Write
SCLK
A7:0
C15:12
CCS
C7:0
SCLK
t
CL
CCS
CS
WEN
C15:0
A7:0
t
VALID ADDRESS
HS
VALID DATA
t
HH
(b) Control Register Write
Fig. 19 Remote Master setup and hold timings
∼
CLK 1CLK 2CLK 9
t
CD
VALID ADDRESS
VALID ADDRESS
∼
∼
∼
∼
∼
∼
∼
∼
∼
∼
∼
tHSt
∼
∼
HH
∼
∼
t
CH
t
CD
t
HH
SCLK
OEN
F31:0
OUTPUT PINS
INPUT PINS
Fig. 20 EPROM load timings
t
t
OS
t
CD
VALID DATA
VALID DATAVALID DATAVALID DATA
OH
t
CZF
HIGH Z
Fig. 21 Operating timings
t
CL
t
CH
t
VALID DATA
CVF
tHSt
HH
17
Page 18
VP16256
ELECTRICAL CHARACTERISTICS
The Electrical Characteristics are guaranteed over the following range of operating conditions, unless otherwise stated:
Output high voltage
Output low voltage
Input high voltage (CMOS)
Input low voltage (CMOS)
Input high voltage (TTL)
Input low voltage (TTL)
Input leakage current
Input capacitance
Output leakage current
Output short circuit current
Symbol
V
OH
V
OL
V
IH
V
IL
V
IH
V
IL
I
IN
C
IN
I
OZ
I
OS
Switching Characteristics (see Figs. 19, 20 and 21)
CharacteristicSymbol
Input signal setup to clock rising edge
Input signal hold after clock rising edge
OEN set up to clock rising edge
OEN hold after clock rising edge
Clock rising edge to output signal valid
Clock frequency
Clock high time
Clock low time
Clock to data valid F bus from high impedance
Clock to data high impedance F bus
V
Information relating to products and services furnished herein by Mitel Corporation or its subsidiaries (collectively “Mitel”) is believed to be reliable. However, Mitel assumes no
liability for errors that may appear in this publication, or for liability otherwise arising from the application or use of any such information, product or service or for any infringement of
patents or other intellectual property rights owned by third parties which may result from such application or use. Neither the supply of such information or purchase of product or
service conveys any license, either express or implied, under patents or other intellectual property rights owned by Mitel or licensed from third parties by Mitel, whatsoever.
Purchasers of products are also hereby notified that the use of product in certain ways or in combination with Mitel, or non-Mitel furnished goods or services may infringe patents or
other intellectual property rights owned by Mitel.
This publication is issued to provide information only and (unless agreed by Mitel in writing) may not be used, applied or reproduced for any purpose nor form part of any order or
contract nor to be regarded as a representation relating to the products or services concerned. The products, their specifications, services and other information appearing in this
publication are subject to change by Mitel without notice. No warranty or guarantee express or implied is made regarding the capability, performance or suitability of any product or
service. Information concerning possible methods of use is provided as a guide only and does not constitute any guarantee that such methods of use will be satisfactory in a specific
piece of equipment. It is the user’s responsibility to fully determine the performance and suitability of any equipment using such information and to ensure that any publication or
data used is up to date and has not been superseded. Manufacturing does not necessarily include testing of all functions or parameters. These products are not suitable for use in
any medical products whose failure to perform may result in significant injury or death to the user. All products and materials are sold and services provided subject to Mitel’s
conditions of sale which are available on request.
M Mitel (design) and ST-BUS are registered trademarks of MITEL Corporation
Mitel Semiconductor is an ISO 9001 Registered Company
Copyright 1999 MITEL Corporation
All Rights Reserved
Printed in CANADA
TECHNICAL DOCUMENTATION - NOT FOR RESALE
Loading...
+ hidden pages
You need points to download manuals.
1 point = 1 manual.
You can buy points or you can get point for every manual you upload.