图形处理器电路设计仿真与测试技术研究*

2021-10-09 08:33贺志容
计算机与数字工程 2021年4期
关键词:寄存器时序总线

贺志容 张 祥

(武汉数字工程研究所 武汉 430205)

1 引言

1.1 GPU功能结构

图形处理器(Graphics Processing Unit,GPU),又称显示核心、视觉处理器、显示芯片,是一种专门在个人电脑、工作站、游戏机和一些移动设备(如平板电脑、智能手机等)上做图像和图形相关运算工作的微处理器[1]。

本文研究的某型号图形处理器采用CMOS 130nm工艺制造,集成度约为1000万门;显示接口为VGA/数字接口;支持8位、16位和32位色多种色彩模式,图形模式下支持640×480、800×600、1024×768分辨率,最大分辨率1280×1024;支持ZOOM VIDEO视频接口;支持双通道双屏显示;支持色彩空间转换(YUV-RGB);支持VGA/VESA标准;支持标准PCI协议读写;视频数据采集存储;支持2D图形加速:BitBLT,ROP,256 3-0p;可以用作PCI显卡的主处理芯片,完成操作系统界面显示和基本图形绘制及显示,视频采集回放等功能。其功结构如图1所示[2~3]。

图1 GPU功能图

1.2 工作机制

主机总线接口模块受到来自PCI总显得读写操作,包括对寄存器的读写操作和对显示存储的读写操作,包括对寄存器的读写操作和对显示存储的读写操作,完成对寄存器的初始化后,基本图形模式能够正常输出显示。打开视频采集寄存器后能够实时采集显示视屏图像窗口[4]。

2 GPU电路设计及测试技术

正向设计GPU芯片,首先根据技术指标和功能说明进行RTL设计编写,前端设计结束后分别进行模块级和系统级仿真验证,保证设计的准确性;然后进行FPGA原型验证,后端设计、后仿真等。芯片测试则可以基于仿真过程文件,产生的测试向量覆盖率高,功能针对性强,测试的可靠性和可控性高。基于仿真文件的芯片测试,也是芯片生产通用的测试方法[5]。

2.1 GPU关键模块电路设计要求

1)主机总线接口模块

主机总线接口模块要求主机可以通过PCI总线对GPU进行读写操作,读写时序满足PCI协议要求。仿真时先对某些地址进行总线写操作,再对这些地址进行总线读操作,比对读写数据,结果一致,主机总线接口功能正确[6]。整体电路仿真,功能覆盖率达能到90%。

2)VGA寄存器模块

VGA寄存器模块按照地址列表来操作,结果能够正常读写和显示初始化。

3)视屏采集模块

视频采集模块要求实现视屏实时采集回放功能,采用多硬件图层设计。方针是模拟视频输入数据作为激励,读取显示输出数据并与理想显示输出数据进行自动比对,结果一致,视屏实时采集回放功能正确[7~8]。

4)显示输出模块

显示输出模块要求实现VGA和LVDS双屏显示,且通过寄存器可配置成拷贝模式和扩展模式。显示分辨率要求支持到1280*1024,色彩模式支持16位色。方针是通过寄存器配置显示模式,采集VGA接口和LVDS接口的数据和行场同步信号进行分析,与VESA标准的波形一致,显示输出功能正确[9~10]。

2.2 基于93000测试系统的测试图形及时序生成

93000 集成电路测试系统是业界领先的测试系统,该系统提供了强大的测试能力,支持数字、模拟、混合信号和SOC测试应用。支持各类仿真设计文件到系统所能识别的图形、时序文件转化,是完成GPU测试的有效平台[11]。

基于GPU正向设计得到的仿真文件,能够充分针对GPU的内部功能实现测试,从仿真文件(*.vcd)生成包括时序文件(tim),向量文件(binl)等V93000测试系统规定格式文件。如图2所示为仿真图形转换示意图[12]。

图2 仿真图形转换示意图

利用VCDTO93K工具完成测试图形生成。文件转化需要的过程文件有:

1)管脚定义文件(pin configure):用于给出芯片单pin或pin组的定义文件;

2)方向配置文件(direction configure):给出管脚或组的方向描述信息,包括I/O/IO;

3)控制配置文件(control configure):用于描述输入输出方向控制信号与被控制信号的一一对应关系;

4)延时配置文件(delay configure):用于给出管脚或信号组的延迟信息,以周期的百分比形式给出。

基于仿真文件,以及上述四个相关文件(*.pin、*.dir、*.ctrl、*.delay)利用系统自带命令,完成仿真文件到93000系统可用时序(timing)和图形(pattern)文件的转换。

通过仿真文件得到的图形、时序文件,与芯片的实际时序存在延时造成的差异,需要通过后期调整适配,得到真实的芯片时序和图形。

2.3 基于93000的GPU测试程序开发

GPU的测试是基于93000测试系统开发的。测试程序的主要组成文件如表1。

表1 测试程序文件组成

3 GPU电路仿真验证与测试结果

3.1 GPU功能仿真验证结果

利用仿真平台,各关键电路模块的仿真验证结果如图3~7所示[13]。

图3 主机总线写时序图

图4 主机总线读时序图

对GPU类芯片,显示输出模块的像素时钟信号(PXL_CLK)、行同步信号(HSYNC)、场同步信号(VSYNC)是重要的显示性能参数。行同步信号的作用是选择出显示面板上有效行信号区间,场同步信号的作用是选择出显示面板上有效场信号区间,行场同步信号的共同作用,可选择出显示面板的有效视频区间。像素时钟频率与显示器的工作模式有关,分辨率越高,像素时钟信号的频率也越高;数字信号在像素时钟信号的作用下,按照一定的顺序,传输到显示面板中,使各电路按照一定的节拍协调地工作;且都是在像素时钟的下降沿或上升沿到来时才对数字信号进行读取,以确保读取数据的正确性[14~15]。

图5 VGA寄存器模块仿真图

图6 视频采集模块仿真图

图7 显示输出模块仿真图

3.2 GPU功能测试结果

利用得到的仿真文件,在93000上完成转换后,得到对应的时序和的图形文件,编制测试项目进行测试,测试波形图如图8~12所示。

图8 PCI总线状态测试时序图(1)

除了常规参数,如输入电平(VILVIH),输出电平(VOLVOH),漏电流(IILIIH)、电源电流(ICC),建立保持时间、传输延迟时间等,对GPU类芯片,数据手册中对显示输出模块的像素时钟信号(PXL_CLK)、行同步信号(HSYNC)、场同步信号(VSYNC)信号规范值和实际测量值如表2所示,利用仿真文件转换后的图形文件,在93000测试系统下实际测到显示输出模块信号结果也如表2所示。

表2 像素时钟信号、行同步信号、场同步信号规范值与实测值

图9 PCI总线状态测试时序图(2)

图10 显示输出模块像素时钟测试波形图

图11 显示输出模块行、场同步信号测试波形图(1)

图12 显示输出模块行、场同步信号测试波形图(2)

可以看出,GPU芯片在基于仿真文件的测试系统图形控制下,正常运转,满足了正常工作的所有条件,给出了理想的输出。

4 结语

通过电路仿真,结合测试机台的时序、图形转换方法,实现GPU芯片功能测试,能够很好地复现芯片的功能,提高芯片的测试质量。

猜你喜欢
寄存器时序总线
顾及多种弛豫模型的GNSS坐标时序分析软件GTSA
清明
基于GEE平台与Sentinel-NDVI时序数据江汉平原种植模式提取
关于CAN总线的地铁屏蔽门控制思路论述
你不能把整个春天都搬到冬天来
飞思卡尔单片机脉宽调制模块用法研究
移位寄存器及算术运算应用
数字电路环境下汽车控制电路信号设计
Q&A热线
PCI9030及其PCI总线接口电路设计