新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 基于Nios II的非一般模式類設備設計與集成

        基于Nios II的非一般模式類設備設計與集成

        ——
        作者:首都師范大學信息工程學院 馬森 呂悅 李志平 時間:2006-08-17 來源:電子產品世界 收藏

        摘要:    在Nios II的開發過程中,硬件抽象層提供多種一般模式類設備,使得開發者可以高效的在系統中添加并使用這些設備。然而對不屬于一般模式類的新設備的使用將不能按照原有的設計方法進行系統開發。為此,需要根據Nios II內部總線規范提供一個設備驅動,并按照SOPC Builder要求集成到硬件抽象層中。通過設計并集成非字符型液晶顯示模塊得出結論:任何非一般模式類設備均可加載到Nios II系統中并能正常工作。

        關鍵詞:    液晶顯示;Nios II;Avalon總線;設備集成

        液晶顯示器按其功能可分為筆段式和點矩陣式液晶顯示器,后者又可以分為字符點陣式和圖形點陣式液晶顯示器。圖形點陣式液晶顯示器不僅可顯示數字、字符等內容,還能顯示漢字和任意圖形。但此類液晶顯示屏屬于非一般模式類設備,在Nios II中不能直接開發使用。

        對于一個全新的外部設備,Nios II有更好的解決方案快速的掌握它的控制方法。按照設備的電器要求,使用Nios II的已有的基本控制設備(例如通用輸入輸出端口PIO)掌握新設備的控制特性與方法。當充分理解新設備的特性后就可以按照Nios II的硬件抽象層(HAL)的定義方法,編寫新設備的驅動將其集成到Nios II中。這樣在今后的開發中在SOPC Builder中就可以像其他設備一樣增添這個新設備,Nios II軟核生成后會自動加載此設備的設備驅動。這樣提高了新設備的二次使用時的開發效率。

        以下是液晶屏顯示模塊接口的設計與集成過程。

        液晶顯示模塊的設計

        液晶顯示簡介

        GM12864A是帶顯示存儲器的圖形液晶顯示器。它的內部是由兩塊KS0108B作為列顯示控制器和一片KS0107B作為行顯示控制器組成。顯示屏上各像素點的顯示狀態與顯示存儲器的各位相互對應,顯示存儲器的數據直接作為圖形顯示的驅動信號。顯示數據為“1”,相應的像素點變亮。液晶屏結構如圖1所示。

        圖1 液晶屏GM12864A的結構圖
         
        PIO類的介紹

        設計初始階段主要的目的在于充分了解新設備的特性與控制方法,為之后的設備集成打好基礎。因此采用通用的輸入輸出控制接口(PIO)直接對液晶屏的引腳進行控制。

        Nios II中PIO分為三大類:輸入(I)、輸出(O)和三態(Tri)。PIO通過Avalon總線與Nios II相連接。如圖2所示。

        圖2 通用輸入輸出接口與Nios II的連接 

        接口的設計

        在Quartus II中新建一個工程,芯片類型選擇Cyclone 1C6Q240C8。設置畫面如圖3所示。

        圖3 芯片設置界面

        工程創建完成后在SOPC Builder中定制Nios II處理器。液晶屏顯示器驅動接口在設計初步作為普通的外部設備,用PIO進行操作。所以為系統增添所需要的PIO接口。設計完成后如圖4所示。

        圖4 定制的Nios II處理器結構

        定制結束后生成Nios II處理器模塊。生成后回到Quartus II中進行系統頂層結構的設計。通過SOPC Builder生成的Nios II模塊需要一個時鐘和一個復位輸入端,輸出與定制時所設計的一致。增添相應的輸入輸出引腳。頂層結構如圖5所示。

        圖5 液晶屏控制系統頂層結構 

        將控制系統編譯,液晶屏與芯片的接口連接電路如圖6所示。

        圖6 液晶屏與FPGA的接口電路

        液晶屏顯示模塊的HAL集成

        為了更好的對新外設進行高效二次開發,通過編寫外設驅動并集成到HAL中是最好的方法。這樣可以更加方便的再次構件系統,有效降低開發周期,提高開發效率,降低開發難度。
        開發外設并集成的開發流程如圖7所示。

        圖7  新設備集成HAL流程 

        對于新外部設備的HAL集成流程是從設備功能角度出發并劃分控制單元模塊,因此使控制程序代碼對設備無關,即外部設備細節控制對開發者是透明的,從而使代碼具有更好的規范性和可移植性。當此設備處于不同的硬件配置的Nios II系統時仍能正常工作。

        結語

        在Altera FPGA中使用軟核處理器Nios II可以將外部存儲器、液晶顯示屏、以太網控制器等外部設備連接在一起,進行外設的協調工作和數據共享。從而具有較高靈活性并且能適應變化較多的技術領域。

        一個新的外部設備只要根據Nios的內部規范編寫驅動就可以集成到HAL中,加強新設備的運行穩定性和二次使用的效率。

        另外,可以根據系統的需要添加多個Nios II處理器實現“多內核”系統或者在Nios II核中加入實時操作系統(RTOS),實現多任務的調度。運用Altera的SOPC技術可以高效快速的開發一個用戶定制的片上系統。并且具有外圍電路少,控制靈活方便,研發周期短等特點。

        參考文獻
        1.   王彥. 基于FPGA的LCD驅動程序設計 [J]. 真空電子技術,2004(6):55
        2.  Altera. Nios II Processor Reference Handbook [DB/OL]. 2005 May 2006 (var6.0). http://www.altera.com.cn/literature/hb/nios2/n2cpu_nii5v1.pdf
        3.  Xiamen Ocular. GDM12864A [DB/OL]. 2005.http://www.xmocular.com/pdf/GDM12864A.pdf
        4.  潘松,黃繼業. SOPC技術實用教材[M]. 北京:清華大學出版社,2005.
        5.  GB2132-80,國家標準漢字字符集 [S].
        6.  Altera. Quartus II Version 6.0 Handbook [DB/OL]. 2005 May (ver3.1). www.altera.com/literature/hb/qts/qts_qii5v2_01.pdf
        7.  Altera. Avalon Bus Specification Reference Manual [DB/OL]. 2005 May (ver3.1). http://www.altera.com/literature/manual/mnl_avalon_spec.pdf



        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 松江区| 阜新| 新化县| 沽源县| 文成县| 阿合奇县| 沐川县| 临城县| 德昌县| 行唐县| 迁西县| 沙洋县| 邵东县| 金平| 河北省| 秦皇岛市| 灵丘县| 孟村| 甘德县| 马尔康县| 什邡市| 汉川市| 盘锦市| 玉门市| 田阳县| 青冈县| 海原县| 和平县| 盘山县| 麟游县| 南陵县| 读书| 自贡市| 财经| 磐安县| 汕头市| 德令哈市| 娄烦县| 乐清市| 潢川县| 揭西县|