• <li id="00i08"><input id="00i08"></input></li>
  • <sup id="00i08"><tbody id="00i08"></tbody></sup>
    <abbr id="00i08"></abbr>
  • 新聞中心

    EEPW首頁 > EDA/PCB > 設計應用 > 基于FPGA的真彩VGA顯示的實現(xiàn)

    基于FPGA的真彩VGA顯示的實現(xiàn)

    作者: 時間:2012-03-12 來源:網(wǎng)絡 收藏

    Mif文件在中的應用,主要是在RAM,ROM中,一般用來存儲字模、波形數(shù)據(jù)、信號采樣、數(shù)據(jù)序列等,可以看做是C語言中的數(shù)組,用來存儲數(shù)據(jù)。Bingo當年也是郁悶的很啊,當年做電子琴,在Quartus II Memory Initialzation File 也手動寫過曲譜的mif文件。眼睛都花了;曾經(jīng)做過波形發(fā)生器,有康芯的Guagle的支持,很方便;對于字符圖片顯示,字模數(shù)據(jù)的龐大,Bingo最后通過C語言,根據(jù)mif格式,設計了軟件,今天定格。

    本文引用地址:http://www.czjhyjcfj.com/article/190667.htm

    一、講真彩顯示的理由:

    畢竟這是電腦的液晶,為啥我們就不能做的想電腦一樣顯示彩色的圖片呢?只是單純的顯示線條,字符,感覺還是在玩LCD1602、LCD12864似地,不爽,不爽,灰常的不爽。那么大的,不做點像樣的東西,還真的很不甘心。

    視覺的沖擊,真彩的誘惑,內(nèi)心的萌動,如果你是個不愿意放棄的人,沒做到真彩顯示,我想,你應該不會那么踏實;如果你是一個對視覺有沖動的人,單調(diào)的驅(qū)動,決不會甘心。Bingo當年就是很不爽,為了那一刻,走一步,再走一步,潛行了很久,終于在某年某月某一天,視覺暫留于熒光屏,彩色的誘惑,阻隔了前面的世界,歷史從此定格。

    本章將講述VGA真彩顯示的設計,通過硬件設計,軟件設計,以及各種不同的方案來講解,同時通過對Bingo設計的真彩顯示的一個工程稍做分析;最后展望未來,繼續(xù)走下一步,視覺暫留的我們不能就此停下腳步,,風雨兼程決不放棄,接下來要做的將會更多更多,其實這才是真正的開始。

    二、真彩顯示的要求

    1、數(shù)據(jù)的流通

    要想在VGA上顯示一張彩色的圖片,就必須有充足的條件。簡單的說,那就必須要有圖片數(shù)據(jù)源、要能實現(xiàn)數(shù)據(jù)緩存,最后以標準的時序給VGA刷屏。整體流程如下圖所示:

    55.gif

    (1)外部數(shù)據(jù)源,由CPU捕獲

    (2)由CPU捕獲的數(shù)據(jù),緩存與SRAM或者SDRAM等顯存

    (3)由CPU控制VGA狀態(tài),以固定的時序給VGA刷屏

    關(guān)于標準時序給VGA刷屏也就是以上的(3),Bingo在前面兩張已經(jīng)講的非常清楚,掌握的朋友應該可以應用自如了。前文中VGA的驅(qū)動沒有數(shù)據(jù)源(暫且認為Mif文件的數(shù)據(jù)屬于邏輯電路的描述),我們只是用FPAG邏輯描述的電路,給VGA固定坐標顯示固定的內(nèi)容。因此,這一章的關(guān)鍵是將VGA刷屏的數(shù)據(jù)源,以及數(shù)據(jù)緩存處理,Bingo通過分析數(shù)據(jù)流通渠道來分析VGA真彩圖像顯示的技術(shù)。

    2、色彩的識別

    關(guān)于圖像的格式,有JPEG、BMP、PNG等多種格式;圖像的位數(shù),也有單色、4灰、256色、4096色、16位真彩色、24位真彩色、32位真彩色這幾種。

    有一種方法是直接通過讀取存放于SD卡、U盤等移動數(shù)據(jù)的圖片,通過圖片解碼來得到圖像數(shù)據(jù),真彩顯示。并行數(shù)據(jù)輸出,經(jīng)過數(shù)模轉(zhuǎn)換(電阻網(wǎng)絡轉(zhuǎn)換或者視頻轉(zhuǎn)換芯片),得到16位以上的VGA數(shù)據(jù)。人眼不能分辨的極限,至少也需要16位真彩色。16位以上的數(shù)據(jù),24位、32位,人眼基本無法分辨清楚,因此,要求不是很高的情況下16位真彩色已經(jīng)足夠勝任。

    前面講過的VGA驅(qū)動,最基本的分辨率有如下三種:

    (1)VGA_640_480_60FPS_25MHz

    (2)VGA_800_600_72FPS_50MHz

    (3)VGA_1024_768_60FPS_65MHz

    可見,至少25MHz的速度刷屏,需要我們在軟件中實現(xiàn)顯卡刷屏的功能;在最小圖片容量即(1)模式下的數(shù)據(jù)量是640*480*16 = 4915200Bits = 600KB,在(3)模式下的數(shù)據(jù)量是1024*768*16 = 1.5MB。如此大的圖片數(shù)據(jù),需要有如此容量的緩存區(qū)。

    綜上,也就是說,要實現(xiàn)真彩圖像VGA顯示,第一需要16位以上的VGA驅(qū)動電路,第二需要足夠的容量來存放圖片。

    三、各種方案的匯總

    1. 靜態(tài)數(shù)據(jù)源

    所謂靜態(tài)數(shù)據(jù)源,就是數(shù)據(jù)已經(jīng)保存在系統(tǒng)中,不能再改變的的數(shù)據(jù)源。為了顯示真彩圖像,我們可以將圖像數(shù)據(jù)存放于SDRAM,或者Flash,從而通過讀取IC上已經(jīng)存儲的圖像數(shù)據(jù),顯存于SRAM,利用前面Bingo設計的VGA可移植模塊驅(qū)動刷屏,實現(xiàn)真彩圖像的顯示。基本的架構(gòu)就是:

    + 靜態(tài)數(shù)據(jù)源 + SDRAM/SRAM + VGA

    當然此處數(shù)據(jù)存放于SDRAM,我們可以用Nios II 的C存放于數(shù)組,通過JTAG下載;FLASH中的數(shù)據(jù),我們可以用Nios II 中的 Flash Programmer來完成配置。關(guān)于SDRAM中存放圖像數(shù)據(jù)來實現(xiàn)真彩圖像時最基本最簡單的方法,Bingo將會在后文講解。


    上一頁 1 2 3 4 下一頁

    關(guān)鍵詞: FPGA VGA

    評論


    相關(guān)推薦

    技術(shù)專區(qū)

    關(guān)閉
    主站蜘蛛池模板: 玉门市| 明溪县| 江津市| 崇明县| 宣恩县| 大名县| 祁东县| 谢通门县| 陵水| 大姚县| 韶山市| 江都市| 益阳市| 贡山| 中阳县| 株洲县| 邹平县| 牡丹江市| 辉县市| 乾安县| 珲春市| 栾城县| 威远县| 肥西县| 太保市| 天水市| 柯坪县| 平果县| 绥德县| 巴彦淖尔市| 漳平市| 会理县| 沽源县| 叶城县| 襄城县| 卫辉市| 黄骅市| 灌云县| 桦川县| 敦化市| 崇明县|