Method and apparatus using a cache and main memory for both vector
processing and scalar processing by prefetching cache blocks including
vector data elements
    3.
    发明授权
    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”或间距来计算的。

    Method and apparatus for handling faults of vector instructions causing
memory management exceptions
    5.
    发明授权
    Method and apparatus for handling faults of vector instructions causing memory management exceptions 失效
    用于处理导致内存管理异常的向量指令故障的方法和装置

    公开(公告)号:US5113521A

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

    申请号:US638149

    申请日:1991-01-09

    IPC分类号: G06F9/46

    CPC分类号: G06F9/462

    摘要: A data processing system handles memory management exceptions caused by a faulting vector instruction in a vector processor by halting the execution of the faulting vector instruction being executed when the exception occurred and by setting the state information for the vector processor to acknowledge the presence of the exception and to include information about the suboperation of the vector instruction being executed when the exception occurred. The scalar processor is not interrupted at this time, however. Any other vector instructions executing simutaneously with the faulting vector instruction are allowed to continue so long as those instructions do not require data from the faulting instruction. The faulting partially completed vector instruction resumes execution after the operating system has processed the memory management exception.

    摘要翻译: 数据处理系统通过停止异常发生时执行的故障向量指令的执行,并且通过设置向量处理器的状态信息来确认异常的存在来处理由矢量处理器中的故障向量指令引起的存储器管理异常 并且包括关于当异常发生时正在执行的向量指令的子程序的信息。 然而,标量处理器此时不会中断。 只要这些指令不需要来自故障指令的数据,允许与故障向量指令同时执行的任何其他向量指令。 故障部分完成向量指令在操作系统处理内存管理异常后恢复执行。

    Control of multiple functional units with parallel operation in a
microcoded execution unit
    6.
    发明授权
    Control of multiple functional units with parallel operation in a microcoded execution unit 失效
    在微型执行单元中并行运行的多功能单元的控制

    公开(公告)号:US5067069A

    公开(公告)日:1991-11-19

    申请号:US306832

    申请日:1989-02-03

    IPC分类号: G06F9/30 G06F9/38

    摘要: To increase the performance of a pipelined processor executing various classes of instructions, the classes of instructions are executed by respective functional units which are independently controlled and operated in parallel. The classes of instructions include integer instructions, floating point instructions, multiply instructions, and divide instructions. The integer unit, which also performs shift operations, is controlled by the microcode execution unit to handle the wide variety of integer and shift operations included in a complex, variable-length instruction set. The other functional units need only accept a control command to initiate the operation to be performed by the functional unit. The retiring of the results of the instructions need not be controlled by the microcode execution unit, but instead is delegated to a separate retire unit that services a result queue. When the microcode execution unit determines that a new operation is required, an entry is inserted into the result queue. The entry includes all the information needed by the retire unit to retire the result once the result is available from the respective functional unit. The retire unit services the result queue by reading a tag in the entry at the head of the queue to determine the functional unit that is to provide the result. Once the result is available and the destination specified by the entry is also available, the result is retired in accordance with the entry, and the entry is removed from the queue.

    Integrated circuit chip having primary and secondary random access
memories for a hierarchical cache
    7.
    发明授权
    Integrated circuit chip having primary and secondary random access memories for a hierarchical cache 失效
    集成电路芯片,具有用于分级高速缓存的主和次级随机存取存储器

    公开(公告)号:US5285323A

    公开(公告)日:1994-02-08

    申请号:US61273

    申请日:1993-05-13

    IPC分类号: G06F12/08

    CPC分类号: G06F12/0897 Y02B60/1225

    摘要: A hierarchical cache memory includes a high-speed primary cache memory and a lower speed secondary cache memory of greater storage capacity than the primary cache memory. To manage a huge number of data lines interconnecting the primary and secondary cache memories, the hierarchical cache memory is integrated on a plurality of integrated circuits which include all of the interconnecting data lines. Each integrated circuit includes a primary memory and a secondary memory for storing and retrieving data transferred over a first data input line and a first data output line that link the primary memory to a central processing unit. At any given time, a multi-bit word is addressed in the secondary memory, and a corresponding multi-bit word is addressed in the primary memory. The primary and secondary memories are interconnected by a first multi-line bus for transferring a multi-bit word read from the secondary memory to the primary memory, and by a second multi-line bus for transferring a multi-bit word read from the primary memory to the secondary memory. The secondary memory is linked to a main memory by a second data output line and a second data input line for sequential transmission of bits to exchange multi-bit words during a writeback and refill operation. In a preferred embodiment, data inputs of the primary memory and the secondary memory are wired in parallel to a serial-parallel shift register that is used as a common write buffer.

    摘要翻译: 分级缓存存储器包括高于主高速缓冲存储器的高速主缓存存储器和比主高速缓存存储器更大存储容量的较低速次级高速缓冲存储器。 为了管理互连主要和次要高速缓冲存储器的大量数据线,分层高速缓冲存储器集成在包括所有互连数据线的多个集成电路上。 每个集成电路包括主存储器和辅助存储器,用于存储和检索通过第一数据输入线传送的数据和将主存储器链接到中央处理单元的第一数据输出线。 在任何给定的时间,多位字在二级存储器中寻址,并且在主存储器中寻址相应的多位字。 主存储器和次存储器通过第一多行总线互连,用于将从副存储器读取的多位字传送到主存储器,以及用于传送从主存储器读取的多位字的第二多行总线 内存到二级内存。 次存储器通过第二数据输出线和第二数据输入线链接到主存储器,用于在写回和再填充操作期间顺序传输位以交换多位字。 在优选实施例中,主存储器和次存储器的数据输入与用作公共写入缓冲器的串行 - 并行移位寄存器并联布线。

    System for translation of virtual to physical addresses by operating
memory management processor for calculating location of physical
address in memory concurrently with cache comparing virtual addresses
for translation
    10.
    发明授权
    System for translation of virtual to physical addresses by operating memory management processor for calculating location of physical address in memory concurrently with cache comparing virtual addresses for translation 失效
    用于通过操作存储器管理处理器来计算虚拟地址到物理地址的系统,用于计算存储器中的物理地址的位置并与高速缓存比较虚拟地址进行翻译

    公开(公告)号:US5349651A

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

    申请号:US746007

    申请日:1991-08-09

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

    CPC分类号: G06F12/0855 G06F12/1045

    摘要: In the field of high speed computers it is common for a central processing unit to reference memory locations via a virtual addressing scheme, rather than by the actual physical memory addresses. In a multi-tasking environment, this virtual addressing scheme reduces the possibility of different programs accessing the same physical memory location. Thus, to maintain computer processing speed, a high speed translation buffer cache is employed to perform the necessary virtual-to-physical conversions for memory reference instructions. The translation buffer cache stores a number of previously translated virtual addresses and their corresponding physical addresses. A memory management processor is employed to update the translation buffer cache with the most recently accessed physical memory locations. The memory management processor consists of a state machine controlling hardware specifically designed for the purpose of updating the translation buffer cache. The memory management processor calculates an address of a location in the memory where the physical address is stored concurrently with the translation buffer cache comparing the virtual address with already stored virtual addresses. With this arrangement the memory management unit can immediately access memory to retrieve the physical address upon a "miss" by the translation buffer cache.

    摘要翻译: 在高速计算机领域,中央处理单元通常通过虚拟寻址方案而不是实际物理存储器地址来引用存储器位置。 在多任务环境中,这种虚拟寻址方案减少了访问相同物理内存位置的不同程序的可能性。 因此,为了维持计算机处理速度,使用高速转换缓冲器缓存来对存储器参考指令执行必要的虚拟到物理转换。 翻译缓冲区高速缓存存储多个先前转换的虚拟地址及其对应的物理地址。 使用存储器管理处理器来更新具有最近访问的物理存储器位置的翻译缓冲器高速缓存。 存储器管理处理器由控制硬件的状态机组成,其特别设计用于更新翻译缓冲器高速缓存。 存储器管理处理器计算存储器中与物理地址同时存储的位置的地址,该地址与翻译缓冲器高速缓存将虚拟地址与已存储的虚拟地址进行比较。 利用这种安排,存储器管理单元可以立即访问存储器,以在翻译缓冲器高速缓存器“遗漏”时检索物理地址。