基于NioslI的SOPC系統(tǒng)的LCD顯示驅(qū)動(dòng)IP核設(shè)計(jì)
引言
本文引用地址:http://www.ex-cimer.com/article/151605.htmNioslI嵌入式處理器是A1tera公司提出的SOPC解決方案,是一種用戶(hù)可隨意配置和構(gòu)建的32位嵌入式處理器,結(jié)合豐富的外設(shè)可快速、靈活地構(gòu)建功能強(qiáng)大的SOPC系統(tǒng)。Altera公司提供了一些通用的IP核,使得用戶(hù)可輕松集成屬于自己的專(zhuān)用功能;但對(duì)于一些特定的外設(shè),沒(méi)有現(xiàn)成可用的IP核,如液晶模塊CBGl28064等。
本文以深圳秋田視佳實(shí)業(yè)有限公司的液晶顯示模塊CBGl28064為例,在基于NioslI的SOPC系統(tǒng)中設(shè)計(jì)了LCD顯示驅(qū)動(dòng)IP核,并下載到Cyclone系列的FPGA中,實(shí)現(xiàn)了對(duì)LCD的顯示驅(qū)動(dòng)。
1 CBGl28064液晶顯示模塊
CBG128064是一款以2片HD61202作為列驅(qū)動(dòng)器,1片HD61203作為行驅(qū)動(dòng)器的液晶模塊。HD61202是一種帶有驅(qū)動(dòng)輸出的圖形液晶顯示控制器,可直接與8位微處理器相連;而HD61203只需提供電源,就能產(chǎn)生行驅(qū)動(dòng)信號(hào)和各種同步信號(hào)。CBGl28064液晶顯示模塊內(nèi)置顯示存儲(chǔ)器RAM,顯示屏上各像素點(diǎn)的顯示狀態(tài)與顯示存儲(chǔ)器RAM中的各位數(shù)據(jù)一一對(duì)應(yīng)。顯示存儲(chǔ)器的數(shù)據(jù)直接作為圖形顯示的驅(qū)動(dòng)信號(hào)。外部處理器只需要通過(guò)其8位數(shù)據(jù)線和6條控制線來(lái)設(shè)置所需要的顯示方式,其他功能均由模塊自動(dòng)完成。HD61202提供7條簡(jiǎn)單的指令:顯示開(kāi)/關(guān)指令、顯示起始行(ROW)設(shè)置指令、頁(yè)(RAGE)設(shè)置指令、列地址(Y Address)設(shè)置指令、讀狀態(tài)指令、寫(xiě)數(shù)據(jù)指令、讀數(shù)據(jù)指令。
2 方案選擇
通常有兩種方式可以實(shí)現(xiàn)NiosII嵌入式處理器對(duì)LCD的顯示驅(qū)動(dòng):
一種是利用現(xiàn)成的并行輸入/輸出(PIO)內(nèi)核。該內(nèi)核提供了Avalon總線從控制器端口到通用I/O口間的存儲(chǔ)器映射接口,將LCD模塊的接口與NiosII嵌入式處理器的并行端口相連接,NiosII嵌入式處理器通過(guò)對(duì)其端口的操作來(lái)完成對(duì)LCD模塊的控制。這種方式類(lèi)似于單片機(jī)操作,時(shí)序簡(jiǎn)單,易于實(shí)現(xiàn);但是在SOPC系統(tǒng)中硬件上需要設(shè)計(jì)與外設(shè)相連的I/O口,軟件上需要編寫(xiě)接口程序進(jìn)行讀寫(xiě)控制,增加了處理器的時(shí)間開(kāi)銷(xiāo),F(xiàn)PGA的并行處理能力沒(méi)有得到發(fā)揮。
另一種是采用自定義IP核方式。把LCD模塊看成是外部存儲(chǔ)器或I/O設(shè)備,作為從設(shè)備掛接到NiosII嵌入式處理器的Avalon總線上,處理器以訪問(wèn)I/O設(shè)備或讀寫(xiě)存儲(chǔ)器的方式對(duì)其進(jìn)行控制。這種方法需要寫(xiě)HDL模塊,自己定義控制、狀態(tài)、數(shù)據(jù)寄存器和控制位,可較為靈活地實(shí)現(xiàn)復(fù)雜的時(shí)序控制。一旦完成了設(shè)計(jì),即可封裝為SOPC BLdldel可用的獨(dú)立元件,用戶(hù)可以像使用Altera公司提供的其他外設(shè)一樣來(lái)使用,并且可以提供給其他設(shè)計(jì)者使用。本文選用該方式實(shí)現(xiàn)。
3 LCD顯示驅(qū)動(dòng)設(shè)計(jì)
圖l為系統(tǒng)結(jié)構(gòu)圖。設(shè)計(jì)的重點(diǎn)在于LCD顯示驅(qū)動(dòng)模塊的設(shè)計(jì)。按照模塊化、層次化的設(shè)計(jì)思想,顯示驅(qū)動(dòng)可分為3部分實(shí)現(xiàn),即任務(wù)邏輯部分、寄存器組部分和Avalon總線接口部分。任務(wù)邏輯部分描述液晶模塊的讀寫(xiě)邏輯功能;寄存器文件部分提供了內(nèi)部寄存器訪問(wèn)的通道;Avalon總線接口部分通過(guò)頂層接口模塊對(duì)寄存器進(jìn)行操作,從而實(shí)現(xiàn)對(duì)行為模塊的訪問(wèn)和控制。其中,DATA[7..0]為8位數(shù)據(jù)線,CSl、CS2為片選信號(hào),RS為指令/數(shù)據(jù)選擇信號(hào),R/W為讀寫(xiě)選擇信號(hào),RST為復(fù)位信號(hào),E為讀寫(xiě)使能信號(hào)。
評(píng)論