Provably correct storage arrays
    11.
    发明授权
    Provably correct storage arrays 失效
    提供正确的存储阵列

    公开(公告)号:US06279144B1

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

    申请号:US09377389

    申请日:1999-08-19

    IPC分类号: G06F1750

    CPC分类号: G01R31/318536 Y10S257/903

    摘要: A hardware design technique allows checking of design system language (DSL) specification of an element and schematics of large macros with embedded arrays and registers. The hardware organization reduces CPU time for logical verification by exponential order of magnitude without blowing up a verification process or logic simulation. The hardware organization consists of horizontal word level rather than bit level. A memory array cell comprises a pair of cross-coupled inverters forming a first latch for storing data. The first latch has an output connected to a read bit line. True and complement write word and bit line input to the first latch. A first set of pass gates connects between the true and complement write word and bit line inputs via gates and the input of said first latch. The first set of pass gates is responsive to a first clock via a second pass gate. A pair of cross-coupled inverters forms a second latch of a Level Sensitive Scan Design (LSSD). The second latch has output connected to an LSSD output for design verification. A second pass gate connects between the output of the first set of pass gates and the input of said first latch. The second pass gate is responsive to said first clock. A third pass gate connects between the output of said first latch and the input of said second latch. The third pass gate is responsive to a second clock. The first and second clocks are responsive to a black boxing process for incremental verification.

    摘要翻译: 硬件设计技术允许检查具有嵌入式阵列和寄存器的大型宏的元素和原理图的设计系统语言(DSL)规范。 硬件组织将逻辑验证的CPU时间缩小到指数级数量级,而不会引发验证过程或逻辑仿真。 硬件组织由水平字层而不是位级组成。 存储器阵列单元包括一对交叉耦合的反相器,形成用于存储数据的第一锁存器。 第一个锁存器具有连接到读取位线的输出。 将第一个锁存器的写入字和位线输入为真和补码。 第一组通过门通过门和所述第一锁存器的输入连接在真和补写写字和位线输入之间。 第一组传递门通过第二传递门响应于第一时钟。 一对交叉耦合的反相器形成了级别敏感扫描设计(LSSD)的第二个锁存器。 第二个锁存器具有输出连接到LSSD输出,用于设计验证。 第二传递门连接在第一组通过门的输出和所述第一锁存器的输入之间。 第二传递门响应于所述第一时钟。 第三传输门连接在所述第一锁存器的输出端和所述第二锁存器的输入端之间。 第三传递门响应第二个时钟。 第一和第二时钟响应于黑色加密处理以进行增量验证。

    Store stream prefetching in a microprocessor
    12.
    发明授权
    Store stream prefetching in a microprocessor 失效
    在微处理器中存储流预取

    公开(公告)号:US07380066B2

    公开(公告)日:2008-05-27

    申请号:US11054871

    申请日:2005-02-10

    IPC分类号: G06F13/28 G06F12/00

    摘要: In a microprocessor having a load/store unit and prefetch hardware, the prefetch hardware includes a prefetch queue containing entries indicative of allocated data streams. A prefetch engine receives an address associated with a store instruction executed by the load/store unit. The prefetch engine determines whether to allocate an entry in the prefetch queue corresponding to the store instruction by comparing entries in the queue to a window of addresses encompassing multiple cache blocks, where the window of addresses is derived from the received address. The prefetch engine compares entries in the prefetch queue to a window of 2M contiguous cache blocks. The prefetch engine suppresses allocation of a new entry when any entry in the prefetch queue is within the address window. The prefetch engine further suppresses allocation of a new entry when the data address of the store instruction is equal to an address in a border area of the address window.

    摘要翻译: 在具有加载/存储单元和预取硬件的微处理器中,预取硬件包括预取队列,其包含指示分配的数据流的条目。 预取引擎接收与由加载/存储单元执行的存储指令相关联的地址。 预取引擎通过将队列中的条目与包含多个高速缓存块的地址的窗口进行比较来确定是否对与存储指令相对应的预取队列中的条目进行分配,其中地址窗口从接收到的地址导出。 预取引擎将预取队列中的条目与两个连续高速缓存块的窗口进行比较。 当预取队列中的任何条目都在地址窗口内时,预取引擎抑制新条目的分配。 当存储指令的数据地址等于地址窗口的边界区域中的地址时,预取引擎进一步抑制新条目的分配。

    Data processing system having an apparatus for exception tracking during
out-of-order operation and method therefor
    13.
    发明授权
    Data processing system having an apparatus for exception tracking during out-of-order operation and method therefor 失效
    数据处理系统具有在无序操作期间用于异常跟踪的装置及其方法

    公开(公告)号:US6128722A

    公开(公告)日:2000-10-03

    申请号:US23891

    申请日:1998-02-13

    IPC分类号: G06F9/38

    摘要: An apparatus for integer exception register (XER) renaming and methods of using the same are implemented. In a central processing unit (CPU) having a pipelined architecture, integer instructions that use or update the XER may be executed out-of-order using the XER renaming mechanism. Any instruction that updates the XER has an associated instruction identifier (IID) stored in a register. Subsequent instructions that use data in the XER use the stored IID to determine when the XER data has been updated by the execution of the instruction corresponding to the stored IID. As each instruction that updates XER data is executed, the data is stored in an XER rename buffer. Instructions using XER data then obtain the updated, valid, XER data from the rename buffer. In this way, these instructions can obtain valid XER data prior to completion of the preceding instructions. The XER data is retrieved from the XER rename buffer by indexing into the buffer by using an index derived from the stored IID. Because the updated XER data is available in the rename buffer before the updating instruction completes, out-of-order execution of instructions using or updating XER data is thereby realized.

    摘要翻译: 实现了整数异常寄存器(XER)重命名的装置及其使用方法。 在具有流水线架构的中央处理单元(CPU)中,使用或更新XER的整数指令可以使用XER重命名机制执行无序。 更新XER的任何指令都具有存储在寄存器中的关联指令标识符(IID)。 使用XER中的数据的后续指令使用存储的IID来确定通过执行与存储的IID相对应的指令来更新XER数据的时间。 随着执行更新XER数据的每个指令,数据都存储在XER重命名缓冲区中。 使用XER数据的指令然后从重命名缓冲区获取更新的,有效的XER数据。 以这种方式,这些指令可以在完成前面的指令之前获得有效的XER数据。 通过使用从存储的IID导出的索引将索引到缓冲区中,从XER重命名缓冲区检索XER数据。 因为在更新指令完成之前更新的XER数据在重命名缓冲器中可用,从而实现了使用或更新XER数据的指令的无序执行。