论文部分内容阅读
摘要:嵌入式系统中,液晶显示器的应用十分广泛,但是多数液晶控制器的性能并不高,显示过程中需要占用大量的与其接口的MCU的时间,因此提高液晶控制器的性能有助于降低系统对于MCU的性能要求,从而节省成本并增大了MCU的选择范围。目前嵌入式应用中的液晶控制器,将全部显示存储空间都划分成一个显示空间,在显示动态画面时,需要执行大量的画面备份与恢复工作。本文提出一种将显示内容分层的思想,将静态与动态画面分多层显示,能够降低30%以上的MCU接口工作量,使得这种新型液晶控制器非常适合于嵌入式应用领域。
关键词:LCD;MCU;显示存储器;多图层;液晶控制器
中图分类号:TP332文献标识码:A文章编号:1009-3044(2008)21-30565-03
Design and Implementation of an Multi-Layer LCD Controller
HE Rui
(College of Information, Shenyang Ligong University, Shenyang 110168, China)
Abstract: LCD display is widely used in embedded system, but the performance of much LCD controller is not high,and it occupys much of MCU time. So improving performance of LCD controller is helpful to reduce performance requirements of MCU,which decreases cost and increases selection range of MCU. Much of present LCD controller in embedded system take display memory as one space,during dynamic image change,this kind of LCD controller will execute much of bakup and restore. This paper presents a multi-layer LCD controller,which divides display content to several layers.This can decrease more than 30% workload,which make it very suitable in embedded system.
Key words: LCD; MCU; Display Memory; Multi-layer; LCD controller
1 引言
液晶显示器(Liquid Crystal Display,LCD)具有无电磁辐射、画面效果好、数字式接口、低功耗、易集成、可靠性高等优点[2]。液晶显示器的使用者也越来越多,在嵌入式的应用中已经逐渐占主导地位了。液晶显示器分为STN(Super Twisted Nematic)屏幕和TFT(Thin Film Transistor)屏幕等种。STN又称超扭曲向列型液晶显示屏幕,它属于被动矩阵式LCD器件,具有功耗小、省电的优点,但是它反应时间较慢,在较暗的环境中清晰度也差。TFT即薄膜场效应晶体管,也就是“真彩”,属于有源矩阵液晶显示器中的一种。它可以“主动地”对屏幕上的各个独立的像素进行控制,这样可以大大提高反应时间。TFT液晶显示屏的特点是亮度好、对比度高、层次感强、颜色鲜艳。本文提出的多图层液晶控制器使用的液晶屏主要是TFT液晶屏。
嵌入式系统应用中,常常需要显示一些具有如下特征的画面:画面存在一个背景,每次更新画面时只需要更新一小部分动态元素,如手机应用、游戏应用等领域。当前嵌入式系统中的液晶控制器虽然能够完整地显示出上述画面,但是它在处理的过程中需要占用大量的主控MCU时间,对外部MCU性能要求较高,而且显存的数据带宽低,画面容易出现延迟。
为了解决了这个缺点,本文提出一种将显示内容划分多个图层,之后分层显示的思想,并且基于这一思想设计了一款多图层液晶控制器。基于这一思想显示上述动态画面时,MCU只需改变相关图层的优先级并将动态部分做出变化即可,降低了MCU与液晶控制器间的通信需求。
本设计是基于FPGA(Field Programmable Gate Array)实现的,它具有功能强大,开发过程投资小,周期短,方便调试,保密性好等优点,非常适合于本课题设计。
本文首先在第2部分简介了液晶显示器的原理与TFT液晶接口协议;第3部分介绍了显存控制器的选择;第4部分重点说明了多图层液晶控制器的设计思想与实现,并进行了模拟验证;最后在第5部分总结了这一液晶控制器的优缺点,并展望了这一技术的未来发展和应用。
2 液晶显示器及其接口时序
液晶屏包括液晶显示屏和驱动电路两部分,其中驱动电路是与液晶显示阵列直接对话的接口,它负责解析外部液晶控制器的显示数据,将颜色数据和时序信息转换为实际的控制电压,输送到液晶显示屏的各个像素点,直接控制显示图像。常见的TFT液晶屏,其内部由时序控制模块和行列驱动电路等部分构成,其具体结构如图1。
时序控制模块(Timing Controller),负责接收外部液晶控制器的输入信号,并产生控制行列驱动器时序。它通过输入的各种数据产生多种时序关系和数据,行列驱动器(H-driver、V-driver)根据时序和数据产生电压信号,控制液晶屏上各像素点的晶体状态,从而达到在液晶屏上产生图像的效果。
液晶控制器端要实现的TFT液晶屏的接口时序并不复杂,它分为行扫描、列扫描和像素显示使能等过程。每个像素的显示都需要一个时钟周期,各像素依次显示。一行扫描完成后,执行一次行同步,全部行扫描完成后,执行一次列同步,完成一屏像素的刷新。具体时序见图2。
3 显存控制器的实现
由于液态晶体自身的特点,液晶屏显示过程中必须不断地刷新显示的图象,刷新频率一般要在60Hz以上才能保证肉眼看不到闪烁,达到比较适宜的视觉观感。对于一个320X240分辨率、64K色的液晶屏,刷新频率60Hz时,液晶控制器每秒需要从显示存储器中读取9.216MB的显示数据。可见,液晶控制器对于显存接口的通信带宽要求是相当高的,特别是当液晶分辨率提高时,这一带宽要求是成倍增长的。因此显存接口的设计直接决定着液晶控制器的显示性能。
然而高性能存储控制器的设计是相当复杂的,已经超出了本文的研究范围,故在实现过程中,本文选用了一款现有的存储控制器,这一控制器可以直接实现DDR2 SDRAM芯片的控制,对于16位的存储颗粒接口,其数据交换的峰值带宽可达664MB/s,完全满足液晶控制器的需求。
这款DDR2 SDRAM控制器由国防科技大学计算机学院硕士邓丽设计并实现,这里对这一控制器的原理及接口做简单介绍,以便后续设计的展开。
这款DDR2 SDRAM控制器支持全系列的DDR2 SDRAM颗粒和标准DIMM存储条[1],接口宽度可裁减。该控制器支持全流水操作,请求与数据返回和写入操作可实现完全流水,而且支持低功耗应用,软件可自由关断SDRAM接口时钟,并支持自刷新模式。这款控制器的设计方案简单高效,易于接口,能够达到166MHz以上的时钟主频。该控制器分为传输层和物理层两部分,其中物理层与DDR2 SDRAM颗粒接口,传输层与用户接口。本文主要关心其传输层的用户接口协议。该控制器的用户接口读写时序图分别如下。
可见,多图层液晶控制器比单图层控制器至少减少了30%以上的工作量,大大降低了对于MCU的性能需求。
多图层液晶控制器的设计的总体框架见图7。
其中,用户接口是与用户进行显存数据交换和配置的唯一端口。它接收用户的命令,配置内部寄存器和生成读写显示存储器的访问请求。配置信息经各种配置寄存器传送给TFT接口和显存控制接口模块,用来控制这两个模块的内部工作方式;读写显示存储器的请求用来更新显示存储器或者读取显示存储器的内容给用户。
显存控制接口的主要功能是处理来自用户接口和TFT接口的访存请求,对来自上述两个源的请求进行仲裁,选择有效的请求送给存储控制IP,存储控制IP再根据请求,将数据更新到显示存储器或者返回从显存读取的数据。显存控制IP就是第3部分介绍的DDR2 SDRAM控制器。
TFT控制接口是刷新液晶屏的主要部件。它接收用户接口的配置信息和显存控制接口发来的显示数据,并按照配置要求将显存数据转换、合并后,转化为可以直接控制刷新液晶屏的信号。
上述设计使用Verilog语言编写了源程序,之后选择Cadence公司的NCVerilog作为模拟及功能验证工具,其功能时序满足设计要求。综合与实现工具选用的是Xilinx公司的ISE8.1,选择的芯片是Spartan3系列的XA3S200-4PQG208,实现后的结果(不含DDR2 SDRAM控制器)报告如下:
Number of Slices:6%
Number of Slice Flip Flops 1%
Number of 4 input LUTs:5%
Number of bonded IOBs:71%
Number of GCLKs:25%。
Clock period: 8.350ns (frequency: 119.760MHz)
5 结束语
综上所述,本文提出的多图层液晶控制器的设计与实现方案,相对单图层液晶控制器,对于具有背景基本静止的动态画面的显示需求,至少能够降低30%以上的MCU接口访存流量。多图层液晶控制器通过划分显存空间,使用多图层分层显示的方法,提高了用户接口的效率,降低了对于用户端主控处理器的干扰,使得它特别适合于嵌入式应用,如手机、掌上电脑、游戏机等应用。
还要注意到,此多图层液晶控制器的实现方案,在降低用户接口访存流量方面,仍有需要进一步优化,如添加使用透明色进行矩形空间填充功能等,这可以进一步降低MCU接口的工作量。另外,在实现滚屏等方面,本设计方案还不够完善,下一步的工作,将紧密关注相关方面的发展,针对上述问题进一步优化,将多图层液晶控制器实现得更加完善。
参考文献:
[1] 邓丽.高带宽低延时的DDR2内存控制器的研究与实现[D].国防科学技术大学,2006.
[2] 李宏.液晶显示器件应用技术[M].机械工业出版社,2004.
[3] 陈学峰,周荣政,洪志良.彩色TFT液晶显示控制电路设计及其ASIC实现[J].半导体技术,2003(05).
[4] NEC Corporation.TFT COLOR LCD MODULE NL6448AC33-24[S].1998.
关键词:LCD;MCU;显示存储器;多图层;液晶控制器
中图分类号:TP332文献标识码:A文章编号:1009-3044(2008)21-30565-03
Design and Implementation of an Multi-Layer LCD Controller
HE Rui
(College of Information, Shenyang Ligong University, Shenyang 110168, China)
Abstract: LCD display is widely used in embedded system, but the performance of much LCD controller is not high,and it occupys much of MCU time. So improving performance of LCD controller is helpful to reduce performance requirements of MCU,which decreases cost and increases selection range of MCU. Much of present LCD controller in embedded system take display memory as one space,during dynamic image change,this kind of LCD controller will execute much of bakup and restore. This paper presents a multi-layer LCD controller,which divides display content to several layers.This can decrease more than 30% workload,which make it very suitable in embedded system.
Key words: LCD; MCU; Display Memory; Multi-layer; LCD controller
1 引言
液晶显示器(Liquid Crystal Display,LCD)具有无电磁辐射、画面效果好、数字式接口、低功耗、易集成、可靠性高等优点[2]。液晶显示器的使用者也越来越多,在嵌入式的应用中已经逐渐占主导地位了。液晶显示器分为STN(Super Twisted Nematic)屏幕和TFT(Thin Film Transistor)屏幕等种。STN又称超扭曲向列型液晶显示屏幕,它属于被动矩阵式LCD器件,具有功耗小、省电的优点,但是它反应时间较慢,在较暗的环境中清晰度也差。TFT即薄膜场效应晶体管,也就是“真彩”,属于有源矩阵液晶显示器中的一种。它可以“主动地”对屏幕上的各个独立的像素进行控制,这样可以大大提高反应时间。TFT液晶显示屏的特点是亮度好、对比度高、层次感强、颜色鲜艳。本文提出的多图层液晶控制器使用的液晶屏主要是TFT液晶屏。
嵌入式系统应用中,常常需要显示一些具有如下特征的画面:画面存在一个背景,每次更新画面时只需要更新一小部分动态元素,如手机应用、游戏应用等领域。当前嵌入式系统中的液晶控制器虽然能够完整地显示出上述画面,但是它在处理的过程中需要占用大量的主控MCU时间,对外部MCU性能要求较高,而且显存的数据带宽低,画面容易出现延迟。
为了解决了这个缺点,本文提出一种将显示内容划分多个图层,之后分层显示的思想,并且基于这一思想设计了一款多图层液晶控制器。基于这一思想显示上述动态画面时,MCU只需改变相关图层的优先级并将动态部分做出变化即可,降低了MCU与液晶控制器间的通信需求。
本设计是基于FPGA(Field Programmable Gate Array)实现的,它具有功能强大,开发过程投资小,周期短,方便调试,保密性好等优点,非常适合于本课题设计。
本文首先在第2部分简介了液晶显示器的原理与TFT液晶接口协议;第3部分介绍了显存控制器的选择;第4部分重点说明了多图层液晶控制器的设计思想与实现,并进行了模拟验证;最后在第5部分总结了这一液晶控制器的优缺点,并展望了这一技术的未来发展和应用。
2 液晶显示器及其接口时序
液晶屏包括液晶显示屏和驱动电路两部分,其中驱动电路是与液晶显示阵列直接对话的接口,它负责解析外部液晶控制器的显示数据,将颜色数据和时序信息转换为实际的控制电压,输送到液晶显示屏的各个像素点,直接控制显示图像。常见的TFT液晶屏,其内部由时序控制模块和行列驱动电路等部分构成,其具体结构如图1。
时序控制模块(Timing Controller),负责接收外部液晶控制器的输入信号,并产生控制行列驱动器时序。它通过输入的各种数据产生多种时序关系和数据,行列驱动器(H-driver、V-driver)根据时序和数据产生电压信号,控制液晶屏上各像素点的晶体状态,从而达到在液晶屏上产生图像的效果。
液晶控制器端要实现的TFT液晶屏的接口时序并不复杂,它分为行扫描、列扫描和像素显示使能等过程。每个像素的显示都需要一个时钟周期,各像素依次显示。一行扫描完成后,执行一次行同步,全部行扫描完成后,执行一次列同步,完成一屏像素的刷新。具体时序见图2。
3 显存控制器的实现
由于液态晶体自身的特点,液晶屏显示过程中必须不断地刷新显示的图象,刷新频率一般要在60Hz以上才能保证肉眼看不到闪烁,达到比较适宜的视觉观感。对于一个320X240分辨率、64K色的液晶屏,刷新频率60Hz时,液晶控制器每秒需要从显示存储器中读取9.216MB的显示数据。可见,液晶控制器对于显存接口的通信带宽要求是相当高的,特别是当液晶分辨率提高时,这一带宽要求是成倍增长的。因此显存接口的设计直接决定着液晶控制器的显示性能。
然而高性能存储控制器的设计是相当复杂的,已经超出了本文的研究范围,故在实现过程中,本文选用了一款现有的存储控制器,这一控制器可以直接实现DDR2 SDRAM芯片的控制,对于16位的存储颗粒接口,其数据交换的峰值带宽可达664MB/s,完全满足液晶控制器的需求。
这款DDR2 SDRAM控制器由国防科技大学计算机学院硕士邓丽设计并实现,这里对这一控制器的原理及接口做简单介绍,以便后续设计的展开。
这款DDR2 SDRAM控制器支持全系列的DDR2 SDRAM颗粒和标准DIMM存储条[1],接口宽度可裁减。该控制器支持全流水操作,请求与数据返回和写入操作可实现完全流水,而且支持低功耗应用,软件可自由关断SDRAM接口时钟,并支持自刷新模式。这款控制器的设计方案简单高效,易于接口,能够达到166MHz以上的时钟主频。该控制器分为传输层和物理层两部分,其中物理层与DDR2 SDRAM颗粒接口,传输层与用户接口。本文主要关心其传输层的用户接口协议。该控制器的用户接口读写时序图分别如下。
可见,多图层液晶控制器比单图层控制器至少减少了30%以上的工作量,大大降低了对于MCU的性能需求。
多图层液晶控制器的设计的总体框架见图7。
其中,用户接口是与用户进行显存数据交换和配置的唯一端口。它接收用户的命令,配置内部寄存器和生成读写显示存储器的访问请求。配置信息经各种配置寄存器传送给TFT接口和显存控制接口模块,用来控制这两个模块的内部工作方式;读写显示存储器的请求用来更新显示存储器或者读取显示存储器的内容给用户。
显存控制接口的主要功能是处理来自用户接口和TFT接口的访存请求,对来自上述两个源的请求进行仲裁,选择有效的请求送给存储控制IP,存储控制IP再根据请求,将数据更新到显示存储器或者返回从显存读取的数据。显存控制IP就是第3部分介绍的DDR2 SDRAM控制器。
TFT控制接口是刷新液晶屏的主要部件。它接收用户接口的配置信息和显存控制接口发来的显示数据,并按照配置要求将显存数据转换、合并后,转化为可以直接控制刷新液晶屏的信号。
上述设计使用Verilog语言编写了源程序,之后选择Cadence公司的NCVerilog作为模拟及功能验证工具,其功能时序满足设计要求。综合与实现工具选用的是Xilinx公司的ISE8.1,选择的芯片是Spartan3系列的XA3S200-4PQG208,实现后的结果(不含DDR2 SDRAM控制器)报告如下:
Number of Slices:6%
Number of Slice Flip Flops 1%
Number of 4 input LUTs:5%
Number of bonded IOBs:71%
Number of GCLKs:25%。
Clock period: 8.350ns (frequency: 119.760MHz)
5 结束语
综上所述,本文提出的多图层液晶控制器的设计与实现方案,相对单图层液晶控制器,对于具有背景基本静止的动态画面的显示需求,至少能够降低30%以上的MCU接口访存流量。多图层液晶控制器通过划分显存空间,使用多图层分层显示的方法,提高了用户接口的效率,降低了对于用户端主控处理器的干扰,使得它特别适合于嵌入式应用,如手机、掌上电脑、游戏机等应用。
还要注意到,此多图层液晶控制器的实现方案,在降低用户接口访存流量方面,仍有需要进一步优化,如添加使用透明色进行矩形空间填充功能等,这可以进一步降低MCU接口的工作量。另外,在实现滚屏等方面,本设计方案还不够完善,下一步的工作,将紧密关注相关方面的发展,针对上述问题进一步优化,将多图层液晶控制器实现得更加完善。
参考文献:
[1] 邓丽.高带宽低延时的DDR2内存控制器的研究与实现[D].国防科学技术大学,2006.
[2] 李宏.液晶显示器件应用技术[M].机械工业出版社,2004.
[3] 陈学峰,周荣政,洪志良.彩色TFT液晶显示控制电路设计及其ASIC实现[J].半导体技术,2003(05).
[4] NEC Corporation.TFT COLOR LCD MODULE NL6448AC33-24[S].1998.