中國電信股份有限公司貴州分公司 李 琦
基于軟件通信結(jié)構(gòu)的基帶波形設(shè)計與實(shí)現(xiàn)
中國電信股份有限公司貴州分公司 李 琦
基于軟件通信結(jié)構(gòu),對SCA波形的開發(fā)進(jìn)行分析和探討,實(shí)現(xiàn)基帶波形的設(shè)計和實(shí)現(xiàn)。其SCA波形實(shí)現(xiàn)的工作流程主要包括波形的裝配、資源組件代碼的實(shí)現(xiàn)、資源組件的建模以及資源組件的粒度劃分。本文就SCA的對象研究對波形的設(shè)計和實(shí)現(xiàn)進(jìn)行分析,促使波形的開發(fā)和實(shí)現(xiàn)。
軟件通信結(jié)構(gòu);波形設(shè)計;波形實(shí)現(xiàn)
依據(jù)SCA體系層級關(guān)系可以對SCA體系結(jié)構(gòu)進(jìn)行定義,其SCA體系層級關(guān)系圖如下,自上而下共有七層。無線電系統(tǒng)硬件與下面三層的關(guān)聯(lián)非常的密切。無線電系統(tǒng)硬件平臺由硬件層代表,并被分為輸出輸入硬件(LED顯示屏、話筒、揚(yáng)聲器)、射頻硬件、數(shù)字計算硬件(FPGA、DSP、GPP)等。板級支持包層(BSP、Board Support Packet)處于第六層??煽繑?shù)據(jù)傳輸服務(wù)在不同硬件模塊之間得以完成,其是這一層在硬件層的基礎(chǔ)上進(jìn)行實(shí)現(xiàn)的。以太網(wǎng)接口、PCI總線接口等為硬件之間的接口。為了得到數(shù)據(jù)傳輸在硬件模塊之間的可靠,這一層要能夠提供總線級別的糾錯處理和數(shù)據(jù)校驗。串行接口與網(wǎng)絡(luò)服務(wù)由第五層進(jìn)行提供,并采用商業(yè)現(xiàn)貨對這一層進(jìn)行功能的實(shí)現(xiàn),且這層提供的網(wǎng)絡(luò)被限制在如802.X、RS232、以太網(wǎng)的低層網(wǎng)絡(luò)協(xié)議中。這一層可不用進(jìn)行高層網(wǎng)絡(luò)協(xié)議(Ad Hoe、IPv4/v6)的實(shí)現(xiàn),其實(shí)現(xiàn)體系為應(yīng)用層或操作系統(tǒng)層。
SCA體系結(jié)構(gòu)的核心由網(wǎng)絡(luò)與串行接口服務(wù)層、實(shí)時操作系統(tǒng)層、CORBA中間件層組成,在SCA規(guī)范中,核心框架層、CORBA中間件層、操作系統(tǒng)層被合成為SCA的操作環(huán)境。其應(yīng)用層的開發(fā)以及互操作性、可移植性、動態(tài)部署性的具備都由操作環(huán)境來決定。在應(yīng)用層中,低層硬件細(xì)節(jié)被操作環(huán)境屏蔽,促成了平臺與上層開發(fā)的無關(guān)聯(lián)性。
對于基帶數(shù)字信號在無線電臺中的處理而言,其主要進(jìn)行組幀、基帶調(diào)制、交織、編碼糾錯以及數(shù)據(jù)的加擾等。在接收基帶信號進(jìn)行處理的過程中能夠?qū)崿F(xiàn)信號的解擾、解碼糾錯、解交織、解幀、基帶解調(diào)、同步跟蹤、同步捕獲等處理。在進(jìn)行通信系統(tǒng)的擴(kuò)頻時,可在基帶調(diào)制前對偽隨機(jī)序列進(jìn)行使用,以此實(shí)現(xiàn)數(shù)據(jù)的擴(kuò)頻。當(dāng)進(jìn)行基帶的解調(diào)之后,可以繼續(xù)對同種的偽隨機(jī)序列進(jìn)行使用,實(shí)現(xiàn)數(shù)據(jù)的有效解擴(kuò)。為了提高信號抗突發(fā)差錯和隨機(jī)差錯的能力,可對信號進(jìn)行編碼糾錯、交織、加擾的處理。為促使信號抗干擾能力(多徑傳播和其他用戶引起的干擾)的增強(qiáng)和信息加密和隱藏的實(shí)現(xiàn),可對信號進(jìn)行擴(kuò)頻的處理。在發(fā)送信號的過程中,信號的交織、糾錯編碼、加擾一般由通用處理器GPP來實(shí)現(xiàn),并在FPGA上進(jìn)行組幀的完成,使信號得到有效的擴(kuò)頻調(diào)制。在接收信號的過程中,同步跟蹤、捕獲、擴(kuò)頻解調(diào)、解幀、一般由FPGA來完成,并在GPP上進(jìn)行信號的解交織的完成,再進(jìn)行糾錯解碼、解擾。電臺系統(tǒng)由GPP負(fù)責(zé)進(jìn)行整體的控制,如切換工作模式和電臺初始化等。在SCA中,本文對基帶信號的處理所采用的波形設(shè)計如圖1。
表1
表2
由圖1可知,一般在SCA資源組件上進(jìn)行數(shù)據(jù)在通用處理器上的處理。在波形運(yùn)行時,資源組件將會被部署到可執(zhí)行設(shè)備組件上。設(shè)備組件的映射為FPGA,F(xiàn)PGA硬件被設(shè)備組件進(jìn)行抽象處理,數(shù)據(jù)以硬件方式在FPGA上完成處理。裝配控制器資源對波形控制(參數(shù)配置、停止、啟動)進(jìn)行負(fù)責(zé)。
設(shè)備和資源共同組成波形。其波形的接收和發(fā)送的設(shè)備為Ptk7140Device。值得注意的是,Generic Executable Device并不是發(fā)送和接收的波形,其用于部署資源組件。Generic Executable Device本身也不具備一定的端口,無法實(shí)現(xiàn)與其他資源組件的連接。在波形的發(fā)送中,軟件對RS編碼進(jìn)行處理,因此必須進(jìn)行資源組件的應(yīng)用來實(shí)現(xiàn)RS編碼的操作。對于實(shí)現(xiàn)獨(dú)立通信功能的RS編碼而言,其與其他組件的耦合性并不大。依據(jù)粒度劃分原則,RS編碼組件滿足一個資源組件的劃分條件。而RS編碼資源組件的名稱被設(shè)計為RS Encode Resource,信源資源組件名稱則被設(shè)計為Source Resource。對于任何波形來說,進(jìn)行控制器組件的裝配實(shí)現(xiàn)控制是非常必要的,其發(fā)送波形裝配控制器資源組件被稱為Data Send FPGA Assembly Controller。其中RS Encode Resource的屬性如表1所示。
對于Source Resource組件而言,其需要一個數(shù)據(jù)端口來進(jìn)行信息的輸出,分別為輸出端口和輸入端口,Assembly Controller Data Send FPGA則需要一個控制Ptk7140Device組件、兩個控制資源組件、三個控制端口,每個組件還要有日志端口的加設(shè)。在波形設(shè)計中,要對組件之間連接拓?fù)溥M(jìn)行確定,其數(shù)據(jù)的發(fā)出由Source Resource來完成,將其送入RS Encode Resource的端口,再由輸出端口輸入DAC端口,見圖2。
有兩種資源組件可進(jìn)行波形的實(shí)現(xiàn),一種完成組件控制,另一種用于完成數(shù)據(jù)處理。此外,后者的代碼添加方式的原則與Ptk7140Device添加代碼的原則相一致。對于資源組件而言,其對硬件驅(qū)動不進(jìn)行操縱,因此,資源組件的實(shí)現(xiàn)只是為obtain Data函數(shù)或process Data函數(shù)的實(shí)現(xiàn),見表2。
在波形裝配包中,所有資源組件的描述波形裝配的域描、二進(jìn)制文件、描述單個組件的域描述文件和述文件都包含在其中。通過對域描述文件的解析,核心框架的完成將使資源組件的部署實(shí)現(xiàn)在目標(biāo)設(shè)備組件中,并對資源組件的屬性進(jìn)行初始化,從而實(shí)現(xiàn)組件之間的連接。其中,目標(biāo)程序的形式可以對對象開發(fā)的面向和組件開發(fā)的面向進(jìn)行一定的區(qū)別;相互獨(dú)立的描述組件關(guān)系的文件和二進(jìn)制文件可以共同構(gòu)成波形的裝配和節(jié)點(diǎn)的裝配。每個組件的開發(fā),都是相對于其他組件的開發(fā)而言的。如果要改變某一個組件,如對Sourcc Rcsource產(chǎn)生數(shù)據(jù)方式進(jìn)行修改,就只需對其源碼進(jìn)行修改并進(jìn)行編譯的完成工作。對其他組件來說,如RS Encode Resouco,就不需要進(jìn)行與波形裝配關(guān)系的修改。如果要進(jìn)行程序功能的升級,只需利用新組件進(jìn)行舊組件的替換,其也是組件開發(fā)的功能擴(kuò)展。
基于軟件通訊結(jié)構(gòu),本文對應(yīng)用嵌入式系統(tǒng)進(jìn)行波形的開發(fā)進(jìn)行了分析,依據(jù)波形的設(shè)計和實(shí)現(xiàn)完成波形在目標(biāo)平臺上的部署,并完成波形的既定功能。
[1]何東海,宋瑩,周小林.基于嵌入式系統(tǒng)的minimumCORBA機(jī)制及分析[J].計算機(jī)工程與應(yīng)用,2002,38(18):92-95.
[2]張昭理,胡金柱,CORBA構(gòu)件模型在分布式體系結(jié)構(gòu)中的應(yīng)用[J].計算機(jī)工程,2004,30(12):81-83.
李琦(1973—),男,貴州貴陽人,中級工程師,現(xiàn)供職于中國電信股份有限公司貴州分公司,長期從事軟件通信結(jié)構(gòu)規(guī)劃和管理。