会员体验
专利管家(专利管理)
工作空间(专利管理)
风险监控(情报监控)
数据分析(专利分析)
侵权分析(诉讼无效)
联系我们
交流群
官方交流:
QQ群: 891211   
微信请扫码    >>>
现在联系顾问~
首页 / 专利库 / 电脑零配件 / 硬件 / 硬件环路

硬件环路

阅读:866发布:2020-05-12

IPRDB可以提供硬件环路专利检索,专利查询,专利分析的服务。并且在一种实施例中,一种可编程序的处理机适于包含增加信息处理速度、而不致使功耗显著增加的环路硬件。在第一次通过环路期间,第一子集系列指令可输入到环路硬件。然后,在随后通过环路期间,第一子集可从环路硬件发出,而第二子集从存贮器件检索。以这种方式,在第一子集发出后,第二子集可以发出而没有附加补偿。,下面是硬件环路专利的具体信息内容。

1.一种方法,其特征在于,它包括:

当第一次通过环路期间,将第一子集系列的指令装载到环路硬件内;

在随后通过环路期间,从环路硬件发出第一子集;

在随后通过环路期间,基本上在与第一子集发出的同时,从存贮器件检索第 二子集系列的指令。

2.如权利要求1所述的方法,其特征在于,该方法进一步包括在发出第一子 集以后,发出第二子集。

3.如权利要求1所述的方法,其特征在于,该方法进一步包括在以后每次通 过所述环路期间,从环路硬件发出第一子集;以及在以后每次通过环路期间,基本上与发出第一子集的同时,从所述存贮器件 检索第二子集系列指令。

4.如权利要求1所述的方法,其特征在于,从存贮器检索第二子集系列的指 令包括从缓存存贮器检索第二子集系列的指令。

5.如权利要求1所述的方法,其特征在于,从存贮器件检索第二子集系列指 令包括从SRAM检索第二子集系列指令。

6.如权利要求1所述的方法,其特征在于,在第一次通过环路期间,将第一 子集系列的指令装载到环路硬件内,以及在随后通过所述环路期间,从环路硬件发出第一子集,包括:在第一次通过环路期间,将第一子集系列的指令装载到一组环路缓冲存储器 内,以及在随后通过所述环路期间,从一组环路缓存器发出第一子集。

7.如权利要求1所述的方法,其特征在于,在以后通过环路期间,基本上与 发出第一子集是同时地,从所述存贮器件检索的第二子集系列的指令,并包括下述 步骤:在以后通过环路时,在基本上与发出第一子集同时,从存贮器件中紧随第一 子集,检索出一系列指令中的下一个指令。

8.如权利要求1所述的方法,其特征在于,它包括:在已经发出第一子集的 指令前,完成第二子集的检索。

9.如权利要求1所述的方法,其特征在于,检索第二子集包括,检索出许多 指令,而其中的第一指令在数量上是紧随第一子集的一系列指令中的下一个指令。

10.一种装置,其特征在于,它包括:

控制单元,它包括:

指令取出单元;以及

与所述指令取出单元偶合的环路硬件,和

与所述指令取出单元及所述环路硬件偶合的译码器,其中,所述控制单元用来

在第一次通过环路期间,将第一子集指令装载到所述环路硬件内;

在以后通过环路期间,从所述环路硬件发出第一子集;和在以后通过环路期间,基本上与发出第一子集同时地,从存贮器件中检索出 第二子集系列指令。

11.如权利要求10所述的装置,其特征在于,所述环路硬件包括至少一组并 联偶合的缓存器。

12.如权利要求12所述的装置,其特征在于,所述一组缓存器组环路缓存器。

13.如权利要求12所述的装置,其特征在于,该装置进一步包括一存贮器件, 其中,所述指令取出单元与存贮器件相偶合。

14.如权利要求13所述的装置,其特征在于,所述存贮器件是高速缓存器。

15.如权利要求10所述的装置,其特征在于,所述控制单元还用来在已经发 出第一子集后,发出第二子集。

16.如权利要求10所述的装置,其特征在于,所述控制单元还用来:在以后每次通过环路期间,从所述环路硬件发出第一子集;以及在以后每次通过环路期间,基本上与发出第一子集是同时地,从存贮器件中 检索出第二子集系列指令。

17.一种系统,其特征在于,它包括:

SRAM存贮器件;

环路硬件;和

与所述存贮器件偶合的处理机,其中,所述处理机包括一控制单元,用来:在第一次通过环路期间,将第一子集系列指令装载到所述环路硬件内;

在以后通过环路期间,从环路硬件发出第一子集;以及在以后通过环路期间,基本上与发出第一集是同时地,从存贮器件中检索出 第二子集系列指令。

18.如权利要求17所述的系统,其特征在于,所述控制单元还用来在发出第 一子集后,发出第二子集。

19.如权利要求17所述的系统,其特征在于,所述控制单元还用来:在以后每次通过环路期间,从环路硬件发出第一子集;以及在以后每次通过环路期间,基本上与发出第一子集是同时地,从所述存贮器 件检索出第二子集系列的指令。

20.如权利要求17所述的系统,其特征在于,所述环路硬件包括至少一组缓 存器。

21.如权利要求20所述的系统,其特征在于,所述一组缓存器是环路缓存器。

22.一种方法,其特征在于,它包括:

在第一次通过环路期间,将第一子集系列的指令装载到一组缓存器内;

在以后通过环路期间,从一组缓存器发出第一子集;

在以后通过环路期间,基本上与发出第一子集是同时地,从存贮器件检索出 第二子集系列的指令;以及在以后通过环路期间,在已经发出第一子集后,发出第二子集。

23.如权利要求22所述的方法,其特征在于,从所述存贮器件中检索出第二 子集系列指令包括从高速缓存器检索第二子集系列指令。

24.如权利要求22所述的方法,其特征在于,在以后通过环路期间,基本上 与发出第一子集是同时地,从存贮器件检索出第二子集系列指令,并且包括:在以后通过环路期间,基本上与发出第一子集是同时地,从存贮器件检索紧 随第一子集后的指令系列中的下一个指令。

25.如权利要求22所述的方法,其特征在于,所述方法包括在已经发出第一 子集的指令前,完成第二子集的检索。

26.如权利要求22所述的方法,其特征在于,检索第二子集包括检索许多指 令,第一指令在数量上是紧随第一子集后的指令系列中的下一个指令。

27.一种本方法,其特征在于,它包括:在第一次通过环路期间,将一系列指令中的开头n个指令装载到环路硬件内, 其中,n为正整数;以及从所述环路硬件发出开头n个指令中的至少一个。

28.如权利要求27所述的方法,其特征在于,它还包括在第一次通过环路期 间,将第(n+1)指令的地址装载到指令地址寄存器内。

29.如权利要求28所述的方法,其特征在于,它进一步包括在以后通过环路 期间,从环路硬件发出所述开头n个指令。

30.如权利要求29所述的方法,其特征在于,进一步包括在以后每次通过所 述环路期间,从所述环路硬件发出指令。

31.如权利要求29所述的方法,其特征在于,进一步包括在以后通过环路期 间,基本上与发出开头n个指令是同时地,检索第(n+1)条指令。

32.如权利要求28所述的方法,其特征在于,进一步包括存贮器件中排列接 下来的(m)条指令,其中,m为正整数。

33.如权利要求32所述的方法,其特征在于,进一步包括:基本上与发出开头n条指令是同时地,检索第(n+1)条指令;

发出第(n+1)条指令;

基本上与发出第(n+1)条指令是同时地,检索第(n+2)条指令。

34.如权利要求33所述的方法,其特征在于,进一步包括:发出第(n+2)条指令;以及

基本上与发出第(n+2)条指令是同时地,检索第(n+3)条指令。

35.如权利要求27所述的方法,其特征在于,进一步包括:在从所述环路硬件发出至少一条指令时,是不访问存贮器件的。

36.一种装置,其特征在于,它包括:

控制单元,用来在第一次通过环路期间,将一系列指令中的开头n条指令装 载到环路硬件内,其中,n为正整数,所述控制单元包括:指令取出单元;以及

与所述取出单元相连的环路硬件;以及

与所述控制单元相连的译码器。

37.如权利要求36所述的装置,其特征在于,进一步包括与所述指令取出单 元相连的存贮器件。

38.如权利要求37所述的装置,其特征在于,所述存贮器件是缓存器。

39.如权利要求36所述的装置,其特征在于,进一步包括指令地址寄存器, 其中,所述控制单元在第一次通过环路期间,用来将第(n+1)条指令的地址装载到 指令地址寄存器内。

40.如权利要求39所述的装置,其特征在于,所述控制单元用来在以后通过 环路期间,从环路硬件发出开头的n条指令。

41.如权利要求40所述的装置,其特征在于,所述控制单元用来在以后每次 通过环路期间,从环路硬件发出所述指令。

42.如权利要求40所述的装置,其特征在于,所述控制单元用来在以后通过 环路期间,基本上与发出开头n条指令是同时地,检索第(n+1)条指令。

43.如权利要求37所述的装置,其特征在于,进一步包括一指令地址寄存器, 其中,所述控制单元用来在第一次通过环路并使存贮器件中的接下来的(m)条指令 排列期间,将第(n+1)条指令的地址装载到所述指令地址寄存器内,其中,m为正 整数。

44.如权利要求43所述的装置,其特征在于,所述控制单元用来:在与发出开头n条指令基本上是同时地,检索第(n+1)条指令;

发出第(n+1)条指令;以及

在与发出第(n+1)条指令基本上是同时地,检索第(n+2)条指令。

45.如权利要求44所述的装置,其特征在于,所述控制单元用来:发出第(n+2)条指令;以及

在与发出第(n+2)条指令基本上是同时地,检索第(n+3)条指令。

46.如权利要求37所述的装置,其特征在于,在从环路硬件发出指令时,所 述是不访问所述存贮器件的。

47.如权利要求36所述的装置,其特征在于,所述环路硬件包括至少一组并 联偶合的缓存器。

48.如权利要求47所述的装置,其特征在于,所述一组缓存器是环路缓存器。

49.一种系统,其特征在于,它包括:

SRAM存贮器件;

环路硬件;以及

与所述存贮器件偶合的处理机,其中,所述处理机包括一个控制单元,用来:在第一次通过环路期间,将一系列指令中的开头n条指令装置到所述环路硬 件中,这里,n为正整数。

50.如权利要求49所述的系统,其特征在于,所述环路硬件包括至少一组并 联偶合的缓存器。

51.如权利要求49所述的系统,其特征在于,所述系统还包括指令地址寄存 器,其中,所述控制单元用来在第一次通过环路期间,将第(n+1)条指令的地址装 载到所述指令地址寄存器内。

52.如权利要求51所述的系统,其特征在于,所述控制单元用来在以后通过 所述环路期间,从环路硬件发出开头n条指令。

53.如权利要求52所述的系统,其特征在于,所述控制单元用来在以后每次 通过环路期间,从环路硬件发出所述开头n条指令。

54.如权利要求52所述的系统,其特征在于,所述控制单元用来在以后通过 所述环路期间,基本上与发出开头n条指令是同时地,检索第(n+1)条指令。

55.如权利要求51所述的系统,其特征在于,所述控制单元用来在所述存贮 器件中排列接下来的(m)条指令,这里,m为正整数。

56.如权利要求55所述的系统,其特征在于,所述控制单元用来:基本上与发出开头n条指令是同时地,检索第(n+1)条指令;

发出第(n+1)条指令;和

基本上与发出开头(n+1)条指令是同时地,检索第(n+2)条指令。

57.如权利要求56所述的系统,其特征在于,所述控制单元用来:发出第(n+2)条指令;和

基本上与发出(n+2)条指令是同时地,检索第(n+3)条指令。

58.如权利要求51所述的系统,其特征在于,所述系统用来在从环路硬件发 出指令时,访问所述存贮器件。

59.一种方法,其特征在于,它包括:

在第一次通过环路期间,将一系列指令中的开头n条指令装载到所述环路硬 件内,这里,n为正整数;

在第一次通过环路期间,将第(n+1)条指令的地址装载到指令地址寄存器内;

在存贮器件中排列接下来的(m)条指令,这里,m为正整数;

在以后通过环路期间,从所述环路硬件发出开头n条指令;

在以后通过环路期间,与发出开头n条指令基本上是同时地,使用在指令地 址寄存器中装载的地址,检索第(n+1)条指令;

发出第(n+1)条指令;和

基本上与与发出第(n+1)条指令是同时地,检索第(n+2)条指令。

60.如权利要求59所述的方法,其特征在于,它进一步包括:发出第(n+2)条指令;和

基本上与与发出第(n+2)条指令是同时地,检索第(n+3)条指令。

61.一种方法,其特征在于,它包括:

将一组指令装载到第一组环路缓存器内;

将至少某些组指令从第一组环路缓存器装载到第二组环路缓存器内。

62.如权利要求61所述的方法,其特征在于,将一组指令装载到第一组环路 缓存器内包括将一组指令从存贮器件装载到第一组环路缓存器内。

63.如权利要求61所述的方法,其特征在于,装载到第一组环路缓冲器内的 指令是第一环路的一部分,而且装载到第二组环路缓存器内的指令是第二环路的一 部分。

64.如权利要求63所述的方法,其特征在于,第二环路的第一指令装载到第 一组环路缓存器内。

65.如权利要求63所述的方法,其特征在于,第一环路的第一指令装载到第 二组环路缓存器内。

66.一种装置,其特征在于,它包括:

控制单元,它包括:

指令取出单元;

并联偶合且连接到所述取出单元的第一组缓存器;以及并联偶合且连接到所述取出单元和第一组缓存器的第二组缓存器;以及连接到所述指令取出单元和第一及第二组缓存器的译码器。

67.如权利要求66所述的装置,其特征在于,控制单元用来:将一组指令装载到第一组缓存器内;以及

将至少某些组指令从第一组缓存器装载到第二组缓存器内。

68.如权利要求66所述的装置,其特征在于,它进一步包括与指令汲取单元 相连接的存贮器件,其中,所述控制单元用来将一组指令从存贮器装载到第一组缓 存器内。

69.如权利要求68所述的装置,其特征在于,所述存贮器件是高速缓存器。

70.如权利要求66所述的装置,其特征在于,它进一步包括并联偶合且连接 到取出单元、第一组缓存器和第二组缓存器的第三组缓存器。

71.如权利要求70所述的装置,其特征在于,它还包含并联偶合且连接到取 出单元、第一组缓存器、第二组组冲存贮器和第三组缓存器的第四组缓存器。

72.一种系统,其特征在于,它包括:

SRAM存贮器件;

第一组环路缓存器;

第二组环路缓存器;以及

与存贮器件偶合的处理机。

73.如权利要求72所述的系统,其特征在于,所述处理机包括控制单元,用 来:将一组指令装载到第一组缓存器内;

将至少某些组指令从第一组环路缓存器装载到第二组环路缓存器内。

74.如权利要求72所述的系统,其特征在于,它进一步包括第三组缓存器。

75.如权利要求74所述的系统,其特征在于,它进一步包括第四组缓存器。

76.一种方法,其特征在于,它包括:

将一组指令按执行顺序装载到所述环路硬件内;以及将下一个指令的地址存贮入地址寄存器内。

77.如权利要求76所述的方法,其特征在于,所述指令组是第一组指令,所述 方法进一步包括:将第二组指令按执行顺序装载到存贮器件内。

78.如权利要求76所述的方法,其特征在于,将第二组指令按执行顺序装载 到存贮器件内包括将第二组指令按执行顺序装载到高速缓存器内。

79.如权利要求76所述的方法,其特征在于,将一组指令按执行顺序装载到 所述环路硬件内包括将一组指令按执行顺序装载到一组缓存器内。

80.如权利要求79所述的方法,其特征在于,所述缓存器组包括并联偶合的n 个缓存器,n为正整数,并且其中,将一组指令按执行次序装载到所述环路硬件内包括将n个系列指令装 载到n个缓存器内。

81.如权利要求76所述的方法,其特征在于,将n条系列指令装载到n个缓 存器内包括将环路的开头n条指令装载到n个缓存器内。

82.如权利要求81所述的方法,其特征在于,将n条系列指令装载到n个缓 存器内包括将环路中最后的n条指令装载到n个缓冲存储器内。

83.如权利要求76所述的方法,其特征在于,它进一步包括从所述环路硬件 发出所述指令组。

84.一种装置,其特征在于,它包括:

控制单元,用来将一组指令按执行顺序装载到所述环路硬件内,并将下一条 指令的地址贮存在地址寄存器内,所述控制单元包括:指令取出单元;

与所述取出单元相连接的地址寄存器;以及与所述取出单元相连接的环路硬件;以及

与所述指令取出单元和环路硬件相连接的译码器。

85.如权利要求84所述的装置,其特征在于,它还包含与所述控制单元相连 接的存贮器件,其中,所述指令组是第一组指令,并且所述控制单元用来将第二组指令按执 行顺序装载到存贮器件内。

86.如权利要求85所述的装置,其特征在于,所述环路硬件包括一组缓存器。

87.如权利要求86所述的装置,其特征在于,所述缓存器组包括n个并联偶 合的缓存器,n为正整数,并且其中,将一组指令按执行顺序装载到环路硬件内包括将n个系列指令装载到n 个缓存器内。

88.一种系统,其特征在于,它包括:

SRAM存贮器件;

环路硬件;

地址寄存器;和

与所述存贮器偶合的处理机,其中,所述处理机包括控制单元,用来:将一组指令按执行顺序装载到环路硬件内;以及将下一个指令的地址贮存入地址寄存器内。

89.如权利要求88所述的系统,其特征在于,所述环路硬件包括至少一组环 路缓存器。

90.如权利要求89所述的系统,其特征在于,所述缓存器组包括n个并联偶 合的缓存器,n为正整数,并且其中,所述控制单元用来将n个系列指令装载到n个缓存器内。

91.一种装置,其特征在于,它包括:

控制单元,它包括:

环路硬件,包括至少一组缓存器和至少一个单指令寄存器,以及与所述环路硬件偶合的译码器。

92.如权利要求91所述的装置,其特征在于,所述控制单元用来将所述缓存 器组中至少一个缓存器的内容装载到所述单指令寄存器内。

93.如权利要求91所述的装置,其特征在于,它还包含与所述环路硬件连接 的第一多路复用器,其中,所述控制单元用来通过第一多路复用器装载单指令环路 寄存器。

94.如权利要求91所述的装置,其特征在于,它还包含与所述环路硬件连接 的第一多路复用器和在环路硬件内包含的第二多路复用器,其中,所述第二多路复 用器的输入端来自于缓存器组。

95.如权利要求95所述的装置,其特征在于,它进一步包括包含在所述环路 硬件内的第三多数调制器,其中,所述第三多路复用器的输入端来自所述第一和第 二多路复用器的输出端;并且所述第三多路复用器的输出端与所述单指令寄存器连 接。    

说明书全文

本发明涉及在可编程序处理机中构成的硬件环路

在设计可编程处理机(例如数字信号处理(DSP)系统)时,两种竞争设计的目标 是信息处理的速度和功耗。通常的处理机包括各种各样的硬件,其设计用来提高执 行软件指令的速度。然而,其它的硬件一般增加处理机的功耗。

一种提高可编程序处理机速度的技术是“硬件环路”,它是为加速环路结构 内执行软件指令而设计的专用硬件。硬件环路可减少用于执行软件环路同步脉冲周 期数,在局部寄存器中贮藏指令,从而减少从存贮器中取出同样指令或指令贮藏多 次的需要。

硬件环路提出了几项挑战,这些挑战包括避免损失,例如装配损失或支线损 失。装配损失是与安装硬件环路相联系的性能的衰减(通常增加处理时间)。同样, 支线损失是与支线相联系的性能的衰减(同样,通常增加了处理时间)。

附图说明

图1是按照本发明一个实施例的管线可编程序处理机实例的方块图。
图2是表示依据本发明一个实施例的可编程序处理机的执行管线实例的方块 图。
图3是依据本发明一个实施例可装载的早期寄存器的典型定时的流程图。
图4是依据本发明一个实施例的用来确定环路装配指令如何用来测定早期寄 存器值的流程图。
图5是一个硬件环路单元一个实施例的电路方块图。
图6是依据本发明包括调节早期寄存器的操作模式的流程图。
图7是依据本发明一个实施例更新结构寄存器值的方法的流程图。
图8是依据本发明的实施例更新结构计数寄存器值的另一种方法的流程图。
图9是依据本发明一个实施例用早期寄存器实现的定时优点的流程图。
图10是依据本发明一个实施例调整早期计数值有效方法的流程图。
图11是依据本发明一个实施例电路中计数器的方块图。
图12是依据本发明一个实施例的混合操作模式的流程图。
图13是依据本发明一个实施例仅在开头n-1个执行阶段中具有计数器的混合 电路的方块图。
图14是依据本发明一个实施例硬件环路单元的方块图。
图15是依据本发明一个实施例一种情况的图。
图16是依据本发明一个实施例一种情况的图。
图17是依据本发明一个实施例一种情况另一流程图。
图18是依据本发明一个实施例另一种情况的图。
图19是描述其它情况的流程图。
图20是依据本发明一种实施例两种情况的流程图。
图21是依据本发明一个实施例检测零偏移环路操作模式的流程图。
图22是依据本发明一个实施例检测和处理单指令零偏移环路的操作模式的流 程图。
图23A~23C是依据本发明一个实施例相互连接的硬件环路单元数的方框图。
图24是按照本发明一个实施例的节电电路的方块图。
描述
图1是方块图,它示出可编程序的处理机2,其配置能支撑高效的硬件环路而 不致使功耗有明显的增加。
为了支撑硬件环路,通过设置环路的输入和输出条件,处理机2可支撑环路 设置环路。输入和输出条件被环路条件所确定:顶、底和计数。顶条件定义为环路 的第一指令(或顶),底条件定义为环路的最后指令(或底)。计数条件定义为环路的 迭代次数。
硬件环路的输入可在“第一顶匹配”处发生。当程序计数器(PC)指向环路的 顶指令时,顶匹配可发生。硬件环路的输出可以最后的底匹配发生,当PC指向环 路的底指令时,底匹配可发生。
在第一顶匹配预置计数,在每一个底匹配减缩计数,当它遇到最后的底匹配 时,硬件可以记录下来。以这种方式,环路条件的顶、底和计数可以规定硬件环路 的输入和输出条件。
处理机2包括一个执行管线4和控制单元6。控制单元6可控制指令和(或) 在同步脉冲周期内通过管线4的数据的流程。例如,在处理指令期间,控制单元6 可直接使管线的各组成部分把指令解码,并正确实现相应的操作内容,例如,把写 入结果返回到存贮器中。
指令可以输入到管线4的第一级,并在随后级进行处理。一个级处理可以与 其它级同时发生。在系统循环期间,数据可以在管线4的级之间通过。指令的结果 可迅速连续地出现在管线4的末端。
控制单元6可包括下述硬件环路单元8,它可简化快速硬件环路,而不致使处 理机2的功耗有明显的增加。
图2表示3管线实例的方块图。管线10具有多重级,它可简化单个同步脉冲 周期内多重指令的实施。在管线10中,指令可进入第一个同步脉冲周期内的指令 取(IF)级12,因而在随后的同步脉冲周期内,指令可连续沿管线而下。在上述指 令输出后,另一个指令可进入IF级12。因此在随后的同步脉冲周期内,典型的另 一个指令进入IF级12,从而在随后的同步脉冲周期内,连续沿管线而下。同样地, 在随后的同步脉冲周期内,附加的指令分别进入IF级12。管线中的许多级可确定 管线能同时操作的指令数。
管线的不同级操作如下:在IF级12,通过取出单元13可取出指令,并可在 DEC级14从指令寄存器15解码。在AC级18期间,地址数据发生器19可计算用 来完成操作的任一存贮器号码。
在执行级(EX1~EXn)22和28期间,执行单元23和29可完成特殊操作,例如 添加或增加二个号码。执行单元可含有完成操作的特种硬件,如包括一个或多个算 术逻辑单元(ALU),浮点单元(FPU)和筒形移相器虽然本发明范围在这方面没有加以 限制。各种数据可应用到执行单元,例如通过地址数据发生器提供地址,从存贮器 中检索数据或从数据寄存器中检索数据。在写入后级(WB)30,其结果可写入到管线 外的存贮器单元或数据寄存器中,或者写入到管线中的数据寄存器,例如结构寄存 器32。管线10的级可包括存贮数据的一个或多个存贮电路,例如触发电路。
如上所述,处理机2可支撑环路安装的指令。把硬件环路的界限(例如顶和底) 写入到管线中的结构寄存器32中,该环路安装的指令就可预置硬件环路。该环路 安装的指令也可预置结构寄存器32的读数,这情况表明环路已经完成。另外,环 路安装的指令可确定偏移,它表明,在环路顶达到前,指令数遵循环路安装的指令。 在硬件环路预置后,硬件环路可在管线10中运行。直到环路的输出条件满足(例如 底匹配计数等于零)。
一旦指令委托,结构寄存器32通常被装载,例如WB级30的最后结果。因而 当环路安装的指令进入管线10中时,贮存在结构寄存器32中的输入和输出条件不 可修改指令,直到若干同步脉冲周期通过。因为输入和输出条件不可修改指令,直 到若干同步脉冲周期通过调节硬件环路就可能存在限制。例如在环路安装的指令委 托前,如果环路中的第一指令进入管线10中,则结构寄存器不能通过调节来识别 环路部分的指令。况且,当管线的深度增加时,这个问题可随之增加。
在一种实施例中,通过维护管线中的一组早期寄存器34、35和36,则处理机 2可克服这些限制。如图2所示,早期寄存器E顶34和E底35可存在于解码阶段, 而E计36可存在于AC阶段。
实施一组早期寄存器34、35和36,通过降低或避免环路引起恶化,可使处理 机2提供高处理速度。如上所述,在环路安装的指令进行管线的时间和结构寄存器 被写入的时间之间,若干同步脉冲周期可以通过。然而,在环路安装的指令写入到 结构寄存器之前,早期寄存器可长时间输入。基于这个原因,实施的早期寄存器可 以缩减安装硬件环路所需的时间。
早期寄存器是可推测的寄存器(speculative register),它是用于预测或 推测结构寄存器数值,与结构寄存器不同,推测寄存器不能通过系统指令的调节得 到保证。因而,程序编码不能用来存取推测寄存器。基于这个原因,程序装置不能 改动推测寄存器内外的数据,同样道理,对结构寄存器也是如此。
输入早期寄存器可用几种不同的方法。例如,由于实施有规则的指令寄存器 改向结构寄存器。其结果,早期寄存器可简单地输入。换言之,系统可指令结构寄 存器输入到某些其它寄存器一定量。结果,早期寄存器可修改指令。然而,使寄存 器输入的另一种方法是通过存贮器“上托”(pop),换言之,系统可以存贮器取出 数据对结构寄存器以该数据输入,则使早期寄存器修改指令。
然而,规则寄存器“改向”或“上托”的问题是,它们能引起环路安装的恶 化(penalty)。这些恶化可能发生,因为系统可能使管线失速,直到“改向”或“上 托”数据被有效写入。为避免这些恶化,在结构寄存器得到写入前,环路安装指令 可用来对早期寄存器输入。
下面的实例描述,为调用典型环路安装机指令而用的语法。
LSETUP(PC相对于顶,PC相对于底)计数器=X
相对于顶PC的规定,从电流指令到环路起始的距离(起始偏离),相对于底PC 的规定,从电流指令到环路末端的距离(未端偏离)。另外,可变计数器规定,计数 寄存器和环路计数表明环路内的相互作用数。
图3是依据本发明一个实施例的早期寄存器当得到输入时其时序的流程图。 如上所述,环路安装指令可以含有计数值、顶值和底值的形式的环路条件。总起来 说,这三种数值可以确定硬件环路的输入和输出条件。
该计数值可望表示构成环路的相互作用数。一旦环路安装的指令输入AC(38), 计数值就写入到E寄存器(39)中,原先写入到E计寄存器,可以从包含在不同管线 中的数据寄存器通过寄存器移向达到。在一种操作模式中,E计寄存器可以以DAG 管线中的PREG寄存器吕含有的数据写入(见图6)。
顶值和底值表明,其指令是环路的顶和指令是环路的底。然而,在环路的安 装指令中的顶值和底值,可以是相关的程序计数器(PC)。因而,在AC级的计算(40) 可用于获得顶值和底值,它们将分别写入到E顶34和E底35的寄存器中。环路的安 装指令进入EX1(41),顶值一底值可写入到E顶34和E底35的寄存器中。环路的安 装指令进入EX1(41),顶值和底值可写入到E顶34和E底35寄存器(42)中。
E顶寄存器34可以输入到环路的第一指令点(或环路的顶),E底35寄存器可以 输入到环路的最后指令点(或环路的底)。E计寄存器36的输入,确定了电路通过环 路的时间。在一种实施例中,E计36计数向F,当电路通过环路时缩减。
图4是表示硬件环路单元8的一种操作模式的流程图,这时接收到环路的安 装指令并由管线10处理,按照信息按排格式,环路的安装指令可以确定若干安装 变数,包括起始偏移(S-偏移)和终端偏移(E-偏移)。S-偏移可以确定指令流中从环 路的安装指令到环路的第一指令之间的距离,同样地,E-偏移可以确定指令流中从 环路的安装指令到环路的最后指令之间的距离。
例如,如果环路的第一指令是瞬间追随环路安装指令的指令,则S-偏移将是 环路安装指令的宽度。在指令流中,如果环路安装指令和环路中的第一指令之间有 一个指令,则S-偏移将是环路安装指令和一个指令的宽度。同样地,如果环路安 装指令和第一指令之间有两个指令,则S偏移将是环路安装指令和两个指令的宽 度。
如图4所示,S-偏移和E-偏移通过环路安装指令(44)可典型的确定。然而, 环路的安装指令确定相对于程序计数器(PC)的偏移。因而,也必须测定PC值(45)。 这样,PC值和S-偏移可用来计算E顶寄存器数据(46)。况且,PC值和E-偏移可 用来计算E底寄存器数据(47)。一经算出,该早期寄存器数据可写入到早期寄存器 (48)中。
比较图4和图2,表明了当写入E顶和E底寄存器时的典型时限。在DEC级 14,步骤(44)和(45)可能发生。计算步骤(46)和(47)可发生在AC级18中。因而, 写入步骤(48)可发生在EX1阶段22,虽然本发明范围在这方面没有加以限制。
一经装载,早期寄存器可用来建立硬件环路。图5是方块图。它表明了硬件 环路单元8与指令取出(IF)单元50和管线10的译码单元52相连接的一种实施例。 在一种实施例中,早期寄存器可用来检测指令流57中的环路。因此,环路硬件54 以一个或多个环路指令输入。一俟输入,环路指令可从环路硬件中反复产生。这样, 如果早期寄存器检测指令环路,则一个或多个环路指令的取出,只有通过IF单元 50,并从硬件环路单元8中重复产生。
实施早期寄存器可引起若干需求。例如,由于用早期寄存器引起的一种要求 上升了。因为早期寄存器数据需要加以调整。如果管线必须服务于一件大事,则管 线的电流操作需要终止。如果这种终止发生在早期寄存器写入后,但在它相应的结 构寄存器写入前,则早期寄存器数据需要加以调整。换言之,因为早期寄存器写入 早,在环路委托前,管线的终止就需要调整早期寄存器数据。
图6是流程图。它表明包括调整早期寄存器的一种操作模式。图6特别表明 了包括调整E顶、E底和E计等寄存器的时限。
如图6所示,早期寄存器可写入(76),在图6的实施例中,早期寄存器具体 是E顶、E底和E计寄存器(如图2所示)。如果管线(80)的终止发生在结构寄存器写 入前(82),则无故障指令可从管线(83)中消耗,通过写入包含在它们相应的结构对 应装载(84)的数据,早期寄存器可以调节。当处理背对背硬件环路时,图6所示的 操作模式特别有用。例如,如果第二个环路在它委托前终止,则第一环路仍旧需要 执行其管线中保持的指令。图6的调整技术通过调整相应早期寄存器值,提供了处 理这种转变的一种方法。
图7示出用早期计数(E计)数据,修改结构寄存器指令的一种方法。数据可以 任一方式,写入到上述E计寄存器(90)中。然后E计寄存器数据发送到管线(92), 使之能写入到WB级的结构计数寄存器(93)中。这样,在环路(94)每一次随后的重 复中,E计寄存器数据可缩减(96),并重新发送到管线(92)中。该过程可延续到环 路完成它最后的重复为止(98)。
图8表示了更新结构计数寄存器指令的另一种方法。在每次环路重复后,图8 所示的操作模式一旦发送E计数据,则宁可把E计数据发送到管线。这样,在随后 的环路重复中,简单而有效的缩减存贮位数可以发送,以调整结构计数寄存器。
图8中,数据可以任一方式写入到E计寄存器(90)。然后,E计寄存器数据可 发送到管线(92),使它在WB级能写入到结构计数寄存器(93)中。在随后的环路(94) 重复中,简单而有效的缩减存贮位数可发送(102)到结构计数寄存器(104)。该过程 可继续到环路完成它最后的重复(98)为止。
图9是流程图。它表示用早期寄存器实现的定时优点。如图9所示,环路的 输入/输出条件可输入一组早期寄存器(120)中。在环路安装的指令委托(124)前, 这些早期输入/输出条件就可检测(122)。
调整E计寄存器,带来附加的要求。E计寄存器的调整可以任一时间进行。管 线的终止先于环路完成之前。这可能因为有效的指令仍然在管线中,一旦它们委托, 这些有效指令即可调节结构计数寄存器值。
终止后校正E计寄存器数据的一种方法是,允许指令在终止前委托,然后以其 结构对应装载写入E计寄存器。然而,如果支线损耗小于管线所耗费的时间,这可 能带来附加的损失。
图10表明调整早期计数值的一种有效方法。如图所示,在环路安装的指令进 入AC级(180)后,早期计数寄存器可以写入(182)。基于这点,E计数据可以送到管 线(184)。如果发生终止(185),无故障指令会被消耗(186),且E计寄存器可以其 结构对应装载(187)的数据写入。
在每一个底匹配(190),有效缩减存贮位数可发送到管线(192)。在每一个管 线级194),当引起有效存贮位数发送的指令存在时,则有效缩减的存贮位数可从 管级(196)存在的计数器中消除。换言之,当有效存贮位数发送(例192),计数器 可以增加;当引起有效缩减存贮位数发送的指令存在于管级时,则个别的计数器可 以减少(例196)。
如果终止发生在管线(198)中,则在终止级通过许多有效缩减计数器中的存贮 位数,使早期计数寄存器得到调整(188)。这种调整值也意味着管线中存在于每个 管级相应的计数器,它此发生终止的级来得晚。图10的步骤可重复进行,直到所 有的环路指令存在于管线(200)中。
在每次底匹配(例如,每次通过环路)时,E计寄存器可以缩减。然而,在每次 底匹配后,宁愿传播整个E计值到管线,只有简单有效的缩减存贮位数发送到管线。 以这种方式,硬件的衰减可在DSP系统中实现。一组计数器可以监控有效地缩减存 贮位数及引起那些位数发送的相关指令。这样,一组计数器使早期计数寄存器和它 的结构不对应装载之间的差异保持运行记录。
图11是方块图。它表示电路中的计数器。如图所示,计数器可以保持在DEC 后管线的每个级(210,211,212和213)。因而,简单有效的缩减位数可以传播到管 线,以解释早期计数寄存器和它的结构对应装载之间的差异。计数器可以连接到多 路传输的输入端220。如果,任一计数器用于调整,多路传输220可决定早期计数 寄存器36。
在其它的实施例中,在某些级终止不能发生。或者,当某些指令存在于特定 的级时,可加以限制。在这种实施例中,于终止受到限制的级,如不执行计数器, 则电路硬件可以简化。
计数器210,211,212和213的宽度可以随需要而变。例如,计数器210可以 是1比特计数器,和212可以是2比特计数器。计数器212和213最小的深度取决 于管线中执行级数n。计数器210可以是1比特计数器,因为它常具有的值是1或 零。例如,如果底匹配指令通常在AC,则它具有的值为1。当指令离开AC,则计 数器返回到零。
计数器211和随后的计数器(例如在EX2阶段)可以是2比特计数器,虽然本 发明范围在这方面没有加以限制。这是因为计数器211(例Ex1计数器)可具有最大 值2,EX2计数器可以具有最大值3。EX3计数器具有最大值4,因此它需要3比特。 同样,随后的3个计数器(例EX4~EX6)可以是3比特计数器,能分别表示5~7之 间的值。
通过考虑计数器需要持有的最大值,可决定每一级计数器的宽度。这种场合 可相应的环路是一简单的指令环路。因此,计数器的深度可简单相应于计数器和 AC间的级数。然而,其大小也取决于在个别级是否发生终止,由此某些级可能不 需要计数器。
操作的另一种模式是调整早期计数寄存器的混合方式。如果与管线消耗相联 系的损失大于支线损失,则存在于管线所选择阶段的计数器可用于调整早期计数寄 存器。然而,如果消耗损失小于或等于支线损失,则管线中的指令允许委托,使早 期计数寄存器可依据其结构对应装载作调整。系统操作的选择取决于管线中终止的 发生处。在一种场合下,如查终止发生在EX3级或WB级,则具有执行级3的管线 可被消耗;但管线没有消耗,如果终止发生在EX3级前,则早期计数器可以调整。
图12是表示操作的混合模式的流程图。如图所示,如果终止(230)发生在第n 级前,则计数器可调整早期计数值(228)。然而,如果终止发生在第n级后,则管 线中的指令容许流动,通过管线并委托(232)。因而早期寄存器可以用其结构对应 装载(233)的数据来修改指令。变数n可以确定,容许指令通过管线流动的点,管 线所需的相当量的时间小于或等于支线损失。
图13表示在第一个n-1执行级具有计数器的混合电路。该电路容许管线执 行它随后终止的指令,如果指信已进入第n个级阶段。然而,如果指令没有进入第 n个执行级,则电路可以调整随后终止的早期计数寄存器。又,变数n可以确定容 话指令通过管线流动的点,管线所需的相当量的时间小于或等于支线损失。在其他 场合下,变数n可存在于早得多的管线中(例如支线损失较大处)。
另外的环路硬件,例如环路寄存器和环路缓存器,可使快速硬件环路简化。 如本文所述,环路硬件可提供若干优点。在某些实施例中,环路硬件可能潜伏支线 损失。另外,对于环路的每次重复来说,离开接近存贮器件(例如缓存器或SRAM) 的需要,环路硬件便可节省能耗。而且,环路硬件可离开调准的限制,可按其他方 式存在于可编程序的存贮器中。
再参考图1所示的可编程序的处理机2,它具有执行管一4和控制单元6。控 制单元可包括硬件环路单元8。
硬件环路单元8包括一组或多组串联的环路缓存器。另外,硬件环路单元可 包括一个或多个单指令环路寄存器。环路缓存器和/或环路寄存器的聚焦,总起来 说是环路硬件。这种聚焦可以简化快速硬件环路。
再参考图5所示方框图,它表示出硬件环路单元8与指令检出单元50和管线 10的译码单元52相连接的实施例。指令检出单元50可提供若干输入端之一到硬 件环路单元8。硬件环路单元8包括与环路硬件54连接的多路复用器56。环路硬 件54可含有一组或多组环路缓存器和/或一个或多个环路寄存器。而且,系列环路 缓存器可包括串联的确定数量的缓存器。每一系列环路缓存器可具有一个相连的环 路寄存器。
图14是表示硬件环路单元8具体设备的方块图。又,硬件环路单元8与指令 检出单元50和译码器(图中未出)连接。
硬件环路单元8包括与环路硬件相连接的多路复用器260。环路硬件包括串联 一起的一组环路缓存器271、272、273和274。这些缓存器可提供输入端到另一个 多路复用器。多路复用器260和280,依次可提供输入端到多路复用器290。多路 复用器290的输出端,与环路寄存器296相连,后者后过来与多路复用器260的输 入端相连。硬件环路单元8的输出端提供输入端到译码器。
多路复用器260具有多个输入端,这些输入端包括一个从寄存器来的输入端 (例如仿真指令寄存器)和一个从检出单元50来的输入端。另外,多路复用器260 具有一个从环路指令寄存器来的输入端和从一个或多个其他硬件环路单元来的输 入端。
图14实例表示了环路硬件,它包括四组密集的环路缓存器和单个指令寄存器。 然而,任一数量的缓存器和/或指令寄存器能用于其它的实施例中。
在典型的操作模式中,环路缓冲存贮以两种不同的方案实施。在一种方案中, 环路中的每一个指令适应环路缓存器。在另一种方案中,环路中的每一个指令不适 应环路缓存器。每种方案将依次讨论。
图15图示了一种方案。如图所示,4组密集的环路缓存器可以3-指令环路(12 -14)输入。这样,一个环路缓存器和E顶寄存器不能以任一数据输入。指令12~ 14可再三执行,直到环路的输出条件满足为止。如图所示,输出条件可检验每次 由环路缓存器所产生14个指令。
图16是表示一种方案的流程图。如图所示,指令可以产生(300),指令可输 入到一组环路缓存器(302),并且存贮器件可能出故障。存贮器出故障对DSP系统 使能耗节省。指令输入到一组缓存器(302)后,指令可以随后由一组缓存器(306) 产生。指令可以多次产生,直到环路的输出条件满足为止(308)。
图17是表示一种方案的另一个流程图。如图所示,指令可以产生(310),指 令可输入到一组环路缓存器(314),存贮器件可以出故障(316),且环路计数可预置 (312)。只要环路的输出条件不满足(318),则环路计数缩减(320),且指令可由一 组环路缓存器产生(322)。存贮器件可能出故障,直到环路计数达到一确定值X为 止(316)。况且,X可这样确定,以致当环路完成时于检出单元,在环路后的下一 个指令可瞬间准备。以这种方式,可以避免环路输出损失。
在其他的实施例中,环路计数预置到零(312),再调整(320)增量,环路计数 宁可如图17所示缩量。还有其他的主要设备根据图15~17变得明显。
图18是另一种方案图,如图所示,4组密集的环路缓存器可以用4个环路指 令输入(12~15)。另外,E顶寄存器可以用下一环路指令的地址输入。E顶可以是存 在于管线中的地址寄存器(参阅图2,37)。在随后的环路重复期间,指令12~15 可执行,而指令16检出。在指令15完成后,指令16立刻作执行准备。在环路重 复期间,可以核对输出条件。
图19是图18方案所示的流程图,如图所示,当首个子集指令发出时(332), 首个子集指令可输入到一组缓存器(330)。其次当第二个子集指令发出时(336),第 二个子集指令的起始地址可输入到寄存器(334)。在随后环路的重复期间(重复数数 据输出条件(338)确定,首个子集指令可由一组缓存器(340)产生,而第二个子集被 取出(342),然后第2个子集发出(344)。
依据图19的操作模式,可实现若干优点。例如,每次第一个子集由一组缓存 器产生,如存贮器件没有启动,可节省能耗。另外,当第一个子集发出时,取出第 二个子集可减少环路损失。在一个实施例中,环路缓存存贮器可具有至少相应于支 线损失的深度。因而,与取出第二个子集有关的损失,它可潜伏在第一子集指令发 出的后面。这可增加DSP系统的速度。然而,在另一个具体设备中,节能是更重要 的设计特点(例如,在电池供能器件中实施的电路),较深的缓存器更有用。
第一子集指令可以是满足一组环路缓存存贮器的许多指令。第二个子集指令 可以是下一个随后在缓存器中输入的环路中的指令。两选一,第二个子集可以是许 多指令,它们在缓存器中输入。
图20是表示上述方案更为一般的流程图。如图所示,第一子集指令可输入到 一组缓存器(350)并发出(352)。如果环路的所有指令满足环路缓存器(354),则存 贮器件可能出故障(355),并且指令可以由一组缓存器(356)连续发出,直到输出条 件满足为止(358)。
如果环路的所有指令不能满足环路缓存器(354),则第二个子集指令可能发出 (360),且这些指令的起始地起可输入到寄存器(362)。在环路随后的重复中(由输 出条件(364)所确定),第一子集指令可由一组缓存器(366)产生,而第二子集从存 贮器(368)取出,因而第二子集可以发出(370)。
在图18方案中,由E顶表明的地址的需要可以构成,每次有底匹配。以这种 方式,第一个子集指令可被发送,而取出第二个子集指令。
这时环路中的第一子集指令被发送,高速缓存器/存贮器可已被存取,校准的 缓存器预先准备好第二子集指令。该校准的缓存器可持有多重指令(取决于每个指 令的宽度)。如果第二子集包括许多指令,该许多指令可在准直的缓存器中排成行, 其第二子集的第一指令是与E顶寄存器相关连的指令。
操作进一步包括需要跟随与E顶相关的下一个指令,而与E顶相关的指令被发 送。例如,在一种操作模式中,与E顶相关的指令是64位指令。这样,64位指令 被发送,下一个64位指令被取出(通过存贮器的校准确定)。通过再三重复,DSP 系统能以快速而有效的方式发送指令。
实施硬件环路的现有技术的可编程序消息处理机系统,在操作模式上受到许 多限制,然而,十分需要提供具很少程序限制的硬件环路。在一种实施例中,依据 本发明系统,仅有一种程序限制。这简单的限制可以是,在环路底,系统不能有支 线。
快速硬件环路可能有环路缓存器要求无效的情况,这些情况可能包括环路缓 存器随有条件的支线增中而无效。因此,在一种操作模式中,如果环路中的第一n 指令之一是有条件的支线,一组环路缓存器可能无效。变数n可确定一组环路缓存 器的深度。
另一种环路缓存器可能需要无效的情况是,当接收到事件而环路缓存器输入 时。另外,环路缓存器可能需要无效紧随的是自改进的C_SYNC模式。因此,其他 的操作模式包括无效的环路缓存器,当这两种情况之一发生时。
零偏移环路引起附加的要求。这偏移与环路安装的指令及环路中第一或最后 一个指令两者之间的距离有关。在现有技术的系统中,偏移必须简化硬件环路的安 装或说明系统的程序例外性。然而,简化成零偏差环路,是非常有利的,因为它可 减少处理时间。
即使在实施早期寄存器和环路缓存器的系统中,零偏移提出了要求。例如在 上述系统中,根据早期寄存器写入(例如EX1)的时间,零偏移环路的第一指令可能 已处于AC。因此,即使环路输出DEC开始,甚至在E顶和E底写入前,电路能非常 好的顶匹配。
已设计检测和处理零偏移环路的操作和电路结构的特定模式。在一种操作模 式中,环路安装指令中的起始偏移(S-偏移)与检测零偏移的已知值相比。以这种方 式,简化了零偏移环路的早期检测。在一个特定的实施例中,S-偏移与4相比,该 4被看到是32毕特指令的4位。一旦检测,零偏移环路可以置位,甚至在早期寄 存器写入之前。
图21是一流程图,它表示检测零偏移环路的操作模式。如图所示,可以检测 环路安装指令(380)。因而S-偏移可以与一确定数(382)比较(该确定数相应于环路 安装指令的宽度)。以这种方式,零偏移环路可以检测,甚至在早期寄存器写入前。 如果检测零偏移环路(384),如上所述,则环路中下一个n指令可以发出,并输入 到环路缓存器(386)。
图22是表示操作模式的流程图,它用于检测和处理单指令零偏移环路的特种 场合。如图所示,环路安装指令可以译码(388)。如果检测为零偏移,(390),且起 始偏移等于终端偏移(392),则单指令环路可立刻实现(394)。当S-偏移等于环路 安装指令的宽度时,可以检测出零偏移。当s-偏移与e-偏移相同时,可以检测出 单指令环路。
特定硬件可以简化装置,并尽可能快地完成单指令环路。再参阅图14,环路 寄存器296可用于这特种场合。因此,以单指令输入环路硬件(例如环路寄存器 296),步骤(394)可以实现,并重复发出硬件环路单元8的指令,直至单指令环路 的输出条件满足为止。
单指令环路可以检测,在特种环路指令寄存器296中,持有译码指令即可实 现(图14)。另外,存贮器件可能不存取,和凡事往上对节能可能不顺利。而且, 因单指令环路可由环路指令寄存器296发出,故指令取出单元50可自由地取出下 一个指令(例如从高速缓存器中)。因此,当单指令环路完成时,下一个指令可能已 经在指令取出单元50中,导致零损失环路输出。
总之,零偏移硬件环路分为三种情况。在第一种情况中,零偏移单指令环路 经过环路指令寄存器立刻发出译码。在第二种情况中,零偏移n-指令环路可立刻 检测,并完全输入到n深环路组缓存器。第三种情况是,零偏移环路可立刻检测, 且环路的第一n指令输入到n-深环路组缓存器,故下一个指令可能与E顶寄存器 有关。
在一种实施例中,环路硬件如已描述的那样,可以管线来实施。这比在高速 缓存器实施,要有利得多。
在一种操作模式中,环路指令可贮存在环路硬件中,以致于指令排列成指令 边界。一旦在环路硬件中排列成指令边界,则当它们随后从环路硬件发出时,没有 排列成行的指令可能是必需的。
为使指令排列到指令边界,一组指令可以按执行的顺序输入到环路硬件,并 且下一个指令的地址可以贮存在地址寄存器中。另外,第二组指令可按执行的顺序, 输入到存贮器件中,以执行顺序将指令输入到环路硬件,可包括将n个顺序的指令 输入到n个缓存器,其中n为正整数。况且,这n个顺序的指令可以是任一顺序的 指令,包括环路的开头的n个指令或环路的最后n个指令。
在其它的实施例中(如图23A~23C所示),可以构成许多硬件环路单元。许多 硬件环路单元的任一输出端可以与一个或多个其他的硬件环路单元相应的输入端 相连。以这种方式,第二个硬件环路单元可能通过第一个硬件环路单元的输出端来 输入。再者,这还可节能,在此范围内,存贮器件不会起动、输入到第二个硬件环 路单元。
在某些情况下,许多环路单元可用作套式环路(或重合环路)。一个内部的硬 件环路单元可以持有一个或多个指令,排列成一个外部的硬件环路单元。而且,这 内部的硬件环路单元,可从外部的硬件环路单元把排列的指令输入到内部的硬件环 路单元的输入端。
在还有其他的实施例中,可实施独立的多个硬件环路单元。然而,如果2个 或多个独立的硬件环路单元用在同样的DSP系统,则应用受到限制。例如,当两个 环路具有同样的底指令时,环路中的一个可能被定作为外环路。在没有这种限制的 情况下,电路可能遭到两种底匹配,并且不清楚哪一个是需要递减的。
然而,另一种操作模式包括硬件环路的能源管理。当硬件环路启动时,E顶寄 存器可与PC相比,以说明每个顶匹配。同样,E底寄存器可与PC相比,以说明每 个底匹配。然而,当硬件环路截止时,比较电路中的任一开关纯粹是耗费能源。因 而,当硬件环路截止时,它可能是有助于截止底匹配和顶匹配比较电路。当硬件环 路截止时,通过选择到比较器的输入端,以截止比较器,则可保存能源。
图24是表示节能电路的典型的实施例。E顶寄存器400和E底寄存器402分别 提供一输入端到多路复用器404和406。多路复用器404和406的输出端可以是比 较器408和410的输入端口。到比较器408和410的其他输入端可来自多路复用器 412的输出端。多路复用器412的输入端可来自程序计数器414。并且环路截止信 号416来自控制单元。多路复用器404、406和412的排列是这样的,以改当硬件 环路截止时,多路复用器412的输出端不同于多路复用器404和406的输出端。这 能保证当硬件环路截止时,在比较器408或410中没有开关发生。
在一种实施例中,同样的环路截止信号416可发送到多路复用器404、406和 412。然而,一反转器(图中未示)在多路复用器412接收信号前可反转一比特。以 这种方法,当环路截止信号发送到电路时,多路复用器412的输出端不同于多路复 用器404和406。
图24也示出了用来增加E计寄存器418的一个典型电路。当环路通过时,多 路复用器420可缩减E计寄存器。然而,如果必须调整,则调整信号(例如克老勃 计数422)可相应地调整E计。一旦环路完成它最后的重复,则比较器424就可如此 明确地发送信号425。
图24也表示了底匹配和顶匹配如何检测。当比较器410检测时,程序计数器 412和E顶寄存器具有相同值,而顶匹配信号428可以发送。当比较器408检测时, 这程序计数器和E底寄存器具有相同值,而底匹配信号430可以发送。
最后,图24也表示了E顶寄存器432在管线中的实施。如文中所述,E顶可以 是一个地址寄存器,它持有下一个指令的地址,该指令跟随着输入到环路硬件(未 图示)的许多指令。
上文中描述了本发明的各种实施例。例如,描述了实施处理机的许多硬件环 路技术。处理机可以在各种系统中实施,包括通常用途的计算机系统、数字信息处 理系统、laptop计算机、个人数字助理(PDA)和蜂窝状电话。由于这个原因,上述 硬件环路的讨论可容易地用来增加信息处理速度而不致使功耗有明显的增加。在这 种系统中,处理机可以与存贮器件偶合,例如闪烁(FIASH)存贮器件或静态随机存 取存贮器(SRAM),它贮存一种操作系统和其他软件的应用。这些和其他具体设备均 在随后的权利要求范围内。
背景
高效检索全球专利

IPRDB是专利检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,专利查询、专利分析

电话:13651749426

侵权分析

IPRDB的侵权分析产品是IPRDB结合多位一线专利维权律师和专利侵权分析师的智慧,开发出来的一款特色产品,也是市面上唯一一款帮助企业研发人员、科研工作者、专利律师、专利分析师快速定位侵权分析的产品,极大的减少了用户重复工作量,提升工作效率,降低无效或侵权分析的准入门槛。

立即试用