基于ARM+FPGA架构的三维图形加速系统
设备驱动程序在操作系统和硬件设备之间建立了一个桥梁,让操作系统能够识别设备并为应用程序提供设备服务。
本文中FPGA实现的图形加速模块作为一个设备挂接在系统中。系统在软件上只需要将渲染列表写到该设备的地址空间,因此本文使用了简单的流式接口驱动,所有的流接口驱动程序都使用相同的一组流接口函数。
渲染列表的传递是不需要反馈的,系统将渲染列表写入设备(GPU)后并不需要从设备中获取数据,因此流接口函数GPU_Read()并不需要实现具体功能,只在GPU_Write()中将渲染列表写入到设备中。另外,系统在普通图形界面和三维显示两种显示模式下使用的是不同的LCD控制器。前者使用S3C2410中集成的LCD控制器,而后者使用的是FPGA模块中实现的LCD控制器,两种模式下通过LCD总线切换模块进行切换。
结语
本文设计了基于ARM和FPGA的嵌入式图形系统,使用FPGA在硬件上实现三维图形处理,缓解嵌入式CPU在处理三维图形时因计算量过大而导致系统效率降低的问题。图像显示符合人眼对图像连续性的要求。
评论