用于仲裁对共享存储器的访问的方法以及对应的电子设备

文档序号:1286910 发布日期:2020-08-28 浏览:19次 >En<

阅读说明:本技术 用于仲裁对共享存储器的访问的方法以及对应的电子设备 (Method for arbitrating access to a shared memory and corresponding electronic device ) 是由 J-L·拉拜雷 于 2020-02-19 设计创作,主要内容包括:本公开涉及用于仲裁对共享存储器的访问权限的方法以及对应的电子设备,例如,仲裁对在第一接口和第二接口之间共享的存储器的访问权限。在向第一接口授予对存储器的当前访问权限的同时从第二接口传出的访问存储器的请求之后,触发具有最大计数时间的计数。如果授予第一接口的访问权限的占用的终止在所述最大计数之间的终止之前结束,则在该访问权限的占用的终止处为第二接口授予对存储器的访问权限,否则在最大计数时间的终止处为第二接口授予对存储器的访问权限。(The present disclosure relates to a method for arbitrating access rights to a shared memory, e.g. arbitrating access rights to a memory shared between a first interface and a second interface, and a corresponding electronic device. A count having a maximum count time is triggered following a request to access the memory that is issued from the second interface while the current access to the memory is granted to the first interface. If the termination of the occupation of the access rights granted to the first interface ends before the termination between the maximum counts, the access rights to the memory are granted to the second interface at the termination of the occupation of the access rights, otherwise the access rights to the memory are granted to the second interface at the termination of the maximum count time.)

用于仲裁对共享存储器的访问的方法以及对应的电子设备

优先权

本申请要求2019年2月21日提交的法国专利申请第1901746号的优先权,其内容以引用的方式全部纳入法律允许的最大范围。

技术领域

实施方式和实施例涉及电子设备,并且更具体地,涉及用于仲裁对共享存储器的访问权限的电子设备,也被称为共享存储器仲裁。

背景技术

一般而言,用于仲裁对共享存储器的访问的电子设备被配置为将对存储器的访问权限(假定该存储器可用)授予最先请求访问的接口。

换句话说,在当前不进行对存储器的访问时,电子设备被配置为接受由任何接口传送并且首先被该电子设备接收的访问请求。

一旦授予对该存储器的访问权限,这种电子设备就被配置为暂停或拒绝由第二接口传送的后续访问请求,直到授予第一接口的访问权限结束。

当已经授予对存储器的访问权限时,第二接口的传统方法是周期性地重复其访问请求,本领域技术人员已知为繁忙等待处理或轮询处理,直到对存储器的访问权限再次可用为止。

然而,当授予第一接口的存储器的访问时间较长时,由于第二接口多次重复访问请求,这种传统方法通常在时间和能量消耗方面变得昂贵。

此外,在占用授予第一接口的存储器的访问权限结束时,不能自动地保证通过第二接口获得对存储器的访问,因为电子设备可在授予第一接口的访问权限的结束与随后重复来自第二接口的访问请求之间接收来自第一接口的另一访问请求。

如果来自第一接口的访问请求频繁且不可预测,则第二接口将可能仍被阻止,并且将保持在繁忙等待处理或轮询处理。

换句话说,为了在一个或多个繁忙等待处理之后获得对存储器的访问权限,通常需要精细和精确的同步,并且一旦被授予,就不可以中断对存储器的访问;这对电子设备的整体安全性可能是存在问题的,甚至是危险的,因为在计算机黑客入侵的情况下,对存储器的访问权限可被一个接口完全出于恶意地永久垄断。

因此,需要能够实现低复杂度和低能耗的新发展,以避免对永久封锁的存储器的访问,并且有效地管理对存储器的交替访问。

发明内容

根据一个方面,提出了一种用于仲裁对至少在第一接口和第二接口之间共享的存储器的访问权限的方法。

该方法包括:在向第一接口授予对存储器的当前访问权限的同时从第二接口传出的访问存储器的请求之后,触发具有最大计数时间的计数,以及如果授予第一接口的访问权限的占用的终止在最大计数时间的终止之前结束,则在占用的终止处为第二接口授予对存储器的访问权限,否则在最大计数时间的终止处为第二接口授予对存储器的访问权限。

有利地,当在已经为第一接口授予对存储器的访问权限的占用的同时接收到来自第二接口的访问请求时,这种方法使得可以帮助在最大计数时间的终止处或者在当前访问权限的占用的终止处确保对存储器的访问的交替(如果占用的终止早于所述最大计数时间的终止结束的话)。

因此,一旦已经为接口授予访问权限,对存储器的访问权限就不能被独占地占用。最迟在最大计数时间到期之后保证对存储器的访问权限的交替。

应注意,这种方法可有利地应用于请求访问存储器的每个接口,或者选择性地应用于一个或多个接口,以允许该接口或这些接口优先获得对存储器的访问权限。

此外,应注意,在访问请求之后触发计数可理解为:在接收到访问请求时触发计数,或者在该接收之后的时间间隔之后触发计数。

根据一种实施模式,第一接口能够对存储器执行写入操作,该写入操作具有小于或等于最大写入时间的时间,并且选择最大计数时间以大于最大写入时间。

这使得可以允许当前对存储器进行的写入操作完成,由此有利地避免写入存储器的数据的损坏。

根据一种实施方式,第二接口包括能够在两个逻辑状态之间切换的控制信号。

然后,例如,可以在从第二接口传出的访问请求之后执行控制信号的第一切换,并且在控制信号的第一切换时触发计数。

例如,这可以在I2C总线的上下文中实施。

通过指示但不限制,例如,如果授予第一接口的访问权限的占用的终止在最大计数时间的终止之前结束或者在最大计数时间的终止处结束,则在占用的终止处执行控制信号的第二切换,并且在控制信号的第二切换之后为第二接口授予对存储器的访问权限。

在这种情况下,这也可以有利地在I2C总线的上下文中实施。

根据一种实施模式,第一接口可以是近场通信或射频识别射频通信接口,并且第二接口可以是I2C或SMBus双向同步串行总线。

这种方法有利地使得可以在最坏情况下,在最大计数时间的终止处将I2C或SMBus接口访问权限授予存储器。

通过非限制性示例,在例如I2C接口的情况下,第二接口的控制信号是串行时钟线(SCL)信号。

该控制信号在这里有利地用于通知控制电路装置(例如,耦合至I2C或SMBus接口的微控制器)当前无法访问存储器,以满足其经由I2C或SMBus接口访问存储器的请求。

根据又一实施模式,如果第二接口是SMBus双向同步串行总线,则选择最大计数时间在25ms和35ms之间,这与SMBus标准兼容。

例如,在第二I2C或SMBus接口的情况下,从第二接口传出的访问请求可例如包含至少一个字节,并且第一切换发生在来自第二接口的访问请求的第一字节之后,并且第二接口的控制信号在第一切换之后处于低状态并且在第二切换之后处于高状态,这可以使用术语SCL拉伸(stretch)来表示。

控制信号的低状态指示第二接口未准备好处理访问存储器的请求,而控制信号的高状态指示第二接口再次准备好处理访问存储器的请求。

根据另一方面,提出了一种电子设备,包括:至少第一接口和第二接口;存储器,被配置为在至少第一和第二接口之间共享;以及仲裁电路装置,被配置为在向第一接口授予对存储器的当前访问权限的同时从第二接口传出的访问存储器的请求之后触发具有最大计数时间的计数,以及如果授予第一接口的访问权限的占用的终止在最大计数时间的终止之前结束,则在占用的终止处为第二接口授予对存储器的访问权限,否则在最大计数时间的终止处为第二接口授予对存储器的访问权限。

通过指示但不限制,第一接口能够对存储器执行写入操作,该写入操作具有小于或等于最大写入时间的时间,并且有利地选择最大计数时间以大于最大写入时间。

根据一个实施例,第二接口包括能够在两个逻辑状态之间切换的控制信号,并且仲裁电路装置被配置为在从第二接口传出的访问请求之后执行控制信号的第一切换,并且在控制信号的第一切换时触发计数。

例如,仲裁电路装置可被配置为:如果授予第一接口的访问权限的占用的终止在最大计数时间的终止之前结束,则在该访问权限的占用的终止处执行控制信号的第二切换,否则在最大计数时间的终止处执行控制信号的第二切换,并且在控制信号的第二切换之后为第二接口授予对存储器的访问权限。

根据一个实施例,第一接口可以是近场通信或射频识别射频通信接口,并且第二接口可以是I2C或SMBus双向同步串行总线。

例如,第二接口的控制信号可以是串行时钟线信号。

根据又一实施例,如果第二接口是SMBus双向同步串行总线,则选择最大计数时间在25ms和35ms之间。

例如,从第二接口传出的访问请求可包含至少一个字节,并且仲裁电路装置可例如被配置为在来自第二接口的访问请求的第一字节之后执行第一切换并且使第二接口的控制信号在第一切换之后处于低状态且在第二切换之后处于高状态。

根据另一方面,提出了一种电子装置,其包括诸如上面限定的电子设备以及耦合至该电子设备的控制电路装置。

通过指示但不限制,控制电路装置可例如包括微控制器。

根据另一方面,提出了一种通信系统,包括诸如上面限定的电子装置以及耦合至电子设备的无线通信电路装置。

根据一个实施例,通信电路装置包括近场通信(NFC)或射频识别(RFID)读取器。

附图说明

其他优势和特征将在检查完全非限制性实施方式和实施例以及附图的详细描述之后变得明显,其中:

图1示意性示出了通信系统,

图2以状态机示图的形式示意性示出了仲裁电路装置的一种示例性实施方式,

图3示出了时序图,以及

图4示出了时序图。

具体实施方式

图1示出了通信系统1(这里,例如为基于近场通信(NFC)或射频识别(RFID)技术的短程无线通信系统),其能够在工业或家庭应用中实施,诸如施工现场或住宅访问控制系统。

通信系统1包括电子控制装置2和通信电路装置3。

例如,通信电路3可以包括多个NFC或RFID读取器。为了简化,图1中示出了单个NFC/RFID读取器4。

电子控制装置2包括电子设备5(这里,例如为与NFC或RFID技术兼容的电子标签)以及包括微控制器(MCU)7的控制电路装置6。

标签5包括:至少两个接口,这里例如为第一接口(RF-IF)8和第二计算机总线接口(CB-IF)9,第一接口8包括被配置为与NFC/RFID读取器4无线通信的射频通信接口;存储器10,被配置为在至少第一接口8和第二接口9之间共享;以及仲裁电路装置11,分别耦合至存储器10以及至少第一接口和第二接口。

第二接口9包括I2C(内部集成电路)或SMBus(系统管理总线)双向同步串行总线。

第二接口9被配置为通过以I2C和SMBus标准定义的时钟信号SCL和数据信号SDA与微控制器7通信。

微控制器7操作为I2C总线上的主机(I2C主机),而第二接口9操作为I2C总线上的从机(I2C从机)。

例如,仲裁电路装置11可以包括逻辑电路的数字控制单元的形式实施,并且被配置为在第一接口8和第二接口9之间仲裁对存储器10的访问权限。

根据一个实践示例,从第一接口8传出的访问请求是不可预测的,因为这取决于NFC/RFID读取器4的存在与否。

在这种情况下,为了使来自第二接口的访问请求优先并且为了避免由于经由第一接口8的计算机黑客攻击而导致对存储器10的访问的可能阻塞,处理来自第二接口9的访问请求,使得最迟在所选时间到期之后确保其对存储器的访问权限。

现在参考图2,以状态机示图的形式示出仲裁电路装置11的一种示例性实施方式。

最初,仲裁电路装置处于待机状态E0,并且不被允许访问存储器。具有代表第一接口8的占用状态的第一状态信号SE1和代表第二接口9的占用状态的第二状态信号SE2。

第一状态信号SE1和第二状态信号SE2均处于第一占用状态EO1,这指示存储器10当前未经由第一接口8和第二接口9中的任一个被访问。

此外,在该待机状态E0中,仲裁电路装置11被配置为准备好授权仲裁电路装置11首先接收到的任何访问请求。

例如,如果首先接收到从第一接口8传出的第一访问请求D1,则仲裁电路装置11被配置为将待机状态E0切换到第一处理状态ET1。

以相同方式,如果首先接收到从第二接口9传出的第二访问请求D2,则仲裁电路装置11被配置为将待机状态E0切换到第二处理状态ET2。

一旦切换到第一处理状态ET1,第一状态信号SE1被切换到第二占用状态EO2,这指示存储器10当前正经由第一接口8被访问。

如果仲裁电路装置11在授予第一接口8的访问权限的占用的终止之前没有从第二接口9接收到访问请求,则仲裁电路装置11被配置为将第一处理状态ET1切换到待机状态E0。

如果在第一处理状态ET1期间仲裁电路装置11接收到从第二接口9传出的第二访问请求D2,则仲裁电路装置11进一步被配置为切换控制信号,这里为以I2C或SMBus标准定义的时钟信号SCL。

更准确地,仲裁电路装置11被配置为在第二请求D2的第一字节之后将时钟信号SCL切换到低状态。

时钟信号SCL的这种切换使用术语SCL拉伸来表示,并且被配置为向I2C总线上的主机(换句话说,微控制器7)通知I2C总线上的从机(这里为第二接口9)当前不可用于提交第二访问请求D2。

因此,微控制器7暂停第二访问请求D2的传输。

当时钟信号SCL切换时,计数信号SC被激活超时周期DT,即最大计数时间。

如果第一接口8已经请求访问存储器以执行对存储器的写入操作,尤其取决于要被写入的数据,对存储器的写入时间可或长或短。

然而,可以确定最大可能写入时间。然后,选择超时周期DT以大于最大写入时间(例如20ms的级别),从而有利地使得可以避免写入存储器的数据的任何损坏。

如果第二接口9是SMBus双向同步串行总线,则根据SMBus标准,该超时周期DT可例如选择在25ms和35ms之间。

存在两种情况CF1、CF2用于将第一处理状态ET1切换到第二处理状态ET2。

在第一情况CF1中,如果授予第一接口8的访问权限的占用的终止在超时周期DT的终止之前结束,则仲裁电路装置11被配置为在授予第一接口8的访问权限的占用的终止之后将第一处理状态ET1切换到第二处理状态ET2。

在第二情况CF2中,如果占用的终止在超时周期DT处或之后结束,则仲裁电路装置11被配置为中断对授予第一接口8的存储器的访问权限并将其授予第二接口9。

换句话说,实施这两种情况CF1、CF2是为了使第二接口9(这里为I2C或SMBus接口)优先,以确保在授予第一接口8的访问权限的占用的终止处或者在最坏情况下在超时周期DT的终止处获得对存储器的访问权限。

另一方面,在第二处理状态ET2期间,仲裁电路装置11例如被配置为不对来自第一接口8的任何访问请求做出响应或错误地响应。

在授予第二接口9的访问权限的占用的终止处,仲裁电路装置11被配置为将第二处理状态ET2切换到待机状态E0。

现在参考图3,以时序图的形式示出第一情况CF1的一个示例性实施方式。

如图3的上部能够看出,首先接收来自第一接口8的第一访问请求D1,并触发第二占用状态EO2,这里反映为第一状态信号SE1的高状态,这指示授予第一接口8的对存储器的访问权限的占用。

在授予第一接口8的访问权限的占用周期期间,可以观察到第一请求D1已经发送了请求REQ1并且接收到响应REP1。

图3的下部示出了来自第二接口的第二访问请求D2(这里为数据信号SDA),并且在第一访问请求D1期间由仲裁电路装置11接收。

时钟信号SCL在第二请求D2的第一字节(即,在开始控制事件之后的前8位,包括设备选择位)之后切换到低状态LOW。

如上所解释的,这有利地涉及根据I2C或SMBus标准拉伸信号SCL(SCL拉伸),以通知微控制器7第二接口9不可用于接收第二请求D2的数据。

同时,计数信号SC被激活并在超时周期DT期间切换到高状态。

如在该第一情况CF1中可看到的,在授予第一接口8的访问权限的占用的终止处,第一状态信号SE1、第二状态信号SE2和时钟信号SCL分别切换到第一占用状态EO1、第二占用状态EO2和高状态HIGH。

一旦时钟信号SCL进入高状态HIGH,就生成确认位ACK(确认),然后在确认位ACK之后,通过微控制器7(在写入操作的情况下)或标签5(在读取操作的情况下)传送数据DATA。

因此,第二接口9在授予第一接口8的访问权限的占用的终止处获得对存储器10的访问权限,而无需额外等待。

图4以时序图的形式示出了第二情况CF2的一个示例性实施方式。

与第一情况CF1不同,在第二情况CF2中,来自第一接口8的第一请求D1在超时DT终止时尚未完成。

在这种情况下,仲裁电路装置11被配置为在计数信号再次处于低状态时将时钟信号SCL切换到高状态HIGH。

因此,第一状态信号SE1和第二状态信号SE2分别切换到第一占用状态EO1和第二占用状态EO2。

来自第一接口8的第一请求D1的事务被中断,并且现在向第二接口9授予对存储器10的访问权限。

应注意,上述用于仲裁对存储器5的访问权限的方法可例如对等地应用于电子设备的任何一对接口,并且可以交换第一和第二接口的指定。

由此获得了一种用于仲裁对共享存储器的访问权限的方法和电子设备,使得在最大计数时间超期之后的最坏情况下可以向一个或多个优先接口授予对存储器的访问权限,从而避免对存储器的访问被阻塞,并且有助于确保电子设备的整体安全。

12页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:一种USB复用电路

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!