肖卫镇 魏一鸣 吕冰
摘要:主要介绍了某计算机使用的M9显示芯片因软件问题导致的显示异常的故障模式,通过故障树分析法对M9显示芯片的故障根源进行分析,确定其故障产生的根本原因,并提出解决办法。
关键词:M9显示芯片;花屏;故障分析
0 引言
某型计算机采用ATI公司的M9芯片作为图形处理器,它是ATI公司针对新一代低功耗多媒体系统而设计的高性能图形处理芯片,M9支持2D/3D硬件加速,硬件支持OpenGL图形接口标准,内建多条并行图形处理流水线,采用多芯片封装技术,内部集成64 MB的DDR显存。M9图形硬件加速性能极高,功耗较低,已经成为军用图形显示的首选方案。本文以某型计算机使用的M9显示芯片出现显示故障为切入点,对其故障机理进行分析,从而提出解决办法。
1 故障背景
某型计算机在安全改装后经常出现综显花屏死机现象。安全改装后,综显有一路视频是接收该计算机加装的显控模块的视频输出,出现综显花屏死机是其显控模块输出的视频故障导致。
该计算机在安全改装后增加显控模块,输出一路LVDS视频信号,用于向综显传输视频信息;显控模块由CPU子模块和PMC-M9显控组成。整个LVDS视频信号传输路径如图1所示,其中LVDS视频信号由M9显卡芯片直接输出,到CPU子模块后经驱动转换为RGB信号,进入FPGA后直连送出,经另一驱动器转换成LVDS信号送到母板,送出计算机,经电缆传输送达综合显示器进行显示。
2 故障分析
2.1 故障树分析
根据产品工作原理,对花屏故障产生的原因进行故障树分析,如图2所示。
根据故障树,显示花屏有可能是由以下几种原因造成:
(1)综显显示屏存在故障;
(2)综显模块内部电路故障或设计缺陷;
(3)综显机箱内部连线不满足LVDS信号传输要求,造成LVDS信号畸变,信号质量下降;
(4)机上电缆过长或不满足LVDS信号传输要求,以及个别信号线断线,造成LVDS信号畸变或缺失;
(5)整个LVDS信号传输线(从M9的信号源端到显示屏的目的地端)4对LVDS视频差分信号线不等长或超出信号允许范围,造成LVDS信号畸变严重,信号质量下降;
(6)计算机机箱内部连线不满足LVDS信号传输要求,造成LVDS信号畸变;
(7)计算机LVDS信号驱动电路故障;
(8)M9显示芯片工作异常。
2.2 故障定位
根据以上分析,针对外场出现的花屏故障,更换机上电缆以及综显,加电测试故障依然存在,基本可以排除故障树中的(1)(2)(3)(4)项。更换工作正常的计算机后,加电测试综显显示正常,说明故障可能是由计算机引起。而该产品生产量较大,工艺成熟,只有个别产品出现故障,基本可以排除故障树中的(5)(6)项。
给故障产品加电,观察显控模块串口打印信息,产品故障时打印如下信息:
该信息表明显示需要的图形数据无法正确地被M9显示芯片的GPU从其显存中读取出来。结合以往排故经验,基本确定故障是M9显示芯片工作不正常,造成综显花屏。
3 故障分析
M9显示芯片工作不正常的原因有如下几个方面:
(1)焊接存在问题;
(2)M9芯片损坏;
(3)M9芯片的硬件设计问题;
(4)M9芯片的软件设置问题。
观察显控模块串口输出信息,每次加电测试时,无论显示正常还是异常,M9显示芯片均能正常完成设备查找和初始化工作,表明PCI总线数据传输正确,焊接方面的问题可以排除。M9显示芯片已完成初始化,进入软件设置的LVDS输出工作模式,芯片损坏的原因也可以排除。检查M9显示芯片的硬件设计,通过核对和检查PMC-M9显卡的逻辑图,确认硬件设计无误。
M9显示芯片不驻留软件,该芯片的初始化和设置及相关图形处理是由驻留在显控模块CPU子模块上的软件完成。M9显示芯片的设置包括显示分辨率、刷新频率、GPU时钟频率、显存时钟频率、GPU电压、显存电压、同步信号以及极性等内容。
检查M9软件设计,发现软件在对M9显示芯片进行设置时,为降低模块功耗,M9显示芯片的GPU时钟和显存时钟进行了降频处理,均设置为150 MHz,软件中设置语句为:
按照目前软件中设置的工作状态在该显控模块上加载运行M9显示芯片硬件自检程序,测试结果Ring Buffer报错,测试图形显示花屏。串口输出错误信息如下:
在硬件不变的情况下,更改软件中的时钟设置,去掉该两条设置时钟频率的语句,这种情况下M9显示芯片的时钟设置为默认值(GPU时钟250 MHz,显存时钟220 MHz)。按照这种工作状态在该显控模块上加载运行M9显示芯片硬件自检程序,自检通过,测试图像显示正常。串口输出信息如下:
以上測试结果表明,在该M9显示芯片GPU和显存的时钟频率均设置为150 MHz的情况下,芯片自检报错,无法满足正常的图形显示性能需求。提高M9显示芯片的时钟频率(设置为默认值:GPU时钟250 MHz,显存时钟220 MHz)后,芯片自检正常,图形可正常显示。
综上所述,综显出现花屏现象是由该计算机显控模块软件设置问题导致。由于软件中对M9显示芯片GPU和显存的时钟频率设置不合理,M9显示芯片工作不正常,有时会出现显示花屏现象。更改显控模块软件,把软件中的GPU和显存时钟频率设置为默认值,通过多种测试方法测试,该型计算机工作正常,显示正常。
4 机理分析
图形正常显示需要由软件通过CPU把需要显示的图形数据经过PCI总线写入M9显示芯片的显存中,再由M9显示芯片的GPU从显存中读出图形数据,转换为相应的视频信号输出显示。
出现故障的计算机在M9显示芯片GPU和显存的时钟频率均设置为150 MHz的情况下,工作程序串口输出显示Ring Buffer Block和opengl drivers PIO FIFO报超时(Timed out),芯片自检程序串口输出显示Ring Buffer超时,表明M9显示芯片GPU访问显存存在问题,GPU在规定的时间内不能把显存中的图形数据读出,造成图形不能正常显示,显示出现花屏现象。提高M9显示芯片的时钟频率后,由于M9的性能提高,GPU可以正确访问显存,芯片自检正常,图形显示正常。
在原来的设计中,为了降低产品功耗,对M9显示芯片GPU时钟和显存时钟进行了降频,由于M9显示芯片性能存在个体差异,该设置对于部分M9显示芯片频率过低,不能满足正常的图形显示性能需求,引起显示花屏的现象。
5 改进措施
更改显控模块软件,去掉程序中设置M9的GPU和显存时钟频率的语句,将M9芯片的时钟频率恢复为默认值(GPU时钟250 MHz,显存时钟220 MHz)。加电测试,故障的计算机产品工作正常、显示正常,故障排除。
6 结语
通过此次对综显画面显示异常进行故障树分析,确定其为M9显示芯片时钟设置不合理所致。软件设置时,为了追求降低产品功耗,盲目地降低了M9显示芯片的GPU和显存时钟频率,而M9芯片存在个体差异,导致个别芯片出现工作异常,用户在使用过程中存在故障隐患。由于软件故障在产品维修中难以排查,无形中给售后维修工作带来了困扰。因此,产品在设计过程中,在关注硬件的同时,也需对软件设置进行关注,减少因软件设置考虑不周引发的产品故障。同时,维修人员在维修过程中,也需考虑软件因素对产品故障的影响。
收稿日期:2021-05-26
作者简介:肖卫镇(1988—),男,山东临沂人,工程师,研究方向:机载计算机维修。