《電子技術應用》
您所在的位置:首頁 > 模擬設計 > 設計應用 > 基于FPGA的視頻應用OSD設計
基于FPGA的視頻應用OSD設計
摘要: 近年來,數字視頻監控系統在銀行、高速公路、樓宇等各個領域取得了廣泛的應用。在數字視頻監控系統中,OSD(On Screen Display)技術是不可或缺的部分。OSD為用戶提供友好的人機界面,能夠使用戶獲得更多的附加信息。
Abstract:
Key words :
  近年來,數字視頻監控系統在銀行、高速公路、樓宇等各個領域取得了廣泛的應用。在數字視頻監控系統中,OSD(On Screen Display)技術是不可或缺的部分。OSD為用戶提供友好的人機界面,能夠使用戶獲得更多的附加信息。

  系統構成

  本文介紹的系統是基于TI DSP TMS320DM6?3與FPGA的完整視頻監控系統,支持1路視頻的輸入和1路視頻輸出,此外還提供網絡接口。

  視頻輸入采用TI的高性價比視頻解碼器TVP5150A來實現,TVP5150A可實現兩路復合視頻輸入或一路S-video視頻信號的采集。通過I2C進行寄存器配置,輸出數字視頻信號遵循ITU656標準。

  TVP5150A解碼后的數字視頻信號通過DM6?3的視頻端口1傳送給DSP,由DSP進行必要的視頻處理,由網絡接口輸出給遠端設備。另一方面,DM6?3把從網絡接收的視頻數據處理后,通過視頻端口2,經過FPGA,由SAA7105顯示輸出,具體結構如圖1所示。

  輸出部分采用SAA7105實現。SAA7105是NXP公司的一款高性能視頻編碼器,可提供復合視頻輸出、VGA視頻輸出以及HDTV高清視頻信號的輸出。SAA7105的控制也通過I2C實現,接收復合ITU656標準的數字視頻信號。

  視頻處理部分采用的是TI的DSP TMS320DM6 3來實現。DM6 3主頻可達600MHz,有2個20位的視頻端口,視頻端口支持BT.656、Y/C等數字視頻接口,DM6 3還集成了網絡MAC,可實現網絡接入。

  硬件性能的發展速度總是很難滿足軟件的需求。在視頻處理越來越復雜的應用中,DSP承擔著繁雜的視頻處理任務,資源變得非常緊張,所以在本系統設計中,采用了FPGA實現OSD的設計,可以減輕DSP的負擔。

  OSD實現部分選用的是賽靈思公司的XC3S250E。XC3S250E是賽靈思SPARTAN-3E系列的FPGA,有25萬個邏輯門?! ?nbsp;

圖1:基于TMS320DM6?3與FPGA的完整視頻監控系統架構示意圖

  OSD實現

  SAA7105無法實現OSD功能,而由XC3S250E來實現。主控芯片DM6 3只需要通知FPGA要顯示的內容和位置,具體的工作由FPGA執行。OSD的邏輯框圖如圖2所示。

圖2:OSD功能框圖

  OSD FPGA通過EMIFA從DSP DM6 3接收OSD數據和控制指令,通過DSP的視頻端口1接收視頻數據,并將OSD的信息疊加到視頻數據上,輸出給視頻編碼器SAA7105。OSD的各功能模塊描述如下。

  地址譯碼模塊的數據端口與DSP DM6 3的EMIFA低32位數據接口,接收DM6 3發出的數據與控制信息,這些數據和控制信息是DM6 3發出的原始32位數據。地址譯碼模塊將接收到的OSD數據,如OSD的內容等,以32位數據格式放入到FPGA的內部FIFO中。而控制信息主要是通過一組控制寄存器對OSD實現控制。

  與DSP直接連接的模塊還有視頻接口模塊。視頻接口模塊與DSP的視頻端口2相連,存儲來自DSP視頻端口的數據與控制信息。這些控制信息被直接傳輸給OSD多路控制模塊,同時控制信息也直接控制視頻解碼器SAA7105。

  OSD控制邏輯把從控制寄存器組得到的控制信息輸出到OSD的各個功能模塊,實現對OSD的控制。寄存器組主要分為兩個部分:一是異步寄存器組,向OSD發送如復位、OSD使能和選擇數據寬度的控制信息;另一個是同步寄存器組,主要控制OSD的位置信息。

  OSD解碼模塊根據控制邏輯的控制信息,從FIFO中取出要顯示的數據,以與視頻數據同步的方式輸出到OSD CLUT模塊。從FIFO中獲得的數據是原始的DSP 32位數據,而OSD CLUT模塊需要的數據是8/16位的,所以OSD解包模塊需要以一定的規則將32位數據解包,以視頻端口的頻率將32位數據以8/16的寬度傳輸給OSD CLUT模塊。

  FIFO模塊的另外一個功能是向DMA事件發生器模塊傳遞FIFO的狀態信息,如FIFO滿或FIFO空。DMA事件發生器監控這些事件,如果發生,則以中斷的模式發送給DM6?3,以實現對FIFO的正確讀寫操作。

  OSD CLUT模塊為從OSD解包模塊接收的每個象素的數據查找YCbCr的對應值,并控制這些OSD CLUT數據的輸出順序。這種轉換關系是由DSP通過24位的數據端口傳送過來的。OSD CLUT模塊的數據直接輸出給OSD多路控制器模塊。

  OSD多路控制模塊根據從OSD CLUT模塊接收到的Alpha控制位確定輸出視頻數據,如果當前為OSD信息,即Alpha控制位有效,則輸出OSD數據給數據轉換模塊。否則,輸出從視頻接口模塊接收的原始視頻數據,以此來實現OSD功能。

  OSD多路控制器輸出的數據并沒有直接送給視頻解碼器,而是通過數據轉換模塊,根據具體的應用條件,進行必要的數據格式轉換。由SAA7105的接口時序可知,當SAA7105配置為復合視頻輸出時,其要求的數據為單時鐘沿數據,此時數據轉換模塊不作任何工作,將從OSD多路控制模塊接收的數據原封不動地傳輸給SAA7105;如果SAA7105配置為VGA或HDTV輸出模式時,需要雙時鐘沿數據,此時數據轉換模塊將從OSD控制器接收到的單時鐘沿數據轉換成雙時鐘沿數據,輸出給視頻解碼器SAA7105。

  由此可見,FPGA完成了OSD的所有工作。如果要顯示OSD內容,DM6 3只需要通過EMFIA口向FPGA發送控制指令即可,這些指令當然包括OSD的內容及位置信息。

  OSD控制

  由XC3S250E實現的OSD設計根據接收到的OSD位置及內容信息進行OSD顯示,對OSD顯示的內容沒有任何限制,非常靈活方便。下面以OSD漢字顯示為例說明OSD的控制操作。

  要正確的顯示漢字,就必須將輸入的漢字內碼轉換成對應的區位碼。這一功能我們通過函數Uint32 Code_Converse(unsigned char *CodeNPointer),其輸入為指針,指向要轉換漢字。返回值為該漢字對應的區位碼。OSD的顯示由函數OSDHZ?isplay實現:

  void OSDHZ_ Display{

  Uint8 *pFrame

  Uint32 pitch

  OSDUTIL_Point* loc

  Uint32 CodeQ

  OSDHZ?ont *font

  Uint8 fgColor

  Uint8 bgColor

  }

  其中,Uint8 *pFrame為OSD輸出的Buffer緩沖區;Uint32 pitch為每行顯示的象素值;OSDUTIL_Point *loc為第一個字符的顯示位置;Uint32 CodeQ為要顯示漢字的區位碼;OSDHZ?ont *font為顯示漢字所用的字體;Uint8 fgColor顯示漢字的前景色;Uint8 bgColor顯示漢字的背景色。

  所以,如果需要顯示漢字,只需要將漢字進行必要的碼制轉換,然后將轉換后的區位碼,給出顯示的位置,輸出給OSD FPGA即可。當然要顯示漢字,漢字字庫是必不可少的。



 

此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
欧美亚一区二区| 亚洲人成人一区二区在线观看| 美女任你摸久久| 久久精品男女| 欧美一区二区精品久久911| 亚洲一区二区三区成人在线视频精品| 亚洲精品无人区| 亚洲精品1区2区| 亚洲精品乱码久久久久久日本蜜臀 | 亚洲一区二区伦理| 亚洲视频日本| 亚洲自拍偷拍网址| 午夜精品久久久久久久99水蜜桃| 亚洲欧美一级二级三级| 午夜日韩在线观看| 久久激情五月婷婷| 久热精品视频在线| 欧美激情综合| 国产精品成人一区二区艾草| 国产精品嫩草影院一区二区| 国产日韩欧美在线播放不卡| 国产综合欧美在线看| 一色屋精品视频在线看| 亚洲国产三级在线| 日韩视频免费观看高清在线视频| 一区二区三欧美| 亚洲欧美日韩一区二区三区在线| 午夜欧美精品| 亚洲国产第一页| 夜夜爽夜夜爽精品视频| 午夜精品久久久久久久男人的天堂 | 欧美日韩一级大片网址| 欧美视频一区二区三区| 国产精品久久亚洲7777| 国产亚洲毛片在线| 在线免费高清一区二区三区| 亚洲日本在线观看| 一区二区黄色| 性色av一区二区三区红粉影视| 亚洲高清中文字幕| 这里只有精品丝袜| 欧美制服丝袜| 欧美精品三级在线观看| 国产精品日韩精品| 在线观看视频一区| 亚洲天堂成人在线观看| 欧美中在线观看| 一本久久综合亚洲鲁鲁| 欧美一进一出视频| 欧美成人嫩草网站| 国产精品午夜春色av| 在线观看日韩av电影| 99视频有精品| 欧美资源在线| 亚洲伊人一本大道中文字幕| 久久午夜电影网| 欧美午夜a级限制福利片| 黑人极品videos精品欧美裸| 亚洲精品免费在线播放| 亚洲欧美日韩人成在线播放| 亚洲免费观看高清完整版在线观看熊 | 在线播放视频一区| 中文一区在线| 亚洲人成亚洲人成在线观看| 亚洲欧美高清| 欧美肥婆在线| 国产欧美日韩综合一区在线播放| 亚洲人精品午夜| 欧美一级久久久久久久大片| 一区二区三区欧美视频| 久久另类ts人妖一区二区| 欧美视频二区| 亚洲高清自拍| 性欧美18~19sex高清播放| 日韩亚洲欧美中文三级| 久久精品欧洲| 国产精品久久9| 亚洲日本成人| 亚洲国产三级| 久久高清一区| 国产精品免费视频xxxx| 亚洲欧洲日夜超级视频| 亚洲成人在线免费| 亚洲日本视频| 亚洲国产精品电影在线观看| 午夜精品久久久久久久男人的天堂| 欧美激情乱人伦| 尤物yw午夜国产精品视频明星 | 久久国产欧美| 国产精品裸体一区二区三区| 亚洲精品国精品久久99热| 亚洲第一搞黄网站| 久久精品视频免费| 国产精品欧美日韩久久| 亚洲精品中文字| 亚洲狼人综合| 你懂的视频欧美| 影音先锋在线一区| 久久精品国产精品亚洲| 久久精品女人| 国产一区二区成人久久免费影院| 亚洲先锋成人| 亚洲影院在线观看| 欧美日韩一区二区三区免费看| 亚洲精品欧美激情| 日韩一级精品| 欧美精品色综合| 亚洲电影中文字幕| 亚洲欧洲另类| 欧美激情bt| 亚洲欧洲精品一区二区精品久久久| 亚洲国产一区二区a毛片| 久久在线视频在线| 激情视频一区二区三区| 久久国产日本精品| 麻豆国产精品777777在线| 国产综合色精品一区二区三区| 欧美亚洲一区二区在线观看| 久久精品国产第一区二区三区最新章节 | 久久成人精品| 老司机午夜精品视频| 狠狠色狠狠色综合日日tαg| 欧美中文字幕视频在线观看| 久久久久久国产精品一区| 国产夜色精品一区二区av| 久久av二区| 免费在线看一区| 亚洲精品一二三| 亚洲视频中文| 国产精品久久久久久久久婷婷 | 久久精品免费看| 一区二区三区在线观看欧美| 亚洲国产成人在线播放| 欧美成人精品高清在线播放| 亚洲第一页中文字幕| av成人国产| 国产精品国产三级国产普通话三级 | 欧美精品久久久久久久免费观看| 亚洲乱码国产乱码精品精98午夜| 亚洲在线一区二区| 国产日韩一区二区三区| 亚洲国产欧美日韩另类综合| 欧美国产日韩一区二区在线观看| 日韩视频中文字幕| 小处雏高清一区二区三区| 国模私拍一区二区三区| 91久久久久久| 国产精品大片wwwwww| 午夜在线精品| 欧美第一黄网免费网站| 一区二区三区久久| 久久成人久久爱| 在线欧美视频| 亚洲一区中文| 红桃视频成人| 一本色道久久综合| 国产农村妇女毛片精品久久莱园子| 久久精品夜夜夜夜久久| 欧美日韩国产不卡在线看| 亚洲欧美国产一区二区三区| 卡一卡二国产精品| 夜夜嗨网站十八久久| 久久久www成人免费毛片麻豆| 最近看过的日韩成人| 亚洲免费中文| 影音先锋国产精品| 亚洲自拍高清| 在线看欧美视频| 香蕉久久夜色精品| 亚洲第一在线综合网站| 亚洲在线观看视频| 亚洲国产成人91精品 | 久久久久久网| 在线一区二区日韩| 老司机一区二区三区| 在线视频亚洲一区| 美女网站在线免费欧美精品| 在线亚洲成人| 欧美成人免费在线| 香蕉久久一区二区不卡无毒影院 | 一区二区精品在线| 麻豆精品精华液| 亚洲一区二区毛片| 欧美成在线视频| 香蕉成人啪国产精品视频综合网| 欧美日本在线看| 久久岛国电影| 国产精品美女999| 亚洲免费激情| 国语自产偷拍精品视频偷| 亚洲综合清纯丝袜自拍| 亚洲国内精品| 久久综合久久综合久久| 亚洲淫性视频| 欧美日韩国产色综合一二三四| 亚洲第一视频网站| 国产欧美日韩三级| 亚洲一区二区综合| 亚洲精品一区二区三区婷婷月| 榴莲视频成人在线观看|