ChipFind - документация

Электронный компонент: VP16256-27CG

Скачать:  PDF   ZIP
VP16256
Programmable FIR Filter
Advance Information
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 decimate-
by-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.
PIN 1 IDENT
PIN
208
PIN 1
GH208
Pin identification diagram (top view)
See Table 1 for pin descriptions and Table 2 for pinout
Fig. 2 Typical system application
FEATURES
s
Sixteen MACs in a Single Device
s
Basic Mode is 16-Tap Filter at up to 40MHz
Sample Rates
s
Programmable to give up to 128 Taps with
Sampling Rates Proportionally Reducing to 5MHz
s
16-bit Data and 32-bit Accumulators
s
Can be configured as One Long Filter or Two Half-
Length Filters
s
Decimate-by-two Option will Double the Filter
Length
s
Coefficients supplied from a Host System or a local
EPROM
s
208-Pin Plastic PowerQuad PQ2 Package
ORDERING INFORMATION
VP16256-27/CG/GH1N 27MHz, Commercial plastic
PowerQuad PQ2 package (GH208)
VP16256-40/CG/GH1N 40MHz, Commercial plastic
PowerQuad PQ2 package (GH208)
APPLICATIONS
s
High Performance Commercial Digital Filters
s
Matrix Multiplication
s
Correlation
s
High Performance Adaptive Filtering
Supersedes August 1997 version, DS4548 - 3.2
DS4548 - 4.0 August 1998
Fig. 1 A dual filter application
ADDR DATA
EPROM
EPROM
GND
SCLK
RES
CHANGE
COEFF
POWER-ON
RESET
VP
16256
OUTPUT
DATA
INPUT
DATA
ADDR DATA
EPROM
GND
SCLK
RES
CHANGE
COEFF
POWER-ON
RESET
VP
16256
OUTPUT
DATA
ADC
COEFFICIENTS
EPROM
CLKOP
ANALOG
INPUT
2
VP16256
DA15:0
16-bit data input bus to Network A.
DB15:0
Delayed 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:0
Expansion 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:0
In single filter mode this bus holds the main device output. In dual mode it holds the output from Network A.
FEN
Filter 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.
DFEN
Delayed 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.
SWAP
Selects either the upper or lower set of coefficients for Bank Swap. A low selects the lower bank, a high
the upper bank.
FRUN
In 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.
DCLR
A 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:0
16-bit coefficient input bus. In the Byte mode of operation, C15:8 have alternative uses as explained in the
text.
A7:0
Coefficient 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.
CCS
This 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.
WEN
In 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.
CS
This pin is always an input and must also be low for the internal write operation to occur.
BYTE
When 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.
EPROM
When 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.
SCLK
The 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.
CLKOP
This 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.
OEN
Tri-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
BUSY
A 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.
RES
When 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.
Signal
Description
Table 1 Pin descriptions
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 V
DD
and GND pins must be connected to adequate power and ground planes.
3
VP16256
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
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
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
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
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
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
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
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
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
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
Table 2 VP16256 pinout (208-pin Power PQFP - GH208)
4
VP16256
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.
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.
SWAP
A7:0
C15:0
CCS
WEN
CS
BYTE
EPROM
FEN
DFEN
DCLR
RES
COEFFICIENT
STORAGE
AND
CONTROL
SCLK
FRUN
CLKOP
BUSY
DA15:0
F31:0
OEN
NETWORK
A
NETWORK
B
DUAL
MODE
SINGLE
MODE
MUX
DB15:0
X31:0
5
VP16256
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.
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.
CR
Input
Output
Filter
Setup
14 13 12
Rate
Rate
Length
Latency
0
0
0
SCLK
SCLK
16 Taps
16
0
0
1
SCLK
SCLK/2
32 Taps
17
0
1
0
SCLK/2
SCLK/2
32 Taps
16
0
1
1
SCLK/2
SCLK/4
64 Taps
18
1
0
0
SCLK/4
SCLK/4
64 Taps
20
1
0
1
SCLK/4
SCLK/8
128 Taps
24
1
1
0
SCLK/8
SCLK/8
128 Taps
24
Table 3 Single Filter options
Fig. 5 Single Filter bus utilisation
DATA
DELAY LINE
DATA
OUT
COEFF
RAM
ADDER
Z
2
1
DATA
DELAY LINE
COEFF
RAM
ADDER
Z
2
1
DATA
DELAY LINE
COEFF
RAM
ADDER
Z
2
1
DATA
DELAY LINE
COEFF
RAM
ADDER
Z
2
1
ACCUMULATE
EXPANSION
IN
DATA
IN
RESULT
OUT
DA15:0
F31:0
OEN
NETWORK
A
NETWORK
B
DUAL
MODE
SINGLE
MODE
MUX
DB15:0
X31:0
6
VP16256
SPEED MODE 0 (Data input and output at f
SCLK
) CR14:13 = 00, CR12 = 0. CLKOP held high.
1
2
3
A
B
C
16
17
18
A
B
C
31
32
33
A
B
C
34
35
D
E
SCLK
FEN
DA15:0
F31:0
CLKOP
SPEED MODE 1 (Data input and output at half f
SCLK
) CR14:13 = 01, CR12 = 0
1
2
3
A
B
16
17
18
A
B
78
79
80
A
B
C
81
82
SCLK
FEN
DA15:0
F31:0
CLKOP
First data point (A)
is read on edge 1
First valid result
including data point (A)
available after edge 16
Valid result contains
the first 16 data points
available after edge 31
First data point (A)
is read on edge 1
First valid result
including data point (A)
available after edge 16
Valid result contains
the first 32 data points
available after edge 78
SPEED MODE 2 (Data input and output at a quarter f
SCLK
) CR14:13 = 10, CR12 = 0
1
2
3
A
B
20
21
22
A
B
272 273
A
B
SCLK
FEN
DA15:0
F31:0
CLKOP
First data point (A)
is read on edge 1
First valid result
including data point (A)
available after edge 20
Valid result contains
the first 64 data points
available after edge 272
4
5
23
24
274 275 276
SPEED MODE 3 (Data input and output at an eighth f
SCLK
) CR14:13 = 11, CR12 = 0
1
2
3
A
B
24
25
26
A
B
1040
A
SCLK
FEN
DA15:0
F31:0
CLKOP
First data point (A)
is read on edge 1
First valid result
including data point (A)
available after edge 24
Valid result contains
the first 128 data points
available after edge 1040
4
5
27
28
1041 1042 1043
6
7
8
9
29
30
31
32
SPEED MODE 1 Decimating (Data input at half
f
SCLK
and output at a quarter f
SCLK
) CR14:13 = 01, CR12 = 1.
1
2
3
A
B
18
19
20
B
142
143
144
145
SCLK
FEN
DA15:0
F31:0
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
21
22
B
Fig. 6 Single Filter timing diagrams
7
VP16256
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.
DUAL CASCADED FILTER OPTIONS
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.
CR
Input
Output
Filter
Setup
14 13 12
Rate
Rate
Length
Latency
Ind
Cas
0 0 0
SCLK
SCLK
8 Taps
16
27
0 0 1
SCLK
SCLK/2
16 Taps
17
-
0 1 0 SCLK/2
SCLK/2
16 Taps
16
28
0 1 1 SCLK/2
SCLK/4
32 Taps
18
-
1 0 0 SCLK/4
SCLK/4
32 Taps
20
36
1 0 1 SCLK/4
SCLK/8
64 Taps
24
-
1 1 0 SCLK/8
SCLK/8
64 Taps
24
40
Table 4. Dual Filter options
Fig. 8 Dual cascaded filter bus utilisation
Fig. 7 Dual independent filter bus utilisation
DA15:0
F31:0
OEN
NETWORK
A
NETWORK
B
DUAL
MODE
SINGLE
MODE
MUX
DB15:0
X31:0
DA15:0
F31:0
OEN
NETWORK
A
NETWORK
B
DUAL
MODE
SINGLE
MODE
MUX
DB15:0
X31:0
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.
COEFFICIENT
ADDER
INPUT DATA
ACCUMULATOR
RESULT
S
8
7
6
5
4
3
2
1
0
S
S
S
S
S
S
S
S
S
0
S
0
-26
S
S
ACCUMULATOR RESULT
These bits are passed to filter network B during cascade mode
-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
-11
-10
-9
-8
-7
-6
-5
-4
-3
-2
-1
-14
-13
-12
-11
-10
-9
-8
-7
-6
-5
-4
-3
-2
-1
-15
ACCUMULATOR RESULT
MULTIPLIER RESULT
COEFFICIENT
INPUT DATA
Sign extended to 32 bits, least significant 4 bits truncated
Multiplication producing a 28-bit result
Fig. 10 Filter accuracy
Fig. 9 Multiplier Accumulator
9
VP16256
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
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.
Fig. 12 Full speed cascaded system
Fig. 11 Three-device cascaded system
DATA IN
FEN
RESULTS
OUT
DA15:0
FEN
F31:0
DB15:0
DFEN
X31:0
INTERFACE
DEVICE
DA15:0
FEN
F31:0
DB15:0
DFEN
X31:0
INTERMEDIATE
DEVICE
DA15:0
FEN
F31:0
DB15:0
DFEN
X31:0
TERMINATION
DEVICE
DATA IN
FEN
RESULTS
OUT
DB15:0
FEN
F31:0
DA15:0
DFEN
X31:0
INTERFACE
DEVICE
DB15:0
FEN
F31:0
DA15:0
DFEN
X31:0
INTERMEDIATE
DEVICE
DB15:0
FEN
F31:0
DA15:0
DFEN
X31:0
TERMINATION
DEVICE
10
VP16256
(a) Single Filters
32
31
0
127
NOT USED
0
127
64
63
NOT USED
0
127
32
31
64
63
16 TAP
32 TAP
64 TAP
NO SWAP
POSSIBLE
0
127
128 TAP
16
15
LOWER
BANK
UPPER
BANK
LOWER
BANK
UPPER
BANK
LOWER
BANK
UPPER
BANK
(b) Dual Filters
B UPPER
BANK
32
31
0
127
NOT USED
32
31
0
127
64
63
96
95
NOT USED
48
47
0
127
16
15
32
31
64
63
8 TAP
16 TAP
32 TAP
FILTER B
NO SWAP
POSSIBLE
FILTER A
NO SWAP
POSSIBLE
0
127
64
63
64 TAP
A LOWER
B LOWER
A UPPER
B UPPER
A UPPER
BANK
B LOWER
BANK
A LOWER
BANK
A LOWER
B LOWER
A UPPER
B UPPER
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
HEX
. This places the device into the following
mode :
q
Single filter
q
Sample rate equal to the clock rate
q
Non-decimating
q
A single device (Not in a cascade chain)
q
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
11
VP16256
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.
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.
LOAD LAST
MASTER
COEFFICIENT
SCLK
A7:0
CCS
C15:12
FE
FF
00
01
00
01
FE
FF
00
01
00
01
0000
0001
0001
0010
LOAD SLAVE 1
CONTROL
REGISTER
LOAD SLAVE 1
COEFFICIENTS
LOAD LAST
SLAVE 1
COEFFICIENT
LOAD SLAVE 2
CONTROL
REGISTER
LOAD SLAVE 2
COEFFICIENTS
Fig. 14a EPROM load sequence
Fig. 14b EPROM load sequence for a cascaded system
SCLK
00
01
00
LOAD MASTER CONTROL
REGISTER
LOAD LAST COEFFICIENT
A7:0
00
01
LOAD FIRST COEFFICIENT
VALID ADDR
VALID ADDR
CCS
RES
BUSY
Fig. 14 EPROM load sequence timing diagrams
12
VP16256
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
Fig. 15 Three device auto EPROM load
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.
C11:8
CS
EPROM
BYTE
WEN
A7:0
CCS
C15:12
C7:0
0010
GND
GND
GND
(2 SLAVES)
MASTER
C11:8
CS
EPROM
BYTE
WEN
A7:0
CCS
C15:12
C7:0
0001
GND
V
DD
GND
SLAVE 1
C11:8
CS
EPROM
BYTE
WEN
A7:0
CCS
C15:12
C7:0
0010
GND
V
DD
GND
SLAVE 2
LSB
MSB
DATA
ADDRESS
EPROM
VP16256
VP16256
VP16256
13
VP16256
USING A REMOTE MASTER
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.
Fig. 16 EPROM Memory Map
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.
Table 5. Number of coefficients loaded
Control
Number of
Register
Coefficients
Loaded
14 13 12
0
0
0
32
0
0
1
64
0
1
0
64
0
1
1
128
1
0
0
128
1
0
1
128
1
1
0
128
1
1
1
Invalid Mode
1023
770
769
768
767
512
511
258
257
256
255
0
FILTER
COEFFICIENTS
NOT USED
CONTROL REG
511
386
385
384
383
256
255
130
129
128
127
0
255
194
193
192
191
128
127
66
65
64
63
0
NOT USED
CONTROL REG
FILTER
COEFFICIENTS
COEFFICIENTS
PER DEVICE
32
64
128
DEVICE 2
DEVICE 1
14
VP16256
Fig. 17 Remote Master synchronisation
SCLK
WEN
VP
16256
PROCESSOR WRITE STROBE
D
Q
COEFFICIENT
LOAD
STATE MACHINE
HOLD
CIRCUIT
ADDRESS
DATA
A7:0
C15:0
SCLK
ADDRESS/DATA
REGISTERED STROBE
ADDRESS AND DATA VALID
VP16256 WEN
A7:0 AND C15:0 HELD AFTER FALLING EDGE OF WRITE STROBE
A7:0/C15:0
STROBE
REGISTERED INTO
SYNCHRONISATION
REGISTER
STROBE
REGISTERED
INTO STATE
MACHINE
COEFFICIENT
INPUT CLOCKED
TO VP16256 ON
THIS EDGE
PROCESSOR WRITE STROBE
15
VP16256
RES must be held low
for 16 cycles
BUSY goes active
Coefficient loading may start
once BUSY has returned low
1
2
3
4
5
6
7
16 17
37
38
39
DEVICE RESET
SCLK
RES
BUSY
1
2
3
4
5
6
7
BYTE WIDE COEFFICIENT LOAD
8
67
68
69
70
71
00
01
00
01
02
03
3E
3F
00
AC
10
00
20
00
00
02
Control register loaded
with CCS high
Blank cycles Coefficients loaded into the required address location.
This example uses byte wide loading (
BYTE
held low).
CS
must be maintained
for two cycles
SCLK
CCS
A7:0
C15:0
CS
WEN
Control register loaded
with CCS high
Blank cycles Coefficients loaded into the required address location.
This example uses word wide loading (
BYTE
held high).
WEN
1
2
3
4
5
6
7
WORD WIDE COEFFICIENT LOAD
8
34
35
36
37
38
00
01
02
03
1E
1F
AC00
0020
0030
0040
0050
001F
0200
SCLK
CCS
A7:0
C15:0
CS
00
0010
04
1
2
3
4
5
6
7
START OF FILTER OPERATION
8
9
16
17
18
19
0010
0000
0090
0001
SCLK
FEN
DA15:0
F31:0
CLKOP
0020
0030
0040
0050
00A0
0001
0004
0004
0000
0000
0000
0000
0000
0000
0000
0000
0000
The first data sample
is read as FEN goes high
The first result available. CLKOP
indicates the first active result cycle
Fig. 18 Device startup timing diagrams
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.
Control
Register
Function
Bits
7
6
5
0
X
0
Control by input pin
1
0
0
Lower bank selected
1
1
0
Upper bank selected
X
X
1
Swap on every sample clock
Table 8 Control register bank swap bits
Bits Decode
Function
15
0
Dual filter mode
15
1
Single filter mode
14:13
00
Sample rate is the system clock
14:13
01
Sample rate is half the system clock
14:13
10
Sample rate is quarter the system clock
14:13
11
Sample rate is eighth the system clock
12
0
Output rate equals the input rate
12
1
Decimate-by-two
11:10
00
Intermediate device
11:10
01
Interface device
11:10
10
Termination device
11:10
11
Single device
9:8
00
These bits MUST be at logical zero
7
0
Bank swap is controlled by input pin
7
1
Bank swap is controlled by Bit 6
6
0
Lower bank if bit 7 is set
6
1
Upper bank if bit 7 is set
5
0
Normal Bank Swap
5
1
Bank swap on every sample clock
4
0
Two independent filters
4
1
Two filters in cascade
3:0
These bits MUST be at logical zero
Control
Register
Function
Bits
15
4
0
0
Two independent filters
0
1
Two filters in cascade
1
X
Single Filter
Table 7 Control register filter mode bits
ABSOLUTE MAXIMUM RATINGS (Note 1)
Supply voltage V
DD
2
05V to 170V
Input voltage V
IN
2
05V to V
DD
105V
Output voltage V
OUT
2
05V to V
DD
105V
Clamp diode current per pin I
K
(see note 2)
18mA
Static discharge voltage (HBM)
500V
Storage temperature T
S
2
65
C to1150
C
Ambient temperature with power applied T
AMB
0
C to170
C
Junction temperature with power applied T
J
120
C
Package power dissipation
2500mW
Thermal resistance, junction-to-case
JC
10
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
JC
data assumes that heat is extracted from the
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
DD
potential.
Table 6 Control register bit allocation
17
VP16256
Fig. 19 Remote Master setup and hold timings
Fig. 20 EPROM load timings
Fig. 21 Operating timings
SCLK
A7:0
CCS
C15:0
VALID DATA
CS
WEN
VALID ADDRESS
(a) Coefficient Write
t
HS
t
HH
SCLK
A7:0
CCS
C15:0
CS
WEN
t
HS
t
HH
VALID DATA
VALID ADDRESS
(b) Control Register Write
t
CL
t
CH
t
HH
SCLK
C15:12
A7:0
CCS
VALID ADDRESS
C7:0
t
CD
t
HS
t
HH

t
CD
CLK 1
CLK 2
CLK 9
VALID ADDRESS
SCLK
F31:0
OEN
OUTPUT PINS
VALID DATA
HIGH Z
VALID DATA
VALID DATA
VALID DATA
VALID DATA
INPUT PINS
t
OS
t
CD
t
CL
t
CH
t
CZF
t
CVF
t
HS
t
HH
t
OH
18
VP16256
ELECTRICAL CHARACTERISTICS
The Electrical Characteristics are guaranteed over the following range of operating conditions, unless otherwise stated:
T
AMB
= 0
C to 170
C, T
J
= 1120
C, V
DD
= 15V
10%, GND = 0V
Static Characteristics
Min.
Typ. Max.
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
10
-
04
-
10
-
08
1
10
1
50
300
24
-
35
-
20
-
2
10
2
50
10
V
OH
V
OL
V
IH
V
IL
V
IH
V
IL
I
IN
C
IN
I
OZ
I
OS
I
OH
= 4mA
I
OH
= 4mA
SCLK input only
SCLK input only
All other inputs
All other inputs
GND < V
IN
< V
DD
GND < V
OUT
< V
DD
V
DD
= 155V
V
V
V
V
V
V
A
pF
A
mA
Units
Value
Conditions
Characteristic
Symbol
Min.
Typ. Max.
Min.
Typ. Max.
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
DD
current
ns
ns
ns
ns
ns
MHz
ns
ns
ns
ns
mA
290
-
-
-
-
18
27
-
-
35
35
325
8
0
20
4
5
-
14
14
-
-
t
HS
t
HH
t
OS
t
OH
t
CD
f
SCLK
t
CH
t
CL
t
CVF
t
CZF
I
DD
395
-
-
-
-
17
40
-
-
23
23
450
7
0
20
4
5
-
10
10
-
-
30pF
See Fig. 22
See Fig. 22
See Note 1
NOTE 1. V
DD
= 155V, outputs unloaded, clock frequency = Max.
VP16256-27
VP16256-40
Conditions
Units
Characteristic
Symbol
Switching Characteristics (see Figs. 19, 20 and 21)
Fig. 22 Three state delay measurement
V
H
05V
Delay from
output high
to output
high impedance
05V
05V
05V
V
L
15V
15V
Delay from
output low
to output
high impedance
Delay from
output high
impedance to
output low
Delay from
output high
impedance to
output high
Test
Waveform measurement level
V
H
is the voltage reached when the output is driven high
VL is the voltage reached when the output is driven low
I
OL
15V
I
OH
DUT
30pF
Three state delay measurement load
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
World Headquarters - Canada
Tel: +1 (613) 592 2122
Fax: +1 (613) 592 6909
North America
Asia/Pacific
Europe, Middle East,
Tel: +1 (770) 486 0194
Tel: +65 333 6193
and Africa (EMEA)
Fax: +1 (770) 631 8213
Fax: +65 333 6192
Tel: +44 (0) 1793 518528
Fax: +44 (0) 1793 518581
http://www.mitelsemi.com
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.