嵌入式并行计算系统以及嵌入式并行计算方法技术方案

技术编号:2856605 阅读:227 留言:0更新日期:2012-04-11 18:40
本发明专利技术涉及一种嵌入式并行计算系统以及嵌入式并行计算方法。其中,包括主机和应用子系统,该主机具有主机处理器、主机存储器和主机总线,该应用子系统包括应用处理器、应用存储器和应用总线,主机存储器中存储有包括初始化程序和中断任务程序在内的主机程序,该主机程序中包括具有主机任务和子系统任务的嵌入式并行程序,该主机任务具有主任务和主机子任务,该子系统任务具有子任务,该应用子系统中进一步包括任务控制寄存器、任务状态寄存器以及具有任务管理器的多任务操作系统。在该嵌入式并行计算系统中执行本发明专利技术的嵌入式并行计算方法。该系统和方法可以在以简单的方式来避免复杂的并行程序设计的同时,充分利用应用处理器的计算能力。

【技术实现步骤摘要】

本专利技术涉及一种计算系统以及计算方法,特别是涉及一种。
技术介绍
目前,在嵌入式领域,尤其是手机的嵌入式领域,软件只能在需要完成特定应用时(如拍照)使用应用处理器。软件通过读写应用处理器的寄存器或发送命令给应用处理器,应用处理器完成特定操作后将操作结果放到应用存储器中,然后通知软件将操作结果读出。在做其他计算操作时,软件不能使用应用处理器。而目前许多应用处理器内部都有功能较强大的CPU内核。上述方法没有充分利用应用处理器内部的计算能力。而且,目前的大型并行系统是针对计算性能要求远远高于嵌入式系统的场合。其采用的是一种对等机制,即,不存在主机系统和子系统这样的概念,各个系统对等地进行计算,而之间所进行的通信仅仅是一些计算公式之类的信息,这样其可以很快地执行各种处理。但是,由于设计和使用这些系统要求开发人员学习复杂的并行计算理论,而且,并行程序设计对大多数软件开发人员来说是非常复杂的。这样,使用传统的方法来解决嵌入式系统中应用处理器空闲计算能力的使用问题是不合适的。
技术实现思路
为克服以上问题,本专利技术提出一种嵌入式并行计算系统以及一种嵌入式并行计算方法。本专利技术的嵌入式并行计算系统,包括主机和应用子系统,该主机具有主机处理器、主机存储器和主机总线,该应用子系统包括应用处理器、应用存储器和应用总线,主机存储器中存储有包括初始化程序和中断任务程序在内的主机程序,该主机程序中包括具有主机任务和子系统任务的嵌入式并行程序,该主机任务具有主任务和主机子任务,该子系统任务具有子任务,该应用子系统中进一步包括任务控制寄存器、任务状态寄存器以及具有任务管理器的多任务操作系统。其中,主机处理器在执行嵌入式并行程序的主机任务时,可以通过读任务状态寄存器了解应用子系统的状态,并根据应用子系统的状态通过在应用子系统的任务控制寄存器中写入命令通知应用子系统的任务管理器创建/销毁任务,并可以通过读写应用子系统的应用存储器与应用子系统交互数据,应用处理器根据任务管理器创建的任务执行主机处理器写入应用存储器中的嵌入式并行程序的子系统任务的任务代码,并将执行结果写入应用存储器。在上述嵌入式并行计算系统中执行嵌入式并行计算方法,其包括包括以下步骤步骤一,配置应用子系统使用初始化程序初始化应用子系统,启动其多任务操作系统,在启动完毕后写任务状态寄存器通知主机应用子系统已准备完毕并等待任务请求;步骤二,创建/启动新任务主机在确认子系统准备完毕后,从主机存储器中读取子系统任务的任务代码,将其写入应用存储器,并发送任务请求到任务控制寄存器中通知任务管理器创建/启动新任务;步骤三,并行处理主机任务和子系统任务在应用处理器根据任务管理器创建/启动的新任务执行应用存储器中的子系统的任务代码时,主机处理器执行主机任务的任务代码;以及步骤四,结束/销毁任务应用处理器将执行结果写入应用存储器,并将中断信号发送给主机处理器,主机处理器在接收到中断信号后调用中断任务程序确认任务结束,将结束/销毁任务的请求设置到应用处理器的任务控制寄存器,任务管理器根据该请求结束/销毁任务。与现有技术相比,本专利技术提出了一种嵌入式并行计算系统和并行计算方法,该嵌入式并行计算系统包括主机和应用子系统,并且所执行的嵌入式并行程序存储在主机中。相对于现有技术中采用的对等机制,本专利技术的嵌入式并行计算系统和并行计算方法可以在以简单的方式来避免复杂的并行程序设计的同时,充分利用应用处理器的计算能力。附图说明图1是本专利技术嵌入式并行计算系统的示意图。图2是普通程序的结构图。图3是本专利技术的嵌入式并行程序的结构图。图4是本专利技术嵌入式并行计算系统执行的嵌入式并行计算方法的流程图。具体实施例方式图1是本专利技术嵌入式并行计算系统的示意图。本专利技术的嵌入式并行计算系统1由主机处理器11、主机总线12、主机存储器13和应用子系统14构成。当本系统为手机系统时,手机主机包括主机处理器11、主机总线12和主机存储器13,主机存储器13是位于手机电路板上的内存。其中,主机总线12是用于主机处理器11、主机存储器13以及应用子系统14之间的通信线路。主机处理器11可以通过主机总线12访问主机存储器13以及应用子系统14。主机存储器13用于存储嵌入式并行程序,该嵌入式并行程序中包括主机任务和子系统任务的任务代码,嵌入式并行程序的主机任务的任务代码是主机处理器11所执行的主机任务的任务代码。进一步,应用子系统14由应用处理器141,应用总线142和应用存储器143构成。其中,应用存储器143用于存储应用处理器141的任务代码,应用处理器141用于执行存储在应用存储器143中的任务代码,应用总线142用于应用处理器141和应用存储器143之间的通信。其中,应用存储器143中的任务代码是由主机处理器11从主机存储器13中读出并写入应用子系统14的应用存储器143中的子系统任务的任务代码。在图1所示的嵌入式并行计算系统1中,主机处理器11可以通过主机总线12访问主机存储器13、任务控制寄存器(图未示)和应用存储器143。应用处理器141可以访问任务状态寄存器和任务控制寄存器,还可以通过应用子系统14内部的应用总线142访问应用存储器143。在应用子系统14中具有自己的多任务操作系统。该多任务操作系统位于应用存储器141中,包含一个任务管理器。该任务管理器能够检查应用子系统14的任务控制寄存器的状态,并根据该任务控制寄存器的值来创建或销毁任务。该任务控制寄存器的值是由主机处理器11通过写任务控制寄存器而设置的。当任务管理器检查到任务控制寄存器的值等于某个二进制数时,其创建/销毁任务,从而完成对应用子系统的任务控制。该二进制数为子系统预先设定的数值,可以任意设定。应用处理器141所要执行的每个任务的任务代码都保存在应用存储器143中。在应用处理器141执行保存在应用存储器143中的任务代码时,主机处理器11也执行存储在主机存储器13中的任务代码。在描述本专利技术并行计算之前,我们先将参照图2和图3比较一下在本专利技术的计算机系统中所运行的嵌入式并行程序和普通程序的结构。首先看一下普通程序结构。如图2所示,一个普通程序只包含主机任务,该主机任务中包含了多个任务。普通程序由一个主任务(或主线程)和多个子任务(或子线程)组成。主任务对应一个主函数,每个子任务也各对应一个任务函数(子函数)。普通程序中主任务和子任务共用主机处理器11,因此主函数和子函数被任务连接器连接到一个可执行文件的一个地址空间。在主机处理器11要执行普通程序时,只要将连接到该地址空间的可执行文件载入主机存储器13,然后从程序入口点执行该普通程序即可。主任务中不需要考虑子任务代码的载入问题。如图3所示,一个嵌入式并行程序由主机任务和子系统任务组成。主机任务包含主任务和主机子任务,子系统任务只包含子任务。主机和应用子系统14可以通过下面的机制交互信息和数据主机处理器11通过写应用处理器141的任务控制寄存器来传送命令,在任务管理器检查任务控制寄存器时,根据主机处理器11的命令来创建/销毁任务。应用处理器141通过写任务状态寄存器通知主机自己的状态,并且,主机处理器11通过读任务状态寄存器了解应用子系统14当前所处的状态,例如多任务操作系统的初始化已经准备完毕、等待任务请求等。本文档来自技高网...

【技术保护点】
一种嵌入式并行计算系统,包括主机和应用子系统,该主机具有主机处理器、主机存储器和主机总线,该应用子系统包括应用处理器、应用存储器和应用总线,主机存储器中存储有包括初始化程序和中断任务程序在内的主机程序,其特征在于:该主机程序中包括具 有主机任务和子系统任务的嵌入式并行程序,该主机任务具有主任务和主机子任务,该子系统任务具有子任务;该应用子系统中进一步包括任务控制寄存器、任务状态寄存器以及具有任务管理器的多任务操作系统,其中,主机处理器在执行嵌入式并行程序 的主机任务时,可以通过读任务状态寄存器了解应用子系统的状态,并根据应用子系统的状态通过在应用子系统的任务控制寄存器中写入命令通知应用子系统的任务管理器创建/销毁任务,并可以通过读写应用子系统的应用存储器与应用子系统交互数据,应用处理器根据任务管理器创建的任务执行主机处理器写入应用存储器中的嵌入式并行程序的子系统任务的任务代码,并将执行结果写入应用存储器。

【技术特征摘要】
1.一种嵌入式并行计算系统,包括主机和应用子系统,该主机具有主机处理器、主机存储器和主机总线,该应用子系统包括应用处理器、应用存储器和应用总线,主机存储器中存储有包括初始化程序和中断任务程序在内的主机程序,其特征在于该主机程序中包括具有主机任务和子系统任务的嵌入式并行程序,该主机任务具有主任务和主机子任务,该子系统任务具有子任务;该应用子系统中进一步包括任务控制寄存器、任务状态寄存器以及具有任务管理器的多任务操作系统,其中,主机处理器在执行嵌入式并行程序的主机任务时,可以通过读任务状态寄存器了解应用子系统的状态,并根据应用子系统的状态通过在应用子系统的任务控制寄存器中写入命令通知应用子系统的任务管理器创建/销毁任务,并可以通过读写应用子系统的应用存储器与应用子系统交互数据,应用处理器根据任务管理器创建的任务执行主机处理器写入应用存储器中的嵌入式并行程序的子系统任务的任务代码,并将执行结果写入应用存储器。2.如权利要求1所述的嵌入式并行计算系统,其特征在于,该主机程序中进一步具有软件开发包,该软件开发包包括任务组合器,用于将子系统的目标文件组合成为子系统库任务,每个子系统库任务可以包含一个或多个子任务函数的任务代码,并且在子系统库任务中保存有描述子任务的数据结构;任务解析/加载函数库,用于在主机程序创建子系统任务时解析出子系统库任务的任务代码,以及用于主机程序创建/销毁子系统任务;子系统任务管理函数库,在任务管理器创建/销毁子系统任务时调用;主机和子系统通信函数库,执行主机处理器和应用子系统之间的相互发送、接收命令和共享数据;以及主机任务和子系统任务通信函数库,用于完成主机任务和子系统任务之间的通信和同步。3....

【专利技术属性】
技术研发人员:周政军
申请(专利权)人:北京中星微电子有限公司
类型:发明
国别省市:11[中国|北京]

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

1