CN100550189C - 存储数据的方法、映射事务的装置和写数据线的方法 - Google Patents

存储数据的方法、映射事务的装置和写数据线的方法 Download PDF

Info

Publication number
CN100550189C
CN100550189C CNB2003801036369A CN200380103636A CN100550189C CN 100550189 C CN100550189 C CN 100550189C CN B2003801036369 A CNB2003801036369 A CN B2003801036369A CN 200380103636 A CN200380103636 A CN 200380103636A CN 100550189 C CN100550189 C CN 100550189C
Authority
CN
China
Prior art keywords
memory
data
address
bank
storage
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CNB2003801036369A
Other languages
English (en)
Other versions
CN1714401A (zh
Inventor
J·-W·范德瓦尔德特
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Callehan Tiele Co ltd
Original Assignee
Koninklijke Philips Electronics NV
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Koninklijke Philips Electronics NV filed Critical Koninklijke Philips Electronics NV
Publication of CN1714401A publication Critical patent/CN1714401A/zh
Application granted granted Critical
Publication of CN100550189C publication Critical patent/CN100550189C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0207Addressing or allocation; Relocation with multidimensional access, e.g. row/column, matrix
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1015Read-write modes for single port memories, i.e. having either a random port or a serial port
    • G11C7/1042Read-write modes for single port memories, i.e. having either a random port or a serial port using interleaving techniques, i.e. read-write of one part of the memory while preparing another part
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • G11C11/401Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
    • G11C11/4063Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing
    • G11C11/407Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing for memory cells of the field-effect type
    • G11C11/408Address circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • G11C11/401Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
    • G11C11/4063Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing
    • G11C11/407Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing for memory cells of the field-effect type
    • G11C11/408Address circuits
    • G11C11/4087Address decoders, e.g. bit - or word line decoders; Multiple line decoders
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • G11C11/401Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
    • G11C11/4063Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing
    • G11C11/407Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing for memory cells of the field-effect type
    • G11C11/409Read-write [R-W] circuits 
    • G11C11/4096Input/output [I/O] data management or control circuits, e.g. reading or writing circuits, I/O drivers or bit-line switches 

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Databases & Information Systems (AREA)
  • Dram (AREA)
  • Vehicle Body Suspensions (AREA)
  • Surgical Instruments (AREA)
  • Debugging And Monitoring (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

典型地,SOC所使用的大部分存储空间位于较便宜的芯片外存储器件,比如同步动态随机存取存储器(SDRAM)。这些存储器以相对较低的成本为数据存储提供了大容量。通常SOC器件通过这些芯芯片外存储器件互相通信。因为在现有技术水平的SOC上被处理的数据量巨大,进出SDRAM存储器的数据带宽是一种关键资源,如果这种资源没有被妥善管理将导致瓶颈。因此,提出了一种独创的地址映射方案,该方案已经改善了二维存储器事务的效率,用于将芯片内存储器事务映射到芯芯片外存储器事务。这种独创的映射方案致力于通过将数据序列分割成小于一块SDRAM存储器的一行大小的区段来减少这些瓶颈。

Description

存储数据的方法、映射事务的装置和写数据线的方法
技术领域
本发明涉及SDRAM存储器领域,更具体地涉及与SDRAM存储器往来通信的领域。
背景技术
在当今的芯片内系统(system on chips,SOC)体系结构中,多个器件被一起集成到芯片中以提供系统功能。被集成的器件的范围从可编程处理器元件到专用硬件元件。典型地,SOC具有统一内存架构(UMA),以允许芯片内器件之间的通信和同步简单化。例如,一个器件从UMA中的某个地址A处开始生成一系列数据元素,另一个器件从UMA中地址A处开始使用这些数据。换句话说,SOC上的器件在寻址UMA中的数据元素时具有相同的视点。显然,因为避免了器件之间的地址翻译,UMA简化了器件之间的通信。
典型地,SOC所使用的大部分存储空间位于较便宜的芯片外存储器件中,比如同步动态随机存取存储器(SDRAM)。这些存储器以相对较低的成本为数据存储提供大容量。通常SOC器件通过这些器件外的存储器件相互通信。例如,如果器件1生成的数据元素存储在芯片外存储器件中的一个预定地址,那么器件2可以从该芯片外存储器件的该预定地址处取回这些数据元素。因为在现有技术水平的SOC上被处理的数据量巨大,进出SDRAM存储器的数据带宽是一种关键资源,如果这种资源没有被妥善管理,将导致SOC性能瓶颈。为了使SOC器件的处理速度尽可能高,这种有限带宽资源的有效利用是关键的。
发明内容
因此,存在一种利用这种有限的数据带宽来增加可与SOC往来传递的数据量的需要。因此,本发明的一个目的是提供一种存储器地址映射,它通过为SOC和芯片外存储器件之间的事务提供增加的存储器带宽来克服现有技术中的缺陷。
根据本发明的一个方面,提供了一种在外部存储器中存储数据的方法,包括步骤:提供数据用于存储在外部存储器中;将用于存储的数据分割成数据区段(data portion),每个区段包括的数据元素少于用于填充包含在外部存储器中的一个存储体(bank)内的数据线(data line)的数据元素的数量;以及,将数据元素的每个区段存储在位于外部存储器内的不同数据线和外部存储器的不同存储体内的相同数据线的其中之一内。
根据本发明的一个方面,提供了一种装置,包括:第一存储器存储体(memory bank),该存储体具有以数据线形式的用于存储多个数据元素的第一存储器位置;第二存储器存储体,该存储体具有以数据线形式的用于存储相同数量的数据元素的第二存储器位置;以及,存储控制器电路,该电路用于接收数据元素存储的数据线并用于将数据元素的数据线分割成数据区段,每个区段包括的数据元素少于用于填充包含在外部存储器中的第一存储体和第二存储体内的数据线的数据元素的数量。
根据本发明的又另一个方面,提供了一种写数据元素线的方法,包括步骤:提供第一存储器存储体,该存储体具有以数据线形式的用于存储多个数据元素的第一存储器位置;提供第二存储器存储体,该存储体具有以数据线形式的用于存储相同数量的数据元素的第二存储器位置;将数据元素的数据线分割成数据区段,每个区段包括的数据元素少于用于填充包含在外部存储器中的第一存储体和第二存储体内的数据线的数据元素的数量;将数据元素的第一区段写到第一存储器存储体内的第一存储器位置;在完全填充第一存储器位置之前终止将第一区段数据元素写到第一存储器位置;切换到第二存储器存储体;将数据元素的第二区段写到第二存储器存储体内的第二存储器位置;以及,在完全填充第二存储器位置之前终止将第二区段数据元素写到第二存储器位置。
附图说明
下面将参考附图描述本发明,其中:
图1说明了在芯片内器件、外部存储控制器和芯片外外部存储器之间通信的现有技术概观;
图2说明了使用8数据元素存储体交织的现有技术的SDRAM地址映射,它假定了12位的行地址和10位的列地址;
图3说明了使用1024数据元素存储体交织的现有技术的SDRAM地址映射,它假定了12位的行地址和10位的列地址;
图4概括了将芯片内的事务映射到芯片外事务所采取的步骤;以及
图5说明了一个根据本发明的实施例的用于将芯片内事务映射到芯片外事务的装置。
具体实施方式
图1说明了芯片内系统(SOC)器件103之间通信的现有技术概观,包括一个外部存储控制器102和以SDRAM形式的芯片外外部存储器104。外部存储控制器102处理往来于芯片外外部存储器104的通信,芯片外外部存储器104具有多个存储器存储体105a-105d。外部存储控制器102接收来自SOC器件101a-101d的请求,以读取来自芯片外外部存储器104的数据元素和将数据元素写到芯片外外部存储器104。按照芯片内总线事务定义这些请求。外部存储控制器将这些芯片内总线事务翻译成外部存储器总线事务。外部存储器总线事务典型地没有芯片内总线事务那么普遍。芯片内总线事务通常允许多个不同类型的芯片内器件101a-101d具有不同类型的通信请求。然而,外部存储器事务是不同的,它是基于外部存储器104的特性被构造的,以允许对其高效的使用。
将芯片内总线事务翻译成外部存储器总线事务影响了用于访问外部存储器104的带宽效率。在一个特定的时钟频率CLK_FREQ上工作并且在每个时钟周期传输N比特数据的外部存储器104具有的理论带宽是CLK_FREQ*N比特/秒。理论带宽给出了实际带宽的上限。实际带宽效率主要依赖于外部存储控制器102将芯片内总线事务翻译成外部存储器总线事务的翻译过程。效率越高,特定时钟频率的存储器带宽就越高。因此,如果翻译效率更高,那么就允许使用较低工作频率的存储器部件,以便达到相同的所期望的存储器带宽。当然,众所周知较低操作频率的存储器部件较便宜,因此,这是有利的。
双数据速率SDRAM存储器(DDR SDRAM)能够在每个时钟周期传输N比特数据而仅仅使用外部存储器总线接口上的N/2个数据引脚。
以SDRAM形式的具有多个存储体的外部存储器104通常工作在本领域的技术人员所周知的两个数据传输工作模式的其中之一-页面模式和突发模式。在页面工作模式中,使用单个SDRAM事务可传输多达在预定SDRAM存储体内的预定行中驻留的所有数据元素。然而,传输少于在预定行中驻留的所有数据元素需要明确的终止指令。在突发工作模式中,在单个SDRAM事务中可传输驻留在SDRAM存储体页面中有限数量的数据元素-称为突发尺寸。然而,传输少于突发尺寸的数据元素需要明确的终止指令。对于典型的SDRAM而言,突发尺寸在长度上为4、8或16个数据元素。
外部存储器事务典型地由两部分组成:事务设置开销和事务数据传输。事务设置开销包括外部存储器104的预充电和用于使存储器电路104准备好读/写访问的激活操作。当然,这些操作的必要性依赖于SDRAM内将要向其传输数据或已经从其传输了数据的存储体的现有状态。事务数据传输包括SDRAM读或写操作。在下面的例子中将使用以8个数据元素-burst_size(突发尺寸)=8-进行数据传输的突发工作模式。
将芯片内地址“A”从SOC的统一内存架构(UMA)映射到SDRAM地址是由存储体地址(BA)、行地址(RA)和列地址(CA)定义的。将芯片内地址映射到SDRAM地址严重地影响了进出SDRAM 104的带宽效率。芯片内地址到SDRAM地址的有效映射确定了SDRAM事务设置开销可以对某些芯片内事务类型隐藏的程度。因此,如果进行了有效映射,那么就同步地向/从外部存储器传输数据,而同时设置另一个外部存储器事务。
例如,一种芯片内事务可能偏爱某种SDRAM地址映射,另一种芯片内事务可能偏爱一种不同的SDRAM地址映射。典型地,当芯片内事务引用的数据元素的地址位于某个存储器存储体105a的同一行中(限制预充电和激活操作的次数最大为1)时,或者当芯片内事务引用的数据元素位于不同的存储体中(允许事务设置和事务数据传输操作的重叠)时,能够获得最好的性能,即最优效率。
图2和图3说明了两个不同的现有技术地址映射方案。图2说明了使用8数据元素存储器存储体交织的SDRAM地址映射,图3说明了使用1024数据元素存储器存储体交织的SDRAM地址映射。在这些例子的两种情况下,使用了12位行地址(4096行)和10位列地址(1024列)。
在现有技术图2中,连续的8个数据元素系列位于外部存储器104的不同的存储器存储体中。在现有技术图3中,连续的8个数据元素系列位于相同的存储器存储体中。在这种情况下,一旦一个存储器存储体的行是满的,后续的数据元素被写到下一个存储器存储体的行。
对于图2,使用12位RA和10位CA(8字节交织)来应用下列的映射方案:
BA=A[4:3]
RA=A[23:12]
CA={A[11:5],A[2:0]}
对于图3,使用12位RA和10位CA(1024字节交织)来应用下列的映射方案:
BA=A[10:11]
RA=A[23:12]
CA=A[9:0]
两种映射方案在切换到相同存储体的下一行之前完全填充存储体的一行(对于存储体105a-105d)。这可以通过以下实事得以反映,即使用比列地址高的芯片内地址“A”的有效地址位来构建行地址。
例如,一个芯片内事务正请求位于芯片内地址从地址“A”开始的32个数据元素,这是32个对齐的数据元素。外部存储控制器102将芯片内事务分成8数据元素(突发尺寸)的4个SDRAM事务,即数据元素[A,A+7]、[A+8,A+15]、[A+16,A+23]和[A+24,A+31]。
在图2所示的SDRAM映射中,SDRAM事务访问不同的存储器存储体。结果,通过将稍后SDRAM事务的预充电和激活操作与先前SDRAM事务的数据传输重叠,来在一定程度上隐藏SDRAM事务设置开销,从而导致更高的带宽效率。由于32个数据元素对齐的限制,假设所有这些芯片内事务都遵循相同的存储器存储体访问方式,由稍后芯片内事务产生的事务设置与由先前芯片内事务产生的数据传输重叠,从而增加了带宽效率。
在图3的SDRAM映射中,4个SDRAM事务访问相同的存储器存储体105a。由于32个数据元素对齐的限制和存储器存储体行的大小是32个数据元素的整数倍的假设,4个SDRAM事务访问一个存储体内相同的行。其结果是,由于对于所有4个SDRAM事务最多只需执行一次预充电和激活操作,因而限制了SDRAM事务开销,从而导致高的带宽效率。但是,在这种情况中,由稍后芯片内事务产生的事务设置开销与由先前芯片内事务产生的数据传输的重叠必然是不可能的。假设芯片内事务的起始地址是统一分布的,因为在SDRAM存储器中存在4个存储器存储体,因此有25%的几率使得后续的事务映射到相同的存储体上。后续的芯片内事务映射到相同存储体的相同行上的几率很小。因此,由稍后芯片内事务产生的事务设置开销与由先前芯片内事务产生的数据传输重叠的可能性变得小于图2的前一个映射。换句话说,第二个映射方案(图3)具有比第一个映射方案(图2)更低的带宽效率。
  交织   带宽效率
  8163264128256512102420484096   89.987.381.881.682.281.481.581.781.881.1
表格1
针对不同存储体交织数量的32个数据元素对齐事务的带宽效率
在表格1中给出了使用工作在200MHz频率上的DDR SDRAM模拟不同存储体交织数量得到的结果。注意1024字节交织(81.7%)相对于8字节交织(89.9%)的较低效率。
除了线性事务,芯片内器件可能生成二维事务。二维事务对于执行视频运动估计和补偿功能的视频加速器是典型的,但不限于此。一个芯片内二维事务的例子是请求位于芯片内地址从芯片内地址“A”处开始的24乘5的数据元素块。所述块具有24的线尺寸,因而请求5条线。二维事务具有与其关联的一个跨距,用以指示事务内连续的线之间的间距。假设一个2048的跨距,上面指出的二维事务请求在地址[A,A+23]、[A+2048,A+2071]、[A+4096,A+4119]、[A+6144,A+6167]和[A+8192,A+8215]处的数据元素。外部存储控制器将芯片内事务分成8个或更少数据元素的多个SDRAM事务,在本例中8个数据元素是突发尺寸。使用等于4的起始地址“A”,外部存储控制器生成下列外部事务:对于第一条线,[4,7]、[8,15]、[16,23]、[24,27],以及对于第二条线,[2052,2055]、[2056,2063]、[2064,2071]、[2072,2075]等等。每条线导致4个外部事务,这些事务的第一和最后一个传输4个数据元素。
在现有技术图2的SDRAM映射中,我们的二维SDRAM事务访问多个SDRAM存储体,并且可能访问一个SDRAM存储体内的多个行。结果,SDRAM事务开销很大,因为预充电和激活操作都需要被执行,这导致低的带宽效率。
在现有技术图3的SERAM映射中,我们的二维SDRAM事务访问多个SDRAM存储体,并且可能访问一个SDRAM存储体内的多个行。虽然该映射不同于图2的映射,由于事务跨距的、非顺序的特性,出现了相似的问题。结果,SDRAM事务开销很大,因为预充电和激活操作都需要被执行,这导致低的带宽效率。
不幸的是,对于两个映射(图2和图3),二维事务具有较差的带宽效率。在表格2中给出了模拟不同存储体交织数量的结果。这些数据是使用工作在200MHz频率上的DDR SDRAM获得的。
  交织   带宽效率
  8163264128256512102420484096   60.461.862.963.063.162.264.463.262.963.1
表格2
针对不同存储体交错数量,二维24乘5
事务(2048元素跨距)的带宽效率
注意针对1024字节交织(63.2%)和8字节交织(60.4%),二维24乘5事务(2048元素跨距)的较低效率。
根据本发明的一个实施例,提出了一种提高二维事务效率的地址映射。对于该地址映射,给出的跨距为2N,其中N是整数,并且2N大于或等于4*burst_size。在本例中,N≥5,因为25≥(4*8)=(4*burst_size)。
根据在图5中所示的装置和在图4中说明的方法步骤,显示了本发明的一个实施例。芯片内器件508的事务生成对单数据线507的存储器401的请求,该存储器401在外部存储器510内的一个位置处具有数据元素存储,该位置由芯片内地址“A”管理。芯片内器件508将用于存储器507的单数据线提供给外部存储控制器506。芯片内器件508和外部存储控制器506都位于芯片内,即位于芯片内边界509内。外部存储控制器506将用于存储器507的数据线分割402成数据区段(504和505)。每个区段包括的数据元素少于用于填充包含在以SDEAM形式的外部存储器510中存储体511内的数据线501或503的数据元素的数量。使用尺寸小于或等于3*burst_size的数据线,外部存储控制器506为单数据线(504和505)生成外部存储器请求,单数据线(504和505)访问不同的存储器存储体(511和512)。数据元素(504或505)的每个数据区段存储403在位于外部存储器510内的不同数据线(501和502和503)和外部存储器510的不同存储体(511和512)内的相同数据线(501或502)的其中之一。BA、CA和RA管理这些数据区段的位置。BA、CA和RA是外部存储器特定的,并且如下所述是根据芯片内地址“A”确定的。另外,BA、CA和RA依赖于用于由外部存储控制器506将数据区段504和505分开的跨距值。
当然,为了从外部存储器510读取数据元素,可以相反地执行前面提到的过程。由此,外部存储控制器506访问外部存储器510并读取位于其上的数据区段504和505。一旦读取,将数据区段504和505组合成芯片内器件508使用的单数据线507。外部存储器控制器仍然使用BA、CA和RA访问外部存储器,用以在将外部存储器中的数据区段重新组合成芯片内器件508使用的单数据线507之前对其定位。
根据本发明的一个实施例,该过程有利地允许将事务设置和数据传输操作重叠。与此同时,外部存储器对不同数据线的请求遵循相同的存储器存储体访问图案。
使用1024个数据元素(N=10)的跨距,提出下列用于定位数据区段504和505的映射方案,用于使用12位行地址和10位列地址在外部存储器510中存储和读回:
BA=A[4:3]
RA={A[23:17],A[9:5]}
CA={A[16:10],A[2:0]}
该映射方案确保了相距1024个数据元素即跨距尺寸的线可能被映射到相同的行。例如,如果事务的第一条线起始于地址2048(BA=0,RA=0,CA=0x010),那么事务的第二条线起始于地址3072(BA=0,RA=0,CA=0x018),事务的第三条线起始于地址4096(BA=0,RA=0,CA=0x020)等等。因为相同的行被用于二维事务的多个线,所以限制了事务设置开销。
对于突发模式交织,使用下列映射模式:
BA=A[4:3]
RA=A[23:12]
CA={A[11:5],A[2:0]}
在该情况下,对于突发模式交织,事务的第一条线位于地址2048(BA=0,RA=0,CA=0x800),并且事务的第二条线位于地址3072(BA=0,RA=0,CA=0xc00)。但是,在地址4096(BA=0,RA=0,CA=0x000)处事务的第三条线位于不同的行,导致了事务设置开销。
使用2048个数据元素(N=11)的跨距,提出下列用于定位数据区段504和505的映射方案,用于使用12位行地址和10位列地址在外部存储器510中存储和读回:
BA=A[4:3]
RA={A[23:18],A[10:5]}
CA={A[17:11],A[2:0]}
对于该方案,相同的行用于二维事务的多条线。对于两种跨距尺寸,提出的映射方案对于所有存储体,在切换到下一行502之前,不会完全填满某个行501,这和两种现有技术映射方案(图2和图3)一样。这可以通过以下实事得以反映,即使用芯片内地址“A”的一些地址位来构建行地址,这些位的有效性低于用来构建列地址的那些地址位。
在表格3中给出了模拟2048个数据元素跨距数量的结果。这些数据是使用工作在200MHz频率上的DDR SDRAM获得的。
  交织   带宽效率
  75.9
表格3
使用提出的映射方案的二维24乘5
事务(2048元素跨距)的带宽效率
所提方案75.9%的效率显著地高于8字节交织(60.4%)和1024字节交织(63.2%)所获得的效率。因此,提出的映射方案优化了二维2048跨距尺寸事务的带宽效率并为许多不同类型的事务提供了功能正确性。
所提出的用于二维事务的优化映射方案获得了比传统映射方案显著提高的带宽效率。这种改进的带宽效率允许系统配被工作在较低频率的存储器部件。传统交织映射方案提供的最大带宽效率为64.4%,然而根据本发明的实施例的映射方案提供的带宽效率为75.9%。结果,对于32位200MHz DDR存储器,获得了200*106*32*2*0.759≥9.7*109位/秒的有效带宽,并且传统方案将要求存储器部件工作在9.7*109/(32*2*0.644)~235MHz,当然假设了在这个频率上可获得64.4%的效率。本领域的技术人员都知道,典型地,频率较高的存储器部件通常比频率较低的部件更加昂贵,特别是当它们的用途在主流市场上不广泛时。
除了允许系统成本降低外,所提出的映射方案还允许SOC功能,这对于配备传统映射方案的系统来说是做不到的。当某个SOC功能要求一个9.7*109位/秒的有效带宽,并且存储器部件的最高可用频率为200MHz时,这将变得明显。正如前面计算所显示的,传统方案不能够在200MHz上提供所需的带宽。诸如那些用于高清晰MPEG-2视频支持的现代SOC使用二维事务并因而典型地需要大量的存储器带宽。
除了地址映射方案的效率和存储器部件的频率外,另一个获得高存储器带宽的方式是增加数据总线尺寸。从32位数据总线迁移到64位数据总线当然使存储器带宽增倍。但是,这种获得更高存储器带宽的解决方案要求至少32个新的数据总线引脚,这些要求直接转化成了更高的芯片包装成本以及附加的制造复杂度。
所提出的方案有利地降低了系统成本,因为这要么降低了存储器部件的成本,要么降低了与模具关联的包装成本。另外,系统支持SOC功能,这是传统现有技术方案所不能做到的。
当然,所提出的映射方案是用于二维事务的,它仍然能保证不同类型事务的功能正确性,但是效率可能下降。就是说,使用与这里给出的类似的思想,可以将该映射方案外推/一般化到不同跨距值,这对于本领域的技术人员是显而易见的。
在不偏离本发明的精神或范围的情况下,可设想出多个其它的实施例。

Claims (17)

1.一种在外部存储器中存储数据的方法,包括步骤:提供数据用于存储在外部存储器中(401);将用于存储的数据分割(402)成数据区段,每个区段包括的数据元素少于用于填充包含在外部存储器中的一个存储体内的数据线的数据元素的数量;以及,将数据元素的每个区段存储(403)在位于外部存储器内的不同数据线和外部存储器的不同存储体内的相同数据线的其中之一内。
2.根据权利要求1的存储数据的方法,其中数据元素的每个区段由具有2N的值的跨距彼此分隔,其中N是不为0的整数。
3.根据权利要求2的存储数据的方法,其中2N的值大于4倍的用于访问外部存储器的突发尺寸。
4.根据权利要求1的存储数据的方法,包括步骤:提供外部存储控制器用于执行分割步骤。
5.根据权利要求1的存储数据的方法,其中外部存储器包括同步动态随机存取存储器(SDRAM)。
6.根据权利要求4的存储数据的方法,包括步骤:提供外部存储控制器以执行从外部存储器读取数据元素的步骤,
7.根据权利要求6的存储数据的方法,其中在从外部存储器读取数据元素的步骤期间,外部存储控制器生成向外部存储器的对单个线的单个请求,这导致要从外部存储器取回多个数据元素,数据元素的数量大于用来填充位于外部存储器中存储体内的线的数据元素数量。
8.根据权利要求7的存储数据的方法,其中在从外部存储器读取单个线的步骤期间,在外部存储器中多于一个存储体被访问。
9.根据权利要求6的存储数据的方法,其中在从外部存储器读取数据元素和将数据元素存储到外部存储器的步骤期间,外部存储控制器包括步骤:事务设置和事务数据传输。
10.根据权利要求4的存储数据的方法,包括步骤:向外部存储控制器提供一个芯片内地址;以及,使用该芯片内地址来确定存储体地址、行地址和列地址,其中存储体地址被用于在存储器中寻址存储体,并且行地址被用于访问包含在存储体内的线。
11.根据权利要求10的存储数据的方法,包括步骤:使用来自芯片内地址的地址位的第一集合和第二集合,根据芯片内地址构建行地址;和使用来自芯片内地址的地址位的第三集合和第四集合,根据芯片内地址构建列地址,其中地址位的第一集合比地址位的第三集合的有效性高,并且地址位的第二集合比地址位的第四集合的有效性高。
12.一种用于将芯片内事务映射到芯片外事务的装置,包括:第一存储器存储体(511),该第一存储器存储体具有以数据线(501,502)形式的用于存储多个数据元素的第一存储器位置;第二存储器存储体(512),该第二存储器存储体具有以数据线形式的用于存储相同数量数据元素的第二存储器位置;以及,存储控制器电路(506),该存储控制器电路用于接收用于存储的数据元素的数据线并用于将数据元素的数据线分割成数据区段(504,505),每个区段包括的数据元素少于用于填充包含在外部存储器中的第一存储体和第二存储体内的数据线的数据元素的数量。
13.根据权利要求12的装置,包括:一种支持跨距的存储器访问电路,该跨距将存储在外部存储器存储体中的每个数据区段进行分隔,该跨距的值为2N,其中N是不为0的整数。
14.根据权利要求12的装置,包括:一种支持跨距的存储器访问电路,该跨距将存储在外部存储器存储体中的每个数据区段进行分隔,该跨距的值为2N,其中N是不为0的整数,以及一种支持突发尺寸的存储器访问电路,其中跨距的值是突发尺寸。
15.根据权利要求13的装置,其中外部存储器包括同步动态随机存取存储器(SDRAM)。
16.根据权利要求13的装置,其中外部存储器包括一个芯片内地址存储位置,其中存储在该芯片内地址存储位置内的数据被用于确定在访问外部存储器中使用的存储体地址、行地址和列地址中的至少一个。
17.一种写数据元素线的方法,包括步骤:提供第一存储器存储体,该第一存储器存储体具有以数据线形式、用于存储多个数据元素的第一存储器位置;提供第二存储器存储体,该第二存储器存储体具有以数据线形式、用于存储相同数量的数据元素的第二存储器位置;将数据元素的数据线分割成数据区段,每个区段包括的数据元素少于用来填充位于外部存储器中的各第一存储体和第二存储体内的数据线的数据元素的数量;将数据元素的第一区段写到第一存储器存储体内的第一存储器位置;在完全填充第一存储器位置之前终止将第一区段数据元素写到第一存储器位置;切换到第二存储器存储体;将数据元素的第二区段写到第二存储器存储体内的第二存储器位置;以及,在完全填充第二存储器位置之前终止将第二区段数据元素写到第二存储器位置。
CNB2003801036369A 2002-11-20 2003-11-14 存储数据的方法、映射事务的装置和写数据线的方法 Expired - Fee Related CN100550189C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US42754202P 2002-11-20 2002-11-20
US60/427,542 2002-11-20

Publications (2)

Publication Number Publication Date
CN1714401A CN1714401A (zh) 2005-12-28
CN100550189C true CN100550189C (zh) 2009-10-14

Family

ID=32326556

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2003801036369A Expired - Fee Related CN100550189C (zh) 2002-11-20 2003-11-14 存储数据的方法、映射事务的装置和写数据线的方法

Country Status (9)

Country Link
US (1) US7221612B2 (zh)
EP (1) EP1568036B1 (zh)
KR (1) KR20050085056A (zh)
CN (1) CN100550189C (zh)
AT (1) ATE406658T1 (zh)
AU (1) AU2003280051A1 (zh)
DE (1) DE60323259D1 (zh)
TW (1) TW200418046A (zh)
WO (1) WO2004047112A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102662886A (zh) * 2012-04-07 2012-09-12 山东华芯半导体有限公司 SoC地址映像的优化方法

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9087036B1 (en) 2004-08-12 2015-07-21 Sonics, Inc. Methods and apparatuses for time annotated transaction level modeling
US8407433B2 (en) * 2007-06-25 2013-03-26 Sonics, Inc. Interconnect implementing internal controls
TWI254947B (en) * 2004-03-28 2006-05-11 Mediatek Inc Data managing method and data access system for storing all management data in a management bank of a non-volatile memory
US8868397B2 (en) * 2006-11-20 2014-10-21 Sonics, Inc. Transaction co-validation across abstraction layers
US8438320B2 (en) * 2007-06-25 2013-05-07 Sonics, Inc. Various methods and apparatus for address tiling and channel interleaving throughout the integrated system
KR101673233B1 (ko) 2010-05-11 2016-11-17 삼성전자주식회사 트랜잭션 분할 장치 및 방법
US8868826B2 (en) 2010-05-20 2014-10-21 Cisco Technology, Inc. Facilitating communication between memory devices and CPUs
CN101883041B (zh) * 2010-06-29 2015-07-22 中兴通讯股份有限公司 存储转发系统及其报文存储方法
US8972995B2 (en) 2010-08-06 2015-03-03 Sonics, Inc. Apparatus and methods to concurrently perform per-thread as well as per-tag memory access scheduling within a thread and across two or more threads
CN104156907A (zh) * 2014-08-14 2014-11-19 西安电子科技大学 一种基于fpga的红外预处理存储系统及存储方法
KR102308780B1 (ko) * 2014-10-31 2021-10-05 삼성전자주식회사 캐시 메모리의 관리 방법 및 그 장치
US9996350B2 (en) * 2014-12-27 2018-06-12 Intel Corporation Hardware apparatuses and methods to prefetch a multidimensional block of elements from a multidimensional array
CN108228492B (zh) * 2016-12-21 2020-11-17 深圳市中兴微电子技术有限公司 一种多通道ddr交织控制方法及装置
US11231769B2 (en) 2017-03-06 2022-01-25 Facebook Technologies, Llc Sequencer-based protocol adapter
WO2018165111A1 (en) 2017-03-06 2018-09-13 Sonics, Inc. An operating point controller for circuit regions in an integrated circuit

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4546451A (en) * 1982-02-12 1985-10-08 Metheus Corporation Raster graphics display refresh memory architecture offering rapid access speed
US5148524A (en) * 1988-11-29 1992-09-15 Solbourne Computer, Inc. Dynamic video RAM incorporating on chip vector/image mode line modification
JP3400824B2 (ja) * 1992-11-06 2003-04-28 三菱電機株式会社 半導体記憶装置
US5453957A (en) * 1993-09-17 1995-09-26 Cypress Semiconductor Corp. Memory architecture for burst mode access
JP3904244B2 (ja) * 1993-09-17 2007-04-11 株式会社ルネサステクノロジ シングル・チップ・データ処理装置
EP1195770B1 (en) * 2000-10-06 2009-05-27 STMicroelectronics S.r.l. Internal addressing structure of a semiconductor memory

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102662886A (zh) * 2012-04-07 2012-09-12 山东华芯半导体有限公司 SoC地址映像的优化方法

Also Published As

Publication number Publication date
KR20050085056A (ko) 2005-08-29
CN1714401A (zh) 2005-12-28
DE60323259D1 (de) 2008-10-09
WO2004047112A1 (en) 2004-06-03
US7221612B2 (en) 2007-05-22
US20060047890A1 (en) 2006-03-02
EP1568036A1 (en) 2005-08-31
ATE406658T1 (de) 2008-09-15
AU2003280051A1 (en) 2004-06-15
EP1568036B1 (en) 2008-08-27
TW200418046A (en) 2004-09-16

Similar Documents

Publication Publication Date Title
CN100550189C (zh) 存储数据的方法、映射事务的装置和写数据线的方法
US11797227B2 (en) Memory controller for micro-threaded memory operations
CN1977336B (zh) 改善支持多存储器访问延迟的计算机存储器系统的性能的系统和方法
US7552292B2 (en) Method of memory space configuration
CN1841553A (zh) 具有高速操作的存储器芯片架构
US7840744B2 (en) Rank select operation between an XIO interface and a double data rate interface
US20180336092A1 (en) Memory module and operation method of the same
CN106782633B (zh) 动态随机存取存储器,储存数据及读取和刷新的方法
KR102623702B1 (ko) 메모리 버퍼를 포함하는 메모리 시스템
US20020145920A1 (en) Semiconductor memory device
US6412039B1 (en) Cross-bank, cross-page data accessing and controlling system
US6021482A (en) Extended page mode with a skipped logical addressing for an embedded longitudinal redundancy check scheme
CN107369473B (zh) 存储系统及其操作方法
CN115543869A (zh) 多路组相连高速缓冲存储器及其访问方法、计算机设备
CN115016981A (zh) 存储区域的设置方法、数据读取、写入方法及相关装置
TWI721660B (zh) 控制資料讀寫裝置與方法
US6400640B2 (en) Method for memory addressing
US6834334B2 (en) Method and apparatus for address decoding of embedded DRAM devices
CN111736760B (zh) 一种动态随机存储方法及系统
CN112397112A (zh) 存储器、存储器芯片以及存储器数据存取方法
JPH10222459A (ja) 機能メモリとそれを用いたデータ処理装置
JP2003505762A (ja) 改良されたメモリシステムおよび方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
ASS Succession or assignment of patent right

Owner name: NXP CO., LTD.

Free format text: FORMER OWNER: KONINKLIJKE PHILIPS ELECTRONICS N.V.

Effective date: 20070810

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

Effective date of registration: 20070810

Address after: Holland Ian Deho Finn

Applicant after: NXP B.V.

Address before: Holland Ian Deho Finn

Applicant before: Koninklijke Philips Electronics N.V.

C14 Grant of patent or utility model
GR01 Patent grant
ASS Succession or assignment of patent right

Owner name: KALAI HANXILE CO., LTD.

Free format text: FORMER OWNER: KONINKL PHILIPS ELECTRONICS NV

Effective date: 20120116

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

Effective date of registration: 20120116

Address after: American Delaware

Patentee after: Callehan Tiele Co.,Ltd.

Address before: Holland Ian Deho Finn

Patentee before: NXP B.V.

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

Granted publication date: 20091014

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