CN1120495C - 高性能通用多端口内部高速缓存的动态随机存取存储器系统、体系结构和方法 - Google Patents
高性能通用多端口内部高速缓存的动态随机存取存储器系统、体系结构和方法 Download PDFInfo
- Publication number
- CN1120495C CN1120495C CN96180069A CN96180069A CN1120495C CN 1120495 C CN1120495 C CN 1120495C CN 96180069 A CN96180069 A CN 96180069A CN 96180069 A CN96180069 A CN 96180069A CN 1120495 C CN1120495 C CN 1120495C
- Authority
- CN
- China
- Prior art keywords
- data
- dram
- interface
- buffer
- serial
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/10—Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
- G11C7/1075—Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers for multiport memories each having random access ports and serial ports, e.g. video RAM
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0893—Caches characterised by their organisation or structure
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
Abstract
一新颖的低成本/高性能的称之为“AMPIC DRAM”的多端口内部高速存取的动态随机存取存储器体系结构,和由此得到的一排除现行的严重的系统带宽限制的独特的系统体系结构。还提供以快于传统手段数个数量级地作芯片内部传送数据块的措施。此芯片还以极大地增强的性能和显著降低的成本连接数量大得多的源。基于这一新颖的体系结构的系统配置能对主存储器功能与图象存储器二者同等效率地工作,从而提供一确实低成本、高性能的一致存储器体系结构。
Description
本发明是关于动态随机存取存储器技术(DRAM),较具体说是针对一消除当前系统带宽的限制及相关问题并提供大大增强的系统性能和降低的成本的、由于能提供一致存储器体系结构而能基本上对许多应用通用的新颖的DRAM系统体系结构。
大量的这种系统设计,特别是在网络连接/通信中,由于各种不同源之间对系统主存储器(几乎总是DRAM)的访问存在竞争而在性能上受到限制。造成大量竞争的直接原因是采用单总线的体系结构,其中一个总线作CPU、主存储器和I/O源之间的相互连接。这种以及过去和现在的类似体系结构还由于严重的带宽限制而阻碍CPU管理更多的I/O接口的能力。
类似的系统带宽限制也使得图象/多媒体设计人员将图象存储器与主存储器分离,从而给系统成本带来负面影响。还开发了专门供图象应用的DRAM来进一步增强视频数据带宽容量。尽管提出了一些采用不同型式DRAM的系统体系结构使得一公共存储器能既用作主存储器又能用作图象存储器,但因总有一方的运行效果不佳,这种措施的作用有限。
因此,在本发明出现之前基本上没有低成本、高性能的一致存储器体系结构,而本发明提出一种下面将讨论的独创的DRAM体系结构和由此而成的独特系统体系结构,它大大地消除了这些问题并从而能提供大得多的数据带宽容量来连接极大数量的源以及增强的性能,并显著地降低了成本。而基于这种新颖体系结构的系统配置将对主存储器功能和图象存储器等同效率地工作,从而进一步实现确实低成本高性能的一致存储器体系结构。因此将这一芯片解决措施称为“AMPIC DRAM”,即A Multi Port Internally Cached DRAM(多端口内部高速存取DRAM)。
本发明背景
如上面讨论的,大部分这种性质的高性能系统均倾向于采用基于总线的体系结构,其中单一的系统总线作CPU、主存储器和I/O源之间的相互连接,如下面讨论的图1中所示(术语“主存储器”和“系统存储器”在这里可相互交换)。这是相对简明的设计并留有扩展空间,但它具有严重的局限性。每当CPU或外设需要访问主存储器(通常以DRAM实现)时,总要为访问系统总线进行仲裁。这样,系统中并行活动量受到外部总线的总容量的限制。
随着CPU的速度增加,系统总线的带宽必须相应增加来发挥系统的整个潜力。然而增加总线带宽极其困难并且非常昂贵因而在技术上成为不可能或者其成本无法忍受。另外,总线上可能运行的I/O源的数量也受到带宽的限制。事实上应当指出,虽然理论上说单总线可以有很大程度的扩展性,而实际运行由于竞争对这种扩展产生极大的限制。
这一问题在所有类型的应用中普遍存在。虽然为更好地认识这些问题下面将介绍说明性的网络连接和图象应用作为举例,但本发明决不仅局限于这些例示范围。
网络连接应用举例
典型的网络连接设备(也称之为互连性设备)例如开关、路由器、桥接器、插座等将多重网络如ATM、SONET、Token Ring(权标环)、FDDI、Ethernet(以太网)、Fiber Channel(光纤通道)等相互连接,如后述图2中所示。典型设计包含一高性能CPU和大量的通常采用传统的DRAM实现的主存储器,如后述图3和图4所示。来自各个网络的数据以数据包(数据包是字节的集合)形式被传送到主存储器,经由CPU处理,而后通常再送往它们各自的目标网络。
所有上面提到的网络(ATM、SONET、Fiber Channel、Token Ring、FDDI等)具有从一点到另一点转移数据的不同措施。它们在硬件、软件和数据传送速度上均不同。需要有相互连接设备来使得这些网络之一上的用户能以不同的协议、无痕迹地与另一网络上的用户通信。
在一典型的相互连接设备中,网络接口均设置有对各种型式接口为特定的网络接口控制器(也通称为网络控制器)。这样,Ethernet即具有与用于Fiber Channel或ATM不同的网络接口(图3和4)。
在图4中所示的仅用于解释这一说明性的系统配置的典型数据流的举例中,可能涉及下列这些典型参数:
a.系统总线为32位宽(4字节);
b.四个传统的2M×8的DRAM构成2M×32;
c.四个网络接口Fiber Channel、ATM、Ethernet和FDDI;和
d.数据包为1024字节。
考虑这一情况,例如Ethernet网上一用户发送一数据包给例如FDDI网上的用户。此数据包由相互连接设备Ethernet接口控制器接收并经控制器芯片分析,此时仅将有关的信息内容存储进它的普通本地FIFO(先进先出)存储器以便随后传送到主存储器。由于在系统总线上具有包含CPU和各种网络控制器的多个装置,所以在所有为取得系统存储器总线的活动源之间进行仲裁。在Ethernet控制器通过仲裁获得总线后,数据即被利用32位宽的系统总线接口送往系统存储器。由于数据包中有1024字节而每次传送将4字节传到主存储器,故为转移数据包需256次这种传送。如果网络控制器每次得到总线只被允许作一次4字节的传送,则也将需要至少256个仲裁周期(如果网络控制器具有猝发传送能力此仲裁次数可较少。例如说对于每次获取具有16字节的猝发传送能力,则需要最少64个仲裁周期)。
在此数据包被存进主存储器之后,它被CPU处理(主要是标题信息)以及在此例中被改向去往FDDI口。现在进行相反处理。数据被FDDI接口控制器从主存储器检取并被传送到芯片内部FIFO存储器。这也需要256次传送和相应数量的仲裁。然后数据被并行地从FDDI控制芯片传送到其网络。
各网络的运行速度分别为FDDI,100Mbit/sec;Ethernet,10/100Mbit/sec;ATM,600M bit/sec左右;Token Ring,16Mbit/sec;和FiberChannel,800M bit/sec。
大量的传送和消耗于仲裁上的时间耗费掉可用数据带宽的很大一部分并降低CPU的访问频率。在网络接口数量增加或者更高速度的接口被加入时,可用于各个源包括CPU的时间减少,从而削弱系统的巅峰性能。这还迫使设计人员寻求更高性能的CPU和有关的昂贵部件,从而抬高成本。能够经由这种现有技术型式的系统总线连接的网络的数量也因为这些严重限制而保持为很低,而且这一问题随着为适应例如互联网(Internet)相关扩展活动而加入越来越多的速度越来越高的网络而越发恶化。
图象/多媒体应用举例
为说明背景技术,再次利用一图象/多媒体应用例,在这种图象系统中有二个主要与存储器相关的功能:
(a)更新用于欲显示图形的屏幕存储器;和
(b)以非常高的速度检索屏幕存储器以更新阴极射线管(CRT)或其他屏幕显示器。
第一任务需要大量的从存储器中一个位置到另一位置的称为“BitBlt”的频繁的数据传送,但这一要求在性质上倾向于猝发。这耗费相当大一部分的系统带宽,因而有必要利用独立的存储器来存储图象数据,如后述图5中所示那样,从而给系统成本带来不利影响。考虑一个需要更新16行屏幕存储器和利用普通的2M×8 DRAM部件的例子。为传送16行的数据值到新地点,所需的数据传送次数为:
欲传送的行数(16)×每一行中的列数(1024)=16384
显然对系统总线也需作对应数量的仲裁。而且这一大量的传送必须在一很短的时间内,从而消耗一小时隙内的大部分可用数据带宽,而使得CPU和其他I/O源不足。但在本发明之前现有的DRAM制造者还没有在这方面为缓减这一问题提供实际的突破。
当然,为装载和刷新CRT显示器也需重复检索屏幕存储器;而取决于显示器的型式(VGA、超级VGA等),为作这种更新所需的带宽不同,但趋向于每秒成百兆或以上的数量级。与“BitBlt”不同,CRT更新需求是连续的,而与“Bitblt”相同的是,也要大量地利用系统带宽。
作为示例,考虑如下情况:
a.显示大小为1024×768象素;
b.非交错的—每秒更新72次;和
c.红、绿和兰三色的每一个均为每象素8位。
以每秒字节计,所需带宽为:
1024×768×72×8×3/8=170MByte。
这是一巨大的需求,如果也被用作主存储器的话也是普通DRAM所难以胜任的。因此这就导致更昂贵的专用化DRAM的开发,而被广泛地应用的这种专用DRAM之一是视频DRAM,也被称做“VRAM”。大部分VRAM均为双端口除某些例外还附加有一第三端口。典型VRAM具有类似于传统DRAM的系统接口,但它还有一在芯片内部的行宽缓存器(被叫做SAM,Serial Access Memory(串行存取存储器)),它通过独立的但数量相同的可用于系统接口的数据管脚和外界交互作用,如后述图6中所示。作为举例,一256K×8的VRAM也具有一8位宽的附加端口,用于连续向CRT注入刷新数据流。此“SAM”缓存器具有与外部显示器接口的固定连接。运行中,CPU(或系统总线主控者)通过系统数据接口访问VRAM并在VRAM中存储或更新屏幕图象。然后在一次访问中将一整行的屏幕数据转移进“SAM”缓存器。这一数据再通过在宽度上与系统接口相同的SAM I/O接口被传送到显示器。
这种VRAM能有效地用于仅必须与一图象源/目标交互作用的设计情况。但由于更多的附加管脚和更大的硅片,它们比传统DRAM昂贵,而且该体系结构提出非常严格的结构。因管脚数极大地增加而使得与更多装置的更多接口的扩展性能受到严格的限制。“SAM”到外部I/O接口的连接是固定的,数据端口的大小也被预定。这种措施也无法解决加速庞大的数据移动要求的问题。因此在本发明出现之前,VRAM仅仅因为缺乏任何更好的替代方案才被看作是解决办法的。
VRAM(特别是3端口设计)也曾偶尔被提及应用于网络连接应用上但由于它们前述的严格的I/O结构、非常有限的连接多个源的能力(精确地说,仅两个)、更大的线路板空间、更昂贵的结构和更高的功率消耗几乎未被应用过。
系统配置和相关问题的技术现状
因此,总括地说,典型的现有技术和基于传统DRAM的当前系统配置(如前述图3)受到上面所说的限制。关系到需要以低成本相互连接大量高速网络的网络连接方面的应用的问题基本上仍然未解决,从而导致各个网络接口的较高价格。
虽然系统带宽限制和恒定的CRT显示更新需求导致视频DRAM的发展,如前面讨论的主要是针对图象应用和通常被用于如图6中所示的配置中,以及虽然这一配置比传统的DRAM运行性能要好,随着对主存储器和显示数据带宽的性能要求增加,由于将主存储器从图象存储器分离以及由于VRAM本身的成本较高,这一配置的不利的副作用也增加了系统的成本。
RAMBUS公司也开发了另一类型的现有技术DRAM,称做“RDRAM”,它以250Mhz运行,能良好地工作于图象应用,还甚至能对高端图象/多媒体环境带来比VRAM好的经济效果,但这一措施仍然需要保持二独立的总线。
在PC市场(全部芯片的60%均消耗于这一部分)中成本是最重要的。然后开始探索寻找一称为“一致存储器体系结构(Unified MemoryArchitecture)”的配置,它将为图象和主存储器功能共用公共总线并仅采用一种型式的存储器装置。
一种可能性是利用VRAM来作为图象和主存储器部件两者,但是通过使用公共存储器所得的利益被部件的附加成本所折消。另一种可能的解决方案是采用前述的RDRAM,它的每一芯片的管脚数小于VRAM,从而使得功率消耗较低、实际投资较小和成本相对较低。但不幸的是由于它们的面向块的协议和接口限制,其对非定域的主存储器访问效率很低,因而并不能使自己表现为“一致存储器体系结构”。RDRAM的采用还在关于辐射、噪声干扰和PCB布局方面带来一系列重大电气工程设计上的挑战,而使得设计任务非常困难。
因此仍然在探求一种能够同等有效地满足主存储器和图象存储器的访问的多样化要求的更可行的低成本/高性能的一致存储器体系结构。
事实上,本发明就是针对有效解决这一迫切问题,应当认为本发明是新型DRAM体系结构和方法的进展中的一个突破,它:
(a)以体系结构的创新而不是全靠装置速度来提供高得多的系统数据带宽;
(b)以对系统带宽的最低影响向/从多个I/O源移动大量数据;
(c)与传统措施比可连接数量大得多的I/O源;
(d)以至少快一个数量级的时帧和几乎不对系统带宽产生影响地在芯片内部移动很大的数据块;
(e)可加以组构来适应I/O源的不同数据传输速率;
(f)降低输入数据包的接收与其随后的发送之间的等待时间;
(g)设置小数量管脚;
(h)成本合理;
(i)低功率消耗;
(j)系统接口简化使设计工作量最小;和
(k)对主存储器和图象需求二者同等有效地工作,由此提供真正的“一致存储器体系结构”和基本通用的措施。
本发明的目的
因而本发明的目的就是提供采用新型的多端口内部高速存取的DRAM结构的新的改进的动态随机存取(DRAM)系统、体系结构和方法,该DRAM结构排除当前系统的带宽限制和有关的问题,而以降低的成本大大增强系统的性能,并由此使得能对无数应用实现基本上通用的利用。
另一个目的是提供这样一种新型系统,其中在芯片内部以比传统措施快一个数量级的速度传送数据块,并具有以明显降低的成本和大大增强的性能使多得多的源相互连接的设施。
再一个目的是提供基于这种新的对主存储器功能和图象存储器二者均同等有效地工作的体系结构—真正的高性能一致存储器体系结构的系统配置。
下面将说明这些和其他目的,和在附列的权利要求中作更具体的描述。
概述
但从一个着眼点看,总的说本发明为用于一具有各自连接到公共系统总线接口并对其访问竞争的例如具有并行数据端口的中央处理单元(CPU)的主控制器和动态随机存取存储器(DRAM)的系统的改进的DRAM体系结构,包括多端口内部高速存取DRAM(AMPIC DRAM),该AMPIC DRAM包括:多个各自通过对应缓存器连接在一分开的外部I/O源与内部DRAM存储器之间的独立串行数据接口;安插在串行接口与缓存器间的转接组件;和用于在由例如所述CPU的总线主控制器所作的动态组构下将串行接口连接到缓存器的转接组件逻辑控制,以便作适合于所希望的数据路由的转接分配。下面详细说明优选和最佳的模式设计和技术。
附图
现在按照附图说明本发明,其中图1-6如下描述现有技术:
图1为典型的现有技术单总线并行体系结构方块图;
图2表示一典型的现有技术网络配置;
图3和4表明用于诸如图2那样的配置中的采用DRAM的典型现有技术网络连接设备;
图5为带有独立存储器和采用传统DRAM的现有技术图象应用配置的方框图;
图6为采用VRAM的图象应用的典型体系结构的相似图形;
图7为按照本发明构成的并采用本发明的多端口内部高速存取“(AMPIC)DRAM”的系统体系结构的方框图;
图8为图7的“AMPIC DRAM”的部分最高级体系结构的相似视图,表明辅助串行接口、缓存器和DRAM核之间的多路器/纵横开关转换;
图9表明图8中的说明性串行数据多路器实施方案的细节;
图10说明被组构成为端口的多个串行接口的示例;
图11为AMPIC DRAM的2位端口和相应的控制线的说明图;
图12和13为串行数据传送格式的示例图,其中图13用来说明各端口的2位;
图14为带有后述的并行行内部事务干预(称为PRITI)的二存储体(bank)“AMPIC DRAM”控制组件体系结构的部分最高级的示例方框图,无存储部件;
图15表示从二存储体作内部数据传送时的PRITI传送的操作序列;
图16与图14相似,但带有二行宽存储部件组供“PRITI”功能应用;
图17表示带有图16的二行宽存储部件组的“PRITI”传送,说明操作序列和二存储体间的内部数据交换;
图18与图17相似,但仅利用一行宽存储部件组;
图19表明一带有示例性的9串行接口的本发明的“AMPIC DRAM”的有用的管脚输出的示例;
图20说明带有以CPU操作的32位宽系统总线的利用本发明的AMPIC DRAM构成的示例性网络连接设备;
图21为用于图象应用的类似图形;
图22为说明四存储体系统配置的类似图形,每一存储体连接到不同的网络接口;
图23与图22相似,但采用二个“AMPIC DRAM”的存储体和二个带传统DRAM的存储体;
图24也与图22相似,但二存储体用于图象而二存储体用于另外的应用;
图25为“AMPIC DRAM”体系结构的另一种变型的图形,其中,有二个内部存储体和前述的“PRITI”能力,一个存储体作主存储器用而另一存储体供图象或其他应用;
图26为前述图19的AMPIC DRAM系统的变型,适用于所谓的“PARAS”接口和存取,如未决美国专利申请NO.08/320058(1994年10月7日)中说明的,具有用于集成存储器体系结构的低管脚数。(此申请揭示用于通过作新颖的接口和访问过程来改善异步和同步动态随机存取存储器装置的存取能力的方法和设备,其中相同的管脚被用于每一行、列和数据存取并同样用在写和读周期中,这样使得在基本上相同大小封装而具有较少管脚的情况下能有效地增加数据带宽和寻址范围。)
图27为具有前述并行行内部事务干预(RPITI)的多存储体“AMPICDRAM”控制组件体系结构的部分最高级示例方框图,具有一行宽存储部件组。
本发明的优选实施例
现在应该来说明本发明,其中通过大量地减少传送和对应的对系统总线的仲裁次数来在其新的以“AMPIC DRAM”为中心的解决措施中消除带宽和其他先前说明的瓶颈问题,从而大大改善整个系统的性能并带来快得多的内部数据传送能力。其他得益包括对数据带宽影响较小的系统扩展能力,结果就能如前述降低系统成本。
参看图7,应用普通的基本并行端口数据的CPU单元连接到系统总线,系统总线还与包含后述的本发明的“AMPIC DRAM”的主存储器单元相连接,以及辅助串行接口输入(#1~#n)从各输入/输出(I/O)源#1~#n连接到主存储器单元。
在此说明中,多个一位宽的独立串行接口就这样被提供到“AMPICDRAM”用于在I/O源与主存储器之间传输数据。这些串行接口连同用于系统总线接口的基本并行端口供中央处理单元CPU或类似的主控制器装置利用。这种串行接口的数量仅受限于装置工艺、管脚数、功率消耗和成本等。经由这些接口#1~#n接收的或欲发送的串行数据被存储在“AMPIC DRAM”之内很小的各自的缓存器#1~#n中,更完整地如图8中所示。对于实践上的考虑,这可能在64字节到512字节的范围内,但理论上则受读出放大器的布局限制。在传统布局中,它被限制到一行DRAM核中可获得的数据位数。这样,如果每次行存取可获得1024字节,则最大缓存器大小的“AMPIC RAM”可被设计为每一内部存储体1024字节。如果“m”为缓存器数和“n”为串行接口数,则数据包缓存器(这里术语“数据包缓存器”与术语“缓存器”可以互相替换应用)数“m”大于或等于串行接口数“n”。对“m”的上限由工艺极限限制而不受体系结构限制。
按照优选实施例,一多路器和/或纵横开关逻辑或组合(图8中的多路器/纵横开关)将“n”个串行接口连接到“m”个缓存器。各串行接口与一缓存器间的连接由CPU(或当前的系统总线主控器),作动态组构,并作适合于数据路由的改变。
用于组构4串行接口和4缓存器的一个可能的串行数据接口实施的功能性方框图如图9所示。不过可有多种途径来实现所希望的体系结构,而保持基本观念相同。当在图8中数据需要在数据包缓存器与DRAM核之间移动时,在不同的活动数据包缓存器与CPU之中进行仲裁。但通过串行接口从/向数据包缓存器接收或发送数据,则无需作任何仲裁。
输入数据包缓存器可被重新定义为输出数据包缓存器而被导向到其目的地的数据甚至无需进行在缓存器与核心DRAM间传送数据的中间步骤。这减少了接收输入的数据包及随后发送到其目的地所涉及的等待时间。这之所以成为可能仅仅是因为“AMPIC DRAM”能通过多路/纵横开关组件将任一缓存器指派给任一串行接口的能力。
在“AMPIC DRAM”体系结构的编排中,也可将多个一位宽的串行接口组构为大小例如为1、2、4或8等的窄宽度总线(名为“端口”),但在理论上没有这种限制。按装置工艺许可它可以是由1至“n”的任何数,也取决于实施。一旦多个串行接口被合组并被定义为一端口,它们即全都连接到一公共数据包缓存器,如图10中更具体表示的,其中1位宽的端口与一串行接口同样。这使得能作更快的数据传送并同时维持灵活性,并在与以不同带宽和数据传送要求运行的源进行接口中是非常有用的。因此,各个数据包缓存器(图8)如果被定义为一端口的话,具有同时与最多“n”个串行接口进行接口的能力。缓存器被组构来用于与其连接到(有时也称之为对接到)的端口同等的端口大小。
各端口上的串行数据流由其各自的控制线控制。各个端口接口由一控制和一组串行数据接口组成。作为示例,如果各串行端口仅为1位宽,则数据线的每一位利用一控制线。如果二串行接口被组构为一个端口,则一控制线被用于此二位的端口,如此等等,见图11。另外,为使管脚数最小,只要符合每一端口一控制线的准则串行接口控制线也可组构为串行数据接口线。各控制线对其端口的关连是可加以组构的。控制线的作用是为控制I/O源与串行端口间的数据流。如果管脚数对制造者无关紧要的话,当然可设置独立的控制管脚。对于某些应用,甚至无需控制管脚,而I/O源对系统总线的并行接口足以用来交换控制信息。
I/O源与“AMPIC DRAM”串行端口之间的数据传送格式使得各存储器芯片(同一外部存储体的部分)在其端口上同时接收和发送数据位,如图12中表明的。这可以一例来更好地解释。假定如图12中所示带有一32位宽系统接口的四个2M×8形式的“AMPIC DRAM”(其中一端口被定义为一1位的串行接口)。四个芯片的每一个同时接收数据。芯片0接收位0,芯片1接收位8,芯片2接收位16,芯片3接收位24。在下一周期,所有位号将被增量1。这将继续到所有的32位均被传送,使得每一芯片均接收到它的8位。一旦完成,这一处理将对下面的32位加以重复,如图12中所表明的,如此等等。
现在来考虑将一端口定义为由二串行接口所组成的另一个例子,如图13所示。这样提供给I/O源的是一总共8位的接口,它必须同时提供给每一“AMPIC DRAM”各二位。位的排列次序使得,芯片0同时接收位0和位1,芯片1同时接收位8和位9,芯片2同时接收位16和位17,和芯片3同时接收位24和位25。在下一周期,所有的位号增量2。这样继续进行直至所有32位均被传送,而使每一芯片接收到它的8位。一旦完成,此处理将对下一32位重复,如此等等。
应指出的是本发明的这种体系结构并不防止I/O源例如网络控制器芯片共享并行系统总线,如果希望这样的话。这对例如控制器配置和状态管理之类的任务将是有用的。
最好,“AMPIC DRAM”设置一如图19中所示的主时钟管脚,以及每一串行接口被组构来以这一时钟速率的倍数或因数运行,而能提供适应多种源的灵活性。也有可能提供不止一个独立时钟来替代一主时钟,其限制仅在于装置工艺、管脚数和成本制约。应指出,时钟频率分配是串行接口而不是缓存器的特点。这样“m”个缓存器中任何一个均可对接到串行端口的任一个并以该端口速度运行。
另外,本发明的“AMPIC DRAM”的可组构性还使得能不中断传送地从一缓存器到另一缓存器地转接串行接口。这在构成网络和图象方面有许多重要应用。当一个缓存器正在被用于发送信息时另一个缓存器可在一次访问中被装载行宽数据。还应注意到,虽然其它供应者已经在VRAM中实现了类似的二缓存器方法,被叫做分离缓存器传送,但这与本发明完全不同,其中与缓存器的外部I/O接口总是固定的并具有与VRAM系统数据宽相同的宽度。本发明的“AMPIC”的多路器/纵横开关组件完全地消除了所有这些限制。
在此AMPIC DRAM中可以有通过一行宽总线连接的不止一个的内部存储体,使得所有的缓存器均驻留在此总线上,或者在另一实施例中,可以对各内部存储体设置分开的缓存器组。
因上述频繁的“BitBlt”操作所产生的对系统带宽的影响可以这样来大大地减小,即依靠将多于一个的内部DRAM核存储体如图14那样经由一行宽接口连接以使得在当需要进行从存储器的一个内部存储体到另一内部存储体的传送时,各存储体的适当行地址同时以对应的“RAS”信号选通。在来自被读行的数据在读出放大器中可获得之后,被写到另一存储体。方向控制由内部逻辑设定,图15示出这种操作的定序。在完成一行传送之后,即可起动另一传送,继续这一处理直至完成。这种型式的传送取名为“PRITI”(Parallel Row Internal TransactionIntervention(并行行内部事务干预〕)。很明显,在进行这样的内部传送时,其他的对此被访问存储体的访问是不允许的。应指出,在串行接口上的传送也可与这一内部传送并行进行。一类似的概念,稍后与本发明的特点相对照的,由美国专利No.5473566揭示(1995年12月5日)。
通过这种新颖技术,在一行的访问时间内可传送很大量的数据。作为举例,考虑一带有二个各为1M×8的内部存储体的“AMPIC DRAM”。各存储体的内部结构为各8位宽的1K行。借助“PRITI”能力,在一“RAS”周期内可内部传送8K位。这对于现今存在的方法是一很大的进步,在当前的方法中,经由系统总线接口传送8位的数据,在最好的情况下将需要1K周期和相应的仲裁。如果有“r”行和“c”列,以本发明“PRITI”能力所需的传送总数将为“r”,而在传统方法中所需的总传送数则为“r×c”。
此处理对任何数量的存储体均是同样的。如果有“m”个内部存储体通过一行宽接口连接,此“PRITI”组件就能从一存储体同时对多于一个的其余存储体传送数据。这在撒播式数据包从一存储体移向所有其他内部存储体时是很有用的。利用本发明,进行这一操作无需任何行宽寄存器或锁存器(也称之为一行宽存储部件组),从而能非常经济地实现。
“PRITI”组件的最高级内部结构如前述的图14中所示。“PRITI”被装载以各存储体的起始行地址和传送数。在经组构后,为获得双方存储体的内部总线进行仲裁。对这一基本概念可有许多变体,例如此“PRITI”组件被组构来在一旦取得访问这些行的权利后即作预定数量的猝发传送,或在每次传送后释放总线以使其他源能共享DRAM核。
本发明的另一可行实施例涉及到如图27中所标明的一行宽存储部件组(或任何能执行逻辑上等同的任务的实施)来进行数据交换操作。作为一例,对于一具有1024位宽行的1M×1DRAM,所述存储部件组将含有1024个存储部件。在此,以读操作来访问内部存储体的一行,在用于此(称其为存储体2)的读出放大器处所检取的数据被存储进此行宽存储部件组。然后从另一存储体(存储体1)检取数据并将其写入存储体2。随这一操作之后,来自此存储部件的数据被写到存储体1。图18的图形表示这样的操作的适当序列。这种实施所要求的电路少于稍后述的带二组存储部件的方法而仍然能作数据交换,虽然要以执行有所减缓为代价。这一方法是对存储体1至“m”的通用方法。这种能力使得能在一非常短的时间内作大量信息交换,一对多媒体/图象应用特别有用的工具。这种实施显然因附加一组存储部件而需要比原先方法多的电路,但是这里无须在新的数据移动到其位置之前保存原先的数据。
此发明的另一变型是采用如图16中标明的二组存储部件(或任何能执行逻辑上等同任务的电路)来进行数据交换操作。在此,二个内部存储体的每一个的一行由读操作同时访问,在读出放大器处的所检取的数据被存储在该行宽存储部件组中,如图16中指出的。这样检取得并被存储的数据接着被同时写回该二行。图17的图示表示这样的操作的示范性序列。
因此,本发明的“PRITI”方法并不仅仅限于二个内部存储体,而是同样适用于DRAM芯片内的任何多存储体编排。甚至也有可能在一传统型式DRAM中增加“PRITI”功能而无需“AMPIC DRAM”的其余部分。另外,更复杂的“PRITI”也可能有除以行外还以列来定义的传送范围,而需要辅助寄存器来装载列地址。
与所述美国专利No.5473566的系统不同,按照本发明的优选实施例仅需要一行宽存储部件组,而不是每一内部存储体一个。这使得本发明的方法能适合通用的应用并保持DRAM结构的相对地便宜。
本发明的进一步改进:
a.实现多于一个行宽总线,连同它们自己的连接多个存储体的存储部件组,从而能作多于一个的并行“PRITI”传送。一般说,如有“m”个存储体,则无冗余度的最大可能的行宽总线数为“m/2”。如果每一总线利用一组上述的存储部件,则仅需要“m/2”组存储部件来作“m”个分开的同时“PRITI”传送,每一存储体一个;
b.如果存储体数很大,则可将存储体在分开的总线上作成子群。作为举例,在一8存储体的配置中,4个存储体可驻留在一总线上而其余4个则以它们自己的上述“PRITI”传送实现在第二总线上,而这二个子群再以上述“PRITI”传送能力的任一个通过另一总线连接。
虽然在此说明中应用一行宽度总线,而如要求降低成本的话,部分行宽总线也是有效的。还应指出,存储器不一定为一DRAM来利用这些特殊能力。
“AMPIC DRAM”对接口设计的影响
此芯片具有某些不同的管脚输出来反映出其独特的体系结构。一带有9个串行接口的2M×8的芯片的一种可能的管脚输出示范性地表示在图19中,带有需要在基于“AMPIC DRAM”的主存储器的接口设计中改变的附加的管脚。
每当在缓存器与DRAM核间发生内部传送时即对系统总线接口提供一“WAIT(等待)”信号。CPU(或其他主控制器)可或者利它来延迟访问的开始,或者在一替代实施中,将访问周期延长以便在进行此访问之前结束。
因为此“AMPIC DRAM”是高度地能加以组构的,所以需要一机制来在常规的DRAM核访问与一组构命令或缓存器传送交互作用之间加以区别。图19中的方法即提供一辅助控制信号来表明一命令或数据访问。
在命令周期内,此命令指示可通过数据线传播因为在“RAS”周期内它们是不被应用的。这对于内部传送命令特别有用,其中DRAM核地址需要随同缓存器ID一起提供。这种安排使得可能利用传统信号“RAS”和“CAS”来提供核心DRAM地址,其中数据线将具有缓存器号或任何其他的附加信息/指令。实际上有可能发出二个命令,一个在“RAS”成为有效时,而后在当“CAS”被建立时。存在有多个实现这种访问机制的途径,这些也是装置工艺和成本考虑的结果。
虽然由于串行端口的关系本发明的“AMPIC DRAM”具有多于传统DRAM的管脚,但如果采用所述未决专利申请的早先建议的“PARAS”型式的DRAM组件,人们要得到这一DRAM也只有在管脚数目上作临界的增加。
带“AMPIC DRAM”的网络连接应用举例
如前面解释的,按照本发明,串行接口/端口被设置在各网络控制器与主存储器之间。数据在控制器与主存储器间的移动主要是串行的。从网络控制器接收的串行数据或发送到网络控制器的数据均存储在由系统总线主控分配给它的数据包缓冲器中。这种讨论当然是假定网络控制器能以此新系统的体系结构所要求的格式分类或接收串行数据流。
研究与先前同样的例子,即,32位宽总线,以四个2M×8 AMPICDRAM代替传统的DRAM、行宽数据包缓存器和四个网络接口,一例如Ethernet网上的用户发送一1024字节的数据包到例如DFFI网上的另一用户。在此带有基于“AMPIC DRAM”的主存储器的新颖系统体系结构中,如图20中所示,数据将由连接到Ethernet控制器的“AMPIC”上的串行端口接收。无需任何仲裁也不在传送上消耗任何主存储器的带宽。在数据传送已完成后(四个“AMPIC DRAM”中每一个将接收256字节),它可在此数据包缓存器经过仲裁获取内部总线后仅以一次访问被整个传送到DRAM核。当一行地址提供到此DRAM核时,其读出放大器即具有这一行的所有数据位。这样,整个数据包缓存器即可在一次访问中被存储。如果数据包缓存器的大小小于一行宽,则需要多次(虽然仍很少)访问。
这对前述的当今存在的并行总线方法是一最重大的改进,那里需要256次访问和对应的仲裁。
在此数据包被传送到“AMPIC DRAM”核之后,由CPU处理并在此例中被改向送往FDDI端口。现在产生相反的处理。数据包在一需要仲裁的单次访问中被从此核传送到适当的数据包缓存器。此数据随后通过串行端口从数据包缓存器传送到FDDI控制器,而后再同时从FDDI控制器芯片移向其网络。再一次,此反向处理仅需为其传送作一次仲裁,而在现有设计中则需要256次传送和相应的仲裁。
本发明的这一新型DRAM的其它优点还在于可由下述方面得到的巨大利益,即仅在一次访问中即可将一撒播数据包装载进所有适合的缓存器中,随后再传送到全网络,以及多个行可被顺序访问并被装载进不同的缓存器随后再通过它们的端口传送,大大地提高运行性能。
具有AMPIC DRAM的图象/多媒应用举例
如前所述,任一图象系统的主要带宽都是消耗在“BitBlt”操作中,其中需将来自存储区域的大量数据传向另一区域。这耗费相当大部分的系统带宽,因此通常均将用于图象目的的DRAM与主系统存储器分开。但这在系统成本上带来负作用。本发明还提出消除二独立总线需求的措施,如后所述。
利用前面现有技术图5的例子,其中需要更新16行显示,而现在此DRAM部件是同样2M×8大小的“AMPIC DRAM”并带有每一个大小为1M×8的二内部存储体,还设置有“PRITI”能力,16行的数据值可传送到此新位置,对此新DRAM的数据传送数恰巧精确地与行数相同:
传送次数=欲被传送的行数(16)。
这是又一个对当前基于普通DRAM的设计所要求的16384次传送和相应的仲裁的巨大改善,并表明运行性能上的3个数量级的改善。它还成比例地降低对系统带宽的影响。按照本发明在仅一行访问时间内可传送大量数据。系统和芯片级二者的这种体系结构的新颖性均使得独特的DRAM配置能取得系统运行性能上的增强。
此“AMPIC DRAM”还能如前述被组构来以高速度将图象屏幕数据提供到显示器。
例如来看一看下面被应用到图21的配置的说明性参数:
a.每一芯片可有5个串行接口;
b.4个这种芯片实现32位宽的系统总线;
c.每一芯片4个串行接口被定义为一端口并被用于传送显示数据;和
d.每一端口的数据检索速率为100Mhz(可快于这一速率)。
在此例中,由于每一芯片4个串行接口被用于图形,所以实现16位宽的图象接口,它能以每一时钟2个字节的速率提供数据,从而提供每秒200兆字节的带宽,这对大部分图象应用均是足够的。如果采用带9个串行接口的“AMPIC DRAM”,此芯片就能被组构用于8位宽的总线来提供更大的显示数据带宽。
在上面采用的示例中应用了一个带有32位宽系统总线的外部存储体。但在一些应用中可以采用多于一个外部存储体,例如4个存储体,每个存储体32位宽“AMPIC DRAM”,如图22中所示。这一体系结构使得能,如希望的话,将不同的网络接口连接到各个存储体。这能在与通行的解决办法相比较为合理的成本之内将网络的相互连接能力提高到大得多的程度。作为一示例,如果对各“AMPIC DRAM”提供9个串行接口而且各存储体连接到4个网络接口,则总共可连接16个网络。这比起通常最多以4至5接口输出的现有技术显然为一主要得益。
由这一体系结构也可看到,当采用多于一个的外部存储体时,来自一个存储体的“AMPIC DRAM”串行端口可被连接到另一存储体的串行端口。这提供存储体间的一附加途径使得能利用数据包缓存器来在外部存储体之间快速传送数据。
而且无需应用一系统配置中的全部“AMPIC DRAM”。一些应用可将“AMPIC DRAM”与现有型式DRAM相混合,如图23的变型中所提出的。
在另外一系统配置中,“AMPIC DRAM”可被用来提供图象或显示接口二者,如图24中所表明的,并连接到其它类型的I/O源,例如摄象机或卫星接口等。
一致存储器体系结构
在理想环境下,如前面解释过的,最有利的是对图象和主存储器功能两者具有一公用存储器芯片而仍然提供必须的运行性能。这一叫做“一致存储器体系结构(Unified Memory Architecture,UMA)”的方法。当前正处于激烈讨论中,并已提出某些建议的解决方案包括前面提到的RDRAM芯片。虽然这一建议采用较少数量的管脚,结果使功率消耗较低、投资较少以及成本相对较低,基于数据包的协议和早先讨论的接口限制不能有效地作为主存储器工作,这里访问趋向于非定域的。
另一种可能的解决措施是对主存储器和图象存储器二者采用前面说过的VRAM,但附加费用不能表明这种改变的合理。
因此在本发明之前还没有出现适应PC市场广泛多样性需要的合理解决办法。
在前面结合图19的实施例所讨论的基于本发明的“AMPIC DRAM”的系统级解决方案中,提供可加以组构的串行接口和“PRITI”的功能,肯定地填补这种空缺。它具有的信号管脚比由RAMBUS建议的要多(但电源和接地管脚的数量也许较少),但少于VRAM,而双方在运行中的效果相等。事实上按本发明的这一实现,图象和主存储器功能二者可驻留在同一存储器中其带宽的降低可忽略不计,从而达到“一致存储器体系结构”的难捉摸的目标。
这种解决方案的另一可行实施例是在芯片上具有二内部存储体。一个可按照“AMPIC”组件用于图象或类似的应用,而第二个内部存储体有可能较大,则可以相似于基于传统DRAM的存储器,而此二存储体双方共享本发明的“PRITI”功能,如图25中所示。这种有效的组合提供双方最佳环境:一个存储体显现为主存储器,而另一存储体则表现为优化的图象存储器。这一芯片体系结构因“PRITI”功能而使得能以对系统带宽非常微小的影响地在二内部存储体间传送大量的数据,由此来提供实现对所有类型的应用通用的公用芯片和一单一总线所需的所有必要能力。
如果所述未决申请的所谓的“PARAS”DRAM的接口访问机制被如图26中那样连同“AMPIC”一起使用,则本发明就可作进一步完善以降低管脚数和成本,以实现一以最低可能成本对主存储器和图象二者的要求优化的存储器芯片。考虑带“PARAS”接口的2M×8DRAM的例子,被节省的管脚数为8,这样它们可用来提供串行接口。如仅实现5个串行接口,则此高性能/低成本芯片中的管脚数就可与传统的DRAM相比拟,当然是具有前面说明的巨大附加利益的。这样的组合DRAM的优点在于:
a.以体系结构的创新而不是完全靠装置速度来提供极大增强的系统数据带宽;
b.能向/从多个I/O源移动大量数据而对系统带宽的影响最小;
c.可加以组构来适应I/O源的不同数据传送速率;
d.能在芯片内部以快数个数量级的时间帧移动很大的数据块而对系统带宽的影响可忽略不计;
e.对所提供的功能性装置具有很少管脚数;
f.由于管脚数降低成本也相对地低;
g、所需的功率消耗相对地低;
h.此体系结构降低输入数据包的接收与其随后的发送之间的等待时间;
i.与传统方法相比相互连接大得多数量的I/O源;
j.系统设计接口几乎相同于现有的DRAM,从而使设计周期最短;和
k.对主存储器和图象需求二者以同等效率工作,从而提供一致存储器体系结构。
对于本技术领域的熟悉人员可作的其他变型还包括,设置将同一数据包缓存器卸载到类似定义的其他端口的逻辑,和使缓存器串列的能力,或将串行接口和缓存器转换应用到其它存储器装置而不是DRAM,并认为这些均属于附列的权利要求中所定义的本发明的精神实质和范畴之内。
Claims (29)
1、一种具有各自连接到公共系统总线接口并对其访问竞争的例如具有并行数据端口的中央处理单元(CPU)的主控制器并具有由多端口内部高速存取DRAM或AMPIC DRAM构成的DRAM改进体系结构的系统,其特征在于包括:多个各自通过对应的行宽缓存器连接在一分开的外部I/O源与内部DRAM存储器之间的独立串行数据接口,所述内部DRAM存储器具有按照行和列排列的多个存储单元;安插在串行接口与缓存器间的转接组件;和用于在由例如所述CPU的一个总线主控制器所作的动态组构下将串行接口连接到缓存器的转接组件逻辑控制,以便作适合于所希望的数据路由的转接分配。
2、权利要求1中所述系统,其特征是转接组件包括一或多个多路器或纵横开关,或者它们的组合。
3、权利要求1中所述系统,其特征是所述存储器为系统的DRAM核主存储器。
4、权利要求3中所述系统,其特征是缓存器为数据包缓存器,并设置有对各个活动数据包缓存器与CPU对总线接口的访问进行仲裁的装置,而通过串行接口从数据包缓存器接收或向其发送数据则无需仲裁。
5、权利要求1中所述系统,其特征是AMPIC DRAM转接组件分配任一缓存器给任一串行接口而无需任何在缓存器与核心DRAM间传送数据的中间步骤。
6、权利要求1中所述系统,其特征是各独立串行接口为一位宽。
7、权利要求6中所述系统,其特征是多个一位宽串行接口与一公共I/O源被组构成一窄宽度总线或端口,连接到一公共缓存器。
8、权利要求7中所述系统,其特征是各缓存器在被定义为一端口时具有同时与所有串行接口进行接口的能力,而各缓存器则被组构来用于与它所连接或对接的端口同样的端口大小。
9、权利要求1中所述系统,其特征是对各端口接口设置一控制线来控制对应的I/O源与串行端口之间的串行数据流。
10、权利要求1中所述系统,其特征是设置多个AMPIC DRAM芯片,每一个被连接在总线接口与I/O源串行接口之间,其中一或多个串行接口用作为一端口。
11、如权利要求1中所述系统,其特征是设置了至少二个内部DRAM核存储体,它们经由具有以同时的对应RAS信号周期进行选通的行地址的行宽接口相连接以使得在从一存储体的一行读取数据后,将其写到至少一个另一存储体。
12、如权利要求11中所述系统,其特征是内部逻辑提供方向控制以使得在完成一行传送后能启动另一个传送,所得的并行行内部事务干预(PRITI)继续到完成。
13、如权利要求12中所述系统,其特征是设置有在这种内部传送期间拒绝对DRAM核的访问,但在此内部传送期间允许在串行接口上的传送的装置。
14、如权利要求13中所述系统,其特征是二行宽二存储部件组在所述存储体间进行接口,并设置有与所述操作同时访问各存储体中一行、存储进所述存储部件、然后同时写回到二个源的装置。
15、如权利要求13中所述系统,其特征是一行宽存储部件组被设置在此行宽总线接口上,并被提供有存储的一个存储体的行数据,在至少一个另外的存储体将数据写到所述一个存储体后所述一个存储体的行数据被写到所述至少一个另外的存储体。
16、如权利要求1中所述系统,其特征是AMPIC DRAM芯片除分开的串行接口管脚外还在总线接口侧设置有地址、数据、RAS、CAS、写、等待、命令/数据和主时钟管脚;每当在缓存器与DRAM核间发生内部传送时CPU利用等待信号来或者推迟访问的开始(等待)或延长访问周期以便在处理此访问前完成该内部传送;用于访问的命令控制信号经由在RAS周期内不应用的数据线提供;RAS和CAS线提供核心DRAM地址而数据线提供缓存器号或辅助指令信息;和主时钟控制串行接口。
17、权利要求1中所述系统,适用于网络连接应用,该应用涉及有多个网络控制器,各自与对应的主存储器AMPIC DRAM的一或多个存储体作串行接口,后者依次连接到总线接口的一侧,而CPU则连接到总线接口的另一侧,其中控制器与主存储器间的数据移动基本上是串行的,从网络控制器接收的作为欲被发送到一网络控制器的数据的串行数据被存储进由系统总线主控CPU指派给它的数据包缓存器。
18、权利要求17中所述系统,其特征是在一网络控制器发送数据到第二网络控制器时,由所述一网络控制器的串行端口接收的数据被传送到对应的基于DRAM的主存储器而无需仲裁或消耗主存储器带宽,而且仅仅在数据包缓存器通过仲裁取得总线之后的一次访问中将数据传送施加到对应的DRAM核,而且行地址数据被提供到DRAM核;和其中被传送到AMPIC DRAM的数据包被CPU加以处理并改向到所述第二网络控制器端口而数据是在仲裁后的一单个访问中传送到对应的数据包缓存器,然后通过对应的串行端口传送到所述第二网络控制器及其网络。
19、权利要求1中所述系统,适用于图象/多媒体应用,该应用涉及最小显示行数的传送并从多个显示串行接口端口传送到依次连接到所述总线接口的一侧的多个存储器AMPIC DRAM,CPU连接到此接口的另一侧,其中,显示端口与存储器间的数据移动基本上是串行的,且从显示接口接收的串行数据被存储进被分配给系统总线主控CPU的数据包缓存器。
20、权利要求19中所述系统,其特征是设置有以相同数量的数据传送操作传送所述数量的显示行的装置。
21、权利要求17中所述系统,其特征是还将一或多个另外的没有串行接口的普通的传统DRAM的外部存储体连接到总线接口。
22、权利要求17中所述系统,其特征是还设置有一或多个另外的AMPIC DRAM外部存储体,也连接到总线接口并与图象显示数据端口作串行接口。
23、一具有控制连接有一或多个装备有存储器的DRAM单元或DRAM单元的存储体的系统总线接口的并行数据端口CPU的系统中,用于消除DRAM系统带宽限制、显著地增加数据传送速度、显著减少总线仲裁需求、使得能实现增加的I/O源接口和降低的成本及较低的功率消耗的方法,其特征在于包括如下步骤:为各DRAM单元装备至少一个用于通过一对应串行接口与外部I/O数据源进行接口的辅助串行数据端口;
在各DRAM内部为每一串行接口设置一缓存器和将一转接组件安插在缓存器与串行接口之间;以及促使CPU通过动态组构转接组件作适合于所希望的数据路由的转接来控制串行接口对缓存器的连接。
24、如权利要求23中所述方法,其特征是所述转接是由多路转换或纵横转接或两者来实现的。
25、如权利要求23中所述的方法,其特征是所述转接将缓存器分配给任一串行接口而无需任何在缓存器与DRAM存储器间传送数据的中间步骤,和在缓存器与CPU之间作总线接口访问的仲裁,但通过串行接口从缓存器接收或向其发送数据则无需仲裁。
26、一种用于如权利要求1所述的系统的DRAM改进体系结构,其特征是一芯片内部含有至少二个DRAM存储体和转接组件及缓存器,并行行内部事务干预装置用于内部数据行传送并被连接成使得至少一个串行连接到一I/O图象显示器的存储体主要利用另一存储体作为主存储器核心,使得访问一个或双方存储体的CPU将数据移动到所述另一存储体中,以及数据在并行行内部事务干预装置的控制下在存储体间移动,从而提供适宜于一致存储器体系结构的芯片。
27、一种具有各自连接到公共系统总线接口并对其访问竞争的例如具有并行数据端口的中央处理单元(CPU)的主控制器并具有由多端口内部高速存取DRAM或AMPIC DRAM构成的DRAM改进体系结构的系统,其特征在于包括:多个各自通过相应的缓存器连接在分开的外部I/O源与单元中的内部存储器之间的独立串行数据接口;安插在串行接口与缓存器之间的转接组件;和用于在由总线主控制器如所述CPU所作的动态组构下将串行接口连接到缓存器的转接组件逻辑控制,以便作适合于所希望的数据路由的转接分配。
28、一种如权利要求1所述的用于控制公共总线的数据访问的系统,所述系统具有一个改进的DRAM体系结构,所述改进的DRAM体系结构包括多端口内部高速存取DRAM或AMPIC DRAM,其特征在于包括:多个各自通过对公共内部总线竞争的对应缓存器连接在一分开的外部I/O源与内部DRAM存储器之间的独立串行数据接口;安插在串行接口与缓存器间的转接组件;和用于在适合于所希望的接口间数据路由的转接分配的动态组构下将串行接口连接到缓存器的转接组件逻辑控制。
29、如权利要求28所述的系统,其中增加I/O源的数目和/或AMPICDRAM开关的数目,从而由于内部总线大小的实际相应增加而扩大将交换的数据量和内部数据交换能力。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US08/581,467 US5799209A (en) | 1995-12-29 | 1995-12-29 | Multi-port internally cached DRAM system utilizing independent serial interfaces and buffers arbitratively connected under a dynamic configuration |
US08/581,467 | 1995-12-29 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1209213A CN1209213A (zh) | 1999-02-24 |
CN1120495C true CN1120495C (zh) | 2003-09-03 |
Family
ID=24325313
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN96180069A Expired - Fee Related CN1120495C (zh) | 1995-12-29 | 1996-08-12 | 高性能通用多端口内部高速缓存的动态随机存取存储器系统、体系结构和方法 |
Country Status (15)
Country | Link |
---|---|
US (2) | US5799209A (zh) |
EP (1) | EP0870303B1 (zh) |
JP (1) | JP3699126B2 (zh) |
KR (1) | KR100328603B1 (zh) |
CN (1) | CN1120495C (zh) |
AT (1) | ATE197101T1 (zh) |
AU (1) | AU721764B2 (zh) |
CA (1) | CA2241841C (zh) |
DE (1) | DE69610714T2 (zh) |
DK (1) | DK0870303T3 (zh) |
GR (1) | GR3035261T3 (zh) |
HK (1) | HK1018342A1 (zh) |
IL (1) | IL125135A (zh) |
TW (1) | TW318222B (zh) |
WO (1) | WO1997024725A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101216751B (zh) * | 2008-01-21 | 2010-07-14 | 戴葵 | 基于分布存储结构的具有数据处理能力的动态随机存储器装置 |
Families Citing this family (82)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6118776A (en) * | 1997-02-18 | 2000-09-12 | Vixel Corporation | Methods and apparatus for fiber channel interconnection of private loop devices |
JPH10283088A (ja) * | 1997-04-02 | 1998-10-23 | Oki Electric Ind Co Ltd | シリアル通信回路 |
AU744329B2 (en) * | 1997-04-30 | 2002-02-21 | Canon Kabushiki Kaisha | Data normalization circuit and method |
JP3733699B2 (ja) * | 1997-06-20 | 2006-01-11 | ソニー株式会社 | シリアルインタフェース回路 |
US5918074A (en) * | 1997-07-25 | 1999-06-29 | Neonet Llc | System architecture for and method of dual path data processing and management of packets and/or cells and the like |
US6212597B1 (en) * | 1997-07-28 | 2001-04-03 | Neonet Lllc | Apparatus for and method of architecturally enhancing the performance of a multi-port internally cached (AMPIC) DRAM array and like |
US6108758A (en) * | 1997-08-29 | 2000-08-22 | Intel Corporation | Multiple masters in a memory control system |
US6067595A (en) * | 1997-09-23 | 2000-05-23 | Icore Technologies, Inc. | Method and apparatus for enabling high-performance intelligent I/O subsystems using multi-port memories |
KR100261218B1 (ko) * | 1997-12-08 | 2000-07-01 | 윤종용 | 반도체 메모리 장치의 핀 어사인먼트 방법 및 패킷 단위의 신호를 입력으로 하는 반도체 메모리장치 |
US6622224B1 (en) * | 1997-12-29 | 2003-09-16 | Micron Technology, Inc. | Internal buffered bus for a drum |
US6085290A (en) * | 1998-03-10 | 2000-07-04 | Nexabit Networks, Llc | Method of and apparatus for validating data read out of a multi port internally cached dynamic random access memory (AMPIC DRAM) |
US6138219A (en) * | 1998-03-27 | 2000-10-24 | Nexabit Networks Llc | Method of and operating architectural enhancement for multi-port internally cached dynamic random access memory (AMPIC DRAM) systems, eliminating external control paths and random memory addressing, while providing zero bus contention for DRAM access |
US6003121A (en) * | 1998-05-18 | 1999-12-14 | Intel Corporation | Single and multiple channel memory detection and sizing |
US6112267A (en) * | 1998-05-28 | 2000-08-29 | Digital Equipment Corporation | Hierarchical ring buffers for buffering data between processor and I/O device permitting data writes by processor and data reads by I/O device simultaneously directed at different buffers at different levels |
FR2779843A1 (fr) * | 1998-06-16 | 1999-12-17 | Busless Computers | Composant memoire multiport serie et application a un ordinateur |
US6122680A (en) * | 1998-06-18 | 2000-09-19 | Lsi Logic Corporation | Multiple channel data communication buffer with separate single port transmit and receive memories having a unique channel for each communication port and with fixed arbitration |
US6237130B1 (en) * | 1998-10-29 | 2001-05-22 | Nexabit Networks, Inc. | Chip layout for implementing arbitrated high speed switching access of pluralities of I/O data ports to internally cached DRAM banks and the like |
US5991163A (en) * | 1998-11-12 | 1999-11-23 | Nexabit Networks, Inc. | Electronic circuit board assembly and method of closely stacking boards and cooling the same |
US6272567B1 (en) * | 1998-11-24 | 2001-08-07 | Nexabit Networks, Inc. | System for interposing a multi-port internally cached DRAM in a control path for temporarily storing multicast start of packet data until such can be passed |
US6389494B1 (en) * | 1998-12-30 | 2002-05-14 | Emc Corporation | System for interfacing a data storage system to a host utilizing a plurality of busses for carrying end-user data and a separate bus for carrying interface state data |
US7117275B1 (en) | 1999-01-04 | 2006-10-03 | Emc Corporation | Data storage system having separate data transfer section and message network |
US7073020B1 (en) | 1999-01-04 | 2006-07-04 | Emc Corporation | Method for message transfer in computer storage system |
US6467018B1 (en) * | 1999-01-04 | 2002-10-15 | International Business Machines Corporation | Method and apparatus for addressing individual banks of DRAMs on a memory card |
US6345345B1 (en) * | 1999-01-26 | 2002-02-05 | Advanced Micro Devices, Inc. | Data communications device and associated method for arbitrating access using dynamically programmable arbitration scheme and limits on data transfers |
EP1204925A1 (en) * | 1999-03-26 | 2002-05-15 | Nexabit Networks Inc. | Ampic dram system |
US6412032B1 (en) * | 1999-09-30 | 2002-06-25 | Rockwell Automation Technologies, Inc. | Interface for industrial controller network card |
DE19951046A1 (de) * | 1999-10-22 | 2001-04-26 | Siemens Ag | Speicherbaustein für ein Mehrprozessorsystem und Mehrprozessorsystem |
US6628662B1 (en) | 1999-11-29 | 2003-09-30 | International Business Machines Corporation | Method and system for multilevel arbitration in a non-blocking crossbar switch |
US7010575B1 (en) | 2000-03-31 | 2006-03-07 | Emc Corporation | Data storage system having separate data transfer section and message network having bus arbitration |
US7007194B1 (en) | 2000-06-29 | 2006-02-28 | Emc Corporation | Data storage system having point-to-point configuration |
US6779071B1 (en) | 2000-04-28 | 2004-08-17 | Emc Corporation | Data storage system having separate data transfer section and message network with status register |
US6651130B1 (en) | 2000-04-28 | 2003-11-18 | Emc Corporation | Data storage system having separate data transfer section and message network with bus arbitration |
KR20010106079A (ko) * | 2000-05-19 | 2001-11-29 | 강 크리스토퍼 | 파이프라인된 스위치 구성 디바이스 |
US6349058B1 (en) * | 2001-02-16 | 2002-02-19 | Microchip Technology Incorporated | Electronic circuit and method for storing configuration and calibration information in a non-volatile memory array |
US7259410B2 (en) | 2001-07-25 | 2007-08-21 | Nantero, Inc. | Devices having horizontally-disposed nanofabric articles and methods of making the same |
US6924538B2 (en) | 2001-07-25 | 2005-08-02 | Nantero, Inc. | Devices having vertically-disposed nanofabric articles and methods of making the same |
US6911682B2 (en) | 2001-12-28 | 2005-06-28 | Nantero, Inc. | Electromechanical three-trace junction devices |
US6643165B2 (en) | 2001-07-25 | 2003-11-04 | Nantero, Inc. | Electromechanical memory having cell selection circuitry constructed with nanotube technology |
US7566478B2 (en) | 2001-07-25 | 2009-07-28 | Nantero, Inc. | Methods of making carbon nanotube films, layers, fabrics, ribbons, elements and articles |
US6919592B2 (en) | 2001-07-25 | 2005-07-19 | Nantero, Inc. | Electromechanical memory array using nanotube ribbons and method for making same |
US6835591B2 (en) | 2001-07-25 | 2004-12-28 | Nantero, Inc. | Methods of nanotube films and articles |
US6706402B2 (en) | 2001-07-25 | 2004-03-16 | Nantero, Inc. | Nanotube films and articles |
US6574130B2 (en) | 2001-07-25 | 2003-06-03 | Nantero, Inc. | Hybrid circuit having nanotube electromechanical memory |
US6988161B2 (en) * | 2001-12-20 | 2006-01-17 | Intel Corporation | Multiple port allocation and configurations for different port operation modes on a host |
US7176505B2 (en) | 2001-12-28 | 2007-02-13 | Nantero, Inc. | Electromechanical three-trace junction devices |
US6784028B2 (en) | 2001-12-28 | 2004-08-31 | Nantero, Inc. | Methods of making electromechanical three-trace junction devices |
US7335395B2 (en) | 2002-04-23 | 2008-02-26 | Nantero, Inc. | Methods of using pre-formed nanotubes to make carbon nanotube films, layers, fabrics, ribbons, elements and articles |
DE10253918A1 (de) * | 2002-11-19 | 2004-06-17 | Infineon Technologies Ag | Speichersystem, insbesondere für Netzwerk-Broadcasting-Anwendungen wie Video-/Audio-Anwendungen, sowie Verfahren zum Betrieb eines Speichersystems |
US7099983B2 (en) * | 2002-11-25 | 2006-08-29 | Lsi Logic Corporation | Multi-core communications module, data communications system incorporating a multi-core communications module, and data communications process |
US7560136B2 (en) | 2003-01-13 | 2009-07-14 | Nantero, Inc. | Methods of using thin metal layers to make carbon nanotube films, layers, fabrics, ribbons, elements and articles |
US7571287B2 (en) * | 2003-03-13 | 2009-08-04 | Marvell World Trade Ltd. | Multiport memory architecture, devices and systems including the same, and methods of using the same |
US20040199727A1 (en) * | 2003-04-02 | 2004-10-07 | Narad Charles E. | Cache allocation |
KR100518572B1 (ko) * | 2003-05-15 | 2005-10-04 | 삼성전자주식회사 | 직렬 멀티 포트 통신 방법, 이에 적합한 장치, 이 장치를제어하는 방법, 그리고 이 제어 방법에 적합한 기록 매체 |
JP2004355351A (ja) * | 2003-05-29 | 2004-12-16 | Hitachi Ltd | サーバ装置 |
CN100390755C (zh) * | 2003-10-14 | 2008-05-28 | 中国科学院计算技术研究所 | 含有显式高速缓冲存储器的计算机微体系结构 |
US8332598B2 (en) | 2005-06-23 | 2012-12-11 | Intel Corporation | Memory micro-tiling request reordering |
US7587521B2 (en) * | 2005-06-23 | 2009-09-08 | Intel Corporation | Mechanism for assembling memory access requests while speculatively returning data |
US7765366B2 (en) * | 2005-06-23 | 2010-07-27 | Intel Corporation | Memory micro-tiling |
US7558941B2 (en) * | 2005-06-30 | 2009-07-07 | Intel Corporation | Automatic detection of micro-tile enabled memory |
US8253751B2 (en) * | 2005-06-30 | 2012-08-28 | Intel Corporation | Memory controller interface for micro-tiled memory access |
JP2007334564A (ja) * | 2006-06-14 | 2007-12-27 | Matsushita Electric Ind Co Ltd | ユニファイドメモリシステム |
JP5018074B2 (ja) * | 2006-12-22 | 2012-09-05 | 富士通セミコンダクター株式会社 | メモリ装置,メモリコントローラ及びメモリシステム |
US8294635B2 (en) | 2007-01-12 | 2012-10-23 | Panasonic Corporation | Plasma display device and driving method of plasma display panel |
JP5599969B2 (ja) | 2008-03-19 | 2014-10-01 | ピーエスフォー ルクスコ エスエイアールエル | マルチポートメモリ、および該マルチポートメモリを備えるコンピュータシステム |
JP5449686B2 (ja) * | 2008-03-21 | 2014-03-19 | ピーエスフォー ルクスコ エスエイアールエル | マルチポートメモリ及びそのマルチポートメモリを用いたシステム |
JP5588100B2 (ja) * | 2008-06-23 | 2014-09-10 | ピーエスフォー ルクスコ エスエイアールエル | 半導体装置およびデータ処理システム |
US8713248B2 (en) * | 2009-06-02 | 2014-04-29 | Nokia Corporation | Memory device and method for dynamic random access memory having serial interface and integral instruction buffer |
US9003206B2 (en) * | 2009-12-23 | 2015-04-07 | Bae Systems Information And Electronic Systems Integration Inc. | Managing communication and control of power components |
US8547774B2 (en) * | 2010-01-29 | 2013-10-01 | Mosys, Inc. | Hierarchical multi-bank multi-port memory organization |
CN102193865B (zh) * | 2010-03-16 | 2015-03-25 | 联想(北京)有限公司 | 存储系统、存储方法和使用其的终端 |
US8718806B2 (en) | 2011-09-02 | 2014-05-06 | Apple Inc. | Slave mode transmit with zero delay for audio interface |
US9514069B1 (en) | 2012-05-24 | 2016-12-06 | Schwegman, Lundberg & Woessner, P.A. | Enhanced computer processor and memory management architecture |
EP3454594B1 (en) | 2013-06-11 | 2020-11-04 | Seven Networks, LLC | Offloading application traffic to a shared communication channel for signal optimisation in a wireless network for traffic utilizing proprietary and non-proprietary protocols |
CN104717152B (zh) * | 2013-12-17 | 2019-07-19 | 深圳市中兴微电子技术有限公司 | 一种实现接口缓存动态分配的方法和装置 |
CN106293635B (zh) * | 2015-05-13 | 2018-10-30 | 华为技术有限公司 | 指令块处理方法及装置 |
US9965211B2 (en) | 2016-09-08 | 2018-05-08 | Cisco Technology, Inc. | Dynamic packet buffers with consolidation of low utilized memory banks |
KR20180092476A (ko) * | 2017-02-09 | 2018-08-20 | 에스케이하이닉스 주식회사 | 저장 장치 및 그 동작 방법 |
CN109582226A (zh) * | 2018-11-14 | 2019-04-05 | 北京中电华大电子设计有限责任公司 | 一种高速存储访问逻辑结构及其控制方法 |
US11315611B2 (en) * | 2020-01-07 | 2022-04-26 | SK Hynix Inc. | Processing-in-memory (PIM) system and operating methods of the PIM system |
TW202141290A (zh) | 2020-01-07 | 2021-11-01 | 韓商愛思開海力士有限公司 | 記憶體中處理(pim)系統和pim系統的操作方法 |
US11385837B2 (en) | 2020-01-07 | 2022-07-12 | SK Hynix Inc. | Memory system |
CN115065572B (zh) * | 2022-02-28 | 2023-09-29 | 西安电子科技大学 | 一种面向车载电子系统的can fd控制器 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH01280860A (ja) * | 1988-05-06 | 1989-11-13 | Hitachi Ltd | マルチポートキヤツシユメモリを有するマルチプロセツサシステム |
EP0471932B1 (en) * | 1990-07-27 | 1997-01-22 | International Business Machines Corporation | Virtual multi-port ram |
US5581773A (en) * | 1992-05-12 | 1996-12-03 | Glover; Michael A. | Massively parallel SIMD processor which selectively transfers individual contiguously disposed serial memory elements |
US5450355A (en) * | 1993-02-05 | 1995-09-12 | Micron Semiconductor, Inc. | Multi-port memory device |
US5490112A (en) * | 1993-02-05 | 1996-02-06 | Micron Technology, Inc. | Multi-port memory device with multiple sets of columns |
JPH06251166A (ja) * | 1993-02-25 | 1994-09-09 | Toshiba Corp | 画像処理装置 |
US5442747A (en) * | 1993-09-27 | 1995-08-15 | Auravision Corporation | Flexible multiport multiformat burst buffer |
US5457654A (en) * | 1994-07-26 | 1995-10-10 | Micron Technology, Inc. | Memory circuit for pre-loading a serial pipeline |
-
1995
- 1995-12-29 US US08/581,467 patent/US5799209A/en not_active Expired - Lifetime
-
1996
- 1996-08-12 CN CN96180069A patent/CN1120495C/zh not_active Expired - Fee Related
- 1996-08-12 WO PCT/IB1996/000794 patent/WO1997024725A1/en active IP Right Grant
- 1996-08-12 AT AT96925929T patent/ATE197101T1/de not_active IP Right Cessation
- 1996-08-12 JP JP50793497A patent/JP3699126B2/ja not_active Expired - Fee Related
- 1996-08-12 AU AU65295/96A patent/AU721764B2/en not_active Ceased
- 1996-08-12 CA CA002241841A patent/CA2241841C/en not_active Expired - Fee Related
- 1996-08-12 DE DE69610714T patent/DE69610714T2/de not_active Expired - Lifetime
- 1996-08-12 EP EP96925929A patent/EP0870303B1/en not_active Expired - Lifetime
- 1996-08-12 KR KR1019980705020A patent/KR100328603B1/ko not_active IP Right Cessation
- 1996-08-12 DK DK96925929T patent/DK0870303T3/da active
- 1996-08-12 IL IL12513596A patent/IL125135A/en not_active IP Right Cessation
- 1996-09-14 TW TW085111239A patent/TW318222B/zh not_active IP Right Cessation
-
1998
- 1998-07-06 US US09/110,929 patent/US6108725A/en not_active Expired - Lifetime
-
1999
- 1999-07-27 HK HK99103219A patent/HK1018342A1/xx not_active IP Right Cessation
-
2001
- 2001-01-17 GR GR20010400081T patent/GR3035261T3/el not_active IP Right Cessation
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101216751B (zh) * | 2008-01-21 | 2010-07-14 | 戴葵 | 基于分布存储结构的具有数据处理能力的动态随机存储器装置 |
Also Published As
Publication number | Publication date |
---|---|
EP0870303A1 (en) | 1998-10-14 |
DE69610714T2 (de) | 2001-05-10 |
GR3035261T3 (en) | 2001-04-30 |
WO1997024725A1 (en) | 1997-07-10 |
HK1018342A1 (en) | 1999-12-17 |
DE69610714D1 (de) | 2000-11-23 |
AU6529596A (en) | 1997-07-28 |
EP0870303B1 (en) | 2000-10-18 |
IL125135A0 (en) | 1999-01-26 |
ATE197101T1 (de) | 2000-11-15 |
US5799209A (en) | 1998-08-25 |
AU721764B2 (en) | 2000-07-13 |
KR19990076893A (ko) | 1999-10-25 |
US6108725A (en) | 2000-08-22 |
TW318222B (zh) | 1997-10-21 |
DK0870303T3 (da) | 2001-02-26 |
CN1209213A (zh) | 1999-02-24 |
JP3699126B2 (ja) | 2005-09-28 |
KR100328603B1 (ko) | 2002-10-19 |
IL125135A (en) | 2002-12-01 |
CA2241841C (en) | 1999-10-26 |
CA2241841A1 (en) | 1997-07-10 |
JP2000501524A (ja) | 2000-02-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1120495C (zh) | 高性能通用多端口内部高速缓存的动态随机存取存储器系统、体系结构和方法 | |
US5687325A (en) | Application specific field programmable gate array | |
JP4926947B2 (ja) | システムメモリへのgpuのレンダリング | |
US4747081A (en) | Video display system using memory with parallel and serial access employing serial shift registers selected by column address | |
US6041400A (en) | Distributed extensible processing architecture for digital signal processing applications | |
US4639890A (en) | Video display system using memory with parallel and serial access employing selectable cascaded serial shift registers | |
WO1997024725A9 (en) | High performance universal multi-port internally cached dynamic random access memory system, architecture and method | |
US20060095621A1 (en) | Methods and apparatuses for generating a single request for block transactions over a communication fabric | |
US20130016111A1 (en) | Optimization of memory bandwidth in a multi-display system | |
CN1656465A (zh) | 可缩放的高性能3d图形显示 | |
JPH03130798A (ja) | Ramベースビデオ集積回路を有するコンピュータ | |
CN1941192A (zh) | 具有串行输入/输出接口的多端口存储装置 | |
JP2004362567A (ja) | 共用記憶装置の調停 | |
WO2023107218A1 (en) | High-bandwidth memory module architecture | |
CN1132121C (zh) | 图形处理器和应用该处理器的数据处理系统 | |
CN109873998A (zh) | 基于多层次引导滤波的红外视频增强系统 | |
CN1145893C (zh) | 带有具用于一个共用存储器的接口的多个处理器的装置 | |
US10546558B2 (en) | Request aggregation with opportunism | |
JP2003224862A (ja) | グラフィックコントローラ及び表示メモリ容量低減方式 | |
CN104025013A (zh) | 在线性存储格式和y瓦片化存储格式之间转置图像数据 | |
JP2003177958A (ja) | 特殊メモリデバイス | |
US20220012201A1 (en) | Scatter and Gather Streaming Data through a Circular FIFO | |
CN112114754B (zh) | 一种用于处理背光数据的系统级芯片soc及终端设备 | |
US9691349B2 (en) | Source pixel component passthrough | |
US7817651B2 (en) | Method and apparatus for controlling storage of data |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20030903 Termination date: 20150812 |
|
EXPY | Termination of patent right or utility model |