Multiprocessor system for maintaining cache coherency by checking the
coherency in the order of the transactions being issued on the bus
    12.
    发明授权
    Multiprocessor system for maintaining cache coherency by checking the coherency in the order of the transactions being issued on the bus 失效
    通过按照在总线上发出的事务的顺序检查一致性来维持高速缓存一致性的多处理器系统

    公开(公告)号:US5530933A

    公开(公告)日:1996-06-25

    申请号:US201463

    申请日:1994-02-24

    IPC分类号: G06F12/00 G06F12/08 G06F12/06

    CPC分类号: G06F12/0831

    摘要: A coherency scheme of use with a system having a bus, a main memory, a main memory controller for accessing main memory in response to transactions received on the bus, and a set of processor modules coupled to the bus. Each processor module has a cache memory and is capable of transmitting coherent transactions on the bus to other processor modules and to the main memory controller. Each processor module detects coherent transactions issued on the bus and performs cache coherency checks for each of the coherent transactions. Each processor module has a coherency queue for storing all transactions issued on the bus and for performing coherency checks for the transactions in first-in, first-out order. When a module transmits a coherent transaction on a bus, it places its own transaction into its own coherency queue.

    摘要翻译: 与具有总线的系统一起使用的一致性方案,主存储器,用于响应于在总线上接收到的事务来访问主存储器的主存储器控制器,以及耦合到总线的一组处理器模块。 每个处理器模块具有高速缓冲存储器,并且能够将总线上的相干事务发送到其他处理器模块和主存储器控制器。 每个处理器模块检测总线上发出的相干事务,并执行每个相干事务的高速缓存一致性检查。 每个处理器模块具有用于存储在总线上发布的所有事务的一致性队列,并且用于以先入先出顺序执行事务的一致性检查。 当模块在总线上传输一致的事务时,它将自己的事务置于自己的一致性队列中。

    Multiple arbitration scheme
    13.
    发明授权
    Multiple arbitration scheme 失效
    多重仲裁方案

    公开(公告)号:US5528766A

    公开(公告)日:1996-06-18

    申请号:US217500

    申请日:1994-03-24

    CPC分类号: G06F13/36

    摘要: A multiple round-robin arbitration scheme for a shared bus system that ensures forward progress by each component utilizing the shared bus. In the shared bus system, component modules arbitrate for control of the bus for one or more cycles, and send transactions on the bus during cycles in which they control the bus. The transactions are divided into a set of transaction classes. Certain classes of transactions cannot be issued during certain bus cycles. In certain other cycles, transactions of any class may be issued. The multiple round-robin arbitration scheme ensures forward progress by ensuring that each module seeking to issue a transaction of a given class obtains control of the bus during a cycle when transactions of that class can be issued.

    摘要翻译: 一种共享总线系统的多循环仲裁方案,确保每个组件利用共享总线的前进进程。 在共享总线系统中,组件模块仲裁一个或多个周期的总线控制,并在总线控制总线的周期期间在总线上发送事务。 交易分为一组交易类。 在某些公交车周期内不能发出某些类别的交易。 在某些其他周期中,任何类别的交易都可能被发行。 多轮循环仲裁方案通过确保寻求发出给定类别的交易的每个模块在可以发出该类交易的一个周期内获得对总线的控制,从而确保前进进展。

    Method and means for moving bytes in a reduced instruction set computer
    14.
    发明授权
    Method and means for moving bytes in a reduced instruction set computer 失效
    在精简指令集计算机中移动字节的方法和装置

    公开(公告)号:US4739471A

    公开(公告)日:1988-04-19

    申请号:US750701

    申请日:1985-06-28

    CPC分类号: G06F9/30043 G06F8/41 G06F9/35

    摘要: A basic instruction for moving a string of bytes in a word has been devised. Because the operations in the instruction are basic, very few variations are necessary to accommodate diversity of lengths and variables. These operations are imbedded in a single code sequence; the compiler can therefore generate exactly the minimum sequence necessary to perform the operations and can precompute many of the operands at compile time, typically completing the instruction within a single cycle time. The control necessary to optimize the operations is then in the compiler instead of the hardware.

    摘要翻译: 已经设计了用于移动单词中字节串的基本指令。 由于指令中的操作是基本操作,因此需要极少的变化来适应长度和变量的多样性。 这些操作嵌入在一个代码序列中; 因此,编译器可以精确地生成执行操作所需的最小序列,并且可以在编译时预先计算许多操作数,通常在单个周期内完成指令。 然后在编译器而不是硬件中进行优化操作所需的控制。

    Method and apparatus for calculating a page table index from a virtual address

    公开(公告)号:US06393544B1

    公开(公告)日:2002-05-21

    申请号:US09430793

    申请日:1999-10-31

    IPC分类号: G06F1200

    CPC分类号: G06F12/1018 G06F2212/652

    摘要: A method and apparatus calculate a page table index from a virtual address. Employs a combined hash algorithm that supports two different hash page table configurations. A “short format” page table is provided for each virtual region, is linear, has a linear entry for each translation in the region, and does not store tags or chain links. A single “long format” page table is provided for the entire system, supports chained segments, and includes hash tag fields. The method of the present invention forms an entry address from a virtual address, with the entry address referencing an entry of the page table. To form the entry address, first a hash page number is formed from the virtual address by shifting the virtual address right based on the page size of the region of the virtual address. If the computer system is operating with long format page tables, the next step is to form a hash index by combining the hash page number and the region identifier referenced by the region portion of the virtual address, and to form a table offset by shifting the hash index left by K bits, wherein each long format page table entry is 2K bytes long. However, if the computer system is operating with short format page tables, the next step is to form a hash index by setting the hash index equal to the hash page number, and to form a table offset by shifting the hash index left by L bits, wherein each short format page table entry is 2L bytes long. Next, a mask is formed based on the size of the page table. A first address portion is then formed using the base address of the page table and the mask, and a second address portion is formed using the table offset and the mask. Finally, the entry address is formed by combining the first and second address portions. By providing a single algorithm capable of generating a page table entry for both long and short format page tables, the present invention reduces the amount of logic required to access both page table formats, without significantly affecting execution speed.

    Method and apparatus for pre-validating regions in a virtual addressing scheme
    16.
    发明授权
    Method and apparatus for pre-validating regions in a virtual addressing scheme 失效
    用于在虚拟寻址方案中预先验证区域的方法和装置

    公开(公告)号:US06230248B1

    公开(公告)日:2001-05-08

    申请号:US09170140

    申请日:1998-10-12

    IPC分类号: G06F1216

    CPC分类号: G06F12/1036

    摘要: A method and apparatus pre-validate regions in a virtual addressing scheme by storing both the virtual region number (VRN) bits and region identifiers (RIDs) in translation lookaside buffer (TLB) entries. By storing both the VRN bits and RIDs in TLB entries, the region registers can be bypassed when performing most TLB accesses, thereby removing region registers the critical path of the TLB look-up process and enhancing system performance. A TLB in accordance with the present invention includes entries having a valid field, a region pre-validation valid (rpV) field, a virtual region number (VRN) field, a virtual page number (VPN) field, a region identifier (RID) field, a protection and access attributes field, and a physical page number (PPN) field. In addition, a set of region registers contains the RIDs that are active at any given time. When a virtual-to-physical entry is established for a page in a region having an RID stored in a region register, the RID and VRN are stored in the appropriate fields of the TLB entry. In addition, the valid field is set and the rpV field is set to indicate that the TLB entry contains an active VRN-to-RID mapping, thereby pre-validating the region. When a physical address is translated into a virtual address, a VRN and a VPN are extracted from the virtual address and provided to the TLB. The TLB is searched to find an entry having a set valid field, a set rpV field, and VRN and VPN fields containing entries matching the VRN and VPN extracted from the virtual address. If such an entry is found, the protection and access attributes field is used to determine whether the requested access is allowed. If the requested access is allowed, the PPN from the PPN field of the TLB entry is combined with an offset from the virtual address to produce a physical address that is used to complete the memory access.

    摘要翻译: 一种方法和装置通过将虚拟区域号(VRN)位和区域标识符(RID)存储在翻译后备缓冲器(TLB)条目中来对虚拟寻址方案中的区域进行预验证。 通过将VRN位和RID都存储在TLB表中,可以在执行大多数TLB访问时旁路区域寄存器,从而去除区域寄存器中TLB查找过程的关键路径并提高系统性能。 根据本发明的TLB包括具有有效字段,区域预验证有效(rpV)字段,虚拟区域号(VRN)字段,虚拟页号(VPN)字段),区域标识符(RID) 字段,保护和访问属性字段以及物理页号(PPN)字段。 此外,一组区域寄存器包含在任何给定时间处于活动状态的RID。 当在具有存储在区域寄存器中的RID的区域中的页面建立虚拟到物理条目时,RID和VRN被存储在TLB条目的相应字段中。 另外,设置有效字段,并且设置rpV字段以指示TLB条目包含活动的VRN到RID映射,从而预先验证该区域。 当物理地址被转换为虚拟地址时,从虚拟地址提取VRN和VPN,并提供给TLB。 搜索TLB以找到具有设置的有效字段,集合rpV字段的条目,以及包含与从虚拟地址提取的VRN和VPN匹配的条目的VRN和VPN字段。 如果找到这样的条目,则使用保护和访问属性字段来确定所请求的访问是否被允许。 如果允许所请求的访问,则来自TLB条目的PPN字段的PPN与来自虚拟地址的偏移组合,以产生用于完成存储器访问的物理地址。

    Method and apparatus for ensuring data consistency between an i/o
channel and a processor
    17.
    发明授权
    Method and apparatus for ensuring data consistency between an i/o channel and a processor 失效
    用于确保i / o通道和处理器之间的数据一致性的方法和装置

    公开(公告)号:US6108721A

    公开(公告)日:2000-08-22

    申请号:US107008

    申请日:1998-06-29

    摘要: In a method and apparatus that ensures data consistency between an I/O channel and a processor, system software issues an instruction which causes the issuance of a transaction when notification of a DMA completion is received. The transaction instructs the I/O channel to enforce coherency and then responds back only after coherency has been ensured. Specifically, a DMA.sub.-- SYNC transaction is broadcast to all I/O channels in the system. Responsive thereto, each I/O channel writes back to memory any modified lines in its cache that might contain DMA data for a DMA sequence that was reported by the system as completed. The I/O channels have a reporting means to indicate when this transaction is completed, so that the DMA.sub.-- SYNC transaction does not have to complete in pipeline order. Thus, the I/O channel can issue new transactions before responding to the DMA.sub.-- SYNC transaction.

    摘要翻译: 在确保I / O通道与处理器之间的数据一致性的方法和装置中,当接收到DMA完成通知时,系统软件发出导致事务发生的指令。 事务指示I / O通道强制执行一致性,然后仅在确保一致性后才响应。 具体来说,DMA-SYNC事务被广播到系统中的所有I / O通道。 响应于此,每个I / O通道将其缓存中的任何修改的行写回存储器,该行可能包含系统报告的完成的DMA序列的DMA数据。 I / O通道具有报告方式来指示此事务何时完成,以便DMA-SYNC事务不必以流水线顺序完成。 因此,在响应DMA-SYNC事务之前,I / O通道可以发出新的事务。

    Computer memory address control apparatus utilizing hashed address tags
in page tables which are compared to a combined address tag and index
which are longer than the basic data width of the associated computer
    18.
    发明授权
    Computer memory address control apparatus utilizing hashed address tags in page tables which are compared to a combined address tag and index which are longer than the basic data width of the associated computer 失效
    计算机存储器地址控制装置利用页表中的散列地址标签,其与组合的地址标签和索引进行比较,该地址标签和索引比相关计算机的基本数据宽度更长

    公开(公告)号:US5724538A

    公开(公告)日:1998-03-03

    申请号:US607622

    申请日:1996-02-27

    IPC分类号: G06F12/08 G06F12/10

    CPC分类号: G06F12/1018

    摘要: The present invention relates to the design of computer systems incorporating virtual memory where a virtual page number is longer than the inherent basic data width of the designed computer system. Instead of storing an entire tag in page table entries, a reduced tag is stored. The reduced tag is sized to be no greater in length than the basic computer data width and therefore a single compare operation will ascertain whether there is a match between the reduced tag and the tag stored in a page table entry. To maintain uniqueness of the page table entries, any bits removed from the virtual address to form the reduced tag are used to form an index into the page table.

    摘要翻译: 本发明涉及包含虚拟存储器的计算机系统的设计,其中虚拟页码长于设计的计算机系统的固有基本数据宽度。 代替在页表条目中存储整个标签,而不是存储缩小的标签。 缩小标签的大小的长度不应大于基本计算机数据宽度,因此单个比较操作将确定缩小的标签与存储在页表条目中的标签之间是否存在匹配。 为了保持页表项的唯一性,使用从虚拟地址中删除以形成缩减标记的任何位来形成页表中的索引。

    Method for decreasing time penalty resulting from a cache miss in a
multi-level cache system
    19.
    发明授权
    Method for decreasing time penalty resulting from a cache miss in a multi-level cache system 失效
    用于减少由多级缓存系统中的高速缓存未命中引起的时间损失的方法

    公开(公告)号:US5603004A

    公开(公告)日:1997-02-11

    申请号:US196042

    申请日:1994-02-14

    IPC分类号: G06F12/08 G06F12/12 G06F12/00

    摘要: A cache system buffers data stored in a main memory and utilized by a processor. The cache system includes a first cache, a second cache, a first transfer channel, a second transfer channel and a third transfer channel. The first cache is fully associative. The second cache is directly mapped. The first transfer channel transfers data lines from the main memory to the first cache. The second transfer channel transfers data lines from the first cache to the second cache. The third transfer channel transfers data lines from the second cache to the main memory. Accesses of data lines from the first cache and the second cache are performed in parallel.

    摘要翻译: 缓存系统缓冲存储在主存储器中并由处理器使用的数据。 高速缓存系统包括第一高速缓存,第二高速缓存,第一传送通道,第二传送通道和第三传送通道。 第一个缓存是完全关联的。 第二个缓存直接映射。 第一个传输通道将数据线从主存储器传输到第一个缓存。 第二传输信道将数据线从第一高速缓存传送到第二高速缓存。 第三传送通道将数据线从第二高速缓存传送到主存储器。 并行执行来自第一高速缓存和第二高速缓存的数据线的访问。

    Cache tag lookaside
    20.
    发明授权
    Cache tag lookaside 失效
    缓存标签后备

    公开(公告)号:US4914582A

    公开(公告)日:1990-04-03

    申请号:US879707

    申请日:1986-06-27

    IPC分类号: G06F12/08 G06F12/12

    CPC分类号: G06F12/0864 G06F12/127

    摘要: A method of retrieving data from a multi-set cache memory in a computer system. An address, which includes an index, is presented by the processor to the cache memory. The index is utilized to access the cache to generate an output which includes a block corresponding to the index from each set of the cache. Each block includes an address tag and data. A portion of the address tag for all but one of the blocks is compared with a corresponding portion of the address. If the comparison results in a match, then the data from the block associated with match is provided to the processor. If the comparison does not result in a match, then the data from the remaining block is provided to the processor. A full address tag comparison is done in parallel with the "lookaside tag" comparison to confirm a "hit."

    摘要翻译: 一种从计算机系统中的多组高速缓冲存储器检索数据的方法。 包括索引的地址由处理器呈现给高速缓冲存储器。 索引用于访问高速缓存以生成包括与每个高速缓存组的索引相对应的块的输出。 每个块包括地址标签和数据。 除了一个块之外的所有地址标签的一部分与地址的相应部分进行比较。 如果比较导致匹配,则将与匹配相关联的块的数据提供给处理器。 如果比较不导致匹配,则将剩余块的数据提供给处理器。 完整的地址标签比较与“后备标签”比较并行进行,以确认“命中”。