Digital sub-band filters
This invention relates to digital filters for use in sub-band coding arrangements. 
     Sub-band coding has been shown to be an effective method of reducing the bit-rate required for the transmission of signals--see, for example Crochiere, Webber and Flanagan &#34;Digital Coding of Speech in Sub-bands&#34;. Bell System Technical Journal, vol. 55 pp. 1069-1085 (October 1976) and Crochiere, &#34;On the Design of Sub-band Coders for Low Bit-Rate Speech Communication&#34;, ibid Vol. 56, pp. 747-779 (May-June 1977). 
     The technique involves splitting the broadband signal into two or more frequecy bands and encoding each band separately. Each band can then be down-sampled, and coding efficiency improved by using different coding strategies, which can be optimised to the statics of the signal. This is especially advantageous for speech transmission since it can exploit certain perceptual effects connected with hearing; for example that the human ear is relatively tolerant to (quantisation) noise in parts of the spectrum occupied by high-level signal components, and that the higher frequency components require less accuracy because the ear is less sensitive to their absolute content. After transmission, the individual subbands are up-sampled and passed through interpolation filters prior to recombination. 
     The sub-bands are usually contiguous to avoid dead-band regions in the overall frequency response. As filters with an infinitely sharp cutoff cannot be realised, a degree of subband overlap results, which results in the generation of alias components in the down-sampling process. It has been shown that by defining suitable relationships between the coding and interpolation filters, alias cancellation can be achieved upon recombination (Esteban and Galand, &#34;Application of Quadrature Mirror Filters to Split Band Voice Coding Schemes&#34;, IEEE Int Conf on ASSP, pp. 191-195, Hartford CT, 1977). One such proposal involves the use of quadrature mirror filters; viz a pair of filters whose responses are mirror images about a transition frequency (usually one-quarter of the sampling frequency) and whose phase responses differ by 90° at all frequencies. 
     The response of a digital filter is commonly expressed as its z transform, defined by ##STR1## where h(nT) is the impulse response of the filter (output at time nT due to a unit impulse at time 0), T being the sampling period. 
     z is a complex variable and plays a similar role to that of the variable s of the Laplace transform commonly used for continuous systems. As with the s-plane, the singularities (poles and zeroes) can be plotted on the z-plane. If represented in polar co-ordinates (z=re je ) the angular co-ordinate represents the relative frequency; θ=WT=2 πf/ fs  where fs is the sampling frequency (fs=1/T). The closer r is to unity the more localised is the effect of the singularity around frequency θ. Note that it is neither possible nor necessary to represent frequencies in excess of half the sampling frequency since such frequencies give rise to aliases below that frequency, ie the frequency spectrum of the sampled signal repeats with period 2π. 
     The present invention is concerned with filters and quadrature mirror filters pairs for use in sub-band coding, and the filters will be defined by reference to the positions of their singularities in the z-plane. 
     According to one aspect of the present invention there is provided a digital filter having a stopband, a transition band and a passband, the transfer function of the filter including poles for enhancing signals with frequencies in the passband, zeros for attenuating signals with frequencies in the stopband, and poles for enhancing signals in the transition band, in which the singularities include a pole for attenuating signals with frequencies in the stopband which, in the z-plane representation, lies on the real axis at unit radius, and the remainder of the singularities occur in groups each possessing a symmetrical delay response about a relative frequency of π/2 radians, characterised in that at least one of such groups consists of a pole having in the z-plane polar coordinates r, θ and a zero having coordinates 1/r, (π-θ). 
     In another aspect the invention provides a digital filter arrangement for sub-band coding apparatus comprising a low-pass filter having a stopband contained in an upper subband and a passband contained in a lower subband and a high-pass filter having a stopband coincident with the passband of the low-pass filter and a pass band coincident with the stop band of the low-pass filter, wherein both filters include poles for enhancing signals with frequencies in a transition band between the stopband and passband and each filter includes zeros for attenuating signals with frequencies in its own stopband and poles for enhancing signals with frequencies in its own passband, wherein one filter has singularities lying in the z-plane representation at polar coordinates r, θ and the other has like singularities lying at polar coordinates r, (π-θ); wherein the low pass and high--pass filters each have a zero at coordinates 1, π and 1, 0 respectively, and the remainder of the singularities occur in groups each possessing a symmetrical delay response about a relative frequency of π/2 radians, characterised in that at least one of such groups consists of a pole having, in the z-plane, polar coordinates r, θ and a zero having coordinates 1/r, (π-θ). 
     It will be seen that the provision of the zeros on the real axis provides the required quadrature relationship between the two filters, and that the remaining groups are subject to the constraint of symmetrical delay response so that this relationship is maintained. The proposed pole-zero groups meet this condition whilst permitting the introduction of poles causing signal enhancement only in the passband region and on the passband side of the transition region without the intrusion of poles causing enhancement in the stopband region. 
     For real filter coefficients, the pole-zero groups occur in complex conjugate pairs and imply a transfer function ##EQU1## where H&#39;(z) is the response attributable to the other singularities. 
     Preferably all the singularities in that section of the z-plane bounded by angles corresponding to the frequency limits of the transition band are poles. 
     The filter arrangement is conveniently implemented as a common sub-unit for enhancing frequencies in the transition zone and a sub-unit having its output connected to upper and lower sub-units each adapted to attenuate frequencies outside its own subband and, most suitably, to enhance frequencies within its own subband. 
     The performance and structure of digital filters according to the invention will now be described in terms of the singularities of the filter and an optimal network for the realisation of a preferred embodiment. The filter means includes two elements and the description will include: 
     (a) a definition of the inter-element symmetry, i.e. the necessary relationship between the singularities of one element and those of the other; 
     (b) a description of preferred intra-element symmetries, i.e. desirable relationships between the singularities of each element; 
     (c) preferred locations of the singularities of preferred embodiments; and 
     (d) a network being an optimal realisation of a preferred filter. 
     The splitting frequency will be taken as that most commonly required, namely 90°. 
    
    
     This description will refer to the accompanying drawings in which: 
     FIGS. 1 to 3 show intra element symmetry of the singularities 
     FIG. 4 shows the pattern of singularities in a preferred filter means 
     FIG. 5A and 5B illustrate conventional stages for implementing poles 
     FIG. 6A, 6B and 6C illustrate conventional stages for implementing zeros 
     FIGS. 7A and 7B illustrate stages for implementing poles and zeros at relative frequencies 0° and 180° 
     FIG. 8 illustrates a filter means according to the invention, using the stages shown in FIGS. 5 to 7 
     FIG. 9 shows a modification for the filter shown in FIG. 8 
     FIG. 10 is a more detailed version of FIG. 8 including the modification of FIG. 9, and 
     FIG. 11 is a reciprocal filter means for recombining subbands separated by the filter means of FIG. 8. 
    
    
     The two band splitting filters are required to have mirror image responses. This means that disposition in the z-plane of the singularities of one of the filters is the reflection in the imaginary axis of the singularity distribution of the elements of the other filter. For the desired quadrature relationship, the low-pass and the high-pass filter have zeroes on the unit circle on respectively the negative and positive real axes. This simple relationship means that it is necessary only to describe the one filter and the low pass element filter be selected for description. 
     FIG. 1 show a z-plane diagram. Ideally, the unit circle of this plane is notionally divided into two sectors as follows: 
     GAC which relates to the desired passband region in which the signal should, ideally, not be attenuated by the filter; 
     CEG which relates to the desired stopband region in which signal should, ideally, be attenuated to zero. 
     This perfection cannot be achieved since it requires an infinitely sharp cut-off edge. Thus, the filter also has transition band regions in which there is a continuous transition from &#34;pass&#34; to &#34;stop&#34;. BCD and HGF relate to the transition regions and will be called the z-plane transition zones. Similarly HAB relates to the reduced passband and will be called the z-plane passband region, and DEF relating to the reduced stopband and will be called the z-plane stopband zone. 
     The desired response is formed by groups of singularities which preserve the quadrature relationships, for ease of reference they will be referred to as type 1, type 2 etc. 
     TYPE 1 symmetry as shown in FIG. 1 is particularly appropriate for singularities in the transition band region. For filters of a given order, with a given stopband rejection and passband ripple, these singularities should be poles in order to keep the transition region optimally narrow. For best results it is also necessary that the pattern of the position of these poles be symmetrical on reflection in both real and imaginary axes. Thus the poles occur in sets of four, and poles 11, 12, 13 and 14 of FIG. 1 illustrate such a set. Their rectangular coodinates are (x, y) (x, -y) (-x, y) and (-x, -y). 
     There is a degenerate case, illustrated by poles 15 and 16 in which the poles coalesce to become a single pair. In this case the coordinates are (O, y) and (O, -y). The degenerate case will be referred to as Type 1D symmetry and it is preferred to incorporate one pair of this type in each element. Poles with Type 1 (and 1D) symmetry are self-symmetrical between the elements, i.e both elements contain identical pole structures in the transition zone. Type 1 (and 1D) singularities result in enhancement of the amplitude of signal components with frequencies in the transition band region. 
     TYPE 2 symmetry is appropriate for poles in the passband zone which are matched by zeros situated in the stopband zone. The basic symmetry is most easily specified using polar coordinates. A pole at (r, θ) is balanced by a zero at (1/r, π-θ) where 0&lt;r&lt;1. This generates a pair which is converted to a quartet by reflection in the real axis. FIG. 2 illustrate this, the quartet being 21, 22, 23 and 24. There is a degenerate case, referred to as type 2D, in which the two poles and the two zeros coalesce into a single pole 25 and a single zero 26 on the real axis. Using the notation above the pole is at (r,0) and the zero at (1/r, π). 
     TYPE 3 symmetry applies to zeros in the stopband region. Referring to FIG. 3 there is a zero 31 on the arc ED balanced by a zero 32 which is its mirror image in the real axis, i.e. on the arc EF. The degenerate case consists of a single zero 33 at E, i.e. polar coordinates (1, π). A zero at E is a preferred element of the low pass element. 
     It is preferred that all the singularities in the passband zones should be poles and all the singularities in the stopband zones should be zeros. It is important that the filtering should include elements which enhances frequencies in the transition band. To achieve this, it is preferred that all the singularities in the transition zone are poles although zeros may be permitted in the transition zone but only on the stop side of the centre. 
     Three preferred filter pairs according to the invention will now be described by way of example. They are identified as &#34;Filter 1&#34;, &#34;Filter 2&#34; and &#34;Filter 3&#34;. The filters are defined by their singularities and these are specified in Table 1 (for Filters 1 and 2) and in Table 2 (for Filter 3). 
     
                       TABLE 1                                                     
______________________________________                                    
       FILTER 1     FILTER 2                                              
         θ            θ                                       
ID  TYPE     r     LOW    HIGH  r     LOW   HIGH                          
______________________________________                                    
1A  P        0.9   90     90    0.93  90    90                            
1B  P        0.9   -90    -90   0.93  -90   -90                           
2A  P        0.5   89     91    0.65  86    94                            
2B  P        0.5   91     89    0.65  94    86                            
2C  P        0.5   -91    -89   0.65  -94   -86                           
2D  P        0.5   -89    -91   0.65  -86   -94                           
3A  P        0.2   0      180   0.2   0     180                           
3B  Z        5.0   180    0     5.0   180   0                             
4A  Z        1     112    68    1     102   78                            
4B  Z        1     -112   -68   1     -102  -78                           
5A  Z        1     157    23    1     110   70                            
5B  Z        1     -157   -23   1     -110  -70                           
6A  Z        1     163    7     1     145   35                            
6B  Z        1     -163   -7    1     -145  -35                           
7   Z        1     180    0     1     180   0                             
______________________________________                                    
 
    
     
                       TABLE 2                                                     
______________________________________                                    
             FILTER 3                                                     
                θ                                                   
ID     TYPE        r      LOW     HIGH                                    
______________________________________                                    
1A     P           0.95   90      90                                      
1B     P           0.95   -90     -90                                     
2A     p           0.85   85      95                                      
2B     Z           1.18   95      85                                      
2C     Z           1.18   -95     -85                                     
2D     P           0.85   -85     95                                      
3A     P           0.62   74      106                                     
3B     Z           1.61   106     74                                      
3C     Z           1.61   -106    -74                                     
3D     P           0.62   -74     -106                                    
4A     P           0.20   0       180                                     
4B     Z           5.00   180     0                                       
5A     Z           1.00   106     74                                      
5B     Z           1.00   -106    -74                                     
6      Z           1.00   180     0                                       
______________________________________                                    
 
    
     The columns of Tables 1 and 2 have the following significances: 
     &#34;ID&#34; contains a reference code to identify the singularities; 
     &#34;TYPE&#34; contains either &#34;P&#34; for pole or &#34;Z&#34; for zero; 
     &#34;r&#34; is the radius vector of the singularities; 
     &#34;θ&#34; is the relative angular frequency (in degrees) of the singularity. 
     It is emphasised that the values of &#34;r&#34; are the same for the low-pass and high-pass elements. The tables give both values of &#34;θ&#34;. 
     The pattern of singularities defined in Table 1 is illustrated in FIG. 4. (The pattern is not illustrated for Table 2). 
     The singularities of Table 1 are composed of symmetry groups. 
     TYPE 1D: one pair--namely 1A and 1B; 
     TYPE 1: one quartet--namely 2A, 2B, 2C and 2D; 
     TYPE 2D: one pair--namely 3A and 3B; 
     TYPE 3: three pairs--namely 4A and 4B; 5A and 5B; 6A and 6B; 
     SINGLE ELEMENT: namely 7. 
     It should also be noted that the singularities can be grouped as: 
     PASS BAND ZONE: one pole--namely 3A; 
     STOP BAND ZONE: eight zeros--namely 3B, 4A, 4B, 5A, 5B, 6A, 6B and 7; 
     TRANSITION BAND ZONE: six poles--namely 1A, 1B, 2A, 2B, 2C and 2D. 
     The singularities of Table 2 are composed of symmetry groups as follows: 
     TYPE 1D: one pair--namely 1A and 1B; 
     TYPE 2: two quartets--namely 2A, 3A, 2B, 3B, and 2C, 3C, 2D, 3D 
     TYPE 2D: one pair--namely 4A and 4B; 
     TYPE 3: one pair--namely 5A and 5B; 
     SINGLE ELEMENT: namely 6. 
     It should also be noted that the singularities can be grouped as: 
     PASSBAND ZONE: three poles--namely 3A, 3D and 4A; 
     STOPBAND ZONE: six zeros--namely 3B, 3C, 4B, 5A, 5B; and 6; 
     TRANSITION BAND ZONE: four poles--namely 1A, 1B, 2A and 2D; two zeros--namely 2B and 2C. 
     In a preferred implementation the filter means contains three sub-units, i.e. a common sub-unit to enhance frequencies in the transition band and separate sub-units to attenuate the frequencies in the two stop bands. 
     The implementation of these filters means will now be described with special reference to the realisation of filters similar to Filter 1. The stages used to implement this realisation will be described first. 
     FIG. 5A shows a conventional recursive stage for implementing a pair of poles. It comprises an input line 50 which enters an adder 51 the output of which is connected both to the output line 57 and a casscade of two delays 53 and 54. The output of delay 53 is connected via multiplier 56 (with coefficient L) to adder 52. The other input of adder 52 is obtained from delay 54 via multiplier 55 (with coefficient M). The output of adder 52 returns to form the second input of adder 51. 
     In use the stage stores two previous outputs on delays 53 and 54 and its output constitutes sum 
     
         y(o)=x(o)+Ly(1)+My(2) 
    
     where x(o) is the present input, y(1) is the previous output, y(2) is the output before y(1) and y(o) is the present output. 
     One stage of this type is needed to implement poles 2A and 2D a second to implement 2B and 2C. The coefficients L and M are calculated by standard techniques from the coordinates (r, θ) of the poles. In the case of poles 1A and 1B, coefficient L is zero and the stage can be simplified to that shown in FIG. 5B. Connecting the three stages in sequence implements the poles in the transition zone. 
     FIG. 6A shows a conventional stage for implementing a pair of zeros. It comprises an input line 60 which splits to an adder 65 and a cascade of two delays 61 and 62. The two delays are connected as inputs to adder 64, delay 61 is being connected via a multiplier 63 with coefficient L. The output of adder 65 is on the line 66 which carries the output of the stage. 
     In use, the stage stores two previous inputs in delays 61 and 62 and its output constitutes the sum: 
     
         y(o)=x(o)+Nx(1)=x(2) 
    
     where x(o) is the present input, x(1) is the previous input x(2) is the input before and y(o) is the present output. 
     Three stages of this type are needed: i.e. one for each pair of zeros 4A/4B, 5A/5B and 6A/6B. Simplified versions are needed to implement zeros 7 (Table 1). FIG. 6B shows an implementation which contains an inverter 67 so that DC is removed and low frequency signals are attenuated. This is used in the highpass element. FIG. 6C illustrates the equivalent stage for removing signals with relative angular frequency 180°. This is used in the lowpass element. 
     FIG. 7A shows a stage for implementing the singularities 3A and 3B. It comprises input line 70 and output line 76. The output of adder 71 is connected as a loop back to its second input. The loop contains delay 72 and multiplier 73 (with coefficient K). This part of the stage implements pole 3A. 
     The output of adder 71 is also connected via multiplier 74 (with coefficient K) to an adder 75. The delay 72 is connected to the other output to adder 75. This part of the stage implements the zero 3B. 
     It is emphasised that, because the two singularities 3A/3B are symmetrically related, the two multipliers 73 and 74 have the same coefficient. This makes it possible to modify the stage shown in FIG. 7A to save a multiplier at the expense of an extra delay. FIG. 7B shows such a modification wherein the two multipliers 73 and 74 (both having a coefficient K) are replaced by a single multiplier 79 (with coefficient K) and the single delay 72 is replaced by two delays 77 and 78. 
     The stages shown in FIGS. 5-7 can be combined into a filter according to the invention. One arrangement is shown in FIG. 8, each stage is shown as a square which contains the figure number of the item represented. 
     In this embodiment stages 81, 82 and 83 constitute a common sub-unit which enhances signal components with frequencies in the transition region. Stages 84H, 85H, 86H, 87H and 88H constitute the element realising the higher frequency sub-band. Stages 84L, 85L, 86L, 87L and 88L constitute the element realising the lower frequency sub-band. The two elements are the same except that the N and K coefficients in the &#34;high&#34; element are the negative of the N and K coefficients in the &#34;low&#34; element. A stage of the type shown in FIG. 6B is included when N and K are negative, and one of the type shown in FIG. 6C when N and K are positive. As mentioned above, the coefficients can be calculated from the singularities specified in Table 1. 
     The implementation may be in the form of a circuit which corresponds functionally to FIG. 8 or it may be organised as a sequential device in which all the multiplications are carried out in the same multiplier operator. In either case, it is important to keep the number of multiplications as small as possible. The circuit shown in FIG. 8 is almost optimal. Combining stages 83, 84H and 84L to the configuration shown in FIG. 9 saves on multiplier (and gives the optimum since each multiplier has a different coefficient). 
     The combination shown in FIG. 9 has input line 50 connected to adder 51 the output of which returns to adder 51 via delays 53 and 54 and multiplier 55. This corresponds to stage 83 of FIG. 8. Delays 53 and 54 also serve as delays 61 and 62 of stages 84H and 84L. The output of adder 51 and delay 54 are also connected to adder 65 (which is also common to stages 84H and 84L). The output of delay 53 is connected to multiplier 63 (which is also common to stages 84H and 84L) which is connected direct to adder 64H and via inverter 69 to adder 64L. The output of adder 64H, on line 66H, is connected to stage 85H. The output of adder 64L, on line 66L is connected to stage 85L. This reduction in the number of elements saves costs and/or reduces the cycle time of the processing. 
     A diagram of the full realisation is given in FIG. 10. 
     A network, for use at the receiving end, which recombines the subbands is shown in FIG. 11. This network is substantially the same as FIG. 10 in reverse order. 
     In a coding apparatus, the filters shown will be followed by down samplers and encoders, as is conventional; after transmission, the two coded channels are up-sampled and passed through interpolation filters prior to recombination. If, as here, the upper and lower band splitting filters have z-transform transfer functions H 1 , H 2  with H 1  (z)=H 2  (-z), then in order to satisfy the alias cancellation criteria (as discussed in the Esteban and Galand paper referred to above), upper and lower sub-band interpolation filters can be used with 
     K 1  (z)=H 1  (z) and K 2  (z)=-H 2  (z). 
     Thus, the interpolation filters can be identical to the band splitting filters except for inversion in one channel. In this case, of course, a common filter section will follow the two individual filter sections.