CN107851074A - 多个接口对存储器空间的并发访问 - Google Patents
多个接口对存储器空间的并发访问 Download PDFInfo
- Publication number
- CN107851074A CN107851074A CN201680042331.9A CN201680042331A CN107851074A CN 107851074 A CN107851074 A CN 107851074A CN 201680042331 A CN201680042331 A CN 201680042331A CN 107851074 A CN107851074 A CN 107851074A
- Authority
- CN
- China
- Prior art keywords
- group
- interface
- storage group
- domain
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
- G06F3/0611—Improving I/O performance in relation to response time
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/06—Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
- G06F12/0615—Address space extension
- G06F12/0623—Address space extension for memory modules
-
- 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
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/0644—Management of space entities, e.g. partitions, extents, pools
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
- G06F3/0685—Hybrid storage combining heterogeneous device types, e.g. hierarchical storage, hybrid arrays
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/10—Providing a specific technical effect
- G06F2212/1016—Performance improvement
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/10—Providing a specific technical effect
- G06F2212/1028—Power efficiency
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/20—Employing a main memory using a specific memory technology
- G06F2212/205—Hybrid memory, e.g. using both volatile and non-volatile memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/60—Details of cache memory
- G06F2212/601—Reconfiguration of cache memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE 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/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Power Sources (AREA)
- Memory System (AREA)
- Dram (AREA)
Abstract
描述了促成对存储器设备的访问的系统、方法和装置。存储器设备内的存储器空间被划分成多个存储组域。此后,基于一个或多个应用使用要求将被配置成访问存储器空间的应用接口电路分类成多个接口群组。该多个接口群组中的每个接口群组被指派给该多个存储组域中的对应存储组域。随后提供每个接口群组与对应存储组域之间的访问,其中第一接口群组的第一应用接口电路访问第一对应存储组域,同时第二接口群组的第二应用接口电路访问第二对应存储组域。
Description
相关申请的交叉引用
本申请要求于2015年7月21日向美国专利商标局提交的非临时申请No.14/805,185的优先权和权益,其全部内容通过援引纳入于此。
背景
领域
本公开一般涉及信息存储设备,尤其涉及促成多个应用接口电路对信息存储设备的存储域的并发访问。
背景技术
蜂窝和无线通信技术在过去数年已见证爆发式增长。无线服务提供商现在提供了广泛的特征和服务,并向其用户提供对信息、资源和通信的前所未有的访问级别。为了跟上这些服务增强,移动电子设备(例如,蜂窝电话、平板设备、膝上型计算机等)的特征已变得比以往任何时候都更加丰富和复杂。移动电子设备现在通常包括多个处理器、片上系统(SoC)、多个存储器、以及允许移动设备用户在他们的移动设备上执行复杂和功率密集的软件应用(例如,视频流送、多媒体处理等等)的其他资源(例如,电源轨等等)。随着移动设备和相关技术在普及性和使用上不断增长,预计改善移动设备的性能能力和功耗特性对于移动设备设计者而言将变成重要且有挑战性的设计准则。
概述
本文所公开的各实施例提供了用于访问存储器设备的系统、方法和装置。
在本公开的一方面,一种用于访问存储器设备的方法包括:将所述存储器设备内的存储器空间划分成多个存储组(bank)域,基于一个或多个应用使用要求将被配置成访问所述存储器空间的应用接口电路分类成多个接口群组,将所述多个接口群组中的每个接口群组指派给所述多个存储组域中的对应存储组域,以及提供每个接口群组与对应存储组域之间的访问。第一接口群组的第一应用接口电路访问第一对应存储组域,同时第二接口群组的第二应用接口电路访问第二对应存储组域。可以分开地对存储组域进行功率控制。
所述一个或多个应用使用要求可包括以下各项中的至少一项:应用存储大小要求、应用接口带宽要求、或应用接口等待时间要求。所述访问可由多个路由器提供,所述多个路由器管理所述多个接口群组与存储组域之间的并发数据流。所述多个路由器可位于应用接口电路与所述多个存储组域之间。所述多个路由器中的每个路由器可被定位成毗邻于包括不同存储组域的存储组的对应存储组集合。根据某些方面,用于访问所述存储器设备的方法可进一步包括:经由提供至对应存储组域的存储组的最低等待时间访问的路由器从接口群组的应用接口电路向该存储组发送具有低等待时间要求的数据。
在本公开的一方面,一种用于访问存储器设备的装备包括:用于将所述存储器设备内的存储器空间划分成多个存储组域的装置,用于基于一个或多个应用使用要求将被配置成访问所述存储器空间的应用接口电路分类成多个接口群组的装置,用于将所述多个接口群组中的每个接口群组指派给所述多个存储组域中的对应存储组域的装置,以及用于提供每个接口群组与对应存储组域之间的访问的装置。第一接口群组的第一应用接口电路访问第一对应存储组域,同时第二接口群组的第二应用接口电路访问第二对应存储组域。根据某些方面,用于访问所述存储器设备的装备可进一步包括:用于经由提供至对应存储组域的存储组的最低等待时间访问的路由器从接口群组的应用接口电路向该存储组发送具有低等待时间要求的数据的装置,以及用于分开地对存储组域进行功率控制的装置。
在本公开的一方面,一种用于访问存储器设备的装置包括:至少一个处理器,其被配置成:将所述存储器设备内的存储器空间划分成多个存储组域,基于一个或多个应用使用要求将被配置成访问所述存储器空间的应用接口电路分类成多个接口群组,将所述多个接口群组中的每个接口群组指派给所述多个存储组域中的对应存储组域,以及提供每个接口群组与对应存储组域之间的访问。第一接口群组的第一应用接口电路访问第一对应存储组域,同时第二接口群组的第二应用接口电路访问第二对应存储组域。
在本公开的一方面,一种具有一条或多条指令的处理器可读存储介质,所述一条或多条指令在由至少一个处理电路执行时使所述至少一个处理电路进行以下操作:将存储器设备内的存储器空间划分成多个存储组域,基于一个或多个应用使用要求将被配置成访问所述存储器空间的应用接口电路分类成多个接口群组,将所述多个接口群组中的每个接口群组指派给所述多个存储组域中的对应存储组域,以及提供每个接口群组与对应存储组域之间的访问。第一接口群组的第一应用接口电路访问第一对应存储组域,同时第二接口群组的第二应用接口电路访问第二对应存储组域。
附图简述
图1描绘了包括处理电路的装置,该处理电路被配置成控制该装置的操作。
图2解说了采用N相极性编码数据链路的装置的系统架构。
图3是解说装置的某些方面的示意框图。
图4是解说设备内的模块/电路/处理器的功能组织的示图。
图5是解说存储器空间中存储器存储组的组织的示图。
图6是解说根据本公开的用于组织存储器的示例逻辑拓扑的示图。
图7是解说根据本公开的用于组织存储器的示例物理拓扑的示图。
图8是解说存储器空间的组织的示图。
图9是解说根据本公开的各方面的路由器的示图。
图10是解说用于组织存储器的物理拓扑的示图。
图11是解说用于访问存储器设备的方法的流程图。
图12是根据本公开的一个或多个方面的对被配置成支持与访问存储器设备相关的操作的装置的解说。
详细描述
现在参照附图描述各个方面。在以下描述中,出于解释目的阐述了众多具体细节以提供对一个或多个方面的透彻理解。但是显然的是,没有这些具体细节也可实践此(诸)方面。
如本申请中所使用的,术语“组件”、“模块”、“系统”及类似术语旨在包括计算机相关实体,诸如但并不限于硬件、固件、硬件与软件的组合、软件、或执行中的软件。例如,组件可以是但不限于是,在处理器上运行的进程、处理器、对象、可执行件、执行的线程、程序和/或计算机。作为解说,在计算设备上运行的应用和该计算设备两者都可以是组件。一个或多个组件可以驻留在进程和/或执行的线程内,且组件可以本地化在一台计算设备上和/或分布在两台或更多台计算设备之间。另外,这些组件能从其上存储有各种数据结构的各种计算机可读介质来执行。这些组件可借助于本地和/或远程进程来通信,诸如根据具有一个或多个数据分组的信号来通信,这样的数据分组诸如是来自藉由该信号与本地系统、分布式系统中另一组件交互的、和/或跨诸如因特网之类的网络与其他系统交互的一个组件的数据。
此外,术语“或”旨在表示包含性“或”而非排他性“或”。即,除非另外指明或从上下文能清楚地看出,否则短语“X采用A或B”旨在表示任何自然的可兼排列。即,短语“X采用A或B”得到以下任何实例的满足:X采用A;X采用B;或X采用A和B两者。另外,本申请和所附权利要求书中所用的冠词“一”和“某”一般应当被理解成表示“一个或多个”,除非另外声明或者可从上下文中清楚看出是指单数形式。
术语“计算设备”和“移动设备”在本文中可互换地使用以指代以下各项中的任何一项或全部:服务器、个人计算机、智能电话、蜂窝电话、平板计算机、膝上型计算机、上网本、超级本、掌上计算机、个人数据助理(PDA)、无线电子邮件接收器、启用多媒体因特网的蜂窝电话、全球定位系统(GPS)接收机、无线游戏控制器、以及包括可编程处理器的类似个人电子设备。虽然各个方面在具有有限资源(例如,处理功率、电池等等)的移动设备(例如,智能电话、膝上型计算机等等)中特别有用,但各方面一般在可从改善的处理器性能和降低的能耗中受益的任何计算设备中有用。
术语“多核处理器”在本文中用于指代包含被配置成读取和执行程序指令的两个或更多个独立处理单元或核(例如,中央处理单元(CPU)核等等)的单个集成电路(IC)芯片或芯片封装。术语“多处理器”在本文中用于指代包括被配置成读取和执行程序指令的两个或更多个处理单元的系统或设备。
术语“片上系统”(SOC)在本文中用于指代包含集成在单个基板上的多个资源和/或处理器的单个集成电路(IC)芯片。单个SOC可包含用于数字、模拟、混合信号和射频功能的电路系统。单个SOC还可包括任何数目的通用和/或专用处理器(数字信号处理器、调制解调器处理器、视频处理器等)、存储器块(例如,ROM、RAM、闪存等)、以及资源(例如,定时器、电压调节器、振荡器等),上述各项中的任何或全部可被包括在一个或多个核中。
数个不同类型的存储器和存储器技术可用并在未来被构想,它们全部适于与各方面联用。此类存储器技术/类型包括相变随机存取存储器(PRAM)、动态随机存取存储器(DRAM)、静态随机存取存储器(SRAM)、非易失性随机存取存储器(NV RAM)、伪静态随机存取存储器(PSRAM)、双数据率(DDR)同步动态随机存取存储器(SDRAM)、以及本领域中已知的其他随机存取存储器(RAM)和只读存储器(ROM)技术。DDR SDRAM存储器可以是DDR类型1SDRAM存储器、DDR类型2SDRAM存储器、DDR类型3SDRAM存储器、或者DDR类型4SDRAM存储器。上面提及的存储器技术中的每一者包括例如适于存储用于在计算机或其它数字电子设备中使用或由其使用的指令、程序、控制信号、和/或数据的元件。对与个别类型的存储器、接口、标准或存储器技术相关的术语和/或技术细节的任何引用仅用于解说目的,且并不意在将权利要求的范围限定于特定存储器系统或技术,除非权利要求语言中有具体陈述。
近年来,移动计算设备架构在复杂度上已增长,并且现在通常包括多个处理器核、片上系统(SOC)、协处理器、包括专用处理器的功能模块(例如,通信调制解调器芯片、GPS接收机等等)、复杂的存储器系统、错综复杂的电气互连(例如,总线和/或织构)、以及执行复杂且功率密集的软件应用(例如,视频流送应用等等)的众多其他资源。随着复杂度的这种上升,需要新的存储器管理解决方案来改善移动设备的计算和功率管理性能。
当前的设备利用许多不同的通信协议(包括机器对机器和机器对人类协议),并且因此需要高度并行性,即,使不同的通信协议经由多个途径并发地访问存储器空间的能力。这需要若干通信协议之间畅通的交互和/或数据传输。大部分的数据存储在专用的存储芯片(例如,DRAM、闪存等等)中。由于分开的芯片的本质,经由被设计成在若干个功能芯片之间互操作的接口来访问数据。由于高度并发的访问要求,接口通常遇到瓶颈,并且不断地被修订(例如,DDR、DDR2、DDR3、DDR4、LP DDR、eMMC、串行闪存、以及RAMBUS)。
本公开的某些方面涉及允许高度自由地对接和访问流线化多协议通信设备的存储组织。在一方面,操纵对接策略以超过“实现边界”暴露存储功能固有的内部多个自由度。这允许在功率方面以更低的成本获得更高的并发性以及聚集的平台实现。因此,更少的总焦耳可执行更多的功能。
可在三维中量化存储组织以服务通信IC的需求。一方面可包括每单位等待时间每引脚的接口访问并行度。例如,多个接口可并行地并发访问存储器的各部分(访问域)。该访问可基于接口使用要求,诸如存储器大小要求、带宽要求、和/或等待时间要求。另一方面可包括功率分段。例如,可以分开地对访问域进行功率控制,以允许在由设备应用所规定的时刻使用针对普遍情形动态优化的多个次级调节域。
存储组织可进一步提供空间映射的伪高速缓存实现,其具有共享功率域中的聚集存储组和接口集束;路由器(微型路由器),该路由器是快速交换网络,其允许支持并发存储器访问所需要的隔离以及路径查找以允许到达任何存储单元字,进而对引用局部性和等待时间进行折衷;以及多个接口端口以允许对就地计算的并发和无争用访问。
本发明的某些方面可适用于被部署在电子组件之间的通信链路,这些电子组件可包括设备(诸如电话、移动计算设备、电器、汽车电子、航空电子系统等)的子组件。参照图1,例如,装置100可包括处理电路102,该处理电路102被配置成控制装置100的操作。处理电路102可访问和执行软件应用并控制装置100内的逻辑电路和其他设备。在一个示例中,装置100可包括无线通信设备,该无线通信设备通过射频(RF)通信收发机106与无线电接入网(RAN)、核心接入网、因特网和/或另一网络通信。RF通信收发机106可以可操作地耦合到处理电路102。处理电路102可包括一个或多个IC设备,诸如专用集成电路(ASIC)108。ASIC108可包括一个或多个处理设备、逻辑电路、等等。处理电路102可包括和/或耦合到处理器可读存储112,该处理器可读存储112可维护可由处理电路102执行的指令和数据。处理电路102可由操作系统以及支持并实现驻留在无线设备的存储112中的软件模块的执行的应用编程接口(API)110层中的一者或多者来控制。存储112可包括只读存储器(ROM)或随机存取存储器(RAM)、电可擦除可编程只读存储器(EEPROM)、闪存设备、或可被用于处理系统和计算平台中的任何存储器设备。处理电路102可包括和/或访问本地数据库114,该本地数据库114可维护用于配置和操作该装置100的操作参数和其它信息。可使用数据库模块/电路/处理器或服务器、闪存、磁介质、EEPROM、光学介质、带、软盘或硬盘等中的一者或多者来实现本地数据库114。处理电路也可以可操作地耦合到外部设备,诸如天线122、显示器124、操作者控件(诸如按钮128和按键板126)、以及其他组件。
图2是解说装置200的某些方面的示意框图,该装置200诸如是无线移动设备、移动电话、移动计算系统、无线电话、笔记本计算机、平板计算设备、媒体播放器、游戏设备等。装置200可包括通过通信链路220交换数据和控制信息的多个IC设备202和230。通信链路220可被用于连接IC设备202和230,IC设备202和230可定位成彼此紧邻或者物理上位于装置200的不同部件中。在一个示例中,通信链路220可设在承载IC设备202和230的芯片载体、基板或电路板上。在另一示例中,第一IC设备202可位于折叠式电话的按键板区段中,而第二IC设备230可位于该折叠式电话的显示器区段中。通信链路220的一部分可包括电缆或光学连接。
通信链路220可包括多个信道222、224和226。一个或多个信道226可以是双向的,并且可以在半双工模式和/或全双工模式中操作。一个或多个信道222、224可以是单向的。通信链路220可以是非对称的,由此在一个方向上提供较高带宽。在本文描述的一个示例中,第一通信信道222可被称为前向链路222,而第二通信信道224可被称为反向链路224。第一IC设备202可以被指定为主机(host)、主控方(master)和/或发射机,而第二IC设备230可以被指定为客户端、从动方(slave)和/或接收机,即便IC设备202和230两者都被配置成在通信链路220上进行传送和接收。在一个示例中,前向链路222可以在将数据从第一IC设备202传达给第二IC设备230时以较高数据率操作,而反向链路224可以在将数据从第二IC设备230传达给第一IC设备202时以较低数据率操作。
IC设备202和230可各自包括处理器或其它处理和/或计算电路或设备206、236。在一个示例中,第一IC设备202可执行装置200的核心功能,包括维护通过无线收发机204和天线214的无线通信,而第二IC设备230可支持管理或操作显示器控制器232的用户接口,并且可使用相机控制器234来控制相机或视频输入设备的操作。IC设备202和230中的一者或多者所支持的其他特征可包括键盘、语音识别组件、以及其他输入或输出设备。显示器控制器232可包括支持显示器(诸如液晶显示器(LCD)面板、触摸屏显示器、指示器等)的电路和软件驱动器。存储介质208和238可包括瞬态和/或非瞬态存储设备,其被适配成维护由相应处理电路206和236、和/或IC设备202和230的其它组件所使用的指令和数据。每个处理电路206、236及其相应的存储介质208和238以及其它模块/处理器和电路之间的通信可分别由一个或多个总线212和242来促成。
可按与前向链路222相同的方式来操作反向链路224。前向链路222和反向链路224可以能够以相当的速度或以不同的速度进行传送,其中速度可被表达为数据传输速率和/或时钟速率。取决于应用,前向和反向数据率可以基本上相同或可相差几个数量级。在一些应用中,单个双向链路226可支持第一IC设备202与第二IC设备230之间的通信。当例如前向和反向链路222和224共享相同的物理连接并且以半双工方式工作时,前向链路222和/或反向链路224可以是可配置成以双向模式操作的。
在某些示例中,反向链路224从前向链路222推导出时钟信号以用于同步目的、用于控制目的、促成功率管理和/或用于简化设计。该时钟信号可具有通过对用于在前向链路222上传送信号的码元时钟的频率进行分频所获得的频率。码元时钟可被叠加或以其他方式编码在前向链路222上传送的码元中。使用作为码元时钟的衍生物的时钟信号允许发射机和接收机(收发机210、240)的快速同步并实现数据信号的快速开始和停止而无需靠成帧(framing)来实现训练和同步。
在某些示例中,单个双向链路226可支持第一处理设备(第一IC设备)202与第二处理设备(第二IC设备)230之间的通信。在一些实例中,第一处理设备202和第二处理设备230提供在处理设备与存储器设备(诸如动态随机存取存储器(DRAM))之间传送的数据、地址和控制信号的编码和解码。在一个示例中,总线212和/或242中的一者或多者可使用各种编码技术中的一种来提供对DRAM的访问。
图3解说了适于实现本公开的各个方面的片上系统(SOC)300中的示例组件和互连。SOC 300可包括数个异构处理器,诸如数字信号处理器(DSP)302、调制解调器处理器304、图形处理器306、以及应用处理器308。每个处理器302、304、306、308可包括一个或多个核,并且每个处理器/核可独立于其他处理器/核来执行操作。处理器302、304、306、308可被组织成彼此紧邻(例如,在单个基板、管芯、集成芯片上等等),以使得它们可以比假如信号在片外传播的情况下可能的频率/时钟速率高得多的频率/时钟速率来操作。这些核的邻近度还可允许共享片上存储器和资源(例如,电压轨)以及允许诸核之间更协调的协作。
SOC 300可包括模拟电路系统和定制电路系统314以用于管理传感器数据、模数转换、无线数据传输,并用于执行其他专门操作(例如,解码高清视频、视频处理等等)。SOC300可进一步包括各种系统组件和资源316,诸如电压调节器、振荡器、锁相环、外围桥接器、数据控制器、系统控制器、访问端口、定时器、以及用于支持在计算设备上运行的处理器和软件客户端的其他类似组件。系统组件和资源316以及定制电路系统314还可包括用于与外围设备(诸如相机、电子显示器、无线通信设备、外部存储器芯片等等)对接的电路系统。
SOC 300可进一步包括通用串行总线(USB)控制器324、以及一个或多个存储器控制器326。SOC 300还可包括用于与SOC 300外部的资源(诸如时钟318和电压调节器320)进行通信的输入/输出模块/电路/处理器(未解说),这些资源中的每一者可由内部SOC组件中的两个或更多个组件共享。
处理器302、304、306、308可经由互连/总线模块/电路/处理器330互连到USB控制器324、存储器控制器326、系统组件和资源316、定制电路系统314、以及其他系统组件,该互连/总线模块/电路/处理器330可包括可重配置逻辑门阵列和/或实现总线架构。在一方面,互连/总线模块/电路/处理器330可等效于图2的总线212和/或总线242。通信还可由高级互连来提供,诸如高性能片上网络(NoC)。
存储器控制器326可以是被配置成管理去往和来自存储器328的数据流的专用硬件模块/电路/处理器。在一方面,存储器控制器326可包括用于与存储器328对接的逻辑,诸如选择与存储器位置相对应的行和列、向存储器位置读取或写入数据等等。
在另一方面,路由器340可被嵌入在存储器328内。经由定制电路系统314、系统组件和资源316、和/或存储器控制器326,路由器340可管理应用接口电路与存储器328的存储器位置(例如,存储组域)之间的并发访问(数据流)。例如,路由器340允许第一接口群组的一个应用接口电路访问存储器328的一个存储器位置,同时第二接口群组的不同应用接口电路访问存储器328的不同存储器位置。在一方面,路由器340中的每一者可被定位成毗邻于对应的一组存储器位置。因此,具有低等待时间要求的数据可经由提供对存储器位置的最低等待时间访问的路由器340从接口群组的应用接口电路发送到该存储器位置。路由器340中的每一者可包括用于与存储器328对接的逻辑,诸如选择与存储器位置相对应的行和列、向存储器位置读取或写入数据等等。
图4是解说设备400内的模块/电路/处理器的功能组织的示图。设备400可包括被配置成存储信息的信息存储模块/电路/处理器402。信息存储模块/电路/处理器402可以例如是闪存、DRAM、DDR存储器等等。设备400还可包括模块/电路/处理器404,该模块/电路/处理器404被配置成在信息存储模块/电路/处理器402与设备400的其他模块/电路/处理器之间存档和/或检索信息。设备400还可包括专用于功率控制/消耗的模块/电路/处理器,诸如补充/调节模块/电路/处理器406和能量存储/梯度模块/电路/处理器408。多媒体子系统模块/电路/处理器410可以用数个不同技术的组件来操作,诸如显示器模块/电路/处理器、相机模块/电路/处理器、扬声器模块/电路/处理器、话筒模块/电路/处理器、触觉模块/电路/处理器、以及传感器模块/电路/处理器。通信服务子系统模块/电路/处理器420也可以用数个不同技术的组件来操作,诸如GPS模块/电路/处理器、近场通信(NFC)模块/电路/处理器、无线广域网(WWAN)模块/电路/处理器、无线局域网(WLAN)模块/电路/处理器、FM模块/电路/处理器、以及蓝牙模块/电路/处理器。换能模块/电路/处理器422和交互模块/电路/处理器424可位于多媒体子系统模块/电路/处理器410和通信服务子系统模块/电路/处理器420下方。异构计算模块/电路/处理器426和安全性考虑模块/电路/处理器428可位于多媒体子系统模块/电路/处理器410和通信服务子系统模块/电路/处理器420上方。
如图4中所示,多种技术组件(例如,显示器模块/电路/处理器、相机模块/电路/处理器、扬声器模块/电路/处理器、话筒模块/电路/处理器、GPS模块/电路/处理器、NFC模块/电路/处理器、WWAN模块/电路/处理器、WLAN模块/电路/处理器、和/或FM模块/电路/处理器)可能需要访问(由虚线箭头所标示)共用信息存储模块/电路/处理器402以便存储和/或检索数据/代码。然而,先前的系统允许不同技术组件以高成本以及长延迟来访问共用信息存储模块/电路/处理器402。因此,存在对允许多种技术组件以降低的成本和较短的延迟并发地访问共用信息存储的系统的需求。
图5是解说存储器空间500中的存储器存储组(阵列)的组织的示图。存储组可由不同技术组件通过共用数据接口502和共用地址接口504来访问。如图5中所示,共用数据接口502和共用地址接口504可用于访问所有的存储组。
在多个应用(例如,多种技术组件)可能希望同时访问存储器的并行系统中,由于单个接口(共用数据接口502/地址接口504)是该多个应用能够通过其访问存储器的唯一可用途径(图5中被称为“单个自由度”506),因此会出现瓶颈510。由此,如果一应用已经在经由该单个接口来访问存储器,则另一应用必须等待访问存储器。在存储器内,“若干内部自由度”508可用,因为存储器的不同存储组能够分开地被访问。然而,即使不同应用希望分别使用不同的存储组,这些不同应用也被迫经过单个接口来访问不同的存储组。因此,访问受到单个接口处置多个访问尝试的能力的限制。为了克服单个接口瓶颈510,先前的解决方案是增加单个接口的处理速度以容适希望访问存储器的多个应用。然而,先前的解决方案是有问题的,因为处理速度的增加以单个接口消耗更多功率为代价。
为了克服上述问题,本公开的各方面提供了用于组织存储器的替换方案。图6是解说根据本公开的用于组织存储器的示例逻辑拓扑的示图600。存储器可包括DDR存储器,该DDR存储器包括DDR组0 602(0)、DDR组1 602(1)、以及DDR组2 602(3)直至DDR组N 602(N)。存储器可进一步包括闪存,其包括闪存组0 604(0)、以及闪存组1 604(1)直至闪存组N 604(N)。去往和来自存储器组的通信可由高级互连(诸如存储器NoC 606)来提供。数个接口(诸如串行化器/解串器(SERDES)接口608a、608b、610a和610b)可与存储器NoC606一起操作以访问存储器组中的一个或多个存储器组。在一个示例中,应用可使用SERDES接口608a或608b经由长距离通道来访问存储器组中的一个或多个存储器组。在另一示例中,应用可使用SERDES接口610a或610b经由短距离通道来访问存储器组中的一个或多个存储器组。还可提供DDR访问通道612以便与存储器NoC 606一起操作以访问存储器组中的一个或多个存储器组。
图7是解说根据本公开的用于组织存储器的示例物理拓扑的示图700。如图7中所示,逻辑管芯702可位于拓扑的下端。DRAM管芯704可位于逻辑管芯702上方。闪存管芯706可位于DRAM管芯704上方。最后,包封封装708可位于闪存管芯706上方。
图8是解说存储器空间800的组织的示图。图9是解说根据本公开的各方面的路由器900的示图。路由器900可包括数个晶体管,例如,第一晶体管902、第二晶体管904、第三晶体管906、第四晶体管908、第五晶体管910、第六晶体管912、第七晶体管914、以及第八晶体管916。路由器900可进一步包括路由器控制模块/电路/处理器918,该路由器控制模块/电路/处理器918耦合到路由器配置模块/电路/处理器920。路由器控制模块/电路/处理器918可被配置成控制路由器900的操作。路由器配置模块/电路/处理器920可被配置成存储与在存储组/存储组域与应用接口电路之间路由数据相关的配置信息。路由器900还可包括第一功率控制模块/电路/处理器922和第二功率控制模块/电路/处理器924。
在一方面,晶体管902至916中的每一者的栅极耦合到路由器控制模块/电路/处理器918的输出。第一晶体管902、第二晶体管904、第三晶体管906、以及第四晶体管908中的每一者的漏极耦合到路由器控制模块/电路/处理器918的输入和第二功率控制模块/电路/处理器924的输入。第二功率控制模块/电路/处理器924的输出耦合到上游感测模块/电路/处理器(例如,图8中的感测模块/电路/处理器804)。第二功率控制模块/电路/处理器924进一步耦合到功率开关和接地节点。
第五晶体管910、第六晶体管912、第七晶体管914、以及第八晶体管916中的每一者的源极耦合到路由器配置模块/电路/处理器920的输出和第一功率控制模块/电路/处理器922的输出。第一功率控制模块/电路/处理器922的输入耦合到上游感测模块/电路/处理器(例如,感测模块/电路/处理器804)。第一功率控制模块/电路/处理器922进一步耦合到功率开关和接地节点。
作为示例,路由器900可被配置成管理数个应用接口电路(例如,接口电路812)与四个存储组域(例如,图8中的四个存储组域806)之间的并发数据流。因此,晶体管902至916中的每一者可连接到特定存储组域中的存储组以促成与这些存储组的数据流操作。例如,第一晶体管902的源极耦合到第一存储组域(组域A)的存储组输出并且第五晶体管910的漏极耦合到组域A的存储组输入;第二晶体管904的源极耦合到第二存储组域(组域B)的存储组输出并且第六晶体管912的漏极耦合到组域B的存储组输入;第三晶体管906的源极耦合到第三存储组域(组域C)的存储组输出并且第七晶体管914的漏极耦合到组域C的存储组输入;以及第四晶体管908的源极耦合到第四存储组域(组域D)的存储组输出并且第八晶体管916的漏极耦合到组域D的存储组输入。
图10是解说用于组织存储器的物理拓扑的示图1000。如图10中所示,该拓扑包括存储管芯1002、中介体1004、接口(IF)/逻辑管芯1006、以及多处理器调制解调器IC 1008。存储管芯1002通过第一组互连1012耦合到中介体1004。中介体1004通过第二组互连1014耦合到IF/逻辑管芯1006和多处理器调制解调器IC 1008。第三组互连1016可将IF/逻辑管芯1016和/或多处理器调制解调器IC 1008耦合到其他管芯或印刷电路板(PCB)(未示出)。
参照图6到10,本公开提供了不同的应用(不同技术的组件)具有用于访问存储器的个体接口。访问存储器的不同应用可以在存储器所驻留的相同SOC上(片上),或者在与存储器所驻留的SOC不同的SOC上(片外)。因此,应用可经由其相应的接口来访问存储器的期望部分(存储组)而不必等待应用完成访问尝试,诸如上述单个接口方案中。
参照图8,存储器空间800提供了功率控制模块/电路/处理器802、感测模块/电路/处理器804、存储器存储组域806、存储器存储组808以及路由器810的组织,该组织允许更高的自由度。围绕存储器空间800的是表示访问存储器存储组808的不同应用的应用接口电路812。
如图8中所示,存储组808被编组成存储组域(访问域)806。通常,每个存储组808可由行和列来标识/组织。本公开现在通过将存储组808编组成存储组域806来实现另一层组织。存储组域806提供了至排他性存储器区域的快速路径以用于容适去往/来自不同应用接口电路812的不同流。每个存储组域806连接到允许对排他性存储器区域的快速访问的路由器810。路由器810被嵌入在存储器空间800中并且允许对去往/来自不同应用接口电路812的所有不同流的解耦操作。经由路由器810,向多个接口电路812提供了高的自由度,即,向接口电路提供了用于并发/同时访问期望的存储器存储组808的多个途径。因此,防止了诸如在上述单个接口方案中的附加缓冲。
在一方面,路由器810是可配置元件,其可以用于将每个存储组域806动态地分配给给定的应用接口电路812。应用接口电路812与存储组域806的邻近度可由路由器跳数来确定。从应用接口电路812至存储组域806的距离决定了总等待时间。
根据关于图8所描述的方案,来自不同应用接口电路812的少量事务具有交叠或共享的存储器访问。很大程度上,存储器存储组808对于个体应用接口电路812或多或少是排他性的。因此,可以增加吞吐量,可以降低成本,并且可以降低整体功耗。
根据本公开的一方面,再次参照图8,存储器设备内的存储器空间800可被划分成数个存储组域(访问域)806。此外,旨在访问存储器空间800的应用接口电路812(表示不同的应用)可基于一个或多个应用要求而被分类成多个接口群组。该一个或多个应用要求可包括应用存储大小要求、应用接口带宽要求、和/或应用接口等待时间要求。该多个接口群组中的每个接口群组可被指派给对应的存储组域806。
多个路由器810(例如,路由器/微型路由器810a到810f)管理该多个接口群组与存储组域之间的并发数据流。如此,路由器810提供每个接口群组与对应的存储组域806之间的访问。具体而言,路由器810允许一个接口群组的一个接口电路(例如,接口电路812a)与另一接口群组的另一接口电路(例如,接口电路812b)访问其自己对应的存储组域(例如,存储组域806b)同时地(并发地)访问其对应的存储组域(例如,存储组域806a)。
该多个路由器810中的每个路由器被定位成毗邻于对应的存储组集合。该对应的存储组集合可包括不同存储组域的存储组。例如,路由器810f被定位成毗邻于存储组集合,该存储组集合包括来自存储组域806b和存储组域806c的存储组808。在一方面,当具有低等待时间要求的数据要从接口群组的接口电路发送给对应存储组域的存储组时,可经由提供至该存储组的最低等待时间访问的路由器来发送该数据。例如,当具有低等待时间要求的来自接口电路812a的数据要发送给存储组域806c内的存储组时,可经由提供至该存储组的最低等待时间访问的路由器810来发送该数据。
在进一步方面,经由功率控制模块/电路/处理器802分开地对存储组域806进行功率控制。这允许根据与特定存储组域相对应的接口群组的使用要求来分开地动态优化存储组域806中的每一者。
在一方面,接口电路812可被编组、确定所指派的(诸)存储组域、并经由系统配置消息来学习哪个(哪些)路由器要访问(诸)存储组域。当应用接口电路812向路由器810发送信息/数据以用于存储在特定的存储组808中时,应用接口电路812在该信息/数据中包括地址比特/令牌。该地址比特/令牌可标识应用接口电路812希望访问的特定存储组域806和/或特定存储组808。一旦信息/数据被路由器810接收,路由器810就可经由地址比特/令牌来确定要将该信息/数据存储在哪个存储组808中。如果地址比特/令牌属于由路由器810管理的存储组808,则路由器810将信息/数据存储在恰适的存储组808中。如果地址比特/令牌不属于由路由器810管理的存储组,则路由器810将信息/数据转发给恰适的路由器以供进一步处置。
在一方面,应用接口电路812可被配置成使得可使用一次路由器跳跃来访问应用接口电路最频繁使用的存储组地址。可使用多次路由器跳跃来访问应用接口电路不太频繁使用的存储组地址。
图11是解说访问存储器设备(例如,存储器328或存储器空间800)的方法的流程图。可由装置(例如,装置100或SOC 300)来执行该方法。
在1102处,该装置可将存储器设备内的存储器空间划分成多个存储组域。在一方面,该装置可分开地对存储组域进行功率控制。
在1104处,该装置可基于一个或多个应用使用要求将被配置成访问存储器空间的应用接口电路(例如,接口电路812)分类成多个接口群组。该一个或多个应用使用要求可包括应用存储大小要求、应用接口带宽要求、或应用接口等待时间要求。
在1106处,该装置可将该多个接口群组中的每个接口群组指派给该多个存储组域中的对应存储组域。
在1108处,该装置可提供每个接口群组与对应存储组域之间的访问。在一方面,第一接口群组的第一应用接口电路访问第一对应存储组域,同时第二接口群组的第二应用接口电路访问第二对应存储组域。可由多个路由器(例如,路由器340、路由器810、或路由器900)提供访问,这些路由器管理该多个接口群组与存储组域之间的并发数据流。该多个路由器可位于应用接口电路与该多个存储组域之间。
在一方面,该多个路由器中的每个路由器被定位成毗邻于对应的存储组集合,其中该对应的存储组集合包括不同存储组域的存储组。因此,在1110处,该装置可经由提供至对应存储组域的存储组的最低等待时间访问的路由器从接口群组的应用接口电路向该存储组发送具有低等待时间要求的数据。
图12是根据本公开的一个或多个方面(例如,与上述图11的方法相关的各方面)的配置成支持与访问存储器设备相关的操作的装置1200的解说。装置1200包括通信接口(例如,至少一个收发机)1202、存储介质1204、用户接口1206、存储器设备1208以及处理电路1210。
这些组件可以经由信令总线或其他合适的组件(由图12中的连接线一般化地表示)彼此耦合和/或彼此进行电通信。取决于处理电路1210的具体应用和整体设计约束,信令总线可包括任何数目的互连总线和桥接器。信令总线将各种电路链接在一起以使得通信接口1202、存储介质1204、用户接口1206和存储器设备1208中的每一者与处理电路1210耦合和/或进行电通信。信令总线还可链接各种其他电路(未示出),诸如定时源、外围设备、电压调节器和功率管理电路,这些电路在本领域中是众所周知的,且因此将不再进一步描述。
通信接口1202可被适配成促成装置1200的无线通信。例如,通信接口1202可包括被适配成促成关于网络中的一个或多个通信设备进行双向信息通信的电路系统和/或代码(例如,指令)。通信接口1202可耦合到一个或多个天线1212以用于在无线通信系统内进行无线通信。通信接口1202可以配置有一个或多个自立接收机和/或发射机以及一个或多个收发机。在所解说的示例中,通信接口1202包括发射机1214和接收机1216。
存储器设备1208可表示一个或多个存储器设备。如所指示的,存储器设备1208可维护网络相关信息1218连同装置1200所使用的其他信息。在一些实现中,存储器设备1208和存储介质1204被实现为共用存储器组件。存储器设备1208还可被用于存储由处理电路1210或由装置1200的某个其他组件操纵的数据。
存储介质1204可表示用于存储代码(诸如处理器可执行代码或指令(例如,软件、固件))、电子数据、数据库、或其他数字信息的一个或多个计算机可读、机器可读、和/或处理器可读设备。存储介质1204还可被用于存储由处理电路1210在执行代码时操纵的数据。存储介质1204可以是能被通用或专用处理器访问的任何可用介质,包括便携式或固定存储设备、光学存储设备、以及能够存储、包含或携带代码的各种其他介质。
作为示例而非限制,存储介质1204可包括:磁存储设备(例如,硬盘、软盘、磁条)、光盘(例如,压缩碟(CD)或数字多用碟(DVD))、智能卡、闪存设备(例如,记忆卡、记忆棒、或钥匙驱动器)、随机存取存储器(RAM)、只读存储器(ROM)、可编程ROM(PROM)、可擦式PROM(EPROM)、电可擦式PROM(EEPROM)、寄存器、可移动盘、以及任何其他用于存储可由计算机访问和读取的代码的合适介质。存储介质1104可以实施在制品(例如,计算机程序产品)中。作为示例,计算机程序产品可包括封装材料中的计算机可读介质。鉴于上述内容,在一些实现中,存储介质1204可以是非瞬态(例如,有形)存储介质。
存储介质1204可耦合到处理电路1210以使得处理电路1210能从存储介质1204读取信息和向存储介质1204写入信息。即,存储介质1204可耦合到处理电路1210,以使得存储介质1204至少能由处理电路1210访问,包括其中至少一个存储介质被集成到处理电路1210的示例和/或其中至少一个存储介质与处理电路1210分开(例如,驻留在装置1200中、在装置1200外部、跨多个实体分布等)的示例。
由存储介质1204存储的代码和/或指令在由处理电路1210执行时使处理电路1210执行本文描述的各种功能和/或过程操作中的一者或多者。例如,存储介质1204可包括被配置用于以下动作的操作:调节处理电路1210的一个或多个硬件块处的操作以及利用通信接口1202通过利用其相应通信协议来进行无线通信。
处理电路1210一般被适配成用于处理,包括执行存储在存储介质1204上的此类代码/指令。如本文中使用的,术语“代码”或“指令”应当被宽泛地解读成包括但不限于编程、指令、指令集、数据、代码、代码段、程序代码、程序、子程序、软件模块、应用、软件应用、软件包、例程、子例程、对象、可执行件、执行的线程、规程、函数等,无论其被称为软件、固件、中间件、微代码、硬件描述语言、还是其他术语。
处理电路1210被安排成获得、处理和/或发送数据,控制数据访问和存储,发布命令,以及控制其他期望操作。在至少一个示例中,处理电路1210可包括被配置成实现由恰适介质提供的期望代码的电路系统。例如,处理电路1210可被实现为一个或多个处理器、一个或多个控制器、和/或配置成执行可执行代码的其他结构。处理电路1210的示例可包括被设计成执行本文所描述的功能的通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或其他可编程逻辑组件、分立的门或晶体管逻辑、分立的硬件组件、或者其任何组合。通用处理器可包括微处理器,以及任何常规处理器、控制器、微控制器、或状态机。处理电路1210还可实现为计算组件的组合,诸如DSP与微处理器的组合、数个微处理器、与DSP核协作的一个或多个微处理器、ASIC和微处理器、或任何其他数目的变化配置。处理电路1210的这些示例是为了解说,并且还设想了落在本公开范围内的其他合适的配置。
根据本公开的一个或多个方面,处理电路1210可适配成执行用于本文中描述的任何或所有装置的特征、过程、功能、操作和/或例程中的任一者或全部。如本文所使用的,涉及处理电路1210的术语“适配”可指处理电路1210被配置、采用、实现和/或编程(以上一者或多者)为执行根据本文描述的各种特征的特定过程、功能、操作和/或例程。
根据装置1200的至少一个示例,处理电路1210可包括以下各项中的一者或多者:存储器空间划分电路/模块1220、应用接口/接口群组分类电路/模块1222、接口群组/存储组域指派电路/模块1224、访问提供电路/模块1226、数据发送电路/模块1228、以及功率控制电路/模块1230。
存储器空间划分电路/模块1220可包括被适配成执行与例如将存储器设备1208内的存储器空间划分成多个存储组域有关的若干功能的电路系统和/或指令(例如,存储在存储介质1204上的存储器空间划分指令1232)。
应用接口/接口群组分类电路/模块1222可包括被适配成执行与例如基于一个或多个应用使用要求将被配置成访问存储器空间的应用接口电路分类成多个接口群组有关的若干功能的电路系统和/或指令(例如,存储在存储介质1204上的应用接口/接口群组分类指令1234)。该一个或多个应用使用要求可包括应用存储大小要求、应用接口带宽要求、和/或应用接口等待时间要求。
接口群组/存储组域指派电路/模块1224可包括被适配成执行与例如将该多个接口群组中的每个接口群组指派给该多个存储组域中的对应存储组域有关的若干功能的电路系统和/或指令(例如,存储在存储介质1204上的接口群组/存储组域指派指令1236)。
访问提供电路/模块1226可包括被适配成执行与例如提供每个接口群组与对应存储组域之间的访问有关的若干功能的电路系统和/或指令(例如,存储在存储介质1204上的访问提供指令1238),其中第一接口群组的第一应用接口电路访问第一对应存储组域,同时第二接口群组的第二应用接口电路访问第二对应存储组域。访问提供电路/模块1226可经由管理该多个接口群组与存储组域之间的并发数据流的多个路由器来提供访问,其中该多个路由器位于应用接口电路与该多个存储组之间。
数据发送电路/模块1228可包括被适配成执行与例如经由提供至对应存储组域的存储组的最低等待时间访问的路由器从接口群组的应用接口电路向该存储组发送具有低等待时间要求的数据有关的若干功能的电路系统和/或指令(例如,存储在存储介质1204上的数据发送指令1240)。
功率控制电路/模块1230可包括被适配成执行与例如分开地对存储组域进行功率控制有关的若干功能的电路系统和/或指令(例如,存储在存储介质1204上的功率控制指令1242)。
如上面提到的,由存储介质1204存储的指令在由处理电路1210执行时使处理电路1210执行本文描述的各种功能和/或过程操作中的一者或多者。例如,存储介质1204可包括以下各项中的一者或多者:存储器空间划分指令1232、应用接口/接口群组分类指令1234、接口群组/存储组域指派指令1236、访问提供指令1238、数据发送指令1240、以及功率控制指令1242。
应理解,所公开的过程中各步骤的具体次序或层次是示例性办法的解说。基于设计偏好,可以重新编排这些过程中各步骤的具体次序或层次。所附方法权利要求以示例次序呈现各种步骤的要素,且并不意味着被限定于所给出的具体次序或层次。
提供先前描述是为了使本领域任何技术人员均能够实践本文中所述的各个方面。对这些方面的各种修改将容易为本领域技术人员所明白,并且在本文中所定义的普适原理可被应用于其他方面。因此,权利要求并非旨在被限定于本文中所示的方面,而是应被授予与语言上的权利要求相一致的全部范围,其中对要素的单数形式的引述除非特别声明,否则并非旨在表示“有且仅有一个”,而是“一个或多个”。除非特别另外声明,否则术语“一些”指的是“一个或多个”。本公开通篇描述的各个方面的要素为本领域普通技术人员当前或今后所知的所有结构上和功能上的等效方案通过引述被明确纳入于此,且旨在被权利要求所涵盖。此外,本文中所公开的任何内容都并非旨在贡献给公众,无论这样的公开是否在权利要求书中被显式地叙述。没有任何权利要求元素应被解释为装置加功能,除非该元素是使用短语“用于……的装置”来明确叙述的。
Claims (24)
1.一种访问存储器设备的方法,包括:
将所述存储器设备内的存储器空间划分成多个存储组域;
基于一个或多个应用使用要求将被配置成访问所述存储器空间的应用接口电路分类成多个接口群组;
将所述多个接口群组中的每个接口群组指派给所述多个存储组域中的对应存储组域;以及
提供每个接口群组与对应存储组域之间的访问,其中第一接口群组的第一应用接口电路访问第一对应存储组域,同时第二接口群组的第二应用接口电路访问第二对应存储组域。
2.如权利要求1所述的方法,其特征在于,所述一个或多个应用使用要求包括以下各项中的至少一项:
应用存储大小要求;
应用接口带宽要求;或者
应用接口等待时间要求。
3.如权利要求1所述的方法,其特征在于,所述访问是由多个路由器提供的,所述多个路由器管理所述多个接口群组与所述多个存储组域之间的并发数据流,其中所述多个路由器位于所述应用接口电路与所述多个存储组域之间。
4.如权利要求3所述的方法,其特征在于,所述多个路由器中的每个路由器被定位成毗邻于对应的存储组集合,所述对应的存储组集合包括不同存储组域的存储组。
5.如权利要求4所述的方法,其特征在于,进一步包括:经由提供至对应存储组域的存储组的最低等待时间访问的路由器从接口群组的应用接口电路向该存储组发送具有低等待时间要求的数据。
6.如权利要求1所述的方法,其特征在于,进一步包括:分开地对所述多个存储组域进行功率控制。
7.一种用于访问存储器设备的装备,包括:
用于将所述存储器设备内的存储器空间划分成多个存储组域的装置;
用于基于一个或多个应用使用要求将被配置成访问所述存储器空间的应用接口电路分类成多个接口群组的装置;
用于将所述多个接口群组中的每个接口群组指派给所述多个存储组域中的对应存储组域的装置;以及
用于提供每个接口群组与对应存储组域之间的访问的装置,其中第一接口群组的第一应用接口电路访问第一对应存储组域,同时第二接口群组的第二应用接口电路访问第二对应存储组域。
8.如权利要求7所述的装备,其特征在于,所述一个或多个应用使用要求包括以下各项中的至少一项:
应用存储大小要求;
应用接口带宽要求;或者
应用接口等待时间要求。
9.如权利要求7所述的装备,其特征在于,所述用于提供访问的装置包括多个路由器,所述多个路由器管理所述多个接口群组与所述多个存储组域之间的并发数据流,其中所述多个路由器位于所述应用接口电路与所述多个存储组域之间。
10.如权利要求9所述的装备,其特征在于,所述多个路由器中的每个路由器被定位成毗邻于对应的存储组集合,所述对应的存储组集合包括不同存储组域的存储组。
11.如权利要求10所述的装备,其特征在于,进一步包括:用于经由提供至对应存储组域的存储组的最低等待时间访问的路由器从接口群组的应用接口电路向该存储组发送具有低等待时间要求的数据的装置。
12.如权利要求7所述的装备,其特征在于,进一步包括:用于分开地对所述多个存储组域进行功率控制的装置。
13.一种用于访问存储器设备的装置,包括:
至少一个处理电路,其被配置成:
将所述存储器设备内的存储器空间划分成多个存储组域;
基于一个或多个应用使用要求将被配置成访问所述存储器空间的应用接口电路分类成多个接口群组;
将所述多个接口群组中的每个接口群组指派给所述多个存储组域中的对应存储组域;以及
提供每个接口群组与对应存储组域之间的访问,其中第一接口群组的第一应用接口电路访问第一对应存储组域,同时第二接口群组的第二应用接口电路访问第二对应存储组域。
14.如权利要求13所述的装置,其特征在于,所述一个或多个应用使用要求包括以下各项中的至少一项:
应用存储大小要求;
应用接口带宽要求;或者
应用接口等待时间要求。
15.如权利要求13所述的装置,其特征在于,所述至少一个处理电路被配置成经由多个路由器来提供所述访问,所述多个路由器管理所述多个接口群组与所述多个存储组域之间的并发数据流,其中所述多个路由器位于所述应用接口电路与所述多个存储组域之间。
16.如权利要求15所述的装置,其特征在于,所述多个路由器中的每个路由器被定位成毗邻于对应的存储组集合,所述对应的存储组集合包括不同存储组域的存储组。
17.如权利要求16所述的装置,其特征在于,所述至少一个处理电路被进一步配置成:经由提供至对应存储组域的存储组的最低等待时间访问的路由器从接口群组的应用接口电路向该存储组发送具有低等待时间要求的数据。
18.如权利要求13所述的装置,其特征在于,所述至少一个处理电路被进一步配置成:分开地对所述多个存储组域进行功率控制。
19.一种具有一条或多条指令的处理器可读存储介质,所述一条或多条指令在由至少一个处理电路执行时使所述至少一个处理电路进行以下操作:
将存储器设备内的存储器空间划分成多个存储组域;
基于一个或多个应用使用要求将被配置成访问所述存储器空间的应用接口电路分类成多个接口群组;
将所述多个接口群组中的每个接口群组指派给所述多个存储组域中的对应存储组域;以及
提供每个接口群组与对应存储组域之间的访问,其中第一接口群组的第一应用接口电路访问第一对应存储组域,同时第二接口群组的第二应用接口电路访问第二对应存储组域。
20.如权利要求19所述的处理器可读存储介质,其特征在于,所述一个或多个应用使用要求包括以下各项中的至少一项:
应用存储大小要求;
应用接口带宽要求;或者
应用接口等待时间要求。
21.如权利要求19所述的处理器可读存储介质,其特征在于,所述访问是由多个路由器提供的,所述多个路由器管理所述多个接口群组与所述多个存储组域之间的并发数据流,其中所述多个路由器位于所述应用接口电路与所述多个存储组域之间。
22.如权利要求21所述的处理器可读存储介质,其特征在于,所述多个路由器中的每个路由器被定位成毗邻于对应的存储组集合,所述对应的存储组集合包括不同存储组域的存储组。
23.如权利要求22所述的处理器可读存储介质,其特征在于,所述一条或多条指令在由所述至少一个处理电路执行时进一步使所述至少一个处理电路进行以下操作:经由提供至对应存储组域的存储组的最低等待时间访问的路由器从接口群组的应用接口电路向该存储组发送具有低等待时间要求的数据。
24.如权利要求19所述的处理器可读存储介质,其特征在于,所述一条或多条指令在由所述至少一个处理电路执行时进一步使所述至少一个处理电路进行以下操作:分开地对所述多个存储组域进行功率控制。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/805,185 | 2015-07-21 | ||
US14/805,185 US9690494B2 (en) | 2015-07-21 | 2015-07-21 | Managing concurrent access to multiple storage bank domains by multiple interfaces |
PCT/US2016/039665 WO2017014924A1 (en) | 2015-07-21 | 2016-06-27 | Concurrent access to memory space by multiple interfaces |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107851074A true CN107851074A (zh) | 2018-03-27 |
Family
ID=56409208
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201680042331.9A Pending CN107851074A (zh) | 2015-07-21 | 2016-06-27 | 多个接口对存储器空间的并发访问 |
Country Status (7)
Country | Link |
---|---|
US (1) | US9690494B2 (zh) |
EP (1) | EP3326071A1 (zh) |
JP (1) | JP6363316B1 (zh) |
KR (1) | KR101871655B1 (zh) |
CN (1) | CN107851074A (zh) |
BR (1) | BR112018001224A2 (zh) |
WO (1) | WO2017014924A1 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110286854A (zh) * | 2019-06-12 | 2019-09-27 | 北京达佳互联信息技术有限公司 | 群成员管理和群消息处理的方法、装置、设备及存储介质 |
CN111506519A (zh) * | 2020-04-22 | 2020-08-07 | 上海安路信息科技有限公司 | 为fpga码点分配sram单元的方法及系统 |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9690494B2 (en) * | 2015-07-21 | 2017-06-27 | Qualcomm Incorporated | Managing concurrent access to multiple storage bank domains by multiple interfaces |
US9898483B2 (en) * | 2015-08-10 | 2018-02-20 | American Express Travel Related Services Company, Inc. | Systems, methods, and apparatuses for creating a shared file system between a mainframe and distributed systems |
US11675413B2 (en) * | 2020-09-30 | 2023-06-13 | Dell Products L.P. | Reducing power consumption of memory devices at an information handling system |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101361050A (zh) * | 2006-03-01 | 2009-02-04 | 松下电器产业株式会社 | 数据传输装置和数据传输方法 |
CN102063274A (zh) * | 2010-12-30 | 2011-05-18 | 成都市华为赛门铁克科技有限公司 | 存储阵列和存储系统及数据访问方法 |
CN102713864A (zh) * | 2010-01-22 | 2012-10-03 | 新思公司 | 用于基于分组转换的逻辑复制的方法和系统 |
CN103049408A (zh) * | 2012-12-28 | 2013-04-17 | 苏州国芯科技有限公司 | 一种多接口sram读写控制电路及方法 |
US20140181428A1 (en) * | 2012-12-23 | 2014-06-26 | Advanced Micro Devices, Inc. | Quality of service support using stacked memory device with logic die |
WO2014178856A1 (en) * | 2013-04-30 | 2014-11-06 | Hewlett-Packard Development Company, L.P. | Memory network |
US20150036416A1 (en) * | 2013-08-05 | 2015-02-05 | Samsung Electronics Co., Ltd. | Multi-channel memory device with independent channel power supply structure and method of controlling power net |
Family Cites Families (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6853382B1 (en) | 2000-10-13 | 2005-02-08 | Nvidia Corporation | Controller for a memory system having multiple partitions |
KR101377305B1 (ko) | 2005-06-24 | 2014-03-25 | 구글 인코포레이티드 | 집적 메모리 코어 및 메모리 인터페이스 회로 |
US7747833B2 (en) * | 2005-09-30 | 2010-06-29 | Mosaid Technologies Incorporated | Independent link and bank selection |
KR100735612B1 (ko) | 2005-12-22 | 2007-07-04 | 삼성전자주식회사 | 멀티패쓰 억세스블 반도체 메모리 장치 |
TWI386846B (zh) * | 2006-03-30 | 2013-02-21 | Silicon Image Inc | 利用共享式非揮發性記憶體初始化多個處理元件之方法、系統及快閃記憶體元件 |
GB0710377D0 (en) * | 2007-05-31 | 2007-07-11 | Univ Reading The | Processors |
US7882327B2 (en) | 2007-07-31 | 2011-02-01 | Advanced Micro Devices, Inc. | Communicating between partitions in a statically partitioned multiprocessing system |
JP4497184B2 (ja) * | 2007-09-13 | 2010-07-07 | ソニー株式会社 | 集積装置およびそのレイアウト方法、並びにプログラム |
RU2010123391A (ru) * | 2007-11-09 | 2011-12-20 | Плюралити Лтд. (Il) | Система совместно используемой памяти для мультипроцессора с сильной связью |
JP5404433B2 (ja) * | 2010-01-08 | 2014-01-29 | 株式会社東芝 | マルチコアシステム |
JP2012146201A (ja) * | 2011-01-13 | 2012-08-02 | Toshiba Corp | オンチップルータ及びそれを用いたマルチコアシステム |
US8644104B2 (en) | 2011-01-14 | 2014-02-04 | Rambus Inc. | Memory system components that support error detection and correction |
GB2496396B (en) * | 2011-11-09 | 2014-07-30 | Imagination Tech Ltd | Memory access for digital signal processing |
US8804394B2 (en) | 2012-01-11 | 2014-08-12 | Rambus Inc. | Stacked memory with redundancy |
US9047090B2 (en) | 2012-08-07 | 2015-06-02 | Qualcomm Incorporated | Methods, systems and devices for hybrid memory management |
JP5943109B1 (ja) * | 2015-03-10 | 2016-06-29 | 日本電気株式会社 | 半導体チップ、集積回路、及びデータ転送方法 |
US9690494B2 (en) * | 2015-07-21 | 2017-06-27 | Qualcomm Incorporated | Managing concurrent access to multiple storage bank domains by multiple interfaces |
-
2015
- 2015-07-21 US US14/805,185 patent/US9690494B2/en not_active Expired - Fee Related
-
2016
- 2016-06-27 JP JP2018502230A patent/JP6363316B1/ja not_active Expired - Fee Related
- 2016-06-27 EP EP16738314.0A patent/EP3326071A1/en not_active Withdrawn
- 2016-06-27 BR BR112018001224A patent/BR112018001224A2/pt not_active IP Right Cessation
- 2016-06-27 KR KR1020187001746A patent/KR101871655B1/ko active IP Right Grant
- 2016-06-27 WO PCT/US2016/039665 patent/WO2017014924A1/en active Application Filing
- 2016-06-27 CN CN201680042331.9A patent/CN107851074A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101361050A (zh) * | 2006-03-01 | 2009-02-04 | 松下电器产业株式会社 | 数据传输装置和数据传输方法 |
CN102713864A (zh) * | 2010-01-22 | 2012-10-03 | 新思公司 | 用于基于分组转换的逻辑复制的方法和系统 |
CN102063274A (zh) * | 2010-12-30 | 2011-05-18 | 成都市华为赛门铁克科技有限公司 | 存储阵列和存储系统及数据访问方法 |
US20140181428A1 (en) * | 2012-12-23 | 2014-06-26 | Advanced Micro Devices, Inc. | Quality of service support using stacked memory device with logic die |
CN103049408A (zh) * | 2012-12-28 | 2013-04-17 | 苏州国芯科技有限公司 | 一种多接口sram读写控制电路及方法 |
WO2014178856A1 (en) * | 2013-04-30 | 2014-11-06 | Hewlett-Packard Development Company, L.P. | Memory network |
US20150036416A1 (en) * | 2013-08-05 | 2015-02-05 | Samsung Electronics Co., Ltd. | Multi-channel memory device with independent channel power supply structure and method of controlling power net |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110286854A (zh) * | 2019-06-12 | 2019-09-27 | 北京达佳互联信息技术有限公司 | 群成员管理和群消息处理的方法、装置、设备及存储介质 |
CN110286854B (zh) * | 2019-06-12 | 2021-10-29 | 北京达佳互联信息技术有限公司 | 群成员管理和群消息处理的方法、装置、设备及存储介质 |
CN111506519A (zh) * | 2020-04-22 | 2020-08-07 | 上海安路信息科技有限公司 | 为fpga码点分配sram单元的方法及系统 |
CN111506519B (zh) * | 2020-04-22 | 2021-04-27 | 上海安路信息科技股份有限公司 | 为fpga码点分配sram单元的方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
US20170024143A1 (en) | 2017-01-26 |
US9690494B2 (en) | 2017-06-27 |
KR101871655B1 (ko) | 2018-06-26 |
WO2017014924A1 (en) | 2017-01-26 |
JP2018524739A (ja) | 2018-08-30 |
EP3326071A1 (en) | 2018-05-30 |
BR112018001224A2 (pt) | 2018-09-11 |
JP6363316B1 (ja) | 2018-07-25 |
KR20180011338A (ko) | 2018-01-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107851074A (zh) | 多个接口对存储器空间的并发访问 | |
CN105718390B (zh) | 共享存储器链路中的低功率进入 | |
CN104115226B (zh) | 堆叠存储器体系结构中的单独微通道电压域 | |
US9432298B1 (en) | System, method, and computer program product for improving memory systems | |
CN101449334B (zh) | 具有可变端口速度的多端口存储器件 | |
CN106663078B (zh) | 延迟电路以及相关的系统和方法 | |
US10419240B2 (en) | Method of bus virtualization in computing machine intercommunications | |
JP6092971B2 (ja) | ダイ上インターコネクトのためのアーキテクチャ | |
CN104050618B (zh) | 接地参考单端信令连接的图形处理单元多芯片系统与装置 | |
CN107078959A (zh) | 减轻分布式非核结构中的业务量引导低效 | |
CN105027444B (zh) | 集成时钟差分缓冲 | |
CN104115227A (zh) | 使用系统热传感器数据的存储器操作 | |
CN104115129A (zh) | 用于从处理器到存储器子系统智能刷新数据的系统和方法 | |
CN108027785A (zh) | 用于对链路拆分进行去偏斜的方法、设备和系统 | |
CN107003971A (zh) | 用于高性能互连中的嵌入式流通道的方法、装置、系统 | |
US8725202B2 (en) | Single transceiver for wireless peer-to-peer connections | |
TWI519962B (zh) | 智慧雙資料率(ddr)記憶體控制器 | |
CN107003962A (zh) | 高速缓存一致代理到一致结构的低开销分层连接 | |
CN107077440A (zh) | 紧密耦合的分布式非核一致结构 | |
EP3084629B1 (en) | Hierarchical and parallel partition networks | |
US9575759B2 (en) | Memory system and electronic device including memory system | |
DE102022129397A1 (de) | Beschleuniger-fabric für diskrete grafik | |
CN110377105A (zh) | 用于多管芯封装的单个时钟源 | |
Sengupta et al. | VLSI Circuits and Systems Letter |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20180327 |
|
WD01 | Invention patent application deemed withdrawn after publication |