基于雙CPU實(shí)時圖像監(jiān)控系統(tǒng)的設(shè)計(jì)
圖像監(jiān)控以其直觀、方便、信息內(nèi)容豐富而被廣泛應(yīng)用于許多場合。在電子技術(shù)與通訊技術(shù)的發(fā)展過程中,圖像監(jiān)控系統(tǒng)的技術(shù)水平直接反映了不同階段電子與通訊的技術(shù)狀況。上世紀(jì)90年代末,隨著多媒體技術(shù)、視頻壓縮編碼技術(shù)和網(wǎng)絡(luò)通訊技術(shù)的發(fā)展,數(shù)字視頻監(jiān)控系統(tǒng)迅速崛起。在數(shù)字圖像監(jiān)控系統(tǒng)中,嵌入式監(jiān)控系統(tǒng)主要由嵌入式處理器、以太網(wǎng)接口控制器等相關(guān)支撐硬件及嵌入式操作系統(tǒng)組成。
1 設(shè)計(jì)方案
采用TI公司的TMS320VC5471為處理器,此芯片是一種雙內(nèi)核器件,內(nèi)部集成了一個帶程序和數(shù)據(jù)存儲器(均為RAM)的 TMS320C54x DSP子系統(tǒng)和一個帶仿真工具的ARM7TMRISC微控制器核。在雙CPU系統(tǒng)中,ARM7TDMI作為主CPU,負(fù)責(zé)圖像數(shù)據(jù)的存儲、圖像數(shù)據(jù)遠(yuǎn)程傳輸、存儲容量的擴(kuò)展等系統(tǒng)的功能;DSP作為從CPU,它是圖像采集和數(shù)據(jù)處理的核心,完成圖像采集及處理系統(tǒng)的功能。ARM子系統(tǒng)與DSP子系統(tǒng)數(shù)據(jù)的傳輸非常頻繁,系統(tǒng)選用共享雙口RAM存儲器方式來實(shí)現(xiàn)DSP與ARM7TDMI之間的通信,圖像監(jiān)控系統(tǒng)框圖如圖1所示。
2 硬件系統(tǒng)
2.1 主機(jī)控制單元
ARM子系統(tǒng)與DSP子系統(tǒng)數(shù)據(jù)的傳輸非常頻繁,數(shù)據(jù)傳輸?shù)目煽啃院蛯?shí)時性直接決定系統(tǒng)的性能。所以,本系統(tǒng)選用共享雙口RAM存儲器方式來實(shí)現(xiàn)DSP與ARM7TDMI之間的通信,如采用IDT司生產(chǎn)的雙口RAMIDT70V24,其容量為4K×16位。
在工作時不可避免的要碰到雙核內(nèi)部的通信問題,本設(shè)計(jì)采用中斷的通信方式,任何一方都是先將準(zhǔn)備好的數(shù)據(jù)放入API存儲器中,然后發(fā)出中斷信號,通知對方可以取數(shù),對方接到中斷之后,進(jìn)入中斷服務(wù)程序從API存儲器中取走數(shù)據(jù)。
2.2 模擬圖像采集及處理單元
圖像信號通過CCD攝像頭采集并輸出模擬圖像信號,模擬圖像A/D轉(zhuǎn)換采用Philips公司的SAA7111A來實(shí)現(xiàn)。該芯片可實(shí)現(xiàn)多路選通、鎖相與時序、時鐘產(chǎn)生與測試、ADC、亮色分離等功能,其輸出可以具有如下格式:YUV4:1:1(12bit)、YUV 4:2:2(16bit)、YUV4:2:2(CCIR-656)(8bit)等,靈活輸出不同的數(shù)字圖像數(shù)據(jù)格式。由于DSP處理芯片和SA7111A 的時序不同,可以通過CPLD進(jìn)行邏輯控制FIFO來完成數(shù)據(jù)緩存的功能。
2.3 鍵盤控制單元
本系統(tǒng)采用TI公司的TMS320VC5471為處理器,連接成一個矩陣式鍵盤是非常容易的,其ARM側(cè)提供了鍵盤專用接口KBGPIO。 KBGPIO[15:8]在芯片內(nèi)部已通過上拉電阻接+3.3V高電平,并且被配置成輸入口,可用來作為矩陣鍵盤的行輸入,KBGPIO[7:0]被配置為輸入口,可以用來作為矩陣鍵盤的列輸入,該鍵盤電路輸入無需再通過上拉電阻接至高電平,只將行和列線引出接到鍵的兩端即可。鍵盤總共可以有24個實(shí)際的硬鍵,每個按鍵的功能可由用戶隨意定義功能。
2.4 存儲容量擴(kuò)展單元
系統(tǒng)中有大量的數(shù)據(jù)要記錄下來,需要大量內(nèi)存來保存測量的數(shù)據(jù),在主CPU上連接SRAM、FLASH、CF卡。CF卡具有存儲容量大、讀寫速度快、靈活性強(qiáng)的特點(diǎn),是一種理想的存儲載體,本系統(tǒng)選用KINGMAX公司生產(chǎn)的CompactFlash Card,該卡的存儲容量是1G,利用芯片ARM核內(nèi)置集成電路IIC接口,把CompactFlash卡連接到微控制器的IIC接口。在存儲器映像模式中,一條8比特?cái)?shù)據(jù)總線控制著CompactFlash卡,軟件能把數(shù)據(jù)直接寫到CompactFlash卡。CF卡的結(jié)構(gòu)如圖2所示。
2.5 以太網(wǎng)控制單元
TMS320VC5471的網(wǎng)絡(luò)模塊(EIM)可以實(shí)現(xiàn)IEEE802.3協(xié)議及全雙工/半雙工模式的10/100Mbit/s的MAC層的功能。本系統(tǒng)的PHY接口采用Realtek公司生產(chǎn)的RTL8201BL芯片構(gòu)成,RTL8201BL使用MII接口與TMS320VC5471的MAC控制器直接相連,RTL8201的發(fā)送輸出引腳TPTX±和接收輸入TPRX±通過網(wǎng)絡(luò)隔離變壓器與RJ45雙絞線接口連接,實(shí)現(xiàn)數(shù)據(jù)通道的安全隔離。
2.6 實(shí)時圖像監(jiān)控單元
將本系統(tǒng)連接到Internet網(wǎng)絡(luò)上,可以通過Internet進(jìn)行實(shí)時圖像監(jiān)控,不必親臨現(xiàn)場。μC/OS-II是一款實(shí)時嵌入式操作系統(tǒng),該操作系統(tǒng)是一個公開源代碼占先式多任務(wù)微內(nèi)核的RTOS。本設(shè)計(jì)選用μC/OS-II,將其移植到TMS320VC5471內(nèi)嵌的ARM7核上。網(wǎng)絡(luò)通信協(xié)議通過TCP/IP協(xié)議棧選用LwIP協(xié)議棧,把LwIP協(xié)議棧移入來實(shí)現(xiàn)。嵌入式網(wǎng)絡(luò)平臺的結(jié)構(gòu)示意圖如圖3所示。
[!--empirenews.page--]
3 軟件設(shè)計(jì)
采用ARM匯編語言,各系統(tǒng)做成子程序功能塊,這樣不但可以使程序緊湊、便于閱讀,而且可以增強(qiáng)程序移植性,調(diào)試、更改各功能模塊也更方便,程序框圖如圖4所示。
本文提出的基于雙CPU實(shí)時圖像監(jiān)控的嵌入式系統(tǒng)設(shè)計(jì)方法,充分利用了TMS320VC5471的高性能和嵌入式操作系統(tǒng)的實(shí)時穩(wěn)定的特點(diǎn),采用 TCP/IP協(xié)議建立與Internet的連接,實(shí)現(xiàn)了實(shí)時圖像監(jiān)控的遠(yuǎn)程控制。這種雙CPU處理器與嵌入式操作系統(tǒng)相結(jié)合的模式,可以廣泛應(yīng)用于工業(yè)控制、產(chǎn)品制造、智能交通等的視頻檢測領(lǐng)域, 具有廣泛的應(yīng)用前景。