999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于NiosⅡ處理器的TFT-LCD圖形顯示設(shè)計(jì)

2010-05-18 07:28:12石紅曉吳光敏
關(guān)鍵詞:系統(tǒng)設(shè)計(jì)

石紅曉,吳光敏

(昆明理工大學(xué) 理學(xué)院,云南 昆明 650093)

隨著工藝技術(shù)的發(fā)展與市場(chǎng)的需要,超大規(guī)模、高速、低功耗的FPGA不斷推出,并且被廣泛地應(yīng)用在高速、高密度的數(shù)字電路設(shè)計(jì)領(lǐng)域。SoPC[1](System on a Programmable Chip)是一種基于FPGA的SoC設(shè)計(jì)方案,它將FPGA及微處理器的核心嵌在同一芯片上,構(gòu)成一個(gè)可編程的SoPC系統(tǒng)框架,具有高度的集成能力,很大程度上減小了產(chǎn)品體積以及外部信號(hào)對(duì)系統(tǒng)的干擾,大大增加了系統(tǒng)的可靠性、穩(wěn)定性和靈活性。本文介紹一種基于NiosⅡ軟核處理器實(shí)現(xiàn)對(duì)LCD控制顯示圖形的方法。在設(shè)計(jì)中,利用Altera的FPGA的 SoPC Builder定制NiosⅡ軟核處理器及其與顯示功能相關(guān)的“軟”硬件模塊,來(lái)協(xié)同實(shí)現(xiàn)控制顯示的軟硬件設(shè)計(jì)。

1 系統(tǒng)設(shè)計(jì)

在工業(yè)控制和消費(fèi)電子領(lǐng)域,LCD的顯示技術(shù)呈現(xiàn)出越來(lái)越多的方式。本設(shè)計(jì)采用基于NiosⅡ處理器的液晶顯示圖形的設(shè)計(jì)方法,在SoPC Builder中以自定義接口的形式利用總線方式對(duì)LCD控制器進(jìn)行設(shè)計(jì),LCD控制器[2]一端接收用戶控制,一端實(shí)現(xiàn)LCD復(fù)雜時(shí)序,并集成多種功能。用戶只需要與控制器的簡(jiǎn)單接口交互,便能達(dá)到控制LCD的目的,進(jìn)而編寫應(yīng)用程序,實(shí)現(xiàn)顯示漢字、圖片、畫圖等功能。本文的設(shè)計(jì)方法大大降低了工作量,加快了數(shù)據(jù)的處理速度和掃描頻率,提高了各個(gè)功能模塊的集成度,改善了系統(tǒng)的性能和可靠性。

本設(shè)計(jì)最終實(shí)現(xiàn)了一個(gè)基于Altera公司的DE2開發(fā)板的TFT—LCD控制器對(duì)已知圖形的顯示。

2 硬件設(shè)計(jì)

2.1 系統(tǒng)的整體結(jié)構(gòu)

SoPC系統(tǒng)基于Avalon總線與其他系統(tǒng)構(gòu)件來(lái)通信,整個(gè)SoPC系統(tǒng)設(shè)計(jì)中的外設(shè)通過(guò)Avalon總線模塊連接起來(lái),并且總線規(guī)范為外設(shè)端口與總線模塊之間的數(shù)據(jù)傳輸提供了互連模型。

本設(shè)計(jì)的SoPC系統(tǒng)整體結(jié)構(gòu)如圖1所示。

2.2 SoPC系統(tǒng)建立

基于FPGA的SoPC方案[3]的可配置性表現(xiàn)在搭建硬件平臺(tái)時(shí),用戶可以根據(jù)自己要實(shí)現(xiàn)的功能來(lái)靈活選擇所需要的存儲(chǔ)器以及外圍接口設(shè)備,而不用把所有提供的元件添加到系統(tǒng)中,這樣就可以因功能不同而有針對(duì)性地設(shè)計(jì)每一個(gè)系統(tǒng),從而也避免了添加無(wú)用元件占用FPGA資源而引起浪費(fèi)。例如,由系統(tǒng)的整體結(jié)構(gòu)可知,本系統(tǒng)所需要的基本組件有CPU、SDRAM控制器、JTAG-UART、SRAM、定時(shí)器以及用三態(tài)橋來(lái)連接的CPI-FLASH,因?yàn)樵?TFT-LCD已經(jīng)帶有控制器了,所以就不需要以自定義組件的形式在SoPC Builder中添加該元件的控制器。

圖1 系統(tǒng)整體結(jié)構(gòu)圖

本系統(tǒng)的構(gòu)建基于QuartusⅡ8.0版本的SoPC Builder工具,它使用CPU、存儲(chǔ)器接口和外圍設(shè)備(例如本設(shè)計(jì)中添加的掛接在三態(tài)橋上的接口gx_tft_lcd)生成系統(tǒng)模塊,并在Avalon總線模塊和所有系統(tǒng)組件上的從屬設(shè)備端口之間自動(dòng)生成互連邏輯。由于利用總線方式來(lái)訪問(wèn)已經(jīng)帶有控制器(TCB8000A)的TFT LCD,因此需要在NiosⅡ系統(tǒng)模塊中手動(dòng)添加一個(gè)三態(tài)接口gx_tft_lcd。因?yàn)槭侵粍?chuàng)建一個(gè)接口,因此不需要HDL文件和HAL文件,但是在信號(hào)設(shè)置時(shí),應(yīng)根據(jù)Avalon總線三態(tài)從端口寫時(shí)序圖和TCB8000A的控制接口來(lái)添加需要的信號(hào)。

設(shè)置生成新元件后就可以將新定制的gx_tft_lcd添加到Nios系統(tǒng)中,產(chǎn)生Nios II系統(tǒng)模塊,并添加到工程中。保存編譯,通過(guò)之后可將編譯生成的sof文件下載到FPGA芯片,至此硬件方面的工作基本完成。

圖2所示為搭建本設(shè)計(jì)的硬件平臺(tái)中使用SoPC Builder工具來(lái)添加生成的系統(tǒng)模塊。

3 軟件設(shè)計(jì)

Nios II處理器的軟件程序設(shè)計(jì)使用HAL(Hardware Abstraction Layer)系統(tǒng)庫(kù)。HAI系統(tǒng)庫(kù)[4]為程序員提供了應(yīng)用程序與底層硬件交互的設(shè)備驅(qū)動(dòng)接口,簡(jiǎn)化了應(yīng)用程序的開發(fā),同時(shí)還為應(yīng)用程序與底層硬件驅(qū)動(dòng)劃分了一條很清晰的分界線,從而大大提高了應(yīng)用程序的可復(fù)用性,使得應(yīng)用程序不受底層硬件變化的影響實(shí)現(xiàn)系統(tǒng)硬件和應(yīng)用程序之間的通信。HAI API[5](Application Program Interface)集成了 ANSI C標(biāo)準(zhǔn)庫(kù),使上層程序像訪問(wèn)C函數(shù)庫(kù)一樣訪問(wèn)系統(tǒng)硬件和軟件。軟件設(shè)計(jì)不用考慮底層硬件實(shí)現(xiàn)的細(xì)節(jié)而直接編寫應(yīng)用程序。系統(tǒng)軟件結(jié)構(gòu)如圖3所示。

軟件系統(tǒng)主要分為兩部分:系統(tǒng)的初始化對(duì)LCD控制器的控制以及顯示數(shù)據(jù)的處理。

系統(tǒng)初始化,調(diào)用HAL的各模塊初始化程序,并定義在后面程序當(dāng)中要用到的各個(gè)對(duì)LCD顯示屏背景顏色、字體顏色設(shè)置的函數(shù)。

本設(shè)計(jì)采用總線方式[6]對(duì) LCD控制器(TCB8000A)的時(shí)序進(jìn)行控制,利用SoPC Builder添加完一個(gè)掛接在三態(tài)橋上的接口,將TCB8000A的控制引腳與Avalon總線相關(guān)聯(lián)。由于TCB8000A的控制時(shí)序與Avalon總線三態(tài)接口的時(shí)序吻合,因此只需在定制接口時(shí)調(diào)整等待、建立時(shí)間便可以達(dá)到控制目的。在Nios程序內(nèi)用簡(jiǎn)單的寫操作產(chǎn)生Avalon總線時(shí)序,需要注意的是TCB8000A只需一個(gè)地址控制線A1,且與總線的A1相連,因此寫操作應(yīng)使總線上的地址線A1符合TCB8000A對(duì)A1管腳的時(shí)序要求。即在并行模式下,MPU首先把完整的命令包送入地址為F004H的只寫寄存器(A1=0),然后將“1”送到地址為 F006H的寄存器(A1=1),結(jié)束一個(gè)命令包,并打開顯示。對(duì)于地址線A0,A2~A17使用的控制板已經(jīng)設(shè)定好了,所以只需要控制A1便可完成命令的送入。流程圖如圖4所示。

圖3 系統(tǒng)軟件結(jié)構(gòu)圖

圖4 設(shè)計(jì)流程圖

代碼如下:

在控制時(shí)序的基礎(chǔ)上,程序中的顯示圖片部分[7]首先把要顯示的圖片用Bmp2HexPro.exe軟件工具轉(zhuǎn)換成數(shù)據(jù)信息,把圖片的數(shù)據(jù)信息以頭文件的形式(picture.h)添加在工程中。

對(duì)儲(chǔ)存的多張圖片進(jìn)行分類標(biāo)號(hào)(例如picx1、picx2、picx3等),然后在 C主程序中用 switch語(yǔ)句[8]來(lái)分別調(diào)用表示該圖片信息的索引號(hào)碼,示例程序如下:

接下來(lái)就是給LCD的RAM分配地址,把要顯示的圖片的數(shù)據(jù)信息以數(shù)據(jù)指針的方式從左到右依次寫入目的地址。而SdCmd()函數(shù)為自己編寫的發(fā)送數(shù)據(jù)命令的子函數(shù)。

對(duì)于漢字以及字符的顯示也是通過(guò)定義PrintGB()函數(shù),類似上述程序以命令包的形式把要顯示的信息送入目的地址,在后面的程序中直接調(diào)用該子函數(shù)來(lái)進(jìn)行顯示。

隨著LCD顯示越來(lái)越多地應(yīng)用于生產(chǎn)生活的各個(gè)方面,各種各樣的處理器控制LCD顯示的方案也相繼出現(xiàn),本文通過(guò)整個(gè)系統(tǒng)設(shè)計(jì)和在硬件平臺(tái)上實(shí)驗(yàn)提出了一種基于FPGA的SoPC方案,并最終在平臺(tái)上面驗(yàn)證了其可行性。該方案的優(yōu)勢(shì)在于系統(tǒng)功能改進(jìn)的靈活性,在不改變硬件平臺(tái)的情況下對(duì)系統(tǒng)進(jìn)行增刪和優(yōu)化,降低了系統(tǒng)成本,這是傳統(tǒng)ARM方案無(wú)法達(dá)到的。由于微處理器和用戶邏輯接口都集成在一塊Cyclone芯片上,編程人員可以靈活地定義I/O接口,基于FPGA有更好的靈活性和可靠性[9]。對(duì)基于NiosⅡ的微處理器,用戶能根據(jù)顯示屏的大小靈活調(diào)整硬件邏輯設(shè)計(jì)以實(shí)現(xiàn)對(duì)顯示屏的控制,而不需要改變其原有硬件構(gòu)成。但是16位微控制器卻只能對(duì)固定大小的顯示屏進(jìn)行控制。從長(zhǎng)遠(yuǎn)來(lái)看,基于NiosⅡ的微處理器,可以通過(guò)更改其硬件邏輯配置方便地進(jìn)行版本升級(jí),節(jié)省了成本。開發(fā)人員通過(guò)處理器[10]指令集中增加定制指令,可以加速軟件算法,定制指令可以在一個(gè)周期的時(shí)間內(nèi)完成復(fù)雜的處理任務(wù),為系統(tǒng)優(yōu)化提供了一種高性價(jià)比的解決方案。

[1]潘松,黃繼業(yè),曾毓.SoPC技術(shù)實(shí)用教程[M].北京:清華大學(xué)出版社,2005.

[2]王剛,張瀲.基于FPGA的SoPC嵌入式系統(tǒng)設(shè)計(jì)與典型實(shí)例[M].北京:電子工業(yè)出版社,2009.

[3]王曉迪,張景秀.SoPC系統(tǒng)設(shè)計(jì)與實(shí)踐[M].北京:北京航空航天大學(xué)出版社,2008.

[4]蔡偉剛.NiosⅡ軟件架構(gòu)解析[M].西安:西安電子科技大學(xué)出版社,2007.

[5]田秀偉,鄭喜鳳,丁鐵夫.基于 SoPC的 LED顯示屏控制器設(shè)計(jì)[J].液晶與顯示,2007,22(6):737-741.

[6]孫愷,程世恒.NiosⅡ系統(tǒng)開發(fā)設(shè)計(jì)與應(yīng)用實(shí)例[M].北京:北京航空航天大學(xué)出版社,2007.

[7]郭強(qiáng).液晶顯示應(yīng)用技術(shù)[M].北京:電子工業(yè)出版社,2003.

[8]郭書軍,王玉龍,葛紉秋.嵌入式處理器原理及應(yīng)用—Nios系統(tǒng)設(shè)計(jì)和C語(yǔ)言編程[M].北京:清華大學(xué)出版社,2004.

[9]孫偉,龔兆崗,楊忠根.基于 NiosⅡ的 LED顯示屏控制系統(tǒng)[J].上海海事大學(xué)學(xué)報(bào),2005,26(2).

[10]高兵,陳莉平.液晶和矩陣鍵盤SoPC外設(shè)組件設(shè)計(jì)開發(fā)[J].微計(jì)算機(jī)信息,2008,3(2):152-154.

猜你喜歡
系統(tǒng)設(shè)計(jì)
Smartflower POP 一體式光伏系統(tǒng)
WJ-700無(wú)人機(jī)系統(tǒng)
ZC系列無(wú)人機(jī)遙感系統(tǒng)
何為設(shè)計(jì)的守護(hù)之道?
《豐收的喜悅展示設(shè)計(jì)》
流行色(2020年1期)2020-04-28 11:16:38
基于PowerPC+FPGA顯示系統(tǒng)
半沸制皂系統(tǒng)(下)
瞞天過(guò)?!律O(shè)計(jì)萌到家
連通與提升系統(tǒng)的最后一塊拼圖 Audiolab 傲立 M-DAC mini
設(shè)計(jì)秀
海峽姐妹(2017年7期)2017-07-31 19:08:17
主站蜘蛛池模板: 91热爆在线| 国产第一页第二页| 深夜福利视频一区二区| 天天摸天天操免费播放小视频| 亚洲福利片无码最新在线播放| 99久久精品国产精品亚洲| 中文字幕在线看| 婷婷丁香在线观看| 亚洲高清中文字幕在线看不卡| 激情六月丁香婷婷| 国产午夜一级淫片| 日本一区高清| 91精品专区国产盗摄| 亚洲人成网站在线播放2019| 在线欧美日韩| 无码中字出轨中文人妻中文中| 日本久久网站| 8090午夜无码专区| 国产成人综合在线观看| 动漫精品啪啪一区二区三区| 91精品免费久久久| 毛片视频网| 亚洲人成在线精品| 日本欧美在线观看| 国产成人精品第一区二区| 99视频在线免费看| AV熟女乱| 国产女人爽到高潮的免费视频| 一级香蕉视频在线观看| 无码精品国产dvd在线观看9久| 欧美区国产区| 国产香蕉在线| 欧美色图久久| 四虎国产精品永久一区| 国产无人区一区二区三区| 国产喷水视频| 华人在线亚洲欧美精品| 国产成人你懂的在线观看| 成人在线亚洲| 亚洲天堂网站在线| 色综合久久久久8天国| 亚洲成人在线网| 亚洲最黄视频| 91成人精品视频| 又粗又大又爽又紧免费视频| 欧美日韩国产精品综合| 国产麻豆91网在线看| 喷潮白浆直流在线播放| 99久久国产综合精品2020| 国产在线无码一区二区三区| 国产精品一线天| 九九视频免费看| 国产永久免费视频m3u8| 亚洲日本www| 一级黄色网站在线免费看| 国产欧美日韩综合在线第一| 欧美精品不卡| 国产福利在线观看精品| 精品精品国产高清A毛片| 国产区福利小视频在线观看尤物| 国产h视频免费观看| 国产精品xxx| 国产成人调教在线视频| 国产精品刺激对白在线| 国产9191精品免费观看| 国产午夜精品一区二区三| 国产成人精品在线1区| 天天综合天天综合| 在线观看国产黄色| 一级一级特黄女人精品毛片| 最新午夜男女福利片视频| 午夜精品久久久久久久99热下载 | 福利国产微拍广场一区视频在线| 小蝌蚪亚洲精品国产| 香蕉久人久人青草青草| 麻豆国产精品一二三在线观看| 99精品欧美一区| 国产欧美视频综合二区| 九九久久精品免费观看| 萌白酱国产一区二区| 72种姿势欧美久久久大黄蕉| 久久国产乱子伦视频无卡顿|