Processor and method for delaying the processing of cache coherency
transactions during outstanding cache fills
    1.
    发明授权
    Processor and method for delaying the processing of cache coherency transactions during outstanding cache fills 失效
    用于在未完成的高速缓存填充期间延迟高速缓存一致性事务处理的处理器和方法

    公开(公告)号:US5404483A

    公开(公告)日:1995-04-04

    申请号:US902156

    申请日:1992-06-22

    摘要: A processor and method for delaying the processing of cache coherency transactions during outstanding cache fills in a multi-processor system using a shared memory. A first processor fetches data having a specified address by addressing a cache memory, and when the specified address is not in the cache, saving the specified address in a fill address memory, and sending a fill request to the shared memory. Before return of fill data, the first processor receives a cache coherency request including the specified address from a second processor requesting invalidation of an addressed block of data. The first processor responds by checking whether the fill address memory includes the specified address, and upon finding the specified address in the fill address memory, delaying execution of the cache coherency request until the fill data is returned, and when the fill data is returned, using the fill data without retaining a validated block of the fill data in the cache. In a preferred embodiment, the fill memory is a content-addressable memory including a plurality of entries, and each entry has a fill address, an ownership fill bit (OREAD), an ownership-read invalidate pending bit (OIP), and a read invalidate pending bit (RIP). The OIP or RIP bit is set when execution of a cache coherency request is delayed, and these bits are read upon completion of a fill to execute the delayed request.

    摘要翻译: 一种处理器和方法,用于在使用共享存储器的多处理器系统中的优先高速缓冲存储期间延迟高速缓存一致性事务的处理。 第一处理器通过寻址高速缓冲存储器来获取具有指定地址的数据,并且当指定的地址不在高速缓存中时,将指定的地址保存在填充地址存储器中,并且向共享存储器发送填充请求。 在返回填充数据之前,第一处理器从第二处理器接收包括指定地址的高速缓存一致性请求,请求无效地寻址数据块。 第一个处理器通过检查填充地址存储器是否包含指定的地址进行响应,并且在找到填充地址存储器中的指定地址时,延迟高速缓存一致性请求的执行,直到返回填充数据,并且当返回填充数据时, 使用填充数据,而不在缓存中保留填充数据的验证块。 在优选实施例中,填充存储器是包括多个条目的内容寻址存储器,并且每个条目具有填充地址,所有权填充位(OREAD),所有权读取无效等待位(OIP)和读取 使未决位(RIP)无效。 当执行高速缓存一致性请求被延迟时,OIP或RIP位被置位,并且在完成填充时读取这些位以执行延迟的请求。

    Ensuring write ordering under writeback cache error conditions
    2.
    发明授权
    Ensuring write ordering under writeback cache error conditions 失效
    确保在回写缓存错误条件下的写入顺序

    公开(公告)号:US5347648A

    公开(公告)日:1994-09-13

    申请号:US914777

    申请日:1992-07-15

    摘要: Writeback transactions from a processor and cache are fed to a main memory through a writeback queue, and non-writeback transactions from the processor and cache are fed to the main memory through a non-writeback queue. When a cache error is detected, an error transition mode (ETM) is entered that provides limited use of the data in the cache; a read or write request for data not owned in the cache is made to the main memory instead of the cache, even when the data is valid in the cache, although owned data is read from the cache. In ETM, when the processor makes a first write request to data not owned in the cache followed by a second write request to data owned in the cache, write data of the first write request is prevented from being received by the main memory after write data of the second request while permitting writeback of the data owned by the cache. Preferably this is done by sending the write requests from the processor through the non-writeback queue, and when a write request accesses data in a block of data owned by the cache, disowning the block of data in the cache and writing the disowned block of data back to the main memory.

    摘要翻译: 来自处理器和高速缓存的回写事务通过写回队列被馈送到主存储器,并且来自处理器和高速缓存的非回写事务通过非回写队列被馈送到主存储器。 当检测到高速缓存错误时,输入错误转换模式(ETM),其提供高速缓存中数据的有限使用; 尽管在高速缓存中读取所有的数据,但是即使数据在高速缓存中有效,对高速缓存中不拥有的数据的读取或写入请求也作为主存储器而不是高速缓存。 在ETM中,当处理器对高速缓存中不拥有的数据进行第一次写入请求,接着对高速缓存中拥有的数据进行第二次写入请求时,在写入数据后,防止第一个写请求的写入数据被主存储器接收 的第二个请求,同时允许回写高速缓存所拥有的数据。 优选地,这是通过从处理器通过非回写队列发送写请求来完成的,并且当写请求访问由高速缓存所拥有的数据块中的数据时,不知道高速缓存中的数据块并写入不存在的块 数据回到主内存。