System and method for managing compression and decompression and decompression of system memory in a computer system
    1.
    发明授权
    System and method for managing compression and decompression and decompression of system memory in a computer system 有权
    用于管理计算机系统中的系统存储器的压缩和解压缩和解压缩的系统和方法

    公开(公告)号:US07047382B2

    公开(公告)日:2006-05-16

    申请号:US09915751

    申请日:2001-07-26

    IPC分类号: G06F12/00

    摘要: A method and system for allowing a processor or I/O master to address more system memory than physically exists are described. A Compressed Memory Management Unit (CMMU) may keep least recently used pages compressed, and most recently and/or frequently used pages uncompressed in physical memory. The CMMU translates system addresses into physical addresses, and may manage the compression and/or decompression of data at the physical addresses as required. The CMMU may provide data to be compressed or decompressed to a compression/decompression engine. In some embodiments, the data to be compressed or decompressed may be provided to a plurality of compression/decompression engines that may be configured to operate in parallel. The CMMU may pass the resulting physical address to the system memory controller to access the physical memory. A CMMU may be integrated in a processor, a system memory controller or elsewhere within the system.

    摘要翻译: 描述了一种用于允许处理器或I / O主机解决比物理存在的更多系统存储器的方法和系统。 压缩内存管理单元(CMMU)可能会保留最近最少使用的压缩页面,最近和/或经常使用的页面在物理内存中未压缩。 CMMU将系统地址转换为物理地址,并且可以根据需要管理物理地址处的数据的压缩和/或解压缩。 CMMU可以提供要压缩或解压缩到压缩/解压缩引擎的数据。 在一些实施例中,要压缩或解压缩的数据可以被提供给可以被配置为并行操作的多个压缩/解压缩引擎。 CMMU可以将生成的物理地址传递给系统存储器控制器以访问物理存储器。 CMMU可以集成在处理器,系统存储器控制器或系统内的其他地方。

    System and method for recognizing and configuring devices embedded on memory modules

    公开(公告)号:US07032158B2

    公开(公告)日:2006-04-18

    申请号:US09840724

    申请日:2001-04-23

    IPC分类号: G11C29/00

    摘要: A method and system for identifying and configuring device-enhanced memory modules at system startup is described. A driver is described that performs a wakeup procedure at startup to identify installed device-enhanced memory modules, detect memory implementations such as interleaving and striping on memory modules, detect error detection and correction (ECC) implementations, and to configure the identified device-enhanced memory modules to use the detected implementations. The method may include several phases including, but not limited to, a start block phase, an ECC configuration phase, an ECC check phase, an interleave detect and configuration phase, a buffer check phase, and a final configuration phase. One or more of the phases may be performed at system startup and/or during normal system operation. Methods for shutting down and providing a sleep mode for device-enhanced memory modules are also described.

    Memory module including scalable embedded parallel data compression and decompression engines
    3.
    发明授权
    Memory module including scalable embedded parallel data compression and decompression engines 有权
    内存模块包括可扩展的嵌入式并行数据压缩和解压缩引擎

    公开(公告)号:US06879266B1

    公开(公告)日:2005-04-12

    申请号:US09616480

    申请日:2000-07-14

    摘要: An memory module including parallel data compression and decompression engines for improved performance. The memory module includes MemoryF/X Technology. To improve latency and reduce performance degradations normally associated with compression and decompression techniques, the MemoryF/X Technology encompasses multiple novel techniques such as: 1) parallel lossless compression/decompression; 2) selectable compression modes such as lossless, lossy or no compression; 3) priority compression mode; 4) data cache techniques; 5) variable compression block sizes; 6) compression reordering; and 7) unique address translation, attribute, and address caches. The parallel compression and decompression algorithm allows high-speed parallel compression and high-speed parallel decompression operation. The memory module-integrated data compression and decompression capabilities remove system bottlenecks and increase performance. This allows lower cost systems due to smaller data storage, reduced bandwidth requirements, reduced power and noise.

    摘要翻译: 内存模块包括并行数据压缩和解压缩引擎,用于提高性能。 内存模块包括MemoryF / X技术。 为了提高延迟并降低通常与压缩和解压缩技术相关的性能下降,MemoryF / X技术涵盖多种新颖的技术,例如:1)并行无损压缩/解压缩; 2)可选压缩模式,如无损,有损或无压缩; 3)优先压缩模式; 4)数据缓存技术; 5)可变压缩块大小; 6)压缩重排序; 和7)唯一地址转换,属性和地址缓存。 并行压缩和解压缩算法允许高速并行压缩和高速并行减压操作。 内存模块集成的数据压缩和解压缩功能可以消除系统瓶颈并提高性能。 由于数据存储量较小,带宽要求降低,功耗和噪声降低,因此可降低成本。

    System and method for performing scalable embedded parallel data decompression

    公开(公告)号:US06822589B1

    公开(公告)日:2004-11-23

    申请号:US09491343

    申请日:2000-01-26

    IPC分类号: H03M730

    摘要: A parallel decompression system and method which decompresses input compressed data in one or more decompression cycles, with a plurality of tokens typically being decompressed in each cycle in parallel. A parallel decompression engine may include an input for receiving compressed data, a history window, and a plurality of decoders for examining and decoding a plurality of tokens from the compressed data in parallel in a series of decompression cycles. A token may represent one or more compressed symbols or one uncompressed symbol. The parallel decompression engine may also include preliminary select generation logic for generating a plurality of preliminary selects in parallel. A preliminary select may point to an uncompressed symbol in the history window, an uncompressed symbol from a token in the current decompression cycle, or a symbol being decompressed in the current decompression cycle. The parallel decompression engine may also include final select generation logic for resolving preliminary selects and generating a plurality of final selects in parallel. Each of the plurality of final selects points either to an uncompressed symbol in the history window or to an uncompressed symbol from a token in the current decompression cycle. The parallel decompression engine may also include uncompressed data output logic for generating the uncompressed data from the uncompressed symbols pointed to by the plurality of final selects, and for storing the symbols decompressed in this cycle in the history window. The decompression engine may also include an output for outputting the uncompressed data produced in the decompression cycles. The decompression engine may be divided into a series of stages. The decoders may be included in a first stage. The preliminary select generation logic may be included in a second stage. The final select generation logic may be included in a third stage. The output logic may be included in a fourth stage.

    PARALLEL COMPRESSION/DECOMPRESSION SYSTEM AND METHOD FOR IMPLEMENTATION OF IN-MEMORY COMPRESSED CACHE IMPROVING STORAGE DENSITY AND ACCESS SPEED FOR INDUSTRY STANDARD MEMORY SUBSYSTEMS AND IN-LINE MEMORY MODULES
    5.
    发明授权
    PARALLEL COMPRESSION/DECOMPRESSION SYSTEM AND METHOD FOR IMPLEMENTATION OF IN-MEMORY COMPRESSED CACHE IMPROVING STORAGE DENSITY AND ACCESS SPEED FOR INDUSTRY STANDARD MEMORY SUBSYSTEMS AND IN-LINE MEMORY MODULES 有权
    并行压缩/解压缩系统和实现内存压缩缓存的方法,提高存储密度和访问速度,用于工业标准存储器子系统和在线存储器模块

    公开(公告)号:US06523102B1

    公开(公告)日:2003-02-18

    申请号:US09550380

    申请日:2000-04-14

    IPC分类号: G06F1202

    摘要: An ASIC device embedded into the memory subsystem of a computing device used to accelerate the transfer of active memory pages for usage by the system CPU from either compressed memory cache buffer or the addition of a compressed disk subsystem for improved system cost and performance. The Compression Enhanced Dual In-line Memory Module of the present invention uses parallel lossless compression and decompression engines embedded into the ASIC device for improved system memory page density and I/O subsystem data bandwidth. In addition, the operating system software optimizes page transfers between compressed disk partitions, compressed cache memory and inactive/active page memory within the computer system. The disclosure also indicates preferred methods for initialization, recognition and operation of the ASIC device transparently within industry standard memory interfaces and subsystems. The system can interface to present operating system software and applications, which enable optimal usage for the compressed paging system memory environment. The integrated parallel data compression and decompression capabilities of the compactor ASIC mounted on industry standard memory modules, along with the software drivers and filters of the present invention keep recently used pages compressed in the system memory. Additional performance is gained by the transfer of compressed pages between the system memory and the disk and network subsystems. In addition, the present invention may reduce the amount of data transferred between distributed computers across the LAN or WAN by the transmission of compressed page data between remote systems or distributed databases.

    摘要翻译: 嵌入到计算设备的存储器子系统中的ASIC设备,用于加速主动存储器页面的传送,以供系统CPU从压缩存储器缓存缓冲器中使用,或者添加压缩磁盘子系统以提高系统成本和性能。 本发明的压缩增强双列直插式存储器模块使用嵌入到ASIC器件中的并行无损压缩和解压缩引擎来改进系统存储器页面密度和I / O子系统数据带宽。 此外,操作系统软件优化了压缩磁盘分区,压缩高速缓存和计算机系统中的非活动/活动页面内存之间的页面传输。 本公开还指示了在工业标准存储器接口和子系统中透明地初始化,识别和操作ASIC设备的优选方法。 该系统可以接口来呈现操作系统软件和应用程序,从而使压缩的寻呼系统内存环境得以最佳使用。 安装在工业标准存储器模块上的压实器ASIC的集成并行数据压缩和解压缩功能以及本发明的软件驱动器和滤波器将最近使用的页面保存在系统存储器中。 通过在系统内存与磁盘和网络子系统之间的压缩页面传输来获得额外的性能。 此外,本发明可以通过在远程系统或分布式数据库之间传输压缩的页面数据来减少跨LAN或WAN的分布式计算机之间传输的数据量。

    System and method for managing compression and decompression of system memory in a computer system
    6.
    再颁专利
    System and method for managing compression and decompression of system memory in a computer system 失效
    用于管理计算机系统中的系统存储器的压缩和解压缩的系统和方法

    公开(公告)号:USRE43483E1

    公开(公告)日:2012-06-19

    申请号:US12121598

    申请日:2008-05-15

    IPC分类号: G06F12/00

    摘要: A method and system for allowing a processor or I/O master to address more system memory than physically exists are described. A Compressed Memory Management Unit (CMMU) may keep least recently used pages compressed, and most recently and/or frequently used pages uncompressed in physical memory. The CMMU translates system addresses into physical addresses, and may manage the compression and/or decompression of data at the physical addresses as required. The CMMU may provide data to be compressed or decompressed to a compression/decompression engine. In some embodiments, the data to be compressed or decompressed may be provided to a plurality of compression/decompression engines that may be configured to operate in parallel. The CMMU may pass the resulting physical address to the system memory controller to access the physical memory. A CMMU may be integrated in a processor, a system memory controller or elsewhere within the system.

    摘要翻译: 描述了一种用于允许处理器或I / O主机解决比物理存在的更多系统存储器的方法和系统。 压缩内存管理单元(CMMU)可能会保留最近最少使用的压缩页面,最近和/或经常使用的页面在物理内存中未压缩。 CMMU将系统地址转换为物理地址,并且可以根据需要管理物理地址处的数据的压缩和/或解压缩。 CMMU可以提供要压缩或解压缩到压缩/解压缩引擎的数据。 在一些实施例中,要压缩或解压缩的数据可以被提供给可以被配置为并行操作的多个压缩/解压缩引擎。 CMMU可以将生成的物理地址传递给系统存储器控制器以访问物理存储器。 CMMU可以集成在处理器,系统存储器控制器或系统内的其他地方。

    Selective lossless, lossy, or no compression of data based on address range, data type, and/or requesting agent

    公开(公告)号:US07190284B1

    公开(公告)日:2007-03-13

    申请号:US09239659

    申请日:1999-01-29

    IPC分类号: H03M7/30 G06F12/00

    摘要: An integrated memory controller (IMC) including MemoryF/X Technology which includes data compression and decompression engines for improved performance. The memory controller (IMC) of the present invention preferably selectively uses a combination of lossless, lossy, and no compression modes. Data transfers to and from the integrated memory controller of the present invention can thus be in a plurality of formats, these being compressed or normal (non-compressed), compressed lossy or lossless, or compressed with a combination of lossy and lossless. The invention also indicates preferred methods for specific compression and decompression of particular data formats such as digital video, 3D textures and image data using a combination of novel lossy and lossless compression algorithms in block or span addressable formats. To improve latency and reduce performance degradations normally associated with compression and decompression techniques, the MemoryF/X Technology encompasses multiple novel techniques such as: 1) parallel lossless compression/decompression; 2) selectable compression modes such as lossless, lossy or no compression; 3) priority compression mode; 4) data cache techniques; 5) variable compression block sizes; 6) compression reordering; and 7) unique address translation, attribute, and address caches. The parallel compression and decompression algorithm allows high-speed parallel compression and high speed parallel decompression operation. The IMC also preferably uses a special memory allocation and directory technique for reduction of table size and low latency operation. The integrated data compression and decompression capabilities of the IMC remove system bottle-necks and increase performance. This allows lower cost systems due to smaller data storage, reduced bandwidth requirements, reduced power and noise.

    System and method for performing scalable embedded parallel data decompression
    8.
    发明授权
    System and method for performing scalable embedded parallel data decompression 有权
    用于执行可扩展嵌入式并行数据解压缩的系统和方法

    公开(公告)号:US07129860B2

    公开(公告)日:2006-10-31

    申请号:US09821785

    申请日:2001-03-28

    IPC分类号: H03M7/30

    摘要: A parallel decompression system and method that decompresses input compressed data in one or more decompression cycles, with a plurality of tokens typically being decompressed in each cycle in parallel. A parallel decompression engine may include an input for receiving compressed data, a history window, and a plurality of decoders for examining and decoding a plurality of tokens from the compressed data in parallel in a series of decompression cycles. Several devices are described that may include the parallel decompression engine, including intelligent devices, network devices, adapters and other network connection devices, consumer devices, set-top boxes, digital-to-analog and analog-to-digital converters, digital data recording, reading and storage devices, optical data recording, reading and storage devices, solid state storage devices, processors, bus bridges, memory modules, and cache controllers.

    摘要翻译: 一种并行解压缩系统和方法,其在一个或多个解压周期中对输入压缩数据进行解压缩,其中多个令牌通常在每个周期中并行解压缩。 并行解压缩引擎可以包括用于接收压缩数据的输入,历史窗口和多个解码器,用于在一系列解压缩循环中并行地从压缩数据中检查和解码多个令牌。 描述了可以包括并行解压缩引擎的几个设备,包括智能设备,网络设备,适配器和其他网络连接设备,消费者设备,机顶盒,数模转换器和模数转换器,数字数据记录 读取和存储设备,光学数据记录,读取和存储设备,固态存储设备,处理器,总线桥接器,存储器模块和高速缓存控制器。

    System and method for performing scalable embedded parallel data compression
    9.
    发明授权
    System and method for performing scalable embedded parallel data compression 有权
    用于执行可扩展嵌入式并行数据压缩的系统和方法

    公开(公告)号:US06208273B1

    公开(公告)日:2001-03-27

    申请号:US09421968

    申请日:1999-10-20

    IPC分类号: H03M730

    摘要: A system and method for performing parallel data compression which processes stream data at more than a single byte or symbol (character) at one time. The parallel compression engine modifies a single stream dictionary based (or history table based) data compression method, such as that described by Lempel and Ziv, to provide a scalable, high bandwidth compression. The parallel compression method examines a plurality of symbols in parallel, thus providing greatly increased compression performance. The method first involves receiving uncompressed data, wherein the uncompressed data comprises a plurality of symbols. The method maintains a history table comprising entries, wherein each entry comprises at least one symbol. The method operates to compare a plurality of symbols with entries in the history table in a parallel fashion, wherein this comparison produces compare results. The method then determines match information for each of the plurality of symbols based on the compare results. The step of determining match information involves determining zero or more matches of the plurality of symbols with each entry in the history table. The method then outputs compressed data in response to the match information.

    摘要翻译: 一种用于执行并行数据压缩的系统和方法,其一次处理多于单个字节或符号(字符)的流数据。 并行压缩引擎修改基于(或基于历史表的)数据压缩方法,例如由Lempel和Ziv描述的数据压缩方法,以提供可扩展的高带宽压缩。 并行压缩方法并行地检查多个符号,从而提供大大提高的压缩性能。 该方法首先涉及接收未压缩数据,其中未压缩数据包括多个符号。 该方法维护包括条目的历史表,其中每个条目包括至少一个符号。 该方法操作以并行方式将多个符号与历史表中的条目进行比较,其中该比较产生比较结果。 然后,该方法基于比较结果确定多个符号中的每一个的匹配信息。 确定匹配信息的步骤包括确定多个符号与历史表中的每个条目的零个或多个匹配。 然后,该方法响应于匹配信息输出压缩数据。