Qubic计算模型

关于Qubic计算模型的一个简单的(r)解释,在Andrew Brough,Jake Cahill,Sabri Goldberg,Sergey Ivancheglo,Igor Nielsen,Navin Ramachandran和DavidSønstebø之间的讨论之后写成。

在这篇博文中,我们将讨论计算机在基本水平上的工作方式,以及我们如何考虑在Qubic中使用一种稍微不同的方法。我们称这种方法为Qubic计算模型(QCM)。

我们为什么要建立一个新的计算模型?

IOTA旨在为物联网上的设备实现机器对机器经济。这些设备需要在低功耗和恶劣的物理环境中工作。

传统电子产品使用复杂的机制,消耗大量能源,对这些环境更敏感。通过QCM,我们的目标是为这些设备创建更高能效和更具弹性的模型。

QCM将其起源追溯到Jinn Labs项目(2013年开始),研究雾/边缘计算和分布式人工智能的新颖硬件方法。从那时起,整个半导体行业已经认识到这种“超越摩尔”的新理念:计算的未来需要创新的方法,而不是依靠摩尔定律来不断提高计算能力。

QCM计划在IOTA历史中占有特殊地位。它概述了与分布式分类帐技术结合的有机机器生态系统的愿景,IOTA诞生于此。

什么是计算模型?

计算模型描述了计算机的工作原理。

计算机获取一些数据,对其执行一些操作并返回结果。这个过程称为计算,它是计算机所做的一切的核心。这是计算机计算总和“1 + 1 = 2”的方式。这是计算机在键盘上按键时在屏幕上打印字母的方式。这就是计算机做任何事情的方式。

数据通过计算从输入到结果的路径称为流。当我们谈论计算模型时,我们感兴趣的就是这个流程。计算模型允许我们可视化数据流,找到计算机达到结果的最佳方式。例如,下面视频中的模型允许您输入不同的硬币并观察它们在通道中的流动情况,直到最后对它们进行排序。

在几乎所有的计算机和数字设备中,传统的计算模型需要非常复杂的 机制来处理数据流。然而,QCM可以以更便宜和更简单的方式处理数据流。

请注意,传统计算机使用二进制数据 - 所有二进制数据都表示为0或1 - 这些数字称为。QCM使用三进制数据 - 这里,数据表示为-1,0或+1 - 这些数字称为trits

现在,我们将从基础知识开始,探讨QCM的工作原理及其组成。然后,我们将解释三进制数据流如何比二进制数据流更有效。

建立一个简单的QCM

为了说明QCM的工作原理,让我们看看一个基本的计算:我们如何检查两个不同的输入是否相等?

例如,如果一个输入为0而另一个输入也为0,我们可以断定它们是相等的。

为了说明为这种情况构建Qubic计算模型是多么简单,让我们画一幅我们大多数人都熟悉的图片:沙滩。现在想象这个海滩:

沙子中的通道,代表电路

通道入口,我们可以倒水 - 这代表了数据

小水坝,代表计算(由下图中的水坝形状表示)

为了比较两个输入(青色和橙色),一个孩子(让我们称她为爱丽丝)将水倒入青色入口和橙色入口。这两个入口都可以表示三个值中的一个:-1,0和+1。请记住,这些值称为trits

现在,一个通道的水不足以升到大坝的顶部。那么让我们看看2种不同的情况。

首先,想象爱丽丝将水注入青色和橙色入口的0个特征。如果你按照这些入口的通道,你会发现两个通道都通向同一个大坝。如果两个通道都通向同一个大坝,那么足够的水会上升到顶部并流过它。因此,我们可以说当水流过大坝时,两个输入值都是相同的(在这种情况下为0和0)。


等价值

现在让我们看看当爱丽丝将水注入青色入口的-1特征和橙色入口的0特征时会发生什么。这些入口的通道通向不同的水坝。如果只有一个通道通向大坝,则没有足够的水从大坝上升。因此,我们可以说当水没有超过大坝时,两个输入值都不相同(在这种情况下为-1和0)。


不等价值

该流程代表基本计算。流过大坝顶部的水是计算的结果。

只要爱丽丝不断将水倒入相同的入口,结果就会保持不变。例如,如果两个输入值相等,则水继续流过大坝并且爱丽丝看到结果。为了比较不同的值,爱丽丝必须停止水流,然后将水桶装入海中,然后将水倒入新的入口。

合并

在我们的海滩上,水坝起着至关重要的作用。它们有助于确定两个特性是否相等,只有在它们相等时才允许水流过它们。当水流过水坝顶部时,它会在所有三个通道相遇的点处结束。这一点称为合并

将结果传递给其他东西是合并的工作,因此可以对其进行更多的工作。例如,你可能会说'如果这些trits相等,那就去做下一个阶段'。

为了帮助您了解该系统的工作原理,这里有一个称为查找表(LUT)的备忘单,它描述了水的情况,具体取决于使用的入口。

那么让我们看看这个LUT在行动......


合并

注意:您可以控制此LUT。如果要更改输出,可以更新LUT。在目前的形式中,两个入口必须相等,以使水流过大坝。但是,如果你想让两个入口都不等于水流过大坝呢?好吧,我们需要扩展我们的示例,我们将在本文后面介绍。但首先让我们来看几个概念。

为什么QCM与众不同?

首先,最重要的方面。我们可以在海滩上建立QCM实例的事实表明它是多么简单。您不需要额外的组件。

在传统的计算模型中,我们需要更复杂的设备来保持水流在河道上的运动,并消除这些设备的危害。这种设备更容易发生故障,消耗额外的能量。

“在传统的计算模型中,我们需要更复杂的设备来保持水流在河道上的运动,并消除这些设备的危害。这种设备更容易发生故障,消耗额外的能量。“

因此,这种简单性使QCM在能源效率和弹性方面具有优势(例如在复杂元件更容易出现故障的恶劣物理环境中)。但这种方法也有可能克服芯片制造中的许多主要电流问题(时钟偏移,暗硅,串扰,危险,PVT变化和辐射敏感性),尽管这不在ELI9文章的范围内。

分支和监督员

在我们的海滩上,我们需要进行计算的唯一部分是通道,微型水坝和爱丽丝。通道和水坝一起称为分支,爱丽丝称为监督员。

我们的分支只进行一种计算,它检查两个trits是否相等。但是,我们可以使我们的分支更复杂并扩展它,例如建立一个分支来检查trits是否也是不相等的。

扩展分支

在这个例子中,我们已经扩展了我们的分支,所以现在如果trits 不相等,合并将得到-1的结果。如果trits 相等,则合并将收到+1的结果。请按照下图中的线条自行查看。

现在,记得我们说你可以更新LUT吗?我们可以反转这个新LUT的输出,以便:

如果trits相等,则合并将收到-1的结果

如果trits不相等,则合并将收到+1的结果

然后可以将这些结果用于下一步。

存储器锁存器

如果爱丽丝需要休息并且不想忘记她的结果,会发生什么?

这是午餐时间,爱丽丝想和她的家人一起坐下。但是,她不想忘记她的最后两次尝试是平等的,她也不希望合并停止传递她的结果。所以,她决定使用她的水冷却器。

既然爱丽丝有水源,她需要一种方法来指导合并。为此,她从她的水冷却器直接通道到合并。

水冷却器和将其连接到合并的通道一起称为存储器锁存器。记忆闩锁帮助爱丽丝不仅可以存储她的结果,还可以避免她不断地注水,以便合并不断将结果传递给“下一步”。

爱丽丝的角色

为了简单起见,让我们回到我们原来的分支,它只检查相同的trits。

在我们的分支中,爱丽丝将水倒入两个入口,这两个入口沿着一个方向流动,沿着分支流向合并。该分支输出单个trit(+1表示相等),这是我们计算的结果。

在QCM中,爱丽丝被称为监督员。爱丽丝是QCM简洁的关键。爱丽丝(分公司的主管)负担繁重,而分支本身可以保持非常简单,使其难以应对外部因素。事实上,一些分支机构不需要自己的主管,并且可以使用其他分支的输出来调节其流量。

“爱丽丝是QCM简洁的关键。爱丽丝(分公司的主管)完成了繁重的工作,而分支本身可以保持非常简单,使其不易受到外部因素的影响。“

环境,实体和效果

在之前的技术博客文章中,我们描述了实体,效果和环境(EEE)的概念。

我们的分支是一个实体的例子。使用某些输入数据进行计算是实体的工作。该输入数据由我们的主管爱丽丝提供给实体。

当该环境中的某些内容发生变化时,爱丽丝会从另一个环境中获取数据,此更改称为效果。环境的一个例子可以是任何其他分支,并且变化(也就是效果)可以是流向输出的水。

此过程称为wave,由主管从一个环境中获取数据,并将其作为输入提供给我们的分支,允许它通过并以结果结束。

如前所述,并非所有QCM分支机构都需要自己的主管。任何分支都可以从不同分支的主管接收数据。

通过保持数据流简单,QCM比传统的计算模型更便宜,更简单。

三进制

你可能还记得,我们说QCM使用三进制。这是因为三进制比二进制更有效。现在我们已经建立了第一个分支,我们可以解释为什么它更有效率。

在我们的海滩上,爱丽丝有2个入口,每个入口有3个通道(总共= 6个通道),每个通道占用空间。为了提高效率,爱丽丝的目标是在海滩上使用最少的空间来进行最大数量的计算。海滩空间不便宜!

我们分支机构的每个入口一次只接受一个trit。因此,爱丽丝可以使用这六个通道对任意两个数字进行计算(每个入口一个)。

如果我们在使用二进制(0和1)而不是三进制(-1,0和+1)的海滩上使用相同数量(6)的通道,我们的模型会是什么样子?好吧,爱丽丝每个入口需要2个通道(每个位有两个可能的值),所以我们可以有3个入口(2个通道x 3个入口= 6)。因此,她可以使用这六个通道的三个入口,对任何三位数进行计算。

这可能听起来像二进制会更有效,因为我们在同一个空间中有一个三位数而不是一个两个数字,但让我们仔细看看。

在三进制中,一个trit可以具有三个可能值之一:-1,0或+1。在我们的海滩上,爱丽丝可以输入两个特技。这导致3²(= 3x3)种可能的组合,这给出了9个可能的值。请注意,这与我们之前描述的LUT上的9种可能组合相匹配。因此,爱丽丝可以使用6个通道处理来自双重数字的9个值

在二进制中,一位可以具有两个可能值中的一个:0或1.在我们的二进制海滩上,爱丽丝可以输入三位。这导致2³(= 2x2x2)种可能的组合,这给出了8个可能的值。因此,爱丽丝可以使用6个通道处理来自3位数的8个值

通过使用三进制而不是二进制,爱丽丝可以使用相同的空间和相同的六个通道来处理最大值为9而不是8的数字。这种保存可以帮助爱丽丝在最少的空间内完成大量的计算。

尽管1/8改进(9个值而不是8个)看起来并不重要,但它使我们的计算更加高效。当我们开始进行乘法甚至AI等复杂计算时,这种效率更加明显。

注意:4-ry并不比3-ry(trinary)更有效。如果我们采用12个通道,我们将获得三个4-ry数字,给出64个值(4³)或四个3-ry数字给出81个值(3⁴)。我们再次看到三进制效率更高。实际上,任何其他N-ry都会比4-ry更糟糕。

TLDR

我们已经在上面展示了如何使用QCM简化数据流。这对于保持芯片制造既简单又便宜至关重要,并且意味着电路将能够承受更极端的环境。

我们还展示了如何使用三进制可以进一步提高系统的效率。

当大规模应用时,这种变化有可能对计算领域产生重大影响。


原文:点击进入

如果你喜欢我的这篇文章或者我之前发表的文章,我很高兴能得到一点捐助;-):

IOTA:PGGB9HOSLZQOPPVTGONEYLMJQWFAOLTZJVHEDR9XKSWCRJRUEZZOJYRRKNDBVNKADUXK9UZRKRAWEIFYWECAA9BTIW

专栏作者:IOTA-方可

个人简介:我共发表了 60 篇文章,总计被阅读了21,739 次,共获得了 690 个赞。

作者邮箱 作者主页 Ta的文章

发表评论

电子邮件地址不会被公开。 必填项已用*标注