CN112585592B - 异步通信 - Google Patents
异步通信 Download PDFInfo
- Publication number
- CN112585592B CN112585592B CN201980054316.XA CN201980054316A CN112585592B CN 112585592 B CN112585592 B CN 112585592B CN 201980054316 A CN201980054316 A CN 201980054316A CN 112585592 B CN112585592 B CN 112585592B
- Authority
- CN
- China
- Prior art keywords
- mutex
- data
- bus
- lockable
- locked
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000004891 communication Methods 0.000 title description 7
- 239000003999 initiator Substances 0.000 claims abstract description 96
- 238000000034 method Methods 0.000 claims abstract description 52
- 230000007704 transition Effects 0.000 description 24
- 230000001360 synchronised effect Effects 0.000 description 19
- 238000010586 diagram Methods 0.000 description 12
- 238000001514 detection method Methods 0.000 description 3
- 238000012790 confirmation Methods 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 230000011664 signaling Effects 0.000 description 2
- VYPSYNLAJGMNEJ-UHFFFAOYSA-N Silicium dioxide Chemical compound O=[Si]=O VYPSYNLAJGMNEJ-UHFFFAOYSA-N 0.000 description 1
- 238000002955 isolation Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4004—Coupling between buses
- G06F13/4027—Coupling between buses using bus bridges
- G06F13/405—Coupling between buses using bus bridges where the bridge performs a synchronising function
- G06F13/4054—Coupling between buses using bus bridges where the bridge performs a synchronising function where the function is bus cycle extension, e.g. to meet the timing requirements of the target bus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4004—Coupling between buses
- G06F13/4027—Coupling between buses using bus bridges
- G06F13/4031—Coupling between buses using bus bridges with arbitration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4282—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
- G06F13/4286—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus using a handshaking protocol, e.g. RS232C link
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Information Transfer Systems (AREA)
- Power Sources (AREA)
Abstract
一种使用异步桥(2)跨越异步接口(7)将数据从第一总线(11)传送到第二总线(13)的方法。所述桥(2)包含:总线从属模块(4),其连接到所述第一总线(11)且包含第一功率和/或时钟域中的前向信道发起器(8);以及总线主模块(6),其连接到所述第二总线(13)且包含第二功率和/或第二时钟域中的前向信道终止器(22)。所述前向信道发起器(8)和所述前向信道终止器(22)连通以形成用于仲裁对信号的访问的前向可锁定互斥体,所述信号用于从所述第一域向所述第二域传送数据。如果所述互斥体被锁定(40),则使用前向数据信道(43)在所述域之间传送数据。否则,如果所述互斥体未被锁定(40),所述前向信道发起器(8)切换状态请求信号(36)并且所述前向信道终止器(22)作为响应切换状态确认信号(38),所述互斥体由此被锁定。
Description
技术领域
本发明涉及异步通信,尤其涉及电子装置中跨越时钟和/或功率域交叉的数据异步传送。
背景技术
现代电子装置,例如被布置为执行例如或通信的无线通信的无线电收发器装置,可以具有两个或更多个不同的功率和/或时钟域,所述域至少偶尔需要彼此通信。
时钟域是指由特定时钟信号驱动的电路,而功率域是指由同一电源电压驱动的电路。例如,中央处理器可以在第一时钟域中以相对高的频率运行,而一个或多个外围装置可以在第二时钟域中以相对低的频率运行。一般而言,当不同的功率域和时钟域彼此不同步时,需要跨越功率和/或时钟域边界的信号的异步交叉从一个域传递到另一域。
这与在两个不同总线之间传送数据有关,例如在两个AHB总线之间,其中每个总线处于不同的时钟和/或功率域中,其中AHB是(高级微控制器总线架构)协议内的高级高性能总线(AHB),所述协议是用于芯片上系统(SoC)中的功能块的连接和管理的开放标准互连规范,即用于芯片上通信。异步AHB-AHB桥通常可以用于促进从一个AHB到另一AHB的数据传送,其中始发AHB作为从属组件连接到桥(在本文中称为‘从属’),并且目的地AHB作为AHB主组件(在本文中称为‘主’)连接到相同的桥。
已知,在包括不同功率和/或时钟域的系统中,这些功率和/或时钟域彼此不同步,并且可以具有不同的频率,以采用“握手”过程,其中时钟域协商参数,以确定每一侧在跨越域之间边界的一个或多个特定数据信号的状态方面是一致的。这是必要的,以便在这样做的安全周期期间(例如,远离由接收时钟域使用的时钟信号中的转变)使得信号可以从一个功率和/或时钟域转移到另一功率和/或时钟域。
本领域本身已知的一种握手程序是两阶段握手程序或两步握手程序。在两阶段握手程序中,发起器通过切换其请求信号的状态(即,将信号从低翻转到高或者从高翻转到低,适当地将其从先前状态改变到相反状态)而开始。然后,接收器通过切换其确认信号的状态以完成握手来确认这个请求。然而,申请人已经认识到,当在握手期间任一侧(即发起器或接收器)可以复位(或者甚至断电,使得隔离箝位值定义由另一侧观察的信号状态)时,这个两阶段过程不适合使用,因为在某些情况下,该复位可以被视为握手的完成。例如,如果确认信号先前为高并且接收器复位,则确认信号可能由于复位而改变为低,而不是作为发起器请求的实际确认。其结果是,由于接收侧实际上不能接收任何数据,因此跨越功率边界和/或时钟边界传送的任何数据将丢失。由于握手中的复位和/或断电引起的不希望的状态的改变的问题被称为去同步。
还存在本领域本身已知的四阶段握手程序,其试图克服这个缺点,例如利用格雷编码来允许检测无效转变。然而,已知的四阶段握手程序相对较慢,因为它们在定义的“空闲”阶段或“开始”阶段开始和结束每个握手,这需要四个阶段转变以返回到“空闲”或“开始”。这样,虽然四阶段握手对由于去同步引起的数据丢失更有弹性,但是四阶段握手花费的时间是两阶段握手的两倍,这将导致严重的吞吐量损失。
本发明的目的是提供用于在两个不同功率和/或时钟域之间通信的改进的系统和方法。
发明内容
当从第一方面来看时,本发明提供了一种异步桥,其被布置成跨越异步接口将数据从第一总线传送到第二总线,所述异步接口在所述第一总线和所述第二总线之间,所述异步桥包含:
从属模块,其连接到所述第一总线且包含状态互斥体发起器和信号标发起器;以及
主模块,其连接到所述第二总线且包含状态互斥体终止器和信号标终止器;
其中所述状态互斥体发起器和所述状态互斥体终止器连通在一起以形成可锁定状态互斥体;
其中所述从属模块被布置成确定所述状态互斥体是否被锁定,并且其中所述状态互斥体被布置成当所述从属模块和所述主模块中的任一个被复位时解锁;
所述异步桥被布置成使得:
如果当所述从属模块有数据要发送给所述主模块时所述状态互斥体未被锁定,所述异步桥尝试锁定所述状态互斥体;
如果当所述从属模块有数据要发送给所述主模块时所述状态互斥体已被锁定,所述信号标发起器切换数据请求标志并且将所述数据跨越所述异步接口发送给所述主模块;以及
所述信号标终止器在所述主模块从所述从属模块接收所述数据之后切换数据确认标志。
本发明的这个第一方面扩展到一种操作异步桥的方法,所述异步桥被布置成跨越异步接口将数据从第一总线传送到第二总线,所述异步接口在所述第一总线和所述第二总线之间,所述异步桥包含:
从属模块,其连接到所述第一总线且包含状态互斥体发起器和信号标发起器;以及
主模块,其连接到所述第二总线且包含状态互斥体终止器和信号标终止器;
其中所述状态互斥体发起器和所述状态互斥体终止器连通在一起以形成可锁定状态互斥体;
其中所述从属模块被布置成确定所述状态互斥体是否被锁定,并且其中所述状态互斥体被布置成当所述从属模块和所述主模块中的任一个被复位时解锁;
所述方法包含:
如果当所述从属模块有数据要发送给所述主模块时所述状态互斥体未被锁定,则尝试锁定所述状态互斥体;
如果当所述从属模块有数据要发送给所述主模块时所述状态互斥体已被锁定,则操作所述信号标发起器切换数据请求标志并且将所述数据跨越所述异步接口发送给所述主模块;以及
操作所述信号标终止器在所述主模块从所述从属模块接收所述数据之后切换数据确认标志。
当从第二方面来看时,本发明提供一种握手算法,所述握手算法用于实现一种异步桥,所述异步桥被布置成跨越异步接口将数据从第一总线传送到第二总线,所述异步接口在所述第一总线和所述第二总线之间,所述异步桥包含:
总线从属模块,其连接到所述第一总线且包含前向信道发起器和反向信道终止器;以及
总线主模块,其连接到所述第二总线且包含前向信道终止器和反向信道发起器;
其中所述前向信道发起器和所述前向信道终止器连通在一起以形成用于仲裁对信号的访问的可锁定互斥体,所述信号用于在逻辑之间从所述前向信道发起器功率和/或时钟域向所述前向信道终止器功率和/或时钟域传送数据;
其中所述反向信道发起器和所述反向信道终止器连通在一起以形成用于仲裁对信号的访问的可锁定互斥体,所述信号用于在逻辑之间从所述反向信道发起器功率和/或时钟域向所述反向信道终止器功率和/或时钟域传送数据;
其中,每个发起器和终止器对被连接,形成针对数据信道具有值一的互斥体或信号标,
所述异步桥被布置成使得:
如果所述桥的任一侧被复位或断电从而引起所述互斥体的去同步,则所述去同步由另一侧的所述发起器或所述终止器检测到;
如果所述桥的两侧都被复位(或断电)从而引起去同步,则发生自动再同步;
如果两侧都是同步的,则所述前向数据信道和所述反向数据信道可以用于在功率和/或时钟域之间传送数据,如由这个桥所实现的总线协议所要求的;
如果所述桥的两侧都被复位,则在第一次使用信道时,使用两阶段握手来发信号通知使用所述桥的意图,其中发起器和终止器都根据包含两个信号都被复位为高或两个信号都被复位为低的定义状态从对状态的请求和对状态的确认开始,由此在所述发起器切换其状态请求信号并且所述终止器作为响应切换其状态确认信号之后,两侧之间的所述状态被锁定;
如果异步数据信道的两侧都具有状态锁,则所述状态请求信号和所述状态确认信号不允许再改变,这样一旦被断言,这些信号就被布置成保持它们的值,直到任一侧去同步;
如果异步数据信道的两侧都具有状态锁,则状态请求或状态确认到复位值的切换被另一侧视为去同步;
如果获得状态锁,则使用两个附加信号来实现握手,由此数据请求信号的每次切换指示对握手的请求,而数据确认的每次切换指示所述握手的完成;
如果在数据传送期间,所述状态信号改变值,并且因此检测到去同步,则所述检测侧被布置成将所有信号改变为复位值,当所述去同步侧的复位在另一侧能够返回到所述复位值之前完成时,所述去同步侧被布置成一直等到跨越边界的所有握手信号再次变为它们的复位值为止。
当从第三方面来看时,本发明提供了一种使用异步桥跨越异步接口将数据从第一总线传送到第二总线的方法,所述异步接口在所述第一总线和所述第二总线之间,所述异步桥包含:
总线从属模块,其连接到所述第一总线且包含第一功率和/或时钟域中的前向信道发起器和反向信道终止器;以及
总线主模块,其连接到所述第二总线且包含第二功率和/或时钟域中的前向信道终止器和反向信道发起器;
其中所述前向信道发起器和所述前向信道终止器连通以形成用于仲裁对信号的访问的前向可锁定互斥体,所述信号用于从所述第一功率和/或时钟域向所述第二功率和/或时钟域传送数据;以及
其中所述反向信道发起器和所述反向信道终止器连通以形成用于仲裁对信号的访问的反向可锁定互斥体,所述信号用于从所述第二功率和/或时钟域向所述第一功率和/或时钟域传送数据;
所述方法包含:
如果所述异步桥的任一侧被复位或断电从而引起所述互斥体的去同步,则由另一侧的所述发起器或所述终止器检测所述去同步;
如果所述异步桥的两侧都被复位或断电从而引起去同步,则自动执行再同步;
如果所述异步桥的两侧同步,则使用所述前向数据信道和所述反向数据信道在所述第一和第二功率和/或时钟域之间传送数据;
如果所述异步桥的两侧都被复位,则第一次使用信道时,使用两阶段握手来发信号通知使用所述异步桥的意图,所述异步桥包含所述发起器和所述对应的终止器中的一个,所述发起器和所述对应的终止器中的一个根据包含两个信号都被复位为高或两个信号都被复位为低的定义状态分别开始对状态的请求和对状态的确认,由此在所述发起器切换其状态请求信号并且所述终止器作为响应切换其状态确认信号之后,两侧之间的所述状态被锁定;
如果异步数据信道的两侧都具有状态锁,则一旦被断言就所述阻止状态请求信号和所述状态确认信号发生改变;
如果异步数据信道的两侧都具有状态锁,则将状态请求或状态确认到复位值的切换视为去同步;
如果获得状态锁,则使用两个附加信号来实现握手,由此数据请求信号的每次切换指示对握手的请求,而数据确认的每次切换指示所述握手的完成;
如果在数据传送期间,所述状态信号改变值,并且因此检测到去同步,则所述检测侧将所有信号改变为对应的复位值,当所述去同步侧的复位在另一侧能够返回到所述复位值之前完成时,所述去同步侧一直等到跨越边界的所有握手信号再次变为它们的复位值为止。
当从第四方面来看时,本发明提供了一种使用异步桥跨越异步接口将数据从第一总线传送到第二总线的方法,所述异步接口在所述第一总线和所述第二总线之间,所述异步桥包含:
总线从属模块,其连接到所述第一总线且包含第一功率和/或时钟域中的前向信道发起器;以及
总线主模块,其连接到所述第二总线且包含第二功率和/或时钟域中的前向信道终止器;
其中所述前向信道发起器和所述前向信道终止器连通以形成用于仲裁对信号的访问的前向可锁定互斥体,所述信号用于从所述第一功率和/或时钟域向所述第二功率和/或时钟域传送数据;
所述方法包含:
如果所述可锁定互斥体已被锁定,则使用前向数据信道在所述第一和第二功率和/或时钟域之间传送数据;
如果所述可锁定互斥体未被锁定,则所述前向信道发起器切换状态请求信号并且所述前向信道终止器作为响应切换状态确认信号;所述可锁定互斥体由此被锁定。
本发明的这个第四方面延伸到一种异步桥,所述异步桥被布置成跨越异步接口将数据从第一总线传送到第二总线,所述异步接口在所述第一总线和所述第二总线之间,所述异步桥包含:
总线从属模块,其连接到所述第一总线且包含第一功率和/或时钟域中的前向信道发起器;以及
总线主模块,其连接到所述第二总线且包含第二功率和/或时钟域中的前向信道终止器;
其中所述前向信道发起器和所述前向信道终止器连通以形成用于仲裁对信号的访问的前向可锁定互斥体,所述信号用于从所述第一功率和/或时钟域向所述第二功率和/或时钟域传送数据;
其中所述异步桥被布置成使得:
如果所述可锁定互斥体已被锁定,则所述异步桥使用前向数据信道在所述第一和第二功率和/或时钟域之间传送数据;
如果所述可锁定互斥体未被锁定,则所述前向信道发起器切换状态请求信号并且所述前向信道终止器作为响应切换状态确认信号;所述可锁定互斥体由此被锁定。
在一组实施例中,所述总线从属模块包含反向信道终止器,并且所述总线主模块包含反向信道发起器
其中所述反向信道发起器和所述反向信道终止器连通以形成用于仲裁对信号的访问的反向可锁定互斥体,所述信号用于从所述第二功率和/或时钟域向所述第一功率和/或时钟域传送数据。
在前述实施例的集合中,所述方法进一步包含:
如果所述反向可锁定互斥体已被锁定,则使用反向数据信道在所述第二和第一功率和/或时钟域之间传送数据;
如果所述反向可锁定互斥体未被锁定,则所述反向信道发起器切换状态请求信号并且所述反向信道终止器作为响应切换状态确认信号;所述反向可锁定互斥体由此被锁定。
在一组实施例中,如果所述异步桥的任一侧被复位或断电从而引起所述可锁定互斥体和/或所述反向可锁定互斥体的去同步,则由另一侧的所述发起器或所述终止器检测所述去同步;
在一组实施例中,如果所述异步桥的两侧都被复位或断电从而引起去同步,则自动执行再同步。
在一组实施例中,如果所述可锁定互斥体和/或所述反向可锁定互斥体被锁定,并且状态请求信号或状态确认信号改变值,则执行再同步。
在前述实施例的集合中,所述再同步包含所述信道发起器切换状态请求信号和所述对应的信道终止器作为响应切换状态确认信号中的一个;所述可锁定互斥体和/或所述反向可锁定互斥体由此被锁定。
在一组实施例中,如果所述可锁定互斥体和/或所述反向可锁定互斥体已被锁定,则阻止所述状态请求和状态确认信号发生改变。
在一组实施例中,如果所述可锁定互斥体和/或所述反向可锁定互斥体已被锁定,则使用两个附加信号来实现握手,由此数据请求信号的每次切换指示对握手的请求,而数据确认的每次切换指示所述握手的完成。
在一组实施例中,如果在数据传送期间所述状态请求和/或状态确认信号改变值,则从属模块和主模块中已经检测到所述值的改变的模块将所有信号改变为对应的复位值,并且当所述从属模块和所述主模块中的另一模块的复位在另一侧能够返回到所述复位值之前完成时,所述另一模块一直等到跨越边界的所有握手信号再次变为它们的复位值为止。
当从第五方面来看时,本发明提供了一种异步桥,其被布置成跨越异步接口将数据从第一总线传送到第二总线,所述异步接口在所述第一总线和所述第二总线之间,所述异步桥包含:
从属模块,其连接到所述第一总线且包含状态互斥体发起器;以及
主模块,其连接到所述第二总线且包含状态互斥体终止器;
其中,所述状态互斥体发起器和所述状态互斥体终止器连通在一起以形成可锁定状态互斥体,其中所述从属模块被布置成确定所述状态互斥体是否被锁定,并且其中所述状态互斥体被布置成当所述从属模块和所述主模块中的任一个被复位时解锁;
所述异步桥被布置成使得:
如果当所述从属模块有数据要发送给所述主模块时所述状态互斥体未被锁定,所述异步桥尝试锁定所述状态互斥体;
如果当所述从属模块有数据要发送给所述主模块时所述状态互斥体已被锁定,所述从属模块切换数据请求信号并且将所述数据跨越所述异步接口发送给所述主模块;以及
所述主模块在所述主模块从所述从属模块接收所述数据之后切换数据确认信号。
当从第六方面来看时,本发明提供了一种异步桥,其用于跨越异步接口将数据从第一总线传送到第二总线,所述异步接口在所述第一总线和所述第二总线之间,所述异步桥包含:
第一模块,所述第一模块连接到所述第一总线,所述第一模块包含第一功率和/或时钟域中的发起器;以及
第二模块,所述第二模块连接到所述第二总线,所述第二模块包含第二功率和/或时钟域中的终止器;
其中所述发起器和所述终止器连通以形成用于仲裁对信号的访问的可锁定互斥体,所述信号用于从所述第一功率和/或时钟域向所述第二功率和/或时钟域传送数据;
所述异步桥被布置成使得:
如果所述可锁定互斥体已被锁定,则所述异步桥在所述第一和第二功率和/或时钟域之间传送数据;
如果所述可锁定互斥体未被锁定,则所述第一和第二模块中的一个切换状态请求信号并且所述第一和第二模块中的另一个作为响应切换状态确认信号;所述可锁定互斥体由此被锁定。
在所述第一和第二模块中的一个或两个被复位或断电的一组实施例中,所述互斥体变成已解锁的。
当从第七方面来看时,本发明提供了一种异步桥,其用于跨越异步接口将数据从第一总线传送到第二总线,所述异步接口在所述第一总线和所述第二总线之间,所述异步桥包含:
第一模块,所述第一模块连接到所述第一总线,所述第一模块处于第一功率和/或时钟域;
第二模块,所述第二模块连接到所述第二总线,所述第二模块处于第二功率和/或时钟域;以及
一个状态指示器,所述状态指示器被布置成用于指示所述第一和第二模块是否同步,
其中如果所述状态指示器指示所述第一和第二模块是同步的,则所述异步桥被布置成使用两阶段握手程序在所述第一和第二总线之间传送数据,并且其中如果所述状态指示器指示所述第一和第二模块不是同步的,则所述异步桥被布置成使用四阶段握手程序在所述第一和第二总线之间传送数据。
根据本发明的实施例,提供了一种改进的电子装置及其操作方法,其中使用改进的四阶段握手来确定在完成跨越所述异步接口的数据传送之前所述从属模块和所述主模块是否已经被去同步。申请人已经认识到,当没有状态同步可用时(例如,当一侧或两侧没有加电并且准备好使用时),这样的布置可能导致具有与传统四阶段握手相同数目阶段的握手协议,即,专用于执行状态握手的两个步骤,以及然后专用于执行数据传送握手的两个步骤,但是,随后的数据传送只需要两阶段数据传送握手,直到主模块和从属模块之一或两者复位(并且由于去同步而丢失状态“已锁定”)。
至少在实施例中,对第一转变执行初始四阶段握手,并且使用所描述的握手以便监视从属模块和主模块都没有复位并引起去同步(因为如果这些模块中的一个或两个复位,则信号标/互斥体必须复位,即失去其锁定),这提供了与如上所述的某些已知四阶段握手程序相关联的鲁棒性。然而,后续转变可以有利地以通常与两阶段握手程序相关联的速度发生,因为信号标/互斥体用于确保在初始四阶段握手程序中较早建立的同步状态仍然是可信的,从而消除了检查每个数据转变的同步状态的需要。
如前面所概述的,本领域技术人员应当理解,这里所使用的术语“去同步”及其派生词意味着发起器模块和终止器模块彼此“失步”,例如在每个模块的内部状态彼此冲突的情况下,所述发起器模块和终止器模块从它们的时钟域的观点来看通常是异步的,但是通过使用握手布置来实现互斥体而跨越异步接口进行通信。因此,这种状态的未对准不仅仅是模块如何被定时的结果。
由于大多数总线协议仅提供响应于主控器的请求而由所述从控器将数据发送到所述总线主控器的可能性,所以所述桥的所述反向数据信道可以仅在所述前向数据信道用于将请求从在一个功率和/或时钟域中具有总线主控器的组件传递到在另一功率和/或时钟域中具有总线主控器的组件时使用。这样,所述握手的状态部分可以为前向互斥体和反向互斥体提供相同的信息。为了节省时间和逻辑,所述反向信道因此可以在针对两个信道同时发生任何去同步时使用所述前向信道的状态锁。
本领域技术人员应当理解,所描述的握手可以被视为状态握手或状态互斥体与数据握手或数据互斥体的组合。
当跨越异步边界应用现有的两阶段握手和四阶段握手时,当采样数据(跨越这个异步边界)时,由于复位或其他原因引起的去同步可能导致数据危险以及导致由于控制信号上的数据危险(信号之间的元稳定性或异步复位)而引起的竞争条件。实施例可以寻求通过以下的任何一个或多个来减轻这些问题:将检测到的数据互斥体的相位变化延迟一个周期、在捕获之后将数据保持足够的周期以检测所捕获的数据是否有效(降低吞吐量),或者向桥组件提供早期警告信号,警告另一侧必然很快复位并且应当忽略来自数据互斥体的任何变化以阻止数据危险发生(最佳性能)。
在一些配置中,可以仅使用来自“控制信道”的信息来检测和恢复接收侧的任何意外复位,其中由状态互斥体处理的一个信道携带状态信息(从属模块和主模块都准备好执行转变),而由信号标或数据互斥体处理的第二信道(例如,信号标发起器和信道对)提供转变专用的握手以保护跨越异步接口(即功率和/或时钟边界)的数据。
申请人已经认识到,与本领域本身已知的传统两阶段握手程序不同,根据本发明实施例的异步桥可以支持多个独立的功率域和复位。此外,因为功率和复位状态可以由此类桥在本地确定,所以有利地不需要全局功率和时钟管理器。
本领域内的技术人员应当理解,互斥体通常是提供互斥并发控制(即,确保并发操作的正确结果的控制)的布置。在一些实施例中,状态互斥体包含控制请求标志、控制确认标志和互斥体锁定标志,其中所述状态互斥体被布置成使得:
仅当控制确认标志未被提出时,状态互斥体发起器才提出控制请求标志;
仅当互斥体锁定标志未被提出时,状态互斥体终止器才响应于控制请求标志被提出而提出控制确认标志;
状态互斥体被锁定,并且状态互斥体发起器响应于控制确认标志被提出而提出互斥体锁定标志。
状态互斥体可以被认为是所述握手的实现部分,所述握手确保两侧都准备好使用。
本文中提到的信号标可以具有值1,因此可以被认为是互斥体或数据互斥体。因此,本文中对信号标发起器和信号标终止器的引用可以相应地理解为分别对互斥体发起器和互斥体终止器的引用,或者对数据互斥体发起器和数据互斥体终止器的引用。
在一组此类实施例中,当在状态互斥体未被锁定的同时控制请求标志和互斥体锁定标志被提出时,主模块被布置成确定发生了去同步事件。
因此,根据此类实施例,从属模块可以被布置成确定去同步事件还没有被主模块检测到,这由正在被提出的控制确认标志来指示,即使从属模块自上次从属模块复位以来没有提出控制请求标志。
应当了解,上文中所述的本发明的实施例提供从第一总线到第二总线的数据通信,使得从属模块的信号标/数据互斥体发起器和主模块的信号标/数据互斥体终止器形成转变信道。在一些实施例中,从属模块包含返回(反向信道)数据互斥体/信号标终止器并且主模块包含返回数据互斥体/信号标发起器,其中所述异步桥进一步被布置成使得:
如果当所述主模块有数据要发送给所述从属模块时所述状态互斥体未被锁定,所述异步桥尝试锁定所述状态互斥体;
如果当所述主模块有数据要发送给所述从属模块时所述状态互斥体已被锁定,所述信号标/数据互斥体发起器切换返回数据请求标志并且跨越所述异步接口将所述数据发送到所述从属模块;以及
所述返回信号标/数据互斥体终止器在所述从属模块从所述主模块接收到所述返回数据之后切换返回数据确认标志。申请人已经意识到,向所述从属模块提供返回信号标/数据互斥体发起器、向所述主模块提供返回信号标/数据互斥体终止器提供了返回信道,主模块可以跨越所述返回信道向所述从属模块发送返回数据。
在至少一些实施例中,当所述从属模块有数据要发送到所述主模块时,所述从属模块提出有效标志,其中当所述从属模块复位时,所述有效标志被清除。优选地,当所述从属模块和所述主模块中的任一个被复位时,所述有效标志被清除。在如上所述提供返回信道的一组可能重叠的实施例中,当所述主模块有数据要发送到所述从属模块时,所述主模块提出另一有效标志,其中当所述主模块复位时,所述另一有效标志被清除。优选地,当所述从属模块和所述主模块中的任一个被复位时,所述另一有效标志被清除。
本领域内的技术人员应当理解,根据所要求保护的本发明的实施例操作的异步桥可以克服发生导致所述主模块和/或所述从属模块中的错误行为的非计划断电(或复位)的问题。然而,申请人已经认识到,在一些情况下,断电和复位可以被预先知道,即,它们是预定的,尽管并不总是提前很长时间,即此类复位可以被预定一定时间或者可以响应于特定事件被紧急预定。在一些实施例中,当所述从属模块具有电源关闭事件或预定的复位事件时,所述从属模块被布置成直接向所述主模块发送警告信号,其中所述主模块被布置成在接收到所述警告信号时中止当前任何跨越异步接口的数据转变。在一组可能重叠的实施例中,当所述主模块具有电源关闭事件或预定的复位事件时,所述主模块被布置成直接向所述从属模块发送警告信号,其中所述从属模块被布置成在接收到所述警告信号时中止当前任何跨越异步接口的数据转变。因此,根据此类实施例,可以在其它模块即将断电之前警告所述从属模块和/或所述主模块,并且中止当前任何的转变以阻止错误。
附图说明
现在将参考附图仅以非限制性的实例的方式描述本发明的某些实施例,其中:
图1是根据本发明的实施例的异步桥的示意图;
图2是展示由图1中的异步桥执行的握手和传送程序的流程图;
图3是展示在图1中的异步桥中使用的状态互斥体锁定操作的时序图;
图4是展示当从属模块在主模块具备其时钟之前复位时图1中的异步桥的去同步操作的时序图;
图5是展示当从属模块断开状态互斥体锁定时图1中的异步桥的操作的时序图;
图6是展示当主模块断开状态互斥体锁定时图1中的异步桥的操作的时序图;以及
图7是展示在图1中的异步桥中使用的信号标的操作的时序图。
图1是根据本发明的实施例的异步桥2的示意图;异步桥2包含由异步边界7分开的从属模块4和主模块6。这个异步边界7是从属模块4和主模块6位于不同功率域和时钟域内的结果。当然可以理解,从属模块4和主模块6可以在不同的时钟域中,但是在相同的功率域中,反之亦然,然而在这个示范性实施例中,模块4、模块6在不同的时钟和功率域中。
从属模块4包含:状态互斥体发起器8;AHB接收器10;数据互斥体发起器12;以及数据互斥体终止器14。AHB接收器10包含:有限状态机(FSM)16;以及两个多触发器同步器18、20。AHB接收器10被称为“接收器”,因为它从第一总线11接收数据。
主模块6包含:状态互斥体终止器22;AHB发射器24;数据互斥体终止器26;以及数据互斥体发起器28。AHB发射器24包含:FSM 30;以及两个多触发器同步器32、34。AHB发射器24被称为发射器,因为它向第二总线13发送数据。
从属模块4的状态互斥体发起器8和主模块6的状态互斥体终止器22一起形成“状态互斥体”,即监视从属模块4和主模块6之间的跨越异步接口7的连接的状态的互斥体,这将在下面进一步详细描述。
类似地,从属模块4的数据互斥体发起器12和主模块6的数据互斥体终止器26一起形成从属模块4和主模块6之间的转变信道,而从属模块4的数据互斥体终止器14和主模块6的数据互斥体发起器28一起形成从属模块4和主模块6之间的返回信道。
下面参考图2描述用于将数据43从第一总线11传送到第二总线13的程序,所述图是展示当从属模块4经由第一总线11接收到需要跨越异步接口7(即在时钟域和功率域边界上)传送到第二总线13的数据时由异步桥2执行的握手和传送程序的流程图。
程序在步骤100被初始化,并且从属模块4在步骤102确定状态互斥体当前是否已被锁定。如果状态互斥体当前未被锁定,则从属模块确定控制确认标志38是否被提出。如果控制确认标志38未被提出,则状态互斥体发起器8在步骤106提出控制请求标志36,所述控制请求标志36由状态互斥体终止器22检测。然而,如果在步骤104,控制确认标志38被提出,尽管控制请求标志36还没有被提出,这指示去同步101已经发生并且异步桥2在步骤103一直等到从属模块4和主模块6都检测到去同步101为止,然后返回到步骤102并且检查状态互斥体是否已被锁定。
假设在步骤104没有检测到去同步并且在步骤106提出了控制请求标志,则在步骤108,主模块6确定是否提出了锁定标志40。如果锁定标志40当前未被提出,则在步骤110,状态互斥体终止器22响应于控制请求标志36而提出控制确认标志38,所述控制请求标志36由状态互斥体发起器8检测。然而,如果在步骤108锁定标志40在控制确认标志38被提出之前被提出,则这指示去同步101。如上所述,异步桥2在步骤103一直等到从属模块4和主模块6都检测到去同步101为止,然后返回到步骤102并且检查状态互斥体是否已被锁定。
在步骤112,状态互斥体发起器8提出互斥体锁定标记40,并且由状态互斥体发起器8和状态互斥体终止器22形成的互斥体被锁定。这个请求和确认程序实质上形成第一两阶段握手。
使用所述互斥体执行的程序确保从属模块4和主模块6彼此同步(即,“协调”),并且在整个数据转变中监视去同步,如下所述。
如果互斥体已被锁定,则AHB接收器10可以跨越异步接口7将经由第一总线11接收的数据传送到主模块6。在步骤114,为了发信号通知数据将从从属模块4传送到主模块6,转变信道的数据互斥体发起器12(即从属模块4的数据互斥体发起器12)切换数据请求标志42的值。应当理解,通过切换数据请求标志42的值,这意味着将所述值改变为其当前值的逻辑否定,即,如果它当前是数字‘1’,则它被改变为数字‘0’,反之亦然。然后AHB接收器10将数据43通过多触发器同步器18跨越异步接口7传送,并且提出有效标志45。
转变信道的数据互斥体终止器26(即,主模块6的数据互斥体终止器26)检测到数据请求标志42中的这个变化,并且根据有效标志45确定有效数据43存在并且准备传送到第二总线13。主模块6内的AHB发射器24经由多触发器同步器32从AHB接收器10(即从从属模块4)接收数据43。在步骤118,然后数据互斥体终止器26切换数据确认标志44的值以匹配数据请求标志42的值,确认数据43的安全接收。
在步骤120确定是否将跨越异步接口7传送更多数据。如果另外的数据要从第一总线11传送到第二总线13,则程序返回到步骤102,并且如上所述重复该过程。否则,程序在步骤122结束。
虽然图2中未展示,但是主模块6内的AHB发射器24可以类似地使用返回信道跨越异步接口7向AHB接收器10传送数据,即使用主模块6的数据互斥体发起器28和从属模块4的数据互斥体终止器14。为了发信号通知数据将从主模块6传送到从属模块4,返回信道的数据互斥体发起器28切换数据请求标志46的值。然后AHB发射器24将数据47通过多触发器同步器34跨越异步接口7传送,并且提出有效标志49。
返回信道的数据互斥体终止器14(即,从属模块4的数据互斥体终止器14)检测到数据请求标志46中的这个变化,并且根据有效标志49确定有效数据47存在并且准备传送到第一总线11。从属模块4内的AHB接收器10经由多触发器同步器20从AHB发射器24(即从主模块6)接收数据47。然后数据互斥体终止器14切换数据确认标志48的值以匹配数据请求标志46的值,确认数据47的安全接收。
图3是展示在图1中的异步桥中使用的状态互斥体锁定操作的时序图。最初,在时间t0,通过将从属模块4的异步复位信号arst_slave保持在逻辑高来将从属模块4保持在复位。在时间t1,从属模块4的异步复位信号arst_slave被设置成逻辑低,允许从属模块4退出复位。随后,在时间t2,从属模块4通过将内部信号getLock_slave设置成高来开始锁定状态互斥体的过程,并且还发起时钟信号ck_slave,所述时钟信号ck_slave对包括用于从第一总线11传送数据的多触发器同步器18、20的从属模块4内的组件进行计时。
在时间t3,状态互斥体发起器8提出控制请求标志36,如前面所述。在这种情况下,不发生去同步,并且状态互斥体终止器22确定其应该确认所述请求。在其这样做之前,在t4初始化由主控器的组件使用的时钟信号ck_master。主模块6随后确定没有发生去同步,因此可以在t5将内部信号hasLock_master设置成逻辑高,指示主模块6认为状态互斥体被锁定(待从属模块4执行相同操作)。
状态互斥体终止器22随后在t6提出控制确认标志38,所述出控制确认标志38由状态互斥体发起器8检测。状态互斥体发起器8在t7将内部信号hasLock_slave设置成逻辑高,指示从属模块4认为状态互斥体被锁定。状态互斥体发起器8然后在t8将锁定标志40设置成逻辑高,指示状态互斥体被锁定。
图4是展示当从属模块在主模块具备其时钟之前复位时图1中的异步桥的去同步操作的时序图。当尝试锁定状态互斥体时,状态互斥体发起器8仅在控制确认标志38为低时将保持锁定标志40为低,并将控制请求标志36拉高,如前面所述。
在初始空闲周期50之后,在时间t9,通过脉冲调制从属模块4的异步复位信号arst_slave到逻辑高来复位从属模块4。从属模块50的复位还将控制请求标志36和锁定标志40拉到逻辑低。一旦从属模块4的异步复位信号arst_slave返回到逻辑低,从属模块4就被允许不复位,并且从属模块进入‘自举’周期52,在所述周期52期间从属模块4尝试开始锁定状态互斥体,如上面如参考图3所述,将内部信号getLock_slave设置成高,并且发起时钟信号ck_slave,如前面所述。
然而,在时间t10,当尝试锁定状态互斥体时,控制确认标志38已经为高,这表明主模块6还没有检测到去同步。然后,从属模块4进入等待周期54,直到主模块6检测到去同步已经发生(即主模块6确定从属模块4已经被复位)。主模块6在时间t11检测状态互斥体的锁定丢失,并且将其内部信号hasLock_master设置成逻辑低,并且将指示已丢失其锁定的状态互斥体的另一内部信号lostLock_master脉冲调制为逻辑高。
一旦检测到这一点,在时间t12,状态互斥体进入锁定周期56,其中状态互斥体发起器8和终止器22经历上述锁定程序,使得状态互斥体被锁定。然后,在时间t13,状态互斥体进入锁定状态58,直到锁定在稍后的时间丢失(未展示)。
图5是展示当从属模块4断开状态互斥体锁定时图1中的异步桥的操作的时序图在时间t14,通过将从属模块4的异步复位信号arst_slave拉到逻辑高来复位从属模块4。当这种情况发生时,由状态互斥体发起器8管理的状态互斥体控制信号,即控制请求标志36和锁定标志40被拉到逻辑低。主模块6在t15检测锁定的丢失,并将其内部信号hasLock_master设置成逻辑低,并且将lostLock_master脉冲调制成逻辑高。然后,状态互斥体终止器22在t16将控制确认标志38设置成逻辑低。
类似地,图6是展示当主模块6断开状态互斥体锁定时图1中的异步桥的操作的时序图。
在时间t17,通过将主模块6的异步复位信号arst_master拉到逻辑高来复位主模块6。当这种情况发生时,由状态互斥体终止器22管理的状态互斥体控制信号,即控制确认标志38被拉到逻辑低。从属模块4在t18检测到锁定丢失,并将内部信号hasLock_slave设置成逻辑低,并且将指示互斥体锁已丢失的信号lostLock_slave脉冲调制为逻辑高。然后,状态互斥体发起器8在t19将控制请求标志36和锁定标志40设置成逻辑低。
图7是展示在图1中的异步桥中使用的数据互斥体的操作的时序图。在时间t20,通过将主模块6的异步复位信号arst_master设置成逻辑低,主模块6从复位中释放。在时间t21,通过将从属模块4的异步复位信号arst_slave设置成逻辑低,从属模块4也从复位中释放,并且数据互斥体发起器12将信号newTrans(in)脉冲调制为逻辑高,向从属模块4的FSM16指示将发生数据转变事件。在这个时间t21,数据互斥体发起器也开始传送数据43。
一旦数据43已建立并稳定,数据互斥体发起器12就在t22切换数据请求标志42的值,然后AHB接收器10通过多触发器同步器18跨越异步接口7传送数据43。为了正确操作,数据43必须保持稳定直到其被主模块6接收。
在数据互斥体终止器26同步数据请求标志42的切换之后,数据互斥体终止器26在t23将信号newTrans(out)脉冲调制到逻辑高,向主模块6的FSM 30指示正在发生转变。在采样数据43之后,主模块6的FSM 30在t24将另一信号acceptTrans(in)设置成逻辑高,指示主模块6已成功地接受转变。然后,主模块6在t25切换数据确认标志44以匹配数据请求标志42的值。
在检测到数据请求标志42的切换之后,从属模块4在t26将另一信号acceptTrans(out)脉冲调制到逻辑高,指示所述确认已被从属模块4成功地接受,并且在t27将等待信号布置成逻辑低,从而结束转变。
参考图7描述的过程然后可以连续重复,直到状态互斥体失去其锁定。
因此,本领域的技术人员应当理解,本发明的实施例提供了一种包括振荡器电路的改进的电子装置和一种用于操作所述电子装置的改进的方法,其中对于初始转变使用四阶段握手,在所述初始转变中,使用互斥体来监视桥的同步状态,但是只要互斥体保持锁定,两阶段转变就用于另外的转变。因此,与传统的两阶段握手相比,根据本发明的实施例的异步桥对去同步事件更具鲁棒性,同时比传统的四阶段握手更快地执行转变。本领域内的技术人员应当理解,上述实施例仅仅是示范性的,并不限制本发明的范围。
Claims (16)
1. 一种使用异步桥跨越异步接口将数据从第一总线传送到第二总线的方法,所述异步接口在所述第一总线和所述第二总线之间,所述异步桥包含:
总线从属模块,其连接到所述第一总线且包含第一功率和/或时钟域中的前向信道发起器;以及
总线主模块,其连接到所述第二总线且包含第二功率和/或时钟域中的前向信道终止器;
其中所述前向信道发起器和所述前向信道终止器连通以形成用于仲裁对信号的访问的前向可锁定互斥体,所述信号用于从所述第一功率和/或时钟域向所述第二功率和/或时钟域传送数据;
所述方法包含:
如果所述可锁定互斥体已被锁定,则使用前向数据信道在所述第一功率和第二功率和/或时钟域之间传送数据;
如果所述可锁定互斥体未被锁定,则所述前向信道发起器切换状态请求信号并且所述前向信道终止器作为响应切换状态确认信号;所述可锁定互斥体由此被锁定。
2.根据权利要求1所述的方法,其中所述总线从属模块包含反向信道终止器,并且所述总线主模块包含反向信道发起器;
其中所述反向信道发起器和所述反向信道终止器连通以形成用于仲裁对信号的访问的反向可锁定互斥体,所述信号用于从所述第二功率和/或时钟域向所述第一功率和/或时钟域传送数据。
3.根据权利要求2所述的方法,其进一步包含:
如果所述反向可锁定互斥体已被锁定,则使用反向数据信道在所述第二功率和第一功率和/或时钟域之间传送数据;
如果所述反向可锁定互斥体未被锁定,则所述反向信道发起器切换状态请求信号并且所述反向信道终止器作为响应切换状态确认信号;所述反向可锁定互斥体由此被锁定。
4.根据权利要求1所述的方法,其进一步包含:
如果所述异步桥的任一侧被复位或断电从而引起所述可锁定互斥体的去同步,则由另一侧的所述发起器或终止器检测所述去同步。
5.根据权利要求2或3所述的方法,其进一步包含:
如果所述异步桥的任一侧被复位或断电从而引起所述反向可锁定互斥体的去同步,则由另一侧的所述发起器或终止器检测所述去同步。
6.根据权利要求1-4中任一项所述的方法,其进一步包含:
如果所述异步桥的两侧都被复位或断电从而引起去同步,则自动执行再同步。
7.根据权利要求1-4中任一项所述的方法,其进一步包含:
如果所述可锁定互斥体被锁定,并且状态请求信号或状态确认信号改变值,则执行再同步。
8.根据权利要求2或3所述的方法,其进一步包含:
如果所述反向可锁定互斥体被锁定,并且状态请求信号或状态确认信号改变值,则执行再同步。
9.根据权利要求6所述的方法,其中所述再同步包含所述信道发起器切换状态请求信号和所述对应的信道终止器作为响应切换状态确认信号中的一个;所述可锁定互斥体由此被锁定。
10.根据权利要求2或3所述的方法,其进一步包含:
如果所述异步桥的两侧都被复位或断电从而引起去同步,则自动执行再同步,
其中所述再同步包含所述信道发起器切换状态请求信号和所述对应的信道终止器作为响应切换状态确认信号中的一个;所述反向可锁定互斥体由此被锁定。
11.根据权利要求1-4中任一项所述的方法,其进一步包含:
如果所述可锁定互斥体已被锁定,则阻止所述状态请求和状态确认信号发生改变。
12.根据权利要求2或3所述的方法,其进一步包含:
如果所述反向可锁定互斥体已被锁定,则阻止所述状态请求和状态确认信号发生改变。
13.根据权利要求1-4中任一项所述的方法,如果所述可锁定互斥体已被锁定,则使用两个附加信号来实现握手,由此数据请求信号的每次切换指示对握手的请求,而数据确认信号的每次切换指示所述握手的完成。
14.根据权利要求2或3所述的方法,如果所述反向可锁定互斥体已被锁定,则使用两个附加信号来实现握手,由此数据请求信号的每次切换指示对握手的请求,而数据确认信号的每次切换指示所述握手的完成。
15.根据权利要求1-4中任一项所述的方法,其进一步包含:
如果在数据传送期间所述状态请求和/或状态确认信号改变值,则从属模块和主模块中已经检测到所述值的改变的模块将所有信号改变为对应的复位值,并且当所述从属模块和所述主模块中的另一模块的复位在另一侧能够返回到所述复位值之前完成时,所述另一模块一直等到跨越边界的所有握手信号再次变为它们的复位值为止。
16. 一种异步桥装置,所述异步桥装置被布置成跨越异步接口将数据从第一总线传送到第二总线,所述异步接口在所述第一总线和所述第二总线之间,所述异步桥装置包含:
总线从属模块,其连接到所述第一总线且包含第一功率和/或时钟域中的前向信道发起器;以及
总线主模块,其连接到所述第二总线且包含第二功率和/或时钟域中的前向信道终止器;
其中所述前向信道发起器和所述前向信道终止器连通以形成用于仲裁对信号的访问的前向可锁定互斥体,所述信号用于从所述第一功率和/或时钟域向所述第二功率和/或时钟域传送数据;
其中所述异步桥装置被布置成使得:
如果所述可锁定互斥体已被锁定,则所述异步桥装置使用前向数据信道在所述第一功率和第二功率和/或时钟域之间传送数据;
如果所述可锁定互斥体未被锁定,则所述前向信道发起器切换状态请求信号并且所述前向信道终止器作为响应切换状态确认信号;所述可锁定互斥体由此被锁定。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB1810785.4 | 2018-06-29 | ||
GBGB1810785.4A GB201810785D0 (en) | 2018-06-29 | 2018-06-29 | Asynchronous communication |
PCT/EP2019/067013 WO2020002433A1 (en) | 2018-06-29 | 2019-06-26 | Asynchronous communication |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112585592A CN112585592A (zh) | 2021-03-30 |
CN112585592B true CN112585592B (zh) | 2024-12-20 |
Family
ID=63143788
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201980054316.XA Active CN112585592B (zh) | 2018-06-29 | 2019-06-26 | 异步通信 |
Country Status (5)
Country | Link |
---|---|
US (1) | US11321265B2 (zh) |
EP (1) | EP3814918B1 (zh) |
CN (1) | CN112585592B (zh) |
GB (1) | GB201810785D0 (zh) |
WO (1) | WO2020002433A1 (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB202105365D0 (en) * | 2021-04-15 | 2021-06-02 | Nordic Semiconductor Asa | Handshake circuits |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1983223A (zh) * | 2006-05-17 | 2007-06-20 | 华为技术有限公司 | 一种异步桥及数据传输方法 |
CN101133597A (zh) * | 2005-03-04 | 2008-02-27 | 皇家飞利浦电子股份有限公司 | 用于仲裁共享资源的电子设备和方法 |
Family Cites Families (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5088028A (en) | 1989-04-07 | 1992-02-11 | Tektronix, Inc. | Lock converting bus-to-bus interface system |
US5255375A (en) * | 1992-01-10 | 1993-10-19 | Digital Equipment Corporation | High performance interface between an asynchronous bus and one or more processors or the like |
US5710910A (en) * | 1994-09-30 | 1998-01-20 | University Of Washington | Asynchronous self-tuning clock domains and method for transferring data among domains |
US5692137A (en) | 1995-05-08 | 1997-11-25 | Apple Computer, Inc. | Master oriented bus bridge |
US6141765A (en) * | 1997-05-19 | 2000-10-31 | Gigabus, Inc. | Low power, high speed communications bus |
US6247082B1 (en) * | 1998-11-03 | 2001-06-12 | 3Com Corporation | Method and circuit for providing handshaking to transact information across multiple clock domains |
US6775732B2 (en) * | 2000-09-08 | 2004-08-10 | Texas Instruments Incorporated | Multiple transaction bus system |
US7117496B1 (en) * | 2001-05-09 | 2006-10-03 | Ncr Corporation | Event-based synchronization |
GB0204144D0 (en) | 2002-02-22 | 2002-04-10 | Koninkl Philips Electronics Nv | Transferring data between differently clocked busses |
US7694312B2 (en) * | 2004-09-10 | 2010-04-06 | Pleora Technologies Inc. | Methods and apparatus for enabling bus connectivity over a data network |
WO2006120470A2 (en) | 2005-05-12 | 2006-11-16 | Cambridge Consultants Limited | Processor and interface |
US8996152B2 (en) * | 2006-06-28 | 2015-03-31 | Nvidia Corporation | Operating system aware hardware mutex |
TWI376605B (en) | 2006-09-04 | 2012-11-11 | Novatek Microelectronics Corp | Method and apparatus for enhancing data rate of advanced micro-controller bus architecture |
WO2009069094A1 (en) | 2007-11-30 | 2009-06-04 | Nxp B.V. | Method and device for routing data between components |
KR101039782B1 (ko) * | 2009-11-26 | 2011-06-09 | 한양대학교 산학협력단 | 능동 메모리 프로세서를 포함하는 네트워크-온-칩 시스템 |
US8433875B2 (en) * | 2010-02-24 | 2013-04-30 | Esilicon Corporation | Asynchronous scheme for clock domain crossing |
KR101699784B1 (ko) * | 2010-10-19 | 2017-01-25 | 삼성전자주식회사 | 버스 시스템 및 그것의 동작 방법 |
US9537679B2 (en) * | 2011-03-16 | 2017-01-03 | The Trustees Of Columbia University In The City Of New York | Bi-modal arbitration nodes for a low-latency adaptive asynchronous interconnection network and methods for using the same |
KR101861769B1 (ko) | 2011-11-24 | 2018-05-29 | 삼성전자주식회사 | 비동기식 브릿지 및 이의 동작 방법, 및 이를 포함하는 SoC |
US9489307B2 (en) | 2012-10-24 | 2016-11-08 | Texas Instruments Incorporated | Multi domain bridge with auto snoop response |
US9880961B2 (en) | 2013-11-27 | 2018-01-30 | Arm Limited | Asynchronous bridge circuitry and a method of transferring data using asynchronous bridge circuitry |
JP6338114B2 (ja) | 2015-06-25 | 2018-06-06 | 京セラドキュメントソリューションズ株式会社 | Icチップ |
CN106909524B (zh) | 2017-03-17 | 2019-09-10 | 数据通信科学技术研究所 | 一种片上系统及其通信交互方法 |
CN108345564B (zh) | 2018-01-19 | 2020-04-14 | 深圳云天励飞技术有限公司 | 中断矩阵模块、芯片及电子设备 |
-
2018
- 2018-06-29 GB GBGB1810785.4A patent/GB201810785D0/en not_active Ceased
-
2019
- 2019-06-26 CN CN201980054316.XA patent/CN112585592B/zh active Active
- 2019-06-26 US US17/255,865 patent/US11321265B2/en active Active
- 2019-06-26 EP EP19733774.4A patent/EP3814918B1/en active Active
- 2019-06-26 WO PCT/EP2019/067013 patent/WO2020002433A1/en active Application Filing
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101133597A (zh) * | 2005-03-04 | 2008-02-27 | 皇家飞利浦电子股份有限公司 | 用于仲裁共享资源的电子设备和方法 |
CN1983223A (zh) * | 2006-05-17 | 2007-06-20 | 华为技术有限公司 | 一种异步桥及数据传输方法 |
Also Published As
Publication number | Publication date |
---|---|
WO2020002433A1 (en) | 2020-01-02 |
US11321265B2 (en) | 2022-05-03 |
CN112585592A (zh) | 2021-03-30 |
EP3814918A1 (en) | 2021-05-05 |
EP3814918B1 (en) | 2025-03-26 |
GB201810785D0 (en) | 2018-08-15 |
US20210263876A1 (en) | 2021-08-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5602878A (en) | Method of delivering stable data across an asynchronous interface | |
EP3469487B1 (en) | Triple-data-rate technique for a synchronous link | |
RU2404517C2 (ru) | Не допускающая сбоев схема мультиплексора синхросигналов и способ работы | |
US8132036B2 (en) | Reducing latency in data transfer between asynchronous clock domains | |
EP2884807B1 (en) | Clock synchronization system and method for base station | |
JPH06324977A (ja) | データ転送方法 | |
US20200389244A1 (en) | Method for a slave device for calibrating its output timing, method for a master device for enabling a slave device to calibrate its output timing, master device and slave device | |
CN112585592B (zh) | 异步通信 | |
US9436647B2 (en) | IIC bus start-stop detection circuit | |
US7500132B1 (en) | Method of asynchronously transmitting data between clock domains | |
US5319678A (en) | Clocking system for asynchronous operations | |
JP5704988B2 (ja) | 通信装置 | |
JP3344466B2 (ja) | 信号転送制御方法およびその回路 | |
CN117527530A (zh) | Vbo通信方法、vbo接口及显示终端 | |
US6067629A (en) | Apparatus and method for pseudo-synchronous communication between clocks of different frequencies | |
EP4075289A1 (en) | Handshake circuits | |
JP3604637B2 (ja) | 非同期転送装置および非同期転送方法 | |
JP4950534B2 (ja) | クロックデータリカバリ制御回路 | |
JP2848360B2 (ja) | 通信制御装置 | |
JP2538682B2 (ja) | 基準クロック源自動切替え方式 | |
JPH02262739A (ja) | 双方向リンクを介して情報を伝送する方法と、この方法を実施するための装置 | |
JP5921264B2 (ja) | シリアル通信システムおよびその通信初期化の方法、並びにシリアル通信装置およびその通信初期化の方法 | |
JPH05134876A (ja) | ダウンロード方式 | |
JP2006173689A (ja) | 非同期信号転送システム、非同期信号転送装置及びそれらに用いる非同期信号転送方法 | |
CN115967408A (zh) | 信号接收方法、装置、电子设备和存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |