CA1250036A - Oversampling echo canceller - Google Patents

Oversampling echo canceller

Info

Publication number
CA1250036A
CA1250036A CA000508318A CA508318A CA1250036A CA 1250036 A CA1250036 A CA 1250036A CA 000508318 A CA000508318 A CA 000508318A CA 508318 A CA508318 A CA 508318A CA 1250036 A CA1250036 A CA 1250036A
Authority
CA
Canada
Prior art keywords
echo
memory
signal
echo canceller
digital
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired
Application number
CA000508318A
Other languages
French (fr)
Inventor
Mahshad Koohgoli
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nortel Networks Ltd
Original Assignee
Northern Telecom Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Northern Telecom Ltd filed Critical Northern Telecom Ltd
Priority to CA000508318A priority Critical patent/CA1250036A/en
Application granted granted Critical
Publication of CA1250036A publication Critical patent/CA1250036A/en
Expired legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B3/00Line transmission systems
    • H04B3/02Details
    • H04B3/20Reducing echo effects or singing; Opening or closing transmitting path; Conditioning for transmission in one direction or the other
    • H04B3/23Reducing echo effects or singing; Opening or closing transmitting path; Conditioning for transmission in one direction or the other using a replica of transmitted signal in the time domain, e.g. echo cancellers
    • H04B3/231Echo cancellers using readout of a memory to provide the echo replica

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Cable Transmission Systems, Equalization Of Radio And Reduction Of Echo (AREA)

Abstract

OVERSAMPLING ECHO CANCELLER

Abstract of the Disclosure An echo canceller, for a digital transmission system using oversampled signals, comprises a memory for storing a plurality of digital words, each comprising an estimate of the echo corresponding to a unique address word. Each address word comprises a sequence of the input binary signal plus a number of bits representing the temporal position of each bit of said sequence in the corresponding bit period. The echo canceller also comprises a digital-to-analogue converter, means for subtracting the echo estimate from the input binary signal, and means for updating the contents of the memory.

(i)

Description

OVERSAMPLING ECHO CANCELLER

This application relates to Canadian patent application serial number 508,316 and Canadian patent application serial number 508,317, both filed concurrently herewith, in the name of M. Koohgoli.
The Background of the Inventio_ The invention relates to echo cancellers and is especially, but not exclusively, rela-ted to echo cancellers for digital transmission systems, such as the telephone network, using oversampled signals.
To satisfy -the demand for new services in the telephone network, digital data must be transmitted over the usual -two wire subscriber loopsO Indeed9 the specifications -For the Integrated Services Digital Network (ISDN) require a minimum digital transmission rate of 144 kB/second on the subscriber loop. This rate is increased to about 160 kB/second by signalling, framing and other such overhead requirements. Of the various transmission techniques available, for example -Frequency division multiplexing (FDM~, time compression multiplexing (TCM or "ping pong") and hybrid-plus-echo canceller ~ECH), the hybrid-plus-echo canceller technique is preferred because it offers the greatest range.
In the hybrid-plus-echo canceller system signals are sent in .
opposite directions simultaneously and occupy the same frequency band.

The echo canceller is required because the incoming FAR END signal would be corrupted by echoes of the outgoing data signal (NEAR END).

Such echoes are due to leakage across the hybrid itself and reflections at discontinuities in the loop, for example gauge changes and bridged taps. The echo canceller reduces echoes by deriving, from the outgoing signal, an estimate of the echo signal and subtrac-ting it from the incoming FAR END signal. If the estimate is accurate, the echo signal is subtracted out and only the actual FAR END signal remainsl Such adaptive echo cancellers exploi-t the fact that the echo is a function of the signal sent out i.e. there is correlation between them.
In practice, there is a finite number (N) of preceding bits which contribute to the echo at any instant. The effect of earlier bits is negligible. Thus, the length of the echo is said to be N
bits. As an example, the echo length for a 160 kB/second ISDN signal is deemed, for practical purposes, to be from ~ to 16 bits.
In order to produce the echo estimate, the echo canceller must be supplied with inFormation about the outgoing signal waveform for the preceding N bit period. One known kind of echo canceller, the transversal filter kind, does this by feeding the signal through a delay line and multiplying the delayed elements by adaptive coefficients. The multiples so produced are summated to give the estimated echo signal for subtraction from the FAR END signal. The coefficients are adapted progressively until the echo is eliminated.
Unfortunately this kind of echo canceller is not entirely satisfactory for cancelling "long" echoes, especially of signals coded under, For example, the AMI (Automatic Mark Inversion) format. Because it has to compute an echo estimate in each and every sample instant, the conventional transversal filter echo canceller would generally be complex and require high speed components, and hence not be satisfactory for practical application to such signals. In addition, ~2Sg~

it is limited to use with linear echo paths.
A recent kind of echo canceller, the "memory" kind~ is o-ften preFerred because i-t requires low speed hardware - since only one memory READ/WRITE and one addition are performed in sample time - and it can perform non-linear echo cancellation. Such a memory type of echo canceller is disclosed by ~essrs. Holte and Stufflotten in an article entitled "A New Digital Echo Canceller -For Two-Wire Subscriber Lines", IEEE Trans. on Comm. Vol. 29, No. 11, Nov. 1981. They disclose a large digital memory used to hold echo estimates for all possible combina-tions of the N bits of the outgoing binary signal waveform. The memory is addressed by the N bit word derived from the immediately preceding period of the outgoing waveForm, the outgoing signal "history". The echo estimate correspondlng to this word is read out of the memory, converted to an analogue signal by a D-to-A
converter and subtracted from the incoming (RECEIVED) signal. Each echo estimate in the memory is updated by incrementing/decrementing the estimate in a direction opposite to the sign of the estimation error i.e. such that the error is reduced.
A disadvantage of classical memory-type echo cancellers is that they require large memories. For an AMI signal~ each outgoing data bit can take values of ~1, 0 or -1 and therefore requires 2 bits for identifying its value. For a 12 bit period echo canceller, sampled twice per bit, twenty-four outgoing samples, or forty-eight bits, are required to represent the his-tory and therefore address the memory. The corresponding size of memory required, therefore, is
2**48 words, which is impractical. Accordingly such classical memory echo cancellers have limited use, restricted, say, to two level transmission and to echo length less than eight bits.
Another disadvantage oF the classical memory echo canceller is i-ts long convergence time - typically measured in seconds. This is because each location of the memory must be accessed many times (depending on -the initial value of each echo estimate) for convergence to the true estimate.
The problem is t`urther exacerbated when the signal is oversampledO For example, a three-bit "history" word or input signal sequence, used to address the memory, oversampled at a rate of four sample bits per bi-t period of the input binary siynal, would use a -total of twelve bits in the same time frame. This would entail the use of four shift registers, each three bits long, and a me~ory capacity of 2**12 bits.
Summary of the Invention In order to reduce this requirement, the present invention comprises an echo canceller, for a digital transmission system having a plurality of sample bits per bit of the input binary signal, comprising:
a memory for storing a plurality of digital words, each comprising an estimate of the echo cQrresponding to a unique address word;
address means for addressing said memory with a plurality of said unique address ~ords, each comprising at least a part of a sequence of said input binary signal and a number of bits representing the temporal position of each sample bit in the corresponding bit period of said sequence.
The echo canceller will also comprise D/A converter means, subtractor means, and updating means -for subtracting -the analogue echo estirnate from the input signal and updating the memory contents in dependence upon the residual or error.
The address means may further comprise means, in the form of a bistable or flip-flop for genera-ting the oversampling position-indicating bits in response l;o a clock signal.
In the preferred embodiment, the input binary signal is oversampled at a rate of four bits per period and the address means provides two position-indication bits~
In this specification, the term "bit period" is used to refer to the period of the information bits being transmitted rather than to the period of the more frequent sampling bits.
The echo canceller may also comprise a split memory, said memory comprising a part only of said split-memory, and addressed by a corresponding part only of said sequence of the input signal. Summing means may also be provided, conveniently between the memory sections and the D/A converter, for summing the outputs of the memory sections.
3rief Description of the Drawings An embodiment of the invention will now be described, by way of example only, with reference to the accompanying drawings, in which:-Figure 1 is a schematic diagram of an echo canceller;
Figure 2~ comprising parts a and b, shows an AMI encoder and its associated waveforms;
Figure 3, comprising parts a and b, is a schema-tic diagram of an AMI state generator, comprising a part oF the echo
3~
canceller, and its operating waveForms;
Figure 4 is a waveform diagram for the echo canceller itself;
Figure 5, comprising parts a, b, and c, illus-tra-tes a conventional way of memory addressing in oversampled memory echo cancellers;
Figure 6 illustrates the addressing of an oversampled echo canceller according to the inven-tion; and Figure 7 is a waveform diagram for the time position bit generator of the echo canceller.
Detailed Description of a Preferred Embodiment Referring now to Figure 1, a split-memory echo canceller is shown connected to an AMI-encoder 10 which takes binary data from an outgoing binary data line 12 and codes it using alternate mark inversion (AMI) coding and applies it to the outgoing transmission line 14. The data line 12 constitutes an input to the echo canceller, in particular ta a serial-to-parallel converter in the form of shift register 16 which is connected in series with a second serial-to-parallel converter in the form of second shift register 18.
Generally, in telephony, and hence in this specification, the path going to the subscriber is termed the receive path and the path from the subscriber to the exchange termed the transmi-t path, since the subscriber end of the transmission line 14 constitutes the reference point.
The echo canceller shown in Figure 1 is for cancelling up to 16 bit periods of outgoing data echo and operating with 4 samples per bit period. Consequently, the shift registers 16 and 18 each comprise ~S~3~

8 stages, the outputs of which are connected to the spli-t memory, sections of which comprise random access memories (RAMS) 20 and 22, respectively. In e-ffect, the shift registers 16 and 18 convert the serial binary data to parallel data for addressing the RAMS 20 and 22, respectively.
Each of the RAMS 20 and 22 comprises a 2K x 8 memory chip, for example the type HM6116 by Hitachi. RAM 20 is addressed by the most recent 8 bits of the outgoing binary (un-encoded) data stored by the shift register 16. RAM or memory section 22 is addressed by the next mos-t recent 8 bits of the outgoing data s-tored in shift register 18. In addition, the RAMS 20 and 22 are addressed by single state bits from AMI state generators 24 and 26, respectively. The final two address inputs of RAMS 20 and 22 are addressed by the two time position indicators (comprising signals 2CLK and CLK) from the time position bit generator 28.
The AMI-encoder 10, (Figure 2(a)), comprises an exclusive-OR
gate 30 with one input connected to receive the binary data on line 12 and its other input connected to the Q output of a flip-flop 32. The D input of the flip-flop 32 is connected to the output of the exclusive-OR gate 30 and to the input of an inverting amplifier 34.
The input and output of the amplifier 34 serve -to control switches 36 and 38, respectively. The switches 36 and 38 are connected in parallel between supply rails -V and +V, respectively and a third s~itch 40. The latter is con-trolled by the binary data signal from line 12 and is connected to the input of an analogue buffer and driver 42. The output of the analogue buffer and driver 42 is connected to line 14.

~2~i~036 The wave-forms -for the AMI-encoder 10, shown in Figure 2(b), include -the clock CLK for flip-flop 32, the binary data signal, the signal a-t poin-t s i.e., the output of the exclusive-OR gate 30, and the AMI-encoded output.
The AllI state bit generator 24 is shown in more detail in Figure 3(a) and comprises an exclusive-OR gate 50 having its inpu-t connected to the binary data line and its output connected to the D
input of a flip-flop 52. The Q output of flip-flop 52 is connected to the second input of the exclusive-OR gate and the state bit output for the corresponding RAM 20 or 22 is taken from the output of the exclusive-OR gate.
The waveforms applied to and generated by the AI~I state generator are shown in Figure 3(b) and comprise the clock, data, state bit and Q output of the flip-flop 52.
The waveforms applied to and generated by the time position bit generator, in the form of flip-flop 2~3, are shown in Figure 7. A
clock signal 2CLK is applied to the flip flop 28 and also applied to the most significant of the associated 2 addresses of the RAMS 20 and 22, respectively. The clock signal CLK from the Q outpu-t of the divide-by-2 flip-flop is applied to the shift registers 16 and 18 and also to the next most significant address port of each of the RAMS 20 and 22.
Considering the echo canceller as a whole again, in operation, and as illustrated in timing diagram Figure 3, four echo canceller cycles, each comprising four sections, are repeated in each bit period of the binary data signal. Here 'Ibit period" refers to the period of the binary data signal.

~s~

In the f-irst sec-tion of -the cycle, both memory sections i.e.
RAMS 20 and 22, are addressed by the outgoing data histories from shift registers 16 and 18, the state bits from the A~lI state bit generators 24 and 26, and the sample time position indicator bits from flip-flop 28. With both RAMS in -the READ mode, (signals applied to READ inputs 56 and 58 of RAMS 20 and 22 respectively), the partial echo estimate is read out from each memory. These partial estimates are added together by a summer 60 and also stored in registers 62 and 64 respectively~ each of which is an 8 bit register. Such storage takes place on the rising edges of the control signals L1, L2 shown in Figure 4.
In the second section of the cycle the result of the addition by summer 60, comprising the total echo estimate signal is transferred to register 66. This occurs on the rising edge of the DACLK control line (see Figure 4). This total echo estimate signal is then applied by the register 66 to a digi-tal-to-analogue con~erter fi8. At the conclusion of this cycle a subtracter 70 subtracts the total analogue echo estimate ~from the output of the digital-to-analogue converter) from the incoming signal, which comprises FAR END signal and echo. The residual signal is supplied as an output from the echo canceller on line 72 to a data recovery circuit (not shown) and also is applied to a comparator 74. The comparator 74 serves to determine the sign of the residual signal and store it in a flip-flop 76 on the rising edge of control signal SCIK
(see Figure 4~. This sign signal is used to determine whether the correction applied to the RA~lS 20 and 22 should be up or down. The actual increment or decrement each time is a single bit. A greater number may be used, if faster convergence is preferred.
As mentioned previously the output from -the RAMS 20 and 22 was applied -to regis-ters 62 and 6~, respectively. At the beginning of the third section of the cycle the sign bit and contents of register 62 are applied to adder 78. The incremented or decremented output oF
the adder 78 is applied to a tristate buffer 80. The tristate buffer 80 writes the new memory word comprising the output of summer 78 into RAM 20. More specifically, the READ/~RITE signdl for RAM 20 is held low for a wRITE operation and the tristate buffer 80 is enabled by bringing the control signal U~G1 (see Figure 1) to a low level.
In the fourth section of the cycle, a similar procedure is used to update the second memory section comprising RAM 22. In this case the old partidl echo estimate is enabled From register 6~ updated by adding or subtracting the sign bit and the revised or new partial echo estimate applied by means of tristate buffer 82 to RA~l 22.
The same sequence of opera-tions is repeated during the next echo canceller cycle.
So far as the reduction attributable to the AMI state bit is concerned, it should be appreciated that the contents of the memory sections, RAMS 20 and 22, will comprise individual unique ~ords as the partial echo estimates, but that, for a given pattern of 8 bits and a given pair of time position bi-ts, there will be two possible partial echo estimates from which to choose. The choice will be dependent upon the state of the AMI state genera-tor bit applied to input A8 (as shown in Figure 1). Although the memory size is doubled by virtue of doubling the number of words For each par-ticular sequence, the total saving is d fac-tor of 2M-1 due to the reduction of the nurnber oF

~5~)3~i address bits from 2M -to M~1, where M is the number of history bits of the binary data signal.
It should also be appreciated that the invention is not limited to AMI code but could be applied to other line codes.
The improvement or reduction in memory a-ttributable to the use of the time position indica~or means can be seen by referring to Figures 5 and 6. In both Figures, the binary data signal, shown here as 101, is sampled at four samplings per bit period as shown in Figure 5(b). The conventional arrangement shown in Figure 5 shows that the contents of the shift register (16 or 18) change sequentia~ly as the data is clocked into it. Eventually the shift register contains the 12 bits 111100001111 which are used to address the memory. Every shift register word will have a corresponding memory word.
As illustrated in Figure 6, however the echo canceller embodying the present invention uses the time position bits to encode the corresponding position in the bit period of each individual sample. Thus, in the particular example of four samples per bit period, only 2 bits are needed to designate the sample period or sampling instant. The table shown as Figure 5(c) shows the contents of the shift register, in this case, shown as having only 3 bits content rather than the ~ bits content of the actual embodiment. At any sampling instant, the shif-t register contents comprise the actual bit of the data signal plus two time position indicator bits. These show to which sampling instant the signal applies. Thus, in Figure 5(c) during the first four positions the shi~t register contents comprise the same l bit but the time position indicator bits change as they cycle through the four possible combinations 00, 01, 10, and 11.

~ .

3~

Each address word has d unique partial echo estimate corresponding to i-t in the corresponding one of RAMS 20 and 22. Thus, although the binary word part of the shift regis-ter conten-ts might remain the same for 4 bit periods, there will in e-ffect be four distinct address words as the time position indicator bits change.
It will be appreciated that other numbers of time position indicator bits might be used to accommodate different sampling ra-tes.

Claims (2)

THE EMBODIMENTS OF THE INVENTION IN WHICH AN EXCLUSIVE
PROPERTY OR PRIVILEGE IS CLAIMED ARE DEFINED AS FOLLOWS:-
1. An echo canceller for a digital transmission system having a plurality of sampling bits for each bit period of the input binary signal, said echo canceller comprising:
a memory for storing a plurality of digital words each of said digital words corresponding to an estimate of the echo corresponding to a unique address word;
address means for addressing said memory with a plurality of said unique address words, each of said address words comprising a sequence of said input binary signal and a number of bits representing the temporal position of the sample bit in the corresponding bit period of said input binary signal;
a digital summer for summing the outputs of said memory;
a single digital-to-analogue conversion means for converting the outputs of said summer into respective echo signal estimates;
subtractor means for subtracting each echo signal estimate from the input binary signal; and memory updating means responsive to the output of said subtractor means for increasing or decreasing the value of the corresponding said digital word in said memory.
2, An echo canceller as defined in claim 1, including divide-by-two means responsive to a clock signal for generating said number of bits representing temporal position.
CA000508318A 1986-05-02 1986-05-02 Oversampling echo canceller Expired CA1250036A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CA000508318A CA1250036A (en) 1986-05-02 1986-05-02 Oversampling echo canceller

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CA000508318A CA1250036A (en) 1986-05-02 1986-05-02 Oversampling echo canceller

Publications (1)

Publication Number Publication Date
CA1250036A true CA1250036A (en) 1989-02-14

Family

ID=4133047

Family Applications (1)

Application Number Title Priority Date Filing Date
CA000508318A Expired CA1250036A (en) 1986-05-02 1986-05-02 Oversampling echo canceller

Country Status (1)

Country Link
CA (1) CA1250036A (en)

Similar Documents

Publication Publication Date Title
US4605826A (en) Echo canceler with cascaded filter structure
CA1211812A (en) Distortion compensation apparatus and method
US4527020A (en) Echo canceller for a long-distance telephone network
CA2020804C (en) Adaptive echo canceller
US4488292A (en) PCM-TDM Switching system using time slot multiples
US4302631A (en) Decimator apparatus for decreasing the word rate of a digital signal of the type employed in digital telephone systems
US6563870B1 (en) Nonlinear echo compensator
US4769808A (en) Method of cancelling echoes in full-duplex data transmission system
US4237463A (en) Directional coupler
US4581492A (en) Digital duplex communication system
EP0057953B1 (en) Arrangement for correcting pulse distortion in homochronous data transmission
USRE34205E (en) Adaptive recognizing device
EP0303363A2 (en) Echo canceller
US4484322A (en) Circuit arrangement for suppressing outgoing-signal noises in system for bidirectional transmission of digitized signals over two-wire line
CA1250036A (en) Oversampling echo canceller
CA1250035A (en) Split-memory echo canceller
EP0243033A1 (en) Oversampling echo canceller
EP0243032A1 (en) Echo canceller for coded signals
CA1061004A (en) Digital interface for resynchronizing digital signals
JP3013613B2 (en) Data transceiver
JPS5829023B2 (en) data communication equipment
JPS59211338A (en) Echo canceller device
EP0125012A1 (en) Tone source for telephone systems
RU1818694C (en) Condenser
CA1215451A (en) Interface arrangement for buffering communication information between a transmitting and receiving stage of a time-space-time digital switching system

Legal Events

Date Code Title Description
MKEX Expiry