Conversion of internal processor register commands to I/O space addresses
    1.
    发明授权
    Conversion of internal processor register commands to I/O space addresses 失效
    将内部处理器寄存器命令转换为I / O空间地址

    公开(公告)号:US5481689A

    公开(公告)日:1996-01-02

    申请号:US106317

    申请日:1993-08-13

    摘要: A pipelined CPU executing instructions of variable length, and referencing memory using various data widths. Macroinstruction pipelining is employed (instead of microinstruction pipelining), with queuing between units of the CPU to allow flexibility in instruction execution times. A wide bandwidth is available for memory access; fetching 64-bit data blocks on each cycle. Internal processor registers are accessed with short (byte width) addresses instead of full physical addresses as used for memory and I/O references, but off-chip processor registers are memory-mapped and accessed by the same busses using the same controls as the memory and I/O.

    摘要翻译: 执行可变长度指令的流水线CPU,并使用各种数据宽度引用存储器。 使用宏指令流水线(而不是微指令流水线),在CPU的单元之间排队,以允许指令执行时间的灵活性。 宽带宽可用于存储器访问; 在每个周期获取64位数据块。 使用短(字节宽度)地址访问内部处理器寄存器,而不是用于存储器和I / O引用的完整物理地址,但片外处理器寄存器由同一总线使用与内存相同的控制器进行存储器映射和访问 和I / O。

    Method and apparatus for filtering invalidate requests
    2.
    发明授权
    Method and apparatus for filtering invalidate requests 失效
    用于过滤无效请求的方法和装置

    公开(公告)号:US5058006A

    公开(公告)日:1991-10-15

    申请号:US212416

    申请日:1988-06-27

    CPC分类号: G06F12/0808

    摘要: An apparatus which filters the number of invalidates to be propagated onto a private processor bus is provided. This is desirable so that the processor bus is not overloaded with invalidate requests. The present invention describes a method of filtering the number of invalidates to be propagated to each processor. A memory interface filters the invalidates by using a second private bus, the invalidate bus, which communicates with the cache controller. The cache controller can tell the memory interface whether data corresponding to the address on the invalidate bus is resident in the private cache memory of that processor. In this way, the memory interface only has to request the private processor bus when necessary, in order to perform the invalidate.

    Processor and method for delaying the processing of cache coherency
transactions during outstanding cache fills
    3.
    发明授权
    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位被置位,并且在完成填充时读取这些位以执行延迟的请求。

    Method and apparatus for ordering read and write operations using
conflict bits in a write queue
    5.
    发明授权
    Method and apparatus for ordering read and write operations using conflict bits in a write queue 失效
    用于使用写队列中的冲突位来排序读写操作的方法和装置

    公开(公告)号:US5432918A

    公开(公告)日:1995-07-11

    申请号:US901646

    申请日:1992-06-22

    申请人: Rebecca L. Stamm

    发明人: Rebecca L. Stamm

    摘要: A method and apparatus for controlling memory access operations of a pipelined processor using a "write queue" are described. The write queue temporarily stores addresses of writes not yet made in memory. Each write queue entry includes a write-read conflict bit. When an entry is first put into the write queue, the write-read conflict bit is cleared. When a subsequent memory read request occurs, the address of the read request is compared to the addresses stored in the write queue. If there is a match, the write-read conflict bit in the matching entry is set. If after this comparison no conflict bits are set, the read is allowed to proceed to memory before the queued writes. On the other hand, if any conflict bits are set, the read is prevented from proceeding. The conflict bits are cleared as the queued writes are performed in memory. Also, the write queue is able to accept additional entries while a read request is stalled. In a preferred arrangement, data-stream reads (D-reads) are given priority over instruction-stream reads (I-reads), and separate conflict bits are used to indicate D-read conflicts and I-read conflicts. In this fashion, the fetching of data and the fetching of instructions are stalled and resumed independently when conflicts arise.

    摘要翻译: 描述了使用“写入队列”来控制流水线处理器的存储器访问操作的方法和装置。 写入队列临时存储尚未在存储器中进行的写入地址。 每个写入队列条目包括写入读取冲突位。 当条目首次放入写入队列时,读取清除冲突位被清除。 当发生随后的存储器读取请求时,将读取请求的地址与存储在写入队列中的地址进行比较。 如果存在匹配项,则匹配条目中的读 - 读冲突位置1。 如果在此比较后没有设置冲突位,则允许读取在排队写入之前进入存储器。 另一方面,如果设置了任何冲突位,则阻止读取进行。 当排队的写入在内存中执行时,冲突位被清除。 此外,写入队列能够在读取请求停止时接受其他条目。 在优选的布置中,数据流读取(D读取)比指令流读取(I读取)优先,并且单独的冲突位用于指示D读取冲突和I读取冲突。 以这种方式,当发生冲突时,数据的获取和指令的获取被停止并独立地恢复。

    Ensuring write ordering under writeback cache error conditions
    6.
    发明授权
    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中,当处理器对高速缓存中不拥有的数据进行第一次写入请求,接着对高速缓存中拥有的数据进行第二次写入请求时,在写入数据后,防止第一个写请求的写入数据被主存储器接收 的第二个请求,同时允许回写高速缓存所拥有的数据。 优选地,这是通过从处理器通过非回写队列发送写请求来完成的,并且当写请求访问由高速缓存所拥有的数据块中的数据时,不知道高速缓存中的数据块并写入不存在的块 数据回到主内存。

    Processor and method for preventing access to a locked memory block by
recording a lock in a content addressable memory with outstanding cache
fills
    9.
    发明授权
    Processor and method for preventing access to a locked memory block by recording a lock in a content addressable memory with outstanding cache fills 失效
    用于通过在具有未完成的缓存填充的内容可寻址存储器中记录锁定来防止对锁定的存储器块的访问的处理器和方法

    公开(公告)号:US5404482A

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

    申请号:US902122

    申请日:1992-06-22

    摘要: A processor and method for preventing access to a locked memory block in a multiprocessor computer system. The processor has a cache memory and records a memory lock in a content-addressable memory separate from the cache memory. Preferably, outstanding cache fills are recorded in the same content addressable memory as memory locks, and a memory lock or an outstanding cache fill delays the execution of a cache coherency request upon the same memory block. When a cache coherency request is received from another processor, the address of the cache coherency request is compared to addresses stored in the content addressable memory, and when there is a match, a bit in the matching entry is set to indicate a delayed request that is executed after the lock is unlocked or the cache is refilled. In a specific embodiment, a memory lock or an outstanding cache fill also stalls a processor read or write to the same memory block.

    摘要翻译: 一种用于防止访问多处理器计算机系统中的锁定存储块的处理器和方法。 处理器具有高速缓冲存储器,并将存储器锁记录在与高速缓存存储器分开的内容可寻址存储器中。 优选地,未完成的缓存填充被记录在与存储器锁相同的内容可寻址存储器中,并且存储器锁或未完成的高速缓存填充在相同存储器块上延迟高速缓存一致性请求的执行。 当从另一处理器接收到高速缓存一致性请求时,将高速缓存一致性请求的地址与存储在内容可寻址存储器中的地址进行比较,并且当存在匹配时,匹配条目中的位被设置为指示延迟请求, 在锁解锁或缓存重新填充后执行。 在特定实施例中,存储器锁或未完成的高速缓存填充也使处理器读或写到相同的存储器块。