欢迎来到天天文库
浏览记录
ID:27728302
大小:776.00 KB
页数:12页
时间:2018-12-05
《一种图形加速卡设计与功能验证方法研究》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、http://www.paper.edu.cn一种图形加速卡设计与功能验证方法研究席光磊,李仁发湖南大学计算机与通信学院,长沙(410082)E-mail:guangleigama@163.com摘要:本文以图形加速卡为基础,详细阐述基于FPGA的图形加速卡的设计方法及功能验证方法。对目标设计分别进行模块级和系统级功能验证。在系统级验证的两个阶段分别使用逻辑模拟器和FPGA设计了相应的验证平台,采用带约束的随机激励验证方法,提高了验证的效率。关键词:图形加速卡,FPGA设计,功能验证,验证平台 中图分类号:TP3341.引言随着计算机技术的发展,多媒体和图形图像
2、处理技术已经成为当今学术研究和业界产品开发的热点。而半导体工艺的发展和集成电路设计技术的提高,对图形图像处理技术的要求也逐步向高性能、高速度、低功耗的目标前进[1]。当前,常见的用于图形图像显示的方法有如下几种:1)通用计算机中图形图像显示,借助于高速的中央处理器和专用的显示卡,可以实现各种2D、3D等图形图像的显示。但是就嵌入式应用而言,这种架构的显示系统由于对体积和功耗的要求太高而不适合于小体积、高性能、低功耗的嵌入式系统[2]。2)MCU集成LCD控制器,嵌入式微处理器MCU可以通过LCD控制器在LCD上显示图形图像。但由于图形图像的处理、数据的计算等都需
3、要MCU通过软件来完成,大大加重了MCU的负担,降低了性能。3)使用专用图形加速芯片,使用硬件实现图形图像处理功能,大大提高了图形图像显示的性能,并且由于使用了定制的集成电路ASIC,降低了体积和功耗,这是当今业界设计的主流技术之一。但是由于ASIC设计的周期长,留片成本高,风险大,因此使用FPGA来进行图形加速卡的设计,是很有吸引力的。一方面,无须进行专门的PCB绘制和留片,大大缩短了开发周期;另一方面,FPGA可以进行几乎无限数次的编程,既给验证带来了便利,也降低了因为留片失败而造成的成本;而且FPGA本身可以作为一种验证技术用来对设计进行验证,为验证提供了
4、额外的灵活性[3]。本文详细论述了基于FPGA的图形加速卡的设计架构,在此基础上给出了图形加速卡设计的功能验证平台的具体实现。着重阐述如何使用tcl语言、逻辑模拟器以及FPGA相互配合搭建验证平台。2.图形加速卡功能介绍图形加速卡是各种显示系统的核心部分,图形图像的处理与计算是由图形加速卡完成的。图形加速卡要实现图形图像的生成和显示功能,需要满足高性能、高速度、低功耗的要求。本文重点论述基于FPGA的图形加速卡设计架构,以及如何对硬件设计进行功能验证。图形加速卡由FPGA实现。能够进行几何图形(点、直线、圆弧、圆、椭圆、矩形等)、字符、图标图片等的生成和显示,并
5、且可以执行一些显存操作的命令,如屏幕的复制、粘贴,屏幕擦除,以及屏幕显示参数的设置,如前景色,背景色,屏幕大小,屏幕亮度等。-1-http://www.paper.edu.cn1.图形加速卡设计及功能验证相关技术方案本章将对图形加速卡的图形生成和显示的各模块的设计和验证作详细说明。3.1图形加速卡设计为实现该图形加速卡的图形生成和显示,使用基于FPGA的芯片设计技术,用Verilog硬件描述语言对FPGA的各功能模块进行RTL描述,使用逻辑模拟器进行仿真,后期使用综合工具生成门级网表,使用布局布线工具得到bit文件下载到FPGA上。3.1.1总体说明图形加速卡的
6、系统结构如图1所示单片机CIFSDRAMFBMPCGMIFFLASHLCD LCM图1图形加速卡系统结构单片机通过数据、地址和命令总线访问FPGA内部的寄存器,设置属性,并写入命令和参数。FPGA内部由CPU接口模块(CIF,CpuInterface)负责与单片机进行交互。CIF模块提供寄存器文件,供单片机访问。当单片机写入命令字之后,CIF模块启动命令分析状态机,进行命令解析,将执行所需要的参数都通过正确的信号线输出给相应的模块,并向相应的模块发送启动命令。其它模块(主要是PCG模块和FBM模块)在收到启动命令之后,根据具体的命令类型,从CIF模块中获取参数与
7、控制信息,然后执行相应的操作。3.1.2FPGA各模块的设计与实现1)CIF(CpuInterface)模块CPU接口模块,负责提供寄存器读写接口、命令解析、发送其它模块的控制信号。是整个系统的控制中心。主要结构如图2所示。图2CIF模块的内部结构-2-http://www.paper.edu.cnCIF模块由两个子模块组成,分别是寄存器文件(RF,RegisterFile)模块和命令分析状态机(CAF,CommandAnalysisFSM)模块。RF模块存放了系统中所需的各种寄存器,包括外部可见的和外部不可见的两种。外部可见的寄存器主要是各种属性寄存器、调试诊
8、断寄存器和结果状态寄存器
此文档下载收益归作者所有