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

基于ARM與FPGA的LCD控制器設計

2010-08-18 00:58:54莊聰聰王大明
電子設計工程 2010年6期
關鍵詞:信號設備系統

莊聰聰,王大明,李 寒

(西安工業大學 電子信息工程學院,陜西 西安 710032)

隨著顯示屏技術的不斷發展,真彩液晶顯示屏以其高分辨率、高對比度及高清晰度等優勢逐漸在嵌入式顯示系統中占據重要地位。目前,基于嵌入式平臺的LCD顯控技術的實現主要有兩種方式:ARM內嵌LCD控制器和獨立的控制器件。但是這兩種實現方式都存在著不足之處,內嵌控制器的使用可能增大處理器的負擔和限制顯示幀率,而外部控制器件不僅成本高,而且專用性比較強,很難適應不同類型的液晶屏。

據此存在的問題,這里提出一種基于ARM與FPGA的LCD控制器設計方案,該設計方案一方面能夠通過操作LINUX OS下的Framebuffer設備提高顯存的寫入速率及減輕處理器的負擔,另一方面用FPGA來實現LCD控制器的設計,開發周期短、功耗低,同時具有靈活的移植性,可應用于不同中小尺寸的液晶顯示屏。

1 系統組成及工作原理

系統主要有微控制器、FPGA(LCD控制器)、存儲單元以及外設接口組成,系統組成框圖如圖1所示。

圖1 基于ARM與FPGA的LCD控制器系統組成框圖

系統的工作流程:在FPGA內部的時序發生電路所產生的時序控制信號作用下,LCD控制器通過Framebuffer接口從微控制器讀出顯示所需的數據存入顯示緩存SRAM中,同時LCD顯示屏從顯存SRAM中讀取顯示數據,并通過數據格式轉換電路直接將數據信息實時顯示。

2 系統硬件設計

2.1 LCD控制器

LCD控制器是基于FPGA實現的。本方案采用Altera公司的Cyclone(颶風)系列EP1C6Q240。FPGA具有高速的數據傳輸I/O接口,可實現高速的顯存讀取速率,大大提高LCD顯示的幀率。而同時FPGA是可編程邏輯器件,可實現復雜的邏輯運算及提供復雜的控制時序。LCD顯示屏采用LQ035Q3DG01型的TFT-LCD液晶顯示屏,分辨率為320×240,圖像信號為RGB格式。由于SRAM有較高的讀寫速度,該設計方案的顯示緩存采用1片IS61LV51216AL型SRAM,其容量為512 KB,讀寫速度為10 ns左右。而顯示一幀圖像的大小為125 KB(320×240×2/1 024), FPGA對顯存的讀寫速度約為200 ns,因此滿足系統要求。圖2為LCD控制器電路連接圖。

圖2 LCD控制器電路連接

2.2ARM9微控制器

該系統設計的主控單元采用ATMEL公司的AT91RM9200(簡稱 9200)作為 MCU,該處理器是基于ARM920T內核,工作主頻為180 MHz,性能可達到200 MI/s,系統采用開源的LINUX OS[3-4]。但是ARM9作為系統的控制終端,需要完成信息采集、處理以及與外部通信等多項工作,而LCD控制器如果也要從內存中讀出數據顯示,這就會造成處理器負擔,從而降低顯示緩存讀入數據的速率,影響LCD的實時顯示。因此這里提出一種基于LINUX OS下的Framebuffer接口的應用方法,大大提升顯存讀入數據的速率,從而提升整個顯示系統的實時性。圖3為AT91RM9200接口電路連接。

圖3 AT91RM9200接口電路連接

3 系統軟件設計

系統的軟件設計主要分為基于FPGA的LCD控制器設計與LINUX OS下Framebuffer驅動程序設計2部分。

3.1 LCD控制器設計

3.1.1 LCD控制器組成

該設計方案的LCD控制器主要由緩存讀寫、MCU接口及LCD時序控制等模塊組成,具體組成如圖4所示。

圖4 LCD控制器

3.1.2 LCD控制器設計原理

由TFT-LCD液晶屏顯示原理可知,顯示所需的主要控制信號有像素時鐘信號、行/場同步信號以及使能信號[1,6]。該方案的顯示屏分辨率為320×240,要求設計液晶顯示屏的刷新頻率為60 Hz,即場同步信號(VSYNC)為60 Hz,刷新一屏所需時間為1/60 s,而一場則由240個行同步信號組成,那么一個行同步信號的周期為1/(60×240)s,即可得行同步信號(HSYNC)為15 kHz。 同理可得像素時鐘信號(CK)為 5 MHz。

采用FPGA內置的鎖相環IP模塊(PLL)將FPGA 50 MHz時鐘信號F_CLK 10分頻為5 MHz的像素時鐘信號。應用狀態機方法,用Verilog硬件描述語言設計時序控制模塊,它為LCD提供滿足時序要求的控制信號VSYNC、HSYNC以及ENAB[1,5-6]。設計完成后在QuatusII環境下完成時序仿真,得到的仿真結果滿足時序要求,仿真圖如圖5所示。

SRAM為顯存模塊,由圖2可知LCD控制器與微控制器之間的數據傳輸是在ARM的時鐘控制下讀入,而同時LCD屏顯則是在像素時鐘信號CK的控制下從SRAM中讀取數據。針對該異時鐘域之間數據的傳輸問題本方案采用FPGA設計實現異步FIFO來完成。

圖5 時序仿真圖

3.2 Framebuffer驅動設計

Framebuffer是Linux內核中的一種驅動程序接口,該接口將顯示設備映射為幀緩沖區。平臺使用Linux2.6.25內核。在Linux2.6內核當中,通常采用分層的驅動設計框架,對設備進行分層和分類管理,驅動底層為總線驅動,上層為具體設備驅動。在Framebuffer驅動程序中,其軟件設計流程為:首先需要針對該具體的設備和硬件連接注冊總線類型及申請系統總線資源;其次,將具體設備驅動程序注冊進入總線鏈表,Linux內核根據設備驅動程序中提供的探測函數檢測總線設備類型;最后在驅動探測函數中實現具體設備類型的注冊[2-3]。 以下為其具體的實現過程。

1)資源申請 系統中,9200通過外部總線接口的BANK7與FPGA FIFO接口連接,采用16位靜態總線方式對FIFO數據進行寫入操作。根據驅動設計框架,驅動程序設計的第一步需要通過系統調用platform_device_register函數申請總線資源,示意代碼如下:

2)驅動注冊 在具體設備驅動中,通過使用module_init宏與module_exit定義驅動模塊的加載與卸載方法,在模塊注冊函數中使用platform_driver_register函數將具體設備的platform_driver結構體注冊進入系統總線鏈表,platform_driver中為總線提供具體設備的probe與remove等操作方法,其示意代碼如下:

3)Framebuffer設備注冊 在Linux中,通過 fb_info結構體對幀緩沖設備信息進行描述。在fb_info中,較為重要的結構有 fb_var_screeninfo、fb_var_screeninfo、fb_ops。 其中,fb_var_screeninfo記錄用戶可修改的顯示控制器參數,包括屏幕分辨率;fb_fix_screeninfo記錄用戶不能修改的顯示控制器的參數,如屏幕緩沖區的物理地址等;fb_ops記錄了具體顯示設備IO操作的實現方法。驅動通過register_framebuffer函數將fb_info記錄的顯示設備信息注冊進Framebuffer設備鏈表。

在Linux文件系統中,Framebuffer設備的主設備號為29,次設備號為幀緩沖序號。Framebuffer設備注冊后通過mknod指令在系統dev目錄下創建Framebuffer設備文件節點,應用層程序可通過Framebuffer設備文件實現Framebuffer設備的訪問和操作。

4 結束語

該設計方案的LCD控制器達到實時性及顯示幀率的要求,每秒顯示至少25幀。基于FPGA設計的LCD控制器技術具有應用廣泛、移植性強、開發周期短以及成本低等優點,可以適用于眾多的需要LCD液晶顯示的系統或場合。

[1]夏宇聞.Verilog數字系統設計教程[M].北京:北京航空航天大學出版社,2008.

[2]周立功,陳明計,陳渝.ARM嵌入式Linux系統構建與驅動開發范例[M].北京:北京航空航天大學出版社,2006.

[3]馬忠梅,李善平,康慨,等.ARM&Linux嵌入式系統教程[M]北京:北京航天航空大學出版社,2005.

[4]夏靖波,王航,陳雅蓉.嵌入式系統原理與開發[M].西安:西安電子科技大學出版社,2006.

[5]華清遠見嵌入式培訓中心.FPGA應用開發入門與典型實例[M].北京:人民郵電出版社,2008.

[6]郭威,王大明,李寒.基于ARM&LINUX的液晶驅動終端的設計 [J].電子設計工程, 2009,17(4):63-64.

猜你喜歡
信號設備系統
諧響應分析在設備減振中的應用
Smartflower POP 一體式光伏系統
工業設計(2022年8期)2022-09-09 07:43:20
信號
鴨綠江(2021年35期)2021-04-19 12:24:18
WJ-700無人機系統
ZC系列無人機遙感系統
北京測繪(2020年12期)2020-12-29 01:33:58
完形填空二則
基于MPU6050簡單控制設備
電子制作(2018年11期)2018-08-04 03:26:08
基于FPGA的多功能信號發生器的設計
電子制作(2018年11期)2018-08-04 03:25:42
連通與提升系統的最后一塊拼圖 Audiolab 傲立 M-DAC mini
500kV輸變電設備運行維護探討
工業設計(2016年12期)2016-04-16 02:52:00
主站蜘蛛池模板: 欧美区日韩区| 丰满人妻一区二区三区视频| 亚洲成人在线免费观看| 伊人久久久久久久| 亚洲欧洲一区二区三区| 国产亚洲欧美日本一二三本道| 国产主播福利在线观看| 成人免费视频一区| 草草线在成年免费视频2| 玖玖精品视频在线观看| 午夜小视频在线| 欧美精品亚洲精品日韩专区va| 中文国产成人精品久久一| 精品久久久久久成人AV| 91精品啪在线观看国产| 日韩无码黄色| 日韩av资源在线| 99久久性生片| 日韩二区三区| 国产一区二区三区在线观看免费| 亚洲美女视频一区| www.亚洲天堂| 国产欧美日韩在线在线不卡视频| 久久久波多野结衣av一区二区| 999国内精品视频免费| 少妇极品熟妇人妻专区视频| 日本黄色a视频| 三上悠亚在线精品二区| 亚洲人成网18禁| 国产精品欧美激情| 四虎永久在线精品影院| 国产精品网拍在线| 成人免费网站在线观看| 国产成人久久综合一区| 永久免费av网站可以直接看的| 久久综合九九亚洲一区| 在线播放精品一区二区啪视频| 青青青草国产| 波多野结衣中文字幕一区二区| 国产老女人精品免费视频| 亚洲第一视频免费在线| 亚洲最黄视频| 日韩福利在线观看| 亚洲中文字幕97久久精品少妇| 国内精自视频品线一二区| 中文无码日韩精品| 97视频精品全国在线观看| 成年看免费观看视频拍拍| 亚洲综合香蕉| 69精品在线观看| 青青草a国产免费观看| swag国产精品| 午夜无码一区二区三区| 欧美一道本| 秘书高跟黑色丝袜国产91在线| 亚洲精品第五页| 久久久久免费看成人影片| 少妇人妻无码首页| 国产欧美精品专区一区二区| 日韩精品亚洲人旧成在线| 国产一在线| 亚洲欧美成aⅴ人在线观看| 伦精品一区二区三区视频| 欧美丝袜高跟鞋一区二区| 国产毛片不卡| 亚洲国产天堂久久综合226114| 亚洲AV无码乱码在线观看裸奔| 在线观看国产黄色| 亚洲福利一区二区三区| 亚洲无码视频一区二区三区| 99热最新网址| 97久久精品人人做人人爽| 国产一级二级三级毛片| 国产日韩AV高潮在线| 18禁不卡免费网站| 亚洲第一黄片大全| 成年女人18毛片毛片免费| 国产福利一区在线| 欧美亚洲综合免费精品高清在线观看| 国产精品大白天新婚身材| 首页亚洲国产丝袜长腿综合| 国产成人综合日韩精品无码首页|