« PrécédentContinuer »
BACKGROUND OF THE INVENTION 5
1. Field of the Invention
The present invention relates to a variable-passband variable-phase digital filter. Potential applications include filtering of audio-frequency signals and television 1Q signals as well as the construction of many electronic devices such as frequency synthesizers, for example.
2. Description of the Prior Art Variable-passband variable-phase digital filters also
find an application in the audiovisual field for removing 15 defects which appear at a time of geometrical transformations carried out with digital image memories, in particular in the event of anamorphic effects and compressions which produce moire effects and flicker effects on the transformed image. 20
Digital filters at present in use generally have transversal or recursive filter structures constituted by arrays of multiplier circuits, the variation in passband being obtained by weighting of the multiplier coefficients of the digital signal samples stored within registers of the 25 filter.
Typically, n sets of coefficients are usually employed for the purpose of obtaining n different passbands.
Concurrently with the passband variation, digital filters corresponding to the mode of utilization just 30 mentioned sometimes have structures which also permit interpolation of m intermediate values between two successive samples of the signal, with the result that mXn sets of weighting coefficients are usually applied to these filters. In the known examples of construction, n is of the order of 16 and m is of the order of 4.
The structures of digital filters constructed by means of multiplier circuits have the main disadvantage of being costly.
It is possible to overcome this disadvantage by constructing variable-passband and variable-phase filters in accordance with a table look-up technique. In this technique, results which are equivalent to those mentioned in the foregoing can be obtained by constructing a table 45 of numerical values stored within a memory which provides the filtered values of the signal as a function of the digital samples of the signal to be filtered which are applied to the memory-addressing inputs of the memory. Depending on the applications which are contem- 50 plated, it is equally possible to store said table either in a read-only memory (ROM) or in a random-access memory (RAM). The application of this structure to the problem of filtering of digital-signal samples does not present any difficulty. It is, in fact, only necessary to 55 apply for example to the addressing inputs of the memory N bits for selecting 2N filters, M bits for selecting 2M phases and pX8 bits for applying the p "signal" inputs. There is thus obtained, for example, on the outputs of the memory an output signal coded on 8 bits 60 corresponding to each address combination applied to the addressing inputs of the memory. Unfortunately, this structure cannot be realized directly when the numbers of passbands, phases and "signal" inputs become substantial. For example, in order to construct a filter 65 having sixteen passbands, four phases and three inputs, this technique in fact entails the need for a table composed of 1000 mega-octets with thirty address lines,
which is clearly neither technically nor economically feasible.
SUMMARY OF THE INVENTION
The aim of the invention is to overcome the disadvantages mentioned in the foregoing.
To this end, the invention is directed to a variablepassband variable-phase digital filter of the type in which Q digital samples of the signal to be filtered which are coded on 2Xq bits are applied successively via Q—1 delay lines connected in series and in which the values of the delayed samples collected at the output of each delay line are weighted by Q multiplier coefficients which are smaller than one before being added, the results of the successive additions being such as to form a series of samples representing the filtered digital signal. The distinctive feature of said digital filter lies in the fact that structure is provided for subdividing each delayed sample into q adjacent two-bit doublets, a first storage structure addressed by each doublet in order to store weighting tables, each weighting table being composed of the results of linear combinations of the weights of the doublets taken from each sample and composed of bits of the same rank multiplied by the multiplier coefficients, each integral portion of a result found in a table being applied at the same time as the fractional portions of the other results provided by the other tables to the addressing inputs of second storage structure. Said second storage structure is programmed in such a manner as to ensure that the binary number addressed in the second storage structure by the integral and fractional portions of the results found in the first storage structure as a function of the values of the Q samples of the signal to be filtered has a value equal to the linear combination of the corresponding values of the Q samples of the signal by the Q multiplier coefficients.
40 BRIEF DESCRIPTION OF THE DRAWINGS
Other features of the invention will be more apparent upon consideration of the following description and accompanying drawings, wherein: FIG. 1 is a transversal filter of the prior art; FIG. 2 is a recursive filter of the prior art; FIG. 3 shows one example of construction of a filtering device by means of a table;
FIG. 4 shows one example of construction of a digital filter which operates in accordance with the table lookup technique, a separation of the filtering and interpolation functions being achieved in order to reduce the size of the memories which compose the filter;
FIG. 5 shows a construction of a digital filter resulting in an even more effective partition of the tables;
FIG. 6 shows one embodiment of a digital filter in accordance with the invention;
FIG. 7 represents a cascade-connection of two digital filters 'in accordance with the invention and similar to the filter shown in FIG. 6;
FIG. 8 shows an embodiment of another digital filter structure formed by means of elementary filters in accordance with the invention and of the type shown in FIG. 6;
FIG. 9 represents another embodiment of a digital filter employed by means of elementary filters in accordance with the invention and of the type shown in FIG. 6;
FIG. 10 is an example of construction of a recursive filter obtained by means of an assembly of elementary filters of the type shown in FIG. 6.
DETAILED DESCRIPTION OF THE 5
The digital filter shown in FIG. 1 is a transversal filter of the prior art constituted by an array of seriesconnected delay lines 1, 2, 3, an array of multiplier circuits 4, 5, 6, 7, and an assembly of adders designated 10 respectively by the references 8, 9 and 10. Each signal sample E coded, for example on eight bits, is applied simultaneously to the input of the first delay line 1 and to a first input of the multiplier circuit 4. The outputs of the delay lines 1, 2 and 3 are connected respectively to !5 a first input of the multiplier circuits 5, 6 and 7. Weighting coefficients Ki, K2, K3 and K4 are applied respectively to the second inputs of the multiplier circuits 4, 5, 6 and 7. The outputs of the multipliers 4, 5, 6 and 7 deliver respectively the product of the samples 20 applied to their first inputs by the weighting coefficients Ki, K2, K3 and K4. The outputs of the multipliers 4 and 5 are connected respectively to a first and a second input of an adding circuit 8 and the outputs of the multiplier circuits 6 and 7 are connected respectively to a 25 first and a second input of the adding circuit 9. The outputs of the adding circuits 8 and 9 are connected respectively to a first input and a second input of the adding circuit 10. If A designates the value of the binary sample applied to the input of the first delay line 1 and 30 B, C, D designate respectively the values of the samples obtained at the outputs of the delay lines 1, 2 and 3, the output of the adding circuit 10 delivers a signal coded on eight bits having a value corresponding to the linear combination of the sample values A, B, C and D by the 35 weighting coefficients Ki, K2, K^and ILjin accordance with the relation
with, for example,
The diagram shown in FIG. 2 is that of a recursive 45 filter of the prior art composed of two multiplier circuits 11 and 12, an adding circuit 13 and a register 14. The sample of the sample E is applied to a first input of the multiplier circuit 11 which receives a weighting signal K on a second input. A first input of the multi- 50 plier circuit 12 is connected to the output of the register 14 and the second input of the multiplier circuit 12 receives a multiplier coefficient equal to 1—K. The outputs of the two multiplier circuits 11 and 12 are connected respectively to the first and second inputs of 55 the adding circuit 13, the output of which is connected to the input of the register 14. This filter makes it possible to obtain at the output of the register 14 filtered signal samples which depend at each instant on the value of the signal sample which is present at the input 60 of the filter and on the value of the signal which has previously been filtered. In fact, if E designates the value of the sample applied to the input of the filter and S(i—1) designates the value of the previously filtered signal sample, the value of the filtered sample corre- 65 sponding to the input sample is equal to
S(i) = K E+(\-K)xS(i-l).
In the structures described earlier, the variation in passband of the filters is usually obtained by varying the value of the coefficients Ki, K2, K3 and K4 applied to the inputs of the filter.
In audiovisual techniques, it also happens that, concurrently with the passband variation, it is necessary to interpolate intermediate values between two successive samples of the signal. The problem which usually arises here consists in finding three intermediate values or phases in order to obtain a suitable quality transformation. As a general rule, n sets of coefficients are employed, thus making it possible to obtain n different passbands. The value of the coefficients are determined in real time or are loaded in a read-only memory (ROM). The interpolation can be obtained directly by the choice of the coefficients of the transversal filter by means of a set of mXn coefficients, where m designates the number of phases and n designates the number of passbands. In the known applications, m is for example of the order of 4 and n is of the order of 16. One disadvantage of the structures shown in FIGS. 1 and 2 lies in the fact that they make use of multiplier circuits which increase their cost price.
In order to reduce the cost of construction, a first step consists in forming transversal filter structures of the type shown in FIG. 3. The digital filter which is illustrated in FIG. 3 comprises a first array of series-connected delay lines 15,16 and 17, an array of four ROMtype memories designated respectively by the references 18 to 21, and an array of adding circuits designated respectively by the references 22 to 24. The sample E of the signal to be filtered is applied to the input of the delay line and to a first addressing input of the memory 18. The outputs of the delay lines 15,16 and 17 are connected respectively to a first addressing input of the memories 19 to 21. The memories 18 to 21 have a second addressing input to which are applied the M+N bits for selecting m phases and n passbands. Each memory 18,19, 20 or 21 contains a table for weighting each sample A, B, C, D which is applied to its first addressing input respectively by the coefficients Ki, K2, K3 and K4. The values of the samples weighted by the tables contained in the memories 18 and 19 are added by the adding circuit 22. The values of the samples weighted by the tables contained in the memories 20 and 21 are added by the adding circuit 23. The adding circuit 24 adds the results provided by the respective outputs of each adding circuit 22 and 23 and produces a signal having eight bits corresponding to the linear combination of values of the samples A, B, C, D which are present at a given instant on the one hand at the input of the delay line 15 and at on the outputs of the delay lines 15,16 and 17 as weighted by the coefficients Ki, K2, K3 and K4, in accordance with the relation
The diagram of FIG. 3 permits the construction of four tables having fourteen inputs and eight outputs in order to form a total capacity of 64 kilo-octets. Unfortunately, the current technology of fast read-only memories (ROMs) which has cycle times of less than 74 nanoseconds (necessary in order to be compatible with television signals) fails to offer simple and inexpensive means for the construction of tables of this type. One approach in accordance with the invention for over5
coming this disadvantage will hereinafter be explained in detail with reference to FIGS. 4 and 5.
The diagram of FIG. 4 shows a digital filter fabricated solely from ROMs having memory capacities varying between 1 and 4 kilo-octets. This diagram facil- 5 itates the construction of digital filters of the type mentioned above. The filter of FIG. 4 is constituted by an array of delay lines 25, 26, 27, an array of readonly memories (ROMs) 28 to 31 having a capacity of 4 kilooctets, an array of read-only memories (ROMs) 33 to 36 10 having a capacity of 1 kilo-octets and an array of adding circuits 37 to 39. The delay lines 25, 26 and 27 are connected in series. The digital samples E which are to be filtered and are coded on eight bits, for example, are applied to the input of the delay line 25 and to a first 15 addressing input of the memory 28. The memories 29 to 31 each have a first addressing input connected to the respective outputs of the delay lines 25 to 27. The second inputs of the memories 28 to 31 are addressed by the number N of selections of n passbands in order to 20 assign a weighting coefficient to each of the samples applied to the first inputs of the memories 28 to 31. The weighted samples obtained at the outputs of the memories 28, 29 to 31 are applied respectively to a first input of the memories 33 to 36. A second addressing input of 25 memories 33-36 receives the phase-selection bits M in order to address interpolation tables contained in the memories 33 to 36. The outputs of the memories 33 and
34 are applied respectively to a first and a second input
of the adding circuit 37 and the outputs of the memories 30
35 and 36 are applied respectively to a first and a second input of the adding circuit 38. The outputs of the adding circuits 37 and 38 are applied respectively to a first input and a second input of the adding circuit 39 which delivers the output signal S of the filter over a length of 35 eight bits.
Even greater partitioning of the filtering table can be obtained by means of a device of the type shown in FIG. 5. In this figure, the successive samples E of the signal which is coded on eight bits, for example, are 40 applied, after having been delayed by the delay lines 40 to 42, to the addressing inputs of an array of memories 44 to 47 having a capacity of 1 kilo-octets and containing interpolation tables. The interpolated values of each signal sample are applied by the outputs of the memo- 45 ries 44 to 47 to the respective addressing inputs of an array of read-only memories (ROMs) 48 to 50. These memories contain the filtering tables proper. Each octet read at the output of the memories 44 to 47 is subdivided into two quartets having low and high weights. The 50 low-weight quartets are applied to the addressing inputs of the memories 48 and 50 and the high-weight quartets are applied to the addressing inputs of the memories 49 and 51. Each table contained in the memories 48 to 51 is formed by the results of the linear combinations of each 55 quartet applied to its addressing inputs by multiplier coefficients Ki, K2, K3 and K4 which are smaller than unity. Since the multiplier coefficients are smaller than unity, the multiplications performed on the high-weight quartets produce a result composed of an integral por- 60 tion and a fractional portion. The fractional portion is composed of the same binary weights as the result of the linear combinations of the low-weight quartets obtained at the outputs of the memories 48 and 50 and is added to these latter by means of the adding circuits 52, 53 and 65 54. The results of the linear combinations performed on the high-weight quartets and provided by the memories 49 and 51 are applied to the respective inputs of an
adding circuit 55. The outputs of the adding circuits 54 and 55 are concatenated to eight-bit binary signal, the four low-weight bits being obtained at the output of the adder 54 and the four high-weight bits being obtained at the output of the adder 55. The filters of FIGS. 4 and 5 have the further disadvantage of requiring the use of adding circuits for recombining the signals produced by the different tables which are stored in the memories of the filter.
The filter shown in FIG. 6 makes it possible to dispense with the need for the adding circuits mentioned in the foregoing. This filter comprises delay lines 56 and 57, means for storage of filtering tables 58 to 61 coupled by their outputs to second means for storage of addition tables. The delay lines delay the samples E successively by eight bits. These delays which are applied to the input of the delay line 56. Each eight-bit sample Ei, E2, E3 thus obtained is subdivided by subdividing means 101, 102 and 103, respectively, into subsignals, in this can two-bit doublets before being applied via the lines Li to L3 to the input of the first storage means. The doublets constituted by the low-weight bits are applied to the addressing inputs of the memory 58 and the following doublets constituted by the remaining bits are applied in the order of magnitude of their binary weights to the addressing inputs of the memories 59 to 61. In accordance with this principle, if the references Ei and E2 are used to designate the binary samples delivered by the delay lines 57 and 56 and if the reference E3 is used to designate the sample applied to the input of the delay line 56, then by expressing each sample in the form
E\ — 1 a; 2'
E-> = 2 bj 2'
'i = 0
£1=2 a 2'
; = 0
the subdivision into doublets can be realized by the relations:
3 3 3
E\= 1 Aj. E-i - 2 Bj, £1 = 2 C,
j=0 1 ' 0 r' 0'
Aj = ay+1 ■ 22i+1 + ay ■ 22J
Bj = by+ 1 • 2J+1 + by ■ 22'
Cj = C2j+1 • 2J+ 1 + c2j ■ 2V.
With reference to FIG. 6, the doublets Ao, Bo and Co formed by the bits having the lowest weights are applied to the addressing inputs of the memory 58. The doublets Ai, Bi, Ci formed by the bits of directly higher weight are applied to the addressing inputs of the memory 59. The doublets A2, B2, C2 are applied to the inputs of the memory 60 and the doublets A3, B3, C3 formed by the highest-weight bits of each sample are applied to the addressing inputs of the memory 61. Each table contained in the memories 58 to 61 is formed by the results of the linear combinations of values of each doublet applied to its addressing inputs. If the coefficients which are all smaller than unity of each linear combination are designated as before by the references Ko, Ki and K2,