CN107209717A - 针对存储器元件的分叉存储器管理 - Google Patents
针对存储器元件的分叉存储器管理 Download PDFInfo
- Publication number
- CN107209717A CN107209717A CN201680009242.4A CN201680009242A CN107209717A CN 107209717 A CN107209717 A CN 107209717A CN 201680009242 A CN201680009242 A CN 201680009242A CN 107209717 A CN107209717 A CN 107209717A
- Authority
- CN
- China
- Prior art keywords
- instruction
- memory component
- memory
- main frame
- managed
- 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
- 238000000034 method Methods 0.000 claims description 29
- 238000004891 communication Methods 0.000 claims description 27
- 238000006243 chemical reaction Methods 0.000 claims description 6
- 238000013519 translation Methods 0.000 claims description 4
- 230000005055 memory storage Effects 0.000 claims 1
- 238000005516 engineering process Methods 0.000 abstract description 4
- 230000008569 process Effects 0.000 description 7
- 238000010586 diagram Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 4
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 238000013461 design Methods 0.000 description 2
- 230000010354 integration Effects 0.000 description 2
- 238000011017 operating method Methods 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 241000208340 Araliaceae Species 0.000 description 1
- 241000196324 Embryophyta Species 0.000 description 1
- 235000005035 Panax pseudoginseng ssp. pseudoginseng Nutrition 0.000 description 1
- 235000003140 Panax quinquefolius Nutrition 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 235000008434 ginseng Nutrition 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 239000006249 magnetic particle Substances 0.000 description 1
- 239000002245 particle Substances 0.000 description 1
- 238000004549 pulsed laser deposition Methods 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
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
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0238—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
- G06F12/0246—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1668—Details of memory controller
-
- 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/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0658—Controller construction arrangements
-
- 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/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0659—Command handling arrangements, e.g. command buffers, queues, command scheduling
-
- 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/0673—Single storage device
- G06F3/0679—Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
-
- 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]
-
- 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
- G06F2212/1024—Latency reduction
-
- 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/72—Details relating to flash memory management
- G06F2212/7201—Logical to physical mapping or translation of blocks or pages
-
- 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/72—Details relating to flash memory management
- G06F2212/7202—Allocation control and policies
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)
- Software Systems (AREA)
- Memory System (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
公开了针对存储器元件的分叉存储器管理的技术。在一方面,一种存储器元件包括自管理部分和由远程主机管理的部分。需要低等待时间访问的软件可被存储在存储器元件的由远程主机管理的部分中,并且其他软件可被存储在存储器元件的由该存储器元件管理的部分中。通过提供对存储器元件的这种分叉存储器管理,可使用相对不昂贵的存储器元件来存储软件,而同时允许用最小的总线逻辑对敏感的软件元件的低等待时间(虽然以低吞吐量)访问。
Description
优先权要求
本申请要求于2015年2月13日提交的题为“BIFURCATED MEMORY MANAGEMENT FORMEMORY ELEMENTS(针对存储器元件的分叉存储器管理)”的美国专利申请序列号No.14/621,874的优先权,该申请通过援引全部纳入于此。
背景
I.公开领域
本公开的技术一般涉及存储器元件,尤其涉及对存储器元件的管理。
II.背景
计算设备依赖于存储器以及存储在其中的软件来实现许多功能。移动计算设备(诸如智能电话)是使用存储在存储器中的软件来实现许多功能的计算设备的一个示例。一种此类功能是对实现无线通信的无线调制解调器的控制。虽然这种功能性可严格地在硬件中实现,但这种实现可能是不必要地复杂、难以升级、难以测试并且空间不容许的。由此,一定量的功能性将通过软件来实例化,并且设备必须具有恰适的存储器来存储该软件。
如上面提及的,通常由软件实现的一种此类功能是移动计算设备的(诸)无线调制解调器的功能性。虽然行业的不同部分可能用不同术语来指代这种软件,但如本文所使用的,这种软件被称为调制解调器子系统(MSS)码。MSS码相对较大并且必须以某种规则性、以低等待时间来访问。在一些设备中,MSS码可被存储在直接随机存取存储器(DRAM)中。然而,DRAM相对昂贵,并且这种费用会使得设备在高度竞争的移动计算设备市场中在商业上无吸引力。
一些设计者可将MSS码移动到远程存储器元件,诸如与非型(NAND)存储元件。然而,NAND存储元件通常具有太多等待时间以至于不切实际。由此,设计者需要改善的技术以允许对诸如MSS码之类的软件的低等待时间、相对不昂贵的访问。
公开概述
详细描述中所公开的各方面包括针对存储器元件的分叉存储器管理。具体而言,本公开的各示例性方面提出了一种包括自管理部分和由远程主机管理的部分的存储器元件。需要低等待时间访问的软件可被存储在存储器元件的由远程主机管理的部分中,并且其他软件和/或附加文件(例如,媒体文件、用户设置)可被存储在存储器元件的由该存储器元件管理的部分中。通过提供对存储器元件的这种分叉存储器管理,可使用相对不昂贵的存储器元件来存储软件,而同时允许用最小的总线逻辑对敏感的软件元件的低等待时间(虽然以低吞吐量)访问。
就此而言,在一个方面,公开了一种控制存储器元件的方法。所述方法包括:在主机处生成用于存储器元件的受管理部分的第一指令。所述方法还包括:将所述第一指令与所述存储器元件的逻辑地址进行关联。所述方法还包括:使用总线协议、通过通信总线将所述第一指令传送给所述存储器元件的所述受管理部分。所述方法还包括:在所述主机处生成用于所述存储器元件的不受管理部分的第二指令。所述方法还包括:将所述第二指令与所述存储器元件的物理地址进行关联。所述方法还包括:使用所述总线协议、通过所述通信总线将所述第二指令传送给所述存储器元件的所述不受管理部分。
在另一方面,公开了一种用于存储器元件的操作的方法。所述方法包括:使用总线协议从通信总线接收来自主机的第一指令,所述第一指令包括存储器元件的受管理部分的逻辑地址。所述方法还包括:使用所述总线协议从所述通信总线接收来自所述主机的第二指令,所述第二指令包括所述存储器元件的不受管理部分的物理地址。
在另一方面,公开了一种存储器元件。所述存储器元件包括控制器。所述存储器元件还包括被配置成由所述控制器管理的第一存储空间。所述存储器元件还包括被配置成由远离存储器元件的主机管理的第二存储空间。
在另一方面,公开了一种主机。所述主机包括总线接口,其被配置成耦合到通信总线。所述主机还包括操作地耦合到所述总线接口的收发机。所述主机还包括操作地耦合到所述收发机的控制器。所述控制器被配置成:生成用于存储器元件的受管理部分的第一指令。所述控制器还被配置成:将所述第一指令与所述存储器元件的逻辑地址进行关联。所述控制器还被配置成:指示所述收发机使用总线协议、通过所述通信总线将所述第一指令传送给所述存储器元件的所述受管理部分。所述控制器还被配置成:生成用于所述存储器元件的不受管理部分的第二指令。所述控制器还被配置成:将所述第二指令与所述存储器元件的物理地址进行关联。所述控制器还被配置成:指示所述收发机使用所述总线协议、通过所述通信总线将所述第二指令传送给所述存储器元件的所述不受管理部分。
附图简述
图1是根据本公开的示例性方面的具有主机和存储器系统的系统的框图;
图2是图1的主机与存储器系统之间的信号流图;
图3是解说了根据本公开的示例性方面的用于使用存储器系统的受管理部分的示例性过程的流程图;
图4是解说了根据本公开的示例性方面的用于使用存储器系统的不受管理部分的示例性过程的流程图;以及
图5是可以包括图1的主机和存储器系统的示例性基于处理器的系统的框图。
详细描述
现在参照附图,描述了本公开的若干示例性方面。措辞“示例性”在本文中用于表示“用作示例、实例或解说”。本文中描述为“示例性”的任何方面不必然被解释为优于或胜过其他方面。
本详细描述中所公开的各方面包括针对存储器元件的分叉存储器管理。具体而言,本公开的各示例性方面提出了一种包括自管理部分和由远程主机管理的部分的存储器元件。需要低等待时间访问的软件可被存储在存储器元件的由远程主机管理的部分中,并且其他软件和/或附加文件(例如,媒体文件、用户设置)可被存储在存储器元件的由该存储器元件管理的部分中。通过提供对存储器元件的这种分叉存储器管理,可使用相对不昂贵的存储器元件来存储软件,而同时允许用最小的总线逻辑对敏感的软件元件的低等待时间(虽然以低吞吐量)访问。
就此而言,图1是根据本公开的示例性方面的具有主机12和存储器系统14的系统10的框图。主机12可通过通信总线16与存储器系统14通信。在示例性方面,存储器系统14是闪存设备。存储器系统14可包括随机存取存储器(RAM)部分18以及存储器元件20。在示例性方面,存储器元件20是与非型(NAND)存储器元件并具有两个部分。第一部分是受管理部分22,并且第二部分是不受管理部分24(在图1上还被标记成unM)。受管理部分22由存储器系统14内的微处理器(uP)26管理,并且不受管理部分24由主机12管理。与完全由内部管理的存储器系统形成对比,本公开的各示例性方面为不受管理部分24提供了低等待时间。同样地,与完全由主机管理的存储器系统形成对比,本公开的各示例性方面为大容量存储空间提供了高吞吐量和设备管理。此外,通过仅分配不受管理部分24,对主机12的负担有限。
继续参照图1,在示例性方面,当存储器系统14被集成到包含主机12和存储器系统14的设备(例如,移动电话)中时,设置不受管理部分24的大小和参数。在示例性方面,受管理部分22大于不受管理部分24。在另一示例性方面,不受管理部分24仅足够大以容纳调制解调器系统软件(MSS)码。由此,大部分存储器系统14由微处理器26管理并且不会受到不受管理部分24的影响。此外,主机12负责通过运行在其上的闪存转换层(FTL)软件来管理不受管理部分24。在使用中,存在两种类型的读/写访问命令。当主机12希望从不受管理部分24读取或者写入不受管理部分24时,主机12使用物理地址,这帮助保证低等待时间。当主机12希望从受管理部分22读取或写入受管理部分22时,主机12使用逻辑地址,并且微处理器26提供地址转换以将接收自主机12的逻辑地址转换成受管理部分22的物理地址。在示例性方面,主机12可按以下方式来编码通信总线16上的命令:告诉存储器系统14该命令使用逻辑地址还是物理地址。此外,微处理器26执行用于受管理部分22的FTL。
图2是图1的主机12与存储器系统14之间的信号流图。就此而言,主机12生成具有逻辑地址的第一指令30并使用总线协议经由通信总线16将其发送给存储器系统14。第一指令30和逻辑地址由微处理器26接收。微处理器26需要对逻辑地址的转换,因此微处理器26向转换表28发送地址查询32,转换表28用物理地址34对微处理器26作出响应。微处理器26用所获得的物理地址将指令36提供给受管理部分22。要注意,指令可以是读取或写入指令。受管理部分22将输出38提供给微处理器26,微处理器26使用与第一指令30相同的总线协议、使用通信总线16将输出40传递返回至主机12。当微处理器26和受管理部分22不忙于对读/写请求进行服务时,微处理器26可使用已知的物理地址向受管理部分22发送FTL函数(FUNC)42。受管理部分用FTL FUNC响应(RES)44作出响应。
继续参照图2,主机12生成具有物理地址的第二指令。要注意,第一和第二在本文中用于辅助对各指令进行区分,并非旨在暗示特定的时间顺序。和第一指令30一样,第二指令可以是用于从存储器系统14读取或写入存储器系统14的指令,尽管第二指令是从不受管理部分24读取或写入不受管理部分24而非受管理部分22。主机12将指令46发送给不受管理部分24,并且不受管理部分24用输出48作出响应。要注意,指令46是使用与第一指令30相同的总线协议在相同的通信总线16上被发送的。当主机12和不受管理部分24不忙于对读/写请求进行服务时,主机12可向不受管理部分24发送FTL FUNC 50。不受管理部分24用FTLFUNC RES 52作出响应。
图3是解说了根据本公开的示例性方面的用于使用图1的存储器系统14的受管理部分22的示例性过程60的流程图。过程60开始于主机12存储受管理部分22的逻辑地址(框62)。要注意,该存储可在设备集成时完成。随后,主机12生成用于存储器元件20的受管理部分22的指令(例如,第一指令)(框64)。主机12将指令与恰适的逻辑地址进行关联(框66)。主机12随后使用总线协议、使用通信总线16将指令传送给微处理器26(框68)。存储器元件20(尤其是微处理器26)接收具有受管理部分22的逻辑地址的指令(框70)。微处理器26通过参照图1的转换表28将逻辑地址转换成物理地址(框72)。微处理器26随后使用所获得的物理地址将第一指令发送给受管理部分22并且该指令被执行(框74)。当微处理器26和受管理部分22不忙于执行读/写指令时,微处理器按需要运行FTL(框76)。过程60允许针对大容量存储空间的高吞吐量和设备管理,同时对主机12施加相对小的管理要求。然而,这些优点是以相对高的等待时间为代价的。
类似地,图4是解说了根据本公开的示例性方面的用于使用图1的存储器系统14的不受管理部分24的示例性过程80的流程图。过程80开始于在主机12处存储不受管理部分24的物理地址(框82)。要注意,该存储可在设备集成时完成。主机12生成用于存储器元件20的不受管理部分24的指令(例如,第二指令)(框84)。主机12针对指令关联不受管理部分24的物理地址(框86)。主机12使用与用于发送给受管理部分22的指令相同的总线协议、使用相同的通信总线16将指令传送给不受管理部分24(框88)。存储器元件20接收具有不受管理部分24的物理地址的指令(框90)。不受管理部分24执行指令(框92)。当主机12和不受管理部分24不在执行指令时,主机12可按需要运行FTL(框94)。
根据本文所公开的各方面的针对存储器元件的分叉存储器管理可在任何基于处理器的设备中提供或集成到任何基于处理器的设备中。不作为限定的示例包括机顶盒、娱乐单元、导航设备、通信设备、固定位置数据单元、移动位置数据单元、移动电话、蜂窝电话、计算机、便携式计算机、台式计算机、个人数字助理(PDA)、监视器、计算机监视器、电视机、调谐器、无线电、卫星无线电、音乐播放器、数字音乐播放器、便携式音乐播放器、数字视频播放器、视频播放器、数字视频碟(DVD)播放器、以及便携式数字视频播放器。
就此而言,图5解说了可以采用图1中所解说的主机12和存储器系统14的基于处理器的系统100的示例。在该示例中,基于处理器的系统100包括一个或多个中央处理单元(CPU)102,其各自包括一个或多个处理器104。(诸)CPU 102可以是主机12。(诸)CPU 102可具有耦合到(诸)处理器104以用于对临时存储的数据和/或逻辑和物理地址的存储进行快速访问的高速缓存存储器106。(诸)CPU 102耦合到系统总线108并且可以将被包括在基于处理器的系统100中的各设备相互耦合。系统总线108可以是或者可以包括图1中所解说的通信总线16。如众所周知的,(诸)CPU 102通过在系统总线108上交换地址、控制、以及数据信息来与这些其他设备通信。例如,(诸)CPU 102可将指令传达给存储器系统110,存储器系统110可以是图1的存储器系统14。
其他设备可以连接到系统总线108或其他总线。如图5中所解说的,作为示例,这些设备可以包括存储器系统110、一个或多个输入设备112、一个或多个输出设备114、一个或多个网络接口设备116、以及一个或多个显示控制器118。(诸)输入设备112可以包括任何类型的输入设备,包括但不限于输入键、开关、语音处理器等。(诸)输出设备114可以包括任何类型的输出设备,包括但不限于音频、视频、其他视觉指示器等。(诸)网络接口设备116可以是被配置成允许往来于网络120的数据交换的任何设备。网络120可以是任何类型的网络,包括但不限于有线或无线网络、私有或公共网络、局域网(LAN)、无线局域网(WLAN)、广域网(WAN)、蓝牙TM网络、以及因特网。(诸)网络接口设备116可以被配置成支持所期望的任何类型的通信协议。
(诸)CPU 102还可被配置成在系统总线108上访问(诸)显示控制器118以控制发送给一个或多个显示器122的信息。(诸)显示控制器118经由一个或多个视频处理器124向(诸)显示器122发送要显示的信息,视频处理器124将要显示的信息处理成适于(诸)显示器122的格式。(诸)显示器122可包括任何类型的显示器,包括但不限于阴极射线管(CRT)、液晶显示器(LCD)、等离子显示器、发光二极管(LED)显示器等。
本领域技术人员将进一步领会,结合本文所公开的各方面描述的各种解说性逻辑块、模块、电路和算法可被实现为电子硬件、存储在存储器中或另一计算机可读介质中并由处理器或其它处理设备执行的指令、或这两者的组合。作为示例,本文中描述的设备可在任何电路、硬件组件、集成电路(IC)、或IC芯片中采用。本文所公开的存储器可以是任何类型和大小的存储器,并且可被配置成存储所期望的任何类型的信息。为了清楚地解说这种可互换性,各种解说性组件、框、模块、电路和步骤在上文已经以其功能性的形式一般性地作了描述。此类功能性如何被实现取决于具体应用、设计选择、和/或加诸于整体系统上的设计约束。技术人员可针对每种特定应用以不同方式来实现所描述的功能性,但此类实现决策不应被解读为致使脱离本公开的范围。
结合本文所公开的各方面描述的各种解说性逻辑块、模块、以及电路可用被设计成执行本文所描述的功能的处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或其他可编程逻辑器件、分立的门或晶体管逻辑、分立的硬件组件、或其任何组合来实现或执行。处理器可以是微处理器,但在替换方案中,处理器可以是任何常规处理器、控制器、微控制器或状态机。处理器还可以被实现为计算设备的组合(例如DSP与微处理器的组合、多个微处理器、与DSP核心协同的一个或多个微处理器、或任何其他此类配置)。
本文所公开的各方面可被体现为硬件和存储在硬件中的指令,并且可驻留在例如随机存取存储器(RAM)、闪存、只读存储器(ROM)、电可编程ROM(EPROM)、电可擦可编程ROM(EEPROM)、寄存器、硬盘、可移动盘、CD-ROM、或本领域中所知的任何其它形式的计算机可读介质中。示例性存储介质被耦合到处理器,以使得处理器能从/向该存储介质读取/写入信息。在替换方案中,存储介质可以被整合到处理器。处理器和存储介质可驻留在ASIC中。ASIC可驻留在远程站中。在替换方案中,处理器和存储介质可作为分立组件驻留在远程站、基站或服务器中。
还注意到,本文任何示例性方面中所描述的操作步骤是为了提供示例和讨论而被描述的。所描述的操作可按除了所解说的顺序之外的众多不同顺序来执行。此外,在单个操作步骤中描述的操作实际上可在多个不同步骤中执行。另外,示例性方面中讨论的一个或多个操作步骤可被组合。应理解,如对本领域技术人员显而易见地,在流程图中解说的操作步骤可进行众多不同的修改。本领域技术人员还将理解,可使用各种不同技术和技艺中的任何一种来表示信息和信号。例如,贯穿上面描述始终可能被述及的数据、指令、命令、信息、信号、比特、码元和码片可由电压、电流、电磁波、磁场或磁粒子、光场或光粒子、或其任何组合来表示。
提供对本公开的先前描述是为使得本领域任何技术人员皆能够制作或使用本公开。对本公开的各种修改对本领域技术人员而言将容易是显而易见的,并且本文中所定义的普适原理可被应用到其他变型而不会脱离本公开的精神或范围。由此,本公开并非旨在被限定于本文中所描述的示例和设计,而是应被授予与本文所公开的原理和新颖特征一致的最广义的范围。
Claims (24)
1.一种控制存储器元件的方法,包括:
在主机处生成用于存储器元件的受管理部分的第一指令;
将所述第一指令与所述存储器元件的逻辑地址进行关联;
使用总线协议、通过通信总线将所述第一指令传送给所述存储器元件的所述受管理部分;
在所述主机处生成用于所述存储器元件的不受管理部分的第二指令;
将所述第二指令与所述存储器元件的物理地址进行关联;以及
使用所述总线协议、通过所述通信总线将所述第二指令传送给所述存储器元件的所述不受管理部分。
2.如权利要求1所述的方法,其特征在于,进一步包括:在所述主机处执行用于所述存储器元件的所述不受管理部分的闪存转换层(FTL)。
3.如权利要求1所述的方法,其特征在于,进一步包括:允许所述存储器元件执行用于所述存储器元件的所述受管理部分的FTL。
4.如权利要求1所述的方法,其特征在于,生成用于所述存储器元件的所述受管理部分的所述第一指令包括:生成用于与非型(NAND)闪存存储器元件的所述第一指令。
5.如权利要求1所述的方法,其特征在于,进一步包括:在所述主机处存储所述存储器元件的所述不受管理部分的物理地址的范围。
6.如权利要求1所述的方法,其特征在于,进一步包括:在所述主机处存储所述存储器元件的所述受管理部分的逻辑地址的范围。
7.如权利要求1所述的方法,其特征在于,在所述主机处生成所述第一指令包括:生成读或写访问指令。
8.一种用于存储器元件的操作的方法,包括:
使用总线协议从通信总线接收来自主机的第一指令,所述第一指令包括存储器元件的受管理部分的逻辑地址;以及
使用所述总线协议从所述通信总线接收来自所述主机的第二指令,所述第二指令包括所述存储器元件的不受管理部分的物理地址。
9.如权利要求8所述的方法,其特征在于,所述存储器元件包括与非型(NAND)闪存存储器元件。
10.如权利要求8所述的方法,其特征在于,进一步包括:在所述存储器元件处执行闪存转换层(FTL)。
11.如权利要求8所述的方法,其特征在于,接收所述第二指令包括:从所述主机接收用于所述存储器元件的所述不受管理部分的FTL命令。
12.如权利要求8所述的方法,其特征在于,所述第一指令包括读或写访问指令。
13.一种存储器元件,包括:
控制器;
第一存储空间,其被配置成由所述控制器管理;以及
第二存储空间,其被配置成由远离存储器元件的主机管理。
14.如权利要求13所述的存储器元件,其特征在于,所述存储器元件是与非型(NAND)闪存存储器元件。
15.如权利要求13所述的存储器元件,其特征在于,进一步包括总线接口,所述总线接口被配置成耦合到通信总线。
16.如权利要求15所述的存储器元件,其特征在于,所述总线接口被配置成:将指令从所述主机直接传递给所述第二存储空间。
17.如权利要求13所述的存储器元件,其特征在于,所述控制器被配置成:使用总线协议从通信总线接收来自所述主机的第一指令,所述第一指令包括所述第一存储空间的逻辑地址。
18.如权利要求17所述的存储器元件,其特征在于,所述控制器被进一步配置成:执行用于所述第一存储空间的闪存转换层(FTL)。
19.如权利要求17所述的存储器元件,其特征在于,所述控制器被进一步配置成:将所述逻辑地址转换成所述存储器元件的所述第一存储空间的物理地址。
20.一种主机,包括:
总线接口,其被配置成耦合到通信总线;
操作地耦合到所述总线接口的收发机;以及
操作地耦合到所述收发机的控制器,所述控制器被配置成:
生成用于存储器元件的受管理部分的第一指令;
将所述第一指令与所述存储器元件的逻辑地址进行关联;
指示所述收发机使用总线协议、通过所述通信总线将所述第一指令传送给所述存储器元件的所述受管理部分;
生成用于所述存储器元件的不受管理部分的第二指令;
将所述第二指令与所述存储器元件的物理地址进行关联;以及
指示所述收发机使用所述总线协议、通过所述通信总线将所述第二指令传送给所述存储器元件的所述不受管理部分。
21.如权利要求20所述的主机,其特征在于,所述控制器被进一步配置成:执行用于所述第二指令的闪存转换层(FTL)。
22.如权利要求20所述的主机,其特征在于,所述第一指令包括读或写访问指令中的一者。
23.如权利要求20所述的主机,其特征在于,所述控制器被进一步配置成:允许所述存储器元件执行用于所述存储器元件的所述受管理部分的FTL。
24.如权利要求20所述的主机,其特征在于,用于所述存储器元件的所述受管理部分的所述第一指令包括:用于与非型(NAND)闪存存储器元件的指令。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311032165.2A CN117055813A (zh) | 2015-02-13 | 2016-01-12 | 针对存储器元件的分叉存储器管理 |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/621,874 US9880748B2 (en) | 2015-02-13 | 2015-02-13 | Bifurcated memory management for memory elements |
US14/621,874 | 2015-02-13 | ||
PCT/US2016/012987 WO2016130256A1 (en) | 2015-02-13 | 2016-01-12 | Bifurcated memory management for memory elements |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311032165.2A Division CN117055813A (zh) | 2015-02-13 | 2016-01-12 | 针对存储器元件的分叉存储器管理 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107209717A true CN107209717A (zh) | 2017-09-26 |
Family
ID=55398395
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201680009242.4A Pending CN107209717A (zh) | 2015-02-13 | 2016-01-12 | 针对存储器元件的分叉存储器管理 |
CN202311032165.2A Pending CN117055813A (zh) | 2015-02-13 | 2016-01-12 | 针对存储器元件的分叉存储器管理 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311032165.2A Pending CN117055813A (zh) | 2015-02-13 | 2016-01-12 | 针对存储器元件的分叉存储器管理 |
Country Status (5)
Country | Link |
---|---|
US (1) | US9880748B2 (zh) |
EP (1) | EP3256945A1 (zh) |
JP (1) | JP2018505490A (zh) |
CN (2) | CN107209717A (zh) |
WO (1) | WO2016130256A1 (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR3072476A1 (fr) * | 2017-10-13 | 2019-04-19 | Proton World International N.V. | Unite logique de memoire pour memoire flash |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2010060902A1 (de) * | 2008-11-27 | 2010-06-03 | Giesecke & Devrient Gmbh | Speicherzugriff auf einen portablen datenträger |
CN101901129A (zh) * | 2004-12-02 | 2010-12-01 | 英特尔公司 | 以高性能方式从cpu或处理单元中访问物理存储器的方法和装置 |
US20110041039A1 (en) * | 2009-08-11 | 2011-02-17 | Eliyahou Harari | Controller and Method for Interfacing Between a Host Controller in a Host and a Flash Memory Device |
CN102915285A (zh) * | 2011-09-14 | 2013-02-06 | 微软公司 | 虚拟化环境中的应用加速 |
CN103080912A (zh) * | 2010-08-26 | 2013-05-01 | 飞思卡尔半导体公司 | 用于微处理器系统的存储器管理单元、微处理器系统及管理存储器的方法 |
US20140215129A1 (en) * | 2013-01-28 | 2014-07-31 | Radian Memory Systems, LLC | Cooperative flash memory control |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6629192B1 (en) * | 1999-12-30 | 2003-09-30 | Intel Corporation | Method and apparatus for use of a non-volatile storage management system for PC/AT compatible system firmware |
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 |
DE102007050463A1 (de) * | 2006-11-16 | 2008-05-21 | Giesecke & Devrient Gmbh | Verfahren zum Zugriff auf einen tragbaren Speicherdatenträger mit Zusatzmodul und tragbarer Speicherdatenträger |
KR100823171B1 (ko) * | 2007-02-01 | 2008-04-18 | 삼성전자주식회사 | 파티션된 플래시 변환 계층을 갖는 컴퓨터 시스템 및플래시 변환 계층의 파티션 방법 |
US20090271563A1 (en) | 2008-04-28 | 2009-10-29 | Microsoft Corporation | Flash memory transactioning |
WO2010041093A1 (en) * | 2008-10-09 | 2010-04-15 | Federico Tiziani | Virtualized ecc nand |
US8370603B2 (en) * | 2008-12-23 | 2013-02-05 | Apple Inc. | Architecture for address mapping of managed non-volatile memory |
US8438453B2 (en) | 2009-05-06 | 2013-05-07 | Apple Inc. | Low latency read operation for managed non-volatile memory |
US20110041005A1 (en) * | 2009-08-11 | 2011-02-17 | Selinger Robert D | Controller and Method for Providing Read Status and Spare Block Management Information in a Flash Memory System |
US8650446B2 (en) | 2010-03-24 | 2014-02-11 | Apple Inc. | Management of a non-volatile memory based on test quality |
US20160077959A1 (en) * | 2014-09-12 | 2016-03-17 | Qualcomm Incorporated | System and Method for Sharing a Solid-State Non-Volatile Memory Resource |
-
2015
- 2015-02-13 US US14/621,874 patent/US9880748B2/en active Active
-
2016
- 2016-01-12 CN CN201680009242.4A patent/CN107209717A/zh active Pending
- 2016-01-12 EP EP16705332.1A patent/EP3256945A1/en not_active Withdrawn
- 2016-01-12 JP JP2017541788A patent/JP2018505490A/ja active Pending
- 2016-01-12 WO PCT/US2016/012987 patent/WO2016130256A1/en active Application Filing
- 2016-01-12 CN CN202311032165.2A patent/CN117055813A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101901129A (zh) * | 2004-12-02 | 2010-12-01 | 英特尔公司 | 以高性能方式从cpu或处理单元中访问物理存储器的方法和装置 |
WO2010060902A1 (de) * | 2008-11-27 | 2010-06-03 | Giesecke & Devrient Gmbh | Speicherzugriff auf einen portablen datenträger |
US20110041039A1 (en) * | 2009-08-11 | 2011-02-17 | Eliyahou Harari | Controller and Method for Interfacing Between a Host Controller in a Host and a Flash Memory Device |
CN103080912A (zh) * | 2010-08-26 | 2013-05-01 | 飞思卡尔半导体公司 | 用于微处理器系统的存储器管理单元、微处理器系统及管理存储器的方法 |
CN102915285A (zh) * | 2011-09-14 | 2013-02-06 | 微软公司 | 虚拟化环境中的应用加速 |
US20140215129A1 (en) * | 2013-01-28 | 2014-07-31 | Radian Memory Systems, LLC | Cooperative flash memory control |
Also Published As
Publication number | Publication date |
---|---|
US9880748B2 (en) | 2018-01-30 |
WO2016130256A1 (en) | 2016-08-18 |
EP3256945A1 (en) | 2017-12-20 |
CN117055813A (zh) | 2023-11-14 |
JP2018505490A (ja) | 2018-02-22 |
US20160239218A1 (en) | 2016-08-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11755527B2 (en) | Techniques for command validation for access to a storage device by a remote client | |
US9881680B2 (en) | Multi-host power controller (MHPC) of a flash-memory-based storage device | |
CN104063290B (zh) | 处理超时的系统、方法和装置 | |
CN104050114B (zh) | 同步端口进入低功率状态的系统、方法和设备 | |
CN107077443A (zh) | 用于动态枚举总线的预定义静态枚举 | |
CN104052621A (zh) | 用于跨快速外围组件互连(pcie)段的平台管理消息的方法和系统 | |
CN110532212A (zh) | 用于有效外围组件管理的dvsec的系统、方法和装置 | |
CN105518640A (zh) | 在嵌入式存储器中提供命令排队 | |
CN107003971A (zh) | 用于高性能互连中的嵌入式流通道的方法、装置、系统 | |
US9632953B2 (en) | Providing input/output virtualization (IOV) by mapping transfer requests to shared transfer requests lists by IOV host controllers | |
CN109964213A (zh) | 在基于处理器的系统中提供经扩展动态随机存取存储器突发长度 | |
CN107980127A (zh) | 对快速外围组件互连(PCI)(PCIe)事务层的一致性驱动增强 | |
WO2021135474A1 (zh) | 多数据来源的数据融合方法、装置、电子设备及存储介质 | |
CN109388475A (zh) | 一种物理裸机的部署方法、装置、电子设备及存储介质 | |
CN109314103A (zh) | 用于远程现场可编程门阵列处理的方法和装置 | |
US20190004816A1 (en) | Systems and methods for heterogeneous system on a chip servers | |
CN107209643A (zh) | 虚拟化环境中的存储资源管理 | |
CN116034364A (zh) | 半导体装置中的功能的客户特定激活 | |
TW200424934A (en) | Device information management system of application device and method thereof | |
CN107209717A (zh) | 针对存储器元件的分叉存储器管理 | |
US20170344347A1 (en) | Rendering interface objects defined by a separate application | |
CN109643577A (zh) | 用于存储器训练的电参数的多维优化 | |
CN115510803A (zh) | 熔丝配方更新机制 | |
TWI281636B (en) | Motherboard and computer system with multiple integrated graphics processors and related method | |
CN106533983A (zh) | 用于数据带宽优化的设备、方法及程序产品 |
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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20170926 |