[发明专利]一种在打印机SoC芯片上支持大尺寸图片旋转的方法有效
申请号: | 201810188065.1 | 申请日: | 2018-03-07 |
公开(公告)号: | CN108399604B | 公开(公告)日: | 2021-08-10 |
发明(设计)人: | 裘潇;袁智巧;黄凯;陈华锋 | 申请(专利权)人: | 杭州朔天科技有限公司;珠海奔图电子有限公司 |
主分类号: | G06T3/60 | 分类号: | G06T3/60;G06T1/20;G06T1/60 |
代理公司: | 杭州浙科专利事务所(普通合伙) 33213 | 代理人: | 杜立 |
地址: | 310012 浙江省杭州市*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 打印机 soc 芯片 支持 尺寸 图片 旋转 方法 | ||
本发明公开了一种在打印机SoC芯片上支持大尺寸图片旋转的方法,将一幅图片在高度上分割成多个块,并在硬件加速器的存取上加入地址翻译单元,将硬件加速器给出的逻辑地址转换为物理地址来实现大尺寸图片的旋转,避免单个颜色的像素数据占用64MB以上的连续物理内存。
技术领域
本发明属于打印机SoC芯片领域,具体是一种在打印机SoC芯片上支持大尺寸图片旋转的方法。
背景技术
在一些应用场景中,旋转图片时,如果只是软件进行处理,速度会很慢,需要用到图像旋转硬件加速器。为了提高降低总线带宽和芯片面积,硬件加速器每次处理单个通道的数据,多通道的图片需要多次启动硬件加速器。但是图像旋转硬件加速器处理大尺寸图片时,大图片的单个颜色数据占用内存总计达到64MB以上,由于硬件加速器发出的地址是连续的,如果使用这么一块大的内存块来存放,则会给整个系统的内存机制设计造成很大的困难,在系统运行过程中地址连续的大块物理内存是很难保证的。
发明内容
为了解决现有技术中存在的上述技术问题,本发明提供了一种在打印机SoC芯片上支持大尺寸图片旋转的方法,将一幅图片在高度上分割成多个块,并在硬件加速器的存取上加入地址翻译单元,将硬件加速器给出的逻辑地址转换为物理地址来实现大尺寸图片的旋转。
进一步的,包括如下步骤:
(一)将一幅图片在高度上分割成多个块;
(二)将各个大小不固定的块数据重组到4MB内存块,生成输入的4M内存块链表;
(三)将输入的4M内存块链表的地址通过地址翻译单元翻译出相应的逻辑地址,配置到硬件加速器中;
(四)在硬件加速器处理完4MB内存块后,将输出的4M内存块链表中的4MB内存块分割成所需大小的块。
进一步的,所述硬件加速器对连续存储的像素数据的单个颜色分量进行旋转处理,对于多个颜色分量的图像,需要多次启动硬件加速器逐个颜色处理。
进一步的,所述地址翻译单元将一块逻辑上连续的逻辑内存地址告知硬件,实现地址连续。
进一步的,4M内存块链表通过地址翻译单元生成翻译表。
本发明将一幅图片在高度上分割成多个块,并在硬件加速器的存取上加入一个地址翻译单元,将硬件加速器给出的逻辑地址转换为物理地址方法来实现大尺寸图片的旋转,避免单个颜色的像素数据占用64MB以上的连续物理内存。
附图说明
图1是将一幅图片分割成多个块的示意图;
图2是翻译单元ATU将硬件加速器发出的逻辑地址转换为物理地址的示意图;
图3是图像数据被写到了不正确的内存区域的示意图;
图4a-图4c是各个大小不固定的块数据重组到4MB内存块中的示意图;
图5a和图5b是4M内存块链表通过ATU生成翻译表的过程示意图;
图6是ATU通过翻译表进行翻译的过程示意图;
图7a-图7c是将4MB内存块分割成所需大小的块示意图;
图8a-图8d是ROT设计流程图。
具体实施方式
下面结合附图对本发明作进一步说明。
本发明将一幅图片在高度上分割成如图1所示的多个块,并在硬件加速器的存取上加入一个地址翻译单元,将硬件加速器给出的逻辑地址转换为物理地址来实现大尺寸图片的旋转。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州朔天科技有限公司;珠海奔图电子有限公司,未经杭州朔天科技有限公司;珠海奔图电子有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810188065.1/2.html,转载请声明来源钻瓜专利网。