TMS320C5402在16路全雙工來電顯示中的應(yīng)用
摘要:來電顯示的核心部分就是對來電顯示信號(hào)即FSK信號(hào)的解調(diào)。本文介紹了一種新型FSK解調(diào)算 法,該算法是基于最小均方差準(zhǔn)則的線性預(yù)測算法,能夠快速準(zhǔn)確的解調(diào)FSK信號(hào),非常適用于來電顯示。同時(shí)還介紹了TI公司的TMS320C5402 DSP芯片以及來電顯示在該芯片上的實(shí)現(xiàn)。
本文引用地址:http://butianyuan.cn/article/168508.htm來電顯示功能作為電話的一種附加功能,被越來越多的用戶所接受,成為電話必不可少的功能。本文介紹的就是一種新型FSK解調(diào)算法在來電顯示中的應(yīng)用,以及其在TMS320VC5402 DSP上的實(shí)現(xiàn)。
1 基本原理及算法設(shè)計(jì)
來電顯示(CID,Calling Identity Delivery)是主叫號(hào)碼信息識(shí)別及傳送的通俗說法,它是由具有主叫號(hào)碼信息識(shí)別功能的交換機(jī)將主叫用戶的號(hào)碼及呼叫的日期、時(shí)間等信息傳送給具有主叫號(hào)碼顯示功能的終端。
來電顯示的信息傳輸方式有2種:2FSK和DTMF。2FSK方式與 DTMF方式相比有如下的優(yōu)點(diǎn):(l)數(shù)據(jù)傳輸速率高,在規(guī)定時(shí)間內(nèi)能傳的字符數(shù)多;(2)2FSK方式支持ASCII字符集,而DTMF方式只支持?jǐn)?shù)字及少數(shù)字符。目前采用2FSK方式的國家和地區(qū)有:美國、中國、日本、英國、加拿大、比利時(shí)、西班牙、新加坡等;采用DTMF主要?jiǎng)t是以瑞典為代表的一些歐洲國家等。
2FSK是二進(jìn)制信號(hào)的頻移鍵控的英文縮寫,它是指傳號(hào)(指發(fā)送1)時(shí)發(fā)送某一頻率正弦波,而空號(hào)(指發(fā)送0)時(shí)發(fā)送另一頻率正弦波。根據(jù)Bell202的建議,來電顯示的數(shù)據(jù)傳送采用連續(xù)相位的二進(jìn)制頻移鍵控,比特率是1200bps,而1對應(yīng)的頻率是1200Hz,0對應(yīng)的頻率是2200Hz。
為了以下敘述方便,在此先給出FSK系統(tǒng)的原理框圖,如圖1所示。
整個(gè)系統(tǒng)的核心是FSK的算法設(shè)計(jì)。從圖1可以看出,關(guān)鍵幾步為:①調(diào)制,即如何實(shí)現(xiàn)任意頻率的正弦波發(fā)生器。②濾波器設(shè)計(jì)包括發(fā)送濾波器和接收端的低通濾波器。這一步相對來說比較簡單,可以利用MATLAB軟件來計(jì)算其系數(shù),只要給出要求的截止頻率等參數(shù)即可,這大大減輕了我們的工作。③解調(diào)方法使用延遲相乘法,其延遲步數(shù)k的選擇是整個(gè)系統(tǒng)的關(guān)鍵。④同步可使用鎖相環(huán)來實(shí)現(xiàn),這可以參考大多數(shù)文獻(xiàn)的鎖相環(huán)實(shí)現(xiàn)方法。為此,在討論中我們著重突出第①、③兩步。
1.1 調(diào)制部分
調(diào)制就是把數(shù)字信號(hào)變成適合于信道傳輸?shù)恼也āT诖死貌楸矸▉懋a(chǎn)生正弦波。因?yàn)?a class="contentlabel" href="http://butianyuan.cn/news/listbylabel/label/TMS320C5402">TMS320C5402中包含一個(gè)N=256點(diǎn)的Q15正弦表。相位Ψi在[0,2π]上均勻分布:Ψi=2iπ/N i∈[0,N-1]。假設(shè)sin_addr為正弦表首地址,則sin(Ψi)的地址是sin_addr+i。
調(diào)制信號(hào)可表示為:x(t)=Asin(2πFt)=Asin(Φ(t)),F={F0,F1}。設(shè)Te為抽樣間隔,則當(dāng)t=nTe時(shí),Φ(nTe)=Φn=2πFnTe=Φn-1+2πFTe
Φn=(Φn-1+ΔΦF)MOD2π
ΔΦF=2πFTe≤π (由仙農(nóng)定理知:1/Te≥2F)
Φn的取??衫枚M(jìn)制補(bǔ)碼的循環(huán)性實(shí)現(xiàn)。在程序中,Φn以16位有符號(hào)整數(shù)In表示:In=215Φn/π-215。例如,當(dāng)Φn=0時(shí),In=-215;當(dāng)Φn=π時(shí),In=0;當(dāng)Φn=2π時(shí),In=215,超出了表示范圍,變成-215,這樣便起到了取模的作用。
由In確定i方法為:i=In/(216/N)+N/2,其中216/N為正弦表相鄰兩點(diǎn)的相位差值,相應(yīng)的ΔI=215ΔΦF/π=216FTe。
假設(shè)絕對幅度誤差為dx,則AsinΔΦF2dx
Asin(2π/N)2dx
A2π/N2dx即N>Aπ/dx
這就是對正弦表大小的要求。反過來,如果給定N,則對信號(hào)幅度提出了限定。
對于v.23,比特率為1200bps,而采樣率一般為8000Hz,每個(gè)比特的采樣點(diǎn)數(shù)為8000/1200=20/3,不為整數(shù)。為了處理方便,調(diào)制時(shí)可以提高采樣率使其為24kbps,則每個(gè)比特采樣點(diǎn)數(shù)為20。但要注意,發(fā)送到線路上的信號(hào)采樣率仍為8000Hz,可用程序的簡單循環(huán)控制實(shí)現(xiàn)。按照這種處理辦法,當(dāng)發(fā)送比特“1”時(shí),ΔI=216F1Te=216×1300×1/(8000×3)=3550;當(dāng)發(fā)送比特“0”時(shí),ΔI=216F0Te=216×2100×1/(8000×3)=5734。
評(píng)論