CN1892629A - 存储器微分块 - Google Patents
存储器微分块 Download PDFInfo
- Publication number
- CN1892629A CN1892629A CNA200610100391XA CN200610100391A CN1892629A CN 1892629 A CN1892629 A CN 1892629A CN A200610100391X A CNA200610100391X A CN A200610100391XA CN 200610100391 A CN200610100391 A CN 200610100391A CN 1892629 A CN1892629 A CN 1892629A
- Authority
- CN
- China
- Prior art keywords
- subchannel
- memory controller
- request
- requests
- memory
- 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.)
- Granted
Links
Images
Classifications
-
- 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
-
- 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
- G06F13/1668—Details of memory controller
- G06F13/1684—Details of memory controller using multiple buses
-
- 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
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G5/00—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
- G09G5/36—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
- G09G5/39—Control of the bit-mapped memory
- G09G5/393—Arrangements for updating the contents of the bit-mapped memory
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G2360/00—Aspects of the architecture of display systems
- G09G2360/12—Frame memory handling
- G09G2360/122—Tiling
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G2360/00—Aspects of the architecture of display systems
- G09G2360/12—Frame memory handling
- G09G2360/125—Frame memory handling using unified memory architecture [UMA]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Memory System (AREA)
- Image Input (AREA)
- Storage Device Security (AREA)
Abstract
根据一个实施例,公开了一种存储器控制器。该存储器控制器包括分配逻辑和事务组装器。分配逻辑接收访问存储器通道的请求。事务组装器将请求组合到访问通道内一个或多个可独立寻址的子通道的一个或多个其它请求中。
Description
发明领域
本发明涉及计算机系统;本发明尤其涉及访问存储器控制。
背景
实现统一存储器体系结构(UMA)的计算机系统具有通过访问主存储器来访问视频存储器的图形控制器的特征。但是,由于CPU高速缓存线大小的要求,UMA图形系统的存储器效率可能受到限制。例如,理想的图形存储器访问大小可能是4到16字节,因为图形控制器一次可对一个或数个像素或是纹理像素(texel)进行操作。但是,存储器体系结构常常是为64字节的CPU高速缓存线大小优化的,目的是优化CPU存储器效率。结果是,平均而言,从存储器读取的相当大量的数据可能从未被图形控制器所使用。
分立图形控制器的制造商通过使用较窄的存储器通道来将此过度取出最小化。但是,这一解决方案对于基于UMA的集成图形控制器是不可用的。
附图简述
在附图中通过示例而非限制示出了本发明,其中相同的附图标记表示相似的元件,其中:
图1是计算机系统的一个实施例的框图;
图2示出了存储器控制器的一个实施例;
图3示出了逻辑虚拟地址的一个实施例;
图4示出了存储器控制器的另一个实施例;
图5A和5B示出了性能优势;
图6示出了相等子通道分配的一个实施例;
图7示出了相等子通道分配的另一个实施例;
图8示出了相等子通道分配的又一个实施例;
图9示出了存储器控制器的另一个实施例;
图10示出了不等子通道分配的一个实施例;以及
图11示出了计算机系统的另一个实施例。
详细描述
本文描述了一种存储器请求组合机制。在以下对本发明的详细描述中,阐述了许多特定细节以提供对本发明的详尽理解。但是,本领域技术人员可显见,无需这些特定实施例也可实施本发明。在其它实例中,以框图形式而不是详细地示出了公知的结构和装置,目的是避免使本发明模糊。
本说明书中对“一个实施例”或是“一实施例”的引用是指结合该实施例所描述的特定特征、结构或特性被包括在本发明的至少一个实施例中。在本说明书中各处所出现的短语“在一个实施例中”未必全部都是指同一个实施例。
图1是计算机系统100的一个实施例的框图。计算机系统100包括耦合到接口105的中央处理器单元(CPU)102。在一个实施例中,CPU 102是可从加利福尼亚州Santa Clara市的Intel公司购买的PentiumIV处理器的Pentium家族中的处理器。或者,也可使用其它CPU。例如,CPU 102可使用多个处理核心来实现。在另一个实施例中,计算机系统100可包括多个CPU 102。
在另一个实施例中,芯片组107也被耦合到接口105。芯片组107包括存储器控制组件110。存储器控制组件110可包括耦合到主系统存储器115的存储器控制器112。主系统存储器115存储数据以及由CPU 102或是系统100中所包括的任何其它装置执行的指令序列。在一个实施例中,主系统存储器115包括动态随机存取存储器(DRAM);但是,主系统存储器115可使用其它存储器类型来实现。其它装置也可被耦合到接口105,诸如多个CPU和/或多个系统存储器等。
存储器控制组件110可经由接口被耦合到输入/输出(I/O)控制组件140。I/O控制组件140向计算机系统100内的I/O设备提供接口。I/O控制组件140可支持诸如外围部件互连(PCI)Express总线、加速图形端口(AGP)、通用串行总线(USB)、低引脚数(LPC)总线或是任何其它类型的I/O总线(未示)等I/O总线上的标准I/O操作。
根据一个实施例,图形控制器160与芯片组107通信,并被实现为向耦合到计算机系统100的显示监视器(未示)提供视频图形。图形控制器160通过访问主存储器115来访问视频存储器。如以上所讨论的,既支持存储器又支持CPU的存储器设备的存储效率是受到限制的,因为图形的存储器访问大小通常理想为4到16字节,而存储器体系结构是为64字节的CPU线大小优化以优化CPU存储器效率的。
微分块(Micro-Tiling)
根据一个实施例,存储器控制组件110具有微分块的特征,目的是减少对图形设备的存储器请求大小,并且同时维持64字节的存储器事务。诸如基于DDRDRAM等技术的标准存储器通道具有m比特的某一物理宽度。存储器事务包括T次传递,总计逻辑宽度为M=m*T/8字节。每个事务内的字节被视为具有联贯的地址。在以下讨论中,术语宽度是指逻辑宽度。
微分块将M字节宽的通道分成S个子通道,每个都是N=M/S字节宽,并且其中每个子通道上传递N字节数据。可给每个子通道一个地址,其中若干个(I个)独立的地址位可与给其它子通道的地址中的对应位不同。在每个子通道上传递的数据可被视为代表着相连的地址范围。但是,每个子通道上的数据块未必来自相连的地址范围。每个子通道包括该通道的所有存储器位置的一个子集。
图2示出支持微分块的存储器控制组件110的一个实施例。在一个实施例中,多通道存储器子系统每个信道有一个微分块存储器控制器。由此,如图2中所示,存储器控制组件110包括两个存储器控制器112(存储器控制器1和2),对两个通道中的每一个有一个存储器控制器。每个通道包括S个子通道,每个子通道为N字节宽。由此,每个通道可以是M=N*S字节宽。
在此图中,读或写存储器的请求被描绘为2×2的正方形的阵列,它们可能表示2×2的像素或纹理像素阵列。图中示出了被分配给子通道之前的请求。在子通道分配之后,请求从0到S-1编号以表示子通道分配。在读事务的情形中,这N字节回到被耦合到存储器控制器组件110的请求器205。
存储器控制器组件110包括耦合到存储器控制器112的通道分配逻辑210。通道分配210经由存储器控制器112将从请求器204接收的每个请求分配给一个存储器通道240。此外,每个存储器控制器112包括子通道分配215、重排缓冲器220和事务组装器230。由此,请求被分配给图2中所示的存储器控制器1或是存储器控制器2。
子通道分配215将每个请求分配给存储器通道240内的一个子通道。重排缓冲器220收集请求以使事务组装器230能试图为每个存储器240子通道组装存储器访问。根据一个实施例,每个子通道具有相等的N字节的宽度。
在图2中所示的系统的工作期间,进入存储器控制器(1或2)的在地址A处读或写N字节的数据块的请求可被分配给一个子通道,并可被放在重排缓冲器220中。在一个实施例中,可通过以下过程来定义相等子通道分配s:将请求地址A右移P=log2(N)位,得到新的整数值
(例如,
);并且s是
的最低Q=log2(S)位(例如,
)。
存储器控制器通过从重排缓冲器220选择S个读请求(对每个子通道一个请求)来构成存储器读事务。存储器控制器通过从重排缓冲器220选择S个写请求(对每个子通道一个请求)来构成存储器写事务。地址中由共享地址线表示的部分对于事务中的所有子通道请求可以是相同的。
图3示出诠释物理地址中的地址位的一个实施例。图3中所示的对共享和独立地址位、以及子通道选择位的选择是出于说明性目的,因为将高于P个子通道数据地址位的那些地址位分为共享和独立地址位,并且子通道选择位可以是任意的。独立地址位在诸子通道上是不同的,并且未必相连。发送到子通道的地址位是该子通道的共享地址位和独立地址位。
图4示出存储器控制组件110用四个16字节的请求来组装一个64字节的事务的实施例,其中仅示出了单个通道。图4示出了被实现为对应于每个子通道的重排序列的重排缓冲器220。但是,在其它实施例中,重排缓冲器220可经由其它机制来实现。
在此实施例中,事务组装器230用几个16字节的请求(对每个子通道一个请求)来组装一个64字节的存储器请求。构成该存储器请求的所有16字节请求都具有相同的共享地址位。由此,组装器230浏览队列以基于请求是否具有共有的共享地址来寻找可被组装为单个事务的请求。
注意,在图4中所示的实施例中,组装器230不能为子通道1c找到请求。当试图构成事务时,存储器控制器可能不能为每个子通道找到一个请求,以使所有请求都具有相同的共享地址段(例如,使得每个共享地址位的值在所有请求上可以是相同的)。
如果子通道不能被对应队列中的请求所填充,则结果是不会对该子通道执行来/往的传递。在一个实施例中,如果子通道不能被请求填充,则任意位置可被读取,并且结果被丢弃。在一个替换实施例中,每个子通道可包括一条附加控制线,当对该通道没有对应的请求时,可使用该附加控制线来切断子通道的电源。
微分块存储器子通道可访问由共享地址位和I个独立地址位所确定的某个地址范围内的不相连的存储器地址。在对照将I个地址信号复制到每个子通道的成本进行权衡的情况下,审慎选择的I可提高诸独立子通道的并发性和带宽效率。
图5A和5B示出了微分块的性能优势。每个图都示出了分块地址空间中三角形的栅格化,其中每个小正方形表示一个4字节的像素或纹理像素。图5A示出当每个请求为64字节时标准存储器系统中的过度取出。每个4×4的像素块表示一个64字节的对齐的存储块。三角形包围了57个像素。使用标准存储器子系统,那57个像素将位于11个存储块(64字节)中。由此,为了访问那57个像素,可能会访问相当于额外的119个像素的数据,而它们可能不会被使用(例如,导致32%的效率)。
图5B示出了每个请求是16字节并且所有此类请求都可被微分块组装器64用来构建64字节的存储器事务而没有任何未被使用的子通道情况下的过度取出。在此情形中,三角形触及23个2×2像素阵列,从而导致相当于额外的35个像素的数据被访问(例如,导致62%的效率)。微分块的有效性取决于组装器构造完全填充的存储器事务的能力。
微分块请求映射
如以上所讨论的,相等子通道分配s可如下来定义:将请求地址A右移P=log2(N)位,得到新的整数值
(例如,
);并且s是
的最低Q=log2(S)位(例如,
)。图6示出了线性地址空间的情形中相等子通道分配的一个实施例。在此实施例中,一个通道可包括四个子通道(S=4)。
图6示出了线性地址空间的一部分相对于某个地址A的子通道分配,其中每个小块表示N个字节。块0表示将被分配给子通道0的地址范围,块2表示将被分配给子通道2的地址范围,而块3表示将被分配给子通道3的地址范围。
图7示出了示例性2D分块空间的情形中同样是相对于某个地址A的相等子通道分配的另一个实施例。注意,存在着许多种可能的2D地址空间分块,并且更高维的分块也是可能的。
如果请求地址不是均匀分布在诸子通道上,则相等子通道分配的实现可能效果不佳。例如,图8示出了示例性分块地址空间(诸如在图形应用中可能使用的)上的相等子通道分配的一个实施例。
图8包括三角形的轮廓以表示在呈现三角形期间被访问的N字节的块。注意,沿着三角形的左边和底边访问各个块的请求在诸子通道中间不是均匀分布的。因此,事务组装器230可能无法组装包括对所有子通道的请求的完整的事务。
根据一个实施例,可向微分块体系结构提供不等子通道分配,以将请求地址在诸子通道上均匀分布的可能性最大化,并由此来增加微分块带宽(BW)减少。
图9示出了实现微分块的存储器控制器的另一个实施例。此实施例在每个存储器控制器中提供被耦合到子通道分配215的映射逻辑950。与前文中类似,图9示出了被实现为用于每个子通道的重排队列的重排缓冲器220。此配置具有两个通道,由此具有两个存储器控制器。每个通道包括四个子通道,每个为16字节宽。由此,每个通道可以是64字节宽。
在一个实施例中,映射逻辑950向子通道分配215发送指示如何将请求分配给诸子通道的输入信号以减少模式重复性。由此,可改变映射以使对象在诸子通道上被平均地绘制,从而来避免形成热点。在另一个实施例中,映射逻辑950向其地址空间的不同区域提供不同的映射。被应用于地址空间中的某个区域的映射可随时间推移在每当该区域内的数据不再受到关注时改变。
图10示出不等子通道映射的一个实施例,其中各个块具有与以上参考图8所描述的相同的意义。在此情形中,沿三角形左边和底边访问各个块的请求在诸子通道中间被更均匀地分布。这种子通道分配的效果是通过更高效地将微分块请求填充到存储器信道中来减少带宽。类似地,在线性地址空间的情形中,适当地选择的不等子通道分配映射可导致带宽减小,尤其是在存储器访问通常具有为M字节的倍数的跨距的情形中。
图11示出计算机系统100的另一个实施例。在此实施例中,芯片组107包括单个控制中心1120,这与单独的存储器控制组件和I/O控制组件形成对比。由此,存储器控制器112可被包括在CPU 102内,而存储器115被耦合到CPU 102。在这一实施例中,图形控制器160可被耦合到控制中心1120,并经由CPU 102来访问主存储器115。
尽管毫无疑问,本发明的许多变更和修改在本领域普通技术人员阅读了以上描述后将是显见的,但是应当理解,通过示例方式所示出和记载的任何特定实施例从任何意义上都不应被视为是限定性的。因此,对各个实施例的详细参考并不旨在限定所附权利要求的范围,权利要求书本身仅引用本发明的必要技术特征。
Claims (21)
1.一种存储器控制器,包括:
分配逻辑,用于接收访问存储器位置的请求;以及
事务组装器,用于用访问通道内的两个或多个可独立寻址的子通道的一个或多个其它请求来组合所述请求。
2.如权利要求1所述的存储器控制器,其特征在于,每个所述子通道请求包括独立地址分量和共享地址分量。
3.如权利要求2所述的存储器控制器,其特征在于,所述子通道请求的独立地址分量与一子通道相关联。
4.如权利要求1所述的存储器控制器,其特征在于,向第一子通道呈递的第一子通道请求包括第一地址,所述第一地址与向第二子通道呈递的第二子通道请求具有不同的独立地址位。
5.如权利要求1所述的存储器控制器,其特征在于,传递给每个子通道的数据表示相连的数据块。
6.如权利要求5所述的存储器控制器,其特征在于,所述在每个子通道处的数据块不是来自相连的数据块。
7.如权利要求1所述的存储器控制器,其特征在于,还包括重排缓冲器,用于存储所述子通道请求。
8.如权利要求6所述的存储器控制器,其特征在于,所述重排缓冲器包括与所述两个或多个子通道中的每一个相关联的队列。
9.如权利要求8所述的存储器控制器,其特征在于,每个队列存储要被传递给相关联的子通道的子通道请求。
10.如权利要求8所述的存储器控制器,其特征在于,还包括事务组装器,用于组装存储在每个所述队列中的子通道请求,并用于将所述子通道请求转发到所述相关联的子通道。
11.如权利要求1所述的存储器控制器,其特征在于,还包括被耦合到所述分配逻辑的映射逻辑,用于提供对所述子通道的不等分配。
12.如权利要求1所述的存储器控制器,其特征在于,还包括被耦合到每个所述子通道的控制线,其中每根控制线在每当没有任何对所述通道的对应请求时切断相关联的子通道的电源。
13,一种方法,包括:
在存储器控制器处接收访问被耦合到所述存储器控制器的存储器通道的请求;
将所述请求分配给所述存储器通道内的一个相关联的可独立寻址的子通道;以及
用访问所述子通道的一个或多个其它请求来组合所述请求。
14.如权利要求13所述的方法,其特征在于,还包括所述存储器控制器通过为每个子通道选择一个写子通道请求来构成写事务。
15.如权利要求13所述的方法,其特征在于,还包括所述存储器控制器通过为每个子通道选择一个读子通道请求来构成写事务。
16.如权利要求13所述的方法,其特征在于,还包括在将所述请求分配给子通道之后将所述请求存储在重排缓冲器中。
17.如权利要求16所述的方法,其特征在于,还包括:
组装存储在所述重排缓冲器中的子通道请求;以及
将所述请求转发到相关联的子通道。
18.一种系统,包括:
具有一个或多个通道的存储器装置;以及
被耦合到所述存储器装置的芯片组,所述芯片组具有存储器控制器,用于接收访问存储器位置的请求,以及用访问通道内的两个或多个可独立寻址的子通道的一个或多个其它请求来组合所述请求。
19.如权利要求18所述的系统,其特征在于,所述存储器控制器还包括:
分配逻辑,用于将所述请求分配给子通道;以及
重排缓冲器,用于存储所述子通道请求。
20.如权利要求19所述的系统,其特征在于,所述存储器控制器还包括事务组装器,用于基于共享地址来组合存储在每个所述队列中的子通道请求,并将所述子通道请求转发到所述相关联的子通道。
21.如权利要求20所述的系统,其特征在于,所述存储器控制器还包括被耦合到所述分配逻辑的映射逻辑,用于提供对所述子通道的不等分配。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/159,745 US7765366B2 (en) | 2005-06-23 | 2005-06-23 | Memory micro-tiling |
US11/159,745 | 2005-06-23 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1892629A true CN1892629A (zh) | 2007-01-10 |
CN1892629B CN1892629B (zh) | 2010-06-16 |
Family
ID=37545833
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200610100391XA Expired - Fee Related CN1892629B (zh) | 2005-06-23 | 2006-06-22 | 存储器微分块 |
Country Status (7)
Country | Link |
---|---|
US (2) | US7765366B2 (zh) |
EP (1) | EP1894110B1 (zh) |
JP (2) | JP4981797B2 (zh) |
KR (1) | KR100973604B1 (zh) |
CN (1) | CN1892629B (zh) |
TW (1) | TWI350455B (zh) |
WO (1) | WO2007002551A2 (zh) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7765366B2 (en) * | 2005-06-23 | 2010-07-27 | Intel Corporation | Memory micro-tiling |
US8253751B2 (en) * | 2005-06-30 | 2012-08-28 | Intel Corporation | Memory controller interface for micro-tiled memory access |
US7558941B2 (en) * | 2005-06-30 | 2009-07-07 | Intel Corporation | Automatic detection of micro-tile enabled memory |
US8032672B2 (en) | 2006-04-14 | 2011-10-04 | Apple Inc. | Increased speed of processing of audio samples received over a serial communications link by use of channel map and steering table |
US8878860B2 (en) * | 2006-12-28 | 2014-11-04 | Intel Corporation | Accessing memory using multi-tiling |
US20110320751A1 (en) * | 2010-06-25 | 2011-12-29 | Qualcomm Incorporated | Dynamic Interleaving Of Multi-Channel Memory |
US8892844B2 (en) * | 2011-03-07 | 2014-11-18 | Micron Technology, Inc. | Methods of accessing memory cells, methods of distributing memory requests, systems, and memory controllers |
US10838886B2 (en) | 2011-04-19 | 2020-11-17 | Micron Technology, Inc. | Channel depth adjustment in memory systems |
GB2525238B (en) * | 2014-04-17 | 2021-06-16 | Advanced Risc Mach Ltd | Hazard checking control within interconnect circuitry |
US10468093B2 (en) | 2016-03-03 | 2019-11-05 | Nvidia Corporation | Systems and methods for dynamic random access memory (DRAM) sub-channels |
GB2566469B (en) | 2017-09-13 | 2021-03-24 | Advanced Risc Mach Ltd | Cache line statuses |
GB2566470B (en) * | 2017-09-13 | 2021-02-10 | Advanced Risc Mach Ltd | Cache storage |
Family Cites Families (72)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3323109A (en) | 1963-12-30 | 1967-05-30 | North American Aviation Inc | Multiple computer-multiple memory system |
JPS51127626A (en) | 1975-04-30 | 1976-11-06 | Hitachi Ltd | Information processor |
US3988717A (en) | 1975-08-06 | 1976-10-26 | Litton Systems, Inc. | General purpose computer or logic chip and system |
NL7510904A (nl) | 1975-09-17 | 1977-03-21 | Philips Nv | Woordgroepsprioriteitsinrichting. |
US4124891A (en) * | 1976-11-18 | 1978-11-07 | Honeywell Information Systems Inc. | Memory access system |
US4495570A (en) * | 1981-01-14 | 1985-01-22 | Hitachi, Ltd. | Processing request allocator for assignment of loads in a distributed processing system |
US4504902A (en) * | 1982-03-25 | 1985-03-12 | At&T Bell Laboratories | Cache arrangement for direct memory access block transfer |
JPH083805B2 (ja) | 1985-06-28 | 1996-01-17 | ヒューレット・パッカード・カンパニー | Tlb制御方法 |
JPH0267622A (ja) * | 1988-09-01 | 1990-03-07 | Kansai Nippon Denki Software Kk | ディスク入出力方式 |
US5325510A (en) * | 1990-05-25 | 1994-06-28 | Texas Instruments Incorporated | Multiprocessor system and architecture with a computation system for minimizing duplicate read requests |
US5251310A (en) * | 1990-06-29 | 1993-10-05 | Digital Equipment Corporation | Method and apparatus for exchanging blocks of information between a cache memory and a main memory |
US5526507A (en) * | 1992-01-06 | 1996-06-11 | Hill; Andrew J. W. | Computer memory array control for accessing different memory banks simullaneously |
US5459842A (en) | 1992-06-26 | 1995-10-17 | International Business Machines Corporation | System for combining data from multiple CPU write requests via buffers and using read-modify-write operation to write the combined data to the memory |
JPH0695959A (ja) * | 1992-09-09 | 1994-04-08 | Hitachi Ltd | 情報処理装置 |
JP3240709B2 (ja) | 1992-10-30 | 2001-12-25 | 株式会社アドバンテスト | メモリ試験装置 |
US6804760B2 (en) | 1994-12-23 | 2004-10-12 | Micron Technology, Inc. | Method for determining a type of memory present in a system |
JPH08263367A (ja) * | 1995-03-27 | 1996-10-11 | Toshiba Microelectron Corp | 集積回路 |
US5649157A (en) * | 1995-03-30 | 1997-07-15 | Hewlett-Packard Co. | Memory controller with priority queues |
WO1996041274A1 (en) | 1995-06-07 | 1996-12-19 | Advanced Micro Devices, Inc. | Dynamically reconfigurable data bus |
US5752045A (en) * | 1995-07-14 | 1998-05-12 | United Microelectronics Corporation | Power conservation in synchronous SRAM cache memory blocks of a computer system |
US5799209A (en) | 1995-12-29 | 1998-08-25 | Chatter; Mukesh | Multi-port internally cached DRAM system utilizing independent serial interfaces and buffers arbitratively connected under a dynamic configuration |
US6061773A (en) | 1996-05-03 | 2000-05-09 | Digital Equipment Corporation | Virtual memory system with page table space separating a private space and a shared space in a virtual memory |
US5761708A (en) * | 1996-05-31 | 1998-06-02 | Sun Microsystems, Inc. | Apparatus and method to speculatively initiate primary memory accesses |
US5905725A (en) | 1996-12-16 | 1999-05-18 | Juniper Networks | High speed switching device |
US5748554A (en) | 1996-12-20 | 1998-05-05 | Rambus, Inc. | Memory and method for sensing sub-groups of memory elements |
US6308248B1 (en) | 1996-12-31 | 2001-10-23 | Compaq Computer Corporation | Method and system for allocating memory space using mapping controller, page table and frame numbers |
US5790118A (en) | 1997-03-07 | 1998-08-04 | International Business Machines Corporation | Mobile client programmed to hide empty table elements |
US5913231A (en) | 1997-03-31 | 1999-06-15 | International Business Machines Corporation | Method and system for high speed memory address forwarding mechanism |
US6145065A (en) | 1997-05-02 | 2000-11-07 | Matsushita Electric Industrial Co., Ltd. | Memory access buffer and reordering apparatus using priorities |
US6118462A (en) * | 1997-07-01 | 2000-09-12 | Memtrax Llc | Computer system controller having internal memory and external memory control |
US6151641A (en) * | 1997-09-30 | 2000-11-21 | Lsi Logic Corporation | DMA controller of a RAID storage controller with integrated XOR parity computation capability adapted to compute parity in parallel with the transfer of data segments |
US6122709A (en) | 1997-12-19 | 2000-09-19 | Sun Microsystems, Inc. | Cache with reduced tag information storage |
US6643746B1 (en) | 1997-12-24 | 2003-11-04 | Creative Technology Ltd. | Optimal multi-channel memory controller system |
US6438675B1 (en) * | 1998-03-23 | 2002-08-20 | Ati Technologies, Inc. | Variable format memory access device |
US6249851B1 (en) * | 1998-08-25 | 2001-06-19 | Stmicroelectronics, Inc. | Computer system having non-blocking cache and pipelined bus interface unit |
US6405273B1 (en) | 1998-11-13 | 2002-06-11 | Infineon Technologies North America Corp. | Data processing device with memory coupling unit |
US6453380B1 (en) * | 1999-01-23 | 2002-09-17 | International Business Machines Corporation | Address mapping for configurable memory system |
US6389488B1 (en) | 1999-01-28 | 2002-05-14 | Advanced Micro Devices, Inc. | Read ahead buffer for read accesses to system memory by input/output devices with buffer valid indication |
JP3639464B2 (ja) * | 1999-07-05 | 2005-04-20 | 株式会社ルネサステクノロジ | 情報処理システム |
US6708248B1 (en) * | 1999-07-23 | 2004-03-16 | Rambus Inc. | Memory system with channel multiplexing of multiple memory devices |
JP2001060169A (ja) * | 1999-08-24 | 2001-03-06 | Hitachi Ltd | キャッシュコントローラ及びコンピュータシステム |
JP2001176282A (ja) * | 1999-12-20 | 2001-06-29 | Fujitsu Ltd | 半導体記憶装置およびその制御方法 |
US6496193B1 (en) * | 1999-12-30 | 2002-12-17 | Intel Corporation | Method and apparatus for fast loading of texture data into a tiled memory |
US6678810B1 (en) * | 1999-12-30 | 2004-01-13 | Intel Corporation | MFENCE and LFENCE micro-architectural implementation method and system |
AU2001256955A1 (en) * | 2000-03-31 | 2001-10-15 | Intel Corporation | Tiled graphics architecture |
US6430672B1 (en) * | 2000-07-17 | 2002-08-06 | International Business Machines Corporation | Method for performing address mapping using two lookup tables |
EP1182564A3 (en) | 2000-08-21 | 2004-07-28 | Texas Instruments France | Local memory with indicator bits to support concurrent DMA and CPU access |
US7006505B1 (en) | 2000-10-23 | 2006-02-28 | Bay Microsystems, Inc. | Memory management system and algorithm for network processor architecture |
WO2002054654A2 (en) * | 2001-01-08 | 2002-07-11 | Vextec Corporation | Method and apparatus for predicting failure in a system |
JP2002259327A (ja) * | 2001-02-28 | 2002-09-13 | Hitachi Ltd | バス制御回路 |
US6745272B2 (en) * | 2001-04-04 | 2004-06-01 | Advanced Micro Devices, Inc. | System and method of increasing bandwidth for issuing ordered transactions into a distributed communication system |
US7200759B2 (en) * | 2001-06-08 | 2007-04-03 | Safenet B.V. | Method and device for making information contents of a volatile semiconductor memory irretrievable |
US6742097B2 (en) * | 2001-07-30 | 2004-05-25 | Rambus Inc. | Consolidation of allocated memory to reduce power consumption |
US20030056058A1 (en) | 2001-09-17 | 2003-03-20 | Alistair Veitch | Logical volume data migration |
US6812928B2 (en) * | 2002-01-30 | 2004-11-02 | Sun Microsystems, Inc. | Performance texture mapping by combining requests for image data |
US20030179598A1 (en) | 2002-03-20 | 2003-09-25 | Yu-Guang Chen | Device for selectively providing read-only data |
US7103730B2 (en) * | 2002-04-09 | 2006-09-05 | Intel Corporation | Method, system, and apparatus for reducing power consumption of a memory |
DE10216611A1 (de) | 2002-04-15 | 2003-11-06 | Infineon Technologies Ag | Verfahren zum Ersetzen eines Inhalts einer Datenspeichereinheit |
US6842828B2 (en) * | 2002-04-30 | 2005-01-11 | Intel Corporation | Methods and arrangements to enhance an upbound path |
US7028200B2 (en) * | 2002-05-15 | 2006-04-11 | Broadcom Corporation | Method and apparatus for adaptive power management of memory subsystem |
US6934804B2 (en) * | 2002-05-28 | 2005-08-23 | Sun Microsystems, Inc. | Method and system for striping spares in a data storage system including an array of disk drives |
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 |
US6851030B2 (en) | 2002-10-16 | 2005-02-01 | International Business Machines Corporation | System and method for dynamically allocating associative resources |
US7130229B2 (en) | 2002-11-08 | 2006-10-31 | Intel Corporation | Interleaved mirrored memory systems |
US6836434B2 (en) | 2002-11-21 | 2004-12-28 | Micron Technology, Inc. | Mode selection in a flash memory device |
US7255895B2 (en) | 2003-01-21 | 2007-08-14 | Bioarray Solutions, Ltd. | Method for controlling solute loading of polymer microparticles |
US7243172B2 (en) | 2003-10-14 | 2007-07-10 | Broadcom Corporation | Fragment storage for data alignment and merger |
JP4601305B2 (ja) | 2004-02-27 | 2010-12-22 | 富士通セミコンダクター株式会社 | 半導体装置 |
US20060151641A1 (en) * | 2004-12-30 | 2006-07-13 | Li H C | Water jet aerator with three-part body and with optional shaped nozzle |
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 |
-
2005
- 2005-06-23 US US11/159,745 patent/US7765366B2/en not_active Expired - Fee Related
-
2006
- 2006-06-22 CN CN200610100391XA patent/CN1892629B/zh not_active Expired - Fee Related
- 2006-06-23 EP EP06773962A patent/EP1894110B1/en not_active Not-in-force
- 2006-06-23 JP JP2008518483A patent/JP4981797B2/ja not_active Expired - Fee Related
- 2006-06-23 WO PCT/US2006/024728 patent/WO2007002551A2/en active Application Filing
- 2006-06-23 TW TW095122677A patent/TWI350455B/zh not_active IP Right Cessation
- 2006-06-23 KR KR1020077030021A patent/KR100973604B1/ko active IP Right Grant
-
2010
- 2010-01-20 US US12/690,551 patent/US8010754B2/en not_active Expired - Fee Related
-
2012
- 2012-02-17 JP JP2012032512A patent/JP5603892B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
KR100973604B1 (ko) | 2010-08-02 |
US20060294325A1 (en) | 2006-12-28 |
JP2012104161A (ja) | 2012-05-31 |
US8010754B2 (en) | 2011-08-30 |
TW200707454A (en) | 2007-02-16 |
KR20080014066A (ko) | 2008-02-13 |
JP2008544414A (ja) | 2008-12-04 |
US7765366B2 (en) | 2010-07-27 |
JP4981797B2 (ja) | 2012-07-25 |
WO2007002551A2 (en) | 2007-01-04 |
CN1892629B (zh) | 2010-06-16 |
EP1894110B1 (en) | 2012-12-19 |
EP1894110A2 (en) | 2008-03-05 |
TWI350455B (en) | 2011-10-11 |
WO2007002551A3 (en) | 2007-06-14 |
JP5603892B2 (ja) | 2014-10-08 |
US20100122046A1 (en) | 2010-05-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1892629A (zh) | 存储器微分块 | |
US7587521B2 (en) | Mechanism for assembling memory access requests while speculatively returning data | |
US7805587B1 (en) | Memory addressing controlled by PTE fields | |
JP3810736B2 (ja) | 共用変換アドレスのキャッシング | |
CN101930412B (zh) | 存储器微块化请求重排序 | |
US6483516B1 (en) | Hierarchical texture cache | |
US6591347B2 (en) | Dynamic replacement technique in a shared cache | |
EP1460581A1 (en) | Image processing apparatus and method thereof | |
US7932912B1 (en) | Frame buffer tag addressing for partitioned graphics memory supporting non-power of two number of memory elements | |
US20140237189A1 (en) | Compression status bit cache and backing store | |
US7884831B2 (en) | Reconfigurable high-performance texture pipeline with advanced filtering | |
CN1495618A (zh) | 芯片多处理器或多处理系统的高速缓存共享 | |
US8217954B2 (en) | Reconfigurable dual texture pipeline with shared texture cache | |
US20090228656A1 (en) | Associativity Implementation in a System With Directly Attached Processor Memory | |
CN101150486A (zh) | 一种零拷贝缓冲区队列网络数据接收的管理方法 | |
US6816165B1 (en) | Memory system having multiple address allocation formats and method for use thereof | |
CN1155891C (zh) | 用于处理直接存取存储设备的存取请求的方法 | |
CN1967713A (zh) | 大容量高速缓冲存储器 | |
DE69835392T2 (de) | Graphisches Verarbeitungssystem |
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: 20100616 Termination date: 20210622 |
|
CF01 | Termination of patent right due to non-payment of annual fee |