一种双CPU数据交互方法、装置及系统与流程

文档序号:24066378发布日期:2021-02-26 13:11阅读:172来源:国知局
一种双CPU数据交互方法、装置及系统与流程
一种双cpu数据交互方法、装置及系统
技术领域
[0001]
本发明涉及计算机技术领域,特别是涉及一种双cpu数据交互方法、一种双cpu数据交互装置以及一种双cpu数据交互系统。


背景技术:

[0002]
随着科技的进步,工业自动化得到的极大的发展。在工业自动化领域中,通常需要设置外围设备以执行数据的采集等工作,而该外围设备通常呈分布式设置。其中在现场通常会设置dp(decentralized periphery,分布式外围设备)主站,用于对外围设备的参数进行收集;同时设置控制站,该控制站会与dp主站进行交互,对各个现场设备的参数进行采集,并进行相关的运算。
[0003]
但是在现阶段控制站的cpu(中央处理器)与dp主站的cpu进行交互时,具有数据泄露的风险,因此如何提供一种具有高安全性的双cpu数据交互方法是本领域技术人员急需解决的问题。


技术实现要素:

[0004]
本发明的目的是提供一种双cpu数据交互方法,具有较高的安全性;本发明的另一目的在于提供一种双cpu数据交互装置以及一种双cpu数据交互系统,具有较高的安全性。
[0005]
为解决上述技术问题,本发明提供一种双cpu数据交互方法,应用于控制站cpu,包括:
[0006]
获取共享内存的操作权限;所述控制站cpu与dp总站cpu共用同一所述共享内存;
[0007]
向所述dp总站cpu发送数据输入指令并释放所述操作权限,使所述dp总站cpu根据所述数据输入指令获取所述操作权限,并根据所述操作权限向所述共享内存存储输入数据;
[0008]
在向所述dp总站cpu发送数据输入指令并释放所述操作权限之后,获取所述dp总站cpu释放的操作权限,根据所述操作权限从所述共享内存读取所述输入数据;
[0009]
对所述输入数据进行运算,得到输出数据;
[0010]
根据所述操作权限向所述共享内存存储输出数据;
[0011]
在根据所述操作权限向所述共享内存存储输出数据之后,向所述dp总站cpu发送数据输出指令并释放所述操作权限,使所述dp总站cpu根据所述数据输出指令获取所述操作权限,根据所述操作权限读取所述共享内存存储的输出数据。
[0012]
可选的,所述获取共享内存的操作权限包括:
[0013]
当达到运算周期时,获取共享内存的操作权限。
[0014]
可选的,所述在根据所述操作权限向所述共享内存存储输出数据之后,向所述dp总站cpu发送数据输出指令并释放所述操作权限,使所述dp总站cpu根据所述数据输出指令获取所述操作权限,根据所述操作权限读取所述共享内存存储的输出数据包括:
[0015]
在根据所述操作权限向所述共享内存存储输出数据之后,向所述dp总站cpu发送
数据输出指令并释放所述操作权限,使所述dp总站cpu根据所述数据输出指令获取所述操作权限,根据所述操作权限读取所述共享内存存储的输出数据,并在所述dp总站cpu读取所述输出数据之后释放所述操作权限。
[0016]
可选的,所述输入数据为所述dp总站cpu通过各个现场设备所采集的数据。
[0017]
可选的,所述操作权限的使用记录存储于所述共享内存的配置参数区。
[0018]
本发明还提供了一种双cpu数据交互装置,应用于控制站cpu,包括:
[0019]
第一获取模块:用于获取共享内存的操作权限;所述控制站cpu与dp总站cpu共用同一所述共享内存;
[0020]
输入指令模块:用于向所述dp总站cpu发送数据输入指令并释放所述操作权限,使所述dp总站cpu根据所述数据输入指令获取所述操作权限,并根据所述操作权限向所述共享内存存储输入数据;
[0021]
第二获取模块:用于在向所述dp总站cpu发送数据输入指令并释放所述操作权限之后,获取所述dp总站cpu释放的操作权限,根据所述操作权限从所述共享内存读取所述输入数据;
[0022]
运算模块:用于对所述输入数据进行运算,得到输出数据;
[0023]
存储模块:用于根据所述操作权限向所述共享内存存储输出数据;
[0024]
输出指令模块:用于在根据所述操作权限向所述共享内存存储输出数据之后,向所述dp总站cpu发送数据输出指令并释放所述操作权限,使所述dp总站cpu根据所述数据输出指令获取所述操作权限,根据所述操作权限读取所述共享内存存储的输出数据。
[0025]
本发明还提供了一种双cpu数据交互方法,应用于dp总站cpu,包括:
[0026]
获取数据输入指令并根据所述数据输入指令获取共享内存的操作权限;所述dp总站cpu与控制站cpu共用同一所述共享内存;所述数据输入指令为所述控制站cpu释放所述操作权限时发送的指令;
[0027]
根据所述操作权限向所述共享内存写入输入数据;
[0028]
在向所述共享内存写入输入数据之后,释放所述操作权限;
[0029]
获取数据输出指令并根据所述数据输出指令获取所述操作权限;所述数据输出指令为所述控制站cpu根据获取的所述操作权限向所述共享内存写入输出数据之后发送的指令,所述输出数据为所述控制站cpu根据所述输入数据进行运算得到的输出数据;
[0030]
根据所述操作权限读取所述共享内存存储的所述输出数据。
[0031]
可选的,在所述根据所述操作权限读取所述共享内存存储的所述输出数据之后,还包括:
[0032]
释放所述操作权限。
[0033]
本发明还提供了一种双cpu数据交互装置,应用于dp总站cpu,包括:
[0034]
第三获取模块:用于获取数据输入指令并根据所述数据输入指令获取共享内存的操作权限;所述dp总站cpu与控制站cpu共用同一所述共享内存;所述数据输入指令为所述控制站cpu释放所述操作权限时发送的指令;
[0035]
写入模块:用于根据所述操作权限向所述共享内存写入输入数据;
[0036]
释放模块:用于在向所述共享内存写入输入数据之后,释放所述操作权限;
[0037]
第四获取模块:用于获取数据输出指令并根据所述数据输出指令获取所述操作权
限;所述数据输出指令为所述控制站cpu根据获取的所述操作权限向所述共享内存写入输出数据之后发送的指令,所述输出数据为所述控制站cpu根据所述输入数据进行运算得到的输出数据;
[0038]
读取模块:用于根据所述操作权限读取所述共享内存存储的所述输出数据。
[0039]
本发明还提供了一种双cpu数据交互系统,包括控制站cpu和dp总站cpu,所述控制站cpu与所述dp总站cpu共用同一共享内存;
[0040]
所述控制站cpu用于:
[0041]
获取共享内存的操作权限;
[0042]
向所述dp总站cpu发送数据输入指令并释放所述操作权限;
[0043]
在向所述dp总站cpu发送数据输入指令并释放所述操作权限之后,获取所述dp总站cpu释放的操作权限,根据所述操作权限从所述共享内存读取所述输入数据;
[0044]
对所述输入数据进行运算,得到输出数据;
[0045]
根据所述操作权限向所述共享内存存储输出数据;
[0046]
在根据所述操作权限向所述共享内存存储输出数据之后,向所述dp总站cpu发送数据输出指令并释放所述操作权限;
[0047]
所述dp总站cpu用于:
[0048]
获取数据输入指令并根据所述数据输入指令获取共享内存的操作权限;
[0049]
根据所述操作权限向所述共享内存写入输入数据;
[0050]
在向所述共享内存写入输入数据之后,释放所述操作权限;
[0051]
获取数据输出指令并根据所述数据输出指令获取所述操作权限;
[0052]
根据所述操作权限读取所述共享内存存储的所述输出数据。
[0053]
本发明所提供的一种双cpu数据交互方法,应用于控制站cpu,包括获取共享内存的操作权限;控制站cpu与dp总站cpu共用同一共享内存;向dp总站cpu发送数据输入指令并释放操作权限,使dp总站cpu根据数据输入指令获取操作权限,并根据操作权限向共享内存存储输入数据;在向dp总站cpu发送数据输入指令并释放操作权限之后,获取dp总站cpu释放的操作权限,根据操作权限从共享内存读取输入数据;对输入数据进行运算,得到输出数据;根据操作权限向共享内存存储输出数据;在根据操作权限向共享内存存储输出数据之后,向dp总站cpu发送数据输出指令并释放操作权限,使dp总站cpu根据数据输出指令获取操作权限,根据操作权限读取共享内存存储的输出数据。
[0054]
控制站cpu与dp主站cpu之间通过发送对应指令以及交替获取共享内存操作权限的方式,可以实现控制站cpu与dp主站cpu之间的数据的交互,同时该方法在向共享内存写入以及读取数据时,可以避免其他无法获取操作权限的设备对数据进行篡改,从而可以极大的减小数据泄露的风险,有效提高数据传输的安全性。
[0055]
本发明还提供了一种双cpu数据交互装置以及一种双cpu数据交互系统,同样具有上述有益效果,在此不再进行赘述。
附图说明
[0056]
为了更清楚的说明本发明实施例或现有技术的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本发
明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0057]
图1为本发明实施例所提供的一种双cpu数据交互方法的流程图;
[0058]
图2为本发明实施例所提供的一种双cpu数据交互装置的结构框图;
[0059]
图3为本发明实施例所提供的一种具体的双cpu数据交互方法的流程图;
[0060]
图4为本发明实施例所提供的一种具体的双cpu数据交互装置的结构框图;
[0061]
图5为本发明实施例所提供的一种双cpu数据交互系统的结构框图。
具体实施方式
[0062]
本发明的核心是提供一种双cpu数据交互方法。在现有技术中,通常使用“邮箱方式”进行数据通信,即控制站cpu将数据放入邮箱地址,然后通知dp主站cpu读取数据,此时控制站cpu会已查询的方式等待dp主站cpu反馈应答,以此来确认dp主站cpu是否收到了邮箱数据;dp主站cpu也会将数据放入邮箱地址,然后通知控制站cpu读取数据,此时dp主站cpu会已查询的方式等待控制站cpu反馈应答,以此来确认控制站cpu是否收到了邮箱数据;以此完成一拍非周期数据通信。但是该通信方式会在控制站的cpu与dp主站的cpu进行交互时,具有数据泄露的风险。
[0063]
而本发明所提供的一种双cpu数据交互方法,应用于控制站cpu,包括获取共享内存的操作权限;控制站cpu与dp总站cpu共用同一共享内存;向dp总站cpu发送数据输入指令并释放操作权限,使dp总站cpu根据数据输入指令获取操作权限,并根据操作权限向共享内存存储输入数据;在向dp总站cpu发送数据输入指令并释放操作权限之后,获取dp总站cpu释放的操作权限,根据操作权限从共享内存读取输入数据;对输入数据进行运算,得到输出数据;根据操作权限向共享内存存储输出数据;在根据操作权限向共享内存存储输出数据之后,向dp总站cpu发送数据输出指令并释放操作权限,使dp总站cpu根据数据输出指令获取操作权限,根据操作权限读取共享内存存储的输出数据。
[0064]
控制站cpu与dp主站cpu之间通过发送对应指令以及交替获取共享内存操作权限的方式,可以实现控制站cpu与dp主站cpu之间的数据的交互,同时该方法在向共享内存写入以及读取数据时,可以避免其他无法获取操作权限的设备对数据进行篡改,从而可以极大的减小数据泄露的风险,有效提高数据传输的安全性。
[0065]
为了使本技术领域的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0066]
请参考图1,图1为本发明实施例所提供的一种双cpu数据交互方法的流程图。
[0067]
在本发明实施例中,双cpu数据交互方法具体应用于控制站cpu,本发明实施例所提供的方法具体是控制站cpu与dp总站cpu之间的具体的交互方式。
[0068]
参见图1,双cpu数据交互方法包括:
[0069]
s101:获取共享内存的操作权限。
[0070]
在本发明实施例中,所述控制站cpu与dp总站cpu共用同一所述共享内存。上述操作权限的使用记录,例如当前获取操作权限具体是哪个部件等信息通常存储在共享内存预
设的配置参数区,而只有获取到操作权限的设备在本发明实施例中才可以对共享内存进行数据的读取以及数据的写入等操作。上述共享内存为控制站cpu与dp总站cpu的共享内存,通常情况下仅允许控制站cpu或dp总站cpu对该共享内存进行操作,以保证数据传输过程中的安全性。
[0071]
在本步骤中,控制站cpu具体会获取共享内存的操作权限,以确保后续流程中dp主站cpu可以获取到该操作权限。有关该操作权限的具体内容可以参考现有技术,在此不再进行赘述。
[0072]
本步骤可以具体为:当达到运算周期时,获取共享内存的操作权限。即本发明实施例具体可以适用于控制站cpu与dp总站cpu之间进行“周期数据通信”这一应用场景,即本步骤的触发条件是每当达到一运算周期的时限是,执行下述流程,使得控制站cpu可以对dp总站cpu所采集的数据进行运算。有关运算周期的具体时长可以根据实际情况自行设定,在此不做具体限定。
[0073]
当然,本发明实施例所提供的数据交互方法也适用于“非周期数据通信”,即交互条件为事件触发性交互,即某些特定的控制场景才会进行数据交互,其他时间不能进行数据交互。相应的本步骤的触发条件可以为预设的触发条件,以适用于“非周期数据通信”这一通信场景。
[0074]
s102:向dp总站cpu发送数据输入指令并释放操作权限,使dp总站cpu根据数据输入指令获取操作权限,并根据操作权限向共享内存存储输入数据。
[0075]
在本步骤中,控制站cpu会向dp总站cpu发送数据输入指令并释放操作权限,使得dp总站cpu在接收到数据输入指令时,可以根据该数据输入指令获取共享内存的操作权限,并进一步根据操作权限向共享内存,通常具体会向共享内存中预设的输入数据区写入输入数据。
[0076]
该输入数据在本发明实施例中通常为所述dp总站cpu通过各个现场设备所采集的数据,即上述dp总站cpu通常会按周期采集各个现场设备的数据作为输入数据,并在本发明实施例中通过共享内存使得控制站cpu可以获取到该输入数据。有关输入数据的具体内容可以根据实际情况自行设定,在此不做具体限定。
[0077]
s103:在向dp总站cpu发送数据输入指令并释放操作权限之后,获取dp总站cpu释放的操作权限,根据操作权限从共享内存读取输入数据。
[0078]
需要说明的是,当dp主站cpu在将输入数据写入共享内存之后,需要释放共享内存的操作权限,而在本步骤中控制站cpu具体会获取到dp总站cpu释放的操作权限,然后进一步根据该操作权限从共享内存读取输入数据,实现输入数据从dp总站cpu到控制站cpu的交互。
[0079]
s104:对输入数据进行运算,得到输出数据。
[0080]
在本步骤中,控制站cpu具体会对输入数据进行运算,而运算将运算的结果作为输出数据。有关上述运算的具体过程可以根据实际情况自行设定,在此不做具体限定。
[0081]
s105:根据操作权限向共享内存存储输出数据。
[0082]
需要说明的是,在s104中控制站cpu通常不会释放操作权限,因此在本步骤中可以进一步根据操作权限将输出数据写入共享内存,通常是写入共享内存预设的输出数据区。
[0083]
s106:在根据操作权限向共享内存存储输出数据之后,向dp总站cpu发送数据输出
指令并释放操作权限,使dp总站cpu根据数据输出指令获取操作权限,根据操作权限读取共享内存存储的输出数据。
[0084]
在本步骤中,控制站cpu在将输出数据写入共享内存之后,会向dp总站cpu发送数据输出指令并释放所述操作权限,之后dp总站cpu在接收到数据输出指令之后,会获取操作权限,并根据该操作权限从共享内存中读取输出数据。进一步的,dp总站cpu还可以根据该输出数据对各个现场设备进行控制。
[0085]
通常情况下,在dp总站cpu读取到上述输出数据之后,需要释放共享内存的操作权限,以便下次控制站cpu与dp总站cpu之间数据交互的执行。即本步骤通常具体为:在根据所述操作权限向所述共享内存存储输出数据之后,向所述dp总站cpu发送数据输出指令并释放所述操作权限,使所述dp总站cpu根据所述数据输出指令获取所述操作权限,根据所述操作权限读取所述共享内存存储的输出数据,并在所述dp总站cpu读取所述输出数据之后释放所述操作权限。
[0086]
在本发明实施例中,配置参数区通常还存储有数据属性这一公共信息,该数据属性通常包括上述输入数据、输出数据等数据的传输方向等用于表示共享内存中数据流向的标识信息,用于实现控制站cpu与dp总站cpu之间数据的交互。
[0087]
本发明实施例所提供的一种双cpu数据交互方法,控制站cpu与dp主站cpu之间通过发送对应指令以及交替获取共享内存操作权限的方式,可以实现控制站cpu与dp主站cpu之间的数据的交互,同时该方法在向共享内存写入以及读取数据时,可以避免其他无法获取操作权限的设备对数据进行篡改,从而可以极大的减小数据泄露的风险,有效提高数据传输的安全性。
[0088]
下面对本发明实施例所提供的一种双cpu数据交互装置进行介绍,下文描述的双cpu数据交互装置与上文描述的双cpu数据交互方法可相互对应参照。
[0089]
图2为本发明实施例所提供的一种双cpu数据交互装置的结构框图,该双cpu数据交互装置应用于控制站cpu,以实现控制站cpu与dp总站cpu之间的交互。
[0090]
参照图2,双cpu数据交互装置可以包括:
[0091]
第一获取模块100:用于获取共享内存的操作权限;所述控制站cpu与dp总站cpu共用同一所述共享内存。
[0092]
输入指令模块200:用于向所述dp总站cpu发送数据输入指令并释放所述操作权限,使所述dp总站cpu根据所述数据输入指令获取所述操作权限,并根据所述操作权限向所述共享内存存储输入数据。
[0093]
第二获取模块300:用于在向所述dp总站cpu发送数据输入指令并释放所述操作权限之后,获取所述dp总站cpu释放的操作权限,根据所述操作权限从所述共享内存读取所述输入数据。
[0094]
运算模块400:用于对所述输入数据进行运算,得到输出数据。
[0095]
存储模块500:用于根据所述操作权限向所述共享内存存储输出数据。
[0096]
输出指令模块600:用于在根据所述操作权限向所述共享内存存储输出数据之后,向所述dp总站cpu发送数据输出指令并释放所述操作权限,使所述dp总站cpu根据所述数据输出指令获取所述操作权限,根据所述操作权限读取所述共享内存存储的输出数据。
[0097]
作为优选的,在本发明实施例中,第一获取模块100具体用于:
[0098]
当达到运算周期时,获取共享内存的操作权限。
[0099]
作为优选的,在本发明实施例中,输出指令模块600具体用于:
[0100]
在根据所述操作权限向所述共享内存存储输出数据之后,向所述dp总站cpu发送数据输出指令并释放所述操作权限,使所述dp总站cpu根据所述数据输出指令获取所述操作权限,根据所述操作权限读取所述共享内存存储的输出数据,并在所述dp总站cpu读取所述输出数据之后释放所述操作权限。
[0101]
作为优选的,在本发明实施例中,所述输入数据为所述dp总站cpu通过各个现场设备所采集的数据。
[0102]
作为优选的,在本发明实施例中,所述操作权限的使用记录存储于所述共享内存的配置参数区。
[0103]
本实施例的双cpu数据交互装置用于实现前述的双cpu数据交互方法,因此双cpu数据交互装置中的具体实施方式可见前文中双cpu数据交互方法的实施例部分,例如,第一获取模块100,输入指令模块200,第二获取模块300,运算模块400,存储模块500,输出指令模块600分别用于实现上述双cpu数据交互方法中步骤s101,s102,s103,s104,s105以及s106,所以,其具体实施方式可以参照相应的各个部分实施例的描述,在此不再赘述。
[0104]
请参考图3,图3为本发明实施例所提供的一种具体的双cpu数据交互方法的流程图。
[0105]
在本发明实施例中,双cpu数据交互方法具体应用于dp总站cpu,本发明实施例所提供的方法具体是控制站cpu与dp总站cpu之间的具体的交互方式。
[0106]
参见图3,双cpu数据交互方法包括:
[0107]
s201:获取数据输入指令并根据数据输入指令获取共享内存的操作权限。
[0108]
在本发明实施例中,所述dp总站cpu与控制站cpu共用同一所述共享内存;所述数据输入指令为所述控制站cpu释放所述操作权限时发送的指令。上述控制站cpu需要先获取共享内存的操作权限,而控制站cpu具体可以每当达到运算周期时,获取共享内存的操作权限。在当控制站cpu获取到操作权限之后,可以向dp总站cpu发送数据输入指令,而在本步骤中dp总站cpu可以根据数据输入指令获取共享内存的操作权限。
[0109]
上述操作权限的使用记录,例如当前获取操作权限具体是哪个部件等信息通常存储在共享内存预设的配置参数区,而配置参数区通常还存储有数据属性这一公共信息,该数据属性通常包括上述输入数据、输出数据等数据的传输方向等用于表示共享内存中数据流向的标识信息,用于实现控制站cpu与dp总站cpu之间数据的交互。
[0110]
s202:根据操作权限向共享内存写入输入数据。
[0111]
在本步骤中,dp总站cpu会根据操作权限向共享内存写入输入数据,有关输入数据的具体内容已在上述发明实施例中做详细介绍,在此不再进行赘述。上述输入数据通常为所述dp总站cpu通过各个现场设备所采集的数据,即上述dp总站cpu通常会按周期采集各个现场设备的数据作为输入数据,并在本发明实施例中通过共享内存使得控制站cpu可以获取到该输入数据。
[0112]
s203:在向共享内存写入输入数据之后,释放操作权限。
[0113]
在本步骤中dp总站cpu会重新释放操作权限,使得控制站cpu可以从新获取操作权限以读取输入数据。
[0114]
s204:获取数据输出指令并根据数据输出指令获取操作权限。
[0115]
在本发明实施例中,所述数据输出指令为所述控制站cpu根据获取的所述操作权限向所述共享内存写入输出数据之后发送的指令,所述输出数据为所述控制站cpu根据所述输入数据进行运算得到的输出数据。
[0116]
控制站cpu在获取到输入数据之后,会经过一定的运算得到输出数据,并根据控制权限将输出数据写入共享内存,之后会释放控制权限并向dp主站cpu发送数据输出指令。而在本步骤中,dp主站cpu会根据数据输出指令获取操作权限,以便下述步骤的进行。
[0117]
s205:根据操作权限读取共享内存存储的输出数据。
[0118]
在本步骤中,会根据操作权限读取共享内存内写入的输出数据,实现控制站cpu与dp主站cpu之间数据的交互。
[0119]
在本步骤之后,通常还需要释放所述操作权限,以便控制站cpu与dp主站cpu之间下次数据交互的进行。
[0120]
需要说明的是,本发明实施例所提供的双cpu数据交互方法与上述发明实施例中做提供的双cpu数据交互方法可以相互对应参照,该两种方法分别作用于控制站cpu与dp主站cpu,相互对应执行共同实现控制站cpu与dp主站cpu之间数据的交互,所以,其具体实施方式可以参照相应的各个部分实施例的描述,在此不再赘述。
[0121]
下面对本发明实施例所提供的一种双cpu数据交互装置进行介绍,下文描述的双cpu数据交互装置与上文描述的双cpu数据交互方法可相互对应参照。
[0122]
图4为本发明实施例所提供的一种具体的双cpu数据交互装置的结构框图,该双cpu数据交互装置应用于dp总站cpu,以实现控制站cpu与dp总站cpu之间的交互。
[0123]
参照图4,双cpu数据交互装置可以包括:
[0124]
第三获取模块700:用于获取数据输入指令并根据所述数据输入指令获取共享内存的操作权限;所述dp总站cpu与控制站cpu共用同一所述共享内存;所述数据输入指令为所述控制站cpu释放所述操作权限时发送的指令。
[0125]
写入模块800:用于根据所述操作权限向所述共享内存写入输入数据。
[0126]
释放模块900:用于在向所述共享内存写入输入数据之后,释放所述操作权限。
[0127]
第四获取模块1000:用于获取数据输出指令并根据所述数据输出指令获取所述操作权限;所述数据输出指令为所述控制站cpu根据获取的所述操作权限向所述共享内存写入输出数据之后发送的指令,所述输出数据为所述控制站cpu根据所述输入数据进行运算得到的输出数据。
[0128]
读取模块1100:用于根据所述操作权限读取所述共享内存存储的所述输出数据。
[0129]
作为优选的,在本发明实施例中,所述数据输入指令具体为所述控制站cpu根据每当达到运算周期时,获取共享内存的操作权限之后,释放所述操作权限时发送的指令。
[0130]
作为优选的,在本发明实施例中,还包括:
[0131]
二次释放模块:用于在读取输出数据之后,释放所述操作权限。
[0132]
作为优选的,在本发明实施例中,所述输入数据为所述dp总站cpu通过各个现场设备所采集的数据。
[0133]
作为优选的,在本发明实施例中,所述操作权限的使用记录存储于所述共享内存的配置参数区。
[0134]
本实施例的双cpu数据交互装置用于实现前述的双cpu数据交互方法,因此双cpu数据交互装置中的具体实施方式可见前文中双cpu数据交互方法的实施例部分,例如,第三获取模块700,写入模块800,释放模块900,第四获取模块1000,读取模块1100分别用于实现上述双cpu数据交互方法中步骤s201,s202,s203,s204以及s205,所以,其具体实施方式可以参照相应的各个部分实施例的描述,在此不再赘述。
[0135]
下面对本发明实施例所提供的一种双cpu数据交互系统进行介绍,下文描述的双cpu数据交互系统与上文描述的双cpu数据交互方法,以及双cpu数据交互装置可相互对应参照。
[0136]
图5为本发明实施例所提供的一种双cpu数据交互系统的结构框图,参照图5,该双cpu数据交互系统包括控制站cpu11和dp总站cpu12,所述控制站cpu11与所述dp总站cpu12共用同一共享内存。
[0137]
所述控制站cpu11用于:
[0138]
获取共享内存的操作权限。
[0139]
向所述dp总站cpu12发送数据输入指令并释放所述操作权限。
[0140]
在向所述dp总站cpu12发送数据输入指令并释放所述操作权限之后,获取所述dp总站cpu12释放的操作权限,根据所述操作权限从所述共享内存读取所述输入数据。
[0141]
对所述输入数据进行运算,得到输出数据。
[0142]
根据所述操作权限向所述共享内存存储输出数据。
[0143]
在根据所述操作权限向所述共享内存存储输出数据之后,向所述dp总站cpu12发送数据输出指令并释放所述操作权限。
[0144]
所述dp总站cpu12用于:
[0145]
获取数据输入指令并根据所述数据输入指令获取共享内存的操作权限。
[0146]
根据所述操作权限向所述共享内存写入输入数据。
[0147]
在向所述共享内存写入输入数据之后,释放所述操作权限。
[0148]
获取数据输出指令并根据所述数据输出指令获取所述操作权限。
[0149]
根据所述操作权限读取所述共享内存存储的所述输出数据。
[0150]
作为优选的,在本发明实施例中,控制站cpu11具体用于:
[0151]
当达到运算周期时,获取共享内存的操作权限。
[0152]
作为优选的,在本发明实施例中,dp总站cpu12还用于:
[0153]
在根据所述操作权限读取所述共享内存存储的所述输出数据之后,释放所述操作权限。
[0154]
作为优选的,在本发明实施例中,所述输入数据为所述dp总站cpu12通过各个现场设备所采集的数据。
[0155]
作为优选的,在本发明实施例中,所述操作权限的使用记录存储于所述共享内存的配置参数区。
[0156]
本实施例的双cpu数据交互系统用于安装前述的双cpu数据交互装置,并实现前述的双cpu数据交互方法,因此双cpu数据交互系统中的具体实施方式可见前文中双cpu数据交互方法的实施例部分。所以,其具体实施方式可以参照相应的各个部分实施例的描述,在此不再赘述。
[0157]
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
[0158]
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
[0159]
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(ram)、内存、只读存储器(rom)、电可编程rom、电可擦除可编程rom、寄存器、硬盘、可移动磁盘、cd-rom、或技术领域内所公知的任意其它形式的存储介质中。
[0160]
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0161]
以上对本发明所提供的一种双cpu数据交互方法、一种双cpu数据交互装置以及一种双cpu数据交互系统进行了详细介绍。本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1