精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

探究SoPC的OSD控制器設計

電子工程師 ? 來源:電子技術應用第6期 ? 作者:喻金華,符浩敏, ? 2021-05-05 00:02 ? 次閱讀

隨著科學技術的高速發展,在視頻顯示終端的原始圖像上額外疊加一些文字信息或圖形界面,向用戶提供更多的附加信息已不再是什么難事,通過屏顯示系統OSD(On Screen Display)就能夠實現這種功能。近年來,OSD的設計受到越來越多的關注[1],OSD系統已然成為用戶與顯示終端之間交互的橋梁。

OSD系統通常采用專用芯片實現[2-4],這類方案或是以專用芯片內部微控制器作為核心,或是以外部單片機作為控制核心。由于OSD技術對同步時序的要求非常嚴格,所以用微控制器控制時序的可靠性較差[5]。隨著視頻顯示技術的飛速發展,市場對電路集成度和視頻數據處理速度的要求越來越高(同步時序要求更嚴格),采用專用芯片的實現方案越來越難以滿足要求。很多廠商早已開始將OSD功能集成到一塊包含其他功能模塊的芯片上(即片上系統SoC(System on Chip)),國外一些廠商推出了采用FPGA實現OSD功能且具有知識產權的IP核,但其硬件實現技術一般處于封鎖狀態;國內也有采用FPGA實現OSD功能的研究[5-8],但仍處于探索階段。因此,研究OSD功能的FPGA實現方案具有深遠意義。

據此,本文提出一種基于SoPC的OSD控制器實現方案。該方案應用了一種OSD界面自定義布局方法和一種改進型二步索引算法[7],以軟硬件協同的方式著重實現在源視頻圖像上疊加一個可自定義布局風格的OSD界面,整體上可實現自定義OSD功能。

1 OSD控制器的總體設計

本OSD控制器使用自定義OSD界面布局方法。首先基于像素掃描坐標在OSD界面內劃分出字符顯示區,將剩下的區域作為背景區,并基于OSD界面內一起止坐標可調的矩形區域(如圖1中的矩形區域5)將背景區分為9個矩形區域,對不同區域選擇輸出所配置顏色的像素數據,并直接與源視頻像素數據進行透明度混合運算輸出,以此實現圖像的疊加,同時省去OSD幀緩存的存儲資源消耗。

o4YBAGB3tlSAYchSAAAxayvc9ew694.png

基于以上方法的OSD控制器系統總體結構如圖2所示。輸入視頻信號首先經過視頻輸入接口(圖2虛線框內部分)提取出源視頻信號中的像素掃描坐標及RGB像素數據;OSD區域識別模塊基于像素掃描坐標判斷當前所在位置,并發出相應標識信息,在整個數據處理過程中,軟核系統通過寫OSD配置寄存器組及字型碼存儲器讀寫接口,實現對OSD電路運行狀態的實時控制;像素數據選擇輸出模塊基于標識信息選擇輸出相應顏色的像素數據至后級;alpha混合運算處理模塊完成OSD界面像素數據與從源視頻信號中提取出的RGB像素數據的透明度混合運算處理;處理后視頻信號輸出至顯示接口。

o4YBAGB3tm6AZ0igAACNBYOQhOo813.png

2 OSD控制器硬件平臺的實現

根據實際情況,選擇以Xilinx公司XC7K325T-2FFG900為核心芯片的Kintex7 FPGA開發板作為OSD控制設計的硬件平臺,采用內嵌MicroBlaze軟核的系統作為上位機。該開發板配有一定數量的I/O和各種數據接口,另外通過USB電纜將PC與Kintex7連接起來就能進行編程調試,使用方便可靠。圖3所示為基于該硬件平臺的OSD控制器系統框圖。

pIYBAGB3tpWAEe_AAACTmLdUJkA502.png

2.1 SDI接口與HDMI接口模塊

輸入視頻信號是數據格式為YUV的 20 bit串行數字接口SDI(Serial Digital Interface)信號,該模塊首先將YUV444轉換為YUV422,再轉換為30 bit的RGB(各分量占10 bit)像素數據并將其作為整個處理過程的數據格式,從時序信號中提取出視頻像素掃描坐標(X_scan,Y_scan)。為節省視頻圖像幀緩存資源,采用了高清晰度多媒體接口HDMI(High Definition Multimedia Interface)將處理得到的數據輸出顯示。

2.2 軟核系統模塊

通過Xilinx 公司ISE(Integrated Software Environment)內嵌的XPS(Xilinx Platform Studio)軟件可以搭建以MicroBlaze軟核處理器為控制核心的、具有AXI總線架構的軟核系統,本設計中選擇添加了axi_gpio接口組件和IIC_MAIN接口組件IP,另外自定義OSD配置寄存器組件layer、chars和字型碼存儲器讀寫接口index組件。

其中,axi_gpio接口組件與外部按鍵和LED相連,以實現對按鍵的檢測及相關狀態的顯示;IIC_MAIN接口組件則作為軟核對內部SDI信號接口模塊的視頻配置通道;自定義組件chars和layers分別為與字符顯示屬性和OSD界面屬性相關的配置寄存器組;自定義組件index用于暫存軟核寫入的待顯示字符索引號信息,并作為訪問字型碼存儲器的接口,產生相應的訪問地址。圖4所示為本軟核系統中各組件及其地址分配情況。

pIYBAGB3tqaAYxtDAAD4xFWqpbs669.png

2.3 OSD配置寄存器組

組件chars和layers作為OSD配置寄存器組,每個組件最多包含32個32 bit的寄存器,這些寄存器位的含義可根據需要進行自定義。

對于chars組件,定義為32個字符串或進度條顯示區的配置寄存器,其含義如表1所示。

pIYBAGB3tweAabWvAAAvkTZhDVY084.png

本設計OSD界面的進度條顯示區和字符顯示區是分時復用的,且字符串所代表的含義也會有不同類別(如主、子菜單項和設置項等),因此采用D31~D29編碼來體現這些差異。

組件layer中包含了與OSD界面屬性配置相關的寄存器,如起點坐標(X_osd,Y_osd)、長L_osd、寬W_osd、布局坐標、各區域顏色和透明度等參數配置寄存器,共23個。

2.4 a_blending模塊

本模塊是整個OSD控制器的數據處理中心,依次完成圖2所示的OSD區域識別、像素數據選擇輸出和alpha混合運算處理等過程。在區域識別模塊檢測到當前像素掃描坐標處于字符顯示區時,該模塊發出讀字型碼請求以獲取相應點陣編碼信息,在背景區則直接輸出相應標識信號。后級模塊根據點陣編碼信息、區域標識信息及相關配置信息選擇輸出相應像素數據,最后完成與源視頻像素數據的alpha混合運算處理。將alpha混合算法中的浮點數轉換為兩個2的冪次數的除法,便于硬件通過移位實現乘除運算,通過軟件對冪次數的設置實現對透明度的實時控制。

3 OSD控制器的軟件設計

基于OSD控制器的軟件平臺,在Xilinx的SDK(Software Development Kit)開發環境中編寫控制、顯示等應用程序,主要實現系統的初始化、按鍵控制、OSD界面設計、字符顯示控制等功能。

系統在復位后對視頻輸入接口電路進行初始化,之后進入按鍵控制子程序,按鍵將引導系統進入OSD界面設計模式或者OSD工作模式,各模式將根據后續按鍵情況調用OSD界面設計子程序和字符顯示控制子程序。主程序流程圖如圖5所示。

o4YBAGB3txGAWUrEAADaTkyT09Y196.png

4 系統調試與運行結果

4.1 實驗效果

如圖6所示為1 280×720分辨率的源視頻圖像上疊加的兩種720×360分辨率的自定義OSD界面(截圖),界面顯示狀態可由軟核(上位機)實時控制。

圖6(上)中的布局坐標將OSD界面平均分成9個區域,各區域顏色、透明度均不同,界面下欄MENU1~12為12個主菜單字符串顯示區;左欄SON1~SON6為6個子菜單字符串顯示區;右上部分區域定義了6個設置菜單字符串項SET1~SET6及一個進度條顯示區;最上方定義了一個當前選中設置項信息提示字符串顯示區。這些字符串/進度條顯示區的位置、顏色等屬性均為實時可調的,在數量上也可根據需要增減。而圖6(下)是對布局坐標及所產生的9個區域顏色、透明度參數進行了一定調整后形成的另一種界面。

4.2 資源消耗統計與分析

本OSD控制器模塊所占用片內存儲資源主要消耗在字型碼存儲器、索引號存儲器的實現以及軟核系統平臺對實現字符串顯示而進行的程序指令存儲和數據存儲。

對于軟核系統平臺在OSD控制器實現方面的資源消耗,自定義組件index、chars及layers各占4 KB,共計12 KB;axi_bram_ctrl_0組件用于存儲實現OSD控制器模塊字符串顯示的程序數據,共用了64-16=48 KB。綜上所述,OSD控制器模塊最多消耗存儲資源為2.1 KB+1 KB+12 KB+48 KB=63.1 KB。

在具體實現硬件電路時,多余的資源消耗將會被優化,因此OSD控制器模塊實際消耗的存儲資源將小于63.1 BK。圖7所示為添加OSD控制器模塊前后系統生成的片內RAM資源消耗報告表。由圖可知OSD控制器模塊消耗12個RAM36E1/FIFO36E1s,即12×(36/8)=54 KB。

pIYBAGB3t0SAZ3WbAAAvNxQmcoU598.png

而對于采用OSD界面幀緩存的設計方案,即使實現720×360的4色圖像界面顯示,至少也要消耗存儲資源2×720×360/8/1 024=63.281 25 KB,這還不包括系統在其他方面的資源消耗。若要實現更多色彩圖像的顯示,則存儲資源消耗將會成倍地增加。

OSD作為人機交互的橋梁,是視頻處理模塊的重要組成部分,而當前市場對視頻處理模塊電路集成度和數據處理速度要求越來越高。本文提出了一種基于SoPC的OSD控制器設計方案,其中應用了一種自定義界面布局方法和一種改進型二步索引算法,節省了系統的存儲資源開銷。另外對透明度混疊算法進行了取整變換,使之便于FPGA硬件實現及軟件控制。總體上該方案以軟硬協調的方式實現OSD控制器功能。實驗結果表明,該控制器極大地節約了資源,并且在實現OSD功能時也有很好的靈活性。

參考文獻

[1] 修曉琴,楊秀芝,鄭明魁。基于FPGA內嵌軟核的機頂盒OSD設計[J]。電視技術,2013,37(13):70-72.

[2] 王艷艷,郅晨。基于TMS320DM6446的OSD顯示技術的研究與實現[J]。中國新通信(技術版),2008(3):45-50.

[3] 雷永鋒。基于OSD選單的KVM系統設計[J]。電視技術,2008,32(1):50-52.

[4] 王瑞胡。基于OSD技術的數字電視機頂盒漢字顯示解決方案[J]。電子設計應用,2003,9(1):102-105.

[5] 黃燕群,李利品,王爽英。基于FPGA的OSD設計[J]。液晶與顯示,2010,25(3):429-433.

[6] 羅韜,姚素英,史再峰,等。視頻芯片中的OSD核的設計及FPGA的實現[J]。吉林大學學報(工學版),2008,38(6):1452-1457.

[7] 劉科,張生才,史在鋒,等。基于改進型二步索引算法OSD電路的FPGA實現[J]。電子測量技術,2007,30(7):94-96.

[8] 杜升平,曹劍中,田雁,等.FPGA在OSD中的應用[J]。科學技術與工程,2006,6(14):2065-2067.

[9] Zhang Sheng,Zhang Hao,CHEN B,et al.On-screen-display(OSD) and SPI interface on CMOS image sensor for automobile application[C].Computational Intelligence,Communication Systems and Networks(CICSYN),2013 Fifth International Conference on,IEEE,2013:405-408.

編輯:jq

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • FPGA
    +關注

    關注

    1626

    文章

    21669

    瀏覽量

    601866
  • 芯片
    +關注

    關注

    453

    文章

    50410

    瀏覽量

    421849
  • 控制器
    +關注

    關注

    112

    文章

    16203

    瀏覽量

    177418
收藏 人收藏

    評論

    相關推薦

    PID控制器的類型和選擇指南

    PID控制器是一種廣泛應用于工業控制系統中的控制器,它根據系統的偏差來計算控制量,以實現對系統的精確控制。PID是比例(Proportion
    的頭像 發表于 11-06 10:37 ?270次閱讀

    什么是LCD控制器?愛普生LCD控制器的作用和功能、概述和產品列表

    什么是LCD控制器LCD控制器的作用和功能LCD控制器(液晶顯示控制器)是連接到主機CPU并控制LCD面板的專用集成電路(IC)。它也被稱為
    的頭像 發表于 10-09 11:10 ?255次閱讀
    什么是LCD<b class='flag-5'>控制器</b>?愛普生LCD<b class='flag-5'>控制器</b>的作用和功能、概述和產品列表

    TVP5146 SCART和OSD

    電子發燒友網站提供《TVP5146 SCART和OSD.pdf》資料免費下載
    發表于 09-30 09:28 ?0次下載
    TVP5146 SCART和<b class='flag-5'>OSD</b>

    osd開啟好還是關閉好

    OSD(On-Screen Display)即屏幕菜單式調節方式,它允許用戶通過屏幕上的菜單來完成圖像調節、音量控制、定時開關機等各種操作,而無需進入電視或顯示的內部菜單。關于OSD
    的頭像 發表于 09-19 16:25 ?2001次閱讀

    國產控制器廠家 整車控制器 以太網控制器 CAN控制器 國產化替代

    控制器
    長沙碩博電子科技股份有限公司
    發布于 :2024年09月03日 09:15:51

    車載智能控制器 工程機械控制器 CAN總線控制器 碩博電子 #控制器 #can總線 #國產化替代

    控制器總線
    長沙碩博電子科技股份有限公司
    發布于 :2024年08月29日 10:43:57

    移動工程機械控制器,車載智能控制器,碩博電子

    控制器
    長沙碩博電子科技股份有限公司
    發布于 :2024年08月08日 10:18:12

    組合邏輯控制器和硬布線控制器一樣嗎

    組合邏輯控制器和硬布線控制器是兩種不同的計算機控制系統,它們在設計、實現和應用方面存在一些差異。 組合邏輯控制器和硬布線控制器的比較 摘要:
    的頭像 發表于 06-30 10:24 ?621次閱讀

    組合邏輯控制器與微程序控制器各有什么特點?

    組合邏輯控制器(Combinational Logic Controller) 組合邏輯控制器是一種基于組合邏輯電路的計算機控制器。它的主要特點是: 1.1 高速度:組合邏輯控制器使用
    的頭像 發表于 06-30 10:09 ?686次閱讀

    移動機械控制器 車載智能控制器 CAN總線控制器

    控制器機械
    長沙碩博電子科技股份有限公司
    發布于 :2024年06月13日 17:02:51

    控制器與運動控制器的區別

    隨著現代工業技術的快速發展,控制技術在各種機械設備中扮演著越來越重要的角色。微控制器和運動控制器作為兩種常見的控制設備,在各自的領域發揮著重要作用。然而,兩者在功能、應用、特點等方面存
    的頭像 發表于 06-13 14:52 ?567次閱讀

    PID控制器與PWM控制器的區別

    在工業自動化和控制系統設計中,PID控制器(比例-積分-微分控制器)和PWM控制器(脈沖寬度調制控制器)是兩種常用的
    的頭像 發表于 06-05 18:25 ?2758次閱讀

    PID控制器與開關控制器的區別

    在工業自動化控制系統中,PID控制器和開關控制器是兩種常見的控制策略。它們各自具有獨特的工作原理、應用場景和優缺點。本文旨在詳細探討PID控制器
    的頭像 發表于 06-05 15:50 ?722次閱讀

    智能單燈控制器,路燈單燈控制器,助力智慧路燈桿解決方案

    控制器
    計訊物聯
    發布于 :2024年05月08日 14:44:52

    對話:探討電機驅動控制器市場的需求空間

    限?未來電機驅動控制器的發展趨勢會是如何?不妨就這期《對話》一探究竟。 編者按: 在家電、電動工具、汽車電子等諸多領域,電機驅動控制器扮演著重要角色。為適應當前不同應用需求,電機驅動控制器
    的頭像 發表于 01-19 11:38 ?376次閱讀
    對話:探討電機驅動<b class='flag-5'>控制器</b>市場的需求空間