《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 嵌入式技術(shù) > 設(shè)計(jì)應(yīng)用 > 基于DSP和VxWorks的RTOS視頻網(wǎng)絡(luò)檢測(cè)系統(tǒng)
基于DSP和VxWorks的RTOS視頻網(wǎng)絡(luò)檢測(cè)系統(tǒng)
維庫開發(fā)網(wǎng)
摘要: 在遠(yuǎn)程測(cè)控系統(tǒng)中,嵌入式系統(tǒng)由于其穩(wěn)定性和實(shí)時(shí)性優(yōu)于傳統(tǒng)平臺(tái)而得到迅速發(fā)展。本文提出了一種以DSP芯片和VxWorks為操作系統(tǒng)的新型嵌入式系統(tǒng)設(shè)計(jì)方法。
Abstract:
Key words :

    在遠(yuǎn)程測(cè)控系統(tǒng)中,嵌入式系統(tǒng)由于其穩(wěn)定性和實(shí)時(shí)性優(yōu)于傳統(tǒng)平臺(tái)而得到迅速發(fā)展。本文提出了一種以DSP芯片和VxWorks為操作系統(tǒng)的新型嵌入式系統(tǒng)設(shè)計(jì)方法。

1 測(cè)試系統(tǒng)工作原理

        測(cè)試系統(tǒng)的主要任務(wù)是采用DSP芯片處理通過攝像頭拍攝并經(jīng)過A/D轉(zhuǎn)換的圖像。整個(gè)系統(tǒng)由視頻解碼器、DSP和PCI總線專用芯片組成。系統(tǒng)通過PCI總線同通信平臺(tái)交換數(shù)據(jù),同時(shí)通過網(wǎng)絡(luò)進(jìn)行檢測(cè)控制。

2 關(guān)鍵設(shè)計(jì)及器件選擇

        本系統(tǒng)設(shè)計(jì)的關(guān)鍵是視頻處理卡的設(shè)計(jì),一般的視頻檢測(cè)卡功能有限,不能滿足本項(xiàng)目的需求,為此,筆者自行設(shè)計(jì)了一塊視頻檢測(cè)卡。

2.1      TMS320C32的功能特點(diǎn)

        本測(cè)試系統(tǒng)中的DSP芯片選用T I公司的T M S 3 2 0 C 3 x系列產(chǎn)品,該器件的工作頻率為40MHz;采用哈佛總線結(jié)構(gòu)。并且擁有獨(dú)特的指令系統(tǒng)和硬件乘加運(yùn)算;外帶256K×32Bit的 FLASH、2k×8Bit的NVRAM和256K×32Bit的SRAM。該芯片是在TMS320C30的基礎(chǔ)上簡(jiǎn)化而來的,含有TMS320C30的CPU內(nèi)核。

        TMS320C32的主要功能如下:

●帶有程序引導(dǎo)功能;●串行接口傳輸和存儲(chǔ)器均可支持8、16、32位的數(shù)據(jù);

●可產(chǎn)生邊沿中斷和電平中斷;●可由用戶編程設(shè)定中斷向量表地址;

● 具有空等待和低功耗兩種電源管理方式;●具有兩個(gè)DMA通道;

●功能強(qiáng)大的外部存儲(chǔ)器接口既可以滿足視頻解碼接口8位數(shù)據(jù)的要求,又可以實(shí)現(xiàn)PCI接口32位數(shù)據(jù)的高速數(shù)據(jù)傳輸;

●靈活的程序加載可實(shí)現(xiàn)在系統(tǒng)編程;

        一般情況下,S5933和DSP之間的硬件連接就是利用DSP的讀寫信號(hào)R/ W、地址選通控制信號(hào)IOSTRB、外部設(shè)備就緒信號(hào)RDY和部分地址信號(hào)以及S5933的FIFO狀態(tài)信號(hào)WRFULL來進(jìn)行簡(jiǎn)單的時(shí)序和邏輯組合,從而生成對(duì)S5933外加總線接口的讀寫控制信號(hào)。

2.2      其它器件的選擇

        本系統(tǒng)中的CPLD芯片選用ALTERA公司的EPM9320RC208。兩組幀存儲(chǔ)器A和B采用CYPRESS公司生產(chǎn)的兩塊CY7C1049芯片,該芯片的容量為512k×8bit,存取時(shí)間不超過15ns,能滿足圖像實(shí)時(shí)采集要求。通過CPLD內(nèi)部的一個(gè)乒乓開關(guān)控制模塊可自動(dòng)完成幀間讀寫兩個(gè)通道接口的切換。而DSP和SAA7113之間的所有控制信號(hào)接口邏輯和時(shí)序轉(zhuǎn)換都由CPLD來完成,并可編程修改,因而提高了系統(tǒng)的使用靈活性和可靠性。

        SAA7113的作用是實(shí)現(xiàn)模擬圖像的A/D轉(zhuǎn)換。DSP與SAA7113之間的硬件接口的控制邏輯包括兩個(gè)子模塊:幀圖像寫入控制器和乒乓開關(guān),這兩種功能可由一塊CPLD來完成。

    在視頻卡設(shè)計(jì)中,電源模塊的設(shè)計(jì)也非常關(guān)鍵,它直接影響著視頻卡的最后實(shí)現(xiàn)和穩(wěn)定運(yùn)行。

    本監(jiān)控系統(tǒng)采用TI公司的TPS3307-33D來作為電源檢測(cè)IC。該器件的Reset有效電源復(fù)位電壓值定義為VDD=1.1V。TPS3307-33D可同時(shí)監(jiān)視兩種獨(dú)立電壓,還可控制另外一種電壓,這種電壓可以獨(dú)立調(diào)整并在內(nèi)部與復(fù)位邏輯電路相連。

3 通信平臺(tái)的嵌入式系統(tǒng)設(shè)計(jì)

    本設(shè)計(jì)的軟件系統(tǒng)包括底層軟件和系統(tǒng)軟件兩部分,其中底層軟件主要是DSP圖像處理算法以及啟動(dòng)等運(yùn)行程序,這些程序可在CCS環(huán)境下由C語言編寫并進(jìn)行匯編優(yōu)化,CCS是TI公司發(fā)布的DSP軟件運(yùn)行環(huán)境;

    在系統(tǒng)軟件方面,基于PCI總線的圖像處理系統(tǒng)所面臨的難點(diǎn)頗多,其中難度最大的是PCI驅(qū)動(dòng)問題。

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

    系統(tǒng)軟件可以選用以VxWorks為操作系統(tǒng)的嵌入式設(shè)計(jì)方法。

    VxWorks操作系統(tǒng)的集成環(huán)境叫Tornado。Tor-nado集成環(huán)境是一個(gè)高效明晰的圖形化實(shí)時(shí)應(yīng)用開發(fā)平臺(tái),它包括一套完整的、面向嵌入式系統(tǒng)的開發(fā)和調(diào)測(cè)工具。VxWorks的優(yōu)點(diǎn)如下:

(1)具有較好的可裁減性;

(2)支持應(yīng)用程序的動(dòng)態(tài)鏈接和動(dòng)態(tài)下載;

(3)具有較好的兼容性;

(4)具有很高的可靠性和穩(wěn)定性;

(5)具有很好的實(shí)時(shí)性;

    VxWorks的多任務(wù)機(jī)制對(duì)任務(wù)的控制采用優(yōu)先級(jí)搶占和輪轉(zhuǎn)調(diào)度機(jī)制,從而充分保證了實(shí)時(shí)性,并可用同樣的硬件配置滿足更強(qiáng)的實(shí)時(shí)性要求,以便為應(yīng)用開發(fā)留下更大的余地。

    PCI設(shè)備有三種物理存儲(chǔ)空間:配置空間、存儲(chǔ)器空間和I/O空間。其中配置空間是長(zhǎng)度為256字節(jié)的一段連續(xù)空間,空間定義如圖4所示,在配置空間中, 只讀空間包括設(shè)備標(biāo)識(shí)、供應(yīng)商代碼、修改版本、分類代碼以及頭標(biāo)類型。其中供應(yīng)商代碼用來標(biāo)識(shí)設(shè)備供應(yīng)商的代碼;設(shè)備標(biāo)識(shí)用來標(biāo)識(shí)某一特殊的設(shè)備;修改版 本標(biāo)識(shí)設(shè)備的版本號(hào);分類代碼用來標(biāo)識(shí)設(shè)備的種類;而頭標(biāo)類型用來標(biāo)識(shí)頭類型以及是否為多功能設(shè)備。除供應(yīng)商代碼之外,其他字段的值可由供應(yīng)商分配。

    基地址寄存器最重要的功能是分配PCI設(shè)備的系統(tǒng)地址空間。在基地址寄存器中,bit0(最低位)可用來標(biāo)識(shí)到底是存儲(chǔ)器空間還是I/O地址空間?;刂?寄存器映射到存儲(chǔ)器空間時(shí),bit0為“0”,而當(dāng)其映射到I/O地址空間時(shí),bit0為“1”。

    在驅(qū)動(dòng)PCI設(shè)備時(shí),首先是PCI設(shè)備的查找。嵌入式操作系統(tǒng)一般都提供有相應(yīng)的API函數(shù)查找。而在VxWorks操作系統(tǒng)中,通過函數(shù) pciFindDevicePCI_VENDOR_IDPCI_DEVICEindex &pciBus &pciDevice,&pciFunc_可以找到供應(yīng)商代碼為PCI_VENDOR_ID、設(shè)備標(biāo)識(shí)為PCI_DEVICE的第n(index+1)個(gè) 設(shè)備,并且返回總線號(hào)、設(shè)備號(hào)以及功能號(hào),然后分別保存于&pciBus、&pciDevice、&pci-Func中。

    其次是PCI設(shè)備的配置。通過操作系統(tǒng)提供的API函數(shù)可以訪問PCI設(shè)備的配置空間,從而完成PCI設(shè)備基址寄存器的配置、中斷配置、以及ROM基地址 寄存器的配置,最終得到PCI存儲(chǔ)器空間和I/O地址空間的映射以及設(shè)備中斷號(hào)等。在VxWorks操作系統(tǒng)中,訪問PCI設(shè)備配置空間的API函數(shù)有: pciConfigOutLong和pciConfigInLong等,它們可分別完成對(duì)PCI設(shè)備配置空間的讀寫操作。

     然后是根據(jù)PCI設(shè)備的配置參數(shù)來編寫不同設(shè)備的初始化程序、中斷服務(wù)程序以及對(duì)PCI設(shè)備存儲(chǔ)空間的訪問程序。

3.2 遠(yuǎn)程控制與通信鏈路

     由于基于串行口的PPP協(xié)通信方式現(xiàn)已被各種ISP所接受。而且VxWorks系統(tǒng)也支持PPP協(xié)議,因此,在VxWorks下通過Modem建立與ISP的物理連接,然后再完成設(shè)備的PPP數(shù)據(jù)鏈路設(shè)置,就可以通過Internet實(shí)現(xiàn)遠(yuǎn)程控制。

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