在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

采用FPGA對VGA圖形控制器的Verilog設(shè)計方法

FPGA之家 ? 來源:陳翠 ? 2019-06-29 10:05 ? 次閱讀

VGA(視頻圖形陣列)作為一種標(biāo)準(zhǔn)的顯示接口得到廣泛的應(yīng)用。依據(jù)VGA顯示原理,介紹了利用FPGA實現(xiàn)對VGA圖形控制器Verilog設(shè)計方法。詳細(xì)描述了各硬件模塊的工作原理及實現(xiàn)途徑,并給出了軟件設(shè)計思路。

隨著可編程邏輯器件的不斷發(fā)展及其價格的不斷下降,EDA開發(fā)軟件的不斷完善,可編程邏輯設(shè)計的應(yīng)用優(yōu)勢逐漸顯示出來,特別是大規(guī)??删幊唐骷?。而FPGA具有功能強大,開發(fā)過程投資小、周期短等特點,成為當(dāng)今硬件設(shè)計的首選方式之一。VGA(視頻圖形陣列)作為一種標(biāo)準(zhǔn)的顯示接口得到廣泛地應(yīng)用。利用FPGA芯片和EDA設(shè)計方法,可以靈活地根據(jù)用戶需求,設(shè)計出針對性強的VGA顯示控制器,不僅降低了生產(chǎn)成本也可以方便快速地對產(chǎn)品進行升級換代。設(shè)計采用 Quartus II 軟件工具,并以 Altera公司的Cyclone系列FPGA的器件為主實現(xiàn)硬件平臺的設(shè)計。

1. 硬件系統(tǒng)框圖采用模塊化設(shè)計方法。

本設(shè)計的VGA控制器主要由以下模塊組成:VGA 時序控制模塊、內(nèi)部時鐘產(chǎn)生模塊、SDRAM控制模塊、串行Flash讀取模塊等,如圖1所示。

圖1 系統(tǒng)框圖

2. 主要模塊設(shè)計

2.1 VGA 時序控制模塊

VGA時序控制模塊是整個顯示控制器的關(guān)鍵部分,其實質(zhì)就是完成VGA顯示卡的功能。主要作用就是在一定的工作頻率下,產(chǎn)生準(zhǔn)確的時序關(guān)系(VS-垂直同步信號,HS-水平同步信號,消隱信號之間的關(guān)系)。及其在準(zhǔn)確的時序下對數(shù)據(jù)緩存區(qū)對數(shù)據(jù)進行讀取,讀完數(shù)據(jù)后使 SDRAM 控制器及時的刷新緩存區(qū)的數(shù)據(jù)。其中產(chǎn)生準(zhǔn)確的時序關(guān)系為此模塊重點,在VGA顯示過程中,完成一行掃描所需要的時間稱為水平掃描時間,完成一幀掃描所需要的時間稱為垂直掃描時間。每掃描完一行用行同步信號進行同步;掃描完所有行后用場同步信號進行同步。本設(shè)計采用的是800Hz x 600Hz x 60Hz模式。依據(jù)時序標(biāo)準(zhǔn),每顯示行包含1056點,其中800點為有效顯示區(qū),256點為消隱區(qū),每行的行同步脈沖低電平寬度為128個像素點;同理每場有628行,有效行為600行,其中場同步脈沖低電平寬度為4行。其行、場時序如表 1 。

表 1 行掃描、場掃描時序

圖2 HS時序

圖3 VS時序

其中圖2,td=800,tg=1056,ta=80,te+tf=80,tb+tc=128,單位為一個像素時鐘周期。

其中圖3,td=600,tg=628,ta=1,te+tf=23,tb+tc=4,單位為一個line時間。

依據(jù)這個標(biāo)準(zhǔn),外部50MHz時鐘經(jīng)過FPGA內(nèi)部PLL得到所需要的40MHz像素時鐘,并進行對應(yīng)的像素點數(shù)和掃描行數(shù)進行分頻處理,可以得到符合要求的行頻率、場頻率和消隱信號。

2.2 SDRAM控制模塊及動態(tài)數(shù)字顯示方法

在基于FPGA的圖像顯示系統(tǒng)中,常常需要用到大容量、高速度的存儲器。而在各種隨機存儲器件中,SDRAM的價格低、速度快、容量大是比較理想的器件。但SDRAM控制邏輯較為復(fù)雜,要采用狀態(tài)機的設(shè)計方法來實現(xiàn) SDRAM 的控制模塊(也可以使用SDRAM IP核實現(xiàn))。其 SDRAM控制狀態(tài)機如圖 4 。

圖4 SDRAM狀態(tài)機

其中包含了9個狀態(tài),其中從Precharge到ModeSet為SDRAM上電后的初始化過程,其余狀態(tài)為SDRAM的正常讀寫及刷新操作過程。對于SDRAM自身的操作本文不做詳細(xì)介紹,下面具體介紹動態(tài)顯示數(shù)字的方法。

系統(tǒng)上電后,SDRAM上電后的初始化完成后。先通過Flash讀寫控制模塊,把Flash中的靜態(tài)圖片讀取出來,然后寫入SDRAM中直到Flash中的圖片完全存入SDRAM。此時啟動VGA時序控制模塊進行圖片的顯示。

對于動態(tài)顯示數(shù)字方法,可以先利用字模提取軟件把字模信息提取出來。而 Altera公司的FPGA器件內(nèi)均內(nèi)置了嵌入式陣列塊,通過調(diào)用其中的LPM_ROM模塊??梢匀我庠O(shè)置參數(shù),構(gòu)成內(nèi)置的ROM存儲器,存儲所摘要的字模信息。本系統(tǒng)的字模為16pixels長 x 16pixels寬 x 16位色(R5G6B5),所以利用LPM_ROM模塊,占用了將近10個 M4K(FPGA內(nèi)置 塊ram)。

本系統(tǒng)通過接受外部 MCU 發(fā)來的命令來確定顯示數(shù)字的區(qū)域及要顯示的數(shù)字。因為VGA時序中存在較長的消隱期間,其期間是沒有顯示數(shù)據(jù)傳遞的。所以可以通過消隱期間實行對SDRAM的寫操作,對圖片固定地址寫入字模信息。其具體步驟:

(1)、確定要顯示數(shù)字的圖像區(qū)域首地址;

(2)、確定要顯示數(shù)字信息位于ROM中的地址;

(3)、啟動 SDRAM 寫操作;

(4)、SDRAM 寫操作地址增加16后,地址繼續(xù)增加800(即一行),而 ROM地址每次增加 1;

(5)、如此循環(huán)16 次(字模為 16 x16)后,如果還有要寫的數(shù)字則繼續(xù)(1)步驟,否則停止寫操作。

因為只是動態(tài)的改變數(shù)字,所以對原圖像改動的數(shù)據(jù)量不是很大,所以不會造成圖像閃爍現(xiàn)象。此方法缺點就是字模占用的 塊RAM 資源較多,如果字模只是固定顏色的情況,則 塊RAM 資源只用到 1 個 M4K,所以在資源緊張的情況下還得需要各方面比較,得到最合適的顏色分配。

2.3 Flash 的讀寫模塊

現(xiàn)在數(shù)字電路設(shè)計中,經(jīng)常需要保存大量數(shù)據(jù),F(xiàn)lash Memory 以其集成度高、低成本、使用方便等優(yōu)點,因此也成為設(shè)計人員的首選。

Flash可以分兩類:并行和串行。并行存儲量大,速度快;而串行存儲量相對較小,但體積小連線簡單,可減少電路面積,節(jié)約成本,二者各有優(yōu)缺點,根據(jù)實際需要選取。本系統(tǒng)對速度要求不是很高,所以選用了串行 Flash,為意法半導(dǎo)體推出的 M25P32。M25P32為SPI 接口,具有 4MB 容量,對與本設(shè)計每幅圖片接近 1MB,則可以存儲 4 副圖片,可以進行 4 個界面的切換顯示。

其模塊設(shè)計必須嚴(yán)格按照 Flash 的時序控制信號。對于首次使用 Flash,先需要進行擦除操作,編程指令可以將 1 變成 0。往 Flash 寫入圖片數(shù)據(jù)時,還是需要調(diào)用 FPGA 中的宏模塊制作一個 ROM,但是由于 Flash 容量較大,一般FPGA沒有這么大的存儲空間,所以數(shù)據(jù)需要分多次寫入。FPGA的ROM數(shù)據(jù)保存在.mif文中,.mif 由 Matlab 直接生成.mif文件,也可以在 Quartus II 中生成。

在對 M25P32 的操作中,需要注意的是一些指令在操作完成后,需要留出一段時間 Flash進行數(shù)據(jù)處理,比如寫寄存器為 5ms~15ms等,如果沒有等待這段處理過程,則會出現(xiàn)一些誤操作。

FLASH操作步驟:

(1)、FLASH擦除,一般通過SPI發(fā)FLASH擦除命令,等待結(jié)束。

(2)、FLASH寫,發(fā)送寫命令,寫地址,數(shù)據(jù)。一般FLASH保存一些參數(shù),或者數(shù)據(jù)存儲用,如果FLASH內(nèi)已經(jīng)有可用的數(shù)據(jù),可以根據(jù)實際情況,也可以先讀FLASH。

(3)、FLASH讀,發(fā)送讀命令,讀地址。

3、驗證

利用可編程邏輯器件(FPGA)可以很方便地實現(xiàn)數(shù)字系統(tǒng)設(shè)計,而在Altera的QuartusII軟件平臺下,F(xiàn)PGA 設(shè)計的各個階段都得到了很好的支持,兩者有效結(jié)合使得數(shù)字系統(tǒng)的設(shè)計更加方便快捷。

通過硬件平臺的驗證,基于 FPGA 的VGA圖形顯示器已達到設(shè)計要求,可以穩(wěn)定地實現(xiàn)界面的顯示,并可以在界面上根據(jù)需要進行數(shù)字的動態(tài)改變顯示,對于一些工業(yè)監(jiān)控場合的應(yīng)用,尤其數(shù)據(jù)量不是很大的場合尤為適合,不僅可以及時顯示當(dāng)前狀態(tài),還可以保存關(guān)機時狀態(tài)。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • FPGA
    +關(guān)注

    關(guān)注

    1644

    文章

    21993

    瀏覽量

    615366
  • 圖形控制器
    +關(guān)注

    關(guān)注

    0

    文章

    8

    瀏覽量

    11342

原文標(biāo)題:基于FPGA的VGA圖形控制器的設(shè)計

文章出處:【微信號:zhuyandz,微信公眾號:FPGA之家】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦
    熱點推薦

    PIC32MZDA圖形控制器問題

    嗨,伙計們,我對此有點困惑。在PIC32MZDA手冊頁583中,它提到了內(nèi)部圖形控制器:-高達800x480(WVGA)靜止圖像高達1280x1024。這是否意味著最大res是800x480或最大res是1280x1024?Pete:)
    發(fā)表于 03-11 10:55

    如何使用Verilog實現(xiàn)基于FPGA的SDRAM控制器?

    本文提出了一種基于FPGA的SDRAM控制器的設(shè)計方法,并用Verilog給于實現(xiàn),仿真結(jié)果表明通過該方法設(shè)計實現(xiàn)的
    發(fā)表于 04-15 06:46

    請問一下怎么用FPGA實現(xiàn)汽車視頻和圖形控制?

    請問一下怎么用FPGA實現(xiàn)汽車視頻和圖形控制
    發(fā)表于 04-29 06:12

    基于FPGA圖形式AMLCD控制器該如何去設(shè)計?

    基于FPGA圖形式AMLCD控制器該如何去設(shè)計?怎樣去設(shè)計一種VGA視頻接口電路?
    發(fā)表于 06-08 06:57

    基于FPGA的LCD&VGA控制器設(shè)計

    介紹了基于FPGA圖形式LCD&VGA控制器的設(shè)計,詳細(xì)討論了
    發(fā)表于 07-21 17:25 ?0次下載

    基于FPGA的LCD&VGA控制器設(shè)計

    摘要:介紹了基于FPGA圖形式LCD&VGA控制器的設(shè)計,詳細(xì)討論了用VHDL設(shè)計行場掃描時序的方法,這種設(shè)計
    發(fā)表于 06-20 13:28 ?1584次閱讀
    基于<b class='flag-5'>FPGA</b>的LCD&<b class='flag-5'>VGA</b><b class='flag-5'>控制器</b>設(shè)計

    VGA圖形控制器FPGA實現(xiàn)

    經(jīng)過硬件平臺的驗證,基于FPGAVGA 圖形顯示已達到設(shè)計要求,可實現(xiàn)彩條、漢字、小圖像和大圖像的顯示,并可實現(xiàn)FPGA 器件對顯示
    發(fā)表于 06-08 09:55 ?2310次閱讀
    <b class='flag-5'>VGA</b><b class='flag-5'>圖形控制器</b>的<b class='flag-5'>FPGA</b>實現(xiàn)

    基于FPGAVGA圖形控制器設(shè)計

    VGA(視頻圖形陣列)作為一種標(biāo)準(zhǔn)的顯示接口得到廣泛的應(yīng)用。利用FPGA 芯片和EDA 設(shè)計方法,可以因地制宜,根據(jù)用戶的特定需要,設(shè)計出針對性強的
    發(fā)表于 09-23 16:31 ?4473次閱讀
    基于<b class='flag-5'>FPGA</b>的<b class='flag-5'>VGA</b><b class='flag-5'>圖形控制器</b>設(shè)計

    基于FPGA圖形式AMLCD控制器的設(shè)計

    本文詳細(xì)介紹了已在實際項目中應(yīng)用的基于FPGA圖形式AMLCD控制器設(shè)計,這種設(shè)計方法稍作修改即可應(yīng)用于常見VGA視頻接口電路的設(shè)計。
    發(fā)表于 12-21 10:38 ?1590次閱讀
    基于<b class='flag-5'>FPGA</b>的<b class='flag-5'>圖形</b>式AMLCD<b class='flag-5'>控制器</b>的設(shè)計

    基于FPGAVGA圖像控制器的設(shè)計與實現(xiàn)

    基于FPGAVGA圖像控制器的設(shè)計與實現(xiàn)
    發(fā)表于 08-30 15:10 ?13次下載

    帶有圖形控制器和USB OTG的64/100引腳16位閃存單片機

    帶有圖形控制器和USB OTG的64/100引腳16位閃存單片機手冊。
    發(fā)表于 05-20 10:38 ?8次下載

    RA8889ML3N TFT LCD文字圖形控制器規(guī)格書

    RA8889ML3N TFT LCD文字圖形控制器規(guī)格書
    發(fā)表于 02-17 11:42 ?5次下載

    初級用戶手冊 UPD72256、UPD72257 圖形控制器硬件

    初級用戶手冊 UPD72256、UPD72257 圖形控制器硬件
    發(fā)表于 04-21 18:46 ?0次下載
    初級用戶手冊 UPD72256、UPD72257 <b class='flag-5'>圖形控制器</b>硬件

    Ravin-E 圖形控制器用戶手冊

    Ravin-E 圖形控制器用戶手冊
    發(fā)表于 05-09 18:49 ?0次下載
    Ravin-E <b class='flag-5'>圖形控制器</b>用戶手冊

    Ravin-E 圖形控制器用戶手冊

    Ravin-E 圖形控制器用戶手冊
    發(fā)表于 06-27 20:11 ?0次下載
    Ravin-E <b class='flag-5'>圖形控制器</b>用戶手冊
    主站蜘蛛池模板: 3344成年在线视频免费播放男男 | 男人午夜| 久久99精品久久久久久久野外 | 亚洲第一视频在线观看 | 一级特黄性生活大片免费观看 | xxxx性欧美高清 | 美女国产视频 | 日本大黄在线观看 | 丁香5月婷婷 | 成人免费看黄页网址大全 | 欧美日韩一区二区三区视频在线观看 | 人人人人凹人人爽人人澡 | 欧美aaaaaaaaaa | 日韩午夜大片 | 免费黄色一级片 | 清纯唯美亚洲综合欧美色 | 藏经阁在线 | 在线视频三区 | 国内精品久久久久久久久野战 | 自拍偷自拍亚洲精品被多人伦好爽 | 国产女主播精品大秀系列在线 | 一区二区三区伦理高清 | 日日插天天操 | 国产精品久久免费观看 | 深夜视频在线 | 中文在线天堂网www 中文在线资源链接天堂 | 国产精选经典三级小泽玛利亚 | 看毛片网 | 人人澡人 | aaa在线观看高清免费 | 国产精品黄网站免费进入 | 性欧美1819hd| 欧美亚洲天堂网 | 久久精品免费观看 | 亚洲精品国产成人 | 亚洲高清毛片 | 特黄三级 | 日本欧美色图 | 午夜免费影院 | vr亚洲成年网址在线观看 | 天堂网www最新版在线资源 |