基于DM642的嵌入式網(wǎng)絡(luò)視頻服務(wù)器的設(shè)計(jì)
引言
本文引用地址:http://www.ex-cimer.com/article/201609/303349.htm目前的安防監(jiān)控領(lǐng)域的主流產(chǎn)品是DVR(數(shù)字硬盤錄像機(jī)),它的主要特點(diǎn)是適合監(jiān)控點(diǎn)集中的局域監(jiān)控應(yīng)用。但是,隨著對(duì)于遠(yuǎn)程分布式監(jiān)控需求的增長(zhǎng),嵌入式網(wǎng)絡(luò)視頻服務(wù)器以其可靠性高,組網(wǎng)方便等優(yōu)點(diǎn)越來(lái)越受到安防領(lǐng)域廠商和客戶的重視。視頻服務(wù)器的解決方案有多種選擇,但是市場(chǎng)產(chǎn)品的主流一般選擇兩種方案:(1)CPU+ASIC。該方案選擇以ARM為核的CPU和專用媒體處理芯片搭建。優(yōu)點(diǎn)是開(kāi)發(fā)時(shí)間相對(duì)較短,但由于采用ASIC,靈活性較差,產(chǎn)品一旦定型,很難更改。(2)采用面向媒體處理的專用DSP。其開(kāi)發(fā)時(shí)間不長(zhǎng),優(yōu)點(diǎn)是由于算法是軟件代碼,所以可以不斷對(duì)產(chǎn)品性能進(jìn)行升級(jí),重復(fù)開(kāi)發(fā)成本較低?;谝陨蠋c(diǎn),本系統(tǒng)采用第二種方案設(shè)計(jì)。
一.系統(tǒng)的硬件設(shè)計(jì)。
視頻服務(wù)器最主要的功能是完成圖像和聲音的采集、壓縮及傳輸?shù)墓δ堋R曨l服務(wù)器用到的核心技術(shù)一般包括視頻壓縮算法,音頻壓縮算法,網(wǎng)絡(luò)傳輸協(xié)議。目前市場(chǎng)上的主流技術(shù)主要是MPEG4或H26x視頻壓縮算法、AAC音頻壓縮算法、G.72x語(yǔ)音壓縮算法(或AAC音頻壓縮算法),TCP/IP協(xié)議等。DM642是TI公司推出的一款針對(duì)多媒體處理領(lǐng)域應(yīng)用的DSP,它是在C64x的基礎(chǔ)上,增加了很多外圍設(shè)備和接口。該DSP為548腳BGA封裝,高度集成化。主要外圍設(shè)備包括:三個(gè)可配置的視頻接口,可以和視頻輸入,輸出或傳輸流輸入無(wú)縫連接。VCXO內(nèi)插控制端口(VIC)10/100Mbps以太網(wǎng)口(EMAC)。數(shù)據(jù)管理輸入輸出模塊(MDI0)。多通道音頻串行端口(McASP)。I2C總線模塊。兩個(gè)多通道有緩存的串口(McBSPs)。三個(gè)32-bit通用定時(shí)器。用戶可配置的16-bit或32-bit的主端口接口(HPI16/HPI32)。 6Mhz32-bit的PCI接口。通用I/0端口((GPIO)。64-bit的外部存儲(chǔ)單元接口,支持和同步或異步存儲(chǔ)單元的連接。
系統(tǒng)硬件框圖如下:
本系統(tǒng)設(shè)計(jì)3路視頻端口,2路板上解碼器和1路板上編碼器,32Mbytes同步DRAM 通過(guò)FPGA的OSD 4Mbytes Flash memory ,10/100以太網(wǎng)端口通過(guò)FPGA內(nèi)寄存器執(zhí)行的板卡軟件配置導(dǎo)入加載選項(xiàng)配置。DSP芯片通過(guò)64bit的EMIF接口或8 /16bit的3路視頻接口連接板上外圍設(shè)備。SDRAM、Flash、FPGA和UART每一個(gè)設(shè)備占用其中的一個(gè)接口。EMIF接口也連接擴(kuò)展背板接口,擴(kuò)展背板接口用來(lái)連接背板。 板上的視頻解碼器和編碼器連接到視頻端口和擴(kuò)展連接器上。母板上的2個(gè)編碼器和1個(gè)解碼器都符合標(biāo)準(zhǔn)規(guī)范。McASP可以通過(guò)軟件重新設(shè)定成為一個(gè)擴(kuò)展接口??删幊踢壿嬮T陣列又被稱為FPGA,用來(lái)執(zhí)行板上組合在一起的邏輯程序。FPGA有基于軟件用戶端口的寄存器,用戶可以通過(guò)讀寫這個(gè)寄存器來(lái)配置板卡。
系統(tǒng)的硬件設(shè)計(jì)主要有以下幾個(gè)部分。
(1)存儲(chǔ)器映射。C64xx系列DSP有大量的字節(jié)可設(shè)定的地址空間。程序代碼和數(shù)據(jù)可被存儲(chǔ)在統(tǒng)一標(biāo)準(zhǔn)的32bit地址空間的任何位置。 默認(rèn)狀態(tài)下,內(nèi)部的寄存器從0x00000000地址空間開(kāi)始存儲(chǔ)。一小部分存儲(chǔ)器可由軟件重新映射為L(zhǎng)2高速緩存,而不是固定的RAM。 EMIF(外部寄存器端口)有4個(gè)獨(dú)立的可設(shè)定地址的區(qū)域,稱為芯片使能空間(CE0-CE3)。當(dāng)Flash、UART和FPGA映射到CE1 時(shí),SDRAM占據(jù)CE0。背板使用CE2和CE3。CE3的一部分被配置給OSD功能的同步操作和擴(kuò)展的FPGA中的其他同步寄存器操作。
(2)EMIF端口。本系統(tǒng)設(shè)計(jì)一個(gè)64bit長(zhǎng)的外部存儲(chǔ)器端口。將地址空間分割成了四個(gè)芯片使能區(qū),允許對(duì)地址空間進(jìn)行8bit、16bit、 32bit和64bit的同步或不同步的存取。DM642板使用芯片使能區(qū)CE0、CE1和CE3。CE0被發(fā)送給64bit的SDRAM總線。CE1被 8bit的Flash、UART和FPGA功能使用。CE3被設(shè)置成同步功能。CE2和CE3都被發(fā)送給背板接口連接器。
(3)SDRAM寄存器端口。本系統(tǒng)設(shè)計(jì)在CE0空間連接了64bit的SDRAM總線。這32兆的SDRAM空間用來(lái)存儲(chǔ)程序、數(shù)據(jù)和視頻信息??偩€由外部PLL驅(qū)動(dòng)設(shè)備控制,運(yùn)行在133MHz的最佳運(yùn)行狀態(tài)。SDRAM的刷新由DM642自動(dòng)控制。 EMIF使用的PLL被稱為ICS512,PLL的輸入時(shí)鐘是25MHz。DM642可以配置EMIF時(shí)鐘的原始值。ECLKIN針腳一般為默認(rèn)值,但其也可通過(guò)分頻CPU時(shí)鐘,來(lái)控制EMIF的時(shí)鐘頻率。在復(fù)位時(shí),通過(guò)對(duì)ECLKINSEL0和ECLKINSEL1針腳的操作進(jìn)行設(shè)置,其與EA19和 EA20針腳共同分享EMIF的地址空間。
(4) Flash寄存器接口 本系統(tǒng)設(shè)計(jì)4M的Flash,映射在CE1空間的低位。Flash寄存器主要被用來(lái)導(dǎo)入裝載和存儲(chǔ)FPGA的配置信息。DM642評(píng)估板的CE1空間被配置成8bit,F(xiàn)lash寄存器也是8bit。由于CE1的可利用地址空間小于Flash的空間,所以利用FPGA來(lái)產(chǎn)生3個(gè)擴(kuò)展頁(yè)。這些擴(kuò)展的線形地址通過(guò)FPGA的Flash的基礎(chǔ)寄存器進(jìn)行定義地址,復(fù)位后默認(rèn)是000。
(5)UATR接口。 雙重的UART寄存器被映射在DM642的CE1空間的高位,隨同F(xiàn)PGA異步寄存器一起。每一個(gè)UART,A和B產(chǎn)生8位的地址。本系統(tǒng)設(shè)計(jì)將CE1空間配置成8位存取。
(6)FPGA異步寄存器端口 。FPGA有10個(gè)定位在CE1空間高位的異步存儲(chǔ)寄存器。這些寄存器實(shí)現(xiàn)的各種功能由于篇幅所限不再詳敘。FPGA同步寄存器端口 FPGA在CE3地址空間開(kāi)設(shè)同步寄存器。這些寄存器主要實(shí)現(xiàn)OSD功能和一些評(píng)估板連接。
(7)EMIF緩沖器/解碼器控制 。EMIF緩沖器和解碼器的功能通過(guò)GAL16LV8D普通邏輯數(shù)組驅(qū)動(dòng)器實(shí)現(xiàn),U15。驅(qū)動(dòng)器可以對(duì)Flash進(jìn)行簡(jiǎn)單的解碼處理,UART與緩沖器共同控制CE1、CE2和CE3。
(8) 視頻端口/McASP端口 。本系統(tǒng)設(shè)計(jì)有3個(gè)板上視頻端口,這些端口可以根據(jù)可選擇性功能,進(jìn)行再分類,例如端口0和端口1的McASP和SPDIF功能。DM642使用所有的三個(gè)視頻端口,視頻端口0和視頻端口1被用作輸入端口,視頻端口2用作顯示端口。在標(biāo)準(zhǔn)配置中,視頻端口0和視頻端口1根據(jù)使用在McASP功能下進(jìn)行再分類,連接到TLV320AIC23立體聲編解碼器或連接到SPDIF輸出接口J9。
(9)視頻解碼器端口 。本系統(tǒng)設(shè)計(jì)可再分的視頻端口0和視頻端口1被用作捕獲輸入端口,命名為捕獲端口1和捕獲端口2。這些端口連接到SAA7115H解碼器。視頻端口貫穿 CBT開(kāi)關(guān),所以他們?yōu)榱吮嘲宓氖褂每梢员贿x擇性的禁止。另一半的端口被連接到板上的McASP端口。捕獲端口1通過(guò)一個(gè)RCA類型的視頻插座J15和一個(gè)4針的低噪聲S-Video接口J16,連接到視頻源。輸入的必須是合成的視頻源,例如DVD Player或視頻相機(jī)。SAA7115H是可通過(guò)DM642的I2C總線進(jìn)行編程的,并且可以連接所有的主要合成視頻標(biāo)準(zhǔn),例如NTSC,PAL和 SECAM,這些都可以通過(guò)解碼器的內(nèi)部寄存器進(jìn)行適當(dāng)?shù)木幊獭?
評(píng)論