当前位置: 首页 > 专利查询>ARM有限公司专利>正文

实现高效除法性能的装置和方法制造方法及图纸

技术编号:12857754 阅读:52 留言:0更新日期:2016-02-12 15:07
本发明专利技术公开了实现高效除法性能的装置和方法。提供了一种数据处理装置和操作此类数据处理装置的方法,以响应除法指令执行除法操作,以产生除法指令指定的输入分子除以除法指令指定的输入分母的结果值。输入分母和输入分子是二进制值。该装置包括除法电路,被配置为实施除法操作以产生结果值;二的幂次方检测电路,被配置为当输入分母具有±2N给定的值时发出旁路条件信号,其中N是正整数;以及旁路电路,被配置为响应旁路条件信号使得除法电路被旁路并且使得所述结果值被产生为输入分子被移动了N位。

【技术实现步骤摘要】

本专利技术涉及数据处理系统领域。特别地,本专利技术涉及一种被配置为响应除法命令来执行除法操作的数据处理系统。
技术介绍
已知提供了响应除法指令来执行除法操作的数据处理系统。这种数据处理系统被配置为对指定分子和分母的除法指令进行响应,并执行除法操作以产生分子除以分母的结果。这种数据处理系统通常具有被配置为执行除法的专用除法电路。例如,可以提供被配置为响应整数除法指令来执行整数除法的专用整数除法电路。
技术实现思路
从第一方面来看,本专利技术提供一种用于数据处理的装置,该装置被配置为响应除法指令以执行除法操,其中,除法操作被设置为通过将除法指令指定的输入分子除以除法指令制定的输入分母来产生结果值,其中输入分子和输入分母是二进制值,该装置包括:除法电路,被配置为通过执行除法操作来产生结果值;及二的幂次方检测电路,被配置为当输入分母是±2%合定的值时发出旁路条件信号,其中N是整数;及旁路电路,被配置为响应旁路条件信号,使得除法电路被旁路并且使得所述结果值被产生为输入分子被移动N位。本技术认识到数据处理系统执行的除法操作是相对高成本的操作(例如从时间和能源开支来讲)。此外,本技术认识到在分母是二的幂次方的情况下可以避免运行专用除法电路的开销,因为在这种情况下,可以通过把分子移动N位位置来快速返回除法结果,其中分子可被表示成±2\这种移动通常(尽管不总是,见下文)是分子的右移。因此,在分子确实是二的幂次方的情况下,可以通过旁路除法电路(例如,通过向除法电路发出信号使其响应除法指令停止进一步活动),并且输出上文所述的通过对输入分子进行移位产生的结果值来避免运行除法电路的开销。二的幂次方检测电路可以有多种配置方式,但在一些实施例中,二的幂次方检测电路包括异位检测电路,异位检测电路被配置为当输入分子只有一个位被设置而所有其它位未被设置时,异位发出旁路条件信号。因为输入分子和输入分母是二进制值,只有一个位被设置表示输入分母是2的幂次方(至少对于无符号的二进制值或正符号的二进制值)的事实(例如输入分母可表示为2N,其中被设置的一位是输入分母的第Nth位,输入分母的位从最低有效位起从0开始编号)。应该注意的是位的“设置”通常是给这位值1的动作,尽管也应该认识到用值1代表“设置”位的选择是任意的,且可以被“0”替代。根据普通约定,尽管本专利技术用具有值1的设置位进行说明,但本技术并不限制于一种表示或其他表示。在一些实施例中,旁路电路被配置为使得结果值被生成为输入分子被移动输入分母中设置的所述一位后的未设置位的位数。因此,输入分子被移动以产生结果值的位位置数可以从异位检测电路发现设置的位之后(在较低有效位位置处)的未设置位的数量来确定异位。在数据处理装置中可以有这样的情况,该装置包括还提供了前导零确定电路的除法电路,因为就除法电路而言,两个操作数(分子和分母)的前导零计数可以有不同方式使用。例如,除法电路被配置为通过操作数各自的前导零计数把操作数都左移,从而对齐它们各自的最高有效设置位。该数据处理装置也可被配置为确定两个前导零计数之间的差,等等。因此,在一些实施例中包括被配置为确定输入分母的前导零计数的前导零确定电路,二的幂次方检测电路被配置为通过对输入分母的前导零计数的二进制表示取反来从输入分母的前导零计数确定N。这可以通过举例进行很好的说明,如果分母是二进制00010000,前导零计数是3,即011。对前导零计数的二进制表示取反产生二进制100,即4。所以N是第四位,从最低有效位起从零开始对分母位数编号。于是,可以利用已有的前导零确定电路来判定N。应该注意的是,这种方法只适用于2A位的二进制值,其中A是整数,例如,8位、16位和32位的二进制值。还应该注意的是,为了使这种方法运作,前导零计数的二进制表示应该是A位值。也就是说,在上述示例中,分母是8位值,所以A = 3(23= 8)。因此前导零计数的二进制表示也应该是3位值(A = 3)。然而,在不提供前导零确定电路的实施例中,拖尾零计数能够更好的更直接的确定N,因此一些实施例包括拖尾零确定电路,拖尾零确定电路被配置为确定输入分母的拖尾零计数,其中二的幂次方检测电路被配置为将N确定为输入分母的拖尾零计数。异位检测电路可以有多种配置方式,但在一些实施例中,异位检测电路包括多个二进制门树,每个二进制门树都包括多个层级,其中每个二进制树的一个层级包括X0R门,而二进制树的所有其他层级包括0R门,且多个二进制树的每个二进制树与多个二进制树的其它二进制树不同的层级具有其X0R门,并且多个二进制树的输出的AND组合指示旁路条件。因而这种X0R门和0R门(此处应该理解为对应于它们的逻辑功能,因此可以通过分别提供X0R和0R门功能的任意逻辑门组合实施)的排列能够实现判定输入分母是否只包括一个设置位,借助这个事实,每个二进制树被配置为指示是否在输入分母的各自不同粒度的层级内找到异位,例如,是否发现某位与其邻近位置相异,是否断言的一对位中的一个或多个位具有未被设置的一对邻近位,是否含有至少一个设置位的四个位的集合与四个未设置位的集合邻近等等。因此组合这些条件(例如通过最终AND门)可允许判定是否在整个输入分母中只有一个位被相异地设置。在一些实施例中,异位检测电路包括逻辑门网络,该逻辑门网络被配置为把输入分母作为测试值,以及:A)判定在测试值的第一半位中是否没有位被设置,且在测试值的第二半位中是否至少有一个位被设置,当判定为真时:B)将测试值的第二半的位作为测试值并重复A)中的判定,知道测试值的第二半的位只有一位,并且如果这一位被设置,就发出旁路条件信号。因此,可以通过查看输入分母的每一半以判定这些一半中是否只有一个包含任意设置位来执行迭代过程,且含有设置位的一半接下来会被分成两半以在过程的下一个迭代中考虑。一旦认为只有单个位时,可以最终判定输入分母是否只包含一个被设置的位。输入分子和输入分母可以是无符号二进制值。在一些实施例中,输入分子和输入分母是利用二补数表不的有符号二进制值。由于在正符号二进制值和负符号二进制值表示上的不同,本技术认识到虽然能为正符号二进制值提供专用二的幂次方检测电路以及为负符号二进制值提供专用二的幂次方检测电路,或者甚至是能够操作有符号的二进制值的两种极性的更复杂的二的幂次方检测电路,如果能够采用这些表示中的一个以使同一个二的幂次方检测电路可用于两种极性,那么就提供了的一种更高效的配置。因此在一些实施例中,输入分子和输入分母是带符号二进制值,且二的幂次方检测电路包括预处理电路,该预处理处理电路被配置为如果输入分母是负值时对分母进行预处理以产生经预处理的输入分母,且二的幂次方检测电路被配置为当经预处理的输入分母表示二的幂次方时检测出旁路条件。预处理可以有多种形式,但在一些实施例中,预处理电路被配置为把输入分母左移一位并添加未设置位作为最低有效位以产生中间值,预处理电路还被配置为对中间值和输入分母执行X0R以产生经预处理的输入分母。这种配置有利地产生了经预处理的分母,其中,在在与负值输入分母相同的位位置上设置有正等值位。虽然也有可能产生输入分母的正等值,这个过程通常包括对输入值的位取反和加一,这会导致需要实现起来更昂贵的进位操作。因此,在一些实施例中,二的幂次方检测电路本文档来自技高网...

【技术保护点】
一种用于数据处理的装置,该装置被配置为响应除法指令以执行除法操作,其中,所述除法操作被设置为通过将所述除法指令指定的输入分子除以所述除法指令指定的输入分母来产生结果值,其中所述输入分子和所述输入分母是二进制值,所述装置包括:除法电路,被配置为通过执行所述除法操作来产生所述结果值;以及二的幂次方检测电路,被配置为当所述输入分母具有±2N给定的值时发出旁路条件信号,其中N是整数;以及旁路电路,被配置为响应所述旁路条件信号使得所述除法电路被旁路并且使得所述结果值被产生为所述输入分子被移动了N位。

【技术特征摘要】
...

【专利技术属性】
技术研发人员:大卫·雷蒙德·鲁茨内尔·伯吉斯
申请(专利权)人:ARM有限公司
类型:发明
国别省市:英国;GB

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1