CN103514100A - 包含线性地址重映射逻辑的存储系统和芯片上系统 - Google Patents

包含线性地址重映射逻辑的存储系统和芯片上系统 Download PDF

Info

Publication number
CN103514100A
CN103514100A CN201310242488.4A CN201310242488A CN103514100A CN 103514100 A CN103514100 A CN 103514100A CN 201310242488 A CN201310242488 A CN 201310242488A CN 103514100 A CN103514100 A CN 103514100A
Authority
CN
China
Prior art keywords
address
linear
remap
modem processor
access region
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
Application number
CN201310242488.4A
Other languages
English (en)
Other versions
CN103514100B (zh
Inventor
赵东植
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.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics Co Ltd
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 Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of CN103514100A publication Critical patent/CN103514100A/zh
Application granted granted Critical
Publication of CN103514100B publication Critical patent/CN103514100B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • G06F3/0634Configuration or reconfiguration of storage systems by changing the state or mode of one or more devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/06Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
    • G06F12/0607Interleaved addressing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/78Architectures of general purpose stored program computers comprising a single central processing unit
    • G06F15/7807System on chip, i.e. computer system on a single chip; System in package, i.e. computer system on one or more chips in a single package
    • G06F15/781On-chip cache; Off-chip memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • G06F3/0611Improving I/O performance in relation to response time
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0625Power saving in storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/06Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
    • G06F12/0646Configuration or reconfiguration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1016Performance improvement
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1016Performance improvement
    • G06F2212/1024Latency reduction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1028Power efficiency
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Memory System (AREA)
  • Stored Programmes (AREA)

Abstract

一芯片上系统被连接到第一存储设备和第二存储设备。该芯片上系统包括被配置为控制对第一和第二存储设备的交织存取操作的存储器控制器。一调制解调器处理器被配置为提供用于存取第一或第二存储设备的地址。一线性地址重映射逻辑被配置为重映射从该调制解调器处理器接收的地址并且向该存储器控制器提供重映射地址。响应于接收重映射地址,该存储器控制器对第一或第二存储设备执行线性存取操作。

Description

包含线性地址重映射逻辑的存储系统和芯片上系统
对相关申请的交叉引用
本申请要求于2012年6月19日向韩国特许厅提交的韩国专利申请No.10-2012-0065624的优先权,通过引用将其全部内容合并于此。
技术领域
这里所描述的本发明构思涉及存储系统,并且更具体地,涉及包含线性地址重映射逻辑的存储系统和芯片上系统(SoC)。
背景技术
存储系统通常可以包括两个或更多处理器。例如,移动系统可以包括调制解调器和应用处理器、或多媒体处理器。包含两个或更多处理器的存储系统可能需要至少两个或更多存储设备以便独立地服务于多个处理器。
以上示例中,可以为调制解调器配备用作代码存储器的NOR快闪存储器以及用于代码执行的DRAM。可以为应用处理器配备用于存储代码和数据的NAND快闪存储器以及用于执行代码的DRAM。可以通过UART(通用异步接收器发送器)、SPI(串行外围接口)、或SRAM接口在调制解调器与应用处理器之间传送代码和数据。
同时,为了支持移动系统的操作,存储系统可以通过两个或更多DRAM执行数据交织操作。在这样的交织操作中,存储系统可以交替地存取两个或更多DRAM。这具有提高系统性能的效果。
发明内容
采用交织作为提高性能的方式的当前存储系统也会消耗相对更多的电能。在一些情形下,可能能够仅存取单个DRAM而非多个DRAM用于执行操作,其对系统性能不良影响极小或者没有。在这样的情形下,使用线性存取方法而不是交织方法将更为有利。本发明构思的方法和系统提供在使用多个存储设备的存储系统中对电能的高效使用。
根据本发明构思的实施例,一种被连接到第一存储设备和第二存储设备的芯片上系统包括:存储器控制器,被配置为控制对第一和第二存储设备的交织存取操作;调制解调器处理器,被配置为存取第一或第二存储设备提供地址;以及线性地址重映射逻辑,被配置为重映射从调制解调器处理器接收的地址并且向存储器控制器提供重映射地址,其中,响应于接收重映射地址,存储器控制器对第一或第二存储设备执行线性存取操作。
在一些实施例中,线性地址重映射逻辑从调制解调器处理器接收地址,响应于控制信号而选择性地重映射调制解调器处理器的地址,并且向存储器控制器提供重映射地址。
在一些实施例中,将重映射地址划分为交织存取区域和线性存取区域,其中,通过改变线性存取区域的最高有效位的位置来实现由线性地址重映射逻辑执行的地址重映射操作。
在一些实施例中,线性地址重映射逻辑基于线性存取区域的基地址和尺寸确定从调制解调器处理器输入的地址是否属于线性存取区域。
在一些实施例中,当从调制解调器处理器输入的地址大于等于线性存取区域的基地址并且小于线性存取区域的基地址与尺寸之和时,线性地址重映射逻辑判定从调制解调器处理器输入的地址属于线性存取区域。
在一些实施例中,当从调制解调器处理器输入的地址小于线性存取区域的基地址或者大于等于线性存取区域的基地址与尺寸之和时,线性地址重映射逻辑判定从调制解调器处理器输入的地址属于交织存取区域。
根据本发明构思的实施例,一种存取被连接到芯片上系统的第一和第二存储设备的方法包括:从芯片上系统的调制解调器处理器接收用于存取第一或第二存储器的地址;确定该地址是对应于交织存取区域还是线性存取区域;以及根据该确定结果对第一和第二存储设备执行线性存取操作或者交织存取操作。
在一些实施例中,芯片上系统进一步包括线性地址重映射逻辑,其被配置为重映射从调制解调器处理器接收的地址并且向存储器控制器提供重映射地址。
在一些实施例中,将重映射地址划分为交织存取区域和线性存取区域,并且其中,通过改变线性存取区域的最高有效位的位置来执行由线性地址重映射逻辑执行的地址重映射操作。
在一些实施例中,线性地址重映射逻辑基于线性存取区域的基地址和尺寸来确定从调制解调器处理器输入的地址是否属于线性存取区域。
根据本发明构思的实施例,一种存储系统包括:存储器控制器,被配置为控制对第一和第二存储设备的交织存取操作;调制解调器处理器,被配置为提供用于存取第一或第二存储设备的地址;以及线性地址重映射逻辑,被配置为重映射从调制解调器处理器接收的地址以向存储器控制器提供重映射地址,其中,响应于接收重映射地址,存储器控制器对第一或第二存储设备执行线性存取操作。
在一些实施例中,将重映射地址划分为交织存取区域和线性存取区域。
在一些实施例中,通过改变线性存取区域的最高有效位的位置来执行线性地址重映射逻辑的地址重映射操作。
在一些实施例中,线性地址重映射逻辑基于线性存取区域的基地址确定从调制解调器处理器输入的地址是否属于线性存取区域。
在一些实施例中,当从调制解调器处理器输入的地址大于等于线性存取区域的基地址并且小于线性存取区域的基地址与尺寸之和时,线性地址重映射逻辑判定从调制解调器处理器输入的地址属于线性存取区域。
在一些实施例中,当从调制解调器处理器输入的地址小于线性存取区域的基地址或者大于等于线性存取区域的基地址与尺寸之和时,线性地址重映射逻辑判定从调制解调器处理器输入的地址属于交织存取区域。
在一些实施例中,所述线性存取区域包括一个或多个线性存取区域。
在一些实施例中,存储系统进一步包括中央处理单元,并且其中在芯片上系统上实现中央处理单元、存储器控制器、调制解调器处理器、以及线性地址重映射逻辑。
在一些实施例中,存储系统进一步包括中央处理单元,并且其中,在芯片上系统上实现中央处理单元、存储器控制器、以及线性地址重映射逻辑,以及其中,在调制解调设备上实现调制解调器处理器。
根据本发明构思的实施例,一种存储系统包括:存储器控制器,被配置为控制对第一和第二存储设备的交织存取操作;调制解调器处理器,被配置为提供用于存取第一或第二存储设备的地址;以及线性地址重映射逻辑,被配置为从调制解调器处理器接收地址,根据从中央处理单元接收的控制信号选择性地重映射从调制解调器处理器接收的地址,并且向存储器控制器提供重映射地址,其中,响应于重映射地址,存储器控制器对第一或第二存储设备执行线性存取操作。
在一些实施例中,将重映射地址划分为交织存取区域和线性存取区域,并且其中,通过改变线性存取区域的最高有效位的位置来执行线性地址重映射逻辑的地址重映射操作。
在一些实施例中,线性地址重映射逻辑基于线性存取区域的基地址和尺寸来确定从调制解调器处理器输入的地址是否属于线性存取区域。
在一些实施例中,当从调制解调器处理器输入的地址大于等于线性存取区域的基地址并且小于线性存取区域的基地址与尺寸之和时,线性地址重映射逻辑判定从调制解调器处理器输入的地址属于线性存取区域。
在一些实施例中,当从调制解调器处理器输入的地址小于线性存取区域的基地址或者大于等于线性存取区域的基地址与尺寸之和时,线性地址重映射逻辑判定从调制解调器处理器输入的地址属于交织存取区域。
根据本发明构思的实施例,一种存储系统包括:存储器控制器,与多个存储设备通信,该存储器控制器被配置为根据交织存取操作控制多个存储设备;第一处理器,产生用于存取多个存储设备的存储器位置的地址信号;线性地址重映射单元,接收地址信号,并且,作为响应,产生重映射地址信号;存储器控制器,接收重映射地址信号,并且,作为响应,根据线性存取操作控制多个存储设备。
在一些实施例中,存储器控制器、第一处理器、以及线性地址重映射单元构成芯片上系统(SOC),其中,多个存储设备在SOC外部。
在一些实施例中,响应于控制信号,线性地址重映射单元决定是产生重映射地址信号还是传递原始地址信号。
在一些实施例中,由第二处理器产生所述控制信号,其中,第一处理器包括调制解调器处理器,并且其中,第二处理器包括中央处理单元(CPU)。
在一些实施例中,线性地址重映射单元修改位于地址信号的信息存取区域中的原始地址信号的第一部分,将线性存取区域的最高有效位移动到最低有效位,并且沿着朝向最高有效位的方向移动比最低有效位重要的位,以产生重映射地址信号。
在一些实施例中,位于地址信号的交织地址区域中的原始地址信号的第二部分在重映射地址信号中保持不变。
根据本发明构思的实施例,当通过CONFIG信号选择交织模式时,通过忽略原始地址中的一些ILB位,至少两个存储器端口能够同时写较大数据到相应的存储器端口或者从相应的存储器端口读较大数据以增加数据带宽。另一方面,在线性寻址模式中,仅仅被选择的端口能够操作并且与交织模式相比降低了功耗。
附图说明
通过参照附图的以下描述,以上和其他对象和特点将变得显而易见,其中,全部附图中相同的引用数字指代相同的部件,除非另有指明,并且其中
图1是示意性示出根据本发明构思的实施例的存储系统的框图;
图2是示意性示出图1所示的类型的存储系统的交织存取操作的框图;
图3是用于描述根据图1所示的类型的存储系统的地址的交织存取方法的表;
图4是示意性示出根据本发明构思的实施例的被配置为执行部分交织存取操作的存储系统的框图;
图5是示意性示出根据本发明构思的实施例的图4所示的线性地址重映射逻辑的示例实施例的框图;
图6是示出根据本发明构思的实施例的图4的线性地址重映射逻辑的操作地址的范围的概念图;
图7是示意性示出根据本发明构思的实施例的图4和图5中线性地址重映射逻辑的地址重映射方法的图;
图8是示意性示出根据本发明构思的实施例的图4所示的类型的存储系统的部分交织存取操作的框图;
图9是用于描述根据本发明构思的实施例的图4所示的类型的存储系统的部分交织存取操作的流程图;
图10是示出根据本发明构思的实施例的其中存在两个线性存取区域的示例的概念图;
图11是用于根据特殊功能寄存器(SFR)的设置产生控制重映射信号的CONFIG信号的框图;
图12是示意性示出根据本发明构思的实施例的其中调制解调器芯片在芯片上系统外部并且与之通信的存储系统的框图;以及
图13是示出根据本发明构思的实施例的包括两个或更多存储设备的存储系统的线性存取操作的表达的图。
具体实施方式
将参照附图详细描述实施例。然而,本发明构思可以以各种不同形式实现,并且不应当被解读为仅仅限定于示出的实施例。更确切地说,这些实施例被提供作为实例,以便本公开将是彻底和完全的,并且将本发明构思的构思完全地传达给本领域技术人员。因此,不描述与本发明构思的一些实施例有关的已知过程、元件和技术。除非相反说明,在整个附图和所写描述中,相同的参考编号指示相同的元件,并且因此将不重复描述。在图形中,为了清晰起见,可以夸大层和区域的尺寸和相对尺寸。
将理解,虽然术语“第一”、“第二”、“第三”等在这里可以被用于描述各种元件、组件、区域、层和/或片段,这些元件、组件、区域、层和/或片段不应当被这些术语限制。这些术语仅仅被用于区分一个元件、组件、区域、层或片段与另一个区域、层或片段。于是,在不脱离本发明构思教程的情况下,以下所讨论的第一元件、组件、区域、层或片段能够被称为第二元件、组件、区域、层或片段。
空间关系术语,例如,“之下”、“下面”、“低于”、“之上”、“上面”等等在这里可以被用于描述方便以描述如图所示的一个元件或特点与另一元件或特点的关系。将理解,空间相对术语在使用或操作中被意欲包括除了图形中所描述的方向之外的设备的不同方向。例如,如果图形中的设备被翻转,则被描述为在其他元件或特点“之下”的元件将被朝向其他元件或特点“之上”。于是,示例术语“之下”和“之上”能够包括上下两个方向。所述设备可以被朝向其他方向(被旋转90度或者在其他方向)并且因此解释这里所使用的空间相对描述符。此外,也将理解,当层被称为在两层“之间”时,它能够是在两层之间的仅仅一层,或者一个或多个交织层也可以存在。
这里所使用的术语仅仅是为了描述特定实施例,并且不是被意欲限制本发明构思。如这里所使用,单数形式“一个”、“所述”被意欲也包括复数形式,除非上下文清晰地指示相反。将进一步理解,术语“包括”,当在本说明书中使用时,规定存在所述的特点、整体、步骤、操作、元件和/或组件,但是不排除存在或增加一个或多个其他特点、整体、步骤、操作、元件、组件和/或其群组。如这里所使用,术语“和/或”包括一个或多个被关联列表条目的任意和所有组合。此外,术语“示范”意图指代示例或例示。
将理解,当元件或层被称为“位于之上”、“被连接到”、“被耦接到”、“邻近于”另一元件或层时,它能够被直接位于之上、被连接到、被耦接到、或者邻近于其他元件或层,或者可以存在中间元件或层。相反,当元件被称为“直接在之上”、“直接被连接到”、“直接被耦接到”或者“立即邻近于”另一元件或层时,没有中间元件或层存在。
除非被相反定义,这里所使用的所有术语(包括技术和科学术语)具有与被本发明构思所属领域普通技术人员所共同理解的含义。将进一步理解,术语,例如在一般使用词典中被定义的那些,应当被解释为与在相关技术和/或本说明书的上下文中的含义相一致的含义,并且不应当被解释以理想化或过分正式的意义,除非这里被定义表达如此。
根据本发明构思的实施例的存储系统可以执行交织存取操作,其中,应用处理器使用两个或更多存储设备(例如,DRAM)并且轮流存取存储设备的端口。本发明构思可以对两个或更多存储设备(例如,DRAM)执行交织存取操作,但是可以针对存储器的特定区域部分地执行线性存取操作。下面将描述根据本发明构思的实施例的存储系统的交织存取操作和部分线性存取操作。
图1是示意性示出根据本发明构思的实施例的存储系统的框图。参照图1,存储系统100可以包括第一存储设备111、第二存储设备112、以及在芯片上系统(SoC)上实现的应用处理器120。
应用处理器120可以包括用于控制第一和第二存储设备111和112的存储器控制器121、总线连接单元122、CPU123、多媒体处理器124、以及调制解调器处理器125。存储器控制器121可以通过第一端口存取第一存储设备111并且通过第二端口存取第二存储设备112。CPU123可以控制应用处理器120的整个操作。此外,CPU123可以控制诸如存储设备111和112的外围设备。本说明书中,术语“存储器”和“存储设备”是可交换的。
可以配置多媒体处理器124以控制诸如照相机、显示器等的多媒体设备。为了控制多媒体设备,多媒体处理器124可以根据交织存取配置来存取与应用处理器120连接的第一和第二存储设备111和112。例如,多媒体处理器124可以通过存储器控制器121交替地存取第一和第二存储设备111和112。
在芯片上系统上实现的调制解调器处理器125可以包括被配置为与基站或与其他通信设备执行无线通信的处理器。调制解调器处理器125可以存取服务于应用处理器120的第一存储设备111或第二存储设备112。此时,类似于多媒体处理器124,调制解调器处理器125可以在交织配置中存取第一存储设备111和第二存储设备112两者。例如,调制解调器处理器125可以通过存储器控制器121交替地存取第一和第二存储设备111和112。
图2是示意性示出图1所示的类型的存储系统的交织存取操作的框图。参照图2,存储器控制器121可以接收存储器存取地址ADDR,并且作为响应,通过第一和第二端口PORT1、PORT2对第一和第二存储设备111和112执行交织存取操作。
存储器控制器121可以通过第一端口向第一存储设备111写入数据或者通过第一端口从第一存储设备111读取数据。第一存储设备111可以配备电源和时钟用于存储器存取。存储器控制器121可以通过第二端口存取第二存储设备112。第二存储设备112可以配备电源和时钟。如上所述,响应于存储器存取地址ADDR,存储器控制器121可以对第一和第二存储设备111和112执行交织存取操作。
图3是用于描述根据图1所示的类型的存储系统的地址的交织存取方法的表。参照图3,存储器存取地址ADDR可以包括区块(chunk)位和交织位ILB。
图3的示例中,区块位位于最低有效位LSB侧,并且交织位ILB可以与区块位相邻。存储器控制器121(参照图2)可以响应于区块单元执行交织存取操作,并且可以响应于交织位ILB决定是通过第一端口PORT1还是第二端口PORT2(参见图2)存取存储器。如图3中所示,在示例实施例中,当交织位ILB是‘0’时可以选择第一端口,并且当交织位ILB是‘1’时可以选择第二端口。
这里,可以根据区块位的数量来确定交织操作的单元。例如,可以假设根据地址存储1字节数据。在该假设下,当区块位的数量是2时,可以使用4字节单元执行交织存取操作。当区块位的数量是m时,可以使用2m字节单元执行交织存取操作。
同时,可以根据正在存取的存储设备的数量来确定交织位的数量。例如,当存储设备的数量是2时可以使用单个交织位。当存储设备的数量是4时可以使用两个交织位。即,当存储设备的数量是2n时可以使用n个交织位。
在图1至图3所示的示例存储系统中,调制解调器处理器125可以执行关于第一和第二存储设备111和112的交织存取操作。即,如图2中所示,调制解调器处理器125可以使用所有可用的存储设备执行交织存取操作,该情况下,轮流使用第一和第二端口。
在一些示例实施例中,根据本发明构思的实施例的存储系统可以支持部分交织存取操作。即,再对第一和第二存储设备111和112执行交织存取操作时,存储系统可以对第一存储设备111或第二存储设备112可选地执行线性存取操作。另一方面,在执行线性存取操作时,存储系统可以可选地执行交织存取操作。
根据本发明构思的实施例的存储系统可以用各种方式执行部分交织存取操作。下面将描述其中执行部分交织存取操作而不改变存储器控制器的方法的示例实施例。
图4是示意性示出根据本发明构思的实施例的被配置为执行部分交织存取操作的存储系统的框图。参照图4,存储系统200可以包括第一存储器211、第二存储器212、以及在芯片上系统(SoC)上实现的应用处理器220。
应用处理器220可以包括存储器控制器221、总线连接单元222、CPU223、多媒体处理器224、第一处理器225、以及线性地址重映射逻辑226。存储器控制器221可以经由第一端口PORT1存取第一存储器211并且经由第二端口PORT2存取第二存储器212。
在图4的存储系统200中,通过将线性地址重映射逻辑226连接到第一处理器225,可以在第一和第二存储设备211和212的特定区域或特定地址区执行线性存取操作。通过添加线性地址重映射逻辑226,本发明构思可以执行部分交织存取操作而无需改变存储器控制器221。图4中,第一处理器225可以是图1所示的调制解调器处理器。
图5是示意性示出根据本发明构思的实施例的图4所示的线性地址重映射逻辑的示例实施例的框图。参照图5,线性地址重映射逻辑226可以包括第一选择器11、第二选择器12、第一重映射器21、和第二重映射器22。这里,当接收到写地址W_ADDR时可以使用第一选择器11和第一重映射器21,并且当接收到读地址R_ADDR时可以使用第二选择器12和第二重映射器22。
线性地址重映射逻辑226可以从CPU223接收选择信号CONFIG(参照图4),并且,响应于选择信号CONFIG的状态,选择是使能交织存取操作还是部分线性存取操作。例如,当选择信号CONFIG是0时,可以向存储器控制器221提供从第一处理器225接收的地址W_ADDR或R_ADDR(参照图4)。当选择信号CONFIG是1时,可以向存储器控制器221提供由第一重映射器21或第二重映射器22重映射的地址W_ADDR'或R_ADDR'。以下描述的是线性地址重映射逻辑226选择部分线性存取操作的实例。
图6是示出根据本发明构思的实施例的图4的线性地址重映射逻辑的操作地址的范围的概念图。参照图6,存储器存取地址可以划分或分割为包括被指定用于要执行的交织存取操作的存储器地址的交织存取区域IAA、以及包括被指定用于要执行的线性存取操作的存储器地址的线性存取区域LAA。
图6中,可以在分别在地址(A1和A2)内以及地址(A3和A4)内定义的交织存取区域处执行交织存取操作。这里,可以在地址A2和A3内定义线性地址重映射逻辑226(参照图4)操作的地址范围。这里,地址A2可以是LAA基地址,并且地址A3可以是由(LAA基地址+LAA尺寸-1)定义的地址。线性地址重映射逻辑226可以接收LAA基地址和LAA尺寸作为用于LAA的操作的配置值。
图7是示意性示出根据本发明构思的实施例的图4和图5中线性地址重映射逻辑的地址重映射方法的图。图7中,原始地址可以是从第一处理器225提供给线性地址重映射逻辑226的地址W_ADDR或R_ADDR(参照图4的示例)。重映射地址可以是由线性地址重映射逻辑226重映射的地址W_ADDR'或R_ADDR'。
参照图7,存储器存取地址ADDR可以包括区块位和交织位ILB。区块位可以指示交织存取操作的执行单元,并且交织位ILB可以用于确定存取哪一存储器端口;在本示例中,是存取第一端口还是第二端口。LAA位可以指示其中要执行线性存取操作的地址范围中的地址,并且IAA位可以指示其中要执行交织存取操作的地址范围中的地址。
线性地址重映射逻辑226可以使用线性地址的LAA尺寸MSB执行重映射操作。例如,在LAA尺寸是64兆字节的情况下,作为与log2(LAA尺寸)对应的位的第26位(log2(226))可以被移动到重映射ADDR的交织位的位置。沿着所示的MSB方向移动比交织位更重要的重映射ADDR的任意剩余位。交织位ILB和LAA位向左移动,而IAA位保持它们的位置。
以上描述中,可以使得与线性存取区域LAA对应的交织位具有相同的值(0或1),以便在本来将会导致交织操作的情形下可以执行线性存取操作。在本示例实施例中,线性地址重映射逻辑226使用原始地址的LAA尺寸的MSB作为重映射地址中的交织位。然而,本发明构思不限于此。可以使用其他适合的途径执行重映射操作。
图8是示意性示出根据本发明构思的实施例的图4所示的类型的存储系统的部分交织存取操作的框图。参照图8,存储器控制器221可以接收致使其经由第一和第二端口对第一和第二存储设备211和212执行部分交织存取操作的一个或多个重映射地址。
在本示例实施例中,在其操作中的某些时间,存储器控制器221可以在IAA周期期间通过第一和第二端口交替地存取第一和第二存储设备211和212。即,可以对第一和第二存储设备211和212执行交织存取操作。在其操作中的其他时间,存储器控制器221可以在LAA周期期间经由第一端口对第一存储器211执行线性存取操作。如果完成对第一存储器211的线性存取操作,例如,如果已经到达第一存储设备211的LAA区域的上存储器地址,则存储器控制器221可以经由第二端口对第二存储器212继续线性存取操作。在另一操作中,存储器控制器221可以在IAA周期期间通过第一和第二端口交替地存取第一和第二存储设备211和212。以这种方式,可以对第一和第二存储设备211和212执行交织存取操作以及线性存取操作。因此结合本发明构思,所述存储系统具有部分交织存取操作能力。
图9是用于描述根据本发明构思的实施例的图4所示的类型的存储系统的部分交织存取操作的流程图。
现在将参照图4至图9更全面地描述存储系统的部分交织存取操作。
在操作S110中,可以接收存储器存取地址。线性地址重映射逻辑226可以具有关于线性存取区域LAA的基地址和尺寸的信息。线性地址重映射逻辑226可以基于LAA基地址和LAA尺寸确定输入存储器存取地址是属于交织存取区域IAA还是线性存取区域LAA。
在操作S120中,线性地址重映射逻辑226可以确定存储器存取地址是否大于LAA基地址。如果存储器存取地址小于LAA基地址,则在操作S155中,可以执行交织存取操作。如果存储器存取地址大于等于LAA基地址,则该方法前进到操作S130。
在操作S130中,线性地址重映射逻辑226可以确定存储器存取地址是否小于(LAA基地址+LAA尺寸)。如果不小于,则在操作S155中,可以执行交织存取操作。如果小于,则该方法前进到操作S140。
在操作S140中,线性地址重映射逻辑226可以执行线性地址重映射。利用线性地址重映射,正如参照图7所述,LAA尺寸MSB可以被移动到交织位的位置,并且可以沿着MSB方向移动LAA的剩余高位。
在操作S510中,存储器控制器221可以接收重映射地址以便在地址LAA对第一存储器211或第二存储器212执行线性存取操作。
在操作S155中,在要执行交织存取操作的情况下,存储器控制器221可以在地址IAA对第一和第二存储设备211和212执行交织存取操作。
根据本发明构思的实施例的存储系统200可以通过操作S120和S130确定存储器存取地址是否属于线性存取区域LAA。如图6所示,在存储器存取地址属于交织存取区域IAA(A1~A2,A3~A4)的情况下,可以执行交织存取操作。在存储器存取地址属于线性存取区域LAA(A2~A3)的情况下,可以执行线性存取操作。
同时,根据本发明构思的实施例的存储系统适用于这样划分的存储设备中存在两个或更多线性存取区域LAA的情况。图10是示出根据本发明构思的实施例的其中存在两个线性存取区域的示例的概念图。
图10中,可以通过存取由地址间隔B1~B2、B3~B4、和B5~B6分别定义的交织存取区域IAA内的地址来执行交织存取操作,并且可以通过存取由地址间隔B2~B3和B4~B5分别定义的线性存取区域LAA中的地址来执行线性存取操作。
这里,线性地址重映射逻辑226(参照图4)可以操作地址范围B2~B3和B4~B5,如图10中所示。这里,地址B2和B4的每一个可以包括LAA基地址,并且地址B3和B5的每一个可以包括(LAA基地址+LAA尺寸-1)。线性地址重映射逻辑226可以接收LAA基地址和LAA尺寸作为配置值以操作存储设备的划分以包括和定义LAA。
返回图4,线性地址重映射逻辑226可以以这样的方式连接到CPU223或多媒体处理器224,以使得线性地址重映射逻辑226被连接到第一处理器225。而且,线性地址重映射逻辑226可以被连接为共享诸如CPU223、多媒体处理器224、和第一处理器225的处理器。
图11是用于根据特殊功能寄存器(SFR)的设置产生控制重映射信号的CONFIG信号的框图。LAA1开始可以是用于线性存取的第一区域的起始地址,并且LAA1尺寸可以指示LAA1区域的尺寸。LAA2开始可以是用于线性存取的第二区域的起始地址,并且LAA2尺寸可以指示LAA2区域的尺寸。特殊功能寄存器(SFR)可以由CPU设置。可以将特殊功能寄存器(SFR)与存储器存取地址比较。当存储器存取地址属于LAA1或LAA2时,可以激活信号CONFIG以便选择重映射地址。
虽然以上示例实施例示出包括与存储系统集成在同一芯片上系统(SoC)上的调制解调器芯片的存储系统,根据本发明构思的存储系统同样适用于调制解调器芯片在芯片上系统(SoC)外部的情况。该情况下,调制解调器芯片和芯片上系统可以经由芯片到芯片(C2C)接口互连。
图12是示意性示出根据本发明构思的实施例的其中调制解调器芯片在芯片上系统外部并且与之通信的存储系统的框图。参照图12,存储系统300可以包括第一存储器311、第二存储器312、在芯片上系统(SoC)上实现的应用处理器320、以及调制解调器芯片330。
应用处理器320可以包括存储器控制器321、总线连接单元322、CPU323、多媒体处理器324、和线性地址重映射逻辑326。存储器控制器321可以经由第一端口存取第一存储器311并且经由第二端口存取第二存储器312。
图12的存储系统300中,可以通过将线性地址重映射逻辑326连接到调制解调器芯片330在第一和第二存储设备311和312的特定区域执行线性存取操作。通过包括线性地址重映射逻辑326,本发明构思可以执行部分交织存取操作而无需改变存储器控制器321。图12中,可以将线性地址重映射逻辑326置于总线连接单元322与存储器控制器321之间。
如上所述,根据本发明构思的实施例的存储系统可以执行关于两个或更多存储设备的交织存取操作或部分线性存取操作。借助通过交织存取操作来调节两个或更多存储设备之间的带宽平衡,能够有效地使用存储设备。
同时,在使用调制解调器时需要存储器动态的情况下,存储器需求使得不需要执行关于多个存储设备的交织存取。该情况下,本发明构思可以使用线性存取操作。具体地,本发明构思可以被高效地应用于需要降低功耗的移动系统。本发明构思可以在使用交织存取操作的存储系统中执行部分线性存取操作。于是,在这样的平配置有利的情况下,可以仅仅使用单个存储器或者有意地将存储带宽聚焦在单个存储器上。
本发明构思可以使能处于空闲状态的另一存储器的时钟选通或电源选通。通过将存储器引导到自刷新模式可以降低能耗。如果将交织存取操作应用于整个存储器,则可以将电源和时钟连续地供应给整个存储设备。于是,能耗可以增加。
在使用交织存取操作的存储系统中,通过在特殊处理器(例如,调制解调器)的前级包括线性存取重映射逻辑,本发明构思可以执行部分线性存取操作。以这样的方式,针对本来可以通过使用交织存取配置实现的不需要性能增益的处理器或处理器操作可以降低能耗。
图13是示出根据本发明构思的实施例的包括两个或更多存储设备的存储系统的线性存取操作的表达的图。
在图13中,‘an’、‘IVsize’和‘IVport’可以分别指示第n区块的基地址、区块尺寸、存储端口(0、1、2、….端口)数量。
由于存储器存取地址‘a’被划分为第n基地址‘an’和偏移地址‘aoff’,存储器存取地址a可以被表达为以下等式1。
[等式1]
a=an+aoff
等式1中,由于区块尺寸是IVsize,0=<aoff<IVsize。等式1中,‘an’可以指示从第一区块的基地址‘a0’增加区块数的地址区域的值,并且可以被表达为以下等式2。
[等式2]
an=a0+IVsize×n
n = a n - a 0 IV size
假定在考虑交织的情况下选择区块。如果选择与一个或多个存储端口的第r个端口相对应的存储区块,并且在每个存储端口处选择从最低级开始的第k个存储区块,则‘an’可以被表达如下。
[等式3]
an=a(r,k)=aIVport×k×r=a0+IVsize×(IVport×k+r)=a0+IVsize×IVport×k+IVsize×r
等式3中,‘r’可以指示用于选择行的值,‘k’可以指示用于选择列的值,并且0≤r<IVport。
于是,如参照图7和8所述,图7所述的区块位可以对应于‘aoff’,原始地址的ILB可以对应于选择存储器端口的等式3的‘r’值,并且IAA和LAA位可以对应于‘k’值。可以使用原始地址的位产生用于存取每个存储器端口的地址。如参照图7所述,可以通过处理LAA和ILB位部分地重映射线性地址。
根据本发明构思的实施例,当通过CONFIG信号选择交织模式时,通过忽略图3中的原始地址中的一些ILB位,至少两个存储器端口可以同时写较大数据到相应的存储器端口或者从相应的存储器端口读较大数据以增加数据带宽。另一方面,在线性寻址模式中,仅仅已选择的端口可以操作并且与交织模式相比降低能耗。
根据本发明构思的实施例的存储系统可以应用于各种产品。例如,根据本发明构思的实施例的存储系统可以应用于数码相机、摄像机、移动电话机、智能电话机、数字TV、PMP、PSP、PDA、以及其他移动设备。
根据本发明构思的实施例的存储系统可以被诸如PoP(封装体叠层)、球栅阵列(BGA)、芯片尺寸封装(CSP)、塑料有引线芯片载体(PLCC)、塑料双列直插式封装(PDIP)、Die in Waffle Pack、Die in Wafer Form、板上芯片(COB)、陶瓷双列直插封装(CERDIP)、塑料公制四方扁平封装(MQFP)、薄四方扁平封装(TQFP)、小外形(SOIC)、缩微小外形封装(SSOP)、薄小外形(TSOP)、封装中系统(SIP)、多芯片封装(MCP)、晶圆级装配的封装(WFP)、晶圆级处理的堆叠封装(WSP)、以及其他类型封装的各种类型封装所封装。
虽然已经参照示范性实施例描述本发明构思,本领域技术人员显然可知,可以进行各种改变和修改而不脱离本说明书的精神和范围。因而,应当理解,以上实施例不是限制性的,而是说明性的。

Claims (30)

1.一种被连接到第一存储设备和第二存储设备的芯片上系统,包括:
存储器控制器,被配置为控制对第一和第二存储设备的交织存取操作;
调制解调器处理器,被配置为提供用于存取第一或第二存储设备的地址;以及
线性地址重映射逻辑,被配置为重映射从该调制解调器处理器接收的地址并且向该存储器控制器提供重映射地址,
其中,响应于接收重映射地址,该存储器控制器对第一或第二存储设备执行线性存取操作。
2.如权利要求1所述的芯片上系统,其中,该线性地址重映射逻辑从该调制解调器处理器接收地址,响应于控制信号而选择性地重映射该调制解调器处理器的地址,并且向该存储器控制器提供重映射地址。
3.如权利要求1所述的芯片上系统,其中,将重映射地址划分为交织存取区域和线性存取区域,并且其中,通过改变线性存取区域的最高有效位的位置来实现由该线性地址重映射逻辑执行的地址重映射操作。
4.如权利要求3所述的芯片上系统,其中,该线性地址重映射逻辑基于线性存取区域的基地址和尺寸确定从该调制解调器处理器输入的地址是否属于线性存取区域。
5.如权利要求4所述的芯片上系统,其中,当从该调制解调器处理器输入的地址大于等于线性存取区域的基地址并且小于线性存取区域的基地址与尺寸之和时,该线性地址重映射逻辑判定从该调制解调器处理器输入的地址属于线性存取区域。
6.如权利要求5所述的芯片上系统,其中,当从该调制解调器处理器输入的地址小于线性存取区域的基地址或者大于等于线性存取区域的基地址与尺寸之和时,该线性地址重映射逻辑判定从该调制解调器处理器输入的地址属于交织存取区域。
7.一种存取被连接到芯片上系统的第一和第二存储设备的方法,包括:
从该芯片上系统的调制解调器处理器接收用于存取第一或第二存储器的地址;
确定该地址是对应于交织存取区域还是线性存取区域;以及
根据所述确定结果对第一和第二存储设备执行线性存取操作或者交织存取操作。
8.如权利要求7所述的方法,其中,该芯片上系统进一步包括线性地址重映射逻辑,其被配置为重映射从该调制解调器处理器接收的地址并且向存储器控制器提供重映射地址。
9.如权利要求8所述的方法,其中,将重映射地址划分为交织存取区域和线性存取区域,并且其中,通过改变线性存取区域的最高有效位的位置来执行由该线性地址重映射逻辑执行的地址重映射操作。
10.如权利要求9所述的方法,其中,该线性地址重映射逻辑基于线性存取区域的基地址和尺寸来确定从该调制解调器处理器输入的地址是否属于线性存取区域。
11.一种存储系统,包括:
存储器控制器,被配置为控制对第一和第二存储设备的交织存取操作;
调制解调器处理器,被配置为提供用于存取第一或第二存储设备的地址;以及
线性地址重映射逻辑,被配置为重映射从该调制解调器处理器接收的地址以向该存储器控制器提供重映射地址,
其中,响应于接收重映射地址,该存储器控制器对第一或第二存储设备执行线性存取操作。
12.如权利要求11所述的存储系统,其中,将重映射地址划分为交织存取区域和线性存取区域。
13.如权利要求12所述的存储系统,其中,通过改变线性存取区域的最高有效位的位置来执行该线性地址重映射逻辑的地址重映射操作。
14.如权利要求12所述的存储系统,其中,该线性地址重映射逻辑基于线性存取区域的基地址和尺寸确定从该调制解调器处理器输入的地址是否属于线性存取区域。
15.如权利要求14所述的存储系统,其中,当从该调制解调器处理器输入的地址大于等于线性存取区域的基地址并且小于线性存取区域的基地址与尺寸之和时,该线性地址重映射逻辑判定从该调制解调器处理器输入的地址属于线性存取区域。
16.如权利要求15所述的存储系统,其中,当从该调制解调器处理器输入的地址小于线性存取区域的基地址或者大于等于线性存取区域的基地址与尺寸之和时,该线性地址重映射逻辑判定从该调制解调器处理器输入的地址属于交织存取区域。
17.如权利要求12所述的存储系统,其中,所述线性存取区域包括一个或多个线性存取区域。
18.如权利要求11所述的存储系统,其中,该存储系统进一步包括中央处理单元,并且其中,在芯片上系统上实现所述中央处理单元、存储器控制器、调制解调器处理器、和线性地址重映射逻辑。
19.如权利要求11所述的存储系统,其中,该存储系统进一步包括中央处理单元,并且其中,在芯片上系统上实现所述中央处理单元、存储器控制器、和线性地址重映射逻辑,并且其中,在调制解调设备上实现调制解调器处理器。
20.一种存储系统,包括:
存储器控制器,被配置为控制对第一和第二存储设备的交织存取操作;
调制解调器处理器,被配置为提供用于存取第一或第二存储设备的地址;以及
线性地址重映射逻辑,被配置为从该调制解调器处理器接收地址,根据从中央处理单元接收的控制信号选择性地重映射从该调制解调器处理器接收的地址,并且向该存储器控制器提供重映射地址,
其中,响应于重映射地址,存储器控制器对第一或第二存储设备执行线性存取操作。
21.如权利要求20所述的存储系统,其中,将重映射地址划分为交织存取区域和线性存取区域,并且其中,通过改变线性存取区域的最高有效位的位置来执行该线性地址重映射逻辑的地址重映射操作。
22.如权利要求21所述的存储系统,其中,该线性地址重映射逻辑基于线性存取区域的基地址和尺寸来确定从该调制解调器处理器输入的地址是否属于线性存取区域。
23.如权利要求22所述的存储系统,其中,当从该调制解调器处理器输入的地址大于等于线性存取区域的基地址并且小于线性存取区域的基地址与尺寸之和时,该线性地址重映射逻辑判定从该调制解调器处理器输入的地址属于线性存取区域。
24.如权利要求23所述的存储系统,其中,当从该调制解调器处理器输入的所述地址小于线性存取区域的基地址或者大于等于线性存取区域的基地址与尺寸之和时,该线性地址重映射逻辑判定从该调制解调器处理器输入的地址属于交织存取区域。
25.一种存储系统,包括:
存储器控制器,与多个存储设备通信,该存储器控制器被配置为根据交织存取操作控制该多个存储设备;
第一处理器,产生用于存取该多个存储设备的存储器位置的地址信号;
线性地址重映射单元,接收所述地址信号,并且作为响应,产生重映射地址信号;
存储器控制器,接收所述重映射地址信号,并且作为响应,根据线性存取操作控制该多个存储设备。
26.如权利要求25所述的存储系统,其中,所述存储器控制器、第一处理器、和线性地址重映射单元构成芯片上系统(SOC),并且其中,该多个存储设备在该SOC外部。
27.如权利要求25所述的存储系统,其中,响应于控制信号,该线性地址重映射单元决定是产生重映射地址信号还是传递原始地址信号。
28.如权利要求27所述的存储系统,其中,由第二处理器产生该控制信号,其中,第一处理器包括调制解调器处理器,并且其中,第二处理器包括中央处理单元(CPU)。
29.如权利要求27所述的存储系统,其中,该线性地址重映射单元修改位于地址信号的线性存取区域中的原始地址信号的第一部分,将线性存取区域的最高有效位移动到最低有效位,并且沿着朝向最高有效位的方向移动比最低有效位重要的位,以产生重映射地址信号。
30.如权利要求29所述的存储系统,其中,位于地址信号的交织地址区域中的原始地址信号的第二部分在重映射地址信号中保持不变。
CN201310242488.4A 2012-06-19 2013-06-19 包含线性地址重映射逻辑的存储系统和芯片上系统 Active CN103514100B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR10-2012-0065624 2012-06-19
KR20120065624 2012-06-19

Publications (2)

Publication Number Publication Date
CN103514100A true CN103514100A (zh) 2014-01-15
CN103514100B CN103514100B (zh) 2018-01-02

Family

ID=49668161

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310242488.4A Active CN103514100B (zh) 2012-06-19 2013-06-19 包含线性地址重映射逻辑的存储系统和芯片上系统

Country Status (6)

Country Link
US (8) US9256531B2 (zh)
JP (1) JP6297271B2 (zh)
KR (1) KR102105918B1 (zh)
CN (1) CN103514100B (zh)
DE (1) DE102013106154B4 (zh)
TW (1) TWI590047B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105573919A (zh) * 2014-10-29 2016-05-11 三星电子株式会社 存储器系统、存取存储器芯片的方法和移动电子装置
CN108228492A (zh) * 2016-12-21 2018-06-29 深圳市中兴微电子技术有限公司 一种多通道ddr交织控制方法及装置
CN113238805A (zh) * 2021-05-18 2021-08-10 上海金卓科技有限公司 一种芯片系统和芯片系统的启动方法
US11635904B2 (en) 2019-12-31 2023-04-25 Kunlunxin Technology (Beijing) Company Limited Matrix storage method, matrix access method, apparatus and electronic device

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9256531B2 (en) 2012-06-19 2016-02-09 Samsung Electronics Co., Ltd. Memory system and SoC including linear addresss remapping logic
US9612648B2 (en) 2013-08-08 2017-04-04 Qualcomm Incorporated System and method for memory channel interleaving with selective power or performance optimization
US9767868B2 (en) 2014-01-24 2017-09-19 Qualcomm Incorporated Providing memory training of dynamic random access memory (DRAM) systems using port-to-port loopbacks, and related methods, systems, and apparatuses
US9760136B2 (en) 2014-08-15 2017-09-12 Intel Corporation Controlling temperature of a system memory
US20170109090A1 (en) * 2015-10-16 2017-04-20 Qualcomm Incorporated System and method for page-by-page memory channel interleaving
US20170108911A1 (en) * 2015-10-16 2017-04-20 Qualcomm Incorporated System and method for page-by-page memory channel interleaving
US20170108914A1 (en) * 2015-10-16 2017-04-20 Qualcomm Incorporated System and method for memory channel interleaving using a sliding threshold address
US9971691B2 (en) * 2016-09-12 2018-05-15 Intel Corporation Selevtive application of interleave based on type of data to be stored in memory
US11289137B2 (en) * 2017-11-16 2022-03-29 Micron Technology, Inc. Multi-port storage-class memory interface
US10553285B2 (en) * 2017-11-28 2020-02-04 Western Digital Technologies, Inc. Single-port memory with opportunistic writes
US10915451B2 (en) * 2019-05-10 2021-02-09 Samsung Electronics Co., Ltd. Bandwidth boosted stacked memory
US11119946B2 (en) 2019-05-16 2021-09-14 Micron Technology, Inc. Codeword rotation for zone grouping of media codewords
KR20210046348A (ko) * 2019-10-18 2021-04-28 삼성전자주식회사 복수의 프로세서들에 유연하게 메모리를 할당하기 위한 메모리 시스템 및 그것의 동작 방법
US11467983B1 (en) * 2019-10-22 2022-10-11 Amazon Technologies, Inc. Independently configurable interleaving for interconnect access requests
US11546336B1 (en) 2019-10-22 2023-01-03 Amazon Technologies, Inc. Independently configurable access device stages for processing interconnect access requests
US11392406B1 (en) 2019-10-22 2022-07-19 Amazon Technologies, Inc. Alternative interrupt reporting channels for microcontroller access devices
TWI719745B (zh) * 2019-12-09 2021-02-21 瑞昱半導體股份有限公司 記憶體資料存取裝置及其方法
US11552948B1 (en) 2020-03-26 2023-01-10 Amazon Technologies, Inc. Domain management intermediary service
US11733763B2 (en) * 2020-08-06 2023-08-22 Micron Technology, Inc. Intelligent low power modes for deep learning accelerator and random access memory
US12001265B2 (en) * 2021-09-23 2024-06-04 Advanced Micro Devices, Inc. Device and method for reducing save-restore latency using address linearization
US20240168535A1 (en) * 2022-11-22 2024-05-23 Gopro, Inc. Dynamic power allocation for memory using multiple interleaving patterns

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1043402A (zh) * 1988-12-03 1990-06-27 国际商业机器公司 虚拟存储器管理系统和方法
US5761695A (en) * 1995-09-19 1998-06-02 Hitachi, Ltd. Cache memory control method and apparatus, and method and apparatus for controlling memory capable of interleave control
US20080055325A1 (en) * 2006-08-29 2008-03-06 Texas Instruments Incorporated Methods and systems for tiling video or still image data
US20100325374A1 (en) * 2009-06-17 2010-12-23 Sun Microsystems, Inc. Dynamically configuring memory interleaving for locality and performance isolation
US20110072190A1 (en) * 2009-09-21 2011-03-24 Freescale Semiconductor, Inc. Memory device and method

Family Cites Families (79)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4924375A (en) 1987-10-23 1990-05-08 Chips And Technologies, Inc. Page interleaved memory access
US5051889A (en) 1987-10-23 1991-09-24 Chips And Technologies, Incorporated Page interleaved memory access
US5236413B1 (en) 1990-05-07 1996-06-18 Andrew J Feiring Method and apparatus for inducing the permeation of medication into internal tissue
US5226134A (en) 1990-10-01 1993-07-06 International Business Machines Corp. Data processing system including a memory controller for direct or interleave memory accessing
JPH06103164A (ja) 1991-01-16 1994-04-15 Yokogawa Medical Syst Ltd インターリーブメモリ回路へのアクセス制御方法および装置
US5630098A (en) 1991-08-30 1997-05-13 Ncr Corporation System and method for interleaving memory addresses between memory banks based on the capacity of the memory banks
US5164916A (en) 1992-03-31 1992-11-17 Digital Equipment Corporation High-density double-sided multi-string memory module with resistor for insertion detection
JP3920931B2 (ja) 1992-04-17 2007-05-30 サン・マイクロシステムズ・インコーポレイテッド キャッシュされたデータを読出しおよび書込む方法ならびにデータをキャッシングする装置
DE69326236T2 (de) * 1993-06-16 1999-12-30 Bull Hn Information Systems Italia S.P.A., Pregnana Milanese Speicher mit variabeler Verschachtelungshöhe und verwandte Konfigurationseinheit
US6161162A (en) 1993-12-08 2000-12-12 Nec Corporation Multiprocessor system for enabling shared access to a memory
US5593401A (en) 1994-08-03 1997-01-14 Kimberly-Clark Corporation Absorbent article with bridge flap
US6804760B2 (en) 1994-12-23 2004-10-12 Micron Technology, Inc. Method for determining a type of memory present in a system
US5579277A (en) * 1995-05-01 1996-11-26 Apple Computer, Inc. System and method for interleaving memory banks
US5619471A (en) 1995-06-06 1997-04-08 Apple Computer, Inc. Memory controller for both interleaved and non-interleaved memory
EP0786756B1 (en) 1996-01-23 2009-03-25 Hewlett-Packard Company, A Delaware Corporation Data transfer arbitration for display controller
KR19980025738A (ko) 1996-10-04 1998-07-15 김광호 반도체 일렉트론 플로드 건(Electron flood Gun)의 필라멘트 지지부
KR19980025738U (ko) 1996-11-05 1998-08-05 김광호 이 기종 메모리 모듈 사용을 위한 인터리빙의 모드 변환 회로
US5924117A (en) 1996-12-16 1999-07-13 International Business Machines Corporation Multi-ported and interleaved cache memory supporting multiple simultaneous accesses thereto
US6016511A (en) 1997-09-12 2000-01-18 Motorola Inc. Apparatus and method for interfacing protocol application data frame operation requests with a data frame input/output device
JP3386705B2 (ja) 1997-12-25 2003-03-17 株式会社東芝 半導体記憶装置およびそのバーストアドレスカウンタ
KR100427019B1 (ko) 1998-06-30 2004-07-30 주식회사 대우일렉트로닉스 플라즈마디스플레이패널텔레비전의타이밍제어회로
JP2000029782A (ja) * 1998-07-14 2000-01-28 Canon Inc メモリ制御方法及び装置
US6389525B1 (en) * 1999-01-08 2002-05-14 Teradyne, Inc. Pattern generator for a packet-based memory tester
JP2000267986A (ja) 1999-03-17 2000-09-29 Canon Inc メモリ制御装置およびメモリ制御方法
JP2000285017A (ja) 1999-03-31 2000-10-13 Seiko Epson Corp 記憶装置
EP1050819A1 (en) 1999-05-03 2000-11-08 Sgs Thomson Microelectronics Sa Computer memory access
US6483844B1 (en) 1999-05-13 2002-11-19 Advanced Micro Devices, Inc. Apparatus and method for sharing an external memory between multiple network switches
US6691261B1 (en) 1999-10-01 2004-02-10 Agere Systems Inc. De-interleaver and method of de-interleaving
US8341332B2 (en) * 2003-12-02 2012-12-25 Super Talent Electronics, Inc. Multi-level controller with smart storage transfer manager for interleaving multiple single-chip flash memory devices
US8037234B2 (en) * 2003-12-02 2011-10-11 Super Talent Electronics, Inc. Command queuing smart storage transfer manager for striping data to raw-NAND flash modules
US6392572B1 (en) * 2001-05-11 2002-05-21 Qualcomm Incorporated Buffer architecture for a turbo decoder
US6874070B2 (en) * 2002-02-22 2005-03-29 Hewlett-Packard Development Company, L.P. System and method for memory interleaving using cell map with entry grouping for higher-way interleaving
AU2003256468A1 (en) 2002-07-09 2004-01-23 Globespanvirata Incorporated Method and system for improving access latency of multiple bank devices
US6791898B1 (en) * 2002-10-11 2004-09-14 Cypress Semiconductor Corporation Memory device providing asynchronous and synchronous data transfer
US20040078544A1 (en) * 2002-10-18 2004-04-22 Silicon Integrated Systems Corporation Memory address remapping method
US6944728B2 (en) 2002-12-23 2005-09-13 Intel Corporation Interleaving memory access
US6941438B2 (en) 2003-01-10 2005-09-06 Intel Corporation Memory interleaving
US7139862B2 (en) * 2003-02-24 2006-11-21 Nokia Corporation Interleaving method and apparatus with parallel access in linear and interleaved order
US7173852B2 (en) 2003-10-03 2007-02-06 Sandisk Corporation Corrected data storage and handling methods
KR101022473B1 (ko) 2004-02-13 2011-03-15 삼성전자주식회사 다층 버스 시스템에서의 메모리 뱅크 인터리빙 방법 및장치
JP4569921B2 (ja) 2004-08-04 2010-10-27 パナソニック株式会社 省電力メモリアクセス制御装置
US20060288130A1 (en) 2005-06-21 2006-12-21 Rajesh Madukkarumukumana Address window support for direct memory access translation
US7398362B1 (en) * 2005-12-09 2008-07-08 Advanced Micro Devices, Inc. Programmable interleaving in multiple-bank memories
CN101292229B (zh) 2005-12-28 2012-05-30 富士通株式会社 用于控制存储器的方法和设备
US20070180203A1 (en) * 2006-02-01 2007-08-02 Madhusudhan Ramgarajan Optimizing system performance in flexible interleaving memory mode
US20080005516A1 (en) 2006-06-30 2008-01-03 Meinschein Robert J Memory power management through high-speed intra-memory data transfer and dynamic memory address remapping
US7555628B2 (en) * 2006-08-15 2009-06-30 Intel Corporation Synchronizing a translation lookaside buffer to an extended paging table
US7539842B2 (en) 2006-08-15 2009-05-26 International Business Machines Corporation Computer memory system for selecting memory buses according to physical memory organization information stored in virtual address translation tables
US8806116B2 (en) * 2008-02-12 2014-08-12 Virident Systems, Inc. Memory modules for two-dimensional main memory
JP2008152687A (ja) * 2006-12-20 2008-07-03 Matsushita Electric Ind Co Ltd メモリコントローラ
US20090319810A1 (en) * 2007-01-11 2009-12-24 Panasonic Corporation Receiving apparatus and activation control method for receiving apparatus
US20080250212A1 (en) * 2007-04-09 2008-10-09 Ati Technologies Ulc Method and apparatus for accessing memory using programmable memory accessing interleaving ratio information
EP2075696A3 (en) 2007-05-10 2010-01-27 Texas Instruments Incorporated Interrupt- related circuits, systems and processes
US8051239B2 (en) * 2007-06-04 2011-11-01 Nokia Corporation Multiple access for parallel turbo decoder
US8438320B2 (en) * 2007-06-25 2013-05-07 Sonics, Inc. Various methods and apparatus for address tiling and channel interleaving throughout the integrated system
US8527709B2 (en) * 2007-07-20 2013-09-03 Intel Corporation Technique for preserving cached information during a low power mode
US8751769B2 (en) * 2007-12-21 2014-06-10 Qualcomm Incorporated Efficient address generation for pruned interleavers and de-interleavers
US7979648B2 (en) * 2008-05-30 2011-07-12 Oracle America, Inc. Dynamic interleaving
EP2335245B1 (en) 2008-09-28 2015-01-07 Ramot at Tel-Aviv University Ltd. Method and system for adaptive coding in flash memories
US8164974B2 (en) 2009-02-24 2012-04-24 Taiwan Semiconductor Manufacturing Company, Ltd. Memory circuits, systems, and method of interleaving accesses thereof
US8478928B2 (en) * 2009-04-23 2013-07-02 Samsung Electronics Co., Ltd. Data storage device and information processing system incorporating data storage device
US8819359B2 (en) * 2009-06-29 2014-08-26 Oracle America, Inc. Hybrid interleaving in memory modules by interleaving physical addresses for a page across ranks in a memory module
US8161334B1 (en) * 2009-06-30 2012-04-17 Micron Technology, Inc. Externally maintained remap information
US8607023B1 (en) * 2009-12-16 2013-12-10 Applied Micro Circuits Corporation System-on-chip with dynamic memory module switching
JP5678273B2 (ja) * 2010-03-01 2015-02-25 パナソニックIpマネジメント株式会社 メモリコントローラ
US8799553B2 (en) * 2010-04-13 2014-08-05 Apple Inc. Memory controller mapping on-the-fly
US20120054455A1 (en) 2010-08-31 2012-03-01 Qualcomm Incorporated Non-Uniform Interleaving Scheme In Multiple Channel DRAM System
WO2012033662A2 (en) * 2010-09-10 2012-03-15 Rambus Inc. Memory controller and method for tuned address mapping
US9405700B2 (en) * 2010-11-04 2016-08-02 Sonics, Inc. Methods and apparatus for virtualization in an integrated circuit
KR20120065624A (ko) 2010-12-13 2012-06-21 김준모 오토바이 덮개를 지지하기 위한 형상 유지 구조물
GB2493340A (en) * 2011-07-28 2013-02-06 St Microelectronics Res & Dev Address mapping of boot transactions between dies in a system in package
US8819379B2 (en) * 2011-11-15 2014-08-26 Memory Technologies Llc Allocating memory based on performance ranking
US9256531B2 (en) 2012-06-19 2016-02-09 Samsung Electronics Co., Ltd. Memory system and SoC including linear addresss remapping logic
JP6000708B2 (ja) * 2012-07-20 2016-10-05 キヤノン株式会社 メモリ制御装置および方法
GB2497154B (en) * 2012-08-30 2013-10-16 Imagination Tech Ltd Tile based interleaving and de-interleaving for digital signal processing
US8959298B2 (en) * 2012-12-10 2015-02-17 Qualcomm Incorporated System and method for managing performance of a computing device having dissimilar memory types
US9110795B2 (en) 2012-12-10 2015-08-18 Qualcomm Incorporated System and method for dynamically allocating memory in a memory subsystem having asymmetric memory components
US8923089B2 (en) * 2012-12-21 2014-12-30 Lsi Corporation Single-port read multiple-port write storage device using single-port memory cells
US9612648B2 (en) 2013-08-08 2017-04-04 Qualcomm Incorporated System and method for memory channel interleaving with selective power or performance optimization

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1043402A (zh) * 1988-12-03 1990-06-27 国际商业机器公司 虚拟存储器管理系统和方法
US5761695A (en) * 1995-09-19 1998-06-02 Hitachi, Ltd. Cache memory control method and apparatus, and method and apparatus for controlling memory capable of interleave control
US20080055325A1 (en) * 2006-08-29 2008-03-06 Texas Instruments Incorporated Methods and systems for tiling video or still image data
US20100325374A1 (en) * 2009-06-17 2010-12-23 Sun Microsystems, Inc. Dynamically configuring memory interleaving for locality and performance isolation
US20110072190A1 (en) * 2009-09-21 2011-03-24 Freescale Semiconductor, Inc. Memory device and method

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105573919A (zh) * 2014-10-29 2016-05-11 三星电子株式会社 存储器系统、存取存储器芯片的方法和移动电子装置
TWI644206B (zh) * 2014-10-29 2018-12-11 三星電子股份有限公司 包括線性重映射器與存取視窗之記憶體系統及單晶片系統
US10503637B2 (en) 2014-10-29 2019-12-10 Samsung Electronics Co., Ltd. Memory system and SoC including linear remapper and access window
CN105573919B (zh) * 2014-10-29 2020-12-08 三星电子株式会社 存储器系统、存取存储器芯片的方法和移动电子装置
CN108228492A (zh) * 2016-12-21 2018-06-29 深圳市中兴微电子技术有限公司 一种多通道ddr交织控制方法及装置
US11635904B2 (en) 2019-12-31 2023-04-25 Kunlunxin Technology (Beijing) Company Limited Matrix storage method, matrix access method, apparatus and electronic device
CN113238805A (zh) * 2021-05-18 2021-08-10 上海金卓科技有限公司 一种芯片系统和芯片系统的启动方法

Also Published As

Publication number Publication date
JP2014002745A (ja) 2014-01-09
KR102105918B1 (ko) 2020-05-06
US12001698B2 (en) 2024-06-04
US20170185342A1 (en) 2017-06-29
US11573716B2 (en) 2023-02-07
TWI590047B (zh) 2017-07-01
US11681449B2 (en) 2023-06-20
US20200356291A1 (en) 2020-11-12
US20210141549A1 (en) 2021-05-13
DE102013106154B4 (de) 2022-11-03
TW201407347A (zh) 2014-02-16
US10817199B2 (en) 2020-10-27
US11169722B2 (en) 2021-11-09
US20230185466A1 (en) 2023-06-15
JP6297271B2 (ja) 2018-03-20
US20200363970A1 (en) 2020-11-19
US9256531B2 (en) 2016-02-09
US20130339640A1 (en) 2013-12-19
KR20130142941A (ko) 2013-12-30
US11704031B2 (en) 2023-07-18
DE102013106154A1 (de) 2013-12-19
CN103514100B (zh) 2018-01-02
US20160124849A1 (en) 2016-05-05
US20190114105A1 (en) 2019-04-18

Similar Documents

Publication Publication Date Title
CN103514100A (zh) 包含线性地址重映射逻辑的存储系统和芯片上系统
US8621175B2 (en) Wirelessly configurable memory device
CN105573919A (zh) 存储器系统、存取存储器芯片的方法和移动电子装置
US11372564B2 (en) Apparatus and method for dynamically allocating data paths in response to resource usage in data processing system
US20100077193A1 (en) Method and apparatus for assigning a memory to multi-processing unit
CN107180001A (zh) 访问动态随机存储器dram的方法和总线
US20230004398A1 (en) Asynchronous pipeline merging using long vector arbitration
CN104409098A (zh) 容量翻倍的芯片内部表项及其实现方法
CN101783165A (zh) 一种半导体存储器、半导体存储器系统及其对应编程方法
US8230196B1 (en) Configurable partitions for non-volatile memory
CN111627481B (zh) 一种字线译码电路、字线选通方法及存储器和电子设备
US20170177260A1 (en) Memory management method, memory control circuit unit and memory storage device
US20090228612A1 (en) Flexible Bus Interface and Method for Operating the Same
CN101615421B (zh) 多信道混合密度内存储存装置及其控制方法
US20110167210A1 (en) Semiconductor device and system comprising memories accessible through dram interface and shared memory region
CN116324753A (zh) 用于配置多个输入-输出信道的方法
CN201917897U (zh) 中央处理器访问外部存储设备的实现电路
CN116185934A (zh) 通过spi端口访问非易失性存储器的方法和系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant