您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 质量控制/管理 > TIS-100参考手册
TIS-100TESSELLATEDINTELLIGENCESYSTEM(网状智能系统)———————————————————————————————————————参考手册m--对于Randy叔叔的突然离去,我们依然震惊不已。在等待验尸官给出死亡原因的时候,我们尽力应付着一切。我一直在努力收拾他的东西,尤其是他的电脑。当然,我看了一眼车库,那里面的东西对我来说就像一团垃圾。有机会的话我会发点图片。眼下,这是他死的时候工作台上准备的机器。也许你能搞清楚他当时正在用这个干什么。如果他知道有人将要完成他的工作,他肯定会很高兴。Love,AuntDoris.概述———————————————————————————————————————TessellatedIntelligenceSystem是一个大规模并行计算机体系结构,由非均匀的互联的异质节点构成。TessellatedIntelligenceSystem非常适合做需要处理复杂数据流的应用,如自动金融贸易,大量数据的收集,以及对百姓的行为分析。注:本手册中的注释会像这样指明需要特别注意的情况以及对于特定主题有着更多信息的其他文档。系统的体系结构和组织———————————————————————————————————————TessellatedIntelligenceSystem包括大量连接在本地基础上的独立节点。(参看model-specific手册来了解特定设备上节点的精确数量。)节点类型可大致分类为处理型和存储型,而各类别里又有着些不同变种。一般来说,节点通过接口最多和四个邻节点相连。节点之间可以通过接口进行轻量消息传输。传输是由两个相邻节点配合完成的:其中一个节点向接口发出读入或写出的信号,然后此传输暂停,当另一个节点发出对应的信号时,该传输便完成了。注:如果两个节点在消息传输时发出相同的指令(读入或写出),节点会陷入僵局并产生硬件故障。参看分离的文档TessellatedIntelligenceSystemBestPractices-PatternsofNodeCommunication来了解如何有效而安全地使用接口。注:如果一个节点发出消息传输的指令却不再被对应的节点响应,该节点会陷入僵局并产生硬件故障。(例外存在,参看特定节点类型的文件了解更多细节)参看分离的文档TessellatedIntelligenceSystemBestPractices-PatternsofNodeCommunication来了解如何有效而安全地使用接口。注:本文档不包含针对数据传输时间或者吞吐量的操作或指令,因为这些数据因模型和硬件校正而不同。参看model-specific手册来了解对特定设备特性的详细描述。节点类型T20–保留———————————————————————————————————————注:此节点类型标识符限于TessellatedIntelligenceSystem的特定模式,将不在本文档中描述。节点类型T20的资料仅分布在包含该节点的类型系统。根据法律要求,未经授权地要求复制描述这个节点的资料会报告给国家安全局。???节点类型T21–基本执行节点———————————————————————————————————————1.结构基本执行节点负责协调TessellatedIntelligenceSystem的行为。数据处理可以发生在基本执行节点中,或者可以委派给专门的处理和存储节点。基本执行节点执行程序,程序由基本执行节点指令集中的指令组成。基本执行节点的程序制定了计算和数据传输的操作。指令会依次被执行,第一条指令最先执行。当执行完程序中最后一条指令时,会自动回到第一条指令继续执行。基本执行节点支持这种循环,即执行的时候会自动循环。除了TessellatedIntelligenceSystem里所有节点普遍都有的数据传输的接口之外,基本执行节点还包含几个寄存器,他们在程序执行中可以被使用。基本执行节点本身没有额外的记忆体,如果需要额外的存储空间,这个节点就得和别的基本执行节点或者存储节点进行协调。所有的寄存器存储从-999到999(含)的整数值。寄存器的值的表现形式是编译器定义的,基本执行节点的编程并不需要考虑此内容。1-1.ACC类型:内部描述:ACC是一个基本执行节点的首要的存储寄存器。ACC用作内源或多条指令的目标操作数,包括算术和条件指令。1-2.BAK类型:内部(不可寻址)描述:BAK是ACC值的临时存储单元。只能通过SAV和SWP指令控制它,而且不能直接读写。1-3.NIL类型:内部(特殊)描述:读入NIL即读入0。写入NIL没有任何效果。NIL可以作为目标操作数,使得该指令只产生部分效果,结果会被抛弃。1-4.LEFT,RIGHT,UP,DOWN类型:接口描述:4个寄存器UP,DOWN,LEFT,和RIGHT分别对应于所有基本执行节点与相邻节点通信的4个接口【译者注:分别对应上、下、左、右】。在硬件方面,有些接口会与特定节点断开,这会永久阻碍读入或写出命令的执行。参看节点的接线图可以确定哪些接口可以使用。1-5.ANY类型:接口(伪接口)描述:当ANY作为一条指令的来源时,指令会读入第一个能够读取的接口的数值。当ANY作为一条指令的目标时,这条指令输出的结果会传递给第一个从本节点通过任何接口读入数据的节点。【译者注:经本人实验,从ANY读入时,如果同时有多个接口输入,优先级是:左右上下;向ANY输出时,如果同时有多个接口可以输出,优先级是上左右下】1-6.LAST类型:接口(伪接口)描述:LAST指最近用ANY伪接口读入或写出的接口。如若不然,它的效果和明确指定一个接口是相同的。在使用ANY伪接口成功读入或写出而使得LAST被确定之前,从LAST读入或向LAST写出的结果是实现定义的行为。使用LAST伪接口的样例代码请参考另外的文件TessellatedIntelligenceSystemBestPractices-PattemsofNodeCommunication。【译者注:这一块我也看不大懂。经本人实验,在使用ANY伪接口成功读入或写出而使得LAST被确定之后,LAST表现正常,反之则LAST表示0】2.指令集SRC和DST指令参数【译者注:SRC指source(来源),DST指destination(目标)】可以指定一个接口或内部寄存器。使用任何接口的时候,在连接该接口的对应节点完成读写通信之前,指令会停在这里。另外,SRC参数也可以是-999到999之间的字面值整数。【译者注:也就是说你可以在这里直接输入一个整数】BAK既不是SRC也不是DST。BAK的值只有通过特殊的指令SAV和SWP来访问。LABEL参数是任意的文本名称,用于在程序中标记跳跃的目标位置。2-1.注释句法:#注释文本描述:所有#和之后的文本会被程序忽略。2-2.Labels(标签)句法:LABEL:描述:标签用于确定跳跃指令的目标位置。当程序跳跃到该目标时,此标签后面的指令会接着执行。样例:LOOP:本标签独占一行。L:MOV8,ACC标签L和一条指令在同一行。2-3.NOP句法:NOP等效指令:ADDNIL描述:NOP是一条伪指令,对于节点内部的状态和通信接口都无任何影响。NOP会被程序自动替换为ADDNIL。2-4.MOV句法:MOVSRC,DST描述:读入SRC,将结果写入DST。【译者注:MOV指move(移动)】样例:MOV8,ACC将字面值8写入ACC。MOVLEFT,RIGHT从接口LEFT读入,写入RIGHT。MOVUP,NIL从接口UP读入,抛弃该结果。2-5.SWP句法:SWP描述:将ACC和BAK的值交换。【译者注:SWP指swap(交换)】2-6.SAV句法:SAV描述:将ACC的值写入BAK。【译者注:SAV指save(保存)】注:在两个注释符号(##)后面的文本会作为程序的标题,并且会显示在调试器上方便浏览程序。2-7.ADD句法:ADDSRC描述:将ACC的值加上SRC的值,结果存入ACC。样例:ADD16ACC的值加上字面值16。ADDLEFTACC的值加上从LEFT接口读入的值。2-8.SUB句法:SUBSRC描述:将ACC的值减去SRC的值,结果存入ACC。【译者注:SUB指subtract(减)】样例:SUB16ACC的值减去字面值16。SUBLEFTACC的值减去从LEFT接口读入的值。2-9.NEG句法:NEG描述:ACC的值取反。0保持不变。【译者注:NEG指negative(取负数)】2-10.JMP句法:JMPLABEL描述:执行无条件转移。跳到标签LABEL后的语句接着执行。【译者注:JMP指jump(跳跃)】2-11.JEZ句法:JEZLABEL描述:执行有条件转移。如果ACC的值是0,跳到标签LABEL后的语句接着执行。【译者注:JEZ指jumpequalzero(等于0就跳)】2-12.JNZ句法:JNZLABEL描述:执行有条件转移。如果ACC的值不是0,跳到标签LABEL后的语句接着执行。【译者注:JNZ指jumpnotzero(不是0就跳)】2-13.JGZ句法:JGZLABEL描述:执行有条件转移。如果ACC的值是正数(大于0),跳到标签LABEL后的语句接着执行。【译者注:JGZ指jumpgreaterthanzero(大于0就跳)】2-14.JLZ句法:JLZLABEL描述:执行有条件转移。如果ACC的值是负数(小于0),跳到标签LABEL后的语句接着执行。【译者注:JLZ指jumplessthanzero(小于0就跳)】2-15.JRO句法:JROSRC描述:执行无条件转移。跳到由该行往后数第SRC行接着执行。【译者注:JRO指jumprelativeoffset(跳到相关行)】样例:JRO0重复执行本行语句,效果是程序停止。JRO-1回到上一行执行。JR02向后隔一行执行。JROACC根据ACC的值跳转执行。3.范例程序下面的样例程序从LEFT接口读入一串数据,把每个数据翻倍并写入RIGHT接口。基本执行节点有自动循环功能,执行完最后一行指令会回到第一行继续执行。MOVLEFT,ACC从LEFT接口读入数据,保存在ACC寄存器ADDACC把ACC的值加上它自己的值保存到ACC,也就是翻倍数据MOVACC,RIGHT从ACC读出数据写入RIGHT接口下面的样例程序从UP接口读入一串数据,把正数值写入RIGHT接口,负数值写入LEFT接口。数值0被抛弃。START:MOVUP,ACC从UP接口读入数据,保存在ACC寄存器JGZPOSITIVE如果ACC的值大于0,跳到POSITIVEJLZNEGATIVE如果ACC的值小于0,跳到NEGATIVEJMPSTART该值既不大于0也不小于0,跳到STARTPOSITIVE:MOVACC,RIGHT从ACC读出数据写入RIGHT接口JMPSTART跳到STARTNEGATIVE:MOVACC,LEFT从ACC读出数据写入LEFT接口JMPSTART跳到START节点类型T30–堆栈存储节点———————————————————————————————————————1.结构堆栈存储节点允许对大量数据的读写操作,依据简单的基于堆栈的数据传输协议。(参看model-specific手册来了解对战存储节点在特定设备上的容量。)2.数据传输协议所有和堆栈存储节点的交互都要通过接口。向堆栈存储节点写入会把数据添加到堆栈的顶部。如果堆栈满了,写入操作会被暂停,直到有空间可用。从堆栈存储节点读出会把栈顶的数据移除,并返回改该数据。如果栈空了,读出操作会被暂停,直到有数据可用。堆栈存储节点通常连接到多个其他节点,即可以被连接着的节点使用。同时读出和写入堆栈存储节点会以不确定的顺序进行,不过每次独立的数据传输都会依据数据传输协议执行。若
本文标题:TIS-100参考手册
链接地址:https://www.777doc.com/doc-7255964 .html