throbber
(12) United States Patent
`Razazian et al.
`
`USOO6172987B1
`(10) Patent No.:
`US 6,172,987 B1
`(45) Date of Patent:
`Jan. 9, 2001
`
`(54) SWITCHING COMPRESSION ROUTINES
`WITH NO LOSS OF DATA
`(75) Inventors: Kaveh Razazian, Simi Valley; Xiao
`11.
`sing says Greer,
`y,
`(73) Assignee: Nortel Networks Limited, Montreal
`(CA)
`Under 35 U.S.C. 154(b), the term of this
`patent shall be extended for 0 days.
`
`(*) Notice:
`
`(21) Appl. No.: 09/190,389
`(22) Filed:
`Nov. 10, 1998
`(51) Int. Cl." .................................. H04J 3/16. H04J 3/1s
`(52) U.S. Cl. ........................... 370/468; 370/477; 375/241
`(58) Field of Search ..................................... 370/477,521,
`370/465, 468, 433, 435; 375/240, 241
`s
`s
`s
`s
`s 37
`
`(56)
`
`References Cited
`
`U.S. PATENT DOCUMENTS
`12/1982 Ruether et al. ...................... 370/465
`3/1988 MacCrisken ......................... 375/240
`
`4,365,112
`4,730,348
`
`1/1993 Shirai et al. ......................... 375/240
`5,182,762
`9/1993 Gutman et al. ...................... 370/477
`5.245,614
`9/1995 Sharma et al. ....................... 370/477
`5,452,289
`3. : 34: St. et al.
`3:2
`2Y-4-2
`OOS. . . . . . . . . . .
`5,642,421
`6/1997 Gray et al. ............................. 380/49
`5,666,350 * 9/1997 Huang et al. ........................ 370/435
`5,784,006 * 7/1998 Hochstein ...
`... 375/240
`5,818,843 * 10/1998 Virdee et al.
`370/435
`5,825,779 * 10/1998 Putnins et al.
`370/477
`5,889,767
`3/1999 Kimura ................................ 370/314
`* cited by examiner
`
`Primary Examiner Melvin Marcelo
`Assistant Examiner Phuongchau Ba Nguyen
`(74) Attorney, Agent, or Firm-Blakely Sokoloff Taylor &
`Zafman
`ABSTRACT
`(57)
`A method and apparatus to change compression methods
`without data loSS. A real time System for converting com
`pressing data using one of Several compression methods is
`described. When a change in compression rates is requested,
`the System changes compression methods while continuing
`to compress data in real time without data loSS.
`
`19 Claims, 5 Drawing Sheets
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`212
`
`
`
`
`
`LAW
`TO
`LINEAR
`of
`
`LINEAR
`BUFFER
`
`234
`
`ECHOTASK
`
`236
`
`NON-LINEAR
`pROCESSOR
`
`SERIAI
`PORT
`RECEIVE
`AUTO
`BUFFER
`
`SERIAl PORT
`ISR
`
`232
`
`EGRESS CIRCUITRY
`
`ANAIYSIS
`BUFFER
`
`2100Hz
`TONE
`DETECTION
`
`SIENCE
`DETECTION
`
`ENCODER
`
`PACK
`ANAIYSIS
`TASK
`
`
`
`
`
`
`
`
`
`
`
`
`
`256
`
`TOVOICE
`FRAME
`IWTERFACE
`
`/
`DTMP
`DETECTION
`
`VOICE
`FRAME
`TRANSMIT
`INTERFACE
`
`HPI
`TRANSMIT
`BUFFER
`
`254
`
`HOSTPORT
`INTERFACE
`ISR
`
`IPR2018-01413
`Sony EX1026 Page 1
`
`

`

`U.S. Patent
`
`Jan. 9, 2001
`
`Sheet 1 of 5
`
`US 6,172,987 B1
`
`104
`
`116
`
`112
`
`SYSTEM |
`
`WETWORK
`
`SYSTEM 2
`
`
`
`120
`
`108
`
`FIG, 1
`
`SWITCH COMPRESSION
`
`ECHO SWITCH PROG
`
`604
`
`
`
`LOAD NEW
`PARAMETER
`TABLE
`
`CALL ECHO
`SWITCH
`PROGRAM
`
`ECHO SWITCH
`FLAG=1
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`408
`
`608
`
`412
`
`612
`
`INITIALIZE
`ECHO CANCELLER
`ARIABLE
`
`ECHO SWITCH
`FLAG-2
`
`
`
`416
`
`RET, ECHO TEST
`
`RET, ECHO TEST
`
`FIG. 4
`
`FIG, 6
`
`IPR2018-01413
`Sony EX1026 Page 2
`
`

`

`US. Patent
`
`Jan. 9, 2001
`
`SheetZ 0f5
`
`US 6,172,987 B1
`
`_EEK
`
`EHmMGqu
`
`$9EmmmmEE«EmmaEEC_mEqEqis“$58$28
`
`
`kaNQQO
`
`mfi§h$20§
`
`mmxammgt
`
`«wwfim
`
`9%
`
`QX§§V
`
`«WESQ
`
`iv“
`
`DR
`
`m3§§~
`
`KK$SRG
`
`
`
`
`
`mEuSm_QRES__NESNEEm__EEEQ«$3_SEESEBWEE?_
`_mm$55_SN1__35%ka«ESQ"_weKE?_NEE.
`
`
`
`RQQQKMQI
`
`mukaQEN
`
`___
`
`bix
`
`k5§$<$fi
`
`thbm
`
`wok:
`
`wzvmm
`
`.t:fia$fi
`
`wukanzq
`
`EDRSHMQ
`
`QMQQUEM
`
`mmiu3<<
`
`kmE
`
` «MNxktsfimhummwkwm
`
`
`N9E
`
`kmequxamm
`
`Km
`
`NNN
`
`|PR2018—O1413
`
`Sony EX1026 Page 3
`
`IPR2018-01413
`Sony EX1026 Page 3
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`

`

`US. Patent
`
`Jan. 9, 2001
`
`Sheet3 0f5
`
`US 6,172,987 B1
`
`mwm
`
`qmm
`
`mat,5§
`
`KMMNQIUM
`
`uq
`
`*fifibxwotuw
`
`\:$<mmmmm
`
`mowé<$\
`
`van
`
`ESE
`
`wkmgq
`
`“352%
`
`in:5Emma
` QJQYE
`u$fidm&Smog
`
`«ES
`
`QEENSS
`
`QKMQQ
`
`uxfiaw
`
`mam©QO3%
`
`Etgm
`
`«$3Emus8%
`
`£35qukwmqQat
`
`mu$fiaw
`
`REMSGmuéq
`
`kfitfiQ
`
`QRRNSS
`
`«wtsmgéw
`
`uquqmq
`
`mnxaiswqmw
`
`limk
`
`kmmx
`
`msztegu
`
`Drum
`
`|PR2018—O1413
`
`Sony EX1026 Page 4
`
`IPR2018-01413
`Sony EX1026 Page 4
`
`
`
`
`
`
`
`
`
`
`
`
`

`

`U.S. Patent
`US. Patent
`
`Jan. 9, 2001
`
`Sheet 4 0f 5
`
`US 6,172,987 B1
`US 6,172,987 B1
`
`REED?HEv2
`
`mm.“5,Emmugged?
`
`
`
`EQEEmmmeEEEQBVWQEEEEQD?Imwmqm.
`
`
`
`
`
`
`
`Nmmv‘wflm\S.Qnfimomqu.32
`
`
`
`
`
` 3&6mEmv.93
`
`|PR2018—O1413
`
`Sony EX1026 Page 5
`
`IPR2018-01413
`Sony EX1026 Page 5
`
`
`
`
`

`

`U.S. Patent
`
`Jan. 9, 2001
`
`Sheet 5 of 5
`
`US 6,172,987 B1
`
`708
`
`SETAWALYSIS
`TEST CIRCUIT
`
`IWITIALIZE
`A/WALYSIS TASK
`CIRCUIT
`
`
`
`712
`
`
`
`
`
`
`
`ISG726
`PROTOCOL
`USED
`2
`
`
`
`
`
`SET G.726
`PARAMETERS
`
`SELECTA
`RATE FOR
`G.726
`
`SETECHO
`SWITCH
`FLAG-0
`
`RET, ECHO TEST
`
`720
`
`724
`
`
`
`728
`
`
`
`732
`
`
`
`
`
`FIG 7
`
`736
`
`SET PCM
`/ARIABLES
`
`IPR2018-01413
`Sony EX1026 Page 6
`
`

`

`1
`SWITCHING COMPRESSION ROUTINES
`WITH NO LOSS OF DATA
`
`US 6,172,987 B1
`
`15
`
`BACKGROUND OF THE INVENTION
`1. Field of the Invention
`The present invention relates to communication Systems.
`More particularly, the invention relates to an apparatus and
`method for avoiding data loSS during Switching of data
`transfer protocols.
`2. Description of Related Art
`With the rise of the internet and other communication
`devices that couple to telephone networks, Such as asyn
`chronous transfer mode (ATM) networks, the amount of data
`transferred by these networks has been dramatically increas
`ing. These networks have finite bandwidths. As data load
`increases, data congestion occurs. During periods of peak
`usage, when data congestion occurs, Sources of data, Such as
`telephones, and other digitized communication Systems,
`reduce the data load by compressing the data or changing the
`rate of data transfer. The amount of compression may vary
`according to the needs of the network. High compression
`rates Save bandwidth on the network, however, increases the
`processing time of the transmitting and receiving devices
`and may also result in deterioration of Signal quality. Lower
`compression rates require leSS processing to reconstruct the
`Signal and may allow for higher quality transmissions,
`however, during peak transmission times, the network may
`be unable to handle the high bandwidth requirements. Thus,
`many modern Systems determine the network capability at a
`particular time and Set a data transfer rate or compression
`routine used to compress data at the beginning of the
`transmission.
`One problem with the current System is that during long
`transmissions, the network may change State during the
`transmission. In particular, the network may have a large
`increase in data load or may have a large decrease in data
`load. Thus, it is appropriate to change data transfer rates or
`compression routines in the middle of a transmission.
`Currently, modern Systems Switch the compression routine
`or the data transfer rate in the middle of a transmission
`through a process called “real time algorithm' or “real time
`rate Switching.”
`One problem with real time algorithm or rate Switching
`techniques is that during the rate Switch, data is lost.
`Typically, a System transferring data includes buffers to
`accumulate data in frames for appropriate processing. For
`example, a G.726 processing System processes data in 80
`byte frames while a Pulse Code Modulation (PCM) system
`processes data in 40 byte frames. A “G.726 processing
`System” is defined to be a processing System using the
`International Telecommunications Union (ITU, formerly
`CCITT, International Telegraph and Telephone Consultative
`Committee) G.726 standard for 40, 32, 24, 16 Kbit/second
`Adaptive Differential Pulse Code Modulation (ADPCM)
`established in Geneva, Switzerland, 1990. Hereinafter, the
`ITU G.726 standard will be referred to as “G.726. A PCM
`system is defined to be a system which uses the ITU standard
`G.711 set forth by the ITU (formerly CCITT) in Geneva,
`Switzerland, 1972. Hereinafter, the ITU G.711 standard will
`60
`be referred to as “PCM'. During a Switch between com
`pression routines, data Stored in a buffer to accumulate a
`frame is typically discarded.
`Discarding of the data in the buffer creates several prob
`lems. At a minimum, Such data loSS is inconvenient, causing
`an annoying, high-pitched noise unpleasant to human ears
`when the Switch occurs. When data is being transferred, such
`
`45
`
`50
`
`55
`
`65
`
`25
`
`35
`
`40
`
`2
`as when a digital tone modulation frequency (DTMF) trans
`mission is occurring, the data loSS can result in digits or other
`Vital information being lost.
`Thus, a method and apparatus to handle Such compression
`routine transitions or rate changes is needed which mini
`mizes data loSS.
`
`SUMMARY OF THE INVENTION
`A method and apparatus to prevent data loSS during
`Switching of compression routines is described. Typically, a
`System which transferS communications data from a Source
`to a network compresses the data using one of Several
`compression routines. The compression routine Selected
`depends on the network load at a particular time. The
`compression routine Selected may be changed in the middle
`of data transmission to accommodate changing network
`loads. In order to avoid losing data during a change of
`compression routines, a Storage device buffers the commu
`nications data while a control circuit coordinates a change of
`compression routine to coincide with the output of a new
`frame of data from the Storage device.
`BRIEF DESCRIPTION OF THE DRAWINGS
`The advantages of the present invention will become
`readily apparent to those ordinarily skilled in the art after
`reviewing the following detailed description and drawings
`wherein:
`FIG. 1 is a System level diagram of a telephone coupled
`to a network.
`FIG. 2 illustrates a functional diagram of the System
`which receives data at a Serial port from the Source and
`transmits the data from a host port to the network.
`FIG. 3 is a flow diagram illustrating the processing of
`incoming data in one embodiment of the invention.
`FIG. 4 is a flow diagram illustrating a subroutine used by
`the echo task processing illustrated in FIG. 3.
`FIG. 5 is an example of a parameter table.
`FIG. 6 is a flow diagram illustrating an echo Switch
`Subroutine.
`FIG. 7 is a flow diagram illustrating Switching between a
`PCM and G.726 compression method.
`DETAILED DESCRIPTION
`The following detailed description describes a System to
`buffer data transferred from a Source device, Such as a
`telephone, to a network, Such as an asynchronous transfer
`mode (ATM) link. The system prevents data loss by buff
`ering incoming data until all data generated in an old
`compression routine has been processed before processing
`data using a new compression routine. By waiting until data
`in partial frames have been processed before Switching to a
`new compression routine, the System avoids the loSS of data
`which occurs from discarded partial frames.
`In the following description, various embodiments of a
`System and method for executing lossleSS Switching of
`compression routines will be described. The description will
`include details including the format and type of data being
`transmitted, the protocols used, the Subroutines called, and
`the circuitry used to implement the System. However, Such
`details are included to facilitate understanding of the inven
`tion and to describe alternate embodiments for implement
`ing the invention. Such details should not be used to limit the
`invention to the particular embodiments described because
`other variations which would be obvious to one of ordinary
`skill in the art are possible while Staying within the Scope of
`the invention.
`
`IPR2018-01413
`Sony EX1026 Page 7
`
`

`

`3
`FIG. 1 illustrates a portion of an overall system 100 for
`transferring data between a first communications device
`(e.g., first telephone 104) and a second communications
`device (e.g., second telephone 108). The network 112 is
`typically a digital network which may contain Switching
`equipment designed to transfer digital data. Typically the
`links within network 112 are asynchronous transfer mode
`(ATM) links carrying communication data from a wide
`variety of Sources to a wide variety of receiving devices. The
`current invention focuses on systems 116, 120 which trans
`fer the data from sources such as telephones 104,108 to the
`network 112. Each system 116, 120 typically includes two
`data paths, an ingreSS route which transferS data from the
`Source such as telephone 104 to the network 112 and an
`egreSS route which transferS data from network 112 to a
`receiving device which may also be a telephone 104. In one
`embodiment, data flows through system 116 in both
`directions, between telephone 104 and network 112. The
`current invention focuses on the ingreSS route, the transmis
`sion of data from the source such as telephone 104 to the
`network 112.
`FIG. 2 illustrates a block diagram of an embodiment of
`system 116. Although FIG. 2 illustrates a hardware imple
`mentation of the invention, it is recognized that in an
`alternate embodiment, Software may be used to implement
`the described invention. In the embodiment of the invention
`illustrated in FIG. 1, the source is a telephone. Serial port
`ISR 208 receives data in a variety of formats, including, but
`not limited to, Speech data and digital signal through line
`212. In one embodiment, a stream of data is received using
`a time division multiplexing (TDM) technique.
`Serial port ISR 208 transfers the received telephone
`communication data from line 212 to an ingress route 210.
`When the stream of data is received, ingress route 210 may
`include circuitry to generate frames of data. For example, a
`circuit Such as a digital signal processing (DSP) circuit may
`convert 5 msec Samples of received data into a frame of
`PCM data or a 10 msec sample into a frame of G.726 data.
`The frames undergo processing including compression
`using one of Several compression routines. When network
`112 is an ATM network, header data may be added to each
`compressed frame to generate a corresponding ATM cell for
`output to an ATM network. Although the following descrip
`tion has described an ATM network, the invention may also
`be used for other network types such as IP networks.
`Along ingreSS route 210, the received telephone data is
`processed to (1) remove echoes and (2) analyze and encode
`the data for transmission. Echo task circuit 214 performs
`removal of echoes while analysis task circuit 216 performs
`the processing and encoding of data. Analysis buffer 218
`receives data from the output of echo task circuit 214. The
`output of analysis buffer 218 is input into analysis task
`circuit 216. The following detailed descriptions will
`describe one embodiment of echo task circuit 214, analysis
`task circuit 216 and analysis buffer 218.
`Echo task circuit 214 is used to cancel line echoes (e.g.,
`electrical echoes) which may result from non-perform
`hybrids (devices that couple local two-wire to long distance
`4-wire circuits). Such echo canceling is important in tele
`conference Systems where two or more parties are connected
`via full duplex links to alleviate acoustic feedback problems.
`A serial port receive auto buffer 220 accumulates data
`from the telephone into Samples appropriate for processing
`by echo task circuit 214. In one embodiment, auto buffer 220
`stores 10-byte samples. The 10-byte samples are transmitted
`to echo task circuit 214 where a linear converter 222
`
`15
`
`25
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`US 6,172,987 B1
`
`4
`converts the received digital data to linear data. Thus, in one
`embodiment of the invention, PCM data received in 18-bit
`Segments is converted to a linear format. The output of the
`linear converter 222 is transferred to an analog to digital
`(A/D) linear buffer 224 which stores the data until high pass
`filter 226 is ready to receive data.
`High pass filter 226, adaptive filter 228 and double-talk
`detector 230 collectively operate as echo cancellation cir
`cuitry to remove echoes by Subtracting a filtered output from
`the microphone signal. Such a procedure is well known and
`described in detail in the Electrical Engineering Handbook
`by Richard C. Dorf, pages 401 to 403, published by IEEE,
`copyrighted 1993.
`More specifically, high pass filter 226 of the echo can
`cellation circuitry remove DC offsets from the received
`Signal. The output of high pass filter 226 is transmitted to a
`double-talk detector 230. Double-talk detector also receives
`signals from the egress circuit 232. When double-talk detec
`tor 230 detects duplicate Signals or redundant data present in
`both egreSS circuit 232 and high pass filter 226, adaptive
`filter 228 uses a summing circuit 234 to subtract the redun
`dant data from high pass filter 226 output to cancel the
`redundant data and remove the echo. Failure to cancel Such
`echoes may result in acoustic feedback or "howling.” Thus,
`echo task circuit 214 typically is always running and inter
`actively processing incoming Signals to cancel out echoes or
`feedback in the telephone signal. A non-linear processor 236
`converts the output of Summing circuit 234 into an appro
`priate digital format for analysis by analysis task circuit 216.
`A control circuit 238 continuously monitors incoming
`Signals and controls the flow of data through echo task
`circuit 214, analysis task circuit 216 and analysis buffer 218.
`Control circuit 238 may also maintain flags indicating when
`analysis buffer 218 is ready to transfer data, what compres
`Sion routine is being used by analysis task circuit 216 and
`other related information. In one embodiment of control
`circuit 238, a processor executes a computer program to
`implement control functions of ingress route 210. The
`computer program may be hard wired using circuit
`elements, or may be implemented as computer code Stored
`in a memory device. In the embodiment illustrated in FIG.
`2, control circuit 238 is implemented in echo task circuit
`214.
`Analysis buffer 218 stores the data output by echo task
`circuit 214 until needed by analysis task circuit 216. Analy
`sis buffer 218 is typically large, for example 256 bytes in one
`embodiment of the invention. Typically, the size of the
`analysis buffer will be greater than twice the largest frame
`Size times the number of channels being transmitted. The
`analysis buffer 218 accumulates data and tracks frames to
`transfer to analysis task circuit 216. For example, when
`PCM protocol is used, the analysis buffer 218 may store the
`data and track when 40 bytes to form a frame of data have
`been received. Other protocols such as a G.726 protocol may
`cause analysis buffer 218 to store and track data until 80
`bytes of data have been received to form a frame of G762
`data.
`An operating State machine or control circuit 238 con
`trolling System 116 determines the protocol used to transmit
`data over network 112 of FIG. 1. Analysis task circuit 216
`processes the received data according to the protocol
`selected for transmission by network 112 of FIG. 1. In one
`embodiment of ingress route 210, analysis buffer 218 trans
`fers stored data to tone detection circuit 240 of analysis task
`circuit 216. Tone detection circuit 240 determines whether
`the Signal received is a non-Speech Signal, for example, a fax
`
`IPR2018-01413
`Sony EX1026 Page 8
`
`

`

`S
`signal in which the fax transmits a 2,100 hertz notification
`signal. When the tone detection circuit 240 detects an
`incoming non-speech or “particular data type,” Such as a fax
`signal, the tone detection circuit 240 may forward the
`particular data type to a processing circuit Such as a fax/
`modem task circuit 242. Fax/modem circuit 242 stores
`current voice digitizing and Switches between compression/
`encoding methods Such as PCM encoding in order to make
`the highest possible data rate connection. When tone detec
`tion circuit 240 does not detect a particular data type, tone
`detection circuit 240 transfers the received data to a silence
`detection circuit 244 which detects silent periods. Silence
`detection circuit 244 transferS the Silent packets to a voice
`frame transmit interface 246. The voice frame transmit
`interface receives both Silence frames from Silence detection
`circuit 244 as well as any Special data types Such as fax
`Signals from faX/modem task circuit 242 and converts the
`data into appropriate form for transmission.
`When the data received from analysis task circuit is
`Speech data, encoder 248 encodes the Speech data while
`pack circuit 250 packs the encoded speech data. Encoding
`the Voice data in encoder circuit 248 and packing the data in
`pack circuit 250 produces a compressed Signal, conforming
`to a particular protocol and posted into an ATM frame. A
`typical ATM frame includes a header having specific infor
`mation that allows a receiving device to parse the data. A
`control System instructs encoder circuit 248 and pack circuit
`250 to produce data conforming to a particular speech
`compression for transmission at a particular data rate. The
`Speech compression or data rate Selected is based on the
`needs of the transmitting or Source device and the capabili
`ties of network 112 of FIG. 1 which receives the data. The
`output of the processed Voice data is transferred to a voice
`frame transmit interface 246 which prepares the data for
`transmission to an ATM link.
`When voice frame transmit interface 246 has prepared the
`data in a format appropriate for transmission, the data is
`forwarded to transmit buffer 252 which stores the data.
`Transmit buffer 252 transfers data to the network through
`host port interface 254.
`When a management circuit, Such as a host at a remote
`end indicates rate Switching is appropriate, prior art Systems
`do not retain data in analysis buffer 218. In order to avoid
`data loSS, one embodiment of the present invention causes
`control circuits in echo task circuit 214 to flag the beginning
`of the next frame of data in analysis buffer 218. The
`accumulation of data for the new compression routine
`continues while analysis task circuit 216 processes all data
`remaining prior to the flag in analysis buffer 218. By
`coordinating the Start of a new compression routine with the
`Start of a new frame, Switching of routines while transmit
`ting data in real time can be accomplished without data loSS.
`Analysis buffer 218 buffers data between the echo task
`circuit 214 and the analysis task circuit 216. In one
`embodiment, analysis task buffer 218 is a “circular buffer.”
`In a circular buffer arrangement, analysis buffer 218 includes
`a pointer which counts up from a first number Such a Zero to
`a last number such as 255 before restarting the count from
`the first number Such as Zero. AS data is received by analysis
`buffer 218, the looping of the pointer from Zero to 255
`coincides with the output of data to the analysis task circuit
`216. A control circuit sets encoder 240 and pack circuit 250
`to output data in a particular protocol. Analysis buffer 218
`outputs data in frames to correspond to the protocol Selected.
`For example the PCM protocol usually processes data in 40
`byte frame Segments while the G.726 protocol processes
`data in 80-byte frame Segments.
`
`45
`
`50
`
`55
`
`60
`
`65
`
`US 6,172,987 B1
`
`15
`
`35
`
`40
`
`6
`When the compression routine is Switched to generate a
`different protocol, analysis buffer 218 sets a flag to indicate
`protocol Switching After the control circuit instructs a
`change in protocol, analysis buffer 218 uses a counter to
`count until the last byte of data in a frame is received from
`echo task circuit 214 and Sets a flag to indicate the beginning
`of the next data frame. Control circuit 238 coordinates the
`Switch over to the new protocol by analysis task circuit 216
`to coincide with the Start of the new frame of data in analysis
`buffer 218. The operation of a system to control analysis
`buffer 218 is described in flowcharts 3, 4, 6 and 7 which
`follows.
`FIG. 3 is a flow diagram providing an illustrative embodi
`ment of the Overall System for controlling flag insertion
`while FIGS. 4–7 illustrate embodiments of Subroutines used
`by the overall system of FIG. 3. In FIG. 3, an echo task
`continuously checks the echo task circuit in block 304 and
`stores frames of received data in block 308. The frames of
`data are stored in the analysis buffer 218 of FIG. 2. Under
`normal operation, when no change of protocol is occurring,
`an echo Switch flag is maintained at a predetermined value
`Such as Zero. In block 312, when echo flag is determined to
`be Zero, normal process routines occur and a signal is posted
`in block 316. AS used in this patent, “posting a signal” is
`defined as posting of transferring data to an analysis task
`(ATASK). AS long as operations are normal, “normal”
`meaning no change of protocols or data transfer rates, the
`echo task continues in block 320 to monitor for protocol or
`routine changes.
`Control circuit 238 manages the System containing
`ingress route 210 of FIG. 2 to determine when a change in
`compression routines is needed. FIG. 4 illustrates the opera
`tion of the control circuit 238 to change the compression
`routine in one embodiment of the present invention. In FIG.
`4, a new parameter table is loaded into the System in block
`408. A parameter table typically includes data such as the
`compression routine description, allowed bit rates and pos
`sibly a rate number. Possible information transferred by a
`parameter table is illustrated in table 500 of FIG. 5. After the
`new parameter table is loaded and the change of compres
`Sion routine is executed, an echo Switch program is called in
`block 412. The operation of the echo Switch program will be
`described in FIG. 6. The echo flag is set to 1 or a value
`different from the predetermined value and the system
`returns to the echo task 304 of FIG. 3.
`In FIG. 3, during the next processing of decision block
`312, it is determined that the echo Switch flag is not set to
`Zero. Instead, in block 324, when it is determined that the
`echo Switch flag has been Set to one, a control circuit in the
`echo test circuit causes the analysis task circuit to consume
`current data in the analysis buffer 218 using the former
`protocol by posting of signals in block 328. This continues
`until all data corresponding to a frame is consumed. Thus,
`data is transferred and a Second Subroutine or the echo
`Switch Subroutine is called in block 332. The echo Switch
`Subroutine is described in FIG. 6.
`FIG. 6 shows the echo Switch Subroutine receiving the
`data in block 604. In block 608, the echo Switch Subroutine
`initializes the echo canceler variable for the echo task circuit
`214 of FIG.2 to correspond to the new protocol. Initializing
`the echo canceler variables may include Setting a new buffer
`length corresponding to the new compression method used
`as well as Setting pointers to the new functions which will be
`invoked by the new compression method. After changing the
`echo canceler variables in block 608, the echo switch flag is
`Set equal to 2 in block 612 and the System returns to echo
`task block 308 of FIG. 3.
`
`IPR2018-01413
`Sony EX1026 Page 9
`
`

`

`US 6,172,987 B1
`
`15
`
`25
`
`7
`While the analysis task circuit continues processing of
`data using the old compression routine, the echo task moni
`tors the echo Switch flag. When the echo task determines that
`the echo Switch flag is set to two in block 336, the echo task
`checks if the analysis task circuit has completed processing
`of data with the old compression routine.
`Whether processing of data is complete is checked by
`monitoring a buffer ready flag in block 340. In one embodi
`ment of the invention, the Setting of the buffer ready flag is
`determined by whether the buffer pointer is pointing to the
`end of a frame containing old data to be processed using the
`old compression routine. When the buffer pointer is not
`pointing to the end of a frame, the buffer ready counter is
`greater than Zero and the echo task does not invoke any
`functions to change the Speech compression routine. Thus,
`to avoid interruption of the analysis task circuit, a signal is
`not posted (or a function is not invoked) in block 344 to
`allow analysis task circuit to complete processing of the
`remaining data using the old compression routine.
`AS echo task circuit 218 transmits new frames of data to
`the analysis buffer, buffer waiting counter is incremented, in
`block 348. The buffer waiting counter is used to track how
`many frames of new data to be processed by the new
`compression function is buffered in analysis buffer 218 of
`FIG. 2.
`In blocks 336,340, the echo task continues monitoring of
`the buffer ready flag. A buffer ready flag Value greater than
`0 indicates that the analysis circuit has completed processing
`of data using the old compression routine and is at a break
`point between frames. When buffer ready flag indicates that
`the analysis buffer is at the break point, echo task calls an
`analysis task Subroutine in block 352. The analysis task
`Subroutine is described in FIG. 7.
`In block 708 of FIG. 7, the analysis task subroutine
`initializes analysis task circuit 216 of FIG. 2 to handle the
`new speech compression routine. In block 712, when a
`G.726 compression routine is Selected, the parameters for
`G.726 compression are set in block 720. The G.726 com
`pression Standard Supports Several different compression
`40
`rates. In block 724, a compression rate is Selected.
`In the illustrated embodiment of FIG. 7, a PCM compres
`sion routine may also be selected. When a PCM compres
`sion function is selected, the appropriate PCM variables are
`set in block 736. In block 728, the echo Switch flag is set to
`a value (e.g. 0) to indicate that the analysis task circuit is
`using the new compression function to process incoming
`data. In block 732, the system returns to the echo task
`processing routine of FIG. 3.
`In block 356 of FIG. 3, the echo task checks the buffer
`waiting counter and notifies the analysis task circuit to
`proceSS any new buffered frames of data accumulated during
`the Switch in compression routines. The System returns to
`normal operation by posting a Signal in block 360 and
`continuing the echo task in block 320.
`While certain exemplary embodiments have been
`described and shown in the accompanying drawings, it is to
`be understood that such embodiments are merely illustrative
`of and not restrictive on the broad invention, and that this
`invention not be limited to the Specific constructions and
`arrangements shown and described, Since various other
`modifications may occur to those ordinarily skilled in the art.
`What is claimed is:
`1. A data compression apparatus comprising:
`a storage device to buffer uncompressed data;
`an analysis task circuit to receive uncompressed data from
`the Storage device and to compress the uncompressed
`
`8
`data, the analysis task circuit Switchable between at
`least two compression routines used to compress the
`uncompressed data; and
`a control circuit to receive a request for a Switch in
`compression routines while transmitting compressed
`data in real time, the control circuit to Signal the
`analysis task circuit to Switch compression routines
`when information corresponding to a beginning new
`frame of uncompressed data is output by the Storage
`device.
`2. The apparatus of claim 1 further comprising:
`an echo task circuit to remove echoes from a Signal before
`input into the Storage device.
`3. The apparatus of claim 1 wherein the analysis task
`circuit includes a tone detection circuit to determine when
`the received uncompressed data is a fax transmission.
`4. The apparatus of claim 1 wherein the analysis circuit
`Switches between a G.726 compression routine and a PCM
`compression routine.
`5. The apparatus of claim 2 wherein the apparatus further
`comprises a Second buffer to temporarily Store uncom
`pressed data received from a Serial port before transfer to the
`echo task circuit.
`6. The apparatus of claim 2 wherein the control circuit
`Signals the analysis task circuit to Switch compression
`routines when a first byte of a new frame of uncompressed
`data is output by the Storage device.
`7. A data compression method comprising:
`compressing incoming uncompressed data using a first
`compression routine,
`receiving a signal requesting a change in compression
`routine while transmitting compressed data in real time;
`determining a beginning of a frame of uncompressed data
`in an analysis buffer; and Switching compression rou
`tines as the beginning of the frame of uncompressed
`data is output to an encoder Such that the compression
`of uncompressed data continues without data loSS.
`8. The method of claim 7 further comprising:
`

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket