XX财富金融集团

新闻中心

快速通道FAST TRACK

am8.com官方备用网址/NEWS

AM335x 平台在全彩LED 显示墙异步控制卡的应用

2019-05-04 06:17

  全彩LED 显示墙异步控制卡以成本低,集中管理等特点,逐渐成为全彩LED 显示墙控制卡的主流。AM335x 具有丰富的硬件外设,基于ComposiTIon模块能提供完整的多图层叠加缩放等功能,十分适合全彩 LED 显示墙的异步控制卡应用。本文将从硬件和软件两个方面介绍基于AM335x 提供的相应解决方案。

  全彩 LE D显示显控制卡根据控制方式,可以分显两大显:同步控制卡和异步控制卡。

  全彩LED 同步显示墙主要由PC,同步控制卡和LED 显示模块组三部分组成,其连接方式如下:

  同步控制卡将DVI信号转成LED 显示模组所需要的信号格式,而且用以太网的方式传输给LED 显示模组。同步控制卡本身不做解码等处理,仅做格式转换。因此,一般采用FPGA实现该功能。

  全彩LED 异步显示墙由异步控制卡和LED 显示模组组成,其连接方式如下:

  在此模块中,SOC 从网口得到流以及UI 的素材,进行解码和UI 绘制,最后通过LCD 接口传送给FPGA。

  在此模块中,FPGA 将信号转换成LED 显示模组所需的信号,并通过网口输出,该功能和同步控制卡的功能一样。

  不同级别的全彩屏对SOC 的处理能力有不同要求,具体的要求在软件部分有说明。

  此外,异步卡一般和LED 显示墙一起放置于室外,所以需要可工作在宽温度范围的工业级芯片。

  由于LED 墙一般显示物理面积大,而且亮度高,所以对流的帧率要求较高,要求在每秒25 帧以上。因此,对于高端产品,一般需带有硬解码模块的主芯片,其价格一般较高;对于低端产品,使用软解码可实现,所以需要运算能较强的主芯片,成本优势较好。

  用于显示字幕,图片等,并处理UI 元素和层的叠加。叠加部分。由于涉及到透明度,尺寸变换等,运算需求也很大,所以需要主芯片具有相关的硬件加速模块。

  该部分主要实现上位机对各控制卡的远程控制,内容更新等功能。该部分一般通过网络应用层实现,各控制厂家有自己的协议。

  AM335x 是TI新近推出的基于ARMCortex-A8 的SOC,外设丰富,主要针对工业应用领域。针对异步控制卡应用,TI也提供了基于Linux 的解决方案。下面将从硬件和软件两方面分别介绍该方案。

  此外,AM335x 还有一个3D图形加速核,SGX530,可支持OpenGL ES2.0。TI在OpenGL ES2.0 之上提供了相应的软件方案,将SGX530 用于帧的尺寸缩放以及实现对UI 层和层的透明叠加的加速,后面软件部分会详细介绍该方案。

  由上图可见AM335x 可完全涵盖所有异步控制卡的外设需求,不需要其他扩展。因此,总体成本具有很强竞争力。

  TI 的开发板GP EVM(可查阅参考文档 [1] )都可以很便利的进行LED 应用的评估和开发,下文中的软件方案是以GP EVM 为平台进行开发的。

  如前所述,Linux 是异步控制卡的主流作系统,因此,本方案也选择了Linux 作为平台。AM335x EZSDK 提供了Linux 的完整开发包,包括板级支持包,交叉编译器,文件系统等,可查阅参考文档 [2] 。

  在基于Linux 的异步控制卡平台上,QT 以免费,开源,开发资料全以及在嵌入式系统上运行效率高等特点,已经成为异步控制卡厂商开发UI 主要的平台。在EZSDK 中已包含对QT4 的移植,可查阅参考文档[3]。QT 在开源网站上也有很丰富的资源,可查阅参考文档 [4] 。

  在EZSDK 中提供Gstreamer+ffmpeg的多媒体解决方案,可查阅参考文档[5] 和参考Gstreamer文档(参考文档[6])。在多媒体中,由于格式比较多,各种编码的复杂度以及编码质量差异较大是一个难点。而在LED 显示墙的应用场景中,多媒体码流可接受转码方式,所以可指定码流的格式。这里,推荐的多媒体格式MP4(MPEG4+AAC),其中MPEG4 选择simple profile,对此种码流,若分辨率为640x480,AM335x 可流畅解码每秒25 帧以上。

  AM335x 只有一个功能简单的LCD 控制器,该控制器只支持RGB 格式,其在Linux 中的驱动为framebuffer,可查阅参考文档 [7] 。相应的上述两个模块的显示后端也以framebuffer 为基础:

  Framebuffer 会接收来自QT 和Gstreamer的图像帧数据,然后进行OSD 的叠加和缩放等作,数据流如下图所示:

  ARM 虽然有较强的运算能力,但对于较大分辨率的解码,解码的宏块运算等需较大运算量。另外,度空间涉及浮点运算,而且为逐点运算,所以运算量需求也不小。

  在该模块中的 OSD 叠加指的是 UI 图层和图层之间的叠加,而且是包含带透明度的叠加,而图层的缩放是指对原图等比例的缩放,因而需对每一帧数据的每个像素点进行浮点乘加运算,参考ffmpegcolourspace的运算量,该部分运算量也应较大。

  GPU Composition 软件模块,调用 SGX530 模块进行彩空间转换,OSD 叠加,图层缩放功能,分担A8 的运算负载使其专注于QT,解码等应用,下面将具体介绍。

  a. gpuvsink该模块设计为Gstreamer显示后端插件,将解码器解出的YUV 数据帧,传送给SGX530 模块。按照标准的Gstreamer显示后端插件设计,可采用标准的显示后端接口编程。对于输入的尺寸,要求其宽(width)为4 个像素点的倍数。其输出帧数据这里可称为Video Plane。

  该模块设计为QT 架构中的显示后端,将QT 的帧数据发送到SGX530 模块中处理。linuxfbofs和framebuffer 有同样的接口,对于QT 应用开发是透明的。其输出界面帧数据为Graphics Plane。

  GPU Composition 接收这些格式的帧数据,并将其转换为RGB 格式,进行图层缩放,OSD 叠加等作。

  SGX530 输入内存(Buffer),只支持物理地址连续的Buffer。因此,在gpuvsink和linuxfbofs中,使用cmem(具体可查阅参考文档[9])据此要求分配内存Pool 来存储帧数据,需在Linux 启动时通过命令行参数”mem=”配置预留给Kernel 的内存,而剩下的内存即是给cmem所准备,用于分配物理连续的内存。

  对于一个Video Plane 可能需要多个Buffer,其具体个数定义在

  对于 QT 而言,对入的对对参数来自 Linux 的 FB 对对,即对 LCD 屏的对示分辨率。

  此配置结构体中的输入信息,会通过Gstreamer的标准接口,通过前级的Gstreamer Plugin 进行配置。如前所述,输入帧的宽(width)的像素点数,需为4 的倍数;对于输出信息,和Graphics Plane 一样,可以通过配置输出数据结构out,实现缩放功能。

  上述配置信息,通过存放于文件系统中的命名管道,传递到GPU Composition 模块。

  Gstreamer部分,可在参考文档[10]下载,为一个播放器,可循环播放MP4

  关于GPU Composition 方案的能提高,可以参考下面两个截图。

  图7 中,没有使用GPU Composition 方案,CPU除了要做解码,也需要做彩空间转换,其CPU 占用率达到91%。

  图8 中,使用了GPU 分担了叠加,彩空间转换等运算,在整个系统的总运算量明显大于仅仅Gstreamer播放的情况下,ARM 核的CPU 占用率仅仅只有58%,仍给应用程序留下运行的空间。

  本文主要介绍了基于AM335x 的全彩LED 显示墙异步控制卡方案,重点介绍了基于GPU 的软件解决方案,在实现LED 显示墙所需的层和OSD 层叠加,缩放等功能的基础上,仍给客户定制的应用程序提供了足够的开发空间。希望该方案能加速客户进行异步控制卡的开发。

  AM335x微处理器基于ARM Cortex-A8处理器,在图像,图形处理,外设以及EtherCAT和PROFIBUS等工业接口选项方面得到了增强。该器件支持高级作系统(HLOS).Linux ®和Android可从仪器(TI)免费获取。 AM335x微处理器包含功能框图中显示的子系统和以下简要说明: 微处理器单元(MPU)子系统基于ARM Cortex-A8处理器,PowerVR SGX图形加速器子系统提供3D图形加速功能以支持显示和特效。 可编程实时单元子系统和工业通信子系统(PRU-ICSS)与ARM内核彼此独立,允许单独作和计时,以实现更高的效率和灵活.PRU-ICSS支持更多外设接口和EtherCAT,PROFINET,EtherNet /IP,PROFIBUS,以太网Powerlink,Sercos等实时协议。此外,凭借PRU-ICSS的可编程特及其对引脚,事件和所有片上系统(SoC)资源的访问权限,该子系统可以灵活地实现快速实时响应,专用数据处理作以及自定义外设接口,并减轻SoC其他处理器内核的任务负载。 特 高达 1GHz Sitara...

  AM335x微处理器基于ARM Cortex-A8处理器,在图像,图形处理,外设以及EtherCAT和PROFIBUS等工业接口选项方面得到了增强。该器件支持高级作系统(HLOS).Linux ®和Android可从仪器(TI)免费获取。 AM335x微处理器包含功能框图中显示的子系统和以下简要说明: 微处理器单元(MPU)子系统基于ARM Cortex-A8处理器,PowerVR SGX图形加速器子系统提供3D图形加速功能以支持显示和特效。 可编程实时单元子系统和工业通信子系统(PRU-ICSS)与ARM内核彼此独立,允许单独作和计时,以实现更高的效率和灵活.PRU-ICSS支持更多外设接口和EtherCAT,PROFINET,EtherNet /IP,PROFIBUS,以太网Powerlink,Sercos等实时协议。此外,凭借PRU-ICSS的可编程特及其对引脚,事件和所有片上系统(SoC)资源的访问权限,该子系统可以灵活地实现快速实时响应,专用数据处理作以及自定义外设接口,并减轻SoC其他处理器内核的任务负载。 特 高达 1GHz Sitara...

  AM335x微处理器基于ARM Cortex-A8处理器,在图像,图形处理,外设以及EtherCAT和PROFIBUS等工业接口选项方面得到了增强。该器件支持高级作系统(HLOS).Linux ®和Android可从仪器(TI)免费获取。 AM335x微处理器包含功能框图中显示的子系统和以下简要说明: 微处理器单元(MPU)子系统基于ARM Cortex-A8处理器,PowerVR SGX图形加速器子系统提供3D图形加速功能以支持显示和特效。 可编程实时单元子系统和工业通信子系统(PRU-ICSS)与ARM内核彼此独立,允许单独作和计时,以实现更高的效率和灵活.PRU-ICSS支持更多外设接口和EtherCAT,PROFINET,EtherNet /IP,PROFIBUS,以太网Powerlink,Sercos等实时协议。此外,凭借PRU-ICSS的可编程特及其对引脚,事件和所有片上系统(SoC)资源的访问权限,该子系统可以灵活地实现快速实时响应,专用数据处理作以及自定义外设接口,并减轻SoC其他处理器内核的任务负载。 特 高达 1GHz Sitara...

  基于 AM335x 国网充电桩 HM& 计费模块和采集系统 2.0 终端解决方案

  本文介绍AM335x系列微处理器主要特和功能框图,参考设计TIDEP-0087主要特和框图,以及...

  如图3.17所示为核心板产品管脚排列示意图,核心板采用了J6(A1 ~ A80)和J5(B1 ~ B...

  太阳能逆变器网关是整个太阳能逆变器解决方案中的一个重要部件;它们为系统所有者(也许是家庭用户或一家大...

  AM335x入门套件的速度高达720 MHz,可通过生产就绪型软硬件平台加速设计进程。该电路板是一款...

  ARM研发的路漫长而有趣,众人皆知的开发优势和面对问题时的一筹莫展,让人对ARM又爱又恨,而你与AR...

  全彩LED显示墙异步控制卡以成本低,集中管理等特点,逐渐成为全彩LED显示墙控制卡的主流。AM335...

  2014年11月6日,致力于地区市场的领先电子元器件分销商---大联大控股宣布,其旗下世平推出基...

  在当今竞争日益激烈的全球市场中,高效的工业生产能力通常取决于每间工厂自动化系统的速度、精度和可靠度。...

  9 月 27 日,北京讯,日前,仪器 (TI) 宣布继续加大对功能强大的 Sitara™ AM3...