你好!欢迎来到深圳市品慧电子有限公司!
语言
当前位置:首页 >> 技术中心 >> 电路保护 >> 京微雅格:基于SoC FPGA的异步全彩LED显示设计

京微雅格:基于SoC FPGA的异步全彩LED显示设计


品慧电子讯本文分析了市场上常见的异步全彩LED显示控制方案,提出了基于京微雅格SoC FPGA的针对门楣广告应用的优化解决方案。在单主控的情况下实现了高灰度,高刷新的异步全彩LED。
LED显示屏市场概况

全彩LED显示被普遍应用于户外及室内的大型广告、舞台背景等场合(大多是同步显示),随着价格的下降,全彩LED显示已经开始被使用于门楣广告(异步显示)。当前门楣广告一般采用单双色LED显示,市场需求大。与单双L E D相比,全彩LED能够展现更丰富的内容,如真彩图片、动画、视频等,全彩LED显示将是门楣广告屏的发展趋势。

市场流行方案的介绍

目前市场上比较流行的方案有以下几种:

①ARM-Cortex-A8+FPGA解决方案

该方案的特点:功能齐全,其中ARM Cortex-A8可以实现对主流视频格式的解码,但是方案成本偏高,对于门楣广告这种小屏显示的使用场景来说有些浪费。方案框图如图1所示。
图1 ARM-Cortex-A8+FPGA方案框图
图1:ARM-Cortex-A8+FPGA方案框图
②ARM Cortex-M4解决方案

该方案的特点: 结构简单,但是由于没有使用FPGA ,ARMCortex-M4的实时性及速度无法满足全彩LED显示的控制要求,所以只能实现“七彩”显示,而不能实现真正意义上的全彩显示。方案框图如图2所示。
图2 ARM Cortex-M4方案框图
图2:ARM Cortex-M4方案框图
③FPGA解决方案

该方案是同步全彩控制系统的一个衍生产品,可以实现简单的录制,功能相对单一。方案框图如图3所示。

图3 单FPGA方案框图
图3:单FPGA方案框图
京微雅格SoC FPGA方案

京微雅格CME-M5系列FPGA集成了增强型8051MCU,兼容标准8051指令集,12倍于标准8051的MIPS,频率最高可达200MHz,支持高达8MB数据及代码空间扩展,支持硬件32/16-bit MDU(Multiplication Division Unit),128KB SPRAM,可作为8051的代码或数据存储器,集成片上调试系统OCDS,支持JTAG在线调试;外设有3个16bit定时器,1个16bit看门狗,1个I2C接口,1个SPI接口,2个USART接口,1个RTC实时时钟,8通道DMA;支持STOP,IDLE电源管理模式。支持基于MSS(Microcontroller Subsystem)的系统编程、系统多配置、系统在线更新、动态频率切换等特性。CME-M5内部结构框图见图4。

图4 :京微雅格CME-M5器件结构框图
图4 :京微雅格CME-M5器件结构框图123下一页>
  • 第一页:京微雅格SoC FPGA方案
  • 第二页:CME-M5 FPGA功能描述
  • 第三页:CME-M5 8051功能描述

在本设计中, 增强型8051 实现以太网TCP/IP协议栈,实现对NandFlash/SD卡的访问,显示特效处理,并调度FPGA功能模块实现LED显示。FPGA则负责LED刷新控制,其功能包含:灰度控制、刷新率控制、亮度控制、伽马校正等。PC提供人机交互,让用户通过上位机软件编辑“节目”,即需要最终在LED屏上显示的内容,包含文本、图片、视频以及显示特效,例如百叶窗、流水等;最后上位机软件把“节目”转换成特定的数据文件通过以太网传送给CME-M5,由CME-M5把接收到的数据文件写入NandFlash/SD卡。系统框图如图5所示。

图5 基于CME-M5解决方案框图
图5:基于CME-M5解决方案框图
CME-M5 FPGA功能描述

伽马校正

根据LED的响应特性,需要对输入的8位灰度值进行伽马校正,使之映射到14~16位灰度值,这部分功能是FPGA通过查表方式的实现的。伽马校正的参数可以通过PC上位机进行修改。

灰度控制

下面以8位/256 级灰度作为例子,阐述LED灰度控制原理。对于RGB三基色LED显示,256级灰度意味着R、G、B各使用8位来表示灰度值(2^8=256,即256级灰度)。每颗LED有独立的R、G、B三个信号供FPGA分别控制。全彩LED驱动芯片通常分为自带PWM的恒流源以及不带PWM的恒流源。接下来以不带PWM的驱动芯片MBI5024为例介绍灰度控制原理。MBI5024的内部结构框图见图6。

图6 MBI5024器件原理框图
图6:MBI5024器件原理框图
FPGA向SDI送入每个像素点R/G/B灰度值,OUT0~OUT15连接LED的R/G/B,OEn控制对应每位灰度值点亮LED时间的长短。8位/256级灰度控制,通常使用19场方式,假设子场的周期为T,那么一个刷新周期的总时间为19T。19场被分为8份,时间分别为8T,4T,2T,1T,1T,1T,1T,1T;OEn有效时间分别为8T,4T,2T,1T,1/2T,1/4T,1/8T,1/16T。

以下介绍如何对R 进行灰度控制,G,B的灰度控制原理是类似的。8T对应8位灰度值的最高位R[7],其刷新的时间长度为8T;4T对应8位灰度值的次高位R[6],刷新的时间长度为4T…1/16T对应最低位R[0],刷新的时间长度为1/16T。如图7所示,R[7]在T0周期送出,R[6]在T1周期送出,R[5]在T2周期送出…R[0]在T7周期送出。

OUT0~OUT15分别连接第0颗至第15颗LED的R。使用Ri[j]表示第i颗LED的R灰度值的第j位,以下是操作流程:

1 . SDI 移入{R0[7],R1[7],R2[7],R3[7],R4[7],R5[7],R6[7],R7[7], R8[7] ,R9[7] ,R10[7],R11[7],R12[7],R13[7],R14[7],R15[7]};R15[7]先移入,R0[7]最后移入;
2. 使能LE信号对R0[7]~R15[7]锁存,使能OEn信号,保持时间为8T(即时序图中的T0周期);在此过程中,SDI移入R0[6]~R15[6]灰度数据;
3. 使能LE信号对R0[6]~R15[6]锁存,使能OEn信号,保持时间为4T(即时序图中的T1周期);在此过程中,SDI移入并锁存R0[5]~R15[5]灰度数据;
4. ……
5. 使能LE信号对R0[3]~R15[3]锁存,使能OEn信号,保持时间为1/2T ( 即时序图中的T4 周期) ,1/2T后把OE_n信号置为无效;在此过程中,SDI移入并锁存R0[2]~R15[2]灰度数据;
6. ……
7. 使能LE信号对R0[0]~R15[0]锁存,使能OEn信号,保持时间为1/16T(即时序图中的T7周期),之后把OEn信号置为无效;至此,完成一个灰度值显示的刷新周期。
<上一页123下一页>
  • 第一页:京微雅格SoC FPGA方案
  • 第二页:CME-M5 FPGA功能描述
  • 第三页:CME-M5 8051功能描述

需要说明的是,以上仅以16颗LED作为例子,实际应用中会级联多个MBI5024芯片,即上一级MBI5024芯片的SDO连接至下一级MBI5024的SDI,当有N个MBI5024级联的,相当于一个N*16位的移位寄存器,最多可以连接N*16颗LED的R/G/B。操作流程与上面介绍的7个步骤类似。

在一个灰度刷新周期内(19T),OE总有效时间为:8T+4T+2T+1T+1/2T+1/4T+1/8T+1/16T=15.9375T,亮度的利用率为:15.9375T/(19T)*100%=83.88%,也就是亮度损失为1-83.88%=16.12%。

图7 8位/256级灰度控制时序图
图7:8位/256级灰度控制时序图
对于16位/65536级灰度,常用27 子场方式:8T,4T,2T,T,T,T,T,T,T,T,T,T,T,T,T,T;OE_n 有效时间为8T,4T,2T,1T,1/2T,1/4T,1/8T,1/1 6T,1/32T,1/6 4T,1/128T,1/256T,1/512T,1/1024T,1/2048T,1/4096T;亮度利用率为:15.999755859375T/(27T)*100%=59.26%,亮度损失为1- 59.26%=40.74%。

使用不同数量的子场,亮度的利用率是不同的,例如:16位/65536级灰度也可以采用42子场方式,即:16T,8T,4T,2T,T,T,T,T,T,T,T,T,T,T,T,T;OEn有效时间为16T,8T,4T,2T,T,1/2T,1/4T,1/8T,1/16T,1/32T,1/64T,1/128T,1/256T,1/512T,1/1024T,1/2048T,亮度利用率为:31.99951171875T/(42T)*100%=59.26%=76.19%,亮度损失为1-76.19%= 23.81%。

刷新率驱动芯片的数据时钟频率、LED屏的扫描方式(静态~16扫)以及寻址数固定以后,子场的时间T也就随之定下来,以16位/65536级灰度为例,如果采用27子场的方式,刷新率约为:F=1/(27*T),最小OE_n脉宽为T/4096;如果采用42子场的方式,刷新率约为:F=1/(42*T),最小OE_n脉宽为T/2048。考虑到其他时间开销,实际的刷新率F会比以上估算值略低。

可以看出在子场时间T一定的情况下,后者(42T)的刷新率比前者低(27T),但是亮度的利用率比前者高,OE_n最小脉宽比前者长(对于驱动芯片来说,OE_n的脉宽最小值是有限制的,当脉宽太窄时,驱动芯片将无法识别),所以,具体设计需根据实际情况做权衡。为了提高视觉刷新率(Visual Refresh Rate),可以把灰度值的高位打散成多段分布在刷新周期内;对动态扫描屏,还可以把实现灰度值的所有子场分割成多份,在刷新每一行时,只刷新一部分灰度,加快一行到下一行的切换速度,等所有行都刷新完一部分灰度之后,再接着刷新其他部分灰度,直到灰度值被完整刷新,从而提高视觉刷新率。通过优化的PWM编码,不仅可以提高视觉刷新率,也能够提高LED亮度利用率。

CME-M5 8051功能描述

200MHz主频8051MCU是整个系统的主控,负责与PC的通信,实现TCP/IP协议栈,通过以太网接收来自于PC端的节目内容,并以文件方式写入SD卡进行节目更新,同时,8051也负责节目特效处理。

另外,8051采集温度传感器、湿度传感器信息,显示在LED屏幕上;采集环境光传感器,实现亮度自动调节;通过红外遥控实现节目切换。CME-M5已集成了RTC实时时钟,无须外扩芯片就能够方便地在全彩LED屏上显示年,月,日,时,分,秒,星期等信息;支持数字时钟及模拟时钟显示。

用户评论

发评论送积分,参与就有奖励!

发表评论

评论内容:发表评论不能请不要超过250字;发表评论请自觉遵守互联网相关政策法规。

深圳市品慧电子有限公司