Virtual instruction cache system using length responsive decoded
instruction shifting and merging with prefetch buffer outputs to fill
instruction buffer
    2.
    发明授权
    Virtual instruction cache system using length responsive decoded instruction shifting and merging with prefetch buffer outputs to fill instruction buffer 失效
    虚拟指令高速缓存系统使用长度响应的指令转换和与预置缓冲区输出的合并来填充指令缓冲区

    公开(公告)号:US5113515A

    公开(公告)日:1992-05-12

    申请号:US306831

    申请日:1989-02-03

    IPC分类号: G06F9/30 G06F9/38

    摘要: An instruction buffer of a high speed digital computer controls the flow of instruction stream to an instruction decoder. The buffer provides the decoder with nine bytes of sequential instruction stream. The instruction set used by the computer is of the variable length type, such that the decoder consumes a variable number of the instruction stream bytes, depending upon the type of instruction being decoded. As each instruction is consumed, a shifter removes the consumed bytes and repositions the remaining bytes into the lowest order positions. The byte positions left empty by the shifter are filled by instruction stream retrieved from one of a pair of prefetch buffers (IBEX, IBEX2) or from a virtual instruction cache. These prefetch buffers are arranged to hold the next two subsequent quadwords of instruction stream and provide the desired missing bytes. The IBEX prefetch buffer is filled from the instruction cache after being emptied, but prior to those particular bytes being requested to fill the instruction decoder. This two level prefetching allows the relatively slow process of cache access to be performed during noncritical time. The instruction decoder is not stalled, waiting for a cache refill, but can ordinarily obtain the desired bytes of instruction stream from the prefetch buffer.

    Preprocessing implied specifiers in a pipelined processor
    5.
    发明授权
    Preprocessing implied specifiers in a pipelined processor 失效
    在管道处理器中预处理暗示指示器

    公开(公告)号:US5142633A

    公开(公告)日:1992-08-25

    申请号:US306846

    申请日:1989-02-03

    IPC分类号: G06F9/30 G06F9/318 G06F9/38

    摘要: An instruction decoder generates implied specifiers for certain predefined instructions, and an operand processing unit preprocess most of the implied specifiers in the same fashion as express operand specifiers. For instructions having an implied autoincrement or autodecrement of the stack pointer, an implied read or write access type is assigned to the instruction and the decode logic is configured accordingly. When an opcode is decoded and is found to have an implied write specifier, a destination operand is created for autodecrementing the stack pointer. If an opcode is decoded and found to have an implied read specifier, a source operand is created for autoincrementing the stack pointer. A register or short literal specifier can be decoded simultaneously with the generation of the implied operand. Therefore some common instructions such as "PUSH Rx" can be decoded in a single cycle. The preprocessing of implied specifiers in addition permits more complex instructions such as "BSR DEST" to be executed in a single cycle. Conflicts created by the implied specifiers are handled in the same manner as conflicts for express specifiers. Moreover, by using the same data paths for both the implied specifiers and the express specifiers, and by inserting queues between the instruction unit and the execution unit, performance gains are realized for instructions having implied specifiers as well as just express specifiers.

    Roof for a mobile home or the like
    6.
    发明授权
    Roof for a mobile home or the like 失效
    移动房屋屋顶等

    公开(公告)号:US4548002A

    公开(公告)日:1985-10-22

    申请号:US427627

    申请日:1982-09-29

    申请人: John E. Murray

    发明人: John E. Murray

    IPC分类号: E04B7/00 E04D13/155

    CPC分类号: E04D13/155 E04B7/00

    摘要: A roof is disclosed for a mobile home or the like. The roof comprises an existing roof having peripheral blocks disposed along the entire peripheral edge of the existing roof. Insulative material overlies the existing roof and is encompassed by the peripheral blocks. Marginal flashing of impervious material overlies the peripheral blocks and includes a first and a second limb. An upstanding portion is disposed adjacent the distal end of the first limb. Supplementary roof sheets of impervious material overlie the insulative material, the upstanding portion and the first limb and a lag screw or the like secures the first limb between the supplementary roof sheets and the peripheral blocks.

    摘要翻译: 公开了一种用于移动式家庭等的屋顶。 屋顶包括具有沿现有屋顶的整个周边边缘设置的外围块的现有屋顶。 绝缘材料覆盖在现有的屋顶上并被外围块包围。 不透水材料的边缘闪光覆盖在周边块上并且包括第一和第二肢体。 直立部分邻近第一肢体的远端设置。 不透水材料的补充屋顶片覆盖绝缘材料,直立部分和第一肢体以及拉力螺钉等将辅助屋顶片和周边块之间的第一肢固定。

    Simultaneously or sequentially decoding multiple specifiers of a
variable length pipeline instruction based on detection of modified
value of specifier registers
    7.
    发明授权
    Simultaneously or sequentially decoding multiple specifiers of a variable length pipeline instruction based on detection of modified value of specifier registers 失效
    基于检测指定器寄存器的修改值,同时或顺序地解码可变长度管道指令的多个指定符

    公开(公告)号:US5167026A

    公开(公告)日:1992-11-24

    申请号:US306833

    申请日:1989-02-03

    IPC分类号: G06F9/30 G06F9/38

    摘要: In a pipeline processor, simultaneous decoding of multiple specifiers in a variable-length instruction causes a peculiar problem of an intra-instruction read conflict that occurs whenever an instruction includes an autoincrement or an autodecrement specifier which references either directly or indirectly a register specified by a previously occurring specifier for the current instruction. To avoid stalls during the preprocessing of instructions by the instruction unit, register pointers rather than register data are usually passed to the excellent unit because register data is not always available at the time of instruction decoding. If an intra-instruction read conflict exists, however, the operand value specified by the conflicting register specifier is the initial value of the register being incremented or decremented, and this initial value will have been changed by the time that the execution unit executes the instruction. Preferably, the proper initial value is obtained prior to the incrementing or decrementing of the conflicting register by putting the instruction decoder into a special IRC mode in which only one specifier is decoded per cycle, and if a specifier being decoded is a register specifier, the content of the specified register is transmitted to the execution unit. Circuitry for detecting an intra-instruction read conflict is disclosed as well as an efficient method for handling interrupts, exceptions and flushes that may occur during the processing of an instruction having an intra-instruction read conflict.

    Method and apparatus using a cache and main memory for both vector
processing and scalar processing by prefetching cache blocks including
vector data elements
    10.
    发明授权
    Method and apparatus using a cache and main memory for both vector processing and scalar processing by prefetching cache blocks including vector data elements 失效
    使用高速缓存和主存储器的方法和装置,用于通过预取包括向量数据元素的高速缓存块来进行矢量处理和标量处理

    公开(公告)号:US4888679A

    公开(公告)日:1989-12-19

    申请号:US142794

    申请日:1988-01-11

    摘要: A main memory and cache suitable for scalar processing are used in connection with a vector processor by issuing prefetch requests in response to the recognition of a vector load instruction. A respective prefetch request is issued for each block containing an element of the vector to be loaded from memory. In response to a prefetch request, the cache is checked for a "miss" and if the cache does not include the required block, a refill request is sent to the main memory. The main memory is configured into a plurality of banks and has a capability of processing multiple references. Therefore the different banks can be referenced simultaneously to prefetch multiple blocks of vector data. Preferably a cache bypass is provided to transmit data directly to the vector processor as the data from the main memory are being stored in the cache. In a preferred embodiment, a vector processor is added to a digital computing system including a scalar processor, a virtual address translation buffer, a main memory and a cache. The scalar processor includes a microcode interpreter which sends a vector load command to the vector processing unit and which also generates vector prefetch requests. The addresses for the data blocks to be prefetched are computed based upon the vector address, the length of the vector and the "stride" or spacing between the addresses of the elements of the vector.

    摘要翻译: 适用于标量处理的主存储器和缓存器与矢量处理器结合使用以响应于矢量加载指令的识别发出预取请求。 为包含要从存储器加载的向量的元素的每个块发出相应的预取请求。 响应于预取请求,检查缓存是否存在“未命中”,并且如果高速缓存不包括所需的块,则向主存储器发送补充请求。 主存储器被配置成多个存储体并且具有处理多个引用的能力。 因此,可以同时引用不同的库来预取多个向量数据块。 优选地,提供高速缓存旁路以将数据直接发送到向量处理器,因为来自主存储器的数据正被存储在高速缓存中。 在优选实施例中,将向量处理器添加到包括标量处理器,虚拟地址转换缓冲器,主存储器和高速缓存的数字计算系统。 标量处理器包括微代码解释器,其向向量处理单元发送向量加载命令,并且还生成向量预取请求。 要预取的数据块的地址是基于向量地址,向量的长度和向量元素的地址之间的“stride”或间距来计算的。