1 引 言
車載導(dǎo)航監(jiān)控終端可廣泛用于交警巡邏車,、消防用車,、公安用車、運鈔車,、長途客車及一些特殊車輛上,, 監(jiān)控中心通過無線通信網(wǎng)絡(luò)與車載導(dǎo)航監(jiān)控終端進行信息交流, 從而實現(xiàn)監(jiān)控中心對車輛的集中,、高效,、可視化管理以及車輛之間的相互協(xié)作。
本設(shè)計系統(tǒng)分析了車載導(dǎo)航監(jiān)控終端的各種功能需求,, 借助 ltera Stratix" title="Stratix">StratixTM 系列FPGA EP1S10" title="EP1S10">EP1S10豐富的邏輯資源,, 應(yīng)用SOPC" title="SOPC">SOPC Builder開發(fā)工具實現(xiàn)了車載導(dǎo)航監(jiān)控終端硬件結(jié)構(gòu)的高度集成。同時,,利用N ios嵌入式處理器強大的處理能力,, 配合使用 C /OS- II實時操作系統(tǒng),, 實現(xiàn)了終端對多種傳感信息的實時、高效處理,。
2 功能描述
車載導(dǎo)航監(jiān)控終端主要實現(xiàn)對各種傳感信息的檢測,、處理、顯示及數(shù)據(jù)的無線發(fā)送和接收,。具體包括:
無線數(shù)據(jù)通信模塊——實現(xiàn)監(jiān)控中心與車載導(dǎo)航監(jiān)控終端之間指令的交換和數(shù)據(jù)的傳輸; 文本信息合成模塊 將文字信息轉(zhuǎn)換為語音信息,, 方便終端獲取監(jiān)控中心的各種命令和指示;GPS定位模塊—— 獲取終端所在處的經(jīng)度和緯度信息, 監(jiān)控中心可以在電子地圖上準確了解終端的地理位置;視頻圖像采集模塊——獲取車內(nèi)和車外的具體情況,, 可以通過無線網(wǎng)絡(luò)把圖像信息傳輸?shù)奖O(jiān)控中心;人機交互模塊——在本地顯示電子地圖,、各種狀態(tài)信息、協(xié)同作業(yè)的對方狀態(tài)信息以及接收按鍵輸入信息;信息存儲模塊——用于保存狀態(tài)和設(shè)置信息;狀態(tài)檢測和控制模塊——實現(xiàn)對車載其它設(shè)備狀態(tài)的檢測以及根據(jù)控制中心的命令對相關(guān)設(shè)備進行控制;電源管理模塊——實現(xiàn)電源的充電以及備用電源的切換,。
3 Nios軟核及外圍模塊接口設(shè)計
Altera公司推出的高性能,、大容量StratixTM FPGA以及Nios嵌入式軟核處理器, 實現(xiàn)了處理器和外圍接口的靈活配置,, 大大推進了SOPC (可編程片上系統(tǒng)) 設(shè)計的進程,。同時A ltera 公司提供的SOPCBuilder可視化開發(fā)工具, 能夠根據(jù)客戶需求,, 實現(xiàn)對硬件系統(tǒng)的高效配置,。基于N ios嵌入式軟核處理器,, 應(yīng)用SOPC 技術(shù)設(shè)計車載導(dǎo)航監(jiān)控終端,, 將能夠大大簡化硬件設(shè)計的復(fù)雜度, 實現(xiàn)終端系統(tǒng)的高度集成,, 滿足對各種接口的適配要求,。基于EP1S10的多功能車載終端" title="車載終端">車載終端系統(tǒng)框圖如圖1所示,。
圖1 多功能車載終端系統(tǒng)框圖
在本終端系統(tǒng)設(shè)計中,, 采用了模塊化的設(shè)計理念, 通過對車載終端功能的分析,, 確定了該系統(tǒng)所需的關(guān)鍵功能模塊,, 并對功能模塊與EP1S10之間的接口進行了規(guī)范。系統(tǒng)框圖中,, CDMA 無線通信模塊,、GPS定位模塊通過串口和EP1S10相連接;WTS701文本合成模塊通過SPI- master 總線和EP1S10相連接; FRAM信息存儲模塊通過I2C 總線和EP1S10相連接, 這些接口在SOPC Bu ilder的通信工具目錄下以免費IP核的形式提供,。另外,, 人機接口模塊涉及顯示和鍵盤, 需要通過I /O 定義時序控制總線來處理; 視頻圖像采集模塊需要更復(fù)雜的邏輯控制接口來實現(xiàn), 下面對該模塊設(shè)計進行介紹,。
視頻圖像采集模塊由SAA7111 和ZR36060組成,, StratixTMFPGA通過相應(yīng)的接口來控制SAA7111的工作狀態(tài), 并獲取經(jīng)過ZR36060壓縮后的數(shù)字視頻數(shù)據(jù),。SAA7111是功能強大的可編程視頻輸入處理芯片,, 它可將攝像機輸出的PAL、NTSC 等不同制式的模擬復(fù)合全電視信號解碼成亮度,、色度信號,。
輸出的數(shù)字視頻信號格式有411YUV ( 16)、422YUV( 12位),、422YUV或CCIR- 656( 8位),、565RGB( 16位)、888RGB( 24位)等可供選擇,。此外還提供了象素,、時鐘信號、行場等多種同步信號,。其所有的可編程功能是通過I2C 總線對內(nèi)部的32個寄存器相應(yīng)的控制位置相應(yīng)的數(shù)值來完成的,, 而StratixTM FPGA的I2C 接口可以很方便地對其進行編程和控制。
ZR36060主要完成對數(shù)字視頻圖像的壓縮,, 輸出標(biāo)準JPEG格式的文件,。壓縮數(shù)據(jù)可以主方式從壓縮數(shù)據(jù)端口或以從方式從控制端口輸出, 兩種方式都有握手功能以便進行數(shù)據(jù)流控制,, 它可以和SAA7113實現(xiàn)無縫結(jié)合,。StratixTM FPGA 與視頻圖像采集模塊之間的接口如圖2所示。
圖2 StratixTM FPGA 與視頻圖像采集模塊之間的接口,。
視頻圖像壓縮模塊ZR36060工作于16b it代碼寬度的從模式,, Stra tixTM FPGA 通過使用不同的片選線和啟動轉(zhuǎn)換線, 可以控制四路視頻圖像壓縮模塊的工作,。兩路I2C總線和SAA7113的IICSA管角配合,, 可以設(shè)置四路圖像采集模塊的工作狀態(tài)。通過S trat ixTM FPGA 要實現(xiàn)對圖像采集和壓縮模塊的正常操作,, 就是要根據(jù)ZR36060的接口時序圖,, 應(yīng)用SOPC Bu ilder設(shè)計合理的接口控制邏輯,, ZR36060的接口時序如圖3所示,。
在SOPC 開發(fā)工具中, 調(diào)用并行輸入輸出模塊( PIO ),, 就可以構(gòu)造操作該圖像壓縮模塊的邏輯接口,, N ios嵌入式軟核利用該邏輯接口, 就可以將壓縮后的圖像數(shù)據(jù)保存在SDRAM 中, 同時可以實現(xiàn)對SAA7113和ZR36060模塊工作狀態(tài)的正確設(shè)置,。
圖3 ZR36060被動模式的接口時序
4 軟件系統(tǒng)設(shè)計
完成系統(tǒng)設(shè)計后,, 可以使用SOPC Bu ilder的System Generation頁或使用命令行生成系統(tǒng)。SOPCBuilder軟件自動生成所有必要邏輯,, 用以將處理器,、外圍設(shè)備、內(nèi)存,、總線,、仲裁器、IP內(nèi)核及到達系統(tǒng)外邏輯和存儲器的接口集成在一起,, 并建立將組件捆綁在一起的HDL源代碼,。
SOPC Builder 還可以建立軟件開發(fā)工具包( SDK )軟件組件, 該組件包括INC,、LIB,、SRC 三個目錄, 這些目錄包含了標(biāo)題文件,、一般外圍設(shè)備驅(qū)動程序,、自定義軟件庫和實時操作系統(tǒng)( RTOS內(nèi)核) , 以便在生成系統(tǒng)時提供完整的設(shè)計環(huán)境,。
有了SDK軟件開發(fā)工具包,, 就可以根據(jù)需要調(diào)用外圍設(shè)備的驅(qū)動程序, 開發(fā)系統(tǒng)軟件,。系統(tǒng)軟件的編輯可以采用目前的多種編輯工具,, 編輯完成后,啟動N ios SDK She l,,l 在[ SOPC Bu ilder]$ 命令字符后輸入nios- bu ild命令和相應(yīng)的源文件名,, 就可以進行編譯, 如有錯誤,, 可以重新修改后再編譯,。對于多個源文件, 可以使用makefile命令編譯,, 這時候需要建立一個專門的包含整個項目源文件( . c,、. h、.
s)的目錄,, 并要修改makefile文件的有關(guān)選項,。
車載導(dǎo)航監(jiān)控終端軟件包含多個功能模塊, 這些模塊以任務(wù)的形式與嵌入式實時操作系統(tǒng)相聯(lián)系,, 具體功能模塊如下圖4所示,。
圖4 車載導(dǎo)航監(jiān)控終端軟件功能模塊
各模塊在使用到底層驅(qū)動程序時,, 先要設(shè)置一些變量以及安裝相應(yīng)的中斷函數(shù)。如使用串口1來控制CDMA 模塊時,, 初始化過程包括:
串口1的中斷函數(shù)實現(xiàn)方法:
5 結(jié)束語
基于StratixTM FPGA 豐富的邏輯資源,, 采用Nios嵌入式軟核, 應(yīng)用SOPC設(shè)計技術(shù)開發(fā)車載導(dǎo)航監(jiān)控終端,, 大大提高了設(shè)計的靈活性,, 優(yōu)化了系統(tǒng)結(jié)構(gòu)。