《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 可編程邏輯 > 設(shè)計(jì)應(yīng)用 > 基于SOPC技術(shù)的多功能車(chē)載終端設(shè)計(jì)
基于SOPC技術(shù)的多功能車(chē)載終端設(shè)計(jì)
維庫(kù)
摘要: 基于StratixTM FPGA 豐富的邏輯資源, 采用Nios嵌入式軟核, 應(yīng)用SOPC設(shè)計(jì)技術(shù)開(kāi)發(fā)車(chē)載導(dǎo)航監(jiān)控終端, 大大提高了設(shè)計(jì)的靈活性, 優(yōu)化了系統(tǒng)結(jié)構(gòu)。
關(guān)鍵詞: SoPC STRATIX EP1S10 車(chē)載終端
Abstract:
Key words :

     1  引  言

  車(chē)載導(dǎo)航監(jiān)控終端可廣泛用于交警巡邏車(chē)、消防用車(chē)、公安用車(chē)、運(yùn)鈔車(chē)、長(zhǎng)途客車(chē)及一些特殊車(chē)輛上, 監(jiān)控中心通過(guò)無(wú)線通信網(wǎng)絡(luò)與車(chē)載導(dǎo)航監(jiān)控終端進(jìn)行信息交流, 從而實(shí)現(xiàn)監(jiān)控中心對(duì)車(chē)輛的集中、高效、可視化管理以及車(chē)輛之間的相互協(xié)作。

  本設(shè)計(jì)系統(tǒng)分析了車(chē)載導(dǎo)航監(jiān)控終端的各種功能需求, 借助 ltera Stratix" title="Stratix">StratixTM 系列FPGA EP1S10" title="EP1S10">EP1S10豐富的邏輯資源, 應(yīng)用SOPC" title="SOPC">SOPC Builder開(kāi)發(fā)工具實(shí)現(xiàn)了車(chē)載導(dǎo)航監(jiān)控終端硬件結(jié)構(gòu)的高度集成。同時(shí),利用N ios嵌入式處理器強(qiáng)大的處理能力, 配合使用 C /OS- II實(shí)時(shí)操作系統(tǒng), 實(shí)現(xiàn)了終端對(duì)多種傳感信息的實(shí)時(shí)、高效處理。

  2  功能描述

  車(chē)載導(dǎo)航監(jiān)控終端主要實(shí)現(xiàn)對(duì)各種傳感信息的檢測(cè)、處理、顯示及數(shù)據(jù)的無(wú)線發(fā)送和接收。具體包括:

  無(wú)線數(shù)據(jù)通信模塊——實(shí)現(xiàn)監(jiān)控中心與車(chē)載導(dǎo)航監(jiān)控終端之間指令的交換和數(shù)據(jù)的傳輸; 文本信息合成模塊      將文字信息轉(zhuǎn)換為語(yǔ)音信息, 方便終端獲取監(jiān)控中心的各種命令和指示;GPS定位模塊—— 獲取終端所在處的經(jīng)度和緯度信息, 監(jiān)控中心可以在電子地圖上準(zhǔn)確了解終端的地理位置;視頻圖像采集模塊——獲取車(chē)內(nèi)和車(chē)外的具體情況, 可以通過(guò)無(wú)線網(wǎng)絡(luò)把圖像信息傳輸?shù)奖O(jiān)控中心;人機(jī)交互模塊——在本地顯示電子地圖、各種狀態(tài)信息、協(xié)同作業(yè)的對(duì)方狀態(tài)信息以及接收按鍵輸入信息;信息存儲(chǔ)模塊——用于保存狀態(tài)和設(shè)置信息;狀態(tài)檢測(cè)和控制模塊——實(shí)現(xiàn)對(duì)車(chē)載其它設(shè)備狀態(tài)的檢測(cè)以及根據(jù)控制中心的命令對(duì)相關(guān)設(shè)備進(jìn)行控制;電源管理模塊——實(shí)現(xiàn)電源的充電以及備用電源的切換。

  3  Nios軟核及外圍模塊接口設(shè)計(jì)

  Altera公司推出的高性能、大容量StratixTM FPGA以及Nios嵌入式軟核處理器, 實(shí)現(xiàn)了處理器和外圍接口的靈活配置, 大大推進(jìn)了SOPC (可編程片上系統(tǒng)) 設(shè)計(jì)的進(jìn)程。同時(shí)A ltera 公司提供的SOPCBuilder可視化開(kāi)發(fā)工具, 能夠根據(jù)客戶需求, 實(shí)現(xiàn)對(duì)硬件系統(tǒng)的高效配置?;贜 ios嵌入式軟核處理器, 應(yīng)用SOPC 技術(shù)設(shè)計(jì)車(chē)載導(dǎo)航監(jiān)控終端, 將能夠大大簡(jiǎn)化硬件設(shè)計(jì)的復(fù)雜度, 實(shí)現(xiàn)終端系統(tǒng)的高度集成, 滿足對(duì)各種接口的適配要求。基于EP1S10的多功能車(chē)載終端" title="車(chē)載終端">車(chē)載終端系統(tǒng)框圖如圖1所示。

多功能車(chē)載終端系統(tǒng)框圖

圖1  多功能車(chē)載終端系統(tǒng)框圖

  在本終端系統(tǒng)設(shè)計(jì)中, 采用了模塊化的設(shè)計(jì)理念, 通過(guò)對(duì)車(chē)載終端功能的分析, 確定了該系統(tǒng)所需的關(guān)鍵功能模塊, 并對(duì)功能模塊與EP1S10之間的接口進(jìn)行了規(guī)范。系統(tǒng)框圖中, CDMA 無(wú)線通信模塊、GPS定位模塊通過(guò)串口和EP1S10相連接;WTS701文本合成模塊通過(guò)SPI- master 總線和EP1S10相連接; FRAM信息存儲(chǔ)模塊通過(guò)I2C 總線和EP1S10相連接, 這些接口在SOPC Bu ilder的通信工具目錄下以免費(fèi)IP核的形式提供。另外, 人機(jī)接口模塊涉及顯示和鍵盤(pán), 需要通過(guò)I /O 定義時(shí)序控制總線來(lái)處理; 視頻圖像采集模塊需要更復(fù)雜的邏輯控制接口來(lái)實(shí)現(xiàn), 下面對(duì)該模塊設(shè)計(jì)進(jìn)行介紹。

  視頻圖像采集模塊由SAA7111 和ZR36060組成, StratixTMFPGA通過(guò)相應(yīng)的接口來(lái)控制SAA7111的工作狀態(tài), 并獲取經(jīng)過(guò)ZR36060壓縮后的數(shù)字視頻數(shù)據(jù)。SAA7111是功能強(qiáng)大的可編程視頻輸入處理芯片, 它可將攝像機(jī)輸出的PAL、NTSC 等不同制式的模擬復(fù)合全電視信號(hào)解碼成亮度、色度信號(hào)。

  輸出的數(shù)字視頻信號(hào)格式有411YUV ( 16)、422YUV( 12位)、422YUV或CCIR- 656( 8位)、565RGB( 16位)、888RGB( 24位)等可供選擇。此外還提供了象素、時(shí)鐘信號(hào)、行場(chǎng)等多種同步信號(hào)。其所有的可編程功能是通過(guò)I2C 總線對(duì)內(nèi)部的32個(gè)寄存器相應(yīng)的控制位置相應(yīng)的數(shù)值來(lái)完成的, 而StratixTM FPGA的I2C 接口可以很方便地對(duì)其進(jìn)行編程和控制。

  ZR36060主要完成對(duì)數(shù)字視頻圖像的壓縮, 輸出標(biāo)準(zhǔn)JPEG格式的文件。壓縮數(shù)據(jù)可以主方式從壓縮數(shù)據(jù)端口或以從方式從控制端口輸出, 兩種方式都有握手功能以便進(jìn)行數(shù)據(jù)流控制, 它可以和SAA7113實(shí)現(xiàn)無(wú)縫結(jié)合。StratixTM FPGA 與視頻圖像采集模塊之間的接口如圖2所示。

StratixTM FPGA 與視頻圖像采集模塊之間的接口
 


圖2  StratixTM FPGA 與視頻圖像采集模塊之間的接口。

  視頻圖像壓縮模塊ZR36060工作于16b it代碼寬度的從模式, Stra tixTM FPGA 通過(guò)使用不同的片選線和啟動(dòng)轉(zhuǎn)換線, 可以控制四路視頻圖像壓縮模塊的工作。兩路I2C總線和SAA7113的IICSA管角配合, 可以設(shè)置四路圖像采集模塊的工作狀態(tài)。通過(guò)S trat ixTM FPGA 要實(shí)現(xiàn)對(duì)圖像采集和壓縮模塊的正常操作, 就是要根據(jù)ZR36060的接口時(shí)序圖, 應(yīng)用SOPC Bu ilder設(shè)計(jì)合理的接口控制邏輯, ZR36060的接口時(shí)序如圖3所示。

  在SOPC 開(kāi)發(fā)工具中, 調(diào)用并行輸入輸出模塊( PIO ), 就可以構(gòu)造操作該圖像壓縮模塊的邏輯接口, N ios嵌入式軟核利用該邏輯接口, 就可以將壓縮后的圖像數(shù)據(jù)保存在SDRAM 中, 同時(shí)可以實(shí)現(xiàn)對(duì)SAA7113和ZR36060模塊工作狀態(tài)的正確設(shè)置。 ZR36060被動(dòng)模式的接口時(shí)序
 


圖3  ZR36060被動(dòng)模式的接口時(shí)序

  4  軟件系統(tǒng)設(shè)計(jì)

  完成系統(tǒng)設(shè)計(jì)后, 可以使用SOPC Bu ilder的System Generation頁(yè)或使用命令行生成系統(tǒng)。SOPCBuilder軟件自動(dòng)生成所有必要邏輯, 用以將處理器、外圍設(shè)備、內(nèi)存、總線、仲裁器、IP內(nèi)核及到達(dá)系統(tǒng)外邏輯和存儲(chǔ)器的接口集成在一起, 并建立將組件捆綁在一起的HDL源代碼。

  SOPC Builder 還可以建立軟件開(kāi)發(fā)工具包( SDK )軟件組件, 該組件包括INC、LIB、SRC 三個(gè)目錄, 這些目錄包含了標(biāo)題文件、一般外圍設(shè)備驅(qū)動(dòng)程序、自定義軟件庫(kù)和實(shí)時(shí)操作系統(tǒng)( RTOS內(nèi)核) , 以便在生成系統(tǒng)時(shí)提供完整的設(shè)計(jì)環(huán)境。

  有了SDK軟件開(kāi)發(fā)工具包, 就可以根據(jù)需要調(diào)用外圍設(shè)備的驅(qū)動(dòng)程序, 開(kāi)發(fā)系統(tǒng)軟件。系統(tǒng)軟件的編輯可以采用目前的多種編輯工具, 編輯完成后,啟動(dòng)N ios SDK She l,l 在[ SOPC Bu ilder]$ 命令字符后輸入nios- bu ild命令和相應(yīng)的源文件名, 就可以進(jìn)行編譯, 如有錯(cuò)誤, 可以重新修改后再編譯。對(duì)于多個(gè)源文件, 可以使用makefile命令編譯, 這時(shí)候需要建立一個(gè)專門(mén)的包含整個(gè)項(xiàng)目源文件( . c、. h、.

  s)的目錄, 并要修改makefile文件的有關(guān)選項(xiàng)。

  車(chē)載導(dǎo)航監(jiān)控終端軟件包含多個(gè)功能模塊, 這些模塊以任務(wù)的形式與嵌入式實(shí)時(shí)操作系統(tǒng)相聯(lián)系, 具體功能模塊如下圖4所示。

車(chē)載導(dǎo)航監(jiān)控終端軟件功能模塊
 


圖4  車(chē)載導(dǎo)航監(jiān)控終端軟件功能模塊

  各模塊在使用到底層驅(qū)動(dòng)程序時(shí), 先要設(shè)置一些變量以及安裝相應(yīng)的中斷函數(shù)。如使用串口1來(lái)控制CDMA 模塊時(shí), 初始化過(guò)程包括:

  串口1的中斷函數(shù)實(shí)現(xiàn)方法:


 


  5  結(jié)束語(yǔ)

  基于StratixTM FPGA 豐富的邏輯資源, 采用Nios嵌入式軟核, 應(yīng)用SOPC設(shè)計(jì)技術(shù)開(kāi)發(fā)車(chē)載導(dǎo)航監(jiān)控終端, 大大提高了設(shè)計(jì)的靈活性, 優(yōu)化了系統(tǒng)結(jié)構(gòu)。


 

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。