当前位置: 首页 > 专利查询>安通斯公司专利>正文

智能老化重试缓冲器制造技术

技术编号:8983332 阅读:153 留言:0更新日期:2013-08-01 02:06
本发明专利技术揭示一种用于通过集成电路芯片之间的有损耗的双向链路发送数据帧的方法及控制器。在发射时,将帧存储在缓冲器中。指示错误检测且所述错误检测触发被错误地接收的帧的重新发射,但不指示对正确地接收的帧的确认。相反,发送控制器假定:如果在一时间周期之后未接收到错误指示,那么帧被正确地接收。所述时间周期为在帧被错误地接收的情况下所述发送控制器接收错误指示所花费的最大时间量。在所述时间周期之后,从所述缓冲器丢弃所发送的帧。

【技术实现步骤摘要】
【国外来华专利技术】
本专利技术大体上涉及用于在网络(例如,芯片上网路(NoC))中发射及接收数据的集成电路技术。
技术介绍
一些系统需要芯片之间的可靠且低延时的双向数据链路。举例来说,此类链路在多芯片中的多处理器的系统(其中一个芯片中的处理器通过处理器芯片之间的专用链路来存取另一芯片的存储器接口)中是有用的。举例来说,此类系统出现在移动电话中,在所述移动电话中调制解调器处理器芯片及应用处理器芯片使用移动产业处理器接口低延时接口(MIPI LLI)协议来连接,以共享双倍数据速率动态(DDR)随机存取存储器(RAM)。所述芯片可为不同封装中的集成电路或同一封装内部的集成电路。其也可在多个集成电路中实施。在此类系统中使用多层协议。数据链路层承担从发送器到接收器的无错误数据发射。所述数据链路层发送称为帧的离散数据量。物理(PHY)层在数据链路层下方。所述PHY层发送帧以及控制信息。物理链路被假定为是有损耗的,且PHY层负责提供无错误帧发射。此类系统在接收器中实施错误检测算法,且向发送器指示错误。在接收到错误指示之后,发送器从称为重试缓冲器的缓冲器重新发射帧。所述协议由每一芯 片内的控制器实施,例如图1中展示的控制器100。控制器100包含耦合到反射器104的重试缓冲器102。发射器104经配置以跨越链路106发射帧,且控制器100在重试缓冲器102中存储所发送的帧。分别称为ACK及NACK的信号110、108从链路106的另一侧上的接收控制器(未展示)接收,以分别指示完全无错误接收及所检测到的发射错误。接收芯片对所接收到的帧执行错误检测。错误检测的方法可为符号的奇偶校验检查、运行不一致错误(running disparity errors)、错误地形成的巾贞检测、巾贞循环冗余码校验(CRC)错误及顺序错误或其它错误检测方法。接收芯片针对无错误地接收的每一帧或帧群组给出ACKllO的指示。接收芯片针对在有错误的情况下接收的每一帧或帧群组给出NACK108的指示。当控制器100得到ACKllO指示时,其从重试缓冲器102丢弃对应的帧。当控制器100得到NACK108指示时,其从重试缓冲器102至少取得被错误地接收的帧,且从发射器104在链路106上重新发射所述帧。外围组件快速互连(快速PCI)是这样一个实例协议,其除ACK的接收的超时之外还将带内ACK及NACK两者用作错误检测的额外源。现有技术协议的此类状态的一个问题是ACK指示采用芯片之间的额外引脚或其为带内的且消耗额外带宽。需要不需要ACK信令的更智能的重试缓冲器管理协议及控制器。
技术实现思路
所揭示的专利技术为具有更智能的重试缓冲器高通过量的控制器以及发射带内NACK且在从重试缓冲器丢弃每一帧之前老化所述帧达可变时间量的协议(方法)。所揭示的更智能的重试缓冲器协议及控制器使用链路的接收信道的状态来选择帧在缓冲器中的老化周期。具有更智能的重试缓冲器的高通过量控制器为改善重试缓冲器的尺寸及速度以使用不提供接收确认的基于老化的协议通过双向有损耗链路进行发射的有效方式。附图说明图1为具有重试缓冲器的控制器的简化框图。图2为具有老化重试缓冲器的控制器的简化框图。图3为具有带有带内NACK的老化重试缓冲器的控制器的简化框图。图4为具有带内NACK及对错误地接收的帧中的NACK的悲观假定的老化重试缓冲器的简化框图。 图5为在链路上可靠地发送数据帧的示范性过程。具体实施例方式在一些实施例中,当接收控制器已检测到错误时,向发送控制器指示NACK,使得有错误的帧被重新发射。从不指示ACK。与图1相比,图2为不具有ACK指示的发送控制器200的简化框图。在没有ACK的情况下,发送控制器200安全地假定:在某个时间周期之后,先前发射的帧在没有错误的情况下被接收。所述时间周期为在出现错误的情况下发送控制器200从接收控制器(未展示)得到错误指示208 (NACK)可花费的最大时间。在此时间之后,缓冲器202安全地丢弃帧。此类NACK协议取决于从发送控制器向接收控制器发射帧与在发送控制器200处从接收控制器可能接收到对应NACK208之间的往返时间(RTT)为有限的。这称为“超时”或“老化”协议。参看图3,其说明控制器300的简化框图。在此实施例中,双向链路可包括发送信道及接收信道。为避免添加用于错误指示的专用引脚,控制器300使用从双向链路306、310的接收信道接收的帧得到错误指示(“带内”)。如图3中所展示,接收器312解码所接收的帧且在接收到错误指示314(NACK)的情况下触发从缓冲器302的重新发射。错误可能很少地但以“突发”方式发生,例如,因为同步时钟恢复可能丢失,从而使帧无效。由于此原因,在一个实施例中,从错误的恢复包含帧的终止,接着是重新发射帧之前的时钟重新同步化。NACK指示为粗糙的,例如,最多存在一个由接收控制器针对其在链路310上发送的每一帧发布的NACK。注意,NACK指示是不“精确的”,例如,NACK不报告错误地接收的精确帧,而仅仅是最后的RTT周期内的帧是错误的。重试协议指定当已报告错误时采取什么动作。注意,因为NACK指示是不精确的,所以可能在重新发送被错误地接收的帧之前重新发射已被适当地接收的帧。由于所述原因,针可含有“序列”号,所述“序列”号从帧到帧递增且允许接收控制器丢弃被不必要地重新发送的帧。所述序列编号也可用于错误检测,这是因为序列号从帧到帧递增。如果序列在重新发射周期之外不遵循递增策略,那么已出现错误。上文描述的协议作出关于错误帧的悲观假定,例如,其假定在帧中的第一个错误之后,应完全丢弃剩下的帧。这也意味着丢弃可与错误地接收的帧的剩余物一起发射的可能的NACK。然而,与帧相反,不重新发射NACK。为避免在错误之后错误地忽略潜在的NACK,控制器悲观地假定错误地接收的帧总是指示NACK。图4为具有带内NACK414及错误地接收的帧中的NACK的悲观假定的老化重试缓冲器402的简化框图。如图4中所说明,控制器400(控制器“A”)对所接收到的帧执行错误检测408。在接收到的帧中检测到的错误或所接收到的NACK414触发帧从缓冲器402的重新发射。此类悲观主义具有以下结果:重新发射在链路406、412的两个信道上起始,即使错误仅在一个方向上发生。在从控制器A到控制器B (未展示)出现发射错误之后,控制器B检测所述错误且向控制器A提供明确NACK,但还假定其所丢弃的错误帧包含来自控制器A的NACK。当控制器A接收所述明确的NACK时,其重新发射其在最后RTT期间发送到控制器B的帧。因为控制器B假定错误帧中的来自控制器A的NACK,所以控制器B也重新发射其在最后RTT期间已发送到控制器A的帧。控制器B不知道控制器A是否已实际上检测到错误,但重新发射帧即使在没有错误被检测到的情况下也不造成伤害且在已出现错误的情况下校正所述错误。只要在待由控制器 B检测的所发射帧中的错误的潜在延时的任何模式中可能有必要,控制器A的重试缓冲器402存储发送到控制器B的帧以用于潜在重新发射,接着来自控制器B的NACK指示414到达控制器A。此序列的持续时间是最坏情况NACK RTT0许多实施例由小电池供电且因此对功率消耗敏感。当在芯片之间不需要通信时,可将链路逻辑及驱动器的每一信道置于静本文档来自技高网
...

【技术保护点】

【技术特征摘要】
【国外来华专利技术】...

【专利技术属性】
技术研发人员:菲利普·马丁卢克·蒙特佩拉斯
申请(专利权)人:安通斯公司
类型:
国别省市:

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

1