于海鵬,木建一
(1.嘉興南湖學(xué)院,浙江嘉興,314000;2.中電科(寧波)海洋電子研究院有限公司,浙江寧波,315040)
海上人命安全公約規(guī)定了406MHz緊急衛(wèi)星無線電示位標(biāo)(EPIRB)的測(cè)試和年檢的要求,對(duì)EPIRB的年檢過程包括外觀、安裝位置、電池電量、發(fā)射頻率、識(shí)別碼信息等十多項(xiàng)內(nèi)容,其中對(duì)EPIRB技術(shù)參數(shù)的檢測(cè)需要專用的檢測(cè)設(shè)備來完成。
以往市場在售的示位標(biāo)檢測(cè)儀由國外產(chǎn)品壟斷,操作界面均為英文界面,且測(cè)試過程繁瑣,對(duì)于大多數(shù)用戶來說操作上有一定難度。本論文設(shè)計(jì)了一種由ARM作為控制器,并基于FPGA完成相位解調(diào)運(yùn)算的硬件電路,該電路可應(yīng)用在專用的示位標(biāo)檢測(cè)設(shè)備中,具有性能可靠、操作簡單、可檢測(cè)多種標(biāo)準(zhǔn)的示位標(biāo)產(chǎn)品等特點(diǎn)。
本產(chǎn)品設(shè)計(jì)采用中頻數(shù)字采樣的方法,406.04MHz和121.5MHz信號(hào)經(jīng)過濾波后和本振信號(hào)進(jìn)行混頻,得到6MHz的中頻信號(hào)。中頻信號(hào)由AD進(jìn)行帶通采樣,數(shù)據(jù)送給FPGA,在FPGA內(nèi)部采樣信號(hào)和兩路正交的本振信號(hào)進(jìn)行混頻,混頻后的數(shù)據(jù)送給CPU進(jìn)行濾波解碼。

圖1 示位標(biāo)檢測(cè)儀解調(diào)電路框圖
本方案中CPU需要對(duì)FPGA的數(shù)據(jù)進(jìn)行并和顯控模塊進(jìn)行交互,因此必須將需要高速大量的計(jì)算放到FPGA中實(shí)現(xiàn)。FPGA主要進(jìn)行乘法運(yùn)算,利用FPGA的并行運(yùn)算能力,可以同時(shí)進(jìn)行兩路乘法運(yùn)算,運(yùn)算結(jié)果送到CPU進(jìn)行后續(xù)處理,其中與A/D采樣信號(hào)進(jìn)行正交解調(diào)運(yùn)算的NCO信號(hào)由FPGA內(nèi)部產(chǎn)生。
本項(xiàng)目中的控制器考慮采用意法半導(dǎo)體公司的ARM芯片STM32F103,該芯片最小封裝為LQFP48,體積小適合便攜設(shè)備使用,與FPGA通信可直接采用I/O引腳相連,通過預(yù)先設(shè)定的通信協(xié)議,向FPGA下發(fā)控制命令,同時(shí)從FPGA讀取解調(diào)運(yùn)算結(jié)果。

圖2 STM32F103控制器部分引腳原理圖
上圖中,data_out和cmd_in分別為ARM與FPGA進(jìn)行通信的數(shù)據(jù)總線和命令總線,SEND_EN和CMD_CTRL分別為ARM與FPGA進(jìn)行數(shù)據(jù)和命令通信所需的使能引腳。UART_ARM_RX和UART_ARM_TX作為ARM向外部手持機(jī)主板發(fā)送解調(diào)結(jié)果的串口數(shù)據(jù)線。
FPGA在系統(tǒng)中有三個(gè)作用:一是根據(jù)ARM控制指令對(duì)模擬電路鎖相環(huán)進(jìn)行頻率切換控制;二是通過串行A/D對(duì)模擬電路混頻以后的中頻信號(hào)進(jìn)行帶通采樣;三是對(duì)采樣信號(hào)進(jìn)行正交解調(diào)運(yùn)算,并把運(yùn)算結(jié)果傳送給ARM控制器。
FPGA接收ARM控制器的指令,利用SPI總線對(duì)鎖相環(huán)進(jìn)行寄存器操作和頻率切換,同時(shí)根據(jù)反饋引腳對(duì)鎖相環(huán)當(dāng)前狀態(tài)進(jìn)行判斷,如圖3所示。

圖3 FPGA控制鎖相環(huán)電路原理圖
FPGA對(duì)A/D芯片的控制同樣采用SPI總線,在空閑時(shí)刻工作在頻率捕捉狀態(tài),使用較高的采樣率以便快速捕捉有效信號(hào)頻率,在信號(hào)捕捉到以后切換到較低采樣率,通過正交信號(hào)進(jìn)行精確計(jì)算,如圖4所示。

圖4 FPGA控制A/D電路原理圖
FPGA與ARM的通信利用6位控制線傳輸指令,8位數(shù)據(jù)線傳輸解調(diào)結(jié)果,同時(shí)另有兩根控制線分別作為命令使能和數(shù)據(jù)使能,確保通信的可靠性,通信引腳的連接如圖5所示。

圖5 FPGA與ARM通信的引腳原理圖
由于示位標(biāo)檢測(cè)儀的PCB面積較小,A/D芯片選用SPI總線的7276ARMZ,該款A(yù)/D芯片封裝面積小,電路連接簡單,采用SPI總線,只占用FPGA的三個(gè)I/O引腳即可,很適合本項(xiàng)目小面積PCB使用。A/D芯片在電路中的電氣連接如圖6所示。

圖6 A/D采集電路原理圖
圖中,VIN為模擬信號(hào)輸入引腳;nCS為片選信號(hào),由FPGA進(jìn)行控制;SDATA和SCLK為SPI總線,由FPGA給出時(shí)鐘信號(hào),并讀取轉(zhuǎn)換數(shù)據(jù)。
本電路的工作流程是ARM控制器首先發(fā)出指令,對(duì)輸入信號(hào)進(jìn)行頻率捕捉,此時(shí)由較高頻率的采樣率對(duì)輸入信號(hào)進(jìn)行采樣和正交處理,若某一時(shí)刻判斷信號(hào)功率超過閾值,則鎖定當(dāng)前信號(hào)頻率同時(shí)改為較低頻率的采樣率對(duì)有效信號(hào)進(jìn)行采樣,通過正交解調(diào)處理后,將結(jié)果送入ARM,再由ARM對(duì)結(jié)果進(jìn)行相位比較后作解碼處理。
電路中FPGA主要負(fù)責(zé)控制模擬電路的鎖相環(huán),對(duì)采樣頻率進(jìn)行切換以及信號(hào)的正交解調(diào)運(yùn)算,程序運(yùn)行的原理框圖如圖7所示。

圖7 FPGA解調(diào)程序流程圖
解調(diào)電路上電啟動(dòng)以后,F(xiàn)PGA首先根據(jù)ARM發(fā)送的指令啟動(dòng)模擬電路的鎖相環(huán),并選擇鎖相環(huán)工作頻率。若解調(diào)121MHz信號(hào),則由ARM直接解調(diào)輸出。若解調(diào)406MHz信號(hào),則先將A/D設(shè)置為較高采樣率,一次性采集800個(gè)點(diǎn)并進(jìn)行正交運(yùn)算,結(jié)果送至ARM進(jìn)行判斷,如判定為有效信號(hào),則鎖定當(dāng)前正交頻率,同時(shí)降低A/D采樣率,每次采集40個(gè)點(diǎn)進(jìn)行正交運(yùn)算,并將結(jié)果送入ARM,最后由ARM作解碼處理并向上位機(jī)軟件輸出結(jié)果。
本文設(shè)計(jì)的FPGA數(shù)字解調(diào)電路,功能是接收無線電示位標(biāo)發(fā)射的信號(hào),通過模擬鎖相環(huán)的混頻處理,利用FPGA控制A/D芯片對(duì)混頻后的中頻信號(hào)進(jìn)行帶通采樣,再由FPGA進(jìn)行正交解調(diào)運(yùn)算后將結(jié)果送入到ARM,最后由ARM解碼輸出。
該電路采用數(shù)字信號(hào)處理方式,器件數(shù)量較少,電路結(jié)構(gòu)簡單,只要預(yù)先確定工作指標(biāo)和參數(shù),解調(diào)結(jié)果可直接通過串口電路輸出,設(shè)備的操作方式簡單,具有一鍵啟動(dòng)、聲音提示等特點(diǎn),在測(cè)量示位標(biāo)時(shí)不需要其他額外操作。在投入市場后,對(duì)打破國外壟斷,推動(dòng)船用產(chǎn)品的國產(chǎn)化起到良好效果,在實(shí)際使用時(shí),得到客戶的一致好評(píng)。