具有外部存储器存取控制的处理系统的制作方法_3

文档序号:9200167阅读:来源:国知局
,其所需要的情境(context)切换少得多。因此可以使得总带宽最大化。
[0045]图4示出了在给定时间帧内处理器101在首先对外部存储器103进行存取并且随后对内部存储器102进行存取时的功率消耗的曲线图。迹线430代表给定时间处的可用能量供应;迹线431通常代表处理器101在对存储器102、103进行存取时的能量消耗。可以看出,在处理器101正对外部存储器103进行存取的时间期间(通常在432处表示),处理器101基本上消耗了所有可用能量供应。一旦处理器101停止对外部存储器103进行存取并且开始对内部存储器102进行存取时,处理器101所使用的功率就会降低。
[0046]可以看出,对外部存储器103的这种“突发”存取方法可能会给可用能量供应带来严重问题。因此,这种方法在许多时候是不利的。根据本发明的一个实施例,为了克服能量约束问题,处理器101在预定基础上分散外部存储器存取。所述分散可以在处理例程的编译之前或之后执行。此外,所述分散可以手动执行,或者如下面所描述的那样基本上自动执行。
[0047]图5示出了根据本发明的一个实施例的处理器101在执行处理例程时的存储器存取。根据所示实施例,基于连续外部存储器存取的预定数目来分散外部存储器存取。根据本发明的一个实施例,处理器101在预定数目的连续外部存储器存取之后暂时约束对存储器102、103 二者的存取。在某些实施例中,如果处理例程仅仅利用外部存储器103,则这可以包括暂停处理例程的执行。所述暂时的暂停在534处示出,此时处理器101不对内部或外部存储器102、103进行存取。在暂时存取约束之后,处理器101可以再次对外部存储器103进行存取,这通常在532处示出。所述暂时存取约束可以基于预定时间,或者它可以基于可用能量供应。举例来说,可以约束对外部存储器103的存取,直到能量供应上升到高于阈值为止。根据图5中所示的实施例,直到外部存储器存取完成之后,处理器101才对内部存储器102进行存取。
[0048]图6示出了根据本发明的另一个实施例的处理器101的存储器存取。根据图6中所示的实施例(即本发明的实施例),通过在预定数目的外部存储器存取和预定数目的内部存储器存取之后暂时中断对外部存储器的存取来分散外部存储器存取。使用100,000次总的存取的实例,其中的1,000次是外部存储器存取,外部存储器存取632被分组成对应于每1,000次内部存储器存取633的10次存取的单位。通过用内部存储器存取633分开外部存储器存取632,可以减少功率消耗中的尖峰。这是因为与对外部存储器103的存取相关联的较高功率消耗不会同时一起发生。相反,处理器101对内部存储器102进行存取所需的较低功率消耗提供对外部存储器103进行存取所需的高功率消耗的突变(break)。根据图6中所示的实施例,外部存储器存取基本上均匀地被内部存储器存取分开。但是在其他实施例中,所述分开不必是基本上均匀的。对应于这种算法的源代码可能看起来如下:
外部:
外部K)
内部i
内部1000
外部n
外部2(|
内部1(1(11
内部2_,后面以此类推
图7示出了在根据前面关于图6概述的方法分散外部存储器存取时的处理器101的能量消耗的曲线图。可以看出,当处理系统100对外部存储器103进行存取时(通常在点732处示出),处理器101的能量消耗出现尖峰。因此,基于连续外部存储器存取的预定数目来分散外部存储器存取会最小化能量消耗尖峰,从而允许处理器101在可用能量供应不超出阈值时对外部存储器103进行存取。因此,根据本发明的一个实施例,如果可用能量供应不超出阈值,则可以基于连续外部存储器存取的预定数目来分散外部存储器存取。根据本发明的另一个实施例,即使当可用能量供应确实超出阈值时,也可以基于连续外部存储器存取的预定数目来分散外部存储器存取。所述连续外部存储器存取的预定数目可以基于可用能量供应。
[0049]根据本发明的另一个实施例,不管可用能量供应如何,所述连续外部存储器存取的预定数目可以是基本上相同的。但是在该实施例中,所述预定数目应当被选择成使得处理器101即使在最小可用能量供应下也可以对预定数目的外部存储器位置进行存取。
[0050]图8示出了根据本发明的另一个实施例的存储器存取。根据图8中所示的实施例,外部存储器存取被分散得尽可能远。换句话说,对外部存储器的存取被分散成以使得连续外部存储器存取的数目被最小化。再次以100,000次存取为例,处理器101对于每十次内部存储器存取对外部存储器103存取一次。这样可以最小化由对外部存储器103进行存取而导致的能量尖峰。根据本发明的一个实施例,确定外部存储器存取的数目连同内部存储器存取的数目。利用这两个数目,可以根据执行处理例程所需的外部对内部存储器存取的比例,用内部存储器存取来中断外部存储器存取。因此,例如如果特定处理例程需要四次外部存储器存取和两次内部存储器存取,则外部对内部的比例将是2:1。因此,一次内部存储器存取将分开大约两次外部存储器存取。这种方法的一个缺陷在于,处理器101持续在内部和外部存储器102、103之间进行切换,即“情境切换”。这在某些实施例中可能会减小总带宽。因此,应当平衡降低的功率消耗和与干扰程序的顺序、线性性质相关联的情境切换成本。因此,根据某些实施例,使外部存储器存取分散得尽可能远可能并不是最有利的方法。对应于这种算法的源代码可以如下写出:
外部:
内部:
内部1(1
外部2
内部n
内部2(|
图9示出了在根据前面关于图8概述的方法当处理器101对外部存储器103和内部存储器102进行存取时该处理器101的功率消耗的曲线图。可以看出,功率消耗在点932处出现尖峰,此时处理器101对外部存储器103进行存取。但是在每一个点932处只有单个功率消耗尖峰,这是因为处理器101只对外部存储器103进行一次存取,并且随后在再次回到从外部存储器103存取信息之前中断对外部存储器103的存取。在某些实施例中,处理器101在对外部存储器103的存取被中断的时段期间对内部存储器102进行存取。在迹线930中可以看出,在单个基础上对外部存储器103进行存取对可用于处理系统100的其余部分的储备功率仅有最低限度的影响。因此,通过使外部存储器存取分开得尽可能远,可用于系统剩余部分的储备功率要多很多。从而处理器101就能够在严格的功率约束下操作,这是通过最小化与每次对外部存储器103进行大块存取(突发存取)相关联的功率尖峰而实现的。
[0051]根据一个实施例,前面概述的本发明提供一种用于执行处理例程的方法,其中所述处理例程的一部分被存储在外部存储器103中,并且所述处理例程的一部分被存储在内部存储器102中。因此,为了执行处理例程,处理器101需要对内部存储器102和外部存储器103 二者进行存取。所述方法通过根据外部存储器存取的预定数目分散对外部存
当前第3页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1