利用智原科技A320SoC平台开发2D图像加速器(上)利用人的慧打造物的智_第1页
利用智原科技A320SoC平台开发2D图像加速器(上)利用人的慧打造物的智_第2页
利用智原科技A320SoC平台开发2D图像加速器(上)利用人的慧打造物的智_第3页
利用智原科技A320SoC平台开发2D图像加速器(上)利用人的慧打造物的智_第4页
免费预览已结束,剩余1页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、市面上的机顶盒,GPS,手机或PMP的多媒体主控芯片,很多都要求具有 2D 图像显示功能。利用智原 A320 SoC 平台开发 2D 图像加速器, 可以加速 2D 图形显示效果。本文首先说明 2D 图像加速器的功能要求和作用;然后在介绍 FPGA 测试方式时也对智原科技所提供给的 A320 SoC 平台,做一些说明。12D 图像加速器的功能要求和作用介绍全硬件 2D 图形加速引擎包含完整的 BitBLt 功能,影像混合调整 (alpha-blending )、图形扩大缩小与旋转功能。除此之外,更针对 GPS 的特殊 应用而设计了画线( line draw ),字型反锯齿( text anti-

2、aliasing )与渐层着色 ( G radient fill ),而且可以针对每一个像素做处理。 2D 图像加速器包含了一个 32 比特 BLT 引擎以及 Line Draw 引擎用以提供针对许多视窗操作所需要的硬件 加速。微软视窗定义了像素( pixel )是最小可寻址的屏幕元素,而线( line )跟 图像都是由像素利用种种的变化组成的。像素是所有计算机图像的基本元素,它 也是计算机显示器上的一点亮光,用来展现出不同的颜色。 2D 图像引擎是用来 减轻 CPU 在图像处理上过多的负担,以及在像素数据搬动和画线时加速图形的 处理,同时也加快了计算图形时的逻辑操作以提升 SoC 整体的性能

3、。2D 图像加速器的功能定义如下AHB 主/从 接口完全符合 ARM AMBA 0 规范在UMC 0.13工艺且在内置FIFO的条件下,AHB总线速度高达200MHz 以上 2D 图像加速器内核的同步时钟操作频率在 83MHz 实时显示支持最大图像分辨率高达 1024 x 768 ,其中分辨率是指像素在 显示器上的行与列的数目。 支持标准微软 256 三元光栅操作码( ternary raster operation codes - ROPs)支持针对来源(source ) / 目的(destination ) RGB 空间 alpha-blending(按照“ Alpha ”混合向量的值来混

4、合源像素和目的像素)的图像覆盖,让 2D 对象产生透明感的技术,追求透明光影效果 支持在 BLTs 和 Bresenham 画线的透明以及剪辑( Clip )的功能, Bresenham 画线算法通过采用运行速度快的加减和移位运算来完成画线。支持 RGB-565, RGB-888, ARGB-1555, ARGB-8888 等格式如下图 1。2D 图像加速器的模块图如图 2 所示,加速器是基于一个 AHB 主以及一个AHB 从接口的 AHB 总线,未来在 FPGA 开发板上用来与 A320 上的 AHB 连接 器进行结接。我们就 AHB 总线进行一个粗略的带宽估算 :针对 800X600 而且

5、格式为 ARGB-8888 (4 字节/ 像素)的图片 :800*600*2*30*3* ( 1/0.6 )*4=144M *4=576(MB/ 秒)= 也就是说 SDRAM 时钟速度至少要到 144MHz. 这个速度要求建议SDR SDRAM 控制器在 0.13um 或更先进工艺实现 , 或者是 DDR SDRAM 控制 器在 0.18um 或更先进工艺实现。解释“2”是针对较大的BG所增加的分辨率因数(通常用在画制背景图)。“30” 代表 30 帧/ 秒实时显示的要求。“3” 意谓在正常的图形描绘 2-读和 1- 写的时候。“0.6” 是指总线效率因数 , 考虑到 DRAM 反应时间( l

6、atency )和 AHB 总 线仲裁器( arbiter )所造成的延迟。2D 图像加速器中会提供某些功能如 ROPs, Line drawing, Tranpancy,Alpha blending 等等以达到图形描绘 ( Rendering )的目的 , 模块的流水线示 意图如图 3 所示。1 数据块传送( BitBLt )可以把整个视频显示器看作是一幅大位图( bitmap )。在屏幕上见到的像素 由储存在视频显示卡上内存中的位置来描述。任何视频显示的矩形区域也都是一 个位图,其大小是它所包含的行列数目。将图像从视频显示的一个区域复制到另 一个区域,这个是由强大的 BitBLt 函数来完

7、成的。理解图像最重要的一点是,图 像总是矩形的。这不只是方便了人们的理解,其原因是底层的技术。所有的现代 显示卡都内置了硬件,可以非常高效地把像素块从内存的一个地方复制到另一个 地方。假定像素块表示一个矩形区域,这个硬件加速操作可以虚拟为一个操作, 而且执行速度非常快。实际上,这是现代高性能图像的关键。这个操作称为位图 块传输(或者 BitBLt )。BitBLt 是从实际视频显示内存传输图像,而不是从系统菜单图标的其它图像 传输。如果移动 BitBLt 窗口以使部分系统菜单图标移出屏幕,然后调整 BitBLt 窗口的尺寸使其重画,这时将发现 BitBLt 显示区域中显示的是菜单图示的一部 分

8、。 BitBLt 函数不再存取整个图像。在 2D 计算机图形处理 , BitBLt 引用 DMA 对在相同或不同的内存位置上的像 素数据作数据块传送。 BitBLt 命令实现了被微软所定义的所有的 256 光栅操作ROPs)这些三种光栅操作码定义 BitBLt 如何在逻辑上从来源( source )操作数 , 模 式( pattern ) 操作数 , 以及目的( destination ) 操作数进行比特的运算。光 栅操作总是在 BitBLt 以及必须被使用者加载一个适当的值的时候起作用的。并不是每一种 ROP 码都要用到全部 3 种原始数据,有的甚至连 1 种也用不 到,例如全黑或者全白的 ROP 码。块传送函数使用的 ROP 码总共有 256 种,它 们是 3 种原始数据进行不同位操作(取反、与、或和异或)的组合,但有些 ROP 码对应的操作结果实在是太难想象了, 比如 ROP 码 0e20746 对应的操作是 (目 标像素 xor 画刷) and 源像素) xor 目标像素),凭这个算式的确比较难以想 象最后得到的位图是什么样子的。 在实际使用中很多算法组合也并不是那么有用, 所以微软视窗只对 15 种最常用的 ROP 码定义了预定义的助记代码,如表 1 所示,对于这些 ROP 码,在

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论