CN1081360C - 虚拟通道存储系统 - Google Patents

虚拟通道存储系统 Download PDF

Info

Publication number
CN1081360C
CN1081360C CN97120176A CN97120176A CN1081360C CN 1081360 C CN1081360 C CN 1081360C CN 97120176 A CN97120176 A CN 97120176A CN 97120176 A CN97120176 A CN 97120176A CN 1081360 C CN1081360 C CN 1081360C
Authority
CN
China
Prior art keywords
cache
memory
virtual access
bus
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CN97120176A
Other languages
English (en)
Other versions
CN1184971A (zh
Inventor
杰弗里·H·李
安藤学
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Renesas Electronics Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Publication of CN1184971A publication Critical patent/CN1184971A/zh
Application granted granted Critical
Publication of CN1081360C publication Critical patent/CN1081360C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0806Multiuser, multiprocessor or multiprocessing cache systems
    • G06F12/084Multiuser, multiprocessor or multiprocessing cache systems with a shared cache
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/06Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0844Multiple simultaneous or quasi-simultaneous cache accessing
    • G06F12/0846Cache with multiple tag or data arrays being simultaneously accessible
    • G06F12/0848Partitioned cache, e.g. separate instruction and operand caches
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus

Abstract

一种存储器系统,具有与虚拟通道系统连接的一主存储器。虚拟通道系统提供控制主存储器的多个虚拟存取通道。这些存储器虚拟存取通道包括高速缓存源、突发数据组模式操作和预充电控制。多个虚拟缓存通道是可高速缓存的,每个包括存储高速缓冲入口的通道行高速缓存存储器和存储相应高速缓存地址入口的通道行地址寄存器。通过一总线旁路电路设置非高速缓存虚拟存取通道。每个通道是可定址的,致使存储器主设备可被指定存取虚拟存取通道。

Description

虚拟通道存储器系统
本发明涉及半导体存储器的存储器系统,尤其是涉及提供有多个虚拟存取通道由多个存储主体简化存取的存储器系统。
常规数据处理系统通常包括多个处理器处理过程,它们共用系统存储器,多个处理器/处理过程(即:存储主设备)以多任务方式存取系统存储器(例如,常规系统存储器或图形帧缓冲存储器)。存储器主控器包括中央处理单元(CPUS),图形处理器,PCI总线设备和EISA/ISA总线控制器。每个存储器主控存取表现地址位置、时间位置和/或一特定数据组尺寸的部分系统存储器。因此将需要有一种能以有效的方式使多个存储器主设备存取存储器的存储器系统。还需要这样一种存储器系统能够动态地修改以寄存不同类型的存储主控体。
图1是多处理系统100的方框图,它采用了共用存储器体系结构。系统100包括处理器101a-101c,专用高速缓冲存储器102a-102c,专用高速缓存控制器103a-103c,系统总线104,总体主存储器105和存储控制器106。处理器101a-101c通过公共并行系统总线104共用主存储器105。高速缓冲存储器(简称:高速缓存)102A-102C典型地由相对高速SRAM阵列构成的。主存储器105是使用相对低速和低成本的DRAM阵列构成。象系统100这样的系统在下列参考文件中已描述:(1)“协议保持数据一致”(Protocals keepDate Consistent″,John Gallantat著,EDN1991年3月14日,41-50页,及(2)“高速存储器系统”,A、V、Pohm和O、P、A grawal著,Reston出版,1983年,79-83年。
专用高速缓存102a-102c减少了每个处理器101a-101c存取主存储器105的频率。这就减少了系统总线104的流通量。然而,高速缓存102a-102c是相对昂贵的。本系统100中,为每个附加的处理器必须加上一附加的昂贵的高速缓存。以外,系统100要求控制逻辑确保在高速缓存102a-102c和主存储器105中数据的一致性(即高速缓冲相关性)。高速缓冲相关性已在1992年Kluwer学院出版的,由M.Duois和S.S.Thakkar著的“能比例共用存储器的多处理器”中153-166页中描述。需要提供高速缓冲相关性的控制逻辑增加了成本并降低了系统100的性能。此外,如果取进高速缓存102a-102c的数据值是没用的,那么主存储器105和系统总线104的效率会降低。
图2是另一常规多处理器系统200的方框图,它包括一总体主存储器204,它被划分为模块206a-206c。每个主存储器模块206a-206c分别连接于一单个相对应的高速缓存模块205a-205c。每个高速缓冲模块205a-205c连接于一主存储器总线202。处理器201A-201C也与主总线202连接。处理器201a-201c共同分享高速缓存模块205a-205c和主存储模块206a-206c。系统200在Pohin著的“高速存储器系统”中第75-79页中加以描述。当处理器数量大致与存储器模块数(即高速缓存模块)相等时,高速缓存系统颠簸可能发生。高速缓存系统颠簸涉及高速缓存线路的恒定的替换。高速缓冲系统颠簸实际上降低了系统的性能。
为降低SRAM高速缓冲存储器的成本,某些已有技术系统使用另外的预取缓冲用于指令和数据。这些预取缓存在不需要大的高速缓冲存储器的情况下增加了高速缓存的命中率。这样的预取缓冲在由Karnamadakala Krishnamohan等的名为“预取进高速缓冲存储器以最小化计算机系统中主存储器存取时间和高速缓冲存储器的容量”PCT专利申请PCT/US93/0181 (WO/18459)中已有描述。该预取高速缓冲存储器是采用传统的分离高速缓冲存储器结构,且存储器的带宽是由预取操作和高速高速缓存操作二者使用的。需要一增强的预取算法(具有预取正确信息的一致的高概率)和足够的高速缓存器尺寸和结构(以提供高的高速缓存命中率)以传递超过传统高速缓存方式的任何系统性能的改进。
其它常规系统使用DRAM阵列的读出放大器作为高速缓冲存储器。(见:Farmwald等的PCT专利申请PCT/US91/02590)。使用DRAM阵列的读出放大器作为(高速缓冲存储器在主存储器和高速缓存之间提供了低成本、高传递带宽。相等于进行CAS(列存取)所需要时间的高速缓存命中存取时间是相对较短的。然而,高速缓存错过的这样一个系统的存取时间实际上是比DRAM阵列的正常存储取时间长(没有使用读出放大器作为高速缓存)。这是因为当读出放大器被用作高速缓存时,既使DRAM阵列不被存取,DRAM阵列也是保持在页模式(或激活的模式)。因此高速缓存的错过需要DRAM阵列进行由RAS(行存取)操作和CAS(列存取)操跟随的一预充电操作。进行预充电操作所需的时间(即预充电时间)大致是进行RAS操作所需时间的两倍长。因此,总的存储器存取时间是等于DRAM阵列预充电时间、RAS存取时间和CAS存取时间的总和。相对比,在DRAM阵列的正常操作中,当DRAM阵列没有被存取时它是在预充电状态,而存储器存储时间等于DRAM阵列的RAS存取时间加CAS存取时间。
另一已有技术的高速缓冲存储器系统包括一集成一到DRAM阵列的SRAM高速缓冲存储器,该DRAM阵列包括集合地作为主系统存储器的四个存储单元。该SRAM高速缓冲存储器包括高速缓冲行寄存器,它具有存储来自DRAM阵列的一个单元的整行数据。最后行读出(LRR)地址锁存器存储从DRAM阵列中读出的最后行地址。在当时读出存取的行地址与在LRR地址锁存器中存储的行地址相等时,从行寄存器中读出所需要的数据值,而不是从DRAM阵列。因此,在高速缓冲行寄存器中有一高速缓存进口,它是由DRAM阵列的四个单元的每个所共用的。这个已有技术存储器系统在Ramtron国际公司的序言记录表,“DM2202EDRAM 1MBX4强化的动态RAM”的1-18页有详细的描述。
因此需要有一种存储器系统,它可以克服了已有技术存储器系统中前面所描述的缺点。
根据本发明的存储器系统,它包括一主存储器和与主存储器并行连接的虚拟通道系统。主存储器通常包括多个存储单元。虚拟通道系统包括用于存取主存储器的多个存储器虚拟存取通道,这些存储器虚拟存取通道可以包括,如,高速缓冲源、突发存取控制源,及存储器预充电源。每个虚拟存取的通道位于存储器单元和存储器系统接口之间,并且是可由外部存储主控体独立定址的。
通过使虚拟存取通道可以被外部存储器主设备编址,虚拟存取通道可以灵活地分配服务于与存储器系统连接的数据处理系统所需的不同的存储器主设备。例如,一个存储器主设备可以被分配存取两个虚拟存取通道,同时另外几个存储器主设备可以被分配共享一单个虚拟存取通道的存取。在该存储器系统的操作中这些分配可以是固定的,或者可以是动态可变的。为了连接不同的数据处理系统,这些分配也是可修改的。
在一个实施例中,虚拟存取通道包括多个可高速缓存的虚拟存取通道,它们能执行高速缓存操作。在这样一个实施例中,每个可高速缓存虚拟存取通道包括用于存储一个或更多个高速缓存数据入口的高速缓存数据存储器,和用于存储一个或更多个相应的高速缓冲地址入口的高速缓存地址存储器。通过分配一可高速缓存虚拟存取通道以服务于每个存储器主设备,每个存储器主设备被预先提供了一专用的高速缓存贮器源。虚拟存取通道也可以包括不能高速缓存的虚拟存取通道,其能在当发生高速缓存未命中时使可高速缓冲虚拟存取通道被旁路。
本发明还包括存取存储器的一种方法,它包括如下步骤:(1)对存储器阵列连接一虚拟存取系统,其中虚拟存取系统具有与存储器阵列并行连接的虚拟存取通道统,每个虚拟存取通道用于存取存储器阵列[的一组存储器存取源],(2)对存取一个或更多的虚拟存取通道分配各个存储器主设备,其中每个虚拟存取通道位于存储器单元和存储器系统接口之间;(3)自存储器主设备向虚拟通道系统提供一存取地址,(4)根据存取地址存取一选定的虚拟存取通道。
这种方法还可以包括步骤(5)在选择的虚拟存取通道中存储高速缓存入口和相应的高速缓存地址入口,(6)将存取地址与高速缓存地址入口进行此较,(7)如果存取地址与高速缓存地址入口一致则存取该高速缓存入口。如果存取地址与高速缓存地址入口不一致,那么存储器阵列可以通过一总线旁路电路存取。在这种情况下,选择的虚拟存储通道的高速缓存入口被更新以反映通过总线旁路电路存取的数据值,而高速缓存地址入口被更新以反映存取的地址。
在这种方法的变化中,在同一时间可以激励两个虚拟存取通道,一个虚拟存取通道在虚拟存取通道和存储主控体之间接口处进行操作同时,另一虚拟存取通道在虚拟存取通道和存储器之间接口处进行操作。这就在存储器系统中方便地提供了改善的一致性操作。
在此方法的另一变形中,每个虚拟存取通道的操作模式是独立程序化的。例如,每个虚拟存取通道可以独立地程序化以具有特定的高速缓存链模式、突发数据组长度和预充电模式。这能使虚拟存取通道可以独立地适合以最好的服务于相应存储器主设备的操作需要。
通过下面结合附图的描述,本发明将变得更加清楚易于理解。
图1是采用共享存储器体系结构的常规多处理系统的方框图;
图2是包含被划分为模块总体主存储器的另一常规多处理器系统的方框图;
图3是本发明的一个实施例存储器系统的方框图;
图4是本发明一实施例中通道行高速缓存和高速缓存行地址寄存器的示意图;
图5是根据本发明的一实施例实现图3的存储器系统的一加速图形处理器的方框图;
图6是本发明的另一实施例实现图3存储器系统的流水线图形系统的方框图。
图3是本发明的一实施例存储器系统300的方框图。存储器系统300包括存储单元301-304、单元行接口电路401-404、存储器单元接口总线310、虚拟通道系统320、存储器系统接口总线312、存储器系统接口314和系统总线315。存储器系统接口314是通过系统总线315与一个或更多外部存储器主设备(未示出)连接的。
虚拟通道系统320包括存储器单元接口总线310、通道行高速缓存接口电路501-507、通道行高速缓存601-607、高速缓存行地址寄存器701-707、通道行高速缓存接口电路801-807、总线旁路电路311、存储器系统接口总线312、及虚拟通道控制电路325。
通常,虚拟通道系统320设有多个独立的存储器虚拟存取通道。每个虚拟存取通道位于存储器单元301-304和存储器系统接口314之间。虚拟通道系统320包括八个虚拟存取通道1-8。七个可高速缓存虚拟存取通道是由七个通道行高速缓存电路601-607、它们的七个相应高速缓存行地址寄存器701-707及它们的相应有通道行高速缓存接口电路501-507和801-807所限定的。一个不能高速缓存的虚拟存取通道8是由总线旁路电路311所限定的。如下面更详细描述的,每个可高速缓存的虚拟存取通道是能够作为一独立的高速缓冲存储器,不能高速缓存的虚拟通道8是为引导存取存储器单元301-304设置的。
每个虚拟存取通道1-8是可以通过设置有存储器系统300的基片上的针跳线由外部分别单独选择的。虚拟存取通道1-8可以通过虚拟通道控制电路325分别定址的。因此,与系统总线315连接的存储器主设备提供了三位(Bit)地址信号至虚拟通道控制电路325(通过存储器系统接口314)。根据这个三位地址信号,虚拟通道控制电路325启动或选择八个虚拟存取通道1-8中的一个。在这种方式中,不同的存储器主设备(例如,CPU、存储器控制器或图形控制器)可以映象到每个虚拟存取通道,下面表1列出了本发明一实施例中虚拟存取通道地址排列。
    表1三位虚拟    寻址的虚拟通道通道地址    (限定的单元参照量)000         1(inc.501、601、701、801)001         2(inc.502、602、702、802)010         3(inc.503、603、703、803)011         4(inc.504、604、704、804)100         5(inc.505、605、705、805)101         6(inc.506、606、706、806)110         7(inc.507、607、707、807)111         8(inc.311)
虚拟存取通道提供每个存储器主设备用它自已的通道存取存储器系统300,以便对存储器单元301-304高速无阻碍的存取。其结果,多个存储器主设备可以同时操作,每个都具有自己的虚拟存取通道。根据自身需要,每个主控体操作它自身速度,以按需要存取存储器单元301-304。存储器单元301-304和虚拟存取通道1-8之间的信号总线310表示在任何给定的时间在存储器单元301-304的虚拟存取通道1-8之间仅能有一个操作(读/写)。虚拟存取通道1-8和存储器系统接口314之间分开的总线312表示在任何给定的时间在虚拟取通道1-8和存储器系统接口314之间仅能是一种操作。然而,存储器单元301-304和虚拟存取通道1-8之间的操作和虚拟存取通道1-8和存储接口系统314之间的操作可以同时发生。
一旦虚拟存取通道1-7已被装载,存储器系统300可以对外部存储器主设备提供很快的读和写存取。虚拟存取通道是使用与标准同步DRAM(SDRAM)操作相同的操作和时序装载的。在所描述的实施例中,一两相命令/数据格式是以命令是在第一相时钟信号解码并在第二相对钟信号执行的方式完成的。由于所有的可高速缓存虚拟存取通道1-7是直接由来自外部的主机存储器控制器管理的,其能够对不同的存储器主设备安排不同的通道以避免相互干扰,所以可高速缓存虚拟存取通道1-7以一峰值命中率操作,具有一点或没有高速缓存系统颠簸,所以通过允许主存储器控制器直接管理通道,可高速缓存虚拟存取通道1-7在自动跟踪各种的动态改变空间和暂存位置方面是有效的。并且在多任务系统环境中为全部处理过程提供了快的高速缓存存取。
当可高速缓存虚拟存取通道1-7不执行高速缓存功能时,存储器系统300表现出SDRAM的存取速度,当可高速缓存虚拟存储通道1-7执行高速缓存功能时,存储器系统300表现出PC第二级(L-2)高速缓存的存取速度。因此存储器系统300的速度提高到可高速缓存虚拟存取通道1-7的全存取速度,当然,这个表现是到存储器系统接口314和系统总线315带宽表现限制的。在特定的实施例中,单个存储器主设备可以存取一个以上的虚拟存取通道,从而使高速缓存系统颠簸的概率最小。
现在将详细的描述本发明。在所描述的实施例中,存储器单元301-304是常规的动态随机存取存储器(DRAM)阵列。由于每个存储器单元需要相对小的布置区,所以采用DRAM阵列。然而,本发明是不受用于存储器单元301-304的存储器类型限制的。在另一实施例中,存储器单元301-304可以使用静态随机存取存储器(SRAM)阵列实现。
在所述的实施列中,每个存储器存储单元301-304包括512行和8192列存储器单元。该8192列确定1024个8位字节。因此,每个存储器单元301-304的容量是512K字节,而存储器单元301-304的总容量是2M字节。本发明是不受本实施例中描述的存储器容量或行/列结构限制的。代表行和列数的存储器单元的编排是由存储器存储单元内并行需要和模尺寸有效系数的限制所确定的。
此外,虽然图形中示出了四个存储器301-304,而在本发明的其它实施例中,还可使用任何数目的存储单元,例如,在不同的实施例中,存储单元301-304可用单一的存储单元、2个存储单元、8个存储单元或者说6个存储单元来代替。在存储器系统中的存储单元的个数是由提供并行操作的需要来决定的。当预先限定的总存储器客量被分为很多的存储单元时存储器系统的粒度增加。此外,当使用权更多的存储单元时,可以激发更多数目的存储单元(例如在地址的到达的准备中与它们的相应的读出放大器相连来执行读或写操作)来执行各种的操作而其它的存储单元被诸如激发、预充电、读、写或更新操作等不受干扰的操作所占据。与此同时,被用于提供一给定存储容量的存储单元的数目也被模片尺寸的可行性及包含存储器系统300的存储芯片的成本所限定。
存储单元301-304的每一个都包含一读出放大器电路,每个读出放大器电路与相应存储单元内的比特(列)线相连接,这样的话在读或写操作期间,每个读出放大器电路存储一个整个的数据行(1024字节)。这样的读出放大器电路是已知技术。在存储单元301-304的读出放大器电路分别与存储单元行接口电路线401-404连接。存储单元行接口电路401-404,受来自虚拟通道控制电路325的控制,在存储单元301-304的读出放大器电路与存储单元接口总线301之间接供数据路径。对储存体行接口401-404进行控制从而保证存储单元阵列301-304中只有一个在任何给定的时间来驱动存储单元接口总线310。同样对储存体行接口电路401-404进行控制,这样存储单元301304中的一个或几个都能同时从存储单元接口总线310接收数据。
在不同的实施例中,存储单元接口总线310比存储单元301-304的读出放大器电路宽或窄。在所述的实施例中,每个读出放大器电路的宽度都为存储单元接口总线310的宽度的整数倍。更具体地说,每个读出放大器电路为1024字节宽(即存储单元301-304的物理行宽度),而存储单元接口总线310才为64字节(51比特)宽。在此情况下,在读操作期间,所选择的存储单元向其相关的读出放大器电路提供1024字节数据行。与所选择的存储单元对应的存储单元接口电路将存在于1024字节中的16个64字节字中的一个传送到存储单元接口总线310。在此情况下,所选择的储存体行接口电路执行了一个多路复用的功能。
相反地,在一个写操作中,被写在所选的存储单元中的64字节字被提供到存储单元接口总线310。相应的存储单元行接口电路执行一个去多路复用功能来将经64字节字传送到位于相应的读出放大器电路中的所选出的16个64字节字的其中一个上。在此情况下,存储单元行接口电路401-404执行双向的多路复用/去多路复用功能。
可替代地,存储单元接口总线310的宽度为读出放大器电路的宽度的整数倍。在此情况下,存储单元行接口是401-404的每一个执行一去多路复用功能来将从所选的存储单元读出的数据(同时可读取多个存储单元)发送到存储单元接口总线310的总线的所选出的子线上。类似地,存储单元行接口电路401-404中的每一个执行一个多路复用功能来将被写到存储单元301-304的数据从存储单元接口总线310的总线的子线发送到所选出的读出放大器电路。
存储单元接口总线310平行地从储存体行接口电路401-404延伸到信道行高速缓冲存储器接口电路501-507及总线旁路电路311。通道行高速缓存器接口电路501-507在存储单元接口总线310与相应的通道行高速缓存器电路601-607之间提供一接口。通道行高速缓存电路601-607的宽度可以比存储单元接口总线310的宽度宽或窄。由此,通道行高速缓存器接口电路501-507可在存储单元接口总线310与通道行高速缓存器电路601-607之间在需要的情况下执行多路复用及去多路复用功能。在所述的实施例中,信道行高速缓冲电路601-607及存储单元接口总线310都具有64字节的宽度。由此,在此实施例中不需要多路复用功能。正如下面所详细描述的,通过虚拟通道控制电路325来控制通道行高速缓存接口电路501-507的操作。
隐含在存储单元接口总线310设计中的为一定时控制,根据存储单元301-304是否执行了一个读或写操作其将来自存储单元301-304或通道行高速缓存电路601-607的信号等送到存储全接口总线310。更具体地说,隐含的定时控制保证通道行高速缓存接口电路501-507在对存储单元301-304的写操作期间只驱动存储单元接口线310,类似地,定时控制保证存储单元行接口电路401-404在从存储单元301-304的读操作期间只驱动存体储接口总线310。
如前所述,每个通道行高速缓存接口电路501-507与相应的通道行高速缓存存储器601-607中的一个连接。通道行高速缓存存储器601-607的数目限定了在存储器系统300中的高速缓存虚拟存取取通道的数目。虽然在所述的实施例中存在七个高速缓存虚拟存取取通道,任何的整数的缓冲存取通道数都是可以的,例如,在另一个实施例中,使用15个可高速缓存虚拟存取通道。高速缓存虚拟存取通道的个数可大于等于或少于存储单元的数目。通道行缓冲存储器601-607中的每一个都具有整数N个单独装入及定址的缓冲入口,其中N为大于或等于1的整数。也即,通道行缓冲存储器601-607中的每一个都具有至少一个缓冲入口。每个高速缓存入口具有存储多个存储单元301-304中的一个的全部或部分行对应的数据字节的容量(宽度)。通道行缓冲存储器601-607中的每一个可并行地从存储单元301-304中的任何一个装入。
通道行高速缓存存储器601-607中的每一个都与相应的缓冲行地址寄存器701-707中的一个相关联。缓冲行地址寄存器701-707中的每一个存储N个缓冲地址。也即,在通道行高速缓存存储器601-607中的每个缓冲入口都具有存在相应的缓冲行地址寄存器701-707中的一个缓冲行地址寄存器中的相应的缓冲地址。
图4为根据本发明的一个实施例的通道行高速缓存存储器601及缓冲行地址寄存器701的示意图。在此实施例中,N等于2,这样在通道行高速缓存存储器601中有2个高速缓存入口601a、601b,而在高速缓冲存储器行地址寄存器701中有两个相应的高速缓冲存储器地址701a、701b。在信道行高速缓冲存储器601中的第一个高速缓存入口601a为64字节字B0-B63。在信道行地址寄存器701中的第一个高速缓冲存储器地址710a存储一个地址,它表示(1)存储单元(2)行地址及(3)与64字节字B0-B63对应的列地址。例如,在高速缓冲存储器行地址寄存器701中的第一个高速缓冲存储器地址可表示在通道行高速缓存器601中的第一个高速缓存入口601a是从存储单元302、行数256及列位置64接收的。类似地,第二高速缓存入口601b为64-字节字B′0-B′63,其用第二缓冲地址701b来确认。
虽然高速缓冲存储器行地址寄存器701-707是作为存储器系统300的一部分示出的,在其它实施例中,这些高速缓冲存储器行地址寄存器可被设置在存取存储器系统300的存储主设备的控制器中。
通道行高速缓存器接口电路801-807将通道行高速缓存存储器601-607及高速缓冲存储器行地址寄存器701-707与存储器系统接口总线312连接。需注意的是,图3清楚地描述了存储器系统300中的数据路径,而非地址路径。由于通道行高速缓存601-607具有64字节的宽度,而存储器系统接口总线312的宽度为1字节,通道行高速缓存接口电路801-807执行多路复用及去多路复用功能以使数据在这些元件之间转换。正如下面所详细描述的,虚拟通道控制电路325控制信通行高速缓冲存储器电路801-807。
总线旁路电路311在存储单元301与存储器系统接口总线312之间提供一个非缓冲的虚拟存取通道。由于存储单元接口总线310的宽主为64字节,而存储器系统接口总线312的宽度为1字节,总线旁路电路311执行多路复用及去多路复用功能以使数据在这些总线间传送。总线旁路电路311如下面详细描述的受虚拟通道控制电路325控制。
存储器系统接口总线312为并行总线,其将通道行高速缓存器接口电路801-807、总线旁路电路311及虚拟通道控制电路325与存储器系统接口314耦合。存储器系统接口总线312可为多路复用地址/数据总线。可替代地,通过存储器系统接口总线312可提供专用数据及地址路径。存储器系统接口314包括与存储器系统300相关的输入/输出插脚驱动器。如果存储器系统接口314与地址/数据多路复用总线相耦合,则在存储器系统接口214中也提供相应的去多路复用。存储器系统接口314还提供需要执行任何逻辑电压转换的线路。
虚拟通道控制电路325包括用于控制存储单元行接口电路401-404,信道行接口电路501-507,缓冲行地址寄存器701-707、信道行接口电路801-807及总线旁路电路311的控制逻辑。存储器系统300的操作程序如下。首先,与系统总线315耦合的外部处理系统确定哪个存储器主机要存取哪个虚拟存取通道。也即,外部处理系统将两个存储器主机分配给一个或多个虚拟存取通道。每个虚拟存取通道被一个或多个外部存储设备存取。这些分配是由存储控制器逻辑、系统BIOS、或操作系统的存储控制管理器部分来决定的。这种分配可为静态的(即一旦确定不再改变)或动态的(即当系统源变化时存储管理器改变虚拟通道的分配)。根据需要虚拟通道可由系统处理器进行分配。
为了开始存储器存取,外部存储设备向存储器系统接口314提供如下信息(1)当时存取地址,包括存储单元、当时存取的行和列地址(2)确定存取为读或写操作的读/写信号(3)如果当时存取为一个写操作时写数据字节,及(4)用于确定存取信道被存储主设备存取的多个虚信选择信号。
存储器系统向虚拟通道控制电路325提供虚拟通道选择信号,从而通知虚拟存取通道的虚拟通道控制电路325已被存储主设备存取。存储器系统接口314还向虚拟通道控制电路325提供当时存取地址。与此相对应地,虚拟通道控制电路325将当时的存取地址与存储在所选择的虚拟存取通道中的高速缓冲存储器行地址寄存器中的缓冲地址进行比较。例如,如果虚拟通道选择信号确定了包含信道高速缓冲存储器行存储器601和高速缓冲存储器行地址寄存器701的虚拟存取通道,则虚拟通道控制电路325将当时地址与高速缓冲存储器行地址寄存器701中的高速缓冲存储器地址701a、701b进行比较以确定是否存在匹配(高速缓冲存储器命中)。读操作
如果不存在匹配(缓冲错过)且读/写信号表示存储器存取为一个读操作,则虚拟通道控制电路325造成1024字节的数据行被从存储单元301-304中的一个读出。与当时存取地址对应地选出特定的行及存储单元。通过使用传统的SDRAM RAS-RAS命令序列来存取所选择的存储单元。将被赋予地址的数据字节行提供到与所选地址存储单元对应的存储单元行接口电路。虚拟通道控制电路325还使得此相应的存储单元行接口电路来将来自1024数据字节行的64字节字传递到存储单元接口总线310。此64字节字是针对当时存取地址的列地址所选出的。所选出的64字节字包含与当时存取地址及63个其它的数据字节相对应的数据字节。被赋予地址的数据字节被从总线旁路电路311传送到存储器系统接口314并被提供到存储主设备。需注意,总线旁路电路311只传送所接收到的64字节字的一个选出的字节。
此外,64字节字被从存储单元接口总线310传送到通道行高速缓存器接口电路501-507。虚拟通道控制电路325只保证与所选出的虚拟存取通道对应的信道行接口电路,从而使得64字节字被作为对所选出的虚拟存取通道的通道行高速缓存存储器的高速缓存入口来写。例如,虚拟通道控制电路325可使高速缓冲存储器行接口电路501来将64字节字被写到通道行高速缓存存储器601的高速缓存入口601a。虚拟通道控制电路325还使当时存取地址存储单元地址、行地址及列地址的一部分(即限定64-字节的列位置的部分)被写到所选择的虚拟存取通道的高速缓冲存储器行地址寄存器、例如,虚拟通道控制电路325能够使当时存取地址的相应部分作为高速缓冲存储器行址寄存器701中的高速缓冲存储器地址701a被写入。
如果每个虚拟存取通道只有一个高速缓存入口,则在前面的高速缓存入口及前面的所选出的虚拟存取通道内的相应缓冲地址的重写中高速缓冲存储器遗失结果。如果虚拟存取通道深度大于1,则缓冲在其中的一个高速缓存入口的更改中及在所选出的虚拟存取通道的相应高速缓冲存储器地址中遗失结果。被用于选择被修改的高速缓存入口的方法可以包括,但不仅限于下面的一种或多种方法:(1)改写最后使用的高速缓存入口(2)在循环基础上改写入口(3)随机改写高速缓存入口及(4)改写行地址与新的行地址最接近的高速缓存入口。
虚拟通道控制电路325检验当时存取地址是否与存储在用虚拟通道选择信号确认的虚拟存取通道的高速缓冲存储器行地址寄存器中的高速缓冲存储器地址匹配(高速缓冲存储器命中)。在检测到高速缓冲存储器命中的情况下,虚拟通道控制电路325使所选的虚拟存取通道的高速缓冲存储器行接口电路(801-807)将被选取地址的数据字节从所选取的虚拟存取通道的通道行高速缓存存储器传送。例如,在当时的存取地址与存储在高速缓冲存储器行地址寄存器701中的高速缓冲存储器地址701a匹配时,虚拟通道控制电路325可使高速缓冲存储器行接口电路801传送来自通道行高速缓存存储器601的高速缓存入口601a的数据字节B3。当高速缓冲存储器发生命中而不需要存取后面的存储单元301-304时,存取通道行高速缓存存储器601-607。虚拟通道控制电路325也可便于突发数据组读存取。在这样的一个实施例中,需要一个突发数据组读存取的存储设备产生一个突发数据组使得控制信号通知虚拟通道控制电路325读操作为一个突发数据组读存取。在此实施例中,虚拟通道控制电路325包含一个突发数据组存取控制寄存器(未示出)。突发数据组存取控制寄存器可为一个40-比特寄存器,其被分割为8个5比特入口。每个5比特入口都为8个虚拟存取通道的相对应的一个确定突发数据组存取长度。例如,虚拟存取通道的突发数据组存取长度可为2,4,6,8,16,32或64字节。不同的虚拟存取通道可具有不同的突发数据组存取长度,这主要根据存取虚拟存取通道的特定存储主设备的特性来定。突发数据组存取控制寄存器就数据处理系统的存储设备的性质而言其通过外部数据处理系统来设计。虚拟通道控制电路325控制突发数据组存取操作。
在一最佳实施例中,配备了通道行高速缓存器别名设备。在通道行高速缓存器别名设置通道行高速缓存器别名设置中,虚拟通道控制电路325确定当时存取地址是否与存储在缓冲行地址寄存器701-707任一个中的高速缓冲存储器地址相匹配(相一致)。也即,当时存取地址与所有的高速缓冲存储器行址进行比较,而不是仅与所赋予地址的虚拟存取通道的高速缓冲存储器行地址进行比较。如果存在这样一种匹配,则虚拟通道控制电路325使所需的数据字节被从包含所需数据字节的虚拟存取通道抽出,即使此虚拟存取通道不是被虚拟通道选择信号所确认的虚拟存取通道。
写操作
如果当时存取地址不与虚拟存取通道中的任一个的高速缓冲存储器地址匹配(高速缓冲存储器遗失),而读/写信号表示存储器存取为一个写操作,然后虚拟通道控制电路325使由存储设备提供的写数据字节被写到被虚拟通道选择信号所确认的通道行高速缓存存储器601-607。虚拟通道控制电路325还改写相应的高速缓冲存储器行地址寄存器701-707以反映当时的存取地址。因为只有一个字节被写到通道行高速缓存存储器(存储64字节),其它的63字节从相应的存储单元提供到通道行高速缓存存储器。
下面的实例将澄清对于高速缓冲存储器遗失的写操作。首先,当时存取地址,虚拟通道选择信号、写控制信号及数据字节被从存储设备发送到虚拟通道控制电路325。在本实例中,假设虚拟通道选择信号确认缓冲的虚拟存取通道1(用元件501、601、701及801确认)以及数据字节B3为存储单元301-304中的一个内的64字节的第4个数据字节。
虚拟通道控制电路325将当时存取地址与高速缓冲存储器行地址寄存器701-707的内容进行比较确定不存在匹配。相应地,虚拟通道控制电路325将当时存取地址写到高速缓冲存储器行地址寄存器701的高速缓冲存储器地址701a上。虚拟通道控制电路325还将数据字节B3写到通道行高速缓存存储器601的高速缓存入口601a中的第四字节位置。此写操作是通过高速缓冲存储器行接口电路801来进行的。基本与此写操作相并行地,虚拟通道控制电路325在存储301-304中的当时存取地址存取64字节字。此64-字节字被发送到高速缓冲存储器接口电路501。虚拟通道控制电路325控制高速缓冲存储器行接口电路501来执行一个字节写掩码功能。也即,高速缓冲存储器行接口电路501只将64比特字的0-2和4-63比特字发送到通道行高速缓存存储器601的高速缓存入口601a。在此情况下,一个当时的64位字节高速缓存入口被提供给通道行高速缓存存储器601。
数据字节B3不立即被写到存储单元301-304(即写被去除)。相反,数据字节B3仍保留在通道行高速缓存存储器601中直到高速缓存入口601a被恢复。需注意任何随后的对当时存取地址的读存取会使数据字节B3被从通道行高速缓存存储器601适当地读出(由于高速缓冲存储器行别名设置)。接着,信道行别名设置消除对高速缓冲存储器探听的必要。也即,没有必要连续地监控新的写地址(探听)以确定新的写操作是否在没有重写相应的高速缓存入口时改写存储单元301-304。
如果当时的存取地址与虚拟存取通道中的任一个的高速缓冲存储器地址匹配(高速缓冲存储器命中),而读/写信号表示存储器存取为写操作,则虚拟通道控制电路325使由存储设备提供的写数据字节被写到导致高速缓冲存储器命中的高速缓存入口上。
例如,如果由于当时存取地址与存储在信道地址寄存器701中的高速缓冲存储器地址701a相对应而存在高速缓冲存储器命中,则虚拟通道控制电路325使新数据字节被从高速缓冲存储器行接口电路801发送来改写64比特高速缓存入口601a中的字节中的一个。是由当时存取地址来确定被改写的字节。此新数据字节通过高速缓冲存储器行接口电路801被发送到64比特高速缓存入口601a中的相应字节位置。高速缓冲存储器行接口801根据由虚拟通道控制电路325接收的控制信号执行多路复用功能。在此情况下,保留了存储器系统300中的数据相关。
高速缓存入口601a不是立即被恢复到存储单元301-304。相反地,此恢复操作被延迟到后面的某一时间。这使得多个相连的数据字节被写到高速缓存入口601a而无需在每个数据字节后存取存储单元301-304。无论何时当存储设备预测到将需要一个新的高速缓存入口时,存储设备都可发出一个使高速缓存入口的内容被写到对应的存储单元的对应行的恢复命令。此恢复命令可与虚拟存取通道与存储器系统接口314间的另一个操作(读或写)同时进行。在所述的实施例中,多个恢复操作可在多个存储单元301-304中同时进行。针对存储设备在不同的时间发出恢复命令事实而言,防碍了储存体间的恢复操作的同时发生。这种交错保证存储单元接口总线310被用在不同的时间来完成从虚拟存取通道1-8到存储单元301-304的数据传输操作。为了保证主存储控制器方便地跟踪总线310的状态,恢复操作被限定具有一具体数目的时钟周期。
根据本发明的另一个方面,可通过虚拟存取通道完成其它的存储器存取功能。例如,虚拟存取通道还可在存储器系统300内完成预取操作。预取是指当在从虚拟存取通道读取其它数据字节期间从存储器到301-304来抽取数据字节。控制主存储控制器以保证任何需要的恢复操作在执行预取操作前来完成。
通过存储设备可发出预取命令。预取命令特指从存储单元301-304中的特定的一个中读取特定的行并借助存储单元接口总线310将其载入虚拟存取通道1-8的特定的一个的特定入口中。预取操作可与包含存储器系统接口总线312上的虚拟存取信道1-8与存储器系统接口314间的数据的读或写操作同时进行。此外,存储单元301-304中的每一个可针对在不同的虚拟存取通道中的不同缓冲入口来执行各自的预取操作。当然,就预取命令是在不同的时间发出/发起而言,存储单元301-304间的同时预取操作是流水线状的(在不同的操作阶段交错)。此外,执行的交错阶段还保证在使用存储单元接口总线310来将数据从存储单元301-304传送到虚拟存取通道1-8中是不冲突的。
根据本发明的另一个方面,虚拟通道控制电路325可包含一个8-比特预充电控制寄存器,其对8个虚拟存取通道中的每一个都包含1个预充电控制比特。如果预充电控制比特具有第一逻辑值,则在相应的虚拟存取通道中完成自动预充电。在自动预充电模式中,在完成每一个对通道行高速缓存存储器的写操作后,对存储单元301-304执行相应的写操作。如果预充电控制比特只有一第二逻辑值,则在相应的虚拟存取通道内执行非自动预充电。
如前所述,在任何时间在存储单元接口总线310上只能执行一个操作。类似地,在任何时间在存储器系统接口总线312上只能执行一个操作。然而,在存储单元接口总线310及存储器系统接口总线312上可完成同时的操作。例如,数据可被从存储单元预取到通道行高速缓存存储器而与此同时数据被从通道行高速缓存存储器读取至存储器系统接口314。类似地,可从通道行高速缓存存储器到存储单元执行一恢复操作而与此同时数据被从通道行高速缓存存储器读取至存储器系统接口314。
在另一个实施例中,多个存储器系统(芯片)可并联以产生一较大的通道行高速缓存存储器及一个较宽的输出总线。例如,如果与存储器系统300相一致的8个存储器系统相并联,其结果为64-比特输出总线。8个虚拟存取通道将存在,而每个虚拟存取通道在每个存储器系统中包含一个通道行高速缓存存储器。因此,8个虚拟存取通道中的每一个都具有512字节(8×64字节)的宽度。
在另一个实施例中,通过将通道行高速缓存存储器中的两个相链接可增加通道行高速缓存存储器的有效长度。例如,通道行高速缓存存储器601及602可被链接如下。首先,存储单元301中的一行内64比特字被写到通道行高速缓存存储器601中的高速缓存入口上。此第一个64比特字可为例如从存储单元读的数据的1024字节行的第一个64字节。然后第一个64字节字可被从通道行高速缓存存储器601读出,一次一个字节。当第一个64字节字的各个字节都顺序地从通道行高速缓存存储器601读出,从存储单元301读出第二个64字节字并将其存入通道行高速缓存存储器602中。此第二个64字节字可为例如,存储器行的第二个64字节。该第二个64字节在第一个64字节字的最后一个字节被从通道行高速缓存存储器601读出之前存入通道行高速缓存存储器602中。该第二个64字节字因此以相同方式在第一个64字节字之后被从通道行高速缓存存储器602读出。
在另一个实施例中,第三个64字节字可从存储单元301读出并且存入通道行高速缓存存储器601与此同时第二个64字节的字节被从通道行高速缓存存储器602读出。在此情况下,任何数目的64字节字都可链在一起,从而产生具有确定长度的通道行高速缓存存储器。这样的一种反复链方法特别适用于通过存储器的大数据块来“走和玩跳点”的存储设备。这样的存储设备包含那些进行屏幕更新操作、对3D图像在相反的制图操作中读取构造图及视图处理。
虚拟通道控制电路325可包括一个链控制寄存器,其控制各个虚拟存取通道的链接模式。在此实施例中,链控制寄存器可为16比特寄存器,一个2-比特入口与8个虚拟存取通道中的每个相对应。这些2比特入口中的每一个都确定下面链操作中的一个:(1)不链接(2)链接2个高速缓存入口及(3)不确定链接。链控制寄存器根据存储设备的操作特性被外部数据处理系统所编程。
在前述方法中,每个虚拟存取通道都可提供其单独的操作特性,因此保证虚拟存取通道能被修正为与各个存储设备的操作特性相匹配。
前述的存储器系统可被用在图5及图6所述的数据处理系统中。图5为个人计算机(PC)1000的方框图,在配有一个加速图形处理器(AGP)。根据前述的实施例,PC1000配有多任务系统存储器1009。系统存储器1009包含多个并行连接的存储器系统300a-300n,它们中的每一个都基本与前述的存储器系统300相一致(图3)。系统存储器1009被处理器1001、AGP3-D图形处理器1002、南桥电路1003(为EISA/ISA总线1004的主设备)和PCI总线主设备1005(与PCI装置1006接口)单独存取(通过北桥电路1008),AGP电路1007在AGP处理器1002及北桥电路1008间提供一个接口。在一特定结构中,这些总线主设备(即处理器1001、AGP处理器1002、北桥电路1003及PCI总线主设备1005)中的每一个对系统存储器1009中存在的1个或多个虚拟通道进行控制。特定虚拟通道的设置可为硬线的、不变的(在接通电源时由BIOS决定)或在操作系统核心下由存储器控制码来动态管理。4个缓冲的虚拟通道被分配给(1)处理器1001指示存取(2)处理器1002数据存取,(3)AGP处理器1002结构制图存取及(4)PCI总线设备存取。而非缓冲的虚拟通道被分配给(1)存储器更新及(2)ISA总线设备1003。
图6为配有多任务存储器系统300的流水线图形系统1010的方框图。
比特排列(Blit)入引擎(动力源)1011、比特排列出引擎1012、屏幕更新引擎1013及多边拉引擎1014(每个都为常规的处理引擎)都可单独作为存储器设备来通过存储请求交叉逻辑1015存取低等待时间存储器1016。还有,存储器1016包括多个存储器系统300a-300n,它们大致与前述的存储器系统300相一致。此外,存储设备1011-1014中的每一个被分配到系统存储器1016中的1个或多个虚拟通道上。
在另一个实例中,本发明的存储器系统被用作2D/3D图形帧高速缓冲存储器。在此实例中,4个缓冲的虚拟通道被分别分配给屏幕更新处理、3D更新处理、2D制图及多边填充处理、和结构制图写处理。非缓冲虚拟通道被用到存储更新处理。
在另外一个实施例中,本发明被与SDRAM阵列相关使用。在这样的一个实施例中,向常规的SDRAM存储器片加上另外3个插脚以便进行四个缓冲的虚拟通道及非缓冲虚拟通道的选择。在小的及大的块存取上可分别实现2.0到2.5倍的性能增益。
在另一个实施例中,本发明被与RORAM(RAMBUS DRAM)阵列结合完成。RDRAM典型地具有2个储存体,每个具有2K字节的写高速缓冲存储器。这限定了包括4个1K字节行高速缓冲存储器的虚拟通道。在RDRAM中请求数据包的比特被用于选择虚拟存取信道。在一个单一的流水线状多任务控制器中存在多个存储设备。在RDRAM存储蕊片中可获得80%的性能增益。
一般讲,每个系统处理器可包括多个存储设备,每个都执行一特定类型的处理任务。这些存储设备由所执行的任务来决定可在不同的频率存取存储器。每个存储设备对每个地址位置而言,对于连续读/写的字节数可执行不同的行动。因此,即使仅有一个物理装置存取存储器系统300,也可存在存储设备的多重性。在大多数情况下,与存储器系统300有多个物理装置相连,而这些物理装置中的每一个都可包含一个或更多的存储设备。
以上已描述了本发明的原则及最佳实施例。然而,本发明不仅限于这些所述的实施例。上述的实施例仅被看成为描述性而非限定性的。对于本领域的技术人员而言所做的各种变化都没有脱离后面权利要求所限定的范围内。

Claims (38)

1.一种连接于系统总线的存储器系统,其特征在于,存储器系统包括:
一存储器总线;
与该存储器总线连接的一个或多于一个的存储器存储单元;及
在系统总线和存储器总线之间连接的虚拟通道系统,其中虚拟通道系统包括用于存取一个或一个以上存储器存储单元的多个存储器虚拟存取通道,其中每个虚拟存取通道位于存储器单元和存储器系统接口之间,并且是由系统总线上提供的信号独立定址的。
2.根据权利要求1所述的存储器系统,其特征在于,其中的虚拟存取通道包括执行高速缓存操作的多个可高速缓存虚拟存取通道。
3.根据权利要求2所述的存储器系统,其特征在于,每个可高速缓存虚拟存取通道包括一数据高速缓冲存储器和相应地址调整缓冲存储器。
4.根据权利要求3所述的存储器系统,其特征在于,每个数据高速缓冲存储器包括多个高速缓存入口,每个相应地址高速缓冲存储器包括相应的多个高速缓存地址入口。
5.根据权利要求2所述的存储器系统,其特征在于,虚拟存取通道还包括旁路可高速虚拟存取通道的一非高速缓冲存取虚拟存取通道。
6.根据权利要求1所述的存储器系统,其特征在于,还包括能够根据在系统总线上接收的信号启动虚拟存取通道的一虚拟通道控制电路。
7.根据权利要求2所述的存储器系统,其特征在于,还包括一预充电控制寄存器,它存储多个预充电控制字节,每个预充电控制字节对应于一个可高速缓存虚拟存取通道,其中每个预充电控制字节确定将由相应的可高速缓存虚拟通道实现的多个预充电方式中的一个。
8.根据权利要求2所述的存储器系统,其特征在于,还包括一突发数据组长度控制寄存器,它存储多个突发数据组长度控制字节,每个突发数据组长度控制字节对应于一个可高速缓存虚拟存取通道,其中每个突发数据组长度控制字节为相应可高速缓存虚拟存取通道确定一突发数据组存取长度。
9.根据权利要求8所述的存储器系统,其特征在于,突发数据组长度控制字节是独立可程序化的以根据不同的突发数据组存取长度提供不同的高速缓存虚拟存取通道。
10.根据权利要求2所述的存储器系统,其特征在于,还包括存储多个链控制字节的链控制寄存器,其中每个链控制字节确定了在相应高速缓存虚拟存取通道中将执行的多个链模式中的一个。
11.根据权利要求1所述的存储器系统,其特征在于,还包括用于从存储器存储单元预取数据至存储器总线上一特定虚拟存取通道的装置。
12.根据权利要求11所述的存储器系统,其特征在于,用于预取数据的装置在不同的存储器存储单元中同时执行预取操作。
13.根据权利要求11所述的存储器系统,其特征在于,为预存取数据的装置在系统总线和虚拟存取通道之间传递数据的同时执行预取操作。
14.根据权利要求11所述的存储器系统,其特征在于,还包括用于将存储在虚拟存取通道中存储的数据再存储到存储器存储单元的装置。
15.根据权利要求14所述的存储器系统,其特征在于,用于再存储数据的装置在不同的存储器存储单元中同时执行再存储操作。
16.根据权利要求14所述的存储器系统,其特征在于,用于再存储数据的装置在系统总线和虚拟存取通道之间传递数据的同时执行再存储操作。
17.一种存储器系统,其特征在于,它包括
用于将存储器系统一个或一个以上外部存储器主设备连接的一第一接口电路,其中第一接口电路接收来自存储器主设备的地址和数据信息;
与第一接口电路连接用于接收来自第一接口电路的地址和数据信息的第一总线;
一主存储器阵列;
与主存储器阵列连接接收来自主存储器阵列读出的数据值的一第二总线;
连接第一总线至第二总线的一总线旁路电路;
在第一总线和第二总线之间并行连接的多个高速缓冲存储器阵列,其中每个高速缓冲存储器阵列接收来自第一总线和第二总线的数据信息;
在第一总线和第二总线之间并行连接的多个高速缓存地址阵列,每个高速缓存地址阵列接收来自第一总线的地址信息,每个高速缓存地址阵列还与相应的一个高速缓冲存储器阵列连接,其中每个高速缓存地址阵列和相应的高速缓存阵列构成可由一个或一个以上存储器主设备独立定址的虚拟高速缓存通道。
18.根据权利要求17所述的存储器系统,其特征在于,存储器阵列包括与第二存储器总线并行连接的多个存储器存储单元。
19.根据权利要求17所述的存储器系统,其特征在于,存储器阵列具有第一数据宽度,第二总线具有第二数据宽度,存储器系统还包括一存储器接口电路,其对通过存储器阵列和第二总线之间的数据执行多路复用功能。
20.根据权利要求19所述的存储器系统,其特征在于,第一数据宽度大于第二数据宽度。
21.根据权利要求19所述的存储器系统,其特征在于,第一数据宽度小于第二数据宽度。
22.根据权利要求17所述的存储器系统,其特征在于,还包括多个高速缓存接口电路,其中每个高速缓存接口电路是连接在第二总线和一相应的高速缓存阵列之间,其中高速缓存接口电路被控制向选择的高速缓存阵列传递数据。
23.根据权利要求17所述的存储器系统,其特征在于,还包括多个高速缓存接口电路,其中每个高速缓存接口电路是连接在第一总线和相应的高速缓存阵列之间,其中高速缓存接口电路被控制,当由存储器主设备提供的当时存取地址与高速缓存地址阵列中存储的地址匹配时,它从选择的高速缓存阵列中传递数据到第一总线。
24.根据权利要求17所述的存储器系统,其特征在于,每个高速缓存阵列包括多个高速缓存入口,而每个高速缓存地址阵列包括相应的多个高速缓存地址。
25.一种用多个存储器主设备存取一存储器阵列的方法,其特征在于,它包括如下步骤:
将虚拟存取系统与存储器阵列连接,其中虚拟存取系统包括与存储器阵列并行连接的多个虚拟存取通道,每个虚拟通道用于存取存储器阵列,其中每个虚拟存取通道位于存储器单元和存储器系统接口之间;
分配每个存储器主设备存取一个或一个以上虚拟存取通道;
从存储器主设备向虚拟存取系统提供地址信号;及
根据地址信号存取选择的一个虚拟存取通道。
26.根据权利要求25所述的方法,其特征在于还包括如下步骤:
在选择的一个虚拟存取通道中存储高速缓存入口和相应的高速缓存地址入口;
将地址信号与高速缓存地址入口比较;及
如果当时存取地址与高速缓存地址入口相匹配时,存取相应的高速缓存入口。
27.根据权利要求26所述的方法,其特征在于还包括如果地址信号与高速缓存地址不匹配时,通过一总线旁路电路存取存储器阵列和更新选择的一个虚拟存取通道以反映这个存取的步骤。
28.根据权利要求25所述的方法,其特征在于,还包括同步地激励两个虚拟存取通道的步骤。
29.根据权利要求25所述的方法,其特征在于,还包括链接多个虚拟存取通道的步骤。
30.根据权利要求25所述的方法,其特征在于,还包括对每个虚拟存取通道独立分配突发数据组长度的步骤。
31.根据权利要求25所述的方法,其特征在于,还包括对每个虚拟存取通道独立分配一预充电模式的步骤。
32.根据权利要求25所述的方法,其特征在于,还包括根据由一个存储器主设备发出的一预取命令,从存储器阵列向一选择的虚拟存取通道预取数据的步骤。
33.根据权利要求32所述的方法,其特征在于,还包括与预取数据步骤同时地在一个存储器主设备和一个虚拟存取通道之间传递数据的步骤。
34.根据权利要求25所述的方法,其特征在于,存储器阵列包括多个存储器存储单元,该方法还包括根据由多个存储器主设备发出的多个预取指令从多个多重存储单元中向相应的多个虚拟存取通道同时预取数据的步骤。
35.根据权利要求32所述的方法,其特征在于,还包括根据由一个存储器主设备发出的再存储指令从选择的一个虚拟存取通道向存储器阵列再存储数据的步骤,其中再存储数据步骤是与预取数据步骤同时执行的。
36.根据权利要求25所述的方法,其特征在于,还包括根据由一个存储器主设备发出的再存储指令从选择的一个虚拟存取通道向存储器阵列再存储数据的步骤。
37.根据权利要求36所述的方法,其特征在于,还包括与再存储数据步骤同时地在一个存储器主设备和一个虚拟存取通道之间传递数据的步骤。
38.根据权利要求25所述的方法,其特征在于,存储器阵列包括多个存储器存储单元,该方法还包括根据由多个存储器主设备发出的多个存储指令从多个虚拟存取通道向相应的多个存储器存储单元同时再存储数据的步骤。
CN97120176A 1996-11-18 1997-11-18 虚拟通道存储系统 Expired - Fee Related CN1081360C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/746,829 US6167486A (en) 1996-11-18 1996-11-18 Parallel access virtual channel memory system with cacheable channels
US08/746,829 1996-11-18

Publications (2)

Publication Number Publication Date
CN1184971A CN1184971A (zh) 1998-06-17
CN1081360C true CN1081360C (zh) 2002-03-20

Family

ID=25002524

Family Applications (1)

Application Number Title Priority Date Filing Date
CN97120176A Expired - Fee Related CN1081360C (zh) 1996-11-18 1997-11-18 虚拟通道存储系统

Country Status (7)

Country Link
US (3) US6167486A (zh)
EP (1) EP0843261A3 (zh)
JP (1) JPH10326225A (zh)
KR (1) KR100268321B1 (zh)
CN (1) CN1081360C (zh)
SG (1) SG55416A1 (zh)
TW (1) TW384426B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100422955C (zh) * 2003-10-17 2008-10-01 松下电器产业株式会社 半导体存储器装置和控制器及其读写控制方法
KR20200138317A (ko) * 2018-03-28 2020-12-09 카부시키가이샤 씨엠씨 이야쿠 2성분 혼합형 프리필드 시린지 키트

Families Citing this family (95)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6167486A (en) * 1996-11-18 2000-12-26 Nec Electronics, Inc. Parallel access virtual channel memory system with cacheable channels
JP3133004B2 (ja) * 1996-11-21 2001-02-05 株式会社日立製作所 ディスクアレイ装置およびその制御方法
US6118462A (en) 1997-07-01 2000-09-12 Memtrax Llc Computer system controller having internal memory and external memory control
US6771264B1 (en) 1998-08-20 2004-08-03 Apple Computer, Inc. Method and apparatus for performing tangent space lighting and bump mapping in a deferred shading graphics processor
US6577317B1 (en) 1998-08-20 2003-06-10 Apple Computer, Inc. Apparatus and method for geometry operations in a 3D-graphics pipeline
US6525737B1 (en) * 1998-08-20 2003-02-25 Apple Computer, Inc. Graphics processor with pipeline state storage and retrieval
US6182183B1 (en) * 1998-11-13 2001-01-30 Sonics, Inc. Communications system and method with multilevel connection identification
US6442666B1 (en) * 1999-01-28 2002-08-27 Infineon Technologies Ag Techniques for improving memory access in a virtual memory system
KR100594198B1 (ko) * 1999-05-14 2006-07-03 삼성전자주식회사 다중채널 램버스 시스템
EP1059588A1 (en) * 1999-06-09 2000-12-13 Texas Instruments Incorporated Multi-channel dma with request scheduling
JP2001014840A (ja) 1999-06-24 2001-01-19 Nec Corp 複数ラインバッファ型メモリlsi
DE19951046A1 (de) * 1999-10-22 2001-04-26 Siemens Ag Speicherbaustein für ein Mehrprozessorsystem und Mehrprozessorsystem
US6539487B1 (en) * 1999-11-09 2003-03-25 International Business Machines Corporation System for dynamically selecting maximum number of accessible banks of memory per cycle by monitoring actual power to each of the banks to determine the number of accessible banks
US6708254B2 (en) * 1999-11-10 2004-03-16 Nec Electronics America, Inc. Parallel access virtual channel memory system
DE19956829A1 (de) * 1999-11-25 2001-06-07 Siemens Ag Speichereinrichtung für Prozessorsysteme
US6791555B1 (en) 2000-06-23 2004-09-14 Micron Technology, Inc. Apparatus and method for distributed memory control in a graphics processing system
US6973542B1 (en) * 2000-07-18 2005-12-06 International Business Machines Corporation Detecting when to prefetch inodes and then prefetching inodes in parallel
US6546461B1 (en) * 2000-11-22 2003-04-08 Integrated Device Technology, Inc. Multi-port cache memory devices and FIFO memory devices having multi-port cache memory devices therein
US6587920B2 (en) 2000-11-30 2003-07-01 Mosaid Technologies Incorporated Method and apparatus for reducing latency in a memory system
US6892279B2 (en) 2000-11-30 2005-05-10 Mosaid Technologies Incorporated Method and apparatus for accelerating retrieval of data from a memory system with cache by reducing latency
US6981073B2 (en) * 2001-07-31 2005-12-27 Wis Technologies, Inc. Multiple channel data bus control for video processing
DE10151733A1 (de) * 2001-10-19 2003-04-30 Infineon Technologies Ag Prozessor-Speicher-System
US6839797B2 (en) 2001-12-21 2005-01-04 Agere Systems, Inc. Multi-bank scheduling to improve performance on tree accesses in a DRAM based random access memory subsystem
US7389387B2 (en) * 2001-12-31 2008-06-17 Intel Corporation Distributed memory module cache writeback
WO2003081454A2 (de) * 2002-03-21 2003-10-02 Pact Xpp Technologies Ag Verfahren und vorrichtung zur datenverarbeitung
ITRM20020281A1 (it) * 2002-05-20 2003-11-20 Micron Technology Inc Metodo ed apparecchiatura per accesso rapido di memorie.
US7133972B2 (en) 2002-06-07 2006-11-07 Micron Technology, Inc. Memory hub with internal cache and/or memory access prediction
US7200024B2 (en) 2002-08-02 2007-04-03 Micron Technology, Inc. System and method for optically interconnecting memory devices
US7117316B2 (en) 2002-08-05 2006-10-03 Micron Technology, Inc. Memory hub and access method having internal row caching
US7254331B2 (en) 2002-08-09 2007-08-07 Micron Technology, Inc. System and method for multiple bit optical data transmission in memory systems
US7149874B2 (en) 2002-08-16 2006-12-12 Micron Technology, Inc. Memory hub bypass circuit and method
US6754117B2 (en) 2002-08-16 2004-06-22 Micron Technology, Inc. System and method for self-testing and repair of memory modules
US7836252B2 (en) 2002-08-29 2010-11-16 Micron Technology, Inc. System and method for optimizing interconnections of memory devices in a multichip module
US6820181B2 (en) 2002-08-29 2004-11-16 Micron Technology, Inc. Method and system for controlling memory accesses to memory modules having a memory hub architecture
US7102907B2 (en) 2002-09-09 2006-09-05 Micron Technology, Inc. Wavelength division multiplexed memory module, memory system and method
US7231484B2 (en) * 2002-09-30 2007-06-12 Telefonaktiebolaget Lm Ericsson (Publ) Method and memory controller for scalable multi-channel memory access
US7990390B2 (en) 2002-10-22 2011-08-02 Broadcom Corporation Multi-pass system and method supporting multiple streams of video
US7395538B1 (en) * 2003-03-07 2008-07-01 Juniper Networks, Inc. Scalable packet processing systems and methods
US7360020B2 (en) * 2003-03-31 2008-04-15 Sun Microsystems, Inc. Method for improving cache-miss performance
US7245145B2 (en) 2003-06-11 2007-07-17 Micron Technology, Inc. Memory module and method having improved signal routing topology
US7120727B2 (en) * 2003-06-19 2006-10-10 Micron Technology, Inc. Reconfigurable memory module and method
US7260685B2 (en) 2003-06-20 2007-08-21 Micron Technology, Inc. Memory hub and access method having internal prefetch buffers
US7428644B2 (en) 2003-06-20 2008-09-23 Micron Technology, Inc. System and method for selective memory module power management
US7107415B2 (en) 2003-06-20 2006-09-12 Micron Technology, Inc. Posted write buffers and methods of posting write requests in memory modules
US7389364B2 (en) 2003-07-22 2008-06-17 Micron Technology, Inc. Apparatus and method for direct memory access in a hub-based memory system
CN100343827C (zh) * 2003-07-28 2007-10-17 华为技术有限公司 基于二层的虚拟专用网业务介质访问控制地址收敛方法
US7210059B2 (en) 2003-08-19 2007-04-24 Micron Technology, Inc. System and method for on-board diagnostics of memory modules
US7133991B2 (en) 2003-08-20 2006-11-07 Micron Technology, Inc. Method and system for capturing and bypassing memory transactions in a hub-based memory system
US7136958B2 (en) * 2003-08-28 2006-11-14 Micron Technology, Inc. Multiple processor system and method including multiple memory hub modules
US20050050237A1 (en) * 2003-08-28 2005-03-03 Jeddeloh Joseph M. Memory module and method having on-board data search capabilities and processor-based system using such memory modules
US7310752B2 (en) * 2003-09-12 2007-12-18 Micron Technology, Inc. System and method for on-board timing margin testing of memory modules
US7194593B2 (en) 2003-09-18 2007-03-20 Micron Technology, Inc. Memory hub with integrated non-volatile memory
US7356648B2 (en) * 2003-10-02 2008-04-08 International Business Machines Corporation Shared buffer having hardware controlled buffer regions
US7120743B2 (en) 2003-10-20 2006-10-10 Micron Technology, Inc. Arbitration system and method for memory responses in a hub-based memory system
US7216196B2 (en) 2003-12-29 2007-05-08 Micron Technology, Inc. Memory hub and method for memory system performance monitoring
US7330992B2 (en) 2003-12-29 2008-02-12 Micron Technology, Inc. System and method for read synchronization of memory modules
US7042792B2 (en) * 2004-01-14 2006-05-09 Integrated Device Technology, Inc. Multi-port memory cells for use in FIFO applications that support data transfers between cache and supplemental memory arrays
US7188219B2 (en) 2004-01-30 2007-03-06 Micron Technology, Inc. Buffer control system and method for a memory system having outstanding read and write request buffers
US7181584B2 (en) 2004-02-05 2007-02-20 Micron Technology, Inc. Dynamic command and/or address mirroring system and method for memory modules
US7412574B2 (en) * 2004-02-05 2008-08-12 Micron Technology, Inc. System and method for arbitration of memory responses in a hub-based memory system
US7788451B2 (en) 2004-02-05 2010-08-31 Micron Technology, Inc. Apparatus and method for data bypass for a bi-directional data bus in a hub-based memory sub-system
US7366864B2 (en) 2004-03-08 2008-04-29 Micron Technology, Inc. Memory hub architecture having programmable lane widths
US7257683B2 (en) 2004-03-24 2007-08-14 Micron Technology, Inc. Memory arbitration system and method having an arbitration packet protocol
US7120723B2 (en) 2004-03-25 2006-10-10 Micron Technology, Inc. System and method for memory hub-based expansion bus
US7213082B2 (en) 2004-03-29 2007-05-01 Micron Technology, Inc. Memory hub and method for providing memory sequencing hints
US7447240B2 (en) 2004-03-29 2008-11-04 Micron Technology, Inc. Method and system for synchronizing communications links in a hub-based memory system
US6980042B2 (en) 2004-04-05 2005-12-27 Micron Technology, Inc. Delay line synchronizer apparatus and method
US7590797B2 (en) 2004-04-08 2009-09-15 Micron Technology, Inc. System and method for optimizing interconnections of components in a multichip memory module
US7120753B2 (en) * 2004-04-20 2006-10-10 International Business Machines Corporation System and method for dynamically adjusting read ahead values based upon memory usage
US7162567B2 (en) 2004-05-14 2007-01-09 Micron Technology, Inc. Memory hub and method for memory sequencing
US7222213B2 (en) 2004-05-17 2007-05-22 Micron Technology, Inc. System and method for communicating the synchronization status of memory modules during initialization of the memory modules
US7363419B2 (en) 2004-05-28 2008-04-22 Micron Technology, Inc. Method and system for terminating write commands in a hub-based memory system
JP4656862B2 (ja) * 2004-05-28 2011-03-23 ルネサスエレクトロニクス株式会社 半導体装置
US7310748B2 (en) 2004-06-04 2007-12-18 Micron Technology, Inc. Memory hub tester interface and method for use thereof
US7519788B2 (en) 2004-06-04 2009-04-14 Micron Technology, Inc. System and method for an asynchronous data buffer having buffer write and read pointers
US7339592B2 (en) * 2004-07-13 2008-03-04 Nvidia Corporation Simulating multiported memories using lower port count memories
US7392331B2 (en) 2004-08-31 2008-06-24 Micron Technology, Inc. System and method for transmitting data packets in a computer system having a memory hub architecture
JPWO2006051780A1 (ja) * 2004-11-10 2008-05-29 松下電器産業株式会社 不揮発性メモリ装置および不揮発性メモリ装置のアクセス方法
US7555682B2 (en) * 2005-05-13 2009-06-30 Texas Instruments Incorporated Distributed width trace receiver
US9298311B2 (en) 2005-06-23 2016-03-29 Apple Inc. Trackpad sensitivity compensation
US8032688B2 (en) * 2005-06-30 2011-10-04 Intel Corporation Micro-tile memory interfaces
US8219761B2 (en) 2005-11-17 2012-07-10 Freescale Semiconductor, Inc. Multi-port high-level cache unit and a method for retrieving information from a multi-port high-level cache unit
JP5157207B2 (ja) 2007-03-16 2013-03-06 富士通セミコンダクター株式会社 半導体メモリ、メモリコントローラ、システムおよび半導体メモリの動作方法
US20100058016A1 (en) * 2008-08-26 2010-03-04 Jari Nikara Method, apparatus and software product for multi-channel memory sandbox
EP2467852B1 (en) 2009-08-20 2019-05-22 Rambus Inc. Atomic memory device
US8375173B2 (en) * 2009-10-09 2013-02-12 Qualcomm Incorporated Accessing a multi-channel memory system having non-uniform page sizes
US8631207B2 (en) * 2009-12-26 2014-01-14 Intel Corporation Cache memory power reduction techniques
TWI456579B (zh) * 2010-03-26 2014-10-11 Silicon Motion Inc 提昇錯誤更正能力之方法以及相關之記憶裝置及其控制器
JP5585171B2 (ja) * 2010-03-31 2014-09-10 富士通株式会社 ストレージ制御装置、ストレージシステム及びストレージ制御方法
US10838886B2 (en) * 2011-04-19 2020-11-17 Micron Technology, Inc. Channel depth adjustment in memory systems
US20130111149A1 (en) * 2011-10-26 2013-05-02 Arteris SAS Integrated circuits with cache-coherency
US9336129B2 (en) 2013-10-02 2016-05-10 Sandisk Technologies Inc. System and method for bank logical data remapping
EP3268864B1 (en) * 2015-03-11 2021-01-27 Rambus Inc. High performance non-volatile memory module
US11086526B2 (en) * 2018-06-07 2021-08-10 Micron Technology, Inc. Adaptive line width cache systems and methods
CN111428973B (zh) * 2020-03-11 2024-04-12 慧镕电子系统工程股份有限公司 一种能有效提高资源利用率的虚拟资源分配方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1043402A (zh) * 1988-12-03 1990-06-27 国际商业机器公司 虚拟存储器管理系统和方法
EP0477406A1 (de) * 1990-09-27 1992-04-01 Siemens Nixdorf Informationssysteme Aktiengesellschaft Multiprozessorsystem mit gemeinsamem Speicher
CN1129329A (zh) * 1995-02-17 1996-08-21 徐秀莹 可编程调控交插存取存储器管理系统

Family Cites Families (109)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3740723A (en) * 1970-12-28 1973-06-19 Ibm Integral hierarchical binary storage element
US3898632A (en) * 1974-07-15 1975-08-05 Sperry Rand Corp Semiconductor block-oriented read/write memory
US4298929A (en) * 1979-01-26 1981-11-03 International Business Machines Corporation Integrated multilevel storage hierarchy for a data processing system with improved channel to memory write capability
US4354225A (en) * 1979-10-11 1982-10-12 Nanodata Computer Corporation Intelligent main store for data processing systems
US4330852A (en) * 1979-11-23 1982-05-18 Texas Instruments Incorporated Semiconductor read/write memory array having serial access
JPS5720983A (en) * 1980-07-15 1982-02-03 Hitachi Ltd Memory chip
CA1187198A (en) * 1981-06-15 1985-05-14 Takashi Chiba System for controlling access to channel buffers
US4608668A (en) * 1981-09-03 1986-08-26 Tokyo Shibaura Denki Kabushiki Kaisha Semiconductor device
US4541075A (en) * 1982-06-30 1985-09-10 International Business Machines Corporation Random access memory having a second input/output port
US4491915A (en) * 1982-11-30 1985-01-01 Rca Corporation Multiprocessor-memory data transfer network
JPS59180871A (ja) * 1983-03-31 1984-10-15 Fujitsu Ltd 半導体メモリ装置
JPH069114B2 (ja) * 1983-06-24 1994-02-02 株式会社東芝 半導体メモリ
JPS6050297A (ja) * 1983-08-30 1985-03-19 Matsushita Seiko Co Ltd 扇風機
US4646270A (en) * 1983-09-15 1987-02-24 Motorola, Inc. Video graphic dynamic RAM
US4663735A (en) * 1983-12-30 1987-05-05 Texas Instruments Incorporated Random/serial access mode selection circuit for a video memory system
JPH0760422B2 (ja) * 1983-12-30 1995-06-28 株式会社日立製作所 記憶ロツク方式
US4577293A (en) * 1984-06-01 1986-03-18 International Business Machines Corporation Distributed, on-chip cache
JPS60258792A (ja) * 1984-06-04 1985-12-20 Toshiba Corp ダイナミツクram
US4794559A (en) * 1984-07-05 1988-12-27 American Telephone And Telegraph Company, At&T Bell Laboratories Content addressable semiconductor memory arrays
DE3582376D1 (de) * 1984-08-03 1991-05-08 Toshiba Kawasaki Kk Halbleiterspeicheranordnung.
US4725945A (en) * 1984-09-18 1988-02-16 International Business Machines Corp. Distributed cache in dynamic rams
JPH0793009B2 (ja) * 1984-12-13 1995-10-09 株式会社東芝 半導体記憶装置
DE3543911A1 (de) * 1984-12-14 1986-06-26 Mitsubishi Denki K.K., Tokio/Tokyo Digitale verzoegerungseinheit
JPS61160898A (ja) * 1985-01-05 1986-07-21 Fujitsu Ltd 半導体記憶装置
JPH0652632B2 (ja) * 1985-01-23 1994-07-06 株式会社日立製作所 ダイナミツク型ram
US4731758A (en) * 1985-06-21 1988-03-15 Advanced Micro Devices, Inc. Dual array memory with inter-array bi-directional data transfer
JPS6238590A (ja) * 1985-08-13 1987-02-19 Fujitsu Ltd 半導体記憶装置
US4837746A (en) * 1985-12-04 1989-06-06 Advanced Micro Devices, Inc. Method and apparatus for resetting a video SRAM
JPH07114074B2 (ja) * 1985-12-18 1995-12-06 株式会社日立製作所 半導体記憶装置
JPH0642313B2 (ja) * 1985-12-20 1994-06-01 日本電気株式会社 半導体メモリ
US4829471A (en) * 1986-02-07 1989-05-09 Advanced Micro Devices, Inc. Data load sequencer for multiple data line serializer
JPH07111822B2 (ja) * 1986-03-07 1995-11-29 株式会社日立製作所 半導体記憶装置
US4719601A (en) * 1986-05-02 1988-01-12 International Business Machine Corporation Column redundancy for two port random access memory
JPH0740430B2 (ja) * 1986-07-04 1995-05-01 日本電気株式会社 メモリ装置
JPS6381692A (ja) * 1986-09-26 1988-04-12 Hitachi Ltd 半導体記憶装置
JPS63136391A (ja) * 1986-11-27 1988-06-08 Nec Corp 半導体メモリ装置
US4894770A (en) * 1987-06-01 1990-01-16 Massachusetts Institute Of Technology Set associative memory
CA1302584C (en) * 1987-07-30 1992-06-02 Alliant Computer Systems Corporation Parallel processing computer in which memory access priorities are varied
JP2714944B2 (ja) * 1987-08-05 1998-02-16 三菱電機株式会社 半導体記憶装置
US5179687A (en) * 1987-09-26 1993-01-12 Mitsubishi Denki Kabushiki Kaisha Semiconductor memory device containing a cache and an operation method thereof
US5226147A (en) * 1987-11-06 1993-07-06 Mitsubishi Denki Kabushiki Kaisha Semiconductor memory device for simple cache system
JPH01159891A (ja) * 1987-12-17 1989-06-22 Mitsubishi Electric Corp 半導体記憶装置
US4943944A (en) * 1987-11-25 1990-07-24 Kabushiki Kaisha Toshiba Semiconductor memory using dynamic ram cells
JPH01146187A (ja) * 1987-12-02 1989-06-08 Mitsubishi Electric Corp キヤッシュメモリ内蔵半導体記憶装置
JPH0748301B2 (ja) * 1987-12-04 1995-05-24 富士通株式会社 半導体記憶装置
US5214769A (en) * 1987-12-24 1993-05-25 Fujitsu Limited Multiprocessor control system
JPH0760595B2 (ja) * 1988-01-12 1995-06-28 日本電気株式会社 半導体メモリ
US5025366A (en) * 1988-01-20 1991-06-18 Advanced Micro Devices, Inc. Organization of an integrated cache unit for flexible usage in cache system design
US5184320A (en) * 1988-02-12 1993-02-02 Texas Instruments Incorporated Cached random access memory device and system
US5202968A (en) * 1988-03-30 1993-04-13 Kabushiki Kaisha Toshiba Expansion system
US5329489A (en) * 1988-03-31 1994-07-12 Texas Instruments Incorporated DRAM having exclusively enabled column buffer blocks
US4870622A (en) * 1988-06-24 1989-09-26 Advanced Micro Devices, Inc. DRAM controller cache
US5481496A (en) * 1988-06-27 1996-01-02 Mitsubishi Denki Kabushiki Kaisha Semiconductor memory device and method of data transfer therefor
JPH0713857B2 (ja) * 1988-06-27 1995-02-15 三菱電機株式会社 半導体記憶装置
JP2776841B2 (ja) * 1988-09-28 1998-07-16 株式会社日立製作所 ディスク制御装置におけるディスクアクセス制御方法
US4928246A (en) * 1988-10-21 1990-05-22 Iowa State University Research Foundation, Inc. Multiple channel data acquisition system
US5535359A (en) * 1988-12-02 1996-07-09 Mitsubishi Denki Kabushiki Kaisha Computer system with cache memory having address mask register
US4965717A (en) * 1988-12-09 1990-10-23 Tandem Computers Incorporated Multiple processor system having shared memory with private-write capability
US5202972A (en) * 1988-12-29 1993-04-13 International Business Machines Corporation Store buffer apparatus in a multiprocessor system
KR910009555B1 (ko) * 1989-01-09 1991-11-21 조경연 싱글 포트 듀얼 ram(spdram)
FR2642195B1 (fr) * 1989-01-20 1991-04-26 Centre Nat Rech Scient Dispositif et procede d'arbitrage des requetes et de resolution des conflits lies a l'acces aux memoires a bancs independants pour les machines informatiques
EP0385389B1 (en) * 1989-02-27 1995-06-28 Nec Corporation Semiconductor integrated circuit memory enabling memory write masking
US4989180A (en) * 1989-03-10 1991-01-29 Board Of Regents, The University Of Texas System Dynamic memory with logic-in-refresh
US5060144A (en) * 1989-03-16 1991-10-22 Unisys Corporation Locking control with validity status indication for a multi-host processor system that utilizes a record lock processor and a cache memory for each host processor
US5193166A (en) * 1989-04-21 1993-03-09 Bell-Northern Research Ltd. Cache-memory architecture comprising a single address tag for each cache memory
CA2011518C (en) * 1989-04-25 1993-04-20 Ronald N. Fortino Distributed cache dram chip and control method
US5130922A (en) * 1989-05-17 1992-07-14 International Business Machines Corporation Multiprocessor cache memory system using temporary access states and method for operating such a memory
US5287484A (en) * 1989-06-21 1994-02-15 Hitachi, Ltd. Multi-processor system for invalidating hierarchical cache
JPH0350297A (ja) 1989-07-18 1991-03-04 Asahi Glass Co Ltd テトラフルオロエタン系冷凍機用組成物
US5214610A (en) * 1989-09-22 1993-05-25 Texas Instruments Incorporated Memory with selective address transition detection for cache operation
US4984214A (en) * 1989-12-05 1991-01-08 International Business Machines Corporation Multiplexed serial register architecture for VRAM
JP2777247B2 (ja) * 1990-01-16 1998-07-16 三菱電機株式会社 半導体記憶装置およびキャッシュシステム
JP2880547B2 (ja) * 1990-01-19 1999-04-12 三菱電機株式会社 半導体記憶装置
US5134616A (en) * 1990-02-13 1992-07-28 International Business Machines Corporation Dynamic ram with on-chip ecc and optimized bit and word redundancy
US5388243A (en) * 1990-03-09 1995-02-07 Mti Technology Corporation Multi-sort mass storage device announcing its active paths without deactivating its ports in a network architecture
JP2938511B2 (ja) * 1990-03-30 1999-08-23 三菱電機株式会社 半導体記憶装置
JP2862948B2 (ja) * 1990-04-13 1999-03-03 三菱電機株式会社 半導体記憶装置
US5289413A (en) * 1990-06-08 1994-02-22 Kabushiki Kaisha Toshiba Dynamic semiconductor memory device with high-speed serial-accessing column decoder
US5202973A (en) * 1990-06-29 1993-04-13 Digital Equipment Corporation Method of controlling a shared memory bus in a multiprocessor system for preventing bus collisions and for ensuring a full bus
US5359722A (en) * 1990-07-23 1994-10-25 International Business Machines Corporation Method for shortening memory fetch time relative to memory store time and controlling recovery in a DRAM
US5249282A (en) * 1990-11-21 1993-09-28 Benchmarq Microelectronics, Inc. Integrated cache memory system with primary and secondary cache memories
US5265235A (en) * 1990-11-30 1993-11-23 Xerox Corporation Consistency protocols for shared memory multiprocessors
EP1199639A3 (en) * 1990-12-25 2004-12-08 Mitsubishi Denki Kabushiki Kaisha A semiconductor memory device with a large storage capacity memory and a fast speed memory
JP2715004B2 (ja) * 1991-01-07 1998-02-16 三菱電機株式会社 半導体メモリ装置
US5594885A (en) * 1991-03-05 1997-01-14 Zitel Corporation Method for operating a cache memory system using a recycled register for identifying a reuse status of a corresponding cache entry
JPH04307495A (ja) * 1991-04-04 1992-10-29 Mitsubishi Electric Corp 半導体記憶装置
US5652723A (en) * 1991-04-18 1997-07-29 Mitsubishi Denki Kabushiki Kaisha Semiconductor memory device
DE69230134T2 (de) * 1991-08-16 2000-06-29 Cypress Semiconductor Corp Dynamisches hochleistungsspeichersystem
US5349583A (en) * 1991-08-16 1994-09-20 International Business Machines Corporation Multi-channel token ring
EP0535701A1 (en) * 1991-10-03 1993-04-07 Standard Microsystems Corporation Architecture and method for combining static cache memory and dynamic main memory on the same chip (CDRAM)
JP3451099B2 (ja) * 1991-12-06 2003-09-29 株式会社日立製作所 外部記憶サブシステム
US5291444A (en) * 1991-12-23 1994-03-01 Texas Instruments Incorporated Combination DRAM and SRAM memory array
US5388237A (en) * 1991-12-30 1995-02-07 Sun Microsystems, Inc. Method of and apparatus for interleaving multiple-channel DMA operations
EP0552667B1 (en) 1992-01-22 1999-04-21 Enhanced Memory Systems, Inc. Enhanced dram with embedded registers
DE4391002T1 (de) 1992-03-06 1995-02-23 Rambus Inc Vor-heranholen in einen Cache-Speicher zum minimieren der Hauptspeicherzugriffszeit und der Cache-Speichergröße in einen Computersystem
US5390308A (en) * 1992-04-15 1995-02-14 Rambus, Inc. Method and apparatus for address mapping of dynamic random access memory
US5471601A (en) * 1992-06-17 1995-11-28 Intel Corporation Memory device and method for avoiding live lock of a DRAM with cache
JPH06103213A (ja) * 1992-09-18 1994-04-15 Hitachi Ltd 入出力装置
US5502828A (en) * 1992-12-18 1996-03-26 Advanced Micro Devices, Inc. Reducing memory access in a multi-cache multiprocessing environment with each cache mapped into different areas of main memory to avoid contention
US5649162A (en) * 1993-05-24 1997-07-15 Micron Electronics, Inc. Local bus interface
JP2894170B2 (ja) * 1993-08-18 1999-05-24 日本電気株式会社 メモリ装置
US5381370A (en) * 1993-08-24 1995-01-10 Cypress Semiconductor Corporation Memory with minimized redundancy access delay
US5619673A (en) * 1994-06-29 1997-04-08 Intel Corporation Virtual access cache protection bits handling method and apparatus
US5652724A (en) * 1994-12-23 1997-07-29 Micron Technology, Inc. Burst EDO memory device having pipelined output buffer
US5878240A (en) * 1995-05-11 1999-03-02 Lucent Technologies, Inc. System and method for providing high speed memory access in a multiprocessor, multimemory environment
US5875462A (en) * 1995-12-28 1999-02-23 Unisys Corporation Multi-processor data processing system with multiple second level caches mapable to all of addressable memory
JP3142777B2 (ja) 1996-05-22 2001-03-07 帝人株式会社 芳香族ポリアミド剛毛
US5895481A (en) * 1996-05-22 1999-04-20 Cypress Semiconductor Corp. Programmable VESA unified memory architecture (VUMA) row address strobe (RAS)
US6167486A (en) * 1996-11-18 2000-12-26 Nec Electronics, Inc. Parallel access virtual channel memory system with cacheable channels

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1043402A (zh) * 1988-12-03 1990-06-27 国际商业机器公司 虚拟存储器管理系统和方法
EP0477406A1 (de) * 1990-09-27 1992-04-01 Siemens Nixdorf Informationssysteme Aktiengesellschaft Multiprozessorsystem mit gemeinsamem Speicher
CN1129329A (zh) * 1995-02-17 1996-08-21 徐秀莹 可编程调控交插存取存储器管理系统

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100422955C (zh) * 2003-10-17 2008-10-01 松下电器产业株式会社 半导体存储器装置和控制器及其读写控制方法
KR20200138317A (ko) * 2018-03-28 2020-12-09 카부시키가이샤 씨엠씨 이야쿠 2성분 혼합형 프리필드 시린지 키트
KR102645455B1 (ko) 2018-03-28 2024-03-07 카부시키가이샤 씨엠씨 이야쿠 2성분 혼합형 프리필드 시린지 키트

Also Published As

Publication number Publication date
US6477621B1 (en) 2002-11-05
KR19980042530A (ko) 1998-08-17
EP0843261A3 (en) 2000-02-23
TW384426B (en) 2000-03-11
US6167486A (en) 2000-12-26
KR100268321B1 (ko) 2000-10-16
JPH10326225A (ja) 1998-12-08
EP0843261A2 (en) 1998-05-20
CN1184971A (zh) 1998-06-17
SG55416A1 (en) 1998-12-21
US6327642B1 (en) 2001-12-04

Similar Documents

Publication Publication Date Title
CN1081360C (zh) 虚拟通道存储系统
EP2351035B1 (en) Switched interface stacked-die memory architecture
US5313609A (en) Optimum write-back strategy for directory-based cache coherence protocols
JP3281893B2 (ja) キャッシュ・メモリ階層内で利用するキャッシュ・コヒーレンシ機構を実施するための方法およびシステム
US6708254B2 (en) Parallel access virtual channel memory system
JP3620473B2 (ja) 共有キャッシュメモリのリプレイスメント制御方法及びその装置
KR20170002586A (ko) 하이브리드 메모리 큐브 시스템 상호 접속 디렉토리-기반 캐시 일관성 방법론
CN1754158A (zh) 将写入数据注入到高速缓存的方法和设备
WO2001024031A9 (en) Multiprocessor node controller circuit and method
CN1746867A (zh) 使用核心指示符的高速缓存过滤
JP2005018772A (ja) 複数のコヒーレンシ領域およびキャッシュ・パージのないコヒーレンシ領域間ソフトウェア・プロセス移行を備えるマルチプロセッサ・コンピュータ・システム
JP2005522773A (ja) 非均等型キャッシュ装置、システム及び方法
JP2002519785A (ja) マルチプロセッサコンピュータシステムのための分割ディレクトリベースのキャッシュコヒーレンシ技術
CN1320464C (zh) 用于维持共享高速缓存一致性的方法和设备
US6675262B1 (en) Multi-processor computer system with cache-flushing system using memory recall
EP0803818B1 (en) Single-cycle multi-accessible interleaved cache
US5893163A (en) Method and system for allocating data among cache memories within a symmetric multiprocessor data-processing system
US6038642A (en) Method and system for assigning cache memory utilization within a symmetric multiprocessor data-processing system
US6950906B2 (en) System for and method of operating a cache
CN1052562A (zh) 具有单比特置位和复位功能的主存储器插板
JPS63201851A (ja) バッファ記憶アクセス方法
TW425508B (en) Narrow data width dram with low latency page-hit operations
US9146874B2 (en) Dual access for single port cache
US6775742B2 (en) Memory device storing data and directory information thereon, and method for providing the directory information and the data in the memory device
CN1109301C (zh) 显示存储器控制设备

Legal Events

Date Code Title Description
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C06 Publication
PB01 Publication
C14 Grant of patent or utility model
GR01 Patent grant
ASS Succession or assignment of patent right

Owner name: NEC ELECTRONICS TAIWAN LTD.

Free format text: FORMER OWNER: NIPPON ELECTRIC CO., LTD.; NEC ELECTRONICS TAIWAN LTD.

Effective date: 20070126

C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20070126

Address after: Kanagawa County, Japan

Patentee after: NEC Corp.

Address before: Tokyo, Japan

Co-patentee before: NEC Corp.

Patentee before: NEC Corp.

C56 Change in the name or address of the patentee

Owner name: RENESAS ELECTRONICS CORPORATION

Free format text: FORMER NAME: NEC CORP.

CP03 Change of name, title or address

Address after: Kanagawa, Japan

Patentee after: Renesas Electronics Corporation

Address before: Kanagawa County, Japan

Patentee before: NEC Corp.

C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20020320

Termination date: 20131118