设置高速缓存线填充总线存取优先级的微处理器和方法技术

技术编号:2844345 阅读:234 留言:0更新日期:2012-04-11 18:40
本发明专利技术公开了一种设置高速缓存线填充总线存取优先级的微处理器和方法,其根据请求类型排列高速缓存线填充请求,而不是按程序顺序发出该请求。该请求是以主时钟频率在微处理器内部产生的,从总线上发出,主时钟频率为总线时钟频率的倍数。请求类型为阻塞类型和一个或多个非阻塞类型。阻塞请求初始分配比非阻塞请求高的优先级。每个总线时钟依次地选择最高优先级请求以在总线上发出,并递增未被选择的每个请求的优先级。如果不止一个请求为最高优先级,则以循环顺序选择最高优先级请求。如果发生影响其类型的事件,可改变该请求的优先级。

【技术实现步骤摘要】

本专利技术涉及微处理器中的高速缓存存储器,特别是涉及具有不同主时钟频率和总线时钟频率的微处理器中的高速缓存存储器。
技术介绍
当代的计算机系统通常包括微处理器。微处理器通过处理器总线与系统的其他组成部分连接并通信,如传送数据。通常,处理器总线工作在一个时钟频率上,且微处理器内部的电路工作在另一个更高的时钟频率上。通常将内部微处理器时钟频率称为主时钟频率。例如,处理器总线时钟频率为100MHz,而主时钟频率为1GHz。通常主时钟频率是总线时钟频率的倍数。在上面的例子中,倍数或时钟倍率为10。常见的倍数也可为分数,如15/2。不管它们的值如何,主时钟频率通常比总线时钟频率大一个数量级。该时钟倍率可在制造期间编程到微处理器中,或可以是可编程的。微处理器通常包括高速缓存存储器。高速缓存存储器是处理器中相对小的存储器,其存储的是系统存储器中的数据子集,以降低数据存取时间,因为访问高速缓存存储器要比访问系统存储器快得多。高速缓存存储器将数据存储在高速缓存线中。高速缓存线长度一般为32字节,且高速缓存线排列在高速缓存线大小的存储器地址边界上。当指令试图读或写数据时,微处理器首先在该高速缓存存储器中检查是否存在数据地址所指的高速缓存线。如果存在,指令从高速缓存存储器中读取数据,或将数据写入高速缓存存储器中。否则,高速缓存存储器在处理器总线上产生总线请求以从系统存储器中读取数据或将数据写入系统存储器中。尽管微处理器每个主时钟周期可内部地产生一个或多个总线请求,但微处理器每个总线时钟周期只能在外部处理器总线上发出一个总线请求。因此,在一个总线时钟周期期间,根据指令顺序和时钟倍率值,微处理器可内部地产生许多请求。但是,微处理器每个总线时钟周期只能在处理器总线上发出这许多总线请求中的一个。剩余的总线请求必须等到下一总线时钟周期时,微处理器才能发出另一请求。传统的方法按程序顺序,即按程序执行时微处理器产生请求的顺序在处理器总线上发出内部产生的请求。但是,传统方法不能识别程序产生总线请求的顺序与待处理请求的紧急顺序的不同。即对与一个总线请求有关的高速缓存存储器中遗漏的数据的需求比对与另一不同总线请求有关的高速缓存存储器中遗漏的数据的需求更紧急。因此,需要一种微处理器和方法,其利用主时钟与总线时钟频率之间的不同,以在次紧急总线请求之前发出更紧急的总线请求。
技术实现思路
本专利技术提供一种微处理器,其累积以主时钟频率产生的总线请求,并根据请求类型按优先顺序排列总线请求,以及在每个总线时钟发出最高优先级的请求。为保证较高优先级的总线请求不会无限期地延缓较低优先级的总线请求,每次选择过程中如果一待处理总线请求没有被选择为最高优先级,则增加其优先级,且以循环方式选择当前最高优先级的请求。最后,如果发生影响其类型的事件,可改变待处理总线请求的类型及其优先级。一方面,本专利技术提供一种微处理器,其与总线相连,以连接到系统存储器上。该总线以总线时钟频率工作。微处理器具有核心逻辑电路,其工作在主时钟频率。主时钟频率为总线时钟频率的倍数。微处理器包括数据高速缓存存储器,其以主时钟频率在总线上产生请求以从系统存储器中读取高速缓存线。每个请求含一个请求类型,其为多个预定请求类型之一。请求类型包括阻塞请求类型和至少一个非阻塞请求类型。微处理器还包括控制逻辑电路,其与数据高速缓存存储器相连,它以主时钟频率累积请求,并根据请求类型初始分配一优先级给每个累积的请求。控制逻辑电路还以总线时钟频率选择一最高优先级的请求以在总线上发出,并提高每个未被选择的累积请求的优先级。控制逻辑电路初始分配阻塞型请求的优先级为第一值,并分配非阻塞型请求的优先级为第二值,其中第一值的优先级比第二值高。另一方面,本专利技术为微处理器提供一种方法,以在连接微处理器与系统存储器的总线上从系统存储器请求高速缓存线。总线工作在总线时钟频率上,且微处理器的核心逻辑电路工作在主时钟频率上,主时钟频率为总线时钟频率的倍数。该方法包括以主时钟频率接收多个总线请求,并根据请求类型初始分配一优先级给其中的每个总线请求。该方法还包括以总线时钟频率选择多个请求中的一最高优先级的请求以在总线上发出,且提高其余每个请求的优先级。另一方面,本专利技术为微处理器提供一种方法,以在连接微处理器与系统存储器的总线上从系统存储器请求高速缓存线。总线工作在总线时钟频率上,且微处理器的核心逻辑电路工作在主时钟频率上,主时钟频率为总线时钟频率的倍数。该方法包括以主时钟频率接收多个总线请求,并根据请求类型初始分配一优先级给每个总线请求。该方法还包括以总线时钟频率确定多个请求是否不止一个请求为最高优先级。该方法还包括如果只有一个请求为最高优先级,则选择该最高优先级的请求以在总线上发出,并且如果不止一个请求为最高优先级,则以循环方式选择多个最高优先级请求中的一个以在总线上发出。本专利技术的优点是其利用核心逻辑电路和总线逻辑电路时钟频率的不同,通过将更紧急请求按优先顺序排列在次紧急请求之前以更有效使用处理器总线并降低存储器访问指令的每指令时钟数(CPI)来潜在提高性能。此外,通过按优先顺序排列整个总线时钟周期中累积的总线请求,本专利技术实现了更佳的按优先顺序排列。研究说明书和附图的其他部分之后,本专利技术的其他特性和优点将变得更明显。附图说明图1表示根据本专利技术的微处理器100的方框图;图2表示根据本专利技术图1的控制逻辑电路的方框图;图3表示根据本专利技术图1的微处理器操作流程图;图4至图6表示根据本专利技术图1的微处理器操作时序图。具体实施例方式现在参照图1,图1示出了根据本专利技术的微处理器100的方框图。微处理器100包括数据高速缓存存储器102。数据高速缓存存储器102接收微处理器100的主时钟信号112。主时钟信号112为驱动微处理器100的核心逻辑电路的时钟信号。微处理器100还接收总线时钟信号114。总线时钟信号114为与处理器总线118有关的时钟信号,其与微处理器100相连。处理器总线118将微处理器100连接到系统中的其他设备,如系统存储器和I/O设备。其他设备和微处理器100在处理器总线118上相互传送数据。主时钟信号112频率为总线时钟信号114频率的倍数。在一个实施例中,主时钟信号112频率为总线时钟信号114频率的7倍。但是,也可为其他倍数,且本专利技术不限制于特定倍数,此外,除整数倍数之外,主时钟信号112频率可为总线时钟信号114频率的分数倍数,如 数据高速缓存存储器102包括存储单元阵列,用于存储高速缓存线和与高速缓存线有关的高速缓存存储器标记状态。数据高速缓存存储器102从微处理器100内的不同功能单元接收传送数据给数据高速缓存存储器102的请求或从数据高速缓存存储器102传送数据的请求。数据传送请求包括存储器地址。如果数据高速缓存存储器102中存在包含存储器地址指定的数据的高速缓存线,则数据高速缓存存储器102将该数据发送给该请求功能单元或从该请求功能单元发送该数据。但是,如果数据高速缓存存储器102中不存在包含指定数据的高速缓存线,则数据高速缓存存储器102产生请求,以从系统存储器获得遗漏的高速缓存线。还将从系统存储器获得高速缓存线的请求称为高速缓存线填充或高速缓存线分配。在图1的实施例中,数据高速缓存存储器102产生四种类型的高速本文档来自技高网
...

【技术保护点】
一种微处理器,其与总线连接以与系统存储器连接,该总线工作在总线时钟频率,该微处理器具有工作在主时钟频率的核心逻辑电路,主时钟频率为总线时钟频率的数倍,包括:    数据高速缓存存储器,被配置为以主时钟频率在总线上产生请求,以从系统存储器读取高速缓存线,每个所述请求具有来自多个预定请求类型的请求类型,多个预定请求类型包括阻塞请求类型和至少一个非阻塞请求类型;    控制逻辑电路,其与所述数据高速缓存存储器连接,被配置为以主时钟频率累积所述请求并根据所述请求类型初始分配优先级给每个所述累积请求,以及被配置为以总线时钟频率选择最高优先级的所述请求以在总线上发出,以及提高每个所述未被选择的累积请求的所述优先级,其中所述控制逻辑电路被配置为将阻塞型请求的所述优先级初始分配为第一值,以及将非阻塞型请求的所述优先级分配为第二值,其中所述第一值的优先级比所述第二值高;以及,    总线接口单元,其与所述控制逻辑电路连接,被配置为从所述控制逻辑电路接收并在总线上发出所述所选择的最高优先级请求。

【技术特征摘要】
US 2005-9-13 11/225,8651.一种微处理器,其与总线连接以与系统存储器连接,该总线工作在总线时钟频率,该微处理器具有工作在主时钟频率的核心逻辑电路,主时钟频率为总线时钟频率的数倍,包括数据高速缓存存储器,被配置为以主时钟频率在总线上产生请求,以从系统存储器读取高速缓存线,每个所述请求具有来自多个预定请求类型的请求类型,多个预定请求类型包括阻塞请求类型和至少一个非阻塞请求类型;控制逻辑电路,其与所述数据高速缓存存储器连接,被配置为以主时钟频率累积所述请求并根据所述请求类型初始分配优先级给每个所述累积请求,以及被配置为以总线时钟频率选择最高优先级的所述请求以在总线上发出,以及提高每个所述未被选择的累积请求的所述优先级,其中所述控制逻辑电路被配置为将阻塞型请求的所述优先级初始分配为第一值,以及将非阻塞型请求的所述优先级分配为第二值,其中所述第一值的优先级比所述第二值高;以及,总线接口单元,其与所述控制逻辑电路连接,被配置为从所述控制逻辑电路接收并在总线上发出所述所选择的最高优先级请求。2.根据权利要求1的微处理器,其中,所述控制逻辑电路被配置为当不止一个所述累积请求为最高优先级时,则按循环顺序选择一个所述最高优先级累积请求,以在总线上发出。3.根据权利要求2的微处理器,其中所述请求累积在所述控制逻辑电路的请求队列中。4.根据权利要求3的微处理器,其中所述请求队列包括多个项,用于存储所述请求,该多个项中的每个项包括用于存储所述优先级的存储区。5.根据权利要求4的微处理器,其中所述控制逻辑电路包括循环指针,其指向该多个项中之一项,用于按循环顺序选择所述最高优先级累积请求之一,以在总线上发出。6.根据权利要求5的微处理器,其中所述控制逻辑电路每次从所述请求队列中删除所述累积请求中的一个时,更新所述循环指针。7.根据权利要求1的微处理器,其中所述控制逻辑电路还被配置为确定是否已发生将每个所述累积请求的所述请求类型改变为不同请求类型的事件,以及根据所述不同请求类型更新已发生影响所述请求类型的事件的每个所述累积请求的所述优先级。8.根据权利要求1的微处理器,其中所述至少一个非阻塞请求类型的请求包括在总线上将页表数据从系统存储器传送到微处理器的请求。9.根据权利要求8的微处理器,其中所述至少一个非阻塞请求类型的请求包括如下之一将与所述数据高速缓存存储器中的存储遗漏有关的高速缓存线从系统存储器传送到微处理器的请求,其中所述控制逻辑电路被配置为将请求传送页表数据的所述优先级初始分配为第二值,将请求传送与存储遗漏有关的高速缓存线的所述优先级分配为第三值,其中所述第二值的优先级比所述第三值的优先级高;从系统存储器预取高速缓存线到微处理器,其中所述控制逻辑电路被配置为将请求传送页表数据的所述优先级分配为第二值,将请求在总线上从系统存储器预取高速缓存线到微处理器的所述优先级分配为第三值,其中所述第二值的优先级比所述第三值的优先级高。10.根据权利要求1的微处理器,其中所述至少一个非阻塞请求类型的请求包括如下之一将与来自系统存储器的在所述数据高速缓存存储器中存储的遗漏有关的高速缓存线传送到微处理器的请求;从系统存储器预取高速缓存线到微处理器的请求。11.根据权利要求1的微处理器,其中所述阻塞请求类型与如下之一有关微处理器中由所述阻塞请求类型请求所指定的所需数据以进行的功能单元;导致微处理器中流水线暂停直到与所述阻塞请求类型请求有关的数据从系统存储器取到微处理器为止的操作所产生的请求。12.根据权利要求1的微处理器,其中所述至少一个非阻塞请求类型包括非阻塞页表途径请求类型。13.根据权利要求12的微处理器,其中所述非阻塞页表途径请求类型包括由于变换旁路缓冲器遗漏,在总线...

【专利技术属性】
技术研发人员:G格伦亨利罗德尼E胡克
申请(专利权)人:威盛电子股份有限公司
类型:发明
国别省市:71[中国|台湾]

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

1
相关领域技术
  • 暂无相关专利