【技术实现步骤摘要】
一种数字孪生系统复杂任务异构多核并行高效求解方法和系统
本专利技术属于电子工程和计算机科学领域,具体涉及一种数字孪生系统复杂任务异构多核并行高效求解方法和系统。
技术介绍
基于数字孪生驱动的设备健康管控、工艺仿真分析、产线运行状态监控已在智能制造中表现出强大的生命力,通过物理实体与虚拟场景的联动能够在反应物理车间/产线真实状态的同时实现对物理车间/产线的仿真预测,这种预测不仅可以涵盖设备层级、产线层级以及车间层级,而且可以实现以秒、分钟、小时等为尺度的仿真预测,以上仿真预测的复杂度完全可以称得上是数字孪生系统中的复杂任务。以上数字孪生技术应用中能够实现的功能均需要通过某种运算单元实现求解运算,其求解运算的效率与运算单元的性能密切相关,对于不同特性的任务,如果能有相对应的运算单元满足其运算将会提高求解效率,为此,本专利技术公开了一种数字孪生系统复杂任务异构多核并行高效求解方法和系统,该方法适用于Xilinx公司ZYNQ-7000SoC芯片,能够在一定程度上解决数字孪生系统复杂任务对并行求解的需求,提高数字孪生系统复杂任 ...
【技术保护点】
1.一种数字孪生系统复杂任务异构多核并行高效求解方法,其特征在于,包括:/n步骤(1)、设计数字孪生系统复杂任务异构多核架构及数字化描述模块,该模块首先搭建用于数字孪生系统复杂任务运行的异构多核架构,然后基于多元数组模型完成该异构多核架构的数字化描述,具体实现如下:/n①数字孪生系统复杂任务异构多核架构搭建:搭建的用于数字孪生系统复杂任务运行的异构多核架构包括用于并行求解的1个FPGA、4个MicroBlaze核,所述4个MicroBlaze核分别表示为MicroBlaze_1、MicroBlaze_2、MicroBlaze_3、MicroBlaze_4、2个ARM核,分别 ...
【技术特征摘要】
1.一种数字孪生系统复杂任务异构多核并行高效求解方法,其特征在于,包括:
步骤(1)、设计数字孪生系统复杂任务异构多核架构及数字化描述模块,该模块首先搭建用于数字孪生系统复杂任务运行的异构多核架构,然后基于多元数组模型完成该异构多核架构的数字化描述,具体实现如下:
①数字孪生系统复杂任务异构多核架构搭建:搭建的用于数字孪生系统复杂任务运行的异构多核架构包括用于并行求解的1个FPGA、4个MicroBlaze核,所述4个MicroBlaze核分别表示为MicroBlaze_1、MicroBlaze_2、MicroBlaze_3、MicroBlaze_4、2个ARM核,分别表示为ARM_1、ARM_2,用于核间通讯的BRAM、MailBox、OCM,以及用于程序存储和数据缓存的DDR和Flash;FPGA、MicroBlaze核、ARM核、DDR之间通过AXI总线完成交互;
②数字孪生系统复杂任务异构多核架构数字化描述:定义一个八元数组模型表示数字孪生系统复杂任务异构多核架构的数字化描述,即S_SoC={S_FPGA,S_MicroBlaze,S_ARM,S_AXI,S_MailBox,S_OCM,S_DDR,S_Flash},其中:
iS_FPGA为FPGA的数字化描述集合,包括FPGA性能指标的四元数组,即S_FPGA={S_FPGA_clb,S_FPGA_bram_clb,S_FPGA_clock,S_FPGA_rate},S_FPGA_clb表示FPGA中硬件资源的大小;S_FPGA_bram_clb描述了FPGA中BRAM缓存的大小;S_FPGA_clock描述了FPGA时钟主频,单位MHz;S_FPGA_rate描述了FPGA从Flash中加载配置文件的速率,即Flash的读写速率,单位bps;
iiS_MicroBlaze为MicroBlaze核的数字化描述集合,包括MicroBlaze核性能指标的二元数,即S_MicroBlaze={S_MicroBlaze_axirate,S_MicroBlaze_clock},S_MicroBlaze_axirate表示MicroBlaze核与AXI总线交互的带宽速率,单位bps;S_MicroBlaze_clock描述了MicroBlaze核时钟主频,单位MHz;每个MicroBlaze核的数字化描述集合相同;
iiiS_ARM为ARM核的数字化描述集合,包括ARM核性能指标的二元数组,即S_ARM={S_ARM_axirate,S_ARM_clock},S_ARM_axirate表示ARM核与AXI总线交互的带宽速率,单位bps;S_ARM_clock描述了ARM核时钟主频,单位MHz;每个ARM核的数字化描述集合相同;
ivS_AXI为AXI总线的数字化描述集合,包括AXI总线性能指标的一元数组,即S_AXI={S_AXI_axirate},S_AXI_axirate表示AXI总线的最大带宽速率;
vS_MailBox为MailBox的数字化描述集合,包括MailBox性能指标的一元数组,即S_MailBox={S_MailBox_size},S_MailBox_size表示MailBox的空间大小,该指标影响到MicroBlaze核间通信时的单次通信量;
viS_OCM为OCM的数字化描述集合,包括OCM性能指标的一元数组,即S_OCM={S_OCM_size},S_OCM_size表示OCM的空间大小,该指标影响到ARM核间通信时的单次通信量;
viiS_DDR为DDR的数字化描述集合,包括DDR主要性能指标的二元数组,即S_DDR={S_DDR_rate,S_DDR_size},S_DDR_rate表示DDR的读写速率,单位bps;S_DDR_size则表示DDR的空间大小;
viiiS_Flash为Flash的数字化描述集合,包括Flash性能指标的二元数组,即S_Flash={S_Flash_rate,S_Flash_size},S_Flash_rate表示Flash的读写速率,单位bps;S_Flash_size则表示Flash的空间大小;
步骤(2)、设计数字孪生系统复杂任务异构多核并行高效求解决策模块,该模块基于异构多核架构的数字化描述完成当前异构多核架构中空闲核的确定,并将到达的数字孪生复杂任务调度到该空闲核上进行求解运算,具体实现如下:
①ARM_1中移植嵌入式Linux系统,ARM_1以多线程运行数字孪生系统复杂任务异构多核并行求解决策模块,以提高对多任务并行求解决策的效率,并将数字孪生系统复杂任务异构多核架构数字化描述作为其输入;
②定义任务i的求解运算尝试次数为Ci,当任务i到达时,初始化Ci为0;
③当此时FPGA硬件资源与任务i所需FPGA硬件资源之和小于S_FPGA_clb时,将任务i调度到FPGA上进行求解运算,并返回②;否则,执行④;
④当此时MicroBlaze_1的S_MicroBlaze_axirate等于0,表示MicroBlaze_1空闲,将任务i调度到MicroBlaze_1上进行求解运算,并返回②;否则,执行⑤;
⑤当此时MicroBlaze_2的S_MicroBlaze_axirate等于0,表示MicroBlaze_2空闲,将任务i调度到MicroBlaze_2上进行求解运算,并返回②;否则,执行⑥;
⑥当此时MicroBlaze_3的S_MicroBlaze_axirate等于0,表示MicroBlaze_3空闲,将任务i调度到MicroBlaze_3上进行求解运算,并返回②;否则,执行⑦;
⑦当此时MicroBlaze_4的S_MicroBlaze_axirate等于0,表示MicroBlaze_4空闲,将任务i调度到MicroBlaze_4上进行求解运算,并返回②;否则,执行⑧;
⑧当此时ARM_2的S_ARM_axirate等于0,表示ARM_2空闲,将任务i调度到ARM_2上进行求解运算,并返回②;否则,将Ci加1,并执行⑨;
⑨如果Ci大于等于设定值,表明任务i的求解运算尝试次数已超过设定值,此时将任务i丢弃,并返回②,否则,返回③。
2.如权利要求1所述的一种数字孪生系统复杂任务异构多核并行高效求解方法,其特征在于,该方法适用于Xilinx公司ZYNQ-7000SoC芯片。
3.一种数字孪生系...
【专利技术属性】
技术研发人员:陶飞,邹孝付,左颖,
申请(专利权)人:北京航空航天大学,
类型:发明
国别省市:北京;11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。