威尼斯人棋牌-威尼斯欢乐娱人城-首页

用以提高固态驱动器的操作速度的NAND接口设备的制作方法

文档序号:24934025发布日期:2021-05-04 11:24
用以提高固态驱动器的操作速度的NAND接口设备的制作方法

本发明大体上涉及一种固态驱动器,并且更具体地涉及一种用于实现用以提高固态驱动器的操作速度的nand接口设备的方法和/或装置。



背景技术:

固态驱动器(ssd)是一种计算机存储介质,与硬盘驱动器相比,这些固态驱动器具有增强的性能和降低的功耗。固态驱动器(ssd)通常由闪速控制器组成,闪速控制器与几个nand信道进行通信。每个nand信道连接到一个或多个nand目标。每个目标可以包括一个或多个逻辑单元(lun)。

在闪速控制器连接到nand目标组的nand信道中,存在固有的性能极限。

所有目标和lun共享相同的nand总线。闪速控制器可以将所有的lun视为集总负载。由于lun被视为集总负载,nand总线不能以lun能够操作的最大额定速度操作。此外,在任何时候,只有lun中的一个lun可以将数据移入或移出闪速控制器。由于多个lun的增加的加载和寻址多个lun的信号干扰问题,闪速控制器不得不减慢nand总线的传输速度。当由于lun驻留在5个不同的封装或端口中而存在反射时,信号干扰可能会特别成问题。

希望实现一种nand接口设备,用以提高固态驱动器的操作速度。



技术实现要素:

本发明涉及一种包括前端口、多个后端口和多个开关的装置。前端口可以被配置为向/从控制器发送/接收数据。多个后端口可以各自被配置为向/从存储器的多个逻辑单元中的一个逻辑单元发送/接收数据。多个开关可以各自被配置为响应于输入而将前端口连接到后端口中的一个后端口。输入可以从控制器被接收,并且也可以被提供给存储器。

附图说明

根据以下详细描述、所附权利要求和附图,本发明的实施例将清楚。

图1是图示本发明的实施例的图。

图2是图示本发明的示例实施例的框图。

图3是图示本发明的备选示例实施例的框图。

图4是图示用以提高固态驱动器的操作速度的nand接口设备的框图。

图5是图示提高固态驱动器的操作速度的nand闪速复用器的框图。

图6是图示被实现在每信道多目标固态驱动器中的本发明实施例的框图。

图7是图示提高固态驱动器的操作速度的nand闪速桥的框图。

具体实施方式

本发明的实施例包括提供nand接口设备来提高固态驱动器的操作速度,该固态驱动器可以(i)将闪速控制器连接到多个闪速存储器目标,(ii)重新使用芯片使能信号来选择闪速存储器目标,(iii)在不从闪速控制器中添加额外的引脚的情况下被实现,(iv)使得存储器总线能够以更接近闪速存储器的最大潜在速度的速度操作,(v)减少被闪速控制器看见的负载量,(vi)使得去往闪速控制器的总线能够以不同于去往闪速存储器目标的总线的速度操作,(vii)基于可用的端口数目来增加带宽,(viii)被实现为系统级封装,(ix)被实现为多芯片组件和/或(x)被实现为一个或多个集成电路。

参照图1,示出了图示本发明的实施例的图。示出了固态驱动器(ssd)50的示例实施例。在所示出的示例中,ssd50可以实现非易失性存储器快速(nvme)类型的存储介质。当示出nvmessd50时,ssd50可以被实现为其他形状因数(例如sata2、sata3、pcie等)。ssd50的形状因数可以根据特定实现的设计准则而变化。

ssd50可以包括引脚连接器52和凹口54。引脚连接器52可以被配置为将ssd50连接到主机设备(例如台式计算机、膝上型计算机、平板计算设备、智能电话等)。凹口54可以是ssd50的电路板上的切口。凹口54可以为螺钉提供空间,以将ssd50固定在另一部件上。螺钉可以通过凹口54被插入,并且螺钉的头部可以置于ssd50上,以将ssd50保持在主板(或pcie适配器板或usb适配器板等)上的适当位置。

引脚连接器52可以是b键和m键型连接器。在一些实施例中,引脚连接器52可以是m键型连接器。在一些实施例中,引脚连接器52可以使得ssd50能够使用pcie3.0协议使用四个通道(例如大致16gbps的传输速度)与主机设备通信。在一些实施例中,引脚连接器52可以使得ssd50能够使用pcie4.0协议使用至多四个通道(例如大致32gbps的传输速度)与主机设备通信。在示例中,ssd50可以是2280大小的驱动器(例如22mmx80mm)。在另一示例中,ssd50可以是2260大小的驱动器(例如22mmx60mm)。ssd50的其他大小可以被实现(例如2242、22110等)。ssd50的大小、引脚连接器52的形状和/或由引脚连接器52实现的传输协议可以根据特定实现的设计准则而变化。

ssd50可以包括块(或电路)60、块(或电路)70a-70c和/或块(或电路)100。电路60可以实现闪速控制器。电路70a-70c可以实现闪速存储器封装。电路100可以实现存储接口设备。ssd50可能包括其他部件(未示出)。在示例中,ssd50可以包括ram模块。

ssd50的部件的数目、类型和/或布置可以根据特定实现的设计准则而变化。

闪速控制器60可以实现处理器,该处理器被配置为控制和/或管理去往/来自闪速存储器封装70a-70c和/或引脚连接器52(例如,与软管设备通信)的输入/输出。在一些实施例中,闪速控制器60能够达到的传输速率可以确定闪速存储器封装70a-70c中所存储的数据被访问和/或被写入的速度有多快。闪速控制器60可以被配置为将数据从主机计算机输送到闪速存储器封装70a-70c。闪速控制器60可以被配置为将数据从闪速存储器封装70a-70c输送到主机计算机。闪速控制器60可以包括多个引脚,每一引脚具有指定的功能。在一个示例中,闪速控制器60和/或引脚连接器52可以被配置为作为用于ssd50的nvme接口操作。

闪速存储器封装70a-70c可以被配置为存储计算机可读数据。闪速存储器封装70a-70c可以包括非易失性存储器。在示例中,闪速存储器封装70a-70c可以包括nand存储器。闪速存储器封装70a-70c可以被配置为与闪速控制器60通信以存储(写入操作)和/或提供(读取操作)计算机可读数据。在一些实施例中,闪速存储器封装70a-70c能够达到的传输速率可以确定数据被写入到闪速存储器封装70a-70c和/或从这些闪速存储器封装70a-70c被读取的速度有多快。在所示出的示例中,三个闪速存储器封装70a-70c在ssd50的一侧上。在一些实施例中,ssd50可以包括在ssd50背侧上的附加闪速存储器封装。ssd50可以包括任何数目的闪速存储器封装(例如70a-70n)。

图中示出电路100被实现为与闪速控制器60和闪速存储器封装70a-70c分离的芯片封装。在所示出的示例中,图中示出电路100被实现在闪速控制器60与闪速存储器封装70a-70c之间。电路100可以被配置为提高ssd50的操作速度。

参照图2,示出了图示本发明的示例实施例的框图。示出了系统80。系统80可以是用于将数据存储到ssd50和/或从ssd50中检索数据的数据路径的框图。系统80可以包括闪速存储器封装70、块(或电路)82、块(或电路)84和/或块(或电路)102。闪速存储器封装70可以是与图1相关联地示出的闪速存储器封装70a-70n的代表性示例。电路82实现了主机设备(例如主机计算机、主板、处理器、nvme控制器等)。电路84可以是总线。在示例中,总线84可以是信道总线(例如用于存储器信道的nand总线)。电路102可以实现控制器封装。系统80可以包括其他部件(未示出)。系统80的部件的数目、类型和/或布置可以根据特定实现的设计准则而变化。

控制器封装102可以包括装置100’。装置100’可以具有类似于与图1相关联地示出的装置100的实现。控制器封装102可以具有类似于与图1相关联地示出的闪速控制器60的实现。控制器封装102可以是包括闪速控制器60和装置100’的多芯片组件。虽然在图2中描述具有多芯片组件102的系统80,系统80的描述可适用于如与图1相关联示出地、闪速控制器60和装置100被实现为单独部件的实施例。

图中示出信号(例如req)和信号(例如data)在主机82与控制器封装102之间被输送。

图中示出信号(例如i/o)和信号(例如ce)在控制器封装102与闪速存储器封装70之间被输送。

其他信号可以在系统80内进行通信(未示出)。

在系统80内被实现的信号的数目、类型和/或功能可以根据特定实现的设计准则而变化。

图中示出信号req由主机82传送到控制器封装102。信号req可以是由主机82向闪速控制器60发出的请求。在示例中,信号req可以是数据请求(例如,指示从闪速存储器封装70中检索哪些数据)。信号data被示为由主机82和控制器封装102输送的双向信号。信号data可以包括计算机可读数据和/或高速命令。在一个示例中,信号data可以是由闪速控制器60从闪速存储器封装70中检索并被输送给主机82的计算机可读数据。在另一示例中,信号data可以是由主机82输送给闪速控制器60的计算机可读数据用于存储在闪速存储器封装70中。在又一示例中,信号data可以包括在主机82与闪速控制器60之间输送的高级命令。

信号i/o被示为由控制器封装102输送给闪速存储器封装70的双向信号。信号i/o可以包括计算机可读数据和/或命令。例如,信号i/o可以提供从闪速控制器60输入到闪速存储器封装70的数据。在另一示例中,信号i/o可以提供从闪速存储器封装70读取到闪速控制器60的数据输出。在又一示例中,信号i/o可以包括由闪速控制器60提供的用于闪速存储器封装70的命令。图中示出信号ce由控制器封装102提供给闪速存储器封装70。信号ce可以由闪速控制器60生成。信号ce可以是芯片使能信号。芯片使能信号ce可以选择闪速存储器封装70的将信号i/o存储到和/或从中检索该信号i/o的特定存储位置。信号i/o和信号ce可以通过nand总线84被输送。

闪速存储器封装70可以包括多个块(或电路)90a-90n。电路90a-90n可以是闪速存储器封装70的逻辑单元数(lun)。在示例中,电路90a-90n中的每个电路可以是被集成在nand闪速存储器封装70中的闪速存储裸片。

闪速存储器封装70a-70n中的每个闪速存储器封装可以包括多个裸片90a-90n(例如,以用于更大的存储容量)。对于被实现在nand闪速存储器封装70a-70n中的单个存储器封装中的裸片90a-90n中的单个裸片,闪速控制器60可以能够达成闪速存储器封装70和闪速控制器60两者所支撑的最高速度(例如,取其更低者)。在示例中,如果闪速控制器支撑1.2gt/s,并与支撑0.8gt/s的裸片90i配对,则ssd50可以以0.8gt/s操作。如果多个裸片90a-90n被实现在闪速存储器封装70(如所示出)中,和/或多个封装70a-70n被连接到nand信道以增加容量,则附加负载可能会降低系统速度(例如,与单一裸片实现相比)。

系统80可以表示单一的nand信道。多个nand信道可以被实现在ssd50中。在所示出的示例中,闪速控制器60可以连接到单一闪速存储器封装70。在一些实施例中,闪速控制器60可以连接到目标组(例如闪速存储器封装70a-70n)。每个闪速存储器封装70a-70n可以具有多个lun90a-90n(例如裸片)。可访问(或可见或连接到)闪速控制器60的lun90a-90n中的每个lun可以增加nand总线84上的负载。装置100(或100’)可以被配置为减小闪速控制器60可见的负载。减小闪速控制器60可见的负载可以使得ssd50的性能增加到闪速控制器60和/或闪速存储器封装70-70n所支撑的吞吐量。

参照图3,示出了图示本发明的备选示例实施例的框图。示出了系统80’。系统80’可以具有类似于与图2相关联地示出的系统80的实现。系统80’可以包括闪速控制器80、主机82、nand总线84和/或电路102’。

系统80’可以是图示ssd50的单一信道的示例。在所示出的示例中,电路102’可以是存储器封装。存储器封装102’可以包括装置100”和/或闪速存储器封装70。闪速存储器封装70可以包括lun90a-90n(例如nand裸片)。存储器封装102’可以包括其他部件(未示出)。

存储器封装102’的部件的数目、类型和/或布置可以根据特定实现的设计准则而变化。

图中示出信号req由主机82提供给闪速控制器60。信号data被示为由主机82和闪速控制器60提供/接收的双向信号。信号i/o被示为在nand总线84上由闪速控制器60和存储器封装102’提供/接收的双向信号。信号ce被示出在nand总线84上由闪速控制器60提供给存储器封装102’。

在一些实施例中,装置100可以被实现为单独芯片设计。在与图1相关联地示出的示例ssd50中,装置100被示为单独芯片设计(例如,被实现为在闪速控制器60与闪速存储器封装70a-70n之间的单独封装)。在单独芯片设计中,闪速控制器60可以将信号i/o和/或信号ce输送到装置100,且装置100可以将信号i/o输送到闪速存储器封装70a-70n(闪速控制器60可以将信号ce输送到闪速存储器封装70a-70n)。在单独芯片设计中,闪速存储器封装70a-70n可以将信号i/o输送到装置100,并且然后装置100可以将信号i/o输送到闪速控制器60,并且闪速控制器60可以将信号ce输送到装置100和闪速存储器封装70a-70n。

在一些实施例中,装置100可以被实现为具有闪速控制器60的多芯片和/或系统级封装。在与图2相关联地示出的示例系统80中,装置100’被示为多芯片封装102的部分(例如,被实现在与闪速控制器60相同且与闪速存储器封装70a-70n分离的封装中)。在控制器封装102的多芯片设计中,闪速控制器60可以将信号i/o和/或信号ce输送到控制器封装102内的装置100’,并且装置100’可以将信号i/o输送到闪速存储器封装70a-70n(闪速控制器60可以将信号ce输送到闪速存储器封装70a-70n)。在控制器封装102的多芯片设计中,闪速存储器封装70a-70n可以将信号i/o输送到装置100’,且装置100’可以将信号i/o输送到控制器封装102内的闪速控制器60,并且闪速控制器60可以将信号ce输送到控制器封装102内的装置100’并输送到闪速存储器封装70a-70n。

在一些实施例中,装置100可以被实现为具有闪速存储器封装70的多芯片和/或系统级封装。在与图3相关联地示出的示例系统80’中,装置100”被示为多芯片封装102’的部分(例如,被实现在与闪速存储器封装70相同且与闪速控制器60分离的封装中)。在存储器封装102’的多芯片设计中,闪速控制器60可以将信号i/o和/或信号ce输送到位于存储器封装102’中的装置100”,并且装置100”可以将信号i/o输送到闪速存储器封装70(闪速控制器60可以将信号ce输送到闪速存储器封装70a-70n)。在存储器封装102’的多芯片设计中,闪速存储器封装70a-70n可以将信号i/o输送到存储器封装102’内的装置100”,并且装置100”可以将信号i/o输送到闪速控制器60,并且闪速控制器60可以将信号ce输送到装置100”并输送到位于存储器封装102’中的闪速存储器封装70。

装置100可以被实现为单独的芯片设计。装置100可以被实现为单块集成电路封装。装置100可以以多芯片组件和/或系统级封装样式被集成到nand存储器封装70a-70n中。在一些实施例中,闪速控制器60、装置100和闪速存储器封装70可以被实现为单一封装。单一封装可以具有与单独芯片设计类似的实现,但具有在单一封装内所实现的所有信号和部件。ssd50中的装置100的实现可以根据特定实现的设计准则而变化。

参照图4,示出了图示用以提高固态驱动器的操作速度的nand接口设备的框图。示出了用于ssd50的一个nand信道的部件。用于ssd50的一个nand信道的部件可以包括:闪速控制器60、闪速存储器封装70(包括lun90a-90n)、nand总线84和/或装置100。在所示的示例中,装置100可以是与图1中所示示例类似的单独芯片设计。

装置100可以被实现在闪速控制器60与闪速存储器封装70之间。装置100可以被实现在nand信道总线84上。装置100可以被配置为提高ssd50的操作速度(例如吞吐量)。在一个示例中,装置100可以在无需来自闪速控制器60的附加控制引脚的情况下,实现被配置为提高ssd50的操作速度的nand闪速复用器。在另一示例中,装置100可以实现被配置为提高ssd50的操作速度的nand闪速桥设备。

装置100可以包括块(或电路)110和/或块(或电路)112a-112n。电路110可以实现端口。电路112a-112n可以各自实现端口。装置100可以包括其他部件(未示出)。装置100的部件的数目、类型和/或布置可以根据特定实现的设计准则而变化。

示出了连接114a-114n。连接114a-114n可以被实现在装置100与闪速存储器封装70之间。连接114a-114n可以是离散的(例如单独的或隔离的)连接。离散连接114a-114n可以是nand总线的第二部分。例如,总线84可以是被配置为在闪速控制器60与装置100之间输送数据和/或命令的nand总线的第一部分,并且离散连接114a-114n可以是被配置为在装置100与闪速存储器封装70之间输送数据和/或命令的nand总线的第二部分。在示例中,总线84、装置100和离散连接器114a-114n一起可以实现nand总线。

端口110可以实现前端口。前端口110可以被配置为与闪速控制器60通信。

前端口110可以被配置为从nand总线84接收(多个)信号。前端口110可以被配置为将(多个)信号提供给nand总线84。

端口112a-112n可以各自实现后端口。后端口112a-112n可以被配置为与闪速存储器封装70通信。后端口112a-112n中的每个后端口可以被连接到离散连接器114a-114n中的相应一个离散连接器。后端口112a-112n中的每个后端口可以被配置为经由离散连接器114a-114n中的相应一个从闪速存储器封装70接收(多个)信号。后端口112a-112n中的每个后端口可以被配置为经由离散连接器114a-114n中的相应一个从闪速存储器封装70提供(多个)信号。

离散连接器114a-114n可以被连接到闪速存储器封装70中的lun90a-90n中的相应一个。

离散连接器114a-114n可以被配置为将后端口112a-112n中的一个后端口连接到lun90a-90n中的一个lun。前端口110可以被配置为与后端口112a-112n中的每个后端口(将与图5-7相关联地更详细地描述)通信。通过与后端口112a-112n中的一个后端口通信,前端口110可以被配置为经由离散连接器114a-114n中的相应一个离散连接器与lun90a-90n中的任一个lun单独地通信。在示例中,前端口110可以连接到后端口112a,这可以实现经由离散连接器114a去往lun90a的路径,前端口110可以连接到后端口112b,这可以实现经由离散连接器114b去往lun90b的路径等。将前端口110连接到lun90a-90n中的一个lun可以实现从闪速控制器60到lun90a-90n中的一个lun的隔离连接。

在没有装置100的情况下,闪速控制器60可以与作为nand总线84上的集总负载的lun90a-90n进行接口(例如,闪速控制器60将lun90a-90n视为集总负载)。信号完整性可能会降低,这是因为由闪速控制器60所见的集总负载。响应于多个lun90a-90n的增加的加载,闪速控制器60可能会减慢nand总线84的速度(例如,以确保信号完整性)。此外,当lun90a-90n驻留在不同的封装/端口上时,在寻址多个lun90a-90n时可能存在信号干扰问题。在实现了lun90a-90n中的四个lun的示例中,闪速控制器60可能会看见由于反射引起的集总输入电容(例如4xcin,其中cin是lun90a-90n中的每个lun的输入电容)。为了适应集总输入电容,闪速控制器60可以将nand总线84的速度减小到小于lun90a-90n的吞吐能力的速度(例如,闪速控制器60以lun90a-90n中的一个lun可能操作的最大速度将无法在不潜在地造成错误的情况下进行操作)。此外,在没有装置100的情况下,由于所有lun90a-90n共享相同的nand总线84,只有lun90a-90n中的一个lun可以向/从闪速控制器60移动数据。

装置100可以被配置为减少闪速控制器60从lun90a-90n所见的负载。在示例中,负载可以是输入电容。装置100可以被配置为使得闪速控制器60以可以更接近lun90a-90n的额定吞吐速度的吞吐速度操作。在示例中,由于装置100减少了由闪速控制器60所见的负载,闪速控制器60可以能够在没有影响数据的完整性的信号干扰和/或正被传输的高速命令的情况下,在nand总线84上以更高的速度操作。装置100可以减少在nand总线84上的通过寻址多个lun90a-90n所引起的反射。在利用lun90a-90n中的四个lun而实现装置100的示例中,闪速控制器60可能会看见由于lun90a-90中的一个的反射引起的输入电容(例如1xcin,其中cin是lun90a-90n中的每个lun的输入电容)而不是集总输入电容(例如4xcin)。在示例中,对于n个目标,由于实现装置100,由闪速控制器60所见的负载的减少可以大致是输入阻抗的1/n倍。

参照图5,示出了图示提高固态驱动器的操作速度的nand闪速复用器的框图。示出了实现150。实现150可以图示类似于与图4相关联地示出的示例的ssd50的数据路径的一个信道。实现150可以包括闪速控制器60、闪速存储器封装70和/或装置100。在实现150中,装置100可以被配置为nand闪速复用器。nand闪速复用器100可以被配置为提高ssd50的操作速度。

闪速控制器60被示出包括块(或电路)62a-62n。块62a-62n可以包括闪速控制器60的引脚/连接器。引脚/连接器62a-62n可以使得闪速控制器60发送/接收数据、命令、状态信号(例如标志)、电压等。引脚/连接器62a-62n可以被实现为表面安装引脚、用于引脚网格阵列的引脚、用于连接盘网格阵列的引脚、球状网格阵列的衬垫等。引脚/连接器62a-62n中的每个引脚/连接器可以对应于预定义的功能。引脚/连接器62a-62n的预定义功能可以与以下各项对应:开放nand闪速接口(onfi)标准(例如onfi4.1)、由闪速控制器60的制造商定义的规范、由闪速存储器封装70a-70n的制造商定义的规范等。引脚/连接器62a-62n的中的每个引脚/连接器的数目、布局和/或功能性可以根据特定实现的设计准则而变化。

nand闪速复用器100可以包括前端口110、后端口112a-112n和/或多个块(或电路)160a-160n。电路160a-160n可以实现开关。nand闪速复用器100可以包括输入端152。输入端152可以被配置为从闪速控制器60接收信号ce。nand闪速复用器100可以包括其他部件、逻辑电路系统和/或输入端/输出端(未示出)。nand闪速复用器100的部件、逻辑电路系统和/或输入端/输出端的数目、类型和/或布置可以根据特定实现的设计准则而变化。

闪速控制器60可以向/从nand闪速复用器100输送信号i/o。引脚/连接器62a-62n中的一个或多个可以向前端口110提供信号i/o。引脚/连接器62a-62n中的一个或多个可以从前端口110接收信号i/o。

闪速控制器60可以向nand闪速复用器100和闪速存储器封装70提供信号ce。引脚/连接器62a-62n中的一个引脚/连接器可以向nand闪速复用器100的输入端152和闪速存储器封装70的输入端92提供信号ce。在所示出的示例中,引脚/连接器62i可以提供信号ce。

开关160a-160n可以被实现在前端口110与后端口112a-112n之间。开关160a-160n中的每个可以被配置为将前端口110连接到后端口112a-112n中的相应一个后端口。开关160a-160n可以被实现为高性能开关,这些高性能开关连接前端口110和后端口112a-112n以使得数据和/或高速命令能够在两个方向上被传送。

nand闪速复用器100可以操作为总线复用器,该总线复用器具有连接到闪速控制器60的前端口110和连接到nand目标90a-90n的多个后端口112a-112n。前端口110可以在nand总线84的第一部分上与闪速控制器60通信。后端口112a-112n中的每个后端口可以在nand总线114a-114n中的离散部分中的相应一个离散部分上与闪速存储器封装70通信。

信号ce可以被闪速控制器60用作闪速封装70的芯片使能信号。信号ce可以实现nand目标90a-90n中的一个nand目标。信号ce也可以在输入端152处被提供给nand闪速复用器100。信号ce可以选择、调整和/或启动开关160a-160n中的一个开关。nand闪速复用器100还可以包括逻辑电路系统以响应于信号ce来选择、调整和/或启动开关160a-160n中的一个开关。信号ce所选择的开关可以与信号ce所选择的nand目标对应。在示例中,如果信号ce被配置为选择闪速存储器封装70中的nand目标90c,则装置100可以被配置为响应于信号ce来启动开关160c。

实现150可以利用信号ce的现有功能性来实现开关160a-160n中的一个或多个的启动。ssd50的闪速控制器60可以实现引脚/连接器62i以选择nand目标90a-90n中的一个或多个,而不管装置100是否被实现。例如,引脚/连接器62i可以向闪速存储器封装70的输入端92提供信号ce。被提供到输入端152的信号ce可以从预先存在的引脚/连接器62i接收。实现装置100和/或选择开关160a-160n中的一个或多个可以不需要添加引脚/连接器62a-62n中的附加一个引脚/连接器。

nand闪速复用器100可以被配置为响应于信号ce以选择开关160a-160n中的一个开关将后端口112a-112n中的一个连接到前侧端口110。在一些实施例中,在任何时候,只有开关160a-160n中的一个开关可以被启动,并且每次只有后端口112a-112n中的一个后端口可以被连接到前端口110。在示例中,响应于信号ce,nand闪速复用器100可以调整开关160a-160n以选择后端口112a-112n中的一个,并取消选择尚未被选择的后端口112a-112n中的每个后端口。开关160a-160n的选择可以由目标选择信号ce(例如,通常被命名为cen)确定,该目标选择信号可能已被闪速控制器60和闪速封装70使用。

在示例中,闪速控制器60可以生成信号ce来选择nand目标90c。信号ce可由引脚62i提供给闪速存储器封装70的输入端92以选择nand目标90c,并提供给nand闪速复用器100的输入端152来选择开关160c。选择开关160c可以将前端口110连接到后端口112c。将前端口110连接到后端口112c可以实现从闪速控制器60经由nand总线84到装置100、并且然后经由离散连接器114c从装置100到nand目标90c的路径。从闪速控制器60到前端口110、然后到后端口112c、然后到nand目标90c的路径可以是隔离路径。

nand闪速复用器100可以被配置为提供从闪速控制器60到nand目标90a-90n中的一个nand目标的隔离路径。隔离路径可以使得闪速控制器60能够直接与nand目标90a-90n中的所选定的一个nand目标通信。隔离路径可以防止其他(例如未被选择的)nand目标90a-90n造成的干扰和/或噪声。

nand闪速复用器100可以使用信号ce来选择复用器信道。信号ce可以被用于同时选择开关160a-160n以及nand目标90a-90n中的一个。由于nand闪速复用器100可以同时使用与闪速存储器封装70相同的信号ce,所以闪速控制器60可以在没有任何附加控制引脚的情况下被实现。nand闪速复用器100可以利用现有引脚62a-62n的功能性用于选择开关160a-160n。nand闪速复用器100可以使用闪速控制器60的预先存在的和/或预定义的功能性被实现。

nand闪速复用器100可以响应于信号ce选择开关160a-160n中的一个并取消选择其余的(例如未被选择的)开关。当nand闪速复用器100响应于信号ce选择开关160a-160n中的一个时,未被选择的开关160a-160n和/或端口112a-112n可以在不同状态下操作。由未被选择的开关160a-160n和/或端口112a-112n进行的不同的操作状态,可以被配置为防止未被选择的nand目标90a-90n的通信和/或干扰。在示例中,不同状态可以包括总线保持、上拉、下拉、高阻抗等。由nand闪速复用器100实现的不同状态的类型可以根据特定实现的设计准则而变化。

由于nand闪速复用器100选择后端口112a-112n中的一个并且阻挡未被选择的后端口112a-112n,所以后端口112a-112n中的每个后端口可以具有更少的用以寻址的nand目标90a-90n(例如,后端口112a-112n中的每个后端口可以寻址lun90a-90n中的一个lun,而不是实现能够寻址所有lun90a-90n的单一总线)。通过nand闪速复用器100使得成为可能的去往目标nand90a-90n中的每个目标nand的直接和/或隔离路径,可以使得ssd50能够更接近闪速控制器60和/或nand目标90a-90n的最大速度进行操作。例如,闪速控制器60可以不必降低总线84的速度来适应信号干扰,这是因为通过nand闪速复用器100提供的隔离可以减少信号干扰。实现nand闪速复用器100可以将由闪速控制器60所见的输入阻抗降低到nand目标90a-90n的总输入阻抗的1/n。例如,将前端口110连接到后端口112a-112n中的一个后端口可以将由闪速控制器60所见的负载,从与所有nand目标90a-90n对应的集总负载减少到与nand目标90a-90n中的一个nand目标对应的单一负载。

在存在nand目标90a-90n中的四个nand目标的示例中,在没有装置100的情况下,闪速控制器可以看见nand目标90a-90n的组合负载(例如4xcn,其中cn是输入阻抗)。对于具有nand目标90a-90n中的四个nand目标的示例,nand闪速复用器100可以用后端口112a-112n中的四个后端口来被实现。如果闪速控制器60提供信号ce以选择nand目标90c,则nand闪速复用器100可以响应于信号ce来启动开关160c。nand闪速复用器100可以为未被选择的开关160a、160b和160d选择不同(例如阻挡)状态。nand闪速复用器100可以将前端口110连接到后端口112c以实现经由连接器114c从闪速控制器60到nand目标90c的隔离路径。由于其他nand目标90a、90b和90d可能被未被选择的开关160a、160b和160c的高阻抗状态阻挡,所以闪速控制器60可以看见减少的负载。闪速控制器60可以看见来自所选择的nand目标90c的输入阻抗cn,但可能不会看见来自未被选择的nand目标90a、90b和90d中的每个nand目标的阻抗cn。通过实现nand闪速复用器100用于具有nand目标90a-90n中的四个nand目标的系统,闪速控制器60可以看见nand目标90a-90n的总负载的1/4。在印刷电路板的布线时闪速控制器60可能不会遭受多次下降的信号干扰问题。在nand闪速复用器的情况下,ssd50可以以lun90c可能能够操作的最大速度进行操作。

在所示出的示例中,开关160a-160n中的每个开关可以被配置为将后端口112a-112n中的一个后端口连接到前端口110(例如1对1连接)。将后端口112a-112n中的一个后端口连接到前端口110可以使得nand目标90a-90n中的一个nand目标能够连接到闪速控制器60。在一些实施例中,开关160a-160n中的一个或多个可以被配置为将前端口110连接到后端口112a-112n中的一个以上的后端口(例如1对n实现)。将前端口110连接到后端口112a-112n中的一个以上的后端口可以使得控制器60能够访问nand目标90a-90n中的一个以上的nand目标(例如,允许同时向多个存储器目标传输)。与将nand总线84连接到所有nand目标90a-90n相比,将前端口110连接到后端口112a-112n中的一个以上的后端口(例如,但少于所有的后端口112a-112n)仍然可以减少由闪速控制器60所见的组合负载。

参照图6,示出了图示本发明的被实现在每信道多目标固态驱动器中的实施例框图。示出了系统200。系统200可以是与图5相关联地描述的被实现在ssd50的数据路径的多信道实施例中的nand闪速复用器100的多个实例的说明性示例。

系统200可以包括闪速控制器60和/或闪速存储器封装70。示出了多个数据路径信道(或存储器信道)202a-202n。数据路径信道202a-202n中的每个数据路径信道可以具有类似于与图5相关联地描述的数据路径150的实现。闪速控制器60可以与数据路径信道202a-202n中的每个数据路径信道独立地通信。每个数据路径(或存储)信道202a-202n可以包括nand总线84a-84n中的一个nand总线和nand闪速复用器100a-100n中的一个nand闪速复用器。nand总线84a-84n中的每个nand总线可以具有类似于与图5相关联地描述的nand总线84的实现。nand闪速复用器100a-100n中的每个nand闪速复用器可以具有类似于与图5相关联地描述的nand闪速复用器100的实现。在所示出的示例中,nand闪速复用器100a-100n可以是单独的芯片。在一些实施例中,nand闪速复用器100a-100n可以被实现为单一芯片封装的多个电路。数据路径信道202a-202n中的每个数据路径信道可以包括其他部件(未示出)。例如,数据路径信道202a-202n中的每个数据路径信道可以包括离散连接114a-114n,离散连接114a-114n作为从nand闪速复用器100a-100n到闪速存储器封装70的nand总线的一部分。数据路径信道202a-202n的部件的数目、类型和/或布置可以根据特定实现的设计准则而变化。

图中示出nand裸片90a-90n跨数据路径信道202a-202n中的多个数据路径信道被实现。nand裸片90a-90n各自被示出包括块(或电路)204a-204n。电路204a-204n可以是数据目标。数据目标204a-204n中的每个数据目标可以与数据路径信道202a-202n中的一个数据路径信道对应。在所示出的示例中,nand裸片90a-90n的数据目标204a中的每个数据目标是数据路径信道202a的一部分,nand裸片90a-90n的数据目标204b中的每个数据目标是数据路径信道202b的一部分等。nand目标204a-204n可以包括nand芯片、页面、块等。

nand总线84a-84n可以各自包括信号i/o和芯片使能信号ce_a-ce_n中的相应一个。芯片使能信号ce_a-ce_n可以具有类似于与图5相关联地描述的信号ce的功能。芯片使能信号ce_a-ce_n中的每个芯片使能信号可以由闪速控制器60独立地生成。芯片使能信号ce_a-ce_n中的每个芯片使能信号可以被配置为选择nand裸片90a-90n中的一个nand裸片。例如,当芯片使能ce_a选择nand裸片90b时,闪速控制器60可以在数据路径信道202a中从nand裸片90b的nand目标204a读取/写入到该nand目标。

闪速控制器60可以向闪速存储器封装70以及向nand闪速复用器100a-100n中的相应一个nand闪速复用器提供芯片使能信号ce_a-ce_n中的每个芯片使能信号。nand闪速复用器100a-100n中的每个nand闪速复用器可以被配置为:在数据路径信道202a-202n中的相应一个数据路径信道中,隔离去往nand裸片90a-90n中的所选定的一个nand裸片的路径。在示例中,芯片使能信号ce_a可以选择nand裸片90b,并且可以被namd闪速复用器100a用来隔离在nand裸片90b中的nand目标204a到闪速控制器60之间的路径,芯片使能信号ce_b可以选择nand裸片90i,并且可以被namd闪速复用器l00b用来隔离在nand裸片90i中的nand目标204b到闪速控制器60之间的路径,芯片使能信号ce_n可以选择nand裸片90a,并且可以被namd闪速复用器100n用来隔离在nand裸片90a中的nand目标204n到闪速控制器60之间的路径等。

参照图7,示出了图示提高固态驱动器的操作速度的nand闪速桥的框图。示出了实现250。实现250可以图示类似于与图4相关联地示出示例的ssd50的数据路径的一个信道。实现250可以包括闪速控制器60、闪速存储器封装70和/或装置100”’。在实现250中,装置100”’可以被配置为nand闪速桥。nand闪速桥100”’可以被配置为提高ssd50的操作速度。

闪速控制器60可以向/从nand闪速桥100”’输送信号i/o。闪速控制器60的引脚/连接器62a-62n(未示出)中的一个或多个可以向前端口110提供信号i/o。闪速控制器60的引脚/连接器62a-62n中的一个或多个可以从前端口110接收信号i/o。信号i/o可以在nand总线84的部分上被输送。

闪速存储器封装70可以与后端口112a-112n中的一个或多个通信。闪速存储器封装70的lun90a-90n中的每个lun可以经由离散连接器114a-114n连接到后端口112a-112n中的相应一个后端口。多个后端口112a-112n可以连接到多个nand目标90a-90n。

nand闪速桥100”’可以包括块(或电路)252、多个块(或电路)254a-254n、多个块(或电路)256a-256n、多个块(或电路)258a-258n、块(或电路)260和/或块(或电路)262。电路252可以实现前桥电路。电路254a-254n可以各自实现后桥电路。电路256a-256n可以各自实现正向缓冲器。电路258a-258n可以各自实现反向缓冲器。块260可以实现控制逻辑。电路262可以实现时序电路。nand闪速桥100”’可以包括其他部件和/或输入端/输出端(未示出)。nand闪速桥100”’的部件和/或输入端/输出端的数目、类型和/或布置可以根据特定实现的设计准则而变化。

前桥电路252可以包括前端口110、块(或电路)266和/或块(或电路)268。前端口110可以被配置为连接到闪速控制器60。电路266可以被配置为在正向方向(例如,从闪速控制器60到闪速存储器封装70)上输送数据和/或命令。电路268可以被配置为在反向方向(例如,从闪速存储器封装70到闪速控制器60)上输送数据和/或命令。电路266-268可以实现电桥。电桥266-268可以被配置为使得信号能够在一个方向上通过,同时阻挡信号在另一方向上通过。在示例中,电桥266-268可以使用io驱动程序来实现。电桥266-268的实现可以根据特定实现的设计准则而变化。

后桥电路254a-254n中的每个后桥电路可以包括后端口112a-112n中的相应一个、块(或电路)270a-270n中的相应一个和/或块(或电路)272a-272n中的相应一个。后端口112a-112n可以各自被配置为连接到闪速存储器封装70。后端口112a-112n可以各自经由离散连接器114a-114n连接到lun90a-90n中的相应一个。电路270a-20270n可以各自被配置为在正向方向(例如,从闪速控制器60到闪速存储器封装70)上输送数据和/或命令。电路272a-272n可以各自被配置为在反向方向(例如,从闪速存储器封装70到闪速控制器60)上输送数据和/或命令。相应的电路对270a/272a-270n/272n可以各自实现电桥。每个电桥270a/272a-270n/272n可以被配置为使得信号能够在一个方向上通过,同时阻挡信号在另一方向上通过。

在示例中,电桥270a/272a-270n/272n中的每个电桥可以使用io驱动程序来实现。电桥270a/272a-270n/272n的实现可以根据特定实现的设计准则而变化。

正向缓冲电路256a-256n可以被配置为在正向方向上临时存储(例如缓存)数据。电路266可以连接到正向缓冲电路256a-256n中的每个正向缓冲电路。正向缓冲电路256a-256n中的每个正向缓冲电路可以连接到电路270a-270n中的相应一个电路。正向缓冲电路256a-256n可以实现以下的正向数据路径:从闪速控制器60、到nand数据总线84的部分、到前端口110、到电路266、到正向缓冲电路256a-256n、到电路270a-270n、到后端口112a-112n、到nand总线114a-114n的离散部分并且然后到lun90a-90n。

反向缓冲电路258a-258n可以被配置为在反向方向上临时存储(例如缓存)数据。电路272a-272n中的每个电路可以连接到反向缓冲电路258a-258n中的相应一个反向缓冲电路。反向缓冲电路258a-258n中的每个反向缓冲电路可以连接到电路268。反向缓冲电路258a-258n可以实现以下的反向数据路径:从lun90a-90n到nand数据总线114a-114n的离散部分、到后端口112a-112n、到电路272a-272n、到反向缓冲电路258a-258n、到电路268、到前端口110、到nand总线84的部分并且然后到闪速控制器60。

控制逻辑电路260可以被配置为向nand闪速桥100”’的部件(例如电路266、电路268、正向缓冲电路256a-256n、反向缓冲电路258a-258n、电路270a-270n和/或电路272a-272n)提供输入。由控制逻辑电路260提供的输入可以确定nand闪速桥100”’的哪个部件可以被启用以及nand闪速桥100”’的哪个部件可以被禁用。

时序电路262可以被配置为向控制逻辑260提供输入。时序电路262可以确定nand闪速桥100”’的部件何时可以被启动或停用。例如,时序电路100”’可以确定正向缓冲器256a-256n中的特定一个正向缓冲器应该被启动,并且向控制逻辑260提供输入以启用正向缓冲器256a-256n中的特定一个正向缓冲器。

控制逻辑260和/或时序电路262一起可以被配置为控制通过nand闪速桥100”’的数据和/或命令流。在一个示例中,通过启动/禁用正向缓冲器256a-256n中的一个或多个正向缓冲器,控制逻辑260和/或时序电路262可以确定哪些后端口112a-112n被连接到前端口110,以使得闪速控制器60能够与nand目标90a-90n中的一个nand目标通信。在另一示例中,通过启动/禁用反向缓冲器258a-258n中的一个或多个反向缓冲器,控制逻辑260和/或时序电路262可以确定哪些后端口112a-112n被连接到前端口110,以使得nand目标90a-90n中的一个nand目标能够与闪速控制器60通信。

前桥电路252、后桥电路254a-254n、正向缓冲器256a-256n和反向缓冲器258a-258n可以被配置为:使得前端口110和后端口112a-112n能够在两个方向上在闪速控制器60与闪速存储器封装70之间转发任何命令和/或事务。装置100”’可以被配置为使得后端口112a-112n中的每个后端口独立地同时操作(例如,具有独立操作)。事务数据可以被缓冲在正向缓冲器256a-256n和/或反向缓冲器258a-258n中,以允许前端口110和后端口112a-112n以不同速度操作。例如,nand总线84的到闪速控制器60的部分,可以以不同于nand总线的包括离散连接器114a-114n到闪速存储器封装70的部分的速度(或吞吐量)进行操作。

与没有nand闪速桥100”’的实现相比,由于后端口112a-112n可以具有更少的用以寻址的nand目标90a-90n(例如所示出的示例中的目标),所以端口112a-112n中的每个端口可以以大致是闪速存储器封装70的最大接口速度的吞吐量操作。高速命令和/或数据传输可以被缓存在在前端口110与后侧端口112a-112n之间的nand闪速桥100”’的数据路径中。通过独立地进行操作,后侧端口112a-112n可以同时操作。由于所有后端口112a-112n可以被配置为同时传输数据,所以nand闪速桥100”’可以向前端口110提供聚合带宽和/或传输速率(或吞吐量)。在所示出的示例中,其中nand闪速桥100”’具有后端口112a-112n中的n个后端口,nand闪速桥100”’可以向前侧端口110提供n(例如端口的数目)倍的聚合带宽。

在nand闪速桥100”’实现后端口112a-112n中的四个后端口的示例中,nand闪速桥100”’的部件可以使得前端口110能够以四倍于后端口112a-112n中的一个后端口的速度进行操作。四个后端口112a-112n中的每个后端口可以寻址四个nand目标90a-90n中的一个nand目标。后端口112a-112n可以以一个速度(例如s_back)操作。在示例中,速度s_back可以大致是lun90a-90n中的一个lun能够进行输送的最大速度。nand闪速桥100”’可以使得前端口110能够以四倍于速度s_back进行操作。实现nand闪速桥100”’可以针对ssd50实现两种类型的速度提高。一种速度提高可以是因为nand闪速桥100”’可以使得速度s_back能够由于减少的总负载(例如输入电容)和/或改进的板布线拓扑而达到nand目标90a-90n的速度极限。例如,隔离的离散路径114a-114n可能会导致闪速控制器60未看见所有lun90a-90n的组合负载。由于后端口90a-90n中的每个后端口可以同时传输数据,所以另一速度提高可以是因为nand闪速桥100”’可以使得前端口110的速度(例如s_front)能够潜在地达到四倍于4个后端口112a-112d的速度s_back(例如更高的传输速率)。

ssd50可以利用装置100来实现,装置100被配置为nand闪速复用器(与图5相关联地描述)或nand闪速桥(例如,与图7相关联地描述)。ssd50可能不会实现nand闪速复用器100和nand闪速桥100”’两者(例如,一个或另一个可能被实现)。

nand闪速复用器100可以通过减少系统负载和/或改进拓扑来改进ssd50的操作。nand闪速复用器100可以达成来自闪速控制器60和闪速存储器封装70a-70n两者的支撑。

在一个示例中,闪速控制器60和闪速存储器封装70a-70n可以支撑1gt/s数据传输速度。然而,如果存在被连接在nand总线84上的多个存储器90a-90n(例如,而没有nand闪速复用器100),则负载和信号完整性问题可能会导致ssd50的较低的实际速度0.5gt/s。通过实现nand闪速复用器100,闪速控制器60在操作期间可以看见较少的直接负载并且ssd50可以以高达1gt/s的速度操作。

活动的nand闪速桥100”’可以通过减少系统负载、改进拓扑和/或允许所有的后端口112a-112n主动地独立工作,来改进ssd50的操作。在一个示例中,闪速控制器60可以支撑1.6gt/s数据传输速度,并且可以连接到各自具有0.8gt/s的传输速度的多个lun90a-90n。通过实现nand闪速桥100”’,ssd50的数据传输的聚合带宽可以通过利用高达四倍的同时操作的lun90a-90n的0.8gt/s传输速率(例如,在0.8gt/s传输速率的四倍高于1.6gt/s时,ssd50可能被限制到最快部件的最大传输速率)来达到1.6gt/s(例如闪速控制器60的最大数据传输速率)。

图1-7所实行的功能可以使用根据规范的教导被编程的、如对于(多个)相关领域的技术人员将明显的以下各项来实现:传统的通用处理器、数字计算机、微处理器、微控制器、risc(精简指令集计算机)处理器、cisc(复杂指令集计算机)处理器、simd(单指令多数据)处理器、信号处理器、中央处理单元(cpu)、算术逻辑单元(alu)、视频数字信号处理器(vdsp)和/或类似的计算机器中的一个或多个。熟练的程序员可以基于本公开的教导易于准备适当的、如对于(多个)相关领域的技术人员也将明显的App、固件、编码、例程、指令、操作码、微码和/或程序模块。App一般由机器实现的处理器中的一个或多个从一个或几个介质中实行。

本发明也可以通过准备以下如本文中所描述的、对于(多个)领域的技术人员将明显的修改来实现:asic(专用集成电路)、平台asic、fpga(现场可编程门阵列)、pld(可编程逻辑设备)、cpld(复杂可编程逻辑设备)、门海、rfic(射频集成电路)、assp(特定应用标准产品)、一个或多个单块集成电路、被布置为倒装芯片模块和/或多芯片模块或通过将适当传统部件电路网络互连而布置的一个或多个芯片或裸片。

因此,本发明还可以包括计算机产品,该计算机产品可以是一种或多种存储介质和/或一种或多种传输介质,其包括可以被用于对机器进行编程以实行根据本发明的一个或多个过程或方法的指令。通过机器进行的在计算机产品中所包含的指令的实行以及周围电路系统的操作可以将输入数据转换成存储介质上的一个或多个文件和/或表示物理对象或物质(诸如音频和/或视觉描述)的一个或多个输出信号。存储介质可以包括但不限于任何类型的磁碟(包括软盘、硬盘、磁盘、光盘、cd-rom、dvd和磁光盘)和电路,诸如rom(只读存储器)、ram(随机存取存储器)、eprom(可擦除编程rom)、eeprom(电可擦除编程rom)、uvprom(紫外线可擦除编程rom)、闪速存储器、磁卡、光卡和/或适用于存储电子指令的任何类型的介质。

本发明的元件可以形成一个或多个设备、单元、部件、系统、机器和/或装置的一部分或全部。设备可以包括但不限于服务器、工作站、存储阵列控制器、存储系统、个人计算机、膝上型计算机、笔记本计算机、掌上计算机、云服务器、个人数字助理、便携式电子设备、电池供电设备、机顶盒、编码器、解码器、转码器、压缩机、减压器、预处理器、后处理器、发射器、接收器、接收器、密码电路、移动电话、数码相机、定位和/或导航系统、医疗装备、平视显示器、无线设备、音频录制、音频存储和/或音频播放设备、视频录制、视频存储和/或视频播放设备、游戏平台、外设和/或多芯片模块。(多个)相关领域的技术人员应理解,本发明的元件可以在其他类型的设备中被实现,以满足特定应用的标准。

术语“可以”和“一般”在本文中结合“是”和动词被使用时意味着表达描述是示例性的且被认为是足够广泛的以涵盖在本公开中被提供的具体示例、以及可以基于本公开被推导出的备选示例两者的意图。如本文中所使用的术语“可以”和“一般”不应被说明为必然暗示省略对应元件的希望或可能性。

虽然已经参考本发明的实施例具体示出和描述了本发明,但是本领域的技术人员将理解,在不脱离本发明的范围的情况下,可以在形式和细节上进行各种改变。

再多了解一些
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1

威尼斯人棋牌|威尼斯欢乐娱人城

XML 地图 | Sitemap 地图