Method and system for propagating exception status in data registers and
for detecting exceptions from speculative operations with
non-speculative operations
    1.
    发明授权
    Method and system for propagating exception status in data registers and for detecting exceptions from speculative operations with non-speculative operations 失效
    在数据寄存器中传播异常状态的方法和系统,以及用非投机操作检测投机操作的异常

    公开(公告)号:US5778219A

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

    申请号:US597784

    申请日:1996-02-07

    IPC分类号: G06F9/318 G06F9/38

    摘要: A method for supporting speculative execution includes designating operations as speculative or non-speculative, and then deferring exceptions generated by speculative operations while immediately reporting exceptions by non-speculative operations. If a speculative operation uses a result of a speculative operation that has generated an exception, the exception is propagated. Deferred exceptions are detected and reported using a check operation either incorporated into a non-speculative operation or inserted as a separate check operation. A system for supporting speculative execution includes a functional unit for recognizing a speculative operation and deferring any exceptions generated by such an operation. The functional unit may defer an exception by storing information indicating an error has occurred in the register file. To check for deferred exceptions, the functional unit then reads the register file. If an exception is detected, then the exception is processed and one or more of the speculative operation are re-executed (in a non-speculative mode) where necessary to process the exception.

    摘要翻译: 支持投机执行的方法包括将操作指定为投机或非投机性,然后推迟由投机操作产生的异常,同时立即通过非投机操作报告异常。 如果推测操作使用产生异常的推测操作的结果,则会传播该异常。 使用检查操作检测和报告延期异常,并将其合并到非推测操作中或作为单独检查操作插入。 用于支持推测执行的系统包括用于识别投机操作并推迟由这种操作产生的任何异常的功能单元。 功能单元可以通过存储指示在寄存器文件中发生错误的信息来延迟异常。 要检查延迟异常,功能单元然后读取寄存器文件。 如果检测到异常,则处理异常,并且在需要处理异常的情况下重新执行一个或多个推测操作(以非推测模式)。

    Method and system for deferring exceptions generated during speculative
execution
    2.
    发明授权
    Method and system for deferring exceptions generated during speculative execution 失效
    用于推迟在投机执行期间产生的异常的方法和系统

    公开(公告)号:US5692169A

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

    申请号:US324940

    申请日:1994-10-18

    摘要: A method for supporting speculative execution includes designating operations as speculative or non-speculative, and then deferring exceptions generated by speculative operations while immediately reporting exceptions by non-speculative operations. If a speculative operation uses a result of a speculative operation that has generated an exception, the exception is propagated. Deferred exceptions are detected and reported using a check operation either incorporated into a non-speculative operation or inserted as a separate check operation. A system for supporting speculative execution includes a functional unit for recognizing a speculative operation and deferring any exceptions generated by such an operation. The functional unit may defer an exception by storing information indicating an error has occurred in the register file. To check for deferred exceptions, the functional unit then reads the register file.

    摘要翻译: 支持投机执行的方法包括将操作指定为投机或非投机性,然后推迟由投机操作产生的异常,同时立即通过非投机操作报告异常。 如果推测操作使用产生异常的推测操作的结果,则会传播该异常。 使用检查操作检测和报告延期异常,并将其合并到非推测操作中或作为单独检查操作插入。 用于支持推测执行的系统包括用于识别投机操作并推迟由这种操作产生的任何异常的功能单元。 功能单元可以通过存储指示在寄存器文件中发生错误的信息来延迟异常。 要检查延迟异常,功能单元然后读取寄存器文件。

    Memory processor that prevents errors when load instructions are moved
in the execution sequence
    3.
    发明授权
    Memory processor that prevents errors when load instructions are moved in the execution sequence 失效
    内存处理器可以在执行顺序中移动加载指令时防止错误

    公开(公告)号:US5475823A

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

    申请号:US261647

    申请日:1994-06-17

    CPC分类号: G06F9/30043 G06F9/3834

    摘要: A memory processor which prevents errors when the compiler advances long latency load instructions in the instruction sequence to reduce the loss of efficiency resulting from the latency time. The memory processor intercepts all load and store instructions prior to the instructions entering the memory pipeline. The memory processor stores load instructions for a period of time sufficient to determine if any subsequent store instruction that would have been executed prior to the load instruction, had the load instruction not been moved, references the same address as that specified in the load instruction. If a store instruction references the load instruction address, the invention returns the same data as the load instruction would have if it was not moved by the compiler.

    摘要翻译: 一种存储器处理器,当编译器在指令序列中前进长延迟加载指令时,可以防止错误,以减少延迟时间导致的效率损失。 存储器处理器在指令进入存储器管线之前拦截所有的加载和存储指令。 存储器处理器将加载指令存储一段时间,足以确定在加载指令之前已经执行的加载指令是否有任何后续存储指令,如果加载指令未被移动,则引用与加载指令中指定的地址相同的地址。 如果存储指令引用加载指令地址,则本发明返回与加载指令不被编译器移动的数据相同的数据。

    Cache system for reducing memory latency times
    4.
    发明授权
    Cache system for reducing memory latency times 失效
    缓存系统,用于减少内存延迟时间

    公开(公告)号:US5404484A

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

    申请号:US945561

    申请日:1992-09-16

    IPC分类号: G06F9/38 G06F12/08 G06F12/12

    摘要: The improved cache system reduces the effects of latency times by utilizing a preload instruction inserted by the compiler into the code. The preload instruction is sent sufficiently in advance of the corresponding load instruction to guarantee that the relevant data is in the cache memory when the load instruction is received. In addition, the invention prevents the pollution of the cache with data that will only be used once during the expected lifetime of the data in the cache. This second feature of the invention assures that a large number of references to data that will only be used once does not result in the contents of the cache being replaced with the subsequent need to reload the contents after the data references have been completed.

    摘要翻译: 改进的缓存系统通过利用编译器插入到代码中的预加载指令来减少延迟时间的影响。 预加载指令在相应的加载指令之前被充分发送,以便在接收到加载指令时保证相关数据在高速缓冲存储器中。 此外,本发明通过在高速缓存中的数据的期望寿命期间仅使用一次的数据来防止高速缓存的污染。 本发明的第二个特征确保了大量仅仅使用一次的数据的引用不会导致高速缓存的内容被替换为在数据引用完成之后随后需要重新加载内容。

    Computer architecture for reducing delays due to branch instructions
    5.
    发明授权
    Computer architecture for reducing delays due to branch instructions 失效
    用于减少分支指令导致的延迟的计算机体系结构

    公开(公告)号:US5615386A

    公开(公告)日:1997-03-25

    申请号:US588151

    申请日:1996-01-18

    IPC分类号: G06F9/32 G06F9/38

    摘要: An improved data processing system for executing branch instructions which has lower latency times and which only rarely requires the instruction pipeline to be flushed is disclosed. The data processing system utilizes a register file to hold the information needed to execute a branch instruction. The information is loaded into the register file in advance of the branch instruction. This allows the system to prepare more than one branch instruction at any given time. The present invention may be used to cause the cache line containing the target address of the branch instruction to be loaded soon as the target address is available for the branch instruction. Since the outcome of the branch instruction is almost always known when the branch instruction enters the instruction pipeline, the instruction pipeline only rarely needs to be flushed.

    摘要翻译: 公开了一种用于执行具有较低等待时间并且很少需要刷新指令流水线的分支指令的改进的数据处理系统。 数据处理系统利用寄存器文件来保存执行分支指令所需的信息。 信息在分支指令之前被加载到寄存器文件中。 这允许系统在任何给定时间准备多个分支指令。 本发明可以用于使得包含分支指令的目标地址的高速缓存线在目标地址对于分支指令可用时很快被加载。 由于分支指令的结果在分支指令进入指令流水线时几乎总是被知道,所以指令流水线很少需要刷新。

    Information processing apparatus with prefetch control for prefetching
data structure from memory through cache memory
    6.
    发明授权
    Information processing apparatus with prefetch control for prefetching data structure from memory through cache memory 失效
    具有预取控制的信息处理装置,用于通过高速缓冲存储器从存储器预取数据结构

    公开(公告)号:US5721865A

    公开(公告)日:1998-02-24

    申请号:US588503

    申请日:1996-01-18

    摘要: To improve the function of a circuit for prefetching data accessed by a processor, a prefetch unit incorporates therein a circuit for issuing a request to read out one group of data to be prefetched and registers for holding the group of data read in response to the read request therein. The group of data are read out from a cache memory or a main memory under the control of a cache request unit. A plurality of groups of data can be prefetched. When data designation is made, the processor requests the cache memory to read a block to which the data to be prefetched belongs. A circuit is also included in the prefetch unit, wherein when prefetched data is subsequently updated by the processor, its updated data is made invalid. Elements of a vector complex in structure, such as an indexed vector or the like can be also read out. It is also possible to cope with an interrupt generated within the processor.

    摘要翻译: 为了改进用于预取由处理器访问的数据的电路的功能,预取单元在其中结合有用于发出读取需要预取的一组数据的请求的电路,并且用于保存响应于读取读取的数据组的寄存器 请求。 在高速缓存请求单元的控制下,从高速缓冲存储器或主存储器读出数据组。 可以预取多组数据。 当进行数据指定时,处理器请求高速缓冲存储器读取要预取的数据所属的块。 预取单元中还包括一个电路,其中当处理器随后更新预取的数据时,其更新的数据变为无效。 也可以读出结构中的向量复合体的元素,例如索引向量等。 也可以处理处理器内产生的中断。

    Vector memory operations
    7.
    发明授权
    Vector memory operations 失效
    矢量内存操作

    公开(公告)号:US5689653A

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

    申请号:US384308

    申请日:1995-02-06

    摘要: The op-code bandwidth limitation of computer systems is alleviated by providing one or more vector buffers. Data is transferred between memory and processor registers in a two part process using the vector buffers. In a first part, a vector request instruction initiates buffering of data by storing data in control registers identifying a set of data elements (a vector) in the memory. When the identifying information is loaded in the control registers, a vector prefetch controller transfers elements of the vector between the memory and a vector buffer. In a second part, vector element operation instructions transfer a next element of the vector between the vector buffer and a specified processor register for use in arithmetic or logic operations.

    摘要翻译: 通过提供一个或多个向量缓冲器来减轻计算机系统的操作码带宽限制。 数据在存储器和处理器寄存器之间使用向量缓冲区在两部分进程中传输。 在第一部分中,向量请求指令通过将数据存储在识别存储器中的一组数据元素(矢量)的控制寄存器中来发起数据的缓冲。 当识别信息被加载到控制寄存器中时,向量预取控制器在存储器和向量缓冲器之间传送向量的元素。 在第二部分中,向量元素操作指令将矢量的下一个元素传送到矢量缓冲器和指定的处理器寄存器之间,用于算术或逻辑运算。

    Dynamic allocation of registers to procedures in a digital computer
    8.
    发明授权
    Dynamic allocation of registers to procedures in a digital computer 失效
    动态分配寄存器到数字计算机中的程序

    公开(公告)号:US5564031A

    公开(公告)日:1996-10-08

    申请号:US629041

    申请日:1996-04-12

    摘要: In a digital computer, a circular queue of registers in a register file are allocated as temporary local storage for procedures rather than using the known caller/callee save convention in order to minimize main memory references. A called procedure dynamically allocates local registers as needed without regard to registers used by the caller of the procedure or by any callee of the procedure, whereby register allocation is not restricted by any predetermined window size. Local registers, including parameter passing registers, are allocated in the called procedure, rather than a priori at compile time, by adjusting register stack pointer values. Only the number of registers actually required by the procedure need by allocated. Optionally, rotating registers may be allocated among the local registers. Stack pointer values are stored in one of the parameter passing registers when a procedure is called. Hardware register file access circuitry maps virtual register numbers used by the procedures into the hardware register file. Upon return from a procedure, registers are deallocated by adjusting the register stack pointers to the values stored when the procedure was called.

    摘要翻译: 在数字计算机中,寄存器文件中的寄存器的循环队列被分配为用于过程的临时本地存储器,而不是使用已知的调用者/被调用者保存约定来最小化主存储器引用。 被调用的过程根据需要动态地分配本地寄存器,而不考虑由过程的调用者使用的寄存器或过程的任何被调用者,由此寄存器分配不受任何预定窗口大小的限制。 本地寄存器(包括参数传递寄存器)在调用过程中被分配,而不是在编译时通过调整寄存器堆栈指针值来先验地分配。 只有实际需要的寄存器数量需要分配。 可选地,可以在本地寄存器之间分配旋转寄存器。 调用过程时,堆栈指针值存储在参数传递寄存器之一中。 硬件寄存器文件访问电路将程序使用的虚拟寄存器编号映射到硬件寄存器文件中。 从过程返回时,通过将寄存器堆栈指针调整到调用过程时存储的值来释放寄存器。

    Method and apparatus for enabling a computer system to adjust for
latency assumptions
    9.
    发明授权
    Method and apparatus for enabling a computer system to adjust for latency assumptions 失效
    使计算机系统能够调整等待时间假设的方法和装置

    公开(公告)号:US5710912A

    公开(公告)日:1998-01-20

    申请号:US059041

    申请日:1993-05-06

    IPC分类号: G06F9/38 G06F15/16

    摘要: A method and system are disclosed which allow a computer program to execute properly in object code compatible processing systems which have latencies different from those with which the program was created or compiled. This resulting compatibility of the computer program is achieved because the invention protects the precedence of operations within the computer program using latency assumptions which were used when creating the computer program. When the computer program is created, latency assumption information is efficiently provided within the computer program. Thereafter, when the computer program is executed, it is able to advise the processing system of the latency assumptions with which it was created. Various ways are described in which the processing system can utilize the latency assumptions when executing the computer program so as to ensure compatibility.

    摘要翻译: 公开了一种方法和系统,其允许计算机程序在目标代码兼容的处理系统中正确地执行,该处理系统的延迟与程序被创建或编译的时间不同。 实现计算机程序的这种兼容性是因为本发明使用在创建计算机程序时使用的延迟假设来保护计算机程序内的操作的优先级。 当创建计算机程序时,计算机程序内有效地提供延迟假设信息。 此后,当执行计算机程序时,能够向处理系统通知其创建的延迟假设。 描述了各种方式,其中处理系统可以在执行计算机程序时利用延迟假设,以确保兼容性。

    High definition scintillation detector for medicine, homeland security and non-destructive evaluation
    10.
    发明授权
    High definition scintillation detector for medicine, homeland security and non-destructive evaluation 有权
    高清晰度闪烁检测仪,用于医药,国土安全和无损评估

    公开(公告)号:US08477906B2

    公开(公告)日:2013-07-02

    申请号:US12529867

    申请日:2008-03-05

    IPC分类号: G01T1/203 H05G1/64

    CPC分类号: G01T1/201 G01T1/16

    摘要: A bundle of drawn fibers that have X-ray scintillating unagglommerated nanocrystallite particles in plastic or glass cores of down to 0.1 micron spacing and claddings of X-ray absorbing compounds in the cladding composition. Optional is a cover to the bundle that blocks light from leaving the bundle at the X-ray side while allowing X-rays to pass into the cores. To image the light exiting the fiber bundle at the sub-micron level, light expansion is preferable using either a lens system or a fiber bundle expander.

    摘要翻译: 一束拉伸纤维,其在包层组合物中具有低至0.1微米间距的塑料或玻璃芯中具有X射线闪烁的未散射的纳米晶粒和X射线吸收化合物的包层。 可选的是捆绑的封面,阻止光线在X射线侧离开束,同时允许X射线进入核心。 为了在亚微米级别对离开纤维束的光进行成像,使用透镜系统或纤维束扩张器优选进行光膨胀。