一种基于应用处理器片上总线控制的文件系统写加速方法技术方案

技术编号:24289701 阅读:34 留言:0更新日期:2020-05-26 20:04
本发明专利技术公开了一种基于应用处理器片上总线控制的文件系统写加速方法,包括以下步骤:调用文件系统的open()函数创建文件,获得文件句柄;调用文件系统的write()函数向文件中写入传感器数据,文件系统按固定文件大小向存储器中写入数据,其中,单次写入按Page大小进行,写入过程中文件系统仅生成Page的Tags信息,驱动层将Page的Tags信息拷贝至控制器的缓冲区;当处理器获得数据写开始信号时,则开始监听片上总线的数据;协处理器获取片上总线Page并暂存,然后将外设数据缓冲区内的数据按固定大小替换Page数据区,并向存储器发送替换后的Page;当剩余写入文件大小小于等于0时,则文件写入结束;文件系统调用close()函数关闭该文件,该方法能够加速文件系统的存储性能。

A file system write acceleration method based on bus control on application processor chip

【技术实现步骤摘要】
一种基于应用处理器片上总线控制的文件系统写加速方法
本专利技术属于嵌入式系统软件领域,涉及一种基于应用处理器片上总线控制的文件系统写加速方法。
技术介绍
嵌入式系统是一种为特定应用而设计的专用计算机系统,随着当今社会对嵌入式系统的广泛应用,嵌入式系统面临着应用场景复杂、数据处理任务繁重等挑战。嵌入式系统的一个典型的应用就是数据的采集存储,为了方便对数据的访问和查找变得容易,在系统软件层面普遍应用文件系统。文件系统作为一种存储和组织计算机数据的方法,在嵌入式系统软件中被广泛应用,嵌入式系统软件中的文件系统受限于处理器性能及片上资源的限制,通常会对软件系统多任务或进程的运行带来速度上的不利影响,特别是在一些对实时性要求较高的应用场景,如航空航天、汽车电子等设备,文件系统的存储性能将成为直接影响整个系统的关键要素。因此,面对复杂而大量的数据处理环境且对性能要求较高的场景下,文件系统的存储性能加速是嵌入式系统领域十分关注的问题。
技术实现思路
本专利技术的目的在于克服上述现有技术的缺点,提供了一种基于应用处理器片上总线控制的文件系统写加速方法,该方法能够加速文件系统的存储性能。为达到上述目的,本专利技术所述的基于应用处理器片上总线控制的文件系统写加速方法,该加快方法通过文件系统与FPGA协处理器协同完成,所述文件系统运行在主处理器中,文件系统包括open()函数接口、read()函数接口、write()函数接口及close()函数接口;存储器经FPGA协处理器与应用处理器片上总线相连,文件系统用于在写入文件过程中Page的Tags信息的生成;外设数据流实时保存至协处理器的缓冲区,协处理器通过片上总线监听,暂存片上总线捕获的Page,将缓冲区内的数据替换该Page数据区;具体包括以下步骤:1)应用处理器操作系统启动,文件系统初始化完成,协处理器接收应用处理器及文件系统启动完成信号后进入同步通信状态,等待文件系统的操作信号;2)调用文件系统的open()函数创建文件,获得文件句柄;3)调用文件系统的write()函数向文件中写入外设数据,文件系统按固定文件大小向存储器中写入数据,其中,单次写入按Page大小进行,写入过程中文件系统仅生成Page的Tags信息,驱动层将Page的Tags信息拷贝至控制器的缓冲区;当协处理器获得数据写开始信号时,则开始监听片上总线的数据;4)协处理器获取片上总线Page并暂存,然后将外设数据缓冲区内的数据按固定大小替换Page数据区,并向存储器发送替换后的Page;5)当剩余写入文件大小小于等于0时,则文件写入结束,否则,则转至步骤3);6)文件系统调用close()函数关闭该文件。在文件系统中建立与存储器驱动层底层通信机制,标志上层应用写入存储器的内容类型;对文件系统的write()函数体前后建立调用开始信号及结束信号,驱动底层Page写函数通过该标志判断上层调用函数是否将写入文件数据,当确认此次操作为写入文件数据操作时,则向存储器的控制器缓冲区写入该页的Tags信号,启动写命令。在应用处理器与FPGA协处理器之间建立同步通信机制,所述同步通信机制用于同步文件系统与协处理器之间对Page的协同写入操作;当文件系统调用write()函数开始向文件写入数据,在write()函数接口调用前后分别触发开始信号及结束信号,当协处理器接收到开始信号时,则启动片上总线监听模式,对Page数据区进行操作;当协处理器接收到结束信号时,则退出监听模式,同时将存储器与处理器局部恢复总线直连。文件系统的write()函数接口对Page进行第一阶段操作,具体的,生成Tags信息并填充控制器缓冲区对应的区段,控制器缓冲区数据区位置保留但不进行操作;然后协处理器对Page进行第二阶段操作,具体的,将外部数据流缓冲区按固定大小替换Page数据区。协处理器的运行状态分为初始状态、同步通信状态、时序监听状态及数据插入状态,在初始状态,存储器与应用处理器片上总线直连;在同步通信状态;应用处理器文件系统初始化完成;在时序监听状态,调用文件系统的write()函数接口准备向文件写入数据;在数据插入状态,将外部数据缓冲区按固定大小替换Page数据区,向存储器发送Page;协处理器的各状态之间的转化由应用处理器及协处理器事件状态控制。本专利技术具有以下有益效果:本专利技术所述的基于应用处理器片上总线控制的文件系统写加速方法在具体操作时,在文件系统中建立应用接口层与存储器控制器驱动层的通信标识,底层通过该标识判断本次底层调用对Page的操作;同时在应用处理器与协处理器之间建立快速通信机制,文件系统只需生成及拷贝Tags数据到控制器缓冲区,协处理器监听片上总线时序,将实际数据替换到Page的数据区;本专利技术减少了原文件系统对外部数据进行保存时的数据流路径,实现了由外部数据直接存储到存储器的最短路径,大大减少了Load-Store机制的处理器对数据的多次复制,其中,文件系统只需负责文件的创建及每个将写入页的Tags信息,减轻了主处理器调用文件系统写接口的代码执行量,从而加快文件系统写入性能。附图说明图1为实施例一中应用本专利技术前后文件系统数据流通路对比图;图2为实施例一的系统硬件连接图;图3为Yaffs2文件系统处理的具体函数调用过程图;图4为FPGA不同状态的转化关系图。具体实施方式下面结合附图对本专利技术做进一步详细描述:本专利技术通过文件系统与FPGA协处理器协同完成,所述FPGA协处理器位于应用处理器存储控制器与存储器之间,用于监听片上总线的时序,同时外设采集数据汇集到该处理器的缓冲区;协处理器监听片上总线的Page写入时序,并将该数据进行多级缓存,同时将外设数据缓冲区中的数据替换到Page数据区,数据区的大小根据存储器和存储器控制器缓冲区适配的值进行确定;应用处理器运行软件系统,包含文件系统,FPGA协处理器作为本专利技术中的硬件,共同完成文件系统的软硬件协同加速;所述文件系统运行在主处理器中,文件系统包括open()函数接口、read()函数接口、write()函数接口及close()函数接口;存储器经FPGA协处理器与应用处理器片上总线相连,文件系统用于在写入文件过程中Page的Tags信息的生成;外设数据流实时保存至协处理器的缓冲区,协处理器通过片上总线监听,暂存片上总线捕获的Page,将缓冲区内的数据替换该Page数据区;具体的,本专利技术所述的基于应用处理器片上总线控制的文件系统写加速方法具体包括以下步骤:1)应用处理器操作系统启动,文件系统初始化完成,协处理器接收应用处理器及文件系统启动完成信号后进入同步通信状态,等待文件系统的操作信号;2)调用文件系统的open()函数创建文件,获得文件句柄;3)调用文件系统的write()函数向文件中写入外设数据,文件系统按固定文件大小向存储器中写入数据,其中,单次写入按Page大小进行,写入过程本文档来自技高网...

【技术保护点】
1.一种基于应用处理器片上总线控制的文件系统写加速方法,其特征在于,该加速方法通过文件系统与FPGA协处理器协同完成,所述文件系统运行在主处理器中,文件系统包括open()函数接口、read()函数接口、write()函数接口及close()函数接口;存储器经FPGA协处理器与应用处理器片上总线相连,文件系统用于在写入文件过程中Page的Tags信息的生成;外设数据流实时保存至协处理器的缓冲区,协处理器通过片上总线监听,暂存片上总线捕获的Page,将缓冲区内的数据替换该Page数据区;/n具体包括以下步骤:/n1)应用处理器操作系统启动,文件系统初始化完成,协处理器接收应用处理器及文件系统启动完成信号后进入同步通信状态,等待文件系统的操作信号;/n2)调用文件系统的open()函数创建文件,获得文件句柄;/n3)调用文件系统的write()函数向文件中写入外设采集数据,文件系统按固定文件大小向存储器中写入数据,其中,单次写入按Page大小进行,写入过程中文件系统仅生成Page的Tags信息,驱动层将Page的Tags信息拷贝至控制器的缓冲区;当协处理器获得数据写开始信号时,则开始监听片上总线的数据;/n4)协处理器获取片上总线Page并暂存,然后将外设数据缓冲区内的数据按固定大小替换Page数据区,并向存储器发送替换后的Page;/n5)当剩余写入文件大小小于等于0时,则文件写入结束,否则,则转至步骤3);/n6)文件系统调用close()函数关闭该文件。/n...

【技术特征摘要】
1.一种基于应用处理器片上总线控制的文件系统写加速方法,其特征在于,该加速方法通过文件系统与FPGA协处理器协同完成,所述文件系统运行在主处理器中,文件系统包括open()函数接口、read()函数接口、write()函数接口及close()函数接口;存储器经FPGA协处理器与应用处理器片上总线相连,文件系统用于在写入文件过程中Page的Tags信息的生成;外设数据流实时保存至协处理器的缓冲区,协处理器通过片上总线监听,暂存片上总线捕获的Page,将缓冲区内的数据替换该Page数据区;
具体包括以下步骤:
1)应用处理器操作系统启动,文件系统初始化完成,协处理器接收应用处理器及文件系统启动完成信号后进入同步通信状态,等待文件系统的操作信号;
2)调用文件系统的open()函数创建文件,获得文件句柄;
3)调用文件系统的write()函数向文件中写入外设采集数据,文件系统按固定文件大小向存储器中写入数据,其中,单次写入按Page大小进行,写入过程中文件系统仅生成Page的Tags信息,驱动层将Page的Tags信息拷贝至控制器的缓冲区;当协处理器获得数据写开始信号时,则开始监听片上总线的数据;
4)协处理器获取片上总线Page并暂存,然后将外设数据缓冲区内的数据按固定大小替换Page数据区,并向存储器发送替换后的Page;
5)当剩余写入文件大小小于等于0时,则文件写入结束,否则,则转至步骤3);
6)文件系统调用close()函数关闭该文件。


2.根据权利要求1所述的基于应用处理器片上总线控制的文件系统写入加速方法,其特征在于,在文件系统中建立与存储器驱动层底层通信机制,标志上层应用写入存储器的内容类型;对文件系统的write()函数体前后建立调用开始信号及结束信号,驱...

【专利技术属性】
技术研发人员:梅魁志龚良旭黄瀚霆程军朱印涛李亚飞常潘杨栋舒伟华谷新宇
申请(专利权)人:西安交通大学
类型:发明
国别省市:陕西;61

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1