[发明专利]一种红外实时成像系统的帧缓存调度装置及调度方法有效
申请号: | 201210006172.0 | 申请日: | 2012-01-06 |
公开(公告)号: | CN102541660A | 公开(公告)日: | 2012-07-04 |
发明(设计)人: | 刘子骥;杨书兵;劳常委;蔡贝贝;蒋亚东;郑兴 | 申请(专利权)人: | 电子科技大学 |
主分类号: | G06F9/50 | 分类号: | G06F9/50 |
代理公司: | 成都华典专利事务所(普通合伙) 51223 | 代理人: | 杨保刚;徐丰 |
地址: | 611731 四川省成*** | 国省代码: | 四川;51 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 红外 实时 成像 系统 缓存 调度 装置 方法 | ||
技术领域
本发明涉及红外图像采集技术领域,尤其涉及一种红外实时成像系统中帧缓存的调度装置及相应的调度方法。
背景技术
红外实时成像系统所采集的红外图像数据通常都未经压缩,数据量大,并且还需通过校正、拉伸等进一步处理才能显示视频图像;因此红外图像的读取、处理过程非常耗费系统的硬件资源。一种红外成像系统设计方案是通过FPGA采集非制冷焦平面的红外数据,然后由上位机(比如ARM芯片)提供的参数在FPGA内进行非均匀矫正、拉伸等图像处理,最后通过中断告知上位机,由上位机读取数据并显示;上位机从FPGA读取原始红外图像数据,计算参数再传回FPGA。该方案中上位机通常须要在内存中开辟空间用于缓存两种红外数据。
现有的红外图像缓存空间的调度方法通常是将帧缓存抽象成基于数组的队列,通过调度队列元素,来实现调度帧缓存;现有技术存在如下问题:
(1)由于原始红外数据和处理后的红外数据类型不同,对于传统的基于数组的队列,须要为两种类型红外数据分别开辟独立的缓存块分别管理。这种方案虽然简单,但需要为两类红外帧分别分配缓存,由于通常不会同时采集两类红外帧图像,因此这种分配缓存的方法未能高效利用内存。因此需要设计一种方法,使两种类型的红外数据可以共同使用一组缓存块。
(2)当没有空闲图像缓存时,传统的基于数组的队列调度算法无法保证最新的红外帧数据总是能够替换还未被读取的旧红外数据。
发明内容
针对上述现有技术,本发明要解决的技术问题是提供一种红外实时成像系统的帧缓存调度方法及调度装置,其根据缓存的状态来管理缓存,当存在可写入红外帧数据的缓存时,新的帧缓存总是被写入。
为了解决上述技术问题,本发明采用如下技术方案:一种红外实时成像系统的帧缓存调度装置,包括:
调度装置初始单元,用于为每个系统已分配的帧缓存分配一个对应的链表结点,以及根据帧缓存的状态分配五个管理缓存的链表,初始化操作包括:初始化空闲状态对应的链表List_I、正在写入原始红外帧数据的状态对应的链表List_B、原始红外帧数据写入完成状态对应的链表List_R、正在写入处理后的红外帧数据的状态对应的链表List_B、处理后红外帧数据写入完成状态对应的链表List_R,并将所有链表结点均挂载到List_I链表上;
读缓存调度单元,用于为读操作分配可读缓存,将读操作缓存对应的链表结点信息返回给申请者;
写缓存调度单元,用于为写操作分配缓存,将分配的缓存对应的链表结点信息返回申请者;
调度装置回收单元,用于将已经读或写完毕的缓存对应的链表结点插入到正确的链表中。
一种使用上述调度装置的红外实时成像系统的帧缓存调度方法,包括如下步骤:
A:首先,系统在分配了缓存之后,调用调度装置初始单元,该单元为缓存初始化对应的调度装置单元,使该调度装置投入使用;
其中:读缓存操作包括如下步骤:
1A:读进程调用所述调度装置的读缓存调度单元申请可读缓存,读缓存调度单元将可读的缓存信息返回给读进程,
1B:读进程根据获得的缓存信息,通过读缓存调度单元进行读缓存调度,
1C:在完成读缓存调度后,读进程通过调用调度装置回收单元处理完成一次读缓存操作;
写缓存操作包括如下步骤:
2A:写过程调用所述调度装置的写缓存调度单元申请可写缓存,写缓存调度单元将可写的缓存信息返回给写过程,
2B:写过程根据获得的缓存信息,通过写缓存调度单元进行写缓存调度,
2C:在完成写缓存调度后,写过程通过调用调度装置回收单元处理完成一次写缓存操作。
进一步地,所述读缓存调度单元的读缓存调度包括如下步骤:
步骤200:执行读操作的过程调用该单元申请读n个缓存的某类红外帧数据,并进入步骤210,某类红外帧数据为原始红外帧数据和处理后的红外帧数据;
步骤210:该单元查询该类红外帧对应的List_R是否为空,如不为空,则跳至220;否则跳至240,
步骤220:当该类红外帧对应的List_R链表中包含m个链表结点,调度装置将该链表中的前min(m,n)个链表结点取出,并跳至步骤230,
步骤230:调度成功,将步骤220中取出的min(m,n)个链表结点的信息返回给申请者,
步骤240:调度失败,返回失败信息。
更进一步地,所述调度装置回收单元的处理包括如下步骤:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于电子科技大学,未经电子科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210006172.0/2.html,转载请声明来源钻瓜专利网。