基于嵌入式Linux的TFT LCD lP及驱动的设计

来源 :电子产品世界 | 被引量 : 0次 | 上传用户:otto0127
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  系统总体设计方案
  
  本系统的总体设计框图如图1所示。
  


  Nios II处理器在SDRAM中开辟帧缓冲(Framebuffer),可以是单缓冲也可以是双缓冲。以单缓冲为例。处理器将一帧图像数据(640×480×2Bytes,RGB565,16bit)存入帧缓冲,然后将帧缓冲的首地址写入到LCD控制器,并启动LCD控制器。该控制器自动从传来的首地址处开始读取数据,并按照TFT的格式输出。图中各模块由Avalon Bus连接在一起。AvalonBus是一种简单的总线结构,Nios II处理器和各种外设都是通过Avalon Bus连接在一起。由图1可以看出,作为Slaver的SDRAM Controller分别要受到Processor和LCD Controller的控制,为了解决总线冲突,Avalon Bus自动在有冲突的接口上加入了Arbitrator这样一个仲裁模块,用于合理分配总线时间,用户通过改变每个模块的权值来改变对其分配总线时间的多少。在这个系统中,SDRAM Controller是影响整个系统性能的关键。以SDRAM时钟频率为100MHz计算,16bit的SDRAM其数据总带宽为200MByte/s,640×480×2Bytes×60Hz的TFT LCD要占用36MByte/s左右的带宽,这对于还要处理其他任务的处理器来说是很大的影响。
  
  LCD控制器的FPGA实现
  
  Avalon Bus Slaver从总线接口模块实现
  Avalon从总线接口负责处理器与LCD控制器的接口控制,LCD控制器在整个系统中作为从设备,NIOS II通过该接口对控制寄存器进行设置,控制LCD。
  LCD从模块有四个32bit的可读写寄存器,用于控制LCD控制器的工作和指示其工作状态。
  Avalon Bus DMA Master主设备接口模块
  
  实现
  
  Avalon Bus DMA Master负责按照控制模块的指令,读取SDRAM中的数据,并写入到FIFO中,其核心部分是DMA地址累加器。当条件满足时,地址累加器开始在100MHz的时钟下以4为单位开始累加用于生成读取SDRAM的地址。读完一帧的数据后,自动复位到首地址,继续累加。
  主设备接口采用带延迟的主设备读传输模式,在这种传输模式下,即使没有接收到上一次的有效数据,主设备也可以发起下一次读命令。当waitrequest信号无效(低电平)时,主设备可以连续的发起读命令,当waitrequest信号有效(高电平)时,主设备开始等待,直到其变为低电平。当readdatavalid信号有效(高电平)时,表示读数据有效,此时主设备可以锁存数据口上的有效数据。这里没有使用flush信号,flush信号会清除前面一切未完成的读命令。Avalon总线保证数据的输出顺序与主设备要求的顺序一致(即与主设备地址输出顺序一致)。readdatavalid信号可以作为FIFO的wrreq信号,这样可以直接将读出来的数据写入到FIFO中。当前地址等于尾地址时,则复位累加器,使之重新开始从首地址累加。地址累加器代码模块如图3。
  


  
  FIFO模块实现
  
  FIFO的作用是对DMA输出的图像数据进行缓存,以匹配时序控制模块的输出速度。FIFO大小暂定为4096×16bit,在实际设计时,再根据系统需要以及资源状况做出适当调整。原则是,在系统资源允许的情况下,将FIFO大小尽量设置大点。
  FIFO由DMA控制器写入数据,写入时钟为100MHz;由LCD控制器的时序发生模块读出数据,读出时钟为PCLK,即LCD的像素点扫描频率,通常取25MHz。在独立的写时钟和读时钟作用下,FIFO可以提供rdusedw[11:0]信号,用于指示FIFO中已经使用掉的容量。系统可以设置一个上限和一个下限,当FIFO中的数据量高于上限或低于下限时,控制器暂停DMA传输或启动DMA传输,用以保证系统性能。
  在本例应用中,将wrclk接系统时钟(100MHz),wrreq接master_readdatavalid,data接writedata,即可完成DMA的数据写入操作;将rdclk接12.5MHz(因为TFF的时钟为25MHz,数据宽度为16bit,而FIFO的宽度为32bit,所以用一半的时钟12.5MHz去读取FIFO,然后依次输出32bit的高16bit和低16bit),rdreq由时序发生模块控制,即可在每个rdclk的上升沿读出一个数据到qoaclr接入reset_n,可以完成复位操作。当然,所有信号都受controller_GoBit的控制。
  FIFO设计采用了QuartusII自带的fifo宏模块,自动生成所需要的模块,供调用。
  
  LCD时序发生器设计模块实现
  时序发生器用于产生TFT所需的时序,将图像数据按特定的时序输出。每种控制器的设计关键就是时序设计,本文专门针对三菱公司的AA084VC05液晶屏,图4,图5是其时序图。
  


  LCD时序发生器以DCLK为时钟基准,该DCLK即上面所说的PCLK,也就是像点时钟,每个像素点的数据以该时钟驱动进入LCD。图4为AA084VC05的水平扫描时序,其中,DATA为18位数据信号(本设计中只用其中的16位),DENA为数据有效信号,高电平使能,其有效宽度THA为640个DCLK;HD为水平同步信号,低电平有效,其有效宽度TWHL为96个DCLK。一行640个象素扫描完毕之后,控制器将驱动HD有效,在HD有效之前插入THFP(HorizontalFront Porch)为16个DCLK,有效之后插入THBP(HorizontalBack Porch)为144个DCLK,然后再开始下一行的扫描。如此一来,行扫描信号的频率FH典型值为31.5KHz。而读FIFO信号要提前DENA信号一个时钟节拍到来,提前一个时钟节拍结束,因为该FIFO有一个时钟节拍的延迟。
  AA084VC05的垂直扫描时序与水平扫描时序类似,该时序以HD为时钟基准,其中,VD为垂直同步信号(帧同步)。每扫描完一帧(480行),控制器将驱动VD有效(低电平),有效宽度TWVL为2个HD。同样,在VD有效之前插入TVFP(VerticalFront Porch)为10个HD,有效之后插入TVBP(Vertical Back Porch)为35个HD,如此一来,垂直扫描信号频率FV的典型值为60Hz。
  时序发生器采用状态机实现。由于该控制器的参数比较大,为了便于观察仿真结果,本文对这些参数做了一些处理(成倍减少)。
  
  结语
  
  本文设计实现了一个简单的基于Avalon总线的TFTLCD控制器,能实现640×480,颜色深度为16bit的彩色图形显示,可应用于各种TFT LCD,亦可改写为VGA控制器,有较大的灵活性。根据设计好的控制器编写了相应的Linux下的Framebuffer驱动程序。很好的实现了界面环境的开发,可以用于很多手持设备的电子产品。该设计最大的特点是有很强的可移植性,不论是控制器的设计还是Frame buffer驱动程序的设计都很灵活。
其他文献
ARM公司从籍籍无名到现在的风生水起,不过十余年时间。一方面是手机32位处理器的繁荣造就了ARM的成功,另一方面也是IP(知识产权)的大行其道在推波助澜。IP带来的是SoC设计方式的变革,全新的SoC设计方式将软/硬IP以模块的方式放置在设计中,工程师只需要做细微的调整。SoC的设计方式一方面加速了设计速度,缩短产品开发时间和上市时间,另一方面也赋予产品设计更多灵活性,工程师可以根据实际应用添加或
期刊
嵌入式应用包括信号处理算法与控制算法,在多种实时嵌入式系统中,这两种算法共同执行必需的功能,因此我们应了解控制算法与数字信号处理器(DSP)算法是如何实现互操作性的。在手机和MP3播放器等应用中,要解决上述互操作性问题,传统做法是分别用RISC处理器和DSP来处理控制算法与信号处理算法。例如,在手机中,信号处理功能负责处理音视频应用中的回声消除与编解码工作。由于DSP架构是专门设计用于执行信号处理
期刊
SID2007概况    每年5月,由显示协会(SID)组织的世界规模的显示技术讨论会与展览会在美国西海岸的一个城市举行,今年的第45届SID年会在美国加州长滩(Long Beach)会议中心举行。会议共收到论文摘要702篇,其中有489篇入选本届讨论会。489篇论文中有279篇在67场专题报告会中口述,其余210篇于5月23号下午集中在一个大厅中,以张贴形式发表,作者与读者进行面对面讨论。令人鼓
期刊
摘要:结合CAN总线和LIN总线各自的优缺点,设计实现了基于AN/LIN总线的分层式车门控制系统,首先讲述了集中式控制系统结构和分布式控制系统结构的实现及相应的特点,论述了选定分布式结构的原因,然后详述了车门分布式系统的实现及相关技术。  关键词: 总线;CAN;LIN;车门控制    引言    随着各种传感器的出现和芯片技术的飞速发展,汽车的安全性和智能化程度日益提高,汽车电子控制单元(EC
期刊
过去几年里,中国已经成为最大的蜂窝手机终端市场,拥有超过3亿GSM、CDMA和PAS网络用户。这个数字预期还会继续增长,因为还没有为半数以上的人群提供服务。此外,还有两个因素会进一步加速市场的增长。第一,一部分人口,特别是农村人口将受益于业界最初推出的低成本手机。这些入门手机将以基本语音通信功能为主,功能有限,但能够使更多人受益于移动电话。第二,当3G牌照发放给电信运营商后,新的业务将出现在高速数
期刊
前言    数字内容的增长大大推动了数字家庭对于以磁盘为基础的存储需求。个人录像机(PVR)或者个人计算机(PC)随机内置的单个驱动器已经不能满足消费者的要求。因此,这就刺激了附加存储器市场的巨大增长:外部驱动器市场从2004年到2005年增长超过149%,而且预计在2005年到2010年之间增长超过263%。  本文介绍的数字家庭的存储容量扩展解决方案。实用便捷,用户可随时增添硬盘驱动器,而无需
期刊
首届中国“ST-EMBEST杯”嵌入式电子设计大赛成功落幕    7月27日,首届“ST-EMBEST杯”嵌入式电子设计大赛在北京举行了颁奖仪式。本次大赛的参赛作品基于意法半导体公司的STR7和STR9的32位产品系列进行应用设计开发,英蓓特公司为所有参赛小组免费提供开发工具,有将近600个小组报名参加了入门组和专业组的比赛。参赛作品涉及领域广泛,有工业用控制平台,游戏动作控制器,停车场管理系统,
期刊
当ASIC越来越不能适应灵活应用的需求以及通用产品对低成本的要求逐渐提升,FPGA大量蚕食曾经ASIC的市场,越来越多的设计者将重心转向FPGA,这其中包括很多ASIC设计工程师。FPGA对于初创型的公司是一个非常理想的选择,从新产品研制的原型到样机的设计,采用FPGA可以大大加速新产品设计和创新的进程。此外,最重要的原因是每一年FPGA的价格会明显下降,包括它的设计软件和它的应用性都是比传统的A
期刊
挺过了艰难的2007,半导体厂商在满怀期望中迎来了2008,希望煦暖的春风可以驱散产业弥漫的寒意。特别是在中国市场,在2007年风景独好之后,北京奥运会的契机无疑加重了中国市场在全球的位置。近日,众多半导体厂商开始针对中国市场的宣传展示攻势,请跟随记者的笔端,从多个侧面去了解半导体市场的新动向。    模拟厂商的盛宴    若说2007年半导体市场的亮点,非模拟莫属,在众多半导体公司集体低迷之际,
期刊
在“2007英特尔中国多核技术学术论坛”上,本刊采访了Intel副总裁兼中国产品开发总经理王文汉博士和中国教育事务部经理朱文利女士。  问:多核面,临着编程的挑战,如何让中国的产业界了解多核?  答:Intel在多核方面有全球大学计划,去年全球40多所高校开设多核课程,中国就有5所高校;07年有400所高校开设多核课程,我们中国有37所高校。  问:贵公司选择学校的时候是否有专门的选择标准?  答
期刊