用于低延迟存储器访问的设备和方法与流程

文档序号:31720310发布日期:2022-10-04 23:05阅读:63来源:国知局
用于低延迟存储器访问的设备和方法1.相关申请的交叉引用2.本公开要求于2020年2月12日提交的申请号为16/789,382的美国专利申请的优先权,其通过引用并入本文。
背景技术
::3.随机存取存储器(randomaccessmemory,ram)由多个存储块组成。可以通过信号线(例如,位线、字线、数据线等)访问多个存储块。信号线通过信号线上的电势与多个存储块一起收发信号/数据。4.为了降低ram的每比特成本,可以延长信号线以链接更多的存储块。然而,信号线具有相关的寄生电容,并且寄生电容具有与信号线的长度成比例的值。因此,在延长信号线以降低每比特成本的同时,相关的寄生电容也会增加。随着相关的寄生电容的增加,需要花费更多时间来将信号线上的电势更改为目标电势。因此,增加了ram的延迟。技术实现要素:5.本公开的实施例提供了一种存储设备。该存储设备可以包括:多个存储块,每个存储块包括多个存储单元;字线,与多个存储块通信耦合,并且被配置为激活(activate)多个存储块中的与字线相关联的存储单元;列选择线,与多个存储块通信耦合,并被配置为在多个存储块中选择一列存储块;全局数据线,与多个存储块通信耦合,并被配置为与被选择的一列存储块一起收发数据;第一开关,被设置在列选择线上的第一位置;以及第二开关,被设置在全局数据线上的第二位置,其中,第一开关和第二开关被配置为将多个存储块中的至少一个存储块与多个存储块中的其他存储块分割开。6.本公开的实施例还提供了一种存储设备的访问方法,其中,存储设备包括:列选择线,其上设置有第一开关;以及全局数据线,其上设置有第二开关。该方法可以包括:接收用于访问存储设备的访问请求,存储设备包括多个存储块;确定访问请求是否被定向到具有多个存储块中的至少一个存储块的区域;响应于访问请求被定向到该区域,基于访问请求生成第一类型的访问信号,以使得第一开关和第二开关被断开,以将该至少一个存储块与多个存储块中的其他存储块分割开;以及基于第一类型的访问信号访问该被分割的至少一个存储块。7.本公开的实施例还提供了一种非暂时性计算机可读介质,该非暂时性计算机可读介质存储一组指令,该一组指令由计算机系统的一个或多个处理器执行,以使计算机系统执行计算机系统的存储设备的访问方法。存储设备可以包括:列选择线,其上设置有第一开关;以及全局数据线,其上设置有第二开关。该方法可以包括:接收用于访问存储设备的访问请求,存储设备包括多个存储块;确定访问请求是否被定向到具有多个存储块中的至少一个存储块的区域;响应于访问请求被定向到该区域,基于访问请求生成第一类型的访问信号,以使得第一开关和第二开关被断开,以将该至少一个存储块与多个存储块中的其他存储块分割开;以及基于第一类型的访问信号访问该被分割的至少一个存储块。8.应当理解,如所述,前面的一般描述和下面的详细描述都只是示例性的和解释性的,并不对本公开的实施例进行限制。附图说明9.以下详细描述和附图中说明了本公开的实施例和各个方面。图中所示的各种特征未按比例绘制。10.图1a示出了根据本公开的一些实施例的一示例性的存储块的示意图。11.图1b示出了根据本公开的一些实施例的一动态随机存取存储器(dynamicrandomaccessmemory,dram)的示意图。12.图2示出了根据本公开的一些实施例的一示例性的存储设备的示意图。13.图3示出了根据本公开的一些实施例的另一示例性的存储设备的示意图。14.图4示出了根据本公开的一些实施例的一示例性的存储设备的访问方法的流程图。15.图5示出了根据本公开的一些实施例的一示例性的存储系统。具体实施方式16.现在将详细参考示例性实施例,其示例如附图所示。以下描述参考附图,其中不同附图中的相同数字表示相同或类似的元件,除非另有说明。下面的示例性实施例的描述中阐述的实现方式并不代表所有实现方式。相反,它们仅仅是与如所附权利要求中所述的本公开的实施例相关的方面一致的设备和方法的示例。17.如本文所用,术语“包括”、“包含”或其任何其他变体旨在涵盖非排他性包含,使得包含元素列表的过程、方法、组合物、物品或装置不仅包括那些元素,还可以包括未明确列出的其他元素或此类过程、方法、组合物、物品或装置固有的其他元素。术语“示例性的”被用在“示例”角度,而非“理想的”。18.为了解决ram的增加的延迟的问题,本公开的实施例提供了一种存储设备。在一些实施例中,存储设备可以在列选择线上的第一位置提供第一开关,并在全局数据线上的第二位置提供第二开关。第一开关和第二开关被配置为响应于快速访问信号,将多个存储块中的至少一个存储块与多个存储块中的其他存储块分割开。因此,若降低存储设备的访问延迟,则可以缩短作为信号线的列选择线和全局数据线。在另一实施例中,存储设备还可以在数据总线上提供第三开关。第三开关被配置为响应快速访问信号而切断数据总线。因此,若进一步降低存储设备的访问延迟,则还可以缩短数据总线。19.本公开的实施例可应用于各种存储器,例如,动态随机存取存储器(dynamicrandomaccessmemory,dram)、相变存储器(phasechangememory,pcm)、电阻随机存取存储器(resistiverandom-accessmemory,reram)等。dram将仅作为示例来说明本公开的实施例。20.图1a示出了根据本公开的一些实施例的一示例性的存储块100的示意图。21.存储块100可以包括电连接到多个字线1002和多个位线1004的多个存储单元110。通常,每列存储单元可以连接到相同的字线,每行存储单元可以连接到相同的数据线。可以理解,字线可以是行线,数据线可以是列线。为了清楚起见,图1a仅示出了示例性的字线和示例性的数据线。存储单元110可以包括电容器112和晶体管114。一比特数据可以由存储在电容器112中的电荷表示。22.可以通过字线1002选择一列存储单元110,这可以使得位线1004和电容器112之间连接。例如,通过字线1002在晶体管114上施加高电势,晶体管114可以将电容器112连接到位线1004。因此,存储在电容器112中的电荷可导致位线1004上的电势变化。因此,通过提高字线1002的电势,可以将一行存储单元连接到与该行存储单元对应的位线。23.感测放大器(senseamplifier)1006可以连接到位线1004,以感测或引起位线1004上的电势变化。例如,在读取存储单元时,感测放大器1006可用于感测由电容器112引起的位线1004上的电势变化,并且可以处理感测到的电势变化以生成“0”或“1”。换句话说,当字线被选择时,相应单元中的数据通过相应的位线被馈送到感测放大器。类似地,在写存储单元时,位线1004上的电势变化可用于对存储电容器充电或耗尽。例如,位线1004可由感测放大器1006充电或耗尽,以进一步充电或耗尽存储单元110的电容器112。24.通过字线选择一列存储单元以及由感测放大器感测或引起电势变化也可被称为激活阶段。25.感测放大器1006还可以连接到数据线,以通过数据线上的电势变化进一步感测或驱动数据线。可以通过列选择线(columnselectionline,csl)选择一列存储器堆(以及存储器堆中的存储单元),使得包括被选择的存储单元的所选的一列存储器堆的感测放大器感测或驱动数据线106,数据线106最终通过数据总线与动态随机存取存储器(dram)的i/o接口一起收发数据。这个过程也可以被称为输入/输出(i/o)阶段。下面将进一步说明dram、数据总线和数据线。26.在输入/输出阶段之后,可以降低被提升的字线1002的电势,从而断开一列存储单元与位线1004的连接。同时,可以初始化与一列存储单元相对应的感测放大器(例如,感测放大器1006)和位线(例如,位线1004)。该过程也可被称为预充电阶段。27.图1b示出了根据本公开的一些实施例的一示例性的动态随机存取存储器(dram)1000的示意图。dram1000可以由任何计算系统使用,例如,个人计算机、云服务器、移动设备、存算一体化(processor-in-memory,pim)设备等。28.如图1b所示,dram1000可以包括图1a的多个存储块100(例如100a、100b、100c、100d、100e、100f等)、控制器102、多个列选择线104、多个数据线106和数据总线108。存储块可以是存储器堆的一部分,并且包括如参考图1a所述的多个存储单元和感测放大器。29.控制器102可与列选择线104、数据线106和数据总线108通信耦合。在一些实施例中,控制器102可以基于用于访问dram1000的访问请求生成访问信号。30.列选择线104可与控制器102和多个存储块100通信耦合,并用于选择一列存储块100以收发数据。可以基于要访问的存储器的地址选择一列存储块100。例如,基于访问请求,控制器102可以确定要访问的存储块,并发送访问信号以选择与访问请求相对应的列选择线104。可以理解,每个存储块可以进一步解码访问信号以确定与访问请求相对应的存储单元的地址。因此,可以通过列选择线104选择相对应的存储单元,且相对应的存储单元的数据可以被传递给数据线。31.数据线106可与数据总线108和多个存储块100通信耦合,并用于进一步与被选择的一列存储块一起收发数据。数据线106也可以被称为全局数据线。如参考图1a所讨论的,数据线可以与存储单元一起收发数据,因此,使用数据线,可以与数据总线108一起收发与存储单元对应的数据。32.数据总线108可以包括其他逻辑,例如焊盘、接口等。数据总线108可以连接到数据线106以与其一起收发数据。例如,在读取dram1000时,数据线106可以将数据发送到数据总线108,数据总线108进一步将数据发送到dram1000的输入/输出(i/o)接口(图中未示出)。在写dram1000时,数据总线108可以将从i/o接口接收到的数据传输到数据线106,数据线106可以进一步通过数据线106上的电势改变存储单元的电容器的状态。33.为了降低dram的每比特成本,可以延长导线(例如,列选择线104、数据线106和数据总线108)以链接更多的存储块。然而,导线具有与导线长度成比例的相关寄生电容。因此,当导线被延长以降低每比特成本时,相关的寄生电容成比例地增加。随着相关的寄生电容的增加,需要花费更多的时间来引起导线上的电势变化,这进一步增加了dram的延迟。34.本公开的实施例提供了用于低延迟存储器访问的存储设备和方法。35.图2示出了根据本公开的一些实施例的一示例性的存储设备2000的示意图。36.如图2所示,存储设备2000可以包括多个存储块200、控制器202、列选择线204、全局数据线206,并且所有这些组件的功能与参考图1a-图1b所述的对应组件的功能相似。因此,为了清楚起见,这里省略对多个存储块200、列选择线204、全局数据线206和控制器202的描述。存储设备2000还可以包括设置在列选择线204上的给定位置的开关212和设置在全局数据线206上的另一给定位置的开关214。37.开关212和开关214可被断开以分别中断列选择线204和全局数据线206。例如,响应于控制器202生成的快速访问信号,开关212和214可以被断开。38.通过由开关212中断列选择线204,列选择线204被分为被隔离的(isolated)选择线(由图2中的细线表示)和被连接的选择线(由图2中的粗线表示)。如参考图1b所讨论的,在开关212被断开之前,列选择线204的完整导线可以连接到控制器202。在开关212被断开之后,控制器202和开关212之间的一部分列选择线204仍然连接到控制器202,因此其被称为被连接的选择线。被连接的选择线可以与至少一个存储块连接。如图2所示,块200a与被连接的选择线相连接,因此,仍然可以通过被连接的选择线由控制器202选择块200a。可以理解,根据开关212的位置,通过被连接的选择线,控制器202可以选择不止一个存储块。另一方面,在开关212被断开之后,一部分列选择线204(即,列选择线204的细长部分)失去了其与控制器202的连接,因此该一部分列选择线204被称为被隔离的选择线。因此,当开关212被断开时,只有一部分列选择线204被连接到控制器202,列选择线204被“缩短”。因此,列选择线204的相关寄生电容也被减小,这导致列选择线204上的延迟减小。39.类似地,通过经由开关214断开全局数据线206,全局数据线206被分为被隔离的数据线(由图2中的细线表示)和被连接的数据线(由图2中的粗线表示)。如参考图1b所讨论的,在开关214被断开之前,全局数据线206的完整导线连接到数据总线208。在开关214被断开之后,数据总线208和开关214之间的一部分全局数据线206仍然连接到数据总线208,因此其被称为被连接的数据线。被连接的数据线可以与至少一个存储块连接。如图2所示,块200a与被连接的数据线相连接,因此,块200a仍然可以通过被连接的数据线与数据总线208一起收发数据。可以理解,根据开关214的位置,通过被连接的数据线可以将不只一个存储块连接到数据总线208。另一方面,在开关214被断开后,一部分全局数据线206(即,全局数据线206的细长部分)失去了其与数据总线208的连接,因此其被称为被隔离的数据线。因此,当开关214被断开时,只有一部分全局数据线206连接到数据总线208,因此全局数据线206被“缩短”。因此,全局数据线206的相关寄生电容也被减少,这导致全局数据线206上的延迟减少。40.开关212、开关214和数据总线208可以将多个存储块200的至少一个存储块(例如,存储块200a)与多个存储块200的其他存储块分割开。开关212和214可以使被分割的至少一个存储块能够作为相对于其他存储块的快速访问区域。如图2所示,被连接的选择线和被连接的数据线可以用作快速访问区域210的两个边界,并且开关212和214是快速访问区域210的两个角。应当理解,基于开关212和214在存储设备2000中的位置,可以在快速访问区域210中包括不只一个存储块。41.图3示出了根据本公开的一些实施例的另一示例性的存储设备3000的示意图。42.在存储设备3000中,与图2的存储设备2000相比,列选择线204上的开关314被设置在存储块200b附近的位置。因此,基于开关214和开关314分割的快速访问区域310可以包括存储块200a和200b。控制器202可以接收用于访问快速访问区域210或310的访问请求,并基于该访问请求生成快速访问信号。快速访问信号可以断开开关以使能快速访问区域210或310。例如,在读存储设备3000时,控制器202可以接收读取存储在例如存储块200b中的数据的请求,并且可以生成用于断开开关214和开关314的快速访问信号。类似地,在写存储设备3000时,控制器202可以接收将数据写入例如存储块200b的请求,并且可以生成另一个快速访问信号以断开开关214和开关314。下面将进一步描述根据本公开的一些实施例的存储设备的访问方法。43.由于可以通过断开开关来降低列选择线204和数据线206的延迟,因此可以提高快速访问区域210或310中的存储单元的访问速度。44.在一些实施例中,除了开关214和开关314之外,存储设备3000还可以包括设置在数据总线208上给定位置的开关318。可以理解,开关318的给定位置可以对应于列选择线204上的开关314的位置。45.在开关318被断开后,位于输入/输出接口和开关318之间的一部分数据总线208仍然连接到数据总线208,而数据总线208的其他部分则失去了其与输入/输出接口的连接。因此,当开关318被断开时,只有一部分数据总线208连接到输入/输出接口,因此数据总线208被“缩短”。因此,数据总线208的相关寄生电容也被减小,这导致数据总线208上的延迟减小。可以理解,开关318还可以响应于快速访问信号而被断开。46.通过在数据总线208上提供开关318,可以通过断开开关318来降低数据总线208的延迟,从而进一步提高快速访问区域310中的存储单元的访问速度。47.应该理解,在一些实施例中,除了开关314之外,还可以保留图2的开关212。因此,快速访问区域310本身也可以是可配置的。例如,当开关212被闭合并且开关214和314被断开时,快速访问区域310可以包括块200a和200b。在另一示例中,当开关212和214被断开时,快速访问区域310仅包括块200a,而不管开关314是被闭合还是断开。48.图4是根据本公开的一些实施例的一示例性的存储设备的访问方法400的流程图。存储设备可以包括例如上述参考图2-图3的存储设备2000或3000。因此,存储设备可以包括具有设置在其上的第一开关的列选择线和具有设置在其上的第二开关的全局数据线。方法400可以由存储设备(例如,存储设备的控制器)实现,并且包括如下步骤。49.在步骤402中,控制器(例如,控制器202)可以接收用于访问存储设备的访问请求。用于访问存储设备的访问请求可以包括读取存储在存储设备中的数据的请求或将数据写入存储设备的请求。50.在步骤404中,控制器可以确定访问请求是否被定向到基于第一开关和第二开关定义的快速访问区域。在一些实施例中,控制器可以解析访问请求并确定与访问请求相关联的访问地址。例如,当访问请求是读取请求时,控制器可以解析读取请求并确定要读取的存储块的地址。然后,控制器可以确定访问地址是否在快速访问区域内。如上所讨论的,列选择线和全局数据线上的第一开关和第二开关可以定义包括至少一个存储块的快速访问区域,因此,快速访问区域还可以提供该至少一个存储块的地址。例如,快速访问区域中的该至少一个存储块的地址可以存储在表中。因此,控制器可以通过将访问地址与表进行比较,来确定访问地址是否在快速访问区域内。响应于访问地址位于快速访问区域内,控制器可以确定访问请求被定向到快速访问区域。51.在一些实施例中,访问请求还可以包括指示字段。指示字段可用于指示访问请求是否被定向到快速访问区域。例如,当指示字段被赋值“1”时,其可以指示访问请求被定向到快速访问区域。因此,控制器可以确定指示字段是否满足给定条件(例如,指示字段为“1”),并且响应于指示字段满足给定条件,控制器可以确定访问请求被定向到快速访问区域。52.在步骤406中,响应于访问请求被定向到快速访问区域,控制器可以基于访问请求生成快速访问信号,以使第一开关和第二开关被断开。在一些实施例中,第一开关和第二开关可以是场效应晶体管(fieldeffecttransistor,fet),并且快速访问信号可以包括应用于关断fet的“关断”信号。可以理解,除了“关断”信号之外,快速访问信号还可以包括其他指令,以使存储设备执行被请求的动作(例如,读取/写数据)。然后,方法400可以跳到步骤410。53.在步骤408,响应于访问请求未被定向到快速访问区域,控制器可以生成常规访问信号。常规访问信号可以包括用于存储器访问的常规指令。在一些实施例中,快速访问信号和常规访问信号之间的差异是上述的“关断”信号。因此,在常规访问信号的情况下,第一开关和第二开关可以保持被闭合。54.在步骤410中,控制器可以基于快速访问信号或常规访问信号执行对存储设备的访问。55.在一些实施例中,存储设备还可以包括具有设置在其上的第三开关的数据总线。类似地,快速访问信号还可导致第三开关被断开。56.图5示出了根据本公开的一些实施例的一示例性的存储系统500。存储系统500可以包括上述存储设备并执行上述方法。如图5所示,存储系统500可以包括处理器501和存储设备502。57.处理器501可以是针对存储设备502的执行生成存储器命令的计算处理器。在一些实施例中,处理器501可以包括命令调度器,命令调度器用于根据从编译器接收的指令调度存储器命令。58.存储设备502可以是dram设备,并且可以存储数据和指令。这些指令可以是访问存储在存储设备502中的数据的计算程序的一部分。存储设备502可以包括多个存储块,每个存储块具有用于存储数据的多个行。根据数据元素的大小,存储块的每一行可以存储一个或多个数据元素。59.存储系统500还可以包括编译器503。编译器503可以在处理单元上运行。处理单元可以是存储系统500的外部处理单元(例如,主机cpu)或组件。编译器503可以将计算程序(例如,机器学习程序)编译成指令集,例如“读”指令、“写”指令、“复制”指令、“分配”指令等。可以理解,“复制”指令可以包括“读取”指令和“写入”指令,这两个指令都可以与分配存储设备502中的存储空间的请求相关联。并且“分配”指令本身可以是在存储设备502中分配存储空间的请求。60.然后,处理器501可以处理生成的指令(例如,“写入”指令、“复制”指令、“分配”指令)。处理器501可以包括处理流水线504、指令缓冲器506、执行管理单元508和存储管理单元(memorymanagementunit,mmu)510。每个单元和缓冲器可以包括基于例如金属氧化物半导体场效应晶体管(metaloxidesemiconductorfieldeffecttransistor,mosfet)构造的一组组合逻辑电路和时序逻辑电路。执行管理单元508可以通过处理流水线504来控制和管理指令的执行。例如,在执行管理单元508接收到(例如,来自操作系统的)执行计算程序的指示(包括例如存储空间的分配请求)后,执行管理单元508可以创建计算进程,该计算进程可以通过处理流水线504来提供计算程序执行状态的指示。在创建计算进程之后,执行管理单元508可以将计算程序从辅助存储设备(例如硬盘驱动器)加载到存储设备502中,并控制指令缓冲器506以从存储设备502获取与计算程序相关联的指令集。61.可以根据计算程序中反映的顺序存储和执行指令集。例如,如图5所示,指令缓冲器506包括缓冲器头部指针和缓冲器尾部指针。在执行管理单元508的控制下,指令缓冲器506可以将存储在与缓冲器头部指针相关联的缓冲器位置的指令提取到处理流水线504以执行。当执行该指令时,处理流水线504可以访问存储设备502以根据该指令发送或接收数据。在提取指令之后,指令缓冲器506可以从缓冲器中移除指令,并将缓冲器头部指针移动到下一个缓冲器位置,以提取下一个指令以执行。62.执行管理单元508可以基于各种准则通过指令缓冲器506控制对指令的提取。例如,执行管理单元508可以确定指令是否导致异常(exception)。当指令的执行可导致计算机处理器的不当的或异常的操作情况时,发生异常。作为说明性示例,计算程序的“分配”指令可使处理器501访问存储设备502内不存在的存储位置,或访问处理器501没有访问许可的存储位置。63.mmu510为不同的计算进程分配和管理存储空间。在执行管理单元508创建用于执行计算程序的计算进程之后,mmu510可以在存储设备502中分配一组设备存储位置,其中每个存储位置与设备地址相关联。mmu510还可以创建虚拟存储空间,并将虚拟存储空间作为物理存储位置集的别名(alias)提供给计算进程。虚拟存储空间可以包括一组页面,每个页面可以包括一组相互影响的(contagious)虚拟存储位置。每个虚拟存储位置可以与虚拟存储地址相关联,并且可以映射到由mmu510分配的设备存储位置。一个页面通常包含4096字节的存储空间。64.在一些实施例中,处理器501可以确定存储器命令是否被定向到快速访问区域。如果存储器命令被定向到快速访问区域,则处理器501可以进一步生成用于断开与快速访问区域相关联的开关的信号。65.在一些实施例中,计算机程序产品可包括非暂时性计算机可读存储介质,其上具有计算机可读程序指令,以使一个或多个处理器执行上述方法。例如,计算系统的一个或多个处理器可以执行计算机可读程序指令以编译指令,使得上述存储设备实现上述方法。66.计算机可读存储介质可以是可存储指令以供指令执行设备使用的有形设备。计算机可读存储介质可以是,例如,但不限于,电子存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备,或上述设备的任何适当组合。计算机可读存储介质的更具体示例的非穷举列表包括以下内容:便携式计算机软盘、硬盘、随机存取存储器(randomaccessmemory,ram)、只读存储器(read-onlymemory,rom)、可擦除可编程只读存储器(erasableprogrammableread-onlymemory,eprom)、静态随机存取存储器(staticrandomaccessmemory,sram)、便携式光盘只读存储器(portablecompactdiscread-onlymemory,cd-rom)、数字多功能盘(digitalversatiledisk,dvd)、记忆卡、软盘、机械编码设备(例如,打孔卡或具有在其上记录的指令的凹槽中的凸起结构)、以及上述各项的任何适当组合。67.用于执行上述方法的计算机可读程序指令可以是汇编指令、指令集架构(instruction-set-architecture,isa)指令、机器指令、机器相关指令、微码、固件指令、状态设置数据、或以一种或多种编程语言(包括面向对象编程语言和常规过程编程语言)的任意组合编写的源代码或目标代码。计算机可读程序指令可以作为独立软件包完全在计算设备上执行,或者部分在第一计算设备上执行,部分在远离第一计算设备的第二计算设备上执行。在后一种情况下,远程的第二计算设备可以通过任何类型的网络(包括局域网(localareanetwork,lan)或广域网(wideareanetwork,wan))连接到第一计算设备。68.可将计算机可读程序指令提供给计算机的一个或多个处理器或其他可编程数据处理设备以产生机器,使得通过计算机的一个或多个处理器或其他可编程数据处理设备执行的指令,创建用于实现上述方法的手段。69.当被实施时,本公开实施例可以提供超越传统设计的显著改进。例如,当将具有使用存储块的存储器结构的传统设计与利用本公开实施例的类似存储器结构进行比较时,在传统系统中的延迟大约是列选择线和数据总线中的延迟的两倍,在传统系统中的延迟大约是全局数据线中的延迟的四倍。因此,根据本公开的实施例可以显著降低存储设备的延迟。可以理解,延迟的降低可以与快速访问区域的大小有关,并且结果可以根据存储设备的参数而变化。70.尽管上述实施例利用全局数据线和列选择线上的一对开关实现了用于低延迟存储器访问的设备和方法,但可以设置更多对开关以提供定义多个快速访问区域的灵活性。71.根据本公开的各种实施例,附图中的流程图和图表示出了设备、方法和计算程序产品的可能实现方式的架构、功能和操作。在这方面,流程图或图表中的块可以表示软件程序、代码段或部分代码,其包括用于实现特定功能的一个或多个可执行指令。还应注意的是,在一些替代实现方式中,块中标注的功能可能与附图中标注的顺序不同。例如,连续显示的两个块实际上可以基本上同时执行,或者有时可以按照相反的顺序执行,这取决于所涉及的功能。还将注意到,图表或流程图的每个块以及图表和流程图中的块的组合可以由执行指定功能或动作的基于专用硬件的系统或专用硬件与计算机指令的组合来实现。72.使用以下权利要求进一步描述本公开的实施例:73.1.一种存储设备,包括:74.多个存储块,每个存储块包括多个存储单元;75.字线,与所述多个存储块通信耦合,并且被配置为激活所述多个存储块中的与所述字线相关联的存储单元;76.列选择线,与所述多个存储块通信耦合,并被配置为在所述多个存储块中选择一列存储块;77.全局数据线,与所述多个存储块通信耦合,并被配置为与所述被选择的一列存储块中的所述被激活的存储单元一起收发数据;78.第一开关,设置在所述列选择线上的第一位置;以及79.第二开关,设置在所述全局数据线上的第二位置,其中,所述第一开关和所述第二开关被配置为将所述多个存储块中的至少一个存储块与所述多个存储块中的其他存储块分割开。80.2.根据权利要求1所述的存储设备,其中,所述第一开关和所述第二开关使得所述被分割的至少一个存储块相对于所述其他存储块作为快速访问区域。81.3.根据权利要求1或2所述的存储设备,还包括:82.数据总线,连接到所述全局数据线,并被配置为与所述全局数据线一起收发数据,其中,所述数据总线还包括设置在对应于所述第二位置的第三位置上的第三开关。83.4.根据权利要求3所述的存储设备,还包括:84.控制器,与所述列选择线和所述全局数据线通信耦合。85.5.根据权利要求4所述存储设备,其中,所述控制器还被配置为:86.接收用于访问所述快速访问区域的访问请求;以及87.基于所述访问请求生成快速访问信号。88.6.根据权利要求5所述存储设备,其中,在将所述多个存储块中的至少一个存储块与所述多个存储块中的其他存储块分割开中,所述第一开关被配置为响应于所述快速访问信号,切断所述列选择线以形成被连接的列选择线和被断开的列选择线;以及,89.所述第二开关被配置为响应于所述快速访问信号,切断所述全局数据线以形成被连接的全局数据线和被断开的全局数据线。90.7.根据权利要求6所述的存储设备,其中,响应于所述快速访问信号,所述第三开关被配置为切断所述数据总线以形成被连接的数据总线和被断开的数据总线。91.8.根据权利要求7所述的存储设备,其中,与所述被连接的列选择线、所述被连接的全局数据线和所述被连接的数据总线相关联的寄生电容小于所述列选择线、所述全局数据线和所述数据总线的寄生电容,这降低了所述被连接的列选择线、所述被连接的全局数据线和所述被连接的数据总线上的延迟,其中,所述被连接的列选择线、所述被连接的全局数据线和所述被连接的数据总线形成所述快速访问区域。92.9.根据权利要求5所述的存储设备,其中,所述访问请求包括读取存储在所述存储设备中的数据的请求或将数据写入所述存储设备的请求。93.10.根据权利要求1-9中任一个所述的存储设备,其中,所述第一开关和第二开关包括场效应晶体管。94.11.一种存储设备的访问方法,其中,所述存储设备包括具有设置于其上的第一开关的列选择线和具有设置于其上的第二开关的全局数据线,所述访问方法包括:95.接收用于访问所述存储设备的访问请求,所述存储设备具有多个存储块;96.确定所述访问请求是否被定向到具有所述多个存储块中的至少一个存储块的区域;97.响应于所述访问请求被定向到所述区域,基于所述访问请求生成第一类型的访问信号,以使所述第一开关和所述第二开关被断开,以将所述至少一个存储块与所述多个存储块的其他存储块分割开;以及98.基于所述第一类型的访问信号访问所述被分割的至少一个存储块。99.12.根据权利要求11所述的访问方法,还包括:100.响应于所述接入请求未被定向到所述区域,生成第二类型的访问信号;以及101.基于所述第二类型的访问信号访问所述多个存储块。102.13.根据权利要求11或12所述的访问方法,其中,确定所述访问请求是否被定向到所述区域还包括:103.确定与所述访问请求相关联的访问地址;104.确定所述访问地址是否在所述区域内;105.响应于所述访问地址位于所述区域内,确定所述访问请求被定向到所述区域。106.14.根据权利要求11或12所述的访问方法,其中,所述访问请求还包括指示字段,确定所述访问请求是否被定向到所述区域还包括:107.确定所述指示字段是否满足给定条件;108.响应于所述指示字段满足所述给定条件,确定所述访问请求被定向到所述区域。109.15.根据权利要求11-14中任一个所述的访问方法,其中,所述存储设备还包括具有设置在其上的第三开关的数据总线,所述第一类型的访问信号还使得所述第三开关被断开。110.16.根据权利要求11-15中任一个所述的访问方法,其中,用于访问所述存储设备的访问请求包括读取存储在所述存储设备中的数据的请求或将数据写入所述存储设备的请求。111.17.一种非暂时性计算机可读介质,所述非暂时性计算机可读介质存储一组指令,所述一组指令由计算机系统的一个或多个处理器执行,使得所述计算机系统执行所述计算机系统的存储设备的访问方法,其中,所述存储设备包括具有设置在其上的第一开关的列选择线和具有设置在其上的第二开关的全局数据线,所述访问方法包括:112.接收用于访问所述存储设备的访问请求,所述存储设备具有多个存储块;113.确定所述访问请求是否被定向到具有所述多个存储块中的至少一个存储块的区域;114.响应于所述访问请求被定向到所述区域,基于所述访问请求生成第一类型的访问信号,以使所述第一开关和所述第二开关被断开,以将所述至少一个存储块与所述多个存储块的其他存储块分割开;以及115.基于所述第一类型的访问信号访问所述被分割的至少一个存储块。116.18.根据权利要求17所述的非暂时性计算机可读介质,其中,所述一个或多个处理器被配置为执行所述一组指令,以进一步使得所述计算机系统执行:117.响应于所述访问请求未被定向到所述区域,生成第二类型的访问信号;以及118.基于所述第二类型的访问信号访问所述多个存储块。119.19.根据权利要求17或18所述的非暂时性计算机可读介质,其中,在确定所述访问请求是否被定向到所述区域中,所述一个或多个处理器被配置为执行所述一组指令,以进一步使得所述计算机系统执行:120.确定与所述访问请求相关联的访问地址;121.确定所述访问地址是否在所述区域内;122.响应于所述访问地址位于所述区域内,确定所述访问请求被定向到所述区域。123.20.根据权利要求17或18所述的非暂时性计算机可读介质,其中,所述访问请求还包括指示字段,在确定所述访问请求是否被定向到所述区域中,所述一个或多个处理器被配置为执行所述一组指令,以进一步使得所述计算机系统执行:124.确定所述指示字段是否满足给定条件;125.响应于所述指示字段满足所述给定条件,确定所述访问请求被定向到所述区域。126.21.根据权利要求17-20中任一个所述的非暂时性计算机可读介质,其中,所述存储设备还包括具有设置在其上的第三开关的数据总线,所述第一类型的访问信号还使得所述第三开关被断开。127.22根据权利要求17-21中任一个所述的非暂时性计算机可读介质,其中,用于访问所述存储设备的访问请求包括读取存储在所述存储设备中的数据的请求或将数据写入所述存储设备的请求。128.应当理解,为清楚起见,在不同的实施例的上下文中描述的本公开的某些特征也可以在单个实施例中组合提供。相反,为了简洁起见,在单个实施例的上下文中描述的本公开的各种特征也可以分开提供,或者在任何合适的子组合中提供,或者在合适的本公开的任何其他描述的实施例中提供。在各种实施例的上下文中描述的某些特征不应被视为这些实施例的基本特征,除非没有那些元素,该实施例是不能实行的。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1