專利名稱:高性能通用多端口內(nèi)部高速緩存的動態(tài)隨機(jī)存取存儲器系統(tǒng)、體系結(jié)構(gòu)和方法
技術(shù)領(lǐng)域:
本發(fā)明是關(guān)于動態(tài)隨機(jī)存取存儲器技術(shù)(DRAM),較具體說是針對一消除當(dāng)前系統(tǒng)帶寬的限制及相關(guān)問題并提供大大增強(qiáng)的系統(tǒng)性能和降低的成本的、由于能提供一致存儲器體系結(jié)構(gòu)而能基本上對許多應(yīng)用通用的新穎的DRAM系統(tǒng)體系結(jié)構(gòu)。
大量的這種系統(tǒng)設(shè)計(jì),特別是在網(wǎng)絡(luò)連接/通信中,由于各種不同源之間對系統(tǒng)主存儲器(幾乎總是DRAM)的訪問存在競爭而在性能上受到限制。造成大量競爭的直接原因是采用單總線的體系結(jié)構(gòu),其中一個(gè)總線作CPU、主存儲器和I/O源之間的相互連接。這種以及過去和現(xiàn)在的類似體系結(jié)構(gòu)還由于嚴(yán)重的帶寬限制而阻礙CPU管理更多的I/O接口的能力。
類似的系統(tǒng)帶寬限制也使得圖象/多媒體設(shè)計(jì)人員將圖象存儲器與主存儲器分離,從而給系統(tǒng)成本帶來負(fù)面影響。還開發(fā)了專門供圖象應(yīng)用的DRAM來進(jìn)一步增強(qiáng)視頻數(shù)據(jù)帶寬容量。盡管提出了一些采用不同型式DRAM的系統(tǒng)體系結(jié)構(gòu)使得一公共存儲器能既用作主存儲器又能用作圖象存儲器,但因總有一方的運(yùn)行效果不佳,這種措施的作用有限。
因此,在本發(fā)明出現(xiàn)之前基本上沒有低成本、高性能的一致存儲器體系結(jié)構(gòu),而本發(fā)明提出一種下面將討論的獨(dú)創(chuàng)的DRAM體系結(jié)構(gòu)和由此而成的獨(dú)特系統(tǒng)體系結(jié)構(gòu),它大大地消除了這些問題并從而能提供大得多的數(shù)據(jù)帶寬容量來連接極大數(shù)量的源以及增強(qiáng)的性能,并顯著地降低了成本。而基于這種新穎體系結(jié)構(gòu)的系統(tǒng)配置將對主存儲器功能和圖象存儲器等同效率地工作,從而進(jìn)一步實(shí)現(xiàn)確實(shí)低成本高性能的一致存儲器體系結(jié)構(gòu)。因此將這一芯片解決措施稱為“AMPIC DRAM”,即A Multi Port Internally Cached DRAM(多端口內(nèi)部高速存取DRAM)。
本發(fā)明背景如上面討論的,大部分這種性質(zhì)的高性能系統(tǒng)均傾向于采用基于總線的體系結(jié)構(gòu),其中單一的系統(tǒng)總線作CPU、主存儲器和I/O源之間的相互連接,如下面討論的圖1中所示(術(shù)語“主存儲器”和“系統(tǒng)存儲器”在這里可相互交換)。這是相對簡明的設(shè)計(jì)并留有擴(kuò)展空間,但它具有嚴(yán)重的局限性。每當(dāng)CPU或外設(shè)需要訪問主存儲器(通常以DRAM實(shí)現(xiàn))時(shí),總要為訪問系統(tǒng)總線進(jìn)行仲裁。這樣,系統(tǒng)中并行活動量受到外部總線的總?cè)萘康南拗啤?br>
隨著CPU的速度增加,系統(tǒng)總線的帶寬必須相應(yīng)增加來發(fā)揮系統(tǒng)的整個(gè)潛力。然而增加總線帶寬極其困難并且非常昂貴因而在技術(shù)上成為不可能或者其成本無法忍受。另外,總線上可能運(yùn)行的I/O源的數(shù)量也受到帶寬的限制。事實(shí)上應(yīng)當(dāng)指出,雖然理論上說單總線可以有很大程度的擴(kuò)展性,而實(shí)際運(yùn)行由于競爭對這種擴(kuò)展產(chǎn)生極大的限制。
這一問題在所有類型的應(yīng)用中普遍存在。雖然為更好地認(rèn)識這些問題下面將介紹說明性的網(wǎng)絡(luò)連接和圖象應(yīng)用作為舉例,但本發(fā)明決不僅局限于這些例示范圍。
網(wǎng)絡(luò)連接應(yīng)用舉例典型的網(wǎng)絡(luò)連接設(shè)備(也稱之為互連性設(shè)備)例如開關(guān)、路由器、橋接器、插座等將多重網(wǎng)絡(luò)如ATM、SONET、Token Ring(權(quán)標(biāo)環(huán))、FDDI、Ethernet(以太網(wǎng))、Fiber Channel(光纖通道)等相互連接,如后述圖2中所示。典型設(shè)計(jì)包含一高性能CPU和大量的通常采用傳統(tǒng)的DRAM實(shí)現(xiàn)的主存儲器,如后述圖3和圖4所示。來自各個(gè)網(wǎng)絡(luò)的數(shù)據(jù)以數(shù)據(jù)包(數(shù)據(jù)包是字節(jié)的集合)形式被傳送到主存儲器,經(jīng)由CPU處理,而后通常再送往它們各自的目標(biāo)網(wǎng)絡(luò)。
所有上面提到的網(wǎng)絡(luò)(ATM、SONET、Fiber Channel、Token Ring、FDDI等)具有從一點(diǎn)到另一點(diǎn)轉(zhuǎn)移數(shù)據(jù)的不同措施。它們在硬件、軟件和數(shù)據(jù)傳送速度上均不同。需要有相互連接設(shè)備來使得這些網(wǎng)絡(luò)之一上的用戶能以不同的協(xié)議、無痕跡地與另一網(wǎng)絡(luò)上的用戶通信。
在一典型的相互連接設(shè)備中,網(wǎng)絡(luò)接口均設(shè)置有對各種型式接口為特定的網(wǎng)絡(luò)接口控制器(也通稱為網(wǎng)絡(luò)控制器)。這樣,Ethernet即具有與用于Fiber Channel或ATM不同的網(wǎng)絡(luò)接口(圖3和4)。
在圖4中所示的僅用于解釋這一說明性的系統(tǒng)配置的典型數(shù)據(jù)流的舉例中,可能涉及下列這些典型參數(shù)a.系統(tǒng)總線為32位寬(4字節(jié));b.四個(gè)傳統(tǒng)的2M×8的DRAM構(gòu)成2M×32;c.四個(gè)網(wǎng)絡(luò)接口Fiber Channel、ATM、Ethernet和FDDI;和d.數(shù)據(jù)包為1024字節(jié)。
考慮這一情況,例如Ethernet網(wǎng)上一用戶發(fā)送一數(shù)據(jù)包給例如FDDI網(wǎng)上的用戶。此數(shù)據(jù)包由相互連接設(shè)備Ethernet接口控制器接收并經(jīng)控制器芯片分析,此時(shí)僅將有關(guān)的信息內(nèi)容存儲進(jìn)它的普通本地FIFO(先進(jìn)先出)存儲器以便隨后傳送到主存儲器。由于在系統(tǒng)總線上具有包含CPU和各種網(wǎng)絡(luò)控制器的多個(gè)裝置,所以在所有為取得系統(tǒng)存儲器總線的活動源之間進(jìn)行仲裁。在Ethernet控制器通過仲裁獲得總線后,數(shù)據(jù)即被利用32位寬的系統(tǒng)總線接口送往系統(tǒng)存儲器。由于數(shù)據(jù)包中有1024字節(jié)而每次傳送將4字節(jié)傳到主存儲器,故為轉(zhuǎn)移數(shù)據(jù)包需256次這種傳送。如果網(wǎng)絡(luò)控制器每次得到總線只被允許作一次4字節(jié)的傳送,則也將需要至少256個(gè)仲裁周期(如果網(wǎng)絡(luò)控制器具有猝發(fā)傳送能力此仲裁次數(shù)可較少。例如說對于每次獲取具有16字節(jié)的猝發(fā)傳送能力,則需要最少64個(gè)仲裁周期)。
在此數(shù)據(jù)包被存進(jìn)主存儲器之后,它被CPU處理(主要是標(biāo)題信息)以及在此例中被改向去往FDDI口?,F(xiàn)在進(jìn)行相反處理。數(shù)據(jù)被FDDI接口控制器從主存儲器檢取并被傳送到芯片內(nèi)部FIFO存儲器。這也需要256次傳送和相應(yīng)數(shù)量的仲裁。然后數(shù)據(jù)被并行地從FDDI控制芯片傳送到其網(wǎng)絡(luò)。
各網(wǎng)絡(luò)的運(yùn)行速度分別為FDDI,100Mbit/sec;Ethernet,10/100Mbit/sec;ATM,600Mbit/sec左右;Token Ring,16Mbit/sec;和FiberChannel,800M bit/sec。
大量的傳送和消耗于仲裁上的時(shí)間耗費(fèi)掉可用數(shù)據(jù)帶寬的很大一部分并降低CPU的訪問頻率。在網(wǎng)絡(luò)接口數(shù)量增加或者更高速度的接口被加入時(shí),可用于各個(gè)源包括CPU的時(shí)間減少,從而削弱系統(tǒng)的巔峰性能。這還迫使設(shè)計(jì)人員尋求更高性能的CPU和有關(guān)的昂貴部件,從而抬高成本。能夠經(jīng)由這種現(xiàn)有技術(shù)型式的系統(tǒng)總線連接的網(wǎng)絡(luò)的數(shù)量也因?yàn)檫@些嚴(yán)重限制而保持為很低,而且這一問題隨著為適應(yīng)例如互聯(lián)網(wǎng)(Internet)相關(guān)擴(kuò)展活動而加入越來越多的速度越來越高的網(wǎng)絡(luò)而越發(fā)惡化。
圖象/多媒體應(yīng)用舉例為說明背景技術(shù),再次利用一圖象/多媒體應(yīng)用例,在這種圖象系統(tǒng)中有二個(gè)主要與存儲器相關(guān)的功能(a)更新用于欲顯示圖形的屏幕存儲器;和(b)以非常高的速度檢索屏幕存儲器以更新陰極射線管(CRT)或其他屏幕顯示器。
第一任務(wù)需要大量的從存儲器中一個(gè)位置到另一位置的稱為“BitBlt”的頻繁的數(shù)據(jù)傳送,但這一要求在性質(zhì)上傾向于猝發(fā)。這耗費(fèi)相當(dāng)大一部分的系統(tǒng)帶寬,因而有必要利用獨(dú)立的存儲器來存儲圖象數(shù)據(jù),如后述圖5中所示那樣,從而給系統(tǒng)成本帶來不利影響??紤]一個(gè)需要更新16行屏幕存儲器和利用普通的2M×8 DRAM部件的例子。為傳送16行的數(shù)據(jù)值到新地點(diǎn),所需的數(shù)據(jù)傳送次數(shù)為欲傳送的行數(shù)(16)×每一行中的列數(shù)(1024)=16384顯然對系統(tǒng)總線也需作對應(yīng)數(shù)量的仲裁。而且這一大量的傳送必須在一很短的時(shí)間內(nèi),從而消耗一小時(shí)隙內(nèi)的大部分可用數(shù)據(jù)帶寬,而使得CPU和其他I/O源不足。但在本發(fā)明之前現(xiàn)有的DRAM制造者還沒有在這方面為緩減這一問題提供實(shí)際的突破。
當(dāng)然,為裝載和刷新CRT顯示器也需重復(fù)檢索屏幕存儲器;而取決于顯示器的型式(VGA、超級VGA等),為作這種更新所需的帶寬不同,但趨向于每秒成百兆或以上的數(shù)量級。與“BitBlt”不同,CRT更新需求是連續(xù)的,而與“Bitblt”相同的是,也要大量地利用系統(tǒng)帶寬。
作為示例,考慮如下情況a.顯示大小為1024×768象素;b.非交錯(cuò)的-每秒更新72次;和c.紅、綠和蘭三色的每一個(gè)均為每象素8位。
以每秒字節(jié)計(jì),所需帶寬為1024×768×72×8×3/8=170MByte。
這是一巨大的需求,如果也被用作主存儲器的話也是普通DRAM所難以勝任的。因此這就導(dǎo)致更昂貴的專用化DRAM的開發(fā),而被廣泛地應(yīng)用的這種專用DRAM之一是視頻DRAM,也被稱做“VRAM”。大部分VRAM均為雙端口除某些例外還附加有一第三端口。典型VRAM具有類似于傳統(tǒng)DRAM的系統(tǒng)接口,但它還有一在芯片內(nèi)部的行寬緩存器(被叫做SAM,Serial Access Memory(串行存取存儲器)),它通過獨(dú)立的但數(shù)量相同的可用于系統(tǒng)接口的數(shù)據(jù)管腳和外界交互作用,如后述圖6中所示。作為舉例,一256K×8的VRAM也具有一8位寬的附加端口,用于連續(xù)向CRT注入刷新數(shù)據(jù)流。此“SAM”緩存器具有與外部顯示器接口的固定連接。運(yùn)行中,CPU(或系統(tǒng)總線主控者)通過系統(tǒng)數(shù)據(jù)接口訪問VRAM并在VRAM中存儲或更新屏幕圖象。然后在一次訪問中將一整行的屏幕數(shù)據(jù)轉(zhuǎn)移進(jìn)“SAM”緩存器。這一數(shù)據(jù)再通過在寬度上與系統(tǒng)接口相同的SAM I/O接口被傳送到顯示器。
這種VRAM能有效地用于僅必須與一圖象源/目標(biāo)交互作用的設(shè)計(jì)情況。但由于更多的附加管腳和更大的硅片,它們比傳統(tǒng)DRAM昂貴,而且該體系結(jié)構(gòu)提出非常嚴(yán)格的結(jié)構(gòu)。因管腳數(shù)極大地增加而使得與更多裝置的更多接口的擴(kuò)展性能受到嚴(yán)格的限制?!癝AM”到外部I/O接口的連接是固定的,數(shù)據(jù)端口的大小也被預(yù)定。這種措施也無法解決加速龐大的數(shù)據(jù)移動要求的問題。因此在本發(fā)明出現(xiàn)之前,VRAM僅僅因?yàn)槿狈θ魏胃玫奶娲桨覆疟豢醋魇墙鉀Q辦法的。
VRAM(特別是3端口設(shè)計(jì))也曾偶爾被提及應(yīng)用于網(wǎng)絡(luò)連接應(yīng)用上但由于它們前述的嚴(yán)格的I/O結(jié)構(gòu)、非常有限的連接多個(gè)源的能力(精確地說,僅兩個(gè))、更大的線路板空間、更昂貴的結(jié)構(gòu)和更高的功率消耗幾乎未被應(yīng)用過。
系統(tǒng)配置和相關(guān)問題的技術(shù)現(xiàn)狀因此,總括地說,典型的現(xiàn)有技術(shù)和基于傳統(tǒng)DRAM的當(dāng)前系統(tǒng)配置(如前述圖3)受到上面所說的限制。關(guān)系到需要以低成本相互連接大量高速網(wǎng)絡(luò)的網(wǎng)絡(luò)連接方面的應(yīng)用的問題基本上仍然未解決,從而導(dǎo)致各個(gè)網(wǎng)絡(luò)接口的較高價(jià)格。
雖然系統(tǒng)帶寬限制和恒定的CRT顯示更新需求導(dǎo)致視頻DRAM的發(fā)展,如前面討論的主要是針對圖象應(yīng)用和通常被用于如圖6中所示的配置中,以及雖然這一配置比傳統(tǒng)的DRAM運(yùn)行性能要好,隨著對主存儲器和顯示數(shù)據(jù)帶寬的性能要求增加,由于將主存儲器從圖象存儲器分離以及由于VRAM本身的成本較高,這一配置的不利的副作用也增加了系統(tǒng)的成本。
RAMBUS公司也開發(fā)了另一類型的現(xiàn)有技術(shù)DRAM,稱做“RDRAM”,它以250Mhz運(yùn)行,能良好地工作于圖象應(yīng)用,還甚至能對高端圖象/多媒體環(huán)境帶來比VRAM好的經(jīng)濟(jì)效果,但這一措施仍然需要保持二獨(dú)立的總線。
在PC市場(全部芯片的60%均消耗于這一部分)中成本是最重要的。然后開始探索尋找一稱為“一致存儲器體系結(jié)構(gòu)(Unified MemoryArchitecture)”的配置,它將為圖象和主存儲器功能共用公共總線并僅采用一種型式的存儲器裝置。
一種可能性是利用VRAM來作為圖象和主存儲器部件兩者,但是通過使用公共存儲器所得的利益被部件的附加成本所折消。另一種可能的解決方案是采用前述的RDRAM,它的每一芯片的管腳數(shù)小于VRAM,從而使得功率消耗較低、實(shí)際投資較小和成本相對較低。但不幸的是由于它們的面向塊的協(xié)議和接口限制,其對非定域的主存儲器訪問效率很低,因而并不能使自己表現(xiàn)為“一致存儲器體系結(jié)構(gòu)”。RDRAM的采用還在關(guān)于輻射、噪聲干擾和PCB布局方面帶來一系列重大電氣工程設(shè)計(jì)上的挑戰(zhàn),而使得設(shè)計(jì)任務(wù)非常困難。
因此仍然在探求一種能夠同等有效地滿足主存儲器和圖象存儲器的訪問的多樣化要求的更可行的低成本/高性能的一致存儲器體系結(jié)構(gòu)。
事實(shí)上,本發(fā)明就是針對有效解決這一迫切問題,應(yīng)當(dāng)認(rèn)為本發(fā)明是新型DRAM體系結(jié)構(gòu)和方法的進(jìn)展中的一個(gè)突破,它(a)以體系結(jié)構(gòu)的創(chuàng)新而不是全靠裝置速度來提供高得多的系統(tǒng)數(shù)據(jù)帶寬;(b)以對系統(tǒng)帶寬的最低影響向/從多個(gè)I/O源移動大量數(shù)據(jù);(c)與傳統(tǒng)措施比可連接數(shù)量大得多的I/O源;(d)以至少快一個(gè)數(shù)量級的時(shí)幀和幾乎不對系統(tǒng)帶寬產(chǎn)生影響地在芯片內(nèi)部移動很大的數(shù)據(jù)塊;(e)可加以組構(gòu)來適應(yīng)I/O源的不同數(shù)據(jù)傳輸速率;(f)降低輸入數(shù)據(jù)包的接收與其隨后的發(fā)送之間的等待時(shí)間;(g)設(shè)置小數(shù)量管腳;(h)成本合理;(i)低功率消耗;(j)系統(tǒng)接口簡化使設(shè)計(jì)工作量最??;和(k)對主存儲器和圖象需求二者同等有效地工作,由此提供真正的“一致存儲器體系結(jié)構(gòu)”和基本通用的措施。
本發(fā)明的目的因而本發(fā)明的目的就是提供采用新型的多端口內(nèi)部高速存取的DRAM結(jié)構(gòu)的新的改進(jìn)的動態(tài)隨機(jī)存取(DRAM)系統(tǒng)、體系結(jié)構(gòu)和方法,該DRAM結(jié)構(gòu)排除當(dāng)前系統(tǒng)的帶寬限制和有關(guān)的問題,而以降低的成本大大增強(qiáng)系統(tǒng)的性能,并由此使得能對無數(shù)應(yīng)用實(shí)現(xiàn)基本上通用的利用。
另一個(gè)目的是提供這樣一種新型系統(tǒng),其中在芯片內(nèi)部以比傳統(tǒng)措施快一個(gè)數(shù)量級的速度傳送數(shù)據(jù)塊,并具有以明顯降低的成本和大大增強(qiáng)的性能使多得多的源相互連接的設(shè)施。
再一個(gè)目的是提供基于這種新的對主存儲器功能和圖象存儲器二者均同等有效地工作的體系結(jié)構(gòu)一真正的高性能一致存儲器體系結(jié)構(gòu)的系統(tǒng)配置。
下面將說明這些和其他目的,和在附列的權(quán)利要求中作更具體的描述。
概述但從一個(gè)著眼點(diǎn)看,總的說本發(fā)明為用于一具有各自連接到公共系統(tǒng)總線接口并對其訪問競爭的例如具有并行數(shù)據(jù)端口的中央處理單元(CPU)的主控制器和動態(tài)隨機(jī)存取存儲器(DRAM)的系統(tǒng)的改進(jìn)的DRAM體系結(jié)構(gòu),包括多端口內(nèi)部高速存取DRAM(AMPIC DRAM),該AMPIC DRAM包括多個(gè)各自通過對應(yīng)緩存器連接在一分開的外部I/O源與內(nèi)部DRAM存儲器之間的獨(dú)立串行數(shù)據(jù)接口;安插在串行接口與緩存器間的轉(zhuǎn)接組件;和用于在由例如所述CPU的總線主控制器所作的動態(tài)組構(gòu)下將串行接口連接到緩存器的轉(zhuǎn)接組件邏輯控制,以便作適合于所希望的數(shù)據(jù)路由的轉(zhuǎn)接分配。下面詳細(xì)說明優(yōu)選和最佳的模式設(shè)計(jì)和技術(shù)。
附圖現(xiàn)在按照
本發(fā)明,其中圖1-6如下描述現(xiàn)有技術(shù)
圖1為典型的現(xiàn)有技術(shù)單總線并行體系結(jié)構(gòu)方塊圖;圖2表示一典型的現(xiàn)有技術(shù)網(wǎng)絡(luò)配置;圖3和4表明用于諸如圖2那樣的配置中的采用DRAM的典型現(xiàn)有技術(shù)網(wǎng)絡(luò)連接設(shè)備;圖5為帶有獨(dú)立存儲器和采用傳統(tǒng)DRAM的現(xiàn)有技術(shù)圖象應(yīng)用配置的方框圖;圖6為采用VRAM的圖象應(yīng)用的典型體系結(jié)構(gòu)的相似圖形;圖7為按照本發(fā)明構(gòu)成的并采用本發(fā)明的多端口內(nèi)部高速存取“(AMPIC)DRAM”的系統(tǒng)體系結(jié)構(gòu)的方框圖;圖8為圖7的“AMPIC DRAM”的部分最高級體系結(jié)構(gòu)的相似視圖,表明輔助串行接口、緩存器和DRAM核之間的多路器/縱橫開關(guān)轉(zhuǎn)換;圖9表明圖8中的說明性串行數(shù)據(jù)多路器實(shí)施方案的細(xì)節(jié);圖10說明被組構(gòu)成為端口的多個(gè)串行接口的示例;圖11為AMPIC DRAM的2位端口和相應(yīng)的控制線的說明圖;圖12和13為串行數(shù)據(jù)傳送格式的示例圖,其中圖13用來說明各端口的2位;圖14為帶有后述的并行行內(nèi)部事務(wù)干預(yù)(稱為PRITI)的二存儲體(bank)“AMPIC DRAM”控制組件體系結(jié)構(gòu)的部分最高級的示例方框圖,無存儲部件;圖15表示從二存儲體作內(nèi)部數(shù)據(jù)傳送時(shí)的PRITI傳送的操作序列;圖16與圖14相似,但帶有二行寬存儲部件組供“PRITI”功能應(yīng)用;圖17表示帶有圖16的二行寬存儲部件組的“PRITI”傳送,說明操作序列和二存儲體間的內(nèi)部數(shù)據(jù)交換;圖18與圖17相似,但僅利用一行寬存儲部件組;圖19表明一帶有示例性的9串行接口的本發(fā)明的“AMPIC DRAM”的有用的管腳輸出的示例;圖20說明帶有以CPU操作的32位寬系統(tǒng)總線的利用本發(fā)明的AMPIC DRAM構(gòu)成的示例性網(wǎng)絡(luò)連接設(shè)備;圖21為用于圖象應(yīng)用的類似圖形;圖22為說明四存儲體系統(tǒng)配置的類似圖形,每一存儲體連接到不同的網(wǎng)絡(luò)接口;圖23與圖22相似,但采用二個(gè)“AMPIC DRAM”的存儲體和二個(gè)帶傳統(tǒng)DRAM的存儲體;圖24也與圖22相似,但二存儲體用于圖象而二存儲體用于另外的應(yīng)用;圖25為“AMPIC DRAM”體系結(jié)構(gòu)的另一種變型的圖形,其中,有二個(gè)內(nèi)部存儲體和前述的“PRITI”能力,一個(gè)存儲體作主存儲器用而另一存儲體供圖象或其他應(yīng)用;圖26為前述圖19的AMPIC DRAM系統(tǒng)的變型,適用于所謂的“PARAS”接口和存取,如未決美國專利申請NO.08/320058(1994年10月7日)中說明的,具有用于集成存儲器體系結(jié)構(gòu)的低管腳數(shù)。(此申請揭示用于通過作新穎的接口和訪問過程來改善異步和同步動態(tài)隨機(jī)存取存儲器裝置的存取能力的方法和設(shè)備,其中相同的管腳被用于每一行、列和數(shù)據(jù)存取并同樣用在寫和讀周期中,這樣使得在基本上相同大小封裝而具有較少管腳的情況下能有效地增加數(shù)據(jù)帶寬和尋址范圍。)圖27為具有前述并行行內(nèi)部事務(wù)干預(yù)(RPITI)的多存儲體“AMPICDRAM”控制組件體系結(jié)構(gòu)的部分最高級示例方框圖,具有一行寬存儲部件組。
本發(fā)明的優(yōu)選實(shí)施例現(xiàn)在應(yīng)該來說明本發(fā)明,其中通過大量地減少傳送和對應(yīng)的對系統(tǒng)總線的仲裁次數(shù)來在其新的以“AMPIC DRAM”為中心的解決措施中消除帶寬和其他先前說明的瓶頸問題,從而大大改善整個(gè)系統(tǒng)的性能并帶來快得多的內(nèi)部數(shù)據(jù)傳送能力。其他得益包括對數(shù)據(jù)帶寬影響較小的系統(tǒng)擴(kuò)展能力,結(jié)果就能如前述降低系統(tǒng)成本。
參看圖7,應(yīng)用普通的基本并行端口數(shù)據(jù)的CPU單元連接到系統(tǒng)總線,系統(tǒng)總線還與包含后述的本發(fā)明的“AMPIC DRAM”的主存儲器單元相連接,以及輔助串行接口輸入(#1~#n)從各輸入/輸出(I/O)源#1~#n連接到主存儲器單元。
在此說明中,多個(gè)一位寬的獨(dú)立串行接口就這樣被提供到“AMPICDRAM”用于在I/O源與主存儲器之間傳輸數(shù)據(jù)。這些串行接口連同用于系統(tǒng)總線接口的基本并行端口供中央處理單元CPU或類似的主控制器裝置利用。這種串行接口的數(shù)量僅受限于裝置工藝、管腳數(shù)、功率消耗和成本等。經(jīng)由這些接口#1~#n接收的或欲發(fā)送的串行數(shù)據(jù)被存儲在“AMPIC DRAM”之內(nèi)很小的各自的緩存器#1~#n中,更完整地如圖8中所示。對于實(shí)踐上的考慮,這可能在64字節(jié)到512字節(jié)的范圍內(nèi),但理論上則受讀出放大器的布局限制。在傳統(tǒng)布局中,它被限制到一行DRAM核中可獲得的數(shù)據(jù)位數(shù)。這樣,如果每次行存取可獲得1024字節(jié),則最大緩存器大小的“AMPIC RAM”可被設(shè)計(jì)為每一內(nèi)部存儲體1024字節(jié)。如果“m”為緩存器數(shù)和“n”為串行接口數(shù),則數(shù)據(jù)包緩存器(這里術(shù)語“數(shù)據(jù)包緩存器”與術(shù)語“緩存器”可以互相替換應(yīng)用)數(shù)“m”大于或等于串行接口數(shù)“n”。對“m”的上限由工藝極限限制而不受體系結(jié)構(gòu)限制。
按照優(yōu)選實(shí)施例,一多路器和/或縱橫開關(guān)邏輯或組合(圖8中的多路器/縱橫開關(guān))將“n”個(gè)串行接口連接到“m”個(gè)緩存器。各串行接口與一緩存器間的連接由CPU(或當(dāng)前的系統(tǒng)總線主控器),作動態(tài)組構(gòu),并作適合于數(shù)據(jù)路由的改變。
用于組構(gòu)4串行接口和4緩存器的一個(gè)可能的串行數(shù)據(jù)接口實(shí)施的功能性方框圖如圖9所示。不過可有多種途徑來實(shí)現(xiàn)所希望的體系結(jié)構(gòu),而保持基本觀念相同。當(dāng)在圖8中數(shù)據(jù)需要在數(shù)據(jù)包緩存器與DRAM核之間移動時(shí),在不同的活動數(shù)據(jù)包緩存器與CPU之中進(jìn)行仲裁。但通過串行接口從/向數(shù)據(jù)包緩存器接收或發(fā)送數(shù)據(jù),則無需作任何仲裁。
輸入數(shù)據(jù)包緩存器可被重新定義為輸出數(shù)據(jù)包緩存器而被導(dǎo)向到其目的地的數(shù)據(jù)甚至無需進(jìn)行在緩存器與核心DRAM間傳送數(shù)據(jù)的中間步驟。這減少了接收輸入的數(shù)據(jù)包及隨后發(fā)送到其目的地所涉及的等待時(shí)間。這之所以成為可能僅僅是因?yàn)椤癆MPIC DRAM”能通過多路/縱橫開關(guān)組件將任一緩存器指派給任一串行接口的能力。
在“AMPIC DRAM”體系結(jié)構(gòu)的編排中,也可將多個(gè)一位寬的串行接口組構(gòu)為大小例如為1、2、4或8等的窄寬度總線(名為“端口”),但在理論上沒有這種限制。按裝置工藝許可它可以是由1至“n”的任何數(shù),也取決于實(shí)施。一旦多個(gè)串行接口被合組并被定義為一端口,它們即全都連接到一公共數(shù)據(jù)包緩存器,如圖10中更具體表示的,其中1位寬的端口與一串行接口同樣。這使得能作更快的數(shù)據(jù)傳送并同時(shí)維持靈活性,并在與以不同帶寬和數(shù)據(jù)傳送要求運(yùn)行的源進(jìn)行接口中是非常有用的。因此,各個(gè)數(shù)據(jù)包緩存器(圖8)如果被定義為一端口的話,具有同時(shí)與最多“n”個(gè)串行接口進(jìn)行接口的能力。緩存器被組構(gòu)來用于與其連接到(有時(shí)也稱之為對接到)的端口同等的端口大小。
各端口上的串行數(shù)據(jù)流由其各自的控制線控制。各個(gè)端口接口由一控制和一組串行數(shù)據(jù)接口組成。作為示例,如果各串行端口僅為1位寬,則數(shù)據(jù)線的每一位利用一控制線。如果二串行接口被組構(gòu)為一個(gè)端口,則一控制線被用于此二位的端口,如此等等,見圖11。另外,為使管腳數(shù)最小,只要符合每一端口一控制線的準(zhǔn)則串行接口控制線也可組構(gòu)為串行數(shù)據(jù)接口線。各控制線對其端口的關(guān)連是可加以組構(gòu)的。控制線的作用是為控制I/O源與串行端口間的數(shù)據(jù)流。如果管腳數(shù)對制造者無關(guān)緊要的話,當(dāng)然可設(shè)置獨(dú)立的控制管腳。對于某些應(yīng)用,甚至無需控制管腳,而I/O源對系統(tǒng)總線的并行接口足以用來交換控制信息。
I/O源與“AMPIC DRAM”串行端口之間的數(shù)據(jù)傳送格式使得各存儲器芯片(同一外部存儲體的部分)在其端口上同時(shí)接收和發(fā)送數(shù)據(jù)位,如圖12中表明的。這可以一例來更好地解釋。假定如圖12中所示帶有一32位寬系統(tǒng)接口的四個(gè)2M×8形式的“AMPIC DRAM”(其中一端口被定義為一1位的串行接口)。四個(gè)芯片的每一個(gè)同時(shí)接收數(shù)據(jù)。芯片0接收位0,芯片1接收位8,芯片2接收位16,芯片3接收位24。在下一周期,所有位號將被增量1。這將繼續(xù)到所有的32位均被傳送,使得每一芯片均接收到它的8位。一旦完成,這一處理將對下面的32位加以重復(fù),如圖12中所表明的,如此等等。
現(xiàn)在來考慮將一端口定義為由二串行接口所組成的另一個(gè)例子,如圖13所示。這樣提供給I/O源的是一總共8位的接口,它必須同時(shí)提供給每一“AMPIC DRAM”各二位。位的排列次序使得,芯片0同時(shí)接收位0和位1,芯片1同時(shí)接收位8和位9,芯片2同時(shí)接收位16和位17,和芯片3同時(shí)接收位24和位25。在下一周期,所有的位號增量2。這樣繼續(xù)進(jìn)行直至所有32位均被傳送,而使每一芯片接收到它的8位。一旦完成,此處理將對下一32位重復(fù),如此等等。
應(yīng)指出的是本發(fā)明的這種體系結(jié)構(gòu)并不防止I/O源例如網(wǎng)絡(luò)控制器芯片共享并行系統(tǒng)總線,如果希望這樣的話。這對例如控制器配置和狀態(tài)管理之類的任務(wù)將是有用的。
最好,“AMPIC DRAM”設(shè)置一如圖19中所示的主時(shí)鐘管腳,以及每一串行接口被組構(gòu)來以這一時(shí)鐘速率的倍數(shù)或因數(shù)運(yùn)行,而能提供適應(yīng)多種源的靈活性。也有可能提供不止一個(gè)獨(dú)立時(shí)鐘來替代一主時(shí)鐘,其限制僅在于裝置工藝、管腳數(shù)和成本制約。應(yīng)指出,時(shí)鐘頻率分配是串行接口而不是緩存器的特點(diǎn)。這樣“m”個(gè)緩存器中任何一個(gè)均可對接到串行端口的任一個(gè)并以該端口速度運(yùn)行。
另外,本發(fā)明的“AMPIC DRAM”的可組構(gòu)性還使得能不中斷傳送地從一緩存器到另一緩存器地轉(zhuǎn)接串行接口。這在構(gòu)成網(wǎng)絡(luò)和圖象方面有許多重要應(yīng)用。當(dāng)一個(gè)緩存器正在被用于發(fā)送信息時(shí)另一個(gè)緩存器可在一次訪問中被裝載行寬數(shù)據(jù)。還應(yīng)注意到,雖然其它供應(yīng)者已經(jīng)在VRAM中實(shí)現(xiàn)了類似的二緩存器方法,被叫做分離緩存器傳送,但這與本發(fā)明完全不同,其中與緩存器的外部I/O接口總是固定的并具有與VRAM系統(tǒng)數(shù)據(jù)寬相同的寬度。本發(fā)明的“AMPIC”的多路器/縱橫開關(guān)組件完全地消除了所有這些限制。
在此AMPIC DRAM中可以有通過一行寬總線連接的不止一個(gè)的內(nèi)部存儲體,使得所有的緩存器均駐留在此總線上,或者在另一實(shí)施例中,可以對各內(nèi)部存儲體設(shè)置分開的緩存器組。
因上述頻繁的“BitBlt”操作所產(chǎn)生的對系統(tǒng)帶寬的影響可以這樣來大大地減小,即依靠將多于一個(gè)的內(nèi)部DRAM核存儲體如圖14那樣經(jīng)由一行寬接口連接以使得在當(dāng)需要進(jìn)行從存儲器的一個(gè)內(nèi)部存儲體到另一內(nèi)部存儲體的傳送時(shí),各存儲體的適當(dāng)行地址同時(shí)以對應(yīng)的“RAS”信號選通。在來自被讀行的數(shù)據(jù)在讀出放大器中可獲得之后,被寫到另一存儲體。方向控制由內(nèi)部邏輯設(shè)定,圖15示出這種操作的定序。在完成一行傳送之后,即可起動另一傳送,繼續(xù)這一處理直至完成。這種型式的傳送取名為“PRITI”(Parallel Row Internal TransactionIntervention(并行行內(nèi)部事務(wù)干預(yù)))。很明顯,在進(jìn)行這樣的內(nèi)部傳送時(shí),其他的對此被訪問存儲體的訪問是不允許的。應(yīng)指出,在串行接口上的傳送也可與這一內(nèi)部傳送并行進(jìn)行。一類似的概念,稍后與本發(fā)明的特點(diǎn)相對照的,由美國專利No.5473566揭示(1995年12月5日)。
通過這種新穎技術(shù),在一行的訪問時(shí)間內(nèi)可傳送很大量的數(shù)據(jù)。作為舉例,考慮一帶有二個(gè)各為1M×8的內(nèi)部存儲體的“AMPIC DRAM”。各存儲體的內(nèi)部結(jié)構(gòu)為各8位寬的1K行。借助“PRITI”能力,在一“RAS”周期內(nèi)可內(nèi)部傳送8K位。這對于現(xiàn)今存在的方法是一很大的進(jìn)步,在當(dāng)前的方法中,經(jīng)由系統(tǒng)總線接口傳送8位的數(shù)據(jù),在最好的情況下將需要1K周期和相應(yīng)的仲裁。如果有“r”行和“c”列,以本發(fā)明“PRITI”能力所需的傳送總數(shù)將為“r”,而在傳統(tǒng)方法中所需的總傳送數(shù)則為“r×c”。
此處理對任何數(shù)量的存儲體均是同樣的。如果有“m”個(gè)內(nèi)部存儲體通過一行寬接口連接,此“PRITI”組件就能從一存儲體同時(shí)對多于一個(gè)的其余存儲體傳送數(shù)據(jù)。這在撒播式數(shù)據(jù)包從一存儲體移向所有其他內(nèi)部存儲體時(shí)是很有用的。利用本發(fā)明,進(jìn)行這一操作無需任何行寬寄存器或鎖存器(也稱之為一行寬存儲部件組),從而能非常經(jīng)濟(jì)地實(shí)現(xiàn)。
“PRITI”組件的最高級內(nèi)部結(jié)構(gòu)如前述的圖14中所示?!癙RITI”被裝載以各存儲體的起始行地址和傳送數(shù)。在經(jīng)組構(gòu)后,為獲得雙方存儲體的內(nèi)部總線進(jìn)行仲裁。對這一基本概念可有許多變體,例如此“PRITI”組件被組構(gòu)來在一旦取得訪問這些行的權(quán)利后即作預(yù)定數(shù)量的猝發(fā)傳送,或在每次傳送后釋放總線以使其他源能共享DRAM核。
本發(fā)明的另一可行實(shí)施例涉及到如圖27中所標(biāo)明的一行寬存儲部件組(或任何能執(zhí)行邏輯上等同的任務(wù)的實(shí)施)來進(jìn)行數(shù)據(jù)交換操作。作為一例,對于一具有1024位寬行的1M×1DRAM,所述存儲部件組將含有1024個(gè)存儲部件。在此,以讀操作來訪問內(nèi)部存儲體的一行,在用于此(稱其為存儲體2)的讀出放大器處所檢取的數(shù)據(jù)被存儲進(jìn)此行寬存儲部件組。然后從另一存儲體(存儲體1)檢取數(shù)據(jù)并將其寫入存儲體2。隨這一操作之后,來自此存儲部件的數(shù)據(jù)被寫到存儲體1。圖18的圖形表示這樣的操作的適當(dāng)序列。這種實(shí)施所要求的電路少于稍后述的帶二組存儲部件的方法而仍然能作數(shù)據(jù)交換,雖然要以執(zhí)行有所減緩為代價(jià)。這一方法是對存儲體1至“m”的通用方法。這種能力使得能在一非常短的時(shí)間內(nèi)作大量信息交換,一對多媒體/圖象應(yīng)用特別有用的工具。這種實(shí)施顯然因附加一組存儲部件而需要比原先方法多的電路,但是這里無須在新的數(shù)據(jù)移動到其位置之前保存原先的數(shù)據(jù)。
此發(fā)明的另一變型是采用如圖16中標(biāo)明的二組存儲部件(或任何能執(zhí)行邏輯上等同任務(wù)的電路)來進(jìn)行數(shù)據(jù)交換操作。在此,二個(gè)內(nèi)部存儲體的每一個(gè)的一行由讀操作同時(shí)訪問,在讀出放大器處的所檢取的數(shù)據(jù)被存儲在該行寬存儲部件組中,如圖16中指出的。這樣檢取得并被存儲的數(shù)據(jù)接著被同時(shí)寫回該二行。圖17的圖示表示這樣的操作的示范性序列。
因此,本發(fā)明的“PRITI”方法并不僅僅限于二個(gè)內(nèi)部存儲體,而是同樣適用于DRAM芯片內(nèi)的任何多存儲體編排。甚至也有可能在一傳統(tǒng)型式DRAM中增加“PRITI”功能而無需“AMPIC DRAM”的其余部分。另外,更復(fù)雜的“PRITI”也可能有除以行外還以列來定義的傳送范圍,而需要輔助寄存器來裝載列地址。
與所述美國專利No.5473566的系統(tǒng)不同,按照本發(fā)明的優(yōu)選實(shí)施例僅需要一行寬存儲部件組,而不是每一內(nèi)部存儲體一個(gè)。這使得本發(fā)明的方法能適合通用的應(yīng)用并保持DRAM結(jié)構(gòu)的相對地便宜。
本發(fā)明的進(jìn)一步改進(jìn)a.實(shí)現(xiàn)多于一個(gè)行寬總線,連同它們自己的連接多個(gè)存儲體的存儲部件組,從而能作多于一個(gè)的并行“PRITI”傳送。一般說,如有“m”個(gè)存儲體,則無冗余度的最大可能的行寬總線數(shù)為“m/2”。如果每一總線利用一組上述的存儲部件,則僅需要“m/2”組存儲部件來作“m”個(gè)分開的同時(shí)“PRITI”傳送,每一存儲體一個(gè);b.如果存儲體數(shù)很大,則可將存儲體在分開的總線上作成子群。作為舉例,在一8存儲體的配置中,4個(gè)存儲體可駐留在一總線上而其余4個(gè)則以它們自己的上述“PRITI”傳送實(shí)現(xiàn)在第二總線上,而這二個(gè)子群再以上述“PRITI”傳送能力的任一個(gè)通過另一總線連接。
雖然在此說明中應(yīng)用一行寬度總線,而如要求降低成本的話,部分行寬總線也是有效的。還應(yīng)指出,存儲器不一定為一DRAM來利用這些特殊能力。
“AMPIC DRAM”對接口設(shè)計(jì)的影響此芯片具有某些不同的管腳輸出來反映出其獨(dú)特的體系結(jié)構(gòu)。一帶有9個(gè)串行接口的2M×8的芯片的一種可能的管腳輸出示范性地表示在圖19中,帶有需要在基于“AMPIC DRAM”的主存儲器的接口設(shè)計(jì)中改變的附加的管腳。
每當(dāng)在緩存器與DRAM核間發(fā)生內(nèi)部傳送時(shí)即對系統(tǒng)總線接口提供一“WAIT(等待)”信號。CPU(或其他主控制器)可或者利它來延遲訪問的開始,或者在一替代實(shí)施中,將訪問周期延長以便在進(jìn)行此訪問之前結(jié)束。
因?yàn)榇恕癆MPIC DRAM”是高度地能加以組構(gòu)的,所以需要一機(jī)制來在常規(guī)的DRAM核訪問與一組構(gòu)命令或緩存器傳送交互作用之間加以區(qū)別。圖19中的方法即提供一輔助控制信號來表明一命令或數(shù)據(jù)訪問。
在命令周期內(nèi),此命令指示可通過數(shù)據(jù)線傳播因?yàn)樵凇癛AS”周期內(nèi)它們是不被應(yīng)用的。這對于內(nèi)部傳送命令特別有用,其中DRAM核地址需要隨同緩存器ID一起提供。這種安排使得可能利用傳統(tǒng)信號“RAS”和“CAS”來提供核心DRAM地址,其中數(shù)據(jù)線將具有緩存器號或任何其他的附加信息/指令。實(shí)際上有可能發(fā)出二個(gè)命令,一個(gè)在“RAS”成為有效時(shí),而后在當(dāng)“CAS”被建立時(shí)。存在有多個(gè)實(shí)現(xiàn)這種訪問機(jī)制的途徑,這些也是裝置工藝和成本考慮的結(jié)果。
雖然由于串行端口的關(guān)系本發(fā)明的“AMPIC DRAM”具有多于傳統(tǒng)DRAM的管腳,但如果采用所述未決專利申請的早先建議的“PARAS”型式的DRAM組件,人們要得到這一DRAM也只有在管腳數(shù)目上作臨界的增加。
帶“AMPIC DRAM”的網(wǎng)絡(luò)連接應(yīng)用舉例如前面解釋的,按照本發(fā)明,串行接口/端口被設(shè)置在各網(wǎng)絡(luò)控制器與主存儲器之間。數(shù)據(jù)在控制器與主存儲器間的移動主要是串行的。從網(wǎng)絡(luò)控制器接收的串行數(shù)據(jù)或發(fā)送到網(wǎng)絡(luò)控制器的數(shù)據(jù)均存儲在由系統(tǒng)總線主控分配給它的數(shù)據(jù)包緩沖器中。這種討論當(dāng)然是假定網(wǎng)絡(luò)控制器能以此新系統(tǒng)的體系結(jié)構(gòu)所要求的格式分類或接收串行數(shù)據(jù)流。
研究與先前同樣的例子,即,32位寬總線,以四個(gè)2M×8 AMPICDRAM代替?zhèn)鹘y(tǒng)的DRAM、行寬數(shù)據(jù)包緩存器和四個(gè)網(wǎng)絡(luò)接口,一例如Ethernet網(wǎng)上的用戶發(fā)送一1024字節(jié)的數(shù)據(jù)包到例如DFFI網(wǎng)上的另一用戶。在此帶有基于“AMPIC DRAM”的主存儲器的新穎系統(tǒng)體系結(jié)構(gòu)中,如圖20中所示,數(shù)據(jù)將由連接到Ethernet控制器的“AMPIC”上的串行端口接收。無需任何仲裁也不在傳送上消耗任何主存儲器的帶寬。在數(shù)據(jù)傳送已完成后(四個(gè)“AMPIC DRAM”中每一個(gè)將接收256字節(jié)),它可在此數(shù)據(jù)包緩存器經(jīng)過仲裁獲取內(nèi)部總線后僅以一次訪問被整個(gè)傳送到DRAM核。當(dāng)一行地址提供到此DRAM核時(shí),其讀出放大器即具有這一行的所有數(shù)據(jù)位。這樣,整個(gè)數(shù)據(jù)包緩存器即可在一次訪問中被存儲。如果數(shù)據(jù)包緩存器的大小小于一行寬,則需要多次(雖然仍很少)訪問。
這對前述的當(dāng)今存在的并行總線方法是一最重大的改進(jìn),那里需要256次訪問和對應(yīng)的仲裁。
在此數(shù)據(jù)包被傳送到“AMPIC DRAM”核之后,由CPU處理并在此例中被改向送往FDDI端口?,F(xiàn)在產(chǎn)生相反的處理。數(shù)據(jù)包在一需要仲裁的單次訪問中被從此核傳送到適當(dāng)?shù)臄?shù)據(jù)包緩存器。此數(shù)據(jù)隨后通過串行端口從數(shù)據(jù)包緩存器傳送到FDDI控制器,而后再同時(shí)從FDDI控制器芯片移向其網(wǎng)絡(luò)。再一次,此反向處理僅需為其傳送作一次仲裁,而在現(xiàn)有設(shè)計(jì)中則需要256次傳送和相應(yīng)的仲裁。
本發(fā)明的這一新型DRAM的其它優(yōu)點(diǎn)還在于可由下述方面得到的巨大利益,即僅在一次訪問中即可將一撒播數(shù)據(jù)包裝載進(jìn)所有適合的緩存器中,隨后再傳送到全網(wǎng)絡(luò),以及多個(gè)行可被順序訪問并被裝載進(jìn)不同的緩存器隨后再通過它們的端口傳送,大大地提高運(yùn)行性能。
具有AMPIC DRAM的圖象/多媒應(yīng)用舉例如前所述,任一圖象系統(tǒng)的主要帶寬都是消耗在“BitBlt”操作中,其中需將來自存儲區(qū)域的大量數(shù)據(jù)傳向另一區(qū)域。這耗費(fèi)相當(dāng)大部分的系統(tǒng)帶寬,因此通常均將用于圖象目的的DRAM與主系統(tǒng)存儲器分開。但這在系統(tǒng)成本上帶來負(fù)作用。本發(fā)明還提出消除二獨(dú)立總線需求的措施,如后所述。
利用前面現(xiàn)有技術(shù)圖5的例子,其中需要更新16行顯示,而現(xiàn)在此DRAM部件是同樣2M×8大小的“AMPIC DRAM”并帶有每一個(gè)大小為IM×8的二內(nèi)部存儲體,還設(shè)置有“PRITI”能力,16行的數(shù)據(jù)值可傳送到此新位置,對此新DRAM的數(shù)據(jù)傳送數(shù)恰巧精確地與行數(shù)相同傳送次數(shù)=欲被傳送的行數(shù)(16)。
這是又一個(gè)對當(dāng)前基于普通DRAM的設(shè)計(jì)所要求的16384次傳送和相應(yīng)的仲裁的巨大改善,并表明運(yùn)行性能上的3個(gè)數(shù)量級的改善。它還成比例地降低對系統(tǒng)帶寬的影響。按照本發(fā)明在僅一行訪問時(shí)間內(nèi)可傳送大量數(shù)據(jù)。系統(tǒng)和芯片級二者的這種體系結(jié)構(gòu)的新穎性均使得獨(dú)特的DRAM配置能取得系統(tǒng)運(yùn)行性能上的增強(qiáng)。
此“AMPIC DRAM”還能如前述被組構(gòu)來以高速度將圖象屏幕數(shù)據(jù)提供到顯示器。
例如來看一看下面被應(yīng)用到圖21的配置的說明性參數(shù)a.每一芯片可有5個(gè)串行接口;b.4個(gè)這種芯片實(shí)現(xiàn)32位寬的系統(tǒng)總線;c.每一芯片4個(gè)串行接口被定義為一端口并被用于傳送顯示數(shù)據(jù);和d.每一端口的數(shù)據(jù)檢索速率為100Mhz(可快于這一速率)。
在此例中,由于每一芯片4個(gè)串行接口被用于圖形,所以實(shí)現(xiàn)16位寬的圖象接口,它能以每一時(shí)鐘2個(gè)字節(jié)的速率提供數(shù)據(jù),從而提供每秒200兆字節(jié)的帶寬,這對大部分圖象應(yīng)用均是足夠的。如果采用帶9個(gè)串行接口的“AMPIC DRAM”,此芯片就能被組構(gòu)用于8位寬的總線來提供更大的顯示數(shù)據(jù)帶寬。
在上面采用的示例中應(yīng)用了一個(gè)帶有32位寬系統(tǒng)總線的外部存儲體。但在一些應(yīng)用中可以采用多于一個(gè)外部存儲體,例如4個(gè)存儲體,每個(gè)存儲體32位寬“AMPIC DRAM”,如圖22中所示。這一體系結(jié)構(gòu)使得能,如希望的話,將不同的網(wǎng)絡(luò)接口連接到各個(gè)存儲體。這能在與通行的解決辦法相比較為合理的成本之內(nèi)將網(wǎng)絡(luò)的相互連接能力提高到大得多的程度。作為一示例,如果對各“AMPIC DRAM”提供9個(gè)串行接口而且各存儲體連接到4個(gè)網(wǎng)絡(luò)接口,則總共可連接16個(gè)網(wǎng)絡(luò)。這比起通常最多以4至5接口輸出的現(xiàn)有技術(shù)顯然為一主要得益。
由這一體系結(jié)構(gòu)也可看到,當(dāng)采用多于一個(gè)的外部存儲體時(shí),來自一個(gè)存儲體的“AMPIC DRAM”串行端口可被連接到另一存儲體的串行端口。這提供存儲體間的一附加途徑使得能利用數(shù)據(jù)包緩存器來在外部存儲體之間快速傳送數(shù)據(jù)。
而且無需應(yīng)用一系統(tǒng)配置中的全部“AMPIC DRAM”。一些應(yīng)用可將“AMPIC DRAM”與現(xiàn)有型式DRAM相混合,如圖23的變型中所提出的。
在另外一系統(tǒng)配置中,“AMPIC DRAM”可被用來提供圖象或顯示接口二者,如圖24中所表明的,并連接到其它類型的I/O源,例如攝象機(jī)或衛(wèi)星接口等。
一致存儲器體系結(jié)構(gòu)在理想環(huán)境下,如前面解釋過的,最有利的是對圖象和主存儲器功能兩者具有一公用存儲器芯片而仍然提供必須的運(yùn)行性能。這一叫做“一致存儲器體系結(jié)構(gòu)(Unified Memory Architecture,UMA)”的方法。當(dāng)前正處于激烈討論中,并已提出某些建議的解決方案包括前面提到的RDRAM芯片。雖然這一建議采用較少數(shù)量的管腳,結(jié)果使功率消耗較低、投資較少以及成本相對較低,基于數(shù)據(jù)包的協(xié)議和早先討論的接口限制不能有效地作為主存儲器工作,這里訪問趨向于非定域的。
另一種可能的解決措施是對主存儲器和圖象存儲器二者采用前面說過的VRAM,但附加費(fèi)用不能表明這種改變的合理。
因此在本發(fā)明之前還沒有出現(xiàn)適應(yīng)PC市場廣泛多樣性需要的合理解決辦法。
在前面結(jié)合圖19的實(shí)施例所討論的基于本發(fā)明的“AMPIC DRAM”的系統(tǒng)級解決方案中,提供可加以組構(gòu)的串行接口和“PRITI”的功能,肯定地填補(bǔ)這種空缺。它具有的信號管腳比由RAMBUS建議的要多(但電源和接地管腳的數(shù)量也許較少),但少于VRAM,而雙方在運(yùn)行中的效果相等。事實(shí)上按本發(fā)明的這一實(shí)現(xiàn),圖象和主存儲器功能二者可駐留在同一存儲器中其帶寬的降低可忽略不計(jì),從而達(dá)到“一致存儲器體系結(jié)構(gòu)”的難捉摸的目標(biāo)。
這種解決方案的另一可行實(shí)施例是在芯片上具有二內(nèi)部存儲體。一個(gè)可按照“AMPIC”組件用于圖象或類似的應(yīng)用,而第二個(gè)內(nèi)部存儲體有可能較大,則可以相似于基于傳統(tǒng)DRAM的存儲器,而此二存儲體雙方共享本發(fā)明的“PRITI”功能,如圖25中所示。這種有效的組合提供雙方最佳環(huán)境一個(gè)存儲體顯現(xiàn)為主存儲器,而另一存儲體則表現(xiàn)為優(yōu)化的圖象存儲器。這一芯片體系結(jié)構(gòu)因“PRITI”功能而使得能以對系統(tǒng)帶寬非常微小的影響地在二內(nèi)部存儲體間傳送大量的數(shù)據(jù),由此來提供實(shí)現(xiàn)對所有類型的應(yīng)用通用的公用芯片和一單一總線所需的所有必要能力。
如果所述未決申請的所謂的“PARAS”DRAM的接口訪問機(jī)制被如圖26中那樣連同“AMPIC”一起使用,則本發(fā)明就可作進(jìn)一步完善以降低管腳數(shù)和成本,以實(shí)現(xiàn)一以最低可能成本對主存儲器和圖象二者的要求優(yōu)化的存儲器芯片??紤]帶“PARAS”接口的2M×8DRAM的例子,被節(jié)省的管腳數(shù)為8,這樣它們可用來提供串行接口。如僅實(shí)現(xiàn)5個(gè)串行接口,則此高性能/低成本芯片中的管腳數(shù)就可與傳統(tǒng)的DRAM相比擬,當(dāng)然是具有前面說明的巨大附加利益的。這樣的組合DRAM的優(yōu)點(diǎn)在于a.以體系結(jié)構(gòu)的創(chuàng)新而不是完全靠裝置速度來提供極大增強(qiáng)的系統(tǒng)數(shù)據(jù)帶寬;
b.能向/從多個(gè)I/O源移動大量數(shù)據(jù)而對系統(tǒng)帶寬的影響最??;c.可加以組構(gòu)來適應(yīng)I/O源的不同數(shù)據(jù)傳送速率;d.能在芯片內(nèi)部以快數(shù)個(gè)數(shù)量級的時(shí)間幀移動很大的數(shù)據(jù)塊而對系統(tǒng)帶寬的影響可忽略不計(jì);e.對所提供的功能性裝置具有很少管腳數(shù);f.由于管腳數(shù)降低成本也相對地低;g、所需的功率消耗相對地低;h.此體系結(jié)構(gòu)降低輸入數(shù)據(jù)包的接收與其隨后的發(fā)送之間的等待時(shí)間;i.與傳統(tǒng)方法相比相互連接大得多數(shù)量的I/O源;j.系統(tǒng)設(shè)計(jì)接口幾乎相同于現(xiàn)有的DRAM,從而使設(shè)計(jì)周期最短;和k.對主存儲器和圖象需求二者以同等效率工作,從而提供一致存儲器體系結(jié)構(gòu)。
對于本技術(shù)領(lǐng)域的熟悉人員可作的其他變型還包括,設(shè)置將同一數(shù)據(jù)包緩存器卸載到類似定義的其他端口的邏輯,和使緩存器串列的能力,或?qū)⒋薪涌诤途彺嫫鬓D(zhuǎn)換應(yīng)用到其它存儲器裝置而不是DRAM,并認(rèn)為這些均屬于附列的權(quán)利要求中所定義的本發(fā)明的精神實(shí)質(zhì)和范疇之內(nèi)。
權(quán)利要求
1.用于一具有各自連接到公共系統(tǒng)總線接口并對其訪問競爭的例如具有并行數(shù)據(jù)端口的中央處理單元(CPU)的主控制器和動態(tài)隨機(jī)存取存儲器(DRAM)的系統(tǒng)的改進(jìn)的DRAM體系結(jié)構(gòu),包括多端口內(nèi)部高速存取DRAM(AMPIC DRAM),該AMPIC DRAM包括多個(gè)各自通過對應(yīng)緩存器連接在一分開的外部I/O源與內(nèi)部DRAM存儲器之間的獨(dú)立串行數(shù)據(jù)接口;安插在串行接口與緩存器間的轉(zhuǎn)接組件;和用于在由例如所述CPU的總線主控制器所作的動態(tài)組構(gòu)下將串行接口連接到緩存器的轉(zhuǎn)接組件邏輯控制,以便作適合于所希望的數(shù)據(jù)路由的轉(zhuǎn)接分配。
2.權(quán)利要求1中所述系統(tǒng),其特征是轉(zhuǎn)接組件包括一或多個(gè)多路器或縱橫開關(guān),或者它們的組合。
3.權(quán)利要求1中所述系統(tǒng),其特征是所述存儲器為系統(tǒng)的DRAM核主存儲器。
4.權(quán)利要求3中所述系統(tǒng),其特征是緩存器為數(shù)據(jù)包緩存器,并設(shè)置有對各個(gè)活動數(shù)據(jù)包緩存器與CPU對總線接口的訪問進(jìn)行仲裁的裝置,而通過串行接口從數(shù)據(jù)包緩存器接收或向其發(fā)送數(shù)據(jù)則無需仲裁。
5.權(quán)利要求1中所述系統(tǒng),其特征是AMPIC DRAM轉(zhuǎn)接組件分配任一緩存器給任一串行接口而無需任何在緩存器與核心DRAM間傳送數(shù)據(jù)的中間步驟。
6.權(quán)利要求1中所述系統(tǒng),其特征是各獨(dú)立串行接口為一位寬。
7.權(quán)利要求6中所述系統(tǒng),其特征是多個(gè)一位寬串行接口與一公共I/O源被組構(gòu)成一窄寬度總線或端口,連接到一公共緩存器。
8.權(quán)利要求7中所述系統(tǒng),其特征是各緩存器在被定義為一端口時(shí)具有同時(shí)與所有串行接口進(jìn)行接口的能力,而各緩存器則被組構(gòu)來用于與它所連接或?qū)拥亩丝谕瑯拥亩丝诖笮 ?br>
9.權(quán)利要求1中所述系統(tǒng),其特征是對各端口接口設(shè)置一控制線來控制對應(yīng)的I/O源與串行端口之間的串行數(shù)據(jù)流。
10.權(quán)利要求1中所述系統(tǒng),其特征是設(shè)置多個(gè)AMPIC DRAM芯片,每一個(gè)被連接在總線接口與I/O源串行接口之間,其中一或多個(gè)串行接口用作為一端口。
11.如權(quán)利要求1中所述系統(tǒng),其特征是設(shè)置了至少二個(gè)內(nèi)部DRAM核存儲體,它們經(jīng)由具有以同時(shí)的對應(yīng)RAS信號周期進(jìn)行選通的行地址的行寬接口相連接以使得在從一存儲體的一行讀取數(shù)據(jù)后,將其寫到至少一個(gè)另一存儲體。
12.如權(quán)利要求11中所述系統(tǒng),其特征是內(nèi)部邏輯提供方向控制以使得在完成一行傳送后能啟動另一個(gè)傳送,所得的并行行內(nèi)部事務(wù)干預(yù)(PRITI)繼續(xù)到完成。
13.如權(quán)利要求12中所述系統(tǒng),其特征是設(shè)置有在這種內(nèi)部傳送期間拒絕對DRAM核的訪問,但在此內(nèi)部傳送期間允許在串行接口上的傳送的裝置。
14.如權(quán)利要求13中所述系統(tǒng),其特征是二行寬二存儲部件組在所述存儲體間進(jìn)行接口,并設(shè)置有與所述操作同時(shí)訪問各存儲體中一行、存儲進(jìn)所述存儲部件、然后同時(shí)寫回到二個(gè)源的裝置。
15.如權(quán)利要求13中所述系統(tǒng),其特征是一行寬存儲部件組被設(shè)置在此行寬總線接口上,并被提供有存儲的一個(gè)存儲體的行數(shù)據(jù),在至少一個(gè)另外的存儲體將數(shù)據(jù)寫到所述一個(gè)存儲體后所述一個(gè)存儲體的行數(shù)據(jù)被寫到所述至少一個(gè)另外的存儲體。
16.如權(quán)利要求1中所述系統(tǒng),其特征是AMPIC DRAM芯片除分開的串行接口管腳外還在總線接口側(cè)設(shè)置有地址、數(shù)據(jù)、PAS、CAS、寫、等待、命令/數(shù)據(jù)和主時(shí)鐘管腳;每當(dāng)在緩存器與DRAM核間發(fā)生內(nèi)部傳送時(shí)CPU利用等待信號來或者推遲訪問的開始(等待)或延長訪問周期以便在處理此訪問前完成該內(nèi)部傳送;用于訪問的命令控制信號經(jīng)由在RAS周期內(nèi)不應(yīng)用的數(shù)據(jù)線提供;RAS和CAS線提供核心DRAM地址而數(shù)據(jù)線提供緩存器號或輔助指令信息;和主時(shí)鐘控制串行接口。
17.權(quán)利要求1中所述系統(tǒng),適用于網(wǎng)絡(luò)連接應(yīng)用,該應(yīng)用涉及有多個(gè)網(wǎng)絡(luò)控制器,各自與對應(yīng)的主存儲器AMPIC DRAM的一或多個(gè)存儲體作串行接口,后者依次連接到總線接口的一側(cè),而CPU則連接到總線接口的另一側(cè),其中控制器與主存儲器間的數(shù)據(jù)移動基本上是串行的,從網(wǎng)絡(luò)控制器接收的作為欲被發(fā)送到一網(wǎng)絡(luò)控制器的數(shù)據(jù)的串行數(shù)據(jù)被存儲進(jìn)由系統(tǒng)總線主控CPU指派給它的數(shù)據(jù)包緩存器。
18.權(quán)利要求17中所述系統(tǒng),其特征是在一網(wǎng)絡(luò)控制器發(fā)送數(shù)據(jù)到第二網(wǎng)絡(luò)控制器時(shí),由所述一網(wǎng)絡(luò)控制器的串行端口接收的數(shù)據(jù)被傳送到對應(yīng)的基于DRAM的主存儲器而無需仲裁或消耗主存儲器帶寬,而且僅僅在數(shù)據(jù)包緩存器通過仲裁取得總線之后的一次訪問中將數(shù)據(jù)傳送施加到對應(yīng)的DRAM核,而且行地址數(shù)據(jù)被提供到DRAM核;和其中被傳送到AMPIC DRAM的數(shù)據(jù)包被CPU加以處理并改向到所述第二網(wǎng)絡(luò)控制器端口而數(shù)據(jù)是在仲裁后的一單個(gè)訪問中傳送到對應(yīng)的數(shù)據(jù)包緩存器,然后通過對應(yīng)的串行端口傳送到所述第二網(wǎng)絡(luò)控制器及其網(wǎng)絡(luò)。
19.權(quán)利要求1中所述系統(tǒng),適用于圖象/多媒體應(yīng)用,該應(yīng)用涉及最小顯示行數(shù)的傳送并從多個(gè)顯示串行接口端口傳送到依次連接到所述總線接口的一側(cè)的多個(gè)存儲器AMPIC DRAM,CPU連接到此接口的另一側(cè),其中,顯示端口與存儲器間的數(shù)據(jù)移動基本上是串行的,且從顯示接口接收的串行數(shù)據(jù)被存儲進(jìn)被分配給系統(tǒng)總線主控CPU的數(shù)據(jù)包緩存器。
20.權(quán)利要求19中所述系統(tǒng),其特征是設(shè)置有以相同數(shù)量的數(shù)據(jù)傳送操作傳送所述數(shù)量的顯示行的裝置。
21.權(quán)利要求17中所述系統(tǒng),其特征是還將一或多個(gè)另外的沒有串行接口的普通的傳統(tǒng)DRAM的外部存儲體連接到總線接口。
22.權(quán)利要求17中所述系統(tǒng),其特征是還設(shè)置有一或多個(gè)另外的AMPIC DRAM外部存儲體,也連接到總線接口并與圖象顯示數(shù)據(jù)端口作串行接口。
23.一具有控制連接有一或多個(gè)裝備有存儲器的DRAM單元或DRAM單元的存儲體的系統(tǒng)總線接口的并行數(shù)據(jù)端口CPU的系統(tǒng)中,用于消除DRAM系統(tǒng)帶寬限制、顯著地增加數(shù)據(jù)傳送速度、顯著減少總線仲裁需求、使得能實(shí)現(xiàn)增加的I/O源接口和降低的成本及較低的功率消耗的方法,包括為各DRAM單元裝備至少一個(gè)用于通過一對應(yīng)串行接口與外部I/O數(shù)據(jù)源進(jìn)行接口的輔助串行數(shù)據(jù)端口;在各DRAM內(nèi)部為每一串行接口設(shè)置一緩存器和將一轉(zhuǎn)接組件安插在緩存器與串行接口之間;以及促使CPU通過動態(tài)組構(gòu)轉(zhuǎn)接組件作適合于所希望的數(shù)據(jù)路由的轉(zhuǎn)接來控制串行接口對緩存器的連接。
24.如權(quán)利要求23中所述方法,其特征是所述轉(zhuǎn)接是由多路轉(zhuǎn)換或縱橫轉(zhuǎn)接或兩者來實(shí)現(xiàn)的。
25.如權(quán)利要求23中所述的方法,其特征是所述轉(zhuǎn)接將緩存器分配給任一串行接口而無需任何在緩存器與DRAM存儲器間傳送數(shù)據(jù)的中間步驟,和在緩存器與CPU之間作總線接口訪問的仲裁,但通過串行接口從緩存器接收或向其發(fā)送數(shù)據(jù)則無需仲裁。
26.權(quán)利要求1中所述改進(jìn)的DRAM體系結(jié)構(gòu),其特征是一芯片內(nèi)部含有至少二個(gè)DRAM存儲體和轉(zhuǎn)接組件及緩存器,并行行內(nèi)部事務(wù)干預(yù)裝置用于內(nèi)部數(shù)據(jù)行傳送并被連接成使得至少一個(gè)串行連接到一I/O圖象顯示器的存儲體主要利用另一存儲體作為主存儲器核心,使得訪問一個(gè)或雙方存儲體的CPU將數(shù)據(jù)移動到所述另一存儲體中,以及數(shù)據(jù)在并行行內(nèi)部事務(wù)干預(yù)裝置的控制下在存儲體間移動,從而提供適宜于一致存儲器體系結(jié)構(gòu)的芯片。
27.用于一具有各自連接到并對其訪問競爭的公共系統(tǒng)總線接口的例如帶有并行數(shù)據(jù)端口的中央處理單元(CPU)的主控制器和隨機(jī)存取存儲器單元的系統(tǒng)的改進(jìn)的存儲器單元的體系結(jié)構(gòu),包括多端口內(nèi)部高速存取存儲器單元,后者包括多個(gè)各自通過相應(yīng)的緩存器連接在分開的外部I/O源與單元中的內(nèi)部存儲器之間的獨(dú)立串行數(shù)據(jù)接口;安插在串行接口與緩存器之間的轉(zhuǎn)接組件;和用于在由總線主控制器如所述CPU所作的動態(tài)組構(gòu)下將串行接口連接到緩存器的轉(zhuǎn)接組件邏輯控制,以便作適合于所希望的數(shù)據(jù)路由的轉(zhuǎn)接分配。
全文摘要
一新穎的低成本/高性能的稱之為“AMPICDRAM”的多端口內(nèi)部高速存取的動態(tài)隨機(jī)存取存儲器體系結(jié)構(gòu),和由此得到的一排除現(xiàn)行的嚴(yán)重的系統(tǒng)帶寬限制的獨(dú)特的系統(tǒng)體系結(jié)構(gòu)。還提供以快于傳統(tǒng)手段數(shù)個(gè)數(shù)量級地作芯片內(nèi)部傳送數(shù)據(jù)塊的措施。此芯片還以極大地增強(qiáng)的性能和顯著降低的成本連接數(shù)量大得多的源?;谶@一新穎的體系結(jié)構(gòu)的系統(tǒng)配置能對主存儲器功能與圖象存儲器二者同等效率的工作,從而提供一確實(shí)低成本、高性能的一致存儲器體系結(jié)構(gòu)。
文檔編號G11C11/401GK1209213SQ96180069
公開日1999年2月24日 申請日期1996年8月12日 優(yōu)先權(quán)日1995年12月29日
發(fā)明者穆凱什·查特 申請人:穆凱什·查特