CN1095114C - 算术机逻辑单元的运算方法以及算术和逻辑单元 - Google Patents
算术机逻辑单元的运算方法以及算术和逻辑单元 Download PDFInfo
- Publication number
- CN1095114C CN1095114C CN97129790A CN97129790A CN1095114C CN 1095114 C CN1095114 C CN 1095114C CN 97129790 A CN97129790 A CN 97129790A CN 97129790 A CN97129790 A CN 97129790A CN 1095114 C CN1095114 C CN 1095114C
- Authority
- CN
- China
- Prior art keywords
- code
- node
- output
- result
- logic
- 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.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/74—Selecting or encoding within a word the position of one or more bits having a specified value, e.g. most or least significant one or zero detection, priority encoders
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/02—Comparing digital values
- G06F7/026—Magnitude comparison, i.e. determining the relative order of operands based on their numerical value, e.g. window comparator
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
- G06F7/48—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
- G06F7/50—Adding; Subtracting
- G06F7/505—Adding; Subtracting in bit-parallel fashion, i.e. having a different digit-handling circuit for each denomination
- G06F7/506—Adding; Subtracting in bit-parallel fashion, i.e. having a different digit-handling circuit for each denomination with simultaneous carry generation for, or propagation over, two or more stages
- G06F7/508—Adding; Subtracting in bit-parallel fashion, i.e. having a different digit-handling circuit for each denomination with simultaneous carry generation for, or propagation over, two or more stages using carry look-ahead circuits
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
- G06F7/48—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
- G06F7/544—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices for evaluating functions by calculation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2207/00—Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F2207/506—Indexing scheme relating to groups G06F7/506 - G06F7/508
- G06F2207/5063—2-input gates, i.e. only using 2-input logical gates, e.g. binary carry look-ahead, e.g. Kogge-Stone or Ladner-Fischer adder
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Analysis (AREA)
- Pure & Applied Mathematics (AREA)
- Computational Mathematics (AREA)
- Mathematical Optimization (AREA)
- Computing Systems (AREA)
- Software Systems (AREA)
- Executing Machine-Instructions (AREA)
- Advance Control (AREA)
- Complex Calculations (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Apparatus For Radiation Diagnosis (AREA)
- Devices For Executing Special Programs (AREA)
Abstract
算术和逻辑单元的操作方法,和引入了将具有次序相关的判定的串行结构转换为可并行处理的不定代码二进制树从而简化其结构并能进行高速操作处理的技术和概念的算术和逻辑单元。具有次序相关的判定的串行结构被转换为使用不具有例如叶的相关输入/输出的判定节点和例如除该叶之外的节点的较高优先权级确定节点的二进制树结构,由不具有相关输入/输出的判定节点所置换的具有相关输入/输出的判定节点提供有内涵判定节点和不定代码产生节点。
Description
发明领域
本发明涉及能够执行并行处理的算术和逻辑单元的运算方法。用于存贮作为一个计算机程序的这种方法的存贮介质和算术和逻辑单元,特别涉及引入将包括就其本身而言不能被并行处理并具有顺序依赖性的一系列判决的问题转换成能够被并行处理的不定码二进制树以便简化电路结构和提高运算处理速度的方法和概念的算术和逻辑单元的运算方法、存贮介质和算术和逻辑单元。
另外,本发明涉及用于处理诸如比较、加法、减法运算和用于获得任意R进制数或二进制数的差的绝对值的运算的算术和逻辑单元的运算方法,用于存贮作为计算机程序的该方法的存贮介质以及算术和逻辑单元,特别涉及引入将包括就其本身而言不能被并行处理并具有顺序依赖性的一系列判决的问题转换成能够被并行处理的不定码二进制树以便简化电路结构和提高运算处理速度的方法和概念的算术和逻辑单元的运算方法、存贮介质和算术和逻辑单元。
背景技术
在本说明的前一半中,将描述将包括就其本身而言不能被并行处理并具有顺序依赖性的一系列判决的问题转换成能够被并行处理的不定码二进制树的方法和概念。作为应用了上述方法和概念的算术和逻辑单元,这里描述了一种优先编码器。作为传统的优先编码器的一个例子,在图5中示出了一个优先编码器(第一现有技术)的真值表,其中,输入包括从位0至位7的8位输入,输出包括一位有效性输出和3位数字输出的4位输出。
这里,“优选编码器”是一种具有当从MSB(左端)到LSB(右端)逐位看输入数据时能够返回第一个变成二进制数“1”的位的位置(数位)的功能的电路。在8位输入的情况下,被返回的数是从“7”到“0”。作为输出,三位已能令人满意。但是,为了区分所有输入位都是“0”的情况和在所述输入位中只包含一个“1”(有效情况)的情况,必须加一个有效性位,这样得到总数4位的输出。
例如,当输入是“00110101”、“00111111”和“00100000”时,由于在所有情况下第五位都是第一个“1”,所以输出变成“1101”(“有效”,和然后“5”)。注意,这里假设越靠近MSB(左端)的位置,优先级越高。此外,在相反情况下基本上也没有差别。为简化该讨论,在本说明书中,假设位置靠MSB越近,优先级越高。
当在多个方案中选择一个方案,即学执行所谓的判优时需要这种优先编码器的功能。例如,当多个总线连接的功能单元试图同时向该总线输出时,优先编码器执行判优。
图66示出了用于解释利用优先编码器MPE判优单总线SB的一个数字装置的结构。在该图所示的数字装置中,通过转换装置SW0到SW7将8个功能单元MU0-MU7连接到单总线SB上。在优先编码器MPE输出的基础上执行转换装置SW0-SW7的操作控制以控制8个功能单元MU0-MU7的连接。优先编码器MPE接收功能单元的总线使用技术RQ0-RQ7作为它的输入并输出允许使用总线的一定数量功能单元。由优先编码的MPE输出的功能单元的数量由译码器MDC给出并变成用于控制转换装置SW0-SW7的总线连接控制信号CBC0-CBC7。
另外,图67示出了作为日本未审查专利申请公开(kokai)No.8-147142中披露的发现名称为“优先数检测用计算装置”的部份电路的8位输入优先编码器的结构。注意,在上述公开的现有技术中,披露了一种用于高速计数从输入位串的头开始安置的“0”的数量的编码器。当优先编码器和这里所讨论的功能不能精确等效时,如果数字输出可以被反向,则它们是相等的。
该现有技术的8位优先编码器是通过利用具有高度m为3的二进制树建立一个模型而构成的,在该二进制树的深度3处的节点ND01、ND23、ND45和ND67分别接收作为它们输入的输入数据的2位输出并检测所述位串在什么时候变成“01”和“00”。它们中的每一个都被装备有与逻辑门电路和或逻辑门电路。另外,在该二进制树的深度2处的节点ND03和ND47被分别提供有一个选择器、一个与逻辑门电路和一个或逻辑门电路。选择器根据与逻辑门电路的输出选择性地识别所述串的“00”和“01”,与逻辑输门电路检测什么时候多个输入中的一个输入的的有位是“0”以及所述多个输入中的其它输入的所有位不是“0”,或逻辑门电路检测在什么时候所有位都分别变成“0”。另外,所述二进制树深度1处的节点ND07被提供有两个选择器、一个与逻辑门电路、一个或逻辑门电路,其功能与深度2处的节点相同。
下面解释将要使用的术语。在本说明的后半部分中,披露了用于将包括就其本身而言不能被并行处理并且有顺序依赖性的一系列判决的问题转换成能够被并行处理的二进制树的方法和概念。作为应用了上述方法和概念的算术和逻辑单元,描述了一种通过以二进制树形式形成逻辑电路所利用的比较器、加法器、减法器以及用于获得差绝对值的运算单元等。因此,首先将精确确定在本说明书中频繁使用的诸如“二进制树”等术语。
根据“Iwanami Joho Kagakn Jiten(Iwanami信息科学字典),具有在每个节点处不多于两个分支的顺序树被称之为“二进制树”(“Iwanami Joho KagaknJiten”Iwanami Shoten,1990,P.550)。特别是,具有树高度基本等于节点数N的对数(log2N)的较小偏移的二进制树被称之为“平衡二进制树”(同一参考文件第683页)。另外,作为平衡二进制树的一个特殊情况,具有深度为n并在深度i(0≥i<n)处具有Zi个节点和在深度n处的节点被安置得从左侧装填的二进制树称之为“完全二进制树”(同一参考文件第550页)。
平衡二进制树具有下述特性,即:树的高度基本上等于叶数的对数并且所有的叶基本上处于同一深度。另外,在完整二进制树中,任一两个叶之间的差是1或更少。这个特性对于实现高速算术和逻辑单元是非常重要的。在一个逻辑电路被形成为二进制树的算术和逻辑单元中,树叶被规定为输入,树根被规定为输出,树高表示关键路径的步数。
在完整形式二进制树的逻辑电路中,从所有输入(树叶)通过基本相同数量的步到达输出(树根)。因此,与其它从输入到输出的路径步数比较没有明显较长的关键路径。使用这种特性构成完整二进制树形式的逻辑电路以实现高速算术和逻辑单元的方法是已知的。
注意,在本说明书中频繁使用的术语“二进制树”在没有相反的特殊说明之前意味着“完整二进制树”。不是平衡二进制树且叶高彼此不同的二进制树将被称之为“具有偏置的二进制树”。
下面解释相关技术二进制树形式的逻辑电路。
首先,作为使用二进制树形式的传统逻辑电路的算术和逻辑单元的第二现有技术,在日本未审查专利公开(kokai)No.6-28158中指述了一种“二进制先行进位方法及其装置”。在这个公开中,披露了一种使用经过改进BLC系统的一般二进制先行进位(BLC)加法器和一种使用经过改进的BCLA系统的二进制先行进位(BCLA)加法器。
图68示出了根据在日本未审查专利公开(kokai)No.6-28158中披露的经过改进的BLC加法系统的8位BLC加法器中单个位的进位产生部份(BLC阵列)的结构。
这里,将被输入给8位加法器的加数X和另一个加数Y被规定为:
X=X7、X6……X1、X0,和Y=Y7、Y6……Y1、Y0,和X7和Y7被规定为代码。另外,Ci-1(i=0到7)被规定为输入到位i的进位,输入给最低有效位(位07的进位被规定为C-1,输出到8位BLC加法器的进位被规定为C7。另外,指出在i数位处产生进位操作的进位产生函数被规定为Gi,指出来自其中i数位处于较低有效位处的一个数位的进位Ci-1传播的进位传播函数被规定为Pi。
在图68所示的8位BLC加法器中,加数X和另一个加数Y被输入给进位产生和传播函数产生单元502,产生8对进位产生函数Gi和进位传播函数Pi。另外,加上考虑到-1位进位产生函数的进位输入Cin,总数9对的进位产生函数和进位传播函数G0,P0到G7,P7和Cin被输入给进位产生单元501。注意,此时的-1位的进位传播函数为“0”。从进位产生单元502输出的进位C1-C7与所述位的进位传播函数P0-P7一起被输入给和产生单元500并产生和S0-S7。
进位产生和传播函数产生单元502被提供有用于作为其输入接收加数Xi和另一个加数Yi并产生进位产生函数Gi和进位传播函数Pi的8个输入单元IC0-IC7和与之并连的一个空单元ICD。图69A的电路图示出了该现有技术的一个输入单元。在该图中,所构成的输入单元IC被提供有用于取加数Xi和另一个加数Yi与逻辑并输出进位产生函数Gi的与门电路GA51和用于取加数Xi和另一个加数Yi或逻辑并输出进位传播函数Pi的或门电路G051。注意,空单元ICD是一个具有改进驱动能力的缓冲单元。
另外,进位产生单元501被构成为一个9×4单元矩阵。由第-1位构成的第一列被规定为空单元CCD1-1,第0位到第7位被规定为进位产生单元CC10-CC17;由第-1位和第0位构成的第二到被规定为空单元CCD2-1和CCD20,第一位到第7位被规定为进位产生单元CC21-CC27;由第-1位到第2位构成的第3列被规定为空单元CCD3-1到CCD32,第3位到第7位被规定为进位产生单元CC33到CC37;和另外,由第-1位到第6位构成的第4到被规定为空单元CCD4-1到CCD46,第7位被规定为进位产生单元CC47。图69B示出了该现有技术进位产生单元的电路。在该图中,所构成的进位产生单元CC被提供有一个用于进一步取在通过取进位传播函数Pi和进位产生函数Gj与逻辑所获得的值和进位产生函数Gi的或逻辑的复合逻辑门电路GC51和用于取进位使传播函数Pi和Pj与逻辑的与门电路GA52。
另外,和产生单元500被提供有一个用于取从进位产生单元501输出的进位Ci-1和进位传播函数Pi异或逻辑并并联输出和Si的8个异或门电路Gx51,为图69C所示。
该现有技术的8位BLC加法器还被试图通过在这种方式下将进位输入Cin考虑作低于最低有效位一位的进位产生函数进一步简化进位产生单元501的结构并减少时延和功耗。
下面解释作为使用传统二进制树逻辑电路的算术和逻辑单元第三现有技术的N位代码—方位二进制比较器。图70示出了用于作为其输入接收代码方位二进制数X和Y和最终输出结果(大于,少于,等于)的N位代码—方位二进制比较器,其中:
X=Xn,Xn-1,……X1,X0,Y=Yn,Yn-1,……Y1,Y0。
N位代码—方位二进制译码器的结构主要被提供有如图所示的两个构成元件,其中一个是(N-1)位无代码二进制比较器600,用于接收作为其输入的无代码二进制数X’和Y’,其中,
X=Xn-1,…X1,X0,Y’=Yn-1,…Y1,Y0和输出工作结果(大于,小于,等于),另一个是代码判断电路601,用于根据(N-1)位无代码二进制比较器的工作结果和代码—方位二进制数X和Y输出最后结果。注意,在代码—方位二进制数X和Y中,它的MSB(最高有效位)Xn和Yn指出所述代码。当MSB=0时,意味着是个正数,而当MSB=1时,意味一个负数。
在这种方式中,在该现有技术的代码—方位二进制比较器中,除MSB以外的输入位被输入给(N-1)位无代码二进制编码器600,在这里首先获得一个工作比较结果。该工作比较结果和代码—方位二进制数X和Y被输入给代码判断电路601,并在这里获得最终的比较结果。
另外,在代码判断电路601中执行判断的内容如下:
(a),代码—方位二进制数X和Y的MSB不相同的情况:
代码—方位二进制数X和Y中的一个是正而另一个为负。
因此,电路输出的幅值结果不考虑工作比较结果。
(b),代码—方位二进制数X和Y的MSB相同的情况:
代码—方位二进制数X和Y都是正或负。
所述结果取决于由从第(N-1)位到第0位输入获得的工作比较结果。
因此,电路输出作为最终结果的工作比较结果。
下面解释根据使用传统二进制树形式逻辑电路第四现有技术的一个减法器。在这个传统减法器中使用的方法通过基本逻辑等式被分成两种。第一种方法以一位二进制数的减法定义为基础。第二种方法在X-Y的减法中将Y的2的补码加到X上。
首先,在减法器的第一种方法中,减去两个一位二进制数X和Y的减法和外部借位输入Bin规定如下:注意,在本说明书中,或逻辑以“+”运算符表示,与逻辑以“·”运算符表示,负逻辑以“^”运算符表示,异或逻辑以“(+)”运算符表示:
差D=X-Y-Bin=X(+)Y(+)Bin(模2)
外部借位输出Bout=^X·Y+Y·Bin+Bin·^X (1)
另外,等式(1)的真值表如图71A所示。
另一方面,所述减法器的第二种方法注意到下述一个事实,即“X-Y”的运算与诸如“X+(Y的2的外码)”的运算等效并使用一个加法器获得减数。Y的2的补码是通过将“1”加到被反相Y的所有位上获得的。为了加“1”,一个加数“1”的外部借位输入Cin就足够了。即:^Cin=Bin。因此,在一位二进制数的情况下,利用逻辑等式的减法定义如下:
差D=X(+)^Y(+)^Cin==X(+)Y(+)Cin
外部借位输出^Bout=X·^Y+^Y·^Cin+^Cin·X (2)图71B示出了等式(2)的真值表。另外,由加法器500实现结构的例了如图72所示。
比较等式(1)和(2),差D的逻辑等式极为相同,而外部借位输出Bont是通过分别由等式(1)中的正逻辑输入和等式(2)中的负逻辑输出表示的相同逻辑函数获得的。因此,在正在通过一个逻辑电路加以实现的场合,就门的数量和延迟而言,在等式(1)和等式(2)之间没有差别。由于这个原因,在传统减法器中,使用其中未发现特殊优点的等式(1)定义的减法器被使用的不多。使用一个加法器实现诸如具有等式(2)定义的减法器的已知方法很容易并已得到广泛应用。
下面解释根据使用传统二进制树形式逻辑电路的算术和逻辑单元第五现有技术用于执行为获得一个差的绝对值所以执行运算的算术和逻辑单元。作为获得未限制仅为二进制数的N元非负数X和Y的差(X-Y)的绝对值|X-Y|的方法,下述方法是已知的:
为获得差绝对值的第一种运算方法是比较X和Y并从较大的一个中减去较小的。另外,第二种方法是同时执行(X-Y)和(Y-X)的减法并将给出正结果的一个规定为绝对值。另外,第三种方法是执行减法(X-Y)并规定当这个减法结果为正时作为绝对值,而当减法结果为负时将其代码反相并将其规定为绝对值。
通常为获得二进制数差的绝对值所采用的运算方法是第二和第三种方法。图73示出了用于根据第二种执行获得差绝对值运算的一个单元的结构。利用两个减法器511和512同时执行减法(X-Y)和(Y-X),并利用选择器513在减法(X-Y)结果代码的基础上选择正结果。
图74示出了根据第三种方法用于执行获得差绝对值运算的一个单元的结构。该单元由补码器522和具有所需位宽的选择器523构成,补码器522包括减法器521和增量器(+1运算单元),减法器521执行减法(X-Y),利用2-补码器522产生减法结果的2的外码。当减法结果为正时,在减法器521运算结果代码的基础上选择器523将减法器521的差值输出规定为绝对值,而当减法结果为负时,选择器523将2-补码器522的2的外码输出规定为所述绝对值。注意,当减法结果为负时产生减法结果的2的补码以便反相所述代码。在将数据所有位反相之后利用增量器加1获得2的补码。
为了克服上述缺点,首先考虑所述第一现有技术(优先编码器)。半导体集成电路的集成密度在近年改善。结果变得可以包括非常多的功能单元。为了在特性方面能够实现高级并行处理,伴随集成密度的改善,功能单元的数量当然也将增加。从这种背景出发,可以说具有判优功能的优先编码器是关键装置。在实现它的过程中,存在着高速度是特别重要的问题。
下面考虑第二现有技术(8位BLC加法器)。在使用诸如BLC加法器的二进制树型式逻辑电路的算术和逻辑单元中,规定运算符“@”具有与下述类似的意思:
(Gi.Pi)@(Gj.Pj)=(Gi+(Pj*Gj),Pi*Pj)即:在第二现有技术的8位BLC加法器中,利用一个逻辑电路实现运算符@。使用这个作为一个元素的二进制树被使用。实现@的具体逻辑电路示于图69B。
但是,从图69B很明显看出,这个运算符@包括逻辑函数(Gi+(Pj*Gj)),即复合逻辑门电路GA51(与-或门电路)的逻辑功能。最近,作为增加算术和逻辑单元速度的一种方法,利用一个传输门构成一个逻辑的方法引起人们的注意。例如,在一个基准(日本学会、信息与通信技术研究报告ICD95-146,13-20页,1995,Makino,Suzuki,Moyinaka:“具有适于CG功能的286MHZ和64位浮点十进制多路乘法器”7中,它叙述了由传输门构成的逻辑装置的速度高于复合逻辑门电路的速度。另外,复合逻辑门电路具有很小的负载驱动能力机很弱的抗布线电容增加的能力。因此,存在有一个问题,即使用传统二进制树形式逻辑电路的算术和逻辑单元不适用于由标准单元等构成的算术和逻辑单元。
再有,特别是第二现有技术的8位BLC加法器是所谓的BLC阵列,它以阵列形式布置运算符@的逻辑电路并产生进位信号给相应位。它将外部进位输入Cin考虑为a-1位的输入并以BLC阵列形式提供第-1行,因此就存在一个问题,即:门的数量变得很大且表面区域变得很大。
再有,在上述第三现有技术(N位代码—方位二进制比较器)使用二进制树形式逻辑电路的算术和逻辑单元中,是将MSB以外的输入位输入给(N-1)位无代码二进制比较器600,并在这获得工作比较结果,然后该工作比较结果和代码—方位二进制树X和Y被输入给代码判断电路601,并在这里获得最终比较结果,但是,在(N-1)位无代码二进制比较器600中输入级的逻辑电路具有大量的门,因为非常复杂,并且需要代码判断电路和后级无代码二进制比较器级连才能实现,因此,就存在一个问题,即:时延随着代码判断电路601的数量增加而增加。
下面考虑第四现有技术与(减法器),在讨论使用2的补码的传统减法器的问题时,讨论点可以分为两部份;一部份是涉及形成减法器核心的加法器,另一部份涉及将该加法器转换成减法器时所发生的事情。前者涉及加法器本身,在这里予以省略描述。只考虑后者,即将加法器转换成减法器时所发生的事情。
构成诸如CLA、BCLA、CSeleetAdder、SCKipAdder等加法器的方法有多种。但是给出2的补码的方法不取决于这种方法构成。当把一个加法器转换成一个减法器时,如图72所示,只要分别将Y的所有位反相加到加法器500的Y输入端和将借位输入Bin反相加到加法器500的进位输入端Cin就可以了。即:加法器和减法器之间的区别仅在于是否将一个反相器(负逻辑门电路)加到输入端Y和输入端Cin。因此,在传统的减法器中存在一个问题,即:由于要把一个反相器附加到加法器上,所以门的数量和信号传播延时都增加了。
下面考虑第五现有技术(算术和逻辑单元为获得差绝对值所执行的运算)。在上述三种方法中,首先,用于使用第二种方法获得绝对值的运算单元是由两个减法器511和512以及一个具有所需位宽(图73)的选择器构成的。用于根据该第二种方法获得绝对值的运算单元的优点在于它的运算速度很高。由于并行执行减法,所以当使用CLA和BCLA减法器时,运算时间与数据位宽N的对数(log2N)成正比。但是,存在一个缺点,即:需要两个减法器,因此门的数量很大。
另外,用于根据第三种方法获得绝对值的算术单元是由一个减法器521、一个2的补码器522和一个具有所需位宽的选择器523构成(图74)。根据第三种方法获得差绝对值的运算单元的优点在于硬件数量很少。与CLA和BCLA减法器相比较,利用少于晶体管数量的一半即可实现增量器。与需要2个减法器的第二种方法比较硬件数量显著减少。但是存在一个缺点,即:用于根据第三种方法获得差绝对值的运算单元具有很大的运算时延,因此很慢。即,CLA和BCLA型减法器的时延与数据位宽N的对数(log2N)成正比,和高速CLA和BCLA型增量器的时延与数据位宽N的对数log2N成正比。因此,当考虑到减法结果被输入给增量器时,总的时延变成正比于(2×log2N)。因此,很明显,用于使用第三种方法获得差绝对值的运算单元的信号传播时延要大于用于使用第二种方法获得差绝对值的运算单元。
发明技术方案
本发明的一个目的是要提供一种算术和逻辑单元的运算方法、一种存贮介质以及一种诸如引入将包括具有不能并行处理的顺序依赖性的一系列判决的问题转换成能够并行处理的二进制树以便简化电路结构和实现高速处理的方法和概念的优先编码器的算术和逻辑单元。
本发明的另一个目的是提供一种算术和逻辑单元的运算方法,一种存贮介质以及引入将包括具有不能并行处理的顺序依赖性的一系列判决的问题转换成能够并行处理的二进制树以便简化电路结构实现诸如比较、加法、减法和差绝对值的高速处理运算的方法和概念的算术和逻辑单元。
本发明算术和逻辑单元的运算方法提供一种算术和逻辑单元运算方法,用于通过使用二进制树并使用用于不具有作为树叶的相关输入/输出判决的处理和使用用于确定作为除所述树叶以外节点的较高优先级的处理建立一个模型以解决包括具有顺序依赖性的一系列判决的问题。其中,用于不具有相关输入/输出的处理对应于所述判决,其中的每一个处理包括根据在所述输入数据变为有效或输出组合成一个意思为”不能被确定”的由不确定码“Q”和所述数量组成的格式码的工作结论时的一个点处的R一进制数或一定数量逻辑值信息的一个或多个数据输入的基础上执行一个予定判决;用于确定较高优先级的处理对应于一系列判决,其中的每个处理接收作为其输入的用于不具有相关输入/输出的判决的两个处理的工作结论或用于确定上述之前较高优先级的两个处理的工作结论,并当用于不具有较高有效位的相关输入/输出的处理的工作结论或用于确定较高有效位的较高优先级的处理的工作结论不是中间“Q”时,输出用于不具有相关输入/输出的较高有效位判决的处理工作结论或用于将较高有效位的较高优先级确定为工作结论的处理的工作结论,和当用于不具有较高有效位相关输入/输出的判决的处理结论或用于确定较高有效位的较高优先级的处理的工作结论是中间值“Q”时,输出用于不具有较低有效位相关输入/输出的判决的处理工作结论或用于将较低有效位的较高优先级确定为工作结论的处理的工作结论;所有用于用作二进制树叶的判决的处理和所有用于确定置于二进制树中相同深度处较高优先级的处理被分别进行并行处理,用于确定作为二进制树树根的较高优先级的处理工作结论被规定为问题的结论。
另外,本发明算术和逻辑单元的操作方法是一种用于变换所有问题的算术和逻辑单元的操作方法,对于这些问题能够通过一系列具有数量为N(N为正整数)个的具有相关输入/输出的判决节点构成的顺序依赖性的判决结构建立模型。其中的每个节点根据包括R一进制数或一定数量逻辑值信息的一个或多个数据输入和包括指出“有效”或“无效”的二进制信息的相关输入在相关输入变成“有效”的时间点处执行予定判决,且其中的每个节点输出包括R一进制数或一定数量逻辑值信息的结论输出和包括指出“有效”或“无效”和具有在具有相关输入/输出判决节点之间相对顺序关系,具有具有总是处于“有效”的最高有效位的相关输入/输出的判决节点的相关输入和具有具有被置于效高有效位处相关输入/输出的判决节点的相关输出的相关输出,所述较高有效位被作为具有被置于从具有相关输入/输出的判决节点到具有不具有相关输入/输出的数量为N的判决节点的二进制树结构的一个较低有效位处的相关输入/输出的判决节点的相关输入而连接,用于使每个节点根据在数据输入变成有效的时间点处包括R一进制数或一定数量逻辑值信息的一个或多个数据输入执行予定判决,并输出组合成一个意思为”不能被确定”的由不确定码“Q”和所述的的数量组合而成的格式码规定不具有作为树叶的相关输入/输出的判决节点的数量N,利用不具有具有内涵判决节点的相关输入/输出的判决节点替换具有相关输入/输出的判决节点,以在包括R一进制烽或一定数量逻辑值信息的一个或多个数据和总是包括在数据输入变成有效的时间点处“有效”的相基础上执行予定判决和输出包括R一进制数或一定数量逻辑值信息和包括“有效”或“无效”的二进制信息的相关输出以及用于当内涵判决节点的相关输出变成“有效”时输出不确定码“Q”和输出用于将不确定码“Q”和所述数量中组合成不具有相关输入/输出的判决节点工作结论的不确定码产生节点的结论输出。
另外,本发明的算术和逻辑单元的操作方法是一种变换所有问题的算术和逻辑单元的操作方法,对于所有问题都能够通过一系列由具有N个(N为任意正整数)具有相关输入/输出的判决节点构成的顺序依赖性的判决结构建立一个模型,每个节点用于根据包括R一进制数或一定数量逻辑值信息的一个或多个数据输入和包括表示“有效”或“无效”的二进制信息的相关输入在所述数据输入和相关输入变成有效的时间点处执行一个予定判决,且每个节点输出包括R一进制数或一定数量逻辑值信息的结论输出和包括指出“有效”或“无效”并具有具有相关输入/输出判决节点之间相对顺序关系、具有具有总是“有效”的最高有效位相关输入/输出的判决节点的相关输入和具有具有置于作为置于从具有相关输入/输出的判决节点到N个不具有相关输入/输出判决节点的二进制树结构中最低有效位处相关输入/输出的判决节点连接的较高有效位处相关输入。输出判决节点的相关输出的相关输出,且其中的每个节点根据包括R一进制数或一定数量逻辑值信息的一个或多个数据输入在所述数据输入变成有效的时间点执行一个予定判决,并对应一系列判决输出组后成意思为”不能被确定”的由不确定码“Q”和所述数量组成的一个格式码作为工作结论和较高优先权确定节点,其中每个节点接收作为其输入的两个不具有相关输入/输出的判决节点的工作结论或在这个较高优先确定节点之前的两个较高优先权节点的工作结论并当不具有较高有效位相关输入/输出的判决的工作结论或较高有效位优先权确定节点的工作结论不是不确定码“Q”时输出不具有较高有效位相关输入/输出的判决的工作结论或较高有效位较高优先权确定节点的工作结论作为较高优先权确定节点,同时输出不具有较低有效位的相关输入/输出的判决节点的工作结论或较低有效位较高优先权确定节点的工作结论作为那个较高优先权确定节点的工作结论,当不具有较高有效位相关输入/输出的判决节点的工作结论或较高有效位的较高优先权确定节点的工作结论或较高有效位的较高优先权确定节点的工作结论是不确定码“Q”和将不具有相关输入/输出的判决节点规定为树叶,并将较高优先权确定节点规定为除树叶以外的其它节点时,所述算术和逻辑单元的操作方法使用不具有内涵判决节点的相关输入/输出的判决节点替换具有相关输入/输出的判决节点,以根据包括R一进制数的一个或多个数据输入或一定数量逻辑值信息和总是包含“有效”的相关输入在数据输入变成有效的时间点处执行一个予定判决处理,并输出包括R一进制数或一定数量逻辑值信息的结论输出和包括指出“有效”或“无效”的二进制信息的相关输出以及用于当内涵判决节点的相关输出变成“有效”时输出不确定码“Q”和将不确定码“Q”和所述数量组合成的一个格式码作为不具有相关输入/输出的判决节点的工作结论加以输出的不确定码产生节点。
还提供了一种算术和逻辑单元操作方法,用于实现一个优先权编码功能,该功能通过将用于不具有相关输入/输出判决的处理规定为树叶和将用于确定较高优先权的处理规定为除树叶以外其它节点的二进制树建立一个模型,以在n位二进制数数据输入的基础上输出作为二进制数的位位置,该位位置在从最高有效位到最低有有位的方向上首先是“1”或“0”或在从最高有效位到最低有效位的方向上持续为多个“1”或“0”的数,在所述算术和逻辑单元的操作方法中,用于不具有相关输入/输出判决的处理对应于数据输入的每一位,其中的每一个处理根据在数据输入变成有效的时间点处的一个位执行一个予定判决并输出组合成表示”不能被确定”的由不确定码“Q”和所述数量组成的一个格式码作为工作结论:用于确定较高优先权的处理对应于数据输入的每一位,其中的每一个处理接收作为其输入的两个用于不具有相关输入/输出的判决的处理的工作结论或两个用于在此之前确定较高优先权的处理的工作结论,当不具有有效较高有效位相关输入/输出的处理的工作结论或用于确定较高有效位较高优先权的处理的工作结论不是不确定码“Q”时,输出用于不具有相关输入/输出判决的处理的工作结论或用于确定较高有效位较高优先权的处理的工作结论作为工作结论,当用于不具有较高有效位相关输入/输出的判决的处理的工作结论或用于确定较高有效位较高优先梳的处理的工作结论是不确定码“Q”时,输出用于不具有较低有效位相关输入/输出的判决的处理的工作结论或用于确定较低有效位较高优先权的处理的工作结论作为工作结论;所有用于用作二进制树树叶的判决的处理和所有用于确定二进制树相同深度处较高优先权且并行处理的处理以及用作二进制树树根的较高优先权确定节点的工作结论被规定为优先权编码的结论。
另外,本发明提供了一种算术和逻辑单元操作方法,用于通过利用用于与所述判决对应并用作树叶的判决的二进树规定处理和利用用于将较高优先权确定给除所述树叶以外其它节点的规定处理建立一个模型解释包括一系列具有顺序依赖性的判决的问题,其中,用于所述判决的处理在一个或多个输入信息的基础上输出作为判决结果的“真”、“伪”和“不真不伪或不知道”中的任何一个;用于确定较高优先梳的处理对应于所述的一系列判决,其中的每一个作为输入接收两个用于判决处理的判决结果或在此之前两个用于确定较高优先权的处理的判决结果,当用于较高有效位判决的处理的判决结果或用于确定较高有效位较高优先权的处理的判决结果是“真”或“伪”时,输出用于较高有效位判决的处理的判决结果或用于较高有效位较高优先权的处理的判决结果;当用于较高有效位判决的处理或用于确定较高有效位较高优先梳的处理的判决“不真不伪或不知道”时,输出用于较低有效位判决的处理或用于确定较低有效位优先权的处理的判决结果;所有用于判决的处理用作二进制树的树叶的所有用于确定位于二进制树同一深度处较高优先权的处理被分别并行处理。
另外,本发明还提供了一种算术和逻辑单元的操作方法,其中,当判决“真”的结果被规定为值代码“Y”、“伪”被规定为值代码“N”、“不真不伪或不知道”被规定为值代码“Q”时,用于确定较高优先权的处理被提供有一个K运算符,用两个代码,即从用于较高有效位判决的处理的判决结果获得的代码Ti∈{Y、N、Q}和从用于较低有效位的判决的处理判决结果获得的代码Tij∈{Y、N、Q}中获得一个代码Ti∈{Y、N、Q},在代码Ti优于代码Tj的情况下,当代码Ti是值代码“Y”或值代码“N”时,K运算符将值代码“Y”或值代码“N”规定为代码Tij取用的值代码,向当代码Ti是值代码“Q”时,K运算符由代码Tj的所取的值代码规定为由代码Tij所取的值代码。
另外,本发明还提供了一种算术和逻辑单元的操作方法,其中,当判决“真”的结果被规定为值代码“Y”、“伪”被规定为“N”和“不真不伪或不知道”被规定为“Q”时,用于确定较高优先权的处理被提供一个K运算符,用于从两个代码,即:从用于较高有效位判决处理的判决结果获得的代码Ti∈{Y、N、Q}和从用于较低有效位判决的处理的判决结果获得的代码Tji∈{Y、N、Q}中获得一个代码Tij∈{Y、N、Q};在代码Ti优于代码Tj的情况下,当任一代码X由用于将值代码“Y”规定为{11}、将值代码“N”规定为{10}和将值代码“Q”规定为{0*}(其中“*”表示“不必理采”)的二位二进制数(X,1,X,0)给出时,由“+”运算符表示一个或逻辑,由“·”运算符表示一个与逻辑,由“^”运算符表示一个负逻辑,K运算符表示为下:
TiKTj=Tij
(Ti,1,Ti,0)K(Tj,1,Tj,0)=(Tij,Tij,0)=(Ti,1+Tj,1,Ti,1·Ti,0+^Ti,1·Tj,0)。
另外,本发明还提供了一种算术和逻辑单元的操作方法,用于通过利用n个用于判决的一列处理建立一个模型获得任意R进制数中n个数字的两个数(X,Y)之间的差的绝对值,所有被n个二进制树填满的列将用于从第一个数字到第g个数字(g=1到n)的判决的处理规定为树叶,并将除所述树叶以外的其它节点规定为用于确定较高优先权的处理,和一个矩阵包括用于确定较高优先权的处理,和一个矩阵包括用于确定较高优先权的处理的n个行和m个列(m是超过log2n的最小整数),其中,当相同数位的两个数的差值(X-Y)变成负值时,每一个用于判决的处理输出表示“真”的值代码“Y”作为判决结果,当所述差值为正时,输出表示“伪”的值代码“N”,而当所述差值为零时,输出表示“不真不伪或不知道”的值代码“Q”;用于确定较高优先权的处理对应于一系列处理,其中的每一个作为它的输入接收两个用于判决的处理判决结果或在此之前两个用于确定较高优先权的处理的判决结果,当用于较高有效位判决的处理或用于确定较高有效位较高优先权的处理的判决结果是“真”或“伪”时,输出用于较高有效位的判决的处理判决结果或用于确定较高有位较高优先权的处理的判决结果,和当用于较高有效位判决的处理判决结果或用于确定较高有效位较高优先权的处理的判决结果是“不真不伪或不知道”时,较出用于较低有效位判决的处理判决结论或用于确定较低有效交高优先权的处理判决结论;和用于判决的n个处理的一列和该列的构成元件包括一个矩阵,该矩阵由n行m列一直被分别同时处理且每个数字的借位操作由用于确定第m列较高优先权的每个处理产生的用于确定较高优先权的处理组成。
另外,本发明还提供了一种算术和逻辑单元操作方法,包括:代码判断步骤,用于在由用于确定第n行第m列优先权处理产生的最多有效数字借位操作所产生结果的基础上判断与两个数之差(Xa-Xb)相关的代码;代码替换步骤,用于以值代码“Q”替换值代码“Q”、以值代码“N”替换值代码“Y”和以值代码“Y”替换值代码“N”,用于当代码判断步骤的代码判断结果为负或当它是负或零和在所述结果是正或零情况下没有执行替换而保留它们时或当它们是正是,输出用于确定不包括用于确定第m列较高优先权的一组处理中第n行较高优先权处理的较高优先权处理的代码;和第二代码替换步骤,用于以值代码“N”替换值代码“Q”,以获得与替换结果相关的每个数字的借位操作或用于在代码替换步骤之后确定较高优先权的处理的输出码。
另外,本发明的算术和逻辑单元被用于解决包括一系列判决的问题,所述一系列判决具有顺序依赖性,具有不具有相关输入/输出的判决节点,与所述判决相对应在,其中的每一个在数据输入变得有效时在包括R进制数或一定数量逻辑值信息的一个或多个数据输入的基础上执行予定判决并输出被组合一个表示”不能被确定”的由不确定码“Q”和所述数量组成的格式码作为工作结论和较高优先权确定节点,与一系列判决相对应,其中的每一个作为输入接收两个不具有相关输入/输出判决节点的工作结论或在此之前的两个较高优先权确定节点的工作结论,当不具有较高有效位相关输入/输出的判决工作结论或较高有效位的较高优先权确定节点的工作结论不是中间值“Q”时,输出不具有较高有效位相关输入/输出的判决节点的工作结论或较高有效位较高优先权确定节点的工作结论作为工作结论,和当不具有较高有效位相关输入/输出判决节点的工作结论或较高有效位较高优先权确定节点的工作结论是中间值“Q”时输出不具有较低有效位相关输入/输出的判决节点的工作结论或较低有效位较高优先权确定节点的工作结论作为工作结论,并通过将不具有相关输入/输出的判决节点规定为树叶和将较高优先权确定节点规定为除树叶以外的其它节点的二进制树建立一个用于所述问题的模型,所有用作树趺的判决节点被同时处理和所有较高优先权确定节点被置于二进制树的相同深度,将用作二进制树树根的较高优先权确定节点的工作结论为所述问题的结论。
另外,本发明的算术和逻辑单元被结构得能够变换由N(N是任一正整数)个具有相关输入/输出判决节点构成的具有顺序依赖性的一系列判决结构,其中的每一个节点在一个或多个包括R进制数或一定数量逻辑值信息的数据输入的基础上执行一个予定判决,所述相关输入包括以数据输入和相关输入充成有效时表示“有效”或“无效”的二进制信息并输出包括R进制数或一定量逻辑值信息的结论输出,所述相关输出包括表示“有效”或“无效”,具有具有相关输入/输出判决节点之间相对顺序关系、具有具有最多有效位总是“有效”的相关输入/输出的判决节点的相关输入和具有具有置于较高有效位处的相关输入/输出的判决节点的相关输出的二进制信息,所述相关输出被作为具有置于从具有相关输入/输出的那个判决节点到具有不具有相关输入/输出的N个判决节点的二进制树结构中一个较低有效位处的相关输入/输出的一个判决节点的相关输入,其中的每一个节点用于在一个或多个包括R进制数或一定数量逻辑值信息的基础上在所述数据输入变成有效时执行一个予定判决,并输出表示”不能被确定”的被组合成一个中间值“Q”的格式码作为工作结论和将不具有相关输入/输出的N个判决节点规定为树叶,利用不具有具有内涵判决节点的相关输入/输出的判决节点替换具有相关输入/输出的判决节点,用于在一个或多个包括R进制数或一定数量逻辑信息和总是包括在数据输入变成有效的时间点处“有效”的相关输入的基础上执行一个予定判决,并且在连接到节点的相关输入变成有效时输出包括R进制数或一定数量逻辑值信息和表示“有效”或“无效”的二进制信息的相关输出以及不确定码产生节点的结论输出,所述不确定码产生节点在内涵判决节点的相关输出变成有效时输出不确定码“Q”异输出所述不确定码“Q”和所述数量结合的一个格式码作为工作结论。
另外,本发明的算术和逻辑单元被结构将对具有由具有N个(N为任一正整数)具有相关输入/输出的判决节点构成的顺序依赖性的一系列判决结构进行变换,每个判决用于在一个或多个包括R进制数或一定数量逻辑值信息的数据输入和包括指出“有效”或“无效”的二进制信息的相关输入的基础上在所述数据输入和相关输入变成有效时执行一个予定判决,并输出一个结论输出,该结论输出包括一个R进制数或一定数量的逻辑值信息和包括指出“有效”或“无效”的二进制信息的相关输出,具有在具有相关输入/输出判决节点间相关顺序关系,具有具有最高有效位总是“有效”的相关输入/输出的判决节点的相关输入,并具有具有被置于较高有效位处相关输入/输出的判决节点的相关输出,所述较高有效位被作为具有置于从具有相关输入/输出的那个判决节点到N个不具有相关输入/输出的判决节点的二进制树结构中一个较低有效位处的相关输入/输出的判决节点的相关输入,其中的每一个在一个或多个包括R进制数或一定数量逻辑值信息的基础上在数据输入变成有效时执行一个予定判决,输出被组合成意思为”不能被确定”的由不确定码“Q”和所述量构成的格式码作为式作结论并输出较高优先权确定节点,与所述一系列判决对应,其中的每一个作为其输入接收两个不具有相关输入/输出的判决节点的工作结论或在这个较高优先权确定结点之前两个较高优先权确定节点的工作结论,且当不具有较高有效位相关输入/输出判决节点的工作结论或较高有效位较高优先权确定节点的工作结论不是中间值“Q”时,输出不具有较高有效位相关输入/输出的判决节点的工作结论或较高有效位较高优先权确定节点的工作结论作为那个较高优先权确定节点的工作结论,而当不具有较高有效位相关输入/输出判决节点的工作结论或较高有效位较高优先权确定节点的工作结论是中间值“Q”和将不具有相关输入/判决节点规定为树叶、将较高优先权确定节点规定为除树叶以外的其它节点时,利用不具有相关输入/输出的判决节点替换具有相关输入/输出的判决节点,所述不具有相关输入/输出的判决节点具有一个内判决节点,用于在一个或多个包括R进制数或一定数量逻辑值信息的数据输入和总是在数据输入变成有效时包括“有效”的相关输入的基础上执行一个判决,并输出包括R进制数或一定数量逻辑值信息的结论输出和包括指出“有效”或“无效”的二进制信息的相关输出,以及不确定码产生码,所述不确定码产生码在判决节点的相关输出变成“有效”时输出不确定码“Q”并输出被组合成一个由不确定码“Q”和所述数量组成的一个格式码作为工作结论。
另外,本发明的算术和逻辑单元被提供有优先权编码功能,用于根据n位二进制数的数据输入输出作为二进制数的一个位位置,所述位位置在从最高有效位到最低有效位的方向上的第一位是“1”或“0”并具有不具有相关输入/输出的判决节点,与数据输入的每一位相对应,每一个节点用于在当数据输入烃成有效时一位数据输入的基础上执行一个予定判决,并输出组合成表示”不能被确定”的一个由不确定码“Q”和一个数量构成的格式码作为工作结论和较高优先权确定节点,与每位数据输入对应,每个节点作为其输入接收两个不具有相关输入/输出的判决节点的工作结论或在此之前的两个较高优先权确定结论的工作结论,并不具有当较高有效位有效相关输入/输出的判决节点的工作结论或较高有效较高优先权确定节点的工作结论不是中间值“Q”时,输出不具有较高有效位相关输入/输出的判决节点的工作结论或较高有效位较高优先权确定节点的工作结论作为工作结论,和当不具有较高有效位相关输入/输出的判决节点的工作结论或较高有效位较高优先权确定节点的工作结论是中间值“Q”和通过将不具有相关输入/输出的判决节点规定为树叶和将较高优先权确定节点规定为除树叶以外的其它节点的二进制建立一个优先权编码功能的模形时,输出不具有较低有效性相关输入/输出的判决节点的工作结论或较低有效位较高优先权确定节点的工作结论作为工作结论,对所有用作树叶的判决节点和所有置于二进制树相同深度的较高优先权结点同时进行处理,并规定用作二进制树树根的较高优先权确定节点的工作结论为优先权编码功能的结论。
另外,在本发明的算术与逻辑单元中,二进制树具有n个用作树叶的判决节点;不包括二进制树树叶的最高为m(m是大于log2n的最小整数)的子二进制数具有Nm(Nm是大于n/2的最小整数)个用作深度m节点的优先权确定节点,和Ns(Ns是大于NS+1/2的最小整数)个用作深度S(S是从1到m-1的整数)节点的较高优先权确定节点:一个判决节点是一个相应数据输入的位信号线;从用作子二进制树深度m节点的最低有效位的第Pm(Pm=1到Nm)较高优先权确定节点的每一个将数据输入的第(2XPm-2)位信号线机第(2XPm-1)位信号线归定为第0位输入和第一位输入并具有一个或逻辑装置,用于取第0位输入和第一位输入的或逻辑值并并将该值作为第一位输出,同时还具有一个连接线,用于输出作为第0位输出的第一位输入;从用作子二进制树深度S节点的最低有效位的第PS(PS=1到NS)较高优先权确定节点的每一个将输出到用作子二进制树深度(S+1)的节点的第(2XPS-1)个较高优先权确定节点的第(m-s)位输出的第0位输出规定为到较低有效位第(m-s)位输入的第0位输入和输出到用作子二进制树深度(S+1)节点的第(2XPS)较高优先权确定的第(m-s)位输出的第0位输出规定为到较高有效位第(m-s)位输入的第0位输入,并且有一个或逻辑装置,该或逻辑装置用于取所述较低有效位第(m-s)位输入和所述较高有效位第(m-s)位输入的或逻辑值并将该值作为第(m-s+1)位输出,同时还具有一个连接线,用于输出较高有效位的第(m-s)位输入作为第(m-s)位输出,另外还具有(m-s+1)个选择装置;从最低有效位开始的第q(q=1到m-s+1)个选择装置作为输入接收作为选择输入的较高有效位的第(m-s)位,当所选择的输入是“真”时,选择较高有效位的第(q-1)位输入;当所选择的输入是“伪”时,选择较低有效位的第(q-1)位输入,并同样输出第(q-1)位输出。
另外,本发明的算术和逻辑单元被提供有优先权编码功能,用于根据n位二进制数的数据输入输出作为二进制数的位位置,该位位置从最高有效位到最低有效性的方向上的首位为“1”或“0”,其中,利用高度为m(m是超过log2n的最小整数)的二进制树建立一个用于所述算术和逻辑单元的模型,所述二进制树具有Nm(Nm是大于n/2的最小整数)个深度m节点和Ns(Ns是大于Ns+1/2的最小整数)个深度S(S表示从1到m-1的一个整数的节点;从二进制树深度m的最低有效位开始的第Pm个(Pm=1到Nm)节点中的每一个使用数据输入的第(2×Pm-2)个位信号线和第(2×Pm-1)位信号线作为第0位输入和第一位输入,并且有一个或逻辑装置,用于取第0位输入和第一位输入的或逻辑并将所生成的信号作为第一位输出,同时还具有一个连接线,用于输出作为第0位输出的第一位输入;从二进制树深度S最低有效位开始的第Ps(Ps=1到Ns)中的每一个使用输出到二进制树深度(S+1)第(2XPs-1)节点(m-s)位输出的第0位作为输入给较低有效位第(m-s)位输入的第0位输入并使用输出给2进制树深度(S+1)第(2XPS)节点的第(m-s)输出的第0位作为输入给较高有效位第(m-s)位输入的第0位,并且具有一个或逻辑装置,用于取所述较低有效位第(m-s)位输入和较高有效位第(m-s)位输入的或逻辑,输出结果作为第(m-s+1)位输出,同时还具有一个连接线,用于输出作为第(m-s)位输出的较高有效位的第(m-s)位输入,从最低有效位开始的第q(q=1到m-s+1)个选择装置接收作为其输入的较高有效位的第(m-s)位作为选择输入,当该选择输入是“真”时,选择较高有效位的第(q-1)位输入,而当选择输入是“伪”时,选择较低有效性的第(q-1)位输入,并将结果作为第(q-1)位输出。
另外,本发明的算术和逻辑单元被提供有优先权编码功能,用于根据n位二进制树的数据输入输出二进制数的在从最高有效位到最低有效位方向上的一定数量的连续“1”或“0”,对应于数据输入的各位具有不具有相关输入/输出的多个判决节点,所述每个节点用于在数据输入变成有效时在一位数据输入的基础上执行一个予定判决,并输出表示”不能被确定”的由合一个不确定码“Q”和所述数量组合成的格式码作为工作结论和较高优先权确定节点,与数据输入的各位对应,每个节点作为输入接收两个不具有相关输入/输出的节点的工作结论或在此之前两个较高优先权确定节点的工作结论,当不具有较高有效位相关输入/输出的判决节点的工作结论或较高有效位较高优先权确定节点的工作结论不是中间值“Q”时,输出不具有较高有效位相关输入/输出的判决节点的工作结论或较高有效位较高优先权确定节点的工作结论作为工作结论,而当不具有较高有效位相关输入/输出的判决节点的工件结论或较高有效作较高优先权确定节点的工作结论是中间代码“Q”时,输出不具有较低有效位相关输入/输出的判决节点的工作结论或较低有效位较高优先权确定节点的工作结论作为工作结论,通过使用不具有相关输入/输出的判决节点作为树叶和使用较高优先权确定节点作为除所述树叶以外的其它节点建立一个模型实现所述的优先权编码功能,对用作树叶的所有判决节点和置于二进制树同一深度的所有较高优先权确定节点同时进行处理,和使用用作二进制树树根的较高优先权确定节点的工作结论作为优先权编码功能的结论。
另外,本发明的算术和逻辑单元是如上一段所述的算术和逻辑单元,其中,二进制树有n个作为树叶的判决节点;不包括二进制树树叶的高度为部份m的子二进制树(m是大于log2n的最小整数)具有Nm(Nm是大于n/2的最小整数)个用作深度m节点的较高优先权确定节点和Ns(Ns是大于Ns+1/2的最小整数)个用作深度S(S是1到m+1的整数)个较高优先权确定节点;判决节点是对应数据输入的位信号线;从用作子二进制树深度m节点的最低有效位开始的第Pm个(Pm=1到Nm)较高优先权确定节点将数据输入的第(2×Pm-2)位信号线和第(2×Pm-1)位信号线规定为第0位输入和第一位输入和具有一个或逻辑装置,用于取第0位输入和第一位输入的或逻辑并将其结果作为第一位输出,同时还具有一个负逻辑装置,用于取第一位输出的负逻辑和将其结果作为第0位输出;从用作子二进制树深度S的节点的最低有效位开始的第Ps(Ps=1到Ns)较高优先权确定节点中的每一个使用输出输出到作为子二进制树深度(S+1)的节点的第(2×PS-1)较高优先权确定节点的第(m-s)位输出的第0位作为输入到较低有效位第(m-s)位输入的第0位和使用输出到用作子二进制树深度(S+1)的节点的第(2×PS)较高优先权确定节点的第(m-s)位输出的第0位作为输入到较高有效位第(m-s)位输入的第0位,并具有一个或逻辑,用于取较低有效位第(m-s)位输入和较高有效位第(m-s)位输入的或逻辑并将其结果作为第(m-s+1)位输出,同时具有一个负逻辑,用于取较高有效位第(m-s)位输入的负逻辑并将其结果作为第(m-s)位输出,另外还具有(m-s+1)个选择装置;从最低有效位开始的第q(q=1到m-s+1)个选择装置接收作为其选择输入的较高有效位的第(m-s)位,并当选择输入是“真”时选择较高有效位的第(q-1)位,当所述选择输入是“伪”时,选择较低有效位的第(q-1)位,其输出用作第(q-1)位输出。
另外,本发明的算术和逻辑单元被提供有优先权编码功能,用于在n位二进制数数据输入的基础上输出二进制数的从最高有效位到最低有效位方向上一定数量连续“1”或“0”,其中,通过利用高度为m(m是大于log2n的最小整数)的二进制树建立一个模型实现所述的算术和逻辑单元;该二进制树具有Nm(Nm是大于Ns+1/2的最小整数)个深度S(S表示1到m-1的整数)的节点;从该二进制树深度m的最低有效位开始的第(Pm(Pm=1到Nm)个节点中的每一个使用数据输入的第(2×Pm-2)位信号线和第(2×Pm-1)位信号线作为第0位输入和第一位输入,并具有一个或逻辑装置,用于取第0位输入和第一位输入的或逻辑并将其结果用作第一位输出。同时还具有一个负逻辑,用于取第一位输出的负逻辑并将其结果作为第0位输出;从二进制树深度S的最低有效位开始的第Ps(Ps=1到Ns)节点中的每一个使用输出到二进制树深度(S+1)第(2×Ps-1)节点的第(m-s)位输出的第0位作为输入给较低有效位第(m-s)位输入的第0位和使用输出给二进制深度(S+1)第(2×Ps)节点的第(m-s)位输出的第0位作为输入给较高有效位第(m-s)位输入的第0位,并具有一个或逻辑装置,用于取较低有效位第(m-s)位输入和较高有效位第(m-s)位输入的或逻辑和输出其结果作为第(m-s+1)位输出,还具有一个负逻辑装置,用于取较高有效位第(m-s)位输出,同时还具有(m-s+1)个选择装置;从最低有效位开始的第q(q=1到m-s+1)个选择装置接收作为选择输入的较高有效位的第(m-s)位,当选择输入是“真”时,选择较高有效位的第(q-1)位输入,当选择输入是“伪”时,选择较低有效位的第(q-1)位并输出结果作为第(q-1)位输出。
另外,本发明的算术和逻辑单元用于解决一个问题,该问题包括具有顺序依赖性和判决节点的一系列判决,与所述判决对应的其中每一个节点用于在一个或多个输入信息的基础上输出作为判决结论的“真”、“伪”和“不真不伪或不知道”和较高优先权确定节点,与一系列判决对应,其中的每一个节点用于接收两个判决节点的结果或两个优高优先权确定节点的判决结果,当较高有效位判决节点的判决结果或较高有效位较高优先权确定节点的判决结果是“真”或“伪”时,输出较高有效位判决节点的判决结果或较高有效位较高优先权确定节点的判决结果,当提高有效位判决节点或较高有效位较高优先权确定节点的判决结果是“不真不伪或不知道”时,输出较低有效位判决节点或较低有效位较高优先权确定节点的判决结果,并通过使用判决节点作为树叶和较高优先权确定节点作为除树叶以外的节点的二进制树建立有关问题的模型,并同时对作为树叶的所有判决节点和置于二进制树同深度处的较高优先权确定节点进行处理。
另外,在本发明的算术和逻辑单元中,当所述算术和逻辑单元执行两个R进制系统数的比较和且这两个数的数字相关的比较判决形成一系列具有顺序依赖性的判决时,当相同数位的两个数的比较结果变成正时,判决节点中的每一个输出“真或伪”,而当其结果是负时,输出“伪或真”,当该结果为零时,输出“不真不伪或不知道”。
另外,在本发明的算术和逻辑单元中,当该算术和逻辑单元执行两个R进制系统数的加法且每个数字处存在进位的判决形成一系列具有顺序依赖性的判决时,当同数位两个数的相加结果变成R或更多时,判决节点中的每一个输出“真或伪”,当所述结果变成(R-2)时,输出“伪或真”,当该结果变成(R-1)时,输出“不真不伪或不知道”。
另外,在本发明的算术和逻辑单元中,当该算术和逻辑单元执行两个R进制系统数的减法且在每个数字处存在借位的判决形成一系列具有顺序依赖性的判决时,当同数位两个数的相减结果变负时,节点中的每一个输出“真或伪”,当所述结果变正时,输出“伪或真”,当所述结果为零时,输出“不真不伪或不知道”。
另外,在本发明的算术和逻辑单元中,当所述具有顺序依赖性的一系列判决中判决的数量是n时,所述二进制树具有n个用作树叶的判决节点且不包括所述二进制树树叶的高度为部份m(m是大于log2n的最小整数)的子二进制树具有Nm(Nm是大于n/2的最小整数)个用作深度m节点的较高优先权确定节点和Ns(Ns是大于Ns+1/2的最小整数)个用作深度S(S表示1到m-1的整数)个较高优先权确定节点。
另外,在本发明的算术和逻辑单元中,当判决“真”的结果被规定为值代码“Y”、“伪”被规定为值代码“N”和“不真不伪或不知道”被规定为值代码“Q”时,较高优先权确定节点被作为用于从两个代码,即从较高有效位判决节点判决结果获得的代码Ti∈{Y、N、Q}和从较低有效位判决节点的判决结果获得的Tj∈{Y、N、Q}获得一个代码Tij∈{Y、N、Q}的运算符K给出;其中代码Ti优于代码Tj,当代码Ti是值代码“Y”或值代码“N”时,K运算符使用值代码“Y”或值代码“N”作为由代码Tij取用的值代码,并使用由代码Tj采用的值代码作为由代码Tij采用的值代码,其中,代码Ti是值代码“Q”。
另外,在本发明的算术和逻辑单元中,当判决“真”的结果被规定为值代码“Y”,“伪”被规定为值代码“N”,和“不真不伪或不知道”被规定为值代码“Q”时,较高优先权确定节点被作为用于从两个代码、即从较高有效位判决节点的判决结果获得的代码Ti∈{Y、N、Q}和从较低有效位判决节点的判决结果获得的代码Tj∈{Y、N、Q}获得一个代码Tij∈{Y、N、Q}的K运算符给出,其中代码Ti优于代码Tj,当利用将值代码“Y”规定为{11}、将值代码“N”规定为{10}和将值代码“Q”规定为{0*}(其中“*”表示“不关心”)的二进制数(X,1,X,0)指定任一代码X且或逻辑用运算符“+”表示,与逻辑用“·”表示和负逻辑用“^”表示时,K运算符表示如下:
TiKTj=Tij
(Ti,1,Ti,0)K(Tj,1,Tj,0)=(Tij,1,Tij,0)
=(Ti,1+Tj,1,Ti,1·Ti,0+^Ti,1·Tj,0)。
另外,在本发明的算术和逻辑单元中,每个较高优先权确定节点具有一个或逻辑装置,用于取代码Ti,1和代码Tj,1的或逻辑并输出其结果作为代码Tij,1,还具有一个选择装置,用于当代码Ti,1是“1”时选择和输出代码Ti,0、当代码Ti,1是0时选择和输出代码Tj,0作为代码Tij,0。
另外,在本发明的算术和逻辑单元中,当在一系列具有顺序依赖性的判决的判决数量是n且不包括二进制树树叶的高度m(m是大于1og2n的最小整数)的子二进制树具有Nm(Nm是大于n/2的最小整数)个用作深度m节点的较高优先权确定节点和Ns(Ns是大于Ns+1/2的最小整数)个用作深度S(S是1到m-1的整数)节点的较高优先权确定节点时,用作子二进制树深度m-p(p是0到m-1的偶数)处节点的较高优先权确定节点具有一个或非逻辑装置,用于取代码Ti,1和代码Tj,1的或非逻辑并输出其结果作为代码^Tij,1,还包括第二选择装置,用于取当代码Ti,1是“1”时选择代码Ti,0和当代码Ti,1是“0”时选择代码Tj,0所得结果的负逻辑并输出其结果作为^代码Tij,0;用作子二进制树深度m-q(q是0到m-1中的奇数)处节点的较高优先权确定节点具有与非逻辑装置,用于取代码^Ti,1和代码^Tj,1的与非逻辑和将其结果作为代码Tij,1输出,并具有第三选择装置,用于取当代码^Ti,1是“0”时选择代码^Ti,0和当代码^Ti,1是“1”时选择代码^Tj,0所得结果的负逻辑,并输出其结果作为代码Tij,0。
另外,在本发明的算术和逻辑单元中,当判决“真”的结果被规定为“Y”,判决“伪”的结果被规定为“N”和判决“不真不伪或不知道”的结果被规定为“Q”时,一个较高优先权确定节点被作为用于从两个代码,即从较高有效位判决节点的判决结果获得的代码Ti∈{Y、N、Q}和从较低有效位判决节点的判决结果获得的代码Tj∈{Y、N、Q}中获得一个代码Tij∈{Y、N、Q}的K运算符给出;其中代码Ti优于代码Tj。当通过将值代码“Y”规定为{00}、将值代码“N”规定为{11}和将值代码“Q”规定为{10}和将{01}规定为“禁止使用”(值代码“F”)的二进制数(X,1,X,0)指定任一个代码X或逻辑用“+”算符表示,与逻辑用“·”算符表示和负逻辑用“^”算符表示时,K运算符表示如下:
TiKTj=Tij
(Ti,1,Ti,0)K(Tj,1,Tj,0)=(Tij,1,Tij,0)
=(Ti,0+Ti,1,Tj,1·Ti,0+Ti,1·Tj,0)。
另外,在本发明的算术和逻辑单元中,每个较高优先权确定节点具有第一复合逻辑门装置,用于取代码Ti,1和代码Tj,1的与逻辑和代码Ti,0之间的或逻辑并输出其结果作为Tij,1;具有第二复合逻辑门装置,用于取代码Ti,1和代码Tj,0的与和代码Ti,0之间的或逻辑并输出其结果作为代码Tij,0。
另外,在本发明的算术和逻辑单元中,当具有顺序依赖性的一系列判决中的判决数量是n且不包括二进制树树叶的高度m(m是大于log2n的最小整数)的子二进制树具有Nm(Nm是大于n/2的最小整数)个用作深度m节点的较高优先权确定节点和Ns(Ns是大于Ns+1/2的最小整数)个用作深度S(S是1到m-1的整数)节点的较高优先权确定节点时,用作子二进制树深度m-p(p表示从0到m-1的偶数)节点的较高优先权确定节点具有第三复合逻辑门装置,用于取代码Ti,1和代码Tj,1与逻辑和代码Tj,1和代码Ti,0之间的或逻辑并将其结果作为代码^Tij,1输出,还具有第四复合逻辑门装置,用于取代码Ti,1和代码Tj,0的与逻辑和代码Ti,0之间的或逻辑并将其结果作为代码^Tij,0输出;用作子二进制树深度m-q(q是从0到m-1中的整数)节点的较高优先权确定节点具有第五复合逻辑门装置,用于取代码^Ti,1和代码^Tj,1和代码^Ti,0之间的或逻辑并将其结果作为代码Tij,1输出,还包括第六复合逻辑门装置,用于取代码^Ti,1和代码^Tj,0的或逻辑和代码^Ti,0之间的与非逻辑和输出其结果作为代码Tij,0。
另外,在本发明的算术和逻辑单元中,当判决“真”的结果被规定为“Y”、“伪”的结果被规定为“N”和“不真不伪或不知道”被规定为“Q”时,较高优先权确定节点被作为用于从两个代码,即:从较高有效位判决节点判决结果获得的代码Ti∈{Y、N、Q}和从较低有效位判决节点判决结果获得的代码Tj∈{Y、N、Q}中获得一个代码Tij∈{Y、N、Q}的K运算符给出;其中代码Ti优于代码Tj,当利用将值代码“Y”规定为{01}、将值代码“N”规定为{10}和将值代码“Q”规定为{11}以及将{10}规定为“禁止使用”(值代码F)的二位二进制数(X,1,X,0)指定任一个代码X,或逻辑用算符“+”表示、与逻辑用算符“·”表示和负逻辑用算符“^”表示时,K运算符表示如下:
TiKTj=Tij
(Ti,1,Ti,0)K(Tj,1,Tj,0)=(Tij,1,Tij,0)
=(^Ti,0+Ti,1,Tj,1·^Ti,1,+Ti,0·Tj,0);和较高优先权确定节点具有第七复合逻辑门装置,用于取代码Ti,1和代码Tj,1与逻辑和代码^Ti,0之间的或逻辑并输出其结果作为代码Tij,1,还具有第八复合逻辑门装置,用于取代码Ti,0和代码码Tj,0与逻辑和代码^Ti,1之间的或逻辑并输出其结果作为代码Tij,0。
另外,在本发明的算术和逻辑单元中,当判决“真”的结果被规定为“Y”、“伪”被规定为“N”和“不真不伪或不知道”被规定为“Q”时,较高优先权确定节点被作为用于从两个代码,即从较高有效位判决节点的判决结果获得的代码Ti∈{Y、N、Q}和从较低有效位判决节点的判决结果获得的代码Tj∈{Y、N、Q}中获得得一个代码Tij∈{Y、N、Q}的运算符K给出,其中代码Ti优于代码Tj,当利用将值代码“Y”规定为{00}、将值代码“N”规定为{10}、将值代码“Q”规定为[11}和将{01}规定为“禁止使用”(值代码F)的2位二进制数(X,1,X,0)指定任一代码X,或逻辑用算符“+”表示,与逻辑用算符“·”表示和负逻辑用算符“^”表示时,K运算符表示如下:
TiKTj=Tij
(Ti,1,Ti,0)K(Tj,1,Tj,0)=(Tij,1,Tij,0)
=(Ti,1·(^Ti,0+Tj,1),Ti,0·Tj,0);和
较高优先权确定节点具有第九复合逻辑门装置,用于取代码^Ti,0和代码Tj,1或逻辑与代码Ti,1之间的与逻辑并输出其结果作为代码Tij,1和具有一个与逻辑装置,用于取代码Ti,0和代码Tj,0的与逻辑并输出其结果作为代码Tij,0。
另外,在本发明的算术和逻辑单元中,当该算术和逻辑单元执行两个n位二进制(Xa,Xb)的比较和与这两个数的数字(Xai,Ybi;i=0到n-1)相关的比较判决形成具有顺序依赖性的一系列判决时,判决节点具有一个异或逻辑装置,用于取数字值Xai和数字值Ybi的异或逻辑并输出其结果作为代码Ti,1,同时还具有一个连接装置,用于输出作为代码Ti,0的数字值Xai。
另外,在本发明的算术和逻辑单元中,每个较高优先权确定节点具有一个或逻辑装置,用于取代码Ti,1和代码Tj,1或逻辑并输出其结果作为Tij,1,并具有一个选择装置,用于当代码Ti,1是“1”时选择代码Ti,0、当代码Ti,1是0时选择Tj,0并输出其结果作为代码Tij,0,并且当用作二进制树树根的较高优先权确定节点的输出被表示为Q=(0*)时被解释为“两个数(Xa,Yb)相等”和当所述输出被表示为Y={11}时被解释为“两个数(Xa,Yb)具有幅值Xa>Yb的关系,和当所述输出被表示为N={10}时被解释为“两个数(Xa,Yb)具有幅值Xa<Yb的关系”。
另外,在本发明的算术和逻辑单元中,当不包括所述二进制树树叶的高度为m(m是大于log2n的最小整数)的子二进制树具有Nm(Nm是大于n/2的最小整数)个用作深度m节点的较高优先权确定节点和Ns(Ns是大于Ns+1/2的最小整数)个用作深度S(S是1到m-1的整数)节点的较高优先权确定节点时,用作该子二进制树深度m-p(p0到m-1的偶数)节点的较高优先确定节点具有一个或非逻辑装置,用于取代码Ti,1和代码Tij的或非逻辑并输出其结果作为代码^Tij,1,并具有第二选择装置,用于取当代码Ti,1是“1”时选择代码Ti,0和当代码Ti,1是“0”时选择代码Tj,0所得结果的负逻辑并输出其结果作为代码^Tij,0;用作该子二进制树深度m-q(q是0到m-1的奇数)节点的较高优先权确定节点具有一个与非逻辑装置,用于取代码^Tj,1和代码^Tj,1的与非逻辑并输出其结果作为代码Tij,1,还具有第三选择装置,用于取当代码^Tij,1,还具有第三选择装置,用于取当代码^Ti,1是“0”时选择代码^Ti,0和当代码^Ti,1是“1”时选择代码^Tj,0所得结果的负逻辑并输出其结果作为代码Tij,0。当m是偶数时,当用作二进制树树根的较高优先权确定节点的输出表示为Q=(0*)时意味着“两个数(Xa,Yb)相等”,当所述输出表示为Y={11}时,意味着“两个数(Xa,Yb)具有幅值Xa>Yb的关系”,而当所述输出表示为N={10}时意味着“两个数(Xa,Yb)具有幅值Xa<Yb的关系”,当m是奇数时,当用作二进制树树根的较高优先权确定节点的输出表示为Q=(1*)时意味着“两个数(Xa,Yb)相等”,当该输出表示为Y={00}时意味着“两个数(Xa,Yb)具有幅值Xa>Yb的关系”,而当该输出表示为N={01}时则意味着“两个数(Xa,Yb)具有幅值Xa<Yb的关系”。
另外,在本发明的算术和逻辑单元中,当该算术和逻辑单元执行两个代码串n进制数(Xa,Yb)的比较时,执行用于两个数MSB(最高有效位)比较判决的判决节点分别将数字值Xan-1处理成数字值Ybn-1和将数字值Ybn-1处理成Xan-1。
另外,在本发明的算术和逻辑单元中,当该算术和逻辑单元执行两个n进制数(Xa,Yb)的比较和与这两个数的数字(Xai,Ybi;i=0到n-1)相关的比较判决形成一系列具有顺序依赖性的判决时,每个判决节点具有一个与非逻辑装置,用于取数字值Xai和数字值Ybi的与非逻辑并输出其结果作为代码Ti,1,同时还具有一个或非逻辑,用于取数字值Xai和数字值Ybi的负逻辑并输出其结果作为代码Ti,0。
另外,在本发明的算术和逻辑单元中,当在两个n位二进制数(Xa,Yb)的加法中存在与两个数字的数字(Xai,Ybi;i=0到n-1)相关进位的判决形成一系列具有顺序依赖性的判决时,每个判决节点具有一个异或逻辑装置,用于取数字值Xai和数字值Ybi异或逻辑并输出其结果作为代码Ti,1,还具有一个连接装置,用于将数字值Xai作为代码Ti,0输出,或具有一个连接装置,用于将数字值Ybi作为代码Ti,0输出。
另外,在本发明的算术和逻辑单元中,执行与两个数的LSB(最低有效位)相关的存在进位的判决具有一个或非逻辑,用于取数字值Xao和数字值Ybo的或非逻辑;具有一个与非逻辑,用于取数字值Xao和数字值Ybo的与非逻辑;具有一个选择装置,用于取当输入给算术和逻辑单元的进位是“1”时选择或非逻辑装置的输出和当进位输入是“0”时选择与非逻辑装置输出所获得结果的负逻辑并将其结果作为代码T0,0输出;和不输出代码T0,1。
另外,在本发明的算术和逻辑单元中,不是由于原来应当由较高优先权判决节点中执行与两个数LSB相关的存在进位的判决的判决节点输出的代码T0,1,每个数字优先权确定节点具有一个用于取代码Ti,1和代码Tj,1或逻辑并将其结果作为代码Tij,输出的或逻辑和用于当代码Ti,1是“1”时选择代码Ti,0,当代码Pi,1是“0”时选择代码Tj,0并输出其结果作为代码Tij,0的选择装置;由于最初应当由用于执行与较优先权确定节点中两个数的LSB相关的存在进位的判决的判决节点输出的代码T0,1,所述较高优先权确定节点具有一个选择装置,用于当代码Ti,1是“1”时选择代码Ti,0,当代码Ti,1是“0”时选择代码Tj,0,并输出其结果作为代码Tij,0和不输出代码Tij,1,它们被分别解释为当用作二进制树树根的较高优先权确定节点的输出代码Tiij,0是“1”时的“有一个进位输出”和当输出代码Tij,0是“0”时的“没有进位输出”。
另外,在本发明的算术和逻辑单元中,当不包括二进制树树叶的高度m(m是大于log2n的最小整数)的子二进制树具有Nm(Nm是大于n/2的最小整数)个用作深度m节点的较高优先权节点和Ns(Ns是大于Ns+1/2的最小整数)个用作深度S(S是1到m-1的整数)节点的较高优先权确定节点时,不是得自最初应当由用于执行与用作子二进制树深度m-p(p是0到m-1的偶数)节点的较高优先权确定节点中两个数的LSB相关的存在进位的判决的判决节点输出的代码T0,1的每个较高优先权判决节点具有一个或逻辑装置,用于取代码Ti,1和代码Tj,1的或逻辑并输出其结果作为代码^Tij,1,并且有第二选择装置,用于取当代码Ti,1是“1”时选择代码Ti,0,当代码Ti,1是“0”时选择代码Tj,0所得结果的负逻辑并输出其结果作为代码^Tij,0;不是得自最初应当由用于执行与用作子二进制树深度m-q(q是0到m-1的奇数)节点的较高优先权确定节点中两个数的LSB有关的存在进位的判决的判决节点输出的代码T0,1的每个较高优先权确定节点具有一个与非逻辑,用于取代码^Ti,1和代码^Tj,1的与非逻辑并输出其结果作为代码Tij,1,还具有第三选择装置,用于取当代码Ti,1是“0”时选择代码^Ti,0,当代码^Ti,1是“1”时选择代码^Tj,0所得结果的负逻辑并输出其结果作为代码Tij,0;得自最初应当由用于执行与用作子二进制树深度m-p(p是0到m-1的偶数)节点的较高优先权确定节点中两个数的LSB相关的存在进位的判决的判决节点输出的代码T0,1的较高优先权确定节点具有第二选择装置,用于取当代码Ti,1是“1”时选择代码Ti,0,当代码Ti,1是“0”时选择代码Tj,0所得结果的负逻辑并输出其结果作为代码^Tij,0和不输出代码Tij,1;得自最初应当由用于执行与用作子二进制树深度m-q(q是0到m-1的奇数)节点的较高优先权节点中两个数的LSB相关的存在进位的判决的判决代码T0,1的较高优先权确定节点具有第三选择装置,用于取当代码^Ti,1是“0”时选择代码^Ti,0,当代码^Ti,1是“1”时选择代码^Tj,0所得结果的负逻辑并输出其结果作为代码Tij,0和不输出代码Tij,1;当m是偶数时,当用作二进制树树根的较高优先权确定节点的输出代码Tij,0是“1”时解释为“有进位输出”,当输出代码Tij,0是“0”时表示为“没有进位输出”;当m是奇数时,当用作二进树树根的较高优先权确定节点的输出代码^Tij,0是“1”时表示“有进位输出”,当输出代码^Tij,0是“1”时表示“没有进位输出”。
另外,在本发明的算术和逻辑单元中,当与在两个n位二进制数(Xa,Yb)加法中的两个数的数字(Xai,Ybi;i=0到n-1)相关的存在进位的判决形成一系列具有顺序依赖性的判决时,每个判决节点具有一个与非逻辑,用于取数字值Xai和数字值Ybi的与非逻辑并输出其结果作为代码Ti,1,还具有一个或非逻辑,用于取数字值Xai和数字值Ybi的或非逻辑并输出其结果作为代码Ti,0。
另外,在本发明的逻术和逻辑单元中,当与在两个n位二进制数(Xa,Yb)加法中两个数的数字(Xai,Ybi;i=0到n-1相关的存在进位的判决形成一系列具有顺序依赖性的判决时和当使用用于执行与用作树叶的二进制数Xaj,Ybj(i=0到n-2)相关的存在进位的判决的判决节点组成所述二进制树和不包括所述二进制树树叶的高度m(m是大于log2n的最小整数)的子二进制树具有Nm(m是大于n/2的最小整数)个用作深度m节点的较高优先权确定节点和Ns(Ns是大于Ns+1/2的最小整数)个用作深度S(S是0到m-1的整数)节点的较高优先权确定节点时,用于执行与两个数LSB相关的存在进位的判决节点具有一个或非逻辑,用于取数字值Xao和数字值Ybo的或非逻辑,一个与非逻辑,用于取数字值Xao和数字值Ybo的与非逻辑,并具有一个选择装置,用于取当到算术和逻辑单元的进位输入是“1”时选择或非逻辑装置的输出、当所述进位是“0”时选择与非逻辑装置输出所得结果的负逻辑并输出其结果作为代码T0,0和不输出代码T0,1;执行与两个数的数字Xak,Ybk(K=1到n-1)相关的存在进位的判决的判决节点具有一个异或逻辑,用于取数字值Xaj和数字值Ybj的异或逻辑并输出其结果作为代码Tj,1;还具有一个连接装置,用于输出作为代码Tj,0的数字值Xaj或连接装置,用于输出作代码Tj,0的数字值Ybj;得自最初应当由用于执行较高优先权确定节点中两个数的LSB相关的存在进位的判决的判决节点输出的代码T0,1的较高优先权确定节点具有一个选择装置,用于当代码Ti,1是“1”时选择代码Ti,0,当代码Ti,1是“0”时选择代码Tj,0并输出其结果作为代码Tij,0和不输出代码Tij,1;得自最初应当由用于执行较高优先权确定节点中两个数的LSB相关的存在进位的判决的判决节点输出的代码T0,1的每个较高优先权确定节点具有一个或逻辑,用于取代码Ti,1和代码Tj,1的或逻辑并输出其结果作为代码Tij,1,还具有一个选择装置,用于当代码Ti,1是“1”时选择代码Ti,0,当代码Ti,1是“0”时选择代码Tj,0,并输出其结果作为代码Tij,0;当二进制树树叶的数量不是2的幂时,使用与作为伪节点的用于执行与两个数的LSB相关的存在进位的判决的判决节点对应的较高优先权确定节点传送由所述判决节点输出的代码T0,0;具有一个异或逻辑装置,用于在用于执行与两个数的MSB相关的存在进位的判决的判决节点的输出代码Tn1,1和用作二进制树树根的较高优先权确定节点的输出代码Tij,0之间取异或逻辑并将这个结果规定为与这两个数的MSB相关的和。
另外,在本发明的算术和逻辑单元中,当在两个n位二进制数(Xa,Yb)的加法中存在两个数的数字(Xai,Ybi;i=0到n-1)进位的判决形成一系列具有顺序依赖性的判决且当使用执行作为树叶的两个数的数字Xaj,Ybj(j=0到n-2)存在进位的判决的判决节点组成的二进制数和不包括二进制树树叶的高度m(m是大于log2n的最小整数)的子二进制数具有Nm(Nm是大于n/2的最小整数)个用作深度m节点的较高优先权确定节点和Ns(Ns是大于Ns+1/2的最小整数)个深度S(S是1到m-1的整数)节点的较高优先权确定节点时,用于执行与两个数LSB相关存在进位的判决节点具有一个或非逻辑装置,用于取数字值Xao和数字值Ybo的或非逻辑,具有一个与非逻辑装置,用于取数字值Xao和数字值Ybo的与非逻辑,具有一个选择装置,用于当到算术和逻辑单元的进位输入是“1”时选择或非逻辑装置的输出,当所述进位输入是“0”时选择与非逻辑装置的输出所得结果的负逻辑并输出其结果作为代码T0,0而不输出代码T0,1;用于执行与两个数的数字Yak,Ybk(K=1到n-1)相关存在进位判决的每个判决节点具有一个异或非逻辑,用于取数字值Xaj和数字值Ybj的异或非逻辑并输出其结果作为代码Tj,1,具有一个连接装置,用于输出作为代码Tj,0的数字值Xaj或一个连接装置,用于输出作为代码Tj,0的数字值Ybj;不是得自最初应当由用于执行与用作子二进制树深度m-p(p是0到m-1的偶数)处节点的较高优先权确定节点中两个数的LSB相关存在进位判决的判决节点输出的代码T0,1的每个较高优先权确定节点具有一个或非逻辑装置,用于取代码Ti,1和代码Ti,j的或非逻辑并输出其结果作为代码^Tij,1,具有第二选择装置,用于取当代码Ti,1是“1”时选择代码Ti,0,当代码Ti,1是“0”时选择代码Tj,0所得结果的负逻辑并输出其结果作为代码^Tij,0;不是得自最初应当由用于执行与用作子二进制树深度m-q(q是0到m-1的奇数)处节点的较高优先权确定节点中两个数的LSB相关的存在进位判决的判决节点输出的代码T0,1的每一个较高优先权确定节点具有一个与非逻辑装置,用于取代码^Ti,1和代码^Tj,1的与非逻辑并输出其结果作为代码Tij,1,还具有第三选择装置,用于取当代码^Ti,1是“0”时选择代码^Ti,0,当代码Ti,1是“1”时选择代码Tj,0所得结果的负逻辑并输出其结果作为代码Tij,0;得自最初应当由用于执行与用作子二进制树深度m-p(p是0到m-1的偶数)处节点的较高优先权确定节点中两个数的LSB相关的存在进位的判决的判决节点输出的代码T0,1的较高优先权确定节点具有第二选择装置,用于取当代码Ti,1是“1”时选择代码Ti,0,当代码Ti,1是“0”时选择代码Tj,0所得结果的负逻辑并输出其结果作为代码^Tij,0和不输出代码Tij,1;得自应当由用于执行与子二进制树深度m-q(q是0到m-1的奇数)处节点的较高优先权确定节点中两个数的LSB相关存在进位判决的判决节点输出的代码T0,1的较高优先权确定节点具有第三选择装置,用于取当代码^Ti,1是“0”时选择代码^Ti,0、当代码Ti,1是“1”时选择代码Tj,0所得结果的负逻辑并输出其结果作为代码Tij,0和不输出代码Tij,1;当二进制树的树叶数量不是2的幂时,将与用于执行与两个数的LSB相关的存在进位判决的判决节点对应的较高优先权确定节点规定为用于传送由所述节点输出的代码T0,0的伪节点;它具有一个异或逻辑装置,用于取执行与两个数MSB相关存在进位判决的判决节点的输出代码Tn-1,1和用作二进制树树根的较高优先权确定节点代码输出Tij,0负逻辑之间的异或逻辑并当m是偶数时将其规定为与两个数的MSB相关的和;还具有一个异或逻辑装置,用于取执行与两个数的MSB相关的存在进位判决的判决节点的输出代码Tn-1,1和用作二进制树树根的较高优先权确定节点的输出代码^Tij,0负逻辑之间的异或逻辑并当m是奇数时将其规定为与两个数的MSB相关的和。
另外,在本发明的算术和逻辑单元中,当在两个n位二进制数(Xa,Yb)的加法中存在与两个数的数字(Xai,Ybi;i=0到n-1)相关的进位的判决形成一系列具有顺序依赖性的判决时具有n个判决节点,当在作为两个数的数字值Xai,Ybi基础上的判决结果和较高优先权确定节点矩阵由其行与两个数的数字对应的n行,m列(列是大于log2n的最小整数)组成时,当相同数字位的和变成2或更多时这些节点输出“真或伪”;当所述和为零时输出“伪或真”和当所述和变成1时输出“不真不伪或不知道”;第一列较高优先权确定节点组具有第零行较高优先权确定节点作为用于传送第零数字判决节点的判决结果的伪节点和具有第n1行较高优先权确定节点,该节点作为输入接收第n-1数字的判决结果,还具有第n1数字(n1=1到n-1)判决节点,且当第n1数字判决节点的判决结果是“真”或“伪”时输出第n1数字判决节点的判决结果;当第n1数字判决节点的判决结果是“不真不伪或不知道”时输出第n1-1数字判决结果;第K列(K=2到m)较高优先权确定节点组具有从第0行到第2K-1行的较高优先权确定节点,用作分别传送来自第0行到第2K-1-1行本身的较高优先权确定节点的判决结果的伪节点,并具有第nk行较高优先权确定节点,该节点接收作为其输入的第nk-2k-1到较高优先权确定节点的判决结果和第nk行(nk=2k-1到n-1)较高优先权确定节点的判决结果,并且当第nk行较高优先权确定节点的判决结果是“真”或“伪”时输出第nk行较高优先权确定节点的判决结果,和当第nk行较高优先权确定节点的判决结果是“不真不伪或不知道”时输出第nk-2k-1行较高优先权确定节点的判决结果;和所述列n个判决节点和多组较高优先权确定节点被同时处理。
另外,在本发明的算术和逻辑单元中,当判决“真”的结果被规定为值代码“Y”、“伪”被规定为值代码“N”和“不真不或不知道”被规定为值代码“Q”时,每个较高优先权确定代码被作为用于从两个代码、即:从较高有效位判决节点的判决结果得到的代码Ti∈{Y、N、Q}和从较有效位判决节点的判决结果得到的代码Tj∈{Y、N、Q}中获得一个代码Tij∈{Y、N、Q}的算符K给出;在代码Ti优于代码Tj的场合,当代码Ti是值代码“Y”或值代码“N”时,K算符将值代码“Y”或值代码“N”规定为由代码Tij取用的值代码,当代码Ti是值代码“Q”时,K算符将由代码Tj取用的值代码规定为由代码Tij取用的值代码。
另外,在本发明的算术和逻辑单元中,当判决“真”的结果被规定为“Y”,“伪”的结果被规定为“N”和“不真不伪或不知道”被规定为“Q”时,每个较高优先权确定节点被作为用于从两个代码,即从较高有效位判决节点的判决结果获得的代码Ti∈{Y、N、Q}和从较低有效位判决节点的判决结果获得的代码Tj∈{Y、N、Q}获得一个代码Tij∈{Y、N、Q}的算符K给出;在代码Ti优于代码Tj的场合,当使用两位用于将值代码“Y”规定为{11},将值代码“N”规定为{10}和将值代码“Q”规定为{0*}(这里,“*”表示“不关心”)的二进制数(X,1,X,0)指定任一代码X,或逻辑由算符“+”表示、与逻辑由算符“^”表示时,K算符表示如下:
TiKTj=Tij
(Ti,1,Ti,0)K(Tj,1,Tj,0)=(Tij,1,Tij,0)
=(Ti,1+Tj,1,Ti,1·Ti,0+^Ti,1·Tj,0)。
另外,在本发明的算术和逻辑单元中,从第一数字到第n-1数字中的每一个判决节点具有一个异或非逻辑,用于取数字值Xai和数字值Ybi的异或非逻辑并输出其结果作为代码Ti,1,具有一个连接装置,用于输出作为代码Ti,0的数字值Xai,或具有一个连接装置,用于输出作为代码Ti,0的数字值Ybi;第0个数字的判决节点具有一个或非逻辑,用于取数字值Xao和数字值Ybo的或非逻辑,具有一个与非逻辑,用于取数字值Xao和数字值Ybo的与非逻辑,还具有一个选择装置,用于当到算术和逻辑单元的进位输入是“1”时选择或非逻辑装置的输出获得结果的负逻辑并输出其结果作为代码T0,0和不输出代码T0,1;在不包括伪节点的较高优先权确定节点中,不是得自最初应当由第0个数字判决节点输出的代码T0,1的每个较高优先权确定节点具有一个或逻辑装置,用于取代码Ti,1和代码Tj,1的或逻辑,并输出其结果作为代码Tij,1,还具有一个选择装置,用于当代码Ti,1是“1”时选择代码Ti,0,当代码Ti,1是“0”时选择代码Tj,0并将其结果作为代码Tij,0输出和不输出代码Tiij,1;从第m列第0行到第n-1行的较高优先权确定节点的输出代码Tij,0被用作计算机逻辑单元的第一数字以第n-1数字和进位输出,当输出代码Tij,0是“1”时表示“存在进位输出”,当输出代码Tij,0是“0”时表示“没有进位输出”。
另外,本发明的算术和逻辑单元具有一个第0数字的异或逻辑装置,用于取数字值Xao和数字值Ybo的异或逻辑,还具有一个被提供有第0行异或逻辑装置的和产生装置,用于取第0数字异或逻辑装置的输出和到算术和逻辑单元进位输入的异或逻辑并将其结果作为第0数字之和,还具有从第一行到第n-1行的异或逻辑装置,用于取从第一数字到第n-1数字的判决节点的输出代码Ti,1的每个负逻辑和从第m到第0行到第n-2行较高优先权确定节点的每个输出代码Tij,0之间的异或逻辑并将其结果作为第一到第n-1数字的和。
另外,在本发明的该算术和逻辑单元中,从第一数字到第n-1数字的这些判定节点每一个具有一用来获取数值Xai和数值Ybi的“同”逻辑并输出例如代码Ti,1的结果的“同”逻辑装置,和一用来输出例如代码Ti,0的数值Xai的连接装置或一用来输出例如代码Ti,0的数值Ybi的连接装置;和0数字的判定节点具有一用来获取数值Xao和数值Ybo的“或非”逻辑的“或非”逻辑装置,一用来获取数值Xao和数据Ybo的“与非”的“与非”逻辑装置,和一用来通过分别选择当输入到该算术和逻辑单元的进位为“1”时选择“或非”逻辑装置的输出而当输入到该算术和逻辑单元的进位为“0”时选择“与非”逻辑装置的输出所得到结果的负逻辑并且输出例如代码T0,0而不输出代码T0,1的结果的选择装置;第一列的第0行的较高优先权级确定节点和第K列的第0行至第2K-1行的较高优先级确定节点被定义为伪程序节点,其第0数字的判定节点的判定结果和第0行到第2K-1-1的行的较高优先权极确定节点的判定结果相反而传递相同;在第m-p列(p是一由p=0到m-1表示的一偶数)的较高级优先权级之中不包括该伪程序节点,不能从最初由第0数字的判定节点输出的代码T0,1中导出的每一个较高优先权级确定节点具有一用来获取代码Ti,1和代码Tj,1的“或非”逻辑并输出例如代码^Tij,1的结果的“或非”逻辑装置,和一用来获取通过分别地选择当代码Ti,1是“1”时选择代码Ti,0而当代码Ti,1是“0”时选择代码Tj,0所得到结果的负逻辑并且输出例如代码^Tij,0的结果的第二选择装置;在第m-q列(q是一由q=1到m-1所表示的奇数)的较高优先权级确定节点之中不包括该伪程序节点,不能从最初由第0数字的判定节点输出的代码T0,1中导出的每一个较高优先权级确定节点具有一用来获取代码^Ti,1和代码^Tj,1的“与非”逻辑并输出例如代码Tij,1的结果的“与非”逻辑装置,和一用来获取通过分别选择当代码^Ti,1是“0”时选择代码^Tj,0和代码^Ti,1是“1”时选择代码^Tj,0所得结果的负逻辑并输出例如代码Tij,0的结果的第三选择装置;在第m-p列(p是一由p=0至m-1表示的偶数)的较高优先权级确定节点中不包括该伪程序节点,从最初由第0数字的判定节点输出的代码T0,1中导出的该较高优先权级判定节点具有一用来获取通过分别选择当代码Ti,1是“1”时选择代码Ti,0而当代码Ti,1是“0”时选择代码Tj,0所得结果的负逻辑并输出例如代码^Tij,0而不输出代码Tij,1的结果的第二选择装置;在第m-q列(q是一由q=1至m-1表示的奇数)的较高优先权级节点之中不包括该伪程序节点,从最初由第0数字的判定节点输出的代码T0,1中导出的该较高优先权级判定节点具有一用来获取通过分别选择当代码^Ti,1是“0”时选择代码^Ti,0而当代码^Ti,1是“1”时选择代码^Tj,0所得结果的负逻辑并且输出例如代码Tij,0而不是输出代码Tij,1的结果的第三选择装置;当m是一偶数时,第m列的第0行至第n-1行的较高优先权级确定节点的输出代码Tij,0被用作为第一数字至第n-1数字和算术和逻辑单元的进位输出,并且分别被解释为当输出代码Tij,0为“1”时解释为“存在一进位输出”而当输出代码Tij,0为“0”时解释为“不存在一进位输出”;当m是一奇数时,第m列的第0行至第n-1行的较高优先权级节点的输出代码^Tij,0被用作为第一数字至第n-1数字和算术和逻辑单元的进位输出,并且它被分别解释为输出代码^Tij,0是“0”时解释为“存在一进位输出”而当输出代码^Tij,0是“1”时解释为“不存在一进位输出”。
另外,本发明的算术和逻辑单元具有一用来获取数值Xao和数值Ybo的“异或”逻辑的第0数字的“异或”逻辑装置,和当m是一偶数时,一和产生装置提供有一用来获取第0数字的“异或”逻辑装置的输出的“异或”逻辑并进位输出到算术和逻辑单元并将它定义为第0数字的和的结果的第0行的“异或”逻辑装置以及用来获取在从第一数字至第n-1数字的判定节点的输出代码Ti,1的每一负逻辑和从第m列的第0行至第n-2行的较高优先权级确定节点的每一输出代码Tij,0之间的“异或”逻辑并且将其定义为第一数字至第n-1数字之和的结果的从第一行至第n-1行的“异或”逻辑,和当m是一奇数时,一和产生装置提供有一用来获取第0数字的“异或”逻辑装置的输出的“异或”输出并进位输出到该算术和逻辑单元并将它定义为第0数字的和的结果的第0行的“异或”逻辑装置以及用来获取在从第一数字至第n-1数字的判定节点的输出代码Ti,1的每一负逻辑和从第m列的第0行至第n-2行的较高优先权级的输出代码^Tij,0的每一负逻辑之间的“异或”逻辑并将其定义为第一数字至第n-1数字之和的结果的从第一行至第n-1行的“异或”逻辑装置。
另外,在本发明的该算术和逻辑单元中,当对于在两个n位二进制数(Xa,Yb)相加中的二个数的数字(Xai,Ybi;i=0至n-1)的一进位的存在的判定构成一系列具有一排序相关的判定时,它具有n个判定节点,根据二个数的数值Xai,Ybi这此判定节点分别输出为当相同数字之和的结果变为2或大于2时输出“真或假”,当该结果变为0时输出“假或真”,和与该结果变为1时输出“即不是真也不是假或不知道”作为一判定的结果并且一较高优先权级确定节点矩阵由具有相应于该二个数的奇数数字的行的n/2数的行和m数的列(m是超出log2n的最小整数)所组成;第一列的较高优先权极确定节点组具有这样一较高优先权级确定节点,即该较高优先权级确定节点接收第h1-1数字的判定和第h1数字的判定节点(h1=从1到n-1的奇数)的结果作为它的输入,当第h1数字的判定节点的判定结果是“真”或“假”时输出第h1数字的判定节点的判定结果,而当第h1数字的判定节点的判定是“即不是真也不是假或不知道”时输出第h1-1数字的判定节点的判定结果;第K列(K=2至m)的较高优先权级确定节点组具有用来分别传送从第一至第2K-1-1奇数行的较高优先权级确定节点的判定结果的作为伪程序节点的从第一至第2K-1-1奇数行的较高优先权级确定节点。和一第hk行的较高优先权级确定节点,该较高优先权级确定节点接收第hk-2k-1行的较高优先权级确定节点和第hk行(hk=从2k-1至n-1的奇数)的较高优先权级确定节点的判定结果作为它的输入,当第hk行的较高优先权级确定节点的判定结果是“真”或“假”时输出第hk行的较高优先权级确定节点的判定结果,而当第hk行的较高优先权级确定节点的判定结果是“即不是真也不是假或不知道”时则输出第hk-2K-1行的较高优先权级确定节点的判定结果;和n个判定节点以及这些列的较高优先权级确定节点组分别被同时处理。
另外,在本发明的该算术和逻辑单元中,分别当判定结果“真”被定义为数值代码“Y”,判定结果“假”被定义为数值代码“N”,和判定结果“即不是真也不是假或不知道”被定义为数值代码“Q”时,为了从二个代码中获取一代码Tij∈{Y、N、Q},也就是从较高有效位的判定节点的判定结果得到代码Ti∈{Y、N、Q}而从较低有效位的判定节点的判定结果得到代码Tj∈{Y、N、Q},每一较高优先权级确定节点被作为一K算符而给出;这里代码Ti比代码Tj要优越,当代码Ti是数值代码“Y”或数值代码“N”时该K算符定义的数值代码“Y”或数值代码“N”例如是由代码Tij所得到的数值代码,而当代码Ti是数值代码“Q”时该K算符定义的由代码Tj所得到的数值代码例如是由代码Tij所得到的数值代码。
另外,在本发明的该算术和逻辑单元中,分别当判定“真”的结果被定义为数值代码“Y”,判定“假”的结果被定义为数值代码“N”,和判定“即不是真也不是假或不知道”的结果被定义为数值代码“Q”时,为了从二个代码中获取一代码Tij∈{Y、N、Q},也就是从较高有效位的判定节的判定结果得到代码Ti∈{Y、N、Q}而从较低有效位的判定节点的判定结点得到代码Tj∈{Y、N、Q},每一较高优先权级确定节点被作为一K算符而给出;这里代码Ti比代码Tj要优越,当由二位二进制数(X,1,X,0)所赋值的任何代码X将数值代码“Y”定义为{11},将数据代码“N”定义为{10},和将数值代码“Q”定义为{0*}(这里,“*”是“不小心”),一“或”逻辑由“+”算符表示,一“与”逻辑由“·”算符表示,和一负逻辑由“^”算符表示时,则K算符由下式给出:
TiKTj=Tij
(Ti,1,Tj,0)K(Tj,1,Tj,0)=(Tij,1,Tij,0)
=(Ti,1+Tj,1,Ti,1·Ti,0+^Ti,1·Tj,0)。
另外,在本发明的该算术和逻辑单元中,从第一数字到第n-1数字的判定节点每一个具有一用来获得数值Xai和数值Ybi的“同”逻辑并输出例如代码Ti,1的结果的“同”逻辑装置和一用来输出例如代码Ti,0的数值Xai的连接装置或一用来输出例如代码Ti,0的数值Ybi的连接装置;第0数字的判定节点具有一用来获得数值Xao和数值Ybo的“或非”逻辑的“或非”逻辑装置,一用来获得数值Xao和数值Ybo的“与非”逻辑的“与非”逻辑装置,和一用来获得分别当输入到该算术和逻辑单元的进位是“1”时选择该“或非”逻辑装置的输出和当进位输入是“0”时选择该“与非”逻辑装置的输出所得到的结果的负逻辑并且输出例如代码T0,0的结果而不输出代码T0,1的选择装置;在该较高优先权级确定节点之中不包括伪程序节点,从最初由第0数字的判定节点输出的代码T0,1中未产生的每一较高优先权级确定节点具有一用来获得代码Ti,1和代码Tj,1的“或”逻辑并输出代码Tij,1的结果的“或”逻辑装置和一用来分别当代码Ti,1是“1”时选择代码Ti,0而当代码Ti,1是“0”时选择代码Tj,0并且输出例如代码Tij,0的结果的选择装置;在该较高优先权级确定节点之中不包括伪程序节点,从最初由第0数字的判定节点输出的代码T0,1中产生的较高优先权级确定节点具有一用来分别当代码Ti,1是“1”时选择代码Ti,0而当代码Ti,1是“0”时选择代码Tj,0并且输出例如代码Tij,0的结果而不输出代码Tij,1的选择装置;第m列的第n-1行的较高优先权级确定节点的输出代码Tij,0被用作该要求和逻辑单元的进位输出并且当输出代码Tij,0是“1”时它被解释为“存在一进位输出”而当输出代码Tij,0是“0”时解释为“不存在进位输出”;该算术和逻辑单元具有一用来获得数值Xao和数值Ybo的“异或”逻辑和第0数字的“异或”逻辑装置;和该和产生装置具有一用来获得第0数字的“异或”逻辑装置的输出的“异或”逻辑并进位输入到该算术和逻辑单元并定义其为第0数字的总和的第0行的“异或”逻辑装置,一用来获得在第0数字的判定节点的输出代码T0,0和第一数字的判定节点的输出代码T1,1的负逻辑之间的“异或”逻辑并且定义其为第一数字的总和的结果的第一行的“异或”逻辑装置,一用来分别当第f数字(f=从2至n-1的偶数)的判定节点的输出代码Tf,1是“1”时选择输入数值Xaf或Ybf到该行而当输出代码Tf,1是“0”时选择第f-1行的较高优先权级确定节点的输出代码并且输出例如进位到第f+1数字的结果的第f行位产生装置,一用来获得在第f数字的判定节点的输出代码Tf,1的负逻辑和第f-1行的较高优先权级确定节点的输出代码之间的“异或”逻辑并且将其定义为第f数字的总和的结果的第f行的“异或”逻辑装置,和一用来获得在第f+1数字的判定节点的输出代码Tf+1,1的负逻辑和第f行的进位产生装置的输出之间的“异或”逻辑并且将其定义为第f+1数字的总和的结果的第f+1行的“异或”逻辑装置。
另外,在本发明的该算术和逻辑单元中,从第一数字到第n-1数字的判定节点每一个具有一用来获得数值Xai和数值Ybi的“同”逻辑并且输入例如代码Ti,1的结果的“同”逻辑装置,一用来输出例如代码Ti,0的数值Xai的连接装置或一用来输出例如代码Ti,0的数值Ybi的连接装置;第0数字的判定节点具有一用来获得数值Xao和数值Ybo的“或非”逻辑的“或非”逻辑装置,一用来获得数值Xao和数值Ybo的“与非”逻辑的“与非”逻辑装置,和一用来获得通过分别当输入到该算术和逻辑单元的进位是“1”时选择“或非”逻辑装置的输出而当进位输入是“0”时选择“与非”逻辑装置的输出的负逻辑并且输出例如代码T0,0的结果而不输出代码T0,1的结果的选择装置;第K列的第一至2K-1-1(K=2至m)奇数行的较高优先权级确定节点被定义为伪程序节点,分别对第一至2K-1-1奇数行的较高优先仅级确定节点的判定结果反相并且传送相同;在第m-p列(p是一由p=0至m-1所指明的一偶数)的较高优先权级确定节点之中不包括有该伪程序节点,从最初由第0数字的制定节点输出的代码T0,1中未产生的每一较高优先权级确定节点具有一用来获得代码Ti,1和代码Tj,1的“或非”逻辑并且输出例如代码^Tij,1的结果的“或非”逻辑装置和一用来获得通过分别当代码Ti,1是“1”时选择代码Ti,0而当代码Ti,1是“0”时选择代码Tj,0所得结果的负逻辑并且输出例如代码^Tij,0的结果的选择装置;在第m-q列(q是由q=1至m-1所的一奇数)的较高优先权级确定节点之中不包括该伪程序节点,从最初由第0数字的判定节点输出的代码T0,1中不产生的每一较高优先权级确定节点具有一用来获得代码^Ti,1和代码^Tj,1的“与非”逻辑并且输出例如代码Tij,1的结果的“与非”逻辑装置和一用来通过分别当代码^Ti,1是“0”时选择代码^Ti,0而当代码^Ti,1是“1”时选择代码^Tj,0所得到的结果的负逻辑并且输出例如代码Tij,0的结果的第三选择装置;在第m-p列(p是由p=0至m-1所表示的一偶数)的较高优先级确定节点之中不包括该伪程序节点,从最初由第0数字的判定节点输出的代码T0,1中产生的该较高优先级确定节点具有一用来通过分别当代码Ti,1是“1”时选择代码Ti,0而当代码Ti,1是“0”时选择代码Tj,0所得到的结果的负逻辑并且输出例如代码^Tij,0的结果而不输出代码Tij,1的第二选择装置;在第m-q(q是由q=1至m-1所表示的一奇数)的较高优先权级节点之中不包括该伪程序节点,从原来由第0数字的判定节点输出的代码T0,1中产生的较高优先级确定节点具有一用来获得通过分别当代码^Ti,1是“0”时选择代码^Ti,0而当代码^Ti,1是“1”时选择代码Tj,0所得到的结果的负逻辑并且输出例如代码Tij,0的结果而不输出代码Tij,1的第三选择装置;当m是一偶数时,第m列的第n-1行的较高优先权级确定节点的输出代码Tij,0被用作该算术和逻辑单元的进位输出并且分别解释为当输出代码Tij,0是“1”时为“存在有一进位输出”和当输出代码Tij,0是“0”时为“不存在有进位输出”;和当m是一奇数时,通过获得第m列的第n-1行的较高优先权级确定节点的输出代码^Tij,0的负逻辑所得到的输出代码Tij,0被用作该算术和逻辑单元的进位输出并且分别被解释为当输出代码Tij,0是“1”时为“存在一进位输出”和当输出代码是“0”时为“不存在进位输出”;该算术和逻辑单元具有一用来获得数值Xao和数值Ybo的“异或”逻辑的第0数字的“异或”逻辑装置和总和产生装置;当m是一偶数时,该总和产生装置具有用来获得第0数字的“异或”逻辑装置的输出的“异或”逻辑的第0行的“异或”并进位输入到该算术和逻辑单元并将其定义为第0数字的总和的结果,用来获得在第0数字的判定节点的输出代码T0,0和第一数字的判定节点的输出代码T1,1的负逻辑之间的“异或”逻辑并将其定义为第一数字的总和的结果的第一行的“异或”逻辑装置,用来获得分别当第f数字(f=从2至n-1的偶数)的判定节点的输出代码Tf,1是“1”时选择到行的输入数值Xaf或Ybf而当输出代码Tf,1是“0”时选择较高优先权级确定节点的输出代码的“异或”逻辑并且输出例如一进位到第f+1数字的第f行的进位产生装置,用来获得在第f+1数字的判定节点的输出代码Tf+1,1的负逻辑和第f行的进位产生装置的输出之间的“异或”逻辑并且将其定义为第f+1数字的总和的结果的第f+1行的“异或”逻辑装置,同时,当m是一奇数时,具有一用来获得第0数字的“异或”逻辑装置的输出的“异或”逻辑并进位输入到该算术和逻辑单元并将其定义为第0数字的总和的结果的第0行“异或”逻辑装置,一用来获得在第0数字的判定节点的输出代码T0,0和第一数字的判定节点的输出代码T1,1的负逻辑之间的“异或”逻辑并且将其定义为第一数字的总和的结果的第一行的“异或”逻辑并且将其定义为第一数字的总和的结果的第一行的“异或”逻辑装置,一用来分别当第f数字(f=从2至n-1的偶数)的判定节点输出代码Tf,1是“1”时选择到该行的输入数值Xaf或Ybf而当输出代码Tf,1是“0”时选择第f-1行的较高优先权级确定节点的输出代码的负逻辑并且输出例如进位到第f+1数字的结果的第f行进位产生装置,一用来获得在第f数字的判定节点的输出代码Tf,1的负逻辑和第f-1行的较高优先权级的输出代码的负逻辑之间的“异或”逻辑并且将其定义为第f数字的总和的结果的第f行的“异或”逻辑装置,一用来获得在第f+1数字的判定节点的输出代码Tf+1,1的负逻辑和第f行的进位产生装置的输出之间的“异或”逻辑并且将其定义为第f+1数字的总和的结果的第f+1行的“异或”逻辑装置。
另外,在本发明的该算术和逻辑单元中,从第一数字至第n-1数字的判定节点每一个具有一用来获得数值Xai和数值Ybi的“同”逻辑并输出例如代码Ti,1的结果的“同”逻辑装置和一用来输出例如代码Ti,0的数值Xai的连接装置或用来输出例如代码Ti,0的数值Ybi的连接装置;第0数字的判定节点具有一用来获得数值Xao和数值Ybo的“或非”逻辑的“或非”逻辑装置,一用来获得数值Xao和数值Ybo的与“与非”逻辑的“与非”逻辑装置,和一用来获取通过分别与输入到该算术和逻辑单元的进位是“1”时选择该“或非”逻辑装置的输出而当进位输入是“0”时选择该“与非”逻辑装置的输出所得到的结果的负逻辑并且输出例如码T0,0的结果而不是输出代码T0,1的结果的选择装置;在这些不包括有伪程序节点的较高优先权级确定节点之中,从最初由第0数字的判定节点输出的代码T0,1中不产生的每一较高优先权级确定节点具有一用来获得代码Ti,1和代码Tj,1的“或”逻辑并输出例如代码Tij,1的结果的“或”逻辑装置和一用来分别当代码Ti,1是“1”时选择代码Ti,0而当代码Ti,1“0”时选择代码Tj,0并且输出例如代码Tij,0的结果的选择装置;在不包括有伪程序节点的该较高优先权级确定节点之中,从最初由第0数字的判定节点输出的代码T0,1中产生的较高优先权级确定节点具有一用来分别当代码Ti,1是“1”时选择代码Ti,0而当代码Ti,1是“0”时选择代码Tj,0并且输出例如代码Tij,0的结果而不输出代码Tij,1的选择装置;第m列的第n-1行的较高优先权级确定节点的输出代码Tij,0被用作为该算术和逻辑单元的进位输出并且它被分别解释为当输出代码Tij,0是“1”时为“存在一进位输出”而当输出代码Tij,0是“0”时为“不存在有进位输出”;该算术和逻辑单元具有一用来获得数值Xao和数值Ybo的“异或”逻辑的第0数字的“异或”逻辑装置和总和产生装置;该总和产生装置具有一用来获得第0数字的“异或”逻辑装置的输出的“异或”逻辑并进位输入到该算术和逻辑单元和将其定义为第0数字的总和的结果,一用来获得在第0数字的判定节点的输出代码T0,0和第一数字的判定节点的输出代码T1,1的负逻辑之间的“异或”逻辑并且将其定义为第一数字的总和的结果的第一行的“异或”逻辑装置,一用来获得通过分别与第f数字(f=从2至n-1的偶数)的判定节点的输出代码Tf,1是“1”时选择对于该行的数值Xaf或Ybf而当输出代码Tf,1是“0”时选择第f-1行的较高优先权级确定节点的输出所得到结果的负逻辑并且输出例如进位到第f+1数字的结果的第f行的进位产生装置,一用来获得在第f数字的判定节点的输出代码Tf,1和第f-1行的较高优先权级确定节点的输出代码之间的“同”逻辑并且将其定义为第f数字的总和的结果的第f行的“同”逻辑装置,和一用来获得在第f+1数字判定节点的输出代码Tf+1,1和第f行的进位产生装置的输出之间的“异或”逻辑并且将其定义为第f+1数字的总和的结果的第f+1行的“异或”逻辑装置。
另外,在本发明的该算术和逻辑单元中,从第一数字到第n-1数字的判定节点具有一用来获得数值Xai和数值Ybi的“同”逻辑并且输出例如代码Ti,1的结果的“同”逻辑装置和一用来输出例如代码Ti,0的数值Xai的连接装置或一用来输出例如代码Ti,0的数值Ybi的连接装置;第0数字的判定节点具有一用来获得数值Xao和数值Ybo的“或非”逻辑的“或非”逻辑装置,一用来获得数值Xao和数值Ybo的“与非”逻辑的“与非”逻辑装置,和一用来获得通过分别当输入到该算术和逻辑单元的进位为“1”时选择“或非”逻辑装置的输出而当进位输入是“0”时选择“与非”逻辑装置的输出所得到的结果的负逻辑并且输出例如代码T0,0的结果而不输出代码T0,1的选择装置;在不包括该伪程序节点的较高优先权级确定节点中,从最初由第0数字的判定节点输出的代码T0,1中不产生的每一较高优先权级确定节点具有一用来获得代码Ti,1和代码Tj,1的“或”逻辑并输入代码Tij,1结果的“或”逻辑装置和用来分别当代码Ti,1是“1”时选择代码Ti,0而当代码Ti,1是“0”时选择代码Tj,0并且输出例如代码Tij,0的结果的选择装置;在不包括该伪程序节点的较高优先权级确定节点之中,从最初由第0数字判定节点输出的代码T0,1中产生的较高优先权级确定节点具有一用来分别当代码Ti,1是“1”时选择代码Ti,0而当代码Ti,1是“0”时选择代码Tj,0并输出例如代码Tij,0结果而不输出代码Tij,1结果的选择装置;第m列的第n-1行的较高优先权级确定节点的输出代码Tij,0被用作该算术和和逻辑单元的进位输出并且分别解释为当输出代码Tij,0是“1”时为“存在有一进位输出”和当输出代码Tij,0是“0”时为“不存在进位输出”;该算术和逻辑单元具有一用来获得数值Xao和数值Ybo的“异或”逻辑的“异或”逻辑装置和一总和产生装置;和该总和产生装置具有一用来获得第0数字的“异或”逻辑装置的输出的“异或”逻辑并且进位输入到该算术和逻辑单元和将其定义为第0数字的总和的结果的第0行的“异或”逻辑装置,一用来获得在第0数字的判定节点的输出代码T0,0和第一数字的判定节点的输出代码T1,1的负逻辑之间的“异或”逻辑并将其定义为第一数字的总和的结果的第一行的“异或”逻辑装置,一用来获取在第f数字(f=从2至n-1的偶数)的判定节点的输出代码Tf,1之间的“与非”逻辑并且向该行输入数值Xaf和Ybf的“与非”逻辑装置,一用来获得第f+1数字的判定节点的输出代码Tf+1,1和该“与非”逻辑装置的输出的“异或”逻辑并且输出第f+1行的第0选择信号的“异或”逻辑装置,一用来获得在第f数字的判定节点的输出代码Tf,1和第f+1的第0选择信号之间的“同”逻辑并且输出第f+1行的第一选择信号的“同”逻辑装置一用来获得在第f数字的判定节点的输出代码Tf,1和第f-1行的较高优先权级确定节点的输出代码之间的“同”逻辑并且将其作为第f数字的总和的结果的“同”逻辑装置,和一用来获得通过分别当第f-1行的较高优先权级确定节点的输出代码是“1”时选择第f+1行的第一选择信号而当输出代码“0”时选择第f+1行的第0选择信号所得到结果的负逻辑并且定义第f+1数字的总和的结果作为结果的第f+1行的总和产生选择装置。
另外,在本发明的该算术和逻辑单元中,当对于在二个n位二进制数的相减(Xa-Yb)中二个数的数字(Xai,Ybi;i=0至n-1)一借位的存在的判定构成一系列具有一次序相关的判定时,每一判定节点具有一用来获得数值Xai和数值Yb的“异或”逻辑并且输出例如代码Ti,1的结果的“异或”逻辑装置和一用来输出例如代码Ti,0的数值Ybi的连接装置。
另外,在本发明的该算术和逻辑单元中,对于二个数的LSB(最小有效位)执行一借位的存在的判定的判定节点具有一用来获得数值Xao和数值Ybo的负逻辑的^Xao的“或非”逻辑的“或非”逻辑装置,一用来获得数值Xao和数值Ybo的负逻辑的^Xao的“与非”逻辑的“与非”逻辑装置,和一用来获得通过分别与输入到该算术和逻辑单元的借位是“1”时选择“或非”逻辑装置的输出而与当该借位输入是“0”时选择“与非”逻辑装置的输出所得到结果的负逻辑并且输出例如代码T0,0的结果而不输出代码T0,1的结果的选择装置。
另外,在本发明的该算术和逻辑单元中,在该较高优先权级确定节点之中从最初由对二个数的LSB执行一借位的存在的判定的判定节点输出的代码T0,1中不产生的每一较高优先权级确定节点具有一用来获得代码Ti,1和代码Tj,1的“或”逻辑并且输出例如代码Tij,1的结果的“或”逻辑装置和一用来分别当代码Ti,1是“0”时选择代码Tj,0并且输出例如代码Tij,0的结果的选择装置;在该较高优先权级确定节点之中从最初由对二个数的LSB执行一借位的存在的判定的判定节点输出的代码T0,1中产生的该较高优先权级确定节点具有一用来分别当代码Ti,1是“1”时选择代码Ti,0而当代码Ti,1是“0”时选择代码Tj,0并且输出例如代码Tij,0的结果而不输出代码Tij,1的结果的选择装置;和它分别被解释为当作为二进制树的根的较高优先权级确定节点输出代码Tij,0是“1”时为“存在一借位输出”而当输出代码Tij,0是“0”时为“不存在有借位输出”。
另外,在本发明的该算术和逻辑单元中,当不包括剩余二进制树的高处m(m是超过log2n的最小整数)的子二进制树具有用作深处m的节点的较高优先权级确定节点的Nm(Nm是超过n/2的最小整数)数的用作一深处S(S是由S=1至m-1所表示的一整数)较高优先权级确定节点的Ns(Ns是超过Ns+1/2的最小整数)数时,从最初在该子二进制树的深处m-p(p是由p=0至m-1所指明的一偶数)处用作节点的较高优先权级确定节点中由对于二个数的LSB执行该借位存在的判定的判定节点所输出的代码T0,1中不产生的每一较高优先权级确定节点具有一用来获得代码Ti,1和代码Tj,1的“或非”逻辑并输出例如代码^Tij,1的结果的“或非”逻辑装置和一用来获得通过分别当代码Ti,1是“1”时选择代码Ti,0和当代码Ti,1是“0”时选择代码Tj,0所得到结果的负逻辑并且输出例如代码^Tij,0的结果的第二选择装置;从最初在该子二进制树的深处m-q(q是由q=0至m-1所指明的一奇数)处用作节点的较高优先权级确定节点之中由对于二个数的LSB执行该借位存在的判定的判定节点所输出的代码T0,1中不产生的每一较高优先权确定节点具有一用来获得代码^Ti,1和代码Tj,1的“与非”逻辑并且输出例如代码Tij,1的结果的“与非”逻辑装置和一用来获得通过分别当代码^Ti,1是“0”时选择代码^Ti,0而当代码^Ti,1是“1”时选择代码^Tj,0所得到的结果的负逻辑并且输出例如代码Tij,0的结果的第三选择装置;从最初在该子二进制树的深处m-p(p是由p=0至m-1所指明的一偶数)处用作节点的较高优先权级确定节点之中由对二个数的LSB执行借位存在的判定的判定节点所输出的代码T0,1中产生的较高优先权级确定节点具有用来获得通过分别当代码Ti,1是“1”时选择代码Ti,0而当代码Ti,1是“0”时选择代码Tj,0所得到的结果的负逻辑并且输出例如代码^Tij,0的结果而不输出代码Tij,1的结果的第二选择装置;从最初在该子二进制树的深处m-q(q是由q=0至m-1所指明的一奇数)处用作节点的较高优先权级确定节点之中由对二个数的LSB执行借位存在的判定的判定节点所输出的代码T0,1中产生的较高较先权级确定节点具有一用来获得通过分别当代码^Ti,1是“0”时选择代码^Ti,0而当代码^Ti,1是“1”时选择代码^Tj,0所得到的结果的负逻辑并且输出例如代码Tij,0的结果而不输出代码Tij,1的结果的第三选择装置;当m是一偶数时,它被分别解释为当用作第二进制树的根的较高优先权级确定节点的输出代码Tij,0是“1”时解释为“不存在一借位输出”而当输出代码Tij,0是“0”时解释为“不存在借位输出”;并且与m是一奇数时,它被分别解释为当用作该二进制树的根的较高优先权级确定节眯的输出代码^Tij,0是“0”时解释为“存在有一借位输出”而当输出代码^Tij,0是“1”时解释为“不存在借位输出”。
另外,在本发明的该算术和逻辑单元中,当对于在二个n位二进制数的相减中(Xa-Yb)构成一系列具有一次序相关的判定的数字(Xai,Ybi;i=0至n-1)的一借位存在的判定时,它具有n个判定节点,根据二个数的数值Xai,Ybi和由n行和具有相应于二个数的数字的行数的m列(m是超过log2n的最小整数)所构成的一较高优先数级确定节点矩阵n个判定节点分别地当所安置的相同数字的二个数的差的结果变为负时输出“真或假”,与该结果变为正时输出“假或真”,和当例如判定的结果变为0时输出“即不是真也不是假或不知道”;第一列的较高优先数级确定节点组具有作为用来传送第0数据的判定节点的判定结果的一伪程序节点的第0行的一较高优先数级确定节点的第h1-1数字和第h1(h1=1至n-1)数字的判定节点的判定结果作为它的输入的第h1行的一较高优先数级确定节点,当第h1数字的判定节点的判定结果是“真”或“假”时输出第h1数字的判定节点的判定结果作为其结果,和当第h1数字的判定节点的判定结果是“即不真也不假或不知道”时输出第h1-1数字的判定节点的判定结果作为其结果;第K列(K=2至m)的较高优先数级节点组具有例如用来分别传送从第0行至第2K-1-1行的较高优先数级确定节点的判定结果的伪程序节点的从第0行到第2k-1行的较高优先数级确定节点和接收第hk-2k-1行的较高优先数级确定节点以及第hK行(hk=2k-1至n-1)的较高优先数级确定节点的判定结果作为它的输入的第hk行的一较高优先数级确定节点,当第hk行的较高优先数级调节节点的判定结果是“真”或“假”时输出第hk行的较高优行数级确定节点的判定结果作为其结果,和为第hk行的较高优先数级确定节点的判定结果是“即不是真也不是假或不知道”时输出第hk-2k-1行的较高优先数级确定节点的判定结果作为其结果;和n个判定节点和这些列的较高优先权级组分别同时被处理。
另外,在本发明的该算术和逻辑单元中,当分别将判定“真”的结果定义为数值代码“Y”、将“假”定义为数值代码“N”将“即不是真或不是假或不知道”定义为数值代码“Q”时,为了从二个代码中获得一代码Tij∈{Y,N,Q},即从较高有效位的判定节点的判定结果获得代码Ti∈{Y,N,Q}和从较低有效位的判定结果获得代码Tj∈{Y,N,Q},每一较高优先权级确定节点给出一例如K算符;并且在其中代码Ti是优于代码Tj,当为代码Ti是数值代码“Y”或数值代码“N”时一K算符定义例如由代码Tij所得到的数值代码的数值代码“Y”或数值代码“N”,而当代码Ti是数据代码“Q”时K算符定义例如由代码Tij所得到的数值代码的由代码Tj所得到的数值代码。
另外,在本发明的该算术和逻辑单元中,分别当判定“真”的结果被定义为数值代码“Y”、判定“假”的结果被定义为数值代码“N”、判定“即不是真也不是假或不知道”的结果被定义为数值代码“Q”时,为了从二个代码中获得一代码Tij∈{Y,N,Q},也就是从较高有效位的判定节点的判定结果获得代码Ti∈{Y,N,Q}和从较低有效位的判定节点的判定结果获得代码Tj∈{Y,N,Q},每一较高优先权级确定节点给出例如一K算符;和其中代码Ti是优于代码Tj,当由一二位二进制数(X,1,X,0)可赋值的任何代码X将数值代码“Y”定义为{11},将数值代码“N”定为为{10},和将数值代码“Q”定义为{0**}(这里,“*”是“不小心”),一“或”逻辑由一“+”算符来表示,一“与”逻辑由一“·”算符来表示,和一负逻辑由一“^”算符来表示时,K算符由下式给出:
TiKTj=Tij
(Ti,1,Ti,0)K(Tj,1,Tj,0)=(Tij,1,Tij,0)
=(Ti,1+Tj,1,Ti,1·Ti,0+^Ti,1·Tj,0)。
另外,在本发明的该算术和逻辑单元中,其中从第一数字到第n-1数字的判定节点具有一用来获得数值Kai和数值Ybi的“异或”逻辑并且输出例如代码Ti,1的结果的“异或”逻辑装置和一用来输出例如代码Ti,0的数值Ybi的连接装置;第0数字的判定节点具有一用来获得数值Xao和数值Ybo的负逻辑的^Xao的“或非”逻辑的“或非”逻辑装置,一用来获得数值Xao和数值Ybo的负逻辑的^Xao的“与非”逻辑的“与非”逻辑装置,和一用来获得通过分别当输入到该算术和逻辑单元中的借位是“1”时选择“或非”逻辑装置的输出而当借位输入为“0”时选择“与非”逻辑装置的输出所得到结果的负逻辑并且输出例如代码T0,0的结果而不输出代码T0,1的结果的选择装置,在不包括该伪程序节点的较高优先权级确定节点之中,从原来由第0数字的判定节点输出中不产生代码T0,1的较高优先级级确定节点之中具有一个用来获得代码Ti,1和代码Tj,1的“或”逻辑并且输出代码Tij,1的结果的“或”逻辑装置和一用来分别为代码Ti,1是“1”时选择代码Ti,0而为代码Ti,1是“0”时选择代码Tj,0并且输出例如代码Tij,0的结果的选择装置;在不包括该伪程序节点的较高优先权级确定节点中,从原来由第0数字的判定节点输出的代码T0,1中产生的较高优先权级确定节点具有一用来分别当代码Ti,1是“1”时选择代码Ti,0而当代码Ti,1是“0”时选择代码Tj,0并且输出例如代码Tij,0的结果而不输出代码Tij,1的结果的选择装置;和从第m列的第0行至第n-1行的较高优先权级确定节点的一输出代码Tij,0被用作为第一数字至第n-1数字和该算术和逻辑单元的的进位输出,并且它分别被解释为当该输出代码Tij,0是“1”时为“存在一借位输出”而当该输出代码Tij,0是“0”时为“不存在借位输出”。
另外,在本发明的该算术和逻辑单元中,有一用来获得数值Xao和数值Ybo的“异或”逻辑的第0数字的“异或”逻辑装置和一提供有一用来获取第0数字的“异或”逻辑装置的输出“异或”逻辑并进位输入到该算术和逻辑单元并将其定义为第0数字的差的结果的“异或”逻辑装置的总和产生装置和用来获得在从第一数字到第n-1数字的判定节点每一输出代码Ti,1与从第m列的第0行到第n-2行的较高优先权级确定节点的每一输出代码Tij,0之间的“异或”逻辑并且将其定义为第一数字至第n-1数字的差的结果的从第1行至第n-1行的“异或”逻辑装置。
另外,在本发明的该算术和逻辑单元中,从第一数字至第n-1数字的判定节点的每一个具有一用来获得数值Xai和数值Ybi的“异或”逻辑并输出例如代码Ti,1的结果的“异或”逻辑装置和一用来输出例如代码Ti,0的数值Ybi的连接装置;第0数字的判定节点具有一用来获得例如数值Xao和数值Ybo的负逻辑的^Xao的“或非”逻辑的“或非”逻辑装置,一用来获得例如数值Xao和数值Ybo的负逻辑的^Xao的“与非”逻辑的“与非”逻辑装置,和一用来获得通过分别当输入到该算术和逻辑单元的借位是“1”时选择“或非”逻辑装置的输出而当借位输入是“0”时选择“与非”逻辑装置的输出所得结果的负逻辑并且输出例如代码T0,0的结果而不输出代码T0,1结果的选择装置;第一列的第0行的较高优先权级确定节点和第k列的从0行至第2K-1行(K=2至m)的较高优先权级确定节点被定义为伪程序节点,这些伪程序节点使第0数字的判定节点的判定结果和从第0行至第2k-1-1行的较高优先权级确定节点的判定结果反相并且传送是相同的;在不包括该伪程度节点的第m-p(p是一由p=0至m-1所指明的偶数)的较高优先权级确定节点之中,从原来由第0数字优先权级确定节点具有一用来获得代码Ti,1和代码Tj,1的“或非”逻辑并且输出例如代码^Tij,1的结果的“或非”逻辑装置,和一用来获得通过分别当代码Ti,1是“1”时选择代码Ti,0而当代码Ti,1是“0”时选择代码Tj,0所得到的结果负逻辑并且输出例如代码^Ti j,0的结果的第二选择装置;在不包括该伪程序节点的第m-q列(q是由q=1至m-1所指明的一奇数)的较高优先权级确定节点之中,从原来由第0数字的判定节点输出的代码T0,1中不产生的每一较高优先权级确定节点具有一用来获得代码^Ti,1和代码^Tj,1的“与非”逻辑并且输出例如代码Tij,1的结果的“与非”逻辑装置和用来获得通过分别当代码^Ti,1是“0”时选择代码^Ti,0而当代码^Ti,1是“1”时选择代码^Tj,0所得到结果的负逻辑并且输出例如代码Tij,0的结果的第三选择装置;在不包括该伪程序节点的第m-p列(p是一由p=0至m-1所指明的一偶数)的较高优先权级确定节点之中,从原来由第0数字的判定节点输出的代码T0,1中产生的较高优先权级确定节点具有一用来获得通过分别当代码Ti,1是“1”时选择代码Ti,0而当代码Ti,1是“0”时选择代码Tj,0所得到的结果的负逻辑并且输出例如代码^Tij,0的结果而不输出代码Tij,1的结果的第二选择装置;在不包括该伪程序节点的第m-q列(q是由q=1至m-1所指明的一奇数)的较高优先权级确定节点之中,从原来由第0数字的判定节点输出的代码T0,1中产生的较高优先权级确定节点具有一用来获得通过分别当代码^Ti,1是“0”时选择^Ti,0而当代码^Ti,1是“1”时选择代码^Tj,0所得到的结果的负逻辑并且输出例如代码Tij,0的结果而不输出代码Tij,1的第三选择装置;当m是一偶数时,从第m列的第0行至第n-1行的较高优先权级确定节点的输出代码Tij,0被用作第一数字至第n-1数字和该算术和逻辑单元的借位输出并且它被分别解释和当输出代码Tij,0是“1”时为“存在有一借位输出”而当输出代码Tij,0是“0”时为“不存在有借位输出”;和当m是一奇数时,从第m列的第0行至第m行的较高优先权级确定节点的输出代码Tij,0被用作第一数字至第n-1数字和该算术和逻辑单元的借位输出并且它被分别解释为当输出代码^Tij,0是“0”时为“存在有一借位输出”而当输出代码^Tij,0是“1”时为“不存在有借位输出”。
另外,在本发明的该算术和逻辑单元中,当一第0数字的“异或”逻辑装置用来获得数值Xao和数值Ybo的“异或”逻辑时和为m是一偶数时,一差值产生装置提供有一用来获得第0数字的“异或”逻辑的输出的“异或”逻辑并且进位输入到该算术和逻辑单元并将其定义为第0数字的差的结果的第0行的“异或”逻辑装置和用来获得在从第一数字至第n-1数字的判定节点的每一输出代码Ti,1和从第m列的第0行至第n-2行的较高优先权级确定节点的每一输出代码Tij,0之间的“异或”逻辑并且将其定义为第一数字至第n-1数字的差的结果的从第一行至第n-1行的“异或”逻辑,并且,当m是一奇数时,一差值产生装置提供有一用来获得第0数字的“异或”逻辑装置的输出的“异或”逻辑并且借位输入到该算术和逻辑单元并将其定义为第0数字的差的结果的第0行“异或”逻辑装置和用来获得在从第一数字至第n-1数字的判定节点的第一输出代码Ti,1和从第m列的第0行至第n-2行的较高优先权级确定节点的输出代码^Tij,0的每一负逻辑之间的“异或”逻辑并且将其定义为第一数字至第n-1数字之和的结果的从第一行至第n-1行的“异或”逻辑装置。
另外,在本发明的该算术和逻辑单元中,当对于在二个n位二进制数的相减中(Xa-Yb)构成一系列具有一次序相关的判定的数字(Xai,Ybi;i=0至n-1)的一借位的存在的判定时,它具有n个判定节点,这些判定节点根据二个数的数值Xai,Ybi的判定结果分别为相同数字处的二个数的差的结果变为负时输出“真或假”,当其结果变为正时输出“假或真”,而当其结果变为0时输出“即不是真也不是假或不知道”和一较高优先权级确定节点矩阵包括有n/2数的行和相应于二个数的奇数数字的行的m数列(m是超过log2 n的最小整数);第一列的较高优先权级确定节点的组具有接收第h1-1数字的判定结果和第h1数字的判定节点(h1=从1至n-1的奇数)的结果作为它的输入,当第h1数字的判定节点判定结果是“真”或“假”时输出第h1数字的判定节点的判定结果,和当第h1数字的判定节点的判定结果是“即不是真也不是假或不知道”时输出第h1-1数字的判定节点的判定结果的第h1行的较高优先权级确定节点;第k列(K=2至m)的较高优先权级确定结节具有例如用来分别传送第一至第2K-1-1奇数行的较高优先权级确定节点的判定结果的伪程序节点的从第一至第2K-1奇数行的较高优先权级确定节点和一接收第hk-2k-1行的较高优先权级确定节点和第hk行(hk=从2K-1至n-1的奇数)的较高优先权级确定节点的判定结果作为它的输入,当第hk行的较高优先权级确定节点的判定结果是“真”或“假”时输出第hk行的较高优先权级确定节点的判定结果,而与第hk行的较高优先级确定节点的判定结果是“即不是真也不是假或不知道”时输出第hk-2k-1行的较高优先级级确定节点;并且n数的确定节点和这些行的较高优先权级确定节点的组分别地同时被处理。
另外,在本发明的该算术和逻辑单元中,当分别将判定“真”的结果定义为数值代码“Y”,将“假”定义为数据代码“N”,和将“即不是真也不是假或不知道”定义为数值代码“Q”时,为了获得来自二个代码的一代码Tij∈{Y,N,Q},即来自较高有效位的判定节点的判定结果的代码Tiε{Y,N,Q}和来自较低有效位的判定节点的判定结果的代码Tjε{Y,N,Q},每一较高优先权级确定节点被给定一K算符;并且其中代码Ti优于代码Tj,当代Ti是数值代码“Y”或数值代码“N”时一K算符将数值代码“Y”或数值代码“N”定义为由代码Tij所得到的数值代码和当代码Ti是数值代码“Q”时一K算符将由代码Tj所得到的数值代码定义为由代码Tij所得到的数值代码。
另外,在本发明的该算术与逻辑单元中,当分别将判定“真”的结果定义为数值代码“Y”,将判定“假”定义为数值代码“N”,和将判定“即不是真也不是假或不知道”定义为数值代码“Q”时,为了获得来自二个代码的一代码Tij∈{Y,N,Q},即从较高有效位的判定节点的判定结果获得的代码Tiε{Y,N,Q}和从较低有效位的判定节点的判定结果获得的代码Tjε{Y,N,Q},每一较高优先权级确定节点给定一K算符,和其中代码Ti优于代码Tj,当由二位二进制数(x,1,x,0)赋值的任何代码X定义数值代码“Y”为{11},数值代码“N”为{10},和数值代码“Q”为{0*}(这里,“*”是“不小心”),“或”逻辑由“+”算符表示,“与”逻辑由“·”算符表示,和负逻辑由“^”算符表示时,该K算符由下式给出:
TiKTj=Tij
(Ti,1,Ti,0)K(Tj,1,Tj,0)=(Tij,1,Tij,0)
=(Ti,1+Tj,1,Ti,1·Ti,0+^Ti,1·Tj,0)。
另外,在本发明的该算术和逻辑单元中,从第一数字至第n-1数字的每一判定节点具有一用来获得数值Xai和数值Ybi的“异或”逻辑并输出例如代码Ti,1的结果的“异或”逻辑装置和一用来输出例如代码Ti,0的数值代码Ybi的连接装置;第0数字的判定节点具有一用来获得例如数值Xao的负逻辑^Xao和数值Ybo的“或非”逻辑的“或非”逻辑装置,一用来获得数值Xao的负逻辑^Xao和数值Ybo的“与非”逻辑的“与非”逻辑装置,和一用来获得通过分别当输入到该算术和逻辑单元的借位是“1”时选择“或非”逻辑的输出而当借位输入是“0”时选择“与非”逻辑装置的输出所得到的结果的负逻辑并且输出例如代码T0,0的结果而不输出代码T0,1的结果的选择装置;在不包括该伪程序节点的较高优先权级确定节点之中,从原来由第0数字的判定节点输出的代码T0,1中不产生的每一较高优先权级确定节点具有一用来获得代码Ti,1和代码Tj,1的“或”逻辑并且输出例如代码Tij,1的结果的“或”逻辑装置,和一用来分别当代码Ti,1是“1”时选择代码Tj,0而当代码Ti,1是“0”时选择代码Tj,0并且输出例如代码Tij,0的结果的一选择装置;在不包括该伪程序节点的较高优先权级确定节点之中,从原来由第0数字的判定节点所输出的代码T0,1产生的较高优先权级确定节点具有用来分别当代码Ti,1是“1”时选择代码Ti,0而当代码Ti,1是“0”时选择代码Tj,0,并且输出例如代码Tj,0的结果而不输出代码Tij,1的结果的选择装置;第m列的第n-1行的较高优先权级确定节点的输出代码Tij,0被用作该算术和逻辑单元的借位输出并它被解释为当输出代码Tij,0是“1”时为“存在有一借位输出”而当输出代码Tij,0是“0”时为“不存在有借位输出”,该算术和逻辑单元具有一用来获得数值Xao和数值Ybo的“异或”逻辑的第0数字的“异或”逻辑装置和一差值产生装置;和该差值产生装置具有一用来获得第0数字的“异或”装置的输出的“异或”逻辑并且借位输入到该算术和逻辑单元并将其定义为第0数字的差值的结果的第0行的“异或”逻辑装置,一用来获得在一第0数字的判定节点的输出代码T0,0和第一数字的判定节点的输出代码T1,1的负逻辑之间的“异或”逻辑并将其定义为第一数字的差值的结果的“异或”逻辑装置,一用来分别当第f数字(f=从2至n-1的偶数)的判定节点的输出代码Tf,1是“1”时选择到该行的输入数值Ybf而当输出代码Tf,1是“0”时选择第f-1行的较高优先权级确定节点的输出代码并且输出例如借位到第f+1数字的结果的第f行的借位产生装置,一用来获得在第f数字的判定节点的输出代码Tf,1和第f-1行的较高优先权级确定节点的输出代码之间的“异或”逻辑并且将其定义为第f数字的差的结果的第f行“异或”逻辑装置,和一用来获得在第f+1数字的判定节点的输出代码Tf+1和第f行的借位产生装置的输出之间的“异或”逻辑并且将其定义为第f+1数字的差的结果的第f+1行的“异或”逻辑装置。
另外,在本发明的该算术和逻辑单元中,从第一数字至第n-1数字的每一判定节点具有一用来获得数值Xai和数值Ybi的“异或”逻辑并且输出例如代码Ti,1的结果的“异或逻辑装置和一用来输出例如代码Ti,0的数值Ybi的连接装置;第0数字的判定节点具有一用来获得例如数值Xao的负逻辑^Xao和数值Ybo的“或非”逻辑的第0数字的判定节点,一用来获得例如数值Xao的负逻辑^Xao和数值Ybo的“与非”逻辑的“与非”逻辑装置,和一用来通过分别当输入到该算术和逻辑单元的借位是“1”时选择“或非”逻辑装置的输出而当该借位输入是“0”时选择“与非”逻辑装置的输出所得到的结果的负逻辑并且输出例如代码T0,0的结果而不输出代码T0,1的结果的选择装置;从第K列的第一至第2K-1-1(K=2至m)奇数行的较高优先权级确定节点被定义为伪程序节点,该伪程序节点反相从第一至2K-1-1奇数行的较高有效位优先权级确定节点的判定结果并且传送相同;在不包括该伪程序节点的第m-p列(p是由p=0至m-1所指明的一偶数)的较高优先权级确定节点之中,从最初由第0数字的判定节点输出的代码T0,1中不产生的每一较高优先权级确定节点具有一用来获得代码Ti,1和代码Tj,1的“或非”逻辑并且输出例如代码^Tij,1的结果的“或非”逻辑和一用来获得通过分别当代码Ti,1是“1”时选择代码Ti,0而当代码Ti,1是“0”时选择代码Tj,0所得结果的负逻辑并且输出例如代码^Tij,0的结果的选择装置;在不包括该伪程序节点的第m-q(q当由q=1至m-1所指明的一奇数)列的较高优先权级确定节点之中,从原来由第0数字的判定节点输出的代码T0,1中不产生的每一较高优先级确定节点具有一用来获得代码^Tij,1的结果的“与非”逻辑装置和一用来获得分别当代码^Ti,1是“0”时选择代码^Ti,0而当代码Ti,1是“1”时选择代码^Tj,0所得到的结果的负逻辑并且输出例如代码Tij,0的结果的负逻辑并且输出例如代码Tij,0的结果的第三选择装置;在不包括该伪程序节点的第m-p(P是由P=0至m-1所表明的一偶数)列的较高优先权级确定节点之中,从原来由第0数字的判定节点输出的代码T0,1中产生的较高优先级确定节点具有一用来获得分别当代码Ti,1是“1”时选择代码Ti,0而当代码Ti,1是“0”时选择代码Tj,0所得到结果的负逻辑并且输出例如代码^Tij,0的结果而不是输出代码^Tij,1的结果的第二选择装置;在不包括该伪程序节点的第m-q(q是由q=1至m-1所指明的一奇数)列的较高优先权级确定节点之中,从原来由第0数字的判定节点输出的代码T0,1中产生的较高优先权级确定节点具有用来获得分别当代码^Ti,1是“0”时选择代码^Ti,0而当代码^Ti,1是“1”时选择代码^Tj,0所得到的结果的负逻辑并且输出例如代码Tij,0的结果而不输出代码Tij,1的结果的第三选择装置;当m是一偶数时,第m列的第n-1行的较高优先权级确定节点的输出代码Tij,0被用作为该算术和逻辑单元的借位输出和它被分别解释为当输出代码Tij,0是“1”时为“存在一借位输出”而当输出代码Tij,0是“0”时为“不存在有借位输出”;和当m是一奇数时,第m列的第n-1行的较高优先权级确定节点的输出代码^Tij,0被用作为该算术和逻辑单元的借位输出并且它被分别解释为当代码^Tij,0是“0”时为“存在有一借位输出”而当代码^Tij,0是“1”时为“没有借位输出”;该算术和逻辑单元具有一用来获得数值Xao和数值Ybo的“异或”逻辑的第0数字的“异或”逻辑装置和一差值产生装置;当m是一偶数时,该差值产生装置具有一用来获得第0数字的“异或”逻辑装置的输出的“异或”逻辑并且借位输入到该算术和逻辑单元并将其定义为第0数字的差的结果的第0行的“异或”逻辑装置,一用来获得在第0数字的判定节点的输出代码T0,0和第一数字的判定节点之间的输出代码T1,1之间的“异或”逻辑并且将其定义为第一数字的差的结果的第一行的“异或”逻辑,和一用来分别当第f数字(f=从2至n-1的偶数)的判定节点的输出代码Tf,1是“1”时选择至该行的输出数值Ybf而当输出代码Tf,1是“0”时选择第f-1行的较高优先权级的输出代码并且输出例如到该第f+1数字的借位的结果的第f行的借位产生装置,一用来获得在第f数字的判定节点的输出代码Tf,1和第f-1行的较高优先权级确定节点的输出代码之间的“异或”逻辑并且将其定义为第f数字的差的结果的第f行的“异或”逻辑装置,和一用来获得在第f+1数字的判定节点的输出代码Tf+1,1和第f行的借位产生装置的输出之间的“异或”逻辑并且将其定义为第f+1数字的差的结果的第f+1行的“异或”逻辑装置,和当m是一奇数时,该差值产生装置具有一用来获得第0数字的“异或”逻辑装置的输出的“异或”逻辑并且借位输入到该算术和逻辑单元并将其定义为第0数字的差的结果的0的“异或”逻辑装置,一用来获得第0数字的判定节点的输出代码T0,0和第一数字的判定节点的输出代码T1,1之间的“异或”逻辑并且将其定义为第一数字的差的结果的第一行的“异或”逻辑装置,一用来分别当第f数字(f=从2至n-1的偶数)的判定节点的输出代码Tf,1是“1”时选择至该行的输入数值Ybf而当输出代码Tf,1是“0”时选择第f-1行的较高优先权级确定节点的输出代码的负逻辑并输出例如借位至第f+1数字的结果的第f行的借位产生装置,一用来获得在第f数字的判定节点的输出代码Tf,1和第f-1行较高优先权级确定节点的输出代码的负逻辑之间的“异或”逻辑并且将其定义为第f数字的差的结果的第f行的“异或”逻辑装置,和一用来获得在第f+1数字的判定节点的输出代码Tf+1,1和第f行的借位产生装置的输出之间的“异或”逻辑并将其定义为第f+1数字的差的结果的第f+1行的“异或”逻辑装置。
另外,本发明的该算术和逻辑单是一用来求出二个n位二进制数(Xa,Xb)的差的绝对值的算术和逻辑单元,具有一用来根据二个数的数值Xai和Ybi(i=0至n-1)的判定的结果与相同数字处的二个数的差(Xai-Ybi)的结果变为负时输出意指“真”的数值代码“Y”,当其结果变为正时输出意指“假”的数值代码“N”,和当其结果变为0时输出意指“即不是真也不是假或不知道”的数值代码“Q”的判定节点,和具有一包括有n行和相应于二个数的数字的行的m列(m是超过log2 n的最小整数),和一用来在差的绝对值操作中产生该数字的借位的借位产生单元;第一列的较高优先权级确定节点组具有一用来传送第0数字的判定节点的判定结果的例如一伪程序节点的第0行的较高优先权级确定节点和一接收第h1-1数字和第h1数字(h1=1至n-1)的判定节点的判定结果作为它的输入,当第h1数字的判定节点的判定结果是“真”或“假”时输出第h1数字的判定节点的判定结果,和当第h1数字的判定节点的判定结果是“即不是真也不是假或不知道”时输出第h1-1数字的判定节点的判定结果的第h1行的较高优先权级确定节点;第K列(K=2至m)的较高优先权级确定节点组具有用来分别传送从第0行至第2K-1-1行的较高优先权级确定节点的判定结果的作为伪程序节点的从第0行至2K-1行的较高优先权级确定节点和一接收第hk-2K-1行的较高优先权级确定节点和第hk行的较高优先权级确定节点(hk=2K-1至n-1)的判定的结果作为它的输入,当第hk行的较高优先权级的判定结果是“真”或“假”时输出第hk行的较高优先权级确定节点的判定结果,而当第hk行的较高优先权级确定节点的判定结果是“即不是真也不是假或不知道”时输出第hk-2K-1行的较高优先权级确定节点的判定结果作为结果的第hk行的较高优先权级确定节点;该借位产生单元具有一根据自第n-1行和第m列的较高优先权级确定节点所产生的第n-1数字借位产生的结果用来判断对于二个数的差(Xa-Yb)的结果的代码的代码判断装置,用来对于在其中作为代码判断装置的代码判断结果是负或负或0的代码在第m列的较高优先权级确定节点组中不包括第n-1行的较高优先权级确定节点的第0行至第n-2行的较高优行权级确定节点的输出代码分别用数值“Q”来置换数值代码“Q”,用数值代码“N”来置换数值代码“Y”和用数值代码“Y”来置换数值代码“N”并且当其结果是正或0或正时不执行置换而保留它们的第-行至第n-2行的代码置换装置,和用来和来对于第0行至第n-2行的代码置换装置的输出用数值代码“N”来置换数值代码“Q”以得到每一数字的一借位的第0行至第n-2行的一第二代码置换装置;和n个判定节点、这些行的较高优先权级确定组、和第0行至第n-2行的代码置换装置和第二代码置换装置分别被同时处理。
另外,在本发明的该算术和逻辑单元中,为了从二个代码中获得一代码Tij∈{Y,N,Q},即从较高有效位的判定节点的判定结果获得代码Ti∈{Y,N,Q}和从较低有效位的判定节点的判定结果获得代码Tj∈{Y,N,Q},每一较高优先权级确定节点给出一K算符;和一K算符定义数值代码“Y”或数值代码“N”亦由代码Tij所得到的数值代码,这里代码Ti是数值代码“Y”或数值代码“N”,并且定义由代码Tj得到的数值代码作为由代码Tij所得到的数值代码,这里代码Ti是数值代码“Q”。
另外,在本发明的该算术和逻辑单元中,为了从二个代码中获得一代码Tij∈{Y,N,Q},即从较高有效位的判定节点的判定结果获得代码Ti∈{Y,N,Q}和从较低有效位的判定的判定结果中获得代码Tj∈{Y,N,Q},每一较高优先权级确定节点给出一K算符;和这里代码Ti是优于代码Tj,当由一二位二进制数(x,1,x,0)赋值的任何代码X定义数值代码“Y”为{11},数值代码“N”为{10}和数值代码为{0*}(这里“*”是“不小心”),由一“+”算符表示“或”逻辑,由一“·”算符表示“与”逻辑和由“^”算符表示负逻辑时,一K算符由下式给出:
TiKTj=Tij
(Ti,1,Ti,0)K(Tj,1,Tj,0)=(Tij,1,Tij,0)
=(Ti,1+Tj,1,Ti,1·Ti,0+^Ti,1·Tj,0)。
另外,在本发明的该算术和逻辑单元中,每一判定节点具有一用来得到数值Xai和数值Ybi的“异或”逻辑并且输出例如代码Ti,1的结果的“异或”逻辑装置和一用来输出例如代码Ti,0的数值Ybi的连接装置;不包括该伪程序节点的每一较高优先权级确定节点具有一用来得到代码Ti,1和代码Tj,1的“或”逻辑并且输出例如代码Tij,1的结果的“或”逻辑装置和一用来分别当代码Ti,1,是“1”时选择代码Ti,0而当代码Ti,1是“0”时选择代码Tj,0并且输出例如代码Tij,0的结果的选择装置;一代码判断装置输出一代码判断信号,该代码判断信号当来自第n-1行和第m列的较高优先权级确定节点的输出代码Tij是数值代码“Y”时变为“真”、当它是数值代码“Q”或“N”时变为“假”和当它是数值代码“N”时变为“假”;第0行至第n-2行的代码置装置具有用来分别得到在来自代码判断装置的代码判断信号和第0行至第n-2行的较高优先权级确定节点的输出代码Tij,0之间的“异或”逻辑的代码置换装置;第0行至第n-2行的第二代码置换装置具有用来分别得到从第0行至第n-2行的代码置换装置的输出和从第0行至第n-2的较高优先权级确定节点的输出代码Tij,1之间的“与”逻辑的“与”逻辑装置;和该算术和逻辑单元具有一提供了一连接装置的用来定义第0数字的判定节点的输出代码Ti,1为该差值的绝对值的结果的差值产生装置和用来得到在从第一数字至第n-2数字的判定节点的每一输出代码Ti,1和从第0行至第n-2行的第二节点置换装置的每一输出之间的“异或”逻辑并且将其定义为来自第一数字至第n-1数字的差的绝对值的结果的“异或”逻辑装置。
另外,在本发明的该算术和逻辑单元中,当该算术和逻辑单元存在用来获得二个代码方向n位二进制数(Xa,Xb)的一差的绝对值的操作时,该判定节点执行对于分别处理例如数值Ybn-1的数值Xan-1和处理例如数值Xan-1的数值Ybn-1的二个数的MSB(最高有效位)的判定的比较。
在本发明的该算术和逻辑单元和操作方法中,当解算一包括一系列具有一次序相关的判定的问题时,通过将不具有相关输入/输出的判定节点定义为剩余节点而将除剩余节点之外的节点规定为较高优先权级判定节点的一二进制树建立一模式,进行并联处理,并且将用作该二进制树的根的该较高优先权级判定节点的工作结论作为该问题的结论。
进而,在本发明的该算术和逻辑单元和操作方法中,当转换一具有一次序相关的判定的串行结构时,该具有一次序相关的判定的串行结构是由具有在相关输入/输出的判定节点之间的相对次序的关系、具有较高有效位总是“有效”的一相关输入/输出的判定节点的相关输入、和具有置于一较高有效位的一相关输入/输出的判定节点的相关输出所构成,具有位于一较低有效位的一相关输入/输出的一判定节点的相关输入从具有一相关输入/输出的那个判定节点连接到将不具有相关输入/输出的判定节点定义为剩余节点和将较高优先级确定节点定义为除剩余节点之外的节点的一二进制树结构,具有相关输入/输出的判定由提供涵义判定节点和不定代码产生节点的不具有相关输入/输出的判定节点所置换。
在逻辑人工智能中常见具有一次序相关的串行判定结构。在这种串行结构中,它必须以一予定的次序执行若干判定。并行处理是不可能实现的。当置换带有一处理顺序以实现一处理程序等的这样一种结构时,处理时间变得非常长,在最坏情况下,用于判定处理的处理时间“n”之和为“n”。进而,当置换带有逻辑电路以实现一算术和逻辑电路的串行结构时,该算术和逻辑单元的临界路径的步长数变得非长大。根据本发明,通过将一具有顺序相关的判定的串行结构转换成一二进制树结构,在最高速率处理变为可能时该处理时间变为超过log2 n的最小整数之和。进而,一高速算术和逻辑单元的获得使得有效地执行并行处理成为可能。
进而,在本发明的该算术和逻辑单元和操作方法中,当解算包括一具有一次序相关的一系列判定的问题时,根据一个或多个输入信息通过用于作为判定结果的“真”、“假”和“即不是真也不是假或不知道”的任何判定输出的具有一叶片的一判定节点或处理建立一模式并且用于作为剩余节点的判定的所有判定节点或处理被并行处理。
进而,本发明的该算术和逻辑单元方法可应用于这种情况,即当比较任何二个R-nary n-数字数时用于每一二数的数字的比较判定构成一系列具有一次序相关的判定。如果所构成该单元和方法使得由该比较的三元代码产生问题所产生的三元代码输入到该三元代码二进制树,也就是,通过构成它们使得该判定节点用作与相同数字处的二数的差的结果变为正时输出“真或假”、当该结变为负时输出“假或真”、和当该结果变为0时输出“即不是真也不是假或不知道”的二进制树的每一输出的剩余节点,它可能获得一正确的比较结果。也就是,该比较的三元代码产生问题不限于二进制数而可应用于任何R-nary数。通过应用一该比较的三元代码产生问题,它可能获得用于任何R-nary数的一比较程序或比较器。进而,过去序0(n)的时间所使用的处理可以在该对数次序0(log2 n)的时间来处理。
进而,本发明的算术和逻辑单元和操作方法可用于这种情况,即当相加任何二个R-nary n-数字数时对于每一数字的进位存在的判定构成一系列具有一次序相关的判定。如果构成该单元和方法使得该由该总和的三元代码产生问题所产生的三元代码被输入到该三元代码二进制树,即通过构成它们使得判定节点用作当该相同数字处的二个数之和的结果变为R或更多时输出“真或假”当该结果变为(R-2)时输出“假或真”、和当该结果变为(R-1)时输出“既不是真也不是假或不知道”的每一输出的二进制树的剩余节点,它可能予先准备有另外一进位。也就是,该总和的三元代码产生问题不限于二进制数而可应用于任何R-nary数。通过应用该总和的一三元代码产生问题,它可能获得用于任何R-nary数的一相加程序或加法器。进而,过去在次序0(n)的时间所使用的处理可在对数次序0(log2 n)的时间被处理。
另外,在本发明的算术和逻辑和操作方法中,在当对任何二个R-nary n-数字相减时对于每个数字判定借位的存在而构成一系列具有一次序相关的判定的情况中,当解算一包括选择一系列判定的问题时,建立提供使用判定节点的一二进制树的问题的模式,相应于这些节点,当解算包括这样一系列判定的一问题时,根据一个或多个输入信息部分与该相同数字处的二个数的差的结果变为负时输出“真或假”、当其结果变为正时输出“假或真”、和当该结果变为0时输出“即不是真也不是假或不知道”的每一输出用作作为剩余节点的判定节点,并执行并行处理。也就是,该差的三元代码产生问题不限于二进制数而可应用于任何R-nary数。通过应用该差的一三元代码产生问题,它可能获得用于R-nary数的一相减程序或减法器。其原因是,例如,在一减法器的情况中,如果它可能使用一诸如一多值逻辑电路或模拟电路之类可以R-nary表示的一电路系统以实现与这个三元代码产生问题相一致的一三元代码产生电路,它将可能在该加法器中通过相应于该BLC阵列的一三元代码二进制树的一BLB阵列产生一对于每一数字的借位(在本说明中,在该加法器中复制该二进制先行阵列(BLC),称之为一二进制先行借位系统或BLB阵列)。对于该差的产生,如一用来实现(Xi-Yi-Bi)的电路(减法器的一R-nary数字的值)被单独的配置和由它来组合,可获得一R-nary减法器。进而,过去在次序0(n)的时间所使用的处理可以在对数次序0(log2 n)的时间来处理。
进而,在本发明的该算术和逻辑单独和操作方法中,当解算一包括一系列具有一次序相关的判定的问题时,使用一定义判定节点的一三元二进制树或用于判定的处理,相应于该判定,根据一个或多个输入信息部分,“真”、“假”、或“即不是真也不是假或不知道”中的任一个输出作为判定的一输出,并且当该较高有效位的判定结果是一清楚的“真”或“假”中的一个时所定义的较高优先权级确定节点或较高优先权级确定处理每一个输出数高有效位的判定结果而当该较高有效位的判定结果是含糊的“即不是真也不是假或不知道”时输出较低有效位的制定结果,作为除该剩余节点之外的节点和所有判定节点或所有用于剩余节点的判定的所有处理以及所有较高优先权级确定节点或在该三元代码二进制树中在相同路径上的所有较高优先权级确定处理是以并行处理的。
例如,当在该具有一次序相关的判定系列中存在有n个判定节点时,一三元代码二进制树由n个判定节点所构成和不包括有该二进制树的剩余节点的高m(m是超过log2 n的最小整数)的一子二进制树由用作一路径m的节点的Nm(Nm是超过n/2的最小整数)个较高优先权级确定节点和用作一路径S(S是如S=1至m-1所表示的一整数)的NS(NS是超过NS+1/2的最小整数)个较高优先权级确定节点所构成。通过引入这种三元代码二进制树,能够将一具有一次序相关的n个判定的串行结构转换成为一深为m的完整二进制树结构,可以产生用于比较、相加和其它处理0(log2 n)的时间次序,并且可以较快速率执行处理。
进而,在本发明的该算术和逻辑单元和操作方法中,与分别赋值将“真”定义为“Y”的代码、将“假”定义为“N”的代码、和将“即不是真也不是假或不知道”定义为“Q”的代码时,将该较高优先权级确定节点的函数或用来确定该较高优先权级的处理定义为一用来从二个代码中获得一代码Tij∈{Y,N,Q}的一算符K,即一从较高有效位的判定结果获得的代码Ti∈{Y,N,Q}和一从较低有效位的判定结果获得的代码Tj∈{Y,N,Q};和当在一关系中代码Ti优于代码Tj时,该K算符被定义使得当代码Ti是“Y”或“N”时由代码Tij获得“Y”或“N”而当代码Ti是“Q”时通过由代码Tij得到的代码Tij来得到该值。在这种方式中,通过引入该K算符,使得用代数来处理三元代码二进制树的部件元素的函数成为可能,即,用代数来处理较高优先权级确定节点或用来确定较高优先权级的处理成为可能。通过这种方式,更为清楚的是该K算符满足了相联的定律并且直接证明由该三元代码二进制树所获得的结论是正确的。
进而,在本发明的该算术和逻辑单元和操作方法中,当指定例如一二位二进制数(x,1,x,0)的三元代码的一二进制表达式定义“Y”为{11}、“N”为{10}、和“Q”为{0*}(这里,“*”是“不小心”)时,用来实现K算符的二进制逻辑函数定义为:
TiKTj=Ti;
(Ti,1,Ti,0)K(Tj,1,Tj,0)=(Tij,1,Tij,0)
=(Ti,1+Tj,1,Ti,1·Ti,0+Ti,1·Tj,0)。
通过以这种方式向三元代码指定适当的二进制表达式,使得获得例如一布尔(Boolean)代数函数的该K算符成为可能,也就是获得“K逻辑函数成为可能。进而,通过构成用来实现例如一完整的二进制树的K逻辑函数的K逻辑电路,它可能利用二进制逻辑电路实现一三元代码二进制树的概念。通过对由三元代码二进制树所实现的所希望处理的内容的充分考虑和利用作为三元代码二进制树的合适的三元代码产生电路,能够容易地获得各种算术和逻辑单元。
进而,在根据本发明的可由一计算机读取的一存贮介质中,一算术和逻辑单元的上述操作方法作为由该计算机执行的一程序而被存贮。该程序引进了一不确定代码二进制树的概念以实现来自具有一次序相关的n个判定的一串行结构的深度的完整二进制树结构。这就给出了一个能够用来进行各种操作0(log2n)处理并且以一较快速度处理的具有时间次序的处理程序。
另外,在根据本发明的可由一计算机读取的一存贮介质中,上述一算术和逻辑单元的操作方法作为由该计算机执行的一程序而被存贮。该程序引进了一不确定代码二进制树的概念以实现来自具有一次序相关的n个判定的一串行结构的深度m的完整二进制树结构。这就给出了一个能够用来进行例如比较、相加、和相减0(log2n)之类的各种操作处理并且能以一较快速度处理的具有时间次序的处理程序。
另外,在根据本发明的可由一计算机读取的一存贮介质中,上述一算术和逻辑单元的操作方法被作为由该计算机执行的一程序而被存贮。该程序等效于加有一代码置换程序的上述N数字相减程序。为了进行相减0(log2n)处理通过仅向时间次序相加一代码置换程序的固定时间,所获得的一处理程序就能够以较快速度执行处理。
进而,在本发明的该算术和逻辑单元和操作方法中,当根据一n位二进制数的输入数据实现用于输出的在从最大有效位到最小有效位的方向上的第一“1”或“0”位位置或在从最大有效位到最小有效位方向上“1’S”或“0’S”连续数的二进制数的一优先级编码器函数时,通过定义不具有相关输入/输出的判定节点作为树叶而定义较高优先权级确定节点作为除树叶之外的节点的一二进制树建立一模式来实现该优先编码器函数,以并行来执行处理,并且定义用作该二进制树的根的较高优先权级确定节点的工作的最后结果作为该优先级编码器的最后结果。
由于该具有次序相关的判定的串行结构的原因使常规的优先级编码器具有较低速的缺点,但因为本发明通过一不确定代码二进制树结构而使用了并行处理使得根据本发明的该优先级编码器具有较高的速度。另外,具有该优先级编码器函数的不确定代码二进制树是一抽象的结构,则可应用于除逻辑电路(机械(阵列处理器的构形)或计算机程序)之外的目标。
另外,在本发明的该算术和逻辑单元中,因为由一高m(m是超过log2 n的最小整数)的二进制树建立一模式,该二进制树的深度m的节点的每一个是由一“或”逻辑装置和连续或负逻辑装置完成的,而深度S的其它节点的每一个是由一“或”逻辑装置、连线、或负逻辑装置、和(m-s+1)个选择装置来实现的,所以它可以通过一非常简单的构成来形成一算术和逻辑单元。另外,因为信号传送延迟是正比于输入位数的对数,所以即使是多个输入位也可高速工作。
进而,在本发明的该算术和逻辑单元中,每一较高优先权级确定节点通过该“或”逻辑装置获得代码Ti,1和代码Tj,1的“或”逻辑并输出例如代码Tij,1的结果并且通过选择装置当代码Ti,1是“1”时选择代码Ti,0而当代码Ti,0是“0”时选择代码Tj,0并输出例如代码Tij,0的结果。在这种方式中利用“或”逻辑装置和选择装置通过一逻辑电路来实现K逻辑函数,这样通过逻辑电路可实现一三元代码二进制树。
另外,在以该{00,01,11,10}={Q,Q,Y,N}赋值的K逻辑电路中,不仅使用了一组合逻辑门电路,还使用了一选择装置(选择器)。因此,根据本发明的该二进制树逻辑电路没有在“现有技术”中所述的一组合逻辑门电路方面的缺点。另外,如在参考文献(Makino,Suzuki,Morinaka等,“286Mhz and64 Bit Fleating Decimal Multiplier Having Function Suitable toCG”,Japan Association for Infornation and Communication pp.13-20,1995)中所述,一选择器可容易地由传输门构成。与由传输门所构成的二进制树所组成的常规逻辑电路相比这种结构的选择器更为简单和快速。另外,一行驶能够易于控制负载驱动容量,所以具有能便于标准单元设计的优点。
进而,在本发明的该算术和逻辑单元中,对于由不包含三元代码二进制树的中的高m的部分二进制树构成的一较高优先权级确定节点,提供了一种执行所谓标志最优化的逻辑电路结构,是将以共射共基放大器形式连接的正逻辑输入和负逻辑输出的多级逻辑电路的结构转换成以另一种共射共基形式连接的正逻辑输入和负逻辑输出的级(PN级)和负逻辑输入和正逻辑输出的级(NP级)的逻辑电路的结构。通过使用这种最佳化结构可省去多余的晶体管并且该算术和逻辑单元可以依据电路范围和操作速度得以改进。
另外,在本发明的算术和逻辑单元和操作方法中,当由一二位二进制数(x,1,x,0)所赋值的一二进制数表示的三元代码将“Y”定义为{00},N定义为{11},和“Q”定义为{10}并将{01}定义为“禁用”“F”,用于实现K算符的该二进制逻辑数定义为:
TiKTj=Tij
(Ti,1,Ti,0)K(Tj,1,Tj,0)=(Tij,1,Tij,0)
=(Ti,1+Tj,1,Ti,1·Ti,0+^Ti,1·Tj,0)。在这种方式中通过对该三元代码赋予合适的二进制表示,将可能获得例如另一个布尔代数K逻辑函数的K算符。
另外,在本发明的算术和逻辑单元和操作方法中,当由一二位二进制数(x,1,x,0)赋值的一二进制表示的三元代码将“Y”定义为{01}、“N”定义为{10}、和“Q”定义为{11}并且定义{00}为“禁用”“F”时,用来实现K算符的该二进制逻辑函数被定义为:
TiKTj=Tij
(Ti,1,Ti,0)K(Tj,1,Tj,0)=(Tij,1,Tij,0)
+(Ti,1+Tj,1,Ti,1·Ti,0+^Ti,1·Tj,0)。在这种方式中通过对该三元代赋予合适的二进制表示,将可能获得例如另一个布尔代数K逻辑函数的K算符。
另外,在本发明的算术和逻辑单元和操作方法中,当由一二位二进制数(x,1,x,0)赋值的一二进制表示的三元代码将“Y”定义为{00}、“N”定义为{10}、和“Q”定义为{11}并且定义{01}为“禁用”“F”时,用来实现K算符的该二进制逻辑函数被定义为:
TiKTj=Tij
(Ti,1,Ti,0)K(Tj,1,Tj,0)=(Tij,1,Tij,0)
=(Ti,1·(^Ti,0+Tij,1),Ti,0·Tj,0)在这种方式中通过将该三元代码赋予合适的二进制表示,将可能获得例如另一个布尔代数K逻辑函数的K算符。
这里,在一K逻辑电路中在赋值{00,01,1,10}={Y,F,Q,N}时,使用一第一合成逻辑门装置以获得代码Ti,1和代码Tj,1和代码Ti,0的“与”逻辑的“或”逻辑并输出例如代码Tij,1的结果以及使用一第二合成逻辑门装置以获得代码Ti,1和代码Tj,0和代码Ti,0的“与”逻辑的“或”逻辑并输出例如代码Tij,0的结果。
另外,在一赋值{00,01,11,10}={F,Y,N,Q}或一赋值{00,01,11,10}={Y,F,Q,N}时,通过由一个或多个合成逻辑门装置组成的一逻辑电路可实现类似的K逻辑函数。因此,如果充分地考虑该设计者所希望实现的处理并且规定合适的三元代码产生问题,则可以仅仅选择最为方便的三元代码二进制树系统。也就是,可根据为实现一合适的三元代码树操作电路的处理内容来选择一系统。
另外,在本发明的该算术和逻辑单元中,当在构成具有一次序相关的一系列判定的n位二进制数(Xa,Xb)的一比较中对二个数(Xai,Ybi;i=1至n-1)的数字的判定进行比较时,每一判定节点通过“异或”逻辑装置得到数值Xai和数值Ybi的“异或”并通过连接装置输出例如代码Ti,1的结果和输出例如代码Ti,0的数值Xai。在这种方式中,通过构成该系统以便在利用用作该二进制数的叶的判定节点的一比较中产生一三元代码,则可实现二进制比较器。
进面,在本发明的该算术和逻辑单元中,在{00,01,11,10}={Q,Q,Y,N}的一赋值中的一K逻辑电路,通过一用来输出一代码Tij,1的一“或”装置实现一较优先权级确定节点,和一选择装置用来当用作该二进制树的根的较高优先权级确定节点的输出是Q={0*)时输出一代码Tij,0并解释为“二个数(Xa,Xb)是相等,当输出是Y={11}时输出“具有量值关系为Xa>Yb的二个数(Xa,Xb)”,和当输出是N={10}时输出“具有量值关系Xa<Yb的二个数(Xa,Yb)”。在这种方式中,与常规的二进制树比较器相比,根据本发明的用来比较二个代码一较小数的算术和逻辑单元具有简单和高速的优点。也就是,如上所述,本发明的比较器不具有一合成的逻辑门电路(或一合成的逻辑门电路的逻辑函数)和不具有一合成的逻辑门电路的缺点。另外,产生三元代码的输入级的逻辑电路也得以简化并且可利用一小数量的门(晶体管的数量)来实现。
另外,在本发明的该算术和逻辑单元中,在进行代码方向n位二进制数(Xa,Yb)的比较时,执行对于二个数的MSB的比较制定的判定节点处理如同数值Ybn-1的数值Yah-1和如同数据Xan-1的数值Ybn-1并且在其它数字的判定节点中反转Xai,Ybi的处理。在本发明的这种方式中,通过改变MSB的X和Y输入可将一代码较小二进制比较器转换为一代码方向二进制比较器并且不需代码判断电路就可实现一代码方向二进制比较器。因此,与常规的代码方向二进制比较器相比本发明的该代码方向二进制比较器由于缺少该代码判断电路而具有较小的延迟。另外,通过一三元代码二进制树的概念而获得转换的方法,可应用于一般的代码较小二进制比较器。
另外,在本发明的该算术和逻辑单元中,当在二个n位二进制数(Xa,Yb)的相加中对于二个数的数字(Xai,Ybi;i=0至n-1)的进位存在的判定构成一系列具有次序相关的判定时,每一个判定节点通过一“同”逻辑装置而得到数值Xai和数值Ybi的“同”逻辑并且通过连接装置输出例如代码Ti,1的结果和输出代码Ti,0的数值Xai或数值Ybi。通过所构成的该系统,通过在本方式中用作该二制树的叶的判定节点而产生一三元代码的相加,从而能够实现一二进制加法器的进位look head电路。
另外,本发明的用来执行n位二进制相加的该算术和逻辑单元中,在对于LSB(位0)的一进位的存在的判定中判定结果的“位0的最后特性”决不变为“Q”而总是变为“Y”或“N”中的一个被反映到该该电路的构成之中。即,对于LBS执行一进位存在的判定的该判定的该判定节点利用选择分别与输入到该算术和逻辑单元的进位是“1”时选择数据Xao和数值Ybo的“或非”逻辑而当该进位输入是“0”时选择数值Xao和数值Ybo的“与非”逻辑并且输出例如代码T0,6的结果而不输出代码T0,1的结果获得所得到的结果的负逻辑。
另外,即使在实现一K逻辑函数的较高优先权级确定节点的一二进制树中,从最初由执行对于在较高优先权级确定节点中的LSB的一进位存在的判定的判定节点所输出的代码T0,1中不产生的每一较高优先权级确定节点是由一“或”逻辑装置和多个选择装置所构成,而从代码T0,1中产生的较高优先权级确定节点只由一选择装置简单地构成并且不构成代码Tij,1。也就是,当代码Ti,1是“1”时选择装置选择代码Ti,0而当代码Ti,1是“0”时选择代码Ti,0并且输出例如代码Tij,0的结果。作为最终的情况,用作该二进制树的根的较高优先权级确定节点当输出代码Tij,0是“1”时解释为“存在有一进位输出”而当输出代码Tij,0是“0”时解释为“不存在有进位输出”。
通过采用在本方式中在执行LSB的一进位的存在的判定中使用对于LSB(位0)的最终特征和考虑输入到该算术和逻辑单元中的进位的一构成,可以简化在它后面的较高优先权级确定节点的二进制树结构并且可构成例如在该常规BLC加法器中不具有第一行的一BLC阵列,也就是比常规BLC加法器较少的行。这就使得它在门和面积的数量上占有优势。另外,通过仅利用在用来实现一K逻辑函数的较高优先权级确定节点的二进制树中的一选择装置所提供的一简单构成的数高优先权级确定节点,能够有去逻辑地多余电路和构成一具有较少晶体管数的一二进制树。另外,在根据本发明的用来执行n位二进制相加的该算术和逻辑单元中,如上所述,不存在有合成逻辑门电路(或一合成逻辑电路的逻辑函数)和没有一合成逻辑门电路的缺点,所以与一常规的加法器相比该单元的优点是简单和较高的速度。另外,产生该三元代码的输入级的逻辑电路较简单并且用较少的门数(晶体管数)就可实现。
另外,为了产生一和,需要得到用来对二个数(Xai,Ybi;i=0至n-1)的数字进行“异或”(Xai(+)Ybi)操作的结果。在本发明的用来执行n位二进制数的相加的该算术和逻辑单元中,当使用以{00,01,11,10}={Q,Q,Y,N}赋值的K逻辑电路的一二进制树时,用来对数字Xaj,Ybj(j=1至n-2)执行进位存在的判定的判定节点包括获得数值Xaj和数值Ybj的“同”逻辑并输出例如代码Tj,1的结果的一“同”逻辑装置,这样通过仅仅反转该输出代码Tj,1而可以获得数字(Xaj,Ybj)的一“同”逻辑并因而能够用一简单的构成产生一总和。另外,产生该三元代码的判定节点的逻辑结构简单,它能用较少的门数(晶体管数)来实现。也就是,如果使用以{00,01,11,10}={Q,Q,Y,N}赋值的K逻辑电路的二进制树的构成时,它可以全面减少该加法器的输入级和总和产生级的晶体管的数量。
另外,在本发明的BLC相加系统的该算术和逻辑单元中,在对于LSB(位0)的一进位存在的判定中判定的“位0的最终特性”决不变为“Q”而总是变为“Y”或“N”中的一个的结果被反映到该电路的构成中。也就是,对于LBS执行一进位存在的判定的该判定节点利用选择装置获得分别与输入到该算术和逻辑单元的进位是“1”时选择数值Xao和数值Ybo的“或非”逻辑而当进位输入为“0”时选择数值Xao和数值Ybo的“与非”逻辑并输出例如代码T0,0的结果而不输出代码T0,1所得到的结果的负逻辑。
另外,即使在实现一K逻辑函数的较高优先权级确定节点中,从最初由执行对于LSB的一进位存在的判定的判定节点所输出的代码T0,1不产生的每一较高优先权级确定节点是由一“或”逻辑装置和多个选择装置所构成,而最初从代码T0,1产生的较高优先权级确定节点只由一选择装置简单的构成并且不输出代码Tij,1。也就是,选择装置当代码Ti,1是“1”时选择代码Ti,0而当代码Ti,1是“0”时选择代码Tj,0并且输出例如代码Tij,0的结果。
通过采用在本方式中在执行LSB的一进位的存在的判定中使用对于LSB(位0)的最终特征和考虑输入到该算术和逻辑单元中的进位的一构成,可以简化在其之后的较高优先权级确定节点矩阵,并且可以构成不具有如在常规加法器中的第一行的一BLC阵列,也就是,具有比常规LBC加法器较少的行。这就使得它在门和面积的数量上占有优势。另外,通过仅仅使用在较高优先权级确定节点矩阵中用来实现一K逻辑函数的选择装置而简单而构成的部分提供一较高优先权级节点,可以省去逻辑冗余电路并构成一具有较少晶体管数的一二进制树。另外,在根据本发明的使用BLC相加系统的该算术和逻辑单元中,如上所述,不存在有合成逻辑门电路(或一合成逻辑电路的逻辑函)和没有一合成逻辑门电路的缺点,这样与一常规BLC加法器相比该单元具有简单和较高速率的优点。另外,产生该三元代码的输入级的逻辑电路较简单并且用较少的门数(晶体管数)就可实现。
另外,在根据本发明的BLC相加系统的该算术和逻辑单元中,通过使用省去了BLC阵列的偶数行的一减少的阵列并且减少了门数,能够减少一半BLC阵列的门数和在BLC阵列中所存在的许多长线。另一方面,增加一个操作步骤数,并不意味着延迟的增加。其原因是因为该BLC阵列的门数和引线数是等分的,所以BLC阵列的结构变得较简单而使减小延迟的效果增加。其结果是没有省去偶数行的BLC阵列的加法器的延迟与省去BLC阵列的BLC阵列的加法器的延迟变成相等。另外,根据晶体管数和引线的精简数来看减少BLC阵列的加法器是较好的。
这在现有技术中没有清楚地指出。在本发明的BLC相加系统的一算术和逻辑单元中一进位的产生方法可以说是由一个单一单元产生处理二位的进位。在现有技术中,也提供了由一个单一单元处理多位的方法,但是在这种现有技术的情况中产生总和的各级的逻辑电路复杂并且操作步骤数增加。其结果,就有一个用BLC阵列的简化来换取延迟增加的折衷方案。
另外,在本发明的BLC相加系统的算术和逻辑单元中产生一进位的方法没有指出的是由一单一单元不能处理无限位数逻辑,而是规定一单元只限于处理二位。为此,在维持该高速度情况下等分晶体管数和BLC阵列的引线则成为可能。
另外,在本发明的该算术和逻辑单元中,当在二个n位二进制数的相减(Xa-Yb)中对于数字(Xai,Ybi;i=0至n-1)的一借位的存在的这些判定构成一系列具有一次序相关的判定时,每一判定节点通过“异或”逻辑装置得到数值Xai和数值Ybi的“异或”并输出例如代码Ti,1的结果并通过连接装置输出例如代码Ti,0的数值Ybi。通过所构成的该系统以这种方式由用作一二进制树的叶的判定节点在该相减中产生一三元代码,从而使实现一二进制减法器的一借位look ahead电路成为可能。另外通过较少数量的级数(晶体管数)就可简单实现产生一三元代码本身的输入级的该逻辑电路。
以这种方式,在用于执行本发明的二进制相减的该算术和逻辑单元中,在该输入级(三元代码产生电路)中所使用的判定节点不是如在常规减法器中通过向一加法器的输入级附加一反相器而构成,而是包括用来查寻例如一内部逻辑的差的逻辑操作部分同时将具有相同的门数量和信号传送延迟的构成作为使用一三元代码二进制树的一加法器的输入级(三元代码产生电路)。因此,可通过一理想的构成实现一减法器而不招致门数量和信号传送延迟。另外,由于包括了通过在输出级产生的差值而执行的一逻辑操作,所以输出级的逻辑电路构成可以通过较少数量的门来简单的实现。
另外,在本发明的执行n位二进制相减的该算术和逻辑单元中,在对于LSB(位0)的一借位存在的判定中判定的结果的“位0的最终特性”决不变为“Q”而总是变为“Y”或“N”中的一个的结果被反映到该电路的构成中。也就是,对于LBS执行一借位存在的判定的判定节点利用选择装置获得分别与输入到该算术和逻辑单元的借位是“1”时选择数值Xao和数值Ybo的“或非”逻辑而当借位输入为“0”时选择数值Xao和数值Ybo的“与非”逻辑并输出例如代码T0,0的结果而不输出代码T0,1的结果所得到的结果的负逻辑。
另外,即使在实现一K逻辑函数的较高优先权级确定节点中,从最初由执行对LSB的一借位存在的判定的判定节点所输出的代码T0,1不产生的每一较高优先权级确定节点是由一“或”逻辑装置和多个选择装置所构成,而最初从代码T0,1产生的较高优先权级确定节点只由一选择装置简单的构成并且不输出代码Tij,1。也就是,当代码Ti,1是“1”时选择装置选择代码Ti,0而当代码Ti,1是“0”时选择代码Tj,0并且输出例如代码Tij,0的结果。作为最终的结论,用作该二进制树的根的较高优先权级确定节点当代码Tij,0是“1”时解释为“存在有一借位输出”而当代码Tij,0是“0”时解释为“不存在有借位输出”。
在这种方式中通过在执行一LSB的借位存在的判定的该判定节点中采用一使用对于LSB(位0)的最终特性和反映输入到该算术和逻辑单元的借位的一构成,就能够简化在其后的较高优先权级确定节点的二进制树结构并能够实现在门数量和面积上均占优势的一算术和逻辑单元。另外,通过在用来实现一K逻辑函数的较高优先权级确定节点的二进制树中提供一仅使用一选择装置而被简化构成的一较高优先权级确定节点,可以省去逻辑冗余电路和构成一具有少量晶体管的二进制树。
另外,在以{00,01,11,10}={Q,Q,Y,N}赋值的该K逻辑电路中,不使用一合成逻辑门电路,而使用一选择装置(选择器)。因此,根据本发明的二进制树逻辑电路没有负载驱动能力小和对引线容量增加敏感的合成逻辑门的缺点。另外,如上所述,一选择装置可通过比包括由传输门所构成的一二进制树的常规逻辑电路更简单和更快结构的传送门而容易地构成。另外,一选择器能容易的对负载驱动容量进行控制,这样就有利于标准化单元设计。
另外,为了产生一差值,用来获得对于二个数的数字(Xai,Ybi;i=0至n-1)的“异或”(Xai(+)Ybi)和一借位信号的操作结果是必需的。在本发明的用来执行n位二进制数的相减的该算术和逻辑单元中,与使用一以{00,01,11,10}={Q,Q,Y,N}赋值的K逻辑电路的二进制树时,用来执行对于数字Xaj,Ybi(j=1至n-2)的进位存在的判断的判定节点包括有一获得数值Xai和数值Ybi的“同”逻辑并且输出例如代码Tj,1的结果的“同”逻辑装置,这样通过一简单的构成就可产生一差值。另外,产生该三元代码的判定节点的逻辑构成用一较少门数(晶体管数)就可简单的实现。也就是,如果使用以{00,01,11,10}={Q,Q,Y,N}赋值的K逻辑电路的一二进制树,它就能全面的减少输入级的晶体管数以及该加法器的总的产生级。
另外,在本发明的在该加法器中使用相应于BLC阵列的一三元代码二进制树执行二进制相减的该算术和逻辑单元中,在LSB(位0)的进位存在的判定中判定结果的位0的“最终特性”决不变为“Q”而总是变为“Y”或“N”中的任一个被反映到该电路的构成中。也就是,对于LSB执行一借位的存在的判定的判定节点使用了获得通过分别当输入到该算术和逻辑单元的借位是“1”时选择数值Xao和数值Ybo的“或非”逻辑而当借位输入为“0”时选择数值Xao和数值Ybo的“与非”逻辑并且输出例如代码T0,0的结果而不输出代码T0,1而获得的结果的负逻辑的一选择装置,另外,即使在实现一K逻辑函数的较高优先权级确定节点中,从最初由对LSB执行一借位存在的判定的判定节点输出的代T0,1不产生的每一较高优先权级确定节点是由一“或”逻辑装置和多个选择装置所构成,而最好自该代码T0,1产生的较高优先权级确定节点仅由一选择装置简单的构成并且不输出代码Tij,1。也就是,当代码Ti,1是“1”时选择装置选择代码Ti,0而当代码Ti,1是“0”时选择代码Tj,0并且输出例如代码Tij,0的结果。
通过采用在本方式中在执行LSB的一借位的存在的判定中使用对于LSB(位0)的最终特征和考虑输入到该算术和逻辑单元中的借位的一构成,可以简化在其之后的较高优先权级确定节点矩阵,并且即使当在常规减法器中使用一BLC加法器时,也可构成例如在常规加法器中不具有第一行的一BLC阵列,也就是,具有比常规BLC加法器较少的行。这就使得它在门的数量和面积上占有优势。另外,通过仅仅使用在较高优先权级确定节点矩阵中用来实现一K逻辑函数的选择装置而简单构成的部分提供一较高优先权级节点,可以省去逻辑冗余电路并构成一具有较少晶体管的一二进制树。另外,在根据本发明的使用一BLB阵列的用来执行二进制相减的该算术和逻辑单元中,如上所述,不存在有合成逻辑门电路(或一合成逻辑电路的逻辑函数)和没有一合成逻辑门电路的缺点,这样与使用一常规BLC加法器的减法器相比该单元具有简单化和较高速度的优点。另外,产生该三元代码的输入级的逻辑电路较简单并且用较少的门数(晶体管数)就可实现。
另外,在本发明的的使用该BLB阵列的执行二进制减法的该算术和逻辑单元中,通过使用省去了该BLB阵列的偶数行和减少了门数的一被减小的阵列,可以减少一半该BLB阵列的门数和在该BLB阵列中所存在的大量的引线。另一方面,增加1个操作步骤,并不意味着增加了延迟。其原因是因为该BLB阵列的门数和引线数是等分的,所以BLB阵列的结构变得较简单而使减小延迟的效果增加。其结果是没有省去偶数行的BLB阵列的加法器的延迟与省去BLB阵列的BLC阵列的加法器的延迟变成相等。另外,根据晶体管数和引线的精简数来看一减少BLB阵列的加法器是较好的。
另外,在本发明的算术和逻辑单元及操作方法中,与查寻一用来获得任何二个n位二进制数(x,y)的一差的绝对值的操作时,首先,通过由判定节点组和较高优先权级确定节点矩阵建立的一模式所实现的一减法器的判定节点来产生用于包括最小有效位的所有数字的差的三元代码,这些判定节点组和较高优先权级确定节点矩阵充满了定义判定节点(差值三元代码产生电路)作为叶和定义较高优先权级确定节点作为除这些叶之外的节点的一三元代码二进制树。为此,在时间(x-y)产生的三元代码和在时间(Y-X)产生的三元代码变成对称的并且在(X-Y)和(Y-X)之间产生的借位结果也变成对称的。因此,通过非常简单的执行借位产生假设(X-Y)的方法就可得到(X-Y)时间产生的借位结果并随后将产生的这个借位恢复到它的原来状态。
另外,在本发明的该算术和逻辑单元及操作方法中,与查寻一用来获得任何二个n位二进制数(X,Y)的差的绝对值的操作时,通过由判定节点组和较高优先权级确定节点矩阵所建立的一模式实现的该减法器给定用于包括由判定节点至较高优先权级确定节点矩阵所产生的最小有效位的所有数字的差的三元代码的产生以产生用于所有数字的借位。产生的借位的结果还由一三元代码输出,但是保持了在输入级由该三元码的产生所定义的该输出的对称。因此,从在时间(X-Y)产生的借位结果就能容易地得到在时间(Y-X)产生的借位结果。
另外,在本发明的该算术和逻辑单元及操作作方法中,当查寻一用来获得任何二个n位R进制数(X,Y)的差的绝对值的一操作时,通过由判定节点的组和较高优先权级确定节点距阵建立的一模式所实现的一减法器给定用于包括由判定节点至较高优先权级确定节点矩阵所产生的最小有效位的所有位的差的三元代码的产生以产生用于每个数字的一借位,随后根据最高有效位的借位产生的结果来判断用于二个数的差的结果的代码。当最高有效位的借位产生的结果的代码是“Y”时,X<Y并执行借位产生的结果的代码置换,当该结果的代码是“Q”时,X=Y并执行借位产生的代码置换或留下该代码,和当该结果的代码是“N”时,X>Y并留下借位产生的结果。
另外,在对称代码置换中,数值代码“Q”用数值代码“Q”置换,数值代码“Y”用数值代码“N”置换,和数值代码“N”用数值代码“Y”置换。通过这种方式,能够从(X-Y)的借位产生的结果简单的得到(Y-X)的借位产生的结果,并且可实现一理想的操作转换。
另外,在本发明的该算术和逻辑单元及操作方法中,与查寻用来获得二个n位二进制数(X,Y)的差的绝对值的一操作时,由判定节点(三元代码产生电路)组和较高优先权级确定节点矩阵(未简化的K逻辑电路矩阵)所组成的三元代码二进制树BLB阵列给定用于包括由三元代码产生电路至未简化K逻辑电路矩阵所产生的位0的所有位的差的三元代码产生以产生一用于每一数字的借位,随后根据该MSB的借位产生的结果判断用于二个数的差的结果的代码。当该MSB的借位产生的结果的代码是“Y”时,X<Y并执行借位产生的结果的代码置换,当该结果的代码是“Q”时,X=Y并执行借位产生的结果的代码置换或保留该代码,和当该结果的代码是“N”时,X>Y并保留借位产生的结果。另外,在对称代码置换中,数值代码“Q”用数值代码“Q”置换,数值代码“Y”用数值代码“N”置换,和数值代码“N”用数值代码“Y”置换。通过这种方式,能够从(X-Y)的借位产生的结果中简单的得到(Y-X)的借位产生的结果并且可能实现一理想的操作转换。
另外,在代码置换之后,由数值代码“N”来置换数值代码“Q”以获得一用于该置换的结果的每一数字或较高优先权级确定节点(K逻辑电路)的输出代码的借位。也就是,在代码置换之后数值代码“Q”意味着“没有借位”并且该数值代码由数值代码“N”来置换。在数值代码“Q”由数值代码“N”置换之后该借位产生的结果变为数值代码“Y”和数值代码“N”,该数值代码“Y”表明“有一借位”,也就是借位Bi-1,和该数值代码“N”表明“没有一借位”,也就是借位Bi=0。对于在一减法器中借位产生的结果也同样适用。因此,可采用一类似的减法器的逻辑电路的一逻辑电路以得到该差的绝对值。
另外,在本发明的该算术和逻辑单元中,用来判断最大有效位的借位产生结果的代码的该代码判断装置与输出代码是数值“Y”时输出一表明“真”的代码判断信号或当它是数值“Q”或“N”时输出表明“伪”的代码判断信号或当输出代码是数值“Y”或“Q”时输出表明“真”的代码判断信号和当它是数值“N”时输出表明“伪”的代码判断信号。当代码判断信号是“真”时因为X≤Y对于借位产生的结果执行代码置换和当代码判断信号是“伪”时因为X≥Y保留借位产生的结果的一代码置换装置使用了一“异或”逻辑逻辑装置以得到该代码判断信号的“异或”逻辑并输出较高优先级确定节点(K逻辑电路)的代码。另外,在该代码置换之后,对于该置换的结果或较高优先权级确定节点(K逻辑电路)的输出代码用数值“Y”置换数值“Q”的一第二代码置换装置使用了一“与”逻辑装置以在代码置换装置的输出和较高优先权级确定节点(K逻辑电路)的输出代码之间得到“与”逻辑。为此,可以通过一固定次序以一高速将(X-Y)操作转换成(Y-X)操作而无需考虑位n的数量。另外,需要的门数也较少。
另外,在本发明的用来计算无代码差的绝对值的该算术和逻辑单元中,在一借位产生之后得到该三元代码的对称并且通过该位产生的结果的代码置换实现从(X-Y)至(Y-X)操作的转换。在常规方法中,从(X-Y)操作至(YY-X)操作的转换是通过查询(X-Y)操作的结果并且随后计算2的补码来实现的。在本发明中,在(X-Y)操作中的借位产生终止步骤被置换的该代码被转换到(Y-X)操作。另外,这种代码置换可通过一置换电路由少量的门以高速来实现。因此,根据本发明的用来计算一无代码差的绝对值的该算术和逻辑单元,能够实现用来用较少门以一高速操作获得一差的绝对值的一算术和逻辑单元。
另外,在本发明的该算术和逻辑单元中,当查寻用来获得二个代码方面n位二进制数(Xa,Yb)的差的绝对值的操作时,对二个数的MSB执行比较判定的该判定节点处理例如数值Ybn-1的数值Xan-1和例如数值Xan-1的数值Ybn-1,并且在其它数字的判定节点中反转Xai、Ybi的处理。在本发明的这种方式中,通过改变MSB的X和Y输入,它能将一用来得到一无代码差的绝对值的操作单元转换为一用来得到一代码方面差绝对值的操作单元并且因此通过一非常简单的方法而无需增加晶体管数、引线数、面积、或信号传送延迟将一用来得到一无代码差的绝对值的操作单元转换为一用来得到一代码方面差的绝对值的操作单元。附图概述
以下将参看附图更详细地描述本发明的上述目的和其它目的以及特点,其中:
图1是优先级编码器中的具有顺序依赖性的判定的串行结构的简要图示;
图2A和2B是解释具有顺序依赖性的判定的串行结构和具有依赖性输入/输出的判定节点的定义的简要图示;
图3是普通优先级编码器的逻辑电路图;
图4是说明具有顺序依赖性的判定的串行结构的逻辑电路的典型结构的简要图示;
图5A和5B是解释不具有依赖性输入/输出的判定节点的定义的简要图示;
图6A和6B是解释较高优先级确定节点的定义的简要图示;
图7是解释不确定代码二进制树的定义的简要图示;
图8是不具有依赖性输入/输出的判定节点的简要图示,该依赖性输入/输出包括具有在优先级编码器中的依赖性输入/输出的判定节点;
图9是说明用来实现优先级编码器的不确定代码二进制树的简要图示;
图10A是不确定代码二进制树的代码系统的说明性图示;
图10B是判定节点的真值表;
图10C是较高优先级确定节点的真值表;
图11是使用了本发明第一实施例的优先级编码器的判定节点和较高优先级确定节点的不确定代码二进制树的逻辑电路图;
图12是第一实施例(第一)优先级编码器的不确定代码二进制树逻辑电路图的逻辑压缩和最佳化处理的说明性图示;
图13是第一实施例(第二)优先级编码器的不确定代码二进制树逻辑电路的逻辑压缩和最佳化处理的说明性图示;
图14是第一实施例(第三)优先级编码器的不确定代码二进制树逻辑电路图的逻辑压缩和最佳化处理的说明性图示;
图15是第一实施例(第四)优先级编码器的不确定代码二进制树逻辑电路图的逻辑压缩和最佳化处理的说明性图示;
图16是第一实施例(第五)优先级编码器的不确定代码二进制树逻辑电路图的逻辑压缩和最佳化处理的说明性图示;
图17是利用第一实施例的优先级编码器的不确定代码二进制树逻辑电路的压缩和最佳化最后获得的逻辑电路图;
图18是本发明第二实施例计算位移量的8位输入4位输出优先级编码器的真值表;
图19是第二实施例的计算位移量的优先级编码器的结构的图示;
图20是说明在进行比较时人类有序的思考的原理的简要图示;
图21是说明在进行相加时人类的思考的原理的简要图示;
图22是说明在进行相加时人类有序的思考的原理的简要图示;
图23是说明在进行相减时人类的思考的原理的简要图示;
图24是说明在进行相减时具有顺序依赖性的一系列人的判定的说明性图示;
图25A、图25B和图25C是本发明的原理的说明性图示和三态码二进制树及作为三态码二进制树的树干的判定节点和较高优先级确定节点的简要图示;
图26A至26D是解释K运算符的定义和这些运算符的逻辑功能的说明性图示;
图27A和27B是说明在比较情况下三态码的产生的真值表和比较三态码产生电路的电路图;
图28是表示在利用二进制逻辑电路实现三态码二进制树的情况下的一般结构的结构图示;
图29是本发明第三实施例的无正负号(Code-less)8位二进制比较器的结构图示;
图30是本发明第三实施例的有正负号(code-bearing)8位二进制比较器的结构图示;
图31是表示三态码的真值表的说明性图示;
图32A和图32B是符号最佳K逻辑电路的电路图;
图33是符号最佳无正负号8位二进制比较器的结构图示;
图34A和34B是说明在相加时三态码的产生的真值表和总和三态码产生电路的电路图;
图35A和35B是基于位0的确定特性的真值表和位0的总和三态码产生电路的电路图;
图36A和36B是利用位0的确定特性简化了的K逻辑电路的说明性图示;
图37是本发明第四实施例的8位二进制数的进位产生二进制树的结构图示;
图38是产生8位二进制数的MSB之和的电路的电路图;
图39是本发明第四实施例的BLC阵列的结构图示;
图40是本发明第四实施例的符号最佳化BLC阵列的结构图示;
图41是本发明第四实施例的精简BLC阵列以及和产生单元的BLC加法系统的加法器的结构图示;
图42是图41(第一)BLC加法系统的加法器中的和产生电路的另一种结构;
图43是图41(第二)BLC加法系统的加法器中的和产生电路的另一种结构;
图44是三态码二进制树的代码分配的说明性图示和作为其(第一)实例的K逻辑电路的电路图;
图45是三态码二进制树的代码分配的说明性图示和作为其(第二)实例的K逻辑电路的电路图;
图46A至图46E是根据作为本发明的另一种分配的(Y,F,N,Q)而得到的BLC阵列的比较器和加法器的组成部分的电路图;
图47A和图47B是说明在相减情况下三态码的产生的真值表和差三态码产生电路的电路图;
图48A和图48B是基于位0的确定性的真值表和位0的差三态码产生电路的电路图;
图49A和图49B是利用位0的确定性简化了的K逻辑电路的说明性图示;
图50是本发明第五实施例的8位二进制数的借位产生二进制树的结构图示;
图51是本发明第五实施例的产生8位二进制数的借位的BLB阵列的结构图示;
图52A和图52B是符号最佳化K逻辑电路的电路图;
图53是产生符号最佳化8位二进数的借位的BLB阵列的结构图示;
图54A和图54B是说明从借位产生至采用BLB阵列的减法器的差产生的结构的部分图示;
图55是构成本发明第五实施例的减法器的借位产生的输入级的精简BLB阵列的结构图示;
图56A和图56B是说明采用精减BLB阵列的减法器的借位至差产生的结构的部分图示;
图58是比较在相减中产生的三态码的说明性图示(第一个例子:存在对称性);
图59是比较在相减中产生的三态码的说明性图示(第二个例子:不存在对称性);
图60是说明在对称地产生位0的三态码的产生的情况下三态码的比较的说明性图示;
图61A、图61B和图61C是本发明第六实施例的在获取差绝对值的操作单元内的代码取代电路的电路图和说明基于代码判断的代码判断结果的代码变换(最后借位产生)的表的说明性图示;
图62是本发明第六实施例的用于获取代码减小差的绝对值的运算单元的总体结构的图示;
图63是本发明第六实施例的用于获取有正负号差的绝对值的运算单元的总体结构的图示;
图64是说明普通的第二和第三种方法的用于获取差绝对值的运算单元和本发明的用于获取差绝对值的运算单元内的门数目和延迟的定性比较的说明性图示;
图65是8位输入4位输出优先级编码器的直值表;
图66是说明把总线仲裁作为优先级编码器的一应用实例进行说明的说明性图示;
图67是普通8位输入4位输出优先级编码器的逻辑电路图;
图68是在普通8位BLC加法系统的BLC加法器内的BLC阵列的结构图示;
图69A、图69B和图69C是在普通8位BLC加法系统的BLC加法器内的输入级的电路图;
图70是普通有正负号二进制比较器的结构图示;
图71A和图71B是表示在把Y的二进制补码与X相加来执行减法X-Y时1位二进制数的减法的定义和直值表;
图72是采用普通加法器的减法器的结构图示;
图73是普通常第二种方法的用于获取差绝对值的运算单元的结构图示;
图74是通常第三种方法的用于获取差绝对值的运算单元的结构图示。
最佳实施例的描述
以下将根据内容表描述“具有顺序依赖性的判定序列”、“三态码二进制树”、“把三态码二进制树应用于二进制逻辑电路”、“具有顺序依赖性的判定的串行结构”、“不确定代码二进制树”以及“把不确定代码二进制树应用于二进制逻辑电路”。注意,作为本发明的算术和逻辑单元的各实施例,以下将参看附图按顺序地把优先级编码器作为在“把不确定代码二进制树应用于二进制逻辑电路电路”中的[第一实施例]和[第二实施例]进行描述、把比较器作为在“把三态码二进制树应用于二进制逻辑电路”中的[第三实施例]、把加法器、BLC阵列和精简BLC阵列作为[第五实施例]和把用于获取差绝对值的运算单元作为[第六实施例]进行描述。
(内容表)
[1]具有顺序依赖性的判定的串行结构
1.1具有顺序依赖性的判定的序列
1.2“具有顺序依赖性的判定的串行结构”的定义和定理
1.2.1具有依赖性输入/输出的判定节点的定义
1.2.2具有顺序依赖性的判定的串行结构”的定义和定理
1.2.3具有顺序依赖性的判定的串行结构的不能够并行执行的定理
1.2.4具有顺序依赖性的判定的串行结构的正确性的定理
1.2.5模型的优先级
1.2.6具有顺序依性的判定的串行结构的延迟
1.4普通优先级编码器的逻辑电路及其问题
[2]不确定代码二进制树
2.1在保持顺序和位置关系的同时并行地执行判定的方法的发现
2.2定义和定理
2.2.1“不具有依赖性输入/输出的判定节点”的定义
2.2.2“较高优先级确定节点”的定义
2.2.3“不确定代码二进制树”的定义
2.2.4“不确定代码二进制树”正确性的定理
2.2.5“不确定代码二进制树”的延迟
2.2.6把具有顺序依赖性的判定的串行结构变换为不确定代码二进制树的步骤(结构变换原理)
2.2.7结构变换原理的等同性定理
2.2.8最低有效位判定节点的例外规定
[3]把不确定代码二进制树应用于二进制逻辑电路:高速优先级编码器
3.1采用不确定代码二进制树的优先级偏码器
3.2最佳优先级编码器的逻辑结构
3.3把不确定代码二进制树应用于二进制逻辑电路的效果
[4]具有顺序依赖性的判定的序列
4.1前言
4.2具有顺序依赖性的判定的序列
4.2.1比较的情况
4.2.2加法进位的情况
4.2.3减法借位的情况
4.2.4“具有顺序依赖性的判定的序列”的结构
[5]三态码二进制树
5.1新功能介绍
5.2三态码二进制树
5.3K运算符的定义和代数性质
[6]把三态码二进制树应用于二进制逻辑电路
6.1三态码二进制树的一个例子
6.1.1三态码的二进制表述
6.1.2K运算符的逻辑函数
6.2比较器的实施例
6.2.1比较的三态码的产生
6.2.2比较器的总体结构
6.3加法器的实施例
6.3.1和的三态码的产生
6.3.2位0的确定性质
6.3.3进位产生二进制树的结构
(进位产生二进制树的情况)
(和的产生)
(进位产生二进制树的总体结构:BLC阵列)
(精简BLC阵列)
6.3.4三态码的其它分配
6.3.5实施例的改进
6.4减法器的实施例
6.4.1差的三态码的产生
6.4.2位0的确定性质
6.4.3借位产生二进制树的结构
(借位产生二进制树的情况)
(借位产生二进制树的总体结构:BLB阵列)
(符号的最佳化)
(差的产生)
(精简BLB阵列)
6.4.4把三态码二进制树应用于减法器的效果
6.5获取差绝对值的操作单元的实施例
6.5.1获取差绝对值的理想操作单元的结构
6.5.2X-Y和Y-X的差
6.5.3利用三态码获取差绝对值的操作方法
6.5.4代码取代电路
6.5.5获取无正负号差绝对值的操作单元的结构
6.5.6获取有正负号差绝对值的操作单元的结构
6.5.7把三态码二进制树应用于获取差绝对值的操作单元的效果
[1]具有顺序依赖性的判定的串行结构
1.1具有顺序依赖性的判定的序列
如果优先级编码器的功能要由人来完成,他或她将如何思考和获得正确的输出?根据优先级编码器的功能的定义,将有以下步骤:
步骤SP1.观察输入位中具有最高优先顺序的位(MSB)。如果它是“1”,就输出“1111”(“有效”和“7”)并结束运算。此外,如果它是“0”,结果将依赖于低有效数位的位,因此无法输出(看到)该数值,执行下一个步骤。
步骤SP2.观察比MSB低一个位的位。如果它是“1”,就输出“1110”(“有效”和“6”)并结束运算。如果它是“0”,结果将依赖于低有效数位的位,执行下一个步骤。
步骤SP3.观察比MSB低二个位的位。如果它是“1”,就输出“1101”(“有效”和“5”)并结束运算。如果它是“0”,结果将依赖于低有效数位的位,执行下一个步骤。
类似地执行步骤SP4.至SP6.。
步骤SP7.观察比MSB低7个位的位(LSB)。如果它是“1”,就输出“1000”(“有效”和“0”)并结束运算。如果它是“0”,就输出“0***”(“无效”)(此处*表示“随意位”)并结束运算。
判定的顺序在这一思考过程中是重要的。不允许以任意的定时随意地执行各个判定。侧如,显然,如果位3是“1”,则在观察位6之前观察位3并输出“1011”(“有效”和“3”)的做法是错误的。因此,可以认为,在许多判定中有执行顺序的关系存在。为了在保持顺序关系的同时进行判定,以下约束性条件是必不可少的,即“执行下一个(较低有效位)判定只有在确认不能由该判定得出明确的结论并由于它取决于下一个判定(较低有效位)而得不出答案或无法得知答案时才被允许”。
如果把这一关表述为多个判定具有顺序依束并按照概略图示把按顺序执行,就有图1的结果。特点就是各个判定按照“依赖性”的关系顺序地连接起来。可用如图1的图来直接表示的结构在本说明书中称为“具有顺序依赖性的判定的串行结构”。
本结构不限于以后作为本发明一实施例描述的优先级编码器,这种结构常见于人类的思考之中。例如,当人们比较两个数的大小时,考虑加法的进位、减法的借位时,在他或她的思考过程中存在相同的结构。
这种“具有顺序依赖性的判定的串行结构”还可在思考之外发现。同样可利用如图1所示的图对优先级编码器步骤进行描述和说明。C语言写的以下程序是非常熟悉的:
如果(~){…}
否则,如果…
否则,如果…
否则
这表明“具有顺序依赖性的判定的串行结构”可用语言和图来描述,并可被正确地传递给另一个人。但是,虽然这种结构可教导和传递给人们,但人们在他们被教导之前就已经了解这种结构是起初人们了解的原型的一个方面,可被认为是该原型的能力的显露。这种能力是非常重要的,但非常接近我们。我们以几乎直觉的方式使用这种能力。关于这方面的讨论已超出本发明的范围,所以本说明书对此不再进行描述。
1.2“具有顺序依赖性的判定的串行结构”的定义和定理
为了表明“具有顺序依赖性的判定的串行结构”模型的逻辑正确性,在此正确地定义该模型并对其一般特性进行分类。
1.2.1“具有依赖性输入/输出的判定节点”的定义
(1)明显特点
图1中标为“判定”的每一个圆圈在此将被称为“具有依赖性输入/输出的判定节点”。图2A所示具有依赖性输入/输出的判定节点是具有一个或多个数据输入和依赖性输入以及具有结论输出和依赖性输出的判定的最小单元。
(2)输入和输出
数据输入和结论输出不限于二进制,可以是任何格式的数(有限位数的N进制数或(“真”或“假”)的逻辑值等),而依赖性输入和依赖性输出涉及表示“有效”或“无效”的二进制信息。
(3)功能模型
具有依赖性输入/输出的判定节点首先在数据输入和依赖性输入变成有效时开始预定判定的执行。一旦根据已知的输入数据能够得出明确的结论,就把数据值作为结论进行输出,使依赖性输出成为“无效”。相反地,当判定节点根据已知的输入不能得出明确的结论时,就不输出结论(输出“无效”),依赖性输出此时是“有效”。有两个输出,但这两个输出将不同时变成有效。
(4)延迟模型
假设在从具有依赖性输入/输出的一判定节点开始执行至其完成结论或依赖性的输出的期间内出现延迟。可以根据在其上面实现结构的介质适当地确定这种延迟的大小。可以允许使这种延迟充分小,但不能使其为“0”。
1.2.2“具有顺序依赖性的判定的串行结构”的定义
(1)明显特点
“具有顺序依赖性的判定的串行结构”是具有如此特点的结构,即“具有依赖性输入/输出的判定节点”如图2B所示地利用依赖性输入/输出顺序地进行连接。此外,具有依赖性输入/输出的判定节点的结论输出被组成为一个。具有依赖性输入/输出的判定节点之间存在相对的位置和顺序关系。在图2B中,节点的位置越高,顺序就越前。位置和顺序遵循有序思考过程的位置和顺序。
(2)输入和输出
判定所需的全部数据就是输入,而基于预定有序思考过程的结论就是输出。数据输入是用任何格式表示的数值。结论也是用任何格式表示的数值。共同的例子是诸如(真/假/未知)这样的逻辑值
(3)功能模型
在给定数据输入时,就从具有最高有效位的依赖性输入/输出的判定节点开始执行。具有最高有效位的依赖性输入/输出的判定节点、并且只有该节点才专门具有总是有效的依赖性输入。为此,一旦数据到达,就能够开始该判定节点的执行。此后,根据“具有依赖性输入/输出的判定节点”的定义,进行具有依赖性输入/输出的后续判定节点的执行。一旦在这一过程中输出了明确的结论,就把这一输出作为最后的结论。由于具有依赖性输入/输出的判定节点的特性,不再进行具有依赖性输入/输出的后续判定节点的执行。位于最低有效位的具有依赖性输入/输出的判定节点不具有相对于较低有效位的依赖性。因此,不会出现“由于其依赖于较低有效位而不得知的”情况。为此,位于最低有效位的具有依赖性输入/输出的判定节点不具有依赖性输出。
(4)延迟模型
在从给定了具有顺序依赖性的判定的串行结构的输入至输出了结论期间出现的延迟等于在直到输出了结论之前被执行的具有顺序依赖性的判定节点的延迟的总和。
1.2.3具有顺序依赖性的判定的串行结构的不能并行执行的定理
根据以上定义可得出以下定理。
[辅助定理1]
当两个“具有依赖性输入/输出的判定节点”通过依赖性输入/输出进行连接时,这两个判定节点不能同时被执行。
[证明]
具有依赖性输入/输出的两个判定节点中的位于较高有效位的那个节点称为节点“A”,而位于较低有效位的另一个节点称为节点“B”。为了开始判定节点B的执行,所需的条件是判定节点B的依赖性输入(根据具有依赖性输入/输出的判定节点的定义)变成有效。此外,为了使判定节点B的依赖性输入成为有效,需要使判定节点A的依赖性输出成为有效。判定节点A的依赖性输出变成有效的唯一时刻是当判定节点A的执行被终止并且发现结果(根据具有依赖性输入/输出的判定节点的定义)变成了“因依赖性的缘故不得知”的时候。
因此,为了开始判定节点B的执行,需要至少等到判定节点A的执行结束为止。等待时间不是0,但至少是在判定节点A中造成的延迟时间。因此,当两个“具有依赖性输入/输出的判定节点”通过依赖性输入/输出连接时,这两个判定节点不能被同时执行[证明完毕]
[定理1]
在“具有顺序依赖性的判定的串行结构”中,不能够并行地执行具有依赖性输入/输出的任意多个判定节点。
[证明]
利用数学归纳法,可以容易地把辅助定理1扩展到“不能同时执行通过依赖性输入/输出顺序地连接的N个判定节点(N是自然数)”。
在具有顺序依赖性的判定的串行结构中,具有依赖性输入/输出的全部判定节点(根据具有顺序依赖性的判定的串行结构的定义)都通过依赖性输入/输出顺序地进行连接。它们相当于“通过依赖性输入/输出顺序地连接的具有依赖性输入/输出的N个判定节点”,因此不能被同时执行(证明完毕)。
1.2.4具有顺序依赖性的判定的串行结构的正确性定理
[定理2]
在具有顺序依赖性的判定的串行结构中,有多个具有依赖性输入/输出的判定节点,这些节点中的任一个都能够输出结论。但是,只有一个输出有效正确的结论。多个判定的结论不能够同时出现。即它们不是矛盾的。
[证明]
根据辅助定理1,两个相继约具有依赖性输入/输出的判定节点不能够同时输出结论。这是因为结论是判定执行的结果。同样地,不能够出现多个结论同时被输出并且彼此矛盾的情况。
会出现延迟造成的结论彼此矛盾的情况吗?在此假定这样一种情况,即从通过依赖性输入/输出顺序地连接的具有依赖性输入/输出的N个判定节点的任一个具有依赖性输入/输出的判定节点输出有效结论。当结论输出是有效的时候,具有依赖性输入/输出的判定节点的依赖性输出(根据具有依性输入/输出的判定节点的定义)变成无效的。因此,位于比该具有依赖性输入/输出的判定节点的有效位低的有效位的具有依赖性输入/输出的全部判定节点的执行就不能开始,不应输出有效结论。就是说,可以认为“某一具有依赖性输入/输出的测定节点输出了一有效结论,而位于较低有效位的所有具有依赖性输入/输出的判定节点都不能够输出有效结论。”
另一方面,该具有依赖性输入/输出的判定节点能够输出结论这一事实表明该具有依性输入/输出的判定节点的执行得到完成。具有依赖性输入/输出的判定节点的执行开始所需的一个条件是具有高于一个有效位的依赖性输入/输出的判定节点能够输出结论,并且依赖性输出是有效的。同样地,当追溯到开始顶部的执行所需的条件时,在最后的分析中,可以认为某一具有依赖性输入/输出的判定节点的执行开始所需的条件是“仅当位于比其有效位高的有效位的全部具有依赖性输入/输出的判定节点不能够输出结论和依赖性输出都是有效(不言而喻地假定数据输入被对齐)的时候”。就是说,可以认为“位于比输出了结论的具有依赖性输入/输出的判定节点的有效位低的有效位的全部具有依赖性输入/输出的判定节点不能够输出有效结论”。
因此,在具有顺序依赖性的判定的串行结构中,位于比该输出了结论的具有依赖性输入/输出的判定节点的有效位高和低的有效位的全部具有依赖性输入/输出的判定节点都不输出有效结论。输出有效结论的唯一一个具有依赖性输入/输出的判定节点是该具有依赖性输入/输出的判定节点[证明完毕]。
1.2.5具有顺序依赖性的判定的串行结构模型的正确
定理1和定理2确保了具有顺序依赖性的判定的串行结构的以前所确定的模型的正确。就是说,在具有顺序依赖性的判定的串行结构的模型中的具有依赖性输入/输出的判定节点按照预定顺序被执行(根据定理1)。此外,总是有一个结论(根据定理2)。因此,在本章第三部分中提及的人类有序思考过程可以利用具有顺序依赖性的判定的串行结构的这一模型来进行说明。
1.2.6具有顺序依赖性的判定的串行结构的延迟。
在以上说明中强调了在获得“具有顺序依赖性的判定的串行结构”的结论之前延迟的重要性。本说明书的要点在于使机器模仿人类的思考过程,具体来说,用逻辑电路来代替人类的思考。在这种情况下,逻辑电路的硬件数量(门的数目或晶体管的数目)和操作时间(信号传播延迟时间)变得重要起来。
当设计逻辑电路的人们具有“具有顺序依赖性的判定的串行结构”这一概念并据此对逻辑电路进行设计时,这种逻辑电路就具有了“具有顺序依赖性的判定的串行结构”。这种逻辑电路的信号传播延迟具有“具有顺序依赖性的判定的串行结构”的延迟的一般性质。“具有顺序依赖性的判定的串行结构”的延迟的一般性质是如何的呢?
这种结构的延迟的第一个特点是延迟的大小受到判定过程的极大影响。例如,在图1中,如果结论是利用在最高有效位的判定来得到的,延迟就是1(个单位),而当需要等待最低有效位的判定时,延迟就是8(个单位)。
此外,第二个特点是延迟的最大值(当把判定执行到最低有效位时)与具有依性输入/输出的判定的数目成正比。例如,在32个具有依赖性输入/输出的判定节点顺序连接的结构中,最大延迟变成32(个单位)。
“信号传播延迟时间不恒定”的逻辑电路不适合于当前主流时钟同步流水线型的计算机。在这种计算机中,逻辑电路必需在预定时间(时钟周期)内输出结果。由于“信号传播延迟时间不恒定”,所以为了保证逻辑电路在所有类型输入下准时输出结果,必须把时间周期设定成为大于逻辑电路的最长延迟时间。但是,最长延迟时间“与判定节点的数目成正比”。一般来说,判定节点的数目与逻辑电路的输入位宽度成正比。当这种逻辑电路的信号传播延迟大到使其在流水线中再也不能够被忽略时,这种逻辑电路将确定计算机的时钟频率并极大地影响计算机的性能。在以下的部分中,作为这种逻辑电路的一个具体的例子,将描述优先级编码器的逻辑电路。
在当前的计算机、尤其在微处理器中,趋势是提高数据位宽度并且还增大功能部件的数目。鉴于此,具有信号传播延迟小于与输入位宽度成正比的信号传播延迟的逻辑电路是很重要的。因此,建立一般的步骤来再把例如具有与具有依性输入/输出的判定节点的数目成正比的延迟的“具有顺序依性的判定的串行结构”变成另一种较高速结构是很重要的。
1.4普通优先级编码器的逻辑电路及其存在的问题
图3表示普通优先级编码器的逻辑电路。图3的逻辑电路具有如图1所示的具有顺序依赖性的判定的串行结构,但乍一看,图1和图3似乎不具有相同的结构。这是因为在图3中,接收位6作为它们的输入的逻辑门GOV6、GO26、GO16和GO06的输出端分别与接收位7作为它们的输入的逻辑门GOV7、GO27、GO17和GO07的输入端连接的缘故。与此相反,在图1中,接收位6作为其输入的判定节点6的依赖性输出端被连接成为判定节点5的依赖性输入端。就是说,逻辑门排列顺序与判定节点的排列顺序相反。
但是,不管怎样,可以认为图3所示优先级编码器的逻辑电路具有具有顺序依赖性的判定的串行结构。图4表示图3的逻辑电路的一般结构。逻辑门DCB输出的结果是否将到达最后的输出端由该结果通过的逻辑门DCA来控制。输入a能够抑制逻辑门DCB的结果的输出。此外,与输入b无关的、仅取决于输入a的结果可被输出。这表明输入a优先于输入b,即输入a处于主导位置。
如图4所示,实现了以下功能的结构确实是具有顺序依赖性的判定的串行结构,这一功能就是“在多个输入之间存在位置关系、较高有效位的结果的输出抑制较低有效位的其它结果并作为最后结论被输出,以及较高有效位抑制较低有效位的控制结构被顺序地连接。
为什么图3看起来与图1不同的理由是在图3中没有传送诸如“依赖”这样的信息的明显的信号线。但是,在实际上,诸如图1结构中的“依赖/不依赖于较低有效位”这样的“话语”只是被“接受/抑制较低有效位的结果”这样的“话语”所代替而已。意义是等同的。
一般来说,当用逻辑电路、例如图3和图4所示的逻辑电路来实现具有顺序依赖性的判定的串行结构时,就得到这样一种结构,即被逻辑门接收的输入的有效位越高,该逻辑门就越靠近输出侧。逻辑电路这种结构的一个典型的例子就是进位脉动加法器。
如在前一部分的结束处所描述的,具有具有顺序依赖性的判定的串行结构的逻辑电路的不足之处是最长延迟时间与输入的位数成正比地增大。普通优先级编码器也具有这种不足。在图3的例子中,“或”门电路或“与”门电路串联连接,操作步骤数目的增大正好等于输入位数的增大。
以上的描述可总括如下:具有“具有顺序依赖性的判定的串行结构”的逻辑电路(例如图3)不适合于高速运行的计算机。理由如下:这是因为(a)在流水线计算机内部,逻辑电路的最长延迟时间是确定计算机时钟周期的重要因素之一,以及(b)具有“具有顺序依赖性的判定的串行结构”的逻辑电路的最长延迟时间与输入位数成正比。因此,其最长延迟时间小于与输入位数成正比的最长延迟时间的逻辑电路和运算单元是重要的。
[2]不确定代码二进制树
2.1在保持顺序和位置关系的同时并行地执行判定的方法的发现
如在1.2.3的定理1中所说明的,在具有顺序依赖性的判定的串行结构中,判定的并行处理是不可能的。并行处理不可能的原因是在具有依赖性输入/输出的各个判定节点中存在应当被称为“控制输入”的非数据输入的依赖性输入。
为了使所有判定节点都能够在数据输入时刻立即开始执行、即为了实现判定的并行处理应当如何做呢?只需要使得“各个判定节点不具有依赖性输入,而只具有数据输入”。由于每一判定节点不再具有依赖性输入,所以依赖性输出也成为不必要的了。一旦出现了依赖性输出成为有效的状态,即一旦出现了“因其依赖于较低有效位而不得知、不能够被回答或不能够被确定”的状态时,就把不确定代码“Q”作为结论输出。如此得到的判定节点将被称为“具有依赖性输入/输出的判定节点”。此外,不具有依赖性输入/输出的这种判定节点的输出将被称为“工作结论”。
当然,“工作结论”的数目与不具有依赖性输入/输出的判定节点的数目一样多。必须把它们集中起来,只产生正确的结论。起初在判定节点之间存在顺序关系。于是,在存在多个工作结论的情况下,必须把不具有最高有效位的依赖性输入/输出的判定节点的工作结论定为最终结论。
例如,在有两个不具有依赖性输入/输出的判定节点并且它们输出不同的工作结论的情况下,一个正确结论必须是较高有效位的工作结论。那么在什么情况下较低有效位的工作结论可以是最终结论呢?
当在较高有效位的判定中不能得出明确的结论这种情况下可以是最终结论。就是说,在不具有较高有效位的依赖性输入/输出的判定节点中输出了不确定代码“Q”这种情况下。只有在这种情况下,较低有效位的工作结论才可以是最终结论。
如此地从两个不同的工作结论中得出一个正确结论的操作和行动在本发明中被称为“较高优先级确定的功能”。与不具有依赖性输入/输出的判定节点相对应,将把具有这种功能的抽象单元称为“较高优先级确定节点”。
通过在多个级中组合较高优先级确定节点,使得这些较高优先级确定节点的输出成为下一个较高优先级确定节点的输入,就能够得到一个正确的结论,即使在存在三个或更多个工作结论的情况下也如此(以后将证明)。
就其性质而言,被组合的较高优先级确定节点的结构自然成为一二进制树。在此把利用不确定代码实现了判定的并行处理的二进制树结构称为“不确定代码二进制树”。
2.2定义和定理
如在上一部分中所说的,通过引入“不具有依赖性输入/输出的判定节点”和“较高优先级确定功能(较高优先级确定节点)”这样的新概念,就确定了并行地执行有序思考过程的判定的方法。以下限定这些概念。然后将说明把“具有顺序依赖性的判定的串行结构”变换成为“不确定代码二进制树”的一般方法。
2.2.1“不具有依赖性输入/输出的判定节点”的定义
(1)明显特点
图5A所示不具有依赖性输入/输出的判定节点是具有一个或多个数据输入和一个工作结论输出的判定单元。它不具有依赖性输入或依赖性输出。不具有依赖性输入/输出的这种判定节点的输出值将被称为“工作结论”
(2)输入和输出
数据输入不限于二进制,可以是任何格式的数(有限数位的N进制数)或(“真”或“假”等的)逻辑值。相反地,作为工作结论输出,可以输出格式组合为一的代码——不确定代码“Q”和数值。
(3)功能模型
不具有依赖性输入/输出的这种判定节点在给定了数据输入时开始判定的执行。就是说,执行的开始不依赖于不具有依赖性输入/输出的另一判定节点的执行的结果。一旦根据已知输入数据能够得出明确的结论,就输出结果。相反地,当不具有依赖性输入/输出的判定节点从已知输入不能够得出明确的判定时,它就输出不确定代码“Q”。
图5B表示了“不具有依赖性输入/输出的判定节点”和“具有依赖性输入/输出的判定节点”之间的关系。如该图所示,“不具有依赖性输入/输出的判定节点”具有这样的性质,即它能够包含“具有依赖性输入/输出的判定节点”。利用这种性质,就能够根据“具有依赖性输入/输出的判定节点”产生“不具有依性输入/输出的判定节点”。
(4)延迟模型
假设延迟在从不具有依赖性输入/输出的一判定节点开始执行到其结束工作结论的输出的期间内出现。这种延迟的大小可以根据在其上实现结构的介质恰当地来确定。虽然这种延迟可允许足够小,但不允许使其为0。
2.2.2“较高优先级确定节点”的定义
(1)明显特点
如图6A所示,较高优先级确定节点是实现具有两个输入端和一个输出端的“较高优先级确定的一功能单元。这两个输入端不等同。一个是图中用“H”来表示的较高有效位输入端,另一个是图中用“L”来表示的较低有效位输入端。
(2)输入和输出
两个工作结论是输入。根据“较高优先级确定”选择两个工作结论中的一个,并把其作为较高优先级确定节点的工作结论进行输出。
(3)功能模型
在工作结论输入给两个输入端时开始执行。根据“较高优先级确定”如图6B所示地选择两个工作结论中的一个并将其输出。
(4)延迟模型
假定延迟在从两个工作结论输入给该较高优先级确定节点到得到一个正确的工作结论的期间内出现。这种延迟的大小可以根据在其上实现结构的介质恰当地来确定。虽然可允许其足够小,但不允许使其为0。
(5)什么是“较高优先级确定”
如图6B所示,在较高优先级确定节点中,当输入给较高有效位的工作结论不是不确定代码“Q”时,就输出较高有效位输入的代码。相反地,当输入给较高有效位的工作结论是不确定代码“Q”时,就输出较低有效位输入的代码。这种选择和确定方法将被称为“较高优先级确定”。
(6)关于代码表示的变换
输入码和输出码的表示不必总是一样的。允许根据需要进行代码表示的压缩/扩展的变换。当然,不允许改变被代码表述的定义。
例如,可如下地进行“代码表示的压缩”变换。就是说,当只有四种输入码{1234,5678,9012,Q}时,允许利用较少数位的表示来表示它们,例如把{1234,5678,9012,Q}变换成为{1,2,0,Q}。注意条件是在以后的处理中不出现问题。例如,不会丢失原来所表示的意义。(即“1”指“1234”,“2”指“5678”,“0”指“9012”)。
2.2.3“不确定代码二进制树”的定义
(1)明显特点
如图7所示,不确定代码二进制树是这样一种二进制树,即把“不具有依赖性输入/输出的判定节点”定义为树叶,把“较高优先级确定节点”定义为组成树干。尤其是当需要高速特性时,可使用平衡二进制树模型。在内部部分的不具有依赖性输入/输出的判定节点之间存在相对的位置和顺序关系。在图7中,越在左侧的不具有依赖性输入/输出的判定节点,位置就越高。位置和顺序与有序思考过程一致。
(2)判定必需的所有数据是输入,一个正确的结论是输出。数据输入是用任何格式表示的数。此外,结论也可用任何格式来表示。普通的一种是诸如(真/假/未知)这样的逻辑值。
(3)功能模型
一旦给定了数据输入,不具有依赖性输入/输出的所有判定节点就都开始执行并并行地进行处理。在一定的延迟之后,在不具有依赖性输入/输出的每一判定节点的输出端处产生工作结论。“较高优先级确定节点”逐渐减少工作结论的数目,直到最后得到单个正确结论为止。除从属关系的情况外,此时都并行地执行较高优先级确定节点的处理。
(4)延迟模型
从给定这种不确定代码二进制树的结构的输入到获得最后结论所需的时间正比于这种不确定代码二进制树结构的树高。此处的“树高”指从不具有依赖性输入/输出的输入级判定节点(树叶)至最后级的较高优先级确定节点(根)的最大步骤数。
2.2.4不确定代码二进制树正确性定理
[定理3]
利用不确定代码二进制树最终获得的结论是正确的。
[证明]
利用组成平衡二进制树的“较高优先级确定节点”从N个工作结论中获得一个最后结论。首先将证明该最后结论的正确性。前提是“最初出现的所有工作结论是正确的”和“在多个工作结论之间存在的顺序和位置关系(根据有序思考过程获得)在最初是明确的。”这一前提通过沿输入的顺序位置(例如一条水平线)正确地排列功能判定节点来得到保证。
I)当存在一个工作结论时
该单个工作结论无疑是正确的。如果它不正确,就意味着在不具有依赖性输入/输出的判定节点的工作结论的产生方面有错误,这是与初始前提矛盾的。
ii)当存在两个工作结论时
这两个工作结论被输入给较高优先级确定节点。于是得到一个工作结论。得到的该单个结论的正确性利用较高优先级确定的原理来证明。较高优先级确定的原理是任取其一原理,即“(a)在较高有效位的工作结论是明确的情况下,就采用该较高有效位的工作结论,和(b)仅在因较高有效位对于较低有效位的依赖性的缘故不能在该较高有效位处得到明确的结论的情况下,即在该较高有效位的工作结论意味着“不确定”的情况下,才采用较低有效位的工作结论。”起初在两个工作结论之间存在根据有序思考过程得到的顺序和位置关系。显然,较高优先级确定的原理保持这种顺序和位置关系,并得出正确的结论。
iii)当工作结论的数目是2的偶数或更多时(2n个,n是自然数)
在2n个工作结论之间存在根据有序思考过程得到的顺序和位置关系。所有工作结论在此沿一根水平线从较高有效位至较低有效位地排列。通过每次从较高有效位中取出两个工作结论,就形成n对工作结论。给较高优先组确定节点输入一对工作结论,从每一对工作结论中得出一个结论。由ii)可知得到的每一个结论是正确的。它们全部都还是工作结论。此时,沿一根水平线排列着n个工作结论。在n个工作结论之间存在的顺序和位置关系由这一排列顺序明显地表示出来。
iv)当工作结论的数目是3的奇数或更多时(2n+1个:n是自然数)
在(2n+1)个工作结论之间存在根据有序思考过程得到的顺序和位置关系。所有工作结论在此沿一根水平线从较高有效位至较低有效位地按顺序排列。通过每次从较高有效位中取出两个工作结论,就形成n对工作结论。剩下最低有效位处的一个工作结论。给较高优先级确定节点输入一对工作结论。从每一对工作结论中得出一个工作结论。使剩下的工作结论如同那些工作结论那样达到同样的级别。根据ii),得出的每一个结论是正确的。它们全部都还是工作结论。此时,沿一根水平线排列着n+1个工作结论。在(n+1)个工作结论之间存在的顺序和位置关系由这一排列顺序明显地表示出来。
v)当工作结论的数目是一般自然数(n)时
在n个工作结论之间存在根据有序思考过程得到的顺序和位置关系。所有工作结论在此沿一根水平线从较高有效位至较低有效位地按顺序排列。
当n为偶数时应用iii),即当n是奇数时应用iv)。于是工作结论的数目从N减至N’=N/2,或者从N减至N’=(N+1)/2。显然,N’是自然数。当N’是偶数时应用iii),当N’是奇数时应用iv)。重复上述操作直到工作结论数目成为1为止。根据i),得到的该单个工作结论作为最终的结论的正确性是无可置疑的。这就得到最终结论。
于是,利用数学归纳法,可以说“利用组成平衡二进制树的较高优先级确定节点从N个工作结论中得出的一个结论是正确的”。不确定代码二进制树(不具有依赖性输入/输出的判定节点和较高优先级确定节点的排列)的模型满足了本旧纳证明的前提条件。因此,利用不确定代码二进制树最后得出的结论是正确的[证明完毕]。
2.2.5不确定代码二进制树的延迟
在本发明中,在不确定代码二进制树产生结论之前,延迟(步骤数)是重要的。具有顺序依赖性的判定的串行结构的步骤数与具有依赖性输入/输出的判定节点的数目(N)或正比,但不确定代码二进制树的步骤数必须一定小于这一数目。
如在第三部分中所说明的,不确定代码二进制树的步骤数是这种结构的树高。在平衡二进制树的情况下,当树叶(不具有依赖性输入/输出的判定节点)的数目是N时,树高基本上等于log2N,所有树叶的高度基本上相等。因此,根据以下关系:
N>log2N(N是自然数)可以认为不确定代码二进制树(平衡二进制树)能够以比具有顺序依赖性的判定的串行结构的步骤数少的步骤数可靠地得出结论。
2.2.6
把具有顺序依赖性的判定的串行结构变换为不确定代码二进制树的步骤(结构变换原理)
用以下方法实现把具有顺序依赖性的判定的串行结构变换为不确定代码二进制树的步骤,即实现结构变换的原理。
步骤SPC1.根据具有依赖性输入/输出的判定节点产生不具有依赖性输入/输出的判定节点。如图5B所示,“不具有依赖性输入/输出的判定节点”包含“具有依赖性输入/输出的判定节点”。因此,利用以下操作:
(i)总是把“有效”输入给依赖性输入端,和
(ii)把不确定代码产生四连接至依赖性输出端,
就能够产生不具有依赖性输入/输出的判定节点。
步骤SPC2.把不具有依赖性输入/输出的判定节点定义为树叶和把较高优先级确定节点定义为二进制村的树干的二进制树具有图7所示的结构。此时,对不具有依赖性输入/输出的判定节点进行排列并连接较高优先级确定节点,同时注意正确地保持输入的顺序位置和工作结论的位置之间的关系。
2.2.7结构变换原理的等同性定理
[定理4]
如果给定相同的输入,则根据本定理,利用结构变换原理的具有顺序依赖性的判定的串行结构和不确定代码二进制树总是输出相同的最后结论。
[证明]
根据定理2,显然,“具有顺序依赖性的判定的串行结构”的输出是基于有序思考过程的正确结论,而根据定理3,“不确定代码二进制树”的输出是正确结论。
如图5B所示,首先在“不确定代码二进制树”(不具有依赖性输入/输出的判定节点)中执行的判定包含“具有顺序依赖性的判定的串行结构”(具有顺序依赖性输入/输出的判定节点)的判定。当“不具有依赖性输入/输出的判定节点”输出(不同于不确定代码Q”的)明确结论时,该结论在内部部分内本身就是“具有依赖性输入/输出的判定节点”的结论。
因此,当给定两者(“具有顺序依赖性的判定的串行结构”和“不确定代码二进制树”)相同的输入时,它们就分别输出基于同一判断的结论。仅有一个正确结论。两个结论都是正确的。因此,两者输出的结论是相同的。[证明完毕]
2.2.8最低有效位判定节点的例外规定
如图2B所示,位于具有顺序依赖性的判定的串行结构的最低有效位处的具有依赖性输入/输出的判定节点不具有对于较低有效位的依赖性和不具有依赖性输出。当按照结构变换原理把具有最低有效位的依赖性输入/输出的判定节点时,不具有依赖性输入/输出的判定节点不输出不确定代码“Q”。就是说,如图5B所示,这是因为当依赖性输出在内部部分内成为有效时,不确定代码“Q”被输出的缘故。于是,还存在不输出这种不确定代码“Q”的不具有依赖性输入/输出的判定节点。
在2.2.1的“具有依赖性输入/输出的判定节点”的定义中,已提到不具有依赖性输入/输出的判定节点具有输出不确定代码“Q”的特性。在此提供了“仅对于不具有最低有效位的依赖性输入/输出的判定节点才允许不输出不确定代码“Q””的例外规定。
被连接了不具有最低有效位的依赖性输入/输出的判定节点和不具有依赖性输入/输出的常规判定节点的较高优先级确定节点不输出不确定代码“Q”。根据较高优先级确定原理,这是显然的。只有在较高有效位输入是不确定代码“Q”的情况下,才输出较低有效位输入的代码。此外,此时只有在较低有效位输入是不确定代码“Q”的情况下,才输出不确定代码“Q”。在当前情况下,不见有最低有效位的依赖性输入/输出的判定节点不输出不确定代码“Q”。因此,较高优先级确定节点也不输出不确定代码“Q”。
如果利用这一性质,将使待输出代码的类型数目减少一个。因此,利用在2.2.2中描述的“代码表示的变换”就能够获得晶体管数目较少的最佳逻辑电路。顺便说说,不必考虑不是最低有效位的不具有依赖性输入/输出的判定不输出不确定代码“Q”的情况。这是因为低于不输出不确定代码“Q”的不输出不确定代码“Q”的不具有依赖性输入/输出的判定节点的不具有依赖性输入/输出的全部判定节点的存在已变成无意义的了。
[3]把不确定代码二进制树应用于二进制逻辑电路
3.1采用不确定代码二进制树的优先级编码器
[第一实施例]
按照2.2.6中描述的结构变换原理把在1.2中描述的普通优先级编码器中的具有顺序依赖性的判定的串行结构变换成为不确定代码二进制树。在此,对于n位二进制数据输入,第一实施例涉及的优先级编码功能沿从最高有效位至最低有效位的方向输出首先为“1”的位的位置作为二进制数。
普通优先级编码器(例如8位输入和4位输出)中的具有顺序依赖性的判定的串行结构是图1所示的串行结构。图1所示具有依赖性输入/输出的判定节点具有1位数据输入和依赖性输入,在数据输入和依赖性输入都有效时开始判定的执行。判定执行的详情如下:
数据输入=1
数据输出=预定数,依赖性输出=“无效”
数据输入=0
数据输出=预定数,依赖性输出=“有效”
应用结构变换原理中的把“具有依赖性输入/输出的判定节点”变换为“不具有依赖性输入/输出的判定节点”的步骤来获得图8所示的不具有依赖性输入/输出的判定节点。
把所得到的不具有依赖性输入/输出的判定节点定义为树叶和把较高优先级确定节点定义为树干的平均二进制树具有图9所示的结构。该图所示的结构是用于实现优先级编码器的不确定代码二进制树。
用逻辑电路代替该二进制树的每一个节点就能够得到优先级编码器的逻辑电路。为了得到逻辑电路,需要把数量代码和不确定代码“Q”变换成为合适的二进制码。把什么类型二进制码分配给不确定代码“Q”是非常重要的。这对逻辑电路的形式、门数目以及信号传播延迟有极大的影响。本实施例对8位输入和4位输出优先级编码器的二进制码分配如图10A所示。
一旦确定了二进制码的分配,就有图10B和10C所示的不具有依赖性输入/输出的判定节点和较高优先级确定节点的真值表。然后可如图11所示地根据这些真值表得到不具有依赖性输入/输出的判定节点和较高优先级确定的逻辑电路。
图11所示电路图是优先级编码器的一部分,包括相应于位“0”的判定节点L0a、相应于位“1”的判定节点L1a和接收判定节点L0a及L1a的输出作为其输入的较高优先级确定节点N01a。还可以根据图10B的真值表类似地设计相应于其它位的判定节点的逻辑电路。用作不确定代码二进制树的其它节点的较高优先级确定节点的所有逻辑电路都可采用与图11所示较高优先级确定节点N01a相同的结构。当如图9那样组合如此得到的判定节点和较高优先级确定节点的逻辑电路时,就完成了8位输入和4位输出优先级编码器的逻辑电路。
3.2最佳优先级编码器的逻辑结构
3.1中描述的优先级编码器(参看图11)的逻辑电路(采用不确定代码二进制树的优先级编码器)工作正常,但仍有许多冗余部分,门的数目也过大。其原因在于本电路的不确定代码二制树从不具有依赖性输入/输出的判定节点直到最后的较高优先级确定节点都始终如一地采用公共码系统(图10A的二进制码分配)。
允许根据2.2.2的较高优先级确定节点的定义改变各层次代码表示的方法。因此,能够在各层次上利用二进制码分配的优点。对每一层次的二进制码进行逻辑压缩来获得在集成电路中使用的最佳逻辑电路的过程是公知的。
首先注意图11。图中有输入给较高优先级确定节点N01a的三个二进制码:“1001”(“有效”和数“1”)、“1000”(“有效”和数“0”)以及“0***”(“无效”)。不管选择“1”和“0”中的哪一个,第二个位和第三个位两者都是“00”,因此与这一部分有关的选择器SL013和SL012可被去除。在较高优先级确定节点N01a中加上公共的“00”就足够了;不需要在判定节点L0a和L1a中产生“00”。于是简化了判定节点L0a和L1a以及较高优先级确定节点N01a,得到了用判定节点L0b和L1b以及较高优先级确定节点N01b代替了它们的图12的结构。
此外,在图12的结构中,注意在较高优先级确定节点N01b内的选择器SL011的数据输入,左侧1-输入被固定为“1”而右侧0-输入被固定为“0”,去除选择器SL011,简化结构,以便允许选择器SL011的选择信号原封不动地通过。于是得到图13的非常简单的电路结构,包括判定节点L0和L1以及较高优先级确定节点N01c。
上述概念还可应用于后级的电路,即利用相应于数据输入的位0和位1的判定节点和较高优先级确定节点N01C的结构,等价于本结构的利用相应于数据输入的位2和位3的判定节点L2和L3以及较高优先级确定节点N23C的结构,以及包含较高优先级确定节点N03a的电路结构(参看图14)。注意图14的结构是4位输入优先级编码器的结构。
在图14的结构中,较高优先级确定节点N03a分别接收“1011”(“有效”和数“3”)、“1010”(“有效”和数“2”)和“0***”(“无效”)作为较高有效位侧的输入以及“1001”(“有效”和数“1”)、“1000”(“有效”和数“0”)和“0***”(“无效”)作为较低有效位侧的输入。在此,不管选择“3”、“2”、“1”和“0”中的哪一个,第二个位都是公共“0”因此,可以去除第二个位进行选择的选择器SL033。此外,由于选择第一个位的选择器SL032的左侧1-输入被固定为“1”而右侧0-输入被固定为“0”,所以能够去除选择器SL032,简化结构,以便允许选择器SL032的选择信号原封不动地通过。于是得到了图15所示的分别被判定节点L0、L1、L2和较高优先级确定节点N01、N23和N03b进行了代替的简单电路结构。
当利用以上电路构成8位输入优先级编码器时,就得到图16所示的结构。即图16的电路结构包括利用了相应于数据输入的位0至位3的判定节点L0至L3和较高的优先级确定节点N01、N23和N03b的结构、等价于本结构的利用了相应于数据输入的位4至位7的判定节点L4至L7和较高优先级确定节点N45、N67和N47b的结构以及利用了较高优先级确定节点N07a的结构。
在图16的结构中,选择较高优先级确定节点N07a中的第二个位的选择器SL073分别具有固定为“1”的左侧1-输入和固定为“0”的右侧0-输入,因此可以去除选择器SL073,简化结构,以便使选择器SL073的选择信号原封不动地通过。于是得到了图17所示的分别被判定节点L0至L7和较高优先级确定节点N01、N23、N45、N67、N03、N47和N07进行了代替的最终电路结构非常简单的最佳8位输入优先级编码器的逻辑电路。
在图17中,用较高优先级确定节点作为组成部分,建立高度为m(m=3)的平衡二进制树的模型实现了n-(n=8)位输入优先级编码器的结构。通过分别提供Nm(Nm=4)个深度为3的节点和Ns(Ns=2,1)个深度为S(S=1,2)的节点来构成该二进制树。用一“或”门电路和一连线来构成二进制树的深度为3的最低有效位的第Pm(Pm=1至4)个节点,该“或”门电路接收数据输入的第(2×Pm-2)个位信号线和第(2×Pm-1)个位信号线作为其第零个位输入和第一个位输入、求第零个位输入和第一个位输入的“或”逻辑运算、以及输出结果作为第一个位输出,该连线输出第一个位输入作为第零个位输出;用一“或”门电路、一连线和(m-s+1)个选择器来构成二进制树的深度为S(S=1,2)的最低有效位的第PS(PS=1至Ns,Ns=2,1)个节点,该“或”门电路接收输出给二进制树的深度为(S+1)的第(2×Ps-1)个节点的第(m-s)个位输出端的第零个位作为输入给较低有效位的第(m-s)个位输入的第零个位、接收输出给二进制树的深度为(s+1)的第(2×Ps)个节点的第(m-s)个位输出的第零个位作为输入给第(m-s)个位输入的第零个较高有效位、求较低有效位的第(m-s)个位输入和较高有效位的第(m-s)个位输入的“或”逻辑运算、以及输出结果作为第(m-s+1)个位输出,该连线输出较高有效位的第(m-s)个位输入作为第(m-s)个位输出,最低有效位的第q(q=1至m-s+1)个选择器接收第(m-s)个较高有效位作为其选择输入,在选择输入为“1”时选择第(q-1)个较高有效位,在选择输入为“0”时选择第(q-1)个较低有效位,并输出它们来为第(q-1)个位输出。
注意,实际上当用静态CMOS逻辑来实现时,还会对图17的结构进一步进行符号最佳化。此处的术语“符号最佳化”是变换结构的一种方法,在这种方法中,正逻辑输入和正逻辑输出的逻辑电路(此处指较高优先级确定节点)在多个级内以这样一种结构级联,即在这种结构中,正逻辑输入和负逻辑输出的级(PN级)和负逻辑输入和正逻辑输出的级(NP级)交替地级联。通过使用这种符号最佳化方法。可以减少冗余晶体管,提高操作速度。
[第二实施例]
图18表示优先级编码器的真值表,为了实现优先级编码功能,对于8位二进制数据输入,输出沿从最高有效位至最低有效位方向的个数连续的“0”。
这种优先级编码功能的应用之一是对例如用于归一化浮点小数运算的位的移位进行计数的优先级编码器的应用。为此,例如在浮点小数运算的加法中,当反相两个操作数的正负号并且这两个值接近时,会出现所谓的“数位下移”,即使“0”排列在求和结果的开头处,因此需要对排列在开头的“0”的个数进行计数,根据这一数值把尾数部分移位至左侧,同时从指数部分中减去该数值。即需要对排列在位链的开头的“0”的个数进行计数的用于位移位计数的优先级编码器。
图19是本发明第二实施例的用于位移位计数的优先级编码器的结构图示。该图所示的结构是按照可第一实施例相同的方式得到的,即根据图18的真值表确定二进制码的分配,找出不具有依赖性输入/输出的判定节点和较高优先级确定节点的真值表,导出不具有依赖性输入/输出的判定节点和较高优先级确定节点的逻辑电路,然后进一步进行逻辑压缩。
图19的n-(n=8)位二进制输入的优先级编码器的结构是通过建立高度为m(m=3)的二进制树模型来实现的。该二进制树分别具有Nm(Nm=4)个深度为m的节点和Ns(Ns=2,1)个深度为S(S=1,2)的节点。给二进制树深度为3的最低有效位的第Pm(Pm=1至4)个节点提供一“或”门电路和一负逻辑门电路,该“或”门电路接收数据输入的第(2×Pm-2)个位信号线和第(2×Pm-1)个位信号线作为其第零个位输入和第一个位输入,求该第零个位输入和该第一个位输入的“或”逻辑运算,并输出结果作为第一个位输出,该负逻辑门电路求该第一个位输入的负逻辑运算并输出结果作为第零个位输出;给二树进制树深度为S(S=1,2)的最低有效位的第PS(PS=1至Ns;Ns=2,1)个节点提供一“或”门、一页逻辑门电路和(m-s+1)个选择器,“或”门电路接收输出给二进制树深度为(S+1)的第(2×Ps-1)个节点的第(m-s)个位输出的第零个位作为输入给较低有效位的第(m-s)个位输入的第零个位输入,接收输出给二进制树深度为(S+1)的第(2×Ps)个节点的第(m-s)个位输出的第零个位作为输入给第(m-s)个位输入的第零个较高有效位,求较低有效位的第(m-s)个位输入和较高有效位的第(m-s)个位输入的“或”逻辑运算,并输出结果作为第(m-s+1)个位输出,该负逻辑门电路求较高有效位的第(m-s)个位输入的负逻辑运算并输出结果作为第(m-s)个位输出,最低有效位的第q(q=1至m-s+1)个选择器接收第(m-s)个较高有效位作为其选择输入,在选择输入是“1”时选择第(q-1)个较高有效位输入,在选择输入是“0”时选择第(q-1)个较低有效位输入,并输出它们作为第(q-1)个位输出。注意,实际上在用静态CMOS逻辑来实现时,还对图19的结构进一步进行符号最佳化。
3.3把不确定代码二进制树应用于二进制逻辑电路的效果
谈到把不规定代码二进制树应用于二进制逻辑的效果,首先要提到“具有顺序依赖性的判定的串行结构”的定义所具有的效果。为了把具有信号传播延迟时间正比于输入位宽的特性的时序逻辑电路变换为二进制树形式的高速逻辑电路,首先需要确定在时序逻辑电路中存在的“具有顺序依赖性的判定的串行结构”。根据“具有顺序依赖性的判定的串行结构”的定义,逻辑电路的设计者已能够找出时序逻辑电路中的“具有依赖性输入/输出的判定节点”。
第二,还有由“不确定代码二进制树”本身的定义和该二进制树的组成部分所定义、即“不具有依赖性输入/输出的判定节点”和“较高优先级确定节点”所产生的效果。不确定代码二进制树的高度正比于判定节点的个数N的对数(log2N)。通过把不确定代码二进制树结构应用于逻辑电路,就能够实现以比时序逻辑电路高的速度运行的操作单元。此外,根据“不具有依赖性输入/输出的判定节点”和“较高优先级确定节点”的定义。逻辑电路的设计者能够设计出判定节点和较高优先级确定节点的逻辑电路,正确地组合们和实现逻辑电路的高速二进制树。
第三,有把“具有顺序依赖性的判定的串行结构”变换为“不确定代码二进制树”的方法,即“结构变换原理”。逻辑电路设计员根据有序思考过程设计的逻辑电路通常是“具有顺序依赖性的判定的串行结构”。这种逻辑电路具有信号传播延迟与输入位数成正比的问题,所以速度低。与此相反,根据“不确定代码二进制树”结构设计的逻辑电路具有信号传播延迟与输入位数的对数成正比的优点,所以速度较高。根据“结构变换原理”,逻辑电路设计者能够把低速的“具有顺序依赖性的判定的串行结构”变换为高速的“不确定代码二进制树”。
第四,有由具有根据结构变换原理导出的优先级编码器的功能的不确定代码二进制树产生的效果。普通优先级编码器的结构是具有顺序依赖性的判定的串行结构,因此具有速度低的不足,但由于本发明的优先级编码器是根据不确定代码二进制树来设计的,所以能高速运行。具有优先级编码器功能的不确定代码二进制树不是具体的逻辑电路,只是抽象的结构。因此,还可以将其应用于除实现逻辑电路外的其它目的(机器(阵列处理器结构)、计算机程序等)。例如,当把这种结构应用于并行计算机的程序时,就得到高速仲裁程序。
第五,有由于利用不确定代码二进制树的高速优先级编码器的逻辑电路产生的效果。在普通优先级编码器的逻辑电路中,信号传播延迟正比于输入位数,因此在多输入位的情况下高速运行是不可能的。在本发明的优先级编码器的逻辑电路中,信号传播延迟正比于输入位数的对数,因此多输入位情况下也能够实现高速运行。
此外,当比较参看已有技术(见图22)描述的日本未审查专利申请JP-8-147142中的用高度m=3的二进制树模型设计的8位优先级编码器的结构和本发明第二实施例(见图19)的用高度m=3的二进制树模型设计的8位优先级编码器的结构时,就能够看到第二实施例的8位优先级编码器具有以下两个优点:首先,已有技术的二进制树的第一节点所包含的“与”门电路和“或”门电路相应于第二实施例的二进制树的每一节点所包含的“或”门电路和负逻辑门电路,所以电路结构更简单,第二,在门电路数目和信号传播延迟方面都得到减小,在第二实施例中不需要普通“与”门电路的输入级所需的反相信号。
注意微处理器的功能单元的数目将无疑被减少并提高了操作频率。记住这些,就可以说本发明的优先级编码器的使用价值是非常高的。
[4]具有顺序依赖性的判定的序列
4.1前言
在本章中将说明本的“三态码二进制树”的基本概念。本发明的要点在于把不能被并行处理的具有顺序依赖性的一系列判定变换成为可被并行处理的三态码二进制树的方法。本方法的应用范围很广,不限于二进制比较器、加法器、减法器或用于产生差绝对值的运算单元。可以导出N进制高速比较器、高速加法器、高速减法器、产生差绝对值的运算单元等。此外,本发明不限于诸如比较、加法、减法这样的操作或求差绝对值的操作。如将在下一段中所描述的,本发明可应用于所有具有“具有顺序依赖性的判定序列”的结构的问题。
4.2具有顺序依赖性的判定的序列
4.2.1比较的情况
当人们比较两个数的大小时,他遵循怎样的思考过程呢?在此假定数位的数目是一样的。作为两个数比较的一个例子,考虑两个十进制数的比较:
X=3141,Y=3150为方便起见,用以下的方式回答“X>Y”?的问题:
如果X>Y,则“是”,如果X<Y,则“否”,如果X=Y,则不置可否。
一般来说,假定人们考虑两个数的比较,他将毫无疑问地按以下顺序进行思考。注意利用计算机执行减法来确定结果是正的还是负的人们应如下地进行思考:“在比较1,000,000,000数位的两个数时不能够允许遗漏甚至一个数位”。
步骤SC1:比较最高有效位(1000位置)的数。在本具体例子中,它们都是相同的数“3”,因此得不出答案。就是说,不能够说哪一个大。即答案依赖于下一个较低数位。因此观察下一较低数位。
步骤SC2:比较100位置的数。在本具体例子中,它们都是相同的数“1”,因此得不出答案(不能说哪一个大)。即答案依赖于下一较低数位。因此,观察下一较低数位。
步骤SC3:比较10位置的数。在本具体例子中,数是X=4和Y=5,因此数Y较大。这样一来,答案是“否”。这一结果不依赖于比其低的数位的结果。
步骤SC4:得出最后结论。在本具体例子中,答案是“否”,因此得到最后结论“X<Y”。
普通人将首先观察最高有效位(具体例子中的1000位置)的数,确定该数位的数的相对大小。如果确定了相对大小,就立即得出结论。当它们是相同的数时,就需要观察下一较低数位(100位置)并对该位进行比较。当100位置仍然是相同的数时,就需要观察再一个较低有效位(10位置)并对该位进行比较。在本例子中,在观察到10位置之后就可得出结论。当然,不需要观察1位置。
在本例子中,即使观察10位置就能够得出正确结论,也不能在观察数目的任何组合的1000和100位置之前仅观察10位置来得出结论。即在判定的顺序方面存在依赖性关系。
这种依赖性关系如图20所示。这是一幅有向图,因.此用“判定”或“结论”表示的圆圈被看作是一个节点。用“判定”来表示的节点对于用“~e”表示的节点回答“是”或“否”。但是,当对于给定的输入不能够给出“是”或“否”的判定时,就询问从属判定节点。从属判定节点在主判定节点询问之前不自己随意地作结论。
一般来说,人们对比较的判定是按图20所示的顺序作出的。当根据这种有序的方法设计利用软件的比较程序或利用硬件的比较器时,处理或操作的故障(时间)与正在比较的数的数位成正比。这是因为各个判定依赖性顺序,所以它们不能够同时被作出。例如,当有30个数位要进行操作时,这意味着在最坏的情况下,在执行了30个步骤之前不能够得出结论。
4.2.2加法进位的情况
作为另一个具体的例子,现在讨论确定两个数之和的情况。在此假定确定两个十进制数之和的1000位置:
X=1236,Y=2756如图21的示意图所示,和的1000位显然不是“3”就是“4”。如果求1000位数彼此的和就显然是“3”。此外,如果在此有来自100位置的进位,就变成“4”。即在求和时不清楚的信息是进位。考虑是否出现进位正是加法考虑的要点。因此,对于“X+Y是否出现从100位置至1000位置的进位”的问题,可以确定出现就回答“是”而不出现就回签“否”的方式。在这种情况下,不可能出现“两者都不”的答案。好可以认为思考过程遵循以下顺序:
步骤SA1.不能够立即回是否出现从100位置至1000位置的进位。这是因为如果求和100位置的数就得到数字“9”的缘故,如果有来自10位置的进位,就出现从100位置至1000位置的进位。但是,如果没有来自10位置的进位,就不会出现从100位置至1000位置的进位。因此,不能够只观察100位置就得出答案。
答案依赖于低一位的数位(10位置)。
步骤SA2.不管低一位(1位置)是什么,从10位置至100位置的进位绝对是“0”。这是因为如果求和10位置的数就得到“8”的缘故。
即使在1位置出现了进位,10位置也会吸收这一进位。
步骤SA3.结论…没有位1000位置的进位。即答案是“否”。
顺便说说,从1位置往10位置的进位绝对是“1”。当用带有“判定”和“结论”节点的有向图表示这一切时,就如比较的情形一样得到图22。与比较的情形一样,得到具有顺序依赖性的判定的序列的结构。
4.2.3减法借位的情况
还有,作为另一具体例子,考虑确定两数之差的情况。例如,考虑正如图23所示两个十进制数(X=3141,Y=2139)相减的情况下求差的1000位置时的判定过程。在这种情况下,显然,1000位置不是“1”就是“0”。如果仅用1000位置的数确定差,它就是“1”。如果100位置有借位,它就是“0”。就是说,不清楚低一位的位置是否有借位。与进行加法时思考的要点是进位类似,可以认为在进行减时思考的要点是借位。在本例子中确定是否存在借位的步骤如下:
步骤SS1.不能够立即回答是否有100位置对1000位置的借位
这是因为100位置的数之差是“0”的缘故。
如果有来自10位置的借位,就也会有100位置对1000位置的借位。
但是,如果没有来自10位置的借位,也没有100位置对100位置的借位。
因此,不能够只通过观察100位置来给出答案。
答案依赖低一位的数位(10位置)。
步骤SS2.不管低一位数位(1位置)如果,决不会出现10位置对100位置的借位。
这是因为10位置的数之差是“1”的缘故。即使1位置有借位,10位置也不会传递该借位。
步骤S53.结论…不会出现对1000位置的借位。即答案是“否”
4.2.4具有顺序依赖性的判定序列结构
如上所述,在考虑比较和考虑加法的的进位这两种情况时,出现了具有顺序依赖性的判定序列的共同结构。此外,确定是否出现进位的过程可示于图24。如该图所示,在考虑减法时,确定是否出现借位的过程显然是具有顺序依赖性的串行结构。特别要注意的这种结构的性质是由于顺序依赖性的缘故,不能同时进行多个判定。
就是说,具有“依赖性”输入的判定节点在得到来自主判定节点的指示“我依赖于你,所以进行判定”之前,不进行操作。即各个判定节点不能够仅根据它们自己的输入(X,Y)来作出它们自己的结论(是/否)。所有这些判定节点被依赖性输入/输出连结成一个整体。因此,不允许同时进行多个判定。就是说,在具有顺序依赖性的判定序列结构中,多个判定的并行处理是不可能的。
[5]三态码二进制树
5.1新功能介绍
根据上一节的讨论,可得出这样的结论,即在具有顺序依赖性的判定序列的结构中,不能够并行地处理多个判定。为了能够实现并行处理,必须引入新的功能。
首先,从判定节点中删去依赖性输入/输出。然后对于该节点允许回答“不能确定是否或不知道”的第三种方法,先前只允许该节点具有回答是“是”和“否”的两种方法。把“Q”的代码表示应用于这种含糊的回答方法。于是新的判定节点将如图25A所示地输出三态码{Y,N,Q}。
此外,引入两个判定节点接收判定结果作为其输入、选择并确定一个判定结果并输出之的较高优先级确定功能。图25B是实现这一功能的较高优先级确定节点的示意图。如在上一节(具有顺序依赖性的判定序列)中所描述的,输入数据(X,Y)中存在顺序序列,并明确确定了较高有效位/较低有效位的顺序。因此,较高有效位/较低有效位的顺序也毫无疑问被包括在根据这样的输入数据(X,Y)所获得的判定节点的判定结果内。于是在两个判定节点接收判定结果作为它们的输入的较高优先级确定节点的功能中,一个判定结果被确定为较高有效位输入,另一个判定结果被确定为较低有效位输入。当给定较高优先级确定节点的较高有效位输入是明确的是/否判定结果时,就选择该较高有效位的判定结果,较高优先级确定节点的输出变成与较高有效位输入相同。此外,只有在给定较高有效位输入为含糊的制定结果“Q”的情况下,才选择较低有效位的判定结果,较高优先级确定节点的输出变成与较低有效位输入相同。
通过如上所述地把输出三态码{Y,N,Q}的判定节点定义为“树叶”和把较高优先级确定节点定义为“节点”,则图25C所示结构的二进制树就定义为“三态码二进制树”。
5.2三态码二进制树
上一节定义的三态码二进制树使得多个判定可独立地被执行。即多个判定能够同时被执行。这是因为判定节点不再具有依赖性输入/输出的缘故。为此,就能够在给定了输入的数据时输出判定的结果,不依赖于另一判定的结果。此外,多个暂定判定结果被较高优先级确定节点的功能连接成一个结果。用归纳法能够证明得出的单个最后结论的正确性。可以三态码二进制树是并行地处理具有顺序依赖性的判定的方法。
5.3K运算符的定义和代数性质
较高优先级确定节点从两个节点(∈{Y,N,Q})中得出一个节点(∈{Y,N,Q})。这一代码闭合的并具有运算符的性质。因此,较高优先级确定节点的功能被定义为一运算符,以便能以代数方式进行处理,将其称为“K运算符”。
正如运算符的常规定义一样,K运算符的定义用图28A所示的表来表示。在图26A中,“H侧”指较高有效位输入侧,“L侧”指较低有效位输入侧。当H侧是模糊的“Q”时,L侧的输入原样地输出。而当H侧是明确的“是/否”时,就输出H侧的输入,不管L侧如何。
在此考虑由三态码和K运算符组成的系统的抽象代数性质。首先,由于它是一个组,所以它满足以下三个条件就足够了:
1、相关性定律
2、等同树干
3、逆树干
1.K运算符如下地满足相关性定律:
(YKN)KQ=YK(NKQ)=Y
(YKQ)KN=YK(QKN)=Y
(QKY)KN=QK(YKN)=Y
(YKN)KY=YK(NKY)=Y
2.Q以下地是等同树干。
YKQ=QKY=Y
NKQ=QKN=N
QKQ=QKQ=Q
3.无逆树干
没有满足YKZ=Q和NKZ=Q的的Z(∈{Y,N,Q)}。换句话说,没有逆操作。
因此,它们不是一个组。此外,不管它们是不是一个组,K运算符还具有不可变换的性质。
总而言之,可以说由三态码和K运算符组成的系统不是可变换的,是无逆操作的不可逆操作过程。注意相关性定律所表示的,可以直接证明从三态码二进制树得出的结论是正确的。
[6]把三态码二进制树应用于二进制逻辑电路
6.1三态码二进制树的一个例子
6.1.1三态码的二进制表示
当用二进制逻辑电路来实现三态码二进制树时,可以构成二进制比例器或使用进位产生器的二进制加法器。为此,需要用二进制数来表示三态码。当然,需要至少2个位。
与有三种代码的事实不同,用2位的二进制数有四种表示。当把这四种表示分配给三种代码时,得到60种组合,这将在下面进行说明。在此,作为这些组合中的一种,有以下分配方法:
{00,01,11,10={Q,Q,Y,N} (1)Q被分配给两种表示{00}和{01}。这意味着表示Q={0*}。“*”是“随意位”,可以取“0”和“1”。
6.1.2K运算符的逻辑功能
根据图26A定义K运算符的输入/输出关系,用公式(1)来确定三态码的二进制表示。于是如以下公式所表示的那样导出实现K运算符的(二进制)逻辑功能(参看图26B)。
在用把“Y”定义为{11}、把“N”定义为{10}和把“Q”定义为{0*}的2位二进制数(X,1,X,0)来分配任何代码X、用“+”运算符来表示“或”逻辑、用“·”运算符来表示“与”逻辑和用“^”来表示负逻辑时,可以下地确定从两个代码中产生一个代码Tij∈{Y,N,Q}的K运算符,即因较高有效位的判定结果得到代码Ti∈{Y,N,Q}和因较低有效位的判定结果得到代码Tj∈{Y,N,Q}:
TiKTj=Tij
(Ti,1,Ti,0)K(Tj,1,Tj,0)=(Tij,1,Tij,0)
=(Ti,1=Tj,1,Ti,1·Ti,0+^Ti,1·Tj,0) (2)公式(2)被定义为“{00,01,11,10}={Q,Q,Y,N}的分配的K逻辑功能”。如图26C和26D所示,可根据公式(2)导出实现K逻辑功能的逻辑电路(K逻辑电路)。
即在图26D中,K逻辑电路KL包括:求代码Ti,1和代码Tj,1的“或”逻辑并输出代码Tij,1作为结果的“或”门电路G01,当代码Ti,1是“1”时选择代码Ti,0和当代码Ti,1是“0”时选择代码Tj,0并输出代码Tij,0作为结果的选择器(选择装置)SL1。注意,如果三态码的二进制表示的分配方法不同,K逻辑功能和K逻辑电路也会改变。
[第三实施例]
6.2比较器的实施例
上一节得出的K逻辑电路相应于三态码二进制树(参看图25)的原理图中的较高优先级确定功能的节点。因此,如果用逻辑电路来实现原理图上的判定节点,就能够产生执行二进制数的比较的逻辑电路。
通过对在“1.2.1比较的情况”中描述的比较的判定作轻微的修改就能够得到在比较方面的判定的内容。
比较的三态码的产生的问题:“当求相同数位的两个数之差(Xi-Yi)时,
该差是正的(即Xi>Yi)(是)?
该差是负的(即Xi<Yi)(否)?
该差是0(Xi=Yi)(Q)?”
当把这一比较的这种三态码产生问题应用于二进制数时,就得到图27A所示的逻辑功能的真值表,此外还得到逻辑功能:
Ti,1=Xi(+)Yi
Ti,0=Xi (3)注意,比较的三态码产生问题不限于二进制数,可被应用于任意N进制的数。
因此,根据公式(3),起比较器输入级作用的比较三态码产生电路如图27B所示。在图27B中,比较三态码产生电路CGC包括:求数位值Xi和数位值Yi的“异或”逻辑并输出代码Ti,1作为结果的“异或”门电路GX01,和输出数位值Xi作为代码Ti,0的连线SGN1。
6.2.2比较器的总体结构
以下当通过把比较三态码产生电路CGC定义为树叶(输入级)和把K逻辑电路KL定义为树干来构成一二进制树时,就得到图28所示结构的逻辑电路。这正是图25C所示的三态码二进制树本身的原理性结构。即图28是用二进制逻辑电路实现三态码二进制树的一般结构,说明了8位的情况。
即用于解决包括一系列具有顺序依赖性的判定的问题的算术和逻辑单元包括了作为判定节点的比较三态码产生电路CGC0至CGC7和作为较高优先级确定节点的K逻辑电路KL11、KL21、KL22和KL31至KL34,并用三态码二进制树建立了问题的模型,该三态码二进制树把比较三态码产生电路CGC0至CGC7定义为树叶,而把K逻辑电路KL11、KL21、KL22和KL31至KL34定义为树叶外的节点。注意作树叶作用的比较三态码产生电路CGC0至CGC7以及K逻辑电路KL11、KL21、KL22和位于三态码二进制树的同一深度处的K逻辑电路KL31至KL34分别被同时执行。
一般来说,当在具有顺序依赖性的判定序列中有n个判定时,三态码二进制村就具有n个起树叶作用的比较三态码产生电路CGC(检测节点)。除三态码二进制树的树叶外的高度为m(m是大于log2n的最小整数)的子二进制树将具有Nm(Nm是大于n/2的最小整数)个起深度m的节点作用的K逻辑电路(较优先级确定节点)和Ns(Ns是大于Ns+1/2的最不整数)个起深度S(S是1至m-1的整数)的节点作用的K逻辑电路。
当把比较三态码产生电路CGC用作三态码产生电路的输入级时,就得到二进制比较器。无正负号8位比较器的结构如图29所示。
在图29中,比较三态码产生电路CGC0至CGC7用图27B所示的包括了“异或”门电路GX01和连线SGN1的结构来实现,而K逻辑电路KL11、KL21、KL22和KL31至KL34用图26D所示的包括了“或”门电路G01和选择器SL1的结构来实现。
通过分析起二进制树的“树根”作用的K逻辑电路KL11的输出T70(2个位),T70,1和T70,0)可得到比较的结果。就是说,
当T70={0*}时,它表示代码Q,X=Y;
当T70={10}时,它表示代码N,X<Y;
当T70={11}时,它表示代码Y,X>Y。
以下可用无正负号比较器以确实令人惊奇的简单方法,实现采用2的补码的有正负号二进制比较器。这仅通过交换X和Y的最高有效位(MSB)并把其输入给比较三态码产生电路就可实现。图30将此应用于图29的结构。图30表示采用2的补码的有正负号二进制比较器的结构。即起初在图27B的比较三态码产生电路CGC中,输入端的上部是X而下部是Y,但在图30的有正负号二进制比较器中,除MSB外的比较三态码产生电路CGC0至CGC6的输入端如图27B所示地连接。与图27B所示的连接相反,仅对于MSB的比较三态码产生电路CGC7’,下部输入是X7,上部输入是Y7。
为什么仅如此就能够把无正负号二进制比较器变换为有正负号二进制逻辑电路呢?这可用三态码二进制树的概念简单地进行说明。有正负号二进制数的MSB表示该数的正负。当MSB是“0”时,它是正数,而当MSB是“1”时,它是负数。现在我们已定义了每一位的输入级,以便如果X>Y就产生三态码“Y”,如果X<Y就产生“N”,如果X=Y就产生“Q”。注意在MSB处0(正)>1(负)这一事实,列出三态码产生的真值表,就得到了图31的结果。
这正是在通常比较三态码产生中交换X和Y的情况。在MSB都相同的情况下,就可以把其余输入位看作无正负号二进制数并比较它们。根据2的补码的性质,这是不言而喻的。
以下在实际逻辑电路的设计中,考虑到CMOS逻辑电路的性质,将使用诸如符号最佳化这样的方法。此处的“符号最佳化”是把在多个级中级联的正逻辑输入正逻辑输出的逻辑电路的结构变换成为交替地级联的正逻辑输入负逻辑输出的级(PN级)和负逻辑输入正逻辑输出的级(NP级)的方法。通过利用这种符号最佳化方法,可以减少冗余晶体管,减少了晶体管的个数,提高了操作速度。
也可以对在此所示本实施例的比较器进行符号最佳化。即对具有正逻辑输入正逻辑输出的K逻辑电路KL进行符号最佳化,以便得到图32A所示的具有正逻辑输入负逻辑输出的K逻辑电路KLPN和图32B所示的具有负逻辑输入正逻辑输出K逻辑电路KLNP。
在图32A中,具有正逻辑输入负逻辑输出的K逻辑电路KLPN被设计成具有一“或非”门电路GNO1和一选择器(第二选择装置)SL2,GNO1求代码Ti,1和Tj,1的“或非”逻辑并将结果作为代码Tij,1输出,SL2求通过当代码Ti,1是“1”时选择代码Ti,0和当代码Ti,1是“0”时选择代码Tj,0得到的结果的负逻辑,并将该负逻辑作为代码Tij,0输出。
在图32B中,具有负逻辑输入正逻辑输出的K逻辑电路KLNP被设计成具有一“与非”门电路GNA1和一选择器(第三选择装置)SL3,GNA1求代码Ti,1和代码Tj,1的“与非”逻辑并将结果作为代码Tij,1输出,SL3求通过当代码Ti,1是“0”时选择代码Ti,0和当代码Ti,1是“1”时选择代码Tj,0得到的结果的负逻辑,并将该负逻辑作为代码Tij,0输出。
应用这些具有正逻辑输入负逻辑输出的K逻辑电路KLPN和这些具有负逻辑输入正逻辑输出的K逻辑电路KLNP,可得到图33的符号最佳化比较器。当将此应用于n位比较器时,就得到以下结果。就是说,当不包括二进制时的树叶的高度为m(m是大于log2n的最小整数)的子二进制树(三态码产生电路)具有Nm(Nm是大n/2的最小整数)个起深度m的节点作用的K逻辑电路和Ns(Ns是大于Ns+1/2的最小整数)个起深度s(s是1至m-1的整数)的节点作用的K逻辑电路时,就可以用K逻辑电路KLNP来设计该子二进制树的深度m-p(P是0至m-1的偶数)的节点,用K逻辑电路KLPN来设计该子二进制树的深度m-q(q是1至m-1的奇数)的节点。当m是偶数时,如果起二进制树的树根作用的K逻辑电路KLNP的输出是Q={0*},就认为“两个数(Xa,Yb)相等”,如果该输出是Y={11},就认为“两个数(Xa,Yb)具有Xa>Yb的大小关系”,如果该输出是N={10},就认为“两个数(Xa,Yb)具有Xa<Yb的大小关系”;当m是奇数时,如果起二进制树的树根作用的K逻辑电路KLPN的输出是Q={1*},就认为“两个数(Xa,Yb)相等”,如果该输出是Y={00},就认为“两个数(Xa,Yb)具有Xa>Yb的大小关系”,如果该输出是N={01},就认为“两个数(Xa,Yb)具有Xa<Yb的大小关系”。
注意,作为一种实际的结构,还有这样的情况,即在最后输出之后增加合适的译码器电路,并且设置了3位的输出端{GT(大于),LT(小于),EQ(等于)}。
如上所述,在本实施例的比较器中,在8位二进制数(X,Y)的比较方面,通过把系统设计成用“异或”逻辑门电路GXO1和连线SGN1来实现比较三态码产生电路(判定节点)CGC和用起二进制树的树叶作用的二进制码产生电路来产生比较用的三态码,就能够设计出二进制比较器。此外,按照{00,01,11,10}={Q,Q,Y,N}进行分配的K逻辑电路KL可用输出代码Tij,1的“或”逻辑门电路G01和输出代码Tij,0的选择器SL1来构成。这样一来,本实施例的比较无正负号二进制数的比较器与普通二进制树形式的比较器相比,具有结构简单和速度快的优点。这是因为本实施例的比较器没有复合逻辑门电路(或复合逻辑门电路的逻辑功能),因此没有这种复合逻辑门电路的缺陷的缘故。此外,产生三态码的输入级的三态码产生电路CGC的电路结构简单,可用较少的门(晶体管个数)来实现。
此外,在本实施例的比较器中,在比较有正负号8位二进制数(X,Y)时,执行这两个数的MSB的比较判定的比较三态码产生电路CGC通过简单地把数位值X7换成数位值Y7和把数位值Y7换成数位值X7,就能够把无正负号二进制比较器变换为有正负号二进制比较器,并能够实现不需要正负号判断电路的无正负号二进制比较器。因此,与普通有正负号二进制比较器相比,因为没有正负号判断电路,所以本实施例的有正负号二进制比较器的延迟较小。
[第四实施例]
6.3加法器的实施例
6.3.1和的三态码产生
以下为了构成判断是否出现进位的三态码二进制树,根据在“1.2.2加法进位的情况”中描述的判定的内容,把和三态码产生问题定义如下就足够了。
和三态码产生问题(R进制数的情况)
“相同数位位置的两数之和是R或大于R吗?”
(如果是10进制的10或更大。即进位必定出现。)(是)?变成(R-2)或小于(R-2)吗?
(如果是10进制的9。即进位是否出现依赖于低一位数位的结果。)(Q)?”
当将这一和三态码产生问题应用于二进制数时,就得到图34A所示的逻辑功能的真值表,并得到以下逻辑函数:
Ti,1=^(Xi(+)Yi)
Ti,0=Xi或Ti,0=Yi (4)此处的“^”是求随后逻辑变量的逆变量的逻辑运算符,因此,根据公式(4),起加法器的输入级作用和三态码产生电路如图34B所示。
就是说,在图34B中,起加法器输入级作用的判定节点用和三态码产生电路CGA或CGA’来实现,CGA包括求数位值Xi和数位值Yi的“同”逻辑并将结果作为代码Ti,1输出的“同”逻辑门电路GNX1和将数位值Xi作为代码Ti,0输出的连线SGA1,CGA’包括“同”逻辑门电路GNX1和将数位值Yi作为代码Ti,0输出的连线SGA2。
6.3.2位0的确定性质
如在“1.2.2加法进位的情况”中所描述的,不能够对是否出现进位的问题回答“因依赖性的缘故不知道”。这是因为位0具有确定性质,所以回答不是“是”就是“否”的缘故。位0没有对于较低有效位的依赖性。由于没有依赖性,所以回答决不会是不知道。决不会有回答“Q”。基于此的位0的三态码产生的真值表如图35A所示。Cin是来自外部的进位输入。
显然,根据真值表,代码T0.1总是“1”。不管输入如何,总是常数值的输出可被删除。据由此得到的位0的和三态码产生电路CGA0如图35B所示。
在图35B中,位0的和三态码产生电路CGA0包括:求位值X0和数位值Y0的“或非”逻辑的“或非”门电路GNO2,求数位值X0和数位值Y0的“与非”逻辑的“与非”门电路GNA2,以及求通过当加法器的进位输入Cin是“1”时选择“或非”门电路GNO2的输出和当进位输入Cin是“0”时选择“与非”门电路GNA2的输出得到的结果的负逻辑并将该负逻辑作为代码T0,0输出的选择器(选择装置)SL4,该CGA0不输出代码T0,1。
此外,注意到代码T0,1总是“1”这一事实,可以删除K逻辑电路KL的冗余逻辑。在删除之前,加法器中的K逻辑电路的二进制树如图36A所示。可以看出总是“1”的信号(图中的实线)顺序地传送。即使删除总是产生恒定值的线路的逻辑是没有问题的。因此,如图36B所示,得到了采用通过删除冗余逻辑得到简化的K逻辑电路KLR的二进制树。
在图36B中,K逻辑电路中的原先应由执行两个数的LSB的进位的存在判定的和三态码产生电路CGA0输出的代码T0,1的K逻辑电路用一简化K逻辑电路KLR来实现,不输出代码Tij,1,该简化K逻辑电路KLR包括:当代码Ti,1是“1”时选择代码Ti,0和当代码Ti,1是“0”时选择代码Tj,0并将结果作为代码Tij,0输出的选择器(选择装置)SL5。注意,如果将二进制树的树根作用的K逻辑电路KLR的输出代码是“1”,就认为“有进位输出”,如果该输出代码是“0”,就认为“没有进位输出”。
根据以下的比喻可根据直觉理解上述把逻辑删除的举动。“有一位仅预报好天气的有90%或90%以上准确率的天气预报员。人们将听该天气预报员说些什么吗?没人会听,因为他们知道他将只告诉好的天气。”
6.3.3进位产生二进制树的结构
(进位产生二进制树的情况)
产生进位的二进制树可以用通过把和三态码产生电路CGA作为树叶和把K逻辑电路KL或KLR作为树干构成的二制树来实现。作为一具体例子,图37示出8位的情况。位0的信号所经过的K逻辑电路是简化K逻辑电路KLR。此餐,该简化K逻辑电路KLR的输出是一个位。
在图37中,8位二进制数(X,Y)加法器被设计成把和三态码产生电路CGA0至CGA7作为判定节点,把K逻辑电路KLR110、KL210、KLR220、KL310至KL330和KLR340作为较高优先级确定节点,该加法器用把和三态码产生电路CGA0至CGA7作为树叶以及把K逻辑电路KLQ110、KL210、KLR220、KL310至KLR340作为树叶外的节点的三态码二进制树建立了问题的模型。注意作为树叶的和三态码产生电路CGA0至CGA7和K逻辑电路KLR110、KL210和KLR220以及位于二进制树同一深度处的K逻辑电路KL310和KL330和KLR340同时执行它们的操作。
在图37的具体例子中,示出了产生在进行两个8位数的相加时产生的进位信号Cout(外部输出)的二进制树。一般来说,为了产生至位n的进位信号,需要大小从位(n-1)至位0的二进制树。注意在图37的结构中,作为其一种变形,可以采用实现了符号最佳化的结构。
(和的产生)
通过把从位(i-1)至位i的进位Ci与相同数位位置的和相加((Xi+Yi)模2)来产生最后的和(i=0至7)。作为一个例子,图38示出确定和的位7的电路。
通过把从位6至位7的进位与相同数位位置的和(X7+Y7)相加来获得位7)相加来获得位7的和输出S7。
S7=(X7+Y7+C7)模2
=X7(+)Y7(+)C7
位6至位7的进位利用从位6至位0的二进制树来产生。通过求该二进制树的输出和X7(+)Y7的“异或”逻辑(EXOR),就得到位7的最后和输出S7。
在图38中,确定位7的和输出S7的结构是这样得到的,即把和三态码产生电路CGA0作为执行LSB进位存在判定的判定节点,把和三态码产生电路CGA1至CGA6作为执行两个数的数位XR,YR(R=1至6)的进位存在判定的判定节点,把和三态码产生电路CGA7作为MSB的判定节点,把两个数的数位Xaj,Ybj(j=0至6)的和三态码产生电路(判定节点)CGA0至CGA6作为树叶来构成二进制树,把K逻辑电路中的起初应由和三态码产生电路CGA0输出的代码T0,1的K逻辑电路作为K逻辑电路KL(KL217、KL317、KL327和KL337),把代码T0,1外的K逻辑电路作为简化K逻辑电路KLR(KLR117,KLR227),设置“异或”门电路GXO2来求和三态码产生电路CGA7的输出代码T7,1的负逻辑门电路GN1的负逻辑和起二进制树树根作用的K逻辑电路KLR117的输出代码T0,6之间的“异或”逻辑并将该“异或”逻辑作为MSB的和的结果S7。注意在此使用的二进制树的树叶数不是2的幂,因为插入了虚节点KLD347。此外,可以对本结构作符号最佳化的改进。还有,负逻辑门电路GN1和“异或”门电路GXO2可用一个“同”门电路来代替。
这种三态码二进制树的一个出色的性质是“异或”操作X7(+)Y7的被包括在三态码产生之中。在三态码产生中,输出X7(+)Y7的反相形式,但可容易地改变为非反相形式。注意这一性质是在按照{00,01,11,10}={Q,Q,Y,N}这样的分配产生三态码的情况下获得的。
一般来说,一旦改变三态码表示的分配方法,也会改变和三态码产生电路的结构。因此,作为执行和的产生的逻辑电路,需要根据这种变化使用合适的和三态码产生电路。注意二进制树的结构没有改变。
如上所述,在本实施例的加法器中,在求和8位二进制数(X,Y)时,和三态码产生电路(判定节点)CGA用“同”门电路GNX1和连线SGA1或SGA2来构成,在求和时用起二进制树树叶作用的和三态码产生电路CGA产生三态码,由此能够实现二进制加法器的先行进位电路。
此外,本实施例的执行两个8位相加的加法器的结构利用了LSB(位0)的确定性质来反映执行LSB的进位的存在判定的和三态码产生电路CGA0的进位输入Cin,由此就能够简化基于这种结构的K值逻辑电路的二进制树结构,并能够设计出不如普通BLC加法器那样具有第1行的、由此比普通BLC加法器少了一行的BLC阵列。这就减少了门的数目和表面面积。还有,在实现K逻辑功能的K值逻辑电路的二进制树中,通过只利用选择器来提供结构简化的K值逻辑电路KLR,就能够消除逻辑冗余电路和构成晶体管数量较少的二进制树。还有,本实施例的8位二进制加法器没有复合逻辑门电路(或复合逻辑门电路的逻辑功能),所以没有复合逻辑门电路的不足,与普通加法器相比,具有较简单和速度快的优点。还有,产生三态码的和三态码产生电路CGA也较简单,可用较少的门(或较少的晶体管)来实现。
还有,在本实施例的8位二进制加法器中,使用{00,01,11,10}={Q,Q,Y,N}分配的K逻辑电路的二进制树时,执行数位Xj,Yj(j=1至n-2)的进位的存在判定的判定节点包括求数位值Xj和数位值Yj的“同”逻辑和将结果作为代码Tj,1输出的“同”门电路GNX1,因此仅反相输出代码Tj,1就能够得到各数位(Xj,Yj)的“异或”逻辑,能够以较简单的结构产生和。还有,产生三态码的判定节点的结构也简单,可用较少的门(或较少的晶体管)来实现。
(进位产生二进制树的总体结构:BLC阵列)
以下按照与构成产生至位7的进位的二进制树相同的方式,当对于每一个位构成产生至各个位的进位的二进制树并进行叠加时,就得到图39的结果。
在图39中,以阵列方式排列实现和三态码产生电路和K运算符的K逻辑电路。这就是所谓的BLC阵列。实际上,使用图40所示的对其进行了符号最佳化的BLC阵列。注意,在进行符号最佳化的情况下,虚节点用执行逆逻辑的逆虚节点(反相器)来代替。
在图39中,BLC阵列包括:输出三个值中的任一个值作为基于数位值Xi,Yi的判定结果的n=8个和三态码产生电路(判定节点)CGA0至CGA7,以及各行相应于各数位的8行3列(m=3是根据log28=3而得到的)K逻辑电路矩阵。在该K逻辑电路矩中,第一列的K逻辑电路组包括作为虚节点的第零行的K逻辑电路KLD10,它原样地传送第零数位的和三态码产生电路CGA0的判定结果,还包括第一行的简化K逻辑电路KLR11和第二行至第七行的K逻辑电路KL12至KL17;第二列的K逻辑电路组包括作为虚节点的第零行和第一行的K逻辑电路KLD20和KLD21、第二行和第三行的简化K逻辑电路KLR22和KLR23以及第四行至第七行的K逻辑电路KL24至KL27;第三列的K逻辑电路组包括作为虚节点的第零行至第三行的K逻辑电路KLD30至KLD33和第四行至第七行的简化K逻辑电路KLR34至KLR37。注意8个判定节点和各列的K逻辑电路组分别被同时执行。此外,第三列的第零行至第七行的K逻辑电路的输出代码分别被作为往第一数位至第七数位的进位C1至C7和往外部的进位输出Cout,如果输出代码是“1”,就认为“有进位输出”,如果输出代码是“0”,就认为“无进位输出”。
对于图39的结构,如果再给和产生电路增加以下部分,就能够组成BLC加法系统的加法器:求数位值X0和数位值Y0的“异或”逻辑的第零数位的“异或”门电路,求第零数位的“异或”门电路的输出和进位输入Cin的“异或”逻辑并把其作为第零数位的和的第零行的“异或”门电路,求第一数位至第七数位的和三态码产生电路CGA1至CGA7的输出代码Ti,1的负逻辑和第三列的第零行至第六行的K逻辑电路KLD30至KLD33和KLR34至KLR36的输出代码之间的“异或”逻辑并将其定义为第一数位至第七数位的和的第一行至第七行的“异或”门电路。
此外,在图40中,符号最佳化BLC阵列包括:输出三个值中的任一个值作为基于数位值Xi,Yi的判定结果的n=8个和三态码产生电路(判定节点)CGA0至CGA7,以及各行相应于各数位的8行3列(m=3是根据log28=3而得到的)K逻辑电路矩阵。在该K逻辑电路矩阵中,第一列的K逻辑电路组包括作为虚节点的、反相第零数位的和三态码产生电路CGA0的判定结果并传送该判定结果的第零行的K逻辑电路KLDPN10,第一行的简化K逻辑电路KLRPN11,以及第二行至第七行的K逻辑电路KLPN12至KLPN17;第二列的K逻辑电路组包括作为逆虚节点的第零行和第一行的K逻辑电路KLDPN20和KLDNP21,第二行和第三行的简化K逻辑电路KLRNP22和KLRNP23,以及第四行至第七行的K逻辑电路KLNP24至KLNP27;第三列的K逻辑电路组包括作为逆虚节点的第零行至第三行的K逻辑电路KLDPN30至KLDPN33和第四行至第七行的简化K逻辑电路KLRPN34至KLRPN37。注意8个判定节点和各列的K逻辑电路组分别同时执行它们的操作。此外,如果第三列的第零行至第七行的K逻辑电路的输出代码分别被作为往第一数位至第七数位和往外部的进位输出Cout,如果输出代码是“1”,就认为“有进位输出”,如果输出代码是“0”,就认为“无进位输出”。
对于图40的结构,如果再给和产生电路增加以下部分,就能够构成符号最佳化的BLC加法系统的加法器:求数位值X0和数位值Y0的“异或”逻辑的第零数位的“异或”门电路,求第零数位的“异或”门电路的输出和进位输入Cin的“异或”逻辑并把其作为第零数位的和的第零行的“异或”门电路,求第一数位至第七数位的和三态码产生电路CGA1至CGA7的输出代码Ti,1的负逻辑和第三列的第零行至第六行的K逻辑电路KLDPN33和KLRPN34的输出代码的负逻辑之间的“异或”逻辑并将其定义为第一数位至第七数位的第一行至第七行的“异或”门电路。
如上所述,本实施例的BLC加法系统的BLC加法器的结构利用LSB(位0)的确定性质来反映执行LSB的进位的存在判定的和三态码产生电路CGA0中的进位输入Cin,由此就能够设计出基于这种结构的K值逻辑电路的二进制树结构和不如普通BLC加法器那样具有第一行、由此比普通BLC加法器少了一行的BLC阵列。这就减少了门的数目和表面面积。此外,在实现K逻辑功能的K值逻辑电路的二进制树中,通过只利用选择器来提供结构简化的K值逻辑电路KLR,就能够消除逻辑冗余电路和构成晶体管数量较少的二进制树。此外,本实施例的BLC加法系统的加法器没有复合逻辑门电路(或复合逻辑门电路的逻辑功能),所以没有复合逻辑门电路的不足,与普通BLC系统加法器相比,具有较简单和速度快的优点。此外,产生三态码的和三态码产生电路CGA较简单,可用较少的门(或较少的晶体管)来实现。
(精简BLC阵列)
但是,图39和图40所示的BLC阵列的晶体管数目还是过多。因此,为了进一步减少BLC阵列的门数,去除BLC阵列的偶数行,如图41所示地用精简BLC阵列来实现加法器。
精简BLC阵列只产生往偶数位的进位信号。往奇数位的进位信号不能够直接得到。即对于图41所示的位和位7,往位6的进位信号可得到,但得不到往位7的进位信号。利用往位6的进位信号和在位6的输入级处产生的三态码间接产生往位7的进位信号。由于把精简BLC阵列设计成为产生往奇数级的进位的各个级与二进制树级联,所以稍微增大了延迟,但大大减少了门数。
在图41中,精简BLC阵列包括:输出三个值中的任一个值作为基于数位值Xi,Yi的判定结果的n=8个和三态码产生电路(判定节点)CGA0至CGA7,以及各行相应于各数位的8行3列(m=3是根据log2 8=3而得到的)K逻辑电路矩阵。在该K1逻辑电路阵列中,第一列的K逻辑电路组包括第一行的简化K逻辑电路KLR11以及第三行、第五行和第七行的K逻辑电路KL13、KL15和KL17;第二列的K逻辑电路组包括作为虚节点的第一行的K逻辑电路KLD21、第三行的简化K逻辑电路KLR23以及第五行和第七行的K逻辑电路KL25和KL27;第三列的K逻辑电路组包括作为虚节点的第一行和第三行的K逻辑电路KLD31和KLD33,还包括第五行和第七行的简化K逻辑电路KLR35和KLR37。注意8个判定节点和各列的K逻辑电路组分别被同时执行。
此外,在图41中,还增加了和产生单元100。即该和产生单元包括求数位值X0和数位值Y0的“异或”逻辑的第零数位的“异或”门电路GXSO以及和产生电路。此处的该和产生电路包括:求第零数位的“异或”门电路GXSO的输出和进位输入Cin的“异或”逻辑并将其作为该第零数位的和S0的第零行的“异或”门电路GXO0,求第零数位的和三态码产生电路CGA0的输出代码T0,0和第一数位的和三态码产生电路CGA1的输出代码T1,1的负逻辑的“异或”逻辑并将其作为第一数位的和S1的第一行的“异或”门电路(未示出);第f行的选择器(进位产生装置)SLf(图中仅示出SL7),当第f数位的和三态码产生电路CGAf(f=2至6的偶数)的输出代码Tf,1是“1”时选择该行的输入数位值Xf或Yf,当输出代码Tf,1是“0”时选择第f-1行的K逻辑电路的输出代码,并将选择结果作为往第f+1行的进位进行输出;求第f数位的和三态码产生电路CGAf的输出代码Tf,1的负逻辑和第f-1行的K逻辑电路的输出代码的“异或”逻辑并将其作为第f数位的和Sf的第f行的“异或”门电路GXOf;以及求第f+1数位的和三态码产生电路CGAf+1的输出代码Tf+1,1的负逻辑和第f行的选择器SLf的输出的“异或”逻辑并将其作为第f+1数位的和Sf+1的第f+1行的“异或”门电路GXOf+1。
此外,图41中所示的和产生电路的局部逻辑电路是由三部分构成的,即位6的和产生部分,位6的三态码说明和位7的进位产生部分,以及位7的和产生部分。这个逻辑电路具有{100,01,11,10}={Q,Q、Y,NO}的赋值。因此,当采用另一种赋值方法时,和产生电路自然就变成不同的逻辑结构,但是基本框架自架是由现在所提到的三部分所构成的。
此外,在图42和图43中,示出了和产生电路结构的另外的实施例。首先,在图42中,示出了位6的和产生部分及位7的和产生部分。即从位2至位7的和产生电路的部分结构包括:第f行的选择器(进位产生装置)SLAf,求通过当第f数位的和三态码产生电路CGAf(f=2至6的偶数)的输出代码Tf,1是“1”时选择该行的输入数位值Xaf或Ybf,和当该输出代码Tf,1是“0”时选择第f-1行的K逻辑电路的输出代码,并将选择结果作为往第f+1数位的进位而得到的结果的负逻辑;求第f数位的判定节点的输出代码Tf,1和第f-1行的K逻辑电路的输出代码的“同”逻辑并将其作为第f数位的Sf的第f行的“同”门电路GXNAf;以及求第f+1数位的和三态码产生电路CGAf+1的输出代码Tf+1,1和第f行的选择器SLAf的输出的“异或”逻辑并将其作为第f+1数位的和Sf+1的“异或”门电路GXAf。
其次,图43是和产生电路结构的另一实例中的位6的和产生部分及位7的和产生部分的结构的局部图示。从位2至位7的和产生电路的局部结构包括:求第f数位的三态码产生电路CGAf(f=2至6的偶数)的输出代码和该行的输入数位值Xaf或Ybf的“与非”逻辑的“与非”门电路GABf1;求第f+1数位的和三态码产生电路CGAf+1的输出代码Tf+1,1和“与非”门电路GABf1的输出的“异或”逻辑并输出第f+1行的第零个被选择信号的“异或”门电路GXBf2;求第f数位的和三态码产生电路CGAf的输出代码Tf,1和第f+1行的第零个选择信号的“同”逻辑并输出第f+1行的第一个被选择信号的“同”门电路GXBf3;求第f数位的和三态码产生电路CGAf的输出代码Tf,1和第f-1行的K逻辑电路的输出代码的“同”逻辑并将其作为第f数位的和Sf的“同”门电路GXNBf;以及第f+1行的选择器(和产生选择装置)SLBf,求通过当第f-1行的K逻辑电路的输出代码是“1”时选择第f+1行的第一被选择信号,和当该输出代码是“0”时选择第f+1行的第零个被选择信号,并将选择结果作为第f+1数位的和Sf+1而得到的结果的负逻辑。与图41的结构相比,硬件的数量增大了,但对于对信号传播延迟时间要求苛刻的传送进位信号的路径来说,图41中的选择器和“异或”门电路的延迟在图43中就只是从选择器的选择端至输出端的延迟,所以实现了能以更高速度执行和产生的加法器。
如上所述,本实施例的精简BLC加法系统的加法器采用了精简BLC阵列,这种阵列是通过删除BLC阵列的偶数行和减少门数来将BLC阵列的门数和在BLC阵列中的许多长的布线减少一半来获得的。相反地,操作步骤数增大了1,但由于BLC阵列的元件和布线的数目减半,所以BLC阵列的结构变得更简单并缩短了延迟时间,因此操作步骤数的增大不总是意味着延迟的增大。于是未去除偶数行的BLC阵列和去除了偶数行的BLC阵列的加法器的延迟相等,但要注意到精简BLC阵列的加法器在晶体管数量和布线的简单性方面有优越之处。
6.3.4.三态码的其它分配
可以通过改变三态码的二进制表示来使输入级的逻辑电路更加精炼。就是说,当作其它的表示分配时,不仅可以改变输入级,而且可以改变二进制树的树干的逻辑电路。
以下再把上述分配方法说明如下:
{00,01,11,10}={Q,Q,Y,N}Q有两种二进制表示。这意味着Q={0*}。“*”指“随意位”。
把4种二进制表示{00,01,11,10}分配给三态码{Q,Y,N},根据余下的一种表示的不同,有种表示方式。图44和图45表示包括以上分配的三态码二进制树的4种表示方式及每一种方式相应的K逻辑功能及K逻辑电路。
首先,在图44A的{00,01,11,10}={Y,F,Q,Y}的分配中,K逻辑功能可用以下公式来表示。注意“F”指“禁止”。
T1=H1·(^H0+L1)
T0=H0·L0
此外,当代码H优于代码L时,就把K逻辑电路设计成包括:求代码H0的逻辑的代码^H0和代码L1的“或”逻辑与代码H1的“与”逻辑并将结果作为代码T1输出的复合逻辑门电路(第9个复合逻辑门装置)GC9,以及求代码H0和代码L0的“与”逻辑并将结果作为代码T0输出的“与”门电路GA1。
其次,在图44B的{00,01,11,10}={F,Y,Q,Y}的分配中,K逻辑功能可用以下公式来表示:
T1=^H0+H1·L1
T0=^H1+H0·L0
此外,当代码H优于代码L时,就把K逻辑电路设计成包括:求代码H1和代码L1的“与”逻辑与代码^H0(代码H0的负逻辑)的“或”逻辑并将结果作为代码T1输出的复合逻辑门电路(第7个复合逻辑门装置)GC7,以及求代码H0和代码L0的“与”逻辑与代码^H1(代码H1的负逻辑)的“或”逻辑并将结果作为代码T0输出的复合逻辑门电路(第8个复合逻辑门装置)GC8。
接着,在图45A中所示的{00,01,11,10}={Y,F,N,Q}的赋值中,K逻辑函数变成下列公式:
T1=H0+H1·L1
T0=H0+H1·L0
此外,当代码H优于代码L时,就把K逻辑电路设计成包括:求和代码H1和代码L1的“与”逻辑与代码H0的“或”逻辑并将结果作为代码T1输出的复合逻辑门电路(第1复合逻辑门装置)GC1,以及求代码H1和代码L0的“与”逻辑与代码H0的“或”逻辑并将结果作为代码T0输出的复合逻辑门电路(第2复合逻辑门装置)GC2。
6.3.5实施例的改进
此外,图45B所示的{00,01,11,10}={Q,Q,Y,N}的分配是在开发上述实施例集中使用的分配,示出是为了比较起见。就是说,采用{Q,Q,Y,N}分配的比较器和加法器的实施例如上所述。在此,即使考虑采用{Y,F,N,Q}分配的比较器和加法器的情况,也可以通过采用图45A的K逻辑电路类似地构成二进制树。二进制树的结构和精简BLC阵列的结构是相同的。注意需要使用比较器和加法器的输入级、加法器的和产生电路等,它们都具有适合于它们的逻辑电路结构。这些电路的例子示于图46。
图46A是作为按照{00,01,11,10}={Y,F,N,Q}分配来设计的比较器的输入级的比较三态码产生电路CGCa的电路图。该比较三态码产生电路CGCa的电路图。该比较三态码产生电路CGCa包括:对于数位(Xi,Yi,i=0至n-1)的n个位,求数位值Xi和负逻辑门电路GN11产生的数位值Yi的负逻辑的“与非”逻辑并将该“并非”逻辑作为代码Ti,1输出的“与非”门电路GNA11;以及求数位值Xi和负逻辑门电路GN11产生的数位值Yi的负逻辑的“或非”逻辑的“或非”门电路GN011。
此外,图46B是作为按照{00,01,11,10}={Y,F,N,Q} 分配来设计的加法器的输入级的和三态码产生电路CGAa的电路图。该和三态产生电路CGAa包括:对于数位(Xi,Yi,i=0至n-1)的n个位,求数位值Xi和数位值Yi的“与非”逻辑并将其输出作为代码Ti,1的“与非”门电路GNA12;以及求数位值Xi和数位值Yi的“或非”逻辑并将其输出作为代码Ti,0的“或非”门电路GNO12。
此外,图46C和46D是根据{00,01,11,10}={Y,F,N,Q}的分配,用具有正逻辑输入负逻辑输出的K逻辑电路KLaPN和具有负逻辑输入正逻辑输出的K逻辑电路KLaNP构成的三态码二进制树的电路图,进行符号最佳化后它们就变成较高优先的确定节点。
在图46C中,具有正逻辑输入负逻辑输出的K逻辑电路KLaPN包括:在较高有效位判定的情况下接收代码Ti作为其输入和在较低有效位判定的情况下接收代码Tj作为其输入时,求代码Ti,1和代码Tj,1的“与”逻辑与代码Ti,0的“或非”逻辑的复合逻辑门电路GC3;以及求代码Ti,1和代码Tj,0的“与”逻辑与代码Ti,0的“或非”逻辑并将其输出作为代码Ti,j,0的复合逻辑门电路GC4。
在图46D中,具有负逻辑输入正逻辑输出的K逻辑电路KLaNP包括:在较高有效位判定的情况下接收代码Ti作为其输入和在较低有效位判定的情况下接收代码Tj作为其输入时,求代码Ti,1和代码Tj,1的“或”逻辑与代码Ti,0的“与非”逻辑的复合逻辑门电路GC5;以及求代码Ti,1和代码Tj,0的“或”逻辑与代码Ti,0的“与非”逻辑并将其输出作为代码Ti,j,0的复合逻辑门电路GC6。
此外,图46E是当按照{00,01,11,10}={Y,F,N,Q} 的分配设计加法器时,和产生的部分电路图,该加法器代替了图60的电路图中的和产生电路。图中产生奇数位和偶数位之和的部分电路包括:求奇数位数和三态码产生电路(输入级)的输出代码Ti,1和^代码Ti,0的“与非”门电路GA21;求偶数位和的三态码产生电路(输入级)的输出代码Tj,1和代码Tj,0的“或非”逻辑的“或非”门电路GNO21;求通过当“或非”门电路GNO21的输出是“1”时选择往偶数位的进位和当该输出是“0”时选择偶数位的和三态码产生电路的输出代码Tj,1来得到的结果的负逻辑并将该负逻辑作为往奇数位的进位信号输出的选择器SL11;求“与非”门电路GA21的输出和选择器SL11的输出(往奇数位的进位)的“异或”逻辑并将该“异或”逻辑作为奇数位之和输出的“异或”门电路GX11;以及求“或非”门电路GNO21的输出和往偶数位的进位信号的“异或”逻辑并将该“异或”逻辑作为偶数位之和输出的“异或”门电路GX12。
如上所述,在本发明的算术和逻辑单元及其操作方法中,一旦通过对设计者需要实现的处理进行充分考虑来,确定恰当的三态码产生问题,则如果选定了三态码产生问题的三态码二进制树的最方便的系统就足够了,这样就能够实现三态码二进制树形式的合适的算术和逻辑单元及其操作方法。
[第五实施例]
6、4减法器的实施例
6、4、1差三态码产生
以下为了构成判断是否发生借位的三态码二进制时,可以根据在“4.2.3减法借位的情况”中所描述的判定的内容,如下地定义差三态码产生问题。
差三态码产生问题:“相同数位位置的两个数之差(Xi-Yi)
是负的(即发生了借位。Xi<Yi)(是)?
是正的(即没有发生借位。Xi>Yi)(否)?
是零(即不知道是否有借位,取决于低一位的位置。Xi=Yi)(Q)?”
当把这一问题应用于n位二进制的减法时,就得到图47A所示的逻辑功能的真值表,以及以下逻辑函数:
Ti,1=Xi(+)Yi
Ti,0=Yi (6)于是根据公式(6),起减法器输入级作用的差三态码产生电路就如图47B所示。
即在图47B中,起减法器输入级作用的判定节点用差三态码产生电路(GSi(i=0至n=1)来实现,该差三态码产生电路CGSi包括:求数位值Xi和数位值Yi的“异或”逻辑并将其作为代码Ti,1输出的“异或”门电路GX21,以及输出数位值Yi作为代码Ti,0的连线SGS。
以下将看到,本发明的在减法输入级中使用的差三态码产生电路没有被设计成如普通减法器那样具有增加到加法器输入级的反相器,而是不管门数如何都把用于确定差的部分逻辑操作作为内部部分的逻辑,信号传播延迟等价于加法器输入级(和三态码产生电路)的延迟。因此能够以理想的结构来实现减法器,不增大门数和信号传播延迟。此外,由于其包括将由输出级的差操作来执行的逻辑操作,所以输出级的逻辑电路变得更简单,可用较少的门来实现。
注意差三态码产生问题不限于二进制数,而是适合于任何R进制的数。这是因为如果能够在这一三态码产生问题一致地用诸如多值逻辑电路或模拟电路这样的R进制表示的电路系统来实现差三态码产生电路,就能够用相应于加法器中的BLC阵列的三态码二进制树的BLB阵列来产生往各个数位的借位Bi。对于差产生,如果单独地设计实现(Xi-Yi-Bi)的电路(减法器的一个R进制位的效用)并组合这些电路,就得到R进制减法器。
6.4.2位0的确定性质
如在“4.2.3减法借位的情况”中所描述的,对于是否发生借位的问题,在最后结论中不能够回答“因依赖性的缘故不知道”。这是因为位0具有确定性质,所以回答不是“是”就是“否”的缘故。位0没有对于较低有效位的依赖性。由于没有依赖性,所以回答决不会是不知道。决不会有回答“Q”。基于此的位0的三态码产生的真值表如图48A所示。Bin是来自外部的借位输入。
显然,根据真值表,代码T0,1总是“1”。不管输入如何,总是常数值的输出可被删除。据由此得到的位0的差三态码产生电路CGS0如图48B所示。
在图48B中,位0的差三态码产生电路CGS0包括:求负逻辑门电路GN21产生的故位值X0的负逻辑和数位值Y0的“或非”逻辑的“或非”门电路GNO21,求负逻辑门电路GN21产生的数位值X0的负逻辑和数位值Y0的“或非”逻辑的“与非”门电路GNA21,以及求通过当减法器的借位输出和当该借位输入Bin是“0”时选择“与非”GNA21的输出得到的结果的负逻辑并将该负逻辑作为代码T0,0输出的选择器(选择装置)SL21,该CGS0不输出代码T0,1。
此外,注意到代码T0,1总是“1”这一事实,可以删除K逻辑电路KL的冗余逻辑。在删除之前,减法器中的K逻辑电路的二进制树如图49A所示。可以看出总是“1”的信号(图中的实线)顺序地传送。即使删除总是产生恒定值的线路的逻辑是没有问题的。因此,如图49B所示,得到了采用通过删除冗余逻辑得到了简化的K逻辑电路KLR的二进制树。
在图49B中,K逻辑电路中的后由执行两个数的LSB的借位的存在判定的差三态码产生电路CGS0输出的代码T0,1的K逻辑电路用一简化K逻辑电路KLR来实现,不输出代码Tij,1,该简化K逻辑电路KLR包括:当代码Ti,1是“1”时选择代码Ti,0和当代码Ti,1是“0”时选择代码Tj,0并将结果作为代码Tij,0输出的选择器(选择装置)SL5。注意,如果起二进制树的树根作用的K逻辑电路KLR的输出代码是“1”,就认为“有借位输出”,如果该输出代码是“0”,就认为“没有借位输出”。
6.4.3借位产生二进制树的结构
(借位产生二进制树的情况)
产生借位的二进制树可以用通过把差三态码产生电路CGSi(i=0至n-1)作为树叶和把K逻辑电路KL或KLR作为树干构成的二进制树来实现。作为一具体例子,图50示出8位的情况。位0的信号所经过的K逻辑电路是简化K逻辑电路KLR。此外,该简化K逻辑电路KLR的输出是一个位。
在图50中,8位二进制数(X,Y)的借位产生二进制树被设计成把差三态码产生电路CGS0至CS7作为判定节点,把K逻辑电路KLR11、KL21、KLR22、KL31至KL33和KLR34作为较高优先级确定节点,该借位产生二进制树用把差三态码产生电路CGS0至CGS7作为树叶以及把K逻辑电路KLR11、KL21、KLR22、KL31至KL33和KLR34作为树叶外的节点的三态码二进制树建立了问题的模型。注意起树叶作用的差三态码产生电路CGS0至CGS7和K逻辑电路KLR11、KL21、KL22和位于二进制树同一深度处的K逻辑电路KL31至KL33和KL34同时执行它们的操作。
在图50的具体例子中,示出了产生在进行两个8位数的相减时产生的借位信号Bout(外部输出)的二进制树。一般来说,为了产生往位n的借位信号,需要大小从位(n-1)至位0的二进制树。
如上所述,利用本实施例的减法器,在进行8位二进制时(X,Y)的相减时,差三态码产生电路(判定节点)CGSi用“异或”门电路GX21和连线SGS来实现,减法的三态码用起二进制树的树叶作用的差三态码产生电路CGSi来产生,由此就能够实现二进制减法器的先行借位电路。此外,差三态码产生电路的逻辑也是简单的,可用较少的门数(较少的晶体管)来实现。
(借位产生二进制树的总体结构:BLB阵列)
以下按照与构成产生对位7的借位的二进制树相同的方式,当对于每一个位构成产生对各个位的数字借位的二进制树并进行叠加时,就得到图51的结果。
在图51中,以阵列的方式排列实现差三态码产生电路和K运算符的K逻辑电路。这就是相应于加法器中的BLC阵列的所谓三态码二进制树的BLB阵列。
在图51中,BLB阵列包括:输出三个值中的任一个值作为基于数位值Xi,Yi的判定结果的n=8个差三态码产生电路(判定节点)CGS0至CGS7,以及各行相应于各数位的8行3列(m=3是根据log28=3而得到的)K逻辑电路矩阵。在该K逻辑电路矩阵中,第一列的K逻辑电路组包括作为虚节点的第零行的K逻辑电路KLD10,它原封不动地传送第零数位的差三态码产生电路CGS0的判定结果,还包括第一行的简化K逻辑电路KLR11以及第二行至第七行的K逻辑电路KL12至KL17;第二列的K逻辑电路组包括作为虚节点的第零行和第一行的K逻辑电路KLD20和KLD21、第二行和第三行的简化K逻辑电路KLR22和KLR23、以及第四行至第七行的K逻辑电路KL24至KL27;第三列的K逻辑电路组包括作为虚节点的第零行至第三行的K逻辑电路KLD30至KLD33和第四行至第七行的简化K逻辑电路KLR34至KLF37。注意8个判定节点和各列的K逻辑电路组分别被同时执行。此外,第三列的第零行至第七行的K逻辑电路的输出代码分别被作为第一数位至第七数位的借位B1至B7和往外部的借位输出Bout,如果输出代码是“1”,就认为“有借位输出”,如果输出代码是“0”,就认为“无借位输出”。
在实际逻辑电路的设计中,考虑到CMOS逻辑电路的性质,将使用称为符号最佳化的技术。此处的“符号最佳化”是把由在多个级中级联的正逻辑输入负逻辑输出的逻辑电路组成的结构变换成为由交替地级联的正逻辑输入负逻辑输出的级(PN级)和负逻辑输入正逻辑输出的级(NP)级组成的结构的方法。通过利用这种符号最佳化方法,可以减少冗余晶体管,因此减少了晶体管个数,提高了操作速度。
也可以对在此所示本实施例的减法器进行符号最佳化。即对具有正逻辑输入正逻辑输出的K逻辑电路KL进行符号最佳化,以便得到图52A所示的具有正逻辑输入负逻辑输出的K逻辑电路KLPN和图52B所示的具有负逻辑输入正逻辑输出的K逻辑电路KLNP。
在图52A中,具有正逻辑输入负逻辑输出的K逻辑电路KLPN被设计成具有求代码Ti,1和代码Tj,1的“或非”逻辑并将结果作为代码Ti,j,1输出的“或非”门电路GNO1,还具有求通过当代码Ti,1是“1”时选择代码Ti,0和当代码Ti,1是“0”时选择代码Tj,0得到的结果的负逻辑并将该负逻辑作为代码Tij,0输出的选择器(第二选择装置)SL2。
在图52B中,具有逻辑输入负逻辑输出的K逻辑电路KLNP被设计成具有求代码Ti,1和代码Tj,1的“与非”逻辑并将结果作为代码Tij,1输出的“与非”门电路GNA1,还具有求通过当代码Ti,1是“0”时选择代码Ti,0和当代码Ti,1是“1”时选择代码Tj,0得到的结果的负逻辑并将该负逻辑作为代码Tij,0输出的选择器(第三选择装置)SL3。
如果相对于图51的BLB阵列使用正逻辑输入负逻辑输出的K逻辑电路KLPN和负逻辑输入正逻辑输出的K逻辑电路KLNP,就得到图53所示的符号最佳化的BLB阵列。注意应用了符号最佳化后,虚节点就被执行逆逻辑的反相虚节点(反相器)代替。
在图54中,符号最佳化BLB阵列包括:输出三个值中的任一个值作为基于数位值Xi,Yi的判定结果的n=8个差三态码产生电路(判定节点)CGS0至CGS7,以及各行相应于各数位的8行3列(m=3是根据log28=3而得到的)K逻辑电路矩阵。在该K逻辑电路矩阵中,第一列的K逻辑电路组包括作为虚节点的第零行的K逻辑电路KLDPN10,它反相地传送第零数位的差三态码产生电路CGS0的判定结果,还包括第一行的简化K逻辑电路KLRPNII以及第二行至第七行的K逻辑电路KLPN12至KLPN17;第二列的K逻辑电路组包括作为反相虚节点的第零行和第一行的K逻辑电路KLDNP20和KLDNP21、第二行和第三行的简化K逻辑电路KLRNP22和KLRNP23、以及第四行至第七行的K逻辑电路KLNP24至KLNP27;第三列的K逻辑电路组包括作为反相虚节点的第零行至第三行的K逻辑电路KLDPN30至KLDPN33和第四行至第七行的简化K逻辑电路KLRPN34至KLRPN37。注意8个判定节点和各列的K逻辑电路组分别同时执行它们的操作。此外,由于m=3(奇数),所以第三列的第零行至第七行的K逻辑电路的输出代码被分别作为第一数位至第七数位的借位B1于B7和往外部的借位输出Bout,如果输出代码是“0”,就认为“有借位输出”,如果输出代码是“1”,就认为“无借位输出”。
如上所述,本实施例的BLB减法系统的BLB减法器利用LSB(位0)的确定性质来反映执行LSB的进位的存在判定的差三态码产生电路CGS0中的借位输入Bin,由此就能够简化基于这种设计的K逻辑电路的二进制树结构。这对于减少门数和表面面积是有益的。此外,在实现K逻辑功能的K值逻辑电路的二进制树中,通过只利用选择器来提供结构简化的K值逻辑电路KLR,就能够消除逻辑冗余电路和构成晶体管数量较少的二进制树。此外,本实施例的BLB减法系统的减法器没有复合逻辑门电路(或复合逻辑门电路的逻辑功能),所以没有复合逻辑门电路的不足,提高了速度。此外,产生三态码的差三态码产生电路CGS较简单,,可用较少的门(或较少的晶体管)来实现。
[差的产生]
进一步从相同数位位置的差(Xi-Yi)(i=0至7)中减去位(i-1)对位i的借位Bi就得到是最后操作结果的差的产生。例如,确定位7的差输出D7的电路如图54所示。注意,图54用来说明要被附加到图51的BLB阵列的差产生级,其中的图54A是产生位7的差输出D7的部分电路图,而图54B是产生位0的差输出D0的部分电路图。
进一步从相同数位位置的差(X7-Y7)中减去位6对位7的借位B7就得到位7的差输出D7。
D7=X7-Y7-B7
=X7(+)Y7(+)B7(模2) (8)
就是说,位6对位7的借位B7是利用范围从位6至位0的二进制树来产生的。求这种二进制树的输出和X7(+)Y7的“异或”逻辑(EXOR),就可得到位7的最后差输出D7。
这种三态码二进制树的一个出色的性质是“异或”操作X7(+)Y7被包括在差三态码产生电路CGSi之中。注意这一性质是在按照{00,01,11,10}={Q,Q,Y,N}这样的分配产生三态码的情况下获得的。一般来说,如果改变三态码表示的分配方法,就会改变差三态码产生电路的结构。因此,作为执行差的产生的逻辑电路,需要根据这种变化使用合适的差三态码产生电路。注意二进制树的结构没有改变。
为了产生差,应增加给图51的BLB阵列的结构如下。就是说,如果给图51增加差产生电路,就能够设计出BLB减法系统的减法器,该差产生电路包括:求数位值X0和数位值Y0的“异或”逻辑的第零数位的“异或”门电路GXK0,求该第零级数位的“异或”门电路GXK0的输出和借位输入Bin的“异或”逻辑并将其定义为第零数位的差D0的第零行的“异或”门电路GXD0,以及求第一数位至第七数位的差三态码产生电中睡CGS1至CGS7的输出代码Ti,1和K逻辑电路阵列的第三列的第零行至第六行的K逻辑电路KLD30至KLD33的输出代码之间的“异或”逻辑并将其定义为第一数位至第七数位的差D1至D7的“异或”门电路GXD1至GXD7。
对于也应用了图53的符号最佳化的结构,同样地,如果增加一差产生电路,就能够设计出进行了符号最佳化的BLB减法系统的减法器,该差产生电路包括:求数位值X0和数位值Y0的“异或”逻辑的第零数位的“异或”门电路GXK0,求该第零数位的“异或”门电路GXK0的输出和借位输入Bin的“异或”逻辑并将其定义为第零数位的差D0的第零行的“异或”门电路GXD0,以及求第一数位至第七数位的差三态码产生电路CGA1至CGA7的输出代码Ti,1和第三列的第零行至第六行的K逻辑电路KLDPN30至KLDPN33的输出代码的负逻辑之间的“异或”逻辑并将其定义为第一数位至第七数位的差D1至D7的“异或”门电路。
如上所述,在本实施例的减法器中,当使用{00,01,11,10}={Q,Q,Y,N}分配的K逻辑电路的二进制树,执行数位Xj,Yj(j=1至n-2)的借位的存在判定的判定节点就包括求数位值Xj和数位值Yj的“异或”逻辑并将结果作为代码Tj,1输出的“异或”门电路GX21,这样就能够利用输出代码Tj,1来获得各数位(Xj,Yj)的“异或”逻辑和利用较简单的结构来产生差。
(精简BLB阵列)
但是,图51和图53所示的BLB阵列的晶体管数目还是过多。因此,为了进一步减少BLB阵列的门数,去除BLB阵列的偶数位,如图55所示地用精简BLB阵列来实现减法器。
精简BLB阵列只产生往偶数位的借位信号B2、B4、B6和Bout,不能够直接得到往奇数位的借位信号B1、B3、B5和B7。
在图55中,精简BLB阵更包括:输出三个值中的任一个值作为基于数位值Xi,Yi的判定结果的n=8个差三态码产生电路(判定节点)CGS0至CGS7,以及各行相应于各数位的8行3列(m=3是根据log28=3而得到的)K逻辑电路矩阵。在该K逻辑电路矩阵中,第一列的K逻辑电路组包括第一行的简化K逻辑电路KLR11以及第三行、第五行和第七行的K逻辑电路KL13、KL15和KL17;第二列的K逻辑电路组包括作为虚节点的第一行的K逻辑电路KLD21、第三行的简化K逻辑电路KLR23以及第五行和第七行的K逻辑电路KL25和KL27;第三列的K逻辑电路组包括作为虚节点的第一行和第三行的K逻辑电路KLD31和KLD33以及第五行和第七行的简化K逻辑电路KLR35和KLR37。注意8个判定节点和各列的K逻辑电路组分别被同时执行。
此外,图56表示要被附加给图55的精简BLB阵列的差产生级。其中的图55A表示产生位7和位6的差输出D7和D6的部分电路图,而图55B表示产生位0和位1的差输出D0和D1的部分电路图。
为了产生差,应增加给图55的精简BLB阵列的结构如下。就是说,增加求数位值X0和数位值Y0的“异或”逻辑的需零数位的“异或”门电路GXK0以及差产生级。该差产生级包括:求第零数位的“异或”门电路GXK0的输出和借位输入的“异或”逻辑并将定义为第零数位的差D0的“异或”门电路和GXD0;求第零数位的差三态码产生电路CGS0的输出代码T0,0和第一数位的差三态码产生电路CGS1的输出代码T1,1的“异或”逻辑并将其定义为第一数位的差D1的“异或”门电路GXD1;当第f数位的差三态码产生电路CGSf(f为2至7的偶数)的输出代码Tf,1是“1”时选择该行的输入数位值Xf或Yf,以及当该输出代码Tf,1是“0”时选择第f-1行的K值逻辑电路的输出代码并将选择结果作为对第f+1数位的借位输出的第f行的选择器(借位产生装置)SLDf(图中仅示出SLK7);求第f数位的差三态码产生电路CGSf的输出代码Tf,1和第f-1行的K值逻辑电路的输出代码的“异或”逻辑并将其定义为第f数位的差Df的“异或”门电路GXDf;以及求第f+1数位的差三态码产生电路CGSf+1的输出代码Tf+1,1和第f行的选择器SLFf的输出的“异或”逻辑并将其定义为第f+1数位的差Df+1第f-1行的“异或”门电路GXDFf+1。
如上所述,本实施例的精简BLB减法系统的减法器采用BLB阵列的偶数行被删除了的精简BLB阵列,减少了门数,于是实现了使BLB阵列的门数和阵列内的许多长的布线减法。相反地,虽然操作步骤数增大了一,但由于元件数目和BLB阵列的布线减半,所以BLB阵列的结构变得更简单,并减小了延迟,因此步骤数的增大不总是意味着延迟的增大。于是偶数行没有被删除和偶数行已被删除的BLB阵列中的减法器的延迟是相同的。注意精简BLB阵列的减法器在晶体管数量和布线简单方面很出色。
6.4.4把三态码二进制树应用于减法器的效果
普通减法器具有增加给加法器输入级的反相器,因此就有这样一来增大了门数和延迟的缺点。采用本发明三态码二进制树的减法器没有这样的缺点。在此区分加法器的差别,以便与普通减法器作比较。
首先,对于输入级的三态码产生电路,比较图47B所示减法器中的差三态码产生电路CGS和图13B所示加法器中的和三态码产生电路CGA,可清楚看到两者的差别仅在于三态码产生电路中的逻辑门电路是“同”门电路(加法器)还是“异或”逻辑门电路(减法器)。在当前设计集成电路的方法中,如图57所示,除与传送门的门电路的连线略微不同外,“异或”逻辑EXOR(图57A)和“同”逻辑EXNOR(图57B)在电路结构方面完全相同。就是说,加法器和减法器在输入级的三态码产生电路的门数和传播延迟方面没有差别。此,与给加法器的输入级增加了反相器的这种结构的普通减法器相比,不增加反相器就实现了使用本实施例的三态码二进制树的减法器,没有增大门数和信号传播延迟的缺点。
[第六实施例]
6.5获取差绝对值的操作的实施例
6.5.1获取差绝对值的操作单元的理想结构
在“本发明要解决的问题”中,对相关技术的获取差绝对值的操作单元的缺点进行了说明,但获取差绝对值的操作单元的理解结构可被认为是根据(X-Y)的操作过程容易地导出(Y-X)的操作过程的方法。具体来说,这由以下处理步骤来确定:
步骤SAA1.假设X>Y,执行(X-Y)操作。
步骤SAA2.如果(X-Y)的结果是负的,假设就是错误的,于是必须执行(Y-X)操作。
把(X-Y)操作过程变成(Y-X)操作过程。
注意步骤SAA2所需的操作变换是不依赖于数据数位的个数n(常数C<log2n)的高速操作,必须用比一个减法器的门数少的门来实现。
6.5.2X-Y和Y-X的差别
以下两个数X=01111101和Y=00000010的减法(X-Y)的过程如图58所示。输入级产生的三态码是
(Q,N,N,N,N,N,Y,N) (9)(Y-X)的情形如何呢?输入级产生的三态码是:
(Q,Y,Y,Y,Y,Y,N,Y) (10)
这一例子说明了(X-Y)和(Y-X)这两种情况下的被产生的三态码的对称性。可以看到如果(9)的各代码、即“Q”、“Y”和“N”分别用“Q”、“N”和“Y”来代替就可得到(10)。因此这一例子说明了如果使用三态码,就能够以非常简单的方式实现获取差绝对值的理想操作单元。这是因为输入级产生的三态码是整个三态码二进制树的BLB阵列内的各数位的借位的缘故。如果输入级的三态码具有对称性,则其借位产生的结果自然具有对称性。在这一例子中,根据(9)得到的借位产生的结果就是:
(N,N,N,N,N,N,Y,N) (11)而根据(10)得到的借位产生的结果就是:
(Y,Y,Y,Y,Y,Y,N,Y) (12)对称是显然的。
因此,可以考虑以下方法作为执行获取差绝对值的操作的方法:
步骤SAG1.执行(X-Y)操作直到借位产生为止。
步骤SAB2.一旦发现(X<Y),就需要改变为(Y-X),利用对称性替换借位产生的结果。
当(X-Y)可以不改变时,借位产生的结果也可以不改变。
观察借位产生结果左端的代码就能够作出X是否小于Y的判定。当最高有效位(左端)的代码是Y时,就是(X<Y),当该代码是N时,就是(X>Y)。步骤SAB3和步骤SAB2得到的借位产生结果输入给减法器中的差产生逻辑电路来产生差。
这一值就是差的绝对值。
但是,用这一方法不能总是得到正确结果。因此,考虑图59所示的另一个例子。即在X=01111100和Y=00000010的减法(X-Y)的情况下,输入级产生的三态码是
(Q,N,N,N,N,N,Y,N) (13)(Y-X)的情形如何呢?输入级产生的三态码是:
(Q,Y,Y,Y,Y,Y,N,N) (14)
比较(13)和(14),猛一看先前的对称性似乎存在。从左端至第七个位确定是对称的。但是,位0的代码(最右侧)是一个例外。在(13)和(14),位0的代码是“N”。这种不对称性使借位产生结果不对称,因此不能用以上方法获得差的绝对值。
6.5.3利用三态码的差绝对值操作的方法
在以上两个例子中,在第一个例子中,包括位0都有对称性。相反地,在第二个例子中,位0没有对称性。前者的X和Y的但0分别是“1”和“0”,而后者的X和Y的但0都是“0”。但是,在这两个例子中,被产生的三态码都是相同的“N”。这就是问题的所在。
在第一个例子中,即X和Y的位0的数字是不同的情况下,如果交换(X-Y)的X和Y,则位0的大小关系就颠倒。因此,代码“N”自然被代码“Y”代替。但是,在第二个例子中,即X和Y的位0的数字是相同的情况下,即使交换(X-Y)的X和Y,位0的大小关系也不改变。因此自然不必用代码“Y”代替代码“N”。尽管有相同的代码“N”,也需要两种方法来处理交换X和Y的情况,因此失去了对称性。这种情况表明需要区分“在(X0-Y0)的操作中不出现借位(“N”)和在(Y0-K0)的操作中出现借但(“Y”)的情况和”在(X0-Y0)的操作中不出现借位(“N”)和在“Y0-X0)的操作中也不出现借位(“N”)的情况。
事实上,可用简单的方法解决这一问题。到目前为止,按照与其它位的三态码产生相同的方式进行位0的三态码产生就足够了。对于除位0外的其它位,当(X,Y)的位是(0,0)/(1,1),就产生代码“Q”来表示“不知道是否将出现借位”,当(X,Y)的位是(1,0)时,就产生代码“N”来表示“将不会出现借位”,当(X,Y)的位是(0,1)时,就产生代码“Y”来表示“将出现借位”。对于位0,方便的做法是:在(0,0)/(1,1)时产生代码“Q”来表示“在(X0-Y0)的操作中将不出现借位(“N”)和在(Y0-X0)的操作中也将不出现借位(“N”)”,在(1,0)时产生代码“N”来表示“在(X0-Y0)的操作中将不出现借位(“N”)和在(Y0-X0)的操作中将出现借位(“Y”)”,以及在(0,1)时产生代码“Y”。
如图60所示地把代码的这种产生应用于以上第二个例子(X=01111100,Y=00000010)。
在(X-Y)的情况下,输入端产生的三态码是:
(Q,N,N,N,N,N,Y,Q) (15)在(Y-X)的情况下,变成
(Q,Y,Y,Y,Y,Y,N,Q) (16)显然三态码有对称性。就是说,如果对(15)的代替分别进行替换,即用“Q”代替“Q”、用“N”代替“Y”和用“Y”代替“N”,就得到(16)。借位产生结果同样也有对称性。
注意,当打算把(15)输入给三态码二进制树的BLB阵列和打算获得借位产生结果时,必需小心。减法器中使用的BLB阵列是基于位0的确定性质的简化BLB阵列。就是说,在位0的三态码产生中,通过利用代码“Q”没有被使用这一事实,就能够简化内部部分的逻辑电路。由(15)和(16)可容易看出在获取差绝对值的操作中,对于位0没有使用代码“Q”。因此,与减法器不同,仅用非简化K逻辑电路KL设计的二进制树的BLB阵列是必不可少的。
即使在对根据用于绝对值操作的这一BLB阵列获得的借位产生结果作解释时也必需小心。当代码“Q”被包括在借位产生结果之中时,它必定是在位0产生的“Q”。这是因为在除位0外的其它位产生的代码“Q”在较低有效位的“Y”/“N”情况都被消除的缘故。在位0产生的代码“Q”不表示“因依赖于较低有效位而不知道”这样的意思。如上所述,它表示“在(X0-Y0)的操作中将不出现借位(“N”)以及在(Y0-X0)的操作中也将不出现借位(“N”)”。因此,必需通过用代码“N”代替代码“Q”来执行最后借位的产生。
考虑迄今根据(X-Y)的借位产生结果获取(Y-X)的借位产生结果的方法。如何方法获得差的绝对值?在1个位的情况下,有以下的关系:
(Xi-Yi)-Bi=(Yi-Xi)-Bi(模2)
=Xi(+)Yi(+)Bi(模2)
这表示了与在减法器的输出级处的差产生相同的关系(公式(6))。就是说,如果完成了获取差绝对值的操作的最后借位的产生,则就可以在后续步骤中通过利用确定减法中的差的逻辑电路来实现最后借位的产生。
利用基于以上考虑获得的三态码来产生差的正确的绝对值的方法如下。
步骤SAC1.假设(X-Y),用减法器的输入级的电路(差三态码产生逻辑电路)来产生各数位的三态码。
按照与其它位相同的方法,利用位0的“0”产生代码。
步骤SAC2.把产生的各数位的三态码输入级用于绝对值操作的三态码二进制树BLC阵列,执行借位产生。
步骤SAC3.注意所得到的借位产生结果的左端的代码。
如果左端代码是“Y”(X<Y),就替换借位产生结果的代码。
如果左端代码是“Q”(X=Y),就替换借位产生结果的代码或保持其原样不动。
如果是“N”(X>Y),就保持借位产生结果原样不动。
此处所指的代码替换是分别用“G”代替“Q”、用“N”代替“Y”和用“Y”代替“N”。
步骤SAC4.在步骤SAC3之后,如果代码“Q”被包括在借位产生的结果之中,就用“N”来代替。
步骤SAC5.从步骤SAC3得到的最后借位产生结果的代码只能是“Y”/“N”。
如果是“Y”,Bi=1,如果是“N”,就使Bi等于0,然后输入给差产生电路(减法器的输出级)。
此外,还把在三态码产生的输入级处获得的(Xi(+)Yi)的值输入给差产生电路。
步骤SAC6.在差产生电路中执行运算(Xi(+)Yi(+)Bi)并输出运算结果。这就是差的绝对值。
6.5.4代码替换电路
需要所设计用来实现在上一段末尾描述的方法的步骤SAC3和步骤SAC4处的代码替换的逻辑电路。所需逻辑电路的其余部分已根据第五实施例在减法器中被实现。
就是说,确定两个n位二进制数(X,Y)的差的绝对值操作的算术和逻辑单元被设计成包括:产生所有位(包括位0)的差的三态码的一组判定节点(差三态码产生电路);由较高优先级确定节点矩阵(非简化K逻辑电路矩阵)构成的三态码二2同步电动机对BLB阵列;在产生差绝对值的操作中产生各数位的借位的借位产生单元;以及差产生单元。
此处的借位产生单元被设计成包括一代码判断电路和第零行至第n-2行的代码替换电路,该代码判断电路根据利用第n-1行和第m列的K逻辑电路产生的第n-1数位的借位产生结果对两个数(X-Y)的差的结果进行代码判断,并输出代码判断信号SGN;在代码判断电路的代码判断电话是负或负或零(代码判断信号SGN=1)的情况下,除第m到的K逻辑电路组中的第n-1行的K逻辑电路外,对于第零行对第n-2行的K逻辑电路的输出代码,该第零行至第n-2行的代码替换电路分别用代码“Q”代替代码“Y”,用代码“N”代替代码“Y”和用代码“Y”代替代码“N”,而在代码判断的结果是正或零或正(代码判断信号SGN=0)的情况下,不进行替换,保持代码原样不动,然后对于要被进行代码替换的结果输出,用代码“N”代替代码“Q”或保持代码原样不动,由此获得数位的借位。
图61是按照{00,01,11,10}={Q,Q,Y,N)分配的第i行(i=0至n-2)的代码替换电路SCi的电路图(图61A)和表示基于代码判断的代码判断结果的代码变换(最后借位产生)的表(图61B和61C)。
第零行至第n-2行的代码替换电路SCi被设计成两级。将对称代码替换应用于第一级。就是说,利用“异或”门电路GXAi求代码信号SGN和第零行至第n-2行的K逻辑电路的输出代码Tij,0的“异或”逻辑。在代码判断信号SGN=1时,对于K逻辑电路的输出代码Tij,0,分别用代码“Q”代替代码“Q”,用代码“N”代替“Y”,以及用代码“Y”代替代码“N”。在代码判断信号SGN=0时,不进行代码替换,保持代码原样不变。在第二级中,“与”六电路GAAi求“异或”门电路GXAi的输出和第零行至第n-2行的K逻辑电路的输出代码Tij,1的“与”逻辑,用代码“N”代替代码“Q”,得到各数位的最后借位。此时最后借位代码不是Y就是N,输出是1个位。
由该图显然可见,代码替换电路SCi不仅逻辑简单,而且可高速运行。注意这种代码替换所需的时间不依赖于数据位的个数n,它是一常数。因此,与在产生2的补码时使用的递增器相比,在操作时间和硬件数量?方面都具有优势。
6.5.5获取无正负号差的绝对值的操作单元的结构
获取用三态码抽象地表示的差的绝对值的操作电路的结构如图62所示。图中的代码判断电路可仅用按照{00,01,11,10}=(Q,Q,Y,N)分配的一个“与”门电路来实现。此外,对于图中的树干部分的电路结构,除图61的代码替换电路SC0至SC6外的部件已示于第五实施例的减法器中,位于输入级的差三态码产生电路CGS0’和CGS1至CGS7如图47B所示;构成K逻辑电路矩的K逻辑电路KL11至KL17、KL22至KL27以及KL34至KL37如图5D所示,输出级的差产生级SG1至SG7如图54A所示。
注意,与减法器中的BLB阵列的结构(第五实施例)不同,在图62的BLB阵列中,使用与非位0的差三态码产生电路CGS1至CGS7相同的电路作为位0的差三态码产生电路CGS0’。不用简化K逻辑电路KLR作为K逻辑电路矩阵。与此同时还将虚节点KLD10’、KLD20’、KLD21’和KLD30’至KLD33’从1位宽扩展为2位宽。此外,在图62中,省略了位0的差产生级SG0。该级见图54B。
6.5.6获取有正负号差的绝对值的操作单元的结构
此前描述的差绝对值的操作单元假设了无正负号的二进制数。
例如在X=0000B(=OD)和Y=1111B(=15D)的情况下,将输出值ABS(X-Y)=1111B(=15D)。附加的“B”和“D”分别表示二进制数和十进制数。
相反地,当利用2的补码把两个输入二进制数看作有正负号的二进制数时,在X=0000B(=OD)和Y=1111B(=-1D)的情况下,将输出值:
ABS(X-Y)=0001B(=1D)于是即使在输入完全相同(X=0000,Y=1111)的情况下,输出结果也不相同。因此,图62的获取无正负号差的绝对值的操作单元不能原封不动地作为获取有正负号差的绝对值的操作单元。
但是,令人惊奇的是只对图62的获取无正负号差的绝对值的操作单元作微小的改动就能够得到有正负号差的绝对值的操作单元。就是说,只要交换输入X和Y的MSB并将它们增加给输入就足够了。图63是获取有正负号差的绝对值的操作单元的结构的图示。在该图中,执行两个数的MSB(位7)的三态码产生的三态码产生电路CGS7’把数位值X7作为数位值Y7进行处理,把数位值Y7作为数位值X7进行处理,在其它位的三态码产生电路CGS0’和CGS1至CGS6中交换对Xi和Yi的处理。
6.5.7把三态码二进制树应用于获取差绝对值的效果
如上所述,在本实施例的获取差绝对值的操作单元中,当利用由三态码产生电路组和非简化K逻辑电路阵列构成的三态码二进制树BLB阵列来执行两个数(X,Y)的差的绝对值操作时,首先,利用差三态码产生电路所组成包括位0的所有位的差的三态码。(X-Y)的三态码的产生和(Y-X)的三态码的产生是对称性,于是(X-Y)和(Y-X)的借位产生结果也是对称性。为此,在执行了(X-Y)的借位产生之后,就可以根据这一借位产生结果用非常简单的方法来获得(Y-X)的借位产生结果。
接着把差三态码产生电路产生的包括位0的所有位的差的三态码产生结果提供给K逻辑电路矩阵,在K逻辑电路矩阵内执行各数位的借位产生。该借位产生结果也以三态码的判断式输出,但在这些输出中,保留输入级的三态码产生中预定的对称性。因此,可根据(X-Y)的借位产生结果容易地得到(Y-X)的借位产生结果。
此外,还把差三态码产生电路产生的包括位0的所有位的差的三态码产生结果提供给非简化K逻辑电路笼屉阵,在其中产生各数位的借位。然后根据MSB的借位产生结果,对两个数的差的结果进行代码判断。在MSB的借位产生结果的代码是“Y”时,就是X<Y,执行借位产生结果的代码替换;当结果的代码是“Q”时,就是X=Y,执行借位产生结果的代码替换或保持其原样不变;当结果的代码是“N”时,就是X>Y,保持借位产生结果原样不变。注意在对称代码替换中,用代码“Q”代替代码“Q”,用代码“N”代替代码“Y”和用代码“Y”代替代码“N”。这样一来就能够根据(X-Y)的借位产生结果容易地获得(Y-X)的借位产生结果,并能够实现理想的操作变换。
在代码替换之后,进一步用代码“N”代替代码“Q”,并为替换的结果或K逻辑电路的输出代码产生各数位的借位。即注意在进行了代码替换之后,代码“Q”指“将出现借位”,所以用代码“N”代替代码“Q”。在用代码“N”代替代码“Q”之后,借位产生的结果就变成代码“Y”或代码“N”。代码“Y”指“将出现借位”,即进位Bi=1,代码“N”指“将不会出现借位”,即进位Bi=0。这些都是与减法器中的借位产生结果一样的。因此,可按照与减法器相同的方式利用逻辑电路来实现获取差绝对值的操作单元。
此外,如在“已有技术”中所说明的,有两种经常使用的实现获取差绝对值的操作单元的方法。一种是利用两个减法器并行地执行(X-Y)和(Y-X)的方法(第二种方法),这种方法的特点是速度快,但门数目大。另一种是利用一个减法器和一个递增器通过执行(X-Y)来产生符合需要的2的补码的方法(第三种方法),这种方法的特点是门数目少,但速度慢。第二种和第三种方法的获取差绝对值的操作单元和本发明的获取差绝对值的操作单元之间的门数和延迟的定性细弱如图64所示
一般来说,在N≥8的实际范围内内,有以下关系:
(a)门数
kTN+kAlog2N(本发明的获取差绝对值的操作单元)
≤1.4kANlog2N(第三种方法的获取差绝对值的操作单元)
≤kSN+kA2log2N(第二种方法的获取差绝对值的操作单元)
(b)延迟
CT+CAlog2N(本发明的获取差绝对值的操作单元)
=CS+CAlog2N(第二种方法的获取差绝对值的操作单元)
≤CS+CA2log2N(第三种方法的获取差绝对值的操作单元)
因此,与普通获取差绝对值的操作单元相比,可以认为本发明的获取差绝对值的操作单元在门数和延迟这两方面都有优势。
如上所述,根据本发明的算术和逻辑单元,本发明的操作方法,以及存储操作方法作为程序的存储介质,当把具有顺序依赖性的判定的串行结构变换为不确定代码二进制树结构时,处理时间应变以成最多是大于log2N的最小整数之和,于是能够进行高速处理,还能够实现能有效地进行并行处理的高速算术和逻辑单元。
此外,根据本发明的算术和逻辑单元,本发明的操作方法,以及存储操作方法作为程序的存储介质,当把具有顺序依赖性的判定的串行结构变换为完整二进制树形式的结构时,处理时间就变成最多是大于log2N的最小整数之和,于是能够进行高速处理,还能够实现能有效地进行并行处理的高速算术和逻辑单元。
此外,根据本发明的算术和逻辑单元,本发明的操作方法,以及存储操作方法作为程序的存储介质,并把具有各种操作、例如任何两个R进制数的比较、相加和相减以及获取差绝对值的操作的顺序依赖性的判定的串行结构变换为完整二进制树形式的结构时,处理时间就变成最多是大于log2N的最小整数之和,于是能够进行高速处理,还能够实现能有效地进行并行处理的高速算术和逻辑单元。
注意本发明不限于上述实施例,包括在权利要求范畴内的改进。
Claims (79)
1、一种算术和逻辑单元的运行方法,通过利用不具有用作树叶的相关输入/输出的判决的处理和利用确定除所述树叶以外节点的较高优先权的处理的二进制树建立一个模型解决包括一系列具有顺序依赖性的判决的问题,
在该算术和逻辑单元运行方法中,不具相关输入/输出的判决相关的处理对应于所述一系列判决,其中的每一个在一个或多个包括R进制数的数据输入或一定数量逻辑值信息的基础上在所述数据输入变成有效时执行一个预定判决,并输出被组合成表示“不能被确定”的一个不确定码“Q”的格式码作为工作结论;
所述确定较高优先权的处理对应于一系列判决,其中的每一个接收作为其输入的两个与不具相关输入/输出的判决相关的处理的工作结论或两个用于确定在此之前较高优先权处理的工作结论,且当用于不具有较高有效位依赖性的输入/输出的判决的处理工作结论或用于确定较高有效位较高优先权的处理的工作结论不是不确定码“Q”时输出用于不具相关输入/输出较高有效位判决的处理工作结论或用于确定较高有效位较高优先权的处理的工作结论作为工作结论,和当用于不具有较高有效位的依赖性的输入/输出判决的处理的工作结论或用于确定较高有效位较高优先权的处理的工作结论是不确定码“Q”时输出用于不具有较低有效位依赖性的输入/输出的判决的处理的工作结论或用于确定较低有效位较高优先权的处理的工作结论作为工作结论;和
所有用于用作二进制树叶的判决的处理和所有用于确定置于二进制树相同深度处较高优先权的处理被平行同时处理,用于确定用作二进制树树根的较高优先权的处理的工作结论被规定为所述问题的结论。
2、一种算术和逻辑单元的运行方法,用于变换所有问题,
对于这些问题,利用如下构成的具有顺序依赖性的一系列判决结构建立一个模型:
具有N(N是任一正整数)个具有相关输入/输出的判决节点,其中的每个判决节点在一个或多个包括R进数的数据输入或一定数量逻辑值信息和包括表示有“有效”或“无效”的二进制信息的相关输入的基础上在数据输入和相关输入变成有效的时间点处执行一个预定判决,且其中的每一个输出包括R进制数或一定数量逻辑值信息的结论输出和包括表示“有效”或“无效”的二进制信息的相关输出,和
具有在有相关输入/输出的判决节点之间的相对顺序关系,使具有最高有效位相关输入/输出的判决节点的相关输入总是处于“有效”,和使具有置于较高有效位的相关输入/输出的判决节点的相关输出连接作为一个判决节点相关输入,该判决节点的相关输入/输出置于具有相关输入/输出的该判决节点开始的一个较低有效位,
二进制树具有N个不具有相关输入/输出的判决节点,其中的每一个在一个或多个包括R进制数的数据输入或一定数量逻辑值信息的基础上在所述数据输入变成有效时执行一个预定判决,并输出将所述不确定码“Q”和所述数量组合成表示“不能被规定”的一个格式码作为工作结论,和
将N个不具有相关输入/输出的判决节点规定为树叶;
所述算术和逻辑单元的运行方法利用下述来替换具有相关输入/输出的判决节点:
不具相关输入/输出的判决节点,使内涵判决节点在一个或多个包括R进制数的数据输入或一定数量的逻辑值信息和有依赖性的输入在所述数据输入变成有效时总是包括“有效”的基础上执行一个预定判决,输出包括R进制数或一定数量逻辑信息作为结论输出和包括表示“有效”或“无效”的二进制信息的相关输出,并当所述内涵判决节点的相关输出变成有效时,输出不确定码产生节点以输出组合不确定码“Q”和所述数量为格式码作为不具有相关输入/输出的判决节点的工作结论。
3、一种算术和逻辑单元的运行方法,用于变换:
所有问题,可以利用具有由下述构成的顺序依赖性的一系列判决结构建立有关问题的换型:
具有N(N是任意正整数)个具有相关输入/输出的判决节点,其中的每一个在一个或多个包括R进制数的数据输入或一定数量逻辑值信息和包括表示“有效”或“无效”的二进制信息相关输入的基础上在数据输入和相关输入变成有效时执行一个预定判决,和其中的每一个输出包括R进制数的数据输入或一定数量的逻辑值信息和包括表示“有效”或“无效”的二进制信息的相关输出,和
具有在具有相关输入/输出判决节点之间的相对顺序关系,具有具有最高有效性相关输入/输出的判决节点总是有效的相关输入,和具有具有置于作为具有置于从具有相关输入/输出的判决节点开始的一个较低有效位处相关输入/输出的判决节点的相关输入而连接的较高有效位处相关输入/输出判决节点的相关输出;
一个二进制树结构,具有N个不具有相关输入/输出的判决节点,其中的每一个在一个或多个包括R进制数的数据输入或一定数量逻辑值信息的基础上在数据输入变成有效时执行一个预定判决,和输出并组合成表示“不能被规定”的由不确定码“Q”和所述数量构成的格式码作为工作结论,和
与所述一系列判决对应的较高优先权确定节点,其中的每一个接收作为其输入的两个不具有相关输入/输出的判决节点的工作结论或两个在这个较高优先权确定节点之前的较高优先权确定节点的工作结论,当不具有较高有效位相关输入/输出的判决点的工作结论或较高有效位较高优先权确定节点的工作结论不是不确定码“Q”时,输出不具有较高优先权确定节点相关输入/输出的判决节点的工作结论或较高有效位较高优先权确定节点的工作结论作为该较高优先权确定节点的工作结论;而当不具有较高有效位相关输入/输出的判决节点的工作结论或较高有效位较高优先权确定节点的工作结论是不确定码“Q”时,输出不具有较低有效位相关输入/输出的判决节点的工作结论或较低有效位较高优先权确定节点的工作结论作为工作结论;和
将不具有相关输入/输出的判决节点规定为树叶,将较高优先权确定节点规定为除树叶以外的其它节点,
所述算术和逻辑单元运行方法利用下述替换具有相关输入/输出的判决节点;
没有具有内涵判决节点的相关输入/输出的判决节点,用于在一个或多个包括R进制数的数据输入或一定数量的逻辑值信息和总是包括“有效”的相关输入的基础上在所述数据输入变成有效时执行一个预定判决,输出包括R进制数或一定数量逻辑值信息和包括表示“有效”或“无效”的二进制信息的相关输出的结论输出和一个不确定码产生节点,用于当连接内涵节点的相关输出变成“有效”时输出不确定码“Q”,并输出将不确定码“Q”和所述数量组合成格式码作为不具有相关输入/输出的判决节点的工作结论。
4、一种算术和逻辑单元的运行方法,用于实现优先权编码功能,该功能通过利用将用于不具有相关输入/输出判决的处理规定为树叶、将用于确定较高优先权的处理规定为除树叶以外的其它节点的二进制树建立一个换型在n位二进制数的数据输入的基础上输出作为二进制数位的位置,该位的位置在从最高有效位到最低有效位的方向上第一个是“1”或“0”或从最高有效位到最低有效位的方向上连续多个“1”或“0,
在所述算术和逻辑单元的运行方法中,
用于不具有相关输入/输出判决的处理对应于数据输入的每一位,其中的每一个在一位数据输入的基础上在所述数据输入变成有效时执行一个预定判决并输出将表示“不能被确定”的不确定码“Q”和数量组合而成的格式码作为工作结论;
用于确定较高优先权的处理与数据输入的每一位对应,其中的每一个接收作为其输入的两个用于不具有相关输入/输出判决的处理的工作结论或用于确定在此之前较高优先权的处理的工作结论,并当用于不具有较高有效位的有效的相关输入/输出判决的处理的工作结论或用于确定较高有效位较高优先权的处理的工作结论不是不确定码“Q”时,作为工作结论输出用于不具有较高有效位的相关输入/输出的判决的处理的工作结论或用于确定较高有效位的较高优先权的处理的工作结论;而当用于不具有较高有效位相关输入/输出判决的处理的工作结论或用于确定较高有效位较高优先权判决的处理的工作结论是不确定码“Q”时输出不具有较低有效位相关输入/输出判决的处理的工作结论或用于确定较低有效位较高优先权判决的处理的工作结论作为工作结论;和
所有用作二进制树树叶判决的处理和所有用于确定置于二进制树相同深度处的较高优先权的处理被分别同时处理,和用作二进制树树根的较高优先权确定节点的工作结论被规定为优先数编码的结论。
5、一种算术和逻辑单元运行方法,用于通过利用将用于与所判决对应的判决的处理规定为树叶,将用于确定较高优先权的处理规定为除树叶以外的其它节点的二进制树建立一个模型解决包括一系列具有顺序依赖性的判决的问题,
在该算术和逻辑单元运行方法中,用于判决的处理在一个或多个输入信息的基础上输出“真”、“伪”和“不真不伪或不知道”作为判决结果;
用于确定较高优先权的处理与所述一系列判决对应,其中的每一个接收作为其输入的两个用于判决处理的判决结果或两个用于确定在此之前较高优先权的处理的判决结果,并当用于较高有效位判决的处理判决结果或用于确定较高有效位较高优先权的处理的判决结果是“真”或“伪”时输出用于较高有效位判决的处理的判决结果或用于确定较高有效位较高优先权处理的判决结果,而当用于较高有效位判决处理的判决结果或用于确定较高有效位较高优先权处理的判决结果是“不真不伪或不知道”时输出用于较低有效位判决处理的判决结果或用于确定较低有效位较高优先权处理的判决结果;和
所有用于用作二进制树树叶判决的处理和所有用于确定位于二进制树相同深度较高优先权的处理被分别平行处理。
6、如权利要求5的算术和逻辑单元运行方法,其特征是:
当判决“真”的结果被规定为“Y”、“伪”的结果被规定为“N”、“不真不伪或不知道”被规定为“Q”时,用于确定较高优先权的处理被作为用于从两个代码,即:从用于较高有效位判决的处理的判决结果获得的代码Ti∈{Y,N,Q}和从用于较低有效位判决的处理的判决结果获得的代码Tj∈{Y,N,Q}中获得一个代码Tij∈{Y,N,Q}的算符K给出;当代码Ti优于代码Tj时,当代码Ti是值代码“Y”或值代码“N”时,K算符将值代码“Y”或值代码“N”规定为由代码Tij取用的值代码,当代码Ti是值代码“Q”时,K算符将由代码Tj取用的值代码规定为由代码Tij取用的值代码。
7、如权利要求5的算术和逻辑单元运行方法,其特征是:
当判决“真”的结果被规定为值代码“Y”、“伪”被规定为值代码“N”和“不真不伪或不知道”被规定为“Q”时,
用于确定较高优先权的处理被作为用于从两个数,即:从用于较高有效位判决的处理的判决结果获得的Ti∈{Y,N,Q}和从用于较低有效位判决的处理的判决结果获得的代码Tj∈{Y,N,Q}中获得一个代码Tij∈{Y,N,Q}的算符K给出,当代码Ti优于代码Tj时,
当利用将值代码“Y”规定为{11},将值代码“N”规定为{10}和将值代码“Q”规定为{0*}(“*”表示不关心)的2位二进制数(x,1,x,0)给出任一代码X、且或逻辑用算符“+”表示,与逻辑用算符“·”表示和负逻辑用算符“^”表示时,K算符表示如下:
TiKTj=Tij
(Ti,1,Ti,0)K(Tj,1,Tj,0)=(Tij,1,Tij,0)
=(Ti,1+Tj,1,Ti,1·Ti,1,0+^Ti,1·Tj,0)。
8、一种算术和逻辑单元的运行方法,用于通过n个用于判决的处理的一列建立一个模型获得n个任一R进制数数字中两个数字差的绝对值,所述n个二进制树将用于从第一个数字到第g(g=1到n)个数字判决的处理规定为树叶,将除树叶以外的其它节点规定为用于确定较高优先权的处理,一个矩阵包括用于确定较高优先权处理的n行m列(m是大于log2n的最小整数),
在所述算术和逻辑单元的运行方法中,每一个用于判决的处理同相同数位两个数之差(X-Y)变负时输出表和“真”的值代码“Y”作为判决结果,当所述差为正时输出表示“伪”的值代码“N”,当差值为0时输出表示“不真不伪或不知道”的值代码“Q”;
用于确定较高优先权的处理对应于一系列判决,其中的每一个接收作为其输入的两个用于判决处理的判决结果或两个用于确定在此之前较高优先权处理的判决结果,并当用于较高有效位判决的处理的判决结果或用于确定较高有效位较高优先权处理的判决结果是“真”或“伪”时输出用于较高有效位判决处理的判决结果或用于确定较高有效位较高优先权处理的判决结果,和当用于较高有效位判决处理的判决结果或用于确定较高有效位较高优先权处理的判决结果是“不真不伪或不知道”时输出用于较低有效位判决处理的判决结果或用于确定较低有效位较高优先权处理的判决结果;和
用于判决的一列n个处理和所述多个列的构成元件包括一个矩阵,该矩阵包括n行m列处理,用于确定分别同时处理的较高优先权并从每个处理产生每个数字的借位操作以确定第m列较高优先权。
9、如权利要求8的算术和逻辑单元的运行方法,包括:
代码判断步骤,用于在由用于确定第n行第m列较高优先权的处理产生的最高有效位借位操作所产生结果的基础上判断与两个数的差(Xa-Xb)结果相关的代码;
代码替换步骤,用于分别以值代码“Q”替换值代码“Q”、以值代码“N”替换值代码“Y”和以值代码“Y”替换值代码“N”,以用于当代码判断步骤代码判断结果是负或是负或零时用于确定不包括用于确定在用于确定第m列较高优先权的处理组中第n行较高优先权的处理的较高优先权的处理的输出代码,并在该结果是正或零或当该结果是正不执行替换的情况下保留它们;和
第二代码替换步骤,用于以值代码“N”替换值代码“Q”以获得与替换结果相关的每个数字的借位操作或在所述代码替换之后与确定较高优先权相关的处理的输出代码。
10、一种算术和逻辑单元,用于解决一系列包括顺序依赖性的判决的问题,所述算术和逻辑单元具有:
与所述判决对应的不包括相关输入/输出的判决节点,其中的每个节点在一个或多个包括R进制数据的数据输入或一定数量的逻辑值信息的基础上在所述数据输入变成有效时执行一个预定判决并输出由表示“不能被确定”的不确定码“Q”和所述数量组合成的格式码作为工作结论,和
较高优先权确定节点与所述一系列判决对应,其中的每一个接收作为其输入的两个不具有相关输入/输出判决节点的工作结论或在此之前两个较高优先权确定节点的工作结论,并当不具有较高有效性相关输入/输出判决节点的工作结论或较高有效位较高优先权确定节点的工作结论不是不确定码“Q”时输出不具有较高有效位相关输入/输出判决节点的工作结论或较高有效位较高优先权确定节点的工作结论作为工作结论,而当不具有较高有效位的相关输入/输出判决节点的工作结论或较高有效位的较高优先权确定节点的工作结论是不确定码“Q”时,输出不具有较低有效位相关输入/输出判决节点的工作结论或较低有效位较高优先权确定节点的工作结论作为工作结论;和
通过将不具有相关输入/输出的判决节点规定为树叶、将较高优先权确定节点规定为除树叶以外的其它节点的二进制树建立一个与所述问题相关的模型,对用作树叶的所有判决节点和位于二进制树相同深度的所有较高优先权确定节点同时进行处理,和将用作二进制树树根的较高状态的确定节点的工作结论规定为所述问题的结论。
11、一种用于对具有顺序依赖性的一系列判决结构进行变换的算术和逻辑单元,其构成如下:
具有N(N是任一正整数)个不具有相关输入/输出的判决节点,其中的每一个用于在或多个包括R进制数的数据输入或一定数量逻辑值信息和包括指出“有效”或“无效”的二进制信息的相关输入的基础上在所述数据输入和相关输入变成有效时执行一个预定判决,并输出包括R进制或一定数量逻辑值信息和包括表示“有效”或“无效”的二进制信息的相关输出的结论输出;和
具有在具有相关输入/输出的判决节点之间的相对顺序关系,具有具有最高有效位总是“有效”的相关输入/输出的判决节点的相关输入,和具有具有被作为具有位于从具有相关输入/输出判决节点开始的一个较低有效有效位处的相关输入/输出节点而连接的较高有效位处相关输入/输出的判决节点的相关输出。
所述二进制树结构具有N个不具有相关输入/输出的判决节点,其中的每个节点用于在一个或多个包括R进制数的数据输入和一定数量逻辑值信息的基础上在数据输入变成有效时执行一个预定判决,并输出将表示“不能被规定”的不确定码“Q”和所述数量组合成一个的格式码作为工作结论;和
将N个不具有相关输入/输出判决节点规定为树叶,
所述算术和逻辑单元利用下述替换具有相关输入/输出的判决节点;
不具有具有内涵判决节点的相关输入/输出的判决节点,用于在一个或多个包括R进制数的数据输入或一定数量逻辑值信息和包括总是包括“有效”的相关输入的基础上在数据输入变成有效时执行一个预定判决,并输出包括R进制数或一定数量逻辑值信息和包括指出“有效”或“无效”的二进制信息的相关输出的结论输出和一个不确定码产生代码,用于当连接节点的相关输出变成有效时输出不确定码“Q”并输出将不确定码“Q”和所述数量组合为一的格式码作为工作结论。
12、一种用于对具有顺序依赖性的一系列判决进行变换的算术和逻辑单元,构成如下:
具有N(N是任一正整数)个具有相关输入/输出的判决节点,其中的每个节点用于在一个或多个包括R进制数的数据输入或一定数量逻辑值信息和包括表示“有效”或“无效”的二进制信息的相关输入的基础上在数据输入和相关输入变成有效时执行一个预定判决,并输出包括R进制数或一定数量逻辑值信息和包括指出“有效”或“无效”的二进制信息的相关输出的结论输出,和
具有具有相关输入/输出判决节点之间的相对顺序关系,具有具有最高有效位总是有效的相关输入/输出的判决节点的相关输入,和具有具有位于作为具有从具有相关输入/输出的那个判决节点开始的一个较低有效位处相关输入/输出判决节点的相关输入而连接的较高有效位处相关输入/输出判决节点的相关输出;
一种二进制树结构具有N个不具有相关输入/输出的判决节点,其中的每个节点用于在一个或多个包括R进制数的数据输入或一定数量逻辑值信息的基础上在数据输入变成有效时执行一个预定判决,并输出将意思为“不能被规定”的不确定码“Q”和所述数量组合成一个码的格式码作为工作结论;和
较高优先权确定节点与所述一系列判决对应,其中的每个节点接收作为其输入的两个不具有相关输入/输出判决节点的工作结论或在这个较高优先权确定节点之前两个较高优先权确定节点的工作结论,当不具有较高有效位相关输入/输出的判决节点的工作结论或较高有效位较高优先权确定节点的工作结论不是不确定码“Q”时输出不具有较高有效位相关输入/输出判决节点的工作结论或较高有效位较高优先权确定节点的工作结论作为那个较高优先权确定节点的工作结论,而当不具有较高有效位相关输入/输出的判决节点的工作结论或较高有效位较高优先权确定节点的工作结论是不确定码“Q”时输出不具有较低有效位相关输入/输出判决节点的工作结论或较低有效性较高优先权确定节点的工作结论作为那个较高优先权确定节点的工作结论,和
将不具有相关输入/输出的判决节点规定为树叶,将较高优先权确定节点规定为除树叶外的其它节点,
该算术和逻辑单元用下述替换具有相关输入/输出的判决节点:
不具有具有内涵判决节点的相关输入/输出的判决节点,用于在一个或多个包括R进制数的数据输入或一定数量逻辑值信息和总是包括“有效”的相关输入的基础上在数据输入变成有效时执行一个预定判决,并输出包括R进制数或一定数量逻辑值信息和包括指出“有效”或“无效”二进制信息的相关输出的结论输出和一个中间传产生节点,用于当内涵判决节点的相关输出变成“有效”时输出不确定码“Q”,并输出将该不确定码“Q”和数量组合成一个的格式码作为工作结论。
13、一种被提供有优先权编码功能的算术和逻辑单元,用于在n位二进制数的数据输入基础上输出二进制位的位置,该位置在从最高有效位到最低有效位的方向上的第一个是“1”或“0”,
所述的算术和逻辑单元具有:
与每位数据对应的不具有相关输入/输出的判决节点,其中的每个节点在一位数据输入的基础上在该数据输入变成有效时执行一个预定判决并输出将表示“不能被规定”的不确定码和一个数量组合成一个代码的格式码作为工作结论,和
与每位输入数据对应的较高优先权确定节点,每个节点接收作为其输入的两个不具有相关输入/输出判决节点的工作结论或在此之前两个较高优先权确定节点的工作结论,并当不具有较高有效位相关输入/输出判决节点的工作结论或较高有效位较高的优先权确定节点的工作结论不是不确定码“Q”时输出不具有较高有效位相关输入/输出判决节点的工作结论或较高有效位较高优先权确定节点的工作结论作为工作结论,而当不具有较高有效位相关输入/输出判决节点的工作结论或较高有效位较高优先权确定节点的工作结论是不确定码“Q”时输出不具有较低有效位相关输入/输出判决节点的工作结论或较低有效位较高优先权确定节点的工作结论作为工作结论,和
利用将不具有相关输入/输出的判决节点规定为树叶,将较高优先权确定节点规定为除树叶以外的其它节点,建立一个优先权编码功能的模型,对所有用作树叶的节点和所有位于二进制树相同深度的较高优先权确定节点同时进行处理,和将作为二进制树树根的较高优先权确定节点的工作结论规定为优先权编码功能的结论。
14、如权利要求13的算术和逻辑单元,其特征是:
所述二进制树具有n个用作树叶的判决节点;
不包括二进制树树叶的高度m(m是大于log2n的最小整数)的子二进制树具有Nm(Nm是大于n/2的最小整数)个用作深度m节点的较高优先权确定节点和NS(NS是大于NS+1/2的最小整数)个用作深度s(s表示1到m-1的整数)节点的较高优先权确定节点;
一个节点是相应数据输入的一个位信号线;
从最低有效位开始的第Pm(Pm=1到Nm)个较高优先权确定节点被规定为子二进制树深度m的节点,
其中的每一个将数据输入的第(2×Pm-2)位信号线和第(2×Pm-1)位信号线规定为第0位输入和第一位输入,和
具有一个或逻辑装置,用于取第0位输入和一位输入的或逻辑和输出其结果作为第一位输出,和
连接线,用于输出作为第0位输出的第一位输入;
从最低有效位开始的第PS(PS=1到NS)较高优先权确定节点被规定为子二进制树深度s的节点,
每一个将输出到用作子二进制树深度(s+1)节点的第(2×PS-1)个较高优先权确定节点的第(m-s)位输出的第0位规定的输入到较低有效位第(m-s)位输入的第0位输入,和将输出到用作子二进制树深度(S+1)节点的第(2×PS)较高优先权确定节点第(m-s)位输出的第0位规定为输入到较高有效位第(m-s)位输入的第0位输入,和
具有一个或逻辑装置,用于取较低有效位第(m-s)位输入和较高有效位第(m-s)位输入的或逻辑,和输出其结果作为第(m-s+1)位输出,
连接线,用于输出较高有效位的第(m-s)位输入作为第(m-s)位输出,和
(m-s+1)个选择装置,和
从最低有效位开始的第q(q=1到m-s+1)个选择装置接收作为其输入的第(m-s)位较高有效位作为选择输入,当该选择输入是“真”时选择较高有效位的第(q-1)位输入,当该选择是“伪”时选择较低有效位的第(q-1)位输入,其输出与第(q-1)位输出相同。
15、一种被提供有优先权编码功能的算术和逻辑单元,用于根据n位二进制数的数据输入输出二进制数位的位置,该位的位置在从最高有效位到最低有效位的方向上的第一个是“1”或“0”,
在所述算术和逻辑单元中,利用高度m(m是大于log2 n的最小整数)的二进制树建立用于该算术和逻辑单元的一个模型,
二进制树具有Nm(m是大于n/2的最小整数)个深度m的节点和NS(NS是大于NS+1/2的最小整数)个深度s(s表示1到m-1的整数)的节点;
从二进制树深度m最低有效位开始的第Pm(Pm=1到Nm)节点
每一个使用数据输入的第(2×Pm-2)位信号线和第(2×Pm-1)位信号线作为第0位输入和第一位输入,和
具有一个或逻辑,用于取第0位输入和第一位输入的或逻辑并输出其结果作为第一位输出,和
连接线,用于输出第一位输入作为第0位输出;
从二进制树深度s最低有效位开始的第PS(PS=1到NS)个节点
每一个使用输出到二进制树(s+1)深度第(2×PS-1)节点输出的第0位作为输入到较低有效位第(m-s)位输入的第0位输入和使用输出到二进制树深度(s+1)第(2×PS)节点的第(m-s)位输出的第0位作为输入到较高有效位第(m-s)位输入的第0位输入,和
具有一个或逻辑,用于取较低有效位第(m-s)位输入和较高有效位第(m-s)位输入的或逻辑并输出其结果作为第(m-s+1)位输出,
连接线,用于输出较有效位第(m-s)位输入作为第(m-s)位输出,和
(m-s+1)个选择装置,和
从最低有效位开始的第q(q=1到m-s+1)选择装置接收作为其输入的较高有效位的第(m-s)位作为选择输入,当选择输入是“真”时选择较高有效位的第(q-1)位输入,当选择输入是“伪”时选择较低有效位的第(q-1)位输入并输出其结果作为第(q-1)位输出。
16、一种被提供有优先权编码功能的算术和逻辑单元,用于根据n位二进制后的数据输入输出二进制数的从最高有效位到最低有效位方向的持续多个“1”或“0”,
所述的算术和逻辑单元具有
不具有相关输入/输出的判决节点,与数据输入的各位对应,其中的每个节点在一位数据输入的基础上在该数据输入变成有效时执行一个预定判决并输出将意思为“不能被规定”的不确定码“Q”和所述数量组合成一个代码的格式码作为工作结论,和
较高优先权确定节点,与输入数据的各位对应,每个节点接收作为其输入的两个不具有相关输入/输出判决节点的工作结论或在此之前两个较高优先权确定节点的工作结论,当不具有较高有效位相关输入/输出的判决节点的工作结论或较高有效位较高优先权确定节点的工作结论不是不确定码“Q”时输出不具有较高有效位相关输入/输出的判决节点的工作结论或较高有效位较高优先权确定节点的工作结论作为工作结论,而当不具有较高有效位相关输入/输出判决节点的工作结论或较高有效位较高优先权确定节点的工作结论是不确定码“Q”时输出不具有较低有效位相关输入/输出判决节点的工作结论或较低有效位较高优先权确定节点的工作结论作为工作结论;和
通过利用将不具有相关输入/输出的判决节点用作树叶、将较高优先权确定节点用作除树叶以外其它节点的二进制树建立一个模型实现优先权编码功能,所有用作树叶的判决节点和所有位于二进制相同一深度的较高优先权确定节点被同时处理,和使用用作二进制树树根的较高优先权确定节点的工作结论作为优先权编码功能的结论。
17、如权利要求16的算术和逻辑单元,其特征是:
二进制树具有n个作为树叶的判决节点;
不包括二进制树树叶的高度为m(m是大于log2 n的最小整数)的子二进制树具有Nm(Nm是大于log2 n的最小整数)个用作深度m节点的较高优先权确定节点和NS(NS是大于NS+1/2的最小整数)个深度S(S是1到m-1)节点的较?优先权确定节点;
一个判决节点是一个相应数据输入的位信号线;
从最低有效位开始的第Pm(Pm=1到Nm)个较高优先权确定节点用作子二进制树深度的m的节点,
其中的每一个将数据输入的第(2×Pm-2)位和第(2×Pm-1)位规定为第0位输入和第一输入,和
具有一个或逻辑装置,用于取第0位输入和第一位输入的或逻辑并输出其结果作为第一位输出,和
一个负逻辑装置,用于取第一位输出的负逻辑和输出其结果作为第0位输出;
从用作子二进制树深度S节点的最低有效位开始的第PS(PS=1到NS)较高优先权确定节点
每一个使用输出到用作子二进制树深度(S+1)深度节点的第(2×PS-1)个较高优先权确定节点的第(m-s)位输出作为输入到较低有效位第(m-s)位的第0位输入,使用输出到用作子二进制树深度(S+1)节点的第(2×Ps)个较高优先权确定节点的第(m-s)位输出的第0位作为输入到较高有效位第(m-s)位输入的第0位输入,和
具有一个或逻辑装置,用于取较低有效位第(m-s)位输入和较高有效位第(m-s)位输入的或逻辑并输出其结果作为第(m-s+1)位输出,
一个负逻辑装置,用于取较高有效位第(m-s)位输入的负逻辑并输出其结果作为第(m-s)位输出;和
(m-s+1)个选择装置;和
从最低有效位开始的第q(q=1到m-s+1)个选择装置接收作为其输入的较高有效位的第(m-s)位作为选择输入,当选择输入是“真”时选择较高有效位的第(q-1)位输入,当选择输入是“伪”时选择较低有效位的第(q-1)位输入,其输出与第(q-1)位输出相同。
18、一种被提供有优先权编码功能的算术和逻辑单元,用于根据一位二进制数的数据输入输出二进制从最高有效位到最低有效位方向上的持续多个“1”或多个“0”,其中,
通过利用高度m(m是大于log2n的最小子整数)的二进制树建立一个模型实现算术和逻辑单元;
二进制树具有Nm(Nm是大于n/2的最小整数)个深度m节点和NS(NS是大于NS+1/2的最小整数)个深度S(S是1到m-1的整数)节点;
从二进制树深度m最低有效位开始的第Pm(Pm=1到Nm)个节点
每一个使用数据输入的第(2×Pm-2)位信号线和第(2×Pm-1)位信号线作为第0位和第一位输入,和
具有一个或逻辑装置,用于取第0位输入和第一位输入的或逻辑并输出其结果作为第一位输出,和
一个负逻辑装置,用于取第一位输入的负逻辑并输出其结果作为第0位输出;
从二进制树深度S最低有效位开始的第PS(PS=1到NS)个节点
每一个使用输出到二进制树深度(S+1)第(2×PS-1)节点的第(m-s)位输出的第0位输出作为输入到较低有效位第(m-s)位输入的第0位输入和使用输出到二进制树深度(S+1)第(2×PS)节点第(m-s)位输出的第0位作为输入到较高有效位第(m-s)位输入的第0位输入,和
具有一个或逻辑装置,用于取较低有效位第(m-s)位输入和较高有效位第(m-s)位输入的或逻辑并输出其结果作为第(m-s+1)位输出,
一个负逻辑装置,用于取较高有效位第(m-s)位输入的负逻辑并输出其结果作为第(m-s)位输出,和
(m-s+1)个选择装置;和
从最低有效位开始的第q(q=1到m-s+1)个选择装置接收作为其输入的第(m-s)位较高有效位作为选择输入,当该选择输入是“真”时选择较高有效位的第(q-1)位输入,当选择输入是“伪”时选择较低有效位的第(q-1)位输入和其输出与第(q-1)位输出相同。
19、一种用于解决包括一系列具有顺序依赖性的判决的问题的算术和逻辑单元,具有
判决节点,与所述判决相对应,每个节点在一个或多个输入信息的基础上输出“真”、“伪”或“不真不伪或不知道”作为判决结果,和
较高优先权确定节点,与所述判决对应,每个节点接收作为其输入的两个判决节点的判决结果或两个较高优先权确定节点的判决结果,当较高有效位判决节点的判决结果或较高有效位较高优先权确定节点的判决结果是“真”或“伪”时输出较高有效位判决节点的判决结果或输出较高有效位较高优先权确定节点的判决结果,当较高有效位判决节点的判决结果或较高有效位较高优先权确定节点的判决结果是“不真不伪或不知道”时输出较低有效位判决节点的判决结果或较低有效位较高优先权确定节点的判决结果,和
通过使用作为树叶的判决节点和用作除树叶以外其它节点的较高优先权确定节点的二进制树和对用作树叶的所有判决节点和位于二进制树相同深度所有较高优先权确定节点同时处理建立有关问题的模型。
20、如权利要求19的算术和逻辑单元,其特征是:
当算术和逻辑单元执行任一R进制系统的两个数的比较两这两个数的数字的比较判决形成一系列具有顺序依赖性的判决时,
当同数位的两数之差为正时每个判决节点输出“真或伪”,当所述差为负时输出“伪或真”,当所述差是0时输出“不真不伪或不知道”。
21、如权利要求19的算术和逻辑单元,其特征是:
当算术和逻辑单元执行任一R进制系统两个数的加法且在每个数字处存在进行的判决形成一系列具有顺序依赖性的判决时
当同数位两数之和变成R或更大时每个判决节点输出“真或伪”,当所述和变成(R-2)时输出“伪或真”,当所述和变成(R-1)时输出“不真不伪或不知道”。
22、如权利要求19的算术和逻辑单元,其特征是:
当算术和逻辑单元执行任一R进制系统两个数的减法且在每个数字处存在借位的判决形成一系列具有顺序依赖性的判决时,
当同数位两数之差为负时每个判决节点输出“真或伪”,为所述差为正时输出“伪或真”,当所述差为0时输出“不真不伪或不知道”。
23、如权利要求19的算术和逻辑单元,其特征是:
当在一系列具有顺序依赖性的判决的判决数量是n时,
所述二进制树具有n个用作树叶的判决节点;和
不包括二进制村树叶高度为m(m是大于log2n的最小整数)一部分的子二进制树具有Nm(Nm是大于n/2的最小整数)个用作深度m节点的较高优先权确定节点和NS(NS是大于NS+1/2的最小整数)个用作深度S(S是1到m-1的整数)节点的较高优先权确定节点。
24、如权利要求19的算术和逻辑单元,其特征是:
当判决“真”的结果被规定为值代码“Y”、“伪”被规定为值代码“N”和“不真不伪或不知道”被规定为值代码“Q”时,
较高优先权确定节点被作为用于从两个代码、即从较高有效位判决节点的判决结果获得的代码Ti∈{Y.N.Q}和从较低有效位判决节点的判决结果获得的代码Ti∈{Y.N.Q}中获得一个代码Tij∈{Y.N.Q}的K算符给出;其中代码Ti优于代码Tj,
当代码Ti是值代码“Y”或值代码“N”时,K算符使用值代码“Y”或值代码“N”作为由代码Tij取用的值代码,而当代码Ti是值代码“Q”时使用由代码Tj取用的值代码作为由代码Tij取用的值代码。
25、如权利要求19的算术和逻辑单元,其特征是:
当判决“真”的结果被规定为值代码“Y”、“伪”被规定为值代码“N”和“不真不伪或不知道”被规定为值代码“Q”时,
较高优先权确定节点被作为用于从两个代码、即从较高有效位判决节点判决结果获得的代码Ti∈{Y.N.Q}和从较低有效位判决节点判决结果获得的代码Tj∈{Y.N.Q}中获得一个代码Tij∈{Y.N.Q}的K算符给出;其中代码Ti优于代码Tj,
当利用将值代码“Y”规定为{11},将值代码“N”规定为{10}和将值代码“Q”规定为{O*}(其中“*”表示“不关心”)的2位二进制数(X,1,X,0)指定任一代码X、或逻辑用算符“+”表示,与逻辑由算符“·”表示和负逻辑用算符“^”表示时,K算符表示如下:
YiKTj=Tij
(Ti,1,Ti,0)K(Tj,1,Tj,0)=(Tij,1,Tji,0)
=(Ti,1+Tj,1,Ti,1·Ti,0+^Ti.1·Tj.0)
26、如权利要求25的算术和逻辑装置,其特征是:
每个较高优先权确定节点具有:
一个或逻辑装置,用于取代码Ti,1和代码Tj,1的或逻辑并输出其结果作为代码Tij.1,和
一个选择装置,用于当代码Ti,1是“1”时选择和输出Ti,0,当代码Ti,1是“0”时选择和输出代码Tj,0作为代码Tij,0。
27、如权利要求25的算术和逻辑单元,其特征是:
当一系列具有顺序依赖性的判决中判决的数量是n且不包括二进制树树叶的高度m(m是大于1og2n的最小整数)的子二进制树具有Nm(Nm是大于n/2的最小整数)个用作深度m节点的较高优先权确定节点和Ns(Ns是大于Ns+1/2的最小整数)个用作深度S(s是1到m-1的整数)节点的较高优先权确定节点时,
用作子二进制树深度m-p(p是0到1的偶数)节点的较高优先权确定节点具有
一个或非逻辑装置,用于取代码Ti,1和代码Tj,1的或非逻辑并输出结果作为代码^Tij,1,和
第二选择装置,用于取当代码Ti,1是“1”时选择代码Ti,0,当代码Ti,1是“0”时选择代码Ti,0所得结果的负逻辑并输出结果作为代码^Tij,0;和
用作子二进制树深度m-1(q是0到m-1的奇数)节点的较高优先权确定节点具有
一个与非逻辑装置,用于取代码^Tij,1和代码^Tj,1的与非逻辑并输出结果作为代码Tij,1,和
第三选择装置,用于取当代码^Ti,1是“0”时选择代码^Ti,0、当代码^Ti,1是“1”时选择代码^Tj,0所得结果的负逻辑并输出其结果作为代码Tij,0。
28、如权利要求19的算术和逻辑单元,其特征是:
当判决“真”的结果被规定为值代码“Y”、“伪”被规定为值代码“N”和“不真不伪或不知道”被规定为值代码“Q”时,
较高优先权确定代码被作为用于从两个数,即从较高有效位判决节点判决结果获得的代码Ti∈{Y.N.Q}和从较低有效位判决节点判决结果获得的代码Tj∈{Y.N.Q}获得一个代码Tij∈{Y.N.Q}的算符K给出,具代码Ti优于代码Tj,
当利用将值代码“Y”规定为{00}、将值代码“N”规定为{11}和将值代码“Q”规定为{10}的一个二位二进制数指定任一代码X、且或逻辑用算符“+”表示、与逻辑用算符“·”表示和负逻辑用算符“^”表示时,
K算符给出如下:
YiKTj=Tij
(Ti,1,Ti,0)K(Tj,1,Tj,0)=(Tij,1,Tji,0)
=(Ti,0+Tj,1,Tj,1·Ti,0+Ti.1·Tj.0)
29、如权利要求28的算术和逻辑单元,其特征是:
每个较高优先权确定节点具有:
第一复合逻辑门装置,用于取代码Ti,1和代码Tj,1的与逻辑和代码Ti,0之间的或逻辑并输出其结果作为代码Tij,1,和
第二复合逻辑门装置,用于取代码Ti,1和代码Tj,0的与逻辑和代码Ti,0之间的或逻辑并输出其结果作为代码Tij,0。
30、如权利要求28的算术和逻辑单元,其特征是:
当所述一系列具有顺序依赖性的判决中判决的数量是n且不包括二进制树树叶的高度m1m是大于log2h的最小整数)的子二进制数具有Nm(Nm是大于n/2的最小整数)个用作深度m节点的较高优选权确定节点和Ns(Ns是大于Ns+h/2的最小整数)个用作深度S(S是1到m-1的整数)节点的较高优先权确定节点时,
用作子二进制树深度m-p(p是0到m-1的偶数)节点的较高优先权确下节点具有
第三复合逻辑门装置,用于取代码Ti,1和代码Tj,1的与逻辑和代码Ti,0之间的或非逻辑并输出结果作为代码^Tij,1,和
第四复合逻辑门装置,用于取代码Ti,1和代码Tj,1的与逻辑和代码Ti,0之间的或非逻辑并输出其结果作为代码^Tij,0;和
用作子二进制树深度m-1(q是0到m-1的奇数)节点的较高优先权确定节点具有
第五复合逻辑门装置,用于取代码^Ti,1和代码^Tj,1或逻辑和代码^Ti,6之间的与非逻辑并输出结果作为代码Tij,1,和
第六复合逻辑门装置,用于取代码^Ti,1和代码^Tj,0的或逻辑与代码^Ti,0之间的与非逻辑并输出结果作为代码Tij,0。
31、如权利要求19的算术和逻辑单元,其特征是
当判决“真”的结果被规定为值代码“Y”、“伪”被规定为值代码“N”和“不真不伪或不知道”被规定为值代码“Q”时,
较高优先权确定节点被作为用于从两个代码、即从较高相效位判决节点判决结果获得的代码Ti∈{Y.N.Q}和从较低有效位判决节点判决结果获得的代码Tj∈{Y.N.Q}中获得一个代码Tij∈{Y.N.Q}的K算符给出,其中代码Ti优于代码Tj,
当利用将值代码“Y”规定为{01},将值代码“N”规定为{10}、将值代码“Q”规定为{11}和规定{00}为“使用禁止”(代码“F”),以及或逻辑用算符“+”表示,与逻辑用算符“·”和负逻辑用算符“^”表示时,
K算符给出如下:
TiKTj=Tij
(Ti,1,Ti,0)K(Tj,1,Tj,0)=(Tij,1,Tij,0)
=(^Ti,0+Ti,1,Tj,1·^Ti,1+Ti,0·Tj,0);和较高优先权确定节点具有
第七复合逻辑门装置,用于取代码Ti,1和代码Tj,1的与逻辑和代码^Ti,0之间的或逻辑并输出其结果作为代码Tij,1和
第八复合逻辑门装置,用于取代码Ti,0和代码Tj,0与逻辑和代码^Ti,1之间的与逻辑并输出结果作为代码Tij,0。
32、如权利要求19的算术和逻辑单元,其特征是:
当判决“真”的结果被规定为值代码“Y”、“伪”被规定为值代码“N”和“不真不伪或不知道”被规定为值代码“Q”时,
较高优先权确定节点被作为用于从两个代码、即从较高有效位判决节点判决结果获得的代码Ti∈{Y.N.Q}和从较低有效位判决节点判决结果获得的代码Tj∈{Y.N.Q}中获得一个代码Tij∈{Y.N.Q}的算符K给出,其中代码Ti优于代码Tj,
当利用将值代码“Y”规定为{06},“N”规定为{10},“Q”规定为{11}和将{01}规定为“使用禁止”、(代码“F”)的2位二进制数(X,1,X,0)指定任一代码X、或逻辑用算符“+”表示,与逻辑用算符“·”表示,负逻辑用“^”表示时,
K算符给出如下:
TiKTj=Tij
(Ti,1,Ti,0)K(Tj,1,Tj,0)=(Tij,1,Tij,0)
=(Ti,1·(^Ti,0+Tj,1),Ti,0·Tj,0)和
较高优先权确定节点具有
第九复合逻辑门装置,用于取代码Ti,0和代码Tj,1的或逻辑和代码Ti,1之间的与逻辑并输出其结果作为代码Tij,1和
与逻辑装置,用于取代码Ti,0和代码Tj,0的与逻辑并输出结果作为代码Tij,0。
33,如权利要求25的算术和逻辑单元,其特征是
当算术和逻辑单元执行两个n位二进制数(Xa,Yb)的比较和与这两个数的数字(Xai,Ybi;i=0到n-1)相关的比较判决形成一系列具有顺序依赖性的判决时,
判决节点具有
一个异或逻辑装置,用于取数字值Xai和数字值Ybi的异或逻辑并输出结果作为代码Ti,1,和
连接装置,用于输出数字值Xai作为代码Ti,0。
34、如权利要求33的算术和逻辑单元,其特征是
每个较高优先权确定节点具有:
一个或逻辑装置,用于取代码Ti,1和代码Tj,1的或逻辑,并输出其结果作为代码Tij,1,和
一个选择装置,用于当代码Ti,1是“1”时选择代码Ti,0和当代码Ti,1是“0”时选择代码Tj,0并输出其结果作为代码Tij,0;和
当用作二进制树树根的较高优先权确定节点的输出被表示为Q=(0*)时表示“两个数(Xa,Xb)相等”,当所述输出表示为Y={11}时表示“两个数具有幅值Xa>Xb的关系”,当输出表示为N={10}时表示“两个数(Xa,Xb)具有Xa<Yb的关系”。
35、如权利要求33的算术和逻辑单元,其特征是
当不包括二进制树树叶的高度m(m是大于log2n的最小整数)的子二进制树具有Nm(Nm是大于n/2的最小整数)个深度m节点的较高优先权确定节点和NS(NS是大于NS+1/2的最小整数)个用作深度S(S是1到m-1的整数)节点的较高优先权确定结点,
用作子二进制树深度m-p(p是从0到m-1的偶数)节点的较高优先权确定节点具有
一个或非逻辑装置,用于取代码Ti,1和代码Tj,1的或非逻辑并输出其结果作为代码^Tij,1,和
第二选择装置,用于取当代码Ti,1是“1”时选择代码Ti,0,当代码Ti,1是“0”时选择代码Tj,0所得结果的负逻辑和输出其结果作为^Tij,0;
用作子二进制树深度m-q(q表示0到m-1的奇数)节点的较高优先权确定节点具有
一个与非逻辑装置,用于取代码Ti,1和代码^Tj,1的与非逻辑并输出其结果作为代码Tij,1,和
第三选择装置,用于取当代码^Ti,1是“0”时选择代码^Ti,0和当代码^Ti,1是“1”时选择代码^Tj,0所得结果的负逻辑并输出其结果作为代码Tij,0;
当m是偶数时,当用作二进制树树根较高优先权确定节点的输出被表示为Q=(0*)时表示“两个数(Xa,Yb)相等”,当其输出被表示为Y={11}时表示“两个数(Xa,Yb具有幅值Xa>1/b的关系”,当输出被表示为N={10}时表示“两个数(Xa,Yb具有幅值Xa<Yb的关系;和
当m是奇数时,当用作二进制树树根的较高优先权确定节点的输出表示为Q=(1*)时表示“两个数(Xa,Yb)相等”,当其输出表示为Y={O0}时表示“两个数(Xa,Yb具有幅值Xa>Yb的关系”,当该输出被表示为N={01}时表示“两个数(Xa,Yb)具有幅值Xa<Yb的关系”。
36、如权利要求33的算术和逻辑单元,其特征是:
当算术和逻辑单元执行2个两方位n位二进数(Xa,Yb)的比较时
执行这两个数MSB(最高有效位)比较判决的判决节点分别将数字值Xan-1处理成数字值Ybn-1和将数字值Ybn-1处理成数字值Xan-1。
37、如权利要求28的算术和逻辑单元,其特征是:
当算术和逻辑单元执行两个几位二进制数(Xa、Yb)的比较和与这两个数的数字(Xai,Ybi,i=0到n-1)相关的比较判决形成一系列具有顺序依赖性的判决时,
每个判决节点具有
一个与非逻辑装置,用于取数字值Xai的负逻辑和数字值Yhi的与非逻辑并输出其结果作为代码Ti,1,和
一个或非逻辑装置,用于取数字值Xai的负逻辑和数字值Yni的或非逻辑并输出结果作为代码Ti,0。
38、如权利要求25的算术和逻辑单元,其特征是
当在两个n位二进制数(Xa,Yb)的加法中存在两个数的数字(Xai,Ybi;i=0到n-1)进位的判决形成一系列具有顺序依赖性的判决时,
每个判决节点具有
异或非逻辑装置,用于取数字值Xai和数字值Ybi的异或非逻辑并输出其结果作为代码Ti,1,和
连接装置,用于输出作为代码Ti,0的数字值Xai,或连接装置,用于输出作为代码Ti,0的数字值Ybi。
39、如权利要求38的算术和逻辑单元,其特征是:
执行存在与两个数的LSB(最低有效位)相关进位的判决的判决节点具有
一个或非逻辑装置,用于取数字值Xao和数字值Ybo的或非逻辑,
一个与非逻辑装置,用于取数字值Xao和数字值Ybo的与非逻辑,和
一个选择装置,用于取当到算术和逻辑单元的进位输入是“1”时选择或非逻辑装置的输出和当进位输入是“0”时选择与非逻辑装置的输出所得结果的负逻辑并输出其结果作为代码To,0;和不输出代码To,1。
40、如权利要求39的算术和逻辑单元,其特征是:
不是由于本应由执行与较高优先权节点中两个数的LSB相关的存在进位判决的判决节点输出的代码To,1的每个较高优先权确定节点具有
一个或逻辑装置,用于取代码Ti,1和代码Tj,1的或逻辑并输出其结果作为代码Ti,1,和
一个选择装置,用于当代码Ti,1是“1”时选择代码Ti,0,当代码Ti,1是“0”时选择代码Tj,0,并输出其结果作为代码Tij,0;
由于本应由执行与较高优先权确定节点中两个数的LSB相关的存在进位的判决的判决节点输出的代码To,1的较高优先权节点具有
一个选择装置,用于当代码Ti,1是“1”时选择代码Ti,0,当代码Ti,1是“0”时选择代码Tj,0并输出其结果作为代码Tij,0,和不输出代码Tij,1,和
当用作二进制树树根的较高优先权确定节点的输出代码Tij,0是“1”是表示“有进位输出”,当所述输出代码是“0”是表示“没有进位输出”。
41、如权利要求39的算术和逻辑单元,其特征是:
当不包括二进制树树叶的高度m(m是大于log2n的最小整数)的子二进制树具有Nm(Nm是大于n/2的最小整数)个用作深度m节点的较高优先数确定节点和NS(NS是大于NS+1/2的最小整数)个用作深度S(S是1到m-1的整数)节点的较高优先权确定节点时,
不是得自最初应当由执行与用作子二进制树深度m-p(p是0到m-1的偶数)节点的较高优先权确定节点中两个数的LSB相关存在进位判决的判决节点输出的代码To,1的每个较高优先权确定节点具有
一个或非逻辑,用于取代码Ti,1和代码Tj,1的或非逻辑并输出其结果作为代码^Tij,1,和
第二选择装置,用于取当代码Ti,1是“1”时选择代码Ti,0,当代码Ti,1是“0”时选择代码Tj,0所得结果的负逻辑并输出其结果作为代码^Tij,0;
不是得自最初应由执行与用作子二进制树深度m-q(q是0到m-1的奇数)节点的较高优先权确定节点中两个数的LSB相关存在进位判决的判决节点输出的代码To,1的每个较高优先权确定代码具有
一个与非逻辑,用于取当代码^Ti,1和代码^Tj,1的与非逻辑并输出其结果作为代码Tij,1,和
第三选择装置,用于取当代码^Ti,1是“0”时选择代码^Ti,0,当代码^Ti,1是“1”时选择代码^Tj,0所得结果的负逻辑并输出其结果作为代码Tij,0;
得自最初应当由执行与用作子二进制树深度m-p(p是0到m-1的偶数)节点的较高优先权确定节点中两个数的LSB相关存在进位判决的判决节点输出的代码To,1的较高优先权确定节点具有
第二选择装置,用于取当代码Ti,1是“1”时选择代码Ti,0,当代码Ti,1是“0”时选择代码Tj,0所得结果的负逻辑并输出其结果作为代码^Tij,0,和不输出代码Tij,1;
得自于最初应由执行与用作子二进制树深度m-q(q是0到m-1的奇数)节点的较高优先权确定节点中两个数的LSB相关的存在进位判决的判决节点输出的代码To,1的较高优先权确定节点具有
第三选择装置,用于取当代码^Ti,1是“0”时选择代码^Ti,0,当代码^Ti,1是“1”时选择代码^Tj,0所得结果的负逻辑并输出其结果作为代码Tij,0和不输出代码Tij,1;
当m是偶数时,当用作二进制树树根的较高优先权确定节点的输出码Tij,0是“1”时表示“有进位输出”,而当输出码Tij,0是“0”时表示“没有进位输出”;和
当m是奇数时,当用作二进制树树根的较高优先权确定节点的输出码^Tij,0是“0”时表示“有进位输出”,而当所述输出的^Tij,0是“1”时表示“没有进位输出”。
42、如权利要求28的算术和逻辑单元,其特征是
当与在两个n位进制数(Xa,Yb)的加法中的两个数的数字(Xai,Ybi;i=0到n-1)相关存在进位的判决形成一系列具有顺序依赖性的判决时,
每个判决节点具有
一个与非逻辑装置,用于取数字值Xai和数字值Ybi的与非逻辑并输出其结果作为代码Ti,1,和
一个或非逻辑,用于取数字值Xai和数字值Ybi的或非逻辑并输出其结果作为代码Ti,0。
43、如权利要求25的算术和逻辑单元,其特征是
当与在两个n位二进制数(Xa,Yb)加法中两个数的数字(Xai,Ybi;i=0到n-1)相关的存在进位的判决形成一系列具有顺序依赖性的判决和当使用用于执行与作为树叶的二进制数字Xaj,Ybj(j=0到n-2)相关存在位判决的判决结点构成二进制树且不包括二进制树树叶高度m(m是大于log2n的最小整数)的子二进制树具有Nm(Nm是大于n/2的最小整数)个用作深度m节点的较高优先权确定节点和Ns(Ns是大于Ns+1/2的最小整数)个用作深度S(S是1到m-1的整数)处节点的较高优先权节点时,
用于执行与两个数LSB相关的存在进位判决的判决节点具有
一个或非逻辑装置,用于取数字值Xao和数字值Ybo的或非逻辑,
一个与非逻辑装置,用于取数字值Xao和数字值Ybo的与非逻辑,和
一个选择装置,用于取当到算术和逻辑单元的进位输入是“1”时选择或非逻辑装置的输出和当进位输入是“0”时选择与非逻辑装置的输出并输出其结果作为代码To,0,和不输出代码To,1;
执行与两个数的数字Xak,Ybk(k=1到n-1)相关的存在进位判决的判决节点具有
一个同逻辑装置,用于取数字值Xaj和数字值Ybj的异或非逻辑并输出其结果作为代码Tj,1,和
连接装置,用于输出数字值Xaj作为代码Tj,0或连接装置,用于输出数字值Ybj作为代码Tj,0;
得自最初应由用于执行与较高优先权节点中两个数LSB相关存在进位判决的判决节点输出的代码To,1的较高优先权确定节点具有
一个选择装置,用于当代码Ti,1是“1”时选择代码Ti,0,当代码Ti,1是“0”时选择代码Tj,0并输出其结果作为代码Tij,0和不输出代码Tij,1;
不是得向最初应由用于执行与较高优先权确定节点中两个数LSB相关的存在进位判决的判决节点输出的每个较高优先权确定节点具有
一个或逻辑装置,用于取代码Ti,1和代码Tj,1的或逻辑并输出其结果作为代码Tij,1,和
一个选择装置,用于当代码Ti,1是“1”时选择代码Ti,0、当代码Ti,1是“0”时选择代码Tj,1,并输出其结果作为代码Tij,0;
当二进制树树叶的数量不是2的幂时,使用执行与两个数的LSB相关的存在进位判决的判决节点对应的较高优先权确定节点作为用于传送由判决节点本功输出的代码To,0的空节点;和
具有一个异或逻辑装置,用于取在执行与两个数LSB相关的存在进位判决的判决节点输出码Tn-1、1和用作二进制树树根的较高优先权确定节点输出码Tij,0之间的异或逻辑并将其作为与两个数LSB相关的结果和。
44、如权利要求25的算术和逻辑单元,其特征是:
当与在两个n位二进制数(Xa,Yb)加法中两个数的数字(Xai,Ybi;i=0到n-1)相关存在进位的判决形成一系列具有顺序依赖性和当使用执行与两个数的数字Xaj,Ybj(j=0到n-2)相关存在进位判决的判决节点作为树叶组成二进制树和不包括二进制树树叶的高度m(m是大于log2n的最小整数)的子二进制树具有Nm(Nm是大于n/2的最小整数)个用作深度m节点的提高优先权确定节点和Ns(Ns是大于Ns m/2的最小整数)个用作深度S(S表示1到m-1的整数)节点的较高优先权确定节点时,
用于执行与两个数LSB相关的存在进位判决的判决节点具有
一个或非逻辑装置,用于取数字值Xa0和数字值Yb0的或非逻辑,
一个与非逻辑装置,用于取数字值Xa0和数字值Yb0的与非逻辑,和
一个选择装置,用于取当到算术和逻辑单元的进位输入是“1”时选择或非逻辑装置的输出而当进位输入是“0”时选择与非逻辑装置输出所得结果的负逻辑,并输出其结果作为代码To,0,和不输出代码To,1;
执行与两个数的数字Xak,Ybk(k=1到n-1)相关存在进位的判决的每个判决节点具有
一个同逻辑装置,用于取数字值Xaj和数值值Ybi的异或非逻辑并输出其结果作为代码Tj,1,和
一个连接装置,用于输出数字值Xaj作为代码Tj,0或一个连接装置,用于输出数字值Ybj作为代码Tj,0;
不是得向最初应由用于执行与用作子二进制树深度m-p(p是0到m-1的偶数)节点的较高优先权确定节点中两个数的LSB相关的存在进位判决的判决节点输出的代码To,1的每个较高优先数确定节点具有
一个或非逻辑装置,用于取代码Ti,1和代码Tj,1的或非逻辑关输出其结果作为代码^Tij.1,和
第二选择装置,用于取当代码Ti,1是“1”时选择代码Ti,0,当代码Ti,1是“0”时选择代码Tj,0所得结果的负逻辑并输出其结果作为代码^Tij,0;
不是得向最初应由用于执行与子二进制树深度m-q(q是0到m-1的奇数)节点的较高优先权确定节点中两个数的LSB相关的存在进位判决的判决节点输出的代码To,1的每个较高优先权确定节点具有
一个与非逻辑装置,用于取代码^Ti,1和代码^Tj,1的与非逻辑和输出其结果作为代码Tij,1,和第三选择装置,用于取当代码^Ti,1是“0”时选择代码^Ti,0,当代码Ti,1是“1”的选择代码^Tj,0所得结果的负逻辑并输出其结果作权代码Tij,0;
得向最初应由执行与用作子二进制树深度m-p(p是0到m-1的偶数)节点的较高优先权节点中两个数LSB相关的存在进位判决的判决节点输出的代码To.1的较高优先权确定节点具有
第二选择装置,用于取当代码Ti,1是“1”时选择代码Ti,0,当代码Ti,1是“0”时选择代码Tj,0所得结果的负逻辑并输出其结果作为代码^Tij,0和不输出代码Tij,1;
得向最初应由用于执行与用作子二进制树深度m-q(q是0到m-1的奇数)节点的较高优先权确定节点中两个数LSB相关的存在进位判决的判决节点输出的代码To,1的较高优先权确定节点具有
第三选择装置,用于取当代码^Ti,1是“0”时选择代码^Ti,0、当代码^Ti,1是“1”时选择代码^Tj,0所得结果的负逻辑并输出结果作为代码Tij,0和不输出代码Tij,1;
第二进制树树叶的数量不是2的幂时,将与用于执行与两个数LSB相关的存在进位判决的判决节点对应的较高优先权确定节点规定为用于传送由判决节点本功输出的代码To,0的空节点;
具有一个异或逻辑装置,用于取执行与两个数LSB相关存在进位判决判决节点的输出码Tn-1,1和作为二进制树树根的较高优先权确定节点输出码Tij,0的异或逻辑并将其规定为当m是偶数时的两数LSB的和,和
具有一个异或逻辑,用于取执行与两数LSB相关存在进位判决判决节点输出码Tn-1,1的负逻辑和用作二进制树树根的较高优先权确定节点输出码^Tij,0之间的异或逻辑,并将其规定为当m是奇数时的两数LSB之和。
45、一种算术和逻辑单元其中,
当对在二个n位数(Xa,Yb)的相加中的二个数的数字(Xai,Ybi;i=0至n-1)的一进位存在的判定构成一系列具有次序相关的判定时,
具有n个判定节点,根据二个数的数值Xai,Ybi分别当相同数字处的总和的结果变为2或大于2时输出“真或伪”,当结果变为0时输出“伪和真”,和当结果变为1时输出“即不是真也不是伪或不知道”作为判定的结果和
具有相应于二个数的数字的行的由n行和m列(m是超过log2n的最小整数)的组成的一较高优先权级确定节点矩阵;
第一列的较高优先权级确定节点组具有
作为用来传送第0数字的判定节点的判定结果的伪程序节点的第0行的一较高优先权级确定节点和
一第h1行的较高优先权级确定节点,接收第h1-1数字的判定结果和第h1数字(h1=1至n-1)的判定节点的判定结果作为它的输入,当第h1数字的判定节点的判定结果是“真”或“假”时输出第h1数字的判定节点的判定结果,和与第h1数字的判定节点的判定结果是“即不是真也不是假或不知道”时输出第h1-1数字的判定节点的判定结果;
一第k列(k=1至m)的较高优先权级确定节点组具有
作为用来分别传送从第0行至第2K-1-1行的较高优先权级确定节点的判定结果的伪程序节点的第0行到第2K-1行的较高优先权级确定节点和
一第hk行的较高优先权级确定节点,接收第hk-2k-1行的较高优先权级确定节点的判定结果和第hk行(hk=2k-1至n-1)的较高优先权级确定节点的判定结果作为它的输入,当第hk行的较高优先权组确定节点的判定结果为“真”或“假”时输出第hk行的较高优先权级确定节的判定输出,和当第hk行的较高优先权级确定节点的判定结果为“即不是真也不是假或不知道时”输出第hk-2k-1行的较高优先权级确定节点的判定结果;和
n个判定节点和这些列的较高优先权级确定节点组分别被同时处理。
46、如权利要求45的算术和逻辑单元,其特征在于:
当分别将判定结果“真”定义为数值代码“Y”,“假”定义为数值代码“N”和“即不是真也不是假或不知道”定义为数值代码“Q”时,
每个较高优先权级确定节点给定用来从二个代码中获得一代码Tij∈{Y.N.Q}的K算符,也就是,从较高有效位的判定节点的判定结果获得代码Ti∈{Y.N.Q}和从较低有效位的判定节点的判定结果获得代码Tj∈{Y.N.Q};并且其中代码Ti优于代码Tj,当代码Ti是数值代码“Y”或数值代码“N”时K算符将数值代码“Y”或数值代码“N”定义为由代码Tij所得到的数值代码和当代码Ti是数值代码“Q”时K算符将由代码Tj所得到的该数值代码定义为由代码Tij所得到的数值代码。
47、如权利要求45的算术和逻辑单元,其特征在于:
当分别将判定结果“真”定义为数值代码“Y”,“假”定义为数值代码“N”和“即不是真也不是假或不知道”定义为数值代码“Q”时,
每一较高优先权级确定节点给定用来从二个代码中获得一代码Tij∈{Y.N.Q}的K算符,也就是,从较高有效位的判定节点的判定结果获得代码Ti∈{Y.N.Q}和从较低有效位的判定节点的判定结果获得代码Tj∈{Y.N.Q};并且其中代码Ti优于代码Tj,
当由一2位二进制数(X,1,X,0)所赋值的任何代码X分别将数值“Y”定义为{11}、数值“N”定义为{10}和数值“Q”定义为{0*}(这里,“*”是“不留心”)、“或”逻辑由“+”算符表示、“与”逻辑由“·”算符表示和负逻辑由“^”算符来表示时,
该K算符给出:
YiKTj=Tij
(Ti,1,Ti,0)K(Tj,1,Tj,0)=(Tij,1,Tji,0)
=(Ti,1+Tj,1,Ti,1·Ti,0+^Ti.1·Tj.0)
48、如权利要求47的算术和逻辑单元,其特征在于:
从第一数字至第n-1数字的判定节点的每一个具有
用来得到数值Xai和数值Ybi的“同”逻辑并输出例如代码Ti,1的结果的一“同”逻辑装置和
用来输出例如代码Ti,0的数值Xai的一连接装置或用来输出例如代码Ti,0的数值Ybi的连接装置;
第0数字的判定节点具有
用来得到数值Xao和数值Ybo的“或非”逻辑的一“或非”逻辑装置,
用来得到数值Xao和数值Ybo的“与非”逻辑的一“与非”逻辑装置,和
一选择装置,用来获得分别当输入到算术和逻辑单元的进位是“1”时选择“或非”逻辑装置的输出和当进位输入是“0”时选择“与非”逻辑装置的输出所得到结果的负逻辑并且输出例如代码To,0的结果而不输出代码To,1的结果;
在不包括该伪程序节点的较高优先权级确定节点之中,每一个最初由从第0数字的判定节点输出的代码To,1不产生的较高优先权级确定节点具有
一“或”逻辑装置,用来得到代码Ti,1和代码Tj,1的“或”逻辑并且输出例如代码Tij,1的结果和
一选择装置,用来分别当代码Ti,1是“1”时选择代码Ti,0,当代码Ti,1是“0”时选择代码Tj,0,并且输出例如代码Tij,0的结果;
在不包括该伪程序节点的较高优先权级确定节点之中,每一个最初由从第0数字的判定节点输出的代码To,1中产生的较高优先权级确定节点具有
一选择装置,用来分别当代码Ti,1是“1”时选择代码Ti,0,当代码Ti,1是“0”时选择代码Tj,0,并且不输出代码Tij,1;和
第m列的从第0行至第n-1行的较高优先权级确定节点的输出代码Tij,0被用作为第一数字至第n-1数字和该算术和逻辑单元的进位输出并且当输出代码Tij,0是“1”时它被解释为“存在有一进位输出”而当输出代码Tij,0是“0”时被解释为“不存在有进位输出”。
49、如权利要求48的算术和逻辑单元,其特征在于具有:
一第0数字的“异或”逻辑装置,用来得到数值Xao和数值Ybo的“异或”逻辑和
一总和产生装置,提供有用来得到第0数字的“异或”逻辑装置的输出的“异或”逻辑并进位输入到该算术和逻辑单元和将其定义为第0数字的总和的结果的第0行的“异或”逻辑装置以及用来得到在从第一数字至第n-1数字的判定节点的输出代码Ti,1的每一页逻辑和从第m列的第0行至第n-2行的较高优先权级确定节点的每一输出代码Tij,0之间的“异或”逻辑并且将其定义为第一数字至第n-1数字的总和的结果的从第一行至第n-1行的“异或”逻辑。
50、如权利要求47的算术和逻辑单元,其特征在于:
每一个从第一数字至第n-1数字的判定节点具有
一“同”逻辑装置,用来得到数值Xai和数值Ybi的“同”逻辑并且输出例如代码Ti,1的结果和
一用来输出例如代码Ti,0的数值Xai的连接装置或一用来输出例如代码Ti,0的数值Ybi的连接装置;
第0数字的判定节点具有
一“或非”逻辑装置,用来得到数值Xao和数值Ybo的“或非”逻辑,
一“与非”逻辑装置,用来得到数值Xao和数值Ybo的“与非”逻辑,和
一选择装置,用来获得分别与输入到算术和逻辑单元的进位是“1”时选择“或非”逻辑装置的输出而当进位输入是“0”时选择“与非”逻辑装置的输出所得到结果的负逻辑并且输出例如代码To,0的结果而不输出代码To,1的结果;
第一列的第0行的较高优先权级节点和第k列的第0行至第2k-1-1行(k=2至m)的较高优先权级节点被定义为对第0数字的判定节点的判定结果和从第0行至第2k-1-1行的较高优先权级确定节点的判定结果反向并且传送相同的伪程序节点;
在不包括该伪程序节点的第m-p列(p是由p=0至m-1所指明的一偶数)的较高优先极级确定节点之中,每一从最初由第0数字的判定节点所输出的代码To,1中不产生的较高优先权级确定节点具有
一“或非”装置,用来得到代码Ti,1和代码Tj,1的“或非”逻辑并输出例如代码^Tij,1的结果和
第二选择装置,用来获得分别当代码Ti,1是“1”时选择代码Ti,0而当代码Ti,1是“0”时选择代码Tj,0所得到结果的负逻辑并且输出例如代码^Tij,0的输出;
在不包括该伪程序节点的第m-q列(q是一由q=1至m-1指明的奇数)的较高优先权级确定节点之中,第一个从最初由第0数字的判定节点所输出的代码To,1不产生的较高优先级确定节点具有
一“与非”逻辑,用来获得代码^Ti,1和代码^Tj,1的“与非”逻辑并且输出例如代码^Tij,1的结果和
一第三选择装置,用来获得通过分别当代码^Ti,1是“0”时选择代码^Ti,0而当代码^Ti,1是“1”时选择代码^Ti,0所得到结果的负逻辑并且输出例如代码Tij,0的结果;
在不包括该伪程序节点的第m-p到(p是一由p=0至m-1所指明的偶数)的较高优先权级确定节点之中,从最初由第0数字的判定节点所输出的代码To,1产生的较高优先权级节点具有
一第二选择装置,用来获得通过分别当代码Ti,1是“1”时选择代码Ti,0而当代码Ti,1是“0”时选择代码Tj,0所得到的结果的负逻辑并且输出例如代码^Tij,0的结果而不输出代码Tij,1的结果;
在不包括该伪程序节点的第m-q列(q是由q=1至m-1所指明的一奇数)的较高优先权级确定节点之中,从最初由第0数字的判定节点所输出的代码To,1中产生的较高优先权级确定节点具有
一第三选择装置,用来获得通过分别当代码^Ti,1是“0”时选择代码^Ti,0而当代码^Ti,1是“1”时选择代码^Tj,0所得到的结果的负逻辑并且输出例如代码Tij,0的结果而不输出代码Tij,1的结果;
当m是一偶数时,从第m列的第0行至第n-1行的较高优先权级确定节点的输出代码Tij,0被用作为第一数字至第n-1数字和该算术和逻辑单元的进位输出并且分别当输出代码Tij,0为“1”时解释为“存在有一进位输出”而当输出代码Tij,0是“0”时解释为“没有进位输出”;和
当m是奇数时,从第m列的第0行至第n-1行的较高优先权级确定节点的输出代码^Tij,0被用作第一数字至第n-1数字和该算术和逻辑单元的进位输出并且它被分别当输出代码^Tij,0是“0”时解释为“存在有一进位输出”而当输出代码^Tij,0是“1”时解释为“不存在有进位”。
51、如权利要求50的算术和逻辑单元,其特征在于具有
一第0数字的“异或”逻辑装置,用来获得数值Xao和数值Ybo的“异或”逻辑和
当m是一偶数时,
一总和产生装置提供有一用来获得第0数字的“异或”逻辑装置的输出的“异或”逻辑并且进位输入到算术和逻辑单元并将其定义为第0数字的总和的结果的第0行的“异或”逻辑装置和
从第一行至第n-1行的“异或”逻辑装置,用来获得在从第一数字至第n-1数字的判定节点的代码Ti,1的输出的每一负逻辑和从第m列的第0行至第n-2行的较高优先权级确定节点的每一输出代码Tij,0之间的“异或”逻辑并将定义为第一数字至第n-1数字之和的结果和
当m是一奇数时,
一总和产生装置提供有一第0行的“异或”逻辑装置,用来获得第0数字的“异或”逻辑装置的输出的“异或”逻辑并进位输入到该算术和逻辑单元并将其定义为第0数字的总和和
从第一行至第n-1行的“异或”逻辑装置,用来获得在从第一数字至第n-1数字的判定节点的输出代码Ti,1的每一负逻辑和从第m列的第0行至第n-2行的较高优先权级节点的输出代码^Tij,0的每一负逻辑之间的“异或”逻辑并将其定义为第一数字至第n-1数字之和的结果。
52,一种算术和逻辑单元,其特征在于,
当在二个n位二进制数(Xa,Yb)的相加中对二个数的数字(Xai,Ybi;i=0至n-1)的进位存在的判定构成一系列具有一次序相关的判定时,
它具有n个判定节点,根据二个数的数值Xai,Ybi分别与相同数字处的总和的结果变为2或2以上时输出“真或假”,当结果变为0时输出“假或真”,和当结果变为1时输出“即不是真也不是假或不知道”作为判定的结果和
一较高优先权级确定节点矩阵,由用相应于二个数的奇数数字的行的n/2数的行和m数的列(m是超过log2n的最小整数)所组成;
第一行的较高优先权级节点的组具有
一第h1行的较高优先权级确定节点,接收第h1-1数字的判定结果和第h1数字(h1=从1至n-1的奇数)的判定节点的判定结果作为之的输入,当第h1数字的判定节点的判定结果是“真”或“假”时输出第h1数字判定节点的判定结果,和当第h1数字的判定节点的判定结果是“即不是真也不是或不知道”时输出第h1-1数字的判定节点的判定结果;
第k列(k=2至m)的较高优先权级确定节点组具有
用来分别传送从第一至第2k-1-1奇数行的较高优先权级确定节点的判定结果作为伪程序节点的第一至第2k-1奇数行的较高优先权级确定节点和
一第hk行的较高优先权级确定节点,接收第hk-2k-1行的较高优先权级确定节点和第hk行(hk=从2k-1至n-1的奇数)的判定结果作为它的输入,当第hk行的较高优先权级确定节点的判定结果是“真”或“假”时输出第hk行的较高优先权级确定节点的判定结果,和当第hk行的较高优先权级确定节点的判定结果是“即不是真也不是假或不知道”的输出第hk-2k-1行的较高优先权级确定节点的判定结果;和
这些行的n个判定节点和较高优先权级组分别被同时处理。
53、如权利要求52的算求和逻辑单元,其特征在于:
当分别将判定“真”的结果定义为数值代码“Y”、“假”的结果定义为数值“N”和“即不是真也不是假或不知道”定义为数值“Q”时,
每一较高优先权级确定节点给定一用来从二个代码获得一代码Tij∈{Y.N.Q}的K算符,也就是,从较高有效位的判定节点的判定结果获得代码Ti∈{Y.N.Q}和从较低有效位的判定节点的判定结果来获得代码Tj∈{Y.N.Q};和其中代码Ti优于代码Tj,
当代码Ti是数值代码“Y”或数值代码“N”时该K算符定义数值代码“Y”或数值代码“N”作为由代码Tij所得到的数值代码而当代码Ti是数值代码“Q”时定义由代码Tj所得到的数值代码作为由代码Tij所得到的数值代码。
54、如权利要求52的算术和逻辑单元,其特征在于:
当分别将判定“真”的结果定义为数值“Y”,“假”定义为数值代码“N”,和“即不是真也不是假或不知道”定义为数值代码“Q”时,
每一较高优先权级确定节点给定一用来从二个代码获得一代码Tij∈{Y.N.Q}的K算符,也就是,从较高有效位的判定节点的判定结果获得代码Ti∈{Y.N.Q}和从较低有效位的判定节点的判定结果获得代码Tj∈{Y.N.Q};并且代码Ti优于代码Tj,
当分别用由一二位二进制数(X,1,X,0)所赋值的任何代码X将数值代码“Y”定义为{11}、将数值代码“N”定义为{10}、和将数值代码“Q”定义为{0*}(这里,“*”是“不留心”)、用“+”算符表示“或”逻辑、用“·”算符表示“与”逻辑和用“^”算符表示一负逻辑时,
K算符给出:
YiKTj=Tij
(Ti,1,Ti,0)K(Tj,1,Tj,0)=(Tij,1,Tji,0)
=(Ti,1+Tj,1,Ti,1·Ti,0+^Ti.1·Tj.0)。
55、如权利要求54的算术和逻辑单元,其特征在于:
从第一数字至第n-1数字的每一判定节点具有
一“同”逻辑装置,用来获得数值Xai和数值的“异或”逻辑并且输出例如代码Ti,1的结果和
一用来输出例如代码Ti,0的数值Xai的连接装置或一用来输出例如代码Ti,0的数值Ybi的连接装置;
第0数字的判定节点具有
一用来获得数值Xao和数值Ybo的“或非”逻辑的“或非”逻辑装置,
一用来获得数值Xao和数值Ybo的“与非”逻辑的“与非”逻辑装置,
一选择装置,用来获得分别当输入到该算术和逻辑单元的进位是“1”时选择“或非”逻辑装置的输出和当进位输入是“0”时选择“与非”逻辑装置的输出所得到结果的负逻辑并且输出例如代码To,0的结果而不输出代码To,1;
在不包括该伪程序节点的较高优先权级确定节点之中,每一从最初由第0数字的判定节点输出的代码To,1中不产生的较高优先权级确定节点具有
一用来获得代码Ti,1和代码Tj,1的“或”逻辑并输出例如代码Tij,1的结果的“或”逻辑装置和
一选择装置,用来分别当代码Ti,1是“1”时选择代码Ti,0而当代码Ti,1是“0”时选择代码Tj,0,并且输出例如代码Tij,0的结果;
在不包括该伪程序节点的较高优先权级确定节点之中,从最初由第0数字的判定节点输出的代码To,1中产生的较高优先权级确定节点具有
一选择装置,用来分别当代码Ti,1是“1”时选择代码Ti,0而当代码Tj,1是“0”时选择代码Tj,0,并且输出例如代码Tij,0的结果而不输出代码Tij,1;
第m列的第n-1行的较高优先权级确定节点的输出代码Tij,0被用作为该算术和逻辑单元的进位输出并且当输出代码Tij,0是“1”时它被解释为“存在有一进位输出”而当输出代码Tij,0是“0”时解释为“没有进位输出”;
该算术和逻辑单元具有
一第0数字的“异或”逻辑装置,用来获得数值Xao和数值Ybo的“异或”逻辑和
总和产生装置;和
该总和产生装置具有
一第0行的“异或”逻辑装置,用来获得第0数字的“异或”逻辑装置的输出的“异或”逻辑并进位输入到该算术和逻辑单元并将其定义为第0数字的总和的结果,
一第一行的“异或”逻辑装置,用来获得在第0数字判定节点的输出代码T0,0和第一数字的判定节点的输出代码T1,1的负逻辑之间的“异或”逻辑并将其定义为第一数字之和的结果,
一第0行的进位产生装置,用来分别当第f数字(f=从2至n-1的偶数)的判定节点的输入代码Tf,1是“1”时选择对于输入到该行的输入数值Xaf和Ybf,当输出代码Tf,1是“0”时选择第f-1行的较高优先权级确定节点的输出代码,并且输出例如进位到第f+1数字的结果,
一第f行的“异或”逻辑装置,用来获得在第f数字判定节点的输出代码Tf,1的负逻辑和第f-1行的较高优先权级确定节点的输出代码之间的“异或”逻辑并且将其定义为第f数字之和的结果,
一第f+1行的“异或”逻辑装置,用来获得在第f+1数字的判定节点的输出代码Tf+1,1的负逻辑和第f行的进位产生装置的输出之间的“异或”逻辑并且将其定义为第f+1数字之和的结果。
56、如权利要求54的算术和逻辑单元,其特征在于:
从第一数字至第n-1数字的每一判定节点具有
一“同”逻辑装置,用来获得数值Xai和数值Ybi的“同”逻辑并且输出例如代码Ti,1的结果,和
一用来输出例如代码Ti,0的数值Xai的连接装置或一用来输出例如代码Ti,0的数值Ybi的连接装置;
第0数字的判定节点具有
一用来获得数值Xao和数值Ybo的“或非”逻辑的“或非”逻辑装置,
一用来获得数值Xao和数值Ybo的“与非”逻辑的“与非”逻辑装置,
一选择装置,用来分别当输入到该算术和逻辑单元的进位是“1”时选择“或非”逻辑装置的输出的当进位输入是“0”时选择“与非”逻辑装置的输出所得到结果的负逻辑并且输出例如代码T0,0的结果而不输出代码T0,1;
第k列的第一至第2k-1-1(k=2至m)奇数行的较高优先数级确定节点被定义为伪程序节点,分别反转第一至第2k-1-1奇数行的较高优先权级确定节点的判定结果并传送相同;
在不包括该伪程序节点的第m-p列(p是由p=0至m-1所指明的一偶数)的较高优先权级确定节点之中,每一从最初由第0数字的判定节点的输出的代码To,1不产生的较高优先权级确定节点具有
一“或非”逻辑装置,用来获得代码Ti,1和代码Tj,1的“或非”逻辑并且输出例如代码^Tij,1的结果和
一选择装置,用来获得分别当代码Ti,1是“1”时选择代码Ti,0和当代码Ti,1是“0”时选择代码Tj,0所得到的结果的负逻辑并且输出例如代码^Tij,0的结果,
在不包括该伪程序节点的第m-q列(q是由q=1至m-1所指明的一奇数)的较高优先权级确定节点之中,每一从最初由第0数字的判定节点输出的代码To,1中不产生的较高优先权级确定节点具有
一“与非”逻辑装置,用来获得代码^Ti,1和代码^Tj,1的“与非”逻辑并输出例如代码Tij,1的结果和
一第三选择装置,用来获得分别当代码^Ti,1是“0”时选择代码^Ti,0和当代码^Ti,1是“1”时选择代码^Tj,0所得到结果的负逻辑并且输出例如代码Tij,0的结果;
在不包括该伪程序节点的第m-p列(p是由p=0到m-1所指明的一偶数)的较高优先权级确定节点之中,从最初由第0数字的判定节点输出的代码To,1中产生的较高优先权级确定节点具有
一第二选择装置,用来获得分别当代码Ti,1是“1”时选择代码Ti,0而当代码Ti,1是“0”时选择代码Tj,0所得到结果的负逻辑并且输出例如代码^Tij,0的结果而不输出代码Tij,1;
在不包括该伪程序的第m-1列(q是由q=1至m-1所表明的一奇数)的较高优先权级确定节点之中,从最初由第0数字的判定节点输出的代码To,1中产生的较高优先权级确定节点具有
一第三选择装置,用来获得分别当代码^Ti,1是“0”时选择代码^Ti,0和当代码^Ti,1是“1”时选择代码^Tj,0所得到结果的负逻辑并且输出例如代码Tij,0的结果而不输出代码Tij,1;
当m是一偶数时,第m列的第n-1行的较高优先权级确定节点的输出代码Tij,0被用作为该算术和逻辑单元的进位输出并且当该输出代码Tij,0是“1”时被解释为“存在有一进位输出”而当输出代码Tij,0是“0”时解释为“不存在有进位输出”;和
当m是一奇数时,由获得的第m列的第n-1行的较高优先权级确定节点的输出代码^Tij,0的负逻辑所得到的输出代码Tij,0被用作该算术和逻辑单元的进位输出并且当输出代码Tij,0是“1”时被解释为“存在有一进位输出”而当输出代码Tij,0是“0”时被解释为“不存在有进位输出”;
该算术和逻辑单元具有
一第0数字的“异或”逻辑装置,用来获得数值Xao和数值Ybo的“异或”逻辑和
总和产生装置;
该总和产生装置具有,当m是一偶数时,
第0行的“异或”逻辑装置,用来获得第0数字的“异或”逻辑装置的输出的“异或”逻辑并且进位输出到该算术和逻辑单元并将其定义为第0数字的总和的结果,
第一行的“异或”逻辑装置,用来获得第0数字的判定节点的输出代码To,0和第一数字的判定节点的输出代码T1,1的负逻辑之间的“异或”逻辑并将其定义为第一数字之和的结果,
第f行的进位产生装置,用来分别当第f数字(f=从2至n-1的偶数)的判定节点的输出代码Tf,1是“1”时选择输入到该行的数值Xaf或Ybf,当输出代码Tf,1是“0”时选择第f-1行的较高优先权级确定节点的输出代码,并且输出例如到该第f+1数字的结果,
第f行的“异或”逻辑装置,用来获得在第f数字的判定节点的输出代码Tf,1的负逻辑和第f-1行的较高优先权级确定节点的输出代码之间的“异或”逻辑并将其定义为第f数字之和的结果,和
第f+1行的“异或”逻辑装置,用来获得在第f+1数字的判定节点的输出代码Tf+1,1的负逻辑和第f行的进位产生装置的输出之间的“异或”逻辑并且将其定义为第f+1数字之和的结果,同时,
当m是一奇数时,
一第0行的“异或”逻辑装置,用来获得第0数字的“异或”逻辑装置的输出的“异或”逻辑并进行输入到该算术和逻辑单元并且将其定义为第0数字之和的结果,
一第一行的“异或”逻辑装置,用来获得在第0数字的判定节点的输出代码To,0和第一数字的判定节点的输出代码T1,1的负逻辑之间的“异或”逻辑并且将其定义为第一数字之和的结果,
一第f行的进位产生装置,用来分别当和f数字(f=从2至n-1的偶数)的判定节点的输出代码Tf,1是“1”时选择输入至该行的数值Xaf和Ybf而当输出代码Tf,1是“0”时选择第f-1行的较高优先权级的输出代码的负逻辑,并且输出例如进位到该第f+1数字的结果,
一第f行的“异或”逻辑装置,用来获得在第f数字的判定节点的输出代码Tf,1的负逻辑和第f-1行的较高优先权级的输出代码的负逻辑之间的“异或”逻辑并且将其定义为第f数字之和的结果,和
一第f+1行的“异或”逻辑装置,用来获得在第f+1数字的判定节点的输出代码Tf+1的负逻辑和第f行的进位产生装置的输出之间的“异或”逻辑并将其定义为第f+1数字之和的结果。
57、如权利要求54的算术和逻辑单元,其特征在于:
每一个第一数字至第n-1数字的判定节点具有
一“同”逻辑装置,用来获得数值Xai和数值Xbi的“同”逻辑并且输出例如代码Ti,1的结果和
一用来输出例如代码Ti,0的数值Xai的连接装置或一用来输出例如代码Ti,0的数值Ybi的连接装置;
第0数字的判定节点具有
一用来获得数值Xao和数值Ybo的“或非”逻辑的“或非”逻辑装置,
一用来获得数值Xao和数值Ybo的“与非”逻辑的“与非”逻辑装置,和
一选择装置,用来获得分别当输入到该算术和逻辑单元的进位是“1”时选择“或非”逻辑装置的输出和当进位输入是“0”时选择“与非”逻辑装置的输出所得到结果的负逻辑并且输出例如代码To,0的结果而不输出代码To,1;
在不包括该伪程序节点的较高优先权级确定节点之中,每一从最初由第0数字的判定节点输出的代码To,1不产生的较高优先权级确定节点具有,
一用来获得代码Ti,1和代码Tj,1的“或”逻辑并输出例如代码Tij,1的结果的“或”逻辑装置和
一选择装置,用来分别当代码Ti,1是“1”时选择代码Ti,0而当代码Ti,1是“0”时选择代码Tj,0并输出例如代码Tij,0的结果;
在不包括该伪程序节点的较高优先权级确定节点之中,从最初由第0数字的判定节点输出的代码To,1中产生的较高优先权级确定节点具有
一选择装置,用来分别当代码Ti,1是“1”时选择代码Ti,0而当代码Ti,1是“0”时选择代码Tj,0并且输出例如代码Tij,0的结果而不输出代码Tij,1;
第m列的第n-1行的较高优先权级确定节点的一输出代码Tij,0被用作该算术和逻辑单元的进位输出并且当输出代码Tij,0是“1”时解释为“存在有一进位输出”而当输出代码Tij,0是“0”时解释为“不存在进位输出”;
该算术和逻辑单元具有
一第0数字的“异或”逻辑装置,用来获得数值Xao和数值Ybo的“异或”逻辑和
一总和产生装置;和
该总和产生装置具有
一第0行的“异或”逻辑装置,用来获得第0数字的“异或”逻辑装置的输出的“异或”逻辑并进位输入到该算术和逻辑单元并且将其定义为第0数字之和的结果,
一第一行的“异或”逻辑装置,用来获得在第0数字的判定节点的输出代码To,0和第一数字的判定节点的输出代码T1,1的负逻辑之间的“异或”逻辑并将其定义为第一数字之和的结果,
一第f行的进位产生装置,用来获得由分别当第f数字(f=从2至n-1的偶数)的判定节点的输出代码Tf,1是“1”时选择输入到该行的数值Xaf和Ybf而当输出代码Tf,1是“0”时选择第f-1行的较高优先权级确定节点的输出代码并且输出例如一进位到f+1数字的结果,
一第f行的“同”逻辑装置,用来获得在第f数字的判定节点的输出代码Tf,1和第f-1行的较高优先权级确定节点的输出代码之间的“同”逻辑和将其定义为第f数字之和的结果,和
一第f+1行的“异或”逻辑装置,用来获得第f+1数字的判定节点的输出代码Tf+1,1和第f行的进位产生装置的输出之间的“异或”逻辑并且将其定义为第f+1数字之和的结果。
58、如权利要求54的算术和逻辑单元,其特征在于:
从第一数字到第n-1数字的每一判定节点具有
一“同”逻辑装置,用来获得数值Xai和数值Ybi的“同”逻辑并且输出例如代码Ti,1的结果和
一用来输出例如代码Ti,0的数值Xai的连接装置或一用来输出例如代码Ti,0的数值Ybi的连的装置;
第0数字的判定节点具有
一“或非”逻辑装置,用来获得数值Xao和数值Ybo的“或非”逻辑,
一“与非”逻辑,用来获得数值Xao和数值Ybo的“与非”逻辑,和
一选择装置,用来获得分别与输入到该算术和逻辑单元的进位是“1”时选择“或非”逻辑装置的输出而当进位输入为“0”时选择“与非”逻辑装置的输出所得到结果的负逻辑并且输出例如代码To,0的结果而不输出代码To,1;
在不包括该伪程序节点的较高优先权级确定节点之中,每一从最初由第0数字的判定节点的输出代码To,1不产生的较高优先权级确定节点具有
一“或”逻辑装置,用来获得代码Ti,1和代码Tj,1的“或”逻辑并且输出例如代码Tij,1的结果和
一选择装置,用来分别当代码Ti,1是“1”时选择代码Ti,0而当代码Ti,1是“0”时选择代码Tj,0并且输出例如代码Tij,0的结果;
在不包括该伪程序节点的较高优先权级确定节点之中,从最初由第0数字的判定节点输出的代码To,1中产生的较高优先权级确定节点具有,
一选择装置,用来分别当代码Ti,1是“1”时选择代码Ti,0而当代码Ti,1是“0”时选择代码Tj,0并且输出例如代码Tij,0的结果而不输出代码Tij,1;
第m列的第n-1行的较高优先权级确定节点的输出代码Tij,0被用作该算术和逻辑单元的进位输出并且当该输出代码Tij,0是“1”时解释为“存在有一进位输出”而与输出代码Tij,0是“0”时解释为“不存在有进位输出”;
该算术和逻辑单元具有
一第0数字的“异或”逻辑装置,用来获得数值Xao和数值Ybo的“异或”逻辑和
一总和产生装置;和该总产生装置具有
一第0行的“异或”逻辑装置,用来获得第0数字的“异或”逻辑装置的输出的“异或”逻辑并进位输入到该算术和逻辑单元并且将其定义为第0数字的和的结果,
一第一行的“异或”逻辑装置,用来获得在第0数字的判定节点的输出代码To,0和第一数字的判定节点的输出代码T1,1的负逻辑之间的“异或”逻辑并且将其定义为第一数字之和的结果,
一“与非”逻辑装置,用来获得在第f数字(f=从2至n-1的偶数)的判定节点的输出代码Tf,1之间的“与非”逻辑并且将数值Xaf或Ybf输入到该行,
一“异或”逻辑装置,用来获得第f+1数字的判定节点的输出代码Tf+1和“与非”逻辑装置的输出的“异或”逻辑并且输出第f+1行的第0所选择信号,
一第f行的“同”逻辑装置,用来获得在第f数字的判定节点的输出代码Tf,1和第f+1行的第0选择信号之间的“同”逻辑并且输出第f+1行的第一选择信号,
一“同”逻辑装置,用来获得在第f数字的判定节点的输出代码Tf,1和第f-1行的较高优先权级确定节点的输出代码之间的“同”逻辑并且将其定义为第f数字之和的结果,和
一第f+1行的总和产生选择装置,用来获得通过分别当第f-1行的较高优先权级确定节点的输出代码是“1”时选择第f+1行的第一选择信号和当输出代码是“0”时选择第f+1行的第0选择信号所得到结果的负逻辑并且定义例如第f+1数字之和的结果的结果。
59、如权利要求54的算术和逻辑单元,其特征在于:
当在二个n位二进制数的相减(Xa-Xb)中用于二个数的数字(Xai,Ybi;i=0至n-1)的借位存在的判定构成一系列具有一次序相关的判定时,每一判定节点具有
一“异或”逻辑装置,用来获得数值Xai和数值Ybi的“异或”逻辑并且输出例如代码Ti,1的结果和
一连接装置,用来输出例如代码Ti,0的数值Ybi。
60、如权利要求59的算术和逻辑单元,其特征在于:
对于二个数的LSB(最小有效位)执行一借位存在的判定的该判定节点具有
一“或非”逻辑装置,用来获得数值Xao和数值Ybo的负逻辑的^Xao的“或非”逻辑,
一“与非”逻辑装置,用来获得数值Xao和数值Ybo的负逻辑的^Xao的“与非”逻辑,
一选择装置,用来获得通过分别当输入到该算术和逻辑单元的借位是“1”时选择“或非”逻辑装置的输出而当借位输入是“0”时选择“与非”逻辑装置的输出而得到的结果的负逻辑并且输出例如代码To,0的结果;和
不输出代码To,1。
61、如权利要求60的算术和逻辑单元,其特征在于:
从最初由对在较高优先权级确定节点中的二个数的LSB扫行一借位存在的判定的判定节点所输出的代码To,1中不产生的每一较高优先权级确定节点具有
一“或”逻辑装置,用来获得代码Ti,1和代码Tj,1的“或”逻辑并且输出例如代码Tij,1的结果和
一选择装置,用来分别当代码Ti,1是“1”时选择代码Ti,0而当代码Ti,1是“0”时选择代码Tj,0并且输出例如代码Tij,0的结果;
从最初由对在较高优先权级确定节点中的二个数的LSB执行一借位存在的判定的判定节点所输出的代码To,1中产生的较高优先权级确定节点具有
一选择装置,用来分别当代码Ti,1是“1”时选择代码Ti,0而当代码Ti,1是“0”时选择代码Tj,0并且输出例如代码Tij,0的结果而不输出代码Tij,1;和
当用作该二进制树的根的较高优先权级确定节点的输出代码Tij,0是“1”时被解释为“存在有一借位输出”而当输出代码Tij,0是“0”时被解释为“不存在有借位输出”。
62、如权利要求60的算术和逻辑单元,其特征在于:
当不包括该二进制树的叶的高m(m是超过log2n的最小整数)的子二进制树具有用作一涤m的节点Nm(Nm是超过n/2的最小整数)个较高优先权级确定节点和用作一涤S(S是由S=1至m-1表示的一整数)的节点的NS(NS是超过Ns+1/2的最小整数)个的较高优先权级确定节点时,
从最初由对在用作在该子二进制树的深m-p(p是由p=0至m-1指明的一偶数)处的节点的较高优先权级确定节点之中的二个数的LSB执行借位的存在的判定的判定节点所输出的代码To,1不产生的每一较高优先权级确定节点具有
一“或非”逻辑装置,用来获得代码Ti,1和代码Tj,1的“或非”逻辑并且输出例如代码^Tij,1的结果和一第二选择装置,用来获得通过分别当代码Ti,1是“1”时选择代码Ti,0而当代码Ti,1是“0”时选择代码Ti,1并输出例如代码^Tij,0的结果;
从最初由对在用作在该子二进制树的深m-q(q是由q=0至m-1所指明的一奇数)处的节点的较高优先权级确定节点之中的二个数的LSB执行借位的存在的判定的判定节点所输出的代码To,1中不产生的每一较高优先权级确定节点具有
一“与非”逻辑装置,用来获得代码^Ti,1和代码^Tj,1的“与非”逻辑并且输出例如代码Tij,1的结果和
一第三选择装置,用来获得通过分别当代码^Ti,1是“0”时选择代码^Ti,0而当代码^Ti,1是“1”时选择代码^Tj,0并且输出例如代码Tij,0的结果;
从最初由对在用作在该子二进制树的涤m-p(p是由p=0至m-1所指明的一偶数)处的节点的较高优先权级确定节点之中的二个数的LSB执行一借位存在的判定的判定节点所输出的代码To,1所产生的较高优先权级确定节点具有
一第二选择装置,用来获得通过分别当代码Ti,1是“0”时选择代码Ti,0而当代码Ti,1是“0”时选择代码Tj,0所得到的结果的负逻辑并且输出例如代码^Tij,0的结果而不输出代码Tij,1;
从最初由对在用作在该子二进制树的深m-1(q是由q=0至m-1指明的一奇数)处的节点的较高优先权级确定节点之中的二个数的LSB执行一借位存在的判定的判定节点所输出的代码To,1所产生的较高优先树级确定节点具有
一第三选择装置,用来获得通过分别当代码^Ti,1是“0”时选择代码^Ti,0而当代码^Ti,1是“1”时选择代码^Ti,1所得到的结果的负逻辑并且输出例如代码Tij,0的结果而不输出代码Tij,1;
当m是偶数时,当用作该二进制树的极的较高优先权级确定节点的输出代码Tij,0是“1”时被解释为“存在有一借位输出”而输出代码Tij,0是“0”时被解释为“不存在有借位输出”;和
当m是一奇数时,当用作该二进制树的根的较高优先权级确定节点的输出代码^Tij,0是“0”时被解释为“存在有一借位输出”而当输出代码^Tij,0是“1”时解释为“不存在借位输出”。
63、一种算术和逻辑单元,其特征在于:
当在二个n位二进制数的相减(Xa-Yb)中对该数字(Xai,Ybi;i=0至n-1)的一借位存在的判定构成一系列具有一次序相关的判定时,
它具有n个判定节点,根据二个数的数值Xai和Ybi的判定结果分别当相同数字处的二个数的差的结果变为负时输出“真或假”,当该结果变为正时输出“假或真”,和当该结果变为0时输出“即不是真也不是假或不知道”和
一用相应于二个数的数字的行由n行和m列(m是超过log2n的最小整数)所组成的较高优先权级确定节点矩阵;
第一列的较高优先权级确定节点组具有
作为一伪程序节点的第0行较高优先权级确定节点,用来传送第0数字的判定节点的判定结果和
第h1行的较高优先权级确定节点,接收第h1-1数字的判定结果和第h1数字(h1=1至n-1)的判定节点的判定结果作为它的输入,当第h1数字的判定节点的判定节点的判定结果是“真”或“假”时输出第h1数字的判定节点的判定结果作为其结果,当第h1数字的判定节点的判定结果是“即不是真也不是假或不知道”时输出第h1数字的判定节点的判定结果作为其结果;
第K列(k=2至m)的较高优先权级确定节点组具有
作为该伪程序节点的第0行至第2k-1-1行的较高优先权级确定节点,用来分别传送从第0行至第2k-1-1行的较高优先权级确定节点的结果和
第hk行的较高优先权级确定节点,接收第hk-2k-1行的较高优先权级确定节点的判定结果和第hk行(hk=2k-1至n-1)的较高优先权级确定节点的判定结果作为它的输入,当第hk行的较高优先权级确定节点的判定结果是“真”或“假”时输出第hk行的较高优先权级确定节点的[判定结果而当第hk行的较高优先权级确定节点的判定结果是“即不是真也不是假或不知道”时输出第hk-2k-1行的较高优先权级确定节点的判定结果作为其结果;和
该列的n个判定节点和较高优先权级确定节点组分别同时被处理。
64、如权利要求63的算术和逻辑单元的一种操作方法,其特征在于:
当分别将判定“真”定义为数值“Y”、将判定“假”定义为数值“N”、和将“即不是其也不是假”定义为数值“Q”时,
每一较高优先权级确定节点给出一用来从二个代码中获得一代码Tij∈{Y.N.Q}的K算符,也就是,从较高有效位的判定节点的判定结果获得代码Ti∈{Y.N.Q}和从较低有效位的判定节点的判定结果获得代码Tj∈{Y.N.Q};并且这里代码Ti优于代码Tj,
一K算符当代码Ti是数值代码“Y”或数值代码“N”时将数值代码“Y”或数值代码“N”定义为由代码Tij所得到的数值代码和当代码Ti是数值代码“Q”时将该由数值代码Tj所得到的数值代码定义为由代码Tij所得到的数值代码。
65、如权利要求63的算术和逻辑单元的一种操作方法,其特征在于:
当分别将判定“真”定义为数值代码“Y”,判定“假”定义为数值代码“N”、和判定“即不是真也不是假或不知道”定义为数值代码“Q”时,
每一较高优先权级确定节点给出用来从二个代码中得出一代码Tij∈{Y.N.Q}的一K算符,也就是,从较高有效位的判定节点的判定结果得到代码Ti∈{Y.N.Q}和从较低有效位的判定节点的判定结果得到代码Tj∈{Y.N.Q};并且这里代码Ti优于代码Tj。
当由一二位二进制数(X,1,X,0)所赋值的任何代码X分别将数值代码“Y”定义为{11}、将数值代码“N”定义为{10}和将数值代码定义为{0*}(这里“*”是“不留心”)、由“+”算符表示“或”逻辑、由“·”算符表示“与”逻辑、和由“^”算符表示负逻辑时,该K算符给出:
YiKTj=Tij
(Ti,1,Ti,0)K(Tj,1,Tj,0)=(Tij,1,Tji,0)
=(Ti,1+Tj,1,Ti,1·Ti,0+^Ti.1·Tj.0)。
66、如权利要求65的算术和逻辑单元,其特征在于:
第一数字至第n-1数字的每一判定节点具有
一“异或”逻辑装置,用来获得数值Xai和数值Ybi的“异或”逻辑并且输出例如代码Ti,1的结果,和
一连接装置,用来输出例如代码Ti,0和数值Ybi;
第0数字的判定节点具有
一“或非”逻辑装置,用来获得数值Xao的负逻辑^Xao和数值Ybo的“或非”逻辑,
一“与非”逻辑装置,用来获得数值Xao的负逻辑^Xao和数值Ybo的“与非”逻辑,和
一选择装置,用来获得通过分别当输入到该算术和逻辑单元的借位是“1”时选择“或非”逻辑装置的输出而当借位输入是“0”时选择“与非”逻辑的输出并且输出例如代码To,0的结果而不输出代码To,1。
在不包括该伪程序节点的较高优先权级调点节点之中,从最初由第0数字的判定节点输出的代码To,1中不产生的每一较高优先权级确定节点具有
一“或”逻辑装置,用来获得代码Ti,1和代码Tj,1的“或”逻辑并且输出例如代码Tij,1的结果和
一选择装置,用来分别当代码Ti,1是“1”时选择代码Ti,0而当代码Ti,1是“0”时选择代码Tj,0并且输出例如代码Tij,0的结果;
在不包括该伪程序节点的较高优先权级确定节点之中,从最初由第0数字的判定节点输出的代码To,1中产生的较高优先权级确定节点具有
一选择装置,用来分别当代码Ti,1是“1”时选择代码Ti,0而当代码Ti,1是“0”时选择代码Tj,1并且输出例如代码Tij,0的结果而不输出代码Tij,1;和
从第m列的第0行至第n-1行的较高优先权级确定节点的输出代码Tij,0被用作第一数字至第n-1数字和该算术和逻辑单元的借位输出并且当输出代码Tij,1是“1”时被解释为“存在有一借位输出”而当输出代码Tij,1是“0”时解释为“不存在借位输出”。
67、如权利要求66的算术和逻辑单元,其特征在于具有
一第0数字的“异或”逻辑装置,用来获得数值Xao和数值Ybo的“异或”逻辑和
一总和产生装置,提供有用来获得第0数字的“异或”逻辑装置的输出的“异或”逻辑和输入到该算术和逻辑单元的借位并将其定义为第0数字的差的结果的一第0行的“异或”逻辑装置和用来获得在从第一数字至第n-1数字的判定节点的输出代码Ti,1的每一个和从第m列的第0行至第n-2行的较高优先权级确定节点的输出代码Tij,0的每一个之间的“异或”逻辑并将其定义为第一数字至第n-1数字的差的结果的从第一行至第n-1行的“异或”逻辑装置。
68、如权利要求65的算述和逻辑单元,其特征在于:
从第一数字至第n-1数字的每一判定节点具有
一“异或”逻辑装置,用来获得数值Xai和数值Ybi的“异或”逻辑并且输出例如代码Ti,1的结果和
一连接装置,用来输出例如代码Ti,0的数值Ybi;
第0数字的判定节点具有
一“或非”逻辑装置,用来获得数值Xao的负逻辑^Xao和数值Ybo的“或非”逻辑,
一“与非”逻辑装置,用来获得数值Xao的负逻辑^Xao和数值Ybo的“与非”逻辑,和
一选择装置,用来获得通过分别当输入到该算术和逻辑单元的借位是“1”时选择“或非”逻辑装置的输出而当借位输入为“0”时选择“与非”逻辑装置的输出所得到的结果的负逻辑并且输出例如代码To,0的结果而不输出代码To,1;
第一列的第0行的较高优先权级确定节点和第k列的第0行至第2k-1-1行(k=2至m)的较高优先权级确定节点被定义为对第0数字的判定节点的判定结果和第0行至第2k-1-1行的较高优先权级确定节点的判定结果反转并且传送相同的伪程序节点;
在不包括该伪程序节点的第m-p列(p是由p=0至m-1所指明的一偶数)的较高优先权级确定节点之中,每一个从最初由第0数字的判定节点输出的代码To,1中不产生的较高优先权级确定节点具有
一“或非”逻辑装置,用来获得代码Ti,1和代码Tj,1的“或非”逻辑并且输出例如代码^Tij,1的结果,和
一第二选择装置,用来获得通过分别当代码Ti,1是“1”时选择代码To,1和当代码Ti,1是“0”时选择代码Tj,0所得到结果的负逻辑并且输出例如代码^Tij,0的结果;
在不包括该伪程序节点的第m-q列(q是由q=1至m-1所指出的一奇数)的较高优先权级确定节点之中,每一个从最初由第0数字的判定节点所输出的代码To,1中不产生的较高优先权级确定节点具有
一“与非”逻辑装置,用来获得代码^Ti,1和代码^Tj,1的“与非”逻辑并且输出例如代码Tij,1的结果和
一第三选择装置,用来获得分别当代码^Ti,1是“0”时选择代码^Ti,0和当代码^Ti,1是“1”时选择代码^Tj,0所得到的结果的负逻辑并且输出例如代码Tij,0的结果;
在不包括该伪程序节点的第m-p列(p是由p=0至m-1)的数字优先权级确定节点之中,从最初由第0数字的判定节点输出的代码To,1产生的较高优先权级确定节点具有
一第二选择装置,用来获得通过分别当代码Ti,1是“1”时选择代码Ti,0而当代码Ti,1是“0”时选择代码Tj,0所得到结果的负逻辑并且输出例如代码^Tij,0的结果而不输出代码Tij,1;
在不包括该伪程序节点的第m-q列(q是由q=1至m-1所指明的一奇数)的较高优先权级确定节点之中,从最初由第0数字的判定节点所输出的代码To,1中产生的较高优先权级确定节点具有
一第三选择装置,用来获得通过分别当代码^Ti,1是“0”时选择代码^Ti,0和当代码^Ti,1是“1”时选择代码^Tj,0所得到结果的负逻辑并且输出例如代码Tij,0的结果而不输出代码Tij,1;
当m是一偶数时,第m列的第0行至第n-1行的较高优先权级确定节点的输出代码Tij,0被用作该算术和逻辑单元的第一数字至第n-1数字和借位输出并且当输出代码Tij,0是“1”时解释为“存在有一借位输出”而当输出代码Tij,0是“0”时解释为“不存在有借位”;和
当m是一奇数时,第m列的第0行至n-1行的较高优先权级确定节点的输出代码^Tij,0被用作该算术和逻辑单元的第一数字和第n-1数字并且当输出代码^Tij,0是“0”时解释为“存在有一借位输出”而当输出代码^Tij,0是“1”时解释为“不存在有借位输出”。
69、如权利要求68的算术和逻辑单元,其特征在于具有
一第0数字的“异或”逻辑装置,用来获得数值Xao和数值Ybo的“异或”逻辑和
当m是一偶数时,
一差产生装置,提供有用来获得第0数字的“异或”逻辑装置的输出“异或”逻辑并向该算术和逻辑单元输入进位并且将其定义为第0数字的差的结果的第0行的“异或”逻辑装置和
第一行至第n-1行的“异或”逻辑装置,用来获得在第一数字至第n-1数字的判定节点的每一输出代码Ti,1和第m列的第0行至第n-2行的较高优先权级确定节点的每一输出代码Tij,0之间的“异或”逻辑并且将其定义为第一数字至第n-1数字的差的结果,和
当m是一奇数时,
一差产生装置,提供有用来获得第0数字的“异或”逻辑装置的输出的“异或”逻辑并向该算术和逻辑单元输入进位并且将其定义为第0数字的差的结果的第0行的“异或”逻辑装置和
第一行至第n-1行的“异或”逻辑装置,用来获得在第一数字至第n-1数字的判定节点的每一输出代码Ti,1和第m列的第0行至第n-2行的较高优先权级确定节点的输出代码^Tij,0的每一负逻辑之间的“异或”逻辑并且将其定义为第一数字至第n-1数字的和的结果。
70、一种算术和逻辑单元,其中:
当在二个n位二进制数(Xa-Yb)的相减中对该数字(Xai,Ybi;i=0至n-1)的一借位的存在的判定构成一系列具有一次序相关的判定时,
它具有n个判定节点,根据二个数的数值Xai和Ybi该判定的结果分别当相同数字处的二个数的差的结果变为负时输出“真或假”,与该结果变为正时输出“假或真”,和当该结果变为0时输出“即不是真也不是假或不知道”和
一较高优先权级确定节点矩阵,由用相应于二个数的奇数数字的n/2行和m列(m是超过1og2n的最小整数)所构成;
第一列的较高优先权级确定节点组具有
一第h1行的较高优先权级确定节点,接收第h-1数字和第h1数字(h1=从1至n-1的奇数)的判定节点的判定结果作为它的输入,当第h1数字的判定节点的判定结果是“真”或“假”时输出第h1数字的判定节点的判定结果,和当第h1数字的判定节点的判定结果是“即不是真也不是假或不知道”时输出第h1-1数字的判定节点的判定结果作为其结果;
第k列(k=2至m)的较高优先权级确定节点组具有
作为伪程序节点的第一至第2k-1奇数行的较高优先权级确定节点,用来分别传送第一至第2k-1-1奇数行的较高优先权级确定节点的结果和
第hk行的较高优先权级确定节点,接收第hk-2k-1行的较高优先权级确定节点和第hk行(hk=从2k-1至n-1的奇数)的较高优先权级确定节点的判定结果作为它的输入,当第hk行的较高优先权级确定节点的判定结果是“真”或“假”时输出第hk行的较高优先权级确定节点的判定结果作为其结果,和当第hk行的较高优先权级确定节点的判定结果是“即不是真也不是假或不知道时”输出第hk-2k-1行的较高优先权级确定节点的判定结果作为其结果;和
该列的n个判定节点和该较高优先权级确定节点组是分别同时被处理的。
71、如权利要求70的算术和逻辑单元,其特征在于:
当分别将判定“真”定义为数值代码“Y”,判定“假”定义为数值代码“N”,和判定“即不是真也不是假或不知道”定义为数值代码“Q”时,
每一较高优先权级确定节点给出用来从二个代码获得一代码Tij∈{Y.N.Q}的K算符,也就是,从较高有效位的判定节点的判定结果获得代码Ti∈{Y.N.Q}和从较低有效位的判定节点的判定结果获得代码Tj∈{Y.N.Q};并且这里代码Ti优于代码Tj,
K算符将数值代码“Y”或数值代码“N”定义为通过代码Tij所得到的数值,其中代码Ti是数值“Y”或数值“Q”,并且当代码Ti是数值代码“Q”时将通过代码Tj所得到数值代码定义为由代码Tij得到的数值代码。
72、如权利要求70的算术和逻辑单元,其特征在于:
当判定“真”的结果被定义为数值“Y”,判定“假”定义为数值代码“N”,和判定“即不是真也不是假或不知道”定义为数值“Q”时,
每一较高优先权级确定节点给出一用来从二个代码中获得一代码Tij∈{Y.N.Q}的K算符,也就是,从较高有效位的判定节点的判定结果获得代码Ti∈{Y.N.Q}和从较低有效位的判定节点的判定结果获得代码Tj∈{Y.N.Q};并且这里代码Ti优于代码Tj,
当由一二位二进制数(X,1,X,0)所赋值的任何代码X将数值代码“Y”定义为{11},将数值代码“N”定义为{10},和将数值代码定义为{0*}(这里,“*”是“不留心”),由“+”算符表示“或”逻辑,由“·”算符表示“与”逻辑,和由“^”算符表示负逻辑时,
K算符给出:
YiKTj=Tij
(Ti,1,Ti,0)K(Tj,1,Tj,0)=(Tij,1,Tji,0)
=(Ti,1+Tj,1,Ti,1·Ti,0+^Ti.1·Tj.0)。
73、如权利要求72的算术和逻辑单元,其特征在于:
从第一数字至第n-1数字的每一判定节点具有
一用来获得数值Xai和数值Ybi的“异或”逻辑并且输出例如代码Ti,1的结果的“异或”逻辑装置和
一用来输出例如代码Ti,0的数值Ybi的连接装置;
第0数字的判定节点具有
一用来得到例如数值Xao的负辑^Xao和数值Ybo的“或非”逻辑的“或非”逻辑装置,
一用来得到数值Xao的负逻辑和数值Ybo的“与非”逻辑的“与非”逻辑装置,和
一选择装置,用来获得通过分别当输入到算术和逻辑单元的借位是“1”时选择“或非”逻辑装置的输出并当借位输入是“0”时选择“与非”逻辑装置的输出所得到的结果负逻辑并且输出例如代码To,0的结果而不输出代码To,1;
在不包括该伪程序节点的较高优先权级确定节点之中,每一个从最初由第0数字的判定节点输出的代码To,1不产生的较高优先权级确定节点具有
一“或”逻辑装置,用来获得代码Ti,1和代码Tj,1的“或”逻辑并且输出例如代码Tij,1的结果,和
一选择装置,用来分别当代码Ti,1是“1”时选择代码Ti,0,当代码Ti,1是“0”时选择代码Tj,0,并且输出例如代码Tij,0;
在不包括该伪程序节点的较高优先权级确定节点之中,从最初由第0数字的判定节点输出的代码To,1产生的较高优先权级确定节点具有
一选择装置,用来分别当代码Ti,1是“1”时选择代码Ti,1,当代码Ti,1是“0”时选择代码Tj,0,并且输出例如代码Tij,0的结果而不输出代码Tij,1;
第m列的第n-1行的较高优先权级确点节点的输出代码Tij,0被用作该算术和逻辑单元的借位输出并且当输出代码Tij,0是“1”时解释为“存在有一借位输出”和当输出代码Tij,0是“0”时解释为“不存在有借位输出”;
该算术和逻辑单元具有
第0数字的“异或”逻辑装置,用来获得数值Xao和数值Ybo的“异或”逻辑和
一差产生装置;和
该差产生装置具有
一第0行的“异或”逻辑装置,用来获得第0数字的“异或”逻辑装置的输出的“异或”逻辑并且借位输入到该算术和逻辑单元并且将其定义为第0数字的差的结果,
一第一行的“异或”逻辑装置,用来获得在第0数字的判定节点的输出代码To,0和第一数字的判定节点的输出代码T1,1的负逻辑之间的“异或”逻辑并且将其定义为第一数字的差的结果,
一第f行的借位产生装置,用来分别当第f数字(f=从2至n-1的偶数)判定节点的输出代码Tf,1是“1”时选择至该行的输入数值和当该输出代码Tf,1是0时选择第f-1行的较高优先权级确定节点的输出代码并且输出例如进位到第f+1数字的结果,
一第f行的“异或”逻辑装置,用来获得在第f数字的判定节点的输出代码Tf,1和第f-1行的较高优先权级确定节点的输出代码之间的“异或”逻辑并且将其定义为第f数字的差的结果,和
一第f+1行“异或”逻辑装置,用来获得在第f+1数字的判定节点的输出代码Tf+1,1和第f行的借位产生装置的输出之间的“异或”逻辑并将其定义为第f+1数字的差的结果。
74、如权利要求72的算术和逻辑单元,其特征在于:
从第一数字至第n-1数字的每一判定节点具有
一“异或”逻辑装置,用来获得数值Xai和数值Ybi的“异或”逻辑并且输出例如代码Ti,1的结果和
一连接装置,用来输出例如代码Ti,0的数值Ybi;
第o数字的判定节点具有
一“或非”逻辑装置,用来获得例如数值Xao的负逻辑^Xao和数值Ybo的“或非”逻辑,
一“与非”逻辑装置,用来获得例如数值Xao的负逻辑^Xao和数值Ybo的“与非”逻辑,和
一选择装置,用来获得通过分别当输出到该算术和逻辑单元借位是“1”时选择“或非”逻辑装置的输出而当该借位输入是“0”时选择“与非”逻辑装置的输出所得到的结果的负逻辑并且输出例如代码To,0的结果而不输出代码To,1;
从第k列的第一至第2k-1-1(k=2至m)奇数行的较高优先权级确定节点被定义为分别对从第一至第2k-1-1奇数行的较高优先权级确定节点的判定结果反转的伪程序节点并且将其传送;
在不包括该伪程序节点的第m-p列(p是由p=0至m-1所指明的一偶数)的较高优先权级确定节点中,每一从最初由第0数字的判定节点所输出的代码To,1不产生的较高优先权级确定节点具有
一“或非”逻辑装置,用来获得代码Ti,1的“或非”逻辑,并输出例如代码^Tij,1的结果和
一选择装置,用来获得通过分别当代码Ti,1是“1”时选择代码Ti,0而当代码Ti,1是“0”时选择代码Tj,1并且输出例如代码^Tij,0的结果;
在不包括该伪程序节点的第m-q列(q是一由q=1至m-1所指明的奇数)的较高优先权级确定节点之中,每一从最初由第0数字的判定节点所输出的代码To,1不产生的较高优先权级确定节点具有
一“与非”逻辑装置,用来获得代码^Ti,1和代码^Tj,1的“与非”逻辑并且输出例如代码Tij,1的结果和
一第三选择装置,用来获得通过分别当代码^Ti,1是“0”时选择代码^Ti,0而当代码^Ti,1是“1”时选择代码^Tj,0并且输出例如代码Tij,0的结果;
在不包括该伪程序节点的第m-p列(p是由p=0至m-1所指明的一偶数)的较高优先权级节点之中,从最初由第0数字的判定节点输出的代码To,1中产生的较高优先权级确定节点具有
一第二选择装置,用来获得通过分别当代码Ti,1是“1”时选择代码Ti,0而当代码Ti,1是“0”时选择代码Tj,0所得到结果的负逻辑并且输出例如代码^Tij,0的结果而不输出代码Tij,1;
在不包括该伪程序节点的第m-q列(q是由q=1至m-1所指明的一奇数)的较高优先权级确定节点之中,人最初由第0数字的判定节点输出的代码To,1中产生的较高优先权级确定节点具有
一第三选择装置,用来获得通过分别当代码^Ti,1是“0”时选择代码^Ti,0而当代码^Ti,1是“1”时选择代码^Tj,0并且输出例如代码Tij,0的结果而不输出代码Tij,1;
当m是偶数时,第m列的第n-1行的较高优先权级确定节点的输出代码Tij,0被用作该算术和逻辑单元的借位输出并且分别当输出代码Tij,0是“1”时解释为“存在有一借位输出”而当输出代码Tij,0是“0”时解释为“不存在借位输出”;和
当m是一奇数时,第m列的第n-1行的较高优先权级确定节点的输出代码^Tij,0被用作该算术和逻辑单元的借位输出并且分别当输出代码^Tij,0是“0”是被解释为“存在有一借位输出”而当输出代码^Tij,0是“1”时解释为“不存在有借位输出”;
该算术和逻辑单元具有
一第0数字的“异或”逻辑装置,用来获得数值Xao和数值Ybo的“异或”逻辑和
一差产生装置;
该差产生装置具有,当m是一偶数时,
一第0行的“异或”逻辑装置,用来获得第0数字的“异或”逻辑装置的输出的“异或”逻辑并借位输入到该算术和逻辑单元并将其定义为第0数字的差的结果,
一第一行的“异或”逻辑装置,用来获得在第0数字的判定节点的输出代码To,0和第一数字的判定节点的输出代码T1,1之间的“异或”逻辑并且将其定义为第一数字的差的结果,
一第f行的借位产生装置,用来分别当第f数字(f=从2至n-1的偶数)的判定节点的输出代码Tf,1是“1”时选择至该行的输出数值Vbf而当该输出代码Tf,1是“0”时选择第f-1行的较高优先权级确定节点的输出代码并且输出例如一到f+1数字的借位的结果,
一第f行的“异或”逻辑装置,用来获得在第f数字的判定节点的输出代码Tf,1和第f-1行的较高优先权级确定节点的输出代码之间的“异或”逻辑并且将其定义为第f数字的差的结果,和
一第f+1行的“异或”逻辑装置,用来获得在第f+1数字的判定节点的输出代码Tf+1,1和第f行的借位产生装置的输出之间的“异或”逻辑并且将其定义为第f+1数字的差的结果,和
当m是一奇数时,
一第0行的“异或”逻辑装置,用来获得第0数字的“异或”逻辑装置的输出的“异或”逻辑并且借位输入到该算术和逻辑单元,并且将其定义为第0数字的差的结果,
一第一行的“异或”逻辑装置,用来获得在第0数字的判定节点的输出代码和第一数字的判定节点的输出代码T1,1之间的“异或”逻辑并将其定义为第一数字的差的结果,
一第f行的借位产生装置,用来分别选择当第f数字(f=从2至n-1的偶数)的判定节点的输出代码Tf,1是“1”时选择至该行的输入数值Ybf而当输出代码Tf,1是“0”时选择第f-1行的较高优先权级确定节点的输出代码的负逻辑并且输出例如借位到f+1数字的结果,
一第f行的“异或”逻辑装置,用来获得在第f数字的判定节点的输出代码和第f-1行的较高优先权级确定节点的输出代码的负逻辑之间的“异或”逻辑并且将其定义为第f数字的差的结果,和
一第f+1行的“异或”逻辑装置,用来获得在第f+1数字的判定节点的输出代码Tf+1,1和第f行的借位产生装置的输出之间的“异或”逻辑并且将其定义为第f+1数字的差的结果。
75、一种用来查寻二个n位二进制数(Xa,Yb)的差绝对值的算术和逻辑单元,具有
一判定节点,该判定节点根据二个数的数值Xai和Ybi(i=0至n-1)当相同数字处的二个数的差(Xai-Ybi)的结果变为负时输出意指“真”的数值代码“Y”,当该结果变为正时输出意指“假”的数值代码“N”,和当该结果变为0时输出意指“即不是真也不是假或不知道”的数值代码“Q”作为判定结果和具有
具有相应于二个数的数字的行的由n行和m列(m是超过log2n的最小整数)所组成的一较高优先权级确定节点的矩阵和
一借位产生单元,用来在该差的绝对值操作中产生一数字的借位;
第一列的较高优先权级确定节点组具有
一作为一伪程序节点的第0行的较高优先权级确定节点,用来传送第0数字的判定节点的判定结果和
一第h1行的较高优先权级确定节点,接收第h1-1数字的判定结果和第h1数字(h1=1至n-1)数字的判定节点的判定结果作为它的输入,当第h1数字的判定节点的判定结果是“真”或“假”时输出第h1数字的判定节点的判定结果作为其结果,和当第h1数字的判定节点的判定结果是“即不是真也不是假或不知道”时输出第h1-1数字的判定节点的判定结果作为其结果;
第k列(k-2至m)的较高优先权级确定节点组具有
作为该伪程序节点的第0行至第2k-1行的较高优先权级确定节点,用来分别优送第0行至第2k-1-1行的较高优先权级的判定结果和
一第hk行的较高优先权级确定节点,接收第hk-2k-1的较高优先权级确定节点的判定结果和第hk行(hk=2k-1至n-1)的较高优先权级确定节点的判定结果作为它的输入,当第hk行的较高优先权级确定结点的判定结果是“真”或“假”时输出第hk行的较高优先权级的判定结果,和当第hk行的较高优先权级确定节点的判定结果是“即不是真也不是假或不知道”时输出第hk-2k-1行的较高优先权级确定节点的判定结果;
该借位产生单元具有
一代码判断装置,用来根据从第n-1行和第m列的较高优先权级确定节点所产生的第n-1数字的借位产生结果来判断用于二个数的差(Xa-Yb)的结果的代码,
第0行至第n-2行的代码置换装置,对于在其中作为该代码判断装置的代码判断结果的代码分别是负或负或0的第m列的较高优先权级确定节点组中不包括第n-1行的较高优先权级确定节点的第0行至第n-2行的较高优先权级确定节点的输出代码分别用数值代码“Q”来置换数值代码“Q”,用数值代码“N”来置换数值代码“Y”,和用数值代码“Y”来置换数值代码“N”,并且当它们是正或0或正的结果时不执行该置换和保留它们,和
一第0行至第n-2行的第二代码置换装置,用来对于第0行至第n-2行的代码置换装置的输出用数值代码“N”来置换数据代码“Q”以得到每一数字的借位;和
n个判定节点,若干列的较高优先权级确定节点,和第0行至第n-2行的代码置换装置和第二代码置换装置分别同时被处理。
76、如权利要求75的算术和逻辑单元,其特征在于:
每一较高优先权级确定节点给出用来从二个代码获得代码Tij∈{Y.N.Q}的K算符,即,从较高有效位的判定节点的判定结果获得代码Ti∈{Y.N.Q}和从较低有效位的判定节点的判定结果获得的代码Tj∈{Y.N.Q};和
K算符将数值代码“Y”或数值代码“N”定义为由代码Tij所得到的数值代码,这里代码Ti是数值代码“Y”或数值代码“N”,并且将由代码Tj得到的数值代码定义为由代码Tij得到的数值代码,这里代码Ti是数值代码“Q”。
77、如权利要求75的算术和逻辑单元,其特征在于:
每一较高优先权级确定节点给出用来从二个代码获得代码Tij∈{Y.N.Q}的K算符,也就是,从较高有效位的判定节点的判定结果获得的代码Ti∈{Y.N.Q}和从较低有效位的判定节点的判定结果获得的代码Tj∈{Y.N.Q},和其中代码Ti优于代码Tj,
当由一二位二进制数(X,1,X,0)所赋值的任何代码X定义数值代码“Y”为{11},定义数值代码“N”为{10},和定义数值代码为{0*}(这里,“*”是“不留心”),由“+”算符表示“或”逻辑,由“·”算符表示“与”逻辑,和由“^”算符表示负逻辑时,
K算符给出:
YiKTj=Tij
(Ti,1,Ti,0)K(Tj,1,Tj,0)=(Tij,1,Tji,0)
=(Ti,1+Tj,1,Ti,1·Ti,0+^Ti.1·Tj.0)。
78、如权利要求77的算术和逻辑单元,其特征在于:
每一判定节点具有
一“异或”逻辑装置,用来获得数值Xai和数值Ybi的“异或”逻辑并且输出例如代码Ti,1的结果和
一连接装置,用来输出例如代码Ti,0的数值Ybi;
每一不包括该伪程序节点的较高优先权级确定节点具有
一“或”逻辑装置,用来获得代码Ti,1和代码Tj,1的“或”逻辑并且输出例如代码Tij,1的结果和
一选择装置,用来分别当代码Ti,1是“1”时选择代码Ti,0而当代码Ti,1是“0”时选择代码Tj,0并且输出例如代码Tij,0的结果;
一代码判断装置,输出一代码判断信号,当自第n-1行和第m列的较高优先权级确定节的输出代码Tij是数值代码“Y”时输出代码判断信号变为“真”,当它是数值代码“Q”或“N”时为“假”,或当输出代码Tij是数值代码“Y”或“Q”时为“真”,和当它是数值代码“N”时为“假”;
第0行至第n-2行的代码置换装置具有用来分别得到来自代码判断装置的代码判断信号和来自第0行至第n-2行的较高优先权级确定节点的输出代码Tij,0之间的“异或”逻辑的“异或”逻辑装置;
第0行至第n-2行的第二代码置换装置具有用来分别获得第0行至第n-2行的代码置换装置的输出和第0行至第n-2行的较高优先权级确定节点的输出代码之间的“与”逻辑的“与”逻辑装置;和
该算术和逻辑单元具有
一差产生装置,提供有用来将第0数字的判定节点的输出代码Ti,1定义为该差的绝对值的结果的一连接装置和用来获得在第一数字至第n-1数字的判定节点的第一输出和第0行至第n-2行的第二节点置换装置的每一输出之间的“异或”逻辑并且将其定义为第一数字至第n-1数字的差的绝对值的结果的“异或”逻辑装置。
79、如权利要求75的算术和逻辑单元,其特征在于:
当该算术和逻辑单元查寻用来得到二个代码方向n位二进制数(Xa,Yb)的一差的绝对值的操作时,
该判定节点执行对于分别处理例如数值Ybn-1的数值Xan-1和处理例如数值Xan-1的数值Ybn-1的二个数的MSB(最小有效位)的比较判定。
Applications Claiming Priority (8)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP34225296 | 1996-12-20 | ||
JP342252/96 | 1996-12-20 | ||
JP342253/96 | 1996-12-20 | ||
JP342251/96 | 1996-12-20 | ||
JP34225196 | 1996-12-20 | ||
JP34225396 | 1996-12-20 | ||
JP07836297A JP3728858B2 (ja) | 1996-12-20 | 1997-03-28 | 演算装置の演算方法、記憶媒体及び演算装置 |
JP78362/97 | 1997-03-28 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1202651A CN1202651A (zh) | 1998-12-23 |
CN1095114C true CN1095114C (zh) | 2002-11-27 |
Family
ID=27466164
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN97129790A Expired - Fee Related CN1095114C (zh) | 1996-12-20 | 1997-12-20 | 算术机逻辑单元的运算方法以及算术和逻辑单元 |
Country Status (7)
Country | Link |
---|---|
US (1) | US6028987A (zh) |
EP (1) | EP0853274A3 (zh) |
JP (1) | JP3728858B2 (zh) |
KR (1) | KR100500855B1 (zh) |
CN (1) | CN1095114C (zh) |
MY (1) | MY141466A (zh) |
SG (1) | SG85091A1 (zh) |
Families Citing this family (35)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4029959B2 (ja) * | 2001-08-31 | 2008-01-09 | シャープ株式会社 | 演算器アロケーション設計装置および演算器アロケーション設計方法 |
US7558947B1 (en) * | 2001-12-31 | 2009-07-07 | Apple Inc. | Method and apparatus for computing vector absolute differences |
JP2003245843A (ja) * | 2002-02-21 | 2003-09-02 | Hitachi Via Mechanics Ltd | 加工装置および加工方法 |
US20050114415A1 (en) * | 2003-11-24 | 2005-05-26 | Texas Instruments Incorporated | Low-latency circular priority selector |
US8037102B2 (en) | 2004-02-09 | 2011-10-11 | Robert T. and Virginia T. Jenkins | Manipulating sets of hierarchical data |
US9646107B2 (en) | 2004-05-28 | 2017-05-09 | Robert T. and Virginia T. Jenkins as Trustee of the Jenkins Family Trust | Method and/or system for simplifying tree expressions such as for query reduction |
US7620632B2 (en) | 2004-06-30 | 2009-11-17 | Skyler Technology, Inc. | Method and/or system for performing tree matching |
US7801923B2 (en) | 2004-10-29 | 2010-09-21 | Robert T. and Virginia T. Jenkins as Trustees of the Jenkins Family Trust | Method and/or system for tagging trees |
US7627591B2 (en) | 2004-10-29 | 2009-12-01 | Skyler Technology, Inc. | Method and/or system for manipulating tree expressions |
US7630995B2 (en) | 2004-11-30 | 2009-12-08 | Skyler Technology, Inc. | Method and/or system for transmitting and/or receiving data |
US7636727B2 (en) | 2004-12-06 | 2009-12-22 | Skyler Technology, Inc. | Enumeration of trees from finite number of nodes |
JP2008522528A (ja) * | 2004-12-02 | 2008-06-26 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | データ・ブロック冗長バージョン復号用ステーク継承ターボ復号器 |
US8316059B1 (en) | 2004-12-30 | 2012-11-20 | Robert T. and Virginia T. Jenkins | Enumeration of rooted partial subtrees |
US8615530B1 (en) | 2005-01-31 | 2013-12-24 | Robert T. and Virginia T. Jenkins as Trustees for the Jenkins Family Trust | Method and/or system for tree transformation |
ES2687433T3 (es) | 2005-02-03 | 2018-10-25 | Mitsubishi Denki Kabushiki Kaisha | Dispositivo y método de soporte de la generación de código de programa, dispositivo y método de ejecución del programa, dispositivo y método de compresión del código de programa, programa para el mismo |
US8448158B2 (en) * | 2005-02-03 | 2013-05-21 | Mitsubishi Electric Corporation | Program code generation support device and method, program execution device and method, and program code compression processing device and method and program thereof |
US7681177B2 (en) | 2005-02-28 | 2010-03-16 | Skyler Technology, Inc. | Method and/or system for transforming between trees and strings |
US8356040B2 (en) | 2005-03-31 | 2013-01-15 | Robert T. and Virginia T. Jenkins | Method and/or system for transforming between trees and arrays |
US7899821B1 (en) | 2005-04-29 | 2011-03-01 | Karl Schiffmann | Manipulation and/or analysis of hierarchical data |
US7716250B1 (en) * | 2005-05-27 | 2010-05-11 | Microsoft Corporation | Erasure coding and group computations using rooted binary and ternary trees |
US8250226B2 (en) * | 2005-07-21 | 2012-08-21 | Ca, Inc. | Generating one or more clients for generating one or more synthetic transactions with one or more web service operations |
US8370115B2 (en) * | 2007-05-15 | 2013-02-05 | Broadcom Corporation | Systems and methods of improved boolean forms |
US7996798B2 (en) * | 2007-05-24 | 2011-08-09 | Microsoft Corporation | Representing binary code as a circuit |
US8996846B2 (en) | 2007-09-27 | 2015-03-31 | Nvidia Corporation | System, method and computer program product for performing a scan operation |
US8661226B2 (en) * | 2007-11-15 | 2014-02-25 | Nvidia Corporation | System, method, and computer program product for performing a scan operation on a sequence of single-bit values using a parallel processor architecture |
CN101692200B (zh) * | 2008-03-11 | 2018-02-02 | 魏营隆 | 数字绳码编码解码及加减乘除倒数算术电路设计的方法 |
JP4842989B2 (ja) * | 2008-03-28 | 2011-12-21 | 株式会社アドバンテスト | プライオリティエンコーダならびにそれを利用した時間デジタル変換器、試験装置 |
US8190546B2 (en) * | 2009-05-15 | 2012-05-29 | At&T Intellectual Property I, L.P. | Dependency between sources in truth discovery |
KR101753162B1 (ko) * | 2011-02-08 | 2017-07-04 | 삼성전자주식회사 | 이진수 연산의 선행 제로 비트수 계산방법 및, 그 장치 |
CN102185933A (zh) * | 2011-04-02 | 2011-09-14 | 浪潮电子信息产业股份有限公司 | 一种8位4线设定256地址的方法 |
US8832144B2 (en) * | 2011-07-11 | 2014-09-09 | International Business Machines Corporation | Search optimization in a computing environment |
US9280575B2 (en) * | 2012-07-20 | 2016-03-08 | Sap Se | Indexing hierarchical data |
US20150373071A1 (en) * | 2014-06-19 | 2015-12-24 | International Business Machines Corporation | On-demand helper operator for a streaming application |
US10333696B2 (en) | 2015-01-12 | 2019-06-25 | X-Prime, Inc. | Systems and methods for implementing an efficient, scalable homomorphic transformation of encrypted data with minimal data expansion and improved processing efficiency |
CN105024806A (zh) * | 2015-08-14 | 2015-11-04 | 安徽师范大学 | 一种基于可逆逻辑门的加密系统的模逆电路 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5077677A (en) * | 1989-06-12 | 1991-12-31 | Westinghouse Electric Corp. | Probabilistic inference gate |
EP0543517A2 (en) * | 1991-11-19 | 1993-05-26 | Texas Instruments Incorporated | A circuit detecting the position of an extreme "1" bit in a binary number |
US5247627A (en) * | 1987-06-05 | 1993-09-21 | Mitsubishi Denki Kabushiki Kaisha | Digital signal processor with conditional branch decision unit and storage of conditional branch decision results |
US5434972A (en) * | 1991-01-11 | 1995-07-18 | Gec-Marconi Limited | Network for determining route through nodes by directing searching path signal arriving at one port of node to another port receiving free path signal |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5043934A (en) * | 1990-02-13 | 1991-08-27 | Hewlett-Packard Company | Lookahead adder with universal logic gates |
EP0473412A1 (en) * | 1990-08-31 | 1992-03-04 | Matsushita Electric Industrial Co., Ltd. | Digital signal recording method |
US5263124A (en) * | 1991-02-27 | 1993-11-16 | Neural Systems Corporation | Method for producing a binary tree, pattern recognition and binary vector classification method using binary trees, and system for classifying binary vectors |
JPH0855010A (ja) * | 1994-06-07 | 1996-02-27 | Matsushita Electric Ind Co Ltd | プライオリティ・エンコーダ |
-
1997
- 1997-03-28 JP JP07836297A patent/JP3728858B2/ja not_active Expired - Fee Related
- 1997-12-18 US US08/992,847 patent/US6028987A/en not_active Expired - Fee Related
- 1997-12-19 EP EP97403097A patent/EP0853274A3/en not_active Withdrawn
- 1997-12-19 KR KR1019970070927A patent/KR100500855B1/ko not_active IP Right Cessation
- 1997-12-19 MY MYPI97006202A patent/MY141466A/en unknown
- 1997-12-19 SG SG9704562A patent/SG85091A1/en unknown
- 1997-12-20 CN CN97129790A patent/CN1095114C/zh not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5247627A (en) * | 1987-06-05 | 1993-09-21 | Mitsubishi Denki Kabushiki Kaisha | Digital signal processor with conditional branch decision unit and storage of conditional branch decision results |
US5077677A (en) * | 1989-06-12 | 1991-12-31 | Westinghouse Electric Corp. | Probabilistic inference gate |
US5434972A (en) * | 1991-01-11 | 1995-07-18 | Gec-Marconi Limited | Network for determining route through nodes by directing searching path signal arriving at one port of node to another port receiving free path signal |
EP0543517A2 (en) * | 1991-11-19 | 1993-05-26 | Texas Instruments Incorporated | A circuit detecting the position of an extreme "1" bit in a binary number |
Also Published As
Publication number | Publication date |
---|---|
KR19980064395A (ko) | 1998-10-07 |
CN1202651A (zh) | 1998-12-23 |
KR100500855B1 (ko) | 2005-12-09 |
EP0853274A3 (en) | 1999-11-10 |
MY141466A (en) | 2010-04-30 |
JP3728858B2 (ja) | 2005-12-21 |
SG85091A1 (en) | 2001-12-19 |
JPH10232765A (ja) | 1998-09-02 |
US6028987A (en) | 2000-02-22 |
EP0853274A2 (en) | 1998-07-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1095114C (zh) | 算术机逻辑单元的运算方法以及算术和逻辑单元 | |
CN1027198C (zh) | 计算装置 | |
CN1129066C (zh) | 处理器及其运算方法以及数据处理器 | |
CN1149496C (zh) | 自适应视频信号运算处理装置 | |
CN1186714C (zh) | 高基除法器及方法 | |
CN1153349C (zh) | 多值逻辑电路体系结构:补充对称逻辑电路结构 | |
CN86107558A (zh) | 具有带式随机存取存储器和地址发生器装置的单指令多数据单元阵列处理机 | |
CN1265280C (zh) | 扩展整数的计算域的范围 | |
CN1080906C (zh) | 一种数据处理系统及其方法 | |
CN1520565A (zh) | 布线方法和装置 | |
CN86108178A (zh) | 使用动态可重构向量位片的单指令多数据单元阵列处理机 | |
CN1890630A (zh) | 在寄存器和存储器之间移动数据的数据处理设备和方法 | |
CN1319210A (zh) | 可配置的硬件块的配置方法 | |
CN1478234A (zh) | 用于有效地执行线性变换的方法和装置 | |
CN1125990A (zh) | 软件自动分析的方法与装置 | |
CN101076798A (zh) | 字符串对照装置及字符串对照程序 | |
CN1509475A (zh) | 存储单元电路、存储设备、运动矢量检测器、和运动补偿预测编码器 | |
CN1804829A (zh) | 一种中文问题的语义分类方法 | |
CN1106941A (zh) | 逻辑电路的自动设计方法、系统、装置和乘法器 | |
CN1694049A (zh) | 一种基于五键的汉字输入系统 | |
CN1993673A (zh) | 数据处理装置、数据处理程序及记录了数据处理程序的记录介质 | |
CN1103467C (zh) | 宏指令集对称式并行体系结构微处理器 | |
CN1272910C (zh) | 半导体集成电路 | |
CN1223934C (zh) | 处理超长指令控制体系的方法 | |
CN1742270A (zh) | 运算处理装置、运算处理装置设计方法以及逻辑电路设计方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C19 | Lapse of patent right due to non-payment of the annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |