文獻(xiàn)標(biāo)識碼: A
文章編號: 0258-7998(2011)12-0133-04
短波通信主要通過電離層反射實現(xiàn),而電離層的隨機(jī)起伏變化導(dǎo)致了短波通信的不穩(wěn)定,使得通信可靠性降低[1]。為了研制新型短波通信系統(tǒng)和提高短波通信可靠性,需要對電離層狀態(tài)、物理特征以及電離層中電波傳播規(guī)律進(jìn)行研究。我國的電離層返回斜向探測研究始于20世紀(jì)50年代末,并取得了一定成果[2]。1990年以后,國內(nèi)從事電離層信道特性研究的學(xué)者主要是武漢大學(xué)的教授[3-4]。隨著通信技術(shù)的快速發(fā)展,有必要研制新的電離層(短波信道)斜向探測系統(tǒng)(IOSS),探測短波信道的特性,為下一代短波通信裝備的研制提供理論基礎(chǔ)。
近年來,數(shù)字信號處理器(DSP)芯片運(yùn)算能力不斷提高,在通信、電子、圖形圖像處理、自動控制等各個領(lǐng)域得到廣泛應(yīng)用[5-6]。DSP的軟件設(shè)計通常有三種方法[7]:C語言開發(fā)、匯編語言開發(fā)、C語言和匯編語言混合編程開發(fā)。軟件的算法表示方法[8]主要有:算法流程圖、盒圖、PAD圖和偽碼。本文采用算法流程圖表示算法。
1 IOSS系統(tǒng)硬件結(jié)構(gòu)和軟件結(jié)構(gòu)
IOSS系統(tǒng)硬件主要由DSP信號處理模塊、CPLD時序控制模塊、ADC/DAC模塊、電臺工作模式和頻率控制模塊、GPS模塊、GPS導(dǎo)航電文接收模塊、USB模塊、時鐘電路模塊、PLL模塊、PC終端和短波電臺組成,其整體框圖如圖1所示。DSP信號處理模塊主要負(fù)責(zé)探測數(shù)據(jù)、GPS導(dǎo)航電文數(shù)據(jù)、電臺控制命令的中轉(zhuǎn)傳輸,在GPS秒脈沖觸發(fā)下實現(xiàn)收發(fā)系統(tǒng)間的同步等。
IOSS系統(tǒng)軟件包括發(fā)送端系統(tǒng)軟件和接收端系統(tǒng)軟件。發(fā)送端和接收端系統(tǒng)軟件由PC端軟件、DSP端軟件、GPS導(dǎo)航電文的接收模塊軟件和電臺工作模式與頻率控制模塊軟件四部分組成。
2 DSP端軟件的設(shè)計
收發(fā)DSP端軟件主要完成GPS導(dǎo)航電文的傳輸、探測數(shù)據(jù),同步傳輸、電臺工作模式和頻率的傳輸?shù)裙δ?,其中,發(fā)端DSP軟件整體結(jié)構(gòu)如圖2所示。
2.1 主程序的設(shè)計
發(fā)端主程序主要包括“向PC請求數(shù)據(jù)”函數(shù)、“讀PC發(fā)來的命令頭”函數(shù)、“讀PC發(fā)來的數(shù)據(jù)包號”函數(shù)、“接收PC發(fā)來的數(shù)據(jù)”函數(shù)、“接收PC發(fā)來的控制電臺命令”函數(shù)、“接收控制電臺命令成功信息反饋給PC”函數(shù)、“發(fā)控制電臺命令給電臺狀態(tài)控制模塊”函數(shù)、“接收GPS電文”函數(shù)、“發(fā)GPS電文給PC”函數(shù)、“清空緩存”函數(shù)。“向PC請求數(shù)據(jù)”函數(shù)向PC發(fā)送數(shù)據(jù)請求命令頭0x3131和請求發(fā)送的數(shù)據(jù)包號,告訴PC可以將所請求的包號數(shù)據(jù)發(fā)給DSP。“讀PC發(fā)來的命令頭”函數(shù)和“讀PC發(fā)來的數(shù)據(jù)包號”函數(shù)是同一個函數(shù),主要是讀取PC發(fā)來的命令頭和數(shù)據(jù)包號,供后面的程序條件判斷使用。“接收PC發(fā)來的數(shù)據(jù)”函數(shù)將PC發(fā)來的短波信道探測數(shù)據(jù)按順序存入DSP片外RAM,等待發(fā)給DAC。“接收PC發(fā)來的控制電臺命令”函數(shù),接收PC發(fā)來的電臺工作模式和頻率控制命令,將其存入DSP片上緩存,由發(fā)控制電臺命令給電臺狀態(tài)控制模塊函數(shù)拆分成電臺能識別的格式后發(fā)給電臺工作模式和頻率控制模塊,同時由接收控制電臺命令成功信息反饋函數(shù)告訴PC控制電臺命令接收成功。“接收GPS電文”函數(shù)主要通過DSP的HPI口接收GPS導(dǎo)航電文接收模塊發(fā)來的、由GPS接收的格林威治時間和本地經(jīng)緯度信息數(shù)據(jù)。“發(fā)GPS電文給PC”函數(shù)將格林威治時間和本地經(jīng)緯度信息數(shù)據(jù)發(fā)給PC。“清空緩存”函數(shù)負(fù)責(zé)在每分鐘的第50 s和第56 s或與PC通信超時時將數(shù)據(jù)緩存區(qū)清空。發(fā)端主程序算法流程圖如圖3所示。
收端主程序主要包括“讀PC發(fā)來的命令頭”函數(shù)、“讀PC發(fā)來的數(shù)據(jù)包號”函數(shù)、“接收PC數(shù)據(jù)請求”函數(shù)、“發(fā)數(shù)據(jù)給PC”函數(shù)、“接收PC發(fā)來的控制電臺命令”函數(shù)、“接收控制電臺命令成功信息反饋給PC”函數(shù)、“發(fā)控制電臺命令給電臺狀態(tài)控制模塊”函數(shù)、“接收GPS電文”函數(shù)、“發(fā)GPS電文給PC”函數(shù)、“清空緩存”函數(shù)。“接收PC數(shù)據(jù)請求”函數(shù)主要是將數(shù)據(jù)塊號累加,保證與PC通信的實時性;讀取緩沖區(qū)數(shù)據(jù),保證與PC的數(shù)據(jù)傳輸在本環(huán)節(jié)能正常進(jìn)行。“發(fā)數(shù)據(jù)給PC”函數(shù)將ADC采集到的短波信道探測數(shù)據(jù)按包號發(fā)送給PC,其余函數(shù)與發(fā)端功能相同。
2.2 中斷的設(shè)計
IOSS系統(tǒng)的DSP中斷主要有外部中斷1、外部中斷3、定時器中斷和緩沖串口中斷。
外部中斷1由GPS導(dǎo)航電文接收模塊在每分鐘的00 秒發(fā)出的脈沖觸發(fā),在發(fā)端用于將準(zhǔn)備啟動發(fā)數(shù)據(jù)給DAC控制變量置位;在收端用于將準(zhǔn)備啟動接收ADC數(shù)據(jù)控制變量置位,并將發(fā)送的數(shù)據(jù)包號變量清零。外部中斷3直接由GPS模塊輸出的秒脈沖觸發(fā),在發(fā)端將準(zhǔn)備啟動發(fā)數(shù)據(jù)給DAC控制變量復(fù)位,將向PC請求數(shù)據(jù)控制變量置位,將開始發(fā)數(shù)據(jù)給DAC控制變量置位;在收端將準(zhǔn)備啟動接收ADC數(shù)據(jù)控制變量復(fù)位,將向PC發(fā)送數(shù)據(jù)控制變量置位,將開始接收ADC數(shù)據(jù)控制變量置位,將當(dāng)前向PC發(fā)送的數(shù)據(jù)包指示變量置位。其中,發(fā)端外部中斷3算法流程如圖4所示。在外部中斷1和外部中斷3的共同作用下,實現(xiàn)同步收發(fā),同步誤差在10-9 s數(shù)量級。
定時器中斷主要負(fù)責(zé)DSP與PC通信的計時。
緩沖串口中斷由ADC/DAC觸發(fā),在發(fā)端負(fù)責(zé)將短波信道探測數(shù)據(jù)發(fā)給DAC,在收端負(fù)責(zé)將ADC采集的短波信道探測數(shù)據(jù)存入DSP片外緩存區(qū)。其中,發(fā)端緩沖串口中斷算法流程如圖5所示。
3 DSP端軟件的實現(xiàn)和實測
在CCS5000編譯環(huán)境中,采用混合編程開發(fā)方法,通過匯編語言實現(xiàn)DSP的初始化,用C語言實現(xiàn)具體數(shù)據(jù)處理函數(shù)和中斷響應(yīng)函數(shù)的編寫。DSP與GPS導(dǎo)航電文接收模塊、PC終端、電臺工作模式和頻率控制模塊之間的數(shù)據(jù)通信分別采用不同的協(xié)議實現(xiàn)。協(xié)議采用應(yīng)答方式,以不同的命令頭實現(xiàn)與不同模塊的通信。
將設(shè)計的軟件通過編譯器編譯后,下載到DSP芯片進(jìn)行測試。測試階段主要解決以下問題:
(1)各模塊的兼容問題。由于程序是按功能模塊逐個編寫的,雖然模塊獨立工作良好,但在整合的過程中會出現(xiàn)某些模塊不能正常工作的問題。規(guī)范化各模塊變量的命名,并詳細(xì)分析模塊間參數(shù)的傳遞,畫出工作流程圖,找出原因,解決問題。
(2)起始段數(shù)據(jù)發(fā)不出去的問題。原因是中斷響應(yīng)函數(shù)中變量的置位、復(fù)位時間節(jié)點出了差錯,導(dǎo)致程序沒有協(xié)調(diào)好DSP與DAC之間、DSP與PC之間的數(shù)據(jù)傳輸。對中斷中變量的置位、復(fù)位時間節(jié)點重新進(jìn)行整理和分析,理清先后順序,并解決問題。
(3)收發(fā)同步的問題。有時由于天氣不好導(dǎo)致收發(fā)兩個GPS模塊輸出的秒脈沖之間誤差較大,進(jìn)而影響DSP的中斷響應(yīng),導(dǎo)致收發(fā)不能同步。
目前,所設(shè)計軟件已經(jīng)應(yīng)用在IOSS系統(tǒng)中,在長達(dá)5天的遠(yuǎn)程實驗過程中,該軟件工作一切正常。研制新的IOSS系統(tǒng)探測短波信道特性對下一代短波通信的研制具有重要意義。本文首先介紹了IOSS系統(tǒng)的硬件和軟件結(jié)構(gòu),設(shè)計了IOSS系統(tǒng)DSP端收發(fā)軟件功能結(jié)構(gòu),給出了軟件設(shè)計算法流程圖,詳細(xì)闡述了各子函數(shù)模塊的功能,采用C語言和匯編語言混合編程開發(fā)的方法在CCS5000平臺上實現(xiàn)了軟件程序的編寫,對軟件測試階段遇到的主要問題進(jìn)行了分析,說明了解決的辦法。測試和使用結(jié)果表明,軟件實現(xiàn)了所設(shè)計的功能,能可靠工作。
參考文獻(xiàn)
[1] 陳曦,趙正予,時雨,等.電離層斜向返回探測系統(tǒng)的主控制器研制[J]. 電波科學(xué)學(xué)報,2005,20(5):598-603.
[2] 管榮生,謝樹果,趙正予.我國電離層返回斜向探測研究40年[J]. 電波科學(xué)學(xué)報,1999,14(4):479-484.
[3] 陳雪濤,趙正予,劉進(jìn)華,等.電離層斜向返回探測系統(tǒng)軟件結(jié)構(gòu)[J]. 電波科學(xué)學(xué)報,2003,18(6):673-678.
[4] 楊國斌, 趙正予, 李世鵬.新體制電離層探測系統(tǒng)中頻接收模塊設(shè)計[J]. 電波科學(xué)學(xué)報,2009,31(4):816-821.
[5] 譚立志. 基于DSP-MCU的HPI口通信[J].現(xiàn)代電子技術(shù),2009(13):83-85.
[6] 鄒翼,曾文海,陳續(xù)喜.基于TMS320VC5402DSP的HPI方式自舉的設(shè)計與實現(xiàn)[J].計算機(jī)系統(tǒng)應(yīng)用,2009(3):152-155.
[7] 鄭紅, 吳冠. TMS320C54x DSP應(yīng)用系統(tǒng)設(shè)計[M]. 北京:北京航空航天大學(xué)出版社,2002.
[8] 呂國英,任瑞征,錢宇華. 算法設(shè)計與分析(第二版)[M]. 北京:清華大學(xué)出版社,2009.