新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于NiosII的圖形用戶接口的設(shè)計(jì)

基于NiosII的圖形用戶接口的設(shè)計(jì)

作者: 時(shí)間:2014-01-18 來(lái)源:網(wǎng)絡(luò) 收藏
隨著大規(guī)模集成電路技術(shù)的不斷發(fā)展,嵌入式計(jì)算機(jī)系統(tǒng)開(kāi)始從MCU逐步過(guò)渡到SOC的新階段。是一種靈活、高效的SOC解決方案。其集成了處理器、存儲(chǔ)器、各種外圍設(shè)備等系統(tǒng)設(shè)計(jì)需要的部件,構(gòu)建成一個(gè)可編程的片上系統(tǒng),設(shè)計(jì)方式靈活,可裁減、可擴(kuò)充、可升級(jí),并具備軟硬件在系統(tǒng)可編程的功能。

1 系統(tǒng)總體結(jié)構(gòu)設(shè)計(jì)
系統(tǒng)主要由以下4部分組成:(1)器、SDRAM控制器、SRAM控制器等外設(shè)接口的設(shè)計(jì)。(2)Nios II軟核系統(tǒng)的配置。(3)Nios II處理器與外設(shè)模塊的融合。(4)GUI函數(shù)庫(kù)的建立。系統(tǒng)主要分為硬件和軟件兩部分,部分硬件采用DE2上的硬件電路,其中有些電路的控制器采用硬件描述語(yǔ)言生成;軟件則采用Nios II編譯器書(shū)寫(xiě)。

2 VGA時(shí)序控制模塊設(shè)計(jì)
由于要實(shí)現(xiàn)VGA的實(shí)時(shí)顯示,便需要給VGA一個(gè)顯存,使得VGA顯示的信息能夠緩存和切換。出于速度的考慮,顯存模塊的讀寫(xiě)速度要求較高,否則會(huì)出現(xiàn)卡殼現(xiàn)象??刹捎玫拇鎯?chǔ)器分別有Flash,SRAM,SDRAM,其中SRAM的速度較快,可以選用。是一種具有靜止存取功能的內(nèi)存,無(wú)需刷新電路即能保存其內(nèi)部存儲(chǔ)的數(shù)據(jù),具有較好的存儲(chǔ)性能。
常見(jiàn)的VGA彩色顯示器,通常由CRT(陰極射線管)構(gòu)成。彩色由紅、綠、藍(lán)三基色構(gòu)組成。顯示是用逐行掃描的方式解決,一般把要顯示的數(shù)據(jù)存放于存儲(chǔ)器單,如果要把存儲(chǔ)器里的圖像顯示在VGA顯示器上,以640×480,59.94 Hz(60 Hz)為例。具體行場(chǎng)同步時(shí)序要求如圖1所示。

a.JPG


根據(jù)上述的時(shí)序參數(shù)以及目標(biāo)板上的時(shí)鐘頻率,對(duì)其行頻和場(chǎng)頻的時(shí)序控制采用點(diǎn)和行計(jì)數(shù)的方法,場(chǎng)信號(hào)和行信號(hào)按照時(shí)序圖設(shè)計(jì),當(dāng)像素或行數(shù)達(dá)到相應(yīng)的狀態(tài)后即改變場(chǎng)信號(hào)和行信號(hào)的值。系統(tǒng)所需的像素時(shí)鐘可以用鎖相環(huán)實(shí)現(xiàn)。

3 VGA數(shù)據(jù)緩存模塊設(shè)計(jì)
數(shù)據(jù)緩存模塊式通過(guò)Altera提供的工具中,Avalon總線上掛的一個(gè)SRAM控制器來(lái)實(shí)現(xiàn)數(shù)據(jù)的讀寫(xiě)功能,Avalon總線與SRAM的接口對(duì)用戶是透明的。只需編寫(xiě)Avalon主端口模塊,用于控制Avalon總線的主端口信號(hào),從而實(shí)現(xiàn)數(shù)據(jù)的讀寫(xiě)。Avalon總線同時(shí)被2個(gè)主外設(shè)共同使用,Nios II處理器將需要顯示的數(shù)據(jù)通過(guò)主端口寫(xiě)入到SRAM,VGA顯示模塊通過(guò)主端口將數(shù)據(jù)從SRAM中讀出到VGA接口顯示器上顯示。當(dāng)系統(tǒng)中存在多個(gè)主外設(shè)時(shí),SOPC系統(tǒng)會(huì)自動(dòng)進(jìn)行總線仲裁,產(chǎn)生一個(gè)優(yōu)先級(jí),控制對(duì)Avalon總線的使用情況。
當(dāng)某主外設(shè)要發(fā)起總線請(qǐng)求時(shí),可能Avalon總線不能馬上作出響應(yīng)而處于等待狀態(tài)。Nios II處理器將準(zhǔn)備顯示的數(shù)據(jù)發(fā)送后要求立即存入到存儲(chǔ)器中,否則到下一個(gè)周期數(shù)據(jù)將會(huì)更新,從而導(dǎo)致數(shù)據(jù)丟失,此時(shí)Avalon總線需將信號(hào)設(shè)置為等待狀態(tài)。因此必須將數(shù)據(jù)暫時(shí)存儲(chǔ)在緩沖區(qū)中,待Avalon總線響應(yīng)寫(xiě)傳輸時(shí)再將其從緩沖區(qū)中讀出寫(xiě)入到存儲(chǔ)器中。用一個(gè)先進(jìn)先出的FIFO作為緩沖器能夠滿足以上條件,通過(guò)時(shí)鐘來(lái)控制FIFO的寫(xiě)入和讀出。

4 結(jié)束語(yǔ)
試驗(yàn)結(jié)果證明,運(yùn)行在FPGA中的SOPC系統(tǒng)可以控制VGA顯示器,并將VGA成功驅(qū)動(dòng),而且能夠進(jìn)行畫(huà)點(diǎn)、畫(huà)線、畫(huà)矩形、畫(huà)圓以及16×16漢字和8×16 ASCII字符混排的顯示,同時(shí)達(dá)到了圖像的彩色顯示要求。



關(guān)鍵詞: SOPC VGA控制 NiosII

評(píng)論


相關(guān)推薦

技術(shù)專(zhuān)區(qū)

關(guān)閉