当前位置:首页 > 工业控制 > 电子设计自动化

  SoPC Builder是Altera公司实现SoPC概念的一款工具软件,使得用户可以通过自定义逻辑的方法方便地开发基于NiosⅡ的SoPC系统。SoPC Builder集成在EDA工具QuartusⅡ中,提供NiosⅡ处理器及一些常用外设接口,用于组建一个在模块级和组件级定义的系统,能够自动生成片上总线和总线仲裁器等所需的逻辑。基于SoPC的设计在很大程度上依赖于利用集成电路IP(intellectual property)。集成电路IP是指经过预先设计、预先验证、符合产业界普遍认同的设计规范和设计标准,具有相对独立,并可以重复利用的电路模块或子系统。

本文中提出一种基于SoPC的参数化TFT-LCD控制器IP核设计,用硬件描述语言实现控制器的逻辑功能,这种参数化的组件设计具有很强的通用性和兼容性。

  1 通用册LCD控制器总体设计

  在嵌入式系统中,LCD控制器是非常重要的片上外围设备,处理器通过LCD控制器来完成对显示驱动器的控制,最终实现LCD屏的点亮操作。由于LCD显示驱动器只是一个被动系统,还需要有控制电路提供驱动系统所必须的扫描时序信号和显示数据。处理器通过对LCD控制器的操作,实现对LCD显示扫描时序的设置和显示数据的写入,从而完成对LCD的显示操作,其原理图如图1所示。

  在SoPC Builder中以自定义组件的形式对LCD控制器进行设计,该控制器组件具有Avalon总线接口,可以很容易地将其与其他标准IP核一起构建以。NiosⅡCPU为核心的片上系统。NiosⅡ处理器通过Avalon从端口对LCD控制器的寄存器组进行配置,针对设计中帧缓存读操作的特点,选择以Avalon主端口接口的形式对帧缓存中的显示数据进行主动读取,并实现IP核参数化设计,提高控制器对于其他不同规格TFT液晶屏的复用性。该控制器还包含硬件光标功能,为添加外部鼠标设备接口提供了方便。LCD控制器的具体设计思路是在SDRAM中开辟一段存储空间,用来存放屏幕图像数据,称之为帧缓存。通过设计适当的硬件逻辑来建立帧缓存与屏幕图像像素之间一一对应的关系,并配合LCD显示所需的行、场时序信号,将帧缓存中的数据不断地输给LCD,用以完成最终的显示刷新。LCD控制器总体结构如图2所示。

  LCD控制器的具体工作流程为刷新周期开始时,主端口模块根据帧缓存地址生成逻辑所产生的地址完成主端口的读操作,实现帧缓存中数据的读取,并将该数据输送给输出缓冲模块。同时,时序信号生成模块依据LCD屏的时序规范生成行、场同步信号,以及与像素数据同步的相关显示点的横、纵坐标。

  设计的LCD控制器包含硬件光标显示模块,所以在进行最后屏幕显示时,像素输出控制逻辑有两部分的数据来源,一部分为从帧缓存中读取的屏幕数据;另一部分为硬件光标的显示数据。最后,像素输出控制逻辑根据从端口模块中各个系统寄存器内的信息向LCD屏幕发送将要显示的图像数据。

  2 硬件光标模块设计

  硬件光标模块为LCD控制器设计带鼠标光标的显示功能,为系统开发中添加鼠标接口提供了方便。光标显示的实现方式有硬件方式和软件方式,软件方式比较复杂,且占用大量的CPU处理时间;硬件方式用硬件逻辑资源来实现,处理速度快,不占用CPU时间。硬件方式的设计思路是为光标的图像数据设置单独的存储空间(RAM)用以保存,当LCD屏幕需要对光标进行显示时,由硬件逻辑负责在输出光标和背景图像之间做出选择。而软件部分只需简单地修改光标坐标寄存器的值,就可以完成光标在屏幕上的显示操作。采用这种方法,大大提高了系统性能。硬件光标RAM模块是通过MegWizard Plug-In Manager编辑器生成的,最终生成的存储光标图像数据的双口RAM如图3所示。

  3 LCD控制器组件设计

  将LCD控制器按总体设计要求编写相应的硬件描述语言代码,其端口定义的程序主要有系统时钟、LCD时钟、Avalon从端口、Avalon主端口和LCD输出的定义。程序的主要内容有各种寄存器和连线的定义,行场参数的设定,行扫描状态机、场扫描状态机、Avalon主端口读控制逻辑状态机、帧缓存地址生成逻辑、LCD有效显示数据信号生成逻辑、硬件光标模块和两个例化模块的调用等。最终生成的元件符号如图4所示。

  

  

  组件编辑器是SoPC Builder的一个重要组成部分,可以使用该工具将用户定制逻辑封装成组件,并在SoPC Builder环境中像其他标准组件一样使用。在SoPC Builder环境下,启动组件编辑器,按照组件编辑图形用户界面的提示,做相应的操作。主要有导入硬件HDL代码LCD-INTERFACE,为硬件逻辑代码中的信号指定Avalon信号类型、Avalon接口设计和设置添加组件的界面向导等,最后就生成了用户自定义的组件

  LCD_INTERFACE。它以IP核的形式存放在SoPCBuilder的组件库中供设计使用,把液晶显示控制器设计成Avalon总线的slave设备。由于该控制器是参数化的,可以很容易地修改TFT_LCD液晶的时序参数,具有很强的通用性。通过Terasic公司的TRDB_LTM彩色液晶显示开发板进行设计验证。TRDB_LTM采用Toppoly公司的TFT_LCD模块TD043MTEAl,4.3英寸屏。时序参数中,横向时序参数为:时钟频率(NCLK)33.2 MHz;横向有效数据为800点;H_LINE=1 056;Hsync_Blank=216;Hsync_Front_Porch=40。纵向时序参数为:纵向有效数据为480点;V_LINE=525;Vsync_Blank=35;Vsync_Front_Porch=10。

  按上面的时序参数在SoPC系统中配置TFT_LCD液晶IP核后,设置屏幕背景为白屏,并在上面用黑线画一个矩形,显示结果如图5所示。如果将时序参数中的数据做如下调整,将横向有效显示数据设置为480点,纵向有效显示数据设置为360点,做同上的验证,显示结果如图6所示。由这两个图可见,该控制器具有很好的通用性。

  4 结语

  介绍一种通用TFT-LCD控制器的设计,用HDL语言对各模块进行描述,包括内部控制器、Avalon总线主从接口、液晶时序数据输出接口等的逻辑描述。最后在SoPC Builder工具里以自定义组件的形式添加到SoPC系统中,以IP核的形式存放在SoPC的组件库中,供以后的系统开发使用。由于采用了参数化的组件设计思想,使得该IP核具有很强的通用性,大大简化了底层编程的复杂度。经实验证明,该设计方法具有较强的实用性和通用性。同时,该设计也为开发其他基于SoPC的Controller IP Core提供了一个范例。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

【2024年4月10日,德国慕尼黑讯】英飞凌科技股份公司(FSE代码:IFX / OTCQX代码:IFNNY)推出了业界首款-48 V宽输入电压数字热插拔控制器XDP700-002,扩展了其XDP™数字功率保护控制器系列...

关键字: 控制器 晶体管 5G

【2024年4月10日,德国慕尼黑和美国加利福尼亚州旧金山讯】全球功率系统和物联网领域的半导体领导者英飞凌科技股份公司(FSE代码:IFX / OTCQX代码:IFNNY)宣布其OPTIGA™ Trust M安全控制器现...

关键字: 物联网 控制器 供应链

作为全球最大数据产生国之一,随着数据规模的成倍增长,中国对更高性能数据中心的需求日益迫切。根据IDC Global DataSphere对每年数据产生量的预测,全球数据量的复合年增长率(CAGR)将达到 21.2%,并在...

关键字: 数据中心 CXL技术 控制器

北京,2024年4月8日,运动与控制领域的先行者——派克汉尼汾携APK系列控制器、CRV系列工业电磁阀、RRV系列快开电磁阀和SEHI系列电子膨胀阀组等新品亮相2024中国制冷展,并展示公司在商超冷库、冷水机组、环测设备...

关键字: 控制器 工业电磁阀 数据中心

为增进大家对视频控制器的认识,本文将对视频控制器模块设计、视频控制器的特殊技术予以介绍。

关键字: 控制器 指数 视频控制器

PLC(可编程逻辑控制器)和单片机是两种不同的控制设备,它们之间存在明显的区别:

关键字: 单片机 plc 控制器

TrustFLEX 器件搭配可信平台设计套件,将简化从概念到生产的信任根启用过程,适用于广泛的应用领域

关键字: 控制器 闪存器件 SoC

为增进大家对压差控制器的认识,本文将对压差控制器、压差控制器原理、压差控制器的调试予以介绍。

关键字: 控制器 指数 压差控制器

无线双位充电设计通过单个控制器同时支持扩展功率协议(EPP)和磁功率协议(MPP)

关键字: 控制器 充电器 发射器

一直以来,单片机都是大家的关注焦点之一。因此针对大家的兴趣点所在,小编将为大家带来单片机的相关介绍,详细内容请看下文。

关键字: 单片机 控制器
关闭
关闭