早鸽—汇聚行业精英
  • 联系客服
  • 帮助中心
  • 投诉举报
  • 关注微信
400-006-1351
您的问题早鸽都有答案
3000+专业顾问
搜索
咨询

高速缓冲存储器的目录和控制装置制作方法

  • 专利名称
    高速缓冲存储器的目录和控制装置制作方法
  • 发明者
    戴维·贝德福德·约翰逊, 罗纳德·詹姆斯·埃伯索尔, 乔尔·C·黄, 曼弗雷德·诺伊格鲍尔, 史蒂文·雷·佩奇, 基思·塞尔夫
  • 公开日
    1988年2月10日
  • 申请日期
  • 优先权日
  • 申请人
    英特尔公司导出引文BiBTeX, EndNote, RefMan
  • 文档编号
  • 关键字
  • 权利要求
    1.供一个总线扩展部件(10)之用的一个系统,该总线扩展部件是数据处理系统的部件,在该数据处理系统中,第一处理机(14)和第二处理机(16)通过一个局部总线(18)连通多个接到一个或多个系统总线(20,22)的媒介,所述总线扩展部件(10)提供所述局部总线(18)和所述系统总线(20)之间的接口,所述总线扩展部件包括用于控制所述局部总线(18)的存取的局部总线控制逻辑(68),所述总线扩展部件包括用于控制所述系统总线(20)存取的系统总线控制逻辑(60),和一个高速缓冲存贮器(24)连到所述总线扩展部件(10)和所述局部总线(18),所述总线扩展部件中的控制逻辑,用以控制对所述高速缓冲存贮器的访问;所述控制逻辑包括一个高速缓冲存贮器的目录(62),用于存储数据阵列地址,所述高速缓冲存储器目录可形成多个通路(0,1,2,3),每一路包括标记和有效位存储器,以便于对所述数据阵列地址的所述目录进行相联检索;和第一装置(64)包括连到所述高速缓冲存储器目录(62)的第一组态装置(高速缓冲存贮器组态寄存器1-5位),用以将所述高速缓冲存贮器目录分成两个逻辑目录,一个目录用于控制来自所述第一处理机的请求,另一目录用于控制来自所述第二处理机的请求2.根据权利要求1所述的组合系统,特征在于还包括连接到所述局部总线控制逻辑电路(68)的一个预取缓冲器(63);和其中所述第一装置(64)包括连接到所述预取缓冲器的第一预取控制装置(预取控制寄存器2和3位),用以将所述预取缓冲器分成两个逻辑通道,第一通道用于操作与来自所述第一处理机的请求有关的预取,而第二通道用于操作与来自所述第二处理机的请求有关的预取3.根据权利要求2的系统,其特征在于所述第一装置(64)包括第二预取控制装置,该装置当所述第一预取控制装置(预取控制寄存器2和3位)被置位于允许所述预取时工作,以便一旦具备下列诸条件便触发预取一个现时存储器请求是一个n字可高速缓存的该请求,其中处理机指令取出和字符串两操作均使用n-字读存取,从特定存储器存储单元中待预取的下一顺序行不在所述高速缓冲存储器中,和所述待预取的下一顺序行是在与现用请求行相同的地址块中4.根据权利要求1的系统,特征在于其中所述第一装置(64)包括第二高速缓冲存储器的组态装置(高速缓冲存储器的组态寄存器0位),后者连接到所述高速缓冲存储器目录(62)用以确定每个地址块的行数;还包括第三高速缓冲存储器组态装置(高速缓冲存储器组态寄存器位11),该组态装置连到所述高速缓冲存储器目录(62),使所述高速缓冲存储器能操作5.根据权利要求1的系统,其特征在于还包括-连接到所述局部总线控制逻辑(68)上的一个预取缓冲器(63);和-其中所述第一装置(64)包括第一预取控制装置(预取控制寄存器的2和3位),后者连到所述预取缓冲器,其状态表示该预取缓冲器被断开,能传送顺序的I/O数据流,或用所述高速缓冲存储器操作6.根据权利要求4的系统,特征在于其中所述第一装置(64)包括第二预取控制装置,后者在所述第三预取控制装置(预取控制寄存器位11)被置位到允许所述高速缓冲存储器预取的条件下工作,以便一旦还满足下列诸条件便能发预取一个现时存储器请求是一个n字可高速缓存的读请求,其中处理机指令取出和字符串操作两者都使用n字读存取,从特定存储器存储单元中待预取的下一顺序行不在所述高速缓冲存储器中,而且所述待预取的下一顺序行是在与现用请求行相同的地址块中7.根据权利要求4的系统,特征在于其中所述连接所述高速缓冲存贮器目录(62)用以确定每个地址块行数的第二高速缓冲存贮器组态装置(高速缓冲存储器组态寄存器位0)包括用于使通用数据处理机(34,36)能利用多个为较大的数据存储器提供较大的数据目录和寻址而形成协调工作的总线扩展(B×U)装置,其中所述较大目录有一个增大了的集数,例如由n个B×U所管理的一个高速缓冲存贮器所具有的目录集数是用单个B×U工作时所构成目录集数的n倍;和用于为交错而组态所述高速缓冲存贮器的装置,其中交错系数被设置,例如当n路交错时则被设置等于n,所述系数总线地址空间被有效地划分为n分区,同时第一地址域规定第一分区,第二地址域规定第二分区……第n地址域规定第n分区;用于使所述局部总线控制逻辑能只在存取由局部总线地址识别装置识别并落在其规定的分区范围内时才响应的地址识别装置
  • 专利详情
  • 全文pdf
  • 权力要求
  • 说明书
  • 法律状态
专利名称:高速缓冲存储器的目录和控制装置的制作方法本发明涉及数据处理系统,特别涉及用于控制高速缓冲存储器的一种目录,该高速缓冲存储器为频繁存取的存储器的存储单元提供局部存贮器。高速缓冲存储器是一种速度相当高的小型的局部存储器,用它来为频繁存取容量较大速度较慢的主存贮器的存储单元提供局部存储器。通过局部贮存该信息或该信息的拷贝,高速缓冲存储器能截取存贮器访问并直接对其进行处理而不需将该请求传送到系统总线上的主存储器。其结果是减小了存储器总线上的通信量并缩短了在局部总线上请求处理机的等待时间。在一个多道处理系统中,若使用高速缓冲存储器,则由于降低了每个处理机对系统总线带宽的需要量提高了潜在的系统性能,因而使该系统能用更多的处理机。具有一台高速缓冲存贮器和由若干台处理机共享的高速缓冲存贮器的目录是有利的。在超大规模集成电路(VLSI)系统中能将所述高速缓冲存贮器配置成使其能依据该系统的组态而操纵一台、两台或多台处理机也是有利的。因此,本发明的一个目的是提供一种高速缓冲存储器的目录和控制装置,所述目录能被分为两个或更多个逻辑目录,以便控制来自两台或更多台处理机的请求。本发明的另一目的是提供一种预取缓冲器和该预取缓冲器的控制装置,后者使该缓冲器能被分为两个或更多个逻辑通道,以便操纵与来自两个或更多处理机的请求有关的高速缓冲存贮器的预取。简短地说,根据本发明的上述目的是这样来实现的,即通过提供一种能被组态成多通路的高速缓冲存贮器的目录,每路包括用于相联检索高速缓冲存储器数据组地址目录的标记和有效位存储器。一个高速缓冲存储器的组态寄存器将所述高速缓冲存储器目录分成两个或更多个能控制来自两台或更多台处理机请求的逻辑目录。与一个预取缓冲器一起还装备有一个预取控制寄存器,后者将所述预取缓冲器分成两个或更多个逻辑通道。所述逻辑通道操纵与来自两台或更多台处理机请求有关的高速缓冲存储器的预取。本发明的优点在于单个高速缓冲存储器目录和控制装置可被两台或更多台处理机所共享,且能按照该系统中现有处理机数目进行组态。从以下对如附图所示的本发明的最佳实施例的更具体的说照中将更清楚地了解本发明,附图中图1是包含本发明的一个双机系统总线的多道处理系统的一个方块图;图2是包含本发明的一个总线扩展部件的方块图;
图3是图2的高速缓冲存储器目录的方块图;
图4是图2所示I/O预取逻辑的一个更详尽的方块图;和图5是典型高速缓冲存储器的填充操作的一个时间分配图。
现参照图1说明实现本发明的最好方式。图1是一个双机系统总线的多道处理系统的方块图。总线扩展部件(10,12,30,32)被连接到双机系统总线(20,22)和局部总线(18,38)。局部总线提供至通道处理机(14,16)和通用数据处理机(34,36)的接口。局部总线在该总线扩展部件(BXU)侧是受局部总线控制逻辑控制的。该控制逻辑提供地址识别装置以支持多存储器地址域。该控制逻辑还支持多总线扩展部件之间的协调,以提供多总线(20,22)的有效操作。
参照图2,这是图1所示总线扩展部件(10)的方块图。总线扩展部件(10)通过系统总线控制逻辑线路(60)被连到系统总线(20)和通过局部总线控制逻辑(68)连到局部总线(18)。美国专利4,315,308;4,480,307和4,473,880对该系统总线(20)作了更全面地描述,这三个专利都已转让给莫特尔公司。该系统总线控制逻辑(60)包括用于判优流水线监视、地址识别和总线通信的逻辑,(正如上述各专利中所描述的那样)。当请求和应答信号在系统总线和BXU的内部逻辑之间传送时,系统总线控制逻辑(60)为保持这些信号而提供缓冲作用。系统总线控制逻辑(60)装备有6个缓冲器,每个缓冲器能保持一个完整的总线信息包。其中三个缓冲器被指定用于输出请求,另三个用于输入请求。为操作输入/输出传送信息流而设置有两个预取通道。每个通道提供两个16-字节缓冲器。当该通道处理机向诸缓冲器要求数据时,BXU则自动地预取下一数据块。这为显着提高I/O性能方面提供了保证,因为通道处理机向预取缓冲器请求数据便立即被处理。
图1的通道处理机(14,16)是为控制接到I/O总线(46,48)上的诸装置间的来回数据传送而设置的。
存储器控制部件存储器控制部件(50,52)是为控制接到存储器总线(54,56)上的诸存储器阵列的来回数据传送而设置。
高速缓冲存贮器的目录和控制逻辑更详细地示图3的图2BXU中的高速缓冲存储器目录(62)和控制装置(64)控制高速缓冲存储器(24),存储器(24)可在BXU之外,也可与BXU置于同一芯片上。外部高速缓冲存储器的优点在于可支持容量更大的高速缓冲存储器。
与高速缓冲存储器有关的目录和控制逻辑包括高速缓冲存储器的相关算法,该算法保证了即使在有多台处理机,每台处理机带有自己的高速缓冲存储器,各处理机共享同一数据结构的情况下,处理机的请求也总是得到正确的应答处理。
参考图3。目录(62)的功能是存储对应于存储在高速缓冲存储器(24)中数据的地址。该目录可被具体化为一个或多个通路。在图3中,该目录具体化为4个通路(0,1,2,3)。行是在高速缓冲存储器和主存储器间所传送数据的基本单位。它由数据的16个字节组成。一行也称为一个传送块。当相应于一个特定地址的数据存储在所述高速缓冲存储器里时,所述高速缓冲存储器能提供该数据,从而避免了主存储器的存取。这就叫做“高速缓冲存储器的命中”。命中还是丢失的判断是以每行为基础来确定的。一个地址是高速缓冲存储器寻址的基本单位。每个地址块描述邻接的八或四个数据行的物理地址。
在一个地址块内存在一个与各行有关的有效位。当该行存在于高速缓冲存储器内,则接通该有效位。保持在该高速缓冲存储器目录中的地址信息称之为标识符。由于许多地址划为一个地址块,故用标识符信息去识别与一个地址块现时有关的确切的存储器存储单元。当一个地址块的标识符与总线地址相对应并在所期望行的有效位接通时,便出现命中。
每条通路提供用于标识符和有效位的存储器。正如图3所示,在多通路情况下,在所述各通路中的总线地址和标记字段间的比较电路(70-76)中,同时进行多道比较,以判定该数据是否在高速缓冲存储器的数据组内。一集是由来自各路的地址块所组成的地址块之集合。当局部总线地址的一部分通过译码器变换为某集地址时,则同时地对一集内的所有地址块进行选择。图3的目录为64集而设。
当一个新的数据块需要引入所述高速缓冲存储器时,则可能必须移去一个已在该高速缓冲存储器内的旧的数据块,以便为该新数据让出位置。当一个地址块需要新地址时,用于确定哪路获得替换的定序是随机的。
当将一项事务写在局部总线上而涉及某地址不在高速缓冲存储器内(高速缓存丢失)时,则不致力于将其相应数据存入高速缓冲存储器。但是,当要写在局部总线上的事务包含一个高速缓冲存贮器内的地址(高速缓存命中)时,则所述目录采用一种写完的策略(a write-through policy)。这意味着导致高速缓存命中的局部总线的写入数据被写入该高速缓冲存储器及主存储器。这确保了主存储器总是保持对所有数据存储单元的有效拷贝。
高速缓冲存储器的组态寄存器高速缓冲存储器的组态寄存器位于图2的高速缓冲存贮器组态和控制逻辑(64)内,并表示如下高速缓冲存贮器组态寄存器
该高速缓冲存贮器的组态寄存器包括确定每个地址块的行数的比特,高速缓存目录中的路数的比特,诊断比特,定时比特和允许高速缓冲存贮器操作的一个允许一高速缓存位。
若一个通用数据处理机(GDP),(如图1所示)利用多重BXU,可以使这些BXU组态成协调工作,以便为一个较大的数据存储器提供一个较大的目录和寻址技术。所述各BXU作为一个单逻辑部件一起工作。实质上,这个较大的目录具有一个增大了的集数。这样,由两个BXU操纵的一个高速缓冲存贮器将具有包括128集(而不是64集)的一个目录。为使多个BXU一起作用,必须将所述高速缓冲存储器安排成交错存取。BXU的个数必须同交错因子相同。如果不存在交错存取,则所述高速缓冲存储器必须由单个总线扩展部件来控制。交错存取是通过系统总线控制逻辑(60)中的所述比较寄存器的交错控制位来建立的,并如下所示系统(AP)总线屏蔽和比较寄存器
存储地址识别系统总线控制逻辑(60)包括一个地址识别装置。其目的是要把地址空间分为一个局部总线地址空间和一个系统总线地址空间。该逻辑不修改转到局部总线和基准地址。该地址识别装置用来比较所有落在较高地址空间16M字节以下的请求数据包的地址。
该地址识别装置包括两个寄存器,即比较寄存器和屏蔽寄存器(上面已说明)。它们共同限定从一根总线到另一根的窗口映象存储器(window mapping memory)。所述比较寄存器确定局部总线地址空间在系统总线的总地址空间中的开始位置的基地址,而屏蔽寄存器确定系统总线上现有多少地址空间被映射到局部总线(“长度”)。
所述屏蔽寄存器被用来屏蔽掉在局部总线地址空间中选择存储单元的地址位。映射到相对总线的地址空间的长度确定了屏蔽寄存器中低位零的数目。就是说,为识别用以转移到相对总线的两个无(NO)字节,屏蔽寄存器的N个低位比特必须用零填充。从N至31的高位必须用1填充。映象窗域的长度从256K字节至全地址空间(4G字节)。
比较寄存器是用于选择局部总线的地址空间在AP总线地址空间中所处的位置。比较寄存器的N个低位比特因被屏蔽寄存器屏蔽,故是无用的。这表明必须将所述相对总线地址空间调整到所识别的域的整数倍。
总线交错系统总线控制逻辑(60)支持用于输入存储访问的交错。这称之谓模块交错。交错包括对以16字节为单位的不连接的16字节界的传输请求。所述交错可以为一路(无交错),两路,或四路交错。一路交错意味着由系统总线控制逻辑(60)的存储地址识别装置器识别的每个请求是由总线扩展部件(BXU)处理的。两路交错时,所述系统总线地址空间被有效地分为两部分;地址0-15,32-47,…规定为第一部分,而地址16-31,48-63,…规定为第二部分。只有当存取是由局部总线地址识别装置识别,而且落在其规定的部分内时,BXU才能应答。四路交错功能象两路时一样,只是其有四个部分,其第一部分包括0-15,64-77,等等。
在任何情况下,地址被传送到局部总线前,BXU是不修改该地址的。交错功能是由比较和屏蔽寄存器中的交错控制位控制的。
地址识别装置一个实际的地址识别寄存装置包括一对比较/屏蔽寄存器。比较寄存器和AP总线地址两者都为屏蔽寄存器所屏蔽,而且屏蔽的结果再进行比较,以判断该存取是否被识别。通常,屏蔽和比较寄存器的识别字段确定所述映象窗的存储单元。这些字段就是通常在讨论地址识别装置时所涉及的字段。比较/屏蔽寄存器字段定义识别在屏蔽寄存器中,在所设置的识别字段中的每一位会使相应的AP总线地址位去与相应的比较寄存器位进行比较。如果某比特被清零,则该比特位置在地址识别期间是“不必关心”的。
在比较寄存器中,识别字段中的每一位将相对于AP总线地址循环中的AP总线地址的对应位进行比较,这些位(比特)提供一个由这个地址识别装置识别的存储部分的地址。
交错控制这两个字段确定所述交错因子和并作为与所述系统总线控制逻辑(60)中的识别装置的比较。下表表示这些位的不同配置的效果。
屏蔽位 比较位 为比较所需的AD5,AD400 XX XX(无交错)01 X0 X0(2路)01 X1 X110禁用 XX XX11 00 00(4路)11 01 0111 10 1011 11 11
允许1=允许对屏蔽和比较寄存器的设置。
0=禁止这个识别符。
局部总线控制逻辑局部总线控制逻辑线路(6B)有四个存储器地址识别装置和下列控制寄存器。
局部总线控制寄存器
交错屏蔽/比较。这两个字段确定交错因子并与高速缓冲存储器控制逻辑(64)和在局部总线控制逻辑中已允许交错的存储器地址识别装置进行比较。
BXU方式0=存储器方式。
1=处理机方式。
禁止启动RAM0=关断INIT RAM存储器识别装置1=接通INIT RAM存储器识别装置判断主人1=主人0=租赁人判断允许操作1=BXU将驱动和监视作为主人或租赁人的判断行。
0=BXU将忽略该判断行。
局部总线屏蔽和比较寄存器
功能
00=这组寄存器被禁止。
01=这组寄存器已允许总线恢复并使用局部总线控制寄存器中的交错组态比特而使高速缓存成为可能。交错是通过所述局部总线控制寄存器来控制的。
识别屏蔽寄存器中这一字段的每一位被置1就会引起相应的局部总线地址位同相应的比较寄存器位进行比较。
在比较寄存器中这一字段的每一位将与相应的局部总线地址位相比较。这些比特为由该地址识别装置识别的存储器部分提供一个基地址。
高速缓冲存储器的禁止1=那些命中这个识别器的请求将不被高速缓存。
0=那些命中这个识别器的请求,在其他控制比特被适当设置条件下将被高速缓存。
高速缓冲存储器的预取高速缓冲存储器的预取算法是为BXU所利用,以便在不大量增加总线的处理机应用的情况下,提高处理机性能。若现时请求是读可高速缓存的4个字时,则预取被触发,下一顺序行不在所述高速缓冲存储器内,而是在与现时所请求的行的同一地址块内。在本发明的本实施例中,处理机指令的取和字符串操作两者都使用4-字读存取。4字读存取是这样一种存取方式,即它具有继之以利用主存储器的下一存储单元的高概率。当然,本发明可在使用非4字存取,就是说使用N-字取存的系统中实施,只要该N-字存取方式对继之以利用主存储器的下一存储单元具有高的概率。
被预取的行是下一顺序行。若总线扩展部件是交错的,则现时请求将被一个总线扩展部件所操纵,同时预取将由另一个BXU完成。当数据被预取时,4个字被引入BXU。该数据被内部保存,不被写到高速缓冲存储器去。若对此存储单元产生连续请求,则将作为高速缓冲存储器的丢失来处理,而不产生总线请求。所述高速缓冲存储器将立即被来自BXU的内部缓冲器的数据所填充,而不向主存储器提出请求。
BXU内有两条预取通道。若两条通道都是允许的,则每一通道将被指配给一台特定的处理机。这两个通道是完全独立的。某一预取通道内的状态,或数据决不会为另一处理机或预取通道的动作所改变。
所述目录和控制逻辑确保了高速缓冲存储器的数据和高速缓冲存储器的预取数据将与主存储器内最新的数据相一致,即使在多个高速缓冲存储器情况下也如此。这是通过更新策略来实现的,该策略要求在数据被写入高速缓冲存储器时,也要全部写到主存储器去。其次,就现时处于高速缓冲存储器中的这些存储单元的变化监视系统总线(20)。
该写完更新策略确保了主存储器总是具有全部数据的最新拷贝。也就是说,一个总线扩展部件(BXU)的高速缓冲存储器决不是保持该唯一的有效数据拷贝。总是保证任何允许流向主存储器去的存取以得到数据项的最新拷贝。在没有发出AP总线上的写请求从而更新主存储器的情况下,不能进行对高速缓冲存储器的更新。
与上述相关的装置监控所有总线请求。当该装置探测到一个来自另一BXU的写请求,或其本身的一个不可高速缓冲存储的写请求时,则此请求的地址被馈入所述高速缓冲存储器的目录。如果出现高速缓冲存储命中,则相应于该命中的行被标以无效标记。所述相关装置可应用于高速缓冲存储器目录及其预取目录。
高速缓冲存储器的填充顺序。当处理机发出一个可高速缓存的读请求而导致高速缓冲存储丢失时,BXU必须首先预取所述丢失中的高速缓冲存储器的存储行,然后返回所述处理机的数据请求。图5的时序表示执行这个填充操作的信号顺序。
当探测上述丢失时,BXU在AP总线上要产生适当的16字节请求。这个请求将总是按16字节界对准。当数据从系统总线返回时,BXU以字地址0开始,将数据写入高速缓冲存储器。
预取。现参考图4,该图是图2的I/O预取逻辑(63)的一个方框图,该预取逻辑线路包括I/O预取控制寄存器(80)*和I/O预取缓冲器(82,84,86,88)*。
设置了两个I/O预取通道,通道0和通道1。每个通道有两个由4个字(16字节)构成的输入缓冲器。每个存储字还包括一个标记位以使标记信息被正确地缓冲。当向这些缓冲器请求数据时,则自动地预取下一数据块并装入空缓冲器。所述线路利用上述标号专利中所描述的三深度系统总线流水线(three-deep system bus pipeline),以便当缓冲器由于系统总线通信量的瞬时波动而赶不上需要时,迅速填充这些缓冲器。
为确定所提出的请求的类型,利用接口控制装置(90)的预取引线(PR#)连同可高速缓存(CT)信号和写/读(WR)信号。下表表示对所有不同请求类型的定义Pr# CT WR 在Ta循环期间的值0 0 0=用预取通道0的读0 0 1=对预取通道0的启动命令0 1 0=用预取通道1的读0 1 1=预取通道1的启动命令1 0 0=不可高速缓存的读出1 0 1=不可高速缓存的写1 1 0=可高速缓存的读1 1 1=可高速缓存的写当预取引线(Pr#)为高电位(1)时,现行周期为一个正常的局部总线周期。当预取引线为低电位(0)时,则现行周期是一个I/O预取周期,在此期间,利用可高速缓存(CT)引线去选择两个I/O预取通道之一。
接口控制装置(90)受两个专用命令(即启动通道0命令和启动通道1命令)的控制。
预取控制寄存器(80)的格式表示如下预取控制寄存器
如下所述预取控制寄存器的四位是由组态控制电路(92)来译码的。每当执行一个启动通道0输入/输出预取命令,I/O通道0的操作位通过置操作行(91)*被自动置位而且组态比特(93)为置预取装置(prefetcher)于I/O方式(组态位=01)而被置位。当组态位为置预取装置于高速缓存方式组态位=10或11)而被置位时,则I/O通道0的操作位总是被置1。由于I/O通道0操作位置1,则只要组态位被置位于I/O方式(组态位=01),通道0就处操作状态。通道0将自动地监视用于地址比较的局部总线通信量和进行相关的预取操作。
I/O通道1操作位与I/O通道0的操作位的类似之点在于每当执行启动通道1的I/O预取命令,它便经由置位操作行(91)自动地置位而且组态位被置于I/O方式(组态位=01)。
下面描述对组态位(93)的译码。若组态位被置位于00,则预取装置(prefetcher)被断开。若组态位置位于01,则就要执行I/O预取操作同时预取通道0和1两者都可用于传送顺序的I/O数据流。
若组态位置位于10,则形成一通道型高速缓冲存储器的预取操作。通道0可供高速缓冲存储器使用,而通道1被禁用。
若构型位置位于11,则形成两通道型高速缓冲存储器预取操作。通道0和通道1两者均可供高速缓冲存储器使用。通道0将总是用于与来自处理机0的请求有关的高速缓冲存储器的预取操作,而通道1将用于与来自处理机1的请求有关的高速缓冲存储器的预取操作。拥有所述请求的处理机是通过监测局部总线判优线路来确定的。
启动命令。必须先发一个启动命令才能使用一个预取通道。写到预取通道之一的启动命令被限定为一个字或不到一个字。所述写请求的地址是所述预取通道的起始地址。根据所述启动命令,预取控制逻辑执行下列操作。首先它经由标记线(96)或标记线(94)将该指定通道中的两个预取缓冲器标以空载记号。然后,预取控制逻辑计算“我的起始地址”。若这个BXU欲要包含在数据传送过程中,则在预取控制寄存器(80)中设置相称的I/O通道操作位。若这个BXU被包含在数据传送过程中,则所述BXU中的控制逻辑(90)将发出两个对AP总线的预取请求(98)。该请求将用来填充缓存在有关通道内的该32字节的数据。当所有其他BXUs已完成上面所列操作时,BXU就要回答所述启动命令。SS忙#这一行为在BXU至BXU之间进行通信而被监视。当SS忙#进一行被认定时,则所有的BXU中的预取请求将已被启动。
启动命令与预取引线(PR#)的组合消除了所有失时效的数据。启动命邻清除可能在先前的I/O预取排序期间已被预取的任何可能的失时效数据。预取信号(PR#)保证了唯有现用该预取通道的软件会接收来自预取缓冲器的数据。除预取信号(PR#)被认定之外,即使一请求为访问已经在I/O预取缓冲器内的存储单元,BXU也要为所述数据转向存储。
典型的I/O预取操作。必须将预取控制寄存器(80)中的组态位(2和3位)置位于01,才能开始I/O预取操作。
起动。若预取装置的通道未被静态地指定,则软件或微代码必须将一个通道指配为某种特定的数据传送。然后,向该I/O预取通道发出起动命令。这必须包括一个使用待预取首字节的地址而认定的预取引线(PR#)的写请求(WR)。
数据传送。为使数据传送请求成为通过由预取装置应答的一个有效请求,则必须满足下列准则。它必须是一个标准的读请求。该数据请求的长度必须是字节,双字节,字或多字,而其地址必须被在局部总线地址识别装置之一中被识别。所述请求还必须获得预取信号(PR#)的低电位而且必须具有到达正确预取通道的准确时间(CT)信号点。
通常,被请求的数据将总是存在于I/O预取通道数据缓存器中,在此情况下,预取装置将立即使该数据返回。如果该数据不在缓冲器内,则所述请求将一直保持到当所述缓冲器先被首次腾空时较早发出的AP总线请求(98)填充所述缓冲器时为止。
当接收到一个数据缓冲请求时,控制逻辑装置(90)利用字和长度(size)地址行及字节允许行(未示出)去确定应该使用现时预取缓冲器中的那些字节。
当读出缓冲器中的最后字节时,预取装置(63)计算待预取的下一16-字节块的地址并发出一个AP总线读请求(98)。随该处理机的预取请求所发出的地址供这一计算使用,同时由局部总线接口在局部总线控制逻辑线路(68)所确定的现时交错因子供这个地址域使用。在AP总线上所发的地址被保证在LBI存储器识别窗口的范围内,因为地址增量只通过LAD比特17而存储器识别装置只检查比特18至31。
虽然本发明已参照其最佳实施例作了具体图示和描述,但不用说,本领域的技术人员可能作出未脱离本发明范围的形式和细节方面的前述和其他改型。


控制对一个高速缓冲存贮器访问的控制逻辑(24)包括一个高速缓冲存贮器目录(62),该目录形成多路,每路包括标识符和有效位存贮器,以便为高速缓冲存贮器数据阵列地址相联地检索该目录(62)。一个高速缓冲存贮器组态寄存器和控制逻辑(64)将高速缓冲存贮器目录(62)分为两个逻辑目录,一个目录用于控制来自第一处理机的请求,另一目录用于控制来自第二处理机的请求。提供有预取缓冲器(63),预取控制寄存器用于将该预取缓冲器分为两个逻辑通道,第一通道用于操纵与来自第一处理机的请求有关的预取,而第二通道用于操纵与来自第二处理机请求有关的预取。



查看更多专利详情

下载专利文献

下载专利

同类推荐