| The Datasheet Archive - 100 Million Datasheets from 7500 Manufacturers. |
Digital Signal Processing Solutions Abstract This document d
Top Searches for this datasheetV.22 Modem Fixed-Point TMS320C2xx DSPs Digital Signal Processing Solutions Abstract This document describes V.22 modem implemented Texas Instruments TMS320C2xx digital signal processor (DSP). V.22 modem standard type modem 2400 bps, implemented full duplex. V.22 modem implementation includes transmitter, receiver with scrambling V.14 well handshake connection originate answer mode. Modulation demodulation carried sampling frequency kHz. Contents V.22 bis/V.22 Modulator.2 Theoretical Considerations Description V.22 bis/V.22 Module V.22 bis/V.22 Demodulator Global Structure Interface Symbol Demodulator V.14 Descrambling.10 V.22 bis/V.22 Interface.11 Interrupt Interface.11 User Interface Interface Functions Variables.12 Carrier(void) Fdisconnect(void).12 GetData(void).12 V14Send(Data) V14Stat(void) Figures Figure Figure Figure Figure Figure Figure Figure Main Transmitter Stages Baseband Modulator Modulator.3 V.22 Constellation Generation Modulated Sine Wave Flow Diagram Modulation Routine Receiver.8 Symbol Demodulator Digital Signal Processing Solutions February 1999 Tables Table Table Table Table Phase Changes Given Combination Bits v.22 Variables Used Sample Management Modulation Sequence Values Taken Variables Modulation Sequence.6 Commands.9 V.22 bis/V.22 Modulator Theoretical Considerations this paragraph, basic aspects baseband modulation that apply V.22 standard summarized. main transmitter stages shown Figure below: Figure Main Transmitter Stages Baseband Modulator transmitting filter aims reducing minimum bandwidth required transmit specified signal. filter output given input symbol represented filter shape. filter designed such avoid inter-symbol interference (ISI). optimum bandwidth without achieved with rectangular filter bandwidth (where denotes symbol rate symbols/s). This relation called Nyquist bandwidth constraint. ideal rectangular filtering physically realizable, frequently used filter so-called raised-cosine filter. filtered signal perfectly band limited without introducing ISI. However some "excess bandwidth" needed beyond theoretical minimum. filter transfer function given H(f) H(f) where absolute bandwidth minimum bandwidth. Thus difference W-W0 excess bandwidth. roll-off factor defined roll-off factor specifies excess bandwidth fraction given minimum required bandwidth (where excess bandwidth 100%). required bandwidth also written function symbol rate, (symbols/sec): V.22 Modem Fixed-Point TMS320C2xx DSPs These considerations apply baseband signals. Baseband modulated signals require twice bandwidth equivalent baseband signals. Thus minimum required bandwidth frequency translated signals given Digital baseband modulation converts symbol into sinusoidal waveform duration V.22 modem standard uses (Quadrature Amplitude Modulation) which consists independently amplitude-modulated carriers quadrature. amplitude phase varied according symbol transmitted. principle modulation illustrated Figure Figure Modulator V.22 standard uses symbols that consist bits (quadribits): bits used amplitude coding phase coding: V.22 Modem Fixed-Point TMS320C2xx DSPs Table Phase Changes Given Combination Bits v.22 First Bits Quadribits (2400 bps) Quadrant Change Phase Change Figure V.22 Constellation V.22 Modem Fixed-Point TMS320C2xx DSPs Amplitude modulation carried with following amplitudes: Each these values corresponds combination bits. symbol represented pulse shape given square root raised cosine with roll-off factor 0.75). square root raised cosine filter used maximize signal noise ratio output (matched filter). symbol sent every 1/600 second. However, symbol spreads about 3/600 second, that three superimposed symbols computed. This illustrated Figure Figure Generation Modulated Sine Wave Description V.22 bis/V.22 Module Sample Management V.22 bis/V.22 software module works 8-kHz sample rate. This means that symbol consists samples. only entire sample values processed, following modulation sequence implemented: samples, samples, samples. each modulation sequence, three complete symbols have been sent. complete symbol processed time. this purpose, buffer 2*14 words used. half buffer used output modulated signal line (output buffer) other half used compute next symbol representation (modulation buffer). Three different root raised cosine pulse shapes used each step modulation sequence (14-13-13). shape symbol consisting samples symmetrical about y-axis, whereas shape symbol containing samples left right shifted sample. Table summarizes variables used sample management modulation sequence described above. V.22 Modem Fixed-Point TMS320C2xx DSPs Table Variables Used Sample Management Modulation Sequence Variable Name FifoOut ModulSeq ModemOut Shape NbSamp FifoOutCnt P0Tmp1 Description Buffer modulation (output computation), 2x14 words Step modulation sequence 14-13-13 samples Pointer modulation buffer Pointer table containing shape 14-13-13 samples/symbol Number samples that generated Number samples output Temporary pointer output buffer each step modulation sequence pointers ModemOut P0Tmp1 point either beginning buffer FifoOut. case samples symbol, pointer beginning buffer points second buffer element. values variables each step modulation sequence given Table Table Values Taken Variables Modulation Sequence Variable ModulSeq ModemOut Current:2 Previous FifoOut+1 FifoOut+14 P0Tmp1 Previous FifoOut+14 FifoOut+1 XShape NcSamp FifoOutCnt Xshape1 Generate samples Output samples Step1 Next:1 Current FifoOut+14 FifoOut Current FifoOut+1 FifoOut+14 Current:1 Previous FifoOut FifoOut+14 Previous FifoOut+14 FifoOut+1 Xshape0 Generate samples Output samples Step2 Next:0 Current FifoOut+14 FifoOut+1 Current FifoOut FifoOut+14 Current:0 Previous FifoOut+1 FifoOut+14 Previous FifoOut+14 FifoOut Xshape2 Generate samples Output samples Step3 Next:2 Current FifoOut+14 FifoOut+1 Current FifoOut+1 FifoOut+14 8-kHz sample interrupt V.22 bis/V.22 contained file V22IT.ASM. Modulation Routine modulation routine contained file MODUL.ASM. called every samples (one complete symbol). function Modul carries modulation. flow diagram modulation routine shown Figure V.22 Modem Fixed-Point TMS320C2xx DSPs Figure Flow Diagram Modulation Routine same modulation routine used V.22 V.22. First impulse response representing current symbol determined. This performed routine ENCODE contained file ENCODE.ASM. Therefore symbol (constellation point) determined according bits sent. bits sent contained variable XBITS. Bits determine phase increment according Table Bits determine amplitude shown Figure Each entry constellation table (label: NewConst) contains real part LSBs (least significant bits) imaginary part MSBs (most significant bits). determine pointer raised cosine table from constellation combination with previous constellations. PtSin points real part PtCos imaginary part. root raised cosine tables labeled XShape0, XShape1 XShape2 depending step modulation sequence (see Table After routine ENCODE been carried out, shape which represents current symbol multiplied carrier. Originate mode carrier frequency equals 1200 Answer mode carrier frequency equals 2400 real part pulse shape multiplied sine whereas imaginary part multiplied cosine. sine cosine tables corresponding carrier frequencies contained file cos12_24.tbl. results multiplication added multiplied gain (variable TVGain). gain obtain output level line. Guard Tone Answer mode, guard tone 1800 implemented. decision whether send guard tone made command "at&gX" (X=0: guard tone, X=2: guard tone 1800 command set). command "at&g2" been executed, guard tone added modulated signal answer mode. guard tone table labeled Tab1800. V.22 bis/V.22 Demodulator Global Structure demodulator structure follows: V.22 Modem Fixed-Point TMS320C2xx DSPs Figure Receiver sample interrupt loads sample buffer. When there enough samples (cf. task switch) task switch calls demodulator routine. demodulator routine will work symbol. Once symbol been demodulated routine checks there enough samples start symbol. routine starts again; not, returns task switch. symbol demodulator routine gives (V.22 bis) (V.22) demodulated bits. then calls unscrambler V.14 routine. This routine UART function that will reconstruct block bits data, eliminating start stop bits. When block data created data buffer. Interface interface demodulator with upper layer made through variables mdm_sta, V22TR1, V22TR2, ALPHA, CID, speed functions SendCmd(), StartUart(), GetData(), modemini. mdm_sta status register (read only). mdm_sta last demodulated bits. next bits come from STWRD defined DSP20.I8X. These bits are: detector, detector energy detector. When gain lower than V22TR1 energy detector (carrier detected), when ALPHA higher than V22TR2 energy detector (carrier lost). Variable "speed" defines modem speed (2400 1200) V.14 function. Some commands send with SendCmd() specify V.22 V.22 have influence variable "speed". "Speed" must before using V.14 (StartUart()) allow right demodulated bit. Variable controls sample interrupt (main.asm) works. CIDMode after reset, (V.22/V.22 mode) modemini() (V22c.c) back CIDMode FdisConnect() (mainc.c main.asm) when modem loses carrier. must modemini() because, when value sample interrupt routine calls V.22/V.22 routine which initialized modemini(). Because V.22/V.22 function uses same memory CPTD function, lack initialization call CPTD function will hang software. Function modemini() initializes V.22/V.22 modem function. must called before interface V.22/V.22 bis. V.22/V.22 function uses same memory CPTD function, memory cleaned before starting. V.22 Modem Fixed-Point TMS320C2xx DSPs Function SendCmd() used configure V.22/V.22 modem. commands words bits. MSBs give command, LSBs parameter. available commands are: Table Commands Code Action Send force 2400bit/s Send force 1200bit/s Reset IRCNT (synchro) Enable time recovery Receiver mode Transmit mode Miscellaneous Parameter Data send Data send (good value) receive idle receive data transmit idle transmit enable 1xxx answer mode 0xxx calling mode xx01 2400bit/sec xx11 1200bit/sec used SendCmd() puts command into FIFO, command immediately executed. SendCmd() signifies whether there enough space FIFO. Only command taken every transmitter symbol. When there command available last command repeated. speed modem fixed command When StartUart() been called, last activated command used V.14 transmit data. command sendmarks (S1200) sent before calling StartUart() file V22b.c line sure that modem will start V.22 (not V.22 bis). This guarantees activation command. From state where user must give modulation scrambled sent, function StartUart() switches state where V.14 routine creates sent from what reads buffer. StartUart()also starts interpretation received bits V.14 bits them into buffer. decoded data buffer available through function GetData(). Function GetData() returns information from V.14 receive buffer. there data available, returns bits data sets FLAG20 FLAG10 indicates overflow buffer reset after calling GetData(). there data available, FLAG20 zero. Symbol Demodulator organization symbol demodulator follows: V.22 Modem Fixed-Point TMS320C2xx DSPs Figure Symbol Demodulator symbol demodulator demodulates samples symbol before unscrambling function. symbol made samples transmitting (1200 bps) (2400 bps) bits. first operation bandpass filter eliminate noise from band echo transmission. After filtering, signal normalized AGC. also used carrier detection. gain (ALPHA) compared thresholds determine whether there carrier. Demodulation follows consists multiplication signal sine cosine carrier. This creates paths which carry complex number-the signal manipulated from low-pass block decision block. low-pass filter follows multiplication sine cosine. output signal amplitude carrier. This complex amplitude undersampled with interpolator have four samples each symbol (600 Hz). these four samples used clock recovery, which control interpolator. equalizer uses other samples. After equalization phase shift, decision determines received means complex number. also computes error vector that used equalizer phase shift converge best value. have correct convergence equalizer, clock recovery must have performed their convergence. Once this done equalizer converge incoming signal sufficiently random. This condition exists sequence receiving scrambled one. equalizer must remain blocked that moment. command allowing convergence equalizer start SendCmd(0x43). V.14 Descrambling V.14 function that converts synchronous data asynchronous data viceversa. transmit side, incoming data asynchronous, with start bits stop bits. modulator itself works synchronously, transmitting 600*4 bits second, V.14 function placed between these environments. interface have with V.14 function based useful bits (without start stop bits). V.22 Modem Fixed-Point TMS320C2xx DSPs These bits sent V.14 with function V14Send(), which puts bits buffer. V.14 function called times second modulator bits needs. V.14 checks that data available buffer. not, sends stop bit; sends start cuts bits data 4-bit blocks. When bits data sent, fills with stop bits. V.14 also overspeed function that allows transmission asynchronous rate that little faster than 2400 bps. this, cancels transmission stop word from time time. This overspeed function controlled variable V14NbStop which define number words wait between removals stops. V.22 bis/V.22 Interface V.22 bis/V.22 software mode interfaces. interface towards telephone line (interrupt), other towards user. Interrupt Interface interface software module towards line made through sample interrupt routine. This routine SigmaIt main.asm. sample interrupt routine reacts receive send samples from AD/DA converter. these samples managed depends status modem. status modem defined variable _CID. When _CID variable modem status V.22 bis/V.22 mode. program goes file V22it.asm, which contains management samples tasks V.22 bis/V.22. V22it.asm transfers samples between AD/DA converter buffer modulation demodulation. there adequate sample symbol (1/600 second) interruption simply terminated. there adequate sample, modulation demodulation activated task generates (modulation) demodulates (demodulation) current symbol. User Interface example user interface implemented command routine mainc.c. first element interface function V22b(), which starts connection modem after dialing off-hook setting. This function uses global variable Modul define modulation speed direction sends back result connection (speed error). Once connection made, user interface made through functions GetData(), V14Send(), V14Stat() Carrier(). GetData() returns demodulated data from buffer available. V14Send() puts data sent into buffer when possible, V14Stat() shows whether there room transmit buffer. Carrier() checks carrier detect function. data used GetData() V14Send() 8-bits wide without start stop bits. GetData() suppressed start stop bit. V14Send() will start stop bits. V.22 Modem Fixed-Point TMS320C2xx DSPs Interface Functions Variables Carrier(void) Carrier() callable function. returns carrier, non-zero value carrier detected. variable specifying which mode processor available modes defined file comon.inc ModemMode this mode, processor operates V.22/V.22 mode. (The value that simpler test (less MIPS). ModemMode calling routine modemini() V22b.c).) NoMode: signal processing CIDMode: caller mode CPTMode: call progress mode FSKV23: V.23 mode FSKV21: V.21 mode CAUTION: This variable must handled with care because used interrupt could hang software used incorrectly. best through function modemini() initiate V.22/V.22 mode function Fdisconnect() return waiting mode. Fdisconnect(void) Fdisconnect callable routine defined main.asm. disconnects line sets CIDMode with initialization that mode. GetData(void) GetData() callable function that needs parameter. checks returns data from demodulation. returned data high-order bits lower bits flags, FLAG20 FLAG10. FLAG20 data available. FLAG10 overflow occurred. That means that data demodulated lost because user taken them fast enough. Calling GetData() clears FLAG10 that FLAG10 read only once when overflow occurs. data words 8-bits wide with start stop bits removed according V.14 standard. buffer size (FIRST_OUT) words bits. V.22 Modem Fixed-Point TMS320C2xx DSPs V14Send(Data) V14Send() callable routine, allows sending data modulator. returns negative value transmit buffer full does accept data. data 8-bit word lower position word. V14Send() function will Data start stop bits defined V.14 standard. function V14Stat() used whether buffer full. V14Stat(void) V14Stat() callable routine. returns transmit buffer full, non-zero value transmit buffer full. V.22 Modem Fixed-Point TMS320C2xx DSPs Contact Numbers INTERNET Semiconductor Home Page www.ti.com/sc Distributors www.ti.com/sc/docs/distmenu.htm PRODUCT INFORMATION CENTERS Americas Phone +1(972) 644-5580 +1(972) 480-7800 Email sc-infomaster@ti.com Europe, Middle East, Africa Phone Deutsch +49-(0) 8161 3311 English +44-(0) 1604 3399 +34-(0) Francais +33-(0) 1-30 Italiano +33-(0) 1-30 +44-(0) 1604 Email epic@ti.com Japan Phone International +81-3-3457-0972 Domestic 0120-81-0026 International +81-3-3457-1259 Domestic 0120-81-0036 Email pic-japan@ti.com Asia Phone International +886-2-23786800 Domestic Australia 1-800-881-011 Number -800-800-1450 China 10810 Number -800-800-1450 Hong Kong 800-96-1111 Number -800-800-1450 India 000-117 Number -800-800-1450 Indonesia 001-801-10 Number -800-800-1450 Korea 080-551-2804 Malaysia 1-800-800-011 Number -800-800-1450 Zealand 000-911 Number -800-800-1450 Philippines 105-11 Number -800-800-1450 Singapore 800-0111-111 Number -800-800-1450 Taiwan 080-006800 Thailand 0019-991-1111 Number -800-800-1450 886-2-2378-6808 Email tiasia@ti.com trademark Texas Instruments Incorporated. Other brands names property their respective owners. V.22 Modem Fixed-Point TMS320C2xx DSPs IMPORTANT NOTICE Texas Instruments subsidiaries (TI) reserve right make changes their products discontinue product service without notice, advise customers obtain latest version relevant information verify, before placing orders, that information being relied current complete. products sold subject terms conditions sale supplied time order acknowledgement, including those pertaining warranty, patent infringement, limitation liability. warrants performance semiconductor products specifications applicable time sale accordance with TI's standard warranty. Testing other quality control techniques utilized extent deems necessary support this warranty. Specific testing parameters each device necessarily performed, except those mandated government requirements. CERTAIN APPLICATIONS USING SEMICONDUCTOR PRODUCTS INVOLVE POTENTIAL RISKS DEATH, PERSONAL INJURY, SEVERE PROPERTY ENVIRONMENTAL DAMAGE ("CRITICAL APPLICATIONS"). SEMICONDUCTOR PRODUCTS DESIGNED, AUTHORIZED, WARRANTED SUITABLE LIFE-SUPPORT DEVICES SYSTEMS OTHER CRITICAL APPLICATIONS. INCLUSION PRODUCTS SUCH APPLICATIONS UNDERSTOOD FULLY CUSTOMER'S RISK. order minimize risks associated with customer's applications, adequate design operating safeguards must provided customer minimize inherent procedural hazards. assumes liability applications assistance customer product design. does warrant represent that license, either express implied, granted under patent right, copyright, mask work right, other intellectual property right covering relating combination, machine, process which such semiconductor products services might used. TI's publication information regarding third party's products services does constitute TI's approval, warranty, endorsement thereof. Copyright 1999 Texas Instruments Incorporated V.22 Modem Fixed-Point TMS320C2xx DSPs Other recent searchesTGA2801D-SG - TGA2801D-SG TGA2801D-SG Datasheet TC74VCX16373FT - TC74VCX16373FT TC74VCX16373FT Datasheet S50A3100FR - S50A3100FR S50A3100FR Datasheet NDP4060L - NDP4060L NDP4060L Datasheet NDB4060L - NDB4060L NDB4060L Datasheet e5560 - e5560 e5560 Datasheet CY28326 - CY28326 CY28326 Datasheet PT880 - PT880 PT880 Datasheet A4880E - A4880E A4880E Datasheet ATF1502SEL - ATF1502SEL ATF1502SEL Datasheet ATF1504SEL - ATF1504SEL ATF1504SEL Datasheet ATF1508SEL - ATF1508SEL ATF1508SEL Datasheet ATF1516SEL - ATF1516SEL ATF1516SEL Datasheet ADC12DS105 - ADC12DS105 ADC12DS105 Datasheet
Privacy Policy | Disclaimer |