研究文章|开放获取
戈特弗里德福克斯,安德烈亚斯。施, ”分布式容错算法的VLSI实现时钟的一代”,电气和计算机工程杂志》上, 卷。2011年, 文章的ID936712年, 23 页面, 2011年。 https://doi.org/10.1155/2011/936712
分布式容错算法的VLSI实现时钟的一代
文摘
我们提出一个新颖的方法对片上一代的容错时钟。我们的方法是基于蜱虫同步算法的硬件实现分布式系统的社区。我们讨论一个合适的选择算法,提出了改进必要步骤促进其有效映射到硬件,和详细说明关键的挑战我们必须克服在实际的ASIC实现。我们的测量结果确认的方法确实能够创造一个全球同步时钟的分布式方式宽容(可配置)的任意的缺点。这个属性有助于消除时钟是一个单点故障。我们的解决方案是基于纯粹的异步设计,无需晶体振荡器。它能够适应参数变化以及温度变化和权力supply-properties未来技术,被认为是高度可取的节点。
1。介绍
VLSI技术在过去的几十年进展不断引发不可思议的进步在复杂性、速度、功能,以及数字电路的功率效率1]。这一趋势一直创造了新的机会,但同时伴随着各种挑战这些电路的设计(2]。现代芯片设计似乎是由以下问题。(我)容错。人们普遍同意,小于65纳米技术节点倾向于变得越来越容易受到单事件不适,由于他们的小关键费用和低电压摆幅(3- - - - - -5]。因此需要容错出现,即使对于non-safety-critical应用程序。(2)功率效率。单位面积上的越来越多的晶体管,功率密度增加,尽管科技进步。这将导致功率分布和散热问题。(3)变异宽容。新技术节点的制造公差导致时间不确定性行为,功耗,等等,传统的个别案例设计过于悲观6]。因此设计技术寻求能够维持可靠的操作即使在这些变化。
根据这些巨大的挑战甚至数字设计的基础之一是遭到了质疑,即全球同步模式。虽然芯片的抽象成为一个完美的同步地区促进高效的设计,保留合理的同步在一个大而复杂的芯片sub-nanosecond精度已成为非常麻烦了。减少时钟网络内的倾斜,不仅应用复杂的几何图形,除了大量的时钟缓冲和抗扭斜单元必须放置在精心挑选的位置(7- - - - - -9]。由于功率预算的可观份额进入时钟分布网络(10,11]。这与上面提到的功率效率要求。最近,并行性是被介绍给增加处理能力,同时保持时钟速度。这一趋势是伴随着新的通信方案,所谓的网络芯片。最近的一个例子,Godson-3B [12,13)包含两个不同的组每组四个紧密耦合的核心。
3项以上列表,即增加制造公差,不幸的是形式维护一个同步区域的另一个障碍在芯片:同步电路的设计范式是建立在这种亲密知识时机,为新技术变得模糊。
最后,全球同步时钟的方法被证明是有问题的对容错。虽然许多容错同步是一个重要的基础方案(如咯或重复和对比),单身,中央时钟源形式单一故障点即使在这样一个复制体系结构。这个问题一直是被忽视的,因为时钟网络被认为是由于其有力的司机和其相对较高的电容。然而,最近已经提出了时钟网络的脆弱性,以及专门时钟中继器,(14]。
除了所有这些挑战,然而,新技术也引入了新的可能性。系统中的架构芯片与传统分布式架构有很多共同之处。在后一种全球同步时钟源很少被他们相当松散耦合的组件,使用几个本地时钟源,然后同步在更高层次的抽象分布式算法,如果需要的话。在本文中,我们将回顾选项生成一个容错方案,为现代技术和体系结构是可行的,我们将提出一个新的容错方案时钟生成基于分布式算法,从而利用典型架构系统芯片(SoC)中找到。除了其优越的容错方案是非常健壮的过程变化。
2。相关工作
动机高于传统,全球同步设计可能无法满足所有即将到来的挑战,未来的计算机体系结构。随后,提出了几种有前景的选择将调查在文学。
2.1。全球异步的,本地同步
全局异步局部同步(女孩)方法(15)是基于通用架构图中描述1。小岛屿(本地)同步实现整个系统的功能(子任务)。每个局部的功能是使用传统的同步执行的设计风格,而全球交互是异步通信方式。每个岛提供自己的振荡器作为本地同步时钟源计算。比纯粹的高努力为全球时钟同步系统,在当地同步群岛斜优化时钟信号更容易实现。虽然女孩简化了时钟分布在某种程度上,还有一些其他问题。需要一个专门的为每个同步振荡器岛将附加组件添加到系统,明显降低可靠性。经常使用石英振荡器是敏感,例如,振动、温度、冲击,等等,而众所周知,芯片上的RC振荡器他们强烈依赖于操作条件如温度和电源电压,导致频率变化范围的10 - 30%。
除此之外,如果同步系统相比,姑娘们的概念有两个主要的基本缺陷。首先,姑娘们设计不隐式地提供方便使用系统时间大多数硬件设计师的概念和设计工具。所有的时钟源都是免费加上本地时钟漂移可能任意除了对方。沟通让一个本地台湾时钟域介绍了同步的必要性。全局异步通信之间的接口和本地同步的数据处理将某种同步器电路提出了第二个,可能最严重,姑娘们的缺点。不幸的是,与任意同步时钟域,可能改变,彼此关系,无法在一个安全的方式解决。亚稳定性问题甚至可能打乱了同步器电路(16),只能更加不可能通过添加进一步的同步器阶段。考虑到参数变化和时钟抖动某个设计非常保守,因此显著的性能处罚引入异步/同步接口。
最近的姑娘们实现合并可停止的(合理的)和/或可伸缩的时钟17,18),以减少性能损失在时钟域接口。然而,这是在减少时钟accurracy和价格稳定。
2.2。相互关联的戒指和振荡器
这一概念提出的胎盘和阿兰达[19,20.)提出了另一种方法来生成和分发GHz的时钟。设计依赖于自激振荡财产当互连奇数环逆变器的拓扑结构(如图2)由于其简单和达到高时钟频率。建议的体系结构的逆变器和缓冲位置决定了布线成本(电线的长度),生成的时钟速度和倾斜。设计特别适合作为片上系统时钟方案前面介绍了可爱的女孩。它可以被视为一个精致的女孩rc振荡器频率。由于所有逆变器的时钟生成方案直接互联(本地)或间接(在全球范围内,通过一些额外的逆变器阶段),当地的岛屿的姑娘们系统不能任意使失调(至少在无故障的情况下)。这个属性严重减轻内同步设计自某个女孩儿可以利用本地时钟并不是完全无关的事实。
(一)
(b)
2.3。分布式时钟发生器
方案的分布式时钟发生器(常规心电图)引入的费尔班克斯和摩尔21,22)代表一个特殊形式的异步FIFO实现片上的生成和分布的目的一个同步时钟。类似的方法通过胎盘和阿兰达,互联时钟生成硬件是分布在一个网格的芯片,但是生成的本地时钟生成大约在同一瞬间只有小斜。每个常规心电图实例与四个邻国相互联系,和一半的常规心电图单元初始化时钟令牌。由于每个常规心电图的异步FIFO实现所谓的查理效应(22)确保时钟令牌传递到邻近的节点同步的方式,生成一个芯片广泛的同步时钟信号(查理效应描述的力量减缓后续标记在一个FIFO如果接近前一个)。
2.4。纯粹的异步设计
异步设计风格(23)被认为是一种可行的选择将来同步设计,专为应用领域像低功率24高性能[]或25,26]。异步设计的负担可以完全消除时钟分布和时钟树被更少时间关键的地方握手信号。参数变化不太有问题的环境中,例如,准delay-insensitive电路(27]以来,由于显示原理,只有性能但不正确的功能是受变化的影响。此外,异步设计风格允许固有的鲁棒性来解决这个问题的失败率增加未来超大规模集成技术(28,29日在某种程度上)。缺点是,各种现有异步设计风格和延迟模型分散不仅设计师不是领域的专家,但也EDA公司的设计和验证工具是至关重要的推动者普遍接受的异步设计范式。不可忽视的面积开销,更高的设计复杂性,复杂的电路测试问题添加到这些问题。尽管异步设计良好的鲁棒性是与生俱来的,隐含的“等待”范式指示原理防止建立系统级容错技术,如三模冗余(咯),被直接应用于异步系统(30.]。
2.5。讨论
提出的方法的容错以及应对意想不到的故障所需的鲁棒性以及参数变化主要是缺乏。姑娘们在通用连接多个不相关的时钟域的问题,和其缺乏全球时间严重复杂的设计过程(这也是纯粹的异步方法)的情况。相互关联的戒指和振荡器以及分布式时钟发生器的方法无法应对失败。能够容忍任意故障在时钟同步过程中,理论表明,几乎完全连接网络是必要的(31日)这显然不是实现的两种方法。因此,瞬时故障可能导致主要的时钟偏差,超频现象或甚至可以阻止整个时钟生成过程。
本文中描述的工作重点是开发一个健壮的时钟为未来的可靠的系统方案。特别是在安全——和关键任务环境像在汽车和航空航天领域对任意故障鲁棒性是至关重要的。类似于女孩,我们的方法提供了强有力的本地同步。与女孩相比,但是,容错时间基本保持在全球层面上(尽管稍微放松一致性假设)。
3所示。飞镖的概念
图3说明了我们的方法的主要原则:我们取代中央时钟源(晶体振荡器)的蜱虫一代单位。每一个单位实现的一个实例相同的分布式算法在硬件(因此我们称之为TG-Algs进一步的)。该算法是基于个人TG-Algs之间的通信,通过TG-Algs相互刺激,从而创建一个振荡,可以视为一个全球同步时钟。通过选择合适的算法和通过仔细的实现,TG-Algs的本地感知的全局时钟保持在一个有限的精度,即使通信网络,电话TG-Net在图3,介绍了相当大的延迟和倾斜。每个TG-Algs连着的一个或多个功能单元的SoC它提供了一个本地时钟的同步与所有其他地方其他TG-Algs各自产生的时钟功能单元()。基于这些本地时钟功能单元内部可以根据经营传统的同步设计范例,这是可取的,不成问题的,只要当地的程度是有限的。
(一)
(b)
从较为抽象的角度分布算法适用于容忍多个拜占庭故障可以合并到一个健壮的时钟方案。如果我们为TG-Algs使用这种算法,我们钟一代将保持操作即使一些TG-Algs和/或链接的任意TG-Net应该失败。很明显,功能单元连接到失败TG-Algs将不再提供一个适当的时钟,但这可以通过适当的补偿复制以及连接的不同TG-Algs复制品。注意,这解决了一个臭名昭著的问题在经典容错VLSI系统:容错相当容易实现全球同步的前提下,在建立全球同步通过一个中央时钟引入了一个单点故障。我们的方法的关键优势是提供一个全球同步的时钟,同时容错。在此基础上构建容错体系结构是简单的功能模块。此外,全球同步允许metastability-free功能单元之间的通信而不需要某个浏览器(32]。我们的方法的另一个优点是它不敏感通信链路的延迟以及TG-Alg的传播延迟;稍后我们将展示,甚至相当大的公差,漂移和抖动,可以适应。这大大减轻了设计者使用强大的司机,进而提高功率效率。
我们设计,正式证明,模拟,实现,和评估提出的概念的研究项目分布式算法健壮Tick-Synchronization(飞镖)。而一个飞镖的正式方面方法的深入分析可以发现在33),本文将更加关注飞镖的履约相关问题。特别是,在本节的其余部分,我们将调查的基础概念,即选择合适的算法和约束时,必须考虑实现,抽象算法VLSI芯片设计。
3.1。找到一个合适的分布式算法
分布式计算研究提供了所需的同步算法容错代钟表的滴答声。分布式算法的类被认为在飞镖方法是基于消息传递,与一组特定的属性来满足要求,蜱虫的一代。总之这些特征tick-generation算法如下。(我)算法由一组规则评估当一个消息到达一个节点。这些规则有条件地更新各自的节点的本地内存和触发消息的传播到其他节点。(2)实现一个生成方法,分布式算法的类仅限于那些只发送消息包含提升自然数,也就是说,它是要求每个节点发送消息在给定的顺序执行。当蜱虫代映射到硬件消息的自然数蜱虫()国防部2可以看作是离散的向上和下来硬件时钟的转换。(3)nonfaulty所有节点之间实现同步分布式系统,蜱虫一代Lamport后算法来解决同步问题的定义34,35如果同步精度和准确性。(iv)此外,该算法叫做容错如果保持上述条件即使在断层的存在。
Srikanth和Toueg[提出的一种算法36)满足所有这些标准。它由两个部分组成。根据算法1,所谓nonauthenticated时钟同步部分节点广播消息蜱虫()就其时钟计数器达到一个阈值,表明未来蜱虫必须发布。内部时钟计数器直接由本地振荡器。是由round-based阈值,在那里表示预定义的再同步时间间隔。
|
||||||||||||||||||
当达到阈值计算节点准备改变圆的对轮。然而,为了保持系统同步,这种转变必须协调与其他节点。这是通过重新同步时钟计数器即时一个“可接受蜱虫()“从另一个节点接收到消息(实际上,调整到,在那里表示一个常数确保时钟总是在时间步骤,见图4)。
这个函数负责生成这些“接受蜱虫()“信息形式的第二部分显示了算法和算法2。它由三个并行信息处理规则。针对特定的接待蜱虫(从至少)消息不同的节点,通过初始化或回声每个节点消息,继电器回声蜱虫()消息到所有其他节点(继电器规则)。实际的一代“接受事件”的推进,然而,至少需要接待截然不同的回声蜱虫((接受规则))消息。它已被证明Srikanth Toueg的系统节点算法1合作的一致的广播原始算法2解决了时钟同步问题,即使在存在如果条件认为拜占庭故障节点(我)当地的时钟最大漂移速率和有界,(2)消息的端到端延迟是在一定的,(3)两个特定时间假设是确保通过适当选择的值和。
|
||||||||||||||||||||||||||||
让我们重新考虑最初的动机更加关注蜱虫代算法,即得到同步时钟不需要本地时钟源。上述nonauthenticated时钟同步的算法,在算法1,还需要在每个节点本地时钟脉冲源供应本地时钟计数器。幸运的是,一些修改算法1产生一个解决方案也不再需要本地计数器和删除的区别初始化和回声事件,这在很大程度上简化了消息处理。该算法如下所示(算法3)。
|
||||||||||||||||||||||||
它最初来源于算法提出的威德,施密德37),然而,与以下重要的变化:为了方便实现在硬件部分3.2它不再依赖于无限蜱虫()数字。在所有的附加约束蜱虫(消息只发送(一次)这种简化没有破坏不成的分析37]。
与之前使用这个算法假设消息延迟可以被削弱的货物在运输途中的任何两个消息吗它必须认为 与和各自的消息延迟和,是常数。分析(37)表明,尽管提出了大量的简化,算法3还解决了时钟同步问题,这种特殊情况下,这是保持精度以及精度甚至在拜占庭故障的存在。算法3流程是这样的:一个正确的节点的“接力规则”火灾尽快蜱虫(从至少)消息一直received-given截然不同的节点的最大错误数系统应该容忍,这确保至少其中之一蜱虫(通过正确的节点)消息已发布。注意,触发“继电器规则”的节点并不会立即将其本地时钟来因为这将导致跳过一些值如果多个蜱虫落后于各自的节点。随后的策略的算法3显式地确保所有消息蜱虫(),,蜱虫()发行时赶上更快的节点,导致一个连续发展的时钟没有潜在麻烦跳跃的影响。特别是当回忆时钟同步的有针对性的应用电路,跳过时钟可能导致不一致的状态发展在不同的功能模块。
由于我们现在有一个分布式算法能够生成一个升序序列可用钟表的滴答声容错的方式不依赖本地时钟源。
3.2。硬件实现的挑战
到目前为止我们的方法使用一个分布式蜱虫生成算法生成一个提升的蜱虫序列号码,和映射的上升和下降的边缘硬件实现简单地意味着国防部2操作。上面的算法提供了所有必需的功能;然而,大量有关履约问题起源于这样一个事实,这个算法(如几乎所有其他分布式算法)被设计在一个非常高水平的抽象,在最好的情况下使用软件实现。
一般来说,蜱虫一代算法作用于无界的自然数,而硬件时钟信号只是两者之间的切换逻辑值高和低(图5)。为最终目的的时钟功能单元我们不需要历史信息中包含的个人标记数字,我们不能表达它。时钟频率范围为数百兆赫或甚至一些GHz的价值迅速达到巨大的尺寸,事实上它无限自然禁止任何具体的实现。此外,每个值必须反复转移在这个高频蜱虫生成过程的一部分,这显然会导致过度的数据率。
与此同时我们不能完全摆脱,因为蜱虫的抽象工作原理生成算法依赖于这个整数蜱虫数量计算。为了便于硬件实现,我们必须改变算法,使其能满足有界值蜱虫()数字和由此产生全方位的影响在他们的数值表示,也就是说,之后发送的最大价值在选择整数表示,最小的一个,例如,蜱虫(0)。从硬件的角度约束应尽可能低。然而在实践中,这种最小化的边界条件是有限的Alg-R1:必须确保不蜱虫()消息的不同阶段可以相互干扰,和绑定任意两个时钟持有的最大偏移量;Alg-R2:两个平行的规则(增量和Relay-Rule)上执行一个节点从来没有按顺序生成和传输相同的蜱虫()消息。
适应的界值,该算法提出的威德,施密德37)被要求每一个增强蜱虫(消息只发送(一次)不管事实多个规则可能会生成这个特殊的资格蜱虫()消息。这种变化已经反映在算法3。
基于原始算法的改进提出了在这一章,我们考虑边界条件已经确定了,我们可以集中我们的努力找到一个合适的算法语句映射到硬件积木在下一章。
4所示。硬件实现容错Tick-Generation
4.1。硬件相关的需求
即使修改蜱虫威德,施密德同步算法(算法3)仍有一些困难时试图软件(高级)蜱虫生成算法映射到硬件设计的限制。他们中的大多数并不是由于algorithm-related需求,而是来自需要找到一个快速和area-efficient投影算法的硬件,因为这些问题绝不是考虑到目前为止的高级描述算法。在下面我们将给这些挑战的列表。HW-R1:蜱虫一代网络。整数蜱虫()消息必须传达一种方法,使时钟网络时钟速度的前提下尽可能尽可能简单。因此,策略有超过一个单线每个时钟信号被认为过于昂贵。HW-R2:蜱虫的消息:简单的蜱虫()消息必须被用来使尽可能快的速度,同时操作在一个铁路每个时钟signal-clock转换(上/下)在一个铁路信号,如图5,似乎是唯一可行的实现方案。HW-R3:独特的发送者识别算法是基于假设的接收机蜱虫()消息可以唯一地标识相应的发送者。根据HW-R2,附加一个发件人ID是不可行的,因此我们需要一个任意两个节点之间点对点连接,也就是说,一个全网状网络。这反过来证实了HW-R1中提出要求一个轻量级的互连。HW-R4:异步设计:由于TG-Algs的任务是生成一个时钟,他们没有一个时钟用于自己的操作。(原则上,提供本地时钟每个TG-Alg可能,但会抵消方法的初衷,即产生一个时钟,它会受到时钟域边界的亚稳定性问题将不可避免地出现。)因此他们的实现需要遵循异步设计范例。从可用的方法(拟)延迟不敏感是最有吸引力的,因为它并没有做出假设的个人路径延迟,从而增加所需的鲁棒性。HW-R5:原子性的行动:分布式计算模型,作者都知道,原子计算步骤假定单个节点的水平。然而,这种抽象不能直接采用在实现一个算法(异步)硬件,计算是由大量的并发操作数字逻辑门。在我们的案例中最具挑战性的部分是由两个算法的并行处理规则(“继电器规则”和“增加规则”的算法3)结合同时到达蜱虫()消息。Alg-R1处理要求,明确需要同步的本地计算。HW-R6:快速操作:算法的理论分析38)证实了直觉的振荡频率由飞镖方案以及实现精度主要是通过转换的往返时间决定的,也就是说,时间从特定的一代过渡到下一个的生成由于其接收的所有其他节点。因此,为了获得快速操作,硬件实现应当最小化门延迟这些路径的数量。
当然最苛刻的设计要求是HW-R4,需要一个完全异步硬件实现:这个限制完全排除了就业的同步设计方法。系统的异步设计风格(例如,39])遵循handshake-based流控制,以确保没有旧数据干扰新的人的问题-提供了联锁后续数据之间的波。在这种情况下,这是很重要的一个过渡门门口输入造成影响输出,然后才允许进行下一个输入转变发生。这种所谓的显示原理处理并发性是至关重要的(不用介绍时间假设),它可以由握手,只要门的功能,这样每个输入过渡实际上导致输出转变,也就是说,没有输入被掩盖或忽视。
然而,在容错设计的一个基本问题的背景下出现这种迹象原则:如果一个模块是等待所有请求已经正常到达之前发行ACK和继续其操作(握手过程是隐含的),这将使一个错误的单位抑制任何进一步的处理。因此,战略必须遵循处理在哪里停止直到algorithm-dependent阈值的请求。虽然现在这种方法使容错的结合,它必然打破了实现点播/ ACK反馈循环的最慢的路径,从而抑制其指示。没有额外的措施或限制这样的开放循环往往不同步运行,危及整个系统的正确运行。为了获得一个容错异步设计传统的封闭的请求/应答控制循环增强了明确的时间限制,这种方式支持一个联锁方案数据连续波,甚至最慢的路径。稍后我们将详细说明这些时间限制。目前我们会总结这一观点的进一步要求。HW-R7:时间要求:在缺乏全球时钟我们被迫使用异步设计的原则,根据所有活动必须参与一个请求/应答握手周期。由于要求HW-R1我们不想扩展这个握手TG-Net原则。此外,容错技术像一个阈值函数本质上与“等待”范式所暗示的握手。由于这些原因握手不得受雇于一个完全的时尚,和适当的时机条件应当阐述了约束实现的方式适当的操作仍然是保证握手循环在哪里坏了。
4.2。实现的框图
图6显示一个TG-Alg基本架构的硬件设计结果从上面的描述规范。这个设计的最显著的特点是传播策略蜱虫()消息。按照HW-R2没有明确蜱虫TG-Net数字传输。匿名向上和下来信号转换(零位消息)是用来代替传达整数值。从抽象的角度这意味着发送方就传达了“微分”信息在平原过渡的形状,而每个接收机配备一个计数器将这些信息整合到实际的蜱虫数量。这样的消息大小可以减少绝对最低,然而,现在要求每个节点每传入链接(例如,一个单独的计数器),进一步“远程计数器”(RC),除了一个维持当地数(LC)。
仔细看看算法3表明,只有一个相对对比LC和RC进行,而他们的绝对值不相关:继电器规则检查是否远程计数大于当地的算不算,而增量规则检查是否。因此,如图6进一步,我们可以使用向上/向下计数器,称为计数器来维持区别LC和RC之间而不是他们的绝对值。注意,这种差异永远不会变得比precision-this担保的功能算法3。这些知识我们可以安全地减少差异的大小柜台没有进一步考虑潜在的环绕式处理。
按照算法3,在下一阶段我们加入“大”(GR)的结果比较和“大于或等于”(组)比较的所有输入节点的数量,并检查是否正达到阈值的比较结果由继电器规则或暗示分别从增量的规则。这是通过单位称为“阈值盖茨,”图6着各自的阈值。的任务- - - - - - -)门只是尽快激活它的输出或更多的输入逻辑嗨。
在这一点上,有趣的是,虽然暗示了算法3,我们不考虑self-reception在我们的硬件实现中,也就是说,一个节点只能接收发送的消息所有其他的节点,而不是一个由本身。原因是在实践中self-reception路径很可能是远远超过所有其他的消息延迟。现在回想一下部分3.1可达到的精度很大程度上取决于一个常数这是来自最快和最慢的比例反馈延迟在蜱虫一代方案。因此造成的不平衡self-reception路径将不必要的增加非常快,从而降低可达到的精度。由于省略self-reception路径,提出了蜱虫一代系统必须至少包含TG-Algs而不是通常的应用至少(下限)节点实现目标拜占庭容错度。
激活阈值门的输出对应于射击规则的算法3中,有两个并发规则算法,我们有两个阈值盖茨并行操作,用适当的阈值和。最后,一个蜱虫生成单元(“蜱虫创”图6)负责正确地结合这些输出成蜱虫可以TG-Net转达了。这是“一次”声明的地方从算法3和要求HW-R5成为重要:必须注意问题只有一勾价值尽管并发操作的两个阈值。
迄今为止开发的框图足够准确,以便全面正式的分析TG-Alg设计(33),实现数限制。然而,从硬件设计的角度TG-Alg抽象的设计进行进一步的详细步骤,使一个成功映射到一个ASIC的制造过程。这将是下一节的主题。(我们之前的工作40对待一个FPGA原型,而本文的重点是演示的ASIC实现和评价飞镖集群基于ASIC生产。)
5。飞镖的实现
在本节中TG-Alg的硬件实现更详细地介绍。为此图7提出了一种更精确的单个TG-Alg的体系结构。
在图的顶部计数器模块显示,分解为一个“当地的管道,”一个“远程管道,”“Diff模块”和“管比较信号发生器。“注意,这个计数器模块只是对应于一个远程输入;整体这些模块需要每个节点来处理所有从TG-Net链接。这一事实说明了进一步计数器模块的左下部分图所示。的模块称为“阈值模块”,在右下角的图,包括阈值盖茨和“蜱虫一代”单位。
了解拟议的结构±计数器召回的部分4消息传输差,也就是说,我们使用转换转达的蜱虫()消息。当我们不知道(其实不想假设)之间的相位关系当地蜱和远程蜱,蜱虫(),蜱虫()转变可能发生任意接近对方,因此引入潜在的亚稳定性。而不是建立一个flip-flop-based计数器,一个通常会在同步逻辑,我们决定去实现转换逻辑。转型中的逻辑表达能力有限的因果顺序事件基本上在一个空闲的时间系统。然而,为了保持其延迟钝性允许电路元素的类是相当限制。允许的基本单位是例如穆勒C-Elements,逆变器,XOR盖茨,和一些相当复杂而且很奇异的构建块像切换单元41- - - - - -43]。即使是简单的逻辑操作必须以不同的方式对待过渡信号的范围。传统的行为或门,就生成一个输出第一个(上升)输入事件发生,例如,破坏后期的因果关系输入与发布输出转变。因此它的使用是不允许转移逻辑;与门也是如此。
考虑到这一组有限的可用的功能,我们的方法来实现的计数器如下:我们为传入的转换提供缓冲,从本地和远程的一面。一个实现基于著名的过渡信号弹性管道方法萨瑟兰(出名的43可以使用)。这些模块称为“远程管道”和“局部管道”图7。“Diff模块”是连接这两个管道的输出和消除对“匹配”(即的转换。,这样匹配(虚拟)两边值)。在静态情况下一个管道总是空而另一个包含蜱虫的差异。非空的管道是经历了更多的蜱虫(指示不同的符号),而管道条目的数量等于差异的绝对值。结果,这两个弹性管道一起Diff模块所需的形式计数器的微分蜱虫。注意,由于需求HW-R1没有承认是传入的蜱虫,管道内部操作完全通过握手,Diff和接口模块采用握手,因此收益率非常健壮的操作。这些模块的实现细节将在部分5。1和5。2。
这将会变得明显,此计数器的功能是完全对称的蜱虫(),蜱虫()转换。这允许我们使用no-return-to-zero为我们的蜱虫(NRZ)编码信息,也就是说,每个转换代表了蜱虫,无论它是一个上升或下降,完全支持我们的欲望的有效沟通(cf HW-R2)。因此我们愿意接受更高的努力与NRZ编码实现。利用这种对称我们可以而且确保两个一半时间的飞镖时钟(HI和LO)也经历了同样的治疗通过我们的算法,因此责任周期将会非常接近。注意,尽管本质上蜱虫不需要区分,我们可以单独的“奇怪”和”甚至“蜱虫的极性(甚至对应于奇怪的上升、下降)。以后这将成为重要的联锁。
“管比较信号的一代(PCSG)”模块执行“大”和“大于或等于”比较的算法3通过检查远程和本地的填充水平管道。本质上这是一个从信号过渡到状态转换逻辑。此举状态逻辑是不可避免的,因为一个计数器值本质上代表一个国家,而不是一个事件,所以两个计数器值之间的比较结果。在州内逻辑实现我们操作没有握手,而是依赖时间的假设。这是不可避免的后续阶段,阈值门,不管怎样,以后,已经列出,我们不能操作从- - - - - -阈值完全handshake-based的方式。在转换逻辑状态的转换逻辑必须小心不要顺便解释瞬态状态;这个问题将在下面更详细地对待。
注意,PCSG提供两个输出比较“大”,即和和两个“大于或等于”比较,即和。这是因为PCSG的操作不对称的上升和下降的转变。为了保持奇数和偶数蜱虫之间的区别,我们因此为这些生成单独的输出信号。
5.1。排队蜱虫
如前所述弹性管道可以看作是FIFO缓冲过渡。更好的弹性管道的一部分由穆勒C-Elements (cf图7)。两个输入的功能穆勒C-Element非正式可以描述如下:输出c分配相同的逻辑值作为输入一个和b每当输入相等(c = = b = 0或c = = b = 1),c保持它的前一个值c = c_old。作为一个布尔函数可以表示为 穆勒C-Element的能力保留的旧值输出明确要求某种存储循环。对于这个存储循环操作正确的输入和必须至少保持稳定吗。这种延迟定义为传播延迟通过逻辑门加上一些额外的布线延迟。更具体地说,穆勒C-Element的正确行为建立在假设(我)一个输入不切换的速度比如果最初的转变会导致输出改变它的值。例如,如果输入和输出、输入不允许切换速度比吗自从输出保存反馈回路需要时间来解决的新价值(见图的一部分8 (c));(2)输入和永远不会改变他们的逻辑电平相反的价值太接近对方。例如,再次开始和两个输入不能改变相反的极性和在一个时间间隔小于(对图的一部分8 (c))。
(一)
(b)
(c)
存储循环与各自的时间限制是常见的所有穆勒C-Element设计。异步设计中充分依靠握手请求/应答控制循环进一步确保输入过渡之前不应用于穆勒可控门造成的输出转变以前的输入转变已经承认。以这种方式上面的时间条件都满足,至少在无故障的情况下。然而,在我们的例子中我们必须意识到的时间限制。
5.1.1。弹性管道
图9显示了一个弹性的四级实现管道(我们的理论分析预测精度三个节拍,所以我们认为是管道深度四个安全)的常规结构允许轻松配置FIFO缓冲的深度。能够存储四个转换应用。最右边的条目被过渡,导致对所有剩余的转变。
一般来说,弹性管道的过渡处理方式提供了一个非常优雅的流控制和缓冲机制,只要一些基本的维护时间限制。涉及的时间路径在图中描述9。类似于穆勒C-Element本身,弹性的反馈循环管道引入一个额外的时间条件限制输入序列。的路径延迟限制两个后续输入转换之间的最小距离。穆勒C-Element的输入约束的特征显然是restricitve因素越少在这一点上与。
很明显,速度、健壮性和区域TG-Alg实现的效率在很大程度上取决于质量可用的库穆勒C-Element细胞。因此,我们决定使用一个定制的,晶体管实现ASIC的设计水平。它是基于提出的电路效力过(44),然而,增强与几个扩展。首先,专用和输入(cf图8(一个)符号和数字8 (b)增强的功能)允许正确初始化元素的状态。对于我们TG-Alg空管道作为起点。此外,为提高性能两个输出信号,和与其对应的倒提供,从而节约额外的逆变器的反馈路径的弹性管道(cf图7)。
注意,在TG-Alg的弹性管道输出不连接。再仔细看看图7显示,对应的时钟输入信号(远程或本地)。反过来反馈的输出将对应于一个确认信号的时钟信号转换,我们省略依照需求HW-R1和HW-R7。
相比之下,远端互连模块包括整个管道接口的区别和。只要管道是空的,等待输入转换和蜱虫可以删除模块的区别。然而,尽快管道拥有至少一个时钟周期可以被改变的价值。
5.2。计数蜱虫
以上的弹性管道设法缓冲输入时钟transitions-four时钟转换的具体情况提出TG-Alg ASIC节点设计。这个缓冲方案是至关重要的,因为它将本地和远程蜱虫之间的时间域,从而允许我们处理它们根据严格,预定义的序列(即。,而无需考虑并发性),进而避免亚稳态设计。上面已经列出,实际的计算模型相结合,实现一对这样的弹性管道,一个用于远程蜱虫,一个为当地的两边和删除匹配的蜱虫。注意,这个迁移过程要求我们有一个专门的地方管道/计数器的实例。
5.2.1。不同模块
该模块负责有序删除匹配的蜱虫。本质上它就像一个异步状态机,首先去除蜱虫从远程管道(一个可用),只有在这之后删除已经承认使蜱虫除在当地的一面。该过程确保了条件和,直接翻译fill-level信号,从来都不是错误的激活。分析的结果所需的行为,这个状态机可以实现穆勒C-Element如图10,与穆勒C-Elements弹性管道,初始化为1。
硬件设计优化目标ASIC实现整个制造业和计数器模块呈现在图10。
5.2.2。管道比较信号生成
PCSG模块负责生成比较结果,和,基于本地和远程的填充水平管道。正如前面提到的,它的功能可以分割处理的奇怪的甚至是蜱虫。甚至PCSG部分处理传入的蜱虫最终触发代奇怪的蜱虫通过发行信号。同样,电路关心奇怪的蜱虫和控制和负责生成甚至钟表的滴答声。
一般管道的所有输出信号比较信号生成模块(,)以及所有内部逻辑操作是活跃的低。这允许我们只使用反相基本盖茨(NAND /也不是和/或)在PCSG设计,这导致优化的速度ASIC实现。
PCSG执行转换的转换逻辑中使用的弹性管道和Diff模块状态逻辑。在这一点上特定的比较信号必须小心从来没有切换到之前活跃状态和条件,分别。注意,然而,蜱虫生成函数的性质允许他们保持活跃一段时间即使各自的条件不再满足。从算法的角度来看,这意味着的早期或非法解雇规则是灾难性的,而晚期失活的规则更重要。Diff模块设计中我们已经仔细避免故障可能引入的去除过程。不过,然而,我们可能会遇到错误的激活由于一个弹性管道的动态,也就是说,当一个过渡波纹管的输出。因为这个原因三个水龙头当地管道相结合,以确保没有动态效应在蜱虫到来或删除可以妥协填补水平信号,虽然对于静态的情况只有两个就足够了。详细的信号,,会同门是用来表明管道是否持有一个甚至是蜱虫。fill-level指标在远程端(,和,)负责检查一个或多个时钟目前存储在管道中。一个适当的结合本地和远程fill-level信号允许生成输出信号和,代表的条件和,分别。达到一个活跃fill-level信号相应的,它认为:(我)甚至大多数人(蜱虫)时钟转换存储在本地表示的管道(区别是否没有或一个过渡管道取决于ACK的状态,也就是说,最后过渡是否已经被移除的Diff模块,这是我们比较不相关,涉及到应答信号没有必要),(2)至少一个时钟周期也出现在远程管道,由信号表示。
这两种情况相结合通过最后一步,产生的输出。同样,低活性的激活信号实施的条件必须满足以下约束:(我)甚至又只有一个(蜱虫)时钟转换允许当地管道内部,评估的门;(2)多个时钟周期必须出现在远程管道,管道阶段的时钟周期和另外一个奇怪的蜱虫阶段。
这些条件将由门通过信号和结合的输出。激活的信号和通过类似的手段,只是治疗甚至奇怪而不是输入信号。
我们仔细分析了管道的动态行为,确认我们的解决方案可以处理所有可能的动态效应引起的转换通过弹性管道荡漾。
5.3。生成蜱虫
每个TG-Alg节点的最终处理步骤涉及评价柜台的填充水平和产生新的钟表的滴答声根据“继电器规则”和“增量法”算法3。这里将从状态逻辑转换逻辑需要执行,需要仔细考虑可能的故障。毕竟,在过渡信号每个信号变化被视为有意义的数据。
5.3.1。阈值模块
四个不同阈值电路允许单独评估所有节点的输出信号 计数器模块。如图11,两个阈值电路负责处理fill-level信号和即使是蜱虫。这样他们实现蜱虫生成算法的“接力规则”和“增加规则”下降由于盖茨阈值与阈值的转换和,分别。同样奇怪的同行把信号和。
为一个单一的阈值函数的实现几个可能性存在。我们根据以下标准评估他们。(我)低传播抖动:部分中概述3.1算法的正确性和性能最终依赖比率不同的时间路径延迟TG-Alg内设计。因此我们不希望不同的路径有显著不同的传播延迟(例如,包括不同数量的逻辑阶段)。(2)低传播延迟:阈值模块的传播延迟直接增加了TG-Alg的往返时间,从而影响性能。(3)鲁棒性:因为我们正走向一个容错解决方案我们不允许一个模块妥协整体的鲁棒性。这个规则解决方案基于总结电流或指控在模拟域。(iv)面积开销(v)CMOS技术:方法是针对数字CMOS电路,阈值门也应该在CMOS技术实现,最好使用标准的细胞。
在[45]我们取得了一个精心设计的比较可用的方法和确定产品方案的总和作为一个最佳匹配这些约束,尽管它的面积开销相当可观。
需要实现的从- - - - - -设计产品条款必须计算,然后总结。的阈值电路ASIC TG-Alg设计11输入信号。结果4-out-of-11实施阈值电路产量330产品条款。这些产品条款必须总结以树型级联结构因为没有小学大门的扇入330可用ASIC技术目标。和产品实现的一个显著特点是,对于一个给定的配置的输入与所需的阈值函数和可以转换成彼此通过把输入和输出信号,因此只有一个函数设计。
虽然产品的选择和实现在许多方面是有利的,它不能实现,如操作完全完美。这不是缺一个实现,但异步状态的一般行为逻辑,往往会产生故障输出处理输入时只要没有严格限制输入序列是保证(46]。在这一点上我们可以利用奇数和偶数蜱虫之间的分离。电路块的奇数和偶数蜱虫交替操作,我们可以确定一个静止期每一个阈值,它可能产生故障时,在不危及TG-Alg的整体操作,提供这些故障是有序的蒙面。它将蜱虫一代的任务模块(见部分5.3.2)提供这种屏蔽,我们将不得不考虑时间限制允许故障持续时间。
5.3.2。蜱虫生成模块
蜱虫一代的任务模块(见图11)是实际生成和广播接下来的蜱虫,一旦阈值模块中实现的规则表明是时候这样做。这里是专门的转换状态逻辑回转换逻辑。
在蜱虫一代模块四个阈值电路输出,通过简单的逻辑门组合的方式,这样只生成有效的时钟,在本质上它处理的并发性算法的两个规则。此外,蜱虫生成模块生成一个时钟周期后必须确保TG-Alg的时钟输出保持稳定尽管阈值电路的输出可能由于故障切换。启用该保留的时钟输出主要由穆勒C-Element输出只有问题一个新的蜱虫这两个输入显示。然而,由于穆勒C-Element需要稳定的存储循环输入在其稳定时间阈值电路的输出必须是稳定的一个小时间间隔之前和之后生成一个新的蜱虫。这个安全窗口必须确保的时间限制。假设所有实现约束实现,考虑到上述因素,只有在生成一个新的蜱虫(我)阈值电路负责最后的蜱虫的生成发布(通过提供使输入信号,)再次变得不活跃;(2)至少两个阈值电路中的一个负责的生成新的蜱虫被激活。
注意,通过这些规则的生成一个奇怪的蜱虫触发生成只有过去的蜱虫甚至()。全面描述了蜱虫生成过程的分析,在飞镖的背景下进行的项目和发表在33),表明提出的方法是足以避免新旧的实例和混淆。这种正式的主要信息分析推导出随后硬件实现也会有时间限制。
5.4。时间限制
蜱虫一代方法的正确行为的算法3依赖于一些特定的时间限制。事实上,特定于实现的约束路径延迟必须持有。最重要的是给定的联锁约束确保蜱虫(),蜱虫()消息不相互干扰。
约束1(连锁)。
必须持有。
与延迟路径。
代表最慢的禁用路径开始和结束于蜱虫一代各自的输出节点。对应的最快路径产生一个时钟周期,而类似地,,占最低的失活时间之前的时钟周期进而使一代的下一个时钟周期。图12图形化呈现TG-Alg节点的反对联锁延时路径。注意,只涉及到路径包括设计单位在当地节点。本地的约束1大大促进了设计相应的路径延迟。
联锁约束并不是唯一相关的时间约束。简而言之,它还保存在本地和远程管道去除蜱虫快到足以抑制过度排队蜱虫。额外的时间约束边界最快的远程触发生成新蜱虫与最慢的本地处理。此外,所有正确的启动(启动)节点必须在一定的时间间隔。这些额外的约束的详细描述可以在找到38]。
6。结果
基于给出的设计在前面的小节中,我们实现了一个ASIC的原型技术。我们选择这个尺寸相对较大的特性,因为它允许辐射很难实现,这对星载应用程序是一个重要的特性我们所想要的。门的阈值是可配置的系统,也就是说,。这个ASIC实现允许我们第一次评估的成本和性能的飞镖概念在实践中。本节报告我们的经验和测量结果。
6.1。TG-Alg实现特征
分析整个TG-Alg设计是由整理所有子单元的特点。为此具体数字硬件的努力在门等价物和大小将死去。完全连接的网络拓扑显然意味着二次增长TG-Net的链接数的节点数因此也有,也就是说,,并直接影响TG-Alg的实现的复杂性。不过,请注意,我们不提倡建立一个系统高;即使是价值,因为它是用于我们的实验中,远比“单故障假设”通常申请硬件。
住在以前提出的流子块的蜱虫排队和滴答计数机制被放在第一位。硬件努力构建TG-Alg排队和计数模块是一个相当大的一部分由合并穆勒C-Elements的数量。考虑到远程和本地弹性管道以及不同模块,穆勒C-Element礼物唯一相关的构建块,而管道比较信号生成模块组装使用一些基本的盖茨和两个和三个输入,分别。记得从图7那个人为每个远程TG-Alg计数器模块必须有一本。表的上方1提出了数字(在门数和硅区域ASIC目标技术)处理子模块以及整个的设计计数器。此外,硬件的努力加起来占了计数器的实际TG-Alg实现。它可以观察到弹性管道的主要贡献者是芯片的每个领域计数器。这是由于图书馆的相对复杂的结构单元用于穆勒C-Element额外的输入直接设置和重置。但是请注意,我们使用定制的细胞在晶体管级设计。如果我们选择了一个门电路级实现(例如,设计基于逻辑门),我们将经历一个更高的面积开销和显著的性能损失。
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
相比之下排队和计数块(计数器)每个TG-Alg认为只有一个阈值Module-incorporating四个阈值电路单元和蜱虫一代模块。彻底部分中描述5.3.1后,阈值电路是纯粹的组合块和产品实现。给定一个输入的宽度,提出了复杂性增长的数量输入收益率330年和462年对每个产品的条款和分别阈值电路。与大约因此指数增加是一个著名的成本驱动因素,当缩放蜱虫一代系统的弹性呢因此节点的数量。因为基本标准电池盖茨NAND和也,用于产品实现的总和,通常只有两个和三个输入,硬件与越来越多的努力是另外增加。这是真的为产品条款以及终端和术语,因为越来越多和导致需要级联基本盖茨。
与阈值电路蜱虫一代模块不受缩放效果,因为它包含两个基本的盖茨和一个穆勒C-Element。同样的弹性管道的晶体管级实现穆勒C-Element受益。表的下方1列表门数和面积数据块总体设计单位和阈值模块。
的比较TG-Alg组件硬件方面的努力,表所示1,显示产品的和阈值电路实现占整个设计的很大一部分。几乎TG-Alg芯片的面积阈值模块。巨大的硬件工作反映了阈值电路的不利的扩展和。一般来说,阈值模块的硬件优势努力允许给估计的扩展TG-Alg芯片面积。这个比例显然只适用于产品的使用和方法,为其他实现技术是完全不同的。定制的穆勒C-Element类似地,一个适用于增强减少产品领域努力的总和可能由一个优化的晶体管级实现。此外,提出的设计方案(45改进的可能提供合理的选项。
6.2。性能评估
以下评估旨在彻底描述运行蜱虫一代系统的属性。这些评估展示挂帐代在不同操作条件下和验证的容错性能(最坏的情况)飞镖的方法。蜱虫一代系统组成的(和)充分互联的ASIC的节点(来)是所有评估集群的聚集。
在平均情况的背景下,实验实施和操作的评估特点当然是感兴趣的。特别是,稳定性问题时出现的回忆,飞镖时钟方案的主要目标是提供传统容错时钟同步电路。一方面TG-Alg实现的异步特性允许设计适应它的操作在不同条件下,从而提高其鲁棒性。另一方面这种灵活性可能从同步单元问题的观点,因为它是由自适应控制,因此不同,TG-Alg时钟。由于TG-Algs异步实现一定程度上的操作参数灵敏度可以预期。
6.2.1。频率
实现时钟频率完全依赖于异步电路的切换延迟和互连延迟的远程和本地时钟线。利用从理论预测蜱虫一代计划的频率可以通过同步房地产界进步(P)与蜱虫生成路径: 的路径表示可能代随后的蜱虫,最慢,代表最快的远程和本地触发蜱虫一代,分别。所需的延迟参数可以从ASIC设计中提取文件。一起为芯片互连延迟这听起来足以给一个可实现的时钟频率的估计。飞镖的设计,和一个假定的互连延迟导致的预期。
测量一个类似的路径显示延迟的。这条路是remote_clk [ ]输入销、6穆勒C-Elements PCSG单位,阈值模块包括蜱虫发电,最后local_clk输出销。类似地,上述检查的延迟是测量。组成的道路也很相似local_clk_self输入插口后跟5穆勒C-Elements PCSG单位,阈值模块,和蜱虫生成块,在结束local_clk输出销。
的差异测量和设计文件之间主要是由于这样的事实:测量设置的评估与设计文件使用最短路径通过阈值电路。(这是由于这样的事实:一个8节点系统是用于测量;然而,道路被认为是在设计文件使用的路径越快和)。从理论,然而,很明显,基于速度最快的路径(和、职责)只能维持一小段时间,也就是说,远程或本地管道必须完整,蜱虫在到达对面或,分别。一旦前面充满管道被清空时钟频率将明显减慢导致观察到的平均频率。
6.2.2。操作条件的依赖
正如上面提到的,电路的开关速度可能是电源电压的函数。此外,数字CMOS电路也被认为是会对温度变化敏感。效果通常遇到的正常操作模式。提到的电压依赖的CMOS电路可以用推导的延迟时间近似一个大门,本质上可以归结为 与负载电容,和代表了CMOS晶体管分别获得和电源电压(47]。注意,上述的温度依赖性的CMOS电路是隐藏在里面。载流子迁移率(电子和空穴)随温度上升,因此减少,产生电路的温度上升放缓。表2显示测量的平均频率和对应的当前的设计。
|
||||||||||||||||||||||||||||||||||||||||
如预期的5)实现时钟频率尺度与提供的核心电压成正比。图(13日)提出了详细的测量结果的应用核心电压一直在改变步骤在一个时间间隔开始和结束的额定电压。一种改进的测量数据使得电压和时钟频率的相关性给出图更加突出13 (b)。核心电压和频率的比例各自的最大值。这种方法可以观察到的电压变化收益率大约时钟频率的变化(红线图13 (b))。的强烈影响的核心电压的操作频率异步蜱虫一代实现符合期望。第二个重要的影响因素是温度。再次,根据(5)CMOS电路的开关速度和传播延迟规模间接与温度成正比。这种期望也被证实的测量。
(一)
(b)
6.2.3。短期抖动
短期波动频率和不连续的时钟时间无故障的操作期间预计至少有两个来源。首先,上述电源电压的依赖将项目其电压抖动频率抖动。温度的变化被认为是太慢,收益率可感知的短期效应,但由于传播延迟是受到热噪声的影响,所以将我们的系统产生的频率。评估是基于短期和高分辨率测量(10 g / s)包括约钟转换。这些测量瞄准描述单个节点的时钟运行在一个飞镖集群。
测量的一半时间是在直方图如图(14日)。两个集群点可以确定一个和其他。一个单独考试(没有显示)透露,这些积累点的分布相对应嗨和罗期。这个观察可以解释为各自的时钟信号的处理速度略有不同,特别是,(a)上升和下降的单独处理转换在我们的实现中产生不同的路径延迟和(b)不同时间的行为(上升/下降时间,例如,)的穆勒C-Elements上升和下降的转变。图14 (b)介绍了分布的平均频率的时钟频率和一个标准差。
(一)时期的一半
(b)的时钟频率
6.2.4。长期抖动
尤其是在蜱虫一代系统的长期运行不同温度的影响预计将明显。自热的TG-Alg芯片预计将持续减缓蜱虫生成过程。表中给出的数字2显示,时钟频率的稳定性很大程度取决于操作条件的稳定性。图15提出了一种长期的评估节点的平均时钟频率的评价区间超过17小时。它可以观察到,时钟频率明显减少了。操作条件,即核心电压和环境温度,没有变化在这个实验中设置。所有节点的测量在复位状态,没有活动。因此不值得提的电流的芯片。一旦重置被停用的设计开始画大量的电流导致运行的芯片和自热引起的渐近减少意味着时钟频率图中描述15。
15分钟快照的频率测量包括高分辨率跟踪的核心电压呈现在图16。在此图中可以观察到的一个离散跳跃的核心电压直接频率跳紧随其后。这种行为完全符合设计的电压依赖了。在描述测量电压改变了导致上述转变的平均频率。观察到的微小的电压变化的最初原因是隐藏在数字电源使用量化的步骤。这个解释的正确性对频率跳跃另外被反复核对确认测量与模拟电源。在这些评估整体观察频率抖动增加由于更高层次的电压噪声。然而,无论是离散步骤电压水平还是在平均频率。
除了评估提出一个时钟信号,整个乐团的时钟信号进行评估,但精度较低,因为这些测量必须执行逻辑分析仪,其时间分辨率是有限的。主要兴趣显然驻留在时钟的同步。详细的短期测量表明,无故障的情况下,乐团开始严格同步和仍然密切同步(小初始偏移是由于不同的复位信号的传播)。在正常情况下,名义上的核心电压和室温,评估了初始偏移量的范围来。在这些短期测量任意两个之间的最大偏差蜱虫()时钟转换从未超过它的初始偏移量。因此,绝对没错的时钟乐团名义操作条件下运行精度。在图17所有8节点的频率飞镖集群(从复位状态)进行描述。(提高表现力的图数据值实际上已经平滑补偿逻辑分析仪的有限的决议。请注意,这是不影响总体趋势但只有频率变化的大小)。它可以观察到,共同所有飞镖时钟的频率变化,因此收益率密切同步。
6.3。容错属性
到目前为止所有评估认为TG-Alg节点操作绝对没错的。相比之下,这段考虑场景中给出的评估与断层人为引入8节点的集群运行(通过设计应该适应拜占庭故障)。在实验中崩溃的后果TG-Alg节点检查。实现节点崩溃场景通过重置一个或两个节点的集群飞镖。注意,这些场景不一定有崩溃的良性的性质假定在分布式系统。甚至停留在故障可以崩溃故障的范围外的场景。例如,早期的时钟过渡,即改变时钟铁路嗨来罗(stuck-at-0)通过一个节点的激活重置已经在类恶意/拜占庭故障。所有的组合场景与一个或两个节点崩溃了18。为每个重置场景前后的平均频率崩溃已经来自测量数据。线连接这两个平均频率值说明实际的时钟频率的下降。正如预料的那样,在所有36重置场景节点的失活导致的减少意味着时钟频率。这是很自然的,因为其余nonfaulty节点集群节点的崩溃意味着之前的一个或两个最快的节点(s) /已停用。因此正确的节点必须等到蜱虫从慢节点收到消息仍在运行,因此导致额外的延迟在下次可以生成蜱虫。注意,由于小不同的传播延迟和关闭所有时钟的同步,每个节点的设置最快的邻居可能有所不同。这导致每个节点的复位的作用至少稍微影响时钟的时钟频率。
同步精度代表了最重要的一个飞镖蜱虫一代系统的同步性能。它可能仅仅是评估通过测量时钟的相对偏移量。然而,这种评价不太可能反映最坏的状况。正如已经指出的部分6.2.4飞镖集群的计算和互连延迟几乎完全对应哪一种收益率精密。因此必须派生一个适当的场景和建立了最坏的测量。图(19日)显示了通用设置静态力的系统TG-Alg节点进入一个操作模式与最坏的精度。这个场景中给出的唯一相关参数的连接远程延迟。描述一组节点必须错误的的方式蜱虫(消息被传递给第二组慢TG-Algs。进一步必须确保节拍缓慢的集合节点之间发送以及那些收到集团的快TG-Algs发行最大远程延迟。连接没有明确如图(19日)可以认为有延迟吗。更正式地说,在一个系统表示所有节点有三个不同的组TG-Algs包括快速节点,慢,有缺陷的人。的远程航班延误来在此设置中给出
(一)
(b)
为了更好地理解这个静态评价设置代表一个有效的原因坏的情况对蜱虫一代系统,图19 (b)描述了相关的执行跟踪(non-faulty)节点。跟踪显示,假设所有节点开始大约在同一时间通过发行蜱虫(0)。例如,假设独自决定了蜱虫一代系统的处理速度。(回想一下部分3.1只有比最快最慢路径决定了算法的属性,因此,没有区别蜱虫一代的或整个延迟路径被认为是在实验场景中。)在给定的设置中,设置包括TG-Algs快。在一起快,但错误的节点蜱虫的速度取决于不断生成的根据算法的“增量规则”(阈值)。类似地,慢TG-Algs钟表的滴答声也开始问题引发的“增量规则”(我),但是,在一段时间内确定。因此,组开始“跑”而缓慢的组“运行”。在某种情况下节点的发出滴答声流变化缓慢的操作模式“继电器规则”(R)接管蜱虫的一代。这个开关点达到时蜱虫()消息到达节点缓慢,表明快速远程节点提前至少一个勾,也就是说,,当前的本地蜱虫数量。这种方式“继电器规则”确保系统保持同步状态。最大偏移量在时间之间的第一次发送蜱虫()最后发送的蜱虫()对于任何一双正确的节点可以用来获得集群的精度(更精确的计算的最大时钟脉冲相位差中给出正确的节点指的是详细的正式分析(33,48])。
评估场景描述的实现上述确认的预测理论。不能如预期的测量表明,同步无故障节点只取决于最快最慢路径的比例。通过这些人为引入路径延迟最坏情况下的比率最快最慢的路径可以达到的精度孵蛋的方法仍然构成任何威胁,可以由四级的缓冲弹性管道。
7所示。结论
考虑对容错的日益增长的需求,而缺乏容错孵蛋的计划,使全球同步操作甚至在特别显著偏差的存在,我们提出了一种新颖的时钟生成方法关闭这个缺口。飞镖提供了一个与可伸缩的容错两个时钟,时钟生成单元以及互连,与有界全球同步精度。
飞镖背后的关键思想是使用标记同步算法的分布式系统的社区,其性能和容错特性可以正式证明。通过移动这最初基于软件算法硬件实现,可达到的精度可以提高水平,适用于硬件单元合理的同步时钟。当这样做,然而,必须掌握两个关键问题。首先,该算法必须适当选择和修改以适合硬件实现,其次硬件实现等提出了巨大的挑战。许多这些挑战不仅源于渴望获得快速和area-efficient解决方案,但也从很多方面的抽象算法很难项目硬件,如无限计算值或原子性的行动。
我们已经提出了一个解决方案,是基于异步逻辑设计,部分基于最初的显示原理与握手,在一定程度上时间的假设。后者是必要达到所需的容错和保持时钟分布单轨的方式。在实现一个健壮和高效的解决方案的关键措施是减少问题从一个绝对的相对比较,计数器值的差动传动,实现所需的计数器的弹性管道,上升和下降的分离治疗蜱虫为了方便联锁,并在空闲阶段故障的掩蔽阈值。
我们已经报道了实现和测量结果与一个CMOS飞镖的ASIC设计的概念。在这种情况下我们已确定阈值盖茨作为主要贡献者区域消费。除了作为一个概念验证,我们的实验调查了时钟时钟的稳定计划的行为,时钟抖动,同步精度和容错。总体的期望理论模型可以证实。
尽管飞镖的方法,因为它已经是一个有吸引力的解决方案容错时钟生成,我们仍在考虑未来的改进。其中之一是使用较弱的断层模型,以减少面积和改善与数量的比例的节点。其他的想法包括流水线时钟节拍加快时钟频率或建立一个有效的全球通信方案的飞镖时钟metastability-free的建设。
确认
这源于工作飞镖(分布式算法健壮Tick-Synchronization)项目,这一直是一个共同努力的维也纳科技大学和RUAG空间,看到的http://ti.tuwien.ac.at/darts获取详细信息。作者要感谢所有飞镖项目成员从RUAG空间GmbH以及维也纳技术大学专门为启动Ulrich施密德飞镖项目并推动它向前发展。也非常感谢去马提亚依靠他永无止境的热情和他的伟大的工作形式方面的小说生成方法。最后但并非最不重要的,他们是由奥地利bm:感谢支持的维特通过把它项目拨款飞镖(809456 - sck /赛)和奥地利FWF项目θ(P17757)。
引用
- g·摩尔,“数字集成电子、进步”学报IEEE国际电子设备的技术消化会议(75年IEDM”),11 - 13,1975页。视图:谷歌学术搜索
- 2009年,“国际半导体技术发展路线图http://www.itrs.net/。视图:谷歌学术搜索
- l . Wissel野鸡,r . Loughran c .勒布朗和b . Klaasen“软管理asic中的错误”《IEEE定制集成电路会议2002年5月,页85 - 88。视图:谷歌学术搜索
- r·鲍曼“软错误在先进的计算机系统中,“IEEE计算机的设计和测试,22卷,不。3、258 - 266年,2005页。视图:出版商的网站|谷歌学术搜索
- d·罗西m . Omana f·托马,c .子宫”多个瞬态故障逻辑:下一代集成电路的问题吗?“在诉讼20 IEEE国际研讨会在VLSI系统缺陷和容错(DFT 05)2005年10月,页352 - 360。视图:谷歌学术搜索
- a·纳史木汗和r . bloom可变性对时钟脉冲相位差的影响在h树时钟网络”第八届国际研讨会学报质量电子设计(ISQED ' 07)2007年3月,页458 - 463。视图:出版商的网站|谷歌学术搜索
- e . g .弗里德曼“时钟分布网络同步数字集成电路”,IEEE学报》,卷89,不。5,665 - 692年,2001页。视图:谷歌学术搜索
- p . j . Restle c·a·卡特,j . p . ruth et al .,“power4处理器的时钟分布”《IEEE国际固态电路会议(globalfoundries ' 02),2卷,第137 - 144页,2002年2月。视图:谷歌学术搜索
- m . Omana d·罗西,c .子宫“快速和低成本的时钟缓冲,”学报19 IEEE国际研讨会在VLSI系统缺陷和容错(DFT的04)2004年10月,页202 - 210。视图:谷歌学术搜索
- d . w . Dobberpuhl r·t·Witek r . Allmon et al ., " A 200 - mhz 64 - b双发射CMOS微处理器、”IEEE固态电路杂志》上,27卷,不。11日,第1567 - 1555页,1992年。视图:出版商的网站|谷歌学术搜索
- s . d . Naffziger g . Colon-Bonet t·菲舍尔r . Riedlinger t·j·苏利文和t . Grutkowski”itanium 2处理器的实现。”IEEE固态电路杂志》上,37卷,不。11日,第1460 - 1448页,2002年。视图:出版商的网站|谷歌学术搜索
- y . w . Hu r . Wang Chen等人“Godson-3B: 1 GHz 40 w 8核128 gflops在65纳米CMOS处理器”《IEEE国际固态电路会议消化技术论文(globalfoundries的11),第77 - 76页,2011年。视图:出版商的网站|谷歌学术搜索
- j . Calamia“中国教子赌博”,IEEE的频谱,48卷,不。5、14 - 16,2011页。视图:谷歌学术搜索
- n .塞弗特··希普利m . d .裤子诉安布罗斯和b·吉尔,“辐射诱导时钟抖动和种族,”第43届IEEE国际可靠性物理学报》研讨会2005年4月,页215 - 222。视图:谷歌学术搜索
- d . m . ChapiroGlobally-asynchronous locally-synchronous系统斯坦福大学,博士论文,帕洛阿尔托,加州,美国,1984年。
- r . Ginosar“十四愚弄你的同步器的方法,”学报》第九届IEEE国际研讨会异步电路与系统(异步' 03)2003年5月,页89 - 96。视图:出版商的网站|谷歌学术搜索
- j . Muttersbach t·威利格,w . Fichtner”的实际设计globally-asynchronous locally-synchronous系统”学报第六高级研究国际研讨会在异步电路与系统(异步' 00)2000年4月,页52-59,。视图:出版商的网站|谷歌学术搜索
- r . Dobkin、r . Ginosar和c·p·Sotiriou“数据同步问题在soc女孩儿,”美国高级研究国际研讨会在异步电路和系统,10卷,第179 - 170页,2004年。视图:谷歌学术搜索
- m . s .胎盘和m . l .阿兰达”相互联系的戒指和振荡器作为兆赫时钟分布网络,”13 ACM大湖学报》研讨会上超大规模集成(GLSVLSI ' 03),41-44,2003页。视图:谷歌学术搜索
- m . s .胎盘和m . l .阿兰达”分析和验证相互连接的环作为时钟分布网络,”诉讼的ACM大湖研讨会上超大规模集成(GLSVLSI ' 04),第315 - 312页,2004年。视图:谷歌学术搜索
- 美国费尔班克斯,”方法和分布式时钟发生器器”,2004年,美国专利号US2004108876,http://v3.espacenet.com/textdoc?DB=EPODOCn&IDX=US2004108876。视图:谷歌学术搜索
- 美国费尔班克斯和美国摩尔,“全球时钟自动时序电路”学报》第七届国际研讨会异步电路和系统2005年3月,页86 - 96。视图:谷歌学术搜索
- 美国豪”异步设计方法:概述”,IEEE学报》,卷83,不。1,第93 - 69页,1995。视图:出版商的网站|谷歌学术搜索
- a·j·马丁,m . Nystrom k Papadantonakis et al .,“Lutonium: sub-nanojoule异步8051单片机,”学报》第九届IEEE国际研讨会异步电路与系统(异步' 03)2003年5月,页5,。视图:出版商的网站|谷歌学术搜索
- 具有纵横开关c Uri,”t比特信息能力核心multi-clock-domain soc,”学报》第15届研讨会上高性能芯片(热芯片' 03)2003年,p . 102 ff。视图:谷歌学术搜索
- j . Dama和a线“GHz异步存储器在65 nm,”学报》第15届国际研讨会异步电路与系统(异步09年)2009年5月,页85 - 94。视图:出版商的网站|谷歌学术搜索
- a·j·马丁,“限制delay-insensitivity在异步电路,”AUSCRYPT 90年第六麻省理工学院学报》会议上先进的超大规模集成电路的研究麻省理工学院出版社,页263 - 278年,剑桥,质量,美国,1990年。视图:谷歌学术搜索
- w .张成泽和a·j·马丁SEU-tolerant QDI电路,”学报》第11届IEEE国际研讨会异步电路与系统(异步05)2005年3月,页156 - 165。视图:谷歌学术搜索
- w . Friesenbichler、t . Panhofer和m . Delvai”提高容错利用可重构异步电路,”学报IEEE电子电路和系统的设计和诊断研讨会(DDECS ' 08)2008年4月,页267 - 270。视图:出版商的网站|谷歌学术搜索
- m . Delvai设计异步处理器基于代码交替logic-treatment非线性数据的路径科技大学博士学位论文,维恩,研究所技术合作Informatik,维也纳,奥地利,2005年。
- d . Dolev j.y. Halpern, h . r .强劲,”实现时钟同步的可能性和不可能的,”计算机与系统科学杂志》上,32卷,不。2、230 - 250年,1986页。视图:谷歌学术搜索
- t . Polzer t Handl A。施,“一个metastability-free multi-synchronous soc的通信方案,”学报》第11届国际研讨会上稳定,安全,和安全的分布式系统(SSS ' 09)卷,5873在计算机科学的课堂讲稿,第592 - 578页,2009年。视图:出版商的网站|谷歌学术搜索
- g . m .依靠美国。施密德说,福克斯,g . Kempf“容错分布式时钟生成在VLSI systems-on-chip,”学报第六届欧洲可靠计算会议(EDCC 06年),页87 - 96,IEEE计算机协会出版社,2006年10月。视图:出版商的网站|谷歌学术搜索
- l . Lamport“互斥的问题:部分我的进程间通信理论,“ACM的杂志,33卷,不。2、313 - 326年,1986页。视图:出版商的网站|谷歌学术搜索
- l . Lamport“Arbitration-free同步”,分布式计算,16卷,不。2 - 3、219 - 237年,2003页。视图:出版商的网站|谷歌学术搜索
- t·k·Srikanth和s . Toueg“最佳时钟同步,”ACM的杂志,34卷,不。3、626 - 645年,1987页。视图:出版商的网站|谷歌学术搜索
- j·威德和美国。施密德说,“Theta-Model:实现同步没有时钟,”分布式计算,22卷,不。1,29-47,2009页。视图:出版商的网站|谷歌学术搜索
- g·福克斯,容错分布式算法芯片上的蜱虫代:概念、实现和评估,博士论文,维也纳技术大学Fakultat皮毛Informatik,维也纳,奥地利,2009年8月。
- j . Sparsø和s . Furber异步电路设计的原则,2001年10美分。
- m .出g·福克斯,a。施,g . Kempf”VLSI实现容错的分布式时钟一代,”21 IEEE国际研讨会的程序缺陷和容错的VLSI系统(DFT 06年)2006年10月,页563 - 571。视图:出版商的网站|谷歌学术搜索
- d . l .黑”delay-insensitive公平的仲裁者的存在:跟踪理论和其局限性,“分布式计算,1卷,不。4、205 - 225年,1986页。视图:出版商的网站|谷歌学术搜索
- a·j·马丁,“编译过程沟通delay-insensitive超大规模集成电路,”分布式计算,1卷,不。4、226 - 234年,1986页。视图:出版商的网站|谷歌学术搜索
- 即萨瑟兰,“Micropipelines”,通信的ACM图灵奖,32卷,不。6,720 - 738年,1989页。视图:谷歌学术搜索
- k .效力过,“小心同时的叉。”集成、VLSI日报,13卷,不。2、103 - 128年,1992页。视图:谷歌学术搜索
- g . Fuchs j . Grahsl施密德,a .。施和g . Kempf”门槛Modules-Die Schlusselelemente苏珥Verteilten Generierung进行Fehlertoleranten节拍,”奥地利国家集成电路设计与系统会议(Austrochip 06年),第156 - 149页,维也纳,奥地利,2006年10月。视图:谷歌学术搜索
- s . m . Nowick和c . w . O ' donnell”邮件的存在多层次的逻辑,“研究进展国际研讨会上异步电路和系统2003年5月,页109 - 120。视图:出版商的网站|谷歌学术搜索
- n·h·e·Weste和k . EshraghianCMOS VLSI设计的原则:一个系统的视角,朗文出版社,波士顿,质量,美国,1985年。
- m . Fuegger施密德,g . Fuchs。施,g . Kempf和m . Sust“容错分布式蜱虫在集成电路systemson-chip代”技术。众议员53/2009,维也纳技术大学,研究所技术合作Informatik,维也纳,奥地利,2009年。视图:谷歌学术搜索
版权
版权©2011 Gottfried福克斯和安德烈亚斯。施。这是一个开放的分布式下文章知识共享归属许可,它允许无限制的使用、分配和复制在任何媒介,提供最初的工作是正确引用。