多核流水线工作方式的海图数据处理与显示系统及方法

文档序号:9765799阅读:536来源:国知局
多核流水线工作方式的海图数据处理与显示系统及方法
【技术领域】
[0001]本发明涉及海图数据与显示的处理系统,特指一种多核流水线工作方式的海图数据处理与显示系统及方法。
【背景技术】
[0002]现有海图数据处理与显示大都使用一个CPU内核来处理,这样使得海图数据处理与显示的速度较慢,为加快数据处理与显示的速度,现有做法中还有使用比较大的中间数据进行海图数据的处理与电子海图的显示,这样的的做法可以加快海图的显示速度,但是使用了过大的内存或数据存储空间,需要较高的硬件配置。

【发明内容】

[0003]本发明的目的在于克服现有技术的缺陷,提供一种多核流水线工作方式的海图数据处理与显示系统及方法,解决现有海图数据处理与显示中存在的显示速度慢和占用过大内存的问题。
[0004]实现上述目的的技术方案是:
[0005]本发明一种多核流水线工作方式的海图数据处理与显示方法,包括:
[0006]将多核中的内核A与读取海图数据任务进行绑定,将多核中的内核B与处理画图逻辑任务进行绑定;
[0007]通过所述内核A读取海图数据并按照读取的顺序存入至缓存数据结构中,同时通过所述内核B按照存入顺序读取所述缓存数据结构中的海图数据进行画图处理及显示,以实现与所述内核A协同完成海图的绘制命令。
[0008]采用内核A和内核B并行运行,使得数据的读取和海图的显示同时进行,与现有的单核工作方式或者消耗内存技术来比,本发明在节约内存空间的情况下大大的提高了显示速度。本发明能够有效防止多核处理器上出现处理器空闲浪费的现象,有效的利用空闲资源来达到提升显示速度的目的。
[0009]本发明多核流水线工作方式的海图数据处理与显示方法的进一步改进在于,通过所述内核A读取海图数据,包括:
[0010]激活所述内核A以令所述内核A根据显示参数进行读取海图数据任务;
[0011]将所读取的海图数据转化为海图元素并按照转化的顺序将海图元素存入到缓存数据结构中,直至完成读取海图数据任务;
[0012]所述内核A进入待命状态等待激活。
[0013]本发明多核流水线工作方式的海图数据处理与显示方法的进一步改进在于,同时通过所述内核B按照存入顺序读取所述缓存数据结构中的海图数据进行画图处理及显示,包括:
[0014]激活所述内核B以令所述内核B进行画图任务;
[0015]所述内核B持续扫描所述缓存数据结构中是否存有海图元素,若存在海图元素,则按照所述海图元素存入的顺序进行读取并作画图处理;若不存在海图元素,则查看所述内核A是否完成读取海图数据任务,若所述内核A完成读取海图数据任务,则进行刷新显示经画图处理所形成的海图图像;若所述内核A未完成读取海图数据任务,则继续扫描所述缓存数据结构;
[0016]所述内核B进行刷新显示海图图像后进入待命状态等待激活。
[0017]本发明多核流水线工作方式的海图数据处理与显示方法的进一步改进在于,所述内核B按照所述海图元素存入顺序进行读取并作画图处理时,将所读取的所述海图元素从所述缓存数据结构中删除。
[0018]本发明多核流水线工作方式的海图数据处理与显示方法的进一步改进在于,还包括:
[0019]将所述缓存数据结构划分为队列缓存区、读取任务完成标识位、以及当前海图元素数量标识位;
[0020]通过所述内核A向所述队列缓存区内按照顺序写入海图元素,同时通过所述内核B从所述队列缓存区内按照顺序读取海图元素;
[0021]在所述内核A向所述队列缓存区内写入海图元素时,每存入一个海图元素即将当前的当前海图元素数量标识位加I;
[0022]在所述内核B从所述队列缓存区内读取海图元素时,每读取一个海图元素即将当前的当前海图元素数量标识位减I;
[0023]所述内核A在完成读取海图数据任务时,向所述读取任务完成标识位写入已完成以供所述内核B读取。
[0024]本发明还提供了一种多核流水线工作方式的海图数据处理与显示系统,包括初始化模块、读取海图数据任务模块、以及处理海图逻辑任务模块;
[0025]所述初始化模块与所述读取海图数据任务模块和所述处理海图逻辑任务模块连接,用于为所述读取海图数据任务模块绑定多核中的内核A,为所述处理海图逻辑任务模块绑定多核中的内核B;
[0026]所述读取海图数据任务模块用于通过绑定的所述内核A读取海图数据并将所读取的海图数据按照读取顺序存入至缓存数据结构中;以及
[0027]所述处理海图逻辑任务模块用于通过绑定的所述内核B按照存入顺序从所述缓存数据结构中读取海图数据进行画图处理及显示,以实现与所述内核A协同完成海图的绘制命令。
[0028]本发明多核流水线工作方式的海图数据处理与显示系统的进一步改进在于,所述缓存数据结构与所述读取海图数据任务模块连接,所述读取海图数据任务模块包括读取子模块和转化子模块;
[0029]所述读取子模块用于激活所述内核A以令所述内核A根据显示参数进行读取海图数据任务;
[0030]所述转换子模块与所述读取子模块连接,所述转换子模块用于通过所述内核A将所读取的海图数据转化为海图元素并将所述海图元素按照转化的顺序存入到所述缓存数据结构中,直至完成读取海图数据任务并使所述内核A进入待命状态等待激活。
[0031]本发明多核流水线工作方式的海图数据处理与显示系统的进一步改进在于,所述处理海图逻辑任务模块与所述缓存数据结构连接,用于激活所述内核B以令所述内核B进行画图任务,所述内核B持续扫描所述缓存数据结构中是否存有海图元素,若存在海图元素,则按照所述海图元素存入的顺序进行读取并作画图处理;若不存在海图元素,则查看所述内核A是否完成读取海图数据任务,若所述内核A完成读取海图数据任务,则进行刷新显示经画图处理形成的海图图像并进入待命状态等待激活;若所述内核A未完成读取海图数据任务,则继续扫描所述缓存数据结构。
[0032]本发明多核流水线工作方式的海图数据处理与显示系统的进一步改进在于,所述处理海图逻辑任务模块通过所述内核B读取所述缓存数据结构中的海图元素后将读取的海图元素从所述缓存数据结构中删除。
[0033]本发明多核流水线工作方式的海图数据处理与显示系统的进一步改进在于,所述缓存数据结构内划分为队列缓存区、读取任务完成标识位、以及当前海图元素数量标识位,所述队列缓存区用于按照顺序存储海图元素所述读取任务完成标识位用于标识读取海图数据任务是否完成;所述当前海图元素数量标识位用于显示当前队列缓存区内的海图元素的数量。
【附图说明】
[0034]图1为本发明多核流水线工作方式的海图数据处理与显示系统的系统图。
[0035]图2为本发明多核流水线工作方式的海图数据处理与显示系统中缓存数据结构缓存区的数据结构示意图。
[0036]图3为本发明多核流水线工作方式的海图数据处理与显示方法中内核A和内核B协同完成画图的流程图。
[0037]图4为本发明多核流水线工作方式的海图数据处理与显示系统及方法中并行流水线方式协作处理的职能分配图。
【具体实施方式】
[0038]下面结合附图和具体实施例对本发明作进一步说明。
[0039]本发明提供了一种本发明多核流水线工作方式的海图数据处理与显示系统及方法,主要应用于船舶航行时提供电子海图的显示,能够在使用与源数据大小相同空间的情况下,利用多核CPU并行流水线方式
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1