一种数字孪生系统复杂任务可配置高效求解方法和系统技术方案

技术编号:23149759 阅读:27 留言:0更新日期:2020-01-18 13:43
本发明专利技术公开了一种数字孪生系统复杂任务可配置高效求解方法和系统,该方法适用于Xilinx公司Virtex‑5系列FPGA芯片,包括:设计可配置算子模块,该模块包括完成数学运算的加、减、乘、除四个运算单元,每个运算单元均支持单、双精度浮点预算,且每个运算单元对外接口均包括使能、参数1、参数2、参数3、参数位宽、忙状态指示、运算精度;设计任务求解模块,该模块首先建立BRAM接收数字孪生系统发送的数据帧并完成帧格式正确性判断,然后解析数据帧并完成参数1和参数2的浮点转换,最后调用相应的运算单元进行计算,将计算结果重新组帧并发送给数字孪生系统。本发明专利技术可根据需求配置不同的运算求解模式,能够在一定程度上实现数字孪生系统复杂任务的高效求解。

An efficient method and system for complex task configuration of digital twin system

【技术实现步骤摘要】
一种数字孪生系统复杂任务可配置高效求解方法和系统
本专利技术属于电子工程和计算机科学领域,具体涉及一种数字孪生系统复杂任务可配置高效求解方法和系统。
技术介绍
数字孪生技术作为能够有力促进智能制造发展的关键使能技术已得到国内外广大学者和企业的关注、研究和应用,基于数字孪生驱动的物理实体仿真预测是数字孪生领域中的研究重点,包括单个设备的仿真预测、整个产线工艺的仿真预测以及整个车间/工厂生产过程的仿真预测。数字孪生系统的仿真预测涉及到单个设备、产线和车间,工艺复杂、设备异构等,可以说数字孪生系统的仿真预测是一个复杂任务。从另一个角度分析,数字孪生系统复杂任务的数学本质可以理解为一个复杂算法,该算法由基本的加、减、乘、除组成,如果能够对这些基本的数学运行进行加速,那么数字孪生系统复杂任务的求解效率将会得到提升;同时算法中参与运算的参数位宽、运算精度各不相同,如果能够对运算操作进行配置将会进一步提升数字孪生系统复杂任务的求解效率。
技术实现思路
本专利技术要解决的技术问题为:提供一种数字孪生系统复杂任务可配置高效求解方法和系统,为此,本专利技术公开了一种数字孪生系统复杂任务可配置高效求解方法,该方法适用于Xilinx公司Virtex-5系列FPGA芯片,可根据需求配置不同的运算求解模式,能够在一定程度上实现数字孪生系统复杂任务的高效求解。该方法涵盖了可配置算子模块设计、任务求解模块设计,可根据需求配置不同的运算求解模式,能够在一定程度上实现数字孪生系统复杂任务的高效求解。本专利技术解决其技术问题是采取以下技术方案实现的:一种数字孪生系统复杂任务可配置高效求解方法,包括:(1)设计可配置算子模块,该模块包括完成数学运算的加、减、乘、除四个运算单元,每个运算单元均支持单、双精度浮点预算,且每个运算单元对外接口均包括使能、参数1、参数2、参数3、参数位宽、忙状态指示、运算精度,具体实现如下:①调用FPGA自带的原语(primitive)来设计数学运算状态机以实现加、减、乘、除四个运算功能;②对每个运算功能进行封装以形成彼此独立的运算单元,每个运算单元封装后的接口均包括使能、参数1、参数2、参数3、参数位宽、忙状态指示、运算精度,其中使能、参数1、参数2、参数位宽、运算精度为输入接口,参数3和忙状态指示为输出接口;③使能接口的位宽为1bit,当使能接口的输入为二进制'0'时,表示启用该运算单元;当使能接口的输入为二进制'1'时,表示不启用该运算单元④参数1接口的位宽为32bit或64bit,根据参数位宽接口确定,参数1表示参与运算的第一个参数,如在减法运算中表示被减数、在除法运算中表示被除数;参数1接口的输入必须为符合IEEE754标准的浮点数;⑤参数2接口的位宽为32bit或64bit,根据参数位宽接口确定,参数2表示参与运算的第二个参数,如在减法运算中表示减数、在除法运算中表示除数;参数2接口的输入必须为符合IEEE754标准的浮点数;⑥参数3接口的位宽为32bit或64bit,根据参数位宽接口确定,参数3表示运算结果,其数据类型为符合IEEE754标准的浮点数;⑦参数位宽接口的位宽为1bit,决定着参数1、参数2和参数3接口的位宽,即当参数位宽接口的输入为二进制'0'时,表示参数1、参数2和参数3接口的位宽为32bit;当参数位宽接口的输入为二进制'1'时,表示参数1、参数2和参数3接口的位宽为64bit;⑧忙状态指示接口的位宽为1bit,当其输出为二进制'0'时,表示该运算单元处于空闲中;当其输出为二进制'1'时,表示该运算单元正在执行运算任务;⑨运算精度接口的位宽为1bit,当其输入为二进制'0'时,表示该运算单元执行单精度浮点运算;当其输入为二进制'1'时,表示该运算单元执行双精度浮点运算;(2)设计任务求解模块,该模块首先建立BRAM接收数字孪生系统发送的数据帧并完成帧格式正确性判断,然后解析数据帧并完成参数1和参数2的浮点转换,最后调用相应的运算单元进行计算,将计算结果重新组帧并发送给数字孪生系统,具体实现如下:①定义数字孪生系统与任务求解模块之间数据传输的帧格式,具体包括帧头、数据流动方向、参数1、参数2、参数3、参数位宽、运算精度、运算类型、校验、帧尾;②如①所述的帧格式,其中帧头和帧尾用于标识一个数据帧的起始和结尾,位宽和具体填充内容可自行确定;③如①所述的帧格式,数据流动方向字段的位宽为1bit,当其为二进制'0'时,表示数据帧由数字孪生系统发往任务求解模块,此时参数3字段填充0;当其为二进制'1'时,表示数据帧由任务求解模块回传给数字孪生系统,此时参数1字段和参数2字段填充0;④如①所述的帧格式,参数1、参数2、参数3、参数位宽、运算精度字段分别与(1)中运算单元接口中的参数1、参数2、参数3、参数位宽、运算精度接口的位宽和功能一致;⑤如①所述的帧格式,运算类型字段的位宽为2bit,当其输入为十六进制00时,表示执行加运算;当其输入为十六进制01时,表示执行减运算;当其输入为十六进制02时,表示执行乘运算;当其输入为十六进制03时,表示执行除运算;⑥如①所述的帧格式,校验字段目的是验证数据帧的完整性,确保接收数据的正确性,具体校验方式和位宽可自行确定;⑦建立BRAM1接收数字孪生系统发送过来的数据帧,并完成帧格式正确性判断,如果帧格式正确性判断不通过,则直接丢弃该数据帧;可根据⑥中自行确定的校验方式完成帧格式的正确性判断;⑧解析BRAM1中数据帧并得到参数1、参数2、参数位宽、运算精度、运算类型;如果参数1和参数2不符合IEEE754浮点数标准,则需要首先完成参数1和参数2的基于IEEE754标准的浮点数转换;⑨根据运算类型调用相应的运算单元执行运算任务,如果该运算单元的忙状态指示接口输出为二进制'0',则将该运算单元的使能接口赋予二进制'0'以启用该运算单元,否则,运算任务处于等待中;⑩建立BRAM2接收运算单元反馈的运算结果,按照①中定义的帧格式将运算结果填充到参数3字段中并重新组帧返回给数字孪生系统。本专利技术设计的一种数字孪生系统复杂任务可配置高效求解方法,该方法适用于Xilinx公司Virtex-5系列FPGA芯片。本专利技术还提出一种数字孪生系统复杂任务可配置高效求解系统,包括:可配置算子模块和任务求解模块;其中:可配置算子模块,包括完成数学运算的加、减、乘、除四个运算单元,每个运算单元均支持单、双精度浮点预算,且每个运算单元对外接口均包括使能、参数1、参数2、参数3、参数位宽、忙状态指示、运算精度,具体实现如下:①调用FPGA自带的原语(primitive)来设计数学运算状态机以实现加、减、乘、除四个运算功能;②对每个运算功能进行封装以形成彼此独立的运算单元,每个运算单元封装后的接口均包括使能、参数1、参数2、参数3、参数位宽、忙状态指示、运算精度,其中使能、参数1、参数2、参数位宽、运算精度为输入接口,参数3和忙状本文档来自技高网...

【技术保护点】
1.一种数字孪生系统复杂任务可配置高效求解方法,其特征在于,包括:/n步骤(1)、设计可配置算子模块,该模块包括完成数学运算的加、减、乘、除四个运算单元,每个运算单元均支持单、双精度浮点预算,且每个运算单元对外接口均包括使能、参数1、参数2、参数3、参数位宽、忙状态指示、运算精度,具体实现如下:/n①调用FPGA自带的原语(primitive)来设计数学运算状态机以实现加、减、乘、除四个运算功能;/n②对每个运算功能进行封装以形成彼此独立的运算单元,每个运算单元封装后的接口均包括使能、参数1、参数2、参数3、参数位宽、忙状态指示、运算精度,其中使能、参数1、参数2、参数位宽、运算精度为输入接口,参数3和忙状态指示为输出接口;/n③使能接口的位宽为1bit,当使能接口的输入为二进制'0'时,表示启用该运算单元;当使能接口的输入为二进制'1'时,表示不启用该运算单元;/n④参数1接口的位宽为32bit或64bit,根据参数位宽接口确定,参数1表示参与运算的第一个参数,在减法运算中表示被减数、在除法运算中表示被除数;参数1接口的输入必须为符合IEEE 754标准的浮点数;/n⑤参数2接口的位宽为32bit或64bit,根据参数位宽接口确定,参数2表示参与运算的第二个参数,在减法运算中表示减数、在除法运算中表示除数;参数2接口的输入必须为符合IEEE 754标准的浮点数;/n⑥参数3接口的位宽为32bit或64bit,根据参数位宽接口确定,参数3表示运算结果,其数据类型为符合IEEE 754标准的浮点数;/n⑦参数位宽接口的位宽为1bit,决定着参数1、参数2和参数3接口的位宽,即当参数位宽接口的输入为二进制'0'时,表示参数1、参数2和参数3接口的位宽为32bit;当参数位宽接口的输入为二进制'1'时,表示参数1、参数2和参数3接口的位宽为64bit;/n⑧忙状态指示接口的位宽为1bit,当其输出为二进制'0'时,表示该运算单元处于空闲中;当其输出为二进制'1'时,表示该运算单元正在执行运算任务;/n⑨运算精度接口的位宽为1bit,当其输入为二进制'0'时,表示该运算单元执行单精度浮点运算;当其输入为二进制'1'时,表示该运算单元执行双精度浮点运算;/n步骤(2)、设计任务求解模块,该模块首先建立BRAM接收数字孪生系统发送的数据帧并完成帧格式正确性判断,然后解析数据帧并完成参数1和参数2的浮点转换,最后调用相应的运算单元进行计算,将计算结果重新组帧并发送给数字孪生系统,具体实现如下:/n①定义数字孪生系统与任务求解模块之间数据传输的帧格式,具体包括帧头、数据流动方向、参数1、参数2、参数3、参数位宽、运算精度、运算类型、校验、帧尾;/n②根据①所述的帧格式,其中帧头和帧尾用于标识一个数据帧的起始和结尾,位宽和具体填充内容自行确定;/n③根据①所述的帧格式,数据流动方向字段的位宽为1bit,当其为二进制'0'时,表示数据帧由数字孪生系统发往任务求解模块,此时参数3字段填充0;当其为二进制'1'时,表示数据帧由任务求解模块回传给数字孪生系统,此时参数1字段和参数2字段填充0;/n④根据①所述的帧格式,参数1、参数2、参数3、参数位宽、运算精度字段分别与(1)中运算单元接口中的参数1、参数2、参数3、参数位宽、运算精度接口的位宽和功能一致;/n⑤根据①所述的帧格式,运算类型字段的位宽为2bit,当其输入为十六进制00时,表示执行加运算;当其输入为十六进制01时,表示执行减运算;当其输入为十六进制02时,表示执行乘运算;当其输入为十六进制03时,表示执行除运算;/n⑥根据①所述的帧格式,校验字段目的是验证数据帧的完整性,确保接收数据的正确性,具体校验方式和位宽可自行确定;/n⑦建立BRAM1接收数字孪生系统发送过来的数据帧,并完成帧格式正确性判断,如果帧格式正确性判断不通过,则直接丢弃该数据帧;根据⑥中自行确定的校验方式完成帧格式的正确性判断;/n⑧解析BRAM1中数据帧并得到参数1、参数2、参数位宽、运算精度、运算类型;如果参数1和参数2不符合IEEE 754浮点数标准,则需要首先完成参数1和参数2的基于IEEE754标准的浮点数转换;/n⑨根据运算类型调用相应的运算单元执行运算任务,如果该运算单元的忙状态指示接口输出为二进制'0',则将该运算单元的使能接口赋予二进制'0'以启用该运算单元,否则,运算任务处于等待中;/n⑩建立BRAM2接收运算单元反馈的运算结果,按照①中定义的帧格式将运算结果填充到参数3字段中并重新组帧返回给数字孪生系统。/n...

【技术特征摘要】
1.一种数字孪生系统复杂任务可配置高效求解方法,其特征在于,包括:
步骤(1)、设计可配置算子模块,该模块包括完成数学运算的加、减、乘、除四个运算单元,每个运算单元均支持单、双精度浮点预算,且每个运算单元对外接口均包括使能、参数1、参数2、参数3、参数位宽、忙状态指示、运算精度,具体实现如下:
①调用FPGA自带的原语(primitive)来设计数学运算状态机以实现加、减、乘、除四个运算功能;
②对每个运算功能进行封装以形成彼此独立的运算单元,每个运算单元封装后的接口均包括使能、参数1、参数2、参数3、参数位宽、忙状态指示、运算精度,其中使能、参数1、参数2、参数位宽、运算精度为输入接口,参数3和忙状态指示为输出接口;
③使能接口的位宽为1bit,当使能接口的输入为二进制'0'时,表示启用该运算单元;当使能接口的输入为二进制'1'时,表示不启用该运算单元;
④参数1接口的位宽为32bit或64bit,根据参数位宽接口确定,参数1表示参与运算的第一个参数,在减法运算中表示被减数、在除法运算中表示被除数;参数1接口的输入必须为符合IEEE754标准的浮点数;
⑤参数2接口的位宽为32bit或64bit,根据参数位宽接口确定,参数2表示参与运算的第二个参数,在减法运算中表示减数、在除法运算中表示除数;参数2接口的输入必须为符合IEEE754标准的浮点数;
⑥参数3接口的位宽为32bit或64bit,根据参数位宽接口确定,参数3表示运算结果,其数据类型为符合IEEE754标准的浮点数;
⑦参数位宽接口的位宽为1bit,决定着参数1、参数2和参数3接口的位宽,即当参数位宽接口的输入为二进制'0'时,表示参数1、参数2和参数3接口的位宽为32bit;当参数位宽接口的输入为二进制'1'时,表示参数1、参数2和参数3接口的位宽为64bit;
⑧忙状态指示接口的位宽为1bit,当其输出为二进制'0'时,表示该运算单元处于空闲中;当其输出为二进制'1'时,表示该运算单元正在执行运算任务;
⑨运算精度接口的位宽为1bit,当其输入为二进制'0'时,表示该运算单元执行单精度浮点运算;当其输入为二进制'1'时,表示该运算单元执行双精度浮点运算;
步骤(2)、设计任务求解模块,该模块首先建立BRAM接收数字孪生系统发送的数据帧并完成帧格式正确性判断,然后解析数据帧并完成参数1和参数2的浮点转换,最后调用相应的运算单元进行计算,将计算结果重新组帧并发送给数字孪生系统,具体实现如下:
①定义数字孪生系统与任务求解模块之间数据传输的帧格式,具体包括帧头、数据流动方向、参数1、参数2、参数3、参数位宽、运算精度、运算类型、校验、帧尾;
②根据①所述的帧格式,其中帧头和帧尾用于标识一个数据帧的起始和结尾,位宽和具体填充内容自行确定;
③根据①所述的帧格式,数据流动方向字段的位宽为1bit,当其为二进制'0'时,表示数据帧由数字孪生系统发往任务求解模块,此时参数3字段填充0;当其为二进制'1'时,表示数据帧由任务求解模块回传给数字孪生系统,此时参数1字段和参数2字段填充0;
④根据①所述的帧格式,参数1、参数2、参数3、参数位宽、运算精度字段分别与(1)中运算单元接口中的参数1、参数2、参数3、参数位宽、运算精度接口的位宽和功能一致;
⑤根据①所述的帧格式,运算类型字段的位宽为2bit,当其输入为十六进制00时,表示执行加运算;当其输入为十六进制01时,表示执行减运算;当其输入为十六进制02时,表示执行乘运算;当其输入为十六进制03时,表示执行除运算;
⑥根据①所述的帧格式,校验字段目的是验证数据帧的完整性,确保接收数据的正确性,具体校验方式和位宽可自行确定;
⑦建立BRAM1接收数字孪生系统发送过来的数据帧,并完成帧格式正确性判断,如果帧格式正确性判断不通过,则直接丢弃该数据帧;根据⑥中自行确定的校验方式完成帧格式的正确性判断;
⑧解析BRAM1中数据帧并得到参数1、参数2、参数位宽、运算精度、运算类型;如果参数1和参数2不符合IEEE754浮点数标准,则需要首先完成参数1和参数2的基于IEEE754标准的浮点数转换;
⑨根据运算类型调用相应的运算单元执行运算任务,如果该运算单元的忙状态指示接口输出为二进制'0',则将该运算单元的使能接口赋予二进制'0'以启用该运算单元,否则,运算任务处于等待中;
⑩建立BRAM2接收运算单元反馈的运算结果,按照①中定义的帧格式将运算结果填充到参数3字段中并重新组帧返回给数字孪生系统。


2.如权利要求1所述的一种数字孪生系统复杂任务可配置高效求解方法,其特征在于,该方法适用于Xilinx公司Virtex-5系列FPGA芯片...

【专利技术属性】
技术研发人员:陶飞邹孝付左颖
申请(专利权)人:北京航空航天大学
类型:发明
国别省市:北京;11

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

1