Adaptive digital filter

Information

  • Patent Grant
  • 4779225
  • Patent Number
    4,779,225
  • Date Filed
    Thursday, February 5, 1987
    37 years ago
  • Date Issued
    Tuesday, October 18, 1988
    36 years ago
Abstract
An adaptive digital filter which is used, for instance, for a prediction filter in an ADPCM modulator and an ADPCM demodulator, for providing stable operation and minimum phase shift response. The filter (FIG. 4, FIG. 5) has three parallel branches (A,B,C), two (A,B) of them have a plurality of series connected non-recursive filter elements (A.sub.1 -A.sub.n, B.sub.1 -B.sub.n) each of which has degree not larger than three relating to an operator (Z.sup.-1), and third branch (C) is merely a conductive line. Tap coefficients (c.sub.1, c.sub.2, . . ., d.sub.1, d.sub.2, . . . ) of non-recursive filter elements change according to solutions of the transfer of the filter. A numerator and/or a denominator of the transfer function of the present filter is a Chebychev polynominal relating to an operator (Z.sup.-1), and has a zero point and/or a pole. The solutions (w.sub.i, v.sub.i) of a numerator and a denominator locate alternately on a unit circle (FIG. 6) on a Z.sup.-1 plane. When solutions of the transfer function do not locate alternately on said unit circle, tap coefficients (c.sub.1, c.sub.2, . . . , d.sub.1, d.sub.2, . . . ) are not updated, since non-alternate solutions do not assure stable operation and/or minimum phase shift response of the filter.
Description

BACKGROUND OF THE INVENTION
The present invention relates to an improved iterative controlled adaptive digital filter which is stable in operation and has improved phase response characteristics. The present filter is used for instance as a predictive filter in an adaptive PCM (ADPCM) modulator and/or demodulator. According to the present invention, only the relative location of a pair of solutions of a transfer function on a unit circle on a Z.sup.-1 plane is monitored, while a prior art monitors the values themselves of the solutions (zero, and pole) of denominator and numerator of transfer function of a non-recursive digital filter which has a feedback loop.
FIG. 1 shows a block diagram of an ADPCM system which is one of the applicatoins of the present invention. In FIG. 1, the numeral 0 is an A/D converter to convert an analog signal (for instance, voice signal or picture signal) at the input terminal 11 to a digital form, 1, 4 and 7 are adders, 2 is a quantizer for converting an input digital signal to a PCM code, 3 and 6 are inverse-quantizers which demodulates a PCM signal, 5 and 8 are filters, 9 is a D/A converter for converting a digital signal to an analog form, and 11 through 18 are terminals. An analog signal at the input terminal 11 is converted to a digital form by the A/D converter 0. A digital signal s.sub.k (k shows time) is applied to the adder 1 which adds the expected signal s.sub.k to the input signal s.sub.k and provides the sum which is the error signal e.sub.k. The error signal e.sub.k is quantized by the quantizer 2 and is transmitted to an external circuit through the output terminal 13. The signal at the terminal 13 is reproduced to an error signal e.sub.k by the inverse-quantizer 3 and is applied to the adder 4 which adds said predicted value s.sub.k and the sum is the reproduced value s.sub.k.
Similarly, the signal at the output terminal 13 is transmitted to a reception side or a demodulation side. A noise might be added to the signal during the signal is transmitted to the reception side. In a reception side, the reception signal at the input terminal 16 is reproduced to the reproduce signal s.sub.k by the inverse-quantizer 6, the adder 7 and the filter 8. Further, the output signal at the terminal 17 is converted to an analog form by the D/A converter 9.
FIG. 2 is a block diagram of a prior non-recursive digital filter for the filters 5 and 8 in FIG. 1. In FIG. 2, the symbol Z.sup.-l is a delay circuit which provides the delay time T which is equal to the sampling period of the digital signal. The symbols .alpha..sub.1 through .alpha..sub.n are tap coefficients, and the value of them are iteratively adjusted according to an input signal so that the error signal e.sub.k becomes minimum.
It has been known that an all pole type filter is preferable for a speech signal. On the other hand, a filter which has not only a pole but also a zero point is preferable for multi-level digital signal which has quick change in both amplitude and phase.
However, a filter with both a pole and a zero point has not been used because that kind of filter is apt to oscillate and be affected by noise.
FIG. 3 shows a block diagram of an ADPCM system which includes both a pole and a zero point. In the figure, the numerals 19, 20, 21 and 22 are filters, 23 through 26 are terminals. Other symbols in FIG. 3 are the same as those of FIG. 1. The filters 19 through 22 are non-recursive filters with the structure of FIG. 2.
The transfer function H(Z.sup.-1) of the transmission side of FIG. 3 has the following form.
H(Z.sup.-1)=((1-H.sub.p (Z.sup.-1))/(1+H.sub.z (Z.sup.-1))=h.sub.p (Z.sup.-1)/h.sub.z (Z.sup.-1) (1)
The transfer function of the reception side is the inverse number of the equation (1). In FIG. 3, the transfer function of the filter between the terminals 12 and 13 is provided a zero point by the non-recursive filter 19, and a pole by the non-recursive filter 20. Therefore, the filter 19 is called a zero filter, and the filter 20 is called a pole filter. The reception side has a zero filter 21, and a pole filter 22.
Conventionally, it has been known that a prior filter of FIG. 2 is not stable in operation. Further, in a prior art, the response of the system is not stable for an input signal which has unexpected statistical nature, and/or noise, and further, the filter is apt to oscillate and/or the reproduced code has much code error.
In order to solve the above problem, one solution is to use a fixed filters 20 and 22 (only filters 19 and 21 are adaptive filters), and the other prior solution is to delete the filters 20 and 22, and that the filters 19 and 21 have the series connection of a plurality of dual quadratic element filters each of which has a pair of tap coefficients in a stable area. However, the former solution has the disadvantage that the adaptive capability and/or the redundancy compression capability is reduced. The latter solution has the advantage that the stable condition of the filter is satisfied, but, no mathematical algorithm for determining mutual relations between tap coefficients and solutions (pole and zero point) of each element filter. If the filters are adjusted so that an error signal becomes minimum, the convergence of solutions becomes slow and effect of a zero point becomes vague.
SUMMARY OF THE INVENTION
It is an object of the present invention to overcome the disadvantages and limitations of a prior adaptive filter by providing a new and improved adaptive filter.
It is also an object of the present invention to provide an adaptive filter which has both a pole and a zero point, stable in operation, and has excellent phase response.
The above and other objects are attained by an adaptive digital filter with a transfer function which includes at least one of a pole and a zero point in a denominator and a numerator in a transfer function which changes successively or at least in every predetermined period, comprising; at least one of denominator and numerator of a transfer function being a Chebyshev polynominal relating to an operator Z.sup.-1 ; said filter having three substantially parallel branches (A, B, C); first branch (A) and second branch (B) having a plurality of series connected non-recursive filter elements which have degree not larger than three relating to an operator Z.sup.-1 ; third branch (C) being a merely conductive line; and means for determining tap coefficients of said non-recursive filter elements according to solutions of said transfer function.
Preferably, solutions of a numerator, and solutions of a denominator of the transfer function locate alternately on a unit circle on a Z.sup.-1 plane to assure stable operation and/or minimum phase shift response of the filter.





BRIEF DESCRIPTION OF THE DRAWINGS
The foregoing and other objects, features, and attendant advantages of the present invention will be appreciated as the same become better understood by means of the following description and accompanying drawings wherein;
FIG. 1 is a prior ADPCM system,
FIG. 2 is a block diagram of a prior adaptive filter,
FIG. 3 is an ADPCM system which the present invention is utilized,
FIG. 4 is a block diagram of the adaptive filter according to the present invention when the value (n) is odd number,
FIG. 5 is a block diagram of the adaptive filter according to the present invention when the value (n) is even number,
FIG. 6 is a graph showing the location of solutions of a transfer function on a Z.sup.-1 plane,
FIG. 7 is a block diagram of another embodiment of the present adaptive filter when the number (n) is even number,
FIG. 8 is a block diagram of still another embodiment of the present invention when the value M is 4,
FIG. 9 is a block diagram of still another embodiment of the present invention,
FIG. 10 shows the pattern of the solutions of the transfer function in the embodiment of FIG. 9,
FIG. 11 shows another pattern of the solutions of the transfer function in the embodiment of FIG. 9,
FIG. 12 is a block diagram of still another embodiment according to the present invention,
FIG. 13 is a block diagram of still another embodiment according to the present invention.





DESCRIPTION OF THE PREFERRED EMBODIMENTS
FIG. 4 shows a block diagram of the adaptive filter according to the present invention. FIG. 4 is the detailed block diagram of the filter 19, 20, 21 or 22 in FIG. 3, and is used by inserting the same in the block 19, 20, 21 or 22 in FIG. 3. The present filter has three substantially parallel branches A, B and C. The former two branches A and B have a series circuit which has a plurality of non-recursive filters each of which has the degree equal to or less than 2 relating to the operator Z.sup.-1. The third branch C is just a direct line. The adder 28 is provided to add the outputs of the branches A and B, and another adder 29 is provided to add the output of the adder 28 and the third branch C. The attenuator 30 for multiplying 1/2 to the input signal is provided between the input terminal and the branches A and B. The numeral 27 is another attenuator for providing the multiplication by the value which is 1 or less than 1 but close to 1, to the input signal. The structure of the filters 19 through 22 are completely identical, except that a degree of each element filter, and the solution (pole or zero point) of the filter depending upon the tap coefficients are differenct from those of other filters.
When the filter is a zero filter, each tap coefficient is given below, where n is a degree of an element filter.
c.sub.1z, c.sub.2z, , , , c.sub.nz/2
d.sub.1z, d.sub.2z, , , , d.sub.nz/2
When the filter is a pole filter, each tap coefficient is shown below, where m is a degree of an element filter.
c.sub.1p, c.sub.2p, , , , c.sub.mp/2
d.sub.1p, d.sub.2p, , , , d.sub.mp/2
Further, it is assumed that each tap coefficient is different from other tap coefficients.
The transfer function h(Z.sup.-1) of the present filter is given by the following equations.
When n is an odd number; ##EQU1## When n is an even number; ##EQU2## FIG. 4 shows the case when n is an odd number, and the case when n is an even number (equation 3) is shown in FIG. 5.
It is assumed for the sake of the simplicity of the explanation that n is an even number, a filter is a zero filter in the following description.
FIG. 6 shows the location of the solutions on a Z.sup.-1 plane when n=8. All the solutions are imaginary number, which is positioned on a unit circle (.vertline.Z.sup.-1 .vertline.=1). The symbols w.sub.i is the solution of a denominator (or a numerator) of a transfer function, and v.sub.i is the solution of the numerator (or denominator) of a transfer function. It should be noted in FIG. 6 that a set of solutions w.sub.i and another set of solutions v.sub.i are located alternately, that is to say, each solution in a first group (w.sub.i) separates a pair of adjacent solutions of another group (v.sub.i). Apparently, the sequence of the solutions in FIG. 6 is w.sub.1, v.sub.1, w.sub.2, v.sub.2, w.sub.3, v.sub.3, , , and therefore, w.sub.i and v.sub.i appear alternately.
The tap coefficients c.sub.i, and d.sub.i is shown below.
c.sub.i =e.sup.jw i=cos w.sub.i
d.sub.i =e.sup.jv i=cos v.sub.i (4)
where w.sub.i and v.sub.i are angular frequency (radian) of a solution on a unit circle on a Z.sup.-1 plane.
The relations between coefficients of a transversal filter in FIG. 2, and coefficients of the present adaptive filter (FIG. 4) are shown below, where the transfer function of the transversal filter in FIG. 2 is; ##EQU3##
Although the prior filter of FIG. 2 is impossible to monitor the stability of the solutions, the present filter has the advantages as follows since the solutions locate on a unit circle of a Z.sup.-1 plane and each solution of a first group separates a pair of adjacent solutions in another group, and the coefficients of the filter can be determined by said equation (4).
(a) The stable operation of a pole filter with any degree is always expected.
(b) The necessary accuray of the calculation for the update of a solution and/or a tap coefficient can be reduced as compared with that of a prior art. In a prior art of FIG. 2, the amplitude and the phase of the solutions are directly calculated, and the fact that the solution locates outside of the circle of FIG. 6 is acknowledged. On the other hand, in the present invention, the amplitude of all the solutions is 1, and therefore, it is enough to check only a phase of the solutions.
(c) When a solution of a zero filter is simultaneously checked so that said solution is controlled to separate another group of solutions, both the poles and the zero points of the transfer function locates in the left half plane of the S-area (S is a Laplace operator), and therefore, the minimum phase shift response of the circuit is expected.
The successive (iterative) update of the coefficients are accomplished by for instance correlation calculation, an inverse filtering, et al. The transfer function H(Z) of the present seccessive adaptive filter may be all-pole type, all-zero type, or pole-zero type.
FIG. 7 shows the second embodiment of the present adaptive filter, when the degree of the filter is an even number. In the figure, the numeral 7-1 is an adaptive filter, 7-2 is an inverse filter for generating gradient vector component of a filter coefficient d.sub.i (i=1--M/2), and 7-3 is an inverse filter for generating a gradient vector component of a filter coefficient c.sub.i (i=1--M/2). The adaptive filter portion 7-1 in FIG. 7 has at least one branch which has at least one sampling period of delay Z.sup.-1 between the input 7-4 and the output 7-5, instead of a direct line C of FIG. 4. The effect of 7-1 of FIG. 7 is the same as that of FIG. 4. Each box in FIG. 7 shows Z.sup.-1.
According to the algorithm of a gradient method, a filter coefficient of an adaptive filter at time k+1 is updated by the following equations.
c.sub.i.sup.k+1 =c.sub.i.sup.k +.DELTA.e.sub.k (.delta.s.sub.k /.delta.c.sub.i.sup.k) (i=1--M/2) (26)
d.sub.i.sup.k+1 =d.sub.i.sup.k +.DELTA.i.sub.k (.delta.s.sub.k .delta.c.sub.i.sup.k) (i=1--M/2) (27)
The gradient vector component of the equations (26) and (27) are shown in the following equations, where E(z) is a z conversion of the difference signal e.sub.n.
.delta.s.sub.k /.delta.c.sub.i.sup.k =-1/2.pi.j.phi.z.sup.k-1 E(z)U.sub.1 (z)(z.sup.-2 -c.sub.i.sup.k z.sup.-1 +1).sup.-1 z.sup.-1 dz (28)
.delta.s.sub.k /.delta.d.sub.i.sup.k =-1/2.pi.j.phi.z.sup.k-1 E(z)U.sub.2 (z)(z.sup.-2 -d.sub.i.sup.k z.sup.-1 +1).sup.-1 z.sup.-1 dz (29)
The following equations are useful for smplifying a hardware structure, instead of the above two equations.
c.sub.i.sup.k+1 =c.sub.i.sup.k +.DELTA..multidot.sgn(e.sub.k).multidot.sgn(.delta.s.sub.k /.delta.c.sub.i.sup.k) (30)
d.sub.l.sup.k+1 =d.sub.i.sup.k +.DELTA..multidot.sgn(e.sub.k).multidot.sgn(.delta.s.sub.k /.delta.d.sub.i.sup.k) (31)
As described above, according to the second embodiment, the gradient vector component of successive updated coefficients according to the gradient method algorithm is obtained by an inverse filter. Therefore, the calculation is simple, and the stability of the updated solutions can be checked merely by the separation check (alternate location check) of the solutions. The embodiment is applicable to a pole-zero type transfer function, pole type filter, zero type filter.
As a modification of the second embodiment, the gradient vector component of a filter coefficient is obtained by correlation calculation, instead of using an inverse filter.
FIG. 8 is the third embodiment, in which the degree of the filter is M=4. In the figure, the numerals 8-1 and 8-2 are input and output terminals, respectively, 8-3 is an adaptive filter described in the previous first or second embodiment, 8-4 is an output buffer of an output of the adaptive filter 8-3, and 8-5 is a calculation circuit for the calculation of the gradient vector component of a filter coefficient.
The gradient vector component in the equations (26) and (27) is obtained by the equations (5), and (8) through (11) as follows. ##EQU4##
FIG. 9 shows the fourth embodiment of the present invention. In the figure, 1 and 2 are prediction filter, 3 is a line, 4 is a memory, 5 and 6 are calculation elements. The circuit of FIG. 9 provides the prediction signal s from the input signal s. Then, the difference e between the signal s and the prediction signal s is transmitted to the line. Then, the reception side reproduces the reproduction signal s of the original signal s. The signal in the reception side is indicated by ('), which means that the signal is suffered from noise in the transmission line. The symbols in the figure are as follows.
s; input pulse signal,
s.sub.1, s.sub.1 '; output of the filter 1
s.sub.2, s.sub.2 '; output of the filter 2
e, e'; difference signal,
s; output signal pulse of the system, that is to say, the reproduction signal of the signal s.
H.sub.0 ; transfer function of the reception side. input e', output s.sub.0 '
c.sub.i.sup.(2), d.sub.i.sup.(2) ; tap coefficients (FIG. 9) of the prediction filter 2.
While the second and the third embodiments control directly the tap coefficients of an adaptive predictive filter, the fourth embodiment controlls the angular frequency w.sub.i and v.sub.i in the equation (4).
A pair of solutions w.sub.i.sup.(1) and v.sub.i.sup.(1) of the prediction filter 1 in FIG. 9 (i=1--m/2) are controlled according to the next equation, where k is a discrete time. ##EQU5##
The tap coefficients are shown below. ##EQU6## where; ##EQU7## The coefficients A.sub.i,j.sup.(1) and B.sub.i,j.sup.(1) when m=6 in the equation (38) are shown below. ##EQU8## Similarly, a pair of solutions w.sub.i.sup.(2), and v.sub.i.sup.(2), i=1--n/2 are defined by the following equations. ##EQU9## The tap coefficients are given below. ##EQU10## where ##EQU11##
The constant (.alpha.) in the equations (40) and (49) are in the range 2.sup.-7 and 2.sup.-10.
The four kinds of solutions w.sub.i.sup.(1), v.sub.i.sup.(1) (i=1--m/2 (prediction filter 1), w.sub.i.sup.(2), v.sub.i.sup.(2) (i=1--n/2 (prediction filter 2)) are obtained iteratively by the calculation of the equations (38) through (49). Those values correspond to the angular frequency (radian) of the zero point (w.sub.i.sup.(1), v.sub.i.sup.(1)), and the pole (w.sub.i.sup.(2), v.sub.i.sup.(2)) of the transfer function H.sub.0.
The fourth embodiment is based upon the fact that the result of the iterative change of the four normalized angular frequency is in a predetermined range, and has the particular pattern defined by a kind of a signal. FIG. 10 shows the features of a speech, and a modem signal (9.6 kbps). In case of a speech signal, the range of the solution overlaps with that of adjacent solution. On the other hand, in case of a modum signal, the range of the solutions does not overlap. The memory 4 stores the upper limit value and the lower limit value of the range of the solution as a window set. The updated values of the solutions are calculated by the calculation element 5 (equations (38) and (47)). Next, sequence check of the solutions is accomplished. If those conditions are satisfied, the transfer function H.sub.0 (reception), and the inverse transfer function 1/H.sub.0 (transmission side) are stable and provide a minimum phase shift response.
Next, the check if the solutions are within the window set (window check) is accomplished. When the solutions locates in the window set of a modem signal, the input signal is recognized as a modem signal, and the identification signal ID is output. The sequence check and the window check are accomplished by the calculation element 6, which is enough merely to perform subtraction and recognition of a sign (positive or negative). If the calculation element 6 provides an output signal after a plurality of signal recognitions, a time constant is obtained in a recognition. When no identification output ID is provided, it is recognized that a reception signal is not normal, and perhaps a noise disturbed the signal. In that case, the value of the solution is reset to the previous value or the initial value so that the system does not oscillate. Thus, the unexpected operation by noise is prevented.
As described above, the fourth embodiment transmits a difference of a digital signal, and monitors iteratively the solution of a prediction filter, then, the stable transmission of a signal is obtained, the minimum phase shift response is satisfied, the recognition of a signal is accomplished both in a transmission side and a reception side, and further, the affection by a noise is prevented.
FIG. 11 shows the location of the solutions for a modem signal of 9.6 kbps, and a modem signal of 4.8 kbps. In this case, the range of the solutions is similar to each other.
The embodiments of FIG. 10 and FIG. 11 function to discriminate an input signal from a speech signal and a modem signal.
FIG. 12 shows a fifth embodiment of the present invention. In the figure, the symbol AQ is a quantizer, AQ.sup.-1 is an inverse quantizer. The quantizer AQ provides the pulse code train I.sub.k from the difference signal e.sub.k, and the inverse quantizer AQ.sup.-1 functions to inverse said signals. In the embodiment, the code train I.sub.k is transmitted to a line, and a reproduction signal S.sub.k is obtained in the reception side. The symbol T in the figure shows an analog-digital conversion, or a digital-digital speed conversion, and T.sup.-1 functions the reverse of T.
According to the embodiment of FIG. 12, the PCM signal which is the differential signal is received, and according to said process, the signal is discriminated correctly in a short time.
FIG. 13 is a block diagram of sixth embodiment of the present invention. The embodiment of FIG. 13 separates the error signal to the error signal e.sub.k.sup.p by a pole filter, and another error signal e.sub.k.sup.z by a zero point filter, while the previous embodiments use an error signal which is the difference between an input signal and the sum of a first prediction signal by a pole filter and a second prediction signal by a zero point filter, as an objective function for minimizing the error in an iterative control of an adaptive prediction filter. According to the embodiment of FIG. 13, the updated tap coefficient of a pole filter is obtained by the correlation value of e.sub.k.sup.p and reproduced output signal S.sub.k, and the updated value of the tap coefficients of a zero point filter is obtained by the correlation of e.sub.k.sup.z themselves.
The structure of a pole filter and a zero point filter in FIG. 13 is the same as that of the embodiments of FIGS. 1 through 5, and the calculation process in FIG. 13 is shown below.
The control is accomplished according to the following equation at a discrete time k.
(a) a zero point filter; ##EQU12## The tap coefficients are obtained by the following equations. ##EQU13## where; ##EQU14## the value (.delta..sub.i) is usually in the range between 2.sup.-6 and 2.sup.-11, and the value (.alpha.) is in the range between 2.sup.-7 and 2.sup.-10. The values A.sub.i,j.sup.(1) and B.sub.i,j.sup.(1) in the equation (50) are, when m=6, the same as those of equations of (41) through (46) in the fourth embodiment.
(b) a pole filter;
Similar to the case of a zero point filter; ##EQU15## The tape coefficients are; ##EQU16## where; ##EQU17##
From the foregoing, it will now be apparent that a new and improved adaptive filter has been found. It should be inderstood of course that the embodiments disclosed are merely illustrative and are not intended to limit the scope of the invention. Reference should be made to the appended claims, therefore, rather than the specification as indicating the scope of the invention.
Claims
  • 1. An adaptive digital filter with a transfer function which includes at least one of a pole and a zero point in a denominator and a numerator in a transfer function which changes successively or at least in every predetermined period, comprising:
  • an input terminal;
  • at least one of the denominator and the numerator of the transfer function in the complex Z plane being a Chebyshev polynomial;
  • said filter having a plurality of delay circuits connected to a series circuit with one end of said series circuit coupled to said input terminal, with tap coefficient elements coupled to junction points of said delay circuits,
  • adders for providing the sum of outputs of said tap coefficient elements;
  • means coupled to said adders for monitoring the location of solutions of said Chebyshev polynomial on the complex Z plane and determining whether the solutions for zero points and the solutions for poles are located alternately on a unit circle in the complex Z plane and for updating solutions only when said zeros and said poles are located alternately on said unit circle to assure stable operation and minimum phase shift of the filter;
  • means for converting said updated solutions to updated tap coefficients only when said zeros and said poles are located alternately on said unit circle, and
  • means coupled to said tap coefficient elements for adjusting said tap coefficient elements according to said updated tap coefficients only when said tap coefficients are updated.
Priority Claims (3)
Number Date Country Kind
58-4214 Jan 1983 JPX
58-4215 Jan 1983 JPX
58-185818 Oct 1983 JPX
Parent Case Info

This application is a continuation of application Ser. No. 570,634, filed Jan. 13, 1984, now U.S. Pat. No. 4,660,163.

US Referenced Citations (11)
Number Name Date Kind
4106102 Desblache Aug 1978
4158232 Koeth et al. Jun 1979
4393272 Itakura et al. Jul 1983
4435823 Davis et al. Mar 1984
4475211 Mattis, Jr. et al. Oct 1984
4520941 Raulin et al. Jul 1985
4540855 Szlam et al. Sep 1985
4567599 Mizoguchi Jan 1986
4613731 Godard Sep 1986
4654808 Potter et al. Mar 1987
4677668 Ardalan et al. Jun 1987
Continuations (1)
Number Date Country
Parent 570634 Jan 1984