《電子技術應用》
您所在的位置:首頁 > 可編程邏輯 > 設計應用 > 基于改進型二步索引算法OSD電路的FPGA實現
基于改進型二步索引算法OSD電路的FPGA實現
電子測量技術
摘要: 基于SOC技術的模塊化設計要求各功能模塊盡可能小地占用電路資源,以滿足芯片系統對資源使用和面積的控制。對于OSD功能模塊而言,存儲器資源為主要開銷。因此,減少存儲器資源的使用對降低OSD模塊電路資源需求有著重要的意義。
關鍵詞: FPGA OSD 算法 ISE
Abstract:
Key words :

 0 引 言

     OSD(on screen display),即在屏顯示系統,是實現人機界面交互的基礎,在視頻處理SOC中作為重要功能模塊有著廣泛的應用。

     基于SOC技術的模塊化設計要求各功能模塊盡可能小地占用電路資源,以滿足芯片系統對資源使用和面積的控制。對于OSD功能模塊而言,存儲器資源為主要開銷。因此,減少存儲器資源的使用對降低OSD模塊電路資源需求有著重要的意義。

    OSD電路中,字符索引算法的選取直接決定了存儲器資源的使用情況,因此采用更優化的字符索引算法可以達到降低存儲器資源需求量的目的。作者在逐字符索引法的基礎上,針對該算法的缺點,提出了二步索引法。在保證OSD功能完整的同時,大大地降低了系統對存儲器資源的需求。

1 二步索引算法的原理及特點

1.1 字符索引算法原理

  字符索引算法是將OSD菜單中所顯示的字符按菜單顯示順序進行編碼,并存儲于存儲器中,在讀取字符點陣信息以顯示菜單時通過讀取編碼信息來索引所需字符信息。設菜單中字符尺寸為C1×Ch(bit),菜單共顯示m行字符,每行顯示n個字符,字符編碼Ni×j,并且存儲器中一個地址所存儲的數據(bit)大于C1。則讀取菜單中第i行第j個字符時,首先通過索引得到存儲器中相應字符的字符編碼Ni×j,索引地址可通過公式(1)得出:

add_mi×j=addr_n0×0+(i-1)n+n-1 (1)

  將讀取出的字符編碼Ni×j轉換成相應字符點陣信息在存儲器中存儲空間的首地址。地址的轉換可通過公式(2)計算得到:

addr_di×j=addr_d0×0+Ch×(Ni×j-1) (2)

式中:addr_u0×0和addr_d0×0分別是字符編碼存儲器和字符點陣信息存儲器中首地址指針。根據Ch控制從字符點陣信息存儲器中讀出地址范圍為addr_di×j到addr_di×j+Ch的數據即完成了對菜單中第i行第j個字符的點陣數據信息的讀取。

  逐字符索引算法下,將空格按字符看待并進行編碼,菜單每行固定顯示n個字符,字符長度小于n的菜單行由空格來補齊。由于采用定長的存儲結構,所以字符索引電路原理簡單且易于實現,只需要根據菜單字行符長數n就可以計算出相應行字符的首地址指針。但這種存儲結構的缺點也很明顯,就是對存儲器的使用量較大。在該算法下,可以計算出在OSD所需要的使用的存儲器量為:m×n×Ch,如圖1(a)所示。存人其中的“空格”(圖中編碼為“28”)會占用相當一部分的存儲器資源。在一些情況中,用于補充空缺而存儲的“空格”所占用的存儲空間甚至會比字符點陣信息的存儲空間還要多,這是對存儲器資源極大的浪費。

 

 

1.2 二步索引算法原理

  如果只存儲字符點陣信息而不存儲‘空格 i,顯然對節省存儲器資源將有著很大的幫助。為達到這樣的設計目標,在逐字索引法的基礎上,通過改進提出了二步索引算法。

  設第k幅菜單中顯示nk行字符,菜單第i行中顯示li個字符。其中,nk存儲于寄存器中,li存儲在一段地址長度為nk的字符數信息存儲器中。在二步索引算法下,通過讀取字符數信息存儲器中的數據以及根據nk限制讀出的li數據個數,可以確定菜單中各行所顯示的字符的個數。第k幅菜單中第i行第j個字符的編碼信息在存儲器中的地址指針可以根據公式(3)確定:

 

  讀出字符編碼數據Ni×j,仍然通過公式(2)得到相應字符在點陣信息存儲器中存儲地址段的首地址指針,從而讀出全部的字符點陣信息。完整的數據讀取操作過程如圖2所示。

 

   在二步索引算法中,引入了行顯示字符數li和菜單顯示字符行數nk2個參數,通過nk首先索引菜單中第i行的顯示字符數li,根據li控制索引該行第j個字符編號Ni×j。根據li可以知道每行顯示的字符數,所以字符編碼信息可以按行順序緊密的存儲,即每行存儲的數據采用非定長的方式,如圖1(b)所示。與圖1(a)所示的逐字索引法存儲器結構相比,二步索引法在對存儲器資源的節省方面效果是顯著的。

2 二步索引法OSD電路結構實現

2.1 字符索引電路實現

  如圖3所示,相比于逐字索引法的電路實現結構,二步索引法的電路實現結構中增加了字符行寄存器和用于存放行字符數信息的存儲器。字符行寄存器中存人nk,根據字符行計數器所計數據與nk比較來控制從行字符數存儲器中讀出的數據數。讀出的行字符數信息li再用以控制顯示第i行菜單字符所需從字符編碼存儲器中讀出的字符編碼數據數。讀出的字符編碼Ni×j通過地址生成電路轉換成相應字符的點陣信息在字符點陣ROM中存儲地址段的首地址,從而在字符點陣ROM中索引出相應字符的點陣數據,如此反復,可實現對全部字符點陣數據的索引。

 

2.2 數據輸出控制與層混合疊加電路實現

  從字符點陣ROM中讀取出的字符點陣信息經過點陣重組電路的處理后將按字符Cl×Ch順序的點陣信息轉換成按菜單行順序的格式存入到輸出緩存中。輸出緩存中數據的存儲順序如圖3所示。

  輸出緩存能夠存儲整幅菜單的顯示信息,以使菜單生成和菜單輸出顯示2個過程相互獨立,從而使得在顯示菜單的同時,可進行新菜單內容的讀入,保證菜單顯示的連貫勝。輸出緩存容量大小由包含顯示信息最多的一幅菜單決定。

   從輸出緩存中讀出的數據用于控制生成菜單字符層,在層選擇電路中與菜單背景層和屬性條層進行疊加處理后輸出一幅完整的菜單。字符層、菜單背景層和屬性條層相互獨立,由層混合控制電路控制進行混合疊加處理,再將菜單與屏幕背景層進行疊加輸出混合視頻信號。層混合疊加電路的實現結構如圖4所示。

 

3 OSD電路的FPGA實現及功能驗證

  設計在Xilinx公司的ISE6.3軟件環境下,使用Verilog HDL硬件描述語言對其電路邏輯進行描述,并以Xilinx公司xc2v1500bg575-4型為核心芯片的FPGA仿真驗證平臺對其進行硬件實現及功能驗證。FPGA驗證平臺架構如圖5所示。

   驗證平臺輸入模擬視頻信號,經SAA7111A芯片電路A/D采樣轉變為數字視頻信號接入FPGA驗證平臺。經過視頻處理電路去隔行、尺寸縮放等處理的視頻信號在圖象混合電路中與OSD菜單混合后輸出經DS90C38芯片電路轉為LVDS(低壓差分信號)信號并驅動液晶屏顯示結果。

   對2種字符索引算法下實現的OSD電路進行驗證比較。OSD字符索引電路部分使用到的存儲器資源可以分為字符編碼存儲器、行字符數存儲器、字符行寄存器3種。以生成圖6中所示菜單為例分析2種算法下OSD字符索引電路對存儲器資源的使用情況,將結果列于表1中。

   

  從表中可以看出,以二步索引算法實現的字符索引電路使用了8個bytes的行字符數存儲器和1個byte的字符行寄存器,而以逐字索引算法實現的字符索引電路在這2類存儲器上的使用量均為0。但是,后者在字符編碼存儲器的使用上卻達到了96 bytes,遠遠多于前者50 bytes的使用量。從表1中可以看到,前者對存儲器資源的總使用量比起后者減少了很大一部分。隨著菜單尺寸的增加和顯示的字符信息的增加,二次索引算法對存儲器資源的節省效果也會更加的顯著。

4 結束語

   采用模塊化設計方法實現的OSD電路,作為視頻格式處理芯片的子電路模塊,對硬件資源的使用將影響到整塊芯片的電路性能。本文針對OSD電路中以存儲器為硬件資源的主要開銷這個特點,提出了采用二步索引算法實現的一種改進型字符索引結構的OSD電路。引入字符行寄存器和行字符數存儲器,通過對行字符數和字符編碼的二步索引,從而得到了菜單的顯示信息,同時大大地降低了對存儲器資源的使用。該算法的硬件結構簡單,易于實現,在實現了同樣的電路功能的前提下,大大節省了硬件資源的開銷。

     本文所介紹的基于二步索引算法實現的改進字符索引結構的OSD電路,將作為子模塊電路集成于一款視頻格式轉換多媒體芯片的系統中,為其提供人機交互功能。該系統可應用于汽車電子、視頻顯示等多媒體處理場合。

此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
国产乱码精品一区二区三区av| 亚洲人午夜精品免费| 久久综合狠狠综合久久综青草 | 欧美日韩成人| 欧美高清视频一区| 免费一级欧美片在线播放| 久久久免费观看视频| 在线观看三级视频欧美| 亚洲无人区一区| 日韩午夜在线电影| 亚洲国产视频一区| 久久精品麻豆| 久久国产精彩视频| 性欧美大战久久久久久久久| 亚洲丝袜av一区| 亚洲桃色在线一区| 亚洲一线二线三线久久久| 亚洲视频自拍偷拍| 一区二区三区欧美亚洲| 国产精品99久久久久久久久| 一区二区三区欧美| 亚洲一区二区三区免费观看| 亚洲综合日韩| 午夜影视日本亚洲欧洲精品| 午夜欧美精品| 欧美在线视频导航| 久久精品五月| 亚洲精品视频免费观看| 一本色道久久加勒比88综合| 亚洲午夜黄色| 亚洲女与黑人做爰| 性欧美video另类hd性玩具| 欧美在线观看你懂的| 久久亚洲风情| 欧美国产专区| 国产精品九色蝌蚪自拍| 国产乱人伦精品一区二区| 国产一区二区三区免费不卡 | 亚洲最新合集| 亚洲免费一在线| 欧美制服丝袜| 亚洲理论在线观看| 亚洲一区二区视频在线| 久久精品99| 欧美久久成人| 国产精品美女久久久| 国产一区免费视频| 亚洲福利国产| 一区二区三区高清不卡| 欧美有码视频| 日韩一级精品视频在线观看| 亚洲摸下面视频| 久久亚洲风情| 欧美日韩综合久久| 国内一区二区三区| 日韩午夜激情电影| 久久se精品一区精品二区| 99国产精品久久久久久久| 亚洲欧美日本日韩| 欧美 日韩 国产精品免费观看| 欧美色欧美亚洲高清在线视频| 国产日韩欧美一区二区| 亚洲清纯自拍| 欧美影院在线| 亚洲午夜精品福利| 久久精品夜色噜噜亚洲aⅴ| 欧美日韩激情网| 国产视频欧美视频| 日韩一级黄色大片| 亚洲电影免费在线观看| 午夜国产一区| 欧美精品一卡二卡| 国内久久婷婷综合| 亚洲一区视频在线| 一个色综合导航| 久久亚洲捆绑美女| 国产精品区二区三区日本| 亚洲黄色视屏| 欧美在线91| 亚洲欧美激情一区二区| 欧美xart系列高清| 国产欧美日韩一区二区三区在线观看 | 韩日午夜在线资源一区二区| 一区二区三区视频免费在线观看| 亚洲第一主播视频| 亚洲欧美乱综合| 欧美日韩成人在线视频| 在线日韩中文字幕| 香蕉久久精品日日躁夜夜躁| 亚洲影视在线| 欧美日韩国产首页| 在线播放中文字幕一区| 欧美一区不卡| 香蕉久久一区二区不卡无毒影院 | 欧美在线国产精品| 亚洲欧美在线一区| 欧美日韩国产精品专区| 亚洲福利在线看| 亚洲国产99| 久久青草福利网站| 国产日韩欧美麻豆| 亚洲一区国产视频| 亚洲欧美变态国产另类| 欧美日韩中国免费专区在线看| 91久久精品久久国产性色也91| 久久精品视频导航| 久久国产精品99国产| 国产精品日韩一区二区三区| 一区二区欧美日韩视频| 一区二区三区欧美成人| 欧美区一区二区三区| 最新国产成人在线观看| 亚洲靠逼com| 欧美大片第1页| 亚洲大片av| 亚洲精品婷婷| 欧美久久视频| 亚洲精品一区二区三| 日韩视频在线一区二区| 欧美精品三级| 9l国产精品久久久久麻豆| 中文日韩电影网站| 欧美日韩一区二区在线视频 | 亚洲一区二区少妇| 午夜久久久久久| 国产精品日韩欧美大师| 亚洲一区网站| 欧美一区二区在线观看| 国产模特精品视频久久久久 | 在线观看国产精品淫| 亚洲国产欧美一区| 噜噜噜91成人网| 亚洲国产欧美另类丝袜| 日韩一级二级三级| 欧美无乱码久久久免费午夜一区| 在线亚洲一区观看| 亚洲欧美中日韩| 国产日韩欧美91| 久久精品国产v日韩v亚洲| 母乳一区在线观看| 亚洲久色影视| 午夜精品视频在线观看| 国产一区二区三区免费在线观看| 亚洲国产精品免费| 欧美日韩免费观看一区=区三区| 一个色综合av| 香蕉成人久久| 国模私拍视频一区| 亚洲久色影视| 国产精品日韩在线观看| 欧美一区二区私人影院日本 | 亚洲精品中文字幕在线观看| 欧美体内she精视频| 午夜精品久久一牛影视| 久久视频在线免费观看| 最新高清无码专区| 亚洲欧美美女| 精品电影一区| 一区二区三区四区五区精品视频| 国产精品嫩草99av在线| 亚洲高清视频一区| 欧美日韩国产色站一区二区三区| 亚洲免费在线观看视频| 美女黄色成人网| 一区二区不卡在线视频 午夜欧美不卡在| 欧美一区二区三区成人| 在线精品国产欧美| 亚洲一区二区三区影院| 国产在线麻豆精品观看| 一区二区三区国产| 国产日韩欧美综合| 9国产精品视频| 国产亚洲二区| 一本色道久久综合亚洲91| 国产女主播一区二区| 亚洲人成网站在线播| 国产精品视频网| 亚洲精品久久久久久久久久久久| 国产精品不卡在线| 亚洲国产小视频| 国产精品爽黄69| 亚洲人成艺术| 国产精品一卡二卡| 亚洲精品国偷自产在线99热| 国产欧美一区在线| 一本不卡影院| 韩国欧美一区| 亚洲欧美国产三级| 91久久午夜| 久久噜噜亚洲综合| 一区二区欧美日韩视频| 免费一级欧美片在线观看| 亚洲欧美电影在线观看| 欧美日韩国产在线看| 亚洲盗摄视频| 国产午夜精品一区二区三区视频 | 亚洲一区二区三| 欧美美女bbbb| 亚洲激情黄色| 国产一区二区三区奇米久涩|