基于FPGA的多分辨率屏幕测试卡

2017-10-26 21:32何鑫傅自钢胡峰涛
电脑知识与技术 2017年22期

何鑫 傅自钢 胡峰涛

摘要:市场上的主流显示屏的综合素质的好坏与A4rl的视觉体验密切相关,而基于FPGA的多分辨屏幕测试卡则能够帮助人们合理有效的判断显示屏的好坏。该测试卡主要设计了主控模块、Hash读写控制模块、测试图像生成模块和动态时钟发生模块,同时还采用了逻辑图像生成技术和多分辨率自动匹配技术。各模块之间依靠信号传递、参数读取实现协调工作,并加以时钟驱动,以实现不同分辨率的测试图像的生成、轮流切换、暂停,以及自动模式和手动模式的流畅转换,达到对待测显示屏进行综合评估的目的。

关键词:FPGA;多分辨率;动态时钟;逻辑图像生成;参数

中图分类号:TP391 文献标识码:A 文章编号:1009-3044(2017)22-0203-02

1概述

在科技高度发达的今天,显示屏的应用已经渗透到人们生活中的各个方面,一块显示屏的好坏将直接影响人们的视觉体验,而基于FPGA的多分辨率测试卡则是判断显示屏好坏的一项重要技术。用户可通过应用基于FPGA的多分辨率屏幕测试卡获取一块显示屏的亮度、对比度、色纯、聚焦、水波纹、抖动、可读性等技术参数并直接观察显示效果,从而对一块显示屏的好坏进行综合性的评估。

2设计概念和过程描述

2.1基本设计概念和处理流程

基于FPGA的多分辨率屏幕测试卡主要基于Altera CycloneⅣEP4CE55F23C8N型FPGA、64M FLASH芯片、和一片AD7123的数模转换芯片,并配有开关等10个按键、1个LCD显示屏,以及5V/3A的直流电源。系统通过对外部信号作出响应完成显示屏测试,其基本流程如下:将基于FPGA的多分辨率屏幕测试卡与待测显示屏通过VGA接口连接起来,打开产品和显示屏的电源,默认分辨率测试图像便会自动出现在屏幕上,按照一定的时间间距进行图片切换,一共8张图片,切换完8张图片后会重新从第一张图片开始。在此期间,用户可以通过按键来选择上一幅图片,下一幅图片或是暂停切换图片,也可以通过按键进行自动模式和手动模式的转换。如果用户发现当前分辨率图片不是显示屏的最佳分辨率,即测试卡生成的图像无法覆盖到整个屏幕,用户可以按分辨率切换键切换分辨率,切换完成后,测试图片将重新从第1幅图片开始显示。在切换分辨率时,若测试卡的LCD屏幕上给出提示“已达到最佳分辨率”,则说明当前分辨率已是最佳分辨率,不需要再进行按键调整。

2.2模块的划分和相关技术的运用

基于FPGA的多分辨率屏幕测试卡主要包括主控模块、读写模块、Flash读写控制模块以及测试图像生成模块。在测试时,主控模块的作用是调控测试图像生成模块、动态时钟发生模块以及Flash读写控制模块使其协调工作,并接受外部按键信号传给相应模块进行处理。图像测试模块的作用是生成不同分辨率的测试图像。动态时钟发生模块则是对外部的分辨率切换信号进行处理,生成相应的时钟。Flash读写控制模块则负责读取存储的动态PLL配置信息和字模信息。下面图1介绍的是模块的划分以及模块之间的联系:

2.2.1多分辨率匹配技术

为了对不同显示器的不同分辨率进行测试,测试卡采用多分辨率匹配技术完成分辨率的转换,主要由IP核读取动态PLL配置信息完成不同分辨率参数的读取,图2是分辨率调整的基本流程:

在测试卡完成初始化以后,主控模块便开始接收外部信号,当主控模块接收到外部按键传来的分辨率切换信号时,主控模块将控制Flash读写模块启用IP核中的PLL模块完成对Flash芯片中保存有不同分辨率配置信息的已经预先写好的mif文件的读取,并将之传给动态时钟发生模块。动态时钟发生模块将根据mif文件中的保留位、振荡器等配置信息完成动态时钟的调整,与此同时,动态时钟生成模块中的计数器开始工作,每一次外部分辨率信号传来时,计数器都会进行调整,不同的计数器的值对应不同的分辨率,然后再综合时钟信息完成分辨率的调整。目前测试卡能支持1920x1200、1600x900、800x600、1024x768、1680x1050、1440x900等多种分辨率。

2.2.2VGA逻辑图像模拟技术

为了输出不同分辨率的图像来完成对不同分辨率的屏幕的评估,测试图像生成模块采用VGA逻辑图像模拟技术来完成测试图像的输出。如图3是VGB逻辑图像模拟技术的基本流程:

VGA视频传输协议是大多数厂商所共同支持的一大标准,基于FPGA的多分辨率屏幕测试卡通过对行场信号的控制来支持VGA协议。为了对应不同的分辨率,测试图像生成模块定义了多个二维数组,分别存储着不同分辨率下的不同行场信号的相关参数。当测试卡系统的动态时钟发生模块响应了外部的分辨率切换信号后,测试图像生成模块会选择存有对应分辨率参数的二维数组来确定行场信号。当行场信号确认完毕后,将进行测试图像生成。测试图像生成主要包括两部分:底层图像生成和上层文字生成。下文将介绍两种图像的生成:

1)上层文字生成

为了更好的测试显示屏的显示效果,文字测试也是必不可少的一部分,基于FPGA的多分辨率屏幕测试卡采用字模信息读取的方式来实现上层文字生成。首先需要利用字模提取软件将所要生成的文字转换成16进制数,得到一个txt文档,之后需要将其轉化为mif格式文件,然后再将得到的mif文件写人Flash芯片。当行场信号确定后,测试图像生成模块会通过Flash读写控制模块得到存储的字模信息,并在时钟的驱动下,完成文字的输出。

2)底层图像生成

生成底层图像主要是为了能让用户更加直接的观察显示屏质量的好坏,为了达到这一目的,基于FPGA的多分辨率屏幕测试卡采用逻辑生成的方式来得到不同分辨率的底层图像。VGA视屏传输协议牵涉到行、场同步时期,行、场消隐前肩,行场消隐后肩,行、场显示时期,行、场扫描总时间等多个参数,不同的分辨率相关参数也不相同。当分辨率确定后,系统便开始行场扫描以实现数据的更新,数据会在每一个行显示有效时期完成传输,在完成传输后会拉高显示使能信号来点亮一行。当完成了一次场扫描后,一帧图像就已生成。利用人眼的视觉残留效应,高速完成行场扫描便可实现稳定的测试图像输出,速度的大小则由时钟的频率决定。

当上层文字和底层图像生成完成后,一起输出便可得到稳定的测试图像。

3实测分析

为了确保测试卡的准确度和适用范围,测试卡的实测测试了大量的主流显示屏,在此过程中,测试卡都能将测试图片显示在显示屏上,并且流畅地实现了手动模式和自动模式的切换以及图片的暂停。并且,当达到了待测显示屏的最佳分辨率时,测试卡能及时通过LCD屏告知用户,帮助用户更加方便的评估显示屏质量的好坏。通过这些测试,我们确认测试卡的精准度和测试卡的适用范围都达到了很高的标准,效果很好。图4是用户测试的实际操作。

4结论

本文就基于FPGA的多分辨率屏幕测试卡如何对待测屏幕进行测试及其相关原理进行了详细的分析,各个模块通过时钟驱动来实现模块之间的信号传递、参数读取,以达到自动匹配像素时钟,自动生成相应分辨率测试图像以完成评估的功能。在进行大量的实际测试期间,基于FPGA的多分辨率屏幕测试卡能对各种主流显示屏进行测试,显示屏上能完美的显示出最佳分辨率图片,最终实现了显示屏质量的综合评估。endprint