一种具有一个输入端和一个输出端的求幂电路,所述求幂电路根据在输入端上接收到的一个输入信号在输出端上产生一个指数信号,所述求幂电路包括: 一个对数变换器,用来对输入信号进行对数变换以产生一个多位的二进制对数值; 一个移位装置,用来接收二进制对数值及将二进制对数值各位移位n位,从而产生一个作为它的输出的中间值,其中n为一个整数; 一个合并装置,用来对中间值和一个存储值进行算术合并以产生一个合并值;以及 一个反对数变换器,用来对合并值进行反对数变换以产生指数信号,所述反对数变换器在所述求幂电路的输出端上产生指数信号。(*该技术在2016年保护过期,可自由使用*)
【技术实现步骤摘要】
本专利技术与下列转让给本专利技术的同一受让人的专利技术有关(1)“利用对数函数的神经网络及其使用方法”,系列号08/176,601,1994年1月3日提出申请。(2)“利用二阶项的对数/反对数变换器及其使用方法”,系列号08/382,467,1995年1月31日提出申请。(3)“利用对数变换的计算机处理器及其使用方法”,系列号08/403,158,1995年3月13日提出申请。上列标明的相关专利技术的内容此处列为本专利技术的参考。本专利技术一般涉及电子电路
,具体地说,涉及根据输入信号产生指数信号的电路。在数字计算机中计算指数值xg很快就成为一个共同性的问题。许多计算机应用程序,例如非线性控制、数字信号处理、仿真、加密等,都要使用指数值。然而,一些计算指数值的常规技术存在着某些缺点。计算指数值通常所采用的方法是配置一个二进制乘法器电路,作为计算机的部件。实际上,目前许多微处理器在其核心逻辑电路中都有一个或几个乘法器。通常,乘法器每次能将两个操作数相乘。为了计算指数值xg,输入值x要加到乘法器的两个输入端。从而乘法器产生一个其值为x2的输出。如果希望得到高阶的指数值,例如xg,就需将乘法器的输出反馈到乘法器的一个或两个输入端,这种相乘-反馈循环反复执行直到计算出所要求的指数值为止。这种方法有几个缺点。首先,常规的二进制乘法器电路在集成电路中要占用比较大的空间。而且,这些电路的速度通常不快,在有些情况下完成单次乘法需要很多个时钟周期,与其他算术运算电路(如加法器)相比,通常功耗也大得多。这种方法的另一个局限是,为了计算其幂数大于2的指数值,需要多个乘法周期。例如,计算指数值x16,用单个乘法电路就至少需要4个乘法周期。因此,象这样的计算会大大降低计算机的吞吐量。另一种计算指数值的已知技术是利用一个根据模拟输入值确定指数值的模拟电路。通常得出的指数值也是模拟信号,因此必需用一个模数变换器变换成二进制字后再供计算机使用。虽然模拟求幂电路计算一个指数值所需的时间通常要少于上述二进制字循环相乘技术所需的时间,但是模拟求幂电路一般较贵,也不容易与数字计算机集成在一起。因此,问题是需要开发一种用来计算指数值的器件,这种器件与上述这些常规技术相比计算指数值的时间大大减少,占用集成电路较小的空间和功率,而且可以更为经济地与数字计算机集成在一起。本专利技术的实质和范围在所附权利要求书中具体列出。然而,通过以下结合附图所作的详细说明,可更加清楚地看到本专利技术的其他一些特点,对本专利技术也可有更深入的理解。在这些附图中附图说明图1示出了作为本专利技术一个实施例的求幂电路的方框图;图2示出了作为本专利技术另一个实施例的求幂电路的方框图;图3为一个示出能用于图2所示求幂电路的一些指数码实例的表;图4为另一个示出能用于图2所示求幂电路的一些指数码实例的第2个表;图5示出了作为本专利技术又一个实施例的求幂电路的方框图;图6示出了作为本专利技术一个优选实施例的求幂电路的方框图;图7为一个示出能用于图6所示求幂电路的一些指数码实例的表;图8示出了具有多个运算组件的求幂电路的方框图;图9示出了具有一个遵从本专利技术实施例的求幂电路的计算机系统的方框图;图10示出了根据输入信号产生指数信号的方法的流程图;以及图11示出了产生一个包括根据一系列输入产生的多个指数信号的项的方法的流程图。本专利技术的一个优点是提供一种具有高数据吞吐率的求幂电路。本专利技术的另一个优点是提供一种占用集成电路的小得多的空间和功率的求幂电路。本专利技术的又一个优点是提供一种成本低廉且容易与微处理器内核或其他数字逻辑电路集成在同一个芯片上的求幂电路。概括地说,本专利技术提供了根据输入信号计算出指数信号的电路。这是通过首先用一个对数变换器根据输入信号产生相应的二进制对数值来进行的。然后,移位寄存器将这二进制对数值移位以产生一个中间值。移位操作相当于将二进制对数值乘以一个为2的幂的因子。再将这中间值与一个所存储的值合并在一起后加以反对数变换,从而产生所要求的指数信号。图1示出了作为本专利技术一个实施例的求幂电路40的方框图。求幂电路40包括对数电路4、运算组件9和反对数电路34。运算组件9包括移位寄存器8、p/I单元12、加法电路24、寄存器28和控制单元16。对数电路4接收加在它的输入端2上的输入信号,将每个输入信号变换成一个多位的二进制对数值6。接收到一个二进制对数值6后,移位寄存器8就对这个输入进行算术移位以产生一个中间值10。移位的位数由控制单元16所产生的移位信号18确定。接收到中间值10后,P/I单元12或者直接将中间值10送至总线14,或者将中间值10倒相后的倒相值送至总线14,P/I单元12的功能由控制单元16所提供的控制信号20确定。加法电路24将通过反馈通路30接收的一个存储值、总线14上提供的值、进位位22相加以产生一个合并值,加到输出端26。合并值存入寄存器28。寄存器28将合并值加到总线32上,送至反对数电路34,以及作为存储值加到反馈通路30上。反对数电路34通过对合并值求反对数得出指数信号,加到输出端36。对数电路4可以是任何一种能将输入信号变换为一个表示输入信号的对数的二进制值的装置。例如,对数电路4可以由一个具有一个其传递函数呈对数的放大器的模拟电路和一个将这个放大器的输出变换为一个二进制字的模数变换器组成。在这个例子中,输入信号可以是能在放大器的动态范围内连续改变的电流或电压。然而,在一个实施例中,对数电路4包括一个如在前面标明的相关专利技术(2)中所公开的对数变换器。这种对数变换器接收以IEEE标准的32位浮点值表示的输入信号,通过执行二阶多项式运算产生具有一个8位的整数部和一个23位的分数部的二进制对数值。每个输入信号的符号位直接通过(未示出),送至反对数电路34,重新与相应的,也表示成一个IEEE标准的32位浮点值的指数信号合在一起。反对数电路34也可以是任何一种能将作为输入量的一个二进制字变换成这个二进制字的反对数作为输出的装置。然而,在一个优选实施例中,反对数电路34包括一个如在前面标明的相关专利技术(2)中所公开的反对数变换器。这种反对数变换器接收合并值的分数部和整数部,从而产生以IEEE标准的32位浮点值表示的指数信号。这种反对数变换器包括一个将一个浮点指数信号与它的符号位重新合在一起的装置(未示出)。在一个优选实施例中,对数电路4、运算组件9和反对数电路34都是在单个集成电路上实现的。然而,一般熟悉本
的人员可以理解,无论是对数电路4还是反对数电路34都可以用其他许多方式来实现,而并不偏离本专利技术的实质。例如,任何电路都可以由在诸如微处理器之类的通用处理器上运行的软件来实现,也可以由标准的模拟电路来实现。此外,熟悉本
的人员可以理解,可以采用任何一种数制来执行对数和反对数变换。移位寄存器8用来对所接收的值进行逐位移位。移位操作相当于将二进制对数值6乘以或除以一个等于2的幂的因子。移位结果是中间值10。虽然本专利技术的一个实施例并没有对一个值可以移位的位数加任何限制,但后一个优选实施例规定移位寄存器8可以将一个二进制对数值移0至3位。每个二进制对数值6移位的位数由控制单元16所提供的移位信号18确定。通过将二进制对数值6的各位朝值的最高有效位(MSB)方向移位(通常是左移本文档来自技高网...
【技术保护点】
【技术特征摘要】
【专利技术属性】
技术研发人员:约翰·米切尔·布什,詹姆斯·德沃金,斯考特·埃德沃德·洛德,潘绍伟,史蒂芬·L·史密斯,沙平·托马斯·王,
申请(专利权)人:约翰·米切尔·布什,詹姆斯·德沃金,斯考特·埃德沃德·洛德,潘绍伟,史蒂芬·L·史密斯,沙平·托马斯·王,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。