单周期完成任意位移位的移位部件的制作方法

文档序号:6742548阅读:454来源:国知局
专利名称:单周期完成任意位移位的移位部件的制作方法
技术领域
本发明涉及一种用于计算机或其它数据处理装置中的移位部件,更具体地说,本发明涉及一种可以在单周期内完成对数据进行任意位移位操作的移位寄存器。
在寄存器中移动数据的功能是数据处理系统中最基本的要求之一。移动数据可以完成许多工作,例如完成串并行数据转换或并串行数据转换等等。


图1表示了一种现有技术中的移位寄存器的示意图。该移位寄存器由八个触发器构成,可以进行八位数据(Z0,Z1,……Z7)的单向循环寄位。从图中可以看出,每个触发器的D端作为串行数据的输入端,Q端作为输出端,八个触发器依次连接。所有触发器的CLK端都与一个时钟信号相连接。结果,每个时钟脉冲到来时,每个触发器的状态就发生变化,变成它左面的一个触发器的状态。当然,如果对图1中的基本移位寄存器进行一些改动,还可以构成能完成较复杂的移位功能的移位寄存器,但是它们都是每个时钟脉冲到来才能进行一位的移位操作。
本发明的目的是提供一种可以在单周期内完成对数据进行任意位移位操作的移位部件,为了完成此目的,该移位部件包括多个选通部件,选通部件的个数等于待移位数据的位数;每个选通部件具有一个输出位,该输出位与待移位的数据中的某一位相对应;每个选通部件具有多个输入位,该输入位的位数与待移位的数据的位数相对应,待移位的数据的每一位都分别与各个选通部件的输入位的相应位相对应;上述移位部件还包括一个译码部件,它将计算机指令中有关移位的信号进行译码,从而产生出各个选通部件的移位控制信号,所述的移位控制信号与所述的选通部件的控制信号输入端相连接,在此信号的控制下,移位部件可以对待移位数据进行任意位的移位操作。
下面是对附图的简要说明图1是现有技术中的一种基本的移位寄存器;
图2是一个待移位的数据的示意图;
图3a~图3k是对各种形式的移位结果的说明;
图4是表示本发明原理的示意图;
图5是本发明的移位部件的的一个选通部件的原理图;
图6是本发明的移位部件的一个实施例的示意图。
下面参照附图,对本发明的移位部件的一个实施例进行说明。需要提及的是,虽然在本说明书中给出了一个具体的实施例,同时也给出了附图所示的结构,但是本领域的一般技术人员完全可以根据本发明所揭示的构思进行改型,从而产生出不同于本实施例的结构和参数。例如,本实施例说明的是一个八位移位部件,但根据其构思,人们可以做出十六位,三十二位或更多位的移位部件,因此,本发明专利的保护范围应当由本发明的权利要求书确定。
现有技术中的移位部件采用的是串行触发移位的机理,而本发明提出的单一时钟周期完成移动任意位的多位移位器的基本思想是采用数据选通的方式。
图1表示了一个待移位的八位数据,每一位分别标作Z7、Z6Z5、Z4、Z3、Z2、Z1、Z。移位操作的方式可做如下划分。
填“0”移位在移位后留下的空位上填充“0”。
循环移位将数据看作一个首尾相接的数据环来进行移位操作,即移动数据后留下的空位以相邻移出的数据填充。
以上的方式还包括下列情况算术移位带有符号位的移位。即在移位时仅对非符号位进行操作,而符号位保持不变,一般最左端两位被规定为符号位。
逻辑移位不带符号位的移位,整个数据均参加移位操作。
对应上述每种移位方式又分别有左移和右移两种操作。另外,移位器还应具有正常传输,反码传输和清零功能。
图3a至图3R是图2中所示数据分别按上述移位方式移动一位后的结果,其中图3a表示了填“0”逻辑左移;图3b表示了填“0”逻辑右移;图3C表示了填“0”算术左移;图3d表示了填“0”算术右移;图3e表示了循环逻辑左移;图3f表示了循环逻辑右移;图3g表示了循环算术左移;图3h表示了循环算术右移;图3i表示了正常传输;图3j表示了反码传输;图3k表示了清零操作。
比较以上各图中所示的移位后的结果与移位前的数据可以看出,移位后所得的各位数据只是在Z7至Z0与“0”这几个数据之间进行选择的结果,这一点便是本发明的重要基础。
为了进行简单明确的说明,下面以Zn这一位数据为例进行说明,其中的n可以是0、1、2,……7。
图4是对Zn进行移位的说明。如图所示,这一位数据有一个选通部件,它的输出Zosn表示移位输出,它的输入可以有Zn+1、Zn、Zn-1、ZnB。当执行左移操作时,使Zosn=Zn-1;执行右移操作时,使Zosn=Zn+1;正常传输时,使Zosn=Zn;反码传输时,使Zosn=ZnB。
按照以上的原理,便可以推演出图5所示的本发明移位部件中一个数据移位选通部件的原理图。该选通部件具有一个输出端Zosn和7个输入端Z0至Z7。计算机发出的指令经一个译码部件译码后,形成选通部件的控制信号送入选通部件。此处所述的指令是MIsc体系计算机特有的一种长指令或超长指令,移位操作指令只占该超长指令中的一部分,根据指令中包含的移位方式和移位位数的信息,控制信号在Z0至Z7中送出一个信号,送至Zosn输出端。对于八位移位寄存器而言,只要做出八个如此的选通部件,把它们组合在一起便可以构成单周期任意移位的移位部件。
图6给出了一个八位移位部件,它是由八个图5所示的选通部件构成的,每个选通部件都是由门电路组成。
现以图6中的选通部件1为例进行说明。选通部件1中的Z0至Z7为输入的八位待移位数据,Zos1~8为移位后的输出信号。FFF为反码输出信号,当它是1(或0)时,则输出原码的移位结果;当它是0(或1)时,输出反码的移位结果。CLE为清零信号,当它为1(或0)时,输出为0;当它为0(或1)时,输出移位结果。图6中的C(1,0)至C(1,7)是第一迭通部件的移位控制信号,图6中的Cij(i是选通部件的编号,j等于0、1、2……7)是各选通部件的移位控制信号,它们是经对指令进行译码后得到的。由于译码是一般的技术,故在此不多加叙述。根据图6可以看出,每个选通部件的输出端Zos1~8可以按照选通控制信号的控制,在一个时钟脉冲周期同时选择得到Z0至Z7中的任何一位信号,从而实现了单周期任意位的移位操作。
本发明的移位部件可以是用于计算机系统中的一个部件,但它又具有相对的独立性,可以构成独立的运行器件,从而用于各种不同的环境和场合。
权利要求
1.一种在单周期内完成对数据进行任意位移位操作的移位部件,其特征在于所述的移位部件包括多个选能部件,选通部件的个数等于待移位的数据的位数;每个选通部件具有一个输出位,该输出位与待移位的数据中的某一位相对应;每个选通部件具有多个输入位,该输入位的位数与待移位的数据的位数相对应,待移位的数据的每一位都分别与各个选通部件的输入位的相应位相对应;上述移位部件还包括一个译码部件,它将计算机指令中有关移位的信号部分进行译码,从而产生出各个选通部件的移位控制信号,所述的移位控制信号与所述的选通部件的控制信号输入端相连接,在此信号的控制下,移位部件可以对待移位数据进行任意位的移位操作。
2.如权利要求1所述的在单周期内完成对数据进行任意位移位操作的移位部件,其特征在于所述的选通部件的个数等于八,以便对八位数据进行任意位的移位操作。
3.如权利要求1所述的在单周期内完成对数据进行任意位移位操作的移位部件,其特征在于所述的选通部件的个数等于十六,以便对十六位数据进行任意位的移位操作。
4.如权利要求1所述的在单周期内完成对数据进行任意位移位操作的移位部件,其特征在于所述的选通部件的个数等于三十二,以便对三十二位数据进行任意位的移位操作。
5.如权利要求2、3、4中任意一项中所述的在单周期内完成对数据进行任意位移位操作的移位部件,其特征在于将大于或等于二的移位部件结合起来,形成更多位的移位部件。
6.如权利要求1所述的在单周期内完成对数据进行任意位移位操作的移位部件,其特征在于每个选通部件是由门电路组合而成。
7.如权利要求1所述的在单周期内完成对数据进行任意位移位操作的移位部件,其特征在于所述选通部件的控制信号中包含一个反码控制信号,当它为第一状态时,选通部件输出原码移位结果;当它为第二状态时,选通部件输出反码移位结果。
8.如权利要求1所述的在单周期内完成对数据进行任意位移位操作的移位部件,其特征在于所述选通部件的控制信号中包含一个清零信号,当它为第一状态时,选通部件输出为零;当它为第二状态时,选通部件输出移位的结果。
全文摘要
随着计算机技术的飞速发展,对计算机部件提出了一些更高的要求。传统的移位寄存器只能在每个时钟周期完成一位的移位操作,这便限制住了计算机技术的进一步发展。本发明提供了一种克服这一限制的移位部件,它可以在单个周期对数据进行任何位的移位操作。
文档编号G11C19/28GK1055833SQ91103198
公开日1991年10月30日 申请日期1991年5月17日 优先权日1991年5月17日
发明者刘大力 申请人:北京大兴多思软件有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1